Function at 0x697db4
Capabilities:
Hide graphical window

Disassembly:
push ebx
push esi
push edi
add esp, 0xffffffec
mov byte [esp], dl
mov ebx, eax
mov eax, dword [ebx + 0x24c]
and eax, 0x80
cmp eax, 0x80
je 0x698197
xor esi, esi
mov eax, dword [ebx + 0xc8]
call fcn.006dd8ac
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x24]
cmp byte [eax + 6], 0
je 0x698197
or dword [ebx + 0x24c], 0x80
cmp dword [ebx + 0x238], 0
je 0x697e10
lea eax, [ebx + 0x238]
call fcn.0042bdf8
push 1
mov ecx, ebx
mov dl, 1
mov eax, dword [0x696580]
call fcn.0064707c
mov edi, eax
mov dword [ebx + 0x238], edi
mov eax, dword [ebx + 0x26c]
cmp byte [eax + 0x358], 0
je 0x697e4c
movzx eax, byte [eax + 0x359]
mov dword [esp + 4], eax
fild dword [esp + 4]
fstp qword [edi + 0x60]
wait
jmp 0x697e58
xor eax, eax
mov dword [edi + 0x60], eax
mov dword [edi + 0x64], 0x406fe000
mov eax, dword [ebx + 0x238]
mov edx, dword [ebx + 0x288]
mov dword [eax + 0x70], edx
mov eax, dword [ebx + 0x26c]
call fcn.0052ed68
mov edi, dword [ebx + 0x238]
mov dword [edi + 0x74], eax
cmp byte [ebx + 0x8c], 0
je 0x697ea4
mov eax, dword [ebx + 0xc8]
call fcn.006dd8ac
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x24]
movzx eax, byte [eax + 8]
mov edx, dword [ebx + 0x238]
mov byte [edx + 0x58], al
jmp 0x697ea8
mov byte [edi + 0x58], 0xff
mov eax, dword [ebx + 0xc8]
call fcn.006dd8ac
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x24]
cmp word [eax + 4], 0xc
jbe 0x697f0a
mov eax, dword [ebx + 0xc8]
call fcn.006dd8ac
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x24]
movzx eax, word [eax + 4]
mov dword [esp + 4], eax
fild dword [esp + 4]
fdiv dword [0x6981a0]
mov eax, dword [ebx + 0x238]
movzx eax, byte [eax + 0x58]
mov edx, 0xff
sub edx, eax
mov dword [esp + 8], edx
fild dword [esp + 8]
fdivrp st(1)
mov eax, dword [ebx + 0x238]
fstp qword [eax + 0x68]
wait
jmp 0x697f27
mov eax, dword [ebx + 0x238]
movzx edx, byte [eax + 0x58]
mov ecx, 0xff
sub ecx, edx
mov dword [esp + 4], ecx
fild dword [esp + 4]
fstp qword [eax + 0x68]
wait
mov edx, 0xc
mov eax, dword [ebx + 0x238]
call fcn.00646ff8
mov eax, dword [ebx + 0x288]
test eax, eax
je 0x698066
mov cl, 0xff
xor edx, edx
call fcn.006b3490
mov edi, dword [ebx + 0x26c]
cmp byte [edi + 0x358], 0
je 0x697f77
push 2
push 0
push 0x1fffffff
mov eax, edi
call fcn.0052ed68
push eax
mov eax, dword [0x762a78]
mov eax, dword [eax]
call eax
mov eax, dword [ebx + 0x288]
mov byte [eax + 0x28], 1
push 0x60b
push 0
push 0
push 0
push 0
mov eax, dword [ebx + 0x288]
mov eax, dword [eax + 0x18]
call fcn.0052ed68
push eax
mov eax, dword [ebx + 0x26c]
call fcn.0052ed68
push eax
call sub.user32.dll_SetWindowPos
push 0
mov eax, dword [ebx + 0x26c]
call fcn.0052ed68
xor ecx, ecx
xor edx, edx
call fcn.006971e8
mov dl, 1
mov eax, dword [ebx + 0x238]
call fcn.00646fe8
lea ecx, [esp + 0xc]
or edx, 0xffffffff
or eax, 0xffffffff
call fcn.00410070
mov edi, dword [ebx + 0x288]
mov eax, dword [esp + 0xc]
mov dword [edi + 0xc], eax
mov eax, dword [esp + 0x10]
mov dword [edi + 0x10], eax
push 0
mov eax, dword [edi + 0x18]
mov ecx, 0xf012
mov edx, 0x112
call fcn.0052702c
mov eax, dword [ebx + 0x288]
cmp dword [eax + 0xc], 0xffffffff
je 0x698188
cmp dword [eax + 0x10], 0xffffffff
je 0x698188
mov eax, dword [ebx + 0x288]
mov edi, dword [eax + 0x10]
test edi, edi
jge 0x698188
mov edx, dword [0x762880]
cmp dword [edx], 6
jl 0x698188
mov edx, dword [ebx + 0x288]
mov edx, dword [edx + 0x18]
mov ecx, dword [edx + 0x50]
push ecx
mov ecx, dword [edx + 0x54]
push ecx
mov ecx, edi
mov eax, dword [eax + 0xc]
xchg edx, eax
mov edi, dword [eax]
call dword [edi + 0xa8]
jmp 0x698188
mov edi, dword [ebx + 0x26c]
cmp byte [edi + 0x358], 0
jne 0x69815e
mov eax, edi
call fcn.0052ed68
call fcn.0069731c
mov esi, eax
cmp dword [ebx + 0x288], 0
jne 0x6980c2
mov eax, dword [ebx + 0x26c]
call fcn.0052ed68
push eax
call sub.user32.dll_IsZoomed
test eax, eax
jne 0x6980c2
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.00699480
mov edi, eax
push 0
push edi
mov eax, esi
call fcn.0052ed68
push eax
call sub.user32.dll_SetWindowRgn
mov eax, dword [ebx + 0x26c]
call fcn.0052ed68
mov edx, 0xffffffec
call fcn.00412be0
and eax, 0x80000
cmp eax, 0x80000
je 0x698114
mov eax, dword [ebx + 0x26c]
call fcn.0052ed68
mov edx, 0xffffffec
call fcn.00412be0
or eax, 0x80000
push eax
mov eax, dword [ebx + 0x26c]
call fcn.0052ed68
mov edx, 0xffffffec
pop ecx
call fcn.00412ebc
push 2
push 0xff
push 0x1fffffff
mov eax, dword [ebx + 0x26c]
call fcn.0052ed68
push eax
mov eax, dword [0x762a78]
mov eax, dword [eax]
call eax
push 0x185
push 0
push 0
mov eax, dword [ebx + 0x26c]
call fcn.0052ed68
push eax
call sub.user32.dll_RedrawWindow
push 0
mov eax, esi
call fcn.0052ed68
push eax
call sub.user32.dll_ShowWindow
mov dl, 1
mov eax, dword [ebx + 0x238]
call fcn.00646fe8
cmp byte [esp], 0
je 0x698188
push 0
mov ecx, 0xf012
mov edx, 0x112
mov eax, dword [ebx + 0x26c]
call fcn.0052702c
cmp byte [esp], 0
je 0x698197
mov edx, esi
mov eax, ebx
call fcn.00697a38
add esp, 0x14
pop edi
pop esi
pop ebx
ret