Как декомпилировать приложение от quickbasic?



У меня есть приложение, написанное на QuickBasic (игра). Я владею правами на него, но не писал исходный код. У меня есть исходный код передо мной, но я немного бьюсь головой, пытаясь понять все это. Есть ли какие-либо способы облегчить обратный инжиниринг? Прямо сейчас я использую FbEdit и просто пытаюсь разделить приложение на различные составные части.

452   1  

1 ответ:

Это не совсем реверс-инжиниринг, если у вас есть код и вы просто пытаетесь его понять. Звучит больше похоже на то, что вы просто делаете "обслуживание", но это в сторону.

Обработка устаревшего проекта включает в себя много чтения кода, разработки того, что он делает, делая заметки и переименовывая вещи, пока вы не сможете отделить части, будь то UI/меню, анимация, искусственный интеллект или что вообще делает игра.

Для игр dos обратного инженера (в сборке) я склоняюсь к:

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

С доступом к код, я был бы шокирован, если бы переменные, функции и структуры имели бессмысленные имена. Но QB было проще с маленькими именами...

Я не использовал FBEdit, но Visual Studio отлично справляется с чтением QB-кода (он думает, что это VB6/VB.Net), но оттуда вы можете довольно быстро переписать его в C#. Я сделал это для некоторых из моих старых QB-кодов. Вам просто нужно написать некоторые вспомогательные функции, которые выполняют классические функции QB, пока вы не удалите эти базовые абстракции.

Comments

    Ничего не найдено.