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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffe8
push esi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cmp dword [eax + 0x188], 0xb
je 0x4ac689
mov eax, dword [ebp - 4]
cmp dword [eax + 0x188], 9
je 0x4ac689
mov eax, dword [ebp - 4]
cmp dword [eax + 0x188], 0xd
je 0x4ac689
mov eax, dword [ebp - 4]
mov byte [eax + 0x268], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a0]
cmp dword [eax + 8], 2
jl 0x4ac421
mov eax, dword [ebp - 4]
mov byte [eax + 0x268], 1
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x23c]
mov eax, dword [ebp - 4]
sub edx, dword [eax + 0x234]
mov eax, dword [ebp - 4]
mov si, 0xfff8
call fcn.00403fe4
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x23c]
mov eax, dword [ebp - 4]
sub edx, dword [eax + 0x234]
mov eax, dword [ebp - 4]
mov si, 0xfff7
call fcn.00403fe4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x23c]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
cmp dword [eax + 0x188], 0
je 0x4ac5f5
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x23c]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x234]
jl 0x4ac4a1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x23c]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x238]
jle 0x4ac4b3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x234]
mov edx, dword [ebp - 4]
mov dword [edx + 0x23c], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 0x268], 0
je 0x4ac4e5
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x254]
add eax, eax
mov dword [ebp - 0x18], eax
xor eax, eax
mov dword [ebp - 0x14], eax
fild qword [ebp - 0x18]
fdiv dword [0x4ac690]
call fcn.00403038
mov dword [ebp - 0xc], eax
jmp 0x4ac4f1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x254]
mov dword [ebp - 0xc], eax
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0x258]
cmp eax, dword [ebp - 0xc]
jbe 0x4ac5da
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x23c]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x238]
jge 0x4ac535
mov eax, dword [ebp - 4]
inc dword [eax + 0x23c]
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
mov dword [edx + 0x258], eax
jmp 0x4ac54a
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x188], edx
mov eax, dword [ebp - 4]
mov byte [eax + 0x12e], 0
mov eax, dword [ebp - 4]
cmp dword [eax + 0x188], 0x16
jne 0x4ac5da
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x23c]
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0x234]
cmp eax, 4
jne 0x4ac5da
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x100]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x104]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x108]
push eax
push 0xb
mov eax, dword [0x573628]
mov eax, dword [eax]
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 8]
mov edx, dword [ebp - 4]
call fcn.004bb768
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x4ac5da
mov eax, dword [0x573da8]
mov eax, dword [eax]
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x14], eax
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x74], 0x1e
mov eax, dword [ebp - 0x10]
mov dword [eax + 0xc8], 0x110
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x270], edx
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
mov dword [edx + 0x274], eax
jmp 0x4ac661
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0x27c]
cmp eax, 0xc8
jbe 0x4ac661
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0x274]
cmp eax, 0x1f4
jbe 0x4ac655
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
mov dword [edx + 0x274], eax
mov eax, dword [ebp - 4]
inc dword [eax + 0x270]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x270]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x278]
jl 0x4ac655
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x270], edx
mov eax, dword [ebp - 4]
mov si, 0xfffe
call fcn.00403fe4
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x23c]
je 0x4ac689
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
mov dword [edx + 0x284], eax
mov eax, dword [ebp - 4]
mov si, 0xfff3
call fcn.00403fe4
pop esi
mov esp, ebp
pop ebp
ret