Function at 0x4fa650
Capabilities:
Hide graphical window

Disassembly:
sub esp, 0x3fc
push ebx
push ebp
push esi
push edi
call fcn.004f10e0
push 0
call fcn.00425170
mov dword [esp + 0x24], eax
mov eax, dword [0x645328]
add esp, 4
push eax
call dword [sym.imp.USER32.dll_GetTopWindow]
mov esi, eax
test esi, esi
mov dword [esp + 0x18], esi
je 0x4fa6b4
push esi
call dword [sym.imp.USER32.dll_IsZoomed]
test eax, eax
je 0x4fa6b4
mov ecx, dword [0x645328]
push 0
push 0
push 0xb
push ecx
mov dword [esp + 0x2c], 1
call dword [sym.imp.USER32.dll_SendMessageA]
push 9
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x4fa6bc
mov dword [esp + 0x1c], 0
mov edx, dword [0x645324]
mov edi, dword [sym.imp.USER32.dll_GetSystemMenu]
push 1
push edx
call edi
mov eax, dword [0x645324]
push 0
push eax
call edi
mov ebp, eax
test ebp, ebp
je 0x4faaf8
push 0
push 0x17f4
call fcn.00421db0
mov ebx, dword [sym.imp.USER32.dll_InsertMenuA]
add esp, 8
push eax
push 0x109
push 0x409
push 0
push ebp
call ebx
push 0
push 0x17f3
call fcn.00421db0
mov ecx, dword [0x63e0cc]
add esp, 8
neg ecx
push eax
sbb ecx, ecx
push 0x105
and ecx, 8
or ecx, 0x400
push ecx
push 1
push ebp
call ebx
push 0x5e6c98
push 0
push 0xc00
push 2
push ebp
call ebx
call dword [sym.imp.USER32.dll_CreatePopupMenu]
mov esi, eax
test esi, esi
je 0x4fa808
push 0
push 0x17d5
call fcn.00421db0
mov edi, dword [sym.imp.USER32.dll_AppendMenuA]
add esp, 8
push eax
push pe_nt_image_headers32
push 0
push esi
call edi
push 0
push 0x17d6
call fcn.00421db0
add esp, 8
push eax
push 0x101
push 0
push esi
call edi
push 0
push 0x17d7
call fcn.00421db0
add esp, 8
push eax
push 0xfa
push 0
push esi
call edi
push 0
push 0x17d8
call fcn.00421db0
add esp, 8
push eax
push esi
push 0x410
push 3
push ebp
call ebx
push 0x5e6c98
push 0
push 0xc00
push 4
push ebp
call ebx
mov eax, dword [0x63b6bc]
test eax, eax
mov edi, dword [sym.imp.USER32.dll_LoadMenuA]
mov dword [esp + 0x14], 5
je 0x4fa7f7
push 0x50
push eax
call edi
mov esi, eax
test esi, esi
jne 0x4fa815
mov edx, dword [0x645320]
push 0x50
push edx
call edi
mov esi, eax
test esi, esi
jne 0x4fa815
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x3fc
ret
mov al, byte [0x638318]
test al, al
je 0x4fa82c
push 0
push 0xc3
push esi
call dword [sym.imp.USER32.dll_DeleteMenu]
mov eax, dword [0x609d10]
test eax, eax
mov edi, dword [sym.imp.USER32.dll_CheckMenuItem]
je 0x4fa83f
push 8
jmp 0x4fa841
push 0
push 0x6e
push esi
call edi
mov eax, dword [0x60a1f0]
test eax, eax
je 0x4fa853
push 8
jmp 0x4fa855
push 0
push 0x6f
push esi
call edi
mov eax, dword [0x60a0fc]
test eax, eax
je 0x4fa867
push 8
jmp 0x4fa869
push 0
push 0x70
push esi
call edi
mov eax, dword [0x60a270]
test eax, eax
je 0x4fa87b
push 8
jmp 0x4fa87d
push 0
push 0xd2
push esi
call edi
mov eax, dword [0x609d0c]
test eax, eax
je 0x4fa899
push 8
push 0x78
push esi
call edi
push 0
jmp 0x4fa8a2
push 0
push 0x78
push esi
call edi
push 8
push 0x79
push esi
call edi
mov eax, dword [0x63b690]
test eax, eax
je 0x4fa8bb
push 0
push 0x7a
push esi
call edi
push 8
jmp 0x4fa8c4
push 8
push 0x7a
push esi
call edi
push 0
push 0x7b
push esi
call edi
mov eax, dword [0x63ad80]
test eax, eax
je 0x4fa8e3
push eax
call dword [sym.imp.USER32.dll_DestroyMenu]
mov dword [0x63ad80], 0
mov eax, dword [0x609d10]
test eax, eax
je 0x4fa916
mov eax, dword [0x645324]
push eax
call dword [sym.imp.USER32.dll_GetMenu]
mov ecx, dword [0x645324]
push esi
push ecx
mov edi, eax
call dword [sym.imp.USER32.dll_SetMenu]
test edi, edi
je 0x4fa9ce
push edi
jmp 0x4fa9c8
mov edx, dword [0x645324]
push edx
call dword [sym.imp.USER32.dll_GetMenu]
mov edi, eax
mov eax, dword [0x645324]
push 0
push eax
call dword [sym.imp.USER32.dll_SetMenu]
push edi
call dword [sym.imp.USER32.dll_DestroyMenu]
push 0
push esi
mov dword [esp + 0x18], 0
call dword [sym.imp.USER32.dll_GetSubMenu]
mov edi, eax
test edi, edi
je 0x4fa9ab
push 0x400
push 0x3e7
lea ecx, [esp + 0x2c]
push ecx
push 0
push esi
call dword [sym.imp.USER32.dll_GetMenuStringA]
test eax, eax
jle 0x4fa9ab
push 0x400
push 0
push esi
call dword [sym.imp.USER32.dll_RemoveMenu]
lea edx, [esp + 0x24]
push edx
push edi
mov edi, dword [esp + 0x1c]
push 0x410
push edi
push ebp
call ebx
inc edi
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x10]
push 0
inc edi
push esi
mov dword [esp + 0x18], edi
call dword [sym.imp.USER32.dll_GetSubMenu]
mov edi, eax
test edi, edi
jne 0x4fa951
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4fa9c7
mov eax, dword [esp + 0x14]
push 0x5e6c98
push 0
push 0xc00
push eax
push ebp
call ebx
push esi
call dword [sym.imp.USER32.dll_DestroyMenu]
push 1
push 0
call fcn.004efbb0
mov eax, dword [0x609d0c]
add esp, 8
test eax, eax
jne 0x4faa50
lea ecx, [esp + 0x10]
push ecx
push 0x8e
call fcn.004fa580
mov ebp, eax
add esp, 8
test ebp, ebp
je 0x4faa50
push 0
push 0x9f
call fcn.004fa580
mov edi, eax
add esp, 8
test edi, edi
je 0x4faa50
mov eax, dword [esp + 0x10]
push 0x400
push 0x3e7
lea edx, [esp + 0x2c]
push edx
push eax
push esi
call dword [sym.imp.USER32.dll_GetMenuStringA]
test eax, eax
jle 0x4faa50
mov ecx, dword [esp + 0x10]
push 0x400
push ecx
push esi
call dword [sym.imp.USER32.dll_RemoveMenu]
lea edx, [esp + 0x24]
push edx
push ebp
push 0x410
push 0
push edi
call ebx
mov eax, dword [0x63b690]
test eax, eax
mov edi, dword [sym.imp.USER32.dll_DeleteMenu]
je 0x4faacf
push 0
push 0xd2
push esi
call edi
push 0
push 0xaa
push esi
call edi
push 0
push 0xab
push esi
call edi
push 0
push 0xac
push esi
call edi
push 0
push 0xad
push esi
call edi
push 0
push 0xae
push esi
call edi
push 0
push 0xb0
call fcn.004fa580
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4faacf
push 0x400
push 0
push ebx
call fcn.004ee450
add esp, 0xc
test ah, 8
je 0x4faacf
push 0x400
push 0
push ebx
call edi
mov eax, dword [0x60a0fc]
test eax, eax
jne 0x4faae1
mov eax, dword [0x60a270]
test eax, eax
je 0x4faaf4
mov eax, dword [0x60a110]
test eax, eax
je 0x4faaf4
push 0
push 0xad
push esi
call edi
mov esi, dword [esp + 0x18]
mov eax, dword [0x645324]
push eax
call dword [sym.imp.USER32.dll_DrawMenuBar]
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4fab44
push 3
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, dword [0x645328]
push 0
push 1
push 0xb
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
push esi
call fcn.005827d0
push eax
call fcn.004a4eb0
mov edx, dword [0x645324]
add esp, 8
push edx
call dword [sym.imp.USER32.dll_UpdateWindow]
mov eax, dword [esp + 0x20]
push eax
call fcn.00425170
add esp, 4
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x3fc
ret