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

Disassembly:
sub esp, 0x32c
push ebp
mov ebp, dword [esp + 0x334]
push esi
push edi
xor edi, edi
or eax, 0xffffffff
xor esi, esi
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], edi
cmp ebp, eax
jne 0x4335b6
cmp dword [esp + 0x340], eax
jne 0x4335b6
cmp dword [esp + 0x344], eax
jne 0x4335b6
cmp ebx, edi
je 0x4335aa
jge 0x4335a3
push 0x2726
call dword [sym.imp.WS2_32.dll_WSASetLastError]
or eax, 0xffffffff
pop edi
pop esi
pop ebp
add esp, 0x32c
ret
push ebx
call dword [sym.imp.KERNEL32.dll_Sleep]
xor eax, eax
pop edi
pop esi
pop ebp
add esp, 0x32c
ret
cmp ebx, edi
jle 0x4335e6
mov esi, ebx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov eax, 0x10624dd3
mul ecx
shr edx, 6
mov eax, edx
imul eax, eax, 0x3e8
sub ecx, eax
imul ecx, ecx, 0x3e8
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
xor ecx, ecx
xor edx, edx
or edi, 0xffffffff
mov dword [esp + 0x20], ecx
mov dword [esp + 0x128], edx
cmp ebp, 0xffffffff
je 0x43361c
mov edx, 1
mov ecx, edx
mov dword [esp + 0x12c], ebp
mov dword [esp + 0x128], edx
mov dword [esp + 0x24], ebp
mov dword [esp + 0x20], ecx
mov edi, ebp
mov ebp, dword [esp + 0x340]
cmp ebp, 0xffffffff
je 0x433687
xor eax, eax
test edx, edx
jbe 0x43363e
mov edi, edi
cmp dword [esp + eax*4 + 0x12c], ebp
je 0x43363e
inc eax
cmp eax, edx
jb 0x433630
cmp eax, edx
jne 0x433655
cmp edx, 0x40
jae 0x433655
mov dword [esp + eax*4 + 0x12c], ebp
inc dword [esp + 0x128]
xor eax, eax
test ecx, ecx
jbe 0x43366b
jmp 0x433660
cmp dword [esp + eax*4 + 0x24], ebp
je 0x43366b
inc eax
cmp eax, ecx
jb 0x433660
cmp eax, ecx
jne 0x433681
cmp ecx, 0x40
jae 0x433681
mov dword [esp + eax*4 + 0x24], ebp
mov ecx, dword [esp + 0x20]
inc ecx
mov dword [esp + 0x20], ecx
cmp ebp, edi
jbe 0x433687
mov edi, ebp
mov edx, dword [esp + 0x344]
xor eax, eax
mov dword [esp + 0x230], eax
cmp edx, 0xffffffff
je 0x4336d4
mov dword [esp + 0x234], edx
mov dword [esp + 0x230], 1
test ecx, ecx
jbe 0x4336bd
cmp dword [esp + eax*4 + 0x24], edx
je 0x4336bd
inc eax
cmp eax, ecx
jb 0x4336b2
cmp eax, ecx
jne 0x4336ce
cmp ecx, 0x40
jae 0x4336ce
mov dword [esp + eax*4 + 0x24], edx
inc dword [esp + 0x20]
cmp edx, edi
jbe 0x4336d4
mov edi, edx
xor ecx, ecx
test ebx, ebx
setl cl
lea edx, [esp + 0x14]
dec ecx
and ecx, edx
inc edi
mov ebp, ecx
mov dword [esp + 0x1c], edi
xor eax, eax
cmp ebx, eax
jle 0x43371a
mov eax, 0x10624dd3
imul esi
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x14], eax
imul eax, eax, 0x3e8
mov ecx, esi
sub ecx, eax
imul ecx, ecx, 0x3e8
mov dword [esp + 0x18], ecx
jmp 0x433724
jne 0x433724
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
push ebp
lea edx, [esp + 0x24]
push edx
mov edx, dword [esp + 0x24]
lea eax, [esp + 0x238]
push eax
lea ecx, [esp + 0x134]
push ecx
push edx
call dword [sym.imp.WS2_32.dll_select]
mov edi, eax
cmp edi, 0xffffffff
jne 0x4337c9
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x433766
cmp dword [0x4cbda8], 0
jne 0x4337c9
cmp eax, 0x2714
jne 0x4337c9
test ebx, ebx
jle 0x4336e9
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov eax, 0x10624dd3
mul ecx
shr edx, 6
mov esi, dword [esp + 0xc]
mov eax, edx
imul eax, eax, 0x3e8
sub ecx, eax
imul ecx, ecx, 0x3e8
sub ecx, dword [esp + 0x10]
sub esi, edx
mov eax, 0x10624dd3
imul esi, esi, 0x3e8
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, ecx
add esi, ebx
test esi, esi
jg 0x4336e9
xor eax, eax
pop edi
pop esi
pop ebp
add esp, 0x32c
ret
test edi, edi
jl 0x433596
je 0x4335aa
mov edi, dword [esp + 0x33c]
xor esi, esi
cmp edi, 0xffffffff
je 0x43380e
lea edx, [esp + 0x128]
push edx
push edi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x4337fc
mov esi, 1
lea eax, [esp + 0x20]
push eax
push edi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x43380e
or esi, 4
mov edi, dword [esp + 0x340]
cmp edi, 0xffffffff
je 0x433841
lea ecx, [esp + 0x128]
push ecx
push edi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x43382f
or esi, 8
lea edx, [esp + 0x20]
push edx
push edi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x433841
or esi, 4
mov edi, dword [esp + 0x344]
cmp edi, 0xffffffff
je 0x433874
lea eax, [esp + 0x230]
push eax
push edi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x433862
or esi, 2
lea ecx, [esp + 0x20]
push ecx
push edi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x433874
or esi, 4
pop edi
mov eax, esi
pop esi
pop ebp
add esp, 0x32c
ret