POD154981 发表于 2021-1-11 10:05

xlhwxyh 发表于 2021-1-11 10:40

jne 长度和jmp长度不一样,jmp是5个字节,长度超越了, 所以下一条指令也被破坏。
比如第一条指令 + 第二条指令有 7个字节,那你jmp后,占用5个,剩下2个就用nop nop来填充。

vipcrack 发表于 2021-1-11 10:11

修改代码的时候勾选NOP那个框

JuncoJet 发表于 2021-1-11 10:14

无所谓,你都jmp掉了,后面的代码不会执行了

老伙计 发表于 2021-1-11 10:17

本帖最后由 老伙计 于 2021-1-11 10:18 编辑

      应该是修改前后指令长度有变化,目前,修改后的指令长度是 5 个字节,你再看看修改前是几个字节,需要指出的是,如果新指令的长度比老指令长,那么,修改过后,就会损害下一条指令,可以修改的前提是,新指令的长度小于等于老指令。

POD154981 发表于 2021-1-11 10:26

yc0205 发表于 2021-1-11 10:30

加油奥力给

tomwu11 发表于 2021-1-11 10:39

POD154981 发表于 2021-1-11 10:26
jne和jmp长度不是一样吗?

機器碼不一定長度相同

zz100179 发表于 2021-1-11 10:46

如果是你描述的说明你找的地方不对,没有真正破解,或者有重启验证

老伙计 发表于 2021-1-12 11:30

POD154981 发表于 2021-1-11 10:26
jne和jmp长度不是一样吗?

       短跳转一样,长跳转不一样。
页: [1]
查看完整版本: 为什么我把JNE改成JMP后代码下面给我自动加了ADD一行?