Function at 0x459390
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x500425
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push esi
push edi
mov eax, dword [0x569080]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
lea ecx, [ebx + 0x78]
call fcn.00486220
mov eax, dword [ebx + 0x94]
mov edx, ebx
neg edx
sbb edx, edx
mov ecx, dword [eax + 8]
lea eax, [ebx + 0x84]
and edx, eax
push edx
call fcn.0045f580
mov ecx, dword [ebx + 0x94]
mov ecx, dword [ecx + 8]
call fcn.0045f430
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetParent]
mov esi, eax
push 0xffffffffffffffec
push esi
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ecx, eax
and ecx, 0xfffffbff
cmp eax, ecx
je 0x459415
push ecx
push 0xffffffffffffffec
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetParent]
mov esi, eax
push 0xfffffffffffffff0
push esi
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ecx, eax
or ecx, 0x20000
cmp eax, ecx
je 0x45943f
push ecx
push 0xfffffffffffffff0
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
push 0x75
push 0xee
push 0x3f5
mov ecx, ebx
call fcn.00459840
push 0x76
push 0xef
push 0x3f6
mov ecx, ebx
call fcn.00459840
push 0x78
push 0xf0
push 0x3f7
mov ecx, ebx
call fcn.00459840
mov eax, dword [ebx + 0x98]
test byte [eax + 0x30], 1
je 0x45949b
push 0x3f7
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push dword [ebx + 4]
mov esi, dword [ebx + 0x94]
call dword [sym.imp.USER32.dll_GetParent]
mov ecx, dword [esi + 8]
mov dword [ecx + 8], eax
mov ecx, dword [ecx + 4]
test ecx, ecx
je 0x4594bd
push eax
call fcn.0045f410
mov edx, 0x71
lea ecx, [ebp - 0x10]
call fcn.0040aa60
mov dword [ebp - 4], 0
lea ecx, [ebx + 0x9c]
push eax
call fcn.00409df0
mov dword [ebp - 4], 0xffffffff
or eax, 0xffffffff
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
lock xadd dword [ecx + 0xc], eax
dec eax
test eax, eax
jg 0x45950b
mov edi, dword [ecx]
push ecx
mov eax, dword [edi]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x525578]
mov ecx, edi
call esi
mov eax, dword [ebx + 0x98]
lea esi, [ebx + 0x108]
push dword [eax + 0x34]
push dword [ebx + 0x9c]
push esi
call fcn.00408fe0
add esp, 0xc
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetParent]
push dword [esi]
push 0
push 0x478
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebx + 0x88]
mov edi, dword [eax + 4]
test edi, edi
je 0x459561
mov eax, dword [edi]
push dword [esi]
mov esi, dword [eax]
mov ecx, esi
call dword [0x525578]
mov ecx, edi
call esi
mov eax, dword [ebx + 0x94]
test byte [eax + 0xc], 1
je 0x4595ac
mov eax, dword [ebx + 0x88]
mov edi, dword [eax + 4]
test edi, edi
je 0x45959f
mov eax, dword [ebx + 0x98]
mov esi, dword [edi]
push 0x4e20
push dword [eax + 0x34]
mov esi, dword [esi + 4]
mov ecx, esi
push dword [ebx + 0x108]
call dword [0x525578]
mov ecx, edi
call esi
mov eax, dword [ebx + 0x94]
mov dword [eax + 0xc], 0
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetParent]
push ecx
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], eax
call fcn.0043c5d0
push 0x430
mov dword [ebx + 0xf8], 6
lea edi, [ebx + 0xa4]
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
cmp dword [edi + 0x34], 0
mov dword [ebp - 0x10], eax
jne 0x4595f8
push 0
push 0
push 0x31
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [edi + 0x34], eax
mov eax, dword [edi]
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x525578]
mov ecx, edi
call esi
mov esi, eax
mov eax, dword [edi + 0x14]
test eax, eax
jne 0x45961e
call fcn.004bc84f
mov dword [edi + 0x14], eax
test eax, eax
je 0x459683
push edi
push esi
push eax
call fcn.004bc951
push dword [edi + 0x14]
call fcn.004bc8b4
mov esi, dword [ebp - 0x10]
push eax
push 0xfffffffffffffffc
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
test eax, eax
je 0x459683
mov ecx, edi
mov dword [edi + 0x20], eax
mov dword [edi + 4], esi
call fcn.0041c760
push 0xfffffffffffffff0
push dword [edi + 4]
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ecx, eax
or ecx, 0x10000
cmp eax, ecx
je 0x45966f
push ecx
push 0xfffffffffffffff0
push dword [edi + 4]
call dword [sym.imp.USER32.dll_SetWindowLongW]
cmp byte [edi + 0x60], 0
jne 0x459683
mov dword [edi + 0x4c], 0xe78900
mov dword [edi + 0x50], 0xe78900
mov eax, dword [ebx + 0x98]
mov eax, dword [eax + 0x30]
shr eax, 3
test al, 1
jne 0x4596a1
push 0
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [ebx + 0x78]
push 3
push 2
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x525578]
lea ecx, [ebx + 0x78]
call esi
mov eax, dword [ebx + 0x78]
push 0x17
push 0x19
mov esi, dword [eax]
mov ecx, esi
call dword [0x525578]
lea ecx, [ebx + 0x78]
call esi
mov dword [ebx + 0x90], 0
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8