如何以编程方式从 .NET 二进制文件中提取函数名称、函数参数和字符串?

逆向工程 视窗 工具 。网 反编译器
2021-06-19 23:41:06

我的目标是

  1. 提取函数名称,
  2. 它们来自的库(如果导入了函数),
  3. 函数参数,和
  4. 字符串

来自 .NET 二进制文件。我怎样才能做到这一点?这是否可以使用JustDecompile.NET Reflector 之类的工具他们是否提供允许执行此操作的 API?

我注意到 IDA 的函数窗口已填充,但字符串窗口未填充。另外,我想使用反编译工具会更容易(例如获取函数参数)...

PS:代码没有混淆,它不是恶意软件,而是普通软件。

2个回答

dnlib由非常强大的dnSpy(.net 反汇编程序)使用,是一个开源 .net 库,用于分析可能是您正在寻找的 .net 模块和程序集。

他们还有一个类似于您的用例的示例:

打开 mscorlib.dll,然后打印出程序集中的所有类型,包括每个类型具有的方法、字段、属性和事件的数量。

前阵子我写了这个cheago依赖工具。它在我的 GitHub 上。https://github.com/marshalcraft/CheapoDllDependencyTool?files=1