// File: Teris45[P]Maze-Game/Engine.cpp
// Function: Engine::printMaze()
void Engine::printMaze(){
    for(auto & it : maze)
    {
        for(auto & it1 : it){
            if(it1 == WALL)
                addch('*');
            else if(it1 == DIADROMOS)
                addch(' ');
            else if(it1 == GOBLINAKOS)
                addch('G');
            else if(it1 == TRAALINAKOS)
                addch('T');
            else if(it1 == POTERAKOS)
                addch('P');
            else if(it1 == GEM)
                addch('0');

        }
        addch('\n');

    }

    addstr("------------------------------------------\n");
    addstr("HIGH SCORES\n");
    const char *str = hg.toStr();
    addstr(str);

}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x58(%rbp)
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
callq 0x5e60
movq %rax, -0x18(%rbp)
movq -0x10(%rbp), %rdi
callq 0x5d10
movq %rax, -0x20(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x5e90
testb $0x1, %al
jne 0x4b78
jmp 0x4cc4
leaq -0x18(%rbp), %rdi
callq 0x5ed0
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rdi
callq 0x5ef0
movq %rax, -0x38(%rbp)
movq -0x30(%rbp), %rdi
callq 0x5a10
movq %rax, -0x40(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x40(%rbp), %rsi
callq 0x5f20
testb $0x1, %al
jne 0x4bbd
jmp 0x4ca2
leaq -0x38(%rbp), %rdi
callq 0x5f60
movq %rax, -0x48(%rbp)
movq -0x48(%rbp), %rax
cmpl $0x1, (%rax)
jne 0x4bec
movq 0xf3f6(%rip), %rax      # 0x13fd0
movq (%rax), %rdi
movl $0x2a, %esi
callq 0x30a0
jmp 0x4c92
movq -0x48(%rbp), %rax
cmpl $0x2, (%rax)
jne 0x4c0e
movq 0xf3d4(%rip), %rax      # 0x13fd0
movq (%rax), %rdi
movl $0x20, %esi
callq 0x30a0
jmp 0x4c90
movq -0x48(%rbp), %rax
cmpl $0x4, (%rax)
jne 0x4c2d
movq 0xf3b2(%rip), %rax      # 0x13fd0
movq (%rax), %rdi
movl $0x47, %esi
callq 0x30a0
jmp 0x4c8e
movq -0x48(%rbp), %rax
cmpl $0x5, (%rax)
jne 0x4c4c
movq 0xf393(%rip), %rax      # 0x13fd0
movq (%rax), %rdi
movl $0x54, %esi
callq 0x30a0
jmp 0x4c8c
movq -0x48(%rbp), %rax
cmpl $0x3, (%rax)
jne 0x4c6b
movq 0xf374(%rip), %rax      # 0x13fd0
movq (%rax), %rdi
movl $0x50, %esi
callq 0x30a0
jmp 0x4c8a
movq -0x48(%rbp), %rax
cmpl $0x6, (%rax)
jne 0x4c88
movq 0xf355(%rip), %rax      # 0x13fd0
movq (%rax), %rdi
movl $0x30, %esi
callq 0x30a0
jmp 0x4c8a
jmp 0x4c8c
jmp 0x4c8e
jmp 0x4c90
jmp 0x4c92
jmp 0x4c94
leaq -0x38(%rbp), %rdi
callq 0x5f80
jmp 0x4ba7
movq 0xf327(%rip), %rax      # 0x13fd0
movq (%rax), %rdi
movl $0xa, %esi
callq 0x30a0
leaq -0x18(%rbp), %rdi
callq 0x5fa0
jmp 0x4b62
movq 0xf305(%rip), %rax      # 0x13fd0
movq (%rax), %rdi
leaq 0x937e(%rip), %rsi      # 0xe053
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x30c0
movq 0xf2ea(%rip), %rax      # 0x13fd0
movq (%rax), %rdi
leaq 0x938f(%rip), %rsi      # 0xe07f
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x30c0
movq -0x58(%rbp), %rdi
addq $0x130, %rdi            # imm = 0x130
callq 0xc960
movq %rax, -0x50(%rbp)
movq 0xf2bb(%rip), %rax      # 0x13fd0
movq (%rax), %rdi
movq -0x50(%rbp), %rsi
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x30c0
addq $0x60, %rsp
popq %rbp
retq
nopl (%rax)