能力值:
( LV9,RANK:490 )
|
-
-
2 楼
|
能力值:
( LV9,RANK:230 )
|
-
-
3 楼
messageboxa 设断,往上追踪源头:
004A7977 E8 D1200000 call 004A9A4D ; NAG CALL
004A797C 83C4 28 add esp, 28
004A797F 68 04000080 push 80000004
004A7984 6A 00 push 0
004A7986 68 E9C14000 push 0040C1E9 ; ASCII "P.S..."
ASCII "P.S..." 记得NAG后面的窗口了吗?不知道你过没过?游戏嘛!自己玩得开心就行了。
找到了关键就好办了,将CALL NOP掉:
004A7977 90 nop ; NAG CALL
004A7978 90 nop
004A7979 90 nop
004A797A 90 nop
004A797B 90 nop
004A797C 83C4 28 add esp, 28
004A797F 68 04000080 push 80000004
004A7984 6A 00 push 0
004A7986 68 E9C14000 push 0040C1E9 ; ASCII "P.S..."
OD中右键复制到可执行文件。
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
算法还没弄懂,爆破现在可以了^o^
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
我说NBA2005兄,你的那个MessageBox怎么是在主程序里?
我的是在krnln.fnr模块里啊
|
能力值:
( LV9,RANK:490 )
|
-
-
6 楼
那个库文件相当于dll
主程序有对他的调用,找到主程序中地方nop掉他,改库文件会很麻烦
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
我跟踪了好久,我发现它是先创建一些空的模块,然后从解压出来的内存区域读取数据分别写入到那些空的模块里,然后再加载这些模块,这样的话你用OD改只能定位到加载的模块里面,而找不到在EXE里面的位置,而每次程序运行都会用新的模块替换旧的,这样你改模块也没有意义
我就是先破坏掉了EXE替换的部分,使它不能用新的模块替换,然后又改的模块
我QQ:47565564
|
能力值:
( LV9,RANK:490 )
|
-
-
8 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
知道了,谢谢!
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
谢谢petnt指点,过了三关了,不过都是跳过去的
哎,明天要回家了,不然可以研究一下算法
|
能力值:
( LV9,RANK:490 )
|
-
-
11 楼
不客气。注意休息,回家研究也不晚。。。哈哈
|
能力值:
( LV9,RANK:230 )
|
-
-
12 楼
我的也是在krnln.fnr模块里啊
77E133B3 > 55 push ebp
77E133B4 8BEC mov ebp, esp
77E133B6 51 push ecx
77E133B7 833D 583BE477 0>cmp dword ptr [77E43B58], 0
77E133BE 74 29 je short 77E133E9
77E133C0 64:A1 18000000 mov eax, dword ptr fs:[18]
77E133C6 8B40 24 mov eax, dword ptr [eax+24]
77E133C9 8945 FC mov dword ptr [ebp-4], eax
77E133CC B8 00000000 mov eax, 0
77E133D1 B9 2835E477 mov ecx, 77E43528
EAX 00002010
ECX 0040C1CB 001Hackg.0040C1CB
EDX 0040C1C4 001Hackg.0040C1C4
EBX 100E357C krnln.100E357C
ESP 0012F8B4
EBP 0012F97C
ESI 00001000
EDI 80000004
CTRL+F9:,出现P.S提示后,断下:
10062176 5F pop edi ; 018B0240
10062177 83F8 03 cmp eax, 3
1006217A 5E pop esi
1006217B 75 0F jnz short 1006218C
1006217D 8B4C24 68 mov ecx, dword ptr [esp+68]
10062181 B8 02000000 mov eax, 2
10062186 8901 mov dword ptr [ecx], eax
10062188 83C4 64 add esp, 64
1006218B C3 retn
CTRL+F9反复,直到:
004A797C 83C4 28 add esp, 28
004A797F 68 04000080 push 80000004
004A7984 6A 00 push 0
004A7986 68 E9C14000 push 0040C1E9 ; ASCII "P.S..."
004A798B 68 01030080 push 80000301
004A7990 6A 00 push 0
004A7992 68 00000000 push 0
返回程序领空是基本的技能,即如何返回程序主干。
NAG CALL 呢?你应该知道答案了。
ENJOY CRACK ME !
|
|
|