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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
cmp byte [0x101d8385], 0
je 0x1005eb12
push ebx
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov ecx, dword [0x10304760]
mov esi, eax
movss xmm0, dword [0x101d84b0]
mov ebx, dword [ebp + 8]
mov dword [ebp - 4], esi
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x1005e8ac
comiss xmm1, dword [0x101d84b8]
ja 0x1005e8ac
movd xmm1, dword [0x10304768]
movss xmm0, dword [0x101d84b4]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x1005e8ac
comiss xmm1, dword [0x101d84bc]
ja 0x1005e8ac
cmp ebx, 0x201
jne 0x1005e882
pop edi
pop esi
mov byte [0x101d84c4], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
sub eax, dword [0x101d84c0]
mov byte [0x101d84c4], 0
cmp eax, 0x1f4
jb 0x1005eb0f
call edi
mov dword [0x101d84c0], eax
call fcn.1005e7d0
mov ecx, dword [0x10304760]
movss xmm0, dword [0x101d8270]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x1005e938
comiss xmm1, dword [0x101d8278]
ja 0x1005e938
movd xmm1, dword [0x10304768]
movss xmm0, dword [0x101d8274]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x1005e938
comiss xmm1, dword [0x101d827c]
ja 0x1005e938
mov eax, dword [0x105718ac]
inc eax
cmp eax, 1
jle 0x1005e938
cmp ebx, 0x201
jne 0x1005e90d
pop edi
pop esi
mov byte [0x101d8284], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, esi
mov byte [0x101d8284], 0
sub eax, dword [0x101d8280]
cmp eax, 0x64
jb 0x1005eb0f
call edi
dec dword [0x105718ac]
mov ecx, dword [0x10304760]
mov dword [0x101d8280], eax
movss xmm0, dword [0x101d82b0]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x1005e9b5
comiss xmm1, dword [0x101d82b8]
ja 0x1005e9b5
movd xmm1, dword [0x10304768]
movss xmm0, dword [0x101d82b4]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x1005e9b5
comiss xmm1, dword [0x101d82bc]
ja 0x1005e9b5
mov eax, dword [0x105718ac]
inc eax
cmp eax, dword [0x105718b0]
jge 0x1005e9b5
cmp ebx, 0x201
je 0x1005eb08
mov eax, esi
mov byte [0x101d82c4], 0
sub eax, dword [0x101d82c0]
cmp eax, 0x64
jb 0x1005eb0f
call edi
inc dword [0x105718ac]
mov dword [0x101d82c0], eax
xor esi, esi
cmp dword [0x105718a8], esi
jle 0x1005eb0f
mov eax, 0x879340c
mov eax, dword [eax]
sub eax, 0x198
cmp eax, 0x10
ja 0x1005eafa
movss xmm0, dword [0x101d8374]
lea eax, [esi + esi*4]
addss xmm0, dword [0x1017eaf8]
shl eax, 2
mov ecx, dword [0x8793410]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
cvttss2si eax, xmm1
movzx eax, ax
cmp ecx, eax
jl 0x1005eafa
addss xmm1, dword [0x1017e9d0]
cvttss2si eax, xmm1
movzx eax, ax
cmp ecx, eax
jg 0x1005eafa
cmp ebx, 0x201
je 0x1005eb08
mov eax, dword [ebp - 4]
sub eax, dword [0x101d82c0]
mov byte [0x101d82c4], 0
cmp eax, 0x64
jb 0x1005eb0f
mov eax, dword [0x105718ac]
lea eax, [eax + eax*4]
lea eax, [esi + eax*2]
imul eax, eax, 0x34
cmp byte [eax + 0x10570488], 0
je 0x1005eb0f
call edi
mov dword [0x101d82c0], eax
mov eax, dword [0x105718ac]
lea eax, [eax + eax*4]
lea edi, [esi + eax*2]
imul eax, edi, 0x34
cmp byte [eax + 0x10570483], 0
je 0x1005ea9f
call fcn.1005e7d0
mov eax, dword [0x105718ac]
lea eax, [eax + eax*4]
lea eax, [esi + eax*2]
mov dword [0x105718b4], eax
call fcn.1005ef80
jmp 0x1005eaf4
push edi
mov ecx, 0x10570458
call fcn.1005f030
mov ecx, eax
test ecx, ecx
je 0x1005eaf4
mov dword [0x105718b4], edi
mov dl, 0x24
movq xmm0, qword [ecx + 4]
mov ax, word [ecx + 0xc]
movq qword [ebp - 0x24], xmm0
xorps xmm0, xmm0
mov word [ebp - 0x1c], ax
mov al, byte [ecx + 0xe]
lea ecx, [ebp - 0x28]
movzx edx, dl
mov dword [ebp - 0x28], 0x5ff24c1
mov byte [ebp - 0x1a], al
movups xmmword [ebp - 0x19], xmm0
mov dword [ebp - 9], 0
mov byte [ebp - 5], 0
call fcn.100acac0
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
inc esi
cmp esi, dword [0x105718a8]
jge 0x1005eb0f
jmp 0x1005e9c3
mov byte [0x101d82c4], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4