Function at 0x14007a9c0
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 0x14007ac62
xor esi, esi
mov r12d, 1
cmp r8d, r12d
jne 0x14007ab3b
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 0x14007aa51
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 0x14007aa86
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 0x14007aa98
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 0x14007af71
cmp ebp, 0x20
jne 0x14007aba0
test rbx, rbx
lea rdi, [rbx - 0x40]
mov ecx, 8
cmove rdi, rcx
cmp r13, qword [rdi]
jne 0x14007af69
cmp r9w, r12w
jne 0x14007af69
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.1400718b0
test al, al
je 0x14007af69
mov qword [r15], r12
mov eax, r12d
jmp 0x14007ac64
cmp ebp, 0xf
jne 0x14007ab6a
mov r9, qword [rsp + 0x90]
lea rax, [rsp + 0xa0]
mov r8, r13
mov qword [rsp + 0x20], rax
mov edx, ebp
call fcn.1400778e0
mov qword [r15], rax
mov rax, r12
jmp 0x14007ac64
cmp ebp, 0x318
jne 0x14007aab0
mov r9, qword [rsp + 0x90]
lea rax, [rsp + 0xa0]
mov r8, r13
mov qword [rsp + 0x20], rax
mov edx, ebp
call fcn.1400778e0
mov qword [r15], rax
mov rax, r12
jmp 0x14007ac64
movsx edi, r9w
lea r14, [rbx - 0x40]
cmp ebp, 0x200
jne 0x14007ac84
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 0x14007ac3a
mov eax, dword [rbx + 0x54]
cmp byte [rbx], sil
je 0x14007abe3
sub edi, dword [rbx + 0x18]
jmp 0x14007abe9
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 0x14007ac57
mov rcx, rbx
cmp byte [rbx + 0x50], sil
je 0x14007ac1e
movzx r8d, bpl
mov edx, edi
call fcn.14007f280
test al, al
je 0x14007ac57
mov rcx, qword [r14]
call qword [sym.imp.USER32.dll_UpdateWindow]
jmp 0x14007ac57
call fcn.14006c3f0
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.14007f280
mov rcx, rbx
call fcn.14006c3f0
jmp 0x14007ac57
mov r8d, r13d
mov edx, edi
mov rcx, rbx
call fcn.1400718b0
test al, al
je 0x14007ac55
mov rcx, qword [rbx + 0x40]
call qword [sym.imp.USER32.dll_SetCursor]
mov ebp, esi
mov qword [r15], rsi
test ebp, ebp
jne 0x14007ae15
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 0x14007ad50
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 0x14007ad1e
mov r8d, esi
mov edx, edi
mov rcx, rbx
call fcn.1400718b0
test al, al
je 0x14007ad1e
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 0x14007acf4
mov rcx, rbx
call fcn.14006c3f0
cmp byte [rbx], 0
mov eax, dword [rbx + 0x28]
je 0x14007ad0c
sub edi, dword [rbx + 0x18]
sub edi, eax
mov dword [rbx + 0x54], edi
mov qword [r15], r12
jmp 0x14007ac62
mov edi, esi
sub edi, dword [rbx + 0x1c]
sub edi, eax
mov dword [rbx + 0x54], edi
mov qword [r15], r12
jmp 0x14007ac62
call qword [sym.imp.USER32.dll_GetCapture]
cmp rax, qword [r14]
jne 0x14007afb2
mov r8d, esi
mov edx, edi
mov rcx, rbx
call fcn.1400718b0
test al, al
jne 0x14007afb2
call qword [sym.imp.USER32.dll_ReleaseCapture]
mov qword [r15], r12
jmp 0x14007ac62
cmp ebp, 0x202
jne 0x14007ad87
call qword [sym.imp.USER32.dll_GetCapture]
test rbx, rbx
mov ecx, 8
cmove r14, rcx
cmp rax, qword [r14]
jne 0x14007afb2
mov eax, dword [rbx + 0x28]
mov dword [rbx + 0x2c], eax
call qword [sym.imp.USER32.dll_ReleaseCapture]
mov qword [r15], r12
jmp 0x14007ac62
lea rdi, [rbx - 0x48]
cmp ebp, 0x203
jne 0x14007adb7
test rbx, rbx
movzx r8d, r12b
mov edx, 0xffffffff
cmove rdi, rsi
lea rcx, [rdi + 0x48]
call fcn.14007f280
mov eax, r12d
mov qword [r15], rsi
jmp 0x14007ac64
cmp ebp, 0x215
jne 0x14007ae1d
cmp byte [rbx + 0x50], sil
jne 0x14007adcd
mov rcx, rbx
call fcn.14006c3f0
mov eax, dword [rbx + 0x2c]
cmp eax, 0xffffffff
je 0x14007ae03
cmp byte [rbx + 0x50], sil
je 0x14007ade0
cmp dword [rbx + 0x28], eax
je 0x14007ae03
mov rcx, rbx
mov dword [rbx + 0x28], eax
mov dword [rbx + 0x2c], 0xffffffff
call fcn.140081310
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.0x14007ae63.14
call qword [sym.imp.USER32.dll_SetFocus]
mov qword [r15], rsi
mov eax, r12d
jmp 0x14007ac64
cmp ebp, 0x100
jne 0x14007af79
call qword [sym.imp.USER32.dll_GetCapture]
test rbx, rbx
cmove rdi, rsi
cmp rax, qword [rdi + 8]
jne 0x14007af69
lea rax, [r13 - 0xd]
cmp rax, 0x1b
ja case.0x14007ae63.14
lea rdx, [0x140000000]
movzx eax, byte [rdx + rax + 0x7b0a4]
mov ecx, dword [rdx + rax*4 + 0x7b090]
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 0x14007ac64
cmp byte [rbx], sil
je case.0x14007ae63.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 0x14007aecd
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 0x14007ac64
cmp byte [rbx], sil
jne case.0x14007ae63.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 0x14007af46
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 0x14007ac64
mov qword [r15], rsi
jmp 0x14007ac62
lea r14, [rbx - 0x40]
lea rdi, [rbx - 0x48]
cmp ebp, 7
jne 0x14007afba
call qword [sym.imp.USER32.dll_GetCapture]
test rbx, rbx
mov ecx, 8
cmove r14, rcx
cmp rax, qword [r14]
je 0x14007afb2
movsxd rax, dword [rbx + 0x64]
cmp eax, 0xffffffff
jne 0x14007afa7
movsxd rax, dword [rbx + 0x38]
cmp eax, r12d
ja 0x14007afb2
mov rcx, qword [rbx + rax*8 + 8]
call qword [sym.imp.USER32.dll_SetFocus]
mov qword [r15], r12
jmp 0x14007ac62
cmp ebp, 0x21
jne 0x14007afe4
lea rax, [rsp + 0xa0]
mov r8, r13
mov edx, ebp
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140076d70
mov qword [r15], rax
mov eax, r12d
jmp 0x14007ac64
cmp ebp, 0x1a
jne 0x14007ac62
test rbx, rbx
cmove rdi, rsi
test byte [rdi + 0xa8], 0x10
jne 0x14007b014
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 0x14007b046
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 0x14007b05b
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.140081310
mov qword [r15], rsi
movzx esi, r12b
mov eax, esi
jmp 0x14007ac64