怎样才能改变与十六进制编辑器的指令?(How does one change an instruct

2019-09-21 09:50发布

我瞎搞一些逆向工程,但我不知道如何改变一个JNZ用十六进制编辑器JZ。 我的理解是因系统而异,但我不知道到哪里找到这些信息。 我工作在Mac OS X 64位和我反汇编代码与IDA Pro的。

Answer 1:

如果你发现了一个jz ,它要么看起来像74 XX0F 84 XX XX XX XX 。 如果它是一个74 ,将其更改为75 。 如果它是一个与84 ,将其更改为85 。 这些信息可以发现,在其他地方,在Intel的手册(体积2A)。

它不会因系统而异,只要它们是基于所有x86,如果他们不那么jzjnz可能根本不存在..



Answer 2:

我认为这样做的正确方法是找出感兴趣的指令操作码(操作码)。 既然你感兴趣的JZ和JNZ指令,我推断你是英特尔的x86-64机器上。 这意味着你需要看一下英特尔的参考http://www.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html 。 这里你会发现,我相信,你想了解更多有关英特尔的64位汇编一切。 而你就可以随时随地运用所学知识,比如,例如,在编辑操作码的十六进制编辑器。



文章来源: How does one change an instruction with a hex editor?