Function at 0x495e74
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push 0xe4
mov eax, 0x53e230
call fcn.004d5897
mov ebx, ecx
mov esi, dword [ebp + 8]
xor edi, edi
inc edi
cmp esi, edi
jne 0x4960be
lea esi, [ebx + 0x14]
push edi
mov ecx, esi
mov dword [ebp - 0xc0], esi
call fcn.0048ae86
xor eax, eax
mov ecx, esi
push eax
push dword [ebx + 4]
mov dword [ebp - 0xb8], eax
call fcn.00486343
push edi
mov ecx, esi
call fcn.0048af02
push 0x6c0
call fcn.004d4602
pop ecx
mov ecx, eax
mov dword [ebp - 0xbc], ecx
xor eax, eax
mov dword [ebp - 4], eax
test ecx, ecx
je 0x495ee0
call fcn.004bb75e
or dword [ebp - 4], 0xffffffff
mov edx, eax
push edi
xor ecx, ecx
mov dword [ebx + 0x764], edx
push ecx
mov eax, dword [edx]
mov ecx, edx
push esi
call dword [eax + 0x20]
lea eax, [ebx + 0x760]
mov ecx, dword [eax]
mov dword [ebp - 0xbc], eax
push str.VerticalLayout
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov ecx, eax
call fcn.00485998
test eax, eax
je 0x495f27
mov ecx, dword [ebx + 0x764]
push eax
call fcn.0048c494
push edi
push edi
push edi
push edi
lea ecx, [ebp - 0x20]
call fcn.00482a65
mov ecx, dword [ebx + 0x764]
sub esp, 0x10
mov esi, eax
mov edi, esp
mov edx, dword [ecx]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [edx + 0x184]
mov ecx, dword [ebx + 0x764]
push 0xffffffffffffffff
call fcn.0048e2e0
mov ecx, dword [ebx + 0x764]
push 0xffc6c7d2
call fcn.0048e32f
mov ecx, dword [ebx + 0x764]
push 1
call fcn.0048e36a
mov ecx, dword [ebx + 0x764]
xor edi, edi
push edi
mov eax, dword [ecx]
call dword [eax + 0x1a4]
mov ecx, dword [ebx + 0x764]
push edi
push 1
mov eax, dword [ecx]
call dword [eax + 0x200]
mov esi, dword [ebp - 0xbc]
lea eax, [ebp - 0xb4]
push eax
mov ecx, dword [esi]
call fcn.00495d91
mov ecx, eax
mov dword [ebp - 4], 1
call fcn.00482ce7
mov ecx, dword [ebx + 0x764]
push eax
call fcn.0048c494
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xb4]
call fcn.00482bd0
mov ecx, dword [esi]
add ecx, 0x550
mov eax, dword [ecx]
call dword [eax + 0xc]
test eax, eax
jle 0x496038
mov eax, dword [ebx + 0x764]
push edi
mov esi, dword [eax + 0x550]
mov eax, dword [ebp - 0xbc]
mov ecx, dword [eax]
add ecx, 0x550
mov eax, dword [ecx]
call dword [eax]
mov ecx, dword [ebx + 0x764]
push eax
add ecx, 0x550
call dword [esi + 0x10]
mov esi, dword [ebp - 0xbc]
inc dword [ebp - 0xb8]
mov ecx, dword [esi]
add ecx, 0x550
mov eax, dword [ecx]
call dword [eax + 0xc]
mov edi, dword [ebp - 0xb8]
cmp edi, eax
jl 0x495fe6
mov ecx, dword [esi]
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov ecx, eax
call fcn.004861cc
mov edi, dword [ebp - 0xc0]
mov esi, eax
mov ecx, edi
call fcn.004861cc
push eax
mov ecx, esi
call fcn.00499766
mov esi, dword [ebp - 0xbc]
mov ecx, dword [esi]
call fcn.00496645
movzx eax, al
mov ecx, edi
push eax
call fcn.004861cc
mov ecx, eax
call fcn.0049a7a1
push dword [ebx + 0x764]
mov ecx, edi
call fcn.00485723
lea eax, [ebx + 0x10]
mov ecx, edi
neg ebx
sbb ebx, ebx
and ebx, eax
push ebx
call fcn.00485459
mov ecx, dword [esi]
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov ecx, eax
call fcn.00485959
mov ecx, eax
call fcn.0049af1a
push eax
mov ecx, edi
call fcn.0048a879
xor eax, eax
jmp 0x4963ac
xor ecx, ecx
cmp esi, 0x10
jne 0x4961a4
mov eax, dword [ebx + 0x760]
mov esi, eax
push ecx
mov ecx, esi
mov edi, dword [eax]
call dword [edi + 0x24]
push eax
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1c]
mov ecx, dword [ebx + 0x760]
push eax
call dword [edi + 0x20]
xor eax, eax
lea edi, [ebp - 0xcc]
stosd dword es:[edi], eax
xor ecx, ecx
mov esi, ecx
mov dword [ebp - 0xb8], ecx
mov ecx, dword [ebx + 0x760]
add ecx, 0x550
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [ecx]
call dword [eax + 0xc]
test eax, eax
jle 0x496161
mov ecx, dword [ebx + 0x760]
add ecx, 0x550
push esi
mov eax, dword [ecx]
call dword [eax]
push 1
sub esp, 0x10
lea esi, [ebp - 0xcc]
mov edi, esp
mov ecx, eax
mov edx, dword [eax]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [edx + 0x64]
mov ecx, dword [ebx + 0x760]
mov esi, dword [ebp - 0xb8]
add ecx, 0x550
inc esi
mov dword [ebp - 0xb8], esi
mov eax, dword [ecx]
call dword [eax + 0xc]
cmp esi, eax
jl 0x496116
mov ecx, dword [ebx + 0x760]
mov eax, dword [ecx]
call dword [eax + 0x130]
mov esi, dword [ebp + 8]
xor ecx, ecx
mov edi, dword [ebp + 0xc]
lea eax, [ebp - 0xd0]
mov dword [ebp - 0xd0], ecx
push eax
push dword [ebp + 0x10]
lea ecx, [ebx + 0x14]
push edi
push esi
call fcn.004866ac
test al, al
je 0x4963a0
mov eax, dword [ebp - 0xd0]
jmp 0x4963ac
cmp esi, 0x201
jne 0x4961fa
lea eax, [ebp - 0xc4]
xorps xmm0, xmm0
push eax
movlpd qword [ebp - 0xc4], xmm0
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0xc4]
push eax
lea ecx, [ebx + 0x14]
call fcn.0048615f
push eax
call dword [sym.imp.USER32.dll_ScreenToClient]
push dword [ebp - 0xc0]
mov ecx, ebx
push dword [ebp - 0xc4]
call fcn.004965f5
mov byte [ebx + 0x76c], al
xor ecx, ecx
jmp 0x496174
cmp esi, 0x202
jne 0x49626a
lea eax, [ebp - 0xc4]
xorps xmm0, xmm0
push eax
movlpd qword [ebp - 0xc4], xmm0
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0xc4]
push eax
lea ecx, [ebx + 0x14]
call fcn.0048615f
push eax
call dword [sym.imp.USER32.dll_ScreenToClient]
cmp byte [ebx + 0x76c], 0
je 0x49625d
push dword [ebp - 0xc0]
mov ecx, ebx
push dword [ebp - 0xc4]
call fcn.004965f5
test al, al
je 0x49625d
xor eax, eax
mov ecx, ebx
push eax
push eax
push 8
call fcn.0048bcc3
xor ecx, ecx
mov byte [ebx + 0x76c], cl
jmp 0x496174
cmp esi, 0x100
jne 0x4962eb
mov eax, dword [ebp + 0xc]
cmp eax, 0xd
je 0x4962db
mov ecx, dword [ebx + 0x760]
cmp eax, 0x1b
je 0x4962ba
lea edx, [ebp - 0x30]
mov dword [ebp - 0x30], 3
mov word [ebp - 0x1c], ax
mov eax, dword [ecx]
push edx
call dword [eax + 0x14c]
mov ecx, dword [ebx + 0x760]
add ecx, 0x698
mov eax, dword [ecx]
call dword [eax + 8]
push eax
mov ecx, ebx
call fcn.00495bfd
jmp 0x4960b7
add ecx, 0x698
push edi
push dword [ebx + 0x768]
mov eax, dword [ecx]
call dword [eax + 0xc]
push dword [ebx + 0x768]
mov ecx, ebx
call fcn.00495bfd
xor ecx, ecx
push ecx
push ecx
push 8
mov ecx, ebx
call fcn.0048bcc3
jmp 0x4961f3
cmp esi, 0x20a
jne 0x496379
xor eax, eax
mov dword [ebp - 0xf0], 0x15
mov dword [ebp - 0xec], eax
xorps xmm0, xmm0
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp + 0xc]
shr eax, 0x10
shr eax, 0xf
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp + 0x10]
movlpd qword [ebp - 0xe4], xmm0
mov dword [ebp - 0xd4], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, dword [ebx + 0x760]
mov ecx, esi
mov dword [ebp - 0xe8], eax
call fcn.00495e33
test al, al
je 0x49635f
mov eax, dword [esi]
lea ecx, [ebp - 0xf0]
push ecx
mov ecx, esi
jmp 0x496296
mov ecx, dword [ebx + 0x764]
lea edx, [ebp - 0xf0]
push edx
mov eax, dword [ecx]
call dword [eax + 0x14c]
jmp 0x4960b7
cmp esi, 8
jne 0x496174
mov edi, dword [ebp + 0xc]
cmp dword [ebx + 4], edi
je 0x496177
push ecx
push ecx
push 0x10
mov ecx, ebx
call fcn.0048bcc3
xor ecx, ecx
jmp 0x496177
push dword [ebp + 0x10]
mov ecx, ebx
push edi
push esi
call fcn.0048bb8f
call fcn.004d5841
ret 0xc