Function at 0x5e9250
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x660876
mov eax, dword fs:[0]
push eax
sub esp, 0x28
push ebx
push esi
push edi
mov eax, dword [0x76c12c]
xor eax, esp
push eax
lea eax, [esp + 0x38]
mov dword fs:[0], eax
mov esi, ecx
cmp byte [ebp + 8], 0
je 0x5e9423
mov eax, 1
cmp dword [esi + 0x1b0], eax
je 0x5e93ef
mov edx, dword [esi]
mov dword [esi + 0x1b0], eax
push eax
mov eax, dword [edx + 0x58]
call eax
xor eax, eax
call fcn.005e8230
mov ecx, dword [esi + 0x148]
mov edi, dword [sym.imp.USER32.dll_UpdateWindow]
push ecx
call edi
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edx, dword [esi + 0x148]
push 5
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [esi]
mov edx, dword [eax + 0x20]
mov ecx, esi
call edx
mov eax, dword [esi + 0x148]
push eax
call edi
mov edx, dword [esi]
mov eax, dword [edx + 0x3c]
mov ecx, esi
call eax
call fcn.0058d880
push 0
mov dword [esp + 0x24], eax
call fcn.0058d82f
mov edi, dword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
add esp, 4
mov ebx, eax
mov dword [esp + 0x28], edx
mov edi, edi
push 0
call fcn.0058d82f
add esp, 4
sub eax, ebx
sbb edx, dword [esp + 0x28]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
test edx, edx
jg 0x5e934e
jl 0x5e9335
cmp eax, 0xe10
jae 0x5e934e
call fcn.0058d880
sub eax, dword [esp + 0x20]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fdiv qword [0x7156a8]
jmp 0x5e9352
fild qword [esp + 0x14]
fadd qword [0x715690]
fld qword [0x7156e8]
fcomp st(1)
fnstsw ax
test ah, 5
jnp 0x5e93bd
fmul qword [0x7156f0]
call fcn.005923b0
mov ecx, dword [esi + 0x148]
push 3
add eax, eax
push eax
push 0xff00ff
push ecx
mov dword [esi + 0x214], eax
call edi
mov eax, dword [esi + 0x214]
test eax, eax
jne 0x5e939f
mov dword [esi + 0x1b0], 2
cmp eax, 0xff
jne 0x5e93b0
mov dword [esi + 0x1b0], 1
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x5e9310
mov eax, 0xff
fstp st(0)
call fcn.005e8230
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edx, dword [esi]
mov eax, dword [edx + 0x3c]
mov ecx, esi
call eax
mov ecx, dword [esp + 0x38]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push str.Window_already_shown.
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x30], esp
xor esi, esi
push 0x1c
xor edx, edx
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], esi
push 0x6d15a8
mov word [ecx], dx
call fcn.00401f00
mov dword [esp + 0x60], esi
jmp 0x5e959a
mov edi, 2
cmp dword [esi + 0x1b0], edi
je 0x5e9569
mov dword [esi + 0x1b0], edi
call fcn.0058d880
push 0
mov dword [esp + 0x24], eax
call fcn.0058d82f
mov edi, dword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
add esp, 4
mov ebx, eax
mov dword [esp + 0x28], edx
lea esp, [esp]
push 0
call fcn.0058d82f
add esp, 4
sub eax, ebx
sbb edx, dword [esp + 0x28]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
test edx, edx
jg 0x5e949e
jl 0x5e9485
cmp eax, 0xe10
jae 0x5e949e
call fcn.0058d880
sub eax, dword [esp + 0x20]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fdiv qword [0x7156a8]
jmp 0x5e94a2
fild qword [esp + 0x14]
fadd qword [0x715690]
fld qword [0x7156e8]
fcomp st(1)
fnstsw ax
test ah, 5
jnp 0x5e9517
fmul qword [0x7156e0]
call fcn.005923b0
mov edx, dword [esi + 0x148]
neg eax
lea ecx, [eax + eax]
push 3
mov eax, 0xff
sub eax, ecx
push eax
push 0xff00ff
push edx
mov dword [esi + 0x214], eax
call edi
mov eax, dword [esi + 0x214]
test eax, eax
jne 0x5e94f9
mov dword [esi + 0x1b0], 2
cmp eax, 0xff
jne 0x5e950a
mov dword [esi + 0x1b0], 1
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x5e9460
xor eax, eax
fstp st(0)
call fcn.005e8230
call fcn.0040ec90
mov ecx, dword [esi + 0x148]
mov edx, dword [eax]
mov edx, dword [edx + 0x80]
push 0
push ecx
mov ecx, eax
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x14]
mov ecx, esi
call edx
test al, al
je 0x5e95aa
push str.Could_not_hide_the_window
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x30], esp
push str.FadeWindow
call fcn.00402050
mov dword [esp + 0x60], 1
jmp 0x5e959a
push str.Window_already_hidden.
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x30], esp
push 0x1c
xor eax, eax
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push str.ScarlettMainForm::FadeWindow
mov word [ecx], ax
call fcn.00401f00
mov dword [esp + 0x60], edi
mov dword [esp + 0x60], 0xffffffff
call fcn.00557e20
add esp, 0x20
mov ecx, dword [esp + 0x38]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4