// File: FabienBounoir[P]JustePrix-CLI/justePrix.cpp
// Function: JustePrix::ChoisirMenu()
void JustePrix::ChoisirMenu()
{
    char choixMenu = 0;
    do{
        choixMenu = ihm->afficherMenu();
        if(choixMenu == 'R' || choixMenu == 'r')
        {
            meilleurScore->remettreAZeroScore();
            this->jouerNouvellePartie();
        }
        else if(choixMenu == 'M' || choixMenu == 'm')
        {
            ihm->afficherMeilleursScores(meilleurScore->getFichierDifficulte());
            ihm->afficherPositionScore(meilleurScore->calculerPositionClassement(this->getNbCoups()));
        }
        else if(choixMenu == 'H' || choixMenu == 'h')
        {
            ihm->afficherHistorique(historique->getHistorique());
        }
        else if(choixMenu == 'Q' || choixMenu == 'q')
        {
            ihm->arreterJeu(joueur->getNom());
        }
        else
        {
            cerr << "Désoler ce choix n'est Disponible" <<endl;
        }
    }
    while(choixMenu != 'R' && choixMenu != 'r' && choixMenu != 'Q' && choixMenu != 'q');
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x80(%rbp)
movb $0x0, -0x9(%rbp)
movq -0x80(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0x5240
movb %al, -0x9(%rbp)
movsbl -0x9(%rbp), %eax
cmpl $0x52, %eax
je 0x3e9d
movsbl -0x9(%rbp), %eax
cmpl $0x72, %eax
jne 0x3eb8
movq -0x80(%rbp), %rax
movq 0x28(%rax), %rdi
callq 0x8570
movq -0x80(%rbp), %rdi
callq 0x40e0
jmp 0x4072
movsbl -0x9(%rbp), %eax
cmpl $0x4d, %eax
je 0x3ece
movsbl -0x9(%rbp), %eax
cmpl $0x6d, %eax
jne 0x3f69
movq -0x80(%rbp), %rax
movq 0x10(%rax), %rcx
movq %rcx, -0x90(%rbp)
movq 0x28(%rax), %rsi
leaq -0x30(%rbp), %rdi
movq %rdi, -0x88(%rbp)
callq 0x7ce0
movq -0x90(%rbp), %rdi
movq -0x88(%rbp), %rsi
callq 0x54b0
jmp 0x3f06
leaq -0x30(%rbp), %rdi
callq 0x3130
movq -0x80(%rbp), %rdi
movq 0x10(%rdi), %rax
movq %rax, -0x98(%rbp)
movq 0x28(%rdi), %rax
movq %rax, -0xa0(%rbp)
callq 0x3960
movq -0xa0(%rbp), %rdi
movl %eax, %esi
callq 0x7da0
movq -0x98(%rbp), %rdi
movl %eax, %esi
callq 0x59e0
jmp 0x4070
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x30(%rbp), %rdi
callq 0x3130
jmp 0x40ce
movsbl -0x9(%rbp), %eax
cmpl $0x48, %eax
je 0x3f7b
movsbl -0x9(%rbp), %eax
cmpl $0x68, %eax
jne 0x3fdb
movq -0x80(%rbp), %rax
movq 0x10(%rax), %rcx
movq %rcx, -0xb0(%rbp)
movq 0x20(%rax), %rsi
leaq -0x58(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x5d50
movq -0xb0(%rbp), %rdi
movq -0xa8(%rbp), %rsi
callq 0x53b0
jmp 0x3fb3
leaq -0x58(%rbp), %rdi
callq 0x4500
jmp 0x406e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x58(%rbp), %rdi
callq 0x4500
jmp 0x40ce
movsbl -0x9(%rbp), %eax
cmpl $0x51, %eax
je 0x3fed
movsbl -0x9(%rbp), %eax
cmpl $0x71, %eax
jne 0x404a
movq -0x80(%rbp), %rax
movq 0x10(%rax), %rcx
movq %rcx, -0xc0(%rbp)
movq 0x18(%rax), %rsi
leaq -0x78(%rbp), %rdi
movq %rdi, -0xb8(%rbp)
callq 0x5c30
movq -0xc0(%rbp), %rdi
movq -0xb8(%rbp), %rsi
callq 0x5340
jmp 0x4025
leaq -0x78(%rbp), %rdi
callq 0x3130
jmp 0x406c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x78(%rbp), %rdi
callq 0x3130
jmp 0x40ce
movq 0xaf9f(%rip), %rdi      # 0xeff0
leaq 0x5fd5(%rip), %rsi      # 0xa02d
callq 0x3240
movq %rax, %rdi
movq 0xaf51(%rip), %rsi      # 0xefb8
callq 0x3270
jmp 0x406e
jmp 0x4070
jmp 0x4072
jmp 0x4074
movsbl -0x9(%rbp), %ecx
xorl %eax, %eax
cmpl $0x52, %ecx
movb %al, -0xc1(%rbp)
je 0x40b7
movsbl -0x9(%rbp), %ecx
xorl %eax, %eax
cmpl $0x72, %ecx
movb %al, -0xc1(%rbp)
je 0x40b7
movsbl -0x9(%rbp), %ecx
xorl %eax, %eax
cmpl $0x51, %ecx
movb %al, -0xc1(%rbp)
je 0x40b7
movsbl -0x9(%rbp), %eax
cmpl $0x71, %eax
setne %al
movb %al, -0xc1(%rbp)
movb -0xc1(%rbp), %al
testb $0x1, %al
jne 0x3e7b
addq $0xd0, %rsp
popq %rbp
retq
movq -0x38(%rbp), %rdi
callq 0x33e0
nopw (%rax,%rax)