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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x48
push esi
push edi
mov edi, dword [0x1018252c]
mov dword [ebp - 0xc], edx
mov dword [ebp - 4], ecx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
mov ecx, eax
sub esi, edi
sub ecx, edi
cmp eax, edi
cmovae ecx, esi
cmp ecx, 0x1e
jae 0x1006ab0d
mov eax, 0xfffffffe
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, dword [ebp - 4]
mov dword [0x1018252c], eax
mov eax, dword [ebp - 0xc]
shl edi, 5
mov dword [ebp - 0x1c], edi
lea esi, [eax + eax*2]
shl esi, 3
mov dword [ebp - 0x14], esi
test edi, edi
jne 0x1006ab39
test esi, esi
je 0x1006acfe
call dword [0x10121618]
mov ecx, dword [0x66be34]
lea eax, [ebp - 8]
lea edx, [ebp - 0x10]
push eax
call fcn.10017900
mov edx, dword [ebp - 8]
mov ecx, dword [ebp - 0x10]
add edx, 8
add ecx, 0x10
add edx, esi
add ecx, edi
mov dword [ebp - 8], edx
push 0
call fcn.10072f50
mov edx, eax
mov dword [ebp - 0x18], edx
cmp edx, 0xffffffff
je 0x1006acfe
xor edx, edx
cmp byte [0x1015eecb], dl
je 0x1006abb0
mov eax, dword [ebp - 4]
test eax, eax
je 0x1006ab97
mov edx, 0x800
mov ecx, 0x400
cmovg edx, ecx
mov ecx, dword [ebp - 0xc]
test ecx, ecx
je 0x1006abb0
mov eax, 0x200
mov dword [ebp - 0x10], 0x100
cmovg eax, dword [ebp - 0x10]
or edx, eax
mov ecx, dword [ebp - 0x18]
call fcn.1006af30
cmp eax, 0xffffffff
je 0x1006acfe
mov eax, 0x631d38
movups xmm0, xmmword [eax]
mov eax, dword [0x1013cf04]
mov dword [ebp - 4], eax
movaps xmmword [ebp - 0x30], xmm0
movaps xmmword [ebp - 0x40], xmm0
mov edx, dword [0x66be14]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
test edi, edi
je 0x1006abef
add eax, 0xffffffe0
mov dword [ebp - 0x10], eax
test esi, esi
je 0x1006abf9
sub edx, 0x18
mov dword [ebp - 0xc], edx
test edi, edi
js 0x1006ac07
mov eax, dword [ebp - 0x28]
sub eax, edi
mov dword [ebp - 0x40], eax
jmp 0x1006ac0f
mov eax, dword [ebp - 0x30]
sub eax, edi
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x14]
mov esi, dword [0x631d50]
test ecx, ecx
js 0x1006ac32
mov eax, dword [ebp - 0x24]
sub eax, ecx
imul ecx, dword [ebp - 4]
mov dword [ebp - 0x2c], eax
add ecx, esi
test edi, edi
jns 0x1006ac60
sub esi, edi
jmp 0x1006ac60
mov eax, dword [ebp - 0x2c]
sub eax, ecx
lea ecx, [edx - 1]
imul ecx, dword [ebp - 4]
mov dword [ebp - 0x24], eax
mov eax, dword [0x66be14]
dec eax
imul eax, dword [ebp - 4]
add ecx, esi
add esi, eax
mov eax, dword [ebp - 4]
neg eax
mov dword [ebp - 4], eax
mov eax, esi
sub eax, edi
test edi, edi
cmovs esi, eax
test edi, edi
lea eax, [ecx + edi]
cmovs eax, ecx
test edx, edx
jle 0x1006ac91
mov edi, dword [ebp - 0xc]
sub eax, esi
mov dword [ebp - 0x18], eax
push dword [ebp - 0x10]
add eax, esi
push eax
push esi
call fcn.100ebbe0
add esi, dword [ebp - 4]
add esp, 0xc
mov eax, dword [ebp - 0x18]
sub edi, 1
jne 0x1006ac74
mov edi, dword [ebp - 0x1c]
test edi, edi
je 0x1006ac9d
lea ecx, [ebp - 0x40]
call fcn.1006aaa0
cmp dword [ebp - 0x14], 0
je 0x1006acab
lea ecx, [ebp - 0x30]
call fcn.1006aaa0
mov eax, dword [0x631e4c]
cmp eax, 0xffffffff
je 0x1006acf3
test eax, eax
js 0x1006acbe
cmp eax, 0x32
jl 0x1006acbf
int3
mov eax, dword [eax*4 + 0x6add90]
cmp eax, 0xffffffff
je 0x1006acf3
test eax, eax
js 0x1006acd4
cmp eax, 0x32
jl 0x1006acd5
int3
mov ecx, dword [eax*4 + 0x6ade58]
test ecx, ecx
je 0x1006acf3
cmp dword [0x51e3e0], 0
je 0x1006acf3
push 0
lea edx, [ecx + 8]
call fcn.100416a0
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
pop edi
or eax, 0xffffffff
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret