Прототипы функций в чужой длл

Тема в разделе "WASM.BEGINNERS", создана пользователем UnknownCoder, 11 окт 2007.

  1. UnknownCoder

    UnknownCoder New Member

    Публикаций:
    0
    Регистрация:
    4 июн 2007
    Сообщения:
    22
    Доброго времени суток...
    В общем есть длл которая экспортирует 2 функции...
    Вот код этих функций в иде:
    Код (Text):
    1. 0041B3F4 ; Exported entry  72. GetUIDByCertIdent
    2. 0041B3F4
    3. 0041B3F4 ; --------------- S U B R O U T I N E ---------------------------------------
    4. 0041B3F4
    5. 0041B3F4 ; Attributes: bp-based frame
    6. 0041B3F4
    7. 0041B3F4                 public GetUIDByCertIdent
    8. 0041B3F4 GetUIDByCertIdent proc near
    9. 0041B3F4
    10. 0041B3F4 arg_0           = dword ptr  8
    11. 0041B3F4 arg_4           = dword ptr  0Ch
    12. 0041B3F4 arg_8           = dword ptr  10h
    13. 0041B3F4
    14. 0041B3F4                 push    ebp
    15. 0041B3F5                 mov     ebp, esp
    16. 0041B3F7                 push    ebx
    17. 0041B3F8                 mov     ecx, [ebp+arg_8]
    18. 0041B3FB                 mov     edx, [ebp+arg_4]
    19. 0041B3FE                 mov     eax, [ebp+arg_0]
    20. 0041B401                 mov     ebx, [eax]
    21. 0041B403                 call    dword ptr [ebx+110h]
    22. 0041B409                 pop     ebx
    23. 0041B40A                 pop     ebp
    24. 0041B40B                 retn    0Ch
    25. 0041B40B GetUIDByCertIdent endp
    26. 0041B40B
    27. 0041B40B ; ---------------------------------------------------------------------------
    Код (Text):
    1. 0041B1E0 ; Exported entry  54. GetUIDByPublicKeyTransfer
    2. 0041B1E0
    3. 0041B1E0 ; --------------- S U B R O U T I N E ---------------------------------------
    4. 0041B1E0
    5. 0041B1E0 ; Attributes: bp-based frame
    6. 0041B1E0
    7. 0041B1E0                 public GetUIDByPublicKeyTransfer
    8. 0041B1E0 GetUIDByPublicKeyTransfer proc near
    9. 0041B1E0
    10. 0041B1E0 arg_0           = dword ptr  8
    11. 0041B1E0 arg_4           = dword ptr  0Ch
    12. 0041B1E0 arg_8           = dword ptr  10h
    13. 0041B1E0
    14. 0041B1E0                 push    ebp
    15. 0041B1E1                 mov     ebp, esp
    16. 0041B1E3                 push    ebx
    17. 0041B1E4                 mov     ecx, [ebp+arg_8]
    18. 0041B1E7                 mov     edx, [ebp+arg_4]
    19. 0041B1EA                 mov     eax, [ebp+arg_0]
    20. 0041B1ED                 mov     ebx, [eax]
    21. 0041B1EF                 call    dword ptr [ebx+0DCh]
    22. 0041B1F5                 pop     ebx
    23. 0041B1F6                 pop     ebp
    24. 0041B1F7                 retn    0Ch
    25. 0041B1F7 GetUIDByPublicKeyTransfer endp
    26. 0041B1F7
    27. 0041B1F7 ; ---------------------------------------------------------------------------
    Подскажите как можно узнать, как будут выглядеть прототипы этих функций в паскале/си...
     
  2. EP_X0FF

    EP_X0FF New Member

    Публикаций:
    0
    Регистрация:
    13 авг 2006
    Сообщения:
    450
    Как функции с тремя параметрами.
     
  3. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    ULONG /*может и просто void*/ GetUIDByCertIdent( ULONG arg_0, ULONG arg_4, ULONG arg_8 );
     
  4. UnknownCoder

    UnknownCoder New Member

    Публикаций:
    0
    Регистрация:
    4 июн 2007
    Сообщения:
    22
    А как определить типы этих параметров, например PChar, Pointer и т.д?
     
  5. EP_X0FF

    EP_X0FF New Member

    Публикаций:
    0
    Регистрация:
    13 авг 2006
    Сообщения:
    450
    UnknownCoder

    Анализом кода.
     
  6. nester7

    nester7 New Member

    Публикаций:
    0
    Регистрация:
    5 дек 2003
    Сообщения:
    720
    Адрес:
    Russia
  7. UnknownCoder

    UnknownCoder New Member

    Публикаций:
    0
    Регистрация:
    4 июн 2007
    Сообщения:
    22
    Всем спасибо за информацию!