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

Disassembly:
sub esp, 0x14
push ebx
push ebp
mov ebp, ecx
xor ebx, ebx
cmp dword [ebp + 0x158], ebx
push esi
push edi
je 0x10112646
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
mov ecx, dword [ebp + 0x158]
dec ecx
je 0x1011258b
dec ecx
je 0x101123e8
dec ecx
jne 0x10112646
mov edx, dword [ebp + 0x168]
lea ecx, [ebp + 0x16c]
add edx, dword [ecx]
cmp eax, edx
jle 0x10112646
mov dword [ecx], ebx
mov ecx, ebp
mov dword [ebp + 0x15c], ebx
mov byte [ebp + 0x160], bl
mov dword [ebp + 0x170], ebx
call fcn.1010f943
jmp 0x10112640
mov ecx, dword [ebp + 0x168]
lea edi, [ebp + 0x16c]
add ecx, dword [edi]
cmp eax, ecx
jle 0x10112646
mov ecx, dword [0x10a0b488]
xor eax, eax
mov al, byte [ebp + 0x160]
push ebx
push eax
push dword [ebp + 0x15c]
push 2
call fcn.100ee516
mov ecx, ebp
call fcn.1010f943
fldz
push ebx
push dword [ebp + 0x15c]
mov dword [ebp + 0x23cc], 0x17
push ecx
fstp dword [esp]
push 1
push 1
mov ecx, ebp
call fcn.10110f2e
movzx eax, byte [ebp + 0x160]
mov ecx, dword [0x109ff66c]
push eax
push ebx
push dword [ebp + 0x2430]
lea eax, [esp + 0x20]
push 2
push dword [ebp + 0x15c]
push eax
call fcn.1001f0a5
mov eax, dword [ebp + 0x170]
cmp eax, 0x1b
je 0x1011247b
cmp eax, 0x1c
jne 0x1011249f
push dword [ebp + 0x2428]
mov ecx, dword [0x10a0b358]
push dword [ebp + 0x2430]
push ebx
push dword [ebp + 0x15c]
push dword [ebp + 0x180]
call fcn.1011e4ff
mov ecx, dword [0x10a0b360]
xor eax, eax
mov al, byte [ebp + 0x160]
push edi
push eax
push dword [ebp + 0x15c]
call fcn.10004d87
test al, al
jne 0x101124c0
mov dword [edi], ebx
call esi
mov dword [ebp + 0x168], eax
mov eax, dword [ebp + 0x15c]
cmp eax, 0xbd4
je 0x10112515
cmp eax, 0xbd5
je 0x10112515
cmp eax, 0xbe3
je 0x10112515
cmp eax, 0xbf5
je 0x10112515
cmp eax, 0xd21
je 0x10112515
cmp eax, 0xbc9
je 0x10112515
cmp eax, 0xcbf
je 0x10112515
cmp dword [ebp + 0x170], 0x1b
je 0x10112515
mov ecx, ebp
mov byte [esp + 0x13], bl
call fcn.10110395
jmp 0x10112521
mov ecx, ebp
mov byte [esp + 0x13], 1
call fcn.10110423
mov eax, dword [ebp + 0x170]
cmp eax, 0x18
je 0x1011257c
cmp eax, 0x16
je 0x10112553
cmp eax, 0x19
je 0x10112553
cmp eax, 0x1a
je 0x10112553
cmp eax, 0x1b
je 0x10112553
cmp byte [esp + 0x13], 1
je 0x10112553
movzx eax, byte [ebp + 0x160]
push eax
push 1
jmp 0x1011255c
movzx eax, byte [ebp + 0x160]
push eax
push ebx
push dword [ebp + 0x2430]
mov ecx, dword [0x109ff66c]
push 5
push dword [ebp + 0x15c]
lea eax, [ebp + 0x164]
push eax
call fcn.1001f0a5
mov dword [ebp + 0x158], 3
jmp 0x10112646
push ebx
fldz
push dword [ebp + 0x15c]
mov dword [ebp + 0x23cc], 0x15
push ecx
fstp dword [esp]
push 1
push 1
mov ecx, ebp
call fcn.10110f2e
mov ecx, ebp
call fcn.1010f943
movzx eax, byte [ebp + 0x160]
mov ecx, dword [0x109ff66c]
push eax
push 1
push dword [ebp + 0x2430]
lea eax, [ebp + 0x164]
push ebx
push dword [ebp + 0x15c]
push eax
call fcn.1001f0a5
call esi
mov dword [ebp + 0x168], eax
mov ecx, dword [0x10a0b360]
xor eax, eax
mov al, byte [ebp + 0x160]
lea esi, [ebp + 0x16c]
push esi
push eax
push dword [ebp + 0x15c]
call fcn.10004dd5
test al, al
jne 0x1011260c
mov dword [esi], ebx
mov ecx, dword [ebp + 0x2420]
add dword [esi], 0x64
lea eax, [esp + 0x18]
push eax
call fcn.10117125
push 2
pop ebx
push ebx
sub esp, 0xc
mov edi, esp
push dword [ebp + 0x2428]
mov esi, eax
push dword [ebp + 0x15c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ecx, ebp
movsd dword es:[edi], dword [esi]
call fcn.10110266
mov dword [ebp + 0x158], ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x14
ret