Function at 0x4e76ed
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push 0xd4
mov eax, 0x5b4ac9
call fcn.004a7792
mov ebx, ecx
mov esi, dword [ebp + 8]
xor edi, edi
inc edi
cmp esi, edi
jne 0x4e790c
lea esi, [ebx + 0x14]
push edi
mov ecx, esi
mov dword [ebp - 0xc0], esi
call fcn.004aeb94
xor eax, eax
mov ecx, esi
push eax
push dword [ebx + 4]
mov dword [ebp - 0xb8], eax
call fcn.004aa4ba
push edi
mov ecx, esi
call fcn.004aec10
push 0x6c8
call fcn.004a6eec
pop ecx
mov ecx, eax
mov dword [ebp - 0x14], ecx
xor eax, eax
mov dword [ebp - 4], eax
test ecx, ecx
je 0x4e7756
call fcn.004c7538
or dword [ebp - 4], 0xffffffff
mov ecx, eax
push edi
mov dword [ebx + 0x768], ecx
push 0
mov eax, dword [ecx]
push esi
call dword [eax + 0x20]
mov ecx, dword [ebx + 0x764]
push str.VerticalLayout
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov ecx, eax
call fcn.004a9b3b
test eax, eax
je 0x4e7792
mov ecx, dword [ebx + 0x768]
push eax
call fcn.004b0c3c
push edi
push edi
push edi
push edi
lea ecx, [ebp - 0x20]
call fcn.004b3482
mov ecx, dword [ebx + 0x768]
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 + 0x17c]
mov ecx, dword [ebx + 0x768]
push 0xffffffffffffffff
call fcn.004b2d1b
mov ecx, dword [ebx + 0x768]
push 0xffc6c7d2
call fcn.004b2d6a
mov ecx, dword [ebx + 0x768]
xor esi, esi
inc esi
push esi
call fcn.004b2da5
mov ecx, dword [ebx + 0x768]
push 0
mov eax, dword [ecx]
call dword [eax + 0x19c]
mov ecx, dword [ebx + 0x768]
push 0
push esi
mov eax, dword [ecx]
call dword [eax + 0x1f8]
mov ecx, dword [ebx + 0x764]
lea eax, [ebp - 0xb4]
push eax
call fcn.004e760a
mov ecx, eax
mov dword [ebp - 4], esi
call fcn.004b3701
mov ecx, dword [ebx + 0x768]
push eax
call fcn.004b0c3c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xb4]
call fcn.004b3603
mov ecx, dword [ebx + 0x764]
add ecx, 0x558
mov eax, dword [ecx]
call dword [eax + 0xc]
test eax, eax
jle 0x4e78a1
mov eax, dword [ebx + 0x768]
mov ecx, dword [ebx + 0x764]
push dword [ebp - 0xb8]
add ecx, 0x558
mov esi, dword [eax + 0x558]
mov eax, dword [ecx]
call dword [eax]
mov ecx, dword [ebx + 0x768]
push eax
add ecx, 0x558
call dword [esi + 0x10]
mov ecx, dword [ebx + 0x764]
inc dword [ebp - 0xb8]
add ecx, 0x558
mov eax, dword [ecx]
call dword [eax + 0xc]
cmp dword [ebp - 0xb8], eax
jl 0x4e7850
mov ecx, dword [ebx + 0x764]
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov ecx, eax
call fcn.004aa452
mov edi, dword [ebp - 0xc0]
mov esi, eax
mov ecx, edi
call fcn.004aa452
push eax
mov ecx, esi
call fcn.004d6272
mov ecx, dword [ebx + 0x764]
call fcn.004e7e8d
movzx eax, al
mov ecx, edi
push eax
call fcn.004aa452
mov ecx, eax
call fcn.004d7184
push dword [ebx + 0x768]
mov ecx, edi
call fcn.004a98e1
lea eax, [ebx + 0x10]
mov ecx, edi
neg ebx
sbb ebx, ebx
and ebx, eax
push ebx
call fcn.004a978e
xor eax, eax
jmp 0x4e7bfc
xor eax, eax
cmp esi, 0x10
jne 0x4e79f2
mov edi, dword [ebx + 0x764]
test edi, edi
je 0x4e79c2
mov esi, dword [edi]
mov ecx, edi
push eax
mov eax, esi
call dword [eax + 0x24]
push eax
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x1c]
mov ecx, dword [ebx + 0x764]
push eax
call dword [esi + 0x20]
mov ecx, dword [ebx + 0x764]
lea edi, [ebp - 0x20]
xor eax, eax
add ecx, 0x558
stosd dword es:[edi], eax
xor esi, esi
mov dword [ebp - 0xb8], esi
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 0x4e79af
mov ecx, dword [ebx + 0x764]
add ecx, 0x558
push esi
mov eax, dword [ecx]
call dword [eax]
push 1
sub esp, 0x10
lea esi, [ebp - 0x20]
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 + 0x5c]
mov ecx, dword [ebx + 0x764]
mov esi, dword [ebp - 0xb8]
add ecx, 0x558
inc esi
mov dword [ebp - 0xb8], esi
mov eax, dword [ecx]
call dword [eax + 0xc]
cmp esi, eax
jl 0x4e7967
mov ecx, dword [ebx + 0x764]
mov eax, dword [ecx]
call dword [eax + 0x128]
mov esi, dword [ebp + 8]
xor eax, eax
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0xbc], eax
lea ecx, [ebx + 0x14]
lea eax, [ebp - 0xbc]
push eax
push dword [ebp + 0x10]
push edi
push esi
call fcn.004aa838
test al, al
je 0x4e7bf0
mov eax, dword [ebp - 0xbc]
jmp 0x4e7bfc
cmp esi, 0x201
jne 0x4e7a36
lea eax, [ebp - 0x18]
xorps xmm0, xmm0
push eax
movlpd qword [ebp - 0x18], xmm0
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebx + 0x14]
call fcn.004aa3ec
push eax
call dword [sym.imp.USER32.dll_ScreenToClient]
push dword [ebp - 0x14]
mov ecx, ebx
push dword [ebp - 0x18]
call fcn.004e7e3d
mov byte [ebx + 0x770], al
xor eax, eax
jmp 0x4e79c2
cmp esi, 0x202
jne 0x4e7a97
lea eax, [ebp - 0x18]
xorps xmm0, xmm0
push eax
movlpd qword [ebp - 0x18], xmm0
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebx + 0x14]
call fcn.004aa3ec
push eax
call dword [sym.imp.USER32.dll_ScreenToClient]
cmp byte [ebx + 0x770], 0
je 0x4e7a8a
push dword [ebp - 0x14]
mov ecx, ebx
push dword [ebp - 0x18]
call fcn.004e7e3d
test al, al
je 0x4e7a8a
xor eax, eax
mov ecx, ebx
push eax
push eax
push 8
call fcn.004b47a7
xor eax, eax
mov byte [ebx + 0x770], al
jmp 0x4e79c2
cmp esi, 0x100
jne 0x4e7b1e
mov ecx, dword [ebp + 0xc]
cmp ecx, 0xd
je 0x4e7b0e
cmp ecx, 0x1b
je 0x4e7ae7
mov word [ebp - 0x1c], cx
lea edx, [ebp - 0x30]
mov ecx, dword [ebx + 0x764]
mov dword [ebp - 0x30], 3
push edx
mov eax, dword [ecx]
call dword [eax + 0x144]
mov ecx, dword [ebx + 0x764]
add ecx, 0x6a0
mov eax, dword [ecx]
call dword [eax + 8]
push eax
mov ecx, ebx
call fcn.004e74aa
jmp 0x4e7905
mov ecx, dword [ebx + 0x764]
add ecx, 0x6a0
push edi
push dword [ebx + 0x76c]
mov eax, dword [ecx]
call dword [eax + 0xc]
push dword [ebx + 0x76c]
mov ecx, ebx
call fcn.004e74aa
xor eax, eax
push eax
push eax
push 8
mov ecx, ebx
call fcn.004b47a7
jmp 0x4e7a32
cmp esi, 0x20a
jne 0x4e7bac
xor eax, eax
mov dword [ebp - 0xe0], 0x15
mov dword [ebp - 0xdc], eax
xorps xmm0, xmm0
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp + 0xc]
shr eax, 0x10
shr eax, 0xf
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp + 0x10]
movlpd qword [ebp - 0xd4], xmm0
mov dword [ebp - 0xc4], eax
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
mov esi, dword [ebx + 0x764]
mov ecx, esi
mov dword [ebp - 0xd8], eax
call fcn.004e76ac
test al, al
je 0x4e7b92
mov eax, dword [esi]
lea ecx, [ebp - 0xe0]
push ecx
mov ecx, esi
jmp 0x4e7ac3
mov ecx, dword [ebx + 0x768]
lea edx, [ebp - 0xe0]
push edx
mov eax, dword [ecx]
call dword [eax + 0x144]
jmp 0x4e7905
cmp esi, 8
jne 0x4e79c2
mov edi, dword [ebp + 0xc]
cmp dword [ebx + 4], edi
je 0x4e79c5
call dword [sym.imp.USER32.dll_GetFocus]
jmp 0x4e7bce
cmp dword [ebx + 4], eax
je 0x4e7be9
push eax
call dword [sym.imp.USER32.dll_GetParent]
test eax, eax
jne 0x4e7bc9
push eax
push eax
push 0x10
mov ecx, ebx
call fcn.004b47a7
jmp 0x4e7905
xor eax, eax
jmp 0x4e79c5
push dword [ebp + 0x10]
mov ecx, ebx
push edi
push esi
call fcn.004b467b
call fcn.004a774d
ret 0xc