// File: /workspace/github_cpp_makefile_star2_O3/giovifazi[P]knossos-bloodbath/Menu.cpp
// Function: stampaMenu(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, int)
void stampaMenu(std::string x,std::string y,std::string z,std::string w, int n){
					
         int uno=31-x.size();			//variabili che contano il numero di spazi bianchi da stampare
         int due=31-y.size();
         int tre=31-z.size();
         int quattro=31-w.size();

switch(n){

case 0:
std::cout
        <<" _____                                                                        _____ \n"
	<<"(@___@)                                                                      (@___@)\n"
	<<" ║ ║ ║                                                                        ║ ║ ║ \n"
	<<" ║ ║ ║                                                                        ║ ║ ║ \n"
	<<" ║ ║ ║╔═══════════════════════════════════╦══════════════════════════════════╗║ ║ ║ \n"
	<<" ║ ║ ║║                                   ║                                  ║║ ║ ║ \n"
	<<" ║ ║ ║║                                   ║                 ↑                ║║ ║ ║ \n"
	<<" ║ ║ ║║    "<<x<<std::string(uno,' ')<<"║                 w                ║║ ║ ║   \n"
	<<" ║ ║ ║║                                   ║                                  ║║ ║ ║ \n"
	<<" ║ ║ ║║    "<<y<<std::string(due,' ')<<"║            1-conferma            ║║ ║ ║   \n"
	<<" ║ ║ ║║    "<<z<<std::string(tre,' ')<<"║                                  ║║ ║ ║   \n"             
	<<" ║ ║ ║║    "<<w<<std::string(quattro,' ')<<"║                 s                ║║ ║ ║\n"
	<<" ║ ║ ║║                                   ║                 ↓                ║║ ║ ║ \n"
	<<" ║ ║ ║║                                   ║                                  ║║ ║ ║ \n"
	<<" ║_║_║╚═══════════════════════════════════╩══════════════════════════════════╝║_║_║ \n"
	<<"(_____)                                                                      (_____)\n";

        break;

case 1:

std::cout
        <<" _____                                                                        _____ \n"
	<<"(@___@)                                                                      (@___@)\n"
	<<" ║ ║ ║                                                                        ║ ║ ║ \n"
	<<" ║ ║ ║                                                                        ║ ║ ║ \n"
	<<" ║ ║ ║╔═══════════════════════════════════╦══════════════════════════════════╗║ ║ ║ \n"
	<<" ║ ║ ║║                                   ║                                  ║║ ║ ║ \n"
	<<" ║ ║ ║║                                   ║        Lo scopo del gioco e'     ║║ ║ ║ \n"
	<<" ║ ║ ║║    "<<x<<std::string(uno,' ')<<"║          rimanere l'unico        ║║ ║ ║   \n"
	<<" ║ ║ ║║                                   ║        giocatore sulla mappa.    ║║ ║ ║ \n"
	<<" ║ ║ ║║    "<<y<<std::string(due,' ')<<"║                                  ║║ ║ ║   \n"
	<<" ║ ║ ║║    "<<z<<std::string(tre,' ')<<"║          Per farlo dovrai        ║║ ║ ║   \n"             
	<<" ║ ║ ║║    "<<w<<std::string(quattro,' ')<<"║      sopravvivere ai pericoli    ║║ ║ ║\n"
	<<" ║ ║ ║║                                   ║           del labirinto.         ║║ ║ ║ \n"
	<<" ║ ║ ║║                                   ║                                  ║║ ║ ║ \n"
	<<" ║_║_║╚═══════════════════════════════════╩══════════════════════════════════╝║_║_║ \n"
	<<"(_____)                                                                      (_____)\n";

        break;

case 2:
std::cout
        <<" _____                                                                        _____ \n"
	<<"(@___@)                                                                      (@___@)\n"
	<<" ║ ║ ║                                                                        ║ ║ ║ \n"
	<<" ║ ║ ║                                                                        ║ ║ ║ \n"
	<<" ║ ║ ║╔═══════════════════════════════════╦══════════════════════════════════╗║ ║ ║ \n"
	<<" ║ ║ ║║                                   ║                                  ║║ ║ ║ \n"
	<<" ║ ║ ║║                                   ║                                  ║║ ║ ║ \n"
	<<" ║ ║ ║║    "<<x<<std::string(uno,' ')<<"║      Sopravvivi al Minotauro,    ║║ ║ ║   \n"
	<<" ║ ║ ║║                                   ║           alle trappole          ║║ ║ ║ \n"
	<<" ║ ║ ║║    "<<y<<std::string(due,' ')<<"║           del labirinto,         ║║ ║ ║   \n"
	<<" ║ ║ ║║    "<<z<<std::string(tre,' ')<<"║         agli altri giocatori     ║║ ║ ║   \n"             
	<<" ║ ║ ║║    "<<w<<std::string(quattro,' ')<<"║     e conquisterai la liberta'!  ║║ ║ ║\n"
	<<" ║ ║ ║║                                   ║                                  ║║ ║ ║ \n"
	<<" ║ ║ ║║                                   ║                                  ║║ ║ ║ \n"
	<<" ║_║_║╚═══════════════════════════════════╩══════════════════════════════════╝║_║_║ \n"
	<<"(_____)                                                                      (_____)\n";

        break;



}

}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xa8, %rsp
movq %rdi, %r12
movl $0x1f, %r14d
subl 0x8(%rdi), %r14d
movq %rsi, %r15
movl $0x1f, %edi
subl 0x8(%rsi), %edi
movl $0x1f, %esi
subl 0x8(%rdx), %esi
movl $0x1f, %eax
subl 0x8(%rcx), %eax
cmpl $0x2, %r8d
je 0x8771
cmpl $0x1, %r8d
je 0x84a1
testl %r8d, %r8d
jne 0x8a9e
movl %edi, -0x34(%rbp)
movq %rdx, -0x48(%rbp)
movl %esi, -0x30(%rbp)
movq %rcx, -0x40(%rbp)
movl %eax, -0x2c(%rbp)
movq 0x9de7(%rip), %r13      # 0x11fd0
leaq 0x6733(%rip), %rsi      # 0xe923
movl $0x55, %edx
movq %r13, %rdi
callq 0x2140
leaq 0x6775(%rip), %rsi      # 0xe979
movl $0x55, %edx
movq %r13, %rdi
callq 0x2140
leaq 0x67b7(%rip), %rbx      # 0xe9cf
movl $0x61, %edx
movq %r13, %rdi
movq %rbx, %rsi
callq 0x2140
movl $0x61, %edx
movq %r13, %rdi
movq %rbx, %rsi
callq 0x2140
leaq 0x67f2(%rip), %rsi      # 0xea31
movl $0xf1, %edx
movq %r13, %rdi
callq 0x2140
leaq 0x68d0(%rip), %rsi      # 0xeb23
movl $0x67, %edx
movq %r13, %rdi
callq 0x2140
leaq 0x6924(%rip), %rsi      # 0xeb8b
movl $0x69, %edx
movq %r13, %rdi
callq 0x2140
leaq 0x697a(%rip), %rsi      # 0xebf5
movl $0x13, %edx
movq %r13, %rdi
callq 0x2140
movq (%r12), %rsi
movq 0x8(%r12), %rdx
movq %r13, %rdi
callq 0x2140
movq %rax, %r12
movslq %r14d, %rsi
leaq -0xb8(%rbp), %r13
movq %r13, -0x10(%r13)
leaq -0xc8(%rbp), %rdi
movl $0x20, %edx
callq 0x2150
movq -0xc8(%rbp), %rsi
movq -0xc0(%rbp), %rdx
movq %r12, %rdi
callq 0x2140
movq %rax, %r12
leaq 0x692e(%rip), %rsi      # 0xec09
movl $0x37, %edx
movq %rax, %rdi
callq 0x2140
leaq 0x6834(%rip), %rsi      # 0xeb23
movl $0x67, %edx
movq %r12, %rdi
callq 0x2140
leaq 0x68f2(%rip), %rsi      # 0xebf5
movl $0x13, %edx
movq %r12, %rdi
callq 0x2140
movq (%r15), %rsi
movq 0x8(%r15), %rdx
movq %r12, %rdi
callq 0x2140
movq %rax, %r15
movslq -0x34(%rbp), %rsi
leaq -0x98(%rbp), %r12
movq %r12, -0x10(%r12)
leaq -0xa8(%rbp), %rdi
movl $0x20, %edx
callq 0x2150
movq -0xa8(%rbp), %rsi
movq -0xa0(%rbp), %rdx
movq %r15, %rdi
callq 0x2140
movq %rax, %r15
leaq 0x68de(%rip), %rsi      # 0xec41
movl $0x37, %edx
movq %rax, %rdi
callq 0x2140
leaq 0x687e(%rip), %rsi      # 0xebf5
movl $0x13, %edx
movq %r15, %rdi
callq 0x2140
movq -0x48(%rbp), %rax
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq %r15, %rdi
callq 0x2140
movq %rax, %r14
movslq -0x30(%rbp), %rsi
leaq -0x78(%rbp), %r15
movq %r15, -0x10(%r15)
leaq -0x88(%rbp), %rdi
movl $0x20, %edx
callq 0x2150
movq -0x88(%rbp), %rsi
movq -0x80(%rbp), %rdx
movq %r14, %rdi
callq 0x2140
movq %rax, %r14
leaq 0x68a5(%rip), %rsi      # 0xec79
movl $0x37, %edx
movq %rax, %rdi
callq 0x2140
leaq 0x680d(%rip), %rsi      # 0xebf5
movl $0x13, %edx
movq %r14, %rdi
callq 0x2140
movq -0x40(%rbp), %rax
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq %r14, %rdi
callq 0x2140
movq %rax, %rbx
movslq -0x2c(%rbp), %rsi
leaq -0x58(%rbp), %r14
movq %r14, -0x10(%r14)
leaq -0x68(%rbp), %rdi
movl $0x20, %edx
callq 0x2150
movq -0x68(%rbp), %rsi
movq -0x60(%rbp), %rdx
movq %rbx, %rdi
callq 0x2140
movq %rax, %rbx
leaq 0x6872(%rip), %rsi      # 0xecb1
movl $0x34, %edx
movq %rax, %rdi
callq 0x2140
leaq 0x6893(%rip), %rsi      # 0xece6
movl $0x69, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x66bc(%rip), %rsi      # 0xeb23
movl $0x67, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x68d5(%rip), %rsi      # 0xed50
movl $0xf1, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x69b3(%rip), %rsi      # 0xee42
movl $0x55, %edx
movq %rbx, %rdi
callq 0x2140
jmp 0x8a3b
movl %edi, -0x34(%rbp)
movq %rdx, -0x48(%rbp)
movl %esi, -0x30(%rbp)
movq %rcx, -0x40(%rbp)
movl %eax, -0x2c(%rbp)
movq 0x9b17(%rip), %r13      # 0x11fd0
leaq 0x6463(%rip), %rsi      # 0xe923
movl $0x55, %edx
movq %r13, %rdi
callq 0x2140
leaq 0x64a5(%rip), %rsi      # 0xe979
movl $0x55, %edx
movq %r13, %rdi
callq 0x2140
leaq 0x64e7(%rip), %rbx      # 0xe9cf
movl $0x61, %edx
movq %r13, %rdi
movq %rbx, %rsi
callq 0x2140
movl $0x61, %edx
movq %r13, %rdi
movq %rbx, %rsi
callq 0x2140
leaq 0x6522(%rip), %rsi      # 0xea31
movl $0xf1, %edx
movq %r13, %rdi
callq 0x2140
leaq 0x6600(%rip), %rsi      # 0xeb23
movl $0x67, %edx
movq %r13, %rdi
callq 0x2140
leaq 0x6961(%rip), %rsi      # 0xee98
movl $0x67, %edx
movq %r13, %rdi
callq 0x2140
leaq 0x66aa(%rip), %rsi      # 0xebf5
movl $0x13, %edx
movq %r13, %rdi
callq 0x2140
movq (%r12), %rsi
movq 0x8(%r12), %rdx
movq %r13, %rdi
callq 0x2140
movq %rax, %r12
movslq %r14d, %rsi
leaq -0xb8(%rbp), %r13
movq %r13, -0x10(%r13)
leaq -0xc8(%rbp), %rdi
movl $0x20, %edx
callq 0x2150
movq -0xc8(%rbp), %rsi
movq -0xc0(%rbp), %rdx
movq %r12, %rdi
callq 0x2140
movq %rax, %r12
leaq 0x6955(%rip), %rsi      # 0xef00
movl $0x37, %edx
movq %rax, %rdi
callq 0x2140
leaq 0x6979(%rip), %rsi      # 0xef38
movl $0x67, %edx
movq %r12, %rdi
callq 0x2140
leaq 0x6622(%rip), %rsi      # 0xebf5
movl $0x13, %edx
movq %r12, %rdi
callq 0x2140
movq (%r15), %rsi
movq 0x8(%r15), %rdx
movq %r12, %rdi
callq 0x2140
movq %rax, %r15
movslq -0x34(%rbp), %rsi
leaq -0x98(%rbp), %r12
movq %r12, -0x10(%r12)
leaq -0xa8(%rbp), %rdi
movl $0x20, %edx
callq 0x2150
movq -0xa8(%rbp), %rsi
movq -0xa0(%rbp), %rdx
movq %r15, %rdi
callq 0x2140
movq %rax, %r15
leaq 0x6646(%rip), %rsi      # 0xec79
movl $0x37, %edx
movq %rax, %rdi
callq 0x2140
leaq 0x65ae(%rip), %rsi      # 0xebf5
movl $0x13, %edx
movq %r15, %rdi
callq 0x2140
movq -0x48(%rbp), %rax
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq %r15, %rdi
callq 0x2140
movq %rax, %r14
movslq -0x30(%rbp), %rsi
leaq -0x78(%rbp), %r15
movq %r15, -0x10(%r15)
leaq -0x88(%rbp), %rdi
movl $0x20, %edx
callq 0x2150
movq -0x88(%rbp), %rsi
movq -0x80(%rbp), %rdx
movq %r14, %rdi
callq 0x2140
movq %rax, %r14
leaq 0x68fc(%rip), %rsi      # 0xefa0
movl $0x37, %edx
movq %rax, %rdi
callq 0x2140
leaq 0x653d(%rip), %rsi      # 0xebf5
movl $0x13, %edx
movq %r14, %rdi
callq 0x2140
movq -0x40(%rbp), %rax
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq %r14, %rdi
callq 0x2140
movq %rax, %rbx
movslq -0x2c(%rbp), %rsi
leaq -0x58(%rbp), %r14
movq %r14, -0x10(%r14)
leaq -0x68(%rbp), %rdi
movl $0x20, %edx
callq 0x2150
movq -0x68(%rbp), %rsi
movq -0x60(%rbp), %rdx
movq %rbx, %rdi
callq 0x2140
movq %rax, %rbx
leaq 0x68c9(%rip), %rsi      # 0xefd8
movl $0x34, %edx
movq %rax, %rdi
callq 0x2140
leaq 0x68ea(%rip), %rsi      # 0xf00d
movl $0x67, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x63ec(%rip), %rsi      # 0xeb23
movl $0x67, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6605(%rip), %rsi      # 0xed50
movl $0xf1, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x66e3(%rip), %rsi      # 0xee42
movl $0x55, %edx
movq %rbx, %rdi
callq 0x2140
jmp 0x8a3b
movl %edi, -0x34(%rbp)
movq %rdx, -0x48(%rbp)
movl %esi, -0x30(%rbp)
movq %rcx, -0x40(%rbp)
movl %eax, -0x2c(%rbp)
movq 0x9847(%rip), %r13      # 0x11fd0
leaq 0x6193(%rip), %rsi      # 0xe923
movl $0x55, %edx
movq %r13, %rdi
callq 0x2140
leaq 0x61d5(%rip), %rsi      # 0xe979
movl $0x55, %edx
movq %r13, %rdi
callq 0x2140
leaq 0x6217(%rip), %rbx      # 0xe9cf
movl $0x61, %edx
movq %r13, %rdi
movq %rbx, %rsi
callq 0x2140
movl $0x61, %edx
movq %r13, %rdi
movq %rbx, %rsi
callq 0x2140
leaq 0x6252(%rip), %rsi      # 0xea31
movl $0xf1, %edx
movq %r13, %rdi
callq 0x2140
leaq 0x6330(%rip), %rbx      # 0xeb23
movl $0x67, %edx
movq %r13, %rdi
movq %rbx, %rsi
callq 0x2140
movl $0x67, %edx
movq %r13, %rdi
movq %rbx, %rsi
callq 0x2140
leaq 0x63db(%rip), %rsi      # 0xebf5
movl $0x13, %edx
movq %r13, %rdi
callq 0x2140
movq (%r12), %rsi
movq 0x8(%r12), %rdx
movq %r13, %rdi
callq 0x2140
movq %rax, %r12
movslq %r14d, %rsi
leaq -0xb8(%rbp), %r13
movq %r13, -0x10(%r13)
leaq -0xc8(%rbp), %rdi
movl $0x20, %edx
callq 0x2150
movq -0xc8(%rbp), %rsi
movq -0xc0(%rbp), %rdx
movq %r12, %rdi
callq 0x2140
movq %rax, %r12
leaq 0x67fb(%rip), %rsi      # 0xf075
movl $0x37, %edx
movq %rax, %rdi
callq 0x2140
leaq 0x681f(%rip), %rsi      # 0xf0ad
movl $0x67, %edx
movq %r12, %rdi
callq 0x2140
leaq 0x6353(%rip), %rsi      # 0xebf5
movl $0x13, %edx
movq %r12, %rdi
callq 0x2140
movq (%r15), %rsi
movq 0x8(%r15), %rdx
movq %r12, %rdi
callq 0x2140
movq %rax, %r15
movslq -0x34(%rbp), %rsi
leaq -0x98(%rbp), %r12
movq %r12, -0x10(%r12)
leaq -0xa8(%rbp), %rdi
movl $0x20, %edx
callq 0x2150
movq -0xa8(%rbp), %rsi
movq -0xa0(%rbp), %rdx
movq %r15, %rdi
callq 0x2140
movq %rax, %r15
leaq 0x6813(%rip), %rsi      # 0xf115
movl $0x37, %edx
movq %rax, %rdi
callq 0x2140
leaq 0x62df(%rip), %rsi      # 0xebf5
movl $0x13, %edx
movq %r15, %rdi
callq 0x2140
movq -0x48(%rbp), %rax
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq %r15, %rdi
callq 0x2140
movq %rax, %r14
movslq -0x30(%rbp), %rsi
leaq -0x78(%rbp), %r15
movq %r15, -0x10(%r15)
leaq -0x88(%rbp), %rdi
movl $0x20, %edx
callq 0x2150
movq -0x88(%rbp), %rsi
movq -0x80(%rbp), %rdx
movq %r14, %rdi
callq 0x2140
movq %rax, %r14
leaq 0x67da(%rip), %rsi      # 0xf14d
movl $0x37, %edx
movq %rax, %rdi
callq 0x2140
leaq 0x626e(%rip), %rsi      # 0xebf5
movl $0x13, %edx
movq %r14, %rdi
callq 0x2140
movq -0x40(%rbp), %rax
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq %r14, %rdi
callq 0x2140
movq %rax, %rbx
movslq -0x2c(%rbp), %rsi
leaq -0x58(%rbp), %r14
movq %r14, -0x10(%r14)
leaq -0x68(%rbp), %rdi
movl $0x20, %edx
callq 0x2150
movq -0x68(%rbp), %rsi
movq -0x60(%rbp), %rdx
movq %rbx, %rdi
callq 0x2140
movq %rax, %rbx
leaq 0x67a7(%rip), %rsi      # 0xf185
movl $0x34, %edx
movq %rax, %rdi
callq 0x2140
leaq 0x6131(%rip), %rsi      # 0xeb23
movl $0x67, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x611d(%rip), %rsi      # 0xeb23
movl $0x67, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6336(%rip), %rsi      # 0xed50
movl $0xf1, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6414(%rip), %rsi      # 0xee42
movl $0x55, %edx
movq %rbx, %rdi
callq 0x2140
movq -0x68(%rbp), %rdi
cmpq %r14, %rdi
je 0x8a50
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x2120
movq -0x88(%rbp), %rdi
cmpq %r15, %rdi
je 0x8a68
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x2120
movq -0xa8(%rbp), %rdi
cmpq %r12, %rdi
je 0x8a83
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x2120
movq -0xc8(%rbp), %rdi
cmpq %r13, %rdi
je 0x8a9e
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x2120
addq $0xa8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x8ad2
jmp 0x8ad2
jmp 0x8ad2
jmp 0x8adb
jmp 0x8adb
jmp 0x8adb
jmp 0x8ae4
jmp 0x8ae4
jmp 0x8ae4
jmp 0x8ac6
jmp 0x8ac6
movq %rax, %rbx
jmp 0x8b53
jmp 0x8ad2
jmp 0x8ad2
movq %rax, %rbx
jmp 0x8b05
jmp 0x8adb
jmp 0x8adb
movq %rax, %rbx
jmp 0x8b1d
jmp 0x8ae4
jmp 0x8ae4
movq %rax, %rbx
jmp 0x8b38
jmp 0x8aed
jmp 0x8aed
movq %rax, %rbx
movq -0x68(%rbp), %rdi
cmpq %r14, %rdi
je 0x8b05
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x2120
movq -0x88(%rbp), %rdi
cmpq %r15, %rdi
je 0x8b1d
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x2120
movq -0xa8(%rbp), %rdi
cmpq %r12, %rdi
je 0x8b38
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x2120
movq -0xc8(%rbp), %rdi
cmpq %r13, %rdi
je 0x8b53
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x2120
movq %rbx, %rdi
callq 0x2210