Function at 0x1400b9a90
Capabilities:
Check for unmoving mouse cursor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xf0
movaps xmmword [rsp + 0xe0], xmm6
mov rax, qword [0x1402fa010]
xor rax, rsp
mov qword [rbp + 0xf], rax
mov r14, rdx
mov qword [rbp - 0x79], rdx
mov r15, rcx
mov qword [rbp - 0x71], rdx
add rcx, 0x58
call fcn.140017ba0
mov rcx, qword [r15 + 8]
call qword [sym.imp.USER32.dll_GetDC]
lea rcx, [r15 + 0x48]
mov dword [rsp + 0x28], 0
mov r12d, 0xffffffff
mov dword [rsp + 0x20], r12d
mov r9, qword [r15 + 0x58]
mov r8, rax
lea rdx, [rbp - 0x69]
call fcn.140039650
mov rsi, qword [rax]
mov rbx, rsi
shr rbx, 0x20
movsxd rax, dword [r15 + 0x98]
test eax, eax
jne 0x1400b9b27
call fcn.140038150
movsxd rax, dword [rax]
lea rcx, [rax + rax*4]
movabs rdi, 0x2aaaaaaaaaaaaaab
mov rax, rdi
add rcx, rcx
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov r8, rbx
add esi, edx
mov dword [rsp + 0x40], esi
movsxd rax, dword [r15 + 0x98]
test eax, eax
jne 0x1400b9b6a
call fcn.140038150
movsxd rax, dword [rax]
jmp 0x1400b9b6d
mov ebx, r8d
lea rcx, [rax + rax*4]
mov rax, rdi
add rcx, rcx
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea r13d, [rbx + rdx]
mov rbx, qword [r15 + 0x60]
test rbx, rbx
jne 0x1400b9bf4
lea ecx, [rbx + 0x68]
call fcn.1401f4268
mov rbx, rax
mov qword [rsp + 0x48], rax
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx + 0x20], xmm0
movups xmmword [rbx + 0x30], xmm0
movups xmmword [rbx + 0x40], xmm0
movups xmmword [rbx + 0x50], xmm0
mov qword [rbx + 0x60], rax
lea rax, vtable.XBitmap.0
mov qword [rbx], rax
lea rax, [rbx + 0x10]
mov qword [rbp - 0x29], rax
xor ecx, ecx
mov dword [rax], ecx
mov qword [rax + 8], rcx
mov qword [rax + 0x10], rcx
mov qword [rbx + 0x48], rcx
mov rcx, rbx
call fcn.14008b750
nop
mov qword [r15 + 0x60], rbx
cmp dword [rbx + 0x30], esi
jl 0x1400b9bff
cmp dword [rbx + 0x34], r13d
jge 0x1400b9c12
mov r9d, 0x18
mov r8d, r13d
mov edx, esi
mov rcx, rbx
call fcn.14008b990
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x39], xmm0
xor eax, eax
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x61]
call qword [sym.imp.USER32.dll_GetCursorPos]
lea rcx, [r15 + 0x68]
call qword [sym.imp.USER32.dll_GetCursorPos]
mov edx, 2
mov rcx, qword [rbp - 0x61]
call qword [sym.imp.USER32.dll_MonitorFromPoint]
mov dword [rbp - 0x19], 0x28
lea rdx, [rbp - 0x19]
mov rcx, rax
call qword [sym.imp.USER32.dll_GetMonitorInfoW]
test eax, eax
jne 0x1400b9c6f
xor r9d, r9d
lea r8, [rbp - 0x39]
xor edx, edx
lea ecx, [rax + 0x30]
call qword [sym.imp.USER32.dll_SystemParametersInfoW]
jmp 0x1400b9c7d
lea rdx, [rbp - 5]
lea rcx, [rbp - 0x39]
call qword [sym.imp.USER32.dll_CopyRect]
mov eax, dword [r15 + 0x84]
test eax, eax
jne 0x1400b9d3e
movsxd rax, dword [r15 + 0x98]
test eax, eax
jne 0x1400b9caf
call fcn.140038150
movsxd rcx, dword [rax]
lea rdx, [rcx + rcx*4]
shl rdx, 2
mov rax, rdi
imul rdx
jmp 0x1400b9cbd
lea rcx, [rax + rax*4]
shl rcx, 2
mov rax, rdi
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
add dword [rbp - 0x5d], edx
mov edx, dword [rbp - 0x61]
mov eax, dword [rbp - 0x5d]
lea ecx, [rax + r13]
lea r8d, [rdx + rsi]
mov dword [rbp - 0x59], edx
mov dword [rbp - 0x55], eax
mov dword [rbp - 0x51], r8d
mov dword [rbp - 0x4d], ecx
movdqa xmm6, xmmword [rbp - 0x39]
movaps xmm0, xmmword [rbp - 0x59]
movdqa xmmword [rbp - 0x59], xmm0
movdqa xmm1, xmm6
psrldq xmm1, 8
movd r9d, xmm1
mov ecx, r9d
movd r10d, xmm6
sub ecx, r10d
mov eax, r8d
sub eax, edx
cmp eax, ecx
jg 0x1400b9e54
cmp r8d, r9d
jle 0x1400b9e3a
sub r9d, r8d
xor r8d, r8d
mov edx, r9d
lea rcx, [rbp - 0x59]
call qword [sym.imp.USER32.dll_OffsetRect]
jmp 0x1400b9e5c
cmp eax, 1
jne 0x1400b9d8e
movsxd rax, dword [r15 + 0x98]
test eax, eax
jne 0x1400b9d66
call fcn.140038150
movsxd rcx, dword [rax]
lea rdx, [rcx + rcx*4]
shl rdx, 2
mov rax, rdi
imul rdx
jmp 0x1400b9d74
lea rcx, [rax + rax*4]
shl rcx, 2
mov rax, rdi
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea eax, [rdx + r13]
sub dword [rbp - 0x5d], eax
jmp 0x1400b9cce
cmp eax, 2
jne 0x1400b9de2
movsxd rax, dword [r15 + 0x98]
test eax, eax
jne 0x1400b9db6
call fcn.140038150
movsxd rcx, dword [rax]
lea rdx, [rcx + rcx*4]
shl rdx, 2
mov rax, rdi
imul rdx
jmp 0x1400b9dc4
lea rcx, [rax + rax*4]
shl rcx, 2
mov rax, rdi
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea eax, [rdx + rsi]
mov edx, dword [rbp - 0x61]
sub edx, eax
mov dword [rbp - 0x61], edx
jmp 0x1400b9cd1
cmp eax, 3
jne 0x1400b9cce
movsxd rax, dword [r15 + 0x98]
test eax, eax
jne 0x1400b9e0e
call fcn.140038150
movsxd rcx, dword [rax]
lea rdx, [rcx + rcx*4]
shl rdx, 2
mov rax, rdi
imul rdx
jmp 0x1400b9e1c
lea rcx, [rax + rax*4]
shl rcx, 2
mov rax, rdi
imul rcx
mov rcx, rdx
sar rcx, 4
mov rax, rcx
shr rax, 0x3f
add rcx, rax
mov edx, dword [rbp - 0x61]
add edx, ecx
mov dword [rbp - 0x61], edx
jmp 0x1400b9cd1
cmp edx, r10d
jge 0x1400b9e5c
sub r10d, edx
xor r8d, r8d
mov edx, r10d
lea rcx, [rbp - 0x59]
call qword [sym.imp.USER32.dll_OffsetRect]
jmp 0x1400b9e5c
mov dword [rbp - 0x59], r10d
mov dword [rbp - 0x51], r9d
mov r9d, dword [rbp - 0x4d]
mov ecx, r9d
mov r10d, dword [rbp - 0x55]
sub ecx, r10d
movdqa xmm0, xmm6
psrldq xmm0, 0xc
movd edx, xmm0
mov eax, edx
psrldq xmm6, 4
movd r8d, xmm6
sub eax, r8d
cmp ecx, eax
jg 0x1400b9eb9
cmp r9d, edx
jle 0x1400b9ea3
sub edx, r9d
mov r8d, edx
xor edx, edx
lea rcx, [rbp - 0x59]
call qword [sym.imp.USER32.dll_OffsetRect]
jmp 0x1400b9ec0
cmp r10d, r8d
jge 0x1400b9ec0
sub r8d, r10d
xor edx, edx
lea rcx, [rbp - 0x59]
call qword [sym.imp.USER32.dll_OffsetRect]
jmp 0x1400b9ec0
mov dword [rbp - 0x55], r8d
mov dword [rbp - 0x4d], edx
mov rdx, qword [r15 + 0x68]
lea rcx, [rbp - 0x59]
call qword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x1400b9fe2
mov ecx, dword [r15 + 0x6c]
sub ecx, r13d
add ecx, 0xfffffffb
mov dword [rbp - 0x5d], ecx
lea eax, [rcx + r13]
mov r8d, dword [rbp - 0x61]
lea r10d, [r8 + rsi]
mov dword [rbp - 0x59], r8d
mov dword [rbp - 0x55], ecx
mov dword [rbp - 0x51], r10d
mov dword [rbp - 0x4d], eax
movdqa xmm6, xmmword [rbp - 0x39]
movaps xmm0, xmmword [rbp - 0x59]
movdqa xmmword [rbp - 0x59], xmm0
movdqa xmm1, xmm6
psrldq xmm1, 8
movd edx, xmm1
mov ecx, edx
movd r9d, xmm6
sub ecx, r9d
mov eax, r10d
sub eax, r8d
cmp eax, ecx
jg 0x1400b9f5d
cmp r10d, edx
jle 0x1400b9f43
sub edx, r10d
xor r8d, r8d
lea rcx, [rbp - 0x59]
call qword [sym.imp.USER32.dll_OffsetRect]
jmp 0x1400b9f64
cmp r8d, r9d
jge 0x1400b9f64
sub r9d, r8d
xor r8d, r8d
mov edx, r9d
lea rcx, [rbp - 0x59]
call qword [sym.imp.USER32.dll_OffsetRect]
jmp 0x1400b9f64
mov dword [rbp - 0x59], r9d
mov dword [rbp - 0x51], edx
mov r9d, dword [rbp - 0x4d]
mov ecx, r9d
mov r10d, dword [rbp - 0x55]
sub ecx, r10d
movdqa xmm0, xmm6
psrldq xmm0, 0xc
movd edx, xmm0
mov eax, edx
psrldq xmm6, 4
movd r8d, xmm6
sub eax, r8d
cmp ecx, eax
jg 0x1400b9fc1
cmp r9d, edx
jle 0x1400b9fab
sub edx, r9d
mov r8d, edx
xor edx, edx
lea rcx, [rbp - 0x59]
call qword [sym.imp.USER32.dll_OffsetRect]
jmp 0x1400b9fc8
cmp r10d, r8d
jge 0x1400b9fc8
sub r8d, r10d
xor edx, edx
lea rcx, [rbp - 0x59]
call qword [sym.imp.USER32.dll_OffsetRect]
jmp 0x1400b9fc8
mov dword [rbp - 0x55], r8d
mov dword [rbp - 0x4d], edx
mov rdx, qword [r15 + 0x68]
lea rcx, [rbp - 0x59]
call qword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x1400b9fe2
mov rdx, qword [r14]
jmp 0x1400ba202
mov r8d, dword [rbp - 0x59]
mov dword [rbp - 0x61], r8d
mov r9d, dword [rbp - 0x55]
mov dword [rbp - 0x5d], r9d
mov dword [rsp + 0x30], 0x50
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], esi
xor edx, edx
mov rcx, qword [r15 + 8]
call qword [sym.imp.USER32.dll_SetWindowPos]
xor r8d, r8d
xor edx, edx
mov rcx, qword [r15 + 8]
call qword [sym.imp.USER32.dll_InvalidateRect]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x49], xmm0
mov edx, dword [r15 + 0x88]
mov rcx, qword [r15 + 0x60]
call fcn.14008bf50
mov rcx, qword [r15 + 0x60]
call fcn.14008bea0
mov rbx, rax
mov qword [rsp + 0x48], rax
mov edx, 1
mov rcx, rax
call qword [sym.imp.GDI32.dll_SetBkMode]
lea rdx, [rbp - 0x49]
mov rcx, qword [r15 + 8]
call qword [sym.imp.USER32.dll_GetClientRect]
movsxd rcx, dword [r15 + 0x98]
test ecx, ecx
jne 0x1400ba090
call fcn.140038150
movsxd rcx, dword [rax]
lea rdx, [rcx + rcx*4]
mov rax, rdi
imul rdx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
jmp 0x1400ba0a8
lea rcx, [rcx + rcx*4]
mov rax, rdi
imul rcx
sar rdx, 4
mov rcx, rdx
shr rcx, 0x3f
add rdx, rcx
add dword [rbp - 0x49], edx
movsxd rax, dword [r15 + 0x98]
test eax, eax
jne 0x1400ba0ca
call fcn.140038150
movsxd rcx, dword [rax]
lea rdx, [rcx + rcx*4]
mov rax, rdi
imul rdx
jmp 0x1400ba0d4
lea rcx, [rax + rax*4]
mov rax, rdi
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov ecx, dword [rbp - 0x45]
inc ecx
add ecx, edx
mov dword [rbp - 0x45], ecx
mov edx, dword [r15 + 0x8c]
mov rcx, rbx
call qword [sym.imp.GDI32.dll_SetTextColor]
mov rsi, qword [r15 + 0x58]
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x29]
call qword [sym.imp.USER32.dll_CopyRect]
mov edx, 1
mov rcx, rbx
call qword [sym.imp.GDI32.dll_SetBkMode]
mov r14d, eax
mov edx, dword [r15 + 0x50]
mov rcx, rbx
call qword [sym.imp.GDI32.dll_SetTextColor]
mov edi, eax
mov rdx, qword [r15 + 0x48]
mov rcx, rbx
call qword [sym.imp.GDI32.dll_SelectObject]
mov rbx, rax
mov dword [rsp + 0x20], 0
lea r9, [rbp - 0x29]
mov r8d, r12d
mov rdx, rsi
mov rsi, qword [rsp + 0x48]
mov rcx, rsi
call qword [sym.imp.USER32.dll_DrawTextW]
mov rdx, rbx
mov rcx, rsi
call qword [sym.imp.GDI32.dll_SelectObject]
mov edx, edi
mov rcx, rsi
call qword [sym.imp.GDI32.dll_SetTextColor]
mov edx, r14d
mov rcx, rsi
call qword [sym.imp.GDI32.dll_SetBkMode]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call qword [sym.imp.GDI32.dll_MoveToEx]
mov edi, dword [rsp + 0x40]
xor r8d, r8d
lea edx, [rdi - 1]
mov rcx, rsi
call qword [sym.imp.GDI32.dll_LineTo]
lea r8d, [r13 - 1]
lea edx, [rdi - 1]
mov rcx, rsi
call qword [sym.imp.GDI32.dll_LineTo]
lea r8d, [r13 - 1]
xor edx, edx
mov rcx, rsi
call qword [sym.imp.GDI32.dll_LineTo]
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call qword [sym.imp.GDI32.dll_LineTo]
mov rcx, qword [r15 + 0x60]
mov eax, dword [rcx + 0x60]
sub eax, 1
jns 0x1400ba1e7
mov dword [rcx + 0x60], 0
jmp 0x1400ba1ee
mov dword [rcx + 0x60], eax
test eax, eax
jne 0x1400ba1fb
cmp qword [rcx + 0x50], 0
je 0x1400ba1fb
call fcn.14008bf00
nop
mov rdx, qword [rbp - 0x79]
mov rdx, qword [rdx]
sub rdx, 0x18
lock xadd dword [rdx + 0x10], r12d
sub r12d, 1
jg 0x1400ba222
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038716.0]
mov rcx, qword [rbp + 0xf]
xor rcx, rsp
call fcn.1401f3bf0
mov rbx, qword [rsp + 0x140]
movaps xmm6, xmmword [rsp + 0xe0]
add rsp, 0xf0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret