Function at 0x4df980
Capabilities:
Check for unmoving mouse cursor
Hide graphical window

Disassembly:
sub esp, 0x28
push esi
push edi
mov edi, edx
mov esi, ecx
call fcn.00536900
test eax, eax
je 0x4dfcac
cmp dword [esi + 0x700], 1
jne 0x4dfcac
test edi, edi
jne 0x4df9f7
mov ecx, dword [esi]
call fcn.004df240
mov ecx, dword [esi]
xor edx, edx
call fcn.004df070
mov ecx, dword [esi + 0x76c]
test ecx, ecx
mov dword [esi + 0x738], eax
jne 0x4dfba1
cmp eax, 2
je 0x4dfba1
mov eax, dword [esi + 0x86c]
push 1
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
mov ecx, dword [esi + 0x86c]
push 8
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x4dfbbf
mov eax, dword [esi + 0x76c]
test eax, eax
je 0x4dfcac
cmp dword [esi + 0x738], 2
je 0x4dfcac
cmp edi, 1
jne 0x4dfb6d
lea ecx, [esp + 8]
push ecx
call dword [sym.imp.USER32.dll_GetCursorPos]
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 8]
mov edi, dword [esi]
push edx
push eax
call dword [sym.imp.USER32.dll_WindowFromPoint]
cmp edi, eax
jne 0x4dfcac
lea ecx, [esp + 8]
push ecx
push edi
call dword [sym.imp.USER32.dll_ScreenToClient]
mov eax, dword [esi]
mov edi, dword [sym.imp.USER32.dll_GetClientRect]
lea edx, [esp + 0x20]
push edx
push eax
call edi
mov edx, dword [esi + 0x86c]
lea ecx, [esp + 0x10]
push ecx
push edx
call edi
mov eax, dword [esi + 0x738]
test eax, eax
jne 0x4dfaae
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x28]
lea eax, [eax + eax*2]
cdq
and edx, 3
add eax, edx
sar eax, 2
sub ecx, eax
cmp dword [esp + 8], ecx
jl 0x4dfcac
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
sub ecx, eax
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
jmp 0x4dfaeb
cmp eax, 1
jne 0x4dfcac
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 8]
lea eax, [eax + eax*2]
cdq
and edx, 3
add eax, edx
sar eax, 2
cmp ecx, eax
jg 0x4dfcac
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
sub ecx, edx
mov eax, 0x55555556
imul ecx
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
cmp dword [esp + 0xc], edx
jg 0x4dfcac
mov edx, dword [esi + 0x86c]
push edx
mov dword [esi + 0x770], 0
call dword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
jne 0x4dfcac
mov eax, dword [esi + 0x86c]
push 1
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
mov ecx, dword [esi + 0x86c]
push 8
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, dword [esi]
mov edx, 0x80b8
call fcn.00538900
mov eax, dword [0x5990d0]
test eax, eax
jne 0x4dfb62
mov edx, dword [0x5a1b00]
push 0
push 0x64
push 0x8b
push edx
call dword [sym.imp.USER32.dll_SetTimer]
mov dword [0x5990d0], eax
pop edi
mov eax, 1
pop esi
add esp, 0x28
ret
cmp edi, 2
jne 0x4dfcac
mov eax, dword [esi + 0x770]
test eax, eax
je 0x4dfbd6
mov ecx, dword [esi]
cmp ecx, dword [0x594268]
je 0x4dfbcb
add eax, 0xffffff9c
test eax, eax
mov dword [esi + 0x770], eax
jg 0x4dfbcb
mov dword [esi + 0x770], 0
mov edx, dword [esi + 0x86c]
push 0
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [esi + 0x86c]
push 0
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
mov ecx, dword [esi]
mov edx, 0x80b8
call fcn.00538900
pop edi
mov eax, 1
pop esi
add esp, 0x28
ret
mov ecx, dword [esi + 0x86c]
push ecx
call dword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
je 0x4dfcac
mov eax, dword [0x5a1b08]
test eax, eax
je 0x4dfca1
mov edx, dword [esi]
cmp edx, dword [0x5a1b0c]
jne 0x4dfca1
call dword [sym.imp.USER32.dll_GetCapture]
test eax, eax
jne 0x4dfca1
lea eax, [esp + 8]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov edx, dword [esi]
lea ecx, [esp + 8]
push ecx
push edx
call dword [sym.imp.USER32.dll_ScreenToClient]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esi]
push eax
push ecx
push edx
call dword [sym.imp.USER32.dll_ChildWindowFromPoint]
test eax, eax
je 0x4dfca1
cmp eax, dword [esi + 0x864]
je 0x4dfc97
cmp eax, dword [esi + 0x868]
je 0x4dfc97
mov ecx, dword [esi + 0x85c]
cmp eax, ecx
jne 0x4dfca1
push 1
lea eax, [esp + 0xc]
push eax
push ecx
mov ecx, dword [esi]
push ecx
call dword [sym.imp.USER32.dll_MapWindowPoints]
mov eax, dword [esi + 0x85c]
lea edx, [esp + 0x20]
push edx
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, 2
call fcn.005382b0
mov ecx, dword [esp + 0x28]
sub ecx, eax
cmp dword [esp + 8], ecx
jge 0x4dfca1
mov dword [esi + 0x770], 0x64
pop edi
mov eax, 1
pop esi
add esp, 0x28
ret
pop edi
xor eax, eax
pop esi
add esp, 0x28
ret