首页
社区
课程
招聘
[分享]OllyDbg.Disassembler.for.Delphi
2006-10-9 12:49 14775

[分享]OllyDbg.Disassembler.for.Delphi

2006-10-9 12:49
14775
这份代码转换自 OllyDbg 的反汇编引擎。我只转换了反汇编器部分,而没有转换汇编器部分。这本来是用于我自用某个程序的一部分,但是后来见到了 pvDasm,觉得 pvDasm 代码结构上的设计更为合理,因此决定采用 pvDasm 的引擎(当然还得转换为 Delphi 代码 )。不过使用 Ollydbg 的引擎也有另外一个好处:就是反汇编出来的代码和在 Ollydbg 里面是一样的,我们会很感到很亲切。

大家各取所需吧。

ben.yan (at) msn dot com
2006-10-09

阿里云助力开发者!2核2G 3M带宽不限流量!6.18限时价,开 发者可享99元/年,续费同价!

上传的附件:
收藏
点赞7
打赏
分享
最新回复 (15)
雪    币: 370
活跃值: (15)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
快雪时晴 4 2006-10-9 13:41
2
0
不知大家反响如何
雪    币: 303
活跃值: (461)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
liuyilin 2006-10-9 14:43
3
0
怎么使用
雪    币: 10
活跃值: (125)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
hermit 1 2006-10-9 17:25
4
0
最初由 liuyilin 发布
怎么使用


uses AsmServ, DisAsm,

procedure xxxxx();
var
  da                          : TDisAsm;
begin
  ideal := True; islowercase := False; putdefseg := 1;

    da.Result := '';
    da.Dump := '';
    DisasmCode(#$81#$05#$E0#$5A#$47#$00#$01#$00#$00#$00#$11#$22#$33#$44#$55#$66,
      11, $400000, @da, DISASM_CODE);

  ShowMessage(Format('%.24s    %.24s', [da.Dump, da.Result]));
end;


更详细的说明可以去参考原来 OllyDbg Disassembler 的说明。
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
zhucheba 2006-10-10 14:10
5
0
下载试用一下
雪    币: 236
活跃值: (49)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
ijia 2006-10-11 00:13
6
0
下载试用,谢谢分享。
btw:pvDasm 转换为 Delphi 代码后能共享一份吗?
雪    币: 10
活跃值: (125)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
hermit 1 2006-10-11 19:09
7
0
不好意思,现在还没转换好~
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
gkend 2006-10-21 21:01
8
0
lz测试没有?估计没测试。
发现许多bug:
1、[EBP0C],没加号[EBP+0C]
2、JZ,JE同时显示,应该选一
3、RETN,RET同时显示
4、不能返汇编PUSHAD,到这里就假死。
....等等。
雪    币: 10
活跃值: (125)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
hermit 1 2006-10-22 12:29
9
0
汗!照本宣科把代码转换后小部分测试(代码级,像:(#$81#$05#$E0#$5A#$47#$00#$01#$00#$00#$00#$11#$22#$33#$44#$55#$66 这样等,非二进制级*.exe)后发了上来。回头再仔细看一下~
雪    币: 236
活跃值: (49)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
ijia 2006-10-22 15:26
10
0
出错好象是因为 C 的 PCHAR 与 Delphi 的 String 类型的问题
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
gkend 2006-10-22 15:57
11
0
还有其他处理问题。比如正数、负数问题:add al,fe?应该为add al,-2等。
昨晚我对照ollydbg的反汇编C程序,重新作了修正,基本上没什么问题了。
雪    币: 236
活跃值: (49)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
ijia 2006-10-22 17:19
12
0
楼上把改过的,传一个上来吧。
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
程式 2006-11-4 20:45
13
0
下载试用一下
雪    币: 2071
活跃值: (77)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
sessiondiy 4 2009-7-22 11:42
14
0
请问LZ若更新完了可否分享一下.
1F那个bug很多哩.
thx
雪    币: 163
活跃值: (56)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
DEVILHAND 2 2011-2-14 11:13
15
0
LZ把汇编部分也翻译一下好不
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
surfjn 2011-4-11 15:00
16
0
这个有用,试下看,感谢。
游客
登录 | 注册 方可回帖
返回