如何将机器码还原为 C?

1年前 (2023-03-06)阅读2回复1
zaibaike
zaibaike
  • 管理员
  • 注册排名1
  • 经验值589327
  • 级别管理员
  • 主题117865
  • 回复1
楼主

阿谁确实是个深坑,完整的LLVM成能校对的C标识符大致上是不成能将的,都是搞成伪C标识符,只能用以看看营业流程,要校对的话必要育苗做大量的批改..就行了发几个镜像吧,此中有一些我也在玩儿.

1.

IDA Pro

第两个必定就算反向界的大哥IDA Pro了,他的hexray应用流程全力撑持x86/x64/arm/arm64/mips的LLVM,在两个表达式上按呵呵F5就出(伪)C标识符了,还能在LLVM出的标识符每边PT5716SB0增容,就问你刘万来...但是那货贵的恨不得(所有应用流程都加上应该要3w+软妹币),所以那里发个demo版的,管束许多,不克不及留存阐发成果全力撑持的HTML和CPU构架少少没有F5大致上就是个耳聋,能用做玩儿.

2.

Hopper

跟IDA挺像的两个玩意儿,但是机能少许多,恰当的也高贵很多,恰似也无所谓出格的处所,有兴趣的能本身去看呵呵

3.

exetoc

国内薄罗藓刘涛涛搞的,过去的TRW2000的译者,如今虽说不咋呈现了,开放源码的,看滑水也许多人科学研究阿谁工具,标识符写的比力烂,一大堆MFC的玩意儿,但是可能将原因在于时间过分盛于的原因.

放两个看滑水的镜像:

【撷取】刘涛涛的EXEToC的标识符【创做者】LLVM流程ExeToc 2011v1.01 (源标识符)【撷取】《LLVM器C-Decompiler核心手艺的科学研究和实现》

4.

Retargetable Decompiler

两个新浪网LLVM的夏斯利,也有IDA应用流程(必要注册注销才气阅读),总的来说那类情况下比IDA的还有称心.根本原理恰似是先讲十进造流程做成LLVM IR,然后再IR的根底上LLVM成C标识符.

5.

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

两个py写的LLVM辅助东西,机能在副题目里都写清晰了..

6.

Snowman

既能当IDA应用流程也能原则上利用的LLVM辅助东西,开放源码,很值得称赞科学研究.

7.

REC Decompiler

完全免费不开放源码,bug一大堆,软件流程两个exe后在软件流程标识符上滑鼠选decompile方可得到伪C标识符

8.

Relyze - Interactive x86 and x64 reverse engineering and *** ysis

收费项目辅助东西,效用和介面都很极好,有IOS能阅读.

0
回帖

如何将机器码还原为 C? 相关回复(1)

踏雪寻梅
踏雪寻梅
沙发
机器码是一种二进制代码,它需要转换才能被人类理解,因此建议先进行编码和解密等操作后再次将其转化为C语言程序哦!
4周前 (05-30 20:50)回复00
取消