能力值:
( LV4,RANK:50 )
|
-
-
2 楼
根据上面那个CALL的返回值,也就是EAX里面的值
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
看z标志符。1就跳,0就部跳。
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
试了,好像改变EAX的值不行啊,请高手指教的。
|
能力值:
( LV9,RANK:490 )
|
-
-
5 楼
EAX不管用,看3楼
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
一般都是Delphi
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
Delphi??。。
楼上的,我还是不太明喔,这样就没办知道Jnz是根据什么来判别跳或不跳了吧。
|
能力值:
(RANK:410 )
|
-
-
8 楼
这样的比较一般都是在函数里面进行了比较,你只需追进函数里面就可以找到,而且一般都出现在函数的尾部不远处。如:
func
.....其它操作
cmp eax,edx
ret
func_end
call func
jnz xxxxxxxx
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
学习了
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
到了面里,还是见不到有Cmp之类的,我把代码给粘出来吧,再请高手解答小菜鸟(俺)的问题:
0055838A > \8B45 E8 MOV EAX,DWORD PTR SS:[EBP-18]
0055838D . BA B08E5500 MOV EDX,STTV.00558EB0 ; -1
00558392 . E8 3DC3EAFF CALL STTV.004046D4
00558397 . 75 29 JNZ SHORT STTV.005583C2 ;我就是想知这个跳的判断
CALL STTV.004046D4 里面:
004046D4 /$ 53 PUSH EBX
004046D5 |. 56 PUSH ESI
004046D6 |. 57 PUSH EDI
004046D7 |. 89C6 MOV ESI,EAX
004046D9 |. 89D7 MOV EDI,EDX
004046DB |. 39D0 CMP EAX,EDX
004046DD |. 0F84 8F000000 JE STTV.00404772
004046E3 |. 85F6 TEST ESI,ESI
004046E5 |. 74 68 JE SHORT STTV.0040474F
004046E7 |. 85FF TEST EDI,EDI
004046E9 |. 74 6B JE SHORT STTV.00404756
004046EB |. 8B46 FC MOV EAX,DWORD PTR DS:[ESI-4]
004046EE |. 8B57 FC MOV EDX,DWORD PTR DS:[EDI-4]
004046F1 |. 29D0 SUB EAX,EDX
004046F3 |. 77 02 JA SHORT STTV.004046F7
004046F5 |. 01C2 ADD EDX,EAX
004046F7 |> 52 PUSH EDX
004046F8 |. C1EA 02 SHR EDX,2
004046FB |. 74 26 JE SHORT STTV.00404723 ; 到这里跳了。
00404723 |> \5A POP EDX ; 到这里
00404724 |. 83E2 03 AND EDX,3
00404727 |. 74 22 JE SHORT STTV.0040474B
00404729 |. 8B0E MOV ECX,DWORD PTR DS:[ESI]
0040472B |. 8B1F MOV EBX,DWORD PTR DS:[EDI]
0040472D |. 38D9 CMP CL,BL
0040472F |. 75 41 JNZ SHORT STTV.00404772
00404731 |. 4A DEC EDX
00404732 |. 74 17 JE SHORT STTV.0040474B
00404734 |. 38FD CMP CH,BH
00404736 |. 75 3A JNZ SHORT STTV.00404772
00404738 |. 4A DEC EDX
00404739 |. 74 10 JE SHORT STTV.0040474B ; 又跳了。
0040474B |> \01C0 ADD EAX,EAX ; 到这里了。
0040474D |. EB 23 JMP SHORT STTV.00404772 ; 强制跳了。
00404772 |> \5F POP EDI ; 到这里了。
00404773 |. 5E POP ESI
00404774 |. 5B POP EBX
00404775 \. C3 RETN ;到这里就出去了喔。
菜鸟我真的不知道在哪作了判断,请高手解答了喔。
|
能力值:
( LV9,RANK:490 )
|
-
-
11 楼
0040474B |> \01C0 ADD EAX,EAX ; 到这里了。
加法指令运算的结果对CF、SF、OF、PF、ZF、AF都会有影响。
个人看法....
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
是这样的吗?。。。好,我马上去研究下。
|
|
|