如何反汇编 Pro*C/C++ 程序? [关闭]

Posted

技术标签:

【中文标题】如何反汇编 Pro*C/C++ 程序? [关闭]【英文标题】:How does one disassemble Pro*C/C++ programs? [closed] 【发布时间】:2010-10-08 07:16:02 【问题描述】:

有没有办法反汇编 Pro*C/C++ 可执行文件?

【问题讨论】:

投票结束作为离题:要么工具推荐,要么太宽泛。 【参考方案1】:

通常应该有可用于可执行文件的反汇编程序,无论它们是如何创建的(gcc、proC、手写等),但反编译优化的二进制文件很可能导致不可读或源代码。

此外,Pro C/C++ 不是直接编译器,而是输出 C/C++ 代码,然后由平台本地编译器(gcc、xlc、vc++ 等)编译。

此外,如果没有大量手动更正,生成的代码通常无法直接再次编译。

如果您仍想试试运气,请先查看x86 disassemblers 列表。

【讨论】:

可以从这个列表中推荐 IDA-Pro。它是商业产品,而且非常好。 我认为有一个免费的 4.3 版本,或者您可以获取较新版本的演示版本。【参考方案2】:

您应该尝试使用您选择的反汇编工具进行反汇编。归根结底,使用 PRO C/C++ 预处理器编译的可执行文件只是普通的 C/C++ 可执行文件。

如果您要查找的是代码中的 SQL 语句,您可能需要查看:

$ strings your_executable_file

它将为您提供可执行文件中存在的所有常量字符串的列表,并且您很可能会得到带有它的 SQL 语句。

祝你好运。

【讨论】:

这很好。如果你能给我提供反汇编工具,那就更好了。 另外,我正在寻找所有的程序代码,而不仅仅是 SQL 语句。 嗯,反汇编工具依赖于平台。由于您没有指定一个,我假设您已经拥有该工具,或者不想评论您正在使用的操作系统或 CPU 架构。【参考方案3】:

试试PE Explorer Disassembler,一个非常不错的 32 位可执行文件反汇编程序。

【讨论】:

以上是关于如何反汇编 Pro*C/C++ 程序? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

黑客教父郭盛华:11个IDA Pro反汇编程序的替代品

如何使用 API 窗口反汇编 exe 文件? [关闭]

ida pro能反汇编成c语言吗

从反汇编的角度学C/C++之条件判断

从反汇编的角度学C/C++之条件判断

从反汇编的角度学C/C++之条件判断