Function at 0x433cc0
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x874
mov eax, dword [0x4f4930]
xor eax, esp
mov dword [esp + 0x870], eax
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0x14]
push edi
mov edi, dword [ebp + 0x18]
mov dword [esp + 0x18], edx
mov dword [esp + 0x10], esi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x14], 0
cmp eax, 0x100
ja 0x4340e2
je 0x4340d6
lea ecx, [eax - 1]
cmp ecx, 0x83
ja case.0x43415d.518
movzx ecx, byte [ecx + 0x434448]
jmp dword [ecx*4 + 0x434414]
mov edx, dword [ebx]
mov eax, dword [edx + 0xcc]
mov ecx, ebx
call eax
mov byte [esp + 0xf], al
jmp 0x433d4b
mov esi, ebx
call fcn.00434970
mov byte [esp + 0xf], al
mov esi, dword [esp + 0x10]
cmp byte [esp + 0xf], 0
jne 0x433fda
mov eax, dword [ebp + 0x10]
cmp byte [ebx + 0x136], 0
je 0x4343ec
mov ebx, dword [ebx + 0x138]
test ebx, ebx
je 0x4343ec
mov edx, dword [esp + 0x18]
push edi
push esi
push eax
push edx
push ebx
call dword [sym.imp.USER32.dll_CallWindowProcW]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x870]
xor ecx, esp
call fcn.0046fdae
mov esp, ebp
pop ebp
ret 0x14
push 0x3c
lea ecx, [esp + 0x40]
push 0
push ecx
mov dword [esp + 0x44], 0
call fcn.00476c30
mov esi, dword [esp + 0x24]
add esp, 0xc
lea edx, [esp + 0x38]
push edx
push esi
call dword [sym.imp.USER32.dll_BeginPaint]
call fcn.00434600
lea eax, [esp + 0x38]
push eax
push esi
call dword [sym.imp.USER32.dll_EndPaint]
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x870]
xor ecx, esp
call fcn.0046fdae
mov esp, ebp
pop ebp
ret 0x14
mov edx, dword [ebx]
mov edx, dword [edx + 0xd4]
mov eax, edi
shr eax, 0x10
movsx ecx, ax
push ecx
movsx eax, di
push eax
push esi
mov ecx, ebx
call edx
mov byte [esp + 0xf], al
jmp 0x433d4b
push esi
mov eax, ebx
call fcn.00434c60
mov byte [esp + 0xf], al
jmp 0x433d4b
mov eax, dword [ebx]
mov ecx, edi
shr ecx, 0x10
movsx edx, cx
movsx ecx, di
push edx
mov edx, dword [eax + 0xdc]
push ecx
mov ecx, ebx
call edx
push 0
push 0
mov ecx, ebx
mov byte [esp + 0x17], al
call fcn.00439270
mov al, byte [esp + 0xf]
mov byte [esp + 0xf], al
test al, al
je 0x433d56
mov dword [esp + 0x14], 0
jmp 0x433d4b
mov eax, dword [ebx]
mov eax, dword [eax + 0xe4]
cmp esi, 1
sete cl
movzx edx, cl
push edx
mov ecx, ebx
call eax
mov byte [esp + 0xf], al
jmp 0x433d4b
mov edx, dword [ebx]
mov edx, dword [edx + 0xd0]
lea eax, [esp + 0x14]
push eax
mov ecx, edi
shr ecx, 0x10
movsx eax, cx
movsx ecx, di
push eax
push ecx
mov ecx, ebx
call edx
mov byte [esp + 0xf], al
jmp 0x433d4b
mov eax, dword [ebx]
mov edx, dword [eax + 0xf0]
mov ecx, ebx
call edx
test al, al
jmp 0x433d50
mov eax, dword [ebx]
mov eax, dword [eax + 0xfc]
mov esi, edi
shr esi, 0x10
lea ecx, [esp + 0x14]
push ecx
movsx edx, si
push edx
mov edx, dword [esp + 0x18]
movsx ecx, di
push ecx
push edx
mov ecx, ebx
call eax
cmp byte [ebx + 0x146], 0
mov byte [esp + 0xf], al
je 0x433d47
mov ecx, dword [esp + 0x18]
push ecx
call dword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
jne 0x433d47
lea edx, [esp + 0x1c]
push edx
call dword [sym.imp.USER32.dll_GetCursorPos]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
movzx eax, di
movzx esi, si
cmp eax, dword [ebx + 0x164]
jne 0x433f45
cmp esi, dword [ebx + 0x168]
jne 0x433f45
cmp edx, dword [ebx + 0x15c]
jne 0x433f45
cmp ecx, dword [ebx + 0x160]
je 0x433d47
cmp byte [ebx + 0x146], 0
mov dword [ebx + 0x15c], edx
mov dword [ebx + 0x160], ecx
mov dword [ebx + 0x168], esi
mov dword [ebx + 0x164], eax
je 0x433d47
mov eax, dword [esp + 0x18]
push eax
call dword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
jne 0x433d47
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x28]
push ecx
push edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ecx, dword [esp + 0x20]
sub ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x1c]
sub eax, dword [esp + 0x28]
mov dword [esp + 0x20], ecx
movzx ecx, cx
mov dword [esp + 0x1c], eax
movzx eax, ax
shl ecx, 0x10
or ecx, eax
cmp esi, 0x201
jne 0x433ff5
mov edx, ecx
shr edx, 0x10
movsx eax, dx
movsx ecx, cx
mov esi, ebx
call fcn.00434a00
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x870]
xor ecx, esp
call fcn.0046fdae
mov esp, ebp
pop ebp
ret 0x14
cmp esi, 0x204
jne 0x43402c
mov eax, ecx
shr eax, 0x10
movsx edx, ax
movsx eax, cx
push edx
push eax
mov ecx, ebx
call fcn.0043a970
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x870]
xor ecx, esp
call fcn.0046fdae
mov esp, ebp
pop ebp
ret 0x14
mov eax, dword [esp + 0x18]
mov edx, dword [ebx]
push ecx
mov ecx, dword [edx + 0xc0]
push 0
push esi
push eax
push ebx
call ecx
jmp 0x433d47
cmp edx, dword [ebx + 0x124]
jne case.0x43415d.518
cmp dword [ebx + 0x1a8], 0
je case.0x43415d.518
cmp byte [ebx + 0x1ac], 0
jne 0x434076
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
mov byte [ebx + 0x1ac], 1
mov edx, dword [ebx + 0x1a8]
push edx
push esi
push 0x4c2e7c
call sub.OLEACC.dll_LresultFromObject
mov esi, eax
xor eax, eax
push 0x7fe
push eax
lea ecx, [esp + 0x82]
push ecx
mov word [esp + 0x84], ax
call fcn.00476c30
add esp, 0xc
push esi
lea edx, [esp + 0x7c]
push str.t_cuWindow::WndProc_____WM_GETOBJECT_____LresultFromObject______d
push edx
call fcn.004214c0
add esp, 0xc
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x870]
xor ecx, esp
call fcn.0046fdae
mov esp, ebp
pop ebp
ret 0x14
push esi
push ebx
call fcn.00434f40
jmp 0x433d56
cmp eax, 0x200
ja 0x434144
je 0x434127
mov ecx, eax
sub ecx, 0x101
je 0x43411b
sub ecx, 0x12
jne case.0x43415d.518
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [ebx]
push eax
mov eax, dword [edx + 0xe8]
push esi
mov ecx, ebx
call eax
mov byte [esp + 0xf], al
jmp 0x433d4b
push esi
push ebx
call fcn.00435050
jmp 0x433d56
mov ecx, edi
shr ecx, 0x10
movsx edx, cx
movsx eax, di
push edx
push eax
mov eax, ebx
call fcn.00434ae0
mov byte [esp + 0xf], al
jmp 0x433d4b
lea ecx, [eax - 0x201]
cmp ecx, 0xa2
ja case.0x43415d.518
movzx ecx, byte [ecx + 0x4344fc]
jmp dword [ecx*4 + 0x4344cc]
mov eax, dword [edi]
mov edx, dword [edi + 8]
mov ecx, dword [edi + 4]
sub edx, eax
mov dword [esp + 0x10], eax
mov eax, dword [edi + 0xc]
sub eax, ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x24], ecx
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x2c]
push ecx
lea eax, [esp + 0x2c]
push eax
mov dword [esp + 0x34], edx
mov edx, dword [ebx]
mov edx, dword [edx + 0xd8]
lea ecx, [esp + 0x1c]
push ecx
push esi
mov ecx, ebx
call edx
mov byte [esp + 0xf], al
test al, al
je 0x433d56
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
add edx, eax
mov dword [edi], eax
mov eax, dword [esp + 0x1c]
add eax, ecx
mov dword [edi + 4], ecx
mov dword [edi + 8], edx
mov dword [edi + 0xc], eax
mov dword [esp + 0x14], 1
jmp 0x433d4b
mov ecx, edi
shr ecx, 0x10
movsx eax, cx
movsx ecx, di
mov esi, ebx
call fcn.00434a00
jmp 0x433d43
mov edx, edi
shr edx, 0x10
movsx eax, dx
push eax
movsx eax, di
push ebx
call fcn.00434a30
mov byte [esp + 0xf], al
jmp 0x433d4b
mov ecx, edi
shr ecx, 0x10
movsx edx, cx
movsx eax, di
push edx
push eax
mov ecx, ebx
call fcn.0043a970
mov byte [esp + 0xf], al
jmp 0x433d4b
mov ecx, edi
shr ecx, 0x10
movsx edx, cx
movsx eax, di
push edx
push eax
mov ecx, ebx
call fcn.0043aa70
mov byte [esp + 0xf], al
jmp 0x433d4b
call fcn.0043bc40
cmp dword [eax], 0
je 0x433fda
call fcn.00434c00
mov byte [esp + 0xf], al
jmp 0x433d4b
call fcn.0043bc40
cmp dword [eax], 0
je 0x433fda
mov ecx, esi
shr ecx, 0x10
movsx ecx, cx
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
movzx ecx, si
add eax, edx
call fcn.00434ce0
mov byte [esp + 0xf], al
jmp 0x433d4b
mov eax, dword [edi]
mov edx, dword [edi + 8]
mov ecx, dword [edi + 4]
sub edx, eax
mov dword [esp + 0x1c], eax
mov eax, dword [edi + 0xc]
sub eax, ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x28], ecx
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x28]
push ecx
lea eax, [esp + 0x30]
mov dword [esp + 0x2c], edx
mov edx, dword [ebx]
mov edx, dword [edx + 0xe0]
push eax
lea ecx, [esp + 0x28]
push ecx
mov ecx, ebx
call edx
push 0
push 0
mov ecx, ebx
mov byte [esp + 0x17], al
call fcn.00439270
mov al, byte [esp + 0xf]
mov byte [esp + 0xf], al
test al, al
je 0x433d56
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
add edx, eax
mov dword [edi], eax
mov eax, dword [esp + 0x10]
add eax, ecx
mov dword [edi + 4], ecx
mov dword [edi + 8], edx
mov dword [edi + 0xc], eax
mov dword [esp + 0x14], 1
jmp 0x433d4b
mov ecx, edi
shr ecx, 0x10
movsx edx, cx
movsx eax, di
push edx
push eax
mov ecx, ebx
call fcn.0043ab70
mov byte [esp + 0xf], al
jmp 0x433d4b
cmp edi, dword [ebx + 0x124]
je case.0x43415d.518
cmp byte [ebx + 0x135], 0
je 0x434367
call dword [sym.imp.USER32.dll_ReleaseCapture]
mov byte [ebx + 0x135], 0
call fcn.0043bc40
cmp dword [eax + 4], 0
je 0x433d56
call fcn.0043bc40
mov ecx, dword [eax + 4]
push ecx
call fcn.00439f90
test al, al
je 0x433d56
xor eax, eax
lea edx, [esp + 0x28]
push edx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov ecx, dword [ebx + 0x124]
lea eax, [esp + 0x28]
push eax
push ecx
call dword [sym.imp.USER32.dll_ScreenToClient]
call fcn.0043bc40
mov eax, dword [eax + 4]
lea esi, [esp + 0x2c]
lea edi, [esp + 0x28]
call fcn.00434910
call fcn.0043bc40
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
mov esi, dword [eax + 4]
push edx
push ecx
call fcn.0043a940
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x10]
jmp 0x433d56
push edi
push esi
push eax
mov eax, dword [esp + 0x24]
push eax
call dword [sym.imp.USER32.dll_DefWindowProcW]
mov ecx, dword [esp + 0x87c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0046fdae
mov esp, ebp
pop ebp
ret 0x14