Function at 0x4bc7a0
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push 0xd0
mov eax, 0x519332
call fcn.004d1ec0
mov ebx, ecx
mov esi, dword [ebp + 8]
cmp esi, 1
jne 0x4bc9af
lea edi, [ebx + 0x14]
push esi
mov ecx, edi
mov dword [ebp - 0xb8], edi
call fcn.0048ac04
xor esi, esi
mov ecx, edi
push esi
push dword [ebx + 4]
call fcn.00486482
push 1
mov ecx, edi
call fcn.0048ac80
push 0x6c0
call fcn.004d1637
pop ecx
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], esi
test eax, eax
je 0x4bc804
mov ecx, eax
call fcn.004b4477
mov ecx, eax
jmp 0x4bc806
mov ecx, esi
or dword [ebp - 4], 0xffffffff
push 1
mov dword [ebx + 0x744], ecx
mov eax, dword [ecx]
push esi
push edi
call dword [eax + 0x20]
mov ecx, dword [ebx + 0x740]
push str.VerticalLayout
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov ecx, eax
call fcn.00485c40
test eax, eax
je 0x4bc840
mov ecx, dword [ebx + 0x744]
push eax
call fcn.0048b93d
xor eax, eax
lea ecx, [ebp - 0x20]
inc eax
push eax
push eax
push eax
push eax
call fcn.0048161e
mov ecx, dword [ebx + 0x744]
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 + 0x174]
mov ecx, dword [ebx + 0x744]
push 0xffffffffffffffff
call fcn.0048d981
mov ecx, dword [ebx + 0x744]
push 0xffc6c7d2
call fcn.0048d9d0
mov ecx, dword [ebx + 0x744]
xor esi, esi
inc esi
push esi
call fcn.0048da0b
mov ecx, dword [ebx + 0x744]
xor edi, edi
push edi
mov eax, dword [ecx]
call dword [eax + 0x194]
mov ecx, dword [ebx + 0x744]
push edi
push esi
mov eax, dword [ecx]
call dword [eax + 0x1f0]
mov ecx, dword [ebx + 0x740]
lea eax, [ebp - 0xb4]
push eax
call fcn.004bc6a4
mov ecx, eax
mov dword [ebp - 4], esi
call fcn.00481893
mov ecx, dword [ebx + 0x744]
push eax
call fcn.0048b93d
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xb4]
call fcn.00481789
mov ecx, dword [ebx + 0x740]
add ecx, 0x550
mov eax, dword [ecx]
call dword [eax + 0xc]
test eax, eax
jle 0x4bc944
mov eax, dword [ebx + 0x744]
mov ecx, dword [ebx + 0x740]
add ecx, 0x550
push edi
mov esi, dword [eax + 0x550]
mov eax, dword [ecx]
call dword [eax]
mov ecx, dword [ebx + 0x744]
push eax
add ecx, 0x550
call dword [esi + 0x10]
mov ecx, dword [ebx + 0x740]
inc edi
add ecx, 0x550
mov eax, dword [ecx]
call dword [eax + 0xc]
cmp edi, eax
jl 0x4bc901
mov ecx, dword [ebx + 0x740]
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov ecx, eax
call fcn.0048643f
mov edi, dword [ebp - 0xb8]
mov esi, eax
mov ecx, edi
call fcn.0048643f
push eax
mov ecx, esi
call fcn.004a9d4d
mov ecx, dword [ebx + 0x740]
call fcn.004bcf05
movzx eax, al
mov ecx, edi
push eax
call fcn.0048643f
mov ecx, eax
call fcn.004aac5d
push dword [ebx + 0x744]
mov ecx, edi
call fcn.00485a3e
lea eax, [ebx + 0x10]
mov ecx, edi
neg ebx
sbb ebx, ebx
and ebx, eax
push ebx
call fcn.00485868
xor eax, eax
jmp 0x4bcc61
xor ecx, ecx
cmp esi, 0x10
jne 0x4bca8d
mov eax, dword [ebx + 0x740]
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 + 0x740]
push eax
call dword [edi + 0x20]
mov ecx, dword [ebx + 0x740]
xorps xmm0, xmm0
add ecx, 0x550
xor edi, edi
movups xmmword [ebp - 0x20], xmm0
mov esi, edi
mov dword [ebp - 0xb8], edi
mov eax, dword [ecx]
call dword [eax + 0xc]
test eax, eax
jle 0x4bca4a
mov ecx, dword [ebx + 0x740]
add ecx, 0x550
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 + 0x54]
mov ecx, dword [ebx + 0x740]
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 0x4bca02
mov ecx, dword [ebx + 0x740]
mov eax, dword [ecx]
call dword [eax + 0x120]
mov esi, dword [ebp + 8]
xor ecx, ecx
mov edi, dword [ebp + 0xc]
lea eax, [ebp - 0xbc]
mov dword [ebp - 0xbc], ecx
push eax
push dword [ebp + 0x10]
lea ecx, [ebx + 0x14]
push edi
push esi
call fcn.00486840
test al, al
je 0x4bcc55
mov eax, dword [ebp - 0xbc]
jmp 0x4bcc61
cmp esi, 0x201
jne 0x4bcacf
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], ecx
push eax
mov dword [ebp - 0x14], ecx
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebx + 0x14]
call fcn.004863e9
push eax
call dword [sym.imp.USER32.dll_ScreenToClient]
push dword [ebp - 0x14]
mov ecx, ebx
push dword [ebp - 0x18]
call fcn.004bceb5
mov byte [ebx + 0x74c], al
xor ecx, ecx
jmp 0x4bca5d
cmp esi, 0x202
jne 0x4bcb2e
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], ecx
push eax
mov dword [ebp - 0x14], ecx
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebx + 0x14]
call fcn.004863e9
push eax
call dword [sym.imp.USER32.dll_ScreenToClient]
cmp byte [ebx + 0x74c], 0
je 0x4bcb21
push dword [ebp - 0x14]
mov ecx, ebx
push dword [ebp - 0x18]
call fcn.004bceb5
test al, al
je 0x4bcb21
xor edi, edi
mov ecx, ebx
push edi
push edi
push 8
call fcn.004a02ae
xor ecx, ecx
mov byte [ebx + 0x74c], cl
jmp 0x4bca5d
cmp esi, 0x100
jne 0x4bcbb0
mov eax, dword [ebp + 0xc]
cmp eax, 0xd
je 0x4bcba0
mov ecx, dword [ebx + 0x740]
cmp eax, 0x1b
je 0x4bcb7e
lea edx, [ebp - 0x30]
mov dword [ebp - 0x30], 3
mov word [ebp - 0x1c], ax
mov eax, dword [ecx]
push edx
call dword [eax + 0x13c]
mov ecx, dword [ebx + 0x740]
add ecx, 0x698
mov eax, dword [ecx]
call dword [eax + 8]
push eax
mov ecx, ebx
call fcn.004bc53a
jmp 0x4bc9a8
add ecx, 0x698
push 1
push dword [ebx + 0x748]
mov eax, dword [ecx]
call dword [eax + 0xc]
push dword [ebx + 0x748]
mov ecx, ebx
call fcn.004bc53a
xor ecx, ecx
push ecx
push ecx
push 8
mov ecx, ebx
call fcn.004a02ae
jmp 0x4bcacb
cmp esi, 0x20a
jne 0x4bcc2e
xor eax, eax
lea edi, [ebp - 0xd8]
push 7
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [ebp + 0xc]
shr eax, 0x10
shr eax, 0xf
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0xdc], 0x15
mov dword [ebp - 0xc0], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, dword [ebx + 0x740]
mov ecx, esi
mov dword [ebp - 0xd4], eax
call fcn.004bc751
test al, al
je 0x4bcc14
mov eax, dword [esi]
lea ecx, [ebp - 0xdc]
push ecx
mov ecx, esi
jmp 0x4bcb5a
mov ecx, dword [ebx + 0x744]
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ecx]
call dword [eax + 0x13c]
jmp 0x4bc9a8
cmp esi, 8
jne 0x4bca5d
mov edi, dword [ebp + 0xc]
cmp dword [ebx + 4], edi
je 0x4bca60
push ecx
push ecx
push 0x10
mov ecx, ebx
call fcn.004a02ae
xor ecx, ecx
jmp 0x4bca60
push dword [ebp + 0x10]
mov ecx, ebx
push edi
push esi
call fcn.004a017e
call fcn.004d1e7b
ret 0xc