Function at 0x41a8b0
Capabilities:
Check for unmoving mouse cursor

Disassembly:
sub esp, 0x698
mov eax, dword [0x4596d8]
push ebx
push ebp
push esi
push edi
push 0x113
xor ebx, ebx
push eax
mov byte [esp + 0x20], bl
mov word [esp + 0x120], bx
call dword [sym.imp.USER32.dll_KillTimer]
mov esi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push 0xe
lea ecx, [esp + 0x31c]
push ecx
push 0xffffffffffffffff
push 0x42ccd4
push 2
push ebx
call esi
push 7
lea edx, [esp + 0x380]
push edx
push 0xffffffffffffffff
push 0x42c610
push 2
push ebx
call esi
push 7
lea eax, [esp + 0x3e4]
push eax
push 0xffffffffffffffff
push 0x42c608
push 2
push ebx
call esi
mov ecx, dword [0xa6d408]
push 0xff00
push 0xb4
push 0xbe
push ecx
call fcn.00406210
mov edx, dword [0x4341ec]
add esp, 0x10
push 0x48
push 0x5a
push edx
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push eax
push 0xc
call dword [sym.imp.KERNEL32.dll_MulDiv]
push 0x42c2bc
push ebx
push eax
call fcn.00405ec0
lea eax, [esp + 0x324]
push eax
push 0xc1
push 0x154
call fcn.004069a0
lea ecx, [esp + 0x394]
push ecx
push 0x186
push 0x198
call fcn.004069a0
lea edx, [esp + 0x404]
push edx
push 0x186
push 0x208
call fcn.004069a0
lea eax, [esp + 0x48]
push 0x42ccc4
push eax
call fcn.004231fe
lea eax, [esp + 0x50]
add esp, 0x38
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x41a9c3
sub eax, ecx
push eax
lea ecx, [esp + 0x11c]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0x24]
push edx
push 2
push ebx
call esi
lea eax, [esp + 0x4a8]
push 0xc24d54
push eax
call fcn.00423280
lea ecx, [esp + 0x120]
push ecx
lea edx, [esp + 0x4b4]
push edx
call fcn.00423256
lea eax, [esp + 0x4b8]
push eax
push 0xf4
push 0xd2
call fcn.004069a0
mov ecx, dword [esp + 0x6c8]
push ecx
lea edx, [esp + 0x38]
push 0x42ccb0
push edx
call fcn.004231fe
lea eax, [esp + 0x40]
add esp, 0x28
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x41aa40
sub eax, ecx
push eax
lea eax, [esp + 0x11c]
push eax
push 0xffffffffffffffff
lea ecx, [esp + 0x24]
push ecx
push 2
push ebx
call esi
lea edx, [esp + 0x118]
push edx
push 0x118
push 0xd2
call fcn.004069a0
mov eax, dword [esp + 0x6bc]
push eax
lea ecx, [esp + 0x28]
push 0x42cc9c
push ecx
call fcn.004231fe
lea eax, [esp + 0x30]
add esp, 0x18
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x41aa96
sub eax, ecx
push eax
lea edx, [esp + 0x11c]
push edx
push 0xffffffffffffffff
lea eax, [esp + 0x24]
push eax
push 2
push ebx
call esi
lea ecx, [esp + 0x118]
push ecx
push 0x12a
push 0xd2
call fcn.004069a0
mov eax, dword [esp + 0x6c0]
cdq
mov ecx, 0x3c
idiv ecx
push edx
push eax
lea edx, [esp + 0x2c]
push 0x42c618
push edx
call fcn.004231fe
lea eax, [esp + 0x34]
add esp, 0x1c
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x41aaf5
sub eax, ecx
push eax
lea eax, [esp + 0x11c]
push eax
push 0xffffffffffffffff
lea ecx, [esp + 0x24]
push ecx
push 2
push ebx
call esi
lea edx, [esp + 0x118]
push edx
push 0x13c
push 0xd2
call fcn.004069a0
lea eax, [esp + 0x24]
push str.ESC_
push eax
call fcn.004231fe
lea eax, [esp + 0x2c]
add esp, 0x14
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x41ab43
sub eax, ecx
push eax
lea ecx, [esp + 0x11c]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0x24]
push edx
push 2
push ebx
call esi
lea eax, [esp + 0x118]
push eax
push 0x160
push 0xd2
call fcn.004069a0
mov ecx, dword [0x908de8]
push 0xff00
push 0x182
push 0x181
push ecx
call fcn.004064b0
add esp, 0x1c
call fcn.00405f40
mov dword [0x908dd0], 0x41a740
mov dword [0x45338c], ebx
mov dword [0x453388], ebx
call fcn.0041f4f0
mov esi, dword [sym.imp.USER32.dll_GetCursorPos]
mov edi, dword [sym.imp.USER32.dll_ScreenToClient]
mov ebp, 1
call fcn.00405ca0
cmp dword [0xc27124], ebp
je 0x41ad03
call fcn.0041f360
add eax, 3
cmp eax, 0x2a
ja case.0x41abec.1
movzx edx, byte [eax + 0x41ad88]
jmp dword [edx*4 + 0x41ad70]
mov ecx, dword [0x4582a8]
xor eax, eax
cmp ecx, ebx
sete al
mov dword [0x4582a8], eax
jmp case.0x41abec.1
lea ecx, [esp + 0x10]
push ecx
call esi
mov eax, dword [0x4596d8]
lea edx, [esp + 0x10]
push edx
push eax
call edi
mov eax, dword [esp + 0x10]
cmp eax, 0x181
mov ecx, dword [esp + 0x14]
jle 0x41ac45
cmp ecx, 0x183
jle 0x41ac45
cmp eax, 0x1e6
jge 0x41ac45
cmp ecx, 0x19b
jl 0x41ad63
cmp eax, 0x1f1
jle 0x41ac67
cmp ecx, 0x183
jle 0x41ac67
cmp eax, 0x257
jge 0x41ac67
cmp ecx, 0x19b
jl 0x41ad18
mov dword [0x453388], ebx
mov dword [0x45338c], ebx
jmp case.0x41abec.1
lea ecx, [esp + 0x10]
push ecx
call esi
mov eax, dword [0x4596d8]
lea edx, [esp + 0x10]
push edx
push eax
call edi
mov eax, dword [esp + 0x10]
cmp eax, 0x181
mov ecx, dword [esp + 0x14]
jle 0x41acc5
cmp ecx, 0x183
jle 0x41acc5
cmp eax, 0x1e6
jge 0x41acc5
cmp ecx, 0x19b
jge 0x41acc5
mov dword [0x453388], ebp
call fcn.00405ca0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
cmp eax, 0x1f1
jle case.0x41abec.1
cmp ecx, 0x183
jle case.0x41abec.1
cmp eax, 0x257
jge case.0x41abec.1
cmp ecx, 0x19b
jge case.0x41abec.1
mov dword [0x45338c], ebp
call fcn.00405ca0
jmp case.0x41abec.1
mov ecx, dword [0x4596d8]
push ebx
push 0x64
push 0x113
push ecx
call dword [sym.imp.USER32.dll_SetTimer]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x698
ret
mov edx, dword [0x4596d8]
push ebx
push 0x64
push 0x113
push edx
call dword [sym.imp.USER32.dll_SetTimer]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x698
ret
cmp dword [0x4582a8], ebx
jne 0x41ad18
mov eax, dword [0x4596d8]
push ebx
push 0x64
push 0x113
push eax
call dword [sym.imp.USER32.dll_SetTimer]
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x698
ret