天天看點

函數Int3斷點檢測

<code>00D94F70    55              push ebp</code>

<code>00D94F71    8BEC            mov ebp,esp</code>

<code>00D94F73    51              push ecx</code>

<code>00D94F74    53              push ebx</code>

<code>00D94F75    56              push esi</code>

<code>00D94F76    57              push edi</code>

<code>00D94F77    60              pushad</code>

<code>00D94F78    8B15 B834E200   mov edx,dword ptr ds:[0xE234B8]          ; USER32.77D2A569</code>

<code>00D94F7E    83C2 64         add edx,0x64                             ; 此處是edx=GetWindowTextW</code>

<code>00D94F81    B9 05000000     mov ecx,0x5</code>

<code>00D94F86    803A CC         cmp</code><code>byte</code> <code>ptr ds:[edx],0xCC               ;這句話作用是GetWindowTextW是否被下了int3斷點如果下了就跳過</code>

<code>00D94F89    74 0D           je X00D94F98                             ;如果有int3斷點就跳跳過了</code>

<code>00D94F8B  ^ E2 F9           loopd X00D94F86</code>

<code>00D94F8D    FF75 10         push dword ptr ss:[ebp+0x10]</code>

<code>00D94F90    FF75 0C         push dword ptr ss:[ebp+0xC]</code>

<code>00D94F93    FF75 08         push dword ptr ss:[ebp+0x8]</code>

<code>00D94F96    FFD2            call edx</code>

<code>00D94F98    8945 FC         mov dword ptr ss:[ebp-0x4],eax</code>

<code>00D94F9B    61              popad</code>

<code>00D94F9C    8B45 FC         mov eax,dword ptr ss:[ebp-0x4]</code>

<code>00D94F9F    5F              pop edi</code>

<code>00D94FA0    5E              pop esi</code>

<code>00D94FA1    5B              pop ebx</code>

<code>00D94FA2    8BE5            mov esp,ebp</code>

<code>00D94FA4    5D              pop ebp</code>

<code>00D94FA5    C2 0C00         retn 0xC</code>