dwgx@blog:~$dwgx
> cd ../posts

satsuki:东方 06 二进制 diff 小工具(fork)

// created

Simple binary comparison helper tool for Touhou 06

satsuki 是个专做 Touhou 06 東方紅魔郷 二进制 diff 的 Rust 小工具。原项目是 GensokyoClub/satsuki, 我 fork 一份放自己号下, 不装原创, 就记一下为啥拉过来、拿它干了啥。

搞东方逆向绕不开 EoSD 版本杂的问题。不同发行版、不同小版本、补丁前后, 同一个 exe 的二进制全不一样。想定位某个函数、某个偏移、某处改动, 肉眼翻 hex 很快就废。satsuki 正好把这活儿自动化: 读入两个二进制、对齐、找差异、把结果讲清楚。名字也很东方, 十六夜咲夜那味儿。

fork 下来我盯两块。一块当趁手工具直接用, 比对定位差异, 省得每次自己糊脚本。另一块当学习材料, 看作者怎么把比对逻辑拆开——Rust 按字节切数据不容易越界, 这套思路读明白, 换个游戏换个格式我自己也能复刻。

这份 fork 只是本地实验加备份, 不保证跟上游同步。真要用直接看 GensokyoClub/satsuki 上游, 文档 license issue 都在那; 拿我的 fork 替上游前先 diff 一眼。

还有条我一直守着: 逆向私料不进仓库。游戏本体二进制、私人分析笔记、token 和本机路径, 都不塞 git。工具是工具, 素材归素材。