Function at 0x408ef0
Capabilities:
Get socket status

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x220
push ebx
push esi
push edi
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x28]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x408f51
push 1
push 0x18
call fcn.004196b0
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x408f32
mov eax, 0xc
jmp 0x409179
mov eax, dword [ebp - 4]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x28], eax
mov eax, dword [ebp - 4]
mov dword [eax + 8], 0
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x34]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x14], eax
mov eax, dword [ebp - 4]
cmp dword [eax + 8], 0
jne 0x408fa7
call fcn.00411340
mov ecx, dword [ebp - 4]
mov dword [ecx], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x34]
push eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x24]
push eax
push 0
call fcn.00408190
add esp, 0xc
mov ecx, dword [ebp - 4]
mov dword [ecx + 4], eax
mov eax, dword [ebp - 4]
cmp dword [eax + 4], 0xffffffff
jne 0x408f9d
mov eax, 0xffffffff
jmp 0x409179
mov eax, dword [ebp - 4]
mov dword [eax + 8], 1
mov eax, dword [ebp - 4]
cmp dword [eax + 8], 1
jne 0x409172
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x220], 0
cmp dword [ebp - 0x110], 0x40
jae 0x408fee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 0x110]
mov dword [ebp + ecx*4 - 0x10c], eax
inc dword [ebp - 0x110]
cmp dword [ebp - 0x220], 0x40
jae 0x409014
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 0x220]
mov dword [ebp + ecx*4 - 0x21c], eax
inc dword [ebp - 0x220]
mov dword [ebp - 0x11c], 5
mov dword [ebp - 0x118], 0
lea eax, [ebp - 0x11c]
push eax
push 0
add byte [ebp - 0x21f7b], cl
call dword [eax - 0x73]
test eax, esi
invalid
invalid
call dword [eax - 0x75]
inc ebp
cld
mov eax, dword [eax]
push eax
call sub.WSOCK32.dll_select
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jg 0x4090ad
jge 0x40906a
push 0x423ff0
call fcn.00419e50
add esp, 4
mov dword [ebp - 0x114], 4
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0xc]
push eax
push 0x1007
push 0xffff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
push eax
call fcn.00408ebc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
clc
add byte [edi], cl
test dword [eax], ebx
add byte [eax], al
invalid
push 4
mov eax, dword [ebp - 8]
mov dword [eax], 6
mov eax, dword [ebp - 8]
mov dword [eax + 8], 0
mov eax, dword [ebp + 8]
add eax, 0xc
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [ebp - 8]
add edx, 0xc
mov dword [edx], ecx
mov dword [edx + 4], eax
mov eax, dword [ebp + 8]
add eax, 0x14
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [ebp - 8]
add edx, 0x14
mov dword [edx], ecx
mov dword [edx + 4], eax
mov eax, dword [ebp + 8]
add eax, 0x1c
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [ebp - 8]
add edx, 0x1c
mov dword [edx], ecx
mov dword [edx + 4], eax
mov eax, dword [ebp - 8]
push eax
mov eax, dword [ebp + 8]
push eax
call fcn.0040917e
add esp, 8
test eax, eax
je 0x409161
push 4
mov eax, dword [ebp + 8]
push eax
call fcn.00408dc4
add esp, 8
mov eax, 0xffffffff
jmp 0x409179
mov eax, dword [ebp - 4]
mov dword [eax + 8], 2
xor eax, eax
jmp 0x409179
xor eax, eax
jmp 0x409179