Сейчас на форуме: Magister Yoda, vasilevradislav (+5 невидимых) |
eXeL@B —› Крэки, обсуждения —› Visual Basic 4.0 в формате NE (для олдскульный маэстро) |
<< . 1 . 2 . |
Посл.ответ | Сообщение |
|
Создано: 09 января 2016 13:51 · Личное сообщение · #1 Здрастье. Подскажите плиз кто нить из олдскульных мастеров. Задачка такова: Есть приложение написанное на Visual Basic 4.0 16- ти разрядное, еессно его никто не берет. Посоветовали мне только один декомпайлер - Dodi's там есть под, как написано 4-ку, но он корректно декомпилит только PE файлы, да и то с ограничениями, по кол ву форм, глубине и пр. Мой NE не декомпилит, как я понял что то он неправильно разбирает секции NE файла. Он свой то сэмпл 32 разрядный с эксепшенами декомпилит. Dodi's я испольовал из сети альфа релиз с исходниками. Dodi's вообще то не подходит до конца, так как он тока декомпилит, а нужно подрехтовать программу, плюс он валиться от NE файлов. Подскажите варианты решения проблемы, порекомендуйте специалиста, сам я застрял |
|
Создано: 13 января 2016 21:47 · Личное сообщение · #2 |
|
Создано: 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 (для олдскульный маэстро) |
Эта тема закрыта. Ответы больше не принимаются. |