能力值:
( LV2,RANK:10 )
|
-
-
2 楼
那位大侠能帮讲解一下,谢谢。
|
能力值:
( LV12,RANK:980 )
|
-
-
3 楼
00407173 . 64:A3 0000000>MOV DWORD PTR FS:[0],EAX
00407179 . 8BF1 MOV ESI,ECX
0040717B . C705 B8974800>MOV DWORD PTR DS:[4897B8],0
00407185 . E8 567F0000 CALL 0040F0E0 ; 1.0040F0E0
0040718A . 3D 949C4104 CMP EAX,4419C94
0040718F 0F85 19020000 JNZ ///不让跳就可以了。
00407195 . 6A 68 PUSH 68
00407197 . E8 0BE80300 CALL 004459A7 ; 1.004459A7
0040719C . 83C4 04 ADD ESP,4
0040719F . 894424 0C MOV DWORD PTR SS:[ESP+C],EAX
004071A3 . 85C0 TEST EAX,EAX
004071A5 . C78424 F80700>MOV DWORD PTR SS:[ESP+7F8],0
004071B0 . 74 09 JE SHORT 004071BB ; 1.004071BB
004071B2 . 8BC8 MOV ECX,EAX
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
唉,搞了一天都没看明白 ,谢谢csjwaman指点。不知到什么位置去除自校验?
如何修改自校验?望高手有时间,能给细讲一下。谢谢!
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
没人能讲解一下吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
还是不明白 ,没人给讲解一下吗?真晕
|
能力值:
( LV9,RANK:210 )
|
-
-
7 楼
csjwaman已经说得很清楚了
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
没人给讲解一下全过程吗?菜鸟学习真难啊!
|
能力值:
(RANK:990 )
|
-
-
9 楼
呵呵,吃饭去了。
我来给你讲解一下吧。因为是自校验,首先考虑在 CreateFileA 上下断。修改后用OD载入,命令行中输 bp CreateFileA,回车,F9运行,断在这里:
7C801A24 > 8BFF MOV EDI,EDI ; 断在这
7C801A26 55 PUSH EBP
7C801A27 8BEC MOV EBP,ESP
ALT+F9返回,来到这:
004643F9 |. 8BF8 MOV EDI,EAX ; 返回到这里
004643FB |. 83FF FF CMP EDI,-1
004643FE |. 75 34 JNZ SHORT cpuzchs.00464434
00464400 |. 8B36 MOV ESI,DWORD PTR DS:[ESI]
我们希望看到最初是那里调用的,按几次CTR+F9返回,等第六次的时候(因为再按第七次OD中就暂停不了了)会来到这:
004548D2 \. C3 RETN ; 六次后来这
004548D3 /$ 8B4C24 04 MOV ECX,DWORD PTR SS:[ESP+4]
按一下F8,来到这里:
0040F118 |. 8BE8 MOV EBP,EAX ; 来到这
0040F11A |. 83C4 08 ADD ESP,8
0040F11D |. 85ED TEST EBP,EBP
0040F11F |. 75 17 JNZ SHORT cpuzchs.0040F138
往下翻翻,在这个过程的最后一个 RETN 那按F4:
0040F190 |. 33CC XOR ECX,ESP
0040F192 |. E8 67550400 CALL cpuzchs.004546FE
0040F197 |. 81C4 04010000 ADD ESP,104
0040F19D \. C3 RETN ; 在这按F4
再按一下F8就会看到 csjwaman 告诉你的位置了。
0040718A . 3D 949C4104 CMP EAX,4419C94 ; 这里
0040718F 0F85 19020000 JNZ cpuzchs.004073AE
00407195 . 6A 68 PUSH 68
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
谢谢CCDebuger 版主,马上试试。
|
能力值:
( LV12,RANK:660 )
|
-
-
11 楼
只修改这里是不行的,修改资源后加载驱动会失败。
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
ALT+F9返回,来到这:
004643F9 |. 8BF8 MOV EDI,EAX ; 返回到这里
004643FB |. 83FF FF CMP EDI,-1
004643FE |. 75 34 JNZ SHORT cpuzchs.00464434
00464400 |. 8B36 MOV ESI,DWORD PTR DS:[ESI]
ALT+F9返回,我的来到这:
00464219 |. 8BF8 mov edi,eax
请版主指点,谢谢。
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
0040F19D \. C3 RETN ; 在这按F4
再按一下F8就会看到 csjwaman 告诉你的位置了。
可我的到这了:00464219 |. 8BF8 mov edi,eax
请版主指点,谢谢。
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
0040718A . 3D 949C4104 CMP EAX,4419C94
0040718F 0F85 19020000 JNZ ///不让跳就可以了。
终于到这了,如何修改自校验?
请版主和兄弟们指点,谢谢。
|
能力值:
( LV12,RANK:660 )
|
-
-
15 楼
懒得跟了,改了主程序自身校验,驱动加载部分不想看了,提取出了它的驱动文件,顺手做了个Loader,现在已经可以在我这个版本上随意修改资源了。
BTW,Loader中没有写停止及卸载驱动代码,有需要再说吧。
|
能力值:
( LV12,RANK:660 )
|
-
-
16 楼
对了,Loader的图标来自riijj版主的crackme,riijj不会介意吧?
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
最初由 prince 发布 懒得跟了,改了主程序自身校验,驱动加载部分不想看了,提取出了它的驱动文件,顺手做了个Loader,现在已经可以在我这个版本上随意修改资源了。
BTW,Loader中没有写停止及卸载驱动代码,有需要再说吧。
不需要破解的,需要学怎样破解。还是要谢谢你的支持!
|
能力值:
( LV12,RANK:660 )
|
-
-
18 楼
晕,我还以为你要汉化。
|
能力值:
( LV2,RANK:10 )
|
-
-
19 楼
最初由 prince 发布 晕,我还以为你要汉化。
少禹前几天汉化好了
|
能力值:
(RANK:990 )
|
-
-
20 楼
最初由 prince 发布 只修改这里是不行的,修改资源后加载驱动会失败。
修改资源后加载驱动会失败?这玩意我没仔细跟,我是先用汉化工具自动汉化一下以后,复制一下附加数据,再修改一下自校验,运行好像没发现问题,也没管了。
|
能力值:
( LV12,RANK:660 )
|
-
-
21 楼
我加了个Label后就加载驱动失败了。
|
能力值:
(RANK:990 )
|
-
-
22 楼
看看你那是不是附加数据的问题,应该和这个有关。
|
能力值:
( LV12,RANK:660 )
|
-
-
23 楼
最初由 CCDebuger 发布 看看你那是不是附加数据的问题,应该和这个有关。
嗯,应该是附件数据丢失引起的。
|
能力值:
(RANK:990 )
|
-
-
24 楼
我也是先用汉化工具汉化后发现加载驱动失败,后来发现原程序有附加数据,汉化后丢掉了,把附加数据复制过来就没事了。所以估计是这里的问题。你改了资源,附加数据就在资源段后面,容易受到破坏,所以我猜你加载驱动失败可能也是这个原因。
|
能力值:
( LV2,RANK:10 )
|
-
-
25 楼
[用十六进制工具搜索“3de1ff5d03740a”,替换为“3de1ff5d03eb0a”即可解除自检验。]这些不知是怎样找到的?
|
|
|