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

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 6
push 0
push 0
dec ecx
jne 0x47e5c9
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0xc]
call fcn.004049e0
xor eax, eax
push ebp
push 0x47e8a6
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x47e843
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x10]
push eax
mov ecx, 0x10
mov edx, 1
mov eax, dword [ebp - 0xc]
call fcn.00404a50
lea eax, [ebp - 0x14]
push eax
mov eax, dword [ebp - 0xc]
call fcn.004047f8
mov ecx, eax
sub ecx, 0x10
mov edx, 0x11
mov eax, dword [ebp - 0xc]
call fcn.00404a50
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0047abf0
movzx eax, word [ebp - 0x1c]
cmp eax, 0x7d2
jg 0x47e668
je 0x47e6e5
sub eax, 0x68
je 0x47e68a
sub eax, 0x768
je 0x47e6aa
dec eax
je 0x47e6ba
jmp 0x47e839
sub eax, 0x7d3
je 0x47e745
dec eax
je 0x47e7aa
sub eax, 0xbb7
je 0x47e7f4
jmp 0x47e839
mov eax, dword [ebp - 8]
cmp byte [eax + 0x38], 0
jne 0x47e839
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.0047fc0c
jmp 0x47e839
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 8]
call fcn.0047f09c
jmp 0x47e839
mov eax, dword [ebp - 8]
cmp dword [eax], 0
jne 0x47e6d5
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.0047f2d4
jmp 0x47e839
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.0047f14c
jmp 0x47e839
mov eax, dword [ebp - 4]
cmp byte [eax + 0x22e], 0
je 0x47e839
call sub.kernel32.dll_GetTickCount
mov edx, dword [ebp - 8]
sub eax, dword [edx + 0x4c]
cmp eax, 0x1388
jbe 0x47e725
call sub.kernel32.dll_GetTickCount
mov edx, dword [ebp - 8]
mov dword [edx + 0x4c], eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.0047e9b8
jmp 0x47e839
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 4]
lea eax, [ebp - 0x24]
mov edx, 0x47e8bc
call fcn.00404844
mov eax, dword [ebp - 0x24]
call fcn.0046a5bc
jmp 0x47e839
mov eax, dword [ebp - 8]
cmp dword [eax], 0
jne 0x47e79d
call sub.kernel32.dll_GetTickCount
mov edx, dword [ebp - 8]
sub eax, dword [edx + 0x4c]
cmp eax, 0x1388
jbe 0x47e77d
call sub.kernel32.dll_GetTickCount
mov edx, dword [ebp - 8]
mov dword [edx + 0x4c], eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.0047ed68
jmp 0x47e839
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 4]
lea eax, [ebp - 0x28]
mov edx, 0x47e8e4
call fcn.00404844
mov eax, dword [ebp - 0x28]
call fcn.0046a5bc
jmp 0x47e839
mov eax, dword [ebp - 8]
call fcn.00404540
jmp 0x47e839
call sub.kernel32.dll_GetTickCount
mov edx, dword [ebp - 8]
sub eax, dword [edx + 0x4c]
cmp eax, 0x1388
jbe 0x47e7d7
call sub.kernel32.dll_GetTickCount
mov edx, dword [ebp - 8]
mov dword [edx + 0x4c], eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.0047ff4c
jmp 0x47e839
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 4]
lea eax, [ebp - 0x2c]
mov edx, 0x47e910
call fcn.00404844
mov eax, dword [ebp - 0x2c]
call fcn.0046a5bc
jmp 0x47e839
call sub.kernel32.dll_GetTickCount
mov edx, dword [ebp - 8]
sub eax, dword [edx + 0x4c]
cmp eax, 0x1388
jbe 0x47e81e
call sub.kernel32.dll_GetTickCount
mov edx, dword [ebp - 8]
mov dword [edx + 0x4c], eax
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 8]
call fcn.00480260
jmp 0x47e839
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 4]
lea eax, [ebp - 0x30]
mov edx, 0x47e938
call fcn.00404844
mov eax, dword [ebp - 0x30]
call fcn.0046a5bc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x47e87e
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x47e8ad
lea eax, [ebp - 0x38]
mov edx, 6
call fcn.00404564
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.00404564
ret