Function at 0x180001ee0
Capabilities:
Check for unmoving mouse cursor
Log keystrokes via polling

Disassembly:
mov r11, rsp
push rbp
push rbx
push rsi
push r14
push r15
lea rbp, [r11 - 0x58]
sub rsp, 0x130
movaps xmmword [r11 - 0x58], xmm6
movaps xmmword [r11 - 0x68], xmm7
movaps xmmword [r11 - 0x78], xmm8
movaps xmmword [r11 - 0x88], xmm9
movaps xmmword [r11 - 0x98], xmm10
movaps xmmword [r11 - 0xa8], xmm11
movaps xmmword [r11 - 0xd8], xmm14
mov rax, qword [0x180009008]
xor rax, rsp
mov qword [rsp + 0x68], rax
mov rsi, qword [rbp + 0x80]
xor r14d, r14d
mov qword [r11 - 0x30], rdi
xorps xmm0, xmm0
movaps xmmword [r11 - 0xb8], xmm12
movaps xmm8, xmm3
movaps xmmword [r11 - 0xc8], xmm13
movaps xmm11, xmm2
mov rdx, qword [rsi + 0x58]
movaps xmm7, xmm1
sub rdx, qword [rsi + 0x50]
mov r15, rcx
sar rdx, 3
movaps xmmword [rsp + 0x70], xmm15
mov qword [rsp + 0x58], r14
movdqu xmmword [rsp + 0x48], xmm0
test rdx, rdx
je 0x180001fb6
lea rcx, [rsp + 0x48]
call fcn.180004730
mov rdx, qword [rsi + 0x50]
mov rbx, qword [rsi + 0x58]
mov rdi, qword [rsp + 0x48]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
sar rbx, 3
lea rax, [rdi + rbx*8]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.180001790
mov rcx, qword [r15]
movaps xmm3, xmm8
movss xmm10, dword [0x180006b8c]
movaps xmm2, xmm11
mov dword [rsp + 0x30], r14d
movaps xmm1, xmm7
movd xmm0, eax
mov rax, qword [rcx]
cvtdq2ps xmm0, xmm0
mov dword [rsp + 0x28], 0xff0f0f0f
movaps xmm6, xmm0
mulss xmm0, xmm10
mulss xmm6, dword [0x180006ba8]
addss xmm6, dword [0x180006ba8]
addss xmm6, xmm0
movss dword [rsp + 0x20], xmm6
call qword [rax + 0x50]
movaps xmm3, xmm8
movss dword [rsp + 0x20], xmm6
movaps xmm2, xmm11
movaps xmm1, xmm7
mov rcx, r15
call fcn.180001c00
movaps xmm3, xmm8
mov byte [rsp + 0x28], r14b
movaps xmm2, xmm11
movss dword [rsp + 0x20], xmm6
movaps xmm1, xmm7
mov rcx, r15
call fcn.180001d20
cmp qword [rsi + 0x18], 8
mov rax, rsi
jb 0x18000205a
mov rax, qword [rsi]
movss xmm14, dword [0x180006b94]
movaps xmm13, xmm11
movss xmm15, dword [0x180006b9c]
addss xmm13, xmm14
mov rcx, qword [r15]
movaps xmm1, xmm7
mov qword [rsp + 0x30], rax
addss xmm1, xmm14
movaps xmm3, xmm15
mov dword [rsp + 0x40], 0xffbfbfbf
mov eax, dword [rsp + 0x40]
movaps xmm12, xmm13
movd r9d, xmm3
subss xmm12, dword [0x180006b90]
movd edx, xmm1
mov qword [rsp + 0x120], r12
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x118], r13
movaps xmm2, xmm12
mov dword [rsp + 0x20], eax
movd r8d, xmm2
call fcn.1800011e0
mov ecx, dword [rsi + 0x20]
movss xmm9, dword [0x180006ba0]
sub ecx, 1
je 0x180002a28
sub ecx, 1
je 0x1800027d6
sub ecx, 1
je 0x180002573
sub ecx, 1
je 0x18000239e
cmp ecx, 2
jne 0x180002b9b
movzx ecx, byte [rsi + 0x4a]
lea rbx, [rsi + 0x28]
test cl, cl
je 0x18000211f
mov rax, qword [rsi + 0x30]
mov edx, dword [rax]
jmp 0x180002121
mov edx, dword [rbx]
mov r8, qword [rsi + 0x40]
cmp dword [r8], edx
jle 0x18000213c
test cl, cl
je 0x180002134
mov rax, qword [rsi + 0x30]
jmp 0x180002137
mov rax, rbx
mov eax, dword [rax]
mov dword [r8], eax
mov rax, qword [rsi + 0x40]
mov ecx, dword [rsi + 0x24]
cmp dword [rax], ecx
jge 0x180002149
mov dword [rax], ecx
mov rcx, qword [rsi + 0x40]
mov eax, dword [rsi + 0x24]
movss xmm14, dword [0x180006b80]
movss xmm13, dword [0x180006b84]
cmp dword [rcx], eax
jle 0x1800021f8
movaps xmm9, xmm8
lea rcx, [rsp + 0x60]
addss xmm9, xmm7
movaps xmm10, xmm11
addss xmm10, xmm14
subss xmm9, dword [0x180006bd4]
call qword [sym.imp.USER32.dll_GetCursorPos]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, rax
lea rdx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_ScreenToClient]
movd xmm0, dword [rsp + 0x60]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm9
jb 0x1800021f8
addss xmm9, dword [0x180006ba0]
comiss xmm9, xmm0
jb 0x1800021f8
movd xmm1, dword [rsp + 0x64]
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm10
jb 0x1800021f8
movaps xmm0, xmm6
subss xmm0, xmm13
addss xmm0, xmm10
comiss xmm0, xmm1
jb 0x1800021f8
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x1800021f8
mov rax, qword [rsi + 0x40]
dec dword [rax]
cmp byte [rsi + 0x4a], r14b
je 0x180002202
mov rbx, qword [rsi + 0x30]
mov rcx, qword [rsi + 0x40]
mov eax, dword [rbx]
cmp dword [rcx], eax
jge 0x18000229b
movaps xmm9, xmm8
lea rcx, [rsp + 0x60]
addss xmm9, xmm7
movaps xmm10, xmm11
addss xmm10, xmm14
subss xmm9, dword [0x180006bac]
call qword [sym.imp.USER32.dll_GetCursorPos]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, rax
lea rdx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_ScreenToClient]
movd xmm0, dword [rsp + 0x60]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm9
jb 0x18000229b
addss xmm9, dword [0x180006ba0]
comiss xmm9, xmm0
jb 0x18000229b
movd xmm0, dword [rsp + 0x64]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm10
jb 0x18000229b
subss xmm6, xmm13
addss xmm6, xmm10
comiss xmm6, xmm0
jb 0x18000229b
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x18000229b
mov rax, qword [rsi + 0x40]
inc dword [rax]
mov rcx, qword [r15]
lea rax, [0x180006308]
mov qword [rsp + 0x30], rax
movaps xmm6, xmm8
addss xmm6, xmm7
mov dword [rsp + 0x40], 0xffbfbfbf
mov eax, dword [rsp + 0x40]
movaps xmm3, xmm15
movaps xmm2, xmm12
movd r9d, xmm3
movd r8d, xmm2
mov dword [rsp + 0x28], 2
movaps xmm1, xmm6
mov dword [rsp + 0x20], eax
subss xmm1, dword [0x180006bcc]
movd edx, xmm1
call fcn.1800011e0
subss xmm6, dword [0x180006bb0]
mov rcx, qword [r15]
lea rax, [0x180006310]
mov qword [rsp + 0x30], rax
movaps xmm3, xmm15
movaps xmm2, xmm12
mov dword [rsp + 0x40], 0xffbfbfbf
mov eax, dword [rsp + 0x40]
movaps xmm1, xmm6
movd r9d, xmm3
movd edx, xmm1
movd r8d, xmm2
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], eax
call fcn.1800011e0
mov rax, qword [rsi + 0x40]
movaps xmm3, xmm15
subss xmm6, dword [0x180006bb8]
mov rcx, qword [r15]
movaps xmm2, xmm12
mov qword [rsp + 0x38], rax
lea rax, [0x180006318]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x40], 0xffbfbfbf
mov eax, dword [rsp + 0x40]
movaps xmm1, xmm6
movd edx, xmm1
movd r9d, xmm3
movd r8d, xmm2
mov dword [rsp + 0x28], 0xc
mov dword [rsp + 0x20], eax
call fcn.1800011e0
movss xmm14, dword [0x180006b94]
jmp 0x180002b89
addss xmm7, dword [0x180006bbc]
addss xmm8, dword [0x180006bf0]
lea rcx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_GetCursorPos]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, rax
lea rdx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_ScreenToClient]
mov rcx, qword [r15]
movaps xmm3, xmm8
mov dword [rsp + 0x30], r14d
movaps xmm2, xmm11
mov dword [rsp + 0x28], 0xff10232e
movaps xmm1, xmm7
movss dword [rsp + 0x20], xmm6
mov rax, qword [rcx]
call qword [rax + 0x50]
mov rax, qword [rsi + 0x40]
mov ecx, dword [rsi + 0x28]
cmp dword [rax], ecx
jle 0x180002402
mov dword [rax], ecx
mov rax, qword [rsi + 0x40]
mov ecx, dword [rsi + 0x24]
cmp dword [rax], ecx
jge 0x18000240f
mov dword [rax], ecx
mov rax, qword [rsi + 0x40]
movd xmm2, dword [rsp + 0x60]
cvtdq2ps xmm2, xmm2
mov ecx, dword [rax]
sub ecx, dword [rsi + 0x24]
mov eax, dword [rsi + 0x28]
sub eax, dword [rsi + 0x24]
comiss xmm2, xmm7
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm8
divss xmm1, xmm0
cvttss2si ebx, xmm1
jb 0x1800024b6
movaps xmm0, xmm8
addss xmm0, xmm7
comiss xmm0, xmm2
jb 0x1800024b6
movd xmm1, dword [rsp + 0x64]
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm11
jb 0x1800024b6
movaps xmm0, xmm11
addss xmm0, xmm9
comiss xmm0, xmm1
jb 0x1800024b6
mov ecx, 1
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x1800024b6
mov eax, dword [rsi + 0x28]
sub eax, dword [rsi + 0x24]
movd xmm0, dword [rsp + 0x60]
cvtdq2ps xmm0, xmm0
movd xmm1, eax
mov rax, qword [rsi + 0x40]
subss xmm0, xmm7
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm0
divss xmm1, xmm8
addss xmm1, dword [0x180006b80]
cvttss2si ecx, xmm1
mov dword [rax], ecx
mov rcx, qword [r15]
movaps xmm2, xmm11
movss xmm6, dword [0x180006ba4]
movaps xmm1, xmm7
movd xmm3, ebx
mov dword [rsp + 0x30], r14d
mov rax, qword [rcx]
cvtdq2ps xmm3, xmm3
mov dword [rsp + 0x28], 0xffff3031
movss dword [rsp + 0x20], xmm6
call qword [rax + 0x50]
movaps xmm3, xmm8
movss dword [rsp + 0x20], xmm6
movaps xmm2, xmm11
movaps xmm1, xmm7
mov rcx, r15
call fcn.180001c00
mov rax, qword [rsi + 0x40]
movaps xmm1, xmm8
mulss xmm1, dword [0x180006b7c]
movaps xmm3, xmm15
mov rcx, qword [r15]
movaps xmm2, xmm13
mov dword [rsp + 0x40], 0xffbfbfbf
mov eax, dword [rax]
mov dword [rsp + 0x38], eax
addss xmm1, xmm7
lea rax, [0x180006318]
movd r9d, xmm3
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x40]
movd r8d, xmm2
movd edx, xmm1
mov dword [rsp + 0x28], 0xc
mov dword [rsp + 0x20], eax
call fcn.1800011e0
addss xmm7, dword [0x180006bec]
addss xmm8, dword [0x180006bc0]
jmp 0x180002b9b
mov rax, qword [rsi + 0x40]
movss xmm14, dword [0x180006b80]
movss xmm12, dword [0x180006b84]
cmp dword [rax], r14d
jle 0x180002620
movaps xmm9, xmm8
lea rcx, [rsp + 0x60]
addss xmm9, xmm7
movaps xmm10, xmm11
addss xmm10, xmm14
subss xmm9, dword [0x180006bd4]
call qword [sym.imp.USER32.dll_GetCursorPos]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, rax
lea rdx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_ScreenToClient]
movd xmm0, dword [rsp + 0x60]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm9
jb 0x180002620
addss xmm9, dword [0x180006ba0]
comiss xmm9, xmm0
jb 0x180002620
movd xmm1, dword [rsp + 0x64]
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm10
jb 0x180002620
movaps xmm0, xmm6
subss xmm0, xmm12
addss xmm0, xmm10
comiss xmm0, xmm1
jb 0x180002620
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x180002620
mov rax, qword [rsi + 0x40]
dec dword [rax]
mov rdx, qword [rsi + 0x70]
sub rdx, qword [rsi + 0x68]
mov rax, qword [rsi + 0x40]
sar rdx, 5
dec rdx
movsxd rcx, dword [rax]
cmp rcx, rdx
jae 0x1800026ca
movaps xmm9, xmm8
lea rcx, [rsp + 0x60]
addss xmm9, xmm7
movaps xmm10, xmm11
addss xmm10, xmm14
subss xmm9, dword [0x180006bac]
call qword [sym.imp.USER32.dll_GetCursorPos]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, rax
lea rdx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_ScreenToClient]
movd xmm0, dword [rsp + 0x60]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm9
jb 0x1800026ca
addss xmm9, dword [0x180006ba0]
comiss xmm9, xmm0
jb 0x1800026ca
movd xmm0, dword [rsp + 0x64]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm10
jb 0x1800026ca
subss xmm6, xmm12
addss xmm6, xmm10
comiss xmm6, xmm0
jb 0x1800026ca
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x1800026ca
mov rax, qword [rsi + 0x40]
inc dword [rax]
mov rcx, qword [r15]
lea rax, [0x180006308]
mov qword [rsp + 0x30], rax
movaps xmm6, xmm8
addss xmm6, xmm7
mov dword [rsp + 0x40], 0xffbfbfbf
mov eax, dword [rsp + 0x40]
movaps xmm3, xmm15
movaps xmm2, xmm13
movd r9d, xmm3
movd r8d, xmm2
mov dword [rsp + 0x28], 2
movaps xmm1, xmm6
mov dword [rsp + 0x20], eax
subss xmm1, dword [0x180006bcc]
movd edx, xmm1
call fcn.1800011e0
subss xmm6, dword [0x180006bb0]
mov rcx, qword [r15]
lea rax, [0x180006310]
mov qword [rsp + 0x30], rax
movaps xmm3, xmm15
movaps xmm2, xmm13
mov dword [rsp + 0x40], 0xffbfbfbf
mov eax, dword [rsp + 0x40]
movaps xmm1, xmm6
movd r9d, xmm3
movd edx, xmm1
movd r8d, xmm2
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], eax
call fcn.1800011e0
mov rax, qword [rsi + 0x40]
movsxd rcx, dword [rax]
shl rcx, 5
add rcx, qword [rsi + 0x68]
cmp qword [rcx + 0x18], 8
jb 0x180002782
mov rcx, qword [rcx]
subss xmm6, dword [0x180006bb8]
mov qword [rsp + 0x30], rcx
movaps xmm3, xmm15
mov rcx, qword [r15]
movaps xmm2, xmm13
mov dword [rsp + 0x40], 0xffbfbfbf
mov eax, dword [rsp + 0x40]
movaps xmm1, xmm6
movd r9d, xmm3
movd edx, xmm1
movd r8d, xmm2
mov dword [rsp + 0x28], 0xc
mov dword [rsp + 0x20], eax
call fcn.1800011e0
movss xmm14, dword [0x180006b94]
jmp 0x180002b89
mov rcx, qword [r15]
movaps xmm6, xmm8
movss xmm13, dword [0x180006bcc]
addss xmm6, xmm7
movss xmm14, dword [0x180006b98]
movaps xmm9, xmm11
addss xmm9, dword [0x180006b84]
mov rax, qword [rcx]
movaps xmm3, xmm13
mov dword [rsp + 0x30], r14d
movaps xmm10, xmm6
mov dword [rsp + 0x28], 0xff10232e
subss xmm10, dword [0x180006bd0]
movaps xmm2, xmm9
movss dword [rsp + 0x20], xmm14
movaps xmm1, xmm10
call qword [rax + 0x50]
movaps xmm3, xmm13
movss dword [rsp + 0x20], xmm14
movaps xmm2, xmm9
movaps xmm1, xmm10
mov rcx, r15
call fcn.180001c00
cmp byte [rsi + 0x49], r14b
je 0x180002934
subss xmm6, dword [0x180006bc4]
lea r12, [0x180009040]
mov edi, r14d
mov rbx, r12
nop dword [rax]
mov ecx, dword [rbx]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movaps xmm3, xmm15
mov dword [rsp + 0x40], 0xffbfbfbf
bt ax, 0xf
movd r9d, xmm3
movaps xmm2, xmm12
movaps xmm1, xmm6
movd r8d, xmm2
movd edx, xmm1
jb 0x1800028e4
mov rcx, qword [r15]
lea rax, [0x180006338]
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x28], 0xc
mov dword [rsp + 0x20], eax
call fcn.1800011e0
lea rax, [0x180009750]
inc edi
add rbx, 0x10
cmp rbx, rax
jl 0x180002870
movss xmm14, dword [0x180006b94]
jmp 0x180002b89
mov rax, qword [rsi + 0x40]
mov dword [rax], edi
mov rax, qword [rsi + 0x40]
mov rcx, qword [r15]
movsxd rax, dword [rax]
add rax, rax
mov rax, qword [r12 + rax*8 + 8]
mov qword [rsp + 0x38], rax
lea rax, [0x180006320]
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x28], 0xc
mov dword [rsp + 0x20], eax
call fcn.1800011e0
movss xmm14, dword [0x180006b94]
mov byte [rsi + 0x49], r14b
jmp 0x180002b89
lea rcx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_GetCursorPos]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, rax
lea rdx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_ScreenToClient]
movd xmm0, dword [rsp + 0x60]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm10
jb 0x1800029b2
addss xmm10, xmm13
comiss xmm10, xmm0
jb 0x1800029b2
movd xmm0, dword [rsp + 0x64]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm9
jb 0x1800029b2
addss xmm9, xmm14
comiss xmm9, xmm0
jb 0x1800029b2
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x1800029b2
xor r9d, r9d
mov qword [rsp + 0x20], r14
xor r8d, r8d
xor edx, edx
mov ecx, 0x8004
call qword [sym.imp.USER32.dll_mouse_event]
mov byte [rsi + 0x49], 1
mov rax, qword [rsi + 0x40]
lea r12, [0x180009040]
subss xmm6, dword [0x180006bc4]
mov rcx, qword [r15]
movaps xmm3, xmm15
movaps xmm2, xmm12
mov dword [rsp + 0x40], 0xffbfbfbf
movsxd rax, dword [rax]
add rax, rax
movd r9d, xmm3
movaps xmm1, xmm6
movd r8d, xmm2
movd edx, xmm1
mov rax, qword [r12 + rax*8 + 8]
mov qword [rsp + 0x38], rax
lea rax, [0x180006320]
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x28], 0xc
mov dword [rsp + 0x20], eax
call fcn.1800011e0
movss xmm14, dword [0x180006b94]
jmp 0x180002b89
movss xmm13, dword [0x180006bc8]
movaps xmm6, xmm8
movss xmm12, dword [0x180006b98]
addss xmm6, xmm7
movaps xmm9, xmm11
movss dword [rsp + 0x20], xmm12
addss xmm9, dword [0x180006b84]
movaps xmm3, xmm13
mov rcx, r15
subss xmm6, xmm13
movaps xmm10, xmm9
addss xmm10, dword [0x180006b84]
subss xmm6, xmm14
movaps xmm2, xmm10
movaps xmm1, xmm6
call fcn.180001c00
mov rbx, qword [rsi + 0x40]
lea rcx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_GetCursorPos]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, rax
lea rdx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_ScreenToClient]
movd xmm1, dword [rsp + 0x60]
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm6
jb 0x180002af2
movaps xmm0, xmm6
addss xmm0, xmm13
comiss xmm0, xmm1
jb 0x180002af2
movd xmm0, dword [rsp + 0x64]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm9
jb 0x180002af2
addss xmm9, xmm12
comiss xmm9, xmm0
jb 0x180002af2
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x180002af2
cmp dword [rbx], r14d
mov eax, r14d
sete al
mov dword [rbx], eax
mov rcx, qword [r15]
movaps xmm3, xmm13
mov dword [rsp + 0x30], r14d
movaps xmm2, xmm10
mov dword [rsp + 0x28], 0xff10232e
movaps xmm1, xmm6
movss dword [rsp + 0x20], xmm12
mov rax, qword [rcx]
call qword [rax + 0x50]
mov ecx, dword [rbx]
test ecx, ecx
je 0x180002b43
cmp ecx, 1
jne 0x180002b6f
movss xmm3, dword [0x180006bb4]
movaps xmm1, xmm6
mov dword [rsp + 0x30], r14d
addss xmm1, xmm3
mov dword [rsp + 0x28], 0xff45c5b7
jmp 0x180002b5b
movss xmm3, dword [0x180006bb4]
movaps xmm1, xmm6
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], 0xffff3031
mov rcx, qword [r15]
movaps xmm2, xmm10
movss dword [rsp + 0x20], xmm12
mov rax, qword [rcx]
call qword [rax + 0x50]
movaps xmm3, xmm13
movss dword [rsp + 0x20], xmm12
movaps xmm2, xmm10
movaps xmm1, xmm6
mov rcx, r15
call fcn.180001c00
movss xmm10, dword [0x180006b8c]
movss xmm9, dword [0x180006ba0]
cmp dword [rsi + 0x20], 1
movaps xmm6, xmm11
addss xmm6, dword [0x180006ba8]
movaps xmm15, xmmword [rsp + 0x70]
movaps xmm13, xmmword [rsp + 0x90]
movaps xmm12, xmmword [rsp + 0xa0]
mov r13, qword [rsp + 0x118]
mov r12, qword [rsp + 0x120]
mov rdi, qword [rsp + 0x128]
jne 0x180002be6
mov rax, qword [rsi + 0x40]
cmp dword [rax], r14d
jle 0x180002c4d
mov rdx, qword [rsi + 0x50]
mov rax, qword [rsi + 0x58]
sub rax, rdx
sar rax, 3
test rax, rax
je 0x180002c4d
subss xmm8, xmm9
mov rbx, r14
addss xmm7, xmm14
nop word [rax + rax]
mov rax, qword [rbx + rdx]
movaps xmm3, xmm8
movaps xmm2, xmm6
mov qword [rsp + 0x20], rax
movaps xmm1, xmm7
mov rcx, r15
call fcn.180001ee0
mov rdx, qword [rsi + 0x50]
addss xmm6, xmm0
mov rcx, qword [rsi + 0x58]
inc r14d
sub rcx, rdx
movsxd rax, r14d
sar rcx, 3
add rbx, 8
cmp rax, rcx
jb 0x180002c10
subss xmm6, xmm11
addss xmm6, xmm10
movaps xmm0, xmm6
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.180004980
lea r11, [rsp + 0x130]
movaps xmm6, xmmword [r11 - 0x30]
movaps xmm7, xmmword [r11 - 0x40]
movaps xmm8, xmmword [r11 - 0x50]
movaps xmm9, xmmword [r11 - 0x60]
movaps xmm10, xmmword [r11 - 0x70]
movaps xmm11, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0xb0]
mov rsp, r11
pop r15
pop r14
pop rsi
pop rbx
pop rbp
ret