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

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x68]
sub rsp, 0x130
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
movaps xmmword [rax - 0xb8], xmm13
movaps xmmword [rax - 0xc8], xmm14
mov rax, qword [0x18014a040]
xor rax, rsp
mov qword [rbp - 0x70], rax
mov r13, rdx
mov r15, rcx
mov r8d, dword [0x18014d05c]
mov rax, qword gs:[0x58]
mov edi, 4
mov rbx, qword [rax + r8*8]
mov qword [rsp + 0x40], rbx
mov eax, dword [rbx + rdi]
cmp dword [0x180150110], eax
jle 0x180089e71
lea rcx, [0x180150110]
call fcn.1800cc318
cmp dword [0x180150110], 0xffffffff
jne 0x180089e71
mov eax, dword [0x18014a348]
mov dword [0x180150114], eax
lea rcx, [0x180150110]
call fcn.1800cc2ac
xor esi, esi
mov eax, dword [rbx + rdi]
cmp dword [0x180150118], eax
jle 0x180089eba
lea rcx, [0x180150118]
call fcn.1800cc318
cmp dword [0x180150118], 0xffffffff
jne 0x180089eba
mov qword [0x180150120], rsi
lea rcx, [rsp + 0x68]
call fcn.180074d90
mov rdx, qword [rax]
mov qword [0x180150120], rdx
lea rcx, [0x180150118]
call fcn.1800cc2ac
mov eax, dword [rbx + rdi]
cmp dword [0x180150128], eax
jle 0x180089f01
lea rcx, [0x180150128]
call fcn.1800cc318
cmp dword [0x180150128], 0xffffffff
jne 0x180089f01
mov qword [0x180150130], rsi
lea rcx, [rsp + 0x68]
call fcn.180074d90
mov rdx, qword [rax]
mov qword [0x180150130], rdx
lea rcx, [0x180150128]
call fcn.1800cc2ac
mov rax, qword [r15 + 0x78]
cmp byte [rax], sil
jne 0x180089f1d
mov qword [rsp + 0x68], 0xfa
lea rcx, [rsp + 0x68]
jmp 0x18008af8d
movzx eax, byte [0x18014d3d5]
test al, al
je 0x180089f44
cmp dword [0x18014a34c], 1
jne 0x180089f44
mov qword [rsp + 0x68], 0xa
lea rcx, [rsp + 0x68]
jmp 0x18008af8d
movzx eax, byte [0x18014d3d5]
test al, al
jne 0x180089f57
cmp dword [0x18014a34c], esi
je 0x180089f31
movabs r14, 0x431bde82d7b634db
cmp byte [0x18014d5a7], sil
je 0x180089fd7
lea rcx, [rsp + 0x68]
call fcn.180074d90
mov rcx, qword [rax]
sub rcx, qword [0x180150120]
mov rax, r14
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
cvttss2si eax, xmm0
cmp eax, dword [0x180150114]
jl 0x180089fd7
mov qword [rsp + 0x68], rsi
lea rcx, [rsp + 0x68]
call qword [sym.imp.USER32.dll_GetCursorPos]
movsxd r9, dword [rsp + 0x6c]
xor r8d, r8d
mov edx, 0x205
mov rcx, qword [0x18014d3d8]
call qword [sym.imp.USER32.dll_PostMessageW]
mov byte [0x18014d5a7], sil
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, qword [0x18014d3d8]
jne 0x18008ae78
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x18008ae78
lea rcx, [rsp + 0x68]
call fcn.180074d90
mov rax, qword [rax]
mov qword [r15 + 0x198], rax
mov eax, dword [0x18014d4ac]
mov dword [r15 + 0x1a8], eax
mov eax, dword [rbx + rdi]
cmp dword [0x180150138], eax
jle 0x18008a075
lea rcx, [0x180150138]
call fcn.1800cc318
cmp dword [0x180150138], 0xffffffff
jne 0x18008a075
xorps xmm0, xmm0
movups xmmword [0x180150140], xmm0
lea rdx, [0x180150140]
mov rcx, qword [r15 + 0x180]
call fcn.1800829f0
lea rcx, [0x1800d64e0]
call fcn.1800cc934
nop
lea rcx, [0x180150138]
call fcn.1800cc2ac
xorps xmm14, xmm14
mov rcx, qword [0x180150140]
test rcx, rcx
jne 0x18008a0ff
lea rdx, [rsp + 0x30]
mov rcx, qword [r15 + 0x180]
call fcn.1800829f0
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
mov qword [rax], rsi
mov qword [rax + 8], rsi
mov qword [0x180150140], rcx
mov rdi, qword [0x180150148]
mov qword [0x180150148], rdx
mov ebx, 0xffffffff
test rdi, rdi
je 0x18008a0ec
mov eax, ebx
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x18008a0ec
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov eax, ebx
lock xadd dword [rdi + 0xc], eax
cmp eax, 1
jne 0x18008a0ec
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
mov rdi, qword [rsp + 0x38]
test rdi, rdi
je 0x18008a226
jmp 0x18008a1ff
lea rdx, [rsp + 0x30]
call fcn.1800792b0
mov rbx, qword [r13]
movss xmm1, dword [rsp + 0x30]
subss xmm1, dword [rbx + 0x24]
movss xmm6, dword [rsp + 0x34]
subss xmm6, dword [rbx + 0x28]
movss xmm0, dword [rsp + 0x38]
subss xmm0, dword [rbx + 0x2c]
movaps xmm8, xmm0
mulss xmm8, xmm0
movaps xmm9, xmm1
mulss xmm9, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2f
movaps xmm1, xmm0
movss xmm10, dword [0x180130a00]
mulss xmm1, xmm10
divss xmm1, dword [0x180130940]
subss xmm1, dword [0x1801309d0]
movss xmm0, dword [rbx + 0x48]
subss xmm0, xmm1
xorps xmm0, xmmword [0x180130ee0]
addss xmm0, xmm10
movss xmm11, dword [0x180130a14]
movaps xmm1, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_fmodf
movaps xmm7, xmm0
comiss xmm14, xmm7
jbe 0x18008a19b
addss xmm7, xmm11
subss xmm7, xmm10
andps xmm7, xmmword [0x180130eb0]
mulss xmm6, xmm6
addss xmm6, xmm9
addss xmm6, xmm8
xorps xmm0, xmm0
ucomiss xmm0, xmm6
ja 0x18008a1c6
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x18008a1ce
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm0, dword [0x18013094c]
ja 0x18008a1e0
comiss xmm7, dword [0x1801309e8]
jbe 0x18008a226
mov qword [0x180150140], rsi
mov rdi, qword [0x180150148]
mov qword [0x180150148], rsi
test rdi, rdi
je 0x18008a226
mov ebx, 0xffffffff
mov eax, ebx
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x18008a226
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
lock xadd dword [rdi + 0xc], ebx
cmp ebx, 1
jne 0x18008a226
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
lea rdx, [rsp + 0x70]
mov rcx, qword [r15 + 0x180]
call fcn.180081ea0
nop
mov rdi, qword [r13]
add rdi, 0x68
movss xmm8, dword [0x18014eb24]
movss xmm9, dword [0x18014eb20]
cmp byte [0x18014d5a6], 0
jne 0x18008a27c
movaps xmm7, xmm9
movss dword [0x18014eb28], xmm7
movaps xmm6, xmm8
movss dword [0x18014eb2c], xmm6
mov byte [0x18014d5a6], 1
jmp 0x18008a28c
movss xmm6, dword [0x18014eb2c]
movss xmm7, dword [0x18014eb28]
cmp byte [0x18014d5ad], 0
je 0x18008a3e1
cmp byte [0x18014d5a5], 0
jne 0x18008a3e1
mov r14, qword [rbp - 0x78]
mov r12, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x70]
lea rax, [rsp + 0x70]
cmp r14, 0xf
cmova rax, rsi
cmp r12, 5
jne 0x18008a3bd
cmp dword [rax], 0x434f4c42
jne 0x18008a3bd
cmp byte [rax + 4], 0x4b
jne 0x18008a3bd
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x18008a3bd
mov qword [rsp + 0x68], 1
lea rcx, [rsp + 0x68]
call fcn.1800653f0
lea rdx, [rsp + 0x48]
mov rcx, qword [r15 + 0x180]
call fcn.180081ea0
mov rbx, rax
lea rax, [rsp + 0x70]
cmp rax, rbx
je 0x18008a393
cmp r14, 0xf
jbe 0x18008a358
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x18008a350
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a3b6
mov rcx, rsi
call fcn.1800cc94c
movups xmm2, xmmword [rbx]
movups xmmword [rsp + 0x70], xmm2
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x80], xmm1
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
movdqa xmm0, xmm1
psrldq xmm0, 8
movq r14, xmm0
movq r12, xmm1
movq rsi, xmm2
lea rcx, [rsp + 0x48]
call fcn.180074d20
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rcx, qword [rax]
mov qword [r15 + 0x198], rcx
jmp 0x18008a2b3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
movss xmm6, dword [0x18014eb2c]
movss xmm7, dword [0x18014eb28]
movss xmm8, dword [0x18014eb24]
movss xmm9, dword [0x18014eb20]
jmp 0x18008a3ee
mov r14, qword [rbp - 0x78]
mov r12, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x70]
cmp byte [0x18014d5ae], 0
je 0x18008a427
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x18008a404
mov rcx, qword [rdi]
mov qword [rsp + 0x20], 5
lea r9, str.sword
mov rdx, qword [rdi + 0x10]
call fcn.180065880
cmp rax, 0xffffffffffffffff
je 0x18008ae69
movss xmm11, dword [0x180130894]
movss xmm10, dword [0x180130924]
movss xmm12, dword [0x18013093c]
movzx ebx, byte [0x18014d5ab]
test bl, bl
je 0x18008a50b
lea rcx, [rsp + 0x70]
cmp r14, 0xf
cmova rcx, rsi
cmp r12, 6
jne 0x18008a4b7
mov r8, r12
lea rdx, str.ENTITY
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x18008a4b7
movss xmm2, dword [r15 + 0x1a8]
mulss xmm2, xmm11
movaps xmm1, xmm9
subss xmm1, xmm10
movaps xmm0, xmm7
call fcn.180088390
movss dword [0x18014eb28], xmm0
movss xmm2, dword [r15 + 0x1a8]
divss xmm2, xmm12
movaps xmm1, xmm8
subss xmm1, xmm10
jmp 0x18008a4f5
movss xmm2, dword [r15 + 0x1a8]
divss xmm2, xmm12
movaps xmm1, xmm9
addss xmm1, xmm10
movaps xmm0, xmm7
call fcn.180088390
movss dword [0x18014eb28], xmm0
movss xmm2, dword [r15 + 0x1a8]
mulss xmm2, xmm11
movaps xmm1, xmm8
addss xmm1, xmm10
movaps xmm7, xmm0
movaps xmm0, xmm6
call fcn.180088390
movss dword [0x18014eb2c], xmm0
movaps xmm6, xmm0
movss xmm13, dword [0x180130a30]
cmp byte [0x18014d5ac], 0
je 0x18008a7bd
cmp qword [0x180150140], 0
je 0x18008a745
cmp byte [0x18014a33d], 0
je 0x18008a544
mov byte [0x18014a33d], 0
jmp 0x18008ae69
cmp byte [0x18014d5a4], 0
jne 0x18008a568
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rcx, qword [rax]
mov qword [0x180150130], rcx
mov byte [0x18014d5a4], 1
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rcx, qword [rax]
sub rcx, qword [0x180150130]
movabs rax, 0x431bde82d7b634db
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
comiss xmm0, xmm13
jbe 0x18008a5fb
mov edx, dword [0x18014d5a0]
mov ecx, edx
mov r8d, dword [0x18014d59c]
sub ecx, r8d
mov eax, ecx
neg eax
cmovs eax, ecx
cmp eax, 2
jg 0x18008a5d3
cmp edx, r8d
cmovl edx, r8d
cmp edx, 3
jle 0x18008a5d3
mov al, 1
jmp 0x18008a5e1
xor eax, eax
mov dword [0x18014d59c], eax
mov dword [0x18014d5a0], eax
mov byte [0x18014d598], al
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rcx, qword [rax]
mov qword [0x180150130], rcx
cmp byte [0x18014d598], 0
je 0x18008a665
movss xmm2, dword [r15 + 0x1a8]
mulss xmm2, xmm11
movss xmm1, dword [0x18014eb20]
subss xmm1, dword [0x180130974]
movss xmm0, dword [0x18014eb28]
call fcn.180088390
movaps xmm7, xmm0
movss dword [0x18014eb28], xmm0
movss xmm2, dword [r15 + 0x1a8]
divss xmm2, xmm12
movss xmm1, dword [0x18014eb24]
subss xmm1, dword [0x180130974]
movss xmm0, dword [0x18014eb2c]
jmp 0x18008a7ad
cmp byte [0x18014d597], 0
jne 0x18008a6b1
mov rbx, qword [0x180150140]
mov r8, qword [rbx]
mov edx, 0x10
mov rcx, qword [rbx + 8]
call fcn.180084290
test rax, rax
je 0x18008a6a7
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov r9, qword [r8 + 0x320]
mov r8, rax
mov rdx, qword [rbx + 0x10]
call r9
cmp eax, 2
jg 0x18008a6b1
inc dword [0x18014d5a0]
mov al, 1
jmp 0x18008a6b3
xor al, al
mov byte [0x18014d597], al
cmp byte [0x18014d596], 0
jne 0x18008a6d6
mov rax, qword [r13]
cmp dword [rax + 0x3c], 0
jle 0x18008a6d6
inc dword [0x18014d59c]
mov al, 1
jmp 0x18008a6d8
xor al, al
mov byte [0x18014d596], al
movss xmm2, dword [r15 + 0x1a8]
mulss xmm2, xmm11
movzx ebx, byte [0x18014d5ab]
movss xmm1, dword [0x18014eb20]
test bl, bl
je 0x18008a704
addss xmm1, xmm10
movss xmm0, dword [0x18014eb28]
call fcn.180088390
movaps xmm7, xmm0
movss dword [0x18014eb28], xmm0
movss xmm2, dword [r15 + 0x1a8]
divss xmm2, xmm12
movss xmm1, dword [0x18014eb24]
test bl, bl
je 0x18008a73b
addss xmm1, xmm10
movss xmm0, dword [0x18014eb2c]
jmp 0x18008a7ad
mov byte [0x18014a33d], 1
mov byte [0x18014d5a4], 0
xor eax, eax
mov dword [0x18014d5a0], eax
mov dword [0x18014d59c], eax
movss xmm2, dword [r15 + 0x1a8]
mulss xmm2, xmm11
test bl, bl
je 0x18008a778
addss xmm9, xmm10
movaps xmm1, xmm9
movaps xmm0, xmm7
call fcn.180088390
movaps xmm7, xmm0
movss dword [0x18014eb28], xmm0
movss xmm2, dword [r15 + 0x1a8]
divss xmm2, xmm12
test bl, bl
je 0x18008a7a6
addss xmm8, xmm10
movaps xmm1, xmm8
movaps xmm0, xmm6
call fcn.180088390
movaps xmm6, xmm0
movss dword [0x18014eb2c], xmm0
lea r13, [r15 + 0x190]
lea rcx, [0x18014d6d0]
call fcn.1800671b0
mov eax, eax
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
subss xmm0, xmm14
addss xmm0, xmm14
movss xmm8, dword [0x180130820]
mulss xmm0, xmm8
subss xmm6, xmm7
mulss xmm0, xmm6
addss xmm0, xmm7
movss dword [0x18014eb30], xmm0
lea rdx, [0x18014eb38]
mov rcx, r13
call fcn.1800899b0
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rcx, qword [rax]
mov qword [r13 + 0x10], rcx
sub rcx, qword [r13 + 8]
movabs rax, 0x20c49ba5e353f7cf
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm1, xmm1
cvtsi2ss xmm1, rdx
divss xmm1, xmm13
movss dword [r13 + 0x1c], xmm1
movss xmm0, dword [0x18014eb34]
addss xmm0, dword [0x18014eb30]
subss xmm0, xmm1
divss xmm0, xmm13
cvtps2pd xmm0, xmm0
call fcn.180089ba0
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x18008ae69
mov qword [rsp + 0x68], 0
lea rcx, [rsp + 0x68]
call qword [sym.imp.USER32.dll_GetCursorPos]
movsxd r9, dword [rsp + 0x6c]
mov edx, 0x201
mov r8d, 0x1000000
mov rcx, qword [0x18014d3d8]
call qword [sym.imp.USER32.dll_PostMessageW]
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rcx, qword [rax]
mov qword [r13 + 8], rcx
mov rcx, r13
call fcn.1800897f0
cmp byte [0x18014d5aa], 0
je 0x18008aa3b
cmp byte [0x18014d5a9], 0
je 0x18008a90e
cmp byte [0x18014d5a7], 0
je 0x18008a90e
mov qword [rsp + 0x68], 1
lea rcx, [rsp + 0x68]
call fcn.1800653f0
jmp 0x18008ae69
mov rdx, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 0xf
jbe 0x18008a91c
mov rdi, qword [rdi]
mov qword [rsp + 0x20], 5
lea r9, str.sword
mov rcx, rdi
call fcn.180065880
cmp rax, 0xffffffffffffffff
je 0x18008aa3b
lea rcx, [rsp + 0x70]
cmp r14, 0xf
cmova rcx, rsi
cmp r12, 6
jne 0x18008aa3b
mov r8, r12
lea rdx, str.ENTITY
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x18008aa3b
mov rbx, qword [0x180150140]
test rbx, rbx
je 0x18008aa3b
mov r8, qword [rbx]
mov edx, 0x10
mov rcx, qword [rbx + 8]
call fcn.180084290
mov r8, rax
test rax, rax
je 0x18008a9a9
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov r9, qword [rax + 0x320]
mov rdx, qword [rbx + 0x10]
call r9
cmp byte [0x18014a33c], 0
je 0x18008aa2f
test eax, eax
jle 0x18008aa2f
cmp byte [0x18014d5a7], 0
jne 0x18008aa2f
mov qword [rsp + 0x68], 0
lea rcx, [rsp + 0x68]
call qword [sym.imp.USER32.dll_GetCursorPos]
movsxd r9, dword [rsp + 0x6c]
mov edx, 0x204
mov r8d, 0x2000000
mov rcx, qword [0x18014d3d8]
call qword [sym.imp.USER32.dll_PostMessageW]
mov ecx, dword [0x18014a348]
lea edx, [rcx + 5]
add ecx, 0xfffffffb
call fcn.1800631c0
mov dword [0x180150114], eax
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rcx, qword [rax]
mov qword [0x180150120], rcx
mov byte [0x18014d5a7], 1
mov byte [0x18014a33c], 0
jmp 0x18008aa3b
cmp eax, 1
jg 0x18008aa3b
mov byte [0x18014a33c], 1
mov byte [0x18014d5a5], 1
cmp byte [0x18014d5ad], 0
je 0x18008ad53
mov rax, qword [rsp + 0x40]
mov ecx, 4
mov eax, dword [rax + rcx]
cmp dword [0x180150150], eax
jle 0x18008aaa4
lea rcx, [0x180150150]
call fcn.1800cc318
cmp dword [0x180150150], 0xffffffff
jne 0x18008aaa4
mov qword [0x180150158], 0
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rdx, qword [rax]
mov qword [0x180150158], rdx
lea rcx, [0x180150150]
call fcn.1800cc2ac
lea rcx, [rsp + 0x70]
cmp r14, 0xf
cmova rcx, rsi
cmp r12, 5
jne 0x18008ad31
mov r8, r12
lea rdx, str.BLOCK
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x18008ad31
lea rcx, [rsp + 0x30]
cmp byte [0x18014d595], al
jne 0x18008aaf7
call fcn.180074d90
mov rcx, qword [rax]
mov qword [0x180150158], rcx
mov byte [0x18014d595], 1
jmp 0x18008ab50
mov edi, dword [0x18014a344]
call fcn.180074d90
mov rcx, qword [rax]
sub rcx, qword [0x180150158]
movabs rax, 0x431bde82d7b634db
imul rcx
mov rbx, rdx
sar rbx, 0x12
mov rax, rbx
shr rax, 0x3f
add rbx, rax
lea edx, [rdi + 0x1e]
lea ecx, [rdi - 0xa]
call fcn.1800631c0
xorps xmm0, xmm0
cvtsi2ss xmm0, rbx
cvttss2si ecx, xmm0
cmp ecx, eax
jle 0x18008ab50
mov byte [0x18014d594], 1
nop dword [rax]
lea rax, [rsp + 0x70]
cmp r14, 0xf
cmova rax, rsi
cmp r12, 5
jne 0x18008ac53
cmp dword [rax], 0x434f4c42
jne 0x18008ac53
cmp byte [rax + 4], 0x4b
jne 0x18008ac53
cmp byte [0x18014d594], 0
je 0x18008ac53
mov qword [rsp + 0x40], 1
lea rcx, [rsp + 0x40]
call fcn.1800653f0
lea rdx, [rsp + 0x48]
mov rcx, qword [r15 + 0x180]
call fcn.180081ea0
mov rbx, rax
lea rax, [rsp + 0x70]
cmp rax, rbx
je 0x18008ac29
cmp r14, 0xf
jbe 0x18008abee
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x18008abe6
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008ac4c
mov rcx, rsi
call fcn.1800cc94c
movups xmm2, xmmword [rbx]
movups xmmword [rsp + 0x70], xmm2
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x80], xmm1
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
movdqa xmm0, xmm1
psrldq xmm0, 8
movq r14, xmm0
movq r12, xmm1
movq rsi, xmm2
lea rcx, [rsp + 0x48]
call fcn.180074d20
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rcx, qword [rax]
mov qword [r15 + 0x198], rcx
jmp 0x18008ab50
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
lea rcx, [rsp + 0x70]
cmp r14, 0xf
cmova rcx, rsi
cmp r12, 5
jne 0x18008ac7d
mov r8, r12
lea rdx, str.BLOCK
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x18008ad53
cmp byte [0x18014d594], 0
je 0x18008ad53
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rbx, qword [rax]
mov ecx, dword [0x18014a340]
lea edx, [rcx + 0x1e]
add ecx, 0xfffffff6
call fcn.1800631c0
mov edi, eax
lea rcx, [rsp + 0x68]
call fcn.180074d90
mov rcx, qword [rax]
sub rcx, rbx
movabs rsi, 0x431bde82d7b634db
mov rax, rsi
imul rcx
sar rdx, 0x12
mov rcx, rdx
shr rcx, 0x3f
add rdx, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
cvttss2si eax, xmm0
cmp eax, edi
jge 0x18008ad53
mov qword [rsp + 0x40], 1
lea rcx, [rsp + 0x40]
call fcn.1800653f0
lea rcx, [rsp + 0x68]
call fcn.180074d90
mov rcx, qword [rax]
sub rcx, rbx
mov rax, rsi
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
cvttss2si eax, xmm0
cmp eax, edi
jl 0x18008acf1
jmp 0x18008ad53
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rdx, qword [rax]
mov qword [0x180150158], rdx
mov byte [0x18014d595], 1
mov byte [0x18014d594], 0
movss xmm1, dword [0x18014eb2c]
lea rcx, [0x18014d6d0]
call fcn.1800671b0
mov eax, eax
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
subss xmm0, xmm14
addss xmm0, xmm14
mulss xmm0, xmm8
subss xmm1, dword [0x18014eb28]
mulss xmm0, xmm1
addss xmm0, dword [0x18014eb28]
movss dword [0x18014eb30], xmm0
lea rdx, [0x18014eb50]
mov rcx, r13
call fcn.1800899b0
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rcx, qword [rax]
mov qword [r13 + 0x10], rcx
sub rcx, qword [r13 + 8]
movabs rax, 0x20c49ba5e353f7cf
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm1, xmm1
cvtsi2ss xmm1, rdx
divss xmm1, xmm13
movss dword [r13 + 0x1c], xmm1
movss xmm0, dword [0x18014eb34]
addss xmm0, dword [0x18014eb30]
subss xmm0, xmm1
divss xmm0, xmm13
cvtps2pd xmm0, xmm0
call fcn.180089ba0
mov qword [rsp + 0x68], 0
lea rcx, [rsp + 0x68]
call qword [sym.imp.USER32.dll_GetCursorPos]
movsxd r9, dword [rsp + 0x6c]
xor r8d, r8d
mov edx, 0x202
mov rcx, qword [0x18014d3d8]
call qword [sym.imp.USER32.dll_PostMessageW]
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rdx, qword [rax]
mov qword [r13 + 8], rdx
cmp byte [0x18014d5a8], 0
je 0x18008ae60
lea rcx, [r13 - 0x10]
call fcn.1800a6420
mov rcx, r13
call fcn.1800897f0
nop
lea rcx, [rsp + 0x70]
call fcn.180074d20
jmp 0x18008af92
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x18008ae8f
mov byte [0x18014d5a5], sil
cmp byte [0x18014d5a7], sil
je 0x18008af02
lea rcx, [rsp + 0x30]
call fcn.180074d90
mov rcx, qword [rax]
sub rcx, qword [0x180150120]
mov rax, r14
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
cvttss2si eax, xmm0
cmp eax, 0xa
jl 0x18008af02
mov qword [rsp + 0x68], rsi
lea rcx, [rsp + 0x68]
call qword [sym.imp.USER32.dll_GetCursorPos]
movsxd r9, dword [rsp + 0x6c]
xor r8d, r8d
mov edx, 0x205
mov rcx, qword [0x18014d3d8]
call qword [sym.imp.USER32.dll_PostMessageW]
mov byte [0x18014d5a7], sil
cmp byte [0x18014d5a6], sil
je 0x18008af7f
mov rdi, qword [0x18014eb70]
mov rbx, qword [0x18014eb68]
cmp rbx, rdi
je 0x18008af78
movss xmm2, dword [0x1801308b4]
nop word [rax + rax]
mov word [rbx], si
mov dword [rbx + 0x20], esi
mov edx, dword [rbx + 0x24]
movd xmm1, edx
cvtdq2ps xmm1, xmm1
movd xmm0, dword [rbx + 0x10]
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
mulss xmm1, xmm2
cvttss2si eax, xmm1
mov ecx, 1
sub ecx, eax
imul ecx, edx
mov dword [rbx + 0x24], ecx
mov edx, dword [rbx + 0x18]
mov ecx, dword [rbx + 0x14]
call fcn.1800631c0
mov dword [rbx + 0x10], eax
add rbx, 0x28
cmp rbx, rdi
jne 0x18008af30
mov byte [0x18014d5a6], sil
mov qword [rsp + 0x40], 0x32
lea rcx, [rsp + 0x40]
call fcn.1800653f0
mov rcx, qword [rbp - 0x70]
xor rcx, rsp
call fcn.1800cc250
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret