问题标签 [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.
.net - MethodImplAttribute 如何在 .NET 中工作?
我正在研究一些框架代码(System.AppDomain.GetDynamicDir 方法),这就是汇编程序显示的全部内容:
调用此方法时会发生什么?我不是指这个特定的方法,而是具有这个属性的一般方法。
linux - linux反汇编程序
如何从头开始为 linux 编写一个简单的反汇编程序?有什么库可以使用吗?我需要一些“正常工作”的东西。
debugging - 是否有任何 IDA Pro 替代品?
是否有任何反汇编程序提供与 IDA Pro 相当的功能集?
我对免费和商业产品都感兴趣。请为每个产品使用一个答案,并尽可能写一个简短的评论,例如“易于使用”、“许多功能”、“仅支持 PE 文件”……
visual-foxpro - 是否可以反汇编 Visual FoxPro 9.0 exe 文件?
我有一个旧版 FoxPro exe 应用程序。
源代码不可用(它是外包编写的,源代码从未交付)。
有人要求用 C# 编写完全相同的应用程序,然后开发新功能。要求像往常一样过时。虽然我们可以看到应用程序在 UI 上做了什么,但我们也想了解内部逻辑。
FoxPro 是否有任何工具可以与 .Net Reflector 对 .NET 程序集执行相同的操作?
gdb - 如何使用 GDB 反汇编内存范围?
我正在尝试反汇编一个程序以查看系统调用汇编指令(我相信是 INT 指令)和带有 GDB 的处理程序,并为其编写了一个小程序(见下文)来打开和关闭文件。
我能够使用 GDB 跟踪 fopen 的调用,直到它执行调用。
当我试图告诉 GDB“反汇编 0x....”(调用地址)时,它以“没有函数包含指定地址”作为响应。
是否可以强制 GDB 反汇编(或在汇编程序中尽可能好地显示)该内存地址?如果是这样,怎么做?
dll - 如何查看两个 DLL 之间的差异?
有没有办法查看两个二进制 DLL 文件之间的差异?我对两者都有 PDB。
理想情况下,我希望看到:
- 增加了哪些功能
- 删除了哪些功能
- 修改了哪些功能(有反汇编的差异)
- 添加/删除/修改了哪些其他条目(静态变量、资源等)
注意:这与这个问题不同,因为我正在处理本机 DLL。
disassembly - 从 DLL 二进制文件中获取 IL 代码
我正在学习伊利诺伊州。
我喜欢 RedGate 的 .Net Reflector 工具(最初是 Lutz)。我已经有了 Serge Lidin 和 Ecma-335 的书。看起来这些东西就是我们必须使用 IL 的全部内容(当然,除了 ILAsm 和 ILDasm)。
我的任务是解析汇编二进制文件并获取 IL 代码。很明显,程序集是一个二进制文件;因此,它只是一个字节链。为了做我想做的事,我需要知道汇编结构:存在哪些标头,它们占用多少字节,字节偏移量以逐字节读取,等等。
Lidin 的书对此进行了描述,但对我来说并不是 100% 清楚。有没有人尝试将 DLL 解析为字节流?要将元数据和 IL 代码作为字节流,然后解析 IL 字节流以获取 IL 源?我不想在这里使用反射;我只想使用二进制文件,而不是。
单声道塞西尔做同样的事情吗?即使是这样,我也想知道该怎么做。
是的,我正在尝试创建另一个类似 .NET Reflector 的轮子,我想知道它是如何制作的。就像有人说的那样:“Lutz 不一定是世界上唯一知道如何制作它的人”。
顺便说一句,ISDasm 是如何工作的?它是用 .net 编码的吗?
有什么想法、资源、例子吗?
谢谢你。
c# - Label_标记在Reflector中来自哪里以及如何破译它们?
我正在尝试使用 Reflector 的反汇编功能来理解一种方法。任何使用过此工具的人都知道,某些代码显示时带有(可能)未在原始源代码中使用的 C# 标签。
在我正在查看的 110 行方法中,有11 个标签语句。随机片段示例:
什么样的代码让Reflector到处显示这些标签,为什么不能反汇编?
有没有破解它们的好技术?
c++ - 调试优化的 C/C++ 程序的有效方法是什么?
很多时候我使用优化的代码(有时甚至涉及矢量化循环),其中包含错误等。如何调试这样的代码?我正在寻找任何类型的工具或技术。我使用以下(可能已过时)工具,因此我正在寻求升级。
我使用以下内容:
- 由于使用 ddd,您看不到代码,因此我使用 gdb+ dissambler 命令并查看生成的代码;我无法真正使用它来逐步完成程序。
- 无意识
谢谢
c# - 与 JAD 等效的 C# 是什么?
什么是相当于 Java 的 JAD 的 C#,是否有类似于 Eclipse 的 JadClipse 的 VS 插件?