Сейчас на форуме: Magister Yoda, vasilevradislav (+5 невидимых)

 eXeL@B —› Крэки, обсуждения —› Visual Basic 4.0 в формате NE (для олдскульный маэстро)
<< . 1 . 2 .
Посл.ответ Сообщение

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

Создано: 09 января 2016 13:51
· Личное сообщение · #1

Здрастье.

Подскажите плиз кто нить из олдскульных мастеров.
Задачка такова: Есть приложение написанное на Visual Basic 4.0 16- ти разрядное, еессно его никто не берет. Посоветовали мне только один декомпайлер - Dodi's там есть под, как написано 4-ку, но он корректно декомпилит только PE файлы, да и то с ограничениями, по кол ву форм, глубине и пр. Мой NE не декомпилит, как я понял что то он неправильно разбирает секции NE файла. Он свой то сэмпл 32 разрядный с эксепшенами декомпилит. Dodi's я испольовал из сети альфа релиз с исходниками.

Dodi's вообще то не подходит до конца, так как он тока декомпилит, а нужно подрехтовать программу, плюс он валиться от NE файлов. Подскажите варианты решения проблемы, порекомендуйте специалиста, сам я застрял



Ранг: 101.0 (ветеран), 344thx
Активность: 1.150
Статус: Участник

Создано: 13 января 2016 21:47
· Личное сообщение · #2

Этот тред, попытка уговорить ТС заплатить за работу, при этом большинство считает, что и спецов нет таких?

Если у кого будет что сказать по делу, открою снова, а пока - флудотопик закрыт.




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

Создано: 14 января 2016 14:56
· Личное сообщение · #3

Оставлю и я некоторый комментарий по теме. Декомпиляция NE, vb4 и более старых версий на данный момент абсолютно бессмысленна. Разработка декомпилятора, который сможет восстановить хотя бы 85% кода и при этом быть стабильным в работе потребует на порядок больше времени, чем разработка
декомпилируемой программы с нуля. Ввиду того что программы на обозначенных выше языках встречаются крайне редко (максимум раз в год мне кто-то пишет по вопросам относительно VB младше 5 версии) - разработка и поддержка декомпилятора не актуальна.

В остальном соглашусь с DrVB_5_6 и остальными знакомыми с темой декомпиляции не понаслышке. Многие новички думают: эхх, умел бы я программировать - любые бы задачи решил (или как там про дом на горе). Только вот беда, даже знание нескольких языков не поможет никак написать декомпилятор. Языки лишь инструмент описания мыслей и алгоритмов решения. А вот алгоритмы придется разрабатывать, и чаще всего сначала в голове и вручную, а уже потом переносить на язык компилятора.

В отличии от .NET, который имеет IEEE спецификацию и документирован от и до, VB предыдущих версий недокументированы никак. И каждую команду, каждый опкод, каждый вызов из MSVBVM приходится изучать самостоятельно, затем проверять на нескольких примерах которые также писать самостоятельно. А команд таких для P-Code порядка 1400, для натива почти весь x86 ассемблер. Плюс около 700 вызовов из MSVBVM60.DLL. Добавим к этому комбинации настроек компилятора (если речь про натив) и всю гору нюансов работы с COM OLE (dispatch интерфейс, safearray, variant и так далее) и получаем задачу, решение которой требует очень много лет. Для меня это уже более 10 лет работы - но задача на данный момент для натива решена максимум на 75% а для пикода на 85%. И это для языка который еще встречается, для VB младше 5 версии оно не актуально вовсе.

PS: Воспользуюсь случаем, оставлю некоторый комментарий про крякнутые VB Decompiler (думаю информация будет полезна). Все что выкладывается взломанное в сеть начиная с версии 9.9 и старше - не является рабочим продуктом. Это комплект из версии 9.8 и базы данных от более новых версий плюс замена номера версии в заголовке. Зачем это делается - не знаю. Для непосвященных в декомпиляцию людей - все выглядит рабочим. Декомпилятор запускается, что-то декомпилирует, код выводит, версия в заголовке свежая. По факту ни одно из исправлений или улучшений версий старше 9.8 в таких пиратских копиях увы нет. Увидеть это можно невооруженным глазом просто по отсутствию обработки заявленных в новых версиях функций MSVBVM, поддержки Select Case в нативе, исправлений багов и так далее. Также ввиду того что базу прикладывают новую, а EXE файл патченный старый - много где начинают всплывать внутренние сигнатуры вместо декомпилированного кода. Это лишь так к сведению, если кто таки пользуется кряками.

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



<< . 1 . 2 .
 eXeL@B —› Крэки, обсуждения —› Visual Basic 4.0 в формате NE (для олдскульный маэстро)
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати