Function at 0x411f09
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push esi
mov esi, dword [ebp + 8]
lea eax, [esi - 4]
cmp eax, 7
ja 0x411f2d
lea eax, [ebp - 0x20]
push eax
mov eax, dword [0x450a68]
push dword [eax + 0x34]
call dword [sym.imp.USER32.dll_GetWindowRect]
cmp esi, 0x1b
ja case.default.0x411f3b
mov eax, dword [0x450a68]
jmp dword [esi*4 + 0x4120e5]
lea eax, [ebp - 0x10]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov eax, dword [ebp - 0x10]
pop esi
leave
ret
lea eax, [ebp - 0x10]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov eax, dword [ebp - 0xc]
jmp 0x411f4f
mov ecx, dword [0x450a60]
call fcn.004162a5
jmp 0x411f4f
mov eax, dword [0x450a78]
jmp 0x411f4f
mov eax, dword [ebp - 0x20]
jmp 0x411f4f
mov eax, dword [ebp - 0x1c]
jmp 0x411f4f
mov eax, dword [ebp - 0x18]
jmp 0x411f4f
mov eax, dword [ebp - 0x14]
jmp 0x411f4f
mov eax, dword [0x450a68]
mov eax, dword [eax + 0x5c]
jmp 0x411f4f
mov eax, dword [0x450a68]
mov eax, dword [eax + 0x60]
jmp 0x411f4f
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x20]
jmp 0x411f4f
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
jmp 0x411f4f
mov eax, dword [0x450a68]
cmp dword [eax + 0x44], 1
je case.0x411f3b.26
lea ecx, [ebp - 4]
push ecx
lea ecx, [ebp + 8]
push ecx
mov ecx, eax
call fcn.00416389
mov eax, dword [ebp + 8]
jmp 0x411f4f
mov eax, dword [eax + 4]
jmp 0x411f4f
cmp dword [eax + 0x44], 1
je case.0x411f3b.27
lea ecx, [ebp - 4]
push ecx
lea ecx, [ebp + 8]
push ecx
mov ecx, eax
call fcn.00416389
mov eax, dword [ebp - 4]
jmp 0x411f4f
mov eax, dword [eax + 8]
jmp 0x411f4f
mov eax, dword [0x450a68]
mov eax, dword [eax + 0x110]
jmp 0x411f4f
mov eax, dword [0x450a68]
mov eax, dword [eax + 0x114]
jmp 0x411f4f
mov eax, dword [0x450a68]
movzx eax, byte [eax + 0xa0]
jmp 0x411f4f
mov eax, dword [0x450a68]
movzx eax, byte [eax + 0xa1]
jmp 0x411f4f
mov eax, dword [0x450a68]
movzx eax, byte [eax + 0xa2]
jmp 0x411f4f
push 0
call dword [sym.imp.USER32.dll_GetDC]
and dword [ebp + 8], 0
mov esi, eax
push 0x26
push esi
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
mov ecx, dword [ebp + 8]
test eax, 0x100
push 1
pop eax
push esi
cmovne ecx, eax
push 0
mov dword [ebp + 8], ecx
call dword [sym.imp.USER32.dll_ReleaseDC]
jmp 0x411fc7
push 0
call dword [sym.imp.USER32.dll_GetSystemMetrics]
jmp 0x411f4f
push 1
jmp 0x412084
mov eax, dword [0x450a68]
mov eax, dword [eax + 0x6c]
jmp 0x411f4f
mov eax, dword [0x450a68]
mov eax, dword [eax + 0x70]
jmp 0x411f4f
mov eax, dword [0x450a6c]
mov eax, dword [eax + 0x324]
jmp 0x411f4f
mov ecx, dword [0x450a60]
call fcn.004163b0
jmp 0x411f4f
push 0x44c354
lea eax, [ebp - 8]
mov dword [ebp - 8], 0x15
push eax
call fcn.0041ec7c
nop dword [eax]
inc edx
pop ds
inc ecx
add byte [edx + 0x1f], dl
inc ecx
add byte [ecx + 0x1f], ah
inc ecx
add byte [esi + 0x1f], ch
inc ecx
add byte [ebp + 0x1f], dh
inc ecx
add byte [edx + 0x1f], bh
inc ecx
add byte [edi + 0x1f], bh
inc ecx
add byte [edi + ebx + 0x1f890041], al
inc ecx
add byte [ebx - 0x62ffbee1], dl
pop ds
inc ecx
add byte [ebp - 0x52ffbee1], ah
pop ds
inc ecx
add ah, dl
pop ds
inc ecx
add cl, bh
pop ds
inc ecx
add byte [ecx], cl
and byte [ecx], al
sbb dword [eax], esp
inc ecx
add byte [edx], ch
and byte [ecx], al
cmp esp, dword [eax]
inc ecx
add byte [eax + 0x41], cl
add byte [edx - 0x70ffbee0], al
and byte [ecx], al
xchg ebx, eax
and byte [ecx], al
mov al, byte [0xad004120]
and byte [ecx], al
mov ebp, 0xcc004120
pop ds
inc ecx
add cl, dh
pop ds
inc ecx
invalid