Function at 0x408770
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xc
push ebx
push esi
mov esi, ecx
push edi
cmp byte [esi + 0xc9], 0
jne 0x408c41
mov eax, dword [ebp + 8]
mov byte [esi + 0xc9], 1
test eax, eax
jne 0x40886a
mov edi, dword [esi + 0x14]
mov eax, 0x55555556
mov ecx, dword [esi + 0xc]
neg edi
mov ebx, dword [sym.imp.USER32.dll_SetWindowPos]
sub ecx, edi
imul ecx
mov dword [esp + 0xc], 3
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov dword [esp + 0x10], ecx
push 0x40
push dword [esi + 0x18]
add edi, ecx
push dword [esi + 0x14]
push dword [esi + 0x10]
push edi
push 0
push dword [esi + 0x54]
call ebx
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
sub dword [esp + 0xc], 1
mov ecx, dword [esp + 0x10]
jne 0x4087c7
mov dword [esp + 0xc], 2
push 0x40
push dword [esi + 0x18]
sub edi, 5
push dword [esi + 0x14]
push dword [esi + 0x10]
push edi
push 0
push dword [esi + 0x54]
call ebx
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
sub dword [esp + 0xc], 1
jne 0x4087f7
mov dword [esp + 0xc], 2
push 0x40
push dword [esi + 0x18]
add edi, 5
push dword [esi + 0x14]
push dword [esi + 0x10]
push edi
push 0
push dword [esi + 0x54]
call ebx
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
sub dword [esp + 0xc], 1
jne 0x408824
push 0x40
push dword [esi + 0x18]
push dword [esi + 0x14]
push dword [esi + 0x10]
push dword [esi + 0xc]
push 0
push dword [esi + 0x54]
call ebx
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x24]
jmp 0x408c28
cmp eax, 1
jne 0x4088bd
mov eax, 0x66666667
mov dword [esp + 0xc], 5
imul dword [esi + 0x18]
sar edx, 1
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov edi, ebx
nop word [eax + eax]
push 0x40
push edi
push dword [esi + 0x14]
push dword [esi + 0x10]
push dword [esi + 0xc]
push 0
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetWindowPos]
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
add edi, ebx
sub dword [esp + 0xc], 1
jne 0x408890
jmp 0x408b88
cmp eax, 2
jne 0x408912
mov eax, 0x66666667
mov dword [esp + 0xc], 5
imul dword [esi + 0x18]
sar edx, 1
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov edi, ebx
nop dword [eax]
mov eax, dword [esi + 0x18]
push 0x40
sub eax, edi
push eax
push dword [esi + 0x14]
push dword [esi + 0x10]
push dword [esi + 0xc]
push 0
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetWindowPos]
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
add edi, ebx
sub dword [esp + 0xc], 1
jne 0x4088e0
jmp 0x408c04
cmp eax, 3
jne 0x408967
mov ecx, dword [esi + 0x14]
mov eax, 0x66666667
mov edi, dword [esi + 0xc]
mov ebx, 5
add ecx, edi
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x10], eax
push 0x40
push dword [esi + 0x18]
sub edi, eax
push dword [esi + 0x14]
push dword [esi + 0x10]
push edi
push 0
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetWindowPos]
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esp + 0x10]
sub ebx, 1
jne 0x408938
jmp 0x408c28
cmp eax, 4
jne 0x408976
call fcn.00407b60
jmp 0x408c28
cmp eax, 5
jne 0x408a1c
mov edi, dword [esi + 0x10]
mov eax, 0x66666667
imul dword [esi + 0x18]
mov byte [esi + 0xc8], 1
sar edx, 2
mov ecx, edx
mov dword [esp + 0xc], 9
shr ecx, 0x1f
add ecx, edx
mov eax, ecx
mov dword [esp + 0x10], ecx
cdq
mov ebx, ecx
sub eax, edx
sar eax, 1
mov dword [esp + 0x14], eax
add edi, eax
mov eax, dword [esi + 0x18]
push 0x40
sub eax, ebx
push eax
push dword [esi + 0x14]
push edi
push dword [esi + 0xc]
push 0
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetWindowPos]
push 0xf
call dword [sym.imp.KERNEL32.dll_Sleep]
add ebx, dword [esp + 0x10]
sub dword [esp + 0xc], 1
mov eax, dword [esp + 0x14]
jne 0x4089b4
mov eax, dword [esi + 0x18]
push 0x40
cdq
push 1
push dword [esi + 0x14]
sub eax, edx
sar eax, 1
add eax, dword [esi + 0x10]
push eax
push dword [esi + 0xc]
push 0
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x24]
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x408c04
cmp eax, 6
jne 0x408aa6
mov edi, dword [sym.imp.USER32.dll_GetWindowLongW]
push 0xffffffffffffffec
push dword [esi + 0x54]
call edi
or eax, 0x80000
push eax
push 0xffffffffffffffec
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetWindowLongW]
push 2
push 0
push 0
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
push 5
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_ShowWindow]
mov ebx, 1
push 0xffffffffffffffec
push dword [esi + 0x54]
call edi
or eax, 0x80000
push eax
push 0xffffffffffffffec
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetWindowLongW]
movzx eax, bl
imul eax, eax, 0x13
push 2
add al, 0x3c
movzx eax, al
push eax
push 0
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
push 0x1e
call dword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
cmp ebx, 0xa
jle 0x408a62
jmp 0x408c28
cmp eax, 7
jne 0x408afc
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
lea ebx, [eax - 6]
push 0xffffffffffffffec
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_GetWindowLongW]
or eax, 0x80000
push eax
push 0xffffffffffffffec
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetWindowLongW]
mov al, bl
add al, al
push 2
lea ecx, [eax + ebx]
shl cl, 2
not cl
movzx eax, cl
push eax
push 0
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
push 0x1e
call edi
inc ebx
cmp ebx, 0x14
jle 0x408ab4
jmp 0x408c28
cmp eax, 8
jne 0x408b0b
call fcn.00407db0
jmp 0x408c28
cmp eax, 9
jne 0x408b1a
call fcn.00407fa0
jmp 0x408c28
cmp eax, 0xa
jne 0x408b29
call fcn.00408260
jmp 0x408c28
cmp eax, 0xb
jne 0x408b38
call fcn.004084e0
jmp 0x408c28
cmp eax, 0xc
jne 0x408baa
mov eax, 0x66666667
mov dword [esp + 0xc], 0xa
imul dword [esi + 0x14]
sar edx, 2
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov edi, ebx
nop dword [eax]
push 0x40
push dword [esi + 0x18]
push edi
push dword [esi + 0x10]
push dword [esi + 0xc]
push 0
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetWindowPos]
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
add edi, ebx
sub dword [esp + 0xc], 1
jne 0x408b60
push 0x40
push dword [esi + 0x18]
push dword [esi + 0x14]
push dword [esi + 0x10]
push dword [esi + 0xc]
push 0
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x24]
jmp 0x408c28
cmp eax, 0xd
jne 0x408c28
mov eax, 0x66666667
mov dword [esp + 0xc], 0xa
imul dword [esi + 0x14]
sar edx, 2
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov edi, ebx
nop dword [eax + eax]
mov eax, dword [esi + 0x14]
push 0x40
push dword [esi + 0x18]
sub eax, edi
push eax
push dword [esi + 0x10]
push dword [esi + 0xc]
push 0
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x24]
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
add edi, ebx
sub dword [esp + 0xc], 1
jne 0x408bd0
push 0
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_ShowWindow]
push 0
push 0
push 0x200
push dword [esi + 0x54]
mov byte [esi + 0xc7], 1
call dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x1c39
push dword [esi + 0x54]
mov byte [esi + 0xc9], 0
call dword [sym.imp.USER32.dll_PostMessageW]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4