Function at 0x4b056b
Capabilities:
Check for time delay via gettickcount
Get socket status

Disassembly:
push ebp
lea ebp, [esp - 0x68]
sub esp, 0x324
push ebx
mov ebx, dword [ebp + 0x70]
push esi
xor esi, esi
push edi
or edi, 0xffffffff
cmp ebx, edi
mov dword [ebp + 0x58], esi
mov dword [ebp + 0x5c], esi
mov dword [ebp + 0x64], esi
jne 0x4b05a6
cmp dword [ebp + 0x74], edi
jne 0x4b05a6
cmp dword [ebp + 0x78], edi
jne 0x4b05a6
push dword [ebp + 0x7c]
call fcn.004b0548
pop ecx
jmp 0x4b082b
mov eax, dword [ebp + 0x7c]
cmp eax, esi
jle 0x4b05bb
mov dword [ebp + 0x64], eax
call fcn.004b855a
mov dword [ebp + 0x58], eax
mov dword [ebp + 0x5c], edx
cmp ebx, 0xffffffff
mov dword [ebp - 0xb4], esi
mov dword [ebp - 0x1b8], esi
je 0x4b05e9
xor esi, esi
inc esi
mov dword [ebp - 0x1b4], ebx
mov dword [ebp - 0x1b8], esi
mov dword [ebp - 0xb0], ebx
mov dword [ebp - 0xb4], esi
mov edi, ebx
mov ecx, dword [ebp + 0x74]
cmp ecx, 0xffffffff
je 0x4b0662
xor eax, eax
test esi, esi
jbe 0x4b0605
cmp dword [ebp + eax*4 - 0x1b4], ecx
je 0x4b0605
inc eax
cmp eax, esi
jb 0x4b05f7
cmp eax, esi
jne 0x4b0622
cmp esi, 0x40
jae 0x4b0622
mov dword [ebp + eax*4 - 0x1b4], ecx
mov esi, dword [ebp - 0x1b8]
inc esi
mov dword [ebp - 0x1b8], esi
xor eax, eax
cmp dword [ebp - 0xb4], eax
jbe 0x4b063e
cmp dword [ebp + eax*4 - 0xb0], ecx
je 0x4b063e
inc eax
cmp eax, dword [ebp - 0xb4]
jb 0x4b062c
cmp eax, dword [ebp - 0xb4]
jne 0x4b065c
cmp dword [ebp - 0xb4], 0x40
jae 0x4b065c
mov dword [ebp + eax*4 - 0xb0], ecx
inc dword [ebp - 0xb4]
cmp ecx, edi
jbe 0x4b0662
mov edi, ecx
mov edx, dword [ebp + 0x78]
xor ecx, ecx
cmp edx, 0xffffffff
mov dword [ebp - 0x2bc], ecx
je 0x4b06bf
inc ecx
xor eax, eax
cmp dword [ebp - 0xb4], eax
mov dword [ebp - 0x2b8], edx
mov dword [ebp - 0x2bc], ecx
jbe 0x4b069b
cmp dword [ebp + eax*4 - 0xb0], edx
je 0x4b069b
inc eax
cmp eax, dword [ebp - 0xb4]
jb 0x4b0689
cmp eax, dword [ebp - 0xb4]
jne 0x4b06b9
cmp dword [ebp - 0xb4], 0x40
jae 0x4b06b9
mov dword [ebp + eax*4 - 0xb0], edx
inc dword [ebp - 0xb4]
cmp edx, edi
jbe 0x4b06bf
mov edi, edx
xor eax, eax
cmp dword [ebp + 0x7c], eax
jge 0x4b06cb
mov dword [ebp + 0x60], eax
jmp 0x4b06d1
lea edx, [ebp + 0x50]
mov dword [ebp + 0x60], edx
inc edi
jmp 0x4b06e2
mov esi, dword [ebp - 0x1b8]
mov ecx, dword [ebp - 0x2bc]
xor eax, eax
cmp dword [ebp + 0x7c], eax
jle 0x4b0700
mov eax, dword [ebp + 0x64]
cdq
mov ebx, 0x3e8
idiv ebx
mov ebx, dword [ebp + 0x70]
imul edx, edx, 0x3e8
mov dword [ebp + 0x54], edx
jmp 0x4b0705
jne 0x4b0708
mov dword [ebp + 0x54], eax
mov dword [ebp + 0x50], eax
push dword [ebp + 0x60]
neg ecx
lea eax, [ebp - 0xb4]
push eax
sbb ecx, ecx
lea eax, [ebp - 0x2bc]
and ecx, eax
neg esi
sbb esi, esi
lea eax, [ebp - 0x1b8]
push ecx
and esi, eax
push esi
push edi
call dword [sym.imp.WS2_32.dll_select]
cmp eax, 0xffffffff
jne 0x4b0783
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x4b0752
cmp dword [0x513a4c], 0
jne 0x4b0787
cmp eax, 0x2714
jne 0x4b0787
cmp dword [ebp + 0x7c], 0
jle 0x4b06d4
push dword [ebp + 0x5c]
push dword [ebp + 0x58]
call fcn.004b855a
push edx
push eax
call fcn.004b8570
mov ecx, dword [ebp + 0x7c]
sub ecx, eax
add esp, 0x10
test ecx, ecx
mov dword [ebp + 0x64], ecx
jg 0x4b06d4
xor eax, eax
test eax, eax
jge 0x4b078f
or eax, 0xffffffff
jmp 0x4b082b
jne 0x4b0798
xor eax, eax
jmp 0x4b082b
xor esi, esi
cmp ebx, 0xffffffff
je 0x4b07c5
lea eax, [ebp - 0x1b8]
push eax
push ebx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x4b07b1
inc esi
lea eax, [ebp - 0xb4]
push eax
push ebx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x4b07c5
or esi, 4
cmp dword [ebp + 0x74], 0xffffffff
je 0x4b07f7
lea eax, [ebp - 0x1b8]
push eax
push dword [ebp + 0x74]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x4b07e1
or esi, 8
lea eax, [ebp - 0xb4]
push eax
push dword [ebp + 0x74]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x4b07f7
or esi, 4
cmp dword [ebp + 0x78], 0xffffffff
je 0x4b0829
lea eax, [ebp - 0x2bc]
push eax
push dword [ebp + 0x78]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x4b0813
or esi, 2
lea eax, [ebp - 0xb4]
push eax
push dword [ebp + 0x78]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x4b0829
or esi, 4
mov eax, esi
pop edi
pop esi
pop ebx
add ebp, 0x68
leave
ret