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

Disassembly:
push 0xffffffffffffffff
push 0x487bb0
mov eax, dword fs:[0]
push eax
sub esp, 0x64
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4a5584]
xor eax, esp
push eax
lea eax, [esp + 0x78]
mov dword fs:[0], eax
mov edi, dword [esp + 0x8c]
mov edx, dword [edi + 4]
mov esi, dword [edi + 8]
mov ecx, edx
xor al, al
mov dword [esp + 0x18], edx
cmp ecx, esi
je 0x438e5f
test al, al
jne 0x438e42
mov al, byte [ecx]
cmp al, 0x2e
je 0x438e42
cmp al, 0x65
je 0x438e42
cmp al, 0x45
je 0x438e42
cmp al, 0x2b
je 0x438e42
cmp al, 0x2d
jne 0x438e3e
cmp ecx, edx
jne 0x438e42
xor al, al
jmp 0x438e44
mov al, 1
inc ecx
cmp ecx, esi
jne 0x438e20
test al, al
je 0x438e5f
mov ecx, dword [esp + 0x88]
push edi
call fcn.00439080
jmp 0x43905e
mov ecx, edx
cmp byte [ecx], 0x2d
sete bl
test bl, bl
je 0x438e73
inc ecx
mov edx, 0x80000000
jmp 0x438e76
or edx, 0xffffffff
mov eax, 0xcccccccd
mul edx
mov edi, edx
shr edi, 3
xor ebp, ebp
xor eax, eax
cmp ecx, esi
jae 0x438eaf
lea ebx, [ebx]
mov dl, byte [ecx]
inc ecx
cmp dl, 0x30
jl 0x438efb
cmp dl, 0x39
jg 0x438efb
cmp eax, edi
jae 0x438ee2
movsx edx, dl
lea eax, [eax + eax*4]
lea eax, [edx + eax*2 - 0x30]
cmp ecx, esi
jb 0x438e90
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x28], ebp
test bl, bl
je 0x438fdd
and ecx, 0xffffff01
or ecx, 1
neg eax
mov dword [esp + 0x24], ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x80], 3
jmp 0x43901a
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
push eax
call fcn.00439080
jmp 0x43905e
mov eax, dword [esp + 0x18]
mov dword [esp + 0x54], 0xf
mov dword [esp + 0x50], ebp
mov byte [esp + 0x40], 0
cmp eax, esi
je 0x438f21
sub esi, eax
push esi
push eax
lea ecx, [esp + 0x44]
call fcn.00404900
lea ecx, [esp + 0x3c]
push ecx
mov ecx, 0x49b61c
lea edi, [esp + 0x60]
mov dword [esp + 0x84], ebp
call fcn.0043b330
add esp, 4
push eax
mov edi, str._is_not_a_number.
lea esi, [esp + 0x20]
mov byte [esp + 0x84], 1
call fcn.0043b3e0
add esp, 4
mov edx, dword [esp + 0x8c]
push ebp
push edx
mov edx, dword [esp + 0x90]
mov ecx, eax
mov byte [esp + 0x88], 2
call fcn.00439a60
mov esi, 0x10
mov bl, al
cmp dword [esp + 0x34], esi
jb 0x438f91
mov eax, dword [esp + 0x20]
push eax
call fcn.00451a72
add esp, 4
mov edi, 0xf
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], ebp
mov byte [esp + 0x20], 0
cmp dword [esp + 0x74], esi
jb 0x438fb6
mov ecx, dword [esp + 0x60]
push ecx
call fcn.00451a72
add esp, 4
mov dword [esp + 0x74], edi
mov dword [esp + 0x70], ebp
mov byte [esp + 0x60], 0
cmp dword [esp + 0x54], esi
jb 0x438fd6
mov edx, dword [esp + 0x40]
push edx
call fcn.00451a72
add esp, 4
mov al, bl
jmp 0x43905e
mov dword [esp + 0x1c], eax
cmp eax, 0x7fffffff
ja 0x439002
and ecx, 0xffffff01
or ecx, 1
mov dword [esp + 0x24], ecx
mov dword [esp + 0x80], 4
jmp 0x43901a
and ecx, 0xffffff02
or ecx, 2
mov dword [esp + 0x24], ecx
mov dword [esp + 0x80], 5
mov eax, dword [esp + 0x88]
call fcn.00439d00
mov esi, dword [eax]
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x40]
call fcn.00435c70
lea ecx, [esp + 0x3c]
mov edx, esi
call fcn.00435f00
mov eax, ecx
call fcn.00435dd0
lea eax, [esp + 0x1c]
mov dword [esp + 0x80], 0xffffffff
call fcn.00435dd0
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