Сейчас на форуме: morgot, Rio, CDK123, zds, tyns777, tihiy_grom, rmn (+4 невидимых)

 eXeL@B —› Программирование —› Принимаю заказы на декомпиляцию DCU
. 1 . 2 . >>
Посл.ответ Сообщение

Ранг: 7.2 (гость)
Активность: 0.010
Статус: Участник

Создано: 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



Ранг: 221.3 (наставник), 135thx
Активность: 0.190.07
Статус: Участник

Создано: 21 октября 2008 13:55
· Личное сообщение · #2

SysUtils из стандартной поставки скомпелируй.
Зы: чето мне кажецо что дело пахнет керосином %\

-----
xchg dword [eax], eax




Ранг: 7.2 (гость)
Активность: 0.010
Статус: Участник

Создано: 21 октября 2008 14:03
· Личное сообщение · #3

Завтра будет, извини я щас на работе...
v0id2k пишет:
Зы: чето мне кажецо что дело пахнет керосином %\

Не вериш? Твоё право. Но скажу что анализа там дохрена. В dcu нету forward-классов/интерфейсов, forward-процедур, абстрактных методов, и т.д. Всё это создаётся во время анализа...



Ранг: 7.2 (гость)
Активность: 0.010
Статус: Участник

Создано: 21 октября 2008 14:23
· Личное сообщение · #4

Да, забыл сказать, там есть такая штука как загрузка импорта. Т.е. загружаются все юниты из uses. Вот тогда анализ работает на всю катушку. Без загрузки не удастся отобразить константы, и прочую хрень.
Так что для минимального анализа требуется System.dcu.
Например я собрал все юниты всех версий которые только мог, в программе указываю путь к общей папке, где это всё находится, а программа сама найдёт файл нужной версии. Более того, из дцу-шек одной версии она выберет самый подходящий, при котором анализ будет наилучшим...




Ранг: 196.6 (ветеран), 11thx
Активность: 0.070.01
Статус: Участник

Создано: 21 октября 2008 14:58
· Личное сообщение · #5

а зачем sysutils компилировать, если он в исходниках лежит? для теста декомпилятора чтоли.
вообще, кому может понадобиться dcu декомпилировать?



Ранг: 210.5 (наставник), 2thx
Активность: 0.140
Статус: Участник

Создано: 21 октября 2008 15:04
· Личное сообщение · #6

[wl] пишет:
кому может понадобиться dcu декомпилировать?


Ну например для удобного реверсинга, или для добавления функционала/исправление багов закрытых компонент.



Ранг: 7.2 (гость)
Активность: 0.010
Статус: Участник

Создано: 21 октября 2008 15:06
· Личное сообщение · #7

Например тому, кто исходник потерял.
Или кто хочет знать полный список объявлений в юните.
А вообще программа на стадии разработке. Я ещё думаю дописать модуль, который экспортирует всю
информацию юнита в IDA, тогда можно будет распознавать процедуры,структуры и переменные со 100% вероятностью (IDA это делает весьма коряво)




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 21 октября 2008 15:15
· Личное сообщение · #8

под иду было бы не плохо

-----
Лучше быть одиноким, но свободным © $me





Ранг: 631.1 (!), 62thx
Активность: 0.370.01
Статус: Участник
Автор VB Decompiler

Создано: 21 октября 2008 15:36
· Личное сообщение · #9

Sera

Интересен сам декомпилятор. Сервисы это лишь вытягивание бабок

-----
Никогда не делай то, что возможно. Стремись сделать то что невозможно впринципе!




Ранг: 7.2 (гость)
Активность: 0.010
Статус: Участник

Создано: 21 октября 2008 15:43
· Личное сообщение · #10

Я же сказал - код в асме. Движок ещё доработать надо...
Хотя стандартные конструкции можно заменять на псевдокод.
Например:
.try
...
.finally
...
.end

Пока готов поисковик, использующий спец. скриптовый язык:

Find:
mov reg1,any1
mov eax, any2
call Name1 = (Procedure "@LStrClr")

Replace:
.call Name1 ; освобождение строки any1



Ранг: 123.0 (ветеран), 10thx
Активность: 0.060
Статус: Участник

Создано: 21 октября 2008 15:47 · Поправил: Ultras
· Личное сообщение · #11

Sera, пример работы на каком-нибудь известном юните(сурс+компилед+декомпилед) в студию

to GPcH, а твой аналогичный проект совсем погиб или заморожен?

-----
.[ rE! p0w4 ].




Ранг: 7.2 (гость)
Активность: 0.010
Статус: Участник

Создано: 21 октября 2008 15:55
· Личное сообщение · #12

Пример будет завтра.

Ultras пишет:
to GPcH, а твой аналогичный проект совсем погиб или заморожен?


"твой аналогичный проект" ? - Что ты имееш в виду? - это и есть мой проэкт!




Ранг: 95.2 (постоянный)
Активность: 0.040
Статус: Участник

Создано: 21 октября 2008 15:59
· Личное сообщение · #13

Sera пишет:
"твой аналогичный проект" ? - Что ты имееш в виду? - это и есть мой проэкт!

Это для GPcH адресовалось =)

-----
бессмысленные манипуляции не становятся более разумными если их повторять





Ранг: 282.8 (наставник), 24thx
Активность: 0.260
Статус: Участник
win32.org.ru

Создано: 21 октября 2008 15:59 · Поправил: Guru_eXe
· Личное сообщение · #14

Sera пишет:
это и есть мой проэкт!

на гпч работают взбунтовавшиеся рабы)))

Вообще лучше раздать прогу какому-то кругу людей, чтобы они тестировали и сообщали об ошибках, а так - не вижу смысла в создания темы, dcu-файлов кругом полным-полно.

-----
may all your PUSHes be POPed!





Ранг: 631.1 (!), 62thx
Активность: 0.370.01
Статус: Участник
Автор VB Decompiler

Создано: 21 октября 2008 16:18
· Личное сообщение · #15

Ultras пишет:
а твой аналогичный проект совсем погиб или заморожен?


Нет, просто проект закрыт.

-----
Никогда не делай то, что возможно. Стремись сделать то что невозможно впринципе!




Ранг: 7.2 (гость)
Активность: 0.010
Статус: Участник

Создано: 21 октября 2008 17:10
· Личное сообщение · #16

1. Зачем раздавать программу, аналогов у которой нет(dcuint32 - забытое прошлое), я сначала пропробую заработать на её результатах.
2. Это скорее не тестирование, а публикация. Я тестирую прогу на таком коде... Чесно говоря я раньше и не знал что так можно!



Ранг: 221.3 (наставник), 135thx
Активность: 0.190.07
Статус: Участник

Создано: 21 октября 2008 17:17
· Личное сообщение · #17

Sera
лучше навесь какойнить гавнапрот с треалом на нее и выкладывай, а мы потестим, есле понравецо купем

-----
xchg dword [eax], eax





Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 21 октября 2008 17:32
· Личное сообщение · #18

=) Вот декомпильни и выложи сюда

3456_21.10.2008_CRACKLAB.rU.tgz - Test.exe

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube




Ранг: 7.2 (гость)
Активность: 0.010
Статус: Участник

Создано: 21 октября 2008 17:33
· Личное сообщение · #19

[i]v0id2k пишет:
лучше навесь какойнить гавнапрот с треалом на нее и выкладывай, а мы потестим, есле понравецо купем

-----
И это мне говорят хакеры на cracklab...
Впрочем прога на вас и расчитана, так что с защитой надо попотеть



Ранг: 7.2 (гость)
Активность: 0.010
Статус: Участник

Создано: 21 октября 2008 17:36
· Личное сообщение · #20

mak пишет:
=) Вот декомпильни и выложи сюда

3456_21.10.2008_CRACKLAB.rU.tgz - Test.exe


ТЫ ТЕМУ ЧИТАЛ!!!
Принимаю заказы на декомпиляцию DCU

Пришли DCU!




Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 21 октября 2008 17:46
· Личное сообщение · #21

щас

7691_21.10.2008_CRACKLAB.rU.tgz - Unit1.dcu

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube




Ранг: 7.2 (гость)
Активность: 0.010
Статус: Участник

Создано: 22 октября 2008 14:27
· Личное сообщение · #22

Вот некоторая демонстрация.
Мои извинения за неполноту. Полная будет пожже...

b870_22.10.2008_CRACKLAB.rU.tgz - demo.RAR




Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 22 октября 2008 14:37 · Поправил: mak
· Личное сообщение · #23

=) чего так долго ? ..
Поправка =) .. ну не знаю , я в делфе не кожу , но другие пусть оценят.

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube





Ранг: 793.4 (! !), 568thx
Активность: 0.740
Статус: Участник
Шаман

Создано: 22 октября 2008 15:21
· Личное сообщение · #24

Sera когда то (в фидо?) один человек просил кинуть ему DCU и в ответ выложил его отдекомпиленый полностью в паскалевских сырках. Тот человек что давал DCU подтвердил что это почти аналог того что было до компиляции (стиль программирования был не его ). Доводить тулзу до ума он отказался как и выкладывать т.к. это его не интересовало, а было хобби. Так что список пропертис врядли после этого может удивить.

-----
Yann Tiersen best and do not fuck





Ранг: 271.6 (наставник), 2thx
Активность: 0.30
Статус: Участник

Создано: 22 октября 2008 18:34
· Личное сообщение · #25

mak пишет:
но другие пусть оценят

Может я что-то и не догоняю, но ВЕЗДЕ между begin и end нет ни строки кода. Да, я не спорю, var, const, type он декомпильнул...

-----
iNTERNATiONAL CoDE CReW




Ранг: 123.0 (ветеран), 10thx
Активность: 0.060
Статус: Участник

Создано: 22 октября 2008 19:21
· Личное сообщение · #26

Подождем полную декомпилированную версию.
Я отослал на указанное мыло DCU-шку и тоже жду результата...

-----
.[ rE! p0w4 ].





Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 23 октября 2008 10:20
· Личное сообщение · #27

Sera пишет:
Впрочем прога на вас и расчитана, так что с защитой надо попотеть
Хотелось бы глянуть на саму прогу - ну, разумеется, хотя б на демо, а потом уж думать, стоит ли потеть, или нет

-----
Stuck to the plan, always think that we would stand up, never ran.




Ранг: 37.1 (посетитель)
Активность: 0.010
Статус: Участник

Создано: 23 октября 2008 10:46
· Личное сообщение · #28

Начало прикольное.

Я вот только не в теме. А если открыть отладчиком delphi файл dcu, он символы не прочитает из него? Как VC из pdb?




Ранг: 568.2 (!), 465thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 23 октября 2008 10:53 · Поправил: ClockMan
· Личное сообщение · #29

sss пишет:
А если открыть отладчиком delphi файл dcu, он символы не прочитает из него?

Ё мо ё, а мыта мучаемся декомпилятор ищем а всего то нужно его в отладчике открыть оказывается

DCU файл результат преоброзования двух файлов PAS и DFM. DCU нужен для компилятора который преобразует его в EXE файл.

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




Ранг: 37.1 (посетитель)
Активность: 0.010
Статус: Участник

Создано: 23 октября 2008 11:40
· Личное сообщение · #30

ClockMan, Вы используете декомпилятор для чтения символов, да?


. 1 . 2 . >>
 eXeL@B —› Программирование —› Принимаю заказы на декомпиляцию DCU
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати