Function at 0x52a920
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x354
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
call fcn.0053db70
add esp, 0xc
test eax, eax
jne 0x52accf
mov eax, dword [ebp + 0xc]
push eax
call fcn.0053e120
add esp, 4
mov dword [ebp - 0x32c], eax
mov dword [ebp - 0x114], 0xffffffff
mov dword [ebp - 0x338], 0
cmp dword [ebp - 0x32c], 0x2733
je 0x52a98d
cmp dword [ebp - 0x32c], 0x2734
je 0x52a98d
mov eax, 0xfffffff1
jmp 0x52acd1
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.0053e0f0
add esp, 4
mov dword [ebp - 0x114], eax
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x138]
and eax, 0x24
jne 0x52a9de
mov word [ebp - 0x33c], 1
mov word [ebp - 0x33a], 0
push 4
lea ecx, [ebp - 0x33c]
push ecx
push 0x80
push 0xffff
mov edx, dword [ebp - 0x114]
push edx
call fcn.0050b4e0
mov eax, dword [ebp + 0x10]
push eax
call fcn.00505110
add esp, 4
mov dword [ebp - 0x338], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 4], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [edx + 0x20]
mov dword [ebp - 0x334], eax
mov dword [ebp - 0x330], 0
mov ecx, 1
test ecx, ecx
je 0x52acbf
mov dword [ebp - 0x110], 0
cmp dword [ebp - 0x110], 0x40
jae 0x52aa57
mov edx, dword [ebp - 0x110]
mov eax, dword [ebp - 0x114]
mov dword [ebp + edx*4 - 0x10c], eax
mov ecx, dword [ebp - 0x110]
add ecx, 1
mov dword [ebp - 0x110], ecx
xor edx, edx
jne 0x52aa2c
mov dword [ebp - 0x328], 0
mov dword [ebp - 0x220], 0
cmp dword [ebp - 0x220], 0x40
jae 0x52aa9a
mov eax, dword [ebp - 0x220]
mov ecx, dword [ebp - 0x114]
mov dword [ebp + eax*4 - 0x21c], ecx
mov edx, dword [ebp - 0x220]
add edx, 1
mov dword [ebp - 0x220], edx
xor eax, eax
jne 0x52aa6f
lea ecx, [ebp - 0x334]
push ecx
lea edx, [ebp - 0x220]
push edx
lea eax, [ebp - 0x110]
push eax
lea ecx, [ebp - 0x328]
push ecx
push 0
call fcn.0050b370
mov dword [ebp - 0x340], eax
cmp dword [ebp - 0x340], 0
jle 0x52abb8
lea edx, [ebp - 0x220]
push edx
mov eax, dword [ebp - 0x114]
push eax
call fcn.0050b290
test eax, eax
je 0x52ab95
mov dword [ebp - 0x348], 0
mov dword [ebp - 0x344], 4
lea ecx, [ebp - 0x344]
push ecx
lea edx, [ebp - 0x348]
push edx
push 0x1007
push 0xffff
mov eax, dword [ebp - 0x114]
push eax
call sub.WS2_32.dll_getsockopt
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x80], 0
je 0x52ab4d
mov edx, 1
test edx, edx
je 0x52ab4d
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x80]
mov dword [ebp - 0x34c], ecx
jmp 0x52ab57
mov dword [ebp - 0x34c], 0xfffffff1
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x34c]
mov dword [edx + 0x80], eax
push 0
push 0xff
mov ecx, dword [ebp - 0x338]
push ecx
mov edx, dword [ebp - 0x348]
push edx
push 0xa
push 0xfffffffffffffff1
mov eax, dword [ebp + 8]
push eax
call fcn.004f3810
add esp, 0x1c
mov eax, 0xfffffff1
jmp 0x52acd1
lea ecx, [ebp - 0x110]
push ecx
mov edx, dword [ebp - 0x114]
push edx
call fcn.0050b290
test eax, eax
je 0x52abb3
xor eax, eax
jmp 0x52acd1
jmp 0x52acba
cmp dword [ebp - 0x340], 0
jne 0x52ac4d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp - 4]
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov ecx, dword [edx + 0x20]
imul ecx, ecx, 0x3cf
cmp eax, ecx
jbe 0x52ac4b
mov edx, dword [ebp + 8]
cmp dword [edx + 0x80], 0
je 0x52ac05
xor eax, eax
je 0x52ac05
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x80]
mov dword [ebp - 0x350], edx
jmp 0x52ac0f
mov dword [ebp - 0x350], 0xffffffa0
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x350]
mov dword [eax + 0x80], ecx
push 0
push 0xff
mov edx, dword [ebp - 0x338]
push edx
push 0
push 0x1eb
push 0xffffffffffffffa0
mov eax, dword [ebp + 8]
push eax
call fcn.004f3810
add esp, 0x1c
mov eax, 0xffffffa0
jmp 0x52acd1
jmp 0x52acba
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x80], 0
je 0x52ac73
mov edx, 1
test edx, edx
je 0x52ac73
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x80]
mov dword [ebp - 0x354], ecx
jmp 0x52ac7d
mov dword [ebp - 0x354], 0xfffffff1
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x354]
mov dword [edx + 0x80], eax
push 0
push 0xff
mov ecx, dword [ebp - 0x338]
push ecx
call fcn.0050b260
push eax
push 0x2730
push 0xfffffffffffffff1
mov edx, dword [ebp + 8]
push edx
call fcn.004f3810
add esp, 0x1c
mov eax, 0xfffffff1
jmp 0x52acd1
jmp 0x52aa15
cmp dword [ebp - 0x114], 0xffffffff
jne 0x52accf
mov eax, 0xffffffc7
jmp 0x52acd1
xor eax, eax
mov esp, ebp
pop ebp
ret