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

Disassembly:
sub esp, 0x3c
mov dword [0x100ad864], 1
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
push esi
mov esi, ecx
push 0x3e8
call ebx
mov ecx, esi
call fcn.10006070
test eax, eax
jle 0x100012b7
push ebp
push edi
push 0x3e8
call ebx
call fcn.100203b0
push 0x3e8
call ebx
push 1
push 0x4ec
call fcn.10025600
mov ebp, dword [esp + 0x58]
add esp, 8
cmp eax, 0x32
je 0x10001410
push 0
push 1
push 0
push 0x10094280
push ebp
call fcn.1002ab30
push 1
push 0x4ec
mov dword [0x1009a484], 0x435b0a3d
call fcn.10025600
add esp, 0x1c
cmp eax, 0x32
je 0x10001410
xor edi, edi
mov ecx, dword [0x100ad54c]
test ecx, ecx
je 0x100013f8
mov eax, dword [0x100ad550]
sub eax, ecx
sar eax, 3
cmp edi, eax
jae 0x100013f8
mov ecx, esi
call fcn.100067a0
cmp eax, 0x4f
je 0x1000136d
mov ecx, esi
call fcn.100067a0
cmp eax, 0x232
jne 0x100013f2
mov eax, dword [0x100ad54c]
push 1
push 1
push 0x3f800000
fild dword [eax + edi*8 + 4]
sub esp, 8
mov ecx, esi
fstp dword [esp + 4]
fild dword [eax + edi*8]
fstp dword [esp]
call fcn.10005ba0
push 0x3e8
call ebx
mov eax, dword [0x100ad54c]
push 0x10094280
sub esp, 8
mov ecx, esi
fild dword [eax + edi*8 + 4]
fstp dword [esp + 4]
fild dword [eax + edi*8]
fstp dword [esp]
push 0x10094274
call fcn.100089a0
push 0x1f4
call ebx
mov eax, dword [0x100ad7e4]
mov ecx, dword [eax + 0x3b4]
test ecx, ecx
je 0x100013de
push 0xfa0
call ebx
push 1
push 0x4ec
call fcn.10025600
add esp, 8
cmp eax, 0x32
je 0x10001410
inc edi
jmp 0x1000132f
push 1
push 0x4ec
call fcn.10025600
add esp, 8
cmp eax, 0x32
jne 0x1000132d
call fcn.100203c0
mov edi, eax
test edi, edi
jge 0x1000141d
xor edi, edi
push 4
push 0x4ec
mov dword [esp + 0x3c], 0x425c0000
mov dword [esp + 0x40], 0x42500000
mov dword [esp + 0x44], 0x42700000
mov dword [esp + 0x48], 0x42500000
mov dword [esp + 0x4c], 0x42700000
mov dword [esp + 0x50], 0x425c0000
mov dword [esp + 0x24], 0x42940000
mov dword [esp + 0x28], 0x42880000
mov dword [esp + 0x2c], 0x42880000
mov dword [esp + 0x30], 0x42900000
mov dword [esp + 0x34], 0x42900000
mov dword [esp + 0x38], 0x42880000
call fcn.10025600
add esp, 8
cmp eax, 1
je 0x1000157e
mov ecx, esi
call fcn.100067a0
cmp eax, 0x4f
je 0x100014af
mov ecx, esi
call fcn.100067a0
cmp eax, 0x232
jne 0x100014c9
mov ecx, dword [esp + edi*4 + 0x1c]
mov edx, dword [esp + edi*4 + 0x34]
push 1
push 1
push 0x3f800000
push ecx
push edx
mov ecx, esi
call fcn.10005ba0
push 0
push 1
push 0
push 0x100a1990
push ebp
call fcn.1002ab30
add esp, 0x14
mov ecx, esi
call fcn.100067a0
cmp eax, 0x4f
je 0x100014fb
mov ecx, esi
call fcn.100067a0
cmp eax, 0x232
jne 0x1000157e
push 4
push 0x4ec
call fcn.10025600
add esp, 8
cmp eax, 1
je 0x1000157e
push 0x3e8
call ebx
mov ecx, esi
call fcn.100067a0
cmp eax, 0x4f
je 0x10001530
mov ecx, esi
call fcn.100067a0
cmp eax, 0x232
jne 0x1000156a
mov eax, dword [esp + edi*4 + 0x1c]
mov ecx, dword [esp + edi*4 + 0x34]
push eax
push ecx
mov ecx, esi
call fcn.10005e60
fcomp dword [0x100844d4]
fnstsw ax
and eax, 0x4100
jne 0x1000156a
mov edx, dword [esp + edi*4 + 0x1c]
mov eax, dword [esp + edi*4 + 0x34]
push 1
push 1
push 0x3f800000
push edx
push eax
mov ecx, esi
call fcn.10005ba0
push 4
push 0x4ec
call fcn.10025600
add esp, 8
cmp eax, 1
jne 0x1000150f
push 2
push 0x4ec
call fcn.10025600
add esp, 8
cmp eax, 0xa
je 0x10001631
push 0
push 1
push 0
push 0x100a1990
push 5
call fcn.1002ab30
add esp, 0x14
mov ecx, esi
call fcn.100067a0
cmp eax, 0x4f
je 0x100015c5
mov ecx, esi
call fcn.100067a0
cmp eax, 0x232
jne 0x10001631
test edi, edi
je 0x100015e8
cmp edi, 2
je 0x100015e8
cmp edi, 4
je 0x100015e8
push 1
push 1
push 0x3f800000
push 0x42ba0000
push 0x429e0000
jmp 0x100015fb
push 1
push 1
push 0x3f800000
push 0x42ba0000
push 0x42280000
mov ecx, esi
call fcn.10005ba0
push 2
push 0x4ec
call fcn.10025600
add esp, 8
cmp eax, 0xa
je 0x10001631
push 0x3e8
call ebx
push 2
push 0x4ec
call fcn.10025600
add esp, 8
cmp eax, 0xa
jne 0x10001616
push 0
push 1
push 0
push 0x100a1990
push ebp
call fcn.1002ab30
push 3
push 0x4ec
call fcn.10025600
add esp, 0x1c
cmp eax, 1
je 0x1000173c
mov ecx, esi
call fcn.100067a0
cmp eax, 0x4f
je 0x10001674
mov ecx, esi
call fcn.100067a0
cmp eax, 0x232
jne 0x1000168e
mov ecx, dword [esp + edi*4 + 0x1c]
mov edx, dword [esp + edi*4 + 0x34]
push 1
push 1
push 0x3f800000
push ecx
push edx
mov ecx, esi
call fcn.10005ba0
mov ecx, esi
call fcn.100067a0
cmp eax, 0x4f
je 0x100016ac
mov ecx, esi
call fcn.100067a0
cmp eax, 0x232
jne 0x1000172f
push 3
push 0x4ec
call fcn.10025600
add esp, 8
cmp eax, 1
je 0x1000172f
push 0x3e8
call ebx
mov ecx, esi
call fcn.100067a0
cmp eax, 0x4f
je 0x100016e1
mov ecx, esi
call fcn.100067a0
cmp eax, 0x232
jne 0x1000171b
mov eax, dword [esp + edi*4 + 0x1c]
mov ecx, dword [esp + edi*4 + 0x34]
push eax
push ecx
mov ecx, esi
call fcn.10005e60
fcomp dword [0x100844d4]
fnstsw ax
and eax, 0x4100
jne 0x1000171b
mov edx, dword [esp + edi*4 + 0x1c]
mov eax, dword [esp + edi*4 + 0x34]
push 1
push 1
push 0x3f800000
push edx
push eax
mov ecx, esi
call fcn.10005ba0
push 3
push 0x4ec
call fcn.10025600
add esp, 8
cmp eax, 1
jne 0x100016c0
push 0x10094260
call fcn.1001b690
add esp, 4
mov ecx, esi
call fcn.100067a0
cmp eax, 0x4f
je 0x1000175a
mov ecx, esi
call fcn.100067a0
cmp eax, 0x232
jne 0x10001888
push 5
push 0x4ec
call fcn.10025600
add esp, 8
cmp eax, 1
je 0x100017dd
push 0x7d0
call ebx
mov ecx, esi
call fcn.100067a0
cmp eax, 0x4f
je 0x1000178f
mov ecx, esi
call fcn.100067a0
cmp eax, 0x232
jne 0x100017c9
mov ecx, dword [esp + edi*4 + 0x1c]
mov edx, dword [esp + edi*4 + 0x34]
push ecx
push edx
mov ecx, esi
call fcn.10005e60
fcomp dword [0x100844d4]
fnstsw ax
and eax, 0x4100
jne 0x100017c9
mov eax, dword [esp + edi*4 + 0x1c]
mov ecx, dword [esp + edi*4 + 0x34]
push 1
push 1
push 0x3f800000
push eax
push ecx
mov ecx, esi
call fcn.10005ba0
push 5
push 0x4ec
call fcn.10025600
add esp, 8
cmp eax, 1
jne 0x1000176e
push 0x10094244
call fcn.1001b690
lea edx, [esp + 0x54]
lea eax, [esp + 0x18]
push edx
lea ecx, [esp + 0x20]
push eax
or ebp, 0xffffffff
push ecx
push 0x1009423c
mov dword [esp + 0x64], ebp
call fcn.10021cf0
mov eax, dword [esp + 0x64]
add esp, 0x14
cmp eax, ebp
push 1
push 1
push 0x3f800000
je 0x10001827
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
push edx
push eax
jmp 0x10001831
mov ecx, dword [esp + edi*4 + 0x28]
mov edx, dword [esp + edi*4 + 0x40]
push ecx
push edx
mov ecx, esi
call fcn.10005ba0
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov ebp, eax
lea eax, [esp + 0x10]
mov dword [esp + 0x10], 0xffffffff
push eax
call fcn.10024c40
mov eax, dword [esp + 0x14]
add esp, 4
cmp eax, 0xffffffff
je 0x10001869
push eax
call fcn.10020560
add esp, 4
push 0x3e8
call ebx
call edi
sub eax, ebp
cmp eax, 0x7530
jbe 0x10001842
push 0x10094228
call fcn.1001b690
add esp, 4
mov ecx, esi
call fcn.100067a0
pop edi
cmp eax, 0x4f
pop ebp
je 0x100018a4
mov ecx, esi
call fcn.100067a0
cmp eax, 0x232
jne 0x100018e5
call fcn.100203a0
push 0x3e8
call ebx
push 1
push 1
push 0x3f800000
push 0x41700000
push 0x41e00000
mov ecx, esi
call fcn.10005ba0
push 0x3e8
call ebx
push 1
mov ecx, esi
call fcn.10006730
test eax, eax
je 0x100018ca
push 0x3e8
call ebx
pop esi
mov dword [0x100ad864], 0
pop ebx
add esp, 0x3c
ret 4