update bomblab

This commit is contained in:
18218461270@163.com 2025-08-02 15:41:05 +08:00
parent eacaddd6d7
commit 84461d151d

View File

@ -15,7 +15,10 @@ void phase_1(char str[]) {
显然,输入应为 `Border relations with Canada have never been better.` 显然,输入应为 `Border relations with Canada have never been better.`
## Phase 2 ## Phase 2
在这个 phase 中,我们看到编译器在处理循环时使用了奇怪的策略,这使得生成的汇编混乱并且难以理解。对此,我们选择出较为混乱的代码,调整指令的顺序并相应改变的跳转,使之符合原书中描述的几种形式。 逆向工程循环的一些技巧:
- 框选出循环范围,将跳转指令的操作数由地址改为标号;
- 尝试移动整段代码,并修改相应的跳转指令;
- 最终使之符合任意一种通用策略。
在这里,我们将 `400f0a``400f3a` 部分整理如下: 在这里,我们将 `400f0a``400f3a` 部分整理如下:
```esm ```esm