Function at 0x46a7d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x51f880
mov eax, dword fs:[0]
push eax
sub esp, 0x64
push ebx
push ebp
push esi
push edi
mov eax, dword [0x574a28]
xor eax, esp
push eax
lea eax, [esp + 0x78]
mov dword fs:[0], eax
mov edx, dword [esp + 0x8c]
mov edi, dword [edx + 4]
mov ebp, dword [edx + 8]
mov ecx, edi
xor al, al
mov dword [esp + 0x18], edi
cmp ecx, ebp
je 0x46a841
test al, al
jne 0x46a832
mov al, byte [ecx]
cmp al, 0x2e
je 0x46a832
cmp al, 0x65
je 0x46a832
cmp al, 0x45
je 0x46a832
cmp al, 0x2b
je 0x46a832
cmp al, 0x2d
jne 0x46a82e
cmp ecx, edi
jne 0x46a832
xor al, al
jmp 0x46a834
mov al, 1
inc ecx
cmp ecx, ebp
jne 0x46a810
test al, al
jne 0x46a916
mov esi, edi
cmp byte [esi], 0x2d
sete al
mov byte [esp + 0x17], al
test al, al
je 0x46a85b
inc esi
xor eax, eax
mov ecx, SysReAllocString
jmp 0x46a861
or eax, 0xffffffff
or ecx, 0xffffffff
push 0
push 0xa
push ecx
push eax
call fcn.004dccf0
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x1c], eax
xor ebx, ebx
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x20], edx
cmp esi, ebp
jb 0x46a8c7
cmp byte [esp + 0x17], bl
je 0x46aa0d
mov edx, dword [esp + 0x44]
and edx, 0xffffff01
or edx, 1
neg ecx
adc eax, ebx
neg eax
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], eax
mov dword [esp + 0x80], 3
jmp 0x46aa6d
mov edi, dword [esp + 0x18]
mov dl, byte [esi]
inc esi
cmp dl, 0x30
jl 0x46a928
cmp dl, 0x39
jg 0x46a928
movsx edi, dl
sub edi, 0x30
cmp eax, dword [esp + 0x20]
jb 0x46a8f2
ja 0x46a8e8
cmp ecx, dword [esp + 0x1c]
jb 0x46a8f2
cmp esi, ebp
jne 0x46a90f
cmp edi, dword [esp + 0x3c]
ja 0x46a90f
push ebx
push 0xa
push eax
push ecx
call fcn.004d20d0
xor ecx, ecx
add eax, edi
adc edx, ecx
mov ecx, eax
mov eax, edx
cmp esi, ebp
jb 0x46a8c3
jmp 0x46a886
mov edx, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
push edx
call fcn.0046aad0
jmp 0x46aab1
mov dword [esp + 0x54], 0xf
mov dword [esp + 0x50], ebx
mov byte [esp + 0x40], bl
cmp edi, ebp
je 0x46a949
sub ebp, edi
push ebp
push edi
lea ecx, [esp + 0x44]
call fcn.0040df20
lea eax, [esp + 0x3c]
push eax
mov edi, 0x544288
lea esi, [esp + 0x60]
mov dword [esp + 0x84], ebx
call fcn.00460ce0
add esp, 4
push eax
mov edi, str._is_not_a_number.
lea esi, [esp + 0x20]
mov byte [esp + 0x84], 1
call fcn.00460be0
add esp, 4
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x88]
push ebx
push ecx
mov ecx, eax
mov byte [esp + 0x88], 2
call fcn.0046b3f0
mov esi, 0x10
mov byte [esp + 0x88], al
cmp dword [esp + 0x34], esi
jb 0x46a9be
mov edx, dword [esp + 0x20]
push edx
call fcn.00485e85
add esp, 4
mov edi, 0xf
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], ebx
mov byte [esp + 0x20], bl
cmp dword [esp + 0x74], esi
jb 0x46a9e2
mov eax, dword [esp + 0x60]
push eax
call fcn.00485e85
add esp, 4
mov dword [esp + 0x74], edi
mov dword [esp + 0x70], ebx
mov byte [esp + 0x60], bl
cmp dword [esp + 0x54], esi
jb 0x46aa01
mov ecx, dword [esp + 0x40]
push ecx
call fcn.00485e85
add esp, 4
mov al, byte [esp + 0x88]
jmp 0x46aab1
cmp eax, ebx
ja 0x46aa45
jb 0x46aa1b
cmp ecx, 0x7fffffff
ja 0x46aa45
mov edx, dword [esp + 0x44]
and edx, 0xffffff01
or edx, 1
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], eax
mov dword [esp + 0x80], 4
jmp 0x46aa6d
mov edx, dword [esp + 0x44]
and edx, 0xffffff02
or edx, 2
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], eax
mov dword [esp + 0x80], 5
mov eax, dword [esp + 0x88]
call fcn.0046bde0
mov esi, dword [eax]
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x20]
call fcn.00462330
lea ecx, [esp + 0x1c]
mov edx, esi
call fcn.004625f0
mov eax, ecx
call fcn.004624d0
lea eax, [esp + 0x3c]
mov dword [esp + 0x80], 0xffffffff
call fcn.004624d0
mov al, 1
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x70
ret 8