Function at 0x4231d0
Capabilities:
Check for unmoving mouse cursor

Disassembly:
sub esp, 0x48
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov ecx, 0x20
mov ebx, edx
mov dword [esp + 0x1c], edi
call fcn.00544880
cdq
sub eax, edx
mov esi, eax
mov ecx, 0x20
sar esi, 1
call fcn.00544880
mov ecx, 0x1e
lea esi, [esi + eax*2]
call fcn.00544880
lea eax, [esi + eax + 1]
mov ecx, 0x21
mov dword [esp + 0x14], eax
call fcn.00544880
cdq
sub eax, edx
mov esi, eax
mov ecx, 0x21
sar esi, 1
call fcn.00544880
mov ecx, 0x21
add esi, eax
call fcn.00544880
mov ecx, 0xf
add esi, eax
call fcn.00544880
mov ecx, 4
add esi, eax
call fcn.00544880
lea ecx, [esi + eax + 1]
push edi
mov dword [esp + 0x1c], ecx
call dword [sym.imp.USER32.dll_GetParent]
mov esi, eax
test esi, esi
mov dword [esp + 0x10], esi
jne 0x423292
mov eax, dword [0x5b1210]
test eax, eax
mov dword [esp + 0x10], eax
jne 0x42328e
mov eax, dword [0x5a5a70]
test eax, eax
mov dword [esp + 0x10], eax
jne 0x42328e
push 0xfffffffffffffff8
push edi
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov dword [esp + 0x10], eax
mov esi, dword [esp + 0x10]
cmp ebx, 0x10
je 0x4232da
cmp ebx, 0x11
je 0x4232da
cmp ebx, 0x1e
je 0x4232da
cmp ebx, 3
jle 0x423325
cmp ebx, 0x12
jge 0x423325
mov eax, dword [0x5b4320]
test eax, eax
je 0x4232d8
push eax
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x4232d8
mov edx, dword [0x5b4320]
push edx
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x4232d8
mov ebp, dword [0x5b4320]
jmp 0x4232dc
xor ebx, ebx
mov ebp, esi
mov eax, dword [0x5a56ec]
test eax, eax
je 0x4232ff
cmp dword [eax + 0xc8], edi
jne 0x4232f5
mov ebp, dword [eax + 0xcc]
xor ebx, ebx
mov eax, dword [eax + 0x1018]
test eax, eax
jne 0x4232e5
mov eax, dword [0x5ac5d8]
test eax, eax
je 0x42332d
cmp esi, eax
jne 0x42332d
push 0x66
push eax
xor ebx, ebx
call dword [sym.imp.USER32.dll_GetDlgItem]
mov ebp, eax
test ebp, ebp
jne 0x423351
mov ebp, dword [0x5ac5d8]
jmp 0x423351
mov ebp, dword [0x5b4314]
jmp 0x4232dc
test ebp, ebp
je 0x423347
push ebp
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x423347
push ebp
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x423351
xor ebx, ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
mov ebp, eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
cmp ebp, eax
mov esi, dword [sym.imp.USER32.dll_GetWindowRect]
jne 0x423377
mov ecx, dword [0x5b4314]
push 0
lea eax, [esp + 0x2c]
push eax
xor edx, edx
call fcn.004e2580
jmp 0x42337f
lea ecx, [esp + 0x28]
push ecx
push ebp
call esi
lea edx, [esp + 0x38]
push edx
push edi
call esi
test ebx, ebx
je 0x42346c
cmp ebx, 4
je 0x42346c
cmp ebx, 5
je 0x42346c
cmp ebx, 0x1e
je 0x42346c
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x2c]
lea esi, [eax + ecx]
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x20]
push ecx
lea edi, [edx + eax]
call dword [sym.imp.USER32.dll_GetCursorPos]
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x40]
sub eax, edx
cdq
sub eax, edx
mov edx, eax
mov eax, dword [esp + 0x20]
sar edx, 1
sub eax, edx
cmp eax, esi
jge 0x4233e8
mov eax, esi
cmp ebx, 7
jne 0x42340c
mov eax, dword [esp + 0x14]
cdq
sub eax, edx
sar eax, 1
neg eax
add esi, eax
mov eax, dword [esp + 0x18]
cdq
sub eax, edx
sar eax, 1
neg eax
add edi, eax
jmp 0x4234c8
cmp ebx, 0x12
jne 0x423418
mov esi, eax
jmp 0x4234c8
cmp ebx, 0x13
jne 0x423424
mov esi, eax
jmp 0x4234c8
cmp ebx, 0x14
jne 0x423430
mov esi, eax
jmp 0x4234c8
cmp ebx, 0x15
jne 0x42343c
mov esi, eax
jmp 0x4234c8
cmp ebx, 0x16
jne 0x423448
mov esi, eax
jmp 0x4234c8
cmp ebx, 0x17
jne 0x423451
mov esi, eax
jmp 0x4234c8
cmp ebx, 0x18
jne 0x42345a
mov esi, eax
jmp 0x4234c8
cmp ebx, 0x19
jne 0x423463
mov esi, eax
jmp 0x4234c8
cmp ebx, 0x1a
jne 0x4234c8
mov esi, eax
jmp 0x4234c8
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x28]
sub eax, edx
cdq
sub eax, edx
mov edi, eax
mov eax, dword [esp + 0x30]
sub eax, ecx
cdq
sub eax, edx
mov esi, eax
mov eax, dword [esp + 0x44]
sar edi, 1
sar esi, 1
sub esi, edi
add esi, ecx
sub eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x2c]
cdq
sub eax, edx
mov ebx, eax
mov eax, dword [esp + 0x34]
sub eax, ecx
cdq
sub eax, edx
mov edi, eax
mov eax, dword [0x5ac5d8]
sar edi, 1
sar ebx, 1
sub edi, ebx
add edi, ecx
test eax, eax
je 0x4234c8
cmp dword [esp + 0x10], eax
jne 0x4234c8
sub edi, 0xa
mov eax, dword [0x5b3c00]
test eax, eax
je 0x42355a
cmp dword [0x5aa5ec], 3
jne 0x42355a
mov ebx, dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [esp + 0x20]
push eax
call ebx
push 0
lea ecx, [esp + 0x2c]
push ecx
lea edx, [esp + 0x28]
xor ecx, ecx
call fcn.004e2580
lea edx, [esp + 0x20]
push edx
call ebx
push 1
lea eax, [esp + 0x4c]
push eax
lea edx, [esp + 0x28]
xor ecx, ecx
call fcn.004e2580
mov ecx, dword [esp + 0x2c]
cmp ecx, dword [esp + 0x4c]
jle 0x423528
mov esi, dword [esp + 0x30]
xor edi, edi
jmp 0x423580
mov edx, dword [esp + 0x28]
cmp edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x34]
jle 0x42353c
xor esi, esi
mov edi, ecx
jmp 0x423584
cmp ecx, dword [esp + 0x54]
jge 0x42354a
mov esi, dword [esp + 0x30]
mov edi, ecx
jmp 0x423584
mov eax, dword [esp + 0x30]
cmp eax, dword [esp + 0x50]
jge 0x423584
mov esi, eax
mov edi, ecx
jmp 0x423584
call dword [sym.imp.USER32.dll_GetDesktopWindow]
xor edx, edx
cmp ebp, eax
push edx
jne 0x423574
mov ecx, dword [0x5b4314]
lea eax, [esp + 0x2c]
push eax
jmp 0x42357b
lea ecx, [esp + 0x2c]
push ecx
mov ecx, ebp
call fcn.004e2580
mov ecx, dword [esp + 0x34]
cmp dword [0x5aa5ec], 3
jne 0x423597
mov dword [0x5aa5ec], 0
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x38]
mov ebp, dword [esp + 0x30]
mov ebx, edx
sub ebx, eax
add ebx, esi
add ebp, 0xfffffffe
cmp ebx, ebp
jle 0x4235ba
sub eax, edx
mov edx, dword [esp + 0x30]
lea esi, [eax + edx - 2]
mov eax, dword [esp + 0x28]
add eax, 2
cmp esi, eax
jge 0x4235c7
mov esi, eax
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x3c]
mov ebx, edx
sub ebx, eax
add ebx, edi
lea ebp, [ecx - 2]
cmp ebx, ebp
jle 0x4235e2
sub eax, edx
lea edi, [eax + ecx - 2]
mov eax, dword [esp + 0x2c]
add eax, 2
cmp edi, eax
jge 0x4235ef
mov edi, eax
mov eax, dword [esp + 0x1c]
push 0x15
push 0
push 0
push edi
push esi
push 0
push eax
call dword [sym.imp.USER32.dll_SetWindowPos]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x48
ret