我最近决定尝试对一个用 QBasic 编码的基于 DOS 文本的旧游戏进行逆向工程。
我在网上找到了一些关于旧 DOS 游戏反汇编的信息,但主要是针对 Wacom 编译的 C/C++ 二进制文件,但在 QBasic 上没有。我知道获得原始的基本代码可能是不可能的,但是使用 nasm 反汇编文件我也没有得到任何有用的信息......
任何指针?
我最近决定尝试对一个用 QBasic 编码的基于 DOS 文本的旧游戏进行逆向工程。
我在网上找到了一些关于旧 DOS 游戏反汇编的信息,但主要是针对 Wacom 编译的 C/C++ 二进制文件,但在 QBasic 上没有。我知道获得原始的基本代码可能是不可能的,但是使用 nasm 反汇编文件我也没有得到任何有用的信息......
任何指针?
我发现启用调试的构建有点笨拙。但是我发现使用idados将 DOSBox 和 IDA 结合起来非常好。这是一个 IDA Pro 插件,它允许您从 IDA 中控制启用调试的 DOSBox 构建的调试器,类似于您如何控制运行其他支持的远程调试器之一的调试器。
鉴于 Igor 的现有答案,这当然就像使用菜刀而不是手术刀,但我想我应该提到它,因为它是一种更通用的反转 DOS 程序的方法。
注意:曾经有一个更旧的,但我认为不相关的同名插件,它的原作者没有维护。我的磁盘上仍然有它的副本(在家里),但该网站似乎不再存在。