Function at 0x14006f2a0
Capabilities:
Check for unmoving mouse cursor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
cmp dword [rsp + 0xa0], 0
mov r13, r9
mov r15, qword [rsp + 0x98]
mov ebp, r8d
mov rbx, rcx
jne 0x14006f542
xor esi, esi
mov r12d, 1
cmp r8d, r12d
jne 0x14006f41b
test rcx, rcx
lea r14, [rcx - 0x48]
cmove r14, rsi
movzx eax, byte [r14 + 0x48]
lea rdi, [r14 + 0x48]
neg al
sbb rdx, rdx
xor ecx, ecx
add rdx, 0x7f85
call qword [sym.imp.USER32.dll_LoadCursorW]
mov qword [rdi + 0x40], rax
test byte [rdi + 0x60], 0x10
jne 0x14006f331
movzx eax, byte [rdi]
neg al
sbb ecx, ecx
add ecx, 0x21
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [rdi + 0x3c], eax
test rdi, rdi
mov edx, 0xffffffec
cmove r14, rsi
mov rcx, qword [r14 + 8]
call qword [sym.imp.USER32.dll_GetWindowLongW]
bt eax, 9
movzx eax, byte [rdi]
jae 0x14006f366
neg al
sbb ecx, ecx
add ecx, 0x2e
call qword [sym.imp.USER32.dll_GetSystemMetrics]
add eax, eax
mov dword [rdi + 0x4c], eax
mov eax, esi
jmp 0x14006f378
neg al
mov dword [rdi + 0x4c], esi
sbb ecx, ecx
add ecx, 0x2e
call qword [sym.imp.USER32.dll_GetSystemMetrics]
add eax, eax
xor edx, edx
mov dword [rdi + 0x48], eax
lea r8, [rdi + 0x50]
xor r9d, r9d
lea ecx, [rdx + 0x26]
call qword [sym.imp.USER32.dll_SystemParametersInfoW]
mov qword [r15], r12
mov eax, dword [rbx + 0x60]
mov r9, qword [rsp + 0x90]
shr eax, 1
not al
test r12b, al
je 0x14006f851
cmp ebp, 0x20
jne 0x14006f480
test rbx, rbx
lea rdi, [rbx - 0x40]
mov ecx, 8
cmove rdi, rcx
cmp r13, qword [rdi]
jne 0x14006f849
cmp r9w, r12w
jne 0x14006f849
call qword [sym.imp.USER32.dll_GetMessagePos]
mov rcx, qword [rdi]
movsx edx, ax
shr eax, 0x10
cwde
mov dword [rsp + 0x30], edx
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x34], eax
call qword [sym.imp.USER32.dll_ScreenToClient]
mov r8d, dword [rsp + 0x34]
mov rcx, rbx
mov edx, dword [rsp + 0x30]
call fcn.14006cdb0
test al, al
je 0x14006f849
mov qword [r15], r12
mov eax, r12d
jmp 0x14006f544
cmp ebp, 0xf
jne 0x14006f44a
mov r9, qword [rsp + 0x90]
lea rax, [rsp + 0xa0]
mov r8, r13
mov qword [rsp + 0x20], rax
mov edx, ebp
call fcn.14006e1d0
mov qword [r15], rax
mov rax, r12
jmp 0x14006f544
cmp ebp, 0x318
jne 0x14006f390
mov r9, qword [rsp + 0x90]
lea rax, [rsp + 0xa0]
mov r8, r13
mov qword [rsp + 0x20], rax
mov edx, ebp
call fcn.14006e1d0
mov qword [r15], rax
mov rax, r12
jmp 0x14006f544
movsx edi, r9w
lea r14, [rbx - 0x40]
cmp ebp, 0x200
jne 0x14006f564
shr r9, 0x10
mov ecx, 8
test rbx, rbx
movsx r13d, r9w
mov ebp, r12d
cmove r14, rcx
call qword [sym.imp.USER32.dll_GetCapture]
cmp rax, qword [r14]
jne 0x14006f51a
mov eax, dword [rbx + 0x54]
cmp byte [rbx], sil
je 0x14006f4c3
sub edi, dword [rbx + 0x18]
jmp 0x14006f4c9
mov edi, r13d
sub edi, dword [rbx + 0x1c]
sub edi, eax
mov eax, 0xfffffffe
cmp edi, 0xffffffff
cmove edi, eax
cmp dword [rbx + 0x28], edi
je 0x14006f537
mov rcx, rbx
cmp byte [rbx + 0x50], sil
je 0x14006f4fe
movzx r8d, bpl
mov edx, edi
call fcn.140072a00
test al, al
je 0x14006f537
mov rcx, qword [r14]
call qword [sym.imp.USER32.dll_UpdateWindow]
jmp 0x14006f537
call fcn.14006b760
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.140072a00
mov rcx, rbx
call fcn.14006b760
jmp 0x14006f537
mov r8d, r13d
mov edx, edi
mov rcx, rbx
call fcn.14006cdb0
test al, al
je 0x14006f535
mov rcx, qword [rbx + 0x40]
call qword [sym.imp.USER32.dll_SetCursor]
mov ebp, esi
mov qword [r15], rsi
test ebp, ebp
jne 0x14006f6f5
xor eax, eax
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
cmp ebp, 0x201
jne 0x14006f630
shr r9, 0x10
mov ecx, 8
test rbx, rbx
movsx esi, r9w
cmove r14, rcx
call qword [sym.imp.USER32.dll_GetCapture]
cmp rax, qword [r14]
je 0x14006f5fe
mov r8d, esi
mov edx, edi
mov rcx, rbx
call fcn.14006cdb0
test al, al
je 0x14006f5fe
mov eax, dword [rbx + 0x28]
mov dword [rbx + 0x2c], eax
mov rcx, qword [r14]
call qword [sym.imp.USER32.dll_SetCapture]
mov rcx, qword [r14]
call qword [sym.imp.USER32.dll_SetFocus]
mov rcx, qword [rbx + 0x40]
mov qword [rbx + 0x30], rax
call qword [sym.imp.USER32.dll_SetCursor]
cmp byte [rbx + 0x50], 0
jne 0x14006f5d4
mov rcx, rbx
call fcn.14006b760
cmp byte [rbx], 0
mov eax, dword [rbx + 0x28]
je 0x14006f5ec
sub edi, dword [rbx + 0x18]
sub edi, eax
mov dword [rbx + 0x54], edi
mov qword [r15], r12
jmp 0x14006f542
mov edi, esi
sub edi, dword [rbx + 0x1c]
sub edi, eax
mov dword [rbx + 0x54], edi
mov qword [r15], r12
jmp 0x14006f542
call qword [sym.imp.USER32.dll_GetCapture]
cmp rax, qword [r14]
jne 0x14006f892
mov r8d, esi
mov edx, edi
mov rcx, rbx
call fcn.14006cdb0
test al, al
jne 0x14006f892
call qword [sym.imp.USER32.dll_ReleaseCapture]
mov qword [r15], r12
jmp 0x14006f542
cmp ebp, 0x202
jne 0x14006f667
call qword [sym.imp.USER32.dll_GetCapture]
test rbx, rbx
mov ecx, 8
cmove r14, rcx
cmp rax, qword [r14]
jne 0x14006f892
mov eax, dword [rbx + 0x28]
mov dword [rbx + 0x2c], eax
call qword [sym.imp.USER32.dll_ReleaseCapture]
mov qword [r15], r12
jmp 0x14006f542
lea rdi, [rbx - 0x48]
cmp ebp, 0x203
jne 0x14006f697
test rbx, rbx
movzx r8d, r12b
mov edx, 0xffffffff
cmove rdi, rsi
lea rcx, [rdi + 0x48]
call fcn.140072a00
mov eax, r12d
mov qword [r15], rsi
jmp 0x14006f544
cmp ebp, 0x215
jne 0x14006f6fd
cmp byte [rbx + 0x50], sil
jne 0x14006f6ad
mov rcx, rbx
call fcn.14006b760
mov eax, dword [rbx + 0x2c]
cmp eax, 0xffffffff
je 0x14006f6e3
cmp byte [rbx + 0x50], sil
je 0x14006f6c0
cmp dword [rbx + 0x28], eax
je 0x14006f6e3
mov rcx, rbx
mov dword [rbx + 0x28], eax
mov dword [rbx + 0x2c], 0xffffffff
call fcn.1400734e0
test rbx, rbx
cmove rdi, rsi
mov rcx, qword [rdi + 8]
call qword [sym.imp.USER32.dll_UpdateWindow]
mov rcx, qword [rbx + 0x30]
test rcx, rcx
je case.0x14006f743.14
call qword [sym.imp.USER32.dll_SetFocus]
mov qword [r15], rsi
mov eax, r12d
jmp 0x14006f544
cmp ebp, 0x100
jne 0x14006f859
call qword [sym.imp.USER32.dll_GetCapture]
test rbx, rbx
cmove rdi, rsi
cmp rax, qword [rdi + 8]
jne 0x14006f849
lea rax, [r13 - 0xd]
cmp rax, 0x1b
ja case.0x14006f743.14
lea rdx, [0x140000000]
movzx eax, byte [rdx + rax + 0x6f984]
mov ecx, dword [rdx + rax*4 + 0x6f970]
add rcx, rdx
jmp rcx
mov eax, dword [rbx + 0x28]
mov dword [rbx + 0x2c], eax
call qword [sym.imp.USER32.dll_ReleaseCapture]
mov eax, r12d
mov qword [r15], rsi
jmp 0x14006f544
cmp byte [rbx], sil
je case.0x14006f743.14
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x30], rsi
call qword [sym.imp.USER32.dll_GetCursorPos]
mov r9d, dword [rbx + 0x4c]
cmp r13, 0x25
mov edx, dword [rbx + 0x48]
mov eax, 0xfffffff6
mov r8d, dword [rbx + 0x28]
mov ecx, 0xa
cmove ecx, eax
add ecx, r8d
lea eax, [rdx + r9]
cmp ecx, eax
jl 0x14006f7ad
mov eax, dword [rbx + 0x20]
sub eax, dword [rbx + 0x3c]
sub eax, dword [rbx + 0x18]
sub eax, edx
mov edx, ecx
sub eax, r9d
cmp ecx, eax
cmovg edx, eax
mov ecx, dword [rsp + 0x30]
sub edx, r8d
add ecx, edx
mov edx, dword [rsp + 0x34]
mov dword [rsp + 0x30], ecx
call qword [sym.imp.USER32.dll_SetCursorPos]
mov eax, r12d
mov qword [r15], rsi
jmp 0x14006f544
cmp byte [rbx], sil
jne case.0x14006f743.14
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x38], rsi
call qword [sym.imp.USER32.dll_GetCursorPos]
mov r9d, dword [rbx + 0x4c]
cmp r13, 0x26
mov r8d, dword [rbx + 0x48]
mov eax, 0xfffffff6
mov edx, dword [rbx + 0x28]
mov ecx, 0xa
cmove ecx, eax
add ecx, edx
lea eax, [r8 + r9]
cmp ecx, eax
jl 0x14006f826
mov eax, dword [rbx + 0x24]
sub eax, dword [rbx + 0x3c]
sub eax, dword [rbx + 0x1c]
sub eax, r8d
mov r8d, ecx
sub eax, r9d
cmp ecx, eax
cmovg r8d, eax
mov ecx, dword [rsp + 0x38]
sub r8d, edx
mov edx, dword [rsp + 0x3c]
add edx, r8d
mov dword [rsp + 0x3c], edx
call qword [sym.imp.USER32.dll_SetCursorPos]
mov eax, r12d
mov qword [r15], rsi
jmp 0x14006f544
mov qword [r15], rsi
jmp 0x14006f542
lea r14, [rbx - 0x40]
lea rdi, [rbx - 0x48]
cmp ebp, 7
jne 0x14006f89a
call qword [sym.imp.USER32.dll_GetCapture]
test rbx, rbx
mov ecx, 8
cmove r14, rcx
cmp rax, qword [r14]
je 0x14006f892
movsxd rax, dword [rbx + 0x64]
cmp eax, 0xffffffff
jne 0x14006f887
movsxd rax, dword [rbx + 0x38]
cmp eax, r12d
ja 0x14006f892
mov rcx, qword [rbx + rax*8 + 8]
call qword [sym.imp.USER32.dll_SetFocus]
mov qword [r15], r12
jmp 0x14006f542
cmp ebp, 0x21
jne 0x14006f8c4
lea rax, [rsp + 0xa0]
mov r8, r13
mov edx, ebp
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.14006dff0
mov qword [r15], rax
mov eax, r12d
jmp 0x14006f544
cmp ebp, 0x1a
jne 0x14006f542
test rbx, rbx
cmove rdi, rsi
test byte [rdi + 0xa8], 0x10
jne 0x14006f8f4
movzx eax, byte [rdi + 0x48]
neg al
sbb ecx, ecx
add ecx, 0x21
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [rdi + 0x84], eax
mov rcx, qword [rdi + 8]
mov edx, 0xffffffec
call qword [sym.imp.USER32.dll_GetWindowLongW]
bt eax, 9
movzx eax, byte [rdi + 0x48]
jae 0x14006f926
neg al
sbb ecx, ecx
add ecx, 0x2e
call qword [sym.imp.USER32.dll_GetSystemMetrics]
add eax, eax
mov dword [rdi + 0x94], eax
mov eax, esi
jmp 0x14006f93b
neg al
mov dword [rdi + 0x94], esi
sbb ecx, ecx
add ecx, 0x2e
call qword [sym.imp.USER32.dll_GetSystemMetrics]
add eax, eax
xor edx, edx
mov dword [rdi + 0x90], eax
lea r8, [rdi + 0x98]
xor r9d, r9d
lea ecx, [rdx + 0x26]
call qword [sym.imp.USER32.dll_SystemParametersInfoW]
lea rcx, [rdi + 0x48]
call fcn.1400734e0
mov qword [r15], rsi
movzx esi, r12b
mov eax, esi
jmp 0x14006f544