C++ Clerk IDP 3.1

Тема в разделе "WASM.RESEARCH", создана пользователем СFF, 4 окт 2010.

  1. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    spa
    Дайте пожалуста ссылку на экзешник в котором возникает ошибка и посмотрите что в Eax при срабатывании брейка.
     
  2. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    http://wasm.ru/forum/viewtopic.php?pid=399380#p399380
    Бинарная ваша.

     
  3. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    spa
    Этот двиг ни с какими сепшенами не работает, также не имеет значение ось или мод.

    Там в семпле калбэк кривой, должно быть так(это просто тестовый семпл был, калбэк этот не является частью движка):
    Код (Text):
    1. TRACE_DATA struct
    2. ScanBase    PVOID ?
    3. ScanLimit   PVOID ?
    4. Message PSTR ?
    5. MsgLength   ULONG ?
    6. Gp      PVOID ?
    7. TRACE_DATA ends
    8. PTRACE_DATA typedef ptr TRACE_DATA
    9.  
    10. TraceCallback proc uses ebx esi edi GpEntry:PVOID, TraceData:PTRACE_DATA
    11.     mov eax,GpEntry
    12.     test dword ptr [eax + EhEntryType],TYPE_MASK
    13.     mov ebx,TraceData
    14.     jne Exit    ; !HEADER_TYPE_LINE
    15.     assume eax:PBLOCK_HEADER
    16.     mov esi,[eax].Address
    17.     mov edi,[eax]._Size
    18.     assume ebx:PTRACE_DATA
    19. ; o !GP_PARSE_SEPARATE
    20. Ip:
    21.     push esi    ; Ip
    22.     %GPCALL GP_LDE  ; LDE()
    23.     cmp al,5
    24.     jne @f
    25.     cmp byte ptr [esi],68H  ; push imm32
    26.     mov edx,dword ptr [esi + 1] ; ref.
    27.     jne @f
    28.     cmp [ebx].ScanBase,edx
    29.     ja Exit
    30.     cmp [ebx].ScanLimit,edx
    31.     jbe @f
    32.     push esi
    33.     push edi
    34.     mov esi,edx
    35.     mov edi,[ebx].Message
    36.     mov ecx,[ebx].MsgLength
    37.     cld
    38.     repe cmpsb
    39.     pop edi
    40.     pop esi
    41.     jne @f
    42.     mov eax,GpEntry
    43.     mov [ebx].Gp,eax
    44.     jmp Exit   
    45. @@:
    46.     add esi,eax
    47.     sub edi,eax
    48.     ja Ip
    49. Exit:
    50.     xor eax,eax
    51.     ret
    52. TraceCallback endp
    Тогда работает.