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

Disassembly:
push ebp
mov ebp, esp
push ecx
push ebx
push edi
push 0xc
mov eax, 0x861110
call eax
mov edx, 0x85ec20
mov ecx, eax
call edx
test al, al
jne 0x1002c335
cmp byte [esi + 0x1d41], 1
jne 0x1002c335
xor ebx, ebx
mov byte [esi + 0x1d41], bl
mov dword [0xe8cb3c], ebx
jmp 0x1002c337
xor ebx, ebx
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
sub eax, dword [esi + 0x1d84]
cmp eax, 0x64
jae 0x1002c356
mov byte [esi + 0x1d41], bl
mov dword [0xe8cb3c], ebx
call edi
sub eax, dword [esi + 0x1dcc]
cmp eax, 0x64
jae 0x1002c36f
mov byte [esi + 0x1d41], bl
mov dword [0xe8cb3c], ebx
cmp byte [esi + 0x1d41], bl
je 0x1002c5be
fld dword [0x100605bc]
sub esp, 8
fstp dword [esp + 4]
mov eax, 0x66
fld dword [0x1005fa04]
mov ecx, 0x100bd618
fstp dword [esp]
call fcn.100290a0
fld dword [0x10060068]
sub esp, 8
fstp dword [esp + 4]
mov eax, 0x1d
fld dword [0x1005fa04]
mov ecx, 0x100bd618
fstp dword [esp]
call fcn.100290a0
fld dword [0x100605b8]
sub esp, 8
fstp dword [esp + 4]
fld dword [0x1005fa04]
fstp dword [esp]
call fcn.1002a450
fstp dword [ebp - 4]
sub esp, 8
fld dword [ebp - 4]
mov eax, 0x1f
fstp dword [esp + 4]
mov ecx, 0x100bd618
fld dword [0x1005fa04]
fstp dword [esp]
call fcn.100290a0
push 0x42
mov ecx, 0x10076f48
call fcn.100228c0
push eax
push 0xd2
mov ebx, 3
push 0x23
push 0xff19bdff
lea ecx, [ebx + 0x61]
call fcn.10029570
add esp, 0x10
push 0x43
mov ecx, 0x10076f48
call fcn.100228c0
push eax
push 0xd2
push 0x23
push 0xff19bdff
lea ecx, [ebx + 0x7f]
call fcn.10029570
fldz
fst dword [esp + 0xc]
lea eax, [ebx + 0x64]
fstp dword [esp + 8]
mov ecx, esi
fld dword [0x1006038c]
fstp dword [esp + 4]
fld dword [0x100601c8]
fstp dword [esp]
call fcn.1002a4b0
fld dword [esi + 0x1d74]
call fcn.100596f0
fld dword [esi + 0x1d78]
mov edi, eax
call fcn.100596f0
fld dword [esi + 0x1d6c]
mov ebx, eax
call fcn.100596f0
fld dword [esi + 0x1d70]
mov dword [ebp - 4], eax
call fcn.100596f0
push eax
mov eax, dword [ebp - 4]
push eax
push ebx
push edi
mov ecx, 0x790b10
call ecx
add esp, 0x10
test al, al
je 0x1002c504
cmp byte [esi + 0x1d88], 0
mov dword [ebp - 4], 0x1e
je 0x1002c4d5
mov dword [ebp - 4], 0x3c
fild dword [ebp - 4]
sub esp, 0x10
mov eax, 0x67
mov ecx, esi
fstp dword [esp + 0xc]
fldz
fstp dword [esp + 8]
fld dword [0x1006038c]
fstp dword [esp + 4]
fld dword [0x100601c8]
fstp dword [esp]
call fcn.1002a4b0
fldz
sub esp, 0x10
fst dword [esp + 0xc]
mov eax, 0x68
fstp dword [esp + 8]
mov ecx, esi
fld dword [0x1006038c]
fstp dword [esp + 4]
fld dword [0x100605b4]
fstp dword [esp]
call fcn.1002a4b0
fld dword [esi + 0x1dbc]
call fcn.100596f0
fld dword [esi + 0x1dc0]
mov edi, eax
call fcn.100596f0
fld dword [esi + 0x1db4]
mov ebx, eax
call fcn.100596f0
fld dword [esi + 0x1db8]
mov dword [ebp - 4], eax
call fcn.100596f0
mov edx, dword [ebp - 4]
push eax
push edx
push ebx
push edi
mov eax, 0x790b10
call eax
add esp, 0x10
test al, al
je 0x1002c5be
cmp byte [esi + 0x1dd0], 0
mov dword [ebp - 4], 0x1e
je 0x1002c58f
mov dword [ebp - 4], 0x3c
fild dword [ebp - 4]
sub esp, 0x10
mov eax, 0x68
mov ecx, esi
fstp dword [esp + 0xc]
fldz
fstp dword [esp + 8]
fld dword [0x1006038c]
fstp dword [esp + 4]
fld dword [0x100605b4]
fstp dword [esp]
call fcn.1002a4b0
pop edi
pop ebx
mov esp, ebp
pop ebp
ret