Function at 0x6fea04
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff4
push ebx
push esi
push edi
mov dword [ebp - 4], ecx
mov edi, edx
mov esi, eax
mov ebx, 0x800684
cmp dword [ebx], 0
je 0x6fea35
mov eax, dword [ebx]
cmp dword [eax + 0x140], 0
je 0x6fea35
mov eax, dword [ebx]
add eax, 0x140
call fcn.0042ffb4
cmp dword [ebp - 4], 0
jle 0x6fecd5
cmp dword [ebx], 0
jne 0x6fea63
mov ecx, dword [0x801a80]
mov ecx, dword [ecx]
mov dl, 1
mov eax, dword [0x6fc3c4]
call fcn.00704140
mov dword [ebx], eax
xor edx, edx
mov eax, dword [ebx]
call fcn.0069e5c0
cmp dword [ebp + 8], 0
je 0x6fea7b
mov eax, dword [ebp + 8]
call fcn.00565c34
mov edx, dword [ebx]
mov dword [edx + 0xcc], eax
jmp 0x6fea85
mov eax, dword [ebx]
xor edx, edx
mov dword [eax + 0xcc], edx
mov eax, dword [ebx]
mov byte [eax + 0x135], 0
mov eax, dword [ebx]
xor edx, edx
mov dword [eax + 0x128], edx
mov eax, dword [ebx]
mov eax, dword [eax + 0x138]
test eax, eax
je 0x6feab4
cmp edi, eax
je 0x6feab4
mov eax, dword [ebx]
add eax, 0x138
call fcn.0042ffb4
mov eax, dword [ebx]
mov dword [eax + 0x138], edi
mov eax, dword [ebx]
mov edx, dword [ebp + 0x10]
mov dword [eax + 0x12c], edx
mov eax, dword [ebx]
mov dword [eax + 0x140], esi
movzx eax, byte [ebp + 0xc]
mov edx, dword [ebx]
mov byte [edx + 0x134], al
mov edx, 0xc
mov eax, dword [ebx]
call fcn.0069e5d0
mov eax, dword [ebp - 4]
mov ecx, 0xc
cdq
idiv ecx
mov edx, dword [ebx]
mov dword [edx + 0x130], eax
lea edx, [ebp - 0xc]
mov eax, dword [ebx]
mov eax, dword [eax + 0x138]
call fcn.007414f4
mov eax, dword [ebx]
mov edx, dword [ebp - 0xc]
mov dword [eax + 0xd4], edx
mov edx, dword [ebp - 8]
mov dword [eax + 0xd8], edx
lea ecx, [ebp - 0xc]
xor edx, edx
xor eax, eax
call fcn.00741534
mov eax, dword [ebx]
mov edx, dword [ebp - 0xc]
mov dword [eax + 0xdc], edx
mov edx, dword [ebp - 8]
mov dword [eax + 0xe0], edx
movzx edx, byte [ebp + 0x10]
mov eax, dword [ebx]
add eax, 0xe4
call fcn.00741c80
push 0
call sub.user32.dll_GetDC
mov edx, dword [ebx]
mov dword [edx + 0xd0], eax
mov eax, esi
call fcn.00565c34
mov edx, 0xffffffec
call fcn.00416be8
or eax, 0x80000
or eax, 0x8000000
push eax
mov eax, esi
call fcn.00565c34
mov edx, 0xffffffec
pop ecx
call fcn.00416edc
push 2
mov eax, dword [ebx]
add eax, 0xe4
push eax
push 0x1fffffff
mov eax, dword [ebx]
add eax, 0xdc
push eax
mov eax, edi
call fcn.00535ff0
call fcn.0052fb1c
push eax
mov eax, dword [ebx]
add eax, 0xd4
push eax
push 0
mov eax, dword [ebx]
mov eax, dword [eax + 0xd0]
push eax
mov eax, esi
call fcn.00565c34
push eax
mov eax, dword [0x801558]
mov eax, dword [eax]
call eax
push 0x71f
push 0
push 0
push 0
push 0
push 0
mov eax, esi
call fcn.00565c34
push eax
call sub.user32.dll_SetWindowPos
push 4
mov eax, esi
call fcn.00565c34
push eax
call sub.user32.dll_ShowWindow
mov eax, esi
call fcn.00565c34
mov edx, 0xffffffec
call fcn.00416be8
test al, 8
je 0x6fec18
or edi, 0xffffffff
jmp 0x6fec39
cmp dword [ebp + 8], 0
je 0x6fec2a
mov eax, dword [ebp + 8]
test byte [eax + 0x3cc], 8
je 0x6fec2f
or edi, 0xffffffff
jmp 0x6fec39
mov eax, dword [ebp + 8]
call fcn.00565c34
mov edi, eax
push 0x318
mov eax, dword [ebx]
mov eax, dword [eax + 0xd8]
push eax
mov eax, dword [ebx]
mov eax, dword [eax + 0xd4]
push eax
mov eax, esi
call fcn.00647af4
push eax
mov eax, esi
call fcn.00647ad4
push eax
push edi
mov eax, esi
call fcn.00565c34
push eax
call sub.user32.dll_SetWindowPos
mov eax, dword [ebx]
add eax, 0x13c
call fcn.0042ffb4
mov eax, dword [ebx]
add eax, 0xd4
call fcn.00771dbc
mov edx, dword [ebx]
mov dword [edx + 0x13c], eax
mov eax, dword [ebx]
mov eax, dword [eax + 0xd0]
push eax
push 0
call sub.user32.dll_ReleaseDC
mov eax, dword [ebx]
call fcn.00703f20
jmp 0x6fecc3
call sub.kernel32.dll_GetTickCount
mov esi, eax
mov edx, dword [ebx]
mov eax, dword [ebx]
call fcn.007041d0
mov edx, 0xc
mov eax, esi
call fcn.00741c34
mov eax, dword [ebx]
mov eax, dword [eax + 0x128]
mov edx, dword [ebx]
cmp eax, dword [edx + 0x130]
jle 0x6feca7
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc