Function at 0x4be6fc
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 + 0x1ac], 0xb
je 0x4be9d4
mov eax, dword [ebp - 4]
cmp dword [eax + 0x1ac], 9
je 0x4be9d4
mov eax, dword [ebp - 4]
cmp dword [eax + 0x1ac], 0x177c
je 0x4be9d4
mov eax, dword [ebp - 4]
cmp dword [eax + 0x1ac], 0xd
je 0x4be9d4
mov eax, dword [ebp - 4]
mov byte [eax + 0x2a8], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2e8]
cmp dword [eax + 8], 2
jl 0x4be76c
mov eax, dword [ebp - 4]
mov byte [eax + 0x2a8], 1
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x27c]
mov eax, dword [ebp - 4]
sub edx, dword [eax + 0x274]
mov eax, dword [ebp - 4]
mov si, 0xfff8
call fcn.00403bb0
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x27c]
mov eax, dword [ebp - 4]
sub edx, dword [eax + 0x274]
mov eax, dword [ebp - 4]
mov si, 0xfff7
call fcn.00403bb0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x27c]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
cmp dword [eax + 0x1ac], 0
je 0x4be940
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x27c]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x274]
jl 0x4be7ec
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x27c]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x278]
jle 0x4be7fe
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x274]
mov edx, dword [ebp - 4]
mov dword [edx + 0x27c], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 0x2a8], 0
je 0x4be830
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x294]
add eax, eax
mov dword [ebp - 0x18], eax
xor eax, eax
mov dword [ebp - 0x14], eax
fild qword [ebp - 0x18]
fdiv dword [0x4be9dc]
call fcn.00402c48
mov dword [ebp - 0xc], eax
jmp 0x4be83c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x294]
mov dword [ebp - 0xc], eax
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0x298]
cmp eax, dword [ebp - 0xc]
jbe 0x4be925
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x27c]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x278]
jge 0x4be880
mov eax, dword [ebp - 4]
inc dword [eax + 0x27c]
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
mov dword [edx + 0x298], eax
jmp 0x4be895
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x1ac], edx
mov eax, dword [ebp - 4]
mov byte [eax + 0x152], 0
mov eax, dword [ebp - 4]
cmp dword [eax + 0x1ac], 0x16
jne 0x4be925
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x27c]
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0x274]
cmp eax, 4
jne 0x4be925
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x124]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x128]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x12c]
push eax
push 0xb
mov eax, dword [0x5ab4b4]
mov eax, dword [eax]
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 8]
mov edx, dword [ebp - 4]
call fcn.004cdbbc
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x4be925
mov eax, dword [0x5abcd4]
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 + 0xcc], 0x110
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x2b0], edx
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
mov dword [edx + 0x2b4], eax
jmp 0x4be9ac
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0x2bc]
cmp eax, 0xc8
jbe 0x4be9ac
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0x2b4]
cmp eax, 0x1f4
jbe 0x4be9a0
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
mov dword [edx + 0x2b4], eax
mov eax, dword [ebp - 4]
inc dword [eax + 0x2b0]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2b0]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x2b8]
jl 0x4be9a0
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x2b0], edx
mov eax, dword [ebp - 4]
mov si, 0xfffe
call fcn.00403bb0
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x27c]
je 0x4be9d4
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
mov dword [edx + 0x2c4], eax
mov eax, dword [ebp - 4]
mov si, 0xfff3
call fcn.00403bb0
pop esi
mov esp, ebp
pop ebp
ret