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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffc8c
xor eax, eax
mov dword [ebp - 4], eax
xor edx, edx
mov dword [ebp - 8], edx
xor ecx, ecx
mov dword [ebp - 0xc], ecx
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp + 0x10], 0x3e8
jae 0x4070fc
imul edx, dword [ebp + 0x10], 0x3e8
mov dword [ebp + 0x10], edx
xor ecx, ecx
mov dword [ebp - 0x14], ecx
xor eax, eax
mov dword [ebp - 0x10], eax
call sub.KERNEL32.DLL_GetTickCount
mov dword [ebp - 0x24], eax
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x28], edx
jmp 0x407620
push 0xa
call sub.KERNEL32.DLL_Sleep
xor ecx, ecx
mov dword [ebp - 0x150], ecx
xor eax, eax
mov dword [ebp - 0x254], eax
xor edx, edx
mov dword [ebp - 0x358], edx
xor ecx, ecx
mov dword [ebp - 0x18], ecx
jmp 0x4071ea
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp - 0x18]
movsx ecx, byte [eax + edx]
cmp ecx, 0x72
jne 0x407179
cmp dword [ebp - 0x150], 0x40
jae 0x407170
mov eax, dword [ebp - 0x150]
inc dword [ebp - 0x150]
mov edx, dword [ebp + 8]
mov dword [ebp + eax*4 - 0x14c], edx
lea ecx, [ebp - 0x150]
mov dword [ebp - 4], ecx
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp - 0x18]
movsx ecx, byte [eax + edx]
cmp ecx, 0x77
jne 0x4071b0
cmp dword [ebp - 0x254], 0x40
jae 0x4071a7
mov eax, dword [ebp - 0x254]
inc dword [ebp - 0x254]
mov edx, dword [ebp + 8]
mov dword [ebp + eax*4 - 0x250], edx
lea ecx, [ebp - 0x254]
mov dword [ebp - 8], ecx
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp - 0x18]
movsx ecx, byte [eax + edx]
cmp ecx, 0x65
jne 0x4071e7
cmp dword [ebp - 0x358], 0x40
jae 0x4071de
mov eax, dword [ebp - 0x358]
inc dword [ebp - 0x358]
mov edx, dword [ebp + 8]
mov dword [ebp + eax*4 - 0x354], edx
lea ecx, [ebp - 0x358]
mov dword [ebp - 0xc], ecx
inc dword [ebp - 0x18]
push dword [ebp + 0xc]
call fcn.004848b4
pop ecx
cmp eax, dword [ebp - 0x18]
jg 0x407142
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 0xc]
push dword [ebp - 8]
push dword [ebp - 4]
push 0xffffffffffffffff
call sub.WSOCK32.DLL_select
mov dword [ebp - 0x1c], eax
call sub.KERNEL32.DLL_GetTickCount
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x1c], 0
jne 0x40738e
push 1
push 0
push 0
push 0
lea edx, [ebp - 0x374]
push edx
call sub.USER32.DLL_PeekMessageA
test eax, eax
je 0x407266
lea ecx, [ebp - 0x374]
push ecx
call sub.USER32.DLL_TranslateMessage
lea eax, [ebp - 0x374]
push eax
call sub.USER32.DLL_DispatchMessageA
cmp dword [ebp - 0x370], 0x12
jne 0x407266
or eax, 0xffffffff
jmp 0x407631
mov edx, dword [ebp - 0x28]
sub edx, dword [ebp - 0x24]
cmp edx, dword [ebp + 0x10]
jb 0x407620
cmp dword [ebp - 4], 0
je 0x4072cc
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
jmp 0x4072c1
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp + eax*4 - 0x14c]
cmp edx, dword [ebp + 8]
jne 0x4072be
jmp 0x4072aa
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp + ecx*4 - 0x148]
mov edx, dword [ebp - 0x2c]
mov dword [ebp + edx*4 - 0x14c], eax
inc dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x150]
dec ecx
cmp ecx, dword [ebp - 0x2c]
ja 0x407293
dec dword [ebp - 0x150]
jmp 0x4072cc
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x150]
jb 0x407282
cmp dword [ebp - 8], 0
je 0x407323
xor edx, edx
mov dword [ebp - 0x30], edx
jmp 0x407318
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp + ecx*4 - 0x250]
cmp eax, dword [ebp + 8]
jne 0x407315
jmp 0x407301
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp + edx*4 - 0x24c]
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x250], ecx
inc dword [ebp - 0x30]
mov edx, dword [ebp - 0x254]
dec edx
cmp edx, dword [ebp - 0x30]
ja 0x4072ea
dec dword [ebp - 0x254]
jmp 0x407323
inc dword [ebp - 0x30]
mov ecx, dword [ebp - 0x30]
cmp ecx, dword [ebp - 0x254]
jb 0x4072d9
cmp dword [ebp - 0xc], 0
je 0x40737a
xor eax, eax
mov dword [ebp - 0x34], eax
jmp 0x40736f
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp + edx*4 - 0x354]
cmp ecx, dword [ebp + 8]
jne 0x40736c
jmp 0x407358
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp + eax*4 - 0x350]
mov ecx, dword [ebp - 0x34]
mov dword [ebp + ecx*4 - 0x354], edx
inc dword [ebp - 0x34]
mov eax, dword [ebp - 0x358]
dec eax
cmp eax, dword [ebp - 0x34]
ja 0x407341
dec dword [ebp - 0x358]
jmp 0x40737a
inc dword [ebp - 0x34]
mov edx, dword [ebp - 0x34]
cmp edx, dword [ebp - 0x358]
jb 0x407330
push 0x274c
call sub.KERNEL32.DLL_SetLastError
mov eax, 0xfffffff6
jmp 0x407631
cmp dword [ebp - 0xc], 0
je 0x4074c0
push dword [ebp - 0xc]
push dword [ebp + 8]
call sub.WSOCK32.DLL___WSAFDIsSet
test eax, eax
je 0x4074c0
cmp dword [ebp - 4], 0
je 0x407402
xor edx, edx
mov dword [ebp - 0x38], edx
jmp 0x4073f7
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp + ecx*4 - 0x14c]
cmp eax, dword [ebp + 8]
jne 0x4073f4
jmp 0x4073e0
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp + edx*4 - 0x148]
mov eax, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0x14c], ecx
inc dword [ebp - 0x38]
mov edx, dword [ebp - 0x150]
dec edx
cmp edx, dword [ebp - 0x38]
ja 0x4073c9
dec dword [ebp - 0x150]
jmp 0x407402
inc dword [ebp - 0x38]
mov ecx, dword [ebp - 0x38]
cmp ecx, dword [ebp - 0x150]
jb 0x4073b8
cmp dword [ebp - 8], 0
je 0x407459
xor eax, eax
mov dword [ebp - 0x3c], eax
jmp 0x40744e
mov edx, dword [ebp - 0x3c]
mov ecx, dword [ebp + edx*4 - 0x250]
cmp ecx, dword [ebp + 8]
jne 0x40744b
jmp 0x407437
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp + eax*4 - 0x24c]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp + ecx*4 - 0x250], edx
inc dword [ebp - 0x3c]
mov eax, dword [ebp - 0x254]
dec eax
cmp eax, dword [ebp - 0x3c]
ja 0x407420
dec dword [ebp - 0x254]
jmp 0x407459
inc dword [ebp - 0x3c]
mov edx, dword [ebp - 0x3c]
cmp edx, dword [ebp - 0x254]
jb 0x40740f
cmp dword [ebp - 0xc], 0
je 0x4074b0
xor ecx, ecx
mov dword [ebp - 0x40], ecx
jmp 0x4074a5
mov eax, dword [ebp - 0x40]
mov edx, dword [ebp + eax*4 - 0x354]
cmp edx, dword [ebp + 8]
jne 0x4074a2
jmp 0x40748e
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp + ecx*4 - 0x350]
mov edx, dword [ebp - 0x40]
mov dword [ebp + edx*4 - 0x354], eax
inc dword [ebp - 0x40]
mov ecx, dword [ebp - 0x358]
dec ecx
cmp ecx, dword [ebp - 0x40]
ja 0x407477
dec dword [ebp - 0x358]
jmp 0x4074b0
inc dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0x358]
jb 0x407466
call sub.WSOCK32.DLL_WSAGetLastError
mov dword [ebp - 0x20], eax
or eax, 0xffffffff
jmp 0x407631
cmp dword [ebp - 4], 0
je 0x4074d5
push dword [ebp - 4]
push dword [ebp + 8]
call sub.WSOCK32.DLL___WSAFDIsSet
test eax, eax
jne 0x4074ea
cmp dword [ebp - 8], 0
je 0x4074f2
push dword [ebp - 8]
push dword [ebp + 8]
call sub.WSOCK32.DLL___WSAFDIsSet
test eax, eax
je 0x4074f2
call sub.WSOCK32.DLL_WSAGetLastError
mov dword [ebp - 0x20], eax
cmp dword [ebp - 4], 0
je 0x407549
xor edx, edx
mov dword [ebp - 0x44], edx
jmp 0x40753e
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp + ecx*4 - 0x14c]
cmp eax, dword [ebp + 8]
jne 0x40753b
jmp 0x407527
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp + edx*4 - 0x148]
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x14c], ecx
inc dword [ebp - 0x44]
mov edx, dword [ebp - 0x150]
dec edx
cmp edx, dword [ebp - 0x44]
ja 0x407510
dec dword [ebp - 0x150]
jmp 0x407549
inc dword [ebp - 0x44]
mov ecx, dword [ebp - 0x44]
cmp ecx, dword [ebp - 0x150]
jb 0x4074ff
cmp dword [ebp - 8], 0
je 0x4075a0
xor eax, eax
mov dword [ebp - 0x48], eax
jmp 0x407595
mov edx, dword [ebp - 0x48]
mov ecx, dword [ebp + edx*4 - 0x250]
cmp ecx, dword [ebp + 8]
jne 0x407592
jmp 0x40757e
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp + eax*4 - 0x24c]
mov ecx, dword [ebp - 0x48]
mov dword [ebp + ecx*4 - 0x250], edx
inc dword [ebp - 0x48]
mov eax, dword [ebp - 0x254]
dec eax
cmp eax, dword [ebp - 0x48]
ja 0x407567
dec dword [ebp - 0x254]
jmp 0x4075a0
inc dword [ebp - 0x48]
mov edx, dword [ebp - 0x48]
cmp edx, dword [ebp - 0x254]
jb 0x407556
cmp dword [ebp - 0xc], 0
je 0x4075f7
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
jmp 0x4075ec
mov eax, dword [ebp - 0x4c]
mov edx, dword [ebp + eax*4 - 0x354]
cmp edx, dword [ebp + 8]
jne 0x4075e9
jmp 0x4075d5
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp + ecx*4 - 0x350]
mov edx, dword [ebp - 0x4c]
mov dword [ebp + edx*4 - 0x354], eax
inc dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x358]
dec ecx
cmp ecx, dword [ebp - 0x4c]
ja 0x4075be
dec dword [ebp - 0x358]
jmp 0x4075f7
inc dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
cmp eax, dword [ebp - 0x358]
jb 0x4075ad
cmp dword [ebp - 0x1c], 0
jge 0x407605
call sub.WSOCK32.DLL_WSAGetLastError
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x2714
jne 0x407615
mov eax, 0x2714
jmp 0x407631
cmp dword [ebp - 0x20], 0
je 0x40762f
or eax, 0xffffffff
jmp 0x407631
mov edx, dword [ebp - 0x28]
sub edx, dword [ebp - 0x24]
cmp edx, dword [ebp + 0x10]
jbe 0x407119
xor eax, eax
mov esp, ebp
pop ebp
ret