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

Disassembly:
push 0xffffffffffffffff
push 0x51d330
mov eax, dword fs:[0]
push eax
sub esp, 0x6c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x569338]
xor eax, esp
push eax
lea eax, [esp + 0x80]
mov dword fs:[0], eax
mov edx, dword [esp + 0x94]
mov edi, dword [edx + 4]
mov ebp, dword [edx + 8]
mov ecx, edi
xor al, al
cmp ecx, ebp
mov dword [esp + 0x18], edi
je 0x41c6b6
test al, al
jne 0x41c6a5
mov al, byte [ecx]
cmp al, 0x2e
je 0x41c6a5
cmp al, 0x65
je 0x41c6a5
cmp al, 0x45
je 0x41c6a5
cmp al, 0x2b
je 0x41c6a5
cmp al, 0x2d
jne 0x41c6a1
cmp ecx, edi
jne 0x41c6a5
xor al, al
jmp 0x41c6a7
mov al, 1
add ecx, 1
cmp ecx, ebp
jne 0x41c683
test al, al
jne 0x41c795
mov esi, edi
cmp byte [esi], 0x2d
sete al
test al, al
mov byte [esp + 0x17], al
je 0x41c6d2
add esi, 1
xor eax, eax
mov ecx, closesocket
jmp 0x41c6d8
or eax, 0xffffffff
or ecx, 0xffffffff
push 0
push 0xa
push ecx
push eax
call fcn.0043ae00
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x1c], eax
xor ebx, ebx
xor ecx, ecx
xor eax, eax
cmp esi, ebp
mov dword [esp + 0x20], edx
jb 0x41c744
cmp byte [esp + 0x17], bl
je 0x41c88c
mov edx, dword [esp + 0x2c]
and edx, 0xffffff01
or edx, 1
neg ecx
adc eax, ebx
neg eax
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], eax
mov dword [esp + 0x88], 3
jmp 0x41c8ec
mov edi, dword [esp + 0x18]
mov dl, byte [esi]
add esi, 1
cmp dl, 0x30
jl 0x41c7a7
cmp dl, 0x39
jg 0x41c7a7
movsx edi, dl
sub edi, 0x30
cmp eax, dword [esp + 0x20]
jb 0x41c771
ja 0x41c767
cmp ecx, dword [esp + 0x1c]
jb 0x41c771
cmp esi, ebp
jne 0x41c78e
cmp edi, dword [esp + 0x24]
ja 0x41c78e
push ebx
push 0xa
push eax
push ecx
call fcn.0043bbc0
xor ecx, ecx
add eax, edi
adc edx, ecx
cmp esi, ebp
mov ecx, eax
mov eax, edx
jb 0x41c740
jmp 0x41c6fd
mov edx, dword [esp + 0x94]
mov ecx, dword [esp + 0x90]
push edx
call fcn.0041c940
jmp 0x41c919
cmp edi, ebp
mov dword [esp + 0x3c], 0xf
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
je 0x41c7c8
sub ebp, edi
push ebp
push edi
lea ecx, [esp + 0x2c]
call fcn.00405220
lea eax, [esp + 0x24]
push eax
mov ecx, 0x560454
lea edi, [esp + 0x68]
mov dword [esp + 0x8c], ebx
call fcn.0041e500
add esp, 4
push eax
mov edi, str._is_not_a_number.
lea esi, [esp + 0x4c]
mov byte [esp + 0x8c], 1
call fcn.0040eda0
add esp, 4
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x90]
push ebx
push ecx
mov ecx, eax
mov byte [esp + 0x90], 2
call fcn.0041d310
mov esi, 0x10
cmp dword [esp + 0x60], esi
mov byte [esp + 0x90], al
jb 0x41c83d
mov edx, dword [esp + 0x4c]
push edx
call fcn.0042d197
add esp, 4
cmp dword [esp + 0x7c], esi
mov edi, 0xf
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], ebx
mov byte [esp + 0x4c], bl
jb 0x41c861
mov eax, dword [esp + 0x68]
push eax
call fcn.0042d197
add esp, 4
cmp dword [esp + 0x3c], esi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x78], ebx
mov byte [esp + 0x68], bl
jb 0x41c880
mov ecx, dword [esp + 0x28]
push ecx
call fcn.0042d197
add esp, 4
mov al, byte [esp + 0x90]
jmp 0x41c919
cmp eax, ebx
ja 0x41c8c4
jb 0x41c89a
cmp ecx, 0x7fffffff
ja 0x41c8c4
mov edx, dword [esp + 0x2c]
and edx, 0xffffff01
or edx, 1
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], eax
mov dword [esp + 0x88], 4
jmp 0x41c8ec
mov edx, dword [esp + 0x2c]
and edx, 0xffffff02
or edx, 2
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], eax
mov dword [esp + 0x88], 5
mov esi, dword [esp + 0x90]
call fcn.0041d490
mov esi, dword [eax]
lea eax, [esp + 0x24]
call fcn.0041fa00
lea eax, [esp + 0x24]
mov dword [esp + 0x88], 0xffffffff
call fcn.0041f990
mov al, 1
mov ecx, dword [esp + 0x80]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x78
ret 8