Function at 0x300a85d3
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
push ebx
push esi
xor ebx, ebx
push edi
xor edi, edi
xor esi, esi
cmp dword [0x3022b734], ebx
mov dword [ebp - 4], ebx
jne 0x300a88d0
call fcn.300a69af
xor ecx, ecx
cmp dword [0x3022b0f8], ecx
jne 0x300a880d
cmp dword [0x3022b768], ecx
jne 0x300a880d
mov eax, dword [0x3022b6d8]
mov eax, dword [eax + 0x108]
push dword [eax + 0x18]
push dword [eax + 0x14]
lea eax, [ebp - 0x28]
push ecx
push ecx
push eax
call fcn.3005996e
mov esi, dword [0x3022b470]
sub esi, dword [ebp - 0x24]
mov edi, dword [0x30229e98]
sub edi, dword [ebp - 0x28]
add esi, dword [0x30229d64]
add edi, dword [0x30229d7c]
add esi, dword [0x30229da0]
add edi, dword [ebp - 0x20]
add esi, dword [ebp - 0x1c]
lea eax, [ebp - 0x28]
push eax
push ebx
call fcn.3005b7bf
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x28]
mov ecx, dword [0x30229e98]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x24]
push 0xf
mov dword [ebp - 0xc], eax
mov eax, dword [0x30229d7c]
add ecx, eax
mov dword [ebp - 4], ecx
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov edx, dword [0x30229d7c]
mov ecx, dword [ebp - 8]
imul edx, edx, 6
mov ebx, eax
add ebx, dword [0x3022b470]
mov eax, dword [0x30229d64]
add ebx, eax
add ebx, dword [0x30229da0]
add eax, eax
sub ecx, edx
sub ecx, dword [ebp - 4]
push 3
mov dword [ebp - 0x10], ecx
mov ecx, eax
mov eax, dword [ebp - 0xc]
sub eax, ecx
sub eax, ebx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 8]
add eax, eax
cdq
pop ecx
idiv ecx
and dword [ebp - 0x24], 0
and dword [ebp - 0x28], 0
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0xc]
cdq
idiv ecx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x28]
push eax
push dword [0x30229f5c]
call fcn.3005b1cb
mov eax, dword [0x30229f5c]
push dword [eax + 0x40]
call fcn.3005131c
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x28]
push eax
push dword [0x30229f5c]
call fcn.3005b031
lea eax, [ebp - 0x28]
push eax
call fcn.30051a3e
push dword [ebp - 0xc]
call fcn.3005131c
mov eax, dword [0x30229da4]
lea ecx, [edi + eax*8]
cmp ecx, dword [ebp - 0x10]
jge 0x300a8732
imul eax, eax, 6
mov dword [ebp - 0x28], eax
add eax, edi
mov dword [ebp - 0x20], eax
mov eax, dword [0x3022b420]
mov ecx, eax
imul ecx, ecx, 5
add ecx, esi
cmp ecx, dword [ebp - 0x14]
jge 0x300a8750
shl eax, 2
jmp 0x300a8752
add eax, eax
mov dword [ebp - 0x24], eax
add eax, esi
mov dword [ebp - 0x1c], eax
mov eax, dword [0x3022b458]
mov dword [ebp - 0xc], eax
mov eax, dword [0x3022b6d8]
push dword [eax + 0x108]
call fcn.300bb5f7
lea eax, [ebp - 0x28]
push eax
push dword [0x3022b6d8]
call fcn.3005b1cb
push dword [ebp - 0xc]
call fcn.300bb5f7
mov ecx, dword [0x30229d7c]
mov eax, dword [ebp - 0x28]
add ecx, ecx
add eax, ecx
add eax, edi
push eax
mov eax, dword [ebp - 8]
imul eax, eax, 5
push 6
cdq
pop edi
idiv edi
add eax, ecx
push eax
call fcn.3007f8c2
push eax
push dword [ebp - 0x10]
call fcn.3007f8d4
mov ecx, dword [ebp - 0x24]
mov edi, eax
mov eax, dword [0x30229da0]
add eax, eax
add ecx, eax
add ecx, esi
push ecx
mov ecx, dword [ebp - 0x18]
add eax, ecx
push eax
call fcn.3007f8c2
push eax
push dword [ebp - 0x14]
call fcn.3007f8d4
mov esi, eax
push 0
lea eax, [esi + ebx]
push eax
mov eax, dword [ebp - 4]
add eax, edi
push eax
mov eax, dword [0x30229d7c]
push dword [0x30229d64]
imul eax, eax, 3
push eax
push dword [0x302ae694]
call dword [sym.imp.USER32.dll_MoveWindow]
push 1
call fcn.3005b4e2
xor ecx, ecx
mov eax, dword [0x3022b6d8]
cmp dword [0x3022a470], eax
jne 0x300a881f
mov eax, dword [0x30229f5c]
push ecx
push eax
mov dword [ebp - 8], eax
call fcn.3005b468
push 1
push dword [ebp - 8]
call fcn.300be775
push 3
push dword [0x3022a470]
call fcn.300be775
cmp dword [0x3022b6d0], 0
je 0x300a8871
push 3
push dword [0x302ae694]
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [0x3020a30c]
and dword [0x3022b6d0], 0
test eax, eax
je 0x300a887f
mov ecx, dword [eax]
push 1
push eax
call dword [ecx + 0x70]
jmp 0x300a887f
push 1
push dword [0x302ae694]
call dword [sym.imp.USER32.dll_ShowWindow]
call fcn.300a82dd
mov dword [ebp - 0x18], eax
call fcn.300a82b3
mov ecx, dword [ebp - 0x18]
test ecx, ecx
jg 0x300a8897
test eax, eax
jle 0x300a88c1
add eax, ebx
push 1
add eax, esi
push eax
mov eax, dword [ebp - 4]
add ecx, eax
mov eax, dword [0x30229d7c]
imul eax, eax, 3
add ecx, edi
push ecx
push dword [0x30229d64]
push eax
push dword [0x302ae694]
call dword [sym.imp.USER32.dll_MoveWindow]
xor eax, eax
inc eax
mov dword [0x3022b734], eax
mov dword [0x3022b710], eax
jmp 0x300a8901
push dword [0x302ae694]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
je 0x300a8901
push dword [0x302ae694]
call dword [sym.imp.USER32.dll_IsZoomed]
neg eax
sbb eax, eax
and eax, 2
inc eax
push eax
push dword [0x302ae694]
call dword [sym.imp.USER32.dll_ShowWindow]
mov esi, dword [sym.imp.USER32.dll_GetWindow]
push 1
push dword [0x302ae694]
call esi
xor ebx, ebx
jmp 0x300a8948
cmp edi, dword [0x302ae694]
je 0x300a892a
push 4
push edi
call esi
cmp eax, dword [0x302ae694]
jne 0x300a8943
push edi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x300a8943
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push edi
call dword [sym.imp.USER32.dll_SetWindowPos]
push 3
push edi
call esi
mov edi, eax
cmp edi, ebx
jne 0x300a8915
pop edi
xor eax, eax
inc eax
pop esi
mov dword [0x30209e30], eax
pop ebx
leave
ret