首页 > 我有个exe程序,怎么能得到源代码?大小48k,试过几款通用的,都解不开。

我有个exe程序,怎么能得到源代码?大小48k,试过几款通用的,都解不开。

如果能帮助,留下邮箱,我可以回复!


  1. 编译的全过程中充满了不可逆的步骤。例如:代码预处理(排版结构破坏、注释破坏等都是这一步)、变量分配内存、头文件引用等。
  2. 反推出人类可读、工程可用的源代码,一般来说在理论上是不可行的。
  3. 拆解EXE除非是碰到某些特定的“套壳”程序。即exe文件中的底层机器代码并不直接执行程序的逻辑,而是仅仅作为一个中间层,充当语言或框架的运行环境。这时实际代码其实隐藏在exe文件的数据区域中,在技术上是数据提取而不是真正的反编译。唯有这样才能够既不破坏“反编译理论上不可能”,还能够变相达到“exe文件转换成源代码”的客观目的。一个例子就是py2exe的exe文件。不过那个也只能解出python的字节码而不是源代码。
  4. A/B问题。题主可否描述你必须通过反编译达到的工程目标是什么?
  5. 网络社区以公开讨论为荣,以小窗私聊为耻,尤其以搅扰别人做私人义工最为不齿。这里不是BT求种,题主留邮箱这个习惯亟需自重。
  6. 另外:这个需求是纯粹的技术研究,还是有其他的商业目标?这其中是否涉及知识产权相关问题?

ida pro你试过了么。就算得到了源代码,由于编译器优化和变量名字消失等原因,也不容易读懂。不如先通过dll调用分析出来它的框架,然后找到关键的函数人工反编译一下,会好很多。


只能反汇编,然后人通过反汇编的代码去推测源代码。这是一件需要技术和时间以及耐力的工作。


从二进制文件得到文本代码的过程,叫反汇编。大小48k的程序也不小,估计是c或c++编写的。据我所知,还没有什么工具能完全代替人来完成这个功能。

【热门文章】
【热门文章】