如何将机器码还原为 C?

1个月前 (01-06 14:59)阅读1回复0
zaibaike
zaibaike
  • 管理员
  • 注册排名1
  • 经验值165935
  • 级别管理员
  • 主题33187
  • 回复0
楼主

那个确实是个大坑,完好的反编译成可编译的C代码根本上是不成能的,都是搞成伪C代码,只能用来看看流程,要编译的话需要人工做大量的修改..随意发几个链接吧,此中有一些我也在倒腾.

1.

IDA Pro

第一个必定如果逆向界的老迈IDA Pro了,他的hexray插件撑持x86/x64/arm/arm64/mips的反编译,在一个函数上按一下F5就出来(伪)C代码了,还能够在反编译出来的代码上下断点调试,就问你怕不怕...不外那货贵的要死(所有插件都加上应该要3w+软妹币),所以那里发个demo版的,限造良多,不克不及保留阐发成果撑持的文件格局和CPU架构很少没有F5根本上就是个残废,能够拿来玩玩.

2.

Hopper

跟IDA挺像的一个玩意,不外功用少良多,响应的也廉价很多,仿佛也没什么出格的处所,有兴趣的能够本身去看一下

3.

exetoc

国内大牛刘涛涛搞的,过去的TRW2000的做者,如今貌似不咋呈现了,开源的,看雪上也良多人研究那个工具,代码写的比力烂,一堆MFC的玩意,不外可能是因为时间过分长远的原因.

放两个看雪上的链接:

【分享】刘涛涛的EXEToC的代码【原创】反编译法式ExeToc 2011v1.01 (源代码)【分享】《反编译器C-Decompiler关键手艺的研究和实现》

4.

Retargetable Decompiler

一个在线反编译的东东,也有IDA插件(需要注册才气下载),小我觉得某些情况下比IDA的还有好用.原理仿佛是先讲二进造法式弄成LLVM IR,然后再IR的根底上反编译成C代码.

5.

GitHub - joelpx/plasma: Interactive disassembler for x86/ARM/MIPS. Generates indented pseudo-code with colored syntax code.

一个py写的反编译东西,功用在题目里都写清晰了..

6.

Snowman

既能够当IDA插件也能够零丁利用的反编译东西,开源,很值得研究.

7.

REC Decompiler

免费不开源,bug一堆,反汇编一个exe后在反汇编代码上右键选decompile即可得到伪C代码

8.

Relyze - Interactive x86 and x64 reverse engineering and analysis

收费东西,效果和界面都很不错,有试用版能够下载.

0
回帖

如何将机器码还原为 C? 期待您的回复!

取消