Function at 0x470c80
Capabilities:
Hide graphical window

Disassembly:
sub esp, 0x6c
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov ebp, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0x462
mov eax, dword [edi + 0x894]
lea esi, [edi + 0x894]
push 0x410
push eax
mov dword [esp + 0x24], edi
call ebp
mov ebx, eax
test ebx, ebx
mov dword [esp + 0x18], ebx
jg 0x470ed7
mov eax, dword [esp + 0x80]
test eax, eax
je 0x470ee2
lea ecx, [edi + 0x5c]
test ecx, ecx
je 0x470cd7
lea ecx, [edi + 0x60]
jmp 0x470cd9
xor ecx, ecx
lea eax, [edi + 0x890]
mov ebx, dword [ecx]
neg eax
sbb eax, eax
push 0
and eax, esi
push 0
push 0x418
push ebx
mov edx, dword [eax]
mov dword [esp + 0x20], edx
call ebp
mov edx, eax
mov ecx, 0x13
xor eax, eax
lea edi, [esp + 0x30]
rep stosd dword es:[edi], eax
xor edi, edi
mov dword [esp + 0x2c], 0x50
cmp edx, edi
mov dword [esp + 0x30], 0x371
mov eax, 4
jle 0x470d28
mov eax, 0x204
or al, 1
mov dword [esp + 0x40], edi
mov dword [esp + 0x34], eax
xor eax, eax
mov dword [esp + 0x20], eax
cmp edx, edi
mov dword [esp + 0x24], eax
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x60], 0x462
mov dword [esp + 0x1c], edi
mov dword [esp + 0x28], eax
jle 0x470d80
lea ecx, [esp + 0x1c]
dec edx
push ecx
push edx
push 0x41d
push ebx
call ebp
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, 0x64
sub edx, ecx
mov dword [esp + 0x58], eax
mov dword [esp + 0x54], edx
mov dword [esp + 0x50], eax
jmp 0x470da7
lea eax, [esp + 0x1c]
push eax
push ebx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
mov eax, 0x64
sub ecx, edx
mov dword [esp + 0x58], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], ecx
lea edx, [esp + 0x2c]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x10]
push edx
push 0xffffffffffffffff
push 0x40a
push eax
call ebp
test eax, eax
je 0x470dd8
push edi
push edi
push 0x455
push ebx
call ebp
or al, 0x10
push eax
push edi
push 0x454
push ebx
call ebp
mov ecx, dword [esi]
mov ebp, dword [sym.imp.USER32.dll_GetWindowLongW]
push 0xfffffffffffffff0
push ecx
call ebp
mov edi, dword [sym.imp.USER32.dll_SetWindowLongW]
mov ebx, dword [sym.imp.USER32.dll_SetWindowPos]
mov ecx, eax
or ch, 4
cmp eax, ecx
je 0x470e13
mov edx, dword [esi]
push ecx
push 0xfffffffffffffff0
push edx
call edi
mov eax, dword [esi]
push 0x37
push 0
push 0
push 0
push 0
push 0
push eax
call ebx
mov ecx, dword [esi]
push 0xfffffffffffffff0
push ecx
call ebp
mov ecx, eax
and ch, 0xfb
cmp eax, ecx
je 0x470e3c
mov edx, dword [esi]
push ecx
push 0xfffffffffffffff0
push edx
call edi
mov eax, dword [esi]
push 0x37
push 0
push 0
push 0
push 0
push 0
push eax
call ebx
mov ecx, dword [esi]
push 0
push 0
push 0x40c
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov ebp, eax
xor ebx, ebx
test ebp, ebp
jle 0x470ec9
mov ecx, 0x13
xor eax, eax
lea edi, [esp + 0x30]
lea edx, [esp + 0x2c]
rep stosd dword es:[edi], eax
push edx
push ebx
mov ecx, esi
mov dword [esp + 0x34], 0x50
mov dword [esp + 0x38], 1
call fcn.00483d60
test byte [esp + 0x34], 0x80
jne 0x470eac
mov edi, dword [esp + 0x34]
lea eax, [esp + 0x2c]
or edi, 0x80
push eax
push ebx
mov ecx, esi
mov dword [esp + 0x3c], edi
call fcn.0044b940
mov eax, dword [esp + 0x34]
and al, 0x7f
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x2c]
or ah, 1
push ecx
push ebx
mov ecx, esi
mov dword [esp + 0x3c], eax
call fcn.0044b940
inc ebx
cmp ebx, ebp
jl 0x470e56
mov ebp, dword [sym.imp.USER32.dll_SendMessageW]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x80]
test eax, eax
jne 0x470eea
mov edx, dword [edi + 0x60]
push 0
push edx
jmp 0x470ef0
mov eax, dword [edi + 0x60]
push 8
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, edi
call fcn.0046a200
mov ecx, dword [esp + 0x80]
mov edx, dword [esi]
push ecx
push ebx
push 0x423
push edx
call ebp
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret 4