Манипулирование eit с помощью вызова isDebuggerPresent - PullRequest
0 голосов
/ 29 ноября 2018

Нашел хороший фрагмент кода (https://github.com/invictus1306/Anti-debugging-techniques/blob/master/anti-debugging.asm) для механизма антиотладки в asm. Мой вопрос о следующем фрагменте:

 ;IsDebuggerPresent first - kernel32!IsDebuggerPresent
    call IsDebuggerPresent
    call @eip_manipulate ; change eip (point to next instruction)
    mov eax, 010h
    cmp eax, 1
    je @Detected

  [...]

      @eip_manipulate:
    add dword ptr [esp], 5
    ret

Я не понимаю, почему я должен изменить этоПотому что, если я вызову isDebuggerPresent, он вернет 1 для debuggerIsPresent или 0 для debuggerIsNotPresent. Попробовал это, и он работает только с вызовом eip_manipulate.

...