Function at 0x57beff
Capabilities:
Hide graphical window

Disassembly:
jmp 0x593b70
sub esp, 0x28
cmp dword [0x8f2694], 0
push ebp
je 0x593f35
mov ebp, 1
cmp dword [0x8f26bc], ebp
je 0x593f35
push esi
lea eax, [esp + 8]
push eax
lea ecx, [esp + 0x10]
push ecx
call fcn.0057a04b
add esp, 8
cmp dword [0x8f26ec], ebp
jne 0x593e6c
push ebx
push edi
push 0x87a484
call fcn.0057a587
add esp, 4
xor edi, edi
cmp dword [0x8fcbd8], ebp
jne 0x593bcd
lea edi, [ebp + 0x1f]
cmp dword [0x8fcd00], ebp
jne 0x593bdb
or edi, 0x80000
xor esi, esi
cmp dword [0x8f26f4], ebp
jne 0x593bea
mov esi, 0x10000
cmp dword [0x8fcbd4], ebp
jne 0x593bf8
or esi, 0x10000000
cmp dword [0x8fcba4], ebp
jne 0x593c06
or esi, 0x40000
mov edx, dword [0x8f26b8]
mov eax, dword [edx*4 + 0x879db4]
mov ecx, dword [0x8f2694]
mov ebx, dword [sym.imp.USER32.dll_SetWindowLongA]
add eax, edi
push eax
push 0xffffffffffffffec
push ecx
call ebx
mov edx, dword [0x8f26b8]
mov eax, dword [edx*4 + 0x879d88]
mov ecx, dword [0x8f2694]
add eax, esi
push eax
push 0xfffffffffffffff0
push ecx
call ebx
lea edx, [esp + 0x20]
lea eax, [esp + 0x18]
push edx
push eax
call fcn.0057b167
fstp st(0)
fild dword [esp + 0x1c]
fmul qword [esp + 0x20]
fstp qword [esp]
call fcn.0057e119
fild dword [esp + 0x18]
mov dword [esp + 0x1c], eax
fmul qword [esp + 0x28]
fstp qword [esp]
call fcn.0057e119
add esp, 8
mov ebx, eax
call fcn.0057d066
add ebx, eax
cmp dword [0x8fcbc4], ebp
mov dword [esp + 0x10], ebx
jne 0x593ca3
mov ecx, dword [0x8fcbbc]
mov edx, dword [0x8fcbc0]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], edx
call fcn.0057d066
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
push eax
push ecx
push 0
push 0
lea edx, [esp + 0x38]
push edx
call dword [sym.imp.USER32.dll_SetRect]
mov eax, dword [0x8f26b8]
mov ecx, dword [eax*4 + 0x879db4]
mov edx, dword [eax*4 + 0x879d88]
add ecx, edi
push ecx
push 0
add edx, esi
push edx
lea eax, [esp + 0x34]
push eax
call dword [sym.imp.USER32.dll_AdjustWindowRectEx]
mov ebp, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
mov eax, dword [0x8f28d8]
mov ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x34]
sub ecx, ebp
sub eax, ecx
cdq
sub eax, edx
mov edi, eax
mov eax, dword [0x8f28dc]
sub esi, ebx
sub eax, esi
cdq
sar edi, 1
add dword [esp + 0x30], edi
sub eax, edx
add ebp, edi
sar eax, 1
add dword [esp + 0x34], eax
add ebx, eax
mov edi, 1
cmp dword [0x8fcbd0], edi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], esi
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebx
jne 0x593d4a
mov ebx, dword [0x8fcbcc]
mov ebp, dword [0x8fcbc8]
push 0
push esi
push ecx
mov ecx, dword [0x8f2694]
push ebx
mov ebx, dword [sym.imp.USER32.dll_SetWindowPos]
push ebp
push 0xfffffffffffffffe
push ecx
call ebx
cmp dword [0x8fcbd0], edi
jne 0x593d76
mov ecx, dword [0x8fcbcc]
mov eax, dword [0x8fcbc8]
jmp 0x593d7e
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x10]
push 0
push edx
mov edx, dword [esp + 0x1c]
push edx
push ecx
push eax
mov eax, dword [0x8f2694]
push 0
push eax
call ebx
mov ecx, dword [0x8f2694]
push 0x8f26dc
push ecx
call dword [sym.imp.USER32.dll_GetClientRect]
mov edx, dword [0x8f2694]
mov esi, dword [sym.imp.USER32.dll_ClientToScreen]
push 0x8f26dc
push edx
call esi
mov eax, dword [0x8f2694]
push 0x8f26e4
push eax
call esi
mov ecx, dword [0x8f26dc]
test ecx, ecx
jl 0x593ddf
mov ecx, dword [0x8f26e0]
test ecx, ecx
jge 0x593e52
jmp 0x593e03
mov eax, ecx
neg eax
add dword [esp + 0x28], eax
add dword [esp + 0x30], eax
add dword [0x8f26e4], eax
add ecx, eax
mov dword [0x8f26dc], ecx
mov ecx, dword [0x8f26e0]
test ecx, ecx
jge 0x593e1d
mov eax, ecx
neg eax
add dword [esp + 0x2c], eax
add dword [esp + 0x34], eax
add ecx, eax
add dword [0x8f26e8], eax
mov dword [0x8f26e0], ecx
cmp dword [0x8fcbd0], edi
jne 0x593e32
mov ecx, dword [0x8fcbcc]
mov eax, dword [0x8fcbc8]
jmp 0x593e3a
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x10]
push 0
push edx
mov edx, dword [esp + 0x1c]
push edx
push ecx
push eax
mov eax, dword [0x8f2694]
push 0
push eax
call ebx
push edi
call fcn.0057eeb1
push 0x87a47c
call fcn.0057a587
add esp, 8
pop edi
pop ebx
jmp 0x593f16
push 0x87a434
call fcn.0057a587
mov ecx, dword [0x8f26b8]
mov edx, dword [ecx*4 + str._b_b_b_b_b_b_b_b_b_b]
mov eax, dword [0x8f2694]
mov esi, dword [sym.imp.USER32.dll_SetWindowLongA]
add esp, 4
push edx
push 0xffffffffffffffec
push eax
call esi
mov ecx, dword [0x8f26b8]
mov edx, dword [ecx*4 + 0x879de0]
mov eax, dword [0x8f2694]
push edx
push 0xfffffffffffffff0
push eax
call esi
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
push ecx
push edx
push 0
push 0
push 0x8f26dc
call dword [sym.imp.USER32.dll_SetRect]
mov eax, dword [0x8f2694]
push 5
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, dword [0x8f2694]
push ecx
call dword [sym.imp.USER32.dll_UpdateWindow]
mov edx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov ecx, dword [0x8f2694]
push 8
push edx
push eax
push 0
push 0
push 0xffffffffffffffff
push ecx
call dword [sym.imp.USER32.dll_SetWindowPos]
push 0
call fcn.0057eeb1
push 0x87a47c
call fcn.0057a587
add esp, 8
mov edx, dword [0x8f2694]
push edx
call dword [sym.imp.USER32.dll_SetActiveWindow]
mov eax, dword [0x8f2694]
push 0
push eax
push 0x20
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
pop esi
xor eax, eax
pop ebp
add esp, 0x28
ret