能力值:
( LV2,RANK:10 )
|
-
-
3 楼
高手看一下我的思路对不对啊
1:用OD载入,按下 f9运行,启动后有二个选择,试用和输入注册码,点击输入注册码,随意输入一些数字,然后返回OD,在窗口中下断
2:在程序上点击提交。被OD中断,进入USE32领空,按下alt+f9到程序领空
3:在判断注册码不为空,并且把注册码送入EDX后,进入一个call
???
到这里我就不懂了,在这个call下一条语句下一条断点,按下F9运行,程序不运行到断点就会弹出注册码不对提示,那是不是上面call是一个关健call 呀?
00408260 |. E8 9B500000 CALL usbredir.0040D300 ; 可能是关健call
00408265 |. 8B8E C8000000 MOV ECX,DWORD PTR DS:[ESI+C8];在此处下过断点,
0040826B |. E8 30640000 CALL usbredir.0040E6A0:那这个call是干什么的呀?
会不会是第一个call判断注册码位数对不对,后面那个是看注册码正不正确?(注册码有260多位)
如果是这样的话。move eax DWORD PTR DS:[ESI+C8];是不是把正确注册码地址送入到eax中?
??还有N问题。以后再说
我输入268个字试了试,还是执行不到00408265这一块!我是搞迷糊了
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
这我也不知道应该去那里找
0040D300 $ 55 PUSH EBP
0040D301 . 8BEC MOV EBP,ESP
0040D303 . 6A FF PUSH -1
0040D305 . 68 60864100 PUSH usbredir.00418660 ; SE 处理程序安装
0040D30A . 64:A1 0000000>MOV EAX,DWORD PTR FS:[0]
0040D310 . 50 PUSH EAX
0040D311 . 64:8925 00000>MOV DWORD PTR FS:[0],ESP
0040D318 . 83EC 14 SUB ESP,14
0040D31B . 53 PUSH EBX
0040D31C . 56 PUSH ESI
0040D31D . 8BF1 MOV ESI,ECX
0040D31F . 57 PUSH EDI
0040D320 . 33FF XOR EDI,EDI
0040D322 . 8965 F0 MOV DWORD PTR SS:[EBP-10],ESP
0040D325 . 8B4E 14 MOV ECX,DWORD PTR DS:[ESI+14]
0040D328 . 8975 E8 MOV DWORD PTR SS:[EBP-18],ESI
0040D32B . 897D FC MOV DWORD PTR SS:[EBP-4],EDI
0040D32E . E8 BD8C0000 CALL usbredir.00415FF0
0040D333 . 3BC7 CMP EAX,EDI
0040D335 74 35 JE SHORT usbredir.0040D36C
0040D337 . 6A 08 PUSH 8
0040D339 . E8 78950000 CALL <JMP.&MFC42.#823_??2@YAPAXI@Z>
0040D33E . 83C4 04 ADD ESP,4
0040D341 . 3BC7 CMP EAX,EDI
0040D343 . 74 14 JE SHORT usbredir.0040D359
0040D345 . 66:C700 CA04 MOV WORD PTR DS:[EAX],4CA
0040D34A . 66:C740 02 05>MOV WORD PTR DS:[EAX+2],5
0040D350 . C740 04 25040>MOV DWORD PTR DS:[EAX+4],425
0040D357 . EB 02 JMP SHORT usbredir.0040D35B
0040D359 > 33C0 XOR EAX,EAX
0040D35B > 8945 EC MOV DWORD PTR SS:[EBP-14],EAX
0040D35E . 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
0040D361 . 68 50B54100 PUSH usbredir.0041B550
0040D366 . 50 PUSH EAX
0040D367 . E8 30980000 CALL <JMP.&msvcrt._CxxThrowException>
0040D36C > 8B4D 0C MOV ECX,DWORD PTR SS:[EBP+C]
0040D36F . 8B55 08 MOV EDX,DWORD PTR SS:[EBP+8]
0040D372 . 51 PUSH ECX ; /Arg2
0040D373 . 52 PUSH EDX ; |Arg1
0040D374 . 8BCE MOV ECX,ESI ; |
0040D376 . E8 E5E7FFFF CALL usbredir.0040BB60 ; \usbredir.0040BB60
0040D37B . EB 12 JMP SHORT usbredir.0040D38F
0040D37D . 8B45 E0 MOV EAX,DWORD PTR SS:[EBP-20]
0040D380 . 8945 0C MOV DWORD PTR SS:[EBP+C],EAX
0040D383 . B8 89D34000 MOV EAX,usbredir.0040D389
0040D388 . C3 RETN
0040D389 . 8B75 E8 MOV ESI,DWORD PTR SS:[EBP-18]
0040D38C . 8B7D 0C MOV EDI,DWORD PTR SS:[EBP+C]
0040D38F > 8B4E 14 MOV ECX,DWORD PTR DS:[ESI+14]
0040D392 . C745 FC FFFFF>MOV DWORD PTR SS:[EBP-4],-1
0040D399 . E8 E28C0000 CALL usbredir.00416080
0040D39E . 85FF TEST EDI,EDI
0040D3A0 . 74 11 JE SHORT usbredir.0040D3B3
0040D3A2 . 8D4D E4 LEA ECX,DWORD PTR SS:[EBP-1C]
0040D3A5 . 68 50B54100 PUSH usbredir.0041B550
0040D3AA . 51 PUSH ECX
0040D3AB . 897D E4 MOV DWORD PTR SS:[EBP-1C],EDI
0040D3AE . E8 E9970000 CALL <JMP.&msvcrt._CxxThrowException>
0040D3B3 > 8B4D F4 MOV ECX,DWORD PTR SS:[EBP-C]
0040D3B6 . 5F POP EDI
0040D3B7 . 5E POP ESI
0040D3B8 . 64:890D 00000>MOV DWORD PTR FS:[0],ECX
0040D3BF . 5B POP EBX
0040D3C0 . 8BE5 MOV ESP,EBP
0040D3C2 . 5D POP EBP
0040D3C3 . C2 0800 RETN 8
这是上面第一个CALL转到的地方
0040E6A0 /$ 55 PUSH EBP
0040E6A1 |. 8BEC MOV EBP,ESP
0040E6A3 |. 6A FF PUSH -1
0040E6A5 |. 68 A0864100 PUSH usbredir.004186A0 ; SE 处理程序安装
0040E6AA |. 64:A1 0000000>MOV EAX,DWORD PTR FS:[0]
0040E6B0 |. 50 PUSH EAX
0040E6B1 |. 64:8925 00000>MOV DWORD PTR FS:[0],ESP
0040E6B8 |. 83EC 08 SUB ESP,8
0040E6BB |. 53 PUSH EBX
0040E6BC |. 56 PUSH ESI
0040E6BD |. 57 PUSH EDI
0040E6BE |. C745 FC 00000>MOV DWORD PTR SS:[EBP-4],0
0040E6C5 |. 8965 F0 MOV DWORD PTR SS:[EBP-10],ESP
0040E6C8 |. E8 93BCFFFF CALL usbredir.0040A360
0040E6CD |. 8B4D F4 MOV ECX,DWORD PTR SS:[EBP-C]
0040E6D0 |. 5F POP EDI
0040E6D1 |. 5E POP ESI
0040E6D2 |. 64:890D 00000>MOV DWORD PTR FS:[0],ECX
0040E6D9 |. 5B POP EBX
0040E6DA |. 8BE5 MOV ESP,EBP
0040E6DC |. 5D POP EBP
0040E6DD \. C3 RETN
是第二个call
*********************
00415FF0 /$ 55 PUSH EBP
00415FF1 |. 8B2D 78904100 MOV EBP,DWORD PTR DS:[<&KERNEL32.CreateF>; kernel32.CreateFileA
00415FF7 |. 56 PUSH ESI
00415FF8 |. 57 PUSH EDI
00415FF9 |. 8BF1 MOV ESI,ECX
00415FFB |> 8B46 0C /MOV EAX,DWORD PTR DS:[ESI+C]
00415FFE |. 85C0 |TEST EAX,EAX
本地调用来自 004093A3, 0040A3E3, 0040C481, 0040C66B, 0040C860, 0040CB75, 0040CD34, 0040CE0B, 0040CEDB, 0040CFAE, 0040D07E, 0040D14E, 0040D25F, 0040D32E, 0040E72E, 0040E800, 0040E890, 00415F02
这个地方跳转的这么多,会不会是判断的注册码地方呀?
|