Посл.ответ |
Сообщение |
Ранг: 7.2 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 21 октября 2008 13:21 · Личное сообщение · #1
Доброго времени суток!
Накатёрил я тут програмку для чтения дцу-шных файлов. Читает 2,3,4,5,6,7,10,10-net(DCUIL) версии. Восьмая версия плохо тестирована, на девятой вообще не тестирована. Также читает DCP и DCPIL всех версий(правда не до конца...).
В результате чтения и анализа получается PAS-файл. Все переменные, классы, записи, константы,... выводятся в 99,9999% рабочем варианте. Код процедур выводится на асме, net-код не поддерживается.
В NET-юнитах(dcuil) некоторые константы и переменные константы не читаются в принципе - они устанавливаются в RunTime.
Например, если декомпилировать Forms.dcu то сразу получится рабочий исходник.
Прошу прислать мне ваши тестовые DCU-шки для демонстрации и тестирования программы.
ZlobniyHacker@rambler.ru
| Сообщение посчитали полезным: |
|
 Ранг: 793.4 (! !), 568thx Активность: 0.74↘0 Статус: Участник Шаман
|
Создано: 23 октября 2008 12:25 · Поправил: PE_Kill · Личное сообщение · #2
ClockMan пишет:
DCU файл результат преоброзования двух файлов PAS и DFM
А при чем тут DFM?
sss DCU это что то типа OBJ, поэтому нужен декомпилятор. Ты путаешь с MAP файлом
----- Yann Tiersen best and do not fuck | Сообщение посчитали полезным: |
 Ранг: 271.6 (наставник), 2thx Активность: 0.3↘0 Статус: Участник
|
Создано: 23 октября 2008 13:03 · Личное сообщение · #3
Имхо декомпиль дку не очень нужен, т.к. если ломать компоненты (ограничение как правило наг), то можно реверсить скомпиленный с компонентом файл, а потом патчить дку файл компонента по стабу.
----- iNTERNATiONAL CoDE CReW | Сообщение посчитали полезным: |
Ранг: 7.2 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 23 октября 2008 17:23 · Личное сообщение · #4
ClockMan пишет:
DCU файл результат преоброзования двух файлов PAS и DFM. DCU нужен для компилятора который преобразует его в EXE файл.
В DCU не хранит в себе DFM. Он только хранит имя DFM-файла.
| Сообщение посчитали полезным: |
 Ранг: 1288.1 (!!!!), 273thx Активность: 1.29↘0 Статус: Участник
|
Создано: 23 октября 2008 17:27 · Личное сообщение · #5
Spirit пишет:
т.к. если ломать компоненты (ограничение как правило наг),
не, ну есть много компонентов посложнее, где не только наг...FastReport тот же, с ограничениями кол-ва страниц, ватермарками...
| Сообщение посчитали полезным: |
Ранг: 7.2 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 23 октября 2008 17:35 · Личное сообщение · #6 |
Ранг: 7.2 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 23 октября 2008 17:38 · Личное сообщение · #7
Не знаю почему, но посоздавалить лишние forward-классы и интерфейсы. Мои извенения - буду дорабатывать...
Видимо, марафет в конце только помешал.
| Сообщение посчитали полезным: |
Ранг: 221.3 (наставник), 135thx Активность: 0.19↘0.07 Статус: Участник
|
Создано: 23 октября 2008 17:40 · Личное сообщение · #8
Sera
чето йа не вьехал, а где код процедур?
----- xchg dword [eax], eax | Сообщение посчитали полезным: |
Ранг: 7.2 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 23 октября 2008 17:40 · Личное сообщение · #9
А можно получить исходник? Для тестов, так сказать.
| Сообщение посчитали полезным: |
Ранг: 7.2 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 23 октября 2008 17:43 · Личное сообщение · #10
Над выводом кода ещё надо поработать. Движок есть, осталось состыковать.
| Сообщение посчитали полезным: |
Ранг: 221.3 (наставник), 135thx Активность: 0.19↘0.07 Статус: Участник
|
Создано: 23 октября 2008 17:44 · Личное сообщение · #11
Sera пишет:
А можно получить исходник? Для тестов, так сказать.
чето йа не понимаю, если это твоя тулза, ты сам не можешь накидать простенькую прожку на делфях скомпилить и тестить дцушку сколько влезет? =\\
----- xchg dword [eax], eax | Сообщение посчитали полезным: |
 Ранг: 1288.1 (!!!!), 273thx Активность: 1.29↘0 Статус: Участник
|
Создано: 23 октября 2008 17:51 · Личное сообщение · #12
Sera пишет:
Над выводом кода ещё надо поработать. Движок есть, осталось состыковать.
Сталобыть главно набрать заказов на декомпиляцию, потом сесть доделывать тулзу? +)
| Сообщение посчитали полезным: |
Ранг: 7.2 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 23 октября 2008 17:56 · Личное сообщение · #13
Я и тестирую... За всем не услидиш...
Ara пишет:
Сталобыть главно набрать заказов на декомпиляцию, потом сесть доделывать тулзу? +)
Мда... виноват
| Сообщение посчитали полезным: |
Ранг: 39.1 (посетитель) Активность: 0.03↘0 Статус: Участник
|
Создано: 23 октября 2008 17:56 · Поправил: SpoliatoR · Личное сообщение · #14
Ну вот и декомпильни FastReport. Или еще чего из полезного. Будет интересно посмотреть.  на что способна софтинка. dcu32 вещь проверенная....Хотя и не все ей сейчас можно.
Для примера turbodb.com > License.dcu  Интересно посмотреть так как ломал.
Да и вообще как то странно....Народ правильно говорит. Сам бы и написал тест какой. Или качни компонет да выложи.
| Сообщение посчитали полезным: |
 Ранг: 271.6 (наставник), 2thx Активность: 0.3↘0 Статус: Участник
|
Создано: 23 октября 2008 19:42 · Личное сообщение · #15
v0id2k пишет:
чето йа не вьехал, а где код процедур?
+1 уже указывал на то, что есть только переменные и классы, а САМОГО КОДА НЕТ.
Аффтар предпочел технично отморозиться и промолчать... это не есть тру
----- iNTERNATiONAL CoDE CReW | Сообщение посчитали полезным: |
Ранг: 69.8 (постоянный) Активность: 0.04↘0 Статус: Участник
|
Создано: 23 октября 2008 21:33 · Личное сообщение · #16
Похоже поторопился Sera AKA ZlobniyHacker с приёмом заказов на декомпиляцию DCU
| Сообщение посчитали полезным: |
Ранг: 107.5 (ветеран) Активность: 0.15↘0 Статус: Участник
|
Создано: 23 октября 2008 22:19 · Поправил: Stack · Личное сообщение · #17
Нуко удиви.
В файле трид
зы: а dfm файлы востанавливать за $ никому не нужно (шучу - их можно ресхакером востановить)
----- Md5 fcbb6c9c9a5029b24d70f2d67c7cca74 | Сообщение посчитали полезным: |
Ранг: 107.5 (ветеран) Активность: 0.15↘0 Статус: Участник
|
Создано: 23 октября 2008 22:21 · Поправил: Stack · Личное сообщение · #18 |
Ранг: 7.2 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 24 октября 2008 13:32 · Личное сообщение · #19
Трид, не трид - пофиг.
Вот некий набросок. Сорри за некий маразм в коде, т.к. сижу на работе с урезанной версией программы(нет всех DCU'шек для загрузки импорта, ...) , в одной руке бутерброд, без дельфы и на компе шефа в его отсутствие...
Получилось некое подобие кода. Обещаю точно декомпилировать завтра, т.к. дома лучшие условия... b362_24.10.2008_CRACKLAB.rU.tgz - Autorun.pas
| Сообщение посчитали полезным: |
 Ранг: 533.6 (!), 232thx Активность: 0.45↘0 Статус: Uploader retired
|
Создано: 24 октября 2008 13:41 · Личное сообщение · #20
Sera пишет:
с урезанной версией программы
как так, здесь урезаная, а где то полная
----- Лучше быть одиноким, но свободным © $me | Сообщение посчитали полезным: |
Ранг: 7.2 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 24 октября 2008 13:43 · Личное сообщение · #21
А вообще при полной комплектации декомпилить одно удовольствие:
try - finally/except - end разпознаются, все имена переменных и процедур известны...
FPU пока вызывает трудности.
А пока прошу меньше кода, больше объявлений, причём самый замутных, сколько фантазии хватит.
Вчера дома устранял баги после stSecUtils.dcu. Теперь forward-классы создаются там где надо, тоже и переопределением методов интерфейсов и больше нет &Finalization.
| Сообщение посчитали полезным: |
Ранг: 7.2 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 24 октября 2008 13:51 · Личное сообщение · #22
Полная у меня дома! там все DCU'шки всех(все что нашёл) версий плюс дельфа под рукой для непредвиденных ситуаций.
Да и в этой версии отключены юниты для распознавания кода.
Тут нет условий! bd49_24.10.2008_CRACKLAB.rU.tgz - PS.JPG
| Сообщение посчитали полезным: |
Ранг: 123.0 (ветеран), 10thx Активность: 0.06↘0 Статус: Участник
|
Создано: 24 октября 2008 14:01 · Поправил: Ultras · Личное сообщение · #23
Sera, ну я спецом stSecUtils кидал, там классов много. И конечно хочется увидеть код процедур/ф-ий... Только первый же var сурсе это не var, а const  Надо поправить декомпиль.
А вот кстати тот фидошный топик про полную декомпиляцию: тут http://groups.google.com/group/fido7.ru.delphi/browse_thread/thread/3e6fed0e7f78b83a/1845c9a2ffdb59d4
----- .[ rE! p0w4 ]. | Сообщение посчитали полезным: |
Ранг: 107.5 (ветеран) Активность: 0.15↘0 Статус: Участник
|
Создано: 24 октября 2008 17:13 · Личное сообщение · #24
Sera
Молодец востановил один к одному.
Короче надо будет декомпилить чето по серьезнее - обращусь.
----- Md5 fcbb6c9c9a5029b24d70f2d67c7cca74 | Сообщение посчитали полезным: |
Ранг: 108.7 (ветеран) Активность: 0.04↘0 Статус: Участник
|
Создано: 25 октября 2008 08:48 · Личное сообщение · #25
Просветите, может я чего не понимаю - если dcu это аналог obj - кто выкладывает объектные файлы вместе с релизом? "Кто все эти люди? И зачем они нужны?" (с)
| Сообщение посчитали полезным: |
Ранг: 123.0 (ветеран), 10thx Активность: 0.06↘0 Статус: Участник
|
Создано: 25 октября 2008 10:11 · Поправил: Ultras · Личное сообщение · #26
Freecod, ты явно не знаком с Delphi. Вот почитай www.znannya.org/?view=DelphiProjectM_compilation
>Юниты (DCU) они сидят после компиляции и линковки внутри EXE, поэтому если юнит отдельно декомпилируется, то и в составе EXE он также успешно будет декомпилирован.
Сейчас основная цель, это довести до ума декомпилятор на примерах разнотипных юнитов.
А сделать для EXE, это будет дело техники, конечно только если автор не остановится только на DCU-шках.
----- .[ rE! p0w4 ]. | Сообщение посчитали полезным: |
 Ранг: 533.6 (!), 232thx Активность: 0.45↘0 Статус: Uploader retired
|
Создано: 26 октября 2008 08:45 · Личное сообщение · #27
Декомпельни это, результат в личку, посмотрим как справится  b73c_25.10.2008_CRACKLAB.rU.tgz - SecExtFile_V2_Chk.7z
----- Лучше быть одиноким, но свободным © $me | Сообщение посчитали полезным: |