刚开始使用x86汇编,然后慢慢掌握了它。 IDA生成了不错的图形,使跟踪所有跳转和函数调用以及其他操作变得更加容易。是否可以合理地接受大量指令,并在Java或C中重现相同的逻辑。我想对于某些人来说,经过多年的训练后,在某种程度上它变得比日常的琐事更多。

评论

我之前看到的一个示例是一个简单的XOR加密算法,出于某种原因使用了64 KB密钥。那不是您要手动输入的内容...

反编译不是那么简单,最复杂的事情是重建在编译过程中丢失的程序的高级结构(变量,函数,模块/类等)。

@perror我在考虑更多的子例程和底层结构。例如,在深入研究调试器之后,我精确定位了执行某种操作的子例程集,这就是我所需要的。哦,除了涉及一百万条指令。

您可以在IDA中使用反编译器来生成C文件。但是它没有包含在IDA的免费版本中。

#1 楼

是的,这种工具称为反编译器

以下几个示例: br /> SmartDec
可重新定向的反编译器


#2 楼

还有asm2c,它可用于汇编源代码而不是可执行文件或目标文件。