Function at 0x414370
Capabilities:
Check for unmoving mouse cursor

Disassembly:
sub esp, 0x24
push esi
mov esi, eax
cmp esi, 4
jl 0x414395
cmp esi, 0xb
jg 0x414395
mov ecx, dword [0x4361fc]
mov edx, dword [ecx + 0x34]
lea eax, [esp + 0x18]
push eax
push edx
call dword [sym.imp.USER32.dll_GetWindowRect]
cmp esi, 0x1b
ja case.default.0x4143a4
mov ecx, dword [0x4361fc]
jmp dword [esi*4 + 0x414598]
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov eax, dword [esp + 0x10]
pop esi
add esp, 0x24
ret
lea ecx, [esp + 0x10]
push ecx
call dword [sym.imp.USER32.dll_GetCursorPos]
mov eax, dword [esp + 0x14]
pop esi
add esp, 0x24
ret
mov ecx, dword [0x4361f8]
call fcn.00418200
pop esi
add esp, 0x24
ret
mov eax, dword [0x436204]
pop esi
add esp, 0x24
ret
mov eax, dword [esp + 0x18]
pop esi
add esp, 0x24
ret
mov eax, dword [esp + 0x1c]
pop esi
add esp, 0x24
ret
mov eax, dword [esp + 0x20]
pop esi
add esp, 0x24
ret
mov eax, dword [esp + 0x24]
pop esi
add esp, 0x24
ret
mov edx, dword [0x4361fc]
mov eax, dword [edx + 0x5c]
pop esi
add esp, 0x24
ret
mov eax, dword [0x4361fc]
mov eax, dword [eax + 0x60]
pop esi
add esp, 0x24
ret
mov eax, dword [esp + 0x20]
sub eax, dword [esp + 0x18]
pop esi
add esp, 0x24
ret
mov eax, dword [esp + 0x24]
sub eax, dword [esp + 0x1c]
pop esi
add esp, 0x24
ret
mov ecx, dword [0x4361fc]
cmp dword [ecx + 0x44], 1
je case.0x4143a4.26
lea edx, [esp + 8]
push edx
lea eax, [esp + 8]
push eax
call fcn.00419790
mov eax, dword [esp + 4]
pop esi
add esp, 0x24
ret
mov eax, dword [ecx + 4]
pop esi
add esp, 0x24
ret
cmp dword [ecx + 0x44], 1
je case.0x4143a4.27
lea edx, [esp + 8]
push edx
lea eax, [esp + 8]
push eax
call fcn.00419790
mov eax, dword [esp + 8]
pop esi
add esp, 0x24
ret
mov eax, dword [ecx + 8]
pop esi
add esp, 0x24
ret
mov ecx, dword [0x4361fc]
mov eax, dword [ecx + 0x110]
pop esi
add esp, 0x24
ret
mov edx, dword [0x4361fc]
mov eax, dword [edx + 0x114]
pop esi
add esp, 0x24
ret
mov eax, dword [0x4361fc]
movzx eax, byte [eax + 0xa0]
pop esi
add esp, 0x24
ret
mov ecx, dword [0x4361fc]
movzx eax, byte [ecx + 0xa1]
pop esi
add esp, 0x24
ret
mov edx, dword [0x4361fc]
movzx eax, byte [edx + 0xa2]
pop esi
add esp, 0x24
ret
push 0
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
push 0x26
push esi
mov dword [esp + 0xc], 0
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
test ah, 1
je 0x414517
mov dword [esp + 4], 1
push esi
push 0
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [esp + 4]
pop esi
add esp, 0x24
ret
push 0
call dword [sym.imp.USER32.dll_GetSystemMetrics]
pop esi
add esp, 0x24
ret
push 1
call dword [sym.imp.USER32.dll_GetSystemMetrics]
pop esi
add esp, 0x24
ret
mov eax, dword [0x4361fc]
mov eax, dword [eax + 0x6c]
pop esi
add esp, 0x24
ret
mov ecx, dword [0x4361fc]
mov eax, dword [ecx + 0x70]
pop esi
add esp, 0x24
ret
mov edx, dword [0x4361b0]
mov eax, dword [edx + 0x324]
pop esi
add esp, 0x24
ret
mov ecx, dword [0x4361f8]
call fcn.00418380
pop esi
add esp, 0x24
ret
push 0x432754
lea eax, [esp + 0x10]
push eax
mov dword [esp + 0x14], 0x15
call fcn.00420833
mov edi, edi
stosd dword es:[edi], eax
inc ebx
inc ecx
add byte [edi - 0x2cffbebd], bh
inc ebx
inc ecx
add bl, ah
inc ebx
inc ecx
add ch, ch
inc ebx
inc ecx
add dh, dh
inc ebx
inc ecx
add bh, bh
inc ebx
inc ecx
add byte [eax], cl
inc esp
inc ecx
add byte [ecx], dl
inc esp
inc ecx
add byte [edi], bl
inc esp
inc ecx
add byte [esp + eax*2], ch
inc ecx
add byte [ecx], bh
inc esp
inc ecx
add byte [esi + 0x44], al
inc ecx
add byte [edx + 0x44], dh
inc ecx
add byte [eax - 0x56ffbebc], bl
inc esp
inc ecx
add byte [edx - 0x34ffbebc], bh
inc esp
inc ecx
add ch, bl
inc esp
inc ecx
add bh, ch
inc esp
inc ecx
add byte [ecx], ch
inc ebp
inc ecx
add byte [esi], dh
inc ebp
inc ecx
add byte [ebx + 0x45], al
inc ecx
add byte [eax + 0x45], dl
inc ecx
add byte [esi + 0x45], bl
inc ecx
add byte [edi + 0x45], ch
inc ecx
add byte [edx + 0x44], ch
inc ecx
add byte [eax - 0x33ffbebc], dl
int3