Function at 0x5001e0
Capabilities:
Hide graphical window

Disassembly:
mov eax, 0x107c
call fcn.005d9990
push ebx
push ebp
push esi
push edi
call fcn.004f6ce0
push 0
call fcn.00423fe0
mov dword [esp + 0x24], eax
mov eax, dword [0x6a0f44]
add esp, 4
push eax
call dword [sym.imp.USER32.dll_GetTopWindow]
mov esi, eax
test esi, esi
mov dword [esp + 0x18], esi
je 0x500248
push esi
call dword [sym.imp.USER32.dll_IsZoomed]
test eax, eax
je 0x500248
mov ecx, dword [0x6a0f44]
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 0x500250
mov dword [esp + 0x1c], 0
mov edx, dword [0x6a0f40]
mov edi, dword [sym.imp.USER32.dll_GetSystemMenu]
push 1
push edx
call edi
mov eax, dword [0x6a0f40]
push 0
push eax
call edi
mov ebp, eax
test ebp, ebp
je 0x5006b3
push 0
push 0x17f4
call fcn.00424130
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.00424130
mov ecx, dword [0x680f2c]
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 0x5f4c90
push 0
push 0xc00
push 2
push ebp
call ebx
call dword [sym.imp.USER32.dll_CreatePopupMenu]
mov esi, eax
test esi, esi
je 0x50039c
push 0
push 0x17d5
call fcn.00424130
mov edi, dword [sym.imp.USER32.dll_AppendMenuA]
add esp, 8
push eax
push 0x100
push 0
push esi
call edi
push 0
push 0x17d6
call fcn.00424130
add esp, 8
push eax
push 0x101
push 0
push esi
call edi
push 0
push 0x17d7
call fcn.00424130
add esp, 8
push eax
push 0xfa
push 0
push esi
call edi
push 0
push 0x17d8
call fcn.00424130
add esp, 8
push eax
push esi
push 0x410
push 3
push ebp
call ebx
push 0x5f4c90
push 0
push 0xc00
push 4
push ebp
call ebx
mov eax, dword [0x676ea8]
test eax, eax
mov edi, dword [sym.imp.USER32.dll_LoadMenuA]
mov dword [esp + 0x14], 5
je 0x50038b
push 0x50
push eax
call edi
mov esi, eax
test esi, esi
jne 0x5003a9
mov edx, dword [0x6a0f3c]
push 0x50
push edx
call edi
mov esi, eax
test esi, esi
jne 0x5003a9
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x107c
ret
mov al, byte [0x66e068]
test al, al
je 0x5003c0
push 0
push 0xc4
push esi
call dword [sym.imp.USER32.dll_DeleteMenu]
mov eax, dword [0x61a3f0]
test eax, eax
mov edi, dword [sym.imp.USER32.dll_CheckMenuItem]
je 0x5003d3
push 8
jmp 0x5003d5
push 0
push 0x6e
push esi
call edi
mov eax, dword [0x61ab50]
test eax, eax
je 0x5003e7
push 8
jmp 0x5003e9
push 0
push 0x6f
push esi
call edi
mov eax, dword [0x61a9ec]
test eax, eax
je 0x5003fb
push 8
jmp 0x5003fd
push 0
push 0x70
push esi
call edi
mov eax, dword [0x61af40]
test eax, eax
je 0x50040f
push 8
jmp 0x500411
push 0
push 0xd2
push esi
call edi
mov eax, dword [0x61a3ec]
test eax, eax
je 0x50042d
push 8
push 0x78
push esi
call edi
push 0
jmp 0x500436
push 0
push 0x78
push esi
call edi
push 8
push 0x79
push esi
call edi
mov eax, dword [0x676e80]
test eax, eax
je 0x50044f
push 0
push 0x7a
push esi
call edi
push 8
jmp 0x500458
push 8
push 0x7a
push esi
call edi
push 0
push 0x7b
push esi
call edi
mov eax, dword [0x674870]
test eax, eax
je 0x500477
push eax
call dword [sym.imp.USER32.dll_DestroyMenu]
mov dword [0x674870], 0
mov eax, dword [0x61a3f0]
test eax, eax
je 0x5004aa
mov eax, dword [0x6a0f40]
push eax
call dword [sym.imp.USER32.dll_GetMenu]
mov ecx, dword [0x6a0f40]
push esi
push ecx
mov edi, eax
call dword [sym.imp.USER32.dll_SetMenu]
test edi, edi
je 0x50057b
push edi
jmp 0x500575
mov edx, dword [0x6a0f40]
push edx
call dword [sym.imp.USER32.dll_GetMenu]
mov edi, eax
mov eax, dword [0x6a0f40]
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 0x500558
jmp 0x5004f0
push 0x400
lea ecx, [esp + 0x28]
push 0x1068
push ecx
call fcn.00423310
add esp, 8
push eax
lea edx, [esp + 0x2c]
push edx
push 0
push esi
call dword [sym.imp.USER32.dll_GetMenuStringA]
test eax, eax
jle 0x500558
push 0x400
push 0
push esi
call dword [sym.imp.USER32.dll_RemoveMenu]
lea eax, [esp + 0x24]
push eax
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 0x5004f0
mov eax, dword [esp + 0x10]
test eax, eax
je 0x500574
mov ecx, dword [esp + 0x14]
push 0x5f4c90
push 0
push 0xc00
push ecx
push ebp
call ebx
push esi
call dword [sym.imp.USER32.dll_DestroyMenu]
push 1
push 0
call fcn.004f5730
mov eax, dword [0x61a3ec]
add esp, 8
test eax, eax
jne 0x50060b
lea edx, [esp + 0x10]
push edx
push 0x8e
call fcn.00500110
mov ebp, eax
add esp, 8
test ebp, ebp
je 0x50060b
push 0
push 0x9f
call fcn.00500110
mov edi, eax
add esp, 8
test edi, edi
je 0x50060b
push 0x400
lea eax, [esp + 0x28]
push 0x1068
push eax
call fcn.00423310
mov edx, dword [esp + 0x1c]
add esp, 8
push eax
lea ecx, [esp + 0x2c]
push ecx
push edx
push esi
call dword [sym.imp.USER32.dll_GetMenuStringA]
test eax, eax
jle 0x50060b
mov eax, dword [esp + 0x10]
push 0x400
push eax
push esi
call dword [sym.imp.USER32.dll_RemoveMenu]
lea ecx, [esp + 0x24]
push ecx
push ebp
push 0x410
push 0
push edi
call ebx
mov eax, dword [0x676e80]
test eax, eax
mov edi, dword [sym.imp.USER32.dll_DeleteMenu]
je 0x50068a
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.00500110
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x50068a
push 0x400
push 0
push ebx
call fcn.004f3fb0
add esp, 0xc
test ah, 8
je 0x50068a
push 0x400
push 0
push ebx
call edi
mov eax, dword [0x61a9ec]
test eax, eax
jne 0x50069c
mov eax, dword [0x61af40]
test eax, eax
je 0x5006af
mov eax, dword [0x61aa00]
test eax, eax
je 0x5006af
push 0
push 0xad
push esi
call edi
mov esi, dword [esp + 0x18]
mov edx, dword [0x6a0f40]
push edx
call dword [sym.imp.USER32.dll_DrawMenuBar]
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x5006ff
push 3
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [0x6a0f44]
push 0
push 1
push 0xb
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push esi
call fcn.0058ea30
push eax
call fcn.004a7c10
mov ecx, dword [0x6a0f40]
add esp, 8
push ecx
call dword [sym.imp.USER32.dll_UpdateWindow]
mov edx, dword [esp + 0x20]
push edx
call fcn.00423fe0
add esp, 4
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x107c
ret