Function at 0x42854a
Capabilities:
Check for unmoving mouse cursor

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
mov esi, ecx
push edi
push esi
call fcn.004e939b
push eax
push 0x53f3d0
call fcn.00472f30
mov ebx, dword [ebp + 8]
xor edi, edi
add esp, 0xc
cmp ebx, edi
je 0x42858e
mov eax, dword [ebx]
push esi
mov ecx, ebx
call dword [eax + 0x15c]
test eax, eax
jne 0x42858e
cmp ebx, esi
je 0x42858e
xor eax, eax
jmp 0x4287bc
mov ebx, dword [ebp + 0x10]
cmp ebx, 4
jne 0x42859b
cmp dword [ebp + 0xc], edi
je 0x428587
mov byte [esi + 0x294], 0
cmp ebx, 2
je 0x42867d
cmp ebx, 3
je 0x42867d
mov dword [ebp - 0xc], edi
mov dword [ebp - 8], edi
cmp ebx, 1
je 0x4285c4
cmp ebx, 5
jne 0x4285ce
lea eax, [ebp - 0xc]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov dword [ebp - 4], edi
cmp dword [ebp + 8], edi
jne 0x428621
mov dword [ebp + 8], edi
cmp ebx, 1
je 0x4285e3
cmp ebx, 5
jne 0x428587
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 4]
push eax
push dword [ebp - 0x10]
mov ecx, esi
push dword [ebp - 0x14]
call fcn.00453415
test eax, eax
je 0x428587
push dword [ebp + 8]
mov eax, dword [esi]
push 0xffffffffffffffff
push edi
push 1
push edi
push dword [ebp - 4]
mov ecx, esi
call dword [eax + 0x1d8]
jmp 0x4287bc
cmp ebx, 1
je 0x42863a
cmp ebx, 5
je 0x42863a
cmp dword [ebp + 0xc], edi
je 0x428587
push dword [ebp + 0xc]
push edi
jmp 0x42866b
push edi
push 0xf000
lea eax, [ebp - 4]
push eax
push edi
push edi
push dword [0x579134]
mov ecx, 0x579830
push dword [ebp + 8]
push dword [ebp - 8]
push dword [ebp - 0xc]
call fcn.004a5f1b
test eax, eax
je 0x428587
push edi
push dword [ebp - 4]
push dword [ebp + 8]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x330]
jmp 0x4287bc
lea ebx, [esi + 0x1b4]
push 1
mov ecx, ebx
call fcn.004ccec3
push edi
mov ecx, esi
mov dword [ebp + 8], eax
call fcn.004899ee
push dword [ebp + 0x10]
mov edi, dword [esi]
push esi
call fcn.004e939b
pop ecx
push eax
mov ecx, esi
call dword [edi + 0x2e4]
push dword [esi + 0x1c8]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1b8]
mov ecx, ebx
call fcn.004dd747
mov edi, eax
test edi, edi
je 0x4286d3
push dword [edi + 0x20]
mov ecx, esi
call fcn.0046263f
cmp dword [ebp + 8], 0
je 0x428733
push 1
mov ecx, ebx
call fcn.004c1e44
test eax, eax
mov eax, dword [ebp + 8]
je 0x4286ee
mov eax, dword [eax + 4]
jmp 0x4286f1
mov eax, dword [eax + 8]
test eax, eax
je 0x428733
mov edx, dword [esi]
push 0
push 1
push 2
push eax
mov ecx, esi
call dword [edx + 0x328]
mov edi, eax
neg edi
sbb edi, edi
neg edi
je 0x428720
mov eax, dword [esi]
push 1
push 0
push 1
mov ecx, esi
call dword [eax + 0x1fc]
mov eax, dword [esi]
push 0
mov ecx, esi
call dword [eax + 0x240]
mov eax, edi
jmp 0x4287bc
mov ecx, esi
test edi, edi
je 0x42878f
mov eax, dword [esi]
push 1
call dword [eax + 0x1c8]
mov eax, dword [esi]
push edi
mov ecx, esi
call dword [eax + 0x364]
push 0
push edi
push esi
mov ecx, esi
call fcn.004be610
push 5
mov ecx, esi
call fcn.004899ee
mov eax, dword [edi]
push esi
mov ecx, edi
call dword [eax + 0x24c]
cmp eax, esi
jne 0x428776
xor edi, edi
inc edi
jmp 0x428720
test eax, eax
je 0x428587
mov edx, dword [eax]
push 0
mov ecx, eax
call dword [edx + 0x240]
jmp 0x428587
push 5
call fcn.004899ee
mov eax, dword [ebp + 0xc]
test eax, eax
jne 0x4287a3
lea eax, [esi + 0x1e8]
mov edx, dword [esi]
push 0
push 0xffffffffffffffff
push 0
push 1
push eax
push dword [esi + 0x1c8]
mov ecx, esi
call dword [edx + 0x1d8]
pop edi
pop esi
pop ebx
leave
ret 0xc