Function at 0x40f220
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov eax, 0x142c
mov ebp, esp
push edi
push esi
push ebx
call fcn.00401040
sub esp, eax
lea eax, [ebp - 0x1404]
mov ebx, dword [sym.imp.user32.dll_LoadStringW]
mov dword [esp + 8], eax
mov eax, dword [0x4117cc]
mov dword [esp + 0xc], 0xff
mov dword [esp + 4], 0x8030
mov dword [esp], eax
call ebx
lea eax, [ebp - 0x1206]
sub esp, 0x10
mov dword [esp + 8], eax
mov eax, dword [0x4117cc]
mov dword [esp + 0xc], 0xff
mov dword [esp + 4], 0x8031
mov dword [esp], eax
call ebx
lea eax, [ebp - 0x1008]
sub esp, 0x10
mov dword [esp + 8], eax
mov eax, dword [0x4117cc]
mov dword [esp + 0xc], 0xff
mov dword [esp + 4], 0x8032
mov dword [esp], eax
call ebx
lea eax, [ebp - 0xe0a]
sub esp, 0x10
mov dword [esp + 8], eax
mov eax, dword [0x4117cc]
mov dword [esp + 0xc], 0xff
mov dword [esp + 4], 0x8033
mov dword [esp], eax
call ebx
lea eax, [ebp - 0xc0c]
sub esp, 0x10
mov dword [esp + 8], eax
mov eax, dword [0x4117cc]
mov dword [esp + 0xc], 0xff
mov dword [esp + 4], 0x8034
mov dword [esp], eax
call ebx
lea eax, [ebp - 0xa0e]
sub esp, 0x10
mov dword [esp + 8], eax
mov eax, dword [0x4117cc]
mov dword [esp + 0xc], 0xff
mov dword [esp + 4], 0x8035
mov dword [esp], eax
call ebx
lea eax, [ebp - 0x810]
sub esp, 0x10
mov dword [esp + 8], eax
mov eax, dword [0x4117cc]
mov dword [esp + 0xc], 0xff
mov dword [esp + 4], 0x8037
mov dword [esp], eax
call ebx
lea eax, [ebp - 0x612]
sub esp, 0x10
mov dword [esp + 8], eax
mov eax, dword [0x4117cc]
mov dword [esp + 0xc], 0xff
mov dword [esp + 4], 0x8038
mov dword [esp], eax
call ebx
lea eax, [ebp - 0x414]
sub esp, 0x10
mov dword [esp + 8], eax
mov eax, dword [0x4117cc]
mov dword [esp + 0xc], 0xff
mov dword [esp + 4], 0x8036
mov dword [esp], eax
call ebx
lea eax, [ebp - 0x216]
sub esp, 0x10
mov dword [esp + 8], eax
mov eax, dword [0x4117cc]
mov dword [esp + 0xc], 0xff
mov dword [esp + 4], 0x8039
mov dword [esp], eax
call ebx
mov eax, dword [0x4117d0]
sub esp, 0x10
mov dword [esp], eax
call dword [sym.imp.user32.dll_GetMenu]
mov esi, dword [sym.imp.user32.dll_GetSubMenu]
sub esp, 4
mov ebx, eax
mov dword [ebp - 0x1414], eax
mov dword [esp + 4], 2
mov dword [esp], eax
call esi
sub esp, 8
mov edi, eax
mov dword [esp], ebx
mov dword [esp + 4], 1
call esi
mov dword [ebp - 0x1410], eax
mov eax, dword [0x41185c]
sub esp, 8
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x130b
mov dword [esp], eax
call dword [sym.imp.user32.dll_SendMessageW]
mov dword [0x411614], eax
mov eax, dword [sym.imp.user32.dll_GetMenuItemCount]
sub esp, 0x10
mov dword [esp], edi
mov dword [ebp - 0x1418], eax
call eax
lea ebx, [eax - 1]
mov eax, dword [sym.imp.user32.dll_RemoveMenu]
sub esp, 4
mov dword [ebp - 0x140c], eax
cmp ebx, 2
jle 0x40f49c
lea esi, [esi]
mov dword [esp + 4], ebx
mov dword [esp], edi
call esi
sub esp, 8
test eax, eax
je 0x40f47c
mov dword [esp], eax
call dword [sym.imp.user32.dll_DestroyMenu]
sub esp, 4
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x140c]
dec ebx
mov dword [esp + 8], 0x400
mov dword [esp], edi
call eax
sub esp, 0xc
cmp ebx, 2
jne 0x40f460
mov eax, dword [ebp - 0x1410]
mov dword [esp + 8], 0x400
mov dword [esp + 4], 3
mov dword [esp], eax
mov eax, dword [ebp - 0x140c]
call eax
mov eax, dword [0x411614]
sub esp, 0xc
cmp eax, 1
je 0x40f4e8
cmp eax, 2
je 0x40f720
test eax, eax
je 0x40f5d8
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [0x4117b4]
mov ebx, dword [sym.imp.user32.dll_ShowWindow]
mov dword [esp + 4], 0
mov dword [esp], eax
call ebx
mov eax, dword [0x411840]
sub esp, 8
mov dword [esp + 4], 5
mov dword [esp], eax
call ebx
mov eax, dword [0x4117d4]
sub esp, 8
mov dword [esp + 4], 0
mov dword [esp], eax
call ebx
mov eax, dword [0x411840]
sub esp, 8
mov dword [esp], eax
call dword [sym.imp.user32.dll_BringWindowToTop]
lea eax, [ebp - 0xc0c]
mov ebx, dword [sym.imp.user32.dll_AppendMenuW]
sub esp, 4
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x801b
mov dword [esp + 4], 0
mov dword [esp], edi
call ebx
lea eax, [ebp - 0xa0e]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x1410]
mov dword [esp + 8], 0x801a
mov dword [esp + 4], 0
mov dword [esp], eax
call ebx
mov ecx, dword [0x411624]
sub esp, 0x10
test ecx, ecx
jne 0x40f96c
mov eax, dword [ebp - 0x1414]
mov dword [esp], eax
mov eax, dword [ebp - 0x1418]
call eax
sub esp, 4
cmp eax, 4
jg 0x40f932
mov eax, dword [0x411850]
mov dword [esp], eax
call dword [sym.imp.user32.dll_SetFocus]
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [0x4117b4]
mov ebx, dword [sym.imp.user32.dll_ShowWindow]
mov dword [esp + 4], 5
mov dword [esp], eax
call ebx
mov eax, dword [0x411840]
sub esp, 8
mov dword [esp + 4], 0
mov dword [esp], eax
call ebx
mov eax, dword [0x4117d4]
sub esp, 8
mov dword [esp + 4], 0
mov dword [esp], eax
call ebx
mov eax, dword [0x4117b4]
sub esp, 8
mov dword [esp], eax
call dword [sym.imp.user32.dll_BringWindowToTop]
lea eax, [ebp - 0x1404]
mov ebx, dword [sym.imp.user32.dll_AppendMenuW]
sub esp, 4
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x800a
mov dword [esp + 4], 0
mov dword [esp], edi
call ebx
lea eax, [ebp - 0x1206]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x800b
mov dword [esp + 4], 0
mov dword [esp], edi
call ebx
lea eax, [ebp - 0x1008]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x800c
mov dword [esp + 4], 0
mov dword [esp], edi
call ebx
mov eax, dword [ebp - 0x1414]
sub esp, 0x10
mov dword [esp], eax
mov eax, dword [ebp - 0x1418]
call eax
sub esp, 4
cmp eax, 4
jle 0x40f8d3
mov esi, dword [0x41162c]
test esi, esi
jne 0x40f8be
mov ebx, dword [0x411630]
mov dword [esp + 0x10], 0
test ebx, ebx
je 0x40f9dd
mov dword [esp + 0xc], 0x800b
mov dword [esp], edi
mov dword [esp + 8], 0x800c
mov dword [esp + 4], 0x800a
call dword [sym.imp.user32.dll_CheckMenuRadioItem]
mov eax, dword [0x4117c0]
sub esp, 0x14
mov dword [esp], eax
call dword [sym.imp.user32.dll_SetFocus]
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [0x4117b4]
mov ebx, dword [sym.imp.user32.dll_ShowWindow]
mov dword [esp + 4], 0
mov dword [esp], eax
call ebx
mov eax, dword [0x411840]
sub esp, 8
mov dword [esp + 4], 0
mov dword [esp], eax
call ebx
mov eax, dword [0x4117d4]
sub esp, 8
mov dword [esp + 4], 5
mov dword [esp], eax
call ebx
mov eax, dword [0x4117d4]
sub esp, 8
mov dword [esp], eax
call dword [sym.imp.user32.dll_BringWindowToTop]
mov eax, dword [ebp - 0x1414]
sub esp, 4
mov dword [esp], eax
mov eax, dword [ebp - 0x1418]
call eax
sub esp, 4
cmp eax, 4
jg 0x40f993
call dword [sym.imp.user32.dll_CreatePopupMenu]
mov esi, dword [sym.imp.user32.dll_AppendMenuW]
mov dword [esp + 8], 0x801d
mov ebx, eax
lea eax, [ebp - 0x810]
mov dword [esp + 4], 0
mov dword [esp + 0xc], eax
mov dword [esp], ebx
call esi
lea eax, [ebp - 0x612]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x801e
mov dword [esp + 4], 0
mov dword [esp], ebx
call esi
lea eax, [ebp - 0x414]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x10
mov dword [esp], edi
call esi
lea eax, [ebp - 0x216]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x801c
mov dword [esp + 4], 0
mov dword [esp], edi
call esi
mov edx, dword [0x411774]
sub esp, 0x10
test edx, edx
jne 0x40f8a0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x801c
mov dword [esp], edi
call dword [sym.imp.user32.dll_CheckMenuItem]
sub esp, 0xc
mov eax, dword [0x411770]
mov dword [esp + 0x10], 0
test eax, eax
je 0x40f9d0
mov dword [esp + 0xc], 0x801e
mov dword [esp], ebx
mov dword [esp + 8], 0x801e
mov dword [esp + 4], 0x801d
call dword [sym.imp.user32.dll_CheckMenuRadioItem]
mov eax, dword [0x41185c]
sub esp, 0x14
mov dword [esp], eax
call dword [sym.imp.user32.dll_SetFocus]
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 8], 8
mov dword [esp + 4], 0x801c
mov dword [esp], edi
call dword [sym.imp.user32.dll_CheckMenuItem]
sub esp, 0xc
jmp 0x40f84b
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x800a
jmp 0x40f6e3
mov eax, dword [0x4117cc]
mov dword [esp + 4], 0x87
mov dword [esp], eax
call dword [sym.imp.user32.dll_LoadMenuW]
lea edx, [ebp - 0xe0a]
sub esp, 8
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x1414]
mov dword [esp + 0x10], edx
mov dword [esp + 8], 0x410
mov dword [esp + 4], 3
mov dword [esp], eax
call dword [sym.imp.user32.dll_InsertMenuW]
mov eax, dword [0x4117d0]
sub esp, 0x14
mov dword [esp], eax
call dword [sym.imp.user32.dll_DrawMenuBar]
sub esp, 4
jmp 0x40f6b7
mov eax, dword [ebp - 0x1414]
mov dword [esp + 8], 0x400
mov dword [esp + 4], 3
mov dword [esp], eax
mov eax, dword [ebp - 0x140c]
call eax
mov eax, dword [0x4117d0]
sub esp, 0xc
mov dword [esp], eax
call dword [sym.imp.user32.dll_DrawMenuBar]
sub esp, 4
jmp 0x40f5b9
mov eax, dword [ebp - 0x1410]
mov dword [esp + 8], 8
mov dword [esp + 4], 0x801a
mov dword [esp], eax
call dword [sym.imp.user32.dll_CheckMenuItem]
sub esp, 0xc
jmp 0x40f59c
mov eax, dword [ebp - 0x1414]
mov dword [esp + 8], 0x400
mov dword [esp + 4], 3
mov dword [esp], eax
mov eax, dword [ebp - 0x140c]
call eax
mov eax, dword [0x4117d0]
sub esp, 0xc
mov dword [esp], eax
call dword [sym.imp.user32.dll_DrawMenuBar]
sub esp, 4
jmp 0x40f793
mov dword [esp + 0xc], 0x801d
jmp 0x40f868
mov dword [esp + 0xc], 0x800c
jmp 0x40f6e3