Вы на самом деле не реверс-инжиниринг, если у вас есть код, и вы просто пытаетесь его понять. Похоже, вы просто делаете «обслуживание», но это в сторону.
Работа с унаследованным проектом включает в себя много чтения кода, проработки того, что он делает, создания заметок и переименования, пока вы не сможете отделить части, будь то пользовательский интерфейс / меню, анимация, AI или что-то еще игра делает.
Для игр с обратным инжинирингом (в сборке) я склонен:
Найдите области кода, которые вызывают графические прерывания, и начните называть их graphics_N, и то же самое для обработки файлов, звука и т. Д. Затем вы можете заметить, где находится текст / меню, и вы знаете, где в игре это: так что вы можете сделать шаг за шагом по коду и посмотреть, как этот код прыгает. Вы можете заметить, что некоторые подфункции обновляют анимацию, и вы можете назвать ее так, а затем найти, где она была вызвана, чтобы лучше понять, как и где она используется.
Имея доступ к коду, я был бы шокирован, если бы переменные, функции и структуры имели бессмысленные имена. Но QB было проще с маленькими именами ...
Я не использовал FBEdit, но Visual Studio отлично справляется с чтением кода QB (он думает, что это VB6 / VB.Net), но оттуда вы можете довольно быстро переписать его в C #. Я сделал это для моего старого кода QB. Вам просто нужно написать некоторые вспомогательные функции, которые выполняют классические функции QB, пока вы не удалите эти основные абстракции.