如何对 DOS .COM 文件进行逆向工程?就调试而言,我从 FreeDOS 的创建者那里查看了 DEBUG 和 DEBUGX,以及 Windows 附带的默认 DEBUG 命令。当然,我可能可以与他们合作并最终弄清楚我在做什么,但我觉得这个过程最终会比必要的时间更长。我可以使用更好的工具吗?
如果没有比 DEBUG 或 DEBUGX“更好”的工具,那么我可以用什么来处理这两个工具的输出?我的主要目标是创建一些模仿 .COM 程序的东西,但采用更易于管理的格式(就代码而言)。
如何对 DOS .COM 文件进行逆向工程?就调试而言,我从 FreeDOS 的创建者那里查看了 DEBUG 和 DEBUGX,以及 Windows 附带的默认 DEBUG 命令。当然,我可能可以与他们合作并最终弄清楚我在做什么,但我觉得这个过程最终会比必要的时间更长。我可以使用更好的工具吗?
如果没有比 DEBUG 或 DEBUGX“更好”的工具,那么我可以用什么来处理这两个工具的输出?我的主要目标是创建一些模仿 .COM 程序的东西,但采用更易于管理的格式(就代码而言)。
我个人使用DosBox调试器,它非常完整,具有类似 SoftICE 的界面。
否则,您可以使用 DOS 调试器,如 Turbo Debugger 或 CodeView。
我的回答有点晚了;本网站的新人。启动反编译器项目是为了反编译 MS-DOS EXE 和 COM 二进制文件。该项目既有命令行又有 GUI 工具:
https://sourceforge.net/projects/decompiler/
使用以下命令和命令行工具来反编译 COM 程序:
decompile --default-to ms-dos-com myprog.com
在 GUI 中,使用菜单命令File
>Open as...
打开 COM 文件并指定起始地址,如 0800:0100。