Function at 0x412560
Capabilities:
Check for unmoving mouse cursor

Disassembly:
sub esp, 0x24
push esi
mov esi, eax
cmp esi, 4
jl 0x412585
cmp esi, 0xb
jg 0x412585
mov ecx, dword [0x434be4]
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.0x412594
mov ecx, dword [0x434be4]
jmp dword [esi*4 + 0x412788]
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 [0x434be0]
call fcn.004162a0
pop esi
add esp, 0x24
ret
mov eax, dword [0x434bf4]
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 [0x434be4]
mov eax, dword [edx + 0x5c]
pop esi
add esp, 0x24
ret
mov eax, dword [0x434be4]
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 [0x434be4]
cmp dword [ecx + 0x44], 1
je case.0x412594.26
lea edx, [esp + 8]
push edx
lea eax, [esp + 8]
push eax
call fcn.004177a0
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.0x412594.27
lea edx, [esp + 8]
push edx
lea eax, [esp + 8]
push eax
call fcn.004177a0
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 [0x434be4]
mov eax, dword [ecx + 0x110]
pop esi
add esp, 0x24
ret
mov edx, dword [0x434be4]
mov eax, dword [edx + 0x114]
pop esi
add esp, 0x24
ret
mov eax, dword [0x434be4]
movzx eax, byte [eax + 0xa0]
pop esi
add esp, 0x24
ret
mov ecx, dword [0x434be4]
movzx eax, byte [ecx + 0xa1]
pop esi
add esp, 0x24
ret
mov edx, dword [0x434be4]
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 0x412707
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 [0x434be4]
mov eax, dword [eax + 0x6c]
pop esi
add esp, 0x24
ret
mov ecx, dword [0x434be4]
mov eax, dword [ecx + 0x70]
pop esi
add esp, 0x24
ret
mov edx, dword [0x434b8c]
mov eax, dword [edx + 0x324]
pop esi
add esp, 0x24
ret
mov ecx, dword [0x434be0]
call fcn.00416420
pop esi
add esp, 0x24
ret
push 0x4316c0
lea eax, [esp + 0x10]
push eax
mov dword [esp + 0x14], 0x15
call fcn.004200e0
mov edi, edi
wait
and eax, 632225857
inc ecx
add bl, al
and eax, 0x25d30041
inc ecx
add ch, bl
and eax, 0x25e60041
inc ecx
add bh, ch
and eax, 0x25f80041
inc ecx
add byte [ecx], al
inc ecx
add byte [edi], cl
inc ecx
add byte [esi], bl
inc ecx
add byte [ecx], ch
inc ecx
add byte [esi], dh
inc ecx
add byte [edx + 0x26], ah
inc ecx
add byte [eax - 0x66ffbeda], cl
inc ecx
add byte [edx - 0x44ffbeda], ch
inc ecx
add ch, cl
inc ecx
add bh, bl
inc ecx
add byte [ecx], bl
daa
inc ecx
add byte [esi], ah
daa
inc ecx
add byte [ebx], dh
daa
inc ecx
add byte [eax + 0x27], al
inc ecx
add byte [esi + 0x27], cl
inc ecx
add byte [edi + 0x27], bl
inc ecx
add byte [edx + 0x26], bl
inc ecx
add byte [eax - 0x33ffbeda], al
int3