Function at 0x46ffb0
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x68
mov eax, dword [0x5fc150]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, ecx
push esi
push edi
cmp byte [ebx + 0x6893d], 0
jne 0x470196
lea eax, [ebx + 0x68948]
mov dword [eax], 0x2c
push eax
mov eax, dword [ebx]
push dword [eax + 0xc]
call dword [sym.imp.USER32.dll_GetWindowPlacement]
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x58], 0
call esi
push 1
mov edi, eax
call esi
mov ecx, dword [ebx]
push 2
mov dword [ebp - 0x50], eax
push dword [ecx + 0xc]
call dword [sym.imp.USER32.dll_MonitorFromWindow]
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0x4c], 0x28
push ecx
push eax
call dword [sym.imp.USER32.dll_GetMonitorInfoW]
test eax, eax
je 0x470047
mov ecx, dword [ebp - 0x48]
mov edi, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
sub edi, ecx
mov esi, dword [ebp - 0x3c]
sub esi, eax
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], esi
cmp byte [ebx + 0x6893c], 0
je 0x470057
mov eax, 3
jmp 0x4700b4
mov eax, dword [ebx]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x831
push dword [eax + 0xc]
call esi
cmp eax, 1
setne al
mov byte [ebx + 0x6893e], al
test al, al
je 0x47008d
mov eax, dword [ebx]
push 1
push 0
push 0x830
push dword [eax + 0xc]
call esi
mov eax, dword [ebx + 0x760]
lea ecx, [ebx + 0x760]
push 0
call dword [eax + 0xc]
mov eax, dword [ebx + 0x77c]
lea ecx, [ebx + 0x77c]
push 0
call dword [eax + 0xc]
mov eax, 1
mov esi, dword [sym.imp.USER32.dll_ShowWindow]
mov dword [ebx + 0x68a7c], eax
mov eax, dword [ebx]
push 0
push dword [eax + 0xc]
call esi
cmp byte [ebx + 0x6893c], 0
jne 0x4700f8
mov eax, dword [ebx]
push 0x80000000
push 0xfffffffffffffff0
push dword [eax + 0xc]
call dword [sym.imp.USER32.dll_SetWindowLongW]
mov dword [ebx + 0x68940], eax
test eax, eax
jne 0x4700f8
mov dword [ebx + 0x68940], 0x2cf0000
mov eax, dword [ebx]
push 5
push dword [eax + 0xc]
call esi
mov eax, dword [ebx]
push 0x24
push dword [ebp - 0x50]
push edi
push dword [ebp - 0x54]
push dword [ebp - 0x58]
push 0
push dword [eax + 0xc]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [ebx]
push dword [eax + 0xc]
call dword [sym.imp.USER32.dll_SetForegroundWindow]
movzx eax, byte [ebx + 0x308]
lea ecx, [ebx + 0x68a5c]
push eax
call fcn.0045d680
lea eax, [ebp - 0x14]
push eax
push dword [ebx + 0x68a68]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov edi, dword [ebp - 0xc]
lea eax, [ebp - 0x24]
mov esi, dword [ebp - 8]
sub edi, dword [ebp - 0x14]
sub esi, dword [ebp - 0x10]
push eax
mov eax, dword [ebx]
push dword [eax + 0xc]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x1c]
push 0
push esi
push edi
push dword [ebp - 0x20]
sub eax, edi
push eax
push dword [ebx + 0x68a68]
call dword [sym.imp.USER32.dll_MoveWindow]
mov eax, dword [ebx + 0x580]
push dword [eax + 0xc]
call dword [sym.imp.USER32.dll_SetFocus]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x470276
mov eax, dword [ebx]
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
push 0
push dword [eax + 0xc]
call edi
mov eax, dword [ebx + 0x68a5c]
lea ecx, [ebx + 0x68a5c]
xor dword [ebx + 0x68a7c], 1
push 0
call dword [eax + 0xc]
cmp byte [ebx + 0x6893c], 0
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
jne 0x470243
cmp byte [ebx + 0x6893e], 0
je 0x4701e5
mov eax, dword [ebx]
push 0
push 0
push 0x830
push dword [eax + 0xc]
call esi
mov eax, dword [ebx + 0x760]
lea ecx, [ebx + 0x760]
push 1
call dword [eax + 0xc]
mov eax, dword [ebx + 0x77c]
lea ecx, [ebx + 0x77c]
push 1
call dword [eax + 0xc]
cmp byte [ebx + 0x6893c], 0
jne 0x470243
push dword [ebx + 0x68940]
mov eax, dword [ebx]
push 0xfffffffffffffff0
push dword [eax + 0xc]
call dword [sym.imp.USER32.dll_SetWindowLongW]
mov eax, dword [ebx]
push 0x27
push 0
push 0
push 0
push 0
push 0
push dword [eax + 0xc]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [ebx]
push 5
push dword [eax + 0xc]
call edi
cmp dword [ebx + 0x68948], 0
lea eax, [ebx + 0x68948]
je 0x47026d
cmp dword [ebx + 0x68950], 3
jne 0x47025f
push 3
jmp 0x47026f
push eax
mov eax, dword [ebx]
push dword [eax + 0xc]
call dword [sym.imp.USER32.dll_SetWindowPlacement]
jmp 0x470276
push 5
mov eax, dword [ebx]
push dword [eax + 0xc]
call edi
cmp byte [ebx + 0x6893d], 0
push 0
sete al
mov byte [ebx + 0x6893d], al
mov eax, dword [ebx]
push 0
push 5
push dword [eax + 0xc]
call esi
cmp byte [ebx + 0x6893c], 0
je 0x4702e5
lea eax, [ebp - 0x14]
push eax
push dword [ebx + 0x68a68]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov edi, dword [ebp - 0xc]
lea eax, [ebp - 0x24]
mov esi, dword [ebp - 8]
sub edi, dword [ebp - 0x14]
sub esi, dword [ebp - 0x10]
push eax
mov eax, dword [ebx]
push dword [eax + 0xc]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
inc eax
push 0
push esi
push edi
push eax
lea eax, [edi + edi]
sub ecx, eax
push ecx
push dword [ebx + 0x68a68]
call dword [sym.imp.USER32.dll_MoveWindow]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0052c233
mov esp, ebp
pop ebp
ret