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

Disassembly:
push 0x64
mov eax, 0x57546d
call fcn.00550a12
mov edi, ecx
mov eax, dword [ebp + 0x10]
lea ecx, [ebp - 0x28]
push eax
call fcn.0040444a
and dword [ebp - 4], 0
lea ecx, [ebp - 0x28]
call fcn.0044670e
test eax, eax
je 0x42abde
xor esi, esi
lea ecx, [ebp - 0x28]
call fcn.0044670e
cmp esi, eax
jae 0x42abde
push esi
push 0x26
lea ecx, [ebp - 0x28]
call fcn.00424859
mov ebx, eax
mov dword [ebp - 0x60], ebx
test ebx, ebx
js 0x42abde
push 2
lea ecx, [ebx + 1]
push ecx
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x28]
call fcn.00424c74
push ebx
push 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0x28]
call fcn.00424c74
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 2
call fcn.00405afd
push eax
call fcn.0055375e
mov ebx, eax
pop ecx
cmp ebx, 0x45
ja 0x42abbe
mov esi, 0x6bebb0
push ebx
mov ecx, esi
call fcn.004308f6
cmp dword [eax + 8], 1
jle 0x42ab0f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [edi + 0x1628]
je 0x42aa59
mov esi, dword [edi + 0x1624]
mov ecx, 0x6bebb0
push ebx
call fcn.004308f6
imul eax, dword [eax + 8], 0x32
sub eax, 5
cmp esi, eax
jb 0x42aa44
and dword [edi + 0x1624], 0
jmp 0x42aa59
lea eax, [esi + 5]
mov dword [edi + 0x1624], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [edi + 0x1628], eax
mov eax, dword [edi + 0x1624]
xor edx, edx
push 0x32
pop ecx
div ecx
push ebx
mov esi, eax
lea eax, [edi + 0x13a4]
mov ecx, esi
shl ecx, 5
add eax, ecx
mov ecx, 0x6bebb0
mov dword [ebp - 0x5c], eax
call fcn.004308f6
shl esi, 4
add eax, 0xc
add eax, esi
mov esi, dword [ebp - 0x5c]
push eax
push esi
push ebx
mov ebx, 0x6bebb0
mov ecx, ebx
call fcn.004308f6
mov ecx, ebx
push dword [eax + 4]
call fcn.004309c5
mov ecx, esi
call fcn.0042013f
test eax, eax
jne 0x42abbe
lea ecx, [ebp - 0x40]
call fcn.0044670e
imul eax, eax, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x579c70]
lea eax, [ebp - 0x70]
cvtpd2ps xmm1, xmm0
movd xmm0, dword [ebp + 8]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x579c5c]
addss xmm1, xmm0
movd xmm0, dword [ebp + 0xc]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x70], xmm1
subss xmm0, dword [str.ff__]
movss dword [ebp - 0x6c], xmm0
jmp 0x42abab
push ebx
mov ecx, esi
call fcn.004308f6
test eax, eax
je 0x42abbe
push ebx
mov ecx, 0x6bebb0
lea esi, [edi + 0x13a4]
call fcn.004308f6
add eax, 0xc
push eax
push esi
push ebx
mov ebx, 0x6bebb0
mov ecx, ebx
call fcn.004308f6
mov ecx, ebx
push dword [eax + 4]
call fcn.004309c5
mov ecx, esi
call fcn.0042013f
test eax, eax
jne 0x42abbe
lea ecx, [ebp - 0x40]
call fcn.0044670e
imul eax, eax, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x579c70]
lea eax, [ebp - 0x68]
cvtpd2ps xmm1, xmm0
movd xmm0, dword [ebp + 8]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x579c5c]
addss xmm1, xmm0
movd xmm0, dword [ebp + 0xc]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x68], xmm1
subss xmm0, dword [str.ff__]
movss dword [ebp - 0x64], xmm0
push 0xffffffffffffffff
push eax
push ecx
and dword [esp], 0
mov ecx, esi
push 0
push 0
call fcn.00427c32
mov esi, dword [ebp - 0x60]
lea ecx, [ebp - 0x40]
call fcn.0040498c
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0
call fcn.0040498c
add esi, 2
jns 0x42a98f
lea ecx, [ebp - 0x28]
call fcn.0040498c
call fcn.005509c1
ret 0xc