问题标签 [disassembly]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2789 浏览

decompiler - 将x86 PE二进制文件反编译为C?

我想知道是否有任何方法可以生成 x86 PE 二进制文件的 C 代码。我真的不需要这个,我只是想了解一些闭源软件是如何工作的。

从我的常识来看,我认为这个过程是:

  • 将 x86 二进制文件转换为汇编,这可以使用 OllyDbg 之类的反汇编程序来完成。
  • 将此程序集转换为 C。我不知道任何工具,这实际上是我的问题。

我将非常感谢您的帮助。谢谢你。

PS:如果这不合法(虽然我不是破解者并且没有破解目的)请删除此问题

0 投票
3 回答
8021 浏览

visual-studio - Visual Studio 2008:如何查看当前未执行的 DLL 的反汇编代码

我正在使用 Visual Studio 2008 来追踪执行过程中的错误。我已附加到该过程并确定了感兴趣的模块。(碰巧这个模块的调试符号是从 pdb 文件中加载的。)我想在反汇编窗口中显示反汇编代码,以便我可以决定在哪里设置断点。

当我中断进程时,当前正在执行的模块显示在反汇编窗口中。不幸的是,这不是感兴趣的模块。我不知道如何在感兴趣的模块不执行时显示它的代码。

0 投票
1 回答
179 浏览

windows - 从 ExE 或 Bin 文件中检索函数的地址

如果我想检索放在 exe 文件或二进制文件中的函数的反汇编代码和绝对地址,您可以为我推荐哪个程序?

0 投票
5 回答
12392 浏览

assembly - 如何将 Intel 80386 机器代码转换为汇编语言?

我被赋予了以下任务:

考虑以下十六进制值序列:

55 89 E5 83 EC 08 83 E4 F0 31 C9 BA 01 00 00 00 B8 0D 00 00 00 01 D1 01 CA 48 79 F9 31 C0 C9 C3

此字节序列表示 32 位模式下 Intel 80386 机器语言中的子例程。

  • 当执行此子程序中的指令时,它们会将值留在寄存器 %ecx 和 %edx 中。价值观是什么?

  • 执行此子例程完成的计算的 C 程序是什么,然后打印由该程序计算的 %ecx 和 %edx 的值,就像它们在子例程执行结束时出现的那样。

由于我没有记住 80386 指令集,我必须首先将这些操作码字节转换为它们的汇编语言助记符等价物。那么,在某处是否有在线参考,将十六进制值映射到指令之类的表?我查看了英特尔的网站,但一无所获。还是有更好的方法来破译这个......?

0 投票
4 回答
1289 浏览

python - 用 python 反汇编 - 没有简单的解决方案?

我正在尝试创建一个 python 脚本,它将反汇编一个二进制文件(准确地说是一个 Windows exe)并分析它的代码。我需要能够获取某个缓冲区,并提取某种结构,其中包含有关其中指令的信息。

我以前在 C 中使用过 libdisasm,我发现它的界面非常直观和舒适。问题是,它的 Python 接口只能通过 SWIG 使用,我无法让它在 Windows 下正确编译。

在可用性方面,diStorm 提供了一个很好的开箱即用接口,但它只提供每条指令的助记符,而不是一个二进制结构,其中包含定义指令类型的枚举等等。这对我的目的来说非常不舒服,并且需要花费大量时间来包装界面以使其符合我的需求。

我还查看了 BeaEngine,它实际上提供了我需要的输出,一个包含有关每条指令的二进制信息的结构,但它的接口非常奇怪且违反直觉,并且当提供错误的参数时它会立即崩溃。CTypes 会导致你的 python 崩溃。

因此,我很高兴听到其他解决方案,这些解决方案比使用 djgcc 或 mingw 来制作 SWIGed libdisasm 或为 diStorm 编写 OOP 包装器所花费的时间要少一些。如果有人对如何编译 SWIGed libdisasm 或更好的编译二进制文件(pyd 或 dll+py)有一些指导,我很想听听/拥有它。:)

提前谢谢。

0 投票
2 回答
8559 浏览

scripting - 在 IDA Pro 上安装脚本

在网上,我看到了 IDA Pro 的“脚本”的引用,但无法弄清楚如何为IDA Pro 4.9 Freeware Version加载或安装它们。

我该怎么做呢?特别是我希望使用PE Scripts

0 投票
9 回答
37111 浏览

c - 逆向工程c程序

如果此二进制文件已分发,则每个 c 程序都将转换为机器代码。既然计算机的指令集是人尽皆知的,那有没有可能找回C原程序呢?

0 投票
4 回答
17118 浏览

delphi - 反汇编在 Delphi 中编码的 DLL——如何开始?

有没有办法将我的 .dll 文件再次反汇编成机器代码?为此我需要哪些应用程序以及可以恢复多少?

0 投票
3 回答
43672 浏览

reverse-engineering - 如何识别用于开发软件的编程语言?

可能重复:
查找使用的编程语言

因此,我有一个由可执行 (exe) 文件和 DLL 组成的应用程序。有没有办法可以找出用于开发此软件的特定语言。我尝试在反汇编程序中打开它,但内容似乎是乱码。有任何想法吗?

0 投票
2 回答
3383 浏览

assembly - 我怎么知道这是做什么的?

我从某个软件中提取了这段汇编代码,但不幸的是,我对汇编程序一无所知,而我接触到的汇编程序位又回到了 Commodore Amiga 的 68000 中。

任何人都可以指导我如何理解这段代码,而无需从头开始学习汇编程序,或者只是告诉我它的作用?

有没有一种“模拟器”可以让我运行它来看看它的作用?