Современные решения

для защиты Windows приложений

и восстановления исходного кода

VB Decompiler

Декомпилятор приложений, разработанных в C#, Visual Basic 5.0/6.0 и VB .NET

VB Decompiler представляет собой самое современное и функциональное средство для декомпиляции программ (файлов EXE, DLL, OCX), разработанных на языках Visual Basic 5.0, 6.0, а также декомпиляции C# и Visual Basic приложений, разработанных в среде Visual Studio .NET. Продукт предлагает комплексное решение для анализа кода, редактирования строковых и бинарных данных, просмотра пользовательского интерфейса.



VB Decompiler Visual Basic 6.0 GUI Дизайнер


Программы, созданные на языке C# или Visual Basic .NET и скомпилированные в Visual Studio (включая последние версии среды) могут быть декомпилированы в VB Decompiler в C# подобный код с высоким уровнем восстановления. На данный момент может быть восстановлено порядка 85% C# кода из скомпилированного продукта. Безусловно, нельзя восстановить имена переменных, пользовательские типы данных (структуры), комментарии и прочие элементы, отсутствующие в скомпилированных программах. Также следует иметь ввиду, что если декомпилируемая программа была обработана обфускатором, то все имена классов и методов изначально утеряны, а код может быть изменен для невозможности его декомпиляции.

Обработка блоков C# If в VB Decompiler


Программы, разработанные в Visual Basic 5.0 и 6.0 могут быть скомпилированы либо в интерпретируемый псевдокод P-Code, либо в выполняемый процессором ассемблерный Native Code.

Так как псевдокод P-Code представляет собой высокоуровневые команды (даже учитывая их количество больше 1000 внутри фреймворка VB6), то появляется реальная возможность восстановить из таких приложений код, близкий к исходному. К сожалению, не удастся восстановить безвозвратно утерянные при компиляции: имена переменных, имена непубличных функций и процедур, пользовательские типы и т.д., так как эти данные не переносятся из исходного кода в созданный бинарный файл. VB Decompiler восстанавливает большую часть из около 1400 команд P-Code и позволяет восстановить до исходного состояния порядка 85% кода. Это значительно упрощает задачу анализа алгоритмов исследуемой программы и восстановление ее исходного кода.

VB Decompiler декомпиляция P-Code


Если программа была откомпилирована в Native Code, то полученный файл будет содержать оптимизированный машинный ассемблерный код. Его эмуляция и восстановление алгоритма также поддерживается в VB Decompiler, но ввиду полного отсутствия каких либо зацепок в машинном коде - восстановление кода возможно лишь частично и средний процент восстановленного кода обычно порядка 70%. Это средние значения. Естественно, какие-то процедуры получится восстановить почти полностью, а в каких-то уровень восстановления будет мал. В VB Decompiler входит полноценный эмулятор ассемблерного кода, который виртуально выполняет каждую функцию и на основе полученных данных восстанавливает алгоритм. В лицензии с поддержкой трассировки поддерживается функция пошаговой эмуляции машинного кода, что позволяет анализировать код каждой функции без его запуска. В VB Decompiler также входит современный дизассемблер, поддерживающий x86/x64 инструкции включая MMX, SSE, SSE2 и многие другие расширения. Это позволяет максимально точно дизассемблировать и анализировать код программы. Используемый анализатор кода отследит все сложные конструкции, такие как For ... Next, Select Case, параметры вызовов API функций и все ссылки на строки в дизассемблированном коде и попытается насколько это возможно восстановить код, приблизив результат к коду, написанному на Visual Basic.

VB Decompiler декомпиляция Native Code


В общем VB Decompiler идеальное средство для анализа программ в антивирусных лабораториях, а также максимально функционален в случае потери исходных кодов и необходимости частично восстановить проект.