Answers:
您可以使用IDA Pro的由六角光芒。除非您在调试信息中进行编译,否则通常不会从二进制文件中获得良好的C ++。准备花费大量的体力劳动来反转代码。
如果您不剥离二进制文件,那么IDA Pro可以产生类似C的代码供您使用,因此您会充满希望。但是,通常它非常粗糙,至少在几年前使用时。
信息在编译过程中被丢弃。即使反编译器可以生成包含类和所有内容的逻辑等效代码(可能无法生成),但自记录部分仍包含在优化的发行代码中。没有变量名,没有例程名,没有类名-仅地址。
是的,但是没有一个能够产生足够可读的代码,值得付出努力。与从头开始重写旧应用程序相比,您将花费更多的时间来尝试读取内部带有汇编器块的反编译源代码。
根据原始代码的大小和编写的好坏,可能有必要从您喜欢的语言(可能仍然是C ++)重新开始,并从上一版本中的任何错误中学习。有人不是曾经说过要写一个扔掉吗?
显然,如果这是一个巨大的产品,那么它可能不值得。
objdump
对于Linux