Function at 0x140005e80
Capabilities:
Check for unmoving mouse cursor
Create thread

Disassembly:
push rsi
sub rsp, 0x50
cmp byte [rcx + 0x17], 0
mov rsi, rcx
je 0x140006145
cmp byte [rcx + 0xc], 0
je 0x140006145
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rbp
mov byte [rcx + 0x75], 1
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
movsxd r15, dword [rsi + 0x68]
movabs r12, 0x6666666666666667
movsxd r14, dword [rsi + 0x38]
mov rcx, rax
mov rax, r12
xor dil, dil
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
add r15, rdx
add r14, rdx
cmp dword [rsi + 0x20], 2
jne 0x140005f02
mov bpl, 1
jmp 0x140005f39
mov ebx, dword [rsi + 0x80]
test ebx, ebx
jne 0x140005f11
xor bpl, bpl
jmp 0x140005f39
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x288df0cb
imul r8d
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x65
sub r8d, ecx
cmp r8d, ebx
setle bpl
cmp byte [rsi + 0xc], dil
je 0x140006123
movaps xmmword [rsp + 0x20], xmm6
movss xmm6, dword [0x140089404]
cmp byte [rsi + 0x17], 0
je 0x14000611e
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x60], 1
call fcn.140008b00
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
mov rcx, rax
mov rax, r12
imul rcx
mov rbx, rdx
sar rbx, 2
mov rax, rbx
shr rax, 0x3f
add rbx, rax
cmp byte [rsi + 0x74], 0
je 0x140005fff
test dil, dil
jne 0x140005fff
cmp rbx, r14
jl 0x140005fff
test bpl, bpl
je 0x140005ffc
mov rcx, rsi
call fcn.140005c80
cmp byte [rsi + 0x19], dil
jne 0x140005ffc
lea rcx, [rsi + 0xb0]
call qword [sym.imp.USER32.dll_GetCursorPos]
mov rcx, qword [rsi + 0xa8]
lea rdx, [rsi + 0xb0]
call qword [sym.imp.USER32.dll_ScreenToClient]
movzx r9d, word [rsi + 0xb4]
movzx eax, word [rsi + 0xb0]
mov edx, dword [rsi]
movsxd r8, dword [rsi + 4]
inc edx
mov rcx, qword [rsi + 0xa8]
shl r9, 0x10
or r9, rax
call qword [sym.imp.USER32.dll_PostMessageA]
mov dil, 1
cmp rbx, r15
jl 0x140006114
mov rcx, rsi
call fcn.140005c80
cmp byte [rsi + 0xb8], 0
je 0x140006069
mov ecx, dword [rsi + 0xbc]
test ecx, ecx
je 0x14000603b
sub ecx, 1
je 0x140006041
sub ecx, 1
je 0x140006057
cmp ecx, 1
jne 0x140006069
lea rcx, [0x140079530]
jmp 0x14000605e
cmp byte [rsi + 0x74], 0
je 0x14000604a
lea rcx, [0x140078920]
jmp 0x14000605e
comiss xmm6, dword [rsi + 0x5c]
lea rcx, [0x140079530]
ja 0x14000605e
lea rcx, [0x1400790e0]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthread]
cmp byte [rsi + 0x19], 0
jne 0x1400060bb
lea rcx, [rsi + 0xb0]
call qword [sym.imp.USER32.dll_GetCursorPos]
mov rcx, qword [rsi + 0xa8]
lea rdx, [rsi + 0xb0]
call qword [sym.imp.USER32.dll_ScreenToClient]
movzx r9d, word [rsi + 0xb4]
movzx eax, word [rsi + 0xb0]
mov edx, dword [rsi]
movsxd r8, dword [rsi + 4]
inc edx
mov rcx, qword [rsi + 0xa8]
shl r9, 0x10
or r9, rax
call qword [sym.imp.USER32.dll_PostMessageA]
movsxd rax, dword [rsi + 0x68]
xor dil, dil
add r15, rax
imul eax, dword [rsi + 0x38], 0x3e8
movsxd r14, eax
add r14, rbx
cmp dword [rsi + 0x20], 2
jne 0x1400060dd
mov bpl, 1
jmp 0x140006114
mov ebx, dword [rsi + 0x80]
test ebx, ebx
jne 0x1400060ec
xor bpl, bpl
jmp 0x140006114
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x288df0cb
imul r8d
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x65
sub r8d, ecx
cmp r8d, ebx
setle bpl
cmp byte [rsi + 0xc], 0
jne 0x140005f50
movaps xmm6, xmmword [rsp + 0x20]
mov r15, qword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x68]
mov byte [rsi + 0x75], 0
add rsp, 0x50
pop rsi
ret