Function at 0x18006f990
Capabilities:
Check for unmoving mouse cursor

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x110
mov rax, qword [0x1804610b0]
xor rax, rsp
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0x120]
add rax, 0x10
xor edx, edx
mov rcx, rax
call fcn.180034c80
movzx eax, al
test eax, eax
jne 0x18006f9ea
mov rax, qword [rsp + 0x120]
cmp qword [rax + 0x18], 0
jne 0x18006f9f1
xor al, al
jmp 0x18006ffcf
mov byte [rsp + 0x20], 0
mov eax, dword [rsp + 0x130]
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0x202
ja 0x18006fa3e
cmp dword [rsp + 0x24], 0x202
je 0x18006fc36
cmp dword [rsp + 0x24], 0xf
je 0x18006fa5f
cmp dword [rsp + 0x24], 0x20
je 0x18006faac
cmp dword [rsp + 0x24], 0x200
je 0x18006fe6e
jmp 0x18006ffca
cmp dword [rsp + 0x24], 0x205
je 0x18006fe33
cmp dword [rsp + 0x24], 0x2a2
je 0x18006ff13
jmp 0x18006ffca
mov byte [rsp + 0x20], 1
lea rdx, [rsp + 0xb0]
mov rcx, qword [rsp + 0x128]
call qword [sym.imp.USER32.dll_BeginPaint]
mov qword [rsp + 0x58], rax
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x120]
call fcn.180070400
lea rdx, [rsp + 0xb0]
mov rcx, qword [rsp + 0x128]
call qword [sym.imp.USER32.dll_EndPaint]
jmp 0x18006ffca
mov byte [rsp + 0x20], 1
mov rax, qword [rsp + 0x120]
mov rax, qword [rax + 0x18]
mov rcx, qword [rsp + 0x120]
mov rcx, qword [rcx + 0x18]
mov rax, qword [rax]
call qword [rax + 0x30]
mov qword [rsp + 0x40], rax
cmp qword [rsp + 0x40], 0
je 0x18006faf8
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x40]
call qword [rax + 0x28]
movzx eax, al
test eax, eax
je 0x18006faf8
jmp 0x18006ffca
mov rax, qword [rsp + 0x140]
shr rax, 0x10
and rax, 0xffff
movzx eax, ax
mov dword [rsp + 0x28], eax
lea rcx, [rsp + 0x70]
call qword [sym.imp.USER32.dll_GetCursorPos]
cmp dword [rsp + 0x28], 0x200
jne 0x18006fb53
mov rax, qword [rsp + 0x120]
mov ecx, dword [rsp + 0x70]
cmp dword [rax + 0xac], ecx
jne 0x18006fb53
mov rax, qword [rsp + 0x120]
mov ecx, dword [rsp + 0x74]
cmp dword [rax + 0xb0], ecx
jne 0x18006fb53
jmp 0x18006ffca
mov rax, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x70]
mov qword [rax + 0xac], rcx
cmp dword [rsp + 0x28], 0x205
jne 0x18006fb8f
xor r9d, r9d
xor r8d, r8d
mov edx, 0x205
mov rcx, qword [rsp + 0x128]
call qword [sym.imp.USER32.dll_PostMessageW]
jmp 0x18006ffca
cmp dword [rsp + 0x28], 0x202
jne 0x18006fbb7
xor r9d, r9d
xor r8d, r8d
mov edx, 0x202
mov rcx, qword [rsp + 0x128]
call qword [sym.imp.USER32.dll_PostMessageW]
jmp 0x18006ffca
cmp dword [rsp + 0x28], 0x201
jne 0x18006fbe7
mov rax, qword [rsp + 0x120]
add rax, 0xb4
mov rcx, rax
call qword [sym.imp.USER32.dll_GetCursorPos]
mov rcx, qword [rsp + 0x128]
call fcn.180167360
jmp 0x18006fc20
cmp dword [rsp + 0x28], 0x200
jne 0x18006fc20
mov rax, qword [rsp + 0x120]
movzx eax, byte [rax + 0xbc]
test eax, eax
jne 0x18006fc20
mov rax, qword [rsp + 0x120]
mov byte [rax + 0xbc], 1
mov rcx, qword [rsp + 0x120]
call fcn.180079170
mov edx, dword [rsp + 0x28]
mov rcx, qword [rsp + 0x120]
call fcn.1800707a0
jmp 0x18006ffca
mov byte [rsp + 0x20], 1
mov rax, qword [rsp + 0x120]
mov eax, dword [rax + 0xa0]
mov dword [rsp + 0x34], eax
mov rax, qword [rsp + 0x120]
mov eax, dword [rax + 0xa4]
mov dword [rsp + 0x38], eax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x60], rax
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x120]
call fcn.180078b20
mov rdx, rax
mov rcx, qword [rsp + 0x120]
call fcn.1800705e0
mov dword [rsp + 0x2c], eax
mov rcx, qword [rsp + 0x128]
call fcn.180167680
mov rax, qword [rsp + 0x120]
movzx eax, byte [rax + 0xa8]
test eax, eax
je 0x18006fd14
lea rax, [rsp + 0x88]
mov rdi, rax
xor eax, eax
mov ecx, 0x10
rep stosb byte [rdi], al
lea rdx, [rsp + 0x88]
mov rcx, qword [rsp + 0x128]
call qword [sym.imp.USER32.dll_GetWindowRect]
mov rax, qword [rsp + 0x120]
mov ecx, dword [rsp + 0x88]
mov dword [rax + 0x98], ecx
mov rax, qword [rsp + 0x120]
mov ecx, dword [rsp + 0x8c]
mov dword [rax + 0x9c], ecx
mov rax, qword [rsp + 0x120]
mov byte [rax + 0xa8], 0
jmp 0x18006fd36
cmp dword [rsp + 0x2c], 0
jl 0x18006fd36
mov eax, dword [rsp + 0x2c]
cmp dword [rsp + 0x34], eax
jne 0x18006fd36
mov edx, dword [rsp + 0x2c]
mov rcx, qword [rsp + 0x120]
call fcn.18006fff0
mov rax, qword [rsp + 0x120]
add rax, 0x10
mov rcx, rax
call fcn.180033b80
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
xor edx, edx
mov rcx, qword [rsp + 0x50]
call qword [rax + 0x98]
mov byte [rsp + 0x21], al
mov rax, qword [rsp + 0x120]
mov dword [rax + 0xa0], 0xffffffff
movzx eax, byte [rsp + 0x21]
test eax, eax
je 0x18006fd8d
mov eax, dword [rsp + 0x2c]
mov dword [rsp + 0x30], eax
jmp 0x18006fd95
mov dword [rsp + 0x30], 0xffffffff
mov rax, qword [rsp + 0x120]
mov ecx, dword [rsp + 0x30]
mov dword [rax + 0xa4], ecx
mov rax, qword [rsp + 0x120]
mov eax, dword [rax + 0xa0]
cmp dword [rsp + 0x34], eax
jne 0x18006fdcf
mov rax, qword [rsp + 0x120]
mov eax, dword [rax + 0xa4]
cmp dword [rsp + 0x38], eax
je 0x18006fde8
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf
mov rcx, qword [rsp + 0x128]
call qword [sym.imp.USER32.dll_PostMessageW]
movzx eax, byte [rsp + 0x21]
test eax, eax
jne 0x18006fe2e
mov rax, qword [rsp + 0x120]
mov rax, qword [rax + 0x18]
mov rcx, qword [rsp + 0x120]
mov rcx, qword [rcx + 0x18]
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0
je 0x18006fe2e
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [rax + 0x20]
jmp 0x18006ffca
mov byte [rsp + 0x20], 1
mov rcx, qword [rsp + 0x128]
call fcn.180167680
mov rax, qword [rsp + 0x120]
mov dword [rax + 0xa0], 0xffffffff
mov rax, qword [rsp + 0x120]
mov dword [rax + 0xa4], 0xffffffff
jmp 0x18006ffca
mov rax, qword [rsp + 0x120]
movzx eax, byte [rax + 0xa8]
test eax, eax
jne 0x18006fee1
lea rcx, [rsp + 0x78]
call qword [sym.imp.USER32.dll_GetCursorPos]
mov rax, qword [rsp + 0x120]
mov eax, dword [rax + 0xb4]
mov ecx, dword [rsp + 0x78]
sub ecx, eax
mov eax, ecx
mov ecx, eax
call fcn.18003a6d0
cmp eax, 3
jg 0x18006fed0
mov rax, qword [rsp + 0x120]
mov eax, dword [rax + 0xb8]
mov ecx, dword [rsp + 0x7c]
sub ecx, eax
mov eax, ecx
mov ecx, eax
call fcn.18003a6d0
cmp eax, 3
jle 0x18006fedf
mov rax, qword [rsp + 0x120]
mov byte [rax + 0xa8], 1
jmp 0x18006ff09
mov edx, 0x7f86
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadCursorW]
mov rcx, rax
call qword [sym.imp.USER32.dll_SetCursor]
xor r8d, r8d
mov dl, 1
mov rcx, qword [rsp + 0x128]
call fcn.180167480
mov byte [rsp + 0x20], 1
jmp 0x18006ffca
mov rax, qword [rsp + 0x120]
mov byte [rax + 0xbc], 0
lea rax, [rsp + 0x80]
mov rdi, rax
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
lea rcx, [rsp + 0x80]
call qword [sym.imp.USER32.dll_GetCursorPos]
lea rax, [rsp + 0x98]
mov rdi, rax
xor eax, eax
mov ecx, 0x10
rep stosb byte [rdi], al
lea rdx, [rsp + 0x98]
mov rcx, qword [rsp + 0x128]
call qword [sym.imp.USER32.dll_GetWindowRect]
mov rdx, qword [rsp + 0x80]
lea rcx, [rsp + 0x98]
call qword [sym.imp.USER32.dll_PtInRect]
test eax, eax
jne 0x18006ffc5
mov rax, qword [rsp + 0x120]
mov dword [rax + 0xa0], 0xffffffff
mov rax, qword [rsp + 0x120]
mov dword [rax + 0xa4], 0xffffffff
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf
mov rcx, qword [rsp + 0x128]
call qword [sym.imp.USER32.dll_PostMessageW]
mov byte [rsp + 0x20], 1
movzx eax, byte [rsp + 0x20]
mov rcx, qword [rsp + 0x100]
xor rcx, rsp
call fcn.1802994c0
add rsp, 0x110
pop rdi
ret