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

Disassembly:
push 0x64
mov eax, 0x552897
call fcn.00550118
mov edi, ecx
mov eax, dword [ebp + 0x10]
lea ecx, [ebp - 0x28]
push eax
call fcn.00405641
and dword [ebp - 4], 0
lea ecx, [ebp - 0x28]
call fcn.0041bb9b
test eax, eax
je 0x437c0c
xor esi, esi
lea ecx, [ebp - 0x28]
call fcn.0041bb9b
cmp esi, eax
jae 0x437c0c
push esi
push 0x26
lea ecx, [ebp - 0x28]
call fcn.0043189f
mov ebx, eax
mov dword [ebp - 0x60], ebx
test ebx, ebx
js 0x437c0c
push 2
lea ecx, [ebx + 1]
push ecx
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x28]
call fcn.00431cbb
push ebx
push 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0x28]
call fcn.00431cbb
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 2
call fcn.00414c67
push eax
call dword [sym.imp.MSVCR120.dll_atoi]
mov ebx, eax
pop ecx
cmp ebx, 0x45
ja 0x437bec
mov esi, 0x6a08e0
push ebx
mov ecx, esi
call fcn.0043d8d3
cmp dword [eax + 8], 1
jle 0x437b3d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [edi + 0x1628]
je 0x437a87
mov esi, dword [edi + 0x1624]
mov ecx, 0x6a08e0
push ebx
call fcn.0043d8d3
imul eax, dword [eax + 8], 0x32
sub eax, 5
cmp esi, eax
jb 0x437a72
and dword [edi + 0x1624], 0
jmp 0x437a87
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, 0x6a08e0
mov dword [ebp - 0x5c], eax
call fcn.0043d8d3
shl esi, 4
add eax, 0xc
add eax, esi
mov esi, dword [ebp - 0x5c]
push eax
push esi
push ebx
mov ebx, 0x6a08e0
mov ecx, ebx
call fcn.0043d8d3
mov ecx, ebx
push dword [eax + 4]
call fcn.0043d9a2
mov ecx, esi
call fcn.0042d0e0
test eax, eax
jne 0x437bec
lea ecx, [ebp - 0x40]
call fcn.0041bb9b
imul eax, eax, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5648d0]
lea eax, [ebp - 0x70]
cvtpd2ps xmm1, xmm0
movd xmm0, dword [ebp + 8]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x5648b8]
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 0x437bd9
push ebx
mov ecx, esi
call fcn.0043d8d3
test eax, eax
je 0x437bec
push ebx
mov ecx, 0x6a08e0
lea esi, [edi + 0x13a4]
call fcn.0043d8d3
add eax, 0xc
push eax
push esi
push ebx
mov ebx, 0x6a08e0
mov ecx, ebx
call fcn.0043d8d3
mov ecx, ebx
push dword [eax + 4]
call fcn.0043d9a2
mov ecx, esi
call fcn.0042d0e0
test eax, eax
jne 0x437bec
lea ecx, [ebp - 0x40]
call fcn.0041bb9b
imul eax, eax, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5648d0]
lea eax, [ebp - 0x68]
cvtpd2ps xmm1, xmm0
movd xmm0, dword [ebp + 8]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x5648b8]
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.00434c77
mov esi, dword [ebp - 0x60]
lea ecx, [ebp - 0x40]
call fcn.0040575c
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0
call fcn.0040575c
add esi, 2
jns 0x4379bc
lea ecx, [ebp - 0x28]
call fcn.0040575c
call fcn.005500d6
ret 0xc