逆向工程旧游戏的二进制文件以突破限制
作者结合 Claude Code 与 Ghidra,在一款已有13年历史的游戏二进制文件中,沿多个校验位置追踪调用关系并解除一项限制。
- 具体怎么做
- 作者以高推理级别的 Claude Code 处理一款 2013 年 Disney Infinity 游戏的二进制文件,该文件没有符号、来源或之前的逆向工程说明。Claude 通过代码库追踪了“查找角色装备”的调用图,在六个代码区域发现了 13 个独立的验证点,在每次调用后识别出了 x86 分支模式,并在多次尝试失败后帮助确定了需要修复的具体字节。
- 做到了什么
- 它生成了17个二进制补丁和3个修改过的数据文件,因此任何角色都可以用于任何游戏套件中。该内容被打包成免费的开源模组,安装时间仅为两分钟。作者表示,更简单的单次补丁曾失败,因为剩余的检查项仍阻碍游戏运行。
- 上手要点
- 作者表示,整个工作耗时不到24小时。
你可以这样试
使用 Claude Code我正在分析我拥有的[旧程序或游戏二进制文件],以了解它是如何实施[限制条件]的,用于[研究或保存目的]。使用[Ghidra]在[项目文件夹]中的输出结果,追踪从[函数或字符串]开始的调用图,并列出所有验证点所在的位置。最后,制作一份验证点的书面清单及一个修复方案;在我批准之前,请勿修改任何文件。