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

Disassembly:
push 0xffffffffffffffff
push 0x465880
mov eax, dword fs:[0]
push eax
sub esp, 0x64
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4792b0]
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 0x40afbf
test al, al
jne 0x40afa2
mov al, byte [ecx]
cmp al, 0x2e
je 0x40afa2
cmp al, 0x65
je 0x40afa2
cmp al, 0x45
je 0x40afa2
cmp al, 0x2b
je 0x40afa2
cmp al, 0x2d
jne 0x40af9e
cmp ecx, edx
jne 0x40afa2
xor al, al
jmp 0x40afa4
mov al, 1
inc ecx
cmp ecx, esi
jne 0x40af80
test al, al
je 0x40afbf
mov ecx, dword [esp + 0x88]
push edi
call fcn.0040b1d0
jmp 0x40b1b9
mov ecx, edx
cmp byte [ecx], 0x2d
sete bl
test bl, bl
je 0x40afd3
inc ecx
mov edx, connect
jmp 0x40afd6
or edx, 0xffffffff
mov eax, 0xcccccccd
mul edx
mov edi, edx
shr edi, 3
xor ebp, ebp
xor eax, eax
cmp ecx, esi
jae 0x40b00f
lea ebx, [ebx]
mov dl, byte [ecx]
inc ecx
cmp dl, 0x30
jl 0x40b05b
cmp dl, 0x39
jg 0x40b05b
cmp eax, edi
jae 0x40b042
movsx edx, dl
lea eax, [eax + eax*4]
lea eax, [edx + eax*2 - 0x30]
cmp ecx, esi
jb 0x40aff0
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x28], ebp
test bl, bl
je 0x40b13a
and ecx, 0xffffff01
or ecx, 1
neg eax
mov dword [esp + 0x24], ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x80], 3
jmp 0x40b177
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
push eax
call fcn.0040b1d0
jmp 0x40b1b9
mov eax, dword [esp + 0x18]
mov dword [esp + 0x54], 0xf
mov dword [esp + 0x50], ebp
mov byte [esp + 0x40], 0
cmp eax, esi
je 0x40b081
sub esi, eax
push esi
push eax
lea ecx, [esp + 0x44]
call fcn.00402c60
lea ecx, [esp + 0x3c]
push ecx
mov edi, 0x473264
lea esi, [esp + 0x60]
mov dword [esp + 0x84], ebp
call fcn.004045f0
add esp, 4
push eax
mov edi, str._is_not_a_number.
lea esi, [esp + 0x20]
mov byte [esp + 0x84], 1
call fcn.0040d150
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.0040bab0
mov esi, 0x10
mov bl, al
cmp dword [esp + 0x34], esi
jb 0x40b0f1
mov eax, dword [esp + 0x20]
push eax
call fcn.004493e1
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 0x40b116
mov ecx, dword [esp + 0x60]
push ecx
call fcn.004493e1
add esp, 4
mov dword [esp + 0x74], edi
mov dword [esp + 0x70], ebp
mov byte [esp + 0x60], 0
cmp dword [esp + 0x54], esi
jb 0x40b136
mov edx, dword [esp + 0x40]
push edx
call fcn.004493e1
add esp, 4
mov al, bl
jmp 0x40b1b9
mov dword [esp + 0x1c], eax
cmp eax, 0x7fffffff
ja 0x40b15f
and ecx, 0xffffff01
or ecx, 1
mov dword [esp + 0x24], ecx
mov dword [esp + 0x80], 4
jmp 0x40b177
and ecx, 0xffffff02
or ecx, 2
mov dword [esp + 0x24], ecx
mov dword [esp + 0x80], 5
mov eax, dword [esp + 0x88]
call fcn.0040bd10
mov esi, dword [eax]
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x40]
call fcn.0040dc10
lea ecx, [esp + 0x3c]
mov edx, esi
call fcn.0040de80
call fcn.0040dd60
lea ecx, [esp + 0x1c]
mov dword [esp + 0x80], 0xffffffff
call fcn.0040dd60
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