// File: JacobLCarter[P]2D-Portal/worldMap.cpp
// Function: World_Map::getMapLegend[abi:cxx11]()
std::string World_Map::getMapLegend()
{
    std::string mapLegendText;

    mapLegendText = "MAP LEGEND\n";
    mapLegendText += "----------\n";
    mapLegendText += "* : My current position.\n";
    mapLegendText += testChamberMap[1][0]->getSpaceTypeIdentifier();
    mapLegendText += " : ";
    mapLegendText += testChamberMap[1][0]->getSpaceTypeDescription();
    mapLegendText += "\n";
    mapLegendText += testChamberMap[0][1]->getSpaceTypeIdentifier();
    mapLegendText += " : ";
    mapLegendText += testChamberMap[0][1]->getSpaceTypeDescription();
    mapLegendText += "\n";
    mapLegendText += testChamberMap[1][3]->getSpaceTypeIdentifier();
    mapLegendText += " : ";
    mapLegendText += testChamberMap[1][3]->getSpaceTypeDescription();
    mapLegendText += "\n";
    mapLegendText += testChamberMap[1][1]->getSpaceTypeIdentifier();
    mapLegendText += " : ";
    mapLegendText += testChamberMap[1][1]->getSpaceTypeDescription();
    mapLegendText += "\n";
    mapLegendText += testChamberMap[3][4]->getSpaceTypeIdentifier();
    mapLegendText += " : ";
    mapLegendText += testChamberMap[3][4]->getSpaceTypeDescription();
    mapLegendText += "\n";
    mapLegendText += testChamberMap[1][4]->getSpaceTypeIdentifier();
    mapLegendText += " : ";
    mapLegendText += testChamberMap[1][4]->getSpaceTypeDescription();
    mapLegendText += "\n";
    mapLegendText += cake->getItemTypeIdentifier(); 
    mapLegendText += " : ";
    mapLegendText += cake->getItemName(); 
    mapLegendText += " - ";
    mapLegendText += cake->getItemDescription();
    mapLegendText += "\n";
    mapLegendText += portalGun->getItemTypeIdentifier();
    mapLegendText += " : ";
    mapLegendText += portalGun->getItemName();
    mapLegendText += " - ";
    mapLegendText += portalGun->getItemDescription();
    mapLegendText += "\n";
    mapLegendText += companionCube->getItemTypeIdentifier();
    mapLegendText += " : ";
    mapLegendText += companionCube->getItemName();
    mapLegendText += " - ";
    mapLegendText += companionCube->getItemDescription();
    mapLegendText += "\n\n";

    return mapLegendText;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x1d0, %rsp            # imm = 0x1D0
movq %rdi, -0x1b0(%rbp)
movq %rdi, %rax
movq %rax, -0x1c0(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x1b8(%rbp)
movb $0x0, -0x11(%rbp)
callq 0x3330
movq -0x1b0(%rbp), %rdi
leaq 0x50ba(%rip), %rsi      # 0xd9b0
callq 0x3320
jmp 0x88fd
movq -0x1b0(%rbp), %rdi
leaq 0x50b1(%rip), %rsi      # 0xd9bc
callq 0x3200
jmp 0x8912
movq -0x1b0(%rbp), %rdi
leaq 0x50a8(%rip), %rsi      # 0xd9c8
callq 0x3200
jmp 0x8927
movq -0x1b8(%rbp), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rax
movq (%rax), %rdi
callq 0x54e0
movb %al, -0x1c1(%rbp)
jmp 0x8946
movq -0x1b0(%rbp), %rdi
movb -0x1c1(%rbp), %al
movsbl %al, %esi
callq 0x3150
jmp 0x895d
movq -0x1b0(%rbp), %rdi
leaq 0x5077(%rip), %rsi      # 0xd9e2
callq 0x3200
jmp 0x8972
movq -0x1b8(%rbp), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rax
movq (%rax), %rsi
movq (%rsi), %rax
movq 0x18(%rax), %rax
leaq -0x48(%rbp), %rdi
callq *%rax
jmp 0x8993
movq -0x1b0(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x3300
jmp 0x89a5
leaq -0x48(%rbp), %rdi
callq 0x3140
movq -0x1b0(%rbp), %rdi
leaq 0x3d2e(%rip), %rsi      # 0xc6ea
callq 0x3200
jmp 0x89c3
movq -0x1b8(%rbp), %rax
movq 0x8(%rax), %rax
movq (%rax), %rax
movq 0x8(%rax), %rdi
callq 0x54e0
movb %al, -0x1c2(%rbp)
jmp 0x89e2
movq -0x1b0(%rbp), %rdi
movb -0x1c2(%rbp), %al
movsbl %al, %esi
callq 0x3150
jmp 0x89f9
movq -0x1b0(%rbp), %rdi
leaq 0x4fdb(%rip), %rsi      # 0xd9e2
callq 0x3200
jmp 0x8a0e
movq -0x1b8(%rbp), %rax
movq 0x8(%rax), %rax
movq (%rax), %rax
movq 0x8(%rax), %rsi
movq (%rsi), %rax
movq 0x18(%rax), %rax
leaq -0x68(%rbp), %rdi
callq *%rax
jmp 0x8a2f
movq -0x1b0(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x3300
jmp 0x8a41
leaq -0x68(%rbp), %rdi
callq 0x3140
movq -0x1b0(%rbp), %rdi
leaq 0x3c92(%rip), %rsi      # 0xc6ea
callq 0x3200
jmp 0x8a5f
movq -0x1b8(%rbp), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rax
movq 0x18(%rax), %rdi
callq 0x54e0
movb %al, -0x1c3(%rbp)
jmp 0x8a7f
movq -0x1b0(%rbp), %rdi
movb -0x1c3(%rbp), %al
movsbl %al, %esi
callq 0x3150
jmp 0x8a96
movq -0x1b0(%rbp), %rdi
leaq 0x4f3e(%rip), %rsi      # 0xd9e2
callq 0x3200
jmp 0x8aab
movq -0x1b8(%rbp), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rax
movq 0x18(%rax), %rsi
movq (%rsi), %rax
movq 0x18(%rax), %rax
leaq -0x88(%rbp), %rdi
callq *%rax
jmp 0x8ad0
movq -0x1b0(%rbp), %rdi
leaq -0x88(%rbp), %rsi
callq 0x3300
jmp 0x8ae5
leaq -0x88(%rbp), %rdi
callq 0x3140
movq -0x1b0(%rbp), %rdi
leaq 0x3beb(%rip), %rsi      # 0xc6ea
callq 0x3200
jmp 0x8b06
movq -0x1b8(%rbp), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rdi
callq 0x54e0
movb %al, -0x1c4(%rbp)
jmp 0x8b26
movq -0x1b0(%rbp), %rdi
movb -0x1c4(%rbp), %al
movsbl %al, %esi
callq 0x3150
jmp 0x8b3d
movq -0x1b0(%rbp), %rdi
leaq 0x4e97(%rip), %rsi      # 0xd9e2
callq 0x3200
jmp 0x8b52
movq -0x1b8(%rbp), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rsi
movq (%rsi), %rax
movq 0x18(%rax), %rax
leaq -0xa8(%rbp), %rdi
callq *%rax
jmp 0x8b77
movq -0x1b0(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
callq 0x3300
jmp 0x8b8c
leaq -0xa8(%rbp), %rdi
callq 0x3140
movq -0x1b0(%rbp), %rdi
leaq 0x3b44(%rip), %rsi      # 0xc6ea
callq 0x3200
jmp 0x8bad
movq -0x1b8(%rbp), %rax
movq 0x8(%rax), %rax
movq 0x18(%rax), %rax
movq 0x20(%rax), %rdi
callq 0x54e0
movb %al, -0x1c5(%rbp)
jmp 0x8bcd
movq -0x1b0(%rbp), %rdi
movb -0x1c5(%rbp), %al
movsbl %al, %esi
callq 0x3150
jmp 0x8be4
movq -0x1b0(%rbp), %rdi
leaq 0x4df0(%rip), %rsi      # 0xd9e2
callq 0x3200
jmp 0x8bf9
movq -0x1b8(%rbp), %rax
movq 0x8(%rax), %rax
movq 0x18(%rax), %rax
movq 0x20(%rax), %rsi
movq (%rsi), %rax
movq 0x18(%rax), %rax
leaq -0xc8(%rbp), %rdi
callq *%rax
jmp 0x8c1e
movq -0x1b0(%rbp), %rdi
leaq -0xc8(%rbp), %rsi
callq 0x3300
jmp 0x8c33
leaq -0xc8(%rbp), %rdi
callq 0x3140
movq -0x1b0(%rbp), %rdi
leaq 0x3a9d(%rip), %rsi      # 0xc6ea
callq 0x3200
jmp 0x8c54
movq -0x1b8(%rbp), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rax
movq 0x20(%rax), %rdi
callq 0x54e0
movb %al, -0x1c6(%rbp)
jmp 0x8c74
movq -0x1b0(%rbp), %rdi
movb -0x1c6(%rbp), %al
movsbl %al, %esi
callq 0x3150
jmp 0x8c8b
movq -0x1b0(%rbp), %rdi
leaq 0x4d49(%rip), %rsi      # 0xd9e2
callq 0x3200
jmp 0x8ca0
movq -0x1b8(%rbp), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rax
movq 0x20(%rax), %rsi
movq (%rsi), %rax
movq 0x18(%rax), %rax
leaq -0xe8(%rbp), %rdi
callq *%rax
jmp 0x8cc5
movq -0x1b0(%rbp), %rdi
leaq -0xe8(%rbp), %rsi
callq 0x3300
jmp 0x8cda
leaq -0xe8(%rbp), %rdi
callq 0x3140
movq -0x1b0(%rbp), %rdi
leaq 0x39f6(%rip), %rsi      # 0xc6ea
callq 0x3200
jmp 0x8cfb
movq -0x1b8(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0x63c0
movb %al, -0x1c7(%rbp)
jmp 0x8d13
movq -0x1b0(%rbp), %rdi
movb -0x1c7(%rbp), %al
movsbl %al, %esi
callq 0x3150
jmp 0x8d2a
movq -0x1b0(%rbp), %rdi
leaq 0x4caa(%rip), %rsi      # 0xd9e2
callq 0x3200
jmp 0x8d3f
movq -0x1b8(%rbp), %rax
movq 0x10(%rax), %rsi
leaq -0x108(%rbp), %rdi
callq 0x6360
jmp 0x8d58
movq -0x1b0(%rbp), %rdi
leaq -0x108(%rbp), %rsi
callq 0x3300
jmp 0x8d6d
leaq -0x108(%rbp), %rdi
callq 0x3140
movq -0x1b0(%rbp), %rdi
leaq 0x4adb(%rip), %rsi      # 0xd862
callq 0x3200
jmp 0x8d8e
movq -0x1b8(%rbp), %rax
movq 0x10(%rax), %rsi
leaq -0x128(%rbp), %rdi
callq 0x6390
jmp 0x8da7
movq -0x1b0(%rbp), %rdi
leaq -0x128(%rbp), %rsi
callq 0x3300
jmp 0x8dbc
leaq -0x128(%rbp), %rdi
callq 0x3140
movq -0x1b0(%rbp), %rdi
leaq 0x3914(%rip), %rsi      # 0xc6ea
callq 0x3200
jmp 0x8ddd
movq -0x1b8(%rbp), %rax
movq 0x18(%rax), %rdi
callq 0x63c0
movb %al, -0x1c8(%rbp)
jmp 0x8df5
movq -0x1b0(%rbp), %rdi
movb -0x1c8(%rbp), %al
movsbl %al, %esi
callq 0x3150
jmp 0x8e0c
movq -0x1b0(%rbp), %rdi
leaq 0x4bc8(%rip), %rsi      # 0xd9e2
callq 0x3200
jmp 0x8e21
movq -0x1b8(%rbp), %rax
movq 0x18(%rax), %rsi
leaq -0x148(%rbp), %rdi
callq 0x6360
jmp 0x8e3a
movq -0x1b0(%rbp), %rdi
leaq -0x148(%rbp), %rsi
callq 0x3300
jmp 0x8e4f
leaq -0x148(%rbp), %rdi
callq 0x3140
movq -0x1b0(%rbp), %rdi
leaq 0x49f9(%rip), %rsi      # 0xd862
callq 0x3200
jmp 0x8e70
movq -0x1b8(%rbp), %rax
movq 0x18(%rax), %rsi
leaq -0x168(%rbp), %rdi
callq 0x6390
jmp 0x8e89
movq -0x1b0(%rbp), %rdi
leaq -0x168(%rbp), %rsi
callq 0x3300
jmp 0x8e9e
leaq -0x168(%rbp), %rdi
callq 0x3140
movq -0x1b0(%rbp), %rdi
leaq 0x3832(%rip), %rsi      # 0xc6ea
callq 0x3200
jmp 0x8ebf
movq -0x1b8(%rbp), %rax
movq 0x20(%rax), %rdi
callq 0x63c0
movb %al, -0x1c9(%rbp)
jmp 0x8ed7
movq -0x1b0(%rbp), %rdi
movb -0x1c9(%rbp), %al
movsbl %al, %esi
callq 0x3150
jmp 0x8eee
movq -0x1b0(%rbp), %rdi
leaq 0x4ae6(%rip), %rsi      # 0xd9e2
callq 0x3200
jmp 0x8f03
movq -0x1b8(%rbp), %rax
movq 0x20(%rax), %rsi
leaq -0x188(%rbp), %rdi
callq 0x6360
jmp 0x8f1c
movq -0x1b0(%rbp), %rdi
leaq -0x188(%rbp), %rsi
callq 0x3300
jmp 0x8f31
leaq -0x188(%rbp), %rdi
callq 0x3140
movq -0x1b0(%rbp), %rdi
leaq 0x4917(%rip), %rsi      # 0xd862
callq 0x3200
jmp 0x8f52
movq -0x1b8(%rbp), %rax
movq 0x20(%rax), %rsi
leaq -0x1a8(%rbp), %rdi
callq 0x6390
jmp 0x8f6b
movq -0x1b0(%rbp), %rdi
leaq -0x1a8(%rbp), %rsi
callq 0x3300
jmp 0x8f80
leaq -0x1a8(%rbp), %rdi
callq 0x3140
movq -0x1b0(%rbp), %rdi
leaq 0x374f(%rip), %rsi      # 0xc6e9
callq 0x3200
jmp 0x8fa1
movb $0x1, -0x11(%rbp)
testb $0x1, -0x11(%rbp)
jne 0x911b
jmp 0x910f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x912b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x3140
jmp 0x912b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x68(%rbp), %rdi
callq 0x3140
jmp 0x912b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x88(%rbp), %rdi
callq 0x3140
jmp 0x912b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0xa8(%rbp), %rdi
callq 0x3140
jmp 0x912b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0xc8(%rbp), %rdi
callq 0x3140
jmp 0x912b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0xe8(%rbp), %rdi
callq 0x3140
jmp 0x912b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x108(%rbp), %rdi
callq 0x3140
jmp 0x912b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x128(%rbp), %rdi
callq 0x3140
jmp 0x912b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x148(%rbp), %rdi
callq 0x3140
jmp 0x912b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x168(%rbp), %rdi
callq 0x3140
jmp 0x912b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x188(%rbp), %rdi
callq 0x3140
jmp 0x912b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x1a8(%rbp), %rdi
callq 0x3140
jmp 0x912b
movq -0x1b0(%rbp), %rdi
callq 0x3140
movq -0x1c0(%rbp), %rax
addq $0x1d0, %rsp            # imm = 0x1D0
popq %rbp
retq
movq -0x1b0(%rbp), %rdi
callq 0x3140
movq -0x20(%rbp), %rdi
callq 0x33b0