0

我是 meta-pc 汇编程序的新手,我需要帮助来反转某些功能。这是我需要保留的功能:

    public function

var_80      = byte ptr -80h
arg_0      = dword   ptr  8
arg_4      = dword   ptr  0Ch

    push   ebp
    mov   ebp, esp
    and   esp, 0FFFFFFF8h
    sub   esp, 80h
    mov   eax, [ebp+arg_4]
    cmp   eax, 80h
    push   esi
    push   edi
    jl   short loc_100032DD
    mov   eax, 7Fh

loc_100032DD:            ; CODE XREF: c4atoi+16j
    mov   esi, [ebp+arg_0]
    mov   ecx, eax
    mov   edx, ecx
    shr   ecx, 2
    lea   edi, [esp+88h+var_80]
    rep movsd
    mov   ecx, edx
    and   ecx, 3
    rep movsb
    mov   [esp+eax+88h+var_80], 0
    lea   eax, [esp+88h+var_80]
    push   eax      ; char *
    call   j__atol
    add   esp, 4
    pop   edi
    pop   esi
    mov   esp, ebp
    pop   ebp
    retn   8
function      endp

所以,我需要获取函数参数的数量和类型以及返回的类型。我怎么能得到它?

4

1 回答 1

1

j__atol该函数是基于对函数调用和函数的引用将字符串转换为整数的代码atol。功能详情:

调用约定:
stdcall

第一个参数 ( arg_0):
空终止字符串的地址。

第二个参数(arg_4):
指定字符串的长度。仅处理前 127 个字符。

返回值:
EAX 寄存器。

于 2012-08-17T18:49:01.220 回答