Function at 0x1801b3f80
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x48]
sub rsp, 0x148
mov qword [rbp - 0x80], 0xfffffffffffffffe
mov rax, qword [0x1802d1460]
xor rax, rsp
mov qword [rbp + 0x30], rax
mov rdi, r9
mov qword [rsp + 0x30], r9
mov r12, r8
mov r13d, edx
mov rbx, rcx
cmp edx, 1
jne 0x1801b423b
mov byte [rcx + 0x428], dl
mov rdx, qword [rcx + 8]
add rcx, 0x20
call fcn.18016ca20
mov ecx, 0x7e8
call fcn.1801c7c04
mov rsi, rax
mov qword [rsp + 0x40], rax
mov rdi, qword [rbx + 0x570]
mov rcx, rax
call fcn.180182d80
xor r15d, r15d
mov qword [rsi + 0x7b8], r15
mov byte [rsi + 0x7d8], r15b
mov qword [rsi + 0x7c0], r15
xor eax, eax
mov qword [rsi + 0x7c8], rax
mov qword [rsi + 0x7d0], rax
lea rax, vtable.DuiLib::CComboBodyUI.1.0
mov qword [rsi], rax
lea rax, vtable.DuiLib::CComboBodyUI.0
mov qword [rsi + 0x770], rax
mov qword [rsi + 0x7e0], rdi
mov qword [rbx + 0x578], rsi
mov rax, qword [rsi]
movzx r9d, r13b
xor r8d, r8d
lea rdx, [rbx + 0x20]
mov rcx, rsi
call qword [rax + 0x118]
mov rcx, qword [rbx + 0x570]
mov rax, qword [rcx]
call qword [rax + 0x110]
lea rcx, [rax + 0x520]
movzx r8d, r13b
lea rdx, str.VerticalLayout
call fcn.18016bb20
test rax, rax
jne 0x1801b40aa
movzx r8d, r13b
lea rdx, str.VerticalLayout
lea rcx, [0x1802f1100]
call fcn.18016bb20
test rax, rax
je 0x1801b40c2
mov rdx, qword [rax]
test rdx, rdx
je 0x1801b40c2
mov rcx, qword [rbx + 0x578]
mov rax, qword [rcx]
call qword [rax + 0x338]
movdqa xmm0, xmmword [0x18026b340]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, qword [rbx + 0x578]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
call qword [rax + 0x390]
mov rcx, qword [rbx + 0x578]
cmp dword [rcx + 0x458], 0xffffffff
je 0x1801b410b
mov dword [rcx + 0x458], 0xffffffff
call fcn.180176e70
mov rcx, qword [rbx + 0x578]
cmp dword [rcx + 0x718], 0xffc6c7d2
je 0x1801b412d
mov dword [rcx + 0x718], 0xffc6c7d2
call fcn.180176e70
mov rcx, qword [rbx + 0x578]
mov edx, 1
call fcn.180175980
mov rcx, qword [rbx + 0x578]
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x3d0]
mov rcx, qword [rbx + 0x578]
mov rax, qword [rcx]
xor r8d, r8d
mov dl, 1
call qword [rax + 0x478]
mov rdx, qword [rbx + 0x570]
lea rax, [rbp - 0x58]
mov qword [rbp - 0x60], rax
mov word [rbp - 0x58], r15w
mov r8d, 0xffffffff
mov rdx, qword [rdx + 0x7e0]
lea rcx, [rbp - 0x60]
call fcn.18016b370
nop
mov rcx, qword [rbx + 0x578]
mov rax, qword [rcx]
mov rdx, qword [rbp - 0x60]
call qword [rax + 0x338]
nop
lea rax, [rbp - 0x58]
mov rcx, qword [rbp - 0x60]
cmp rcx, rax
je 0x1801b41b0
call fcn.1801cc408
mov rcx, qword [rbx + 0x570]
add rcx, 0x770
mov rax, qword [rcx]
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
test eax, eax
jle 0x1801b4224
nop dword [rax + rax]
mov rax, qword [rbx + 0x578]
mov rdi, qword [rax + 0x770]
mov rcx, qword [rbx + 0x570]
add rcx, 0x770
mov rax, qword [rcx]
mov edx, r15d
call qword [rax]
mov rdx, rax
mov rcx, qword [rbx + 0x578]
add rcx, 0x770
call qword [rdi + Ordinal_41]
inc r15d
mov rcx, qword [rbx + 0x570]
add rcx, 0x770
mov rax, qword [rcx]
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
cmp r15d, eax
jl 0x1801b41d0
mov rdx, qword [rbx + 0x578]
lea rcx, [rbx + 0x20]
call fcn.18016f490
xor eax, eax
jmp 0x1801b45fe
xor r15d, r15d
cmp r13d, 0x10
jne 0x1801b42ef
mov rax, qword [rcx + 0x570]
mov r14, qword [rax]
mov rdi, rax
mov rcx, rax
call qword [r14 + 0x120]
mov rsi, rax
mov rdx, qword [rdi]
mov rcx, rdi
call qword [rdx + 0x110]
mov rdx, rax
xor r9d, r9d
mov r8, rsi
mov rcx, qword [rbx + 0x570]
call qword [r14 + 0x118]
mov rcx, qword [rbx + 0x570]
mov rax, qword [rcx]
call qword [rax + 0x2e8]
mov rcx, qword [rbx + 0x570]
test al, al
mov rax, qword [rcx]
jne 0x1801b42ab
call qword [rax + 0x158]
jmp 0x1801b42b5
lea rdx, [rbp - 0x78]
call qword [rax + 0x160]
movups xmm0, xmmword [rax]
mov rcx, qword [rbx + 0x570]
mov rax, qword [rcx]
movaps xmmword [rsp + 0x40], xmm0
xor r8d, r8d
lea rdx, [rsp + 0x40]
call qword [rax + 0x170]
mov rcx, qword [rbx + 0x570]
mov rax, qword [rcx]
call qword [rax + 0x2e0]
mov rdi, qword [rsp + 0x30]
jmp 0x1801b45b9
lea eax, [rdx - 0x201]
test eax, 0xfffffffd
je 0x1801b4523
cmp r13d, 0x202
jne 0x1801b43a0
cmp byte [rcx + 0x584], r15b
je 0x1801b4322
mov byte [rcx + 0x584], r15b
jmp 0x1801b45b9
mov qword [rsp + 0x30], r15
lea rcx, [rsp + 0x30]
call qword [sym.imp.USER32.dll_GetCursorPos]
lea rdx, [rsp + 0x30]
mov rcx, qword [rbx + 0xa8]
call qword [sym.imp.USER32.dll_ScreenToClient]
lea rcx, [rbx + 0x20]
mov rdx, qword [rsp + 0x30]
call fcn.1801729a0
test rax, rax
je 0x1801b45b9
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xe8]
lea r8, str.ScrollBar
mov rdx, r15
movzx ecx, word [rax + rdx*2]
cmp cx, word [r8 + rdx*2]
jne 0x1801b4429
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r8 + rdx*2 + 2]
jne 0x1801b4429
add rdx, 2
cmp rdx, 0xa
jne 0x1801b4371
jmp 0x1801b45b9
cmp r13d, 0x100
jne 0x1801b4442
cmp r12, 0xd
je 0x1801b4429
mov rcx, qword [rcx + 0x570]
cmp r12, 0x1b
je 0x1801b4401
mov dword [rsp + 0x50], 3
mov word [rsp + 0x6c], r12w
mov rax, qword [rcx]
lea rdx, [rsp + 0x50]
call qword [rax + 0x318]
mov rcx, qword [rbx + 0x570]
add rcx, 0x7b8
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov edx, eax
mov rcx, rbx
call fcn.1801b4620
xor eax, eax
jmp 0x1801b45fe
add rcx, 0x7b8
mov rax, qword [rcx]
mov r9b, 1
movzx r8d, r9b
mov edx, dword [rbx + 0x580]
call qword [rax + reloc.WS2_32.dll_recv]
mov edx, dword [rbx + 0x580]
mov rcx, rbx
call fcn.1801b4620
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 8]
mov rcx, qword [rbx + 8]
call qword [sym.imp.USER32.dll_PostMessageW]
jmp 0x1801b45b9
cmp r13d, 0x20a
jne 0x1801b44c0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x54], xmm0
mov qword [rsp + 0x64], r15
mov dword [rsp + 0x6c], r15d
mov dword [rsp + 0x50], reloc.WS2_32.dll_select
shr r12, 0x10
movzx eax, r12w
shr rax, 0xf
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], r9
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rsp + 0x60], eax
mov rcx, qword [rbx + 0x570]
mov rax, qword [rcx]
lea rdx, [rsp + 0x50]
call qword [rax + 0x318]
mov rcx, qword [rbx + 0x570]
add rcx, 0x7b8
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov edx, eax
mov rcx, rbx
call fcn.1801b4620
xor eax, eax
jmp 0x1801b45fe
cmp r13d, 8
jne 0x1801b45b9
cmp qword [rcx + 8], r12
je 0x1801b45b9
call qword [sym.imp.USER32.dll_GetFocus]
mov rcx, rax
call qword [sym.imp.USER32.dll_GetParent]
test rax, rax
je 0x1801b4508
nop dword [rax + rax]
cmp qword [rbx + 8], rax
je 0x1801b45b9
mov rcx, rax
call qword [sym.imp.USER32.dll_GetParent]
test rax, rax
jne 0x1801b44f0
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x10]
mov rcx, qword [rbx + 8]
call qword [sym.imp.USER32.dll_PostMessageW]
xor eax, eax
jmp 0x1801b45fe
mov qword [rsp + 0x30], r15
lea rcx, [rsp + 0x30]
call qword [sym.imp.USER32.dll_GetCursorPos]
lea rdx, [rsp + 0x30]
mov rcx, qword [rbx + 0xa8]
call qword [sym.imp.USER32.dll_ScreenToClient]
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x40], rax
mov rcx, qword [rbx + 0x140]
mov rax, qword [rcx]
mov r9d, reloc.WS2_32.dll_setsockopt
lea r8, [rsp + 0x40]
lea rdx, [0x180172a70]
call qword [rax + 0x2f8]
test rax, rax
je 0x1801b45b9
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xe8]
lea r8, str.ScrollBar
mov rdx, r15
nop dword [rax]
movzx ecx, word [rax + rdx*2]
cmp cx, word [r8 + rdx*2]
jne 0x1801b45b9
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r8 + rdx*2 + 2]
jne 0x1801b45b9
add rdx, 2
cmp rdx, 0xa
jne 0x1801b4590
mov byte [rbx + 0x584], 1
mov qword [rsp + 0x30], r15
lea rcx, [rbx + 0x20]
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov r9, rdi
mov r8, r12
mov edx, r13d
call fcn.18016cd30
test al, al
je 0x1801b45e5
mov rax, qword [rsp + 0x30]
jmp 0x1801b45fe
mov qword [rsp + 0x20], rdi
mov r9, r12
mov r8d, r13d
mov rdx, qword [rbx + 8]
mov rcx, qword [rbx + 0x10]
call qword [sym.imp.USER32.dll_CallWindowProcW]
mov rcx, qword [rbp + 0x30]
xor rcx, rsp
call fcn.1801c74b0
add rsp, 0x148
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret