Function at 0x408360
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 0x408831
mov eax, dword [ebp + 8]
mov byte [esi + 0xc9], 1
test eax, eax
jne 0x40845a
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 0x4083b7
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 0x4083e7
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 0x408414
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 + 0x20]
jmp 0x408818
cmp eax, 1
jne 0x4084ad
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 0x408480
jmp 0x408778
cmp eax, 2
jne 0x408502
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 0x4084d0
jmp 0x4087f4
cmp eax, 3
jne 0x408557
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 0x408528
jmp 0x408818
cmp eax, 4
jne 0x408566
call fcn.00407750
jmp 0x408818
cmp eax, 5
jne 0x40860c
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 0x4085a4
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 + 0x20]
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x4087f4
cmp eax, 6
jne 0x408696
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 0x408652
jmp 0x408818
cmp eax, 7
jne 0x4086ec
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 0x4086a4
jmp 0x408818
cmp eax, 8
jne 0x4086fb
call fcn.004079a0
jmp 0x408818
cmp eax, 9
jne 0x40870a
call fcn.00407b90
jmp 0x408818
cmp eax, 0xa
jne 0x408719
call fcn.00407e50
jmp 0x408818
cmp eax, 0xb
jne 0x408728
call fcn.004080d0
jmp 0x408818
cmp eax, 0xc
jne 0x40879a
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 0x408750
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 + 0x20]
jmp 0x408818
cmp eax, 0xd
jne 0x408818
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 + 0x20]
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
add edi, ebx
sub dword [esp + 0xc], 1
jne 0x4087c0
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