VB Decompiler — это современный инструмент для дизассемблирования и декомпилирования программ (EXE, DLL или OCX), написанных на Visual Basic 5.0/6.0, а также программ на основе .NET технологии (Visual C#, Visual Basic .NET и т. д.). Как известно, программы, разработанные на Visual Basic 5.0/6.0 и Visual C#, могут быть скомпилированы в интерпретируемый псевдокод (p-code), в ассемблерный native code, а также в .NET MSIL сборку (x86 и x64). VB Decompiler поддерживает декомпиляцию для всех этих форматов.
Так как p-code представляет собой высокоуровневые команды, то появляется реальная возможность восстановить из этого кода исходный (правда имена переменных и некоторых функций само собой восстановить не удастся). VB Decompiler восстанавливает исходный код из псевдокода максимально близко к оригинальному, поэтому его при некоторых доработках реально довести до компилируемого.
Если программа была откомпилирована в native code, то о полном восстановлении исходника из машинных инструкций не может быть и речи. Но VB Decompiler и здесь поможет анализировать программу. В него встроен мощный дизассемблер и эмулятор команд, позволяющий насколько это возможно приблизить ассемблерный код к исходному. Естественно из-за сложности обработки всякого рода оптимизаций тут не обходится без ошибок сворачивания и вывода неверных инструкций, но для анализа данный метод декомпиляции и свертывания максимально полезен.
В случае если программа была создана в среде .NET, декомпилятор полностью восстановит структуру таблиц сборки, а также декомпилирует код в близкий к Visual C#. Также декомпилятор будет полезен для дизассемблирования и анализа IL кода. Для декомпиляции не потребуется ни сама среда .NET Framework, ни поддерживаемая .NET операционная система. Декомпилятор работает в любой операционной системе семейства Windows, а также в виртуальной системе, используя Parallels, Wine и т.д.
VB Decompiler также декомпилирует все Формы и UserControl'ы, расположенные в файле. Для технических нужд декомпилятор помимо прочего отображает смещения каждого контрола на формах.
В общем VB Decompiler идеальное средство для анализа программ и идеально подходит в случае потери исходных кодов и необходимости частично восстановить проект.
Возможности декомпилятора Visual Basic | Lite | Некоммерческая лицензия | Коммерческая лицензия | Коммерческая лицензия с поддержкой трассировки | Коммерческая лицензия с функционалом для аналитиков |
Универсальная распаковка пакованных приложений (поддерживаются UPX, NSPack и многие другие известные EXE упаковщики) | |||||
Декомпилирование форм (frm и frx) и usercontrol'ов (ctl) | |||||
Полная декомпиляция p-code в исходникоподобный код (включая декомпиляцию GUID объектов) | |||||
3 режима декомпиляции p-code (с обработкой стэка, без обработки и функция анализатора процедур с последующим упрощением кода и улучшением его читаемости) | |||||
Дазассемблирование native кода (используется мощный Pentium Pro дизассемблер, поддерживающий MMX и FPU наборы инструкций) | |||||
Подсветка синтаксиса в декомпилированном коде | |||||
Частичная декомпиляция Native Code'овых конструкций (используя уникальный движок эмуляции ассемблерного кода) | |||||
Индексирование строк, встречающихся в декомпилированном коде и функции быстрого поиск строк | |||||
Высокая скорость декомпиляции | |||||
Obfuscator для VB5/6 программ | |||||
Возможность патча для VB5/6 программ | |||||
Сохранение декомпилированного результата в базу данных | |||||
Дизассемблирование и декомпилирование .NET кода (Visual Basic, Visual C# и другие .NET ссовместимые языки) в MS IL и C# код | |||||
Сохранение имен процедур в MAP файл, IDC скрипт или файл HIEW Names | |||||
Использование VB Decompiler для декомпиляции коммерческого кода, анализа вредоносного кода, кода защищенного авторским правом (при наличии соответствующих прав у аналитика) и/или использование результатов декомпиляции в работе над коммерческим проектом | |||||
Активация и использование VB Decompiler в компании (требуется отдельная лицензия на каждого разработчика, пользующегося декомпилятором) | |||||
Трассировка кода отдельных процедур и функций в Visual Basic 5.0/6.0 приложениях, скомпилированных в Native Code и P-Code. Код не запускается на процессоре, а исполняется эмулятором. | |||||
Генерация Аналитического отчета, содержащего детальную информацию об активности декомпилируемой программы на компьютере пользователя. Аналитик получает полный отчет об участках (процедурах и функциях) программы, производящих те или иные манипуляции с файлами, реестром, окнами, процессами, а также использующие служебнгые функции Visual Basic для вызовов функций по имени (CallByName) и прямого доступа к адресам памяти (VarPtr). | |||||
Цена лицензии для использовании на одном компьютере |
Decompiling Code |
Disassembling Code |
Decompiling Forms |
HEX Editor |
String References |
Decompiling API |
* Microsoft, Windows, and Visual Basic are registered trademarks of Microsoft Corporation.