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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
mov dword [ebp - 4], ecx
mov ecx, dword [ebp - 4]
call fcn.1000a520
movzx eax, al
test eax, eax
je 0x100cd47e
mov ecx, dword [ebp - 4]
cmp dword [ecx + 0x24], 0xa
jne 0x100cd27f
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x108]
call fcn.100d80c0
movzx eax, al
test eax, eax
jne 0x100cd26a
push 0
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x108]
call fcn.100d8280
push 0
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x108]
call fcn.100d8370
jmp 0x100cd47e
mov eax, dword [ebp - 4]
cmp dword [eax + 0x24], 0xb
jne 0x100cd47e
mov ecx, dword [ebp - 4]
add ecx, 0xdc
call fcn.100093d0
cmp eax, 8
jbe 0x100cd3d8
push 0xf0
push 0xb4
mov ecx, dword [ebp - 4]
movss xmm0, dword [ecx + 0x10]
addss xmm0, dword [0x101c34ac]
cvttss2si edx, xmm0
push edx
mov eax, dword [ebp - 4]
movss xmm0, dword [eax + 0xc]
addss xmm0, dword [0x101c32a0]
cvttss2si ecx, xmm0
push ecx
mov ecx, 0x101de258
call fcn.1014a8e0
movzx edx, al
test edx, edx
je 0x100cd3b6
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x34]
call fcn.100d20a0
fstp dword [ebp - 8]
cmp dword [0x879337c], 0
jg 0x100cd360
cmp dword [0x879337c], 0
jge 0x100cd35e
mov dword [0x879337c], 0
cvtss2sd xmm0, dword [ebp - 8]
addsd xmm0, qword [0x101c2d68]
cvtsd2ss xmm0, xmm0
movss dword [ebp - 8], xmm0
cvtss2sd xmm0, dword [ebp - 8]
comisd xmm0, xmmword [0x101c2e30]
jbe 0x100cd348
movss xmm0, dword [0x101c2cd4]
movss dword [ebp - 8], xmm0
push ecx
movss xmm0, dword [ebp - 8]
movss dword [esp], xmm0
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x34]
call fcn.100d2110
jmp 0x100cd3b6
mov dword [0x879337c], 0
cvtss2sd xmm0, dword [ebp - 8]
subsd xmm0, qword [0x101c2d68]
cvtsd2ss xmm0, xmm0
movss dword [ebp - 8], xmm0
cvtss2sd xmm0, dword [ebp - 8]
movsd xmm1, qword [0x101c2900]
comisd xmm1, xmm0
jbe 0x100cd3a0
movss xmm0, dword [0x101c28f8]
movss dword [ebp - 8], xmm0
push ecx
movss xmm0, dword [ebp - 8]
movss dword [esp], xmm0
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x34]
call fcn.100d2110
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x34]
call fcn.100d2140
movzx ecx, al
test ecx, ecx
je 0x100cd3cd
jmp 0x100cd47e
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x34]
call fcn.100d2160
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebp - 4]
sub eax, dword [ecx + 0xec]
cmp eax, 0x3e8
jae 0x100cd3f3
jmp 0x100cd47e
mov edx, dword [ebp - 4]
add edx, 0xdc
mov dword [ebp - 0x10], edx
lea eax, [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x10]
call fcn.10012940
lea ecx, [ebp - 0x1c]
push ecx
mov ecx, dword [ebp - 0x10]
call fcn.1000b490
jmp 0x100cd421
lea ecx, [ebp - 0xc]
call fcn.1001be80
lea edx, [ebp - 0x1c]
push edx
lea ecx, [ebp - 0xc]
call fcn.1000adc0
movzx eax, al
test eax, eax
je 0x100cd46f
lea ecx, [ebp - 0xc]
call fcn.10012770
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
cmp dword [ecx + 0x2c], 0
jle 0x100cd46d
mov edx, dword [ebp - 0x14]
push edx
mov ecx, dword [ebp - 4]
add ecx, 0xdc
call fcn.1003c9d0
add eax, 0x28
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
sub ecx, 1
mov edx, dword [ebp - 0x18]
mov dword [edx], ecx
jmp 0x100cd419
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0xec], eax
mov esp, ebp
pop ebp
ret