Function at 0x423fc5
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x60
sub eax, 0x64
push esi
push edi
je 0x42433e
dec eax
je 0x424221
sub eax, 4
je 0x42420a
dec eax
je 0x4241e5
sub eax, 0x11
jne 0x424380
mov esi, dword [sym.imp.USER32.dll_GetWindowRect]
lea eax, [ebp - 0x24]
xor edi, edi
push eax
push dword [ebx + 4]
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], edi
call esi
push edi
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_MonitorFromRect]
mov edx, eax
cmp edx, edi
je 0x424052
push 9
pop ecx
xor eax, eax
mov dword [ebp - 0x5c], 0x28
lea edi, [ebp - 0x58]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x5c]
push eax
push edx
call dword [sym.imp.USER32.dll_GetMonitorInfoW]
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
xor edi, edi
jmp 0x424071
push edi
lea eax, [ebp - 0x24]
push eax
push edi
push 0x30
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
test eax, eax
jne 0x424071
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call esi
lea eax, [ebp - 0x14]
push eax
push dword [ebx + 4]
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x10], edi
mov dword [ebp - 0xc], edi
mov dword [ebp - 8], edi
call esi
lea esi, [ebx + 0x2c4]
call dword [sym.imp.WINMM.dll_timeGetTime]
mov edi, eax
sub edi, dword [esi]
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [esi], eax
cmp edi, 0x1e
ja 0x4240a6
push 0x1e
pop edi
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
xor edx, edx
imul eax, edi
mov ecx, 0x12c
div ecx
cmp eax, 1
jg 0x4240c0
xor eax, eax
inc eax
xor esi, esi
cmp dword [ebx + 0x2c0], esi
je 0x424114
neg eax
push eax
push esi
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
mov edi, dword [ebp - 0x18]
sub edi, dword [ebp - 0x20]
push 3
pop eax
call fcn.0042b293
sub edi, eax
cmp dword [ebp - 8], edi
jge 0x424141
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 8]
sub edi, dword [ebp - 0x20]
sub esi, dword [ebp - 0x10]
push 3
pop eax
call fcn.0042b293
sub edi, esi
sub edi, eax
mov eax, edi
sub eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], edi
add dword [ebp - 8], eax
xor esi, esi
jmp 0x424141
mov ecx, dword [ebp - 0x18]
sub ecx, dword [ebp - 0x20]
cmp dword [ebp - 0x10], ecx
jge 0x424141
push eax
push esi
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x20]
cmp dword [ebp - 0x10], eax
jle 0x424141
mov ecx, eax
sub ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
add dword [ebp - 8], ecx
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
push 0x254
push eax
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
push eax
push dword [ebp - 0x10]
push dword [ebp - 0x14]
push esi
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x20]
cmp dword [ebx + 0x2c0], esi
je 0x4241c5
cmp dword [ebp - 8], eax
jg 0x424380
lea esi, [ebx + 0x2b0]
call fcn.00431535
cmp dword [ebx + 0x2c8], 0xffffffff
je 0x424380
lea eax, [ebx + 0x2cc]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov esi, dword [sym.imp.USER32.dll_SetTimer]
push 0
push 0x32
push 0x65
push dword [ebx + 4]
call esi
push 0
push dword [ebx + 0x2c8]
push 0x64
push dword [ebx + 4]
call esi
jmp 0x424380
cmp dword [ebp - 0x10], eax
jl 0x424380
push esi
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
lea esi, [ebx + 0x2b0]
call fcn.00431535
jmp 0x4241f0
push 0x6a
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_KillTimer]
push 0xffffffffffffffff
push 0xf060
push 0x112
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x424380
push 0x69
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_KillTimer]
mov edi, ebx
call fcn.004246d8
jmp 0x424380
xor edi, edi
lea eax, [ebp - 0xc]
push eax
mov dword [ebp - 4], edi
mov dword [ebp - 0xc], edi
mov dword [ebp - 8], edi
call dword [sym.imp.USER32.dll_GetCursorPos]
call dword [sym.imp.USER32.dll_GetCapture]
cmp eax, edi
je 0x424257
push 2
push eax
call dword [sym.imp.USER32.dll_GetAncestor]
cmp dword [ebx + 4], eax
jne 0x424257
mov dword [ebp - 4], 1
jmp 0x42427d
push dword [ebp - 8]
lea esi, [ebx + 0x2cc]
push dword [ebp - 0xc]
mov eax, esi
call fcn.00424e65
test eax, eax
je 0x424380
mov eax, dword [ebp - 0xc]
mov dword [esi], eax
mov eax, dword [ebp - 8]
mov dword [esi + 4], eax
mov esi, dword [sym.imp.USER32.dll_GetWindowRect]
lea eax, [ebp - 0x24]
push eax
push dword [ebx + 4]
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], edi
call esi
push edi
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_MonitorFromRect]
mov edx, eax
cmp edx, edi
je 0x4242d7
push 9
pop ecx
xor eax, eax
mov dword [ebp - 0x5c], 0x28
lea edi, [ebp - 0x58]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x5c]
push eax
push edx
call dword [sym.imp.USER32.dll_GetMonitorInfoW]
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
xor edi, edi
jmp 0x4242f6
push edi
lea eax, [ebp - 0x24]
push eax
push edi
push 0x30
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
test eax, eax
jne 0x4242f6
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call esi
lea eax, [ebp - 0x34]
push eax
push dword [ebx + 4]
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], edi
call esi
cmp dword [ebp - 4], edi
jne 0x424324
push dword [ebp - 8]
lea eax, [ebp - 0x34]
push dword [ebp - 0xc]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x424380
mov eax, dword [ebx + 0x2c8]
cmp eax, 0xffffffff
je 0x424380
push edi
push eax
push 0x64
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SetTimer]
jmp 0x424380
push 0x64
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_KillTimer]
and dword [ebx + 0x2c0], 0
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [ebx + 0x2c4], eax
mov eax, dword [ebx + 4]
lea esi, [ebx + 0x2b0]
push eax
mov dword [esi], eax
mov dword [esi + 4], 0x7b
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x424380
push 0x1e
call fcn.004314bb
pop edi
xor eax, eax
pop esi
leave
ret