绿林科技 发表于 2013-7-15 22:01

Visual C++开源反汇编引擎

由于用 Windows 7 的VS2010的 Unicode环境编程,由于调试的目的,开发了一个简单的反汇编引擎。

下面给出相关的示例代码:
// AssemblyTest.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include "disasm.h"
/*
nt!PsGetProcessImageFileName:
818b79fb 8bff            mov   edi,edi
818b79fd 55            push    ebp
818b79fe 8bec            mov   ebp,esp
818b7a00 8b4508          mov   eax,dword ptr
818b7a03 056c010000      add   eax,16Ch
818b7a08 5d            pop   ebp
818b7a09 c20400          ret   4
818b7a0c 90            nop
*/
int _tmain(int argc, _TCHAR* argv[])
{
        unsigned char code={0x8b,0xff,0x55,0x8b,0xec,0x8b,0x45,0x08,0x05,0x6c,0x01,0x00,0x00,0x5d,0xc2,0x04,0x00,0x90};
        DETAILED_DASM Detailed = { 0x401000 };
        _tprintf(_T("%d\r\n"),sizeof(code)/sizeof(unsigned char));
        for (int i=0,j=0,t=0;i<=7;i++)
        {
                j=Disassemble(code+t, Detailed );
                _tprintf( Detailed.Assembly );
                _tprintf( _T("\r\n") );
                t=t+j;
        }
        return 0;
}


主要文件为:disasm.cpp 和 disasm.h





QQ:1473656864
Visual C/C++ ,汇编语言,驱动交流群:177822398,177822108

1354669803 发表于 2013-7-15 22:04

我还是觉得OD比较好

Victory.ms 发表于 2013-7-15 22:25

谢谢楼主分享 先收藏

www52pojiecn 发表于 2014-1-15 12:06

这个需要大赞

九零-鑫鑫 发表于 2014-1-17 23:49

顶一个 谢谢楼主开源分享!

吾爱扣扣 发表于 2014-1-17 23:55

你留QQ了。。

flowerqina 发表于 2014-1-18 10:08

谢谢分享!

exe19890522 发表于 2014-3-14 19:49

学习一下吧,看不大懂

zacxport 发表于 2014-3-17 19:35

感觉很有用的样子、多少学了点组成原理 多少看懂了一点点、、

y79112 发表于 2014-3-17 22:24

虽然不太懂,先标记下慢慢学吧
页: [1] 2
查看完整版本: Visual C++开源反汇编引擎