Function at 0x40cd30
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
mov esi, edx
push edi
mov edi, ecx
mov eax, dword [esi + 8]
add eax, 0x141
cmp eax, 0xdc
ja case.0x40cd57.320
movzx eax, byte [eax + 0x40d034]
jmp dword [eax*4 + 0x40d014]
movzx eax, word [esi + 0xc]
cmp eax, 0x2d
jne 0x40cd78
call fcn.0040c5e0
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x2e
jne case.0x40cd57.320
call fcn.0040c8e0
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
push 8
push edi
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ecx, dword [esi + 0x18]
mov edi, eax
mov edx, dword [esi + 0x14]
and ecx, 2
and edx, 2
cmp edx, ecx
jbe 0x40cdd2
push 0
push 0
push 0x140f
push dword [edi + 4]
call dword [sym.imp.USER32.dll_PostMessageW]
mov ecx, edi
call fcn.0040bed0
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
je 0x40cfe4
mov ecx, edi
call fcn.0040bed0
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
push 8
push edi
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ebx, dword [sym.imp.USER32.dll_IsWindowVisible]
mov esi, eax
push dword [esi + 0xc]
call ebx
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
test eax, eax
je 0x40ce12
push 0
push dword [esi + 0xc]
call edi
push dword [esi + 0x10]
call ebx
test eax, eax
je 0x40ce22
push 0
push dword [esi + 0x10]
call edi
push dword [esi + 0x14]
call ebx
test eax, eax
je 0x40cfe4
push 0
push dword [esi + 0x14]
call edi
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
push 0
push 0
push 0x140f
push edi
call dword [sym.imp.USER32.dll_PostMessageW]
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
push 8
push edi
call dword [sym.imp.USER32.dll_GetWindowLongW]
push 0
mov ebx, eax
push 0
push 0x1004
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_SendMessageW]
dec eax
cmp dword [esi + 0x10], eax
jl 0x40ce9c
mov eax, 1
push eax
push 0
push edi
call dword [sym.imp.USER32.dll_SetWindowLongW]
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
push dword [ebx + 0xc]
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov esi, dword [sym.imp.USER32.dll_ShowWindow]
test eax, eax
je 0x40ceb6
push 0
push dword [ebx + 0xc]
call esi
push dword [ebx + 0x10]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x40ceca
push 0
push dword [ebx + 0x10]
call esi
push dword [ebx + 0x14]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x40cede
push 0
push dword [ebx + 0x14]
call esi
xor eax, eax
push eax
push eax
push edi
call dword [sym.imp.USER32.dll_SetWindowLongW]
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
push 8
push edi
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ecx, dword [esi + 0x2c]
mov dword [ebp - 4], eax
mov eax, dword [esi + 0x20]
mov dword [ebp - 8], ecx
test eax, eax
jne 0x40cf33
test ecx, ecx
jne 0x40cfe4
push dword [esi]
push dword [esi + 0x10]
push 0x140e
push edi
call dword [sym.imp.USER32.dll_PostMessageW]
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
xor edx, edx
mov ecx, eax
call fcn.00421e90
mov ebx, eax
test ebx, ebx
jne 0x40cf6d
push dword [esi]
push dword [esi + 0x10]
push 0x140e
push edi
call dword [sym.imp.USER32.dll_PostMessageW]
push 0x1df
push 1
push edi
call fcn.0047af20
add esp, 0xc
lea eax, [ebx + 1]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebx + 0x14], 0
jne 0x40cfa6
push dword [esi]
push dword [esi + 0x10]
push 0x140e
push edi
call dword [sym.imp.USER32.dll_PostMessageW]
push 0x1e0
push 1
push edi
call fcn.0047af20
push ebx
call fcn.00457d90
add esp, 0x10
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 8]
test edi, edi
je 0x40cfbf
mov eax, dword [edi + 0x1c]
mov dword [ebx + 0x1c], eax
mov eax, dword [edi + 0x20]
mov dword [ebx + 0x20], eax
mov eax, dword [edi + 0x18]
mov dword [ebx + 0x18], eax
mov eax, dword [ebp - 4]
push ebx
push dword [esi + 0x10]
push dword [eax + 8]
call fcn.00478fd0
push dword [esi + 0x10]
mov ecx, dword [ebp - 4]
mov edx, ebx
call fcn.0040bfc0
push edi
call fcn.00457d90
add esp, 8
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
push 0x28
push dword [esi + 0x28]
call fcn.0047d599
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret