TweakeR
19.01.2008, 00:55
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~
| В даной статье я покажу, как можно получить исходный програмный код из TCL Byte Code (TBC) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~
Конечно весь исходник мы не получим, но часть зашифрованого кода всётаки можно декодировать ;)
И так поехали:
1. Создаём файлик tbc2tcl.tcl со следущим содержанием:
set write_sources [open "tcl_sources_code.txt" a+]
puts $write_sources "___replace___"
2. Комплимим tbc2tcl.tcl при помощью ActiveState Tcl Dev Kit 3.2 и в результате создастся откомпилиный tbc2tcl.tbc следущего содержания:
if {[catch {package require tbcload 1.4} err] == 1} {
return -code error ": The TclPro ByteCode Loader is not available or does not support the correct version -- $err"
}
tbcload::bceval {
TclPro ByteCode 2 0 1.4 8.4
3 0 22 6 0 0 12 0 4 3 3 -1 -1
22
w0E<!(H&s!@btt!'3*!!9#Gpvw!!
3
-c&v
3
>or!
6
x
13
>c5DFs8|fD'bfRA?v
x
4
*dmID
x
20
o4jY?A;lcEgdTZ?h^oRAxmhEF
x
2
XNv
x
4
DP)*F
x
13
y0NaEomK;@SAIX?+v
0
0
}
3. Находим в этом файле код:
13
y0NaEomK;@SAIX?+v
Это является закоденое значение "___replace___", которое должно записываться в tcl_sources_code.txt.
4. Далее ищем в закоденом файле куски закоденого кода следущего вида:
X
число
код
X
5. Далее копируем (число) и (код), тоесть от X до X в файл tbc2tcl.tbc за место:
13
y0NaEomK;@SAIX?+v
6. [I]Далее запускаем tbc2tcl.tbc и после завершения должен создаться файл tcl_sources_code.txt с декодированым кодом куска которого мы заменили ;)
Вот такой вот простой метод декодирования TCL Byte Code :)
-----------------
C Уважением TwEaKeR
| В даной статье я покажу, как можно получить исходный програмный код из TCL Byte Code (TBC) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~
Конечно весь исходник мы не получим, но часть зашифрованого кода всётаки можно декодировать ;)
И так поехали:
1. Создаём файлик tbc2tcl.tcl со следущим содержанием:
set write_sources [open "tcl_sources_code.txt" a+]
puts $write_sources "___replace___"
2. Комплимим tbc2tcl.tcl при помощью ActiveState Tcl Dev Kit 3.2 и в результате создастся откомпилиный tbc2tcl.tbc следущего содержания:
if {[catch {package require tbcload 1.4} err] == 1} {
return -code error ": The TclPro ByteCode Loader is not available or does not support the correct version -- $err"
}
tbcload::bceval {
TclPro ByteCode 2 0 1.4 8.4
3 0 22 6 0 0 12 0 4 3 3 -1 -1
22
w0E<!(H&s!@btt!'3*!!9#Gpvw!!
3
-c&v
3
>or!
6
x
13
>c5DFs8|fD'bfRA?v
x
4
*dmID
x
20
o4jY?A;lcEgdTZ?h^oRAxmhEF
x
2
XNv
x
4
DP)*F
x
13
y0NaEomK;@SAIX?+v
0
0
}
3. Находим в этом файле код:
13
y0NaEomK;@SAIX?+v
Это является закоденое значение "___replace___", которое должно записываться в tcl_sources_code.txt.
4. Далее ищем в закоденом файле куски закоденого кода следущего вида:
X
число
код
X
5. Далее копируем (число) и (код), тоесть от X до X в файл tbc2tcl.tbc за место:
13
y0NaEomK;@SAIX?+v
6. [I]Далее запускаем tbc2tcl.tbc и после завершения должен создаться файл tcl_sources_code.txt с декодированым кодом куска которого мы заменили ;)
Вот такой вот простой метод декодирования TCL Byte Code :)
-----------------
C Уважением TwEaKeR