Function at 0x447770
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x3c
mov eax, dword [0x719dd4]
xor eax, esp
mov dword [esp + 0x38], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov edi, ecx
mov eax, dword [ebx]
cmp eax, 0xd
jne 0x44786c
cmp byte [edi + 0x390], 0
je 0x4479e3
mov eax, dword [edi]
lea ecx, [esp + 0x30]
push ecx
mov ecx, edi
call dword [eax + 0xb8]
push eax
lea ecx, [esp + 0x24]
call fcn.0046d252
lea ecx, [esp + 0x20]
call fcn.0046d8a5
mov esi, eax
lea ecx, [esp + 0x20]
sar esi, 1
add esi, dword [esp + 0x20]
call fcn.0046d89a
sar eax, 1
lea ecx, [esp + 0x18]
add eax, dword [esp + 0x24]
push eax
push esi
call fcn.0046d234
lea ecx, [esp + 0x10]
call fcn.0046d248
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov eax, dword [esp + 0x1c]
sub eax, dword [esp + 0x14]
movsd xmm1, qword [0x6680d0]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
call fcn.00637100
mov eax, dword [esp + 0x18]
sub eax, dword [esp + 0x10]
movsd xmm1, qword [0x6680d0]
movsd qword [esp + 0x30], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
call fcn.00637100
addsd xmm0, qword [esp + 0x30]
call fcn.00637c50
movsd xmm1, qword [0x6680d8]
comisd xmm1, xmm0
jb 0x4479e3
mov ecx, edi
mov byte [edi + 0x391], 1
call fcn.00476db8
jmp 0x4479e3
cmp eax, 0xe
jne 0x4478de
cmp byte [edi + 0x391], 0
je 0x4479e3
lea ecx, [esp + 0x10]
call fcn.0046d248
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
push dword [esp + 0x14]
mov eax, dword [edi]
lea ecx, [esp + 0x24]
push dword [esp + 0x14]
push ecx
mov ecx, edi
call dword [eax + 0xb8]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x4478cb
mov ecx, dword [edi + 0x9c]
push 0
push 0
push 0
push str.click
push edi
call fcn.0047407a
mov ecx, edi
mov byte [edi + 0x391], 0
call fcn.00476db8
jmp 0x4479e3
cmp eax, 9
jne 0x4479b9
cmp byte [edi + 0x390], 0
je 0x4479e3
mov eax, dword [edi]
lea ecx, [esp + 0x30]
push ecx
mov ecx, edi
call dword [eax + 0xb8]
push eax
lea ecx, [esp + 0x24]
call fcn.0046d252
lea ecx, [esp + 0x20]
call fcn.0046d8a5
mov esi, eax
lea ecx, [esp + 0x20]
sar esi, 1
add esi, dword [esp + 0x20]
call fcn.0046d89a
sar eax, 1
lea ecx, [esp + 0x18]
add eax, dword [esp + 0x24]
push eax
push esi
call fcn.0046d234
mov al, byte [edi + 0x392]
movsd xmm1, qword [0x6680d0]
mov byte [esp + 0xf], al
mov eax, dword [esp + 0x1c]
sub eax, dword [ebx + 0x10]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
call fcn.00637100
mov eax, dword [esp + 0x18]
sub eax, dword [ebx + 0xc]
movsd xmm1, qword [0x6680d0]
movsd qword [esp + 0x30], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
call fcn.00637100
addsd xmm0, qword [esp + 0x30]
call fcn.00637c50
movsd xmm1, qword [0x6680d8]
comisd xmm1, xmm0
jb 0x4479b2
cmp byte [esp + 0xf], 0
jne 0x4479e3
push 0
push 0
mov byte [edi + 0x392], 1
push 0x9dc
jmp 0x4479d7
cmp byte [esp + 0xf], 0
jmp 0x4479c5
cmp eax, 0xa
jne 0x4479e3
cmp byte [edi + 0x392], 0
je 0x4479e3
push 0
push 0
push 0x9dd
mov byte [edi + 0x392], 0
push dword [edi + 0x394]
call dword [sym.imp.USER32.dll_PostMessageW]
mov eax, dword [ebx]
mov ecx, edi
cmp eax, 0x18
jne 0x447a07
push 1
call fcn.0047967b
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x38]
xor ecx, esp
call fcn.0063024e
mov esp, ebp
pop ebp
ret 4
cmp eax, 0x17
jne 0x447a27
push 0
call fcn.0047967b
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x38]
xor ecx, esp
call fcn.0063024e
mov esp, ebp
pop ebp
ret 4
push ebx
call fcn.00475df2
mov ecx, dword [esp + 0x44]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0063024e
mov esp, ebp
pop ebp
ret 4