能力值:
( LV2,RANK:10 )
|
-
-
26 楼
只有学习的份,厉害
不过写的很详细
|
能力值:
( LV2,RANK:10 )
|
-
-
27 楼
天啊,一定要支持一下.
辛苦了LZ
|
能力值:
( LV4,RANK:50 )
|
-
-
28 楼
牛人,支持!
|
能力值:
(RANK:1060 )
|
-
-
29 楼
老兄喜欢首字母大写的风格?看起来好累啊……
|
能力值:
( LV2,RANK:10 )
|
-
-
30 楼
刚碰到壳,,,好好 学习一下,,,,
牛人,,,不知什么 才能跟上你的步子
|
能力值:
( LV9,RANK:330 )
|
-
-
31 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
32 楼
多谢了
学习中
|
能力值:
( LV2,RANK:10 )
|
-
-
33 楼
最初由 fly 发布 老兄去写脱壳机吧
嗯,我也和FLy大侠一样.
可以写脱壳了
|
能力值:
( LV2,RANK:10 )
|
-
-
34 楼
Qiang
|
能力值:
( LV2,RANK:10 )
|
-
-
35 楼
晕啊....看得我云里雾里.还要努力学习啊!!
|
能力值:
( LV2,RANK:10 )
|
-
-
36 楼
请问:DFCG 官方网站的网址.
|
能力值:
( LV12,RANK:450 )
|
-
-
37 楼
http://www.chinadfcg.com
|
能力值:
( LV2,RANK:10 )
|
-
-
38 楼
DFCG 官方网站无法进入是何原因????
|
能力值:
( LV2,RANK:10 )
|
-
-
39 楼
操作系统:WINDOWS 2003 SP1
工具:OLLYDBG1.10(汉化第二版)
软件:同益起名大师 V3.37
按照楼主的介绍的方法脱壳,发生错误。
1、找到OEP(17D705)地址与你的文章中不同
0057D705 E8 2A93E8FF CALL GoodName.00406A34
0057D70A 8BD8 MOV EBX,EAX
0057D70C 85DB TEST EBX,EBX
0057D70E 74 17 JE SHORT GoodName.0057D727
0057D710 E8 4794E8FF CALL GoodName.00406B5C
用Peditor脱壳,得到UnGDN.exe文件。
2、PE Explorer 装载 UnGDN.exe (Dump的文件),下面的值和你文章中的略有不同。
Name Virtual Size Virtual Address
.idata 0000294E 00584000
.rata 00000018 00588000
点 Data Directories
修改用上面的值 .idata 和 Tls 数据。
点 Section Headers ,点计算。然后存盘。
3、用OD载入贴好补丁的UnGDN.exe,运行脚本 Remove Embedded Code by gzgzlxg
大约半分多钟出现 UNGDN.EXE-应用程序错误:
“0x006948d3”指令引用的“0x00a7f037”内存。该内存不能为“read”。
要终止程序。
不知道什么原因,请教楼主如何解决。
谢谢。
|
能力值:
( LV12,RANK:450 )
|
-
-
40 楼
57D705是伪入口地址,不是真正的入口地址,请你仔细的阅读我的文章,不要放过任何细节。
操作系统虽然不同,但是不会影响入口地址的偏移,装载地址有可能不同,但从你所提供的资料,装载地址显然也在400000,下面是修复后的真正入口地址和相关的代码。
0057D6E4 start proc near
0057D6E4 55 push ebp
0057D6E5 8B EC mov ebp, esp
0057D6E7 83 C4 F0 add esp, 0FFFFFFF0h
0057D6EA 53 push ebx
0057D6EB 56 push esi
0057D6EC B8 24 D2 57 00 mov eax, offset dword_57D224
0057D6F1 E8 FE 90 E8 FF call @Sysinit@@InitExe$qqrpv ; Sysinit::__linkproc__ InitExe(void *)
0057D6F6 8B 35 B0 24 58 00 mov esi, ds:Tapplication@VMT@Ptr@Prt
0057D6FC 68 78 D7 57 00 push offset aGoodname ; "GoodName"
0057D701 6A FF push 0FFFFFFFFh ; int
0057D703 6A 00 push 0 ; lpMutexAttributes
;这里是你说的入口地址,显然你没有很好的阅读我的文章
0057D705 E8 2A 93 E8 FF call sub_406A34
0057D70A 8B D8 mov ebx, eax
0057D70C 85 DB test ebx, ebx
0057D70E 74 17 jz short loc_57D727
0057D710 E8 47 94 E8 FF call GetLastError
0057D715 3D B7 00 00 00 cmp eax, 0B7h
0057D71A 75 0B jnz short loc_57D727
0057D71C 53 push ebx ; hObject
0057D71D E8 EA 92 E8 FF call CloseHandle
0057D722 E8 8D 6A E8 FF call sub_4041B4
0057D727 loc_57D727: ; CODE XREF: start+2Aj
0057D727 ; start+36j
0057D727 8B 06 mov eax, [esi]
0057D729 E8 76 96 EF FF call unknown_libname_641 ; Delphi 5 Visual Component Library
0057D72E 8B 06 mov eax, [esi]
0057D730 BA 8C D7 57 00 mov edx, offset aMCJ ; "同益起名大师"
0057D735 E8 62 92 EF FF call @Forms@TApplication@SetTitle$qqrx17System@AnsiString ; Forms::TApplication::SetTitle(System::AnsiString)
0057D73A 8B 0D D4 20 58 00 mov ecx, ds:TMain@VMT@Ptr@Ptr
0057D740 8B 06 mov eax, [esi]
0057D742 8B 15 0C 21 57 00 mov edx, TmainVMTPrt
0057D748 E8 6F 96 EF FF call @TApplication@CreateForm ; TApplication::CreateForm
0057D74D A1 D4 20 58 00 mov eax, ds:TMain@VMT@Ptr@Ptr
0057D752 8B 00 mov eax, [eax]
0057D754 8B 90 40 02 00 00 mov edx, [eax+240h]
0057D75A 8B 06 mov eax, [esi]
0057D75C E8 2F 92 EF FF call @Forms@TApplication@SetIcon$qqrp14Graphics@TIcon ; Forms::TApplication::SetIcon(Graphics::TIcon *)
0057D761 8B 06 mov eax, [esi]
0057D763 E8 D4 96 EF FF call @Forms@TApplication@Run$qqrv ; Forms::TApplication::Run(void)
0057D768 8B 06 mov eax, [esi]
0057D76A E8 B9 97 EF FF call @Forms@TApplication@Terminate$qqrv ; Forms::TApplication::Terminate(void)
0057D76F 5E pop esi
0057D770 5B pop ebx
0057D771 E8 3E 6A E8 FF call sub_4041B4
0057D771 start endp
0057D776 00 00 align 4
0057D778 ; char aGoodname[]
0057D778 47 6F 6F 64 4E 61+aGoodname db 'GoodName',0 ; DATA XREF: start+18o
0057D781 00 00 00 align 4
0057D784 FF FF FF FF 0C 00+ String_Head <0FFFFFFFFh, 0Ch>
0057D78C CD AC D2 E6 C6 F0+aMCJ db '同益起名大师',0 ; DATA XREF: start+4Co
0057D799 00 00 00 00 00 00+ align 80h
我特地将机器码也列出来了,便于你修改和理解。
另外此贴已经太久时间了,最好不要在做什么文章了,看雪论坛不希望将旧贴顶上来,请你谅解,所以我也不会再回答相关的问题了。
|
能力值:
( LV2,RANK:10 )
|
-
-
41 楼
57D705是第一次Dump的地址,应该是你所说的伪入口地址,但按你文章中的方法修复后,起始地址始终跟你的不同。
谢谢楼主,我再仔细研究。
|
|
|