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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x170
mov eax, dword [0x100c6040]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x118d320], 5
push esi
push edi
jne 0x10085290
cmp dword [0x105e4ddc], 1
jne 0x10085290
cmp dword [0x105e4dc8], 0
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
jne 0x10084e8b
xorps xmm0, xmm0
movss dword [ebp - 0x16c], xmm0
jmp 0x10084edc
call esi
sub eax, dword [0x105e4dd0]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x100bd150]
mov eax, dword [0x105e4dc8]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
mulss xmm1, dword [0x100bcb78]
shr eax, 0x1f
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x100bd150]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
movss dword [ebp - 0x16c], xmm1
sub esp, 0x10
mov edi, 0x799791
mov dword [esp + 0xc], 0x41900000
mov dword [esp + 8], 0x43200000
mov dword [esp + 4], 0x42c80000
mov dword [esp], 0x43700000
push 0x7a65
call edi
movss xmm0, dword [0x100bcb78]
add esp, 4
minss xmm0, dword [ebp - 0x16c]
mov dword [esp + 0xc], 0x41000000
movss dword [esp + 8], xmm0
mov dword [esp + 4], 0x42d20000
mov dword [esp], 0x43750000
push 0x7a66
call edi
mov eax, dword [0x105e4dd8]
add esp, 0x14
cmp eax, 3
ja case.default.0x10084f4e
jmp dword [eax*4 + 0x100852a0]
push 1
jmp 0x10084f63
push 2
jmp 0x10084f63
push 3
jmp 0x10084f63
push 4
mov ecx, 0x10173658
call fcn.10036b80
push eax
lea eax, [ebp - 0x108]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 8
lea eax, [ebp - 0x108]
push 0
push ecx
mov dword [esp], 0x43200000
push 3
push 0
push 0xffffffffffffffff
push 0x69
push 0xf0
push eax
mov eax, 0x7ff712
call eax
add esp, 0x20
call esi
sub eax, dword [0x105e4dd0]
cmp eax, dword [0x105e4dc8]
jbe 0x10085008
mov dword [0x105e4ddc], 2
mov dword [0x105e4dd8], 0
call esi
mov dword [0x105e4dd4], eax
call esi
mov dword [0x105e4dd0], eax
mov ecx, 0x8b15a70
mov eax, 0x633474
mov dword [0x105e4dcc], 0
mov dword [0x105e4dc8], 0
call eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1008c0ce
mov esp, ebp
pop ebp
ret
call esi
sub eax, dword [0x105e4dd4]
cmp eax, dword [0x105e4dcc]
jb 0x10085290
mov eax, dword [0x105e4dd8]
sub eax, 0
je 0x10085230
sub eax, 1
jne 0x10085289
mov eax, dword [0x105e4dc4]
test eax, eax
jne 0x10085289
push 0x5f
push eax
lea eax, [ebp - 0x167]
mov dword [0x105e4dc4], 1
push eax
call fcn.1008e1e0
movzx eax, byte [0x105e4e08]
add esp, 0xc
xor al, 0xfc
mov dword [ebp - 0x168], 0x1f160c3
mov byte [ebp - 0x164], al
movzx eax, byte [0x105e4e09]
xor al, 0xcf
mov byte [ebp - 0x163], al
movzx eax, byte [0x105e4e0a]
xor al, 0xab
mov byte [ebp - 0x162], al
movzx eax, byte [0x105e4e0b]
xor al, 0xfc
mov byte [ebp - 0x161], al
movzx eax, byte [0x105e4e0c]
xor al, 0xcf
mov byte [ebp - 0x160], al
movzx eax, byte [0x105e4e0d]
xor al, 0xab
mov byte [ebp - 0x15f], al
movzx eax, byte [0x105e4e0e]
xor al, 0xfc
mov byte [ebp - 0x15e], al
movzx eax, byte [0x105e4e0f]
xor al, 0xcf
mov byte [ebp - 0x15d], al
movzx eax, byte [0x105e4e10]
xor al, 0xab
mov byte [ebp - 0x15c], al
movzx eax, byte [0x105e4e11]
xor al, 0xfc
mov byte [ebp - 0x15b], al
movzx eax, byte [0x105e4dfc]
xor al, 0xfc
mov byte [ebp - 0x15a], al
movzx eax, byte [0x105e4dfd]
xor al, 0xcf
mov byte [ebp - 0x159], al
movzx eax, byte [0x105e4dfe]
xor al, 0xab
mov byte [ebp - 0x158], al
movzx eax, byte [0x105e4dff]
xor al, 0xfc
mov byte [ebp - 0x157], al
movzx eax, byte [0x105e4e00]
xor al, 0xcf
mov byte [ebp - 0x156], al
movzx eax, byte [0x105e4e01]
xor al, 0xab
mov byte [ebp - 0x155], al
movzx eax, byte [0x105e4e02]
xor al, 0xfc
mov byte [ebp - 0x154], al
movzx eax, byte [0x105e4e03]
xor al, 0xcf
mov byte [ebp - 0x153], al
movzx eax, byte [0x105e4e04]
xor al, 0xab
mov byte [ebp - 0x152], al
movzx eax, byte [0x105e4e05]
xor al, 0xfc
mov byte [ebp - 0x151], al
call esi
mov dword [ebp - 0x146], eax
movzx eax, byte [0x118ef48]
dec al
mov byte [ebp - 0x142], al
movzx eax, byte [0x118ef49]
sub al, 2
mov byte [ebp - 0x141], al
movzx eax, byte [0x118ef4a]
sub al, 3
mov byte [ebp - 0x140], al
movzx eax, byte [0x118ef4b]
sub al, 4
mov byte [ebp - 0x13f], al
movzx eax, byte [0x118ef4c]
sub al, 5
mov byte [ebp - 0x12d], 0
mov byte [ebp - 0x13e], al
mov eax, 0x118ef50
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x13d], xmm0
call fcn.10085de0
mov edx, 0x60
lea ecx, [ebp - 0x168]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x12c], xmm0
movups xmm0, xmmword [eax + 0x10]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x10c], eax
movups xmmword [ebp - 0x11c], xmm0
call fcn.10084a30
jmp 0x10085289
movzx eax, word [0x105dd574]
push eax
push 0x105e4e14
call fcn.10085440
add esp, 8
test eax, eax
je 0x10085289
mov dword [0x8b159e4], 1
mov dword [0x105e4ddc], 1
mov dword [0x105e4dd8], 1
call esi
mov dword [0x105e4dd4], eax
call esi
mov dword [0x105e4dd0], eax
mov dword [0x105e4dcc], 0x2710
mov dword [0x105e4dc8], 0x7530
call esi
mov dword [0x105e4dd4], eax
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.1008c0ce
mov esp, ebp
pop ebp
ret