我知道您不能拥有 C++ dll 并期望将其作为源代码,对吗?但同时,当我使用 DUMPBIN 将 C++ dll 还原为原始数据时,可以做一些事情来解释它,对吧?例如,我们知道大多数流行运算符的基本映射。
有没有一种工具可以将原始机器数据粗略地解释为看起来更像代码或指令的东西?问题是我没有足够的时间自己写它来从头开始!所以我正在寻找一个工具或东西来做这件事。
我知道您不能拥有 C++ dll 并期望将其作为源代码,对吗?但同时,当我使用 DUMPBIN 将 C++ dll 还原为原始数据时,可以做一些事情来解释它,对吧?例如,我们知道大多数流行运算符的基本映射。
有没有一种工具可以将原始机器数据粗略地解释为看起来更像代码或指令的东西?问题是我没有足够的时间自己写它来从头开始!所以我正在寻找一个工具或东西来做这件事。
在我看来,最好的反汇编程序是 IDA(交互式反汇编程序)。它有点贵,因为它是针对专业用途的,但是您可以尝试免费软件(旧)版本:
http://www.hex-rays.com/products/ida/support/download_freeware.shtml
Hex-Rays Decompiler (IDA的一个插件)可以从反汇编中生成 C 伪代码,在许多情况下可以再次重新编译。
你可以反汇编 DUMPBIN /DISASS 的代码部分——但是如果你想要像 C++ 这样的“代码”,那么你需要一个反编译器。然而,它们远不是很好,而且经常会产生非常不可读的代码——是的,你可以将它输入到编译器中,但这几乎不是我所说的“人类可读”。