Function at 0x4084a0
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 0x408971
mov eax, dword [ebp + 8]
mov byte [esi + 0xc9], 1
test eax, eax
jne 0x40859a
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 0x4084f7
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 0x408527
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 0x408554
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 0x408958
cmp eax, 1
jne 0x4085ed
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 0x4085c0
jmp 0x4088b8
cmp eax, 2
jne 0x408642
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 0x408610
jmp 0x408934
cmp eax, 3
jne 0x408697
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 0x408668
jmp 0x408958
cmp eax, 4
jne 0x4086a6
call fcn.00407890
jmp 0x408958
cmp eax, 5
jne 0x40874c
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 0x4086e4
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 0x408934
cmp eax, 6
jne 0x4087d6
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 0x408792
jmp 0x408958
cmp eax, 7
jne 0x40882c
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 0x4087e4
jmp 0x408958
cmp eax, 8
jne 0x40883b
call fcn.00407ae0
jmp 0x408958
cmp eax, 9
jne 0x40884a
call fcn.00407cd0
jmp 0x408958
cmp eax, 0xa
jne 0x408859
call fcn.00407f90
jmp 0x408958
cmp eax, 0xb
jne 0x408868
call fcn.00408210
jmp 0x408958
cmp eax, 0xc
jne 0x4088da
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 0x408890
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 0x408958
cmp eax, 0xd
jne 0x408958
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 0x408900
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