// File: /workspace/github_cpp_makefile_star2_O1/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 %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x10(%rdi), %r15
movq %r15, (%rdi)
movq $0x0, 0x8(%rdi)
movb $0x0, 0x10(%rdi)
leaq 0x3b28(%rip), %rcx      # 0x8885
movl $0xb, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x21f0
leaq 0x3b1e(%rip), %rsi      # 0x8891
movq %rbx, %rdi
callq 0x2270
leaq 0x3b1b(%rip), %rsi      # 0x889d
movq %rbx, %rdi
callq 0x2270
movq 0x8(%r14), %rax
movq 0x8(%rax), %rax
movq (%rax), %rdi
callq 0x3ad2
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2120
leaq 0x3b0b(%rip), %rsi      # 0x88b7
movq %rbx, %rdi
callq 0x2270
movq 0x8(%r14), %rax
movq 0x8(%rax), %rax
movq (%rax), %rsi
movq (%rsi), %rax
leaq 0x8(%rsp), %rdi
callq *0x18(%rax)
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x2090
leaq 0x18(%rsp), %r12
movq -0x10(%r12), %rdi
cmpq %r12, %rdi
je 0x4df8
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2160
leaq 0x27d3(%rip), %rsi      # 0x75d2
movq %rbx, %rdi
callq 0x2270
movq 0x8(%r14), %rax
movq (%rax), %rax
movq 0x8(%rax), %rdi
callq 0x3ad2
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2120
leaq 0x3a8e(%rip), %rsi      # 0x88b7
movq %rbx, %rdi
callq 0x2270
movq 0x8(%r14), %rax
movq (%rax), %rax
movq 0x8(%rax), %rsi
movq (%rsi), %rax
leaq 0x8(%rsp), %rdi
callq *0x18(%rax)
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x2090
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x4e70
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2160
leaq 0x275b(%rip), %rsi      # 0x75d2
movq %rbx, %rdi
callq 0x2270
movq 0x8(%r14), %rax
movq 0x8(%rax), %rax
movq 0x18(%rax), %rdi
callq 0x3ad2
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2120
leaq 0x3a15(%rip), %rsi      # 0x88b7
movq %rbx, %rdi
callq 0x2270
movq 0x8(%r14), %rax
movq 0x8(%rax), %rax
movq 0x18(%rax), %rsi
movq (%rsi), %rax
leaq 0x8(%rsp), %rdi
callq *0x18(%rax)
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x2090
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x4eea
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2160
leaq 0x26e1(%rip), %rsi      # 0x75d2
movq %rbx, %rdi
callq 0x2270
movq 0x8(%r14), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rdi
callq 0x3ad2
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2120
leaq 0x399b(%rip), %rsi      # 0x88b7
movq %rbx, %rdi
callq 0x2270
movq 0x8(%r14), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rsi
movq (%rsi), %rax
leaq 0x8(%rsp), %rdi
callq *0x18(%rax)
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x2090
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x4f64
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2160
leaq 0x2667(%rip), %rsi      # 0x75d2
movq %rbx, %rdi
callq 0x2270
movq 0x8(%r14), %rax
movq 0x18(%rax), %rax
movq 0x20(%rax), %rdi
callq 0x3ad2
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2120
leaq 0x3921(%rip), %rsi      # 0x88b7
movq %rbx, %rdi
callq 0x2270
movq 0x8(%r14), %rax
movq 0x18(%rax), %rax
movq 0x20(%rax), %rsi
movq (%rsi), %rax
leaq 0x8(%rsp), %rdi
callq *0x18(%rax)
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x2090
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x4fde
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2160
leaq 0x25ed(%rip), %rsi      # 0x75d2
movq %rbx, %rdi
callq 0x2270
movq 0x8(%r14), %rax
movq 0x8(%rax), %rax
movq 0x20(%rax), %rdi
callq 0x3ad2
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2120
leaq 0x38a7(%rip), %rsi      # 0x88b7
movq %rbx, %rdi
callq 0x2270
movq 0x8(%r14), %rax
movq 0x8(%rax), %rax
movq 0x20(%rax), %rsi
movq (%rsi), %rax
leaq 0x8(%rsp), %rdi
callq *0x18(%rax)
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x2090
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x5058
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2160
leaq 0x2573(%rip), %rsi      # 0x75d2
movq %rbx, %rdi
callq 0x2270
movq 0x10(%r14), %rdi
callq 0x40f8
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2120
leaq 0x3835(%rip), %rsi      # 0x88b7
movq %rbx, %rdi
callq 0x2270
movq 0x10(%r14), %rsi
leaq 0x8(%rsp), %rdi
callq 0x40b2
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x2090
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x50c1
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2160
leaq 0x366f(%rip), %rsi      # 0x8737
movq %rbx, %rdi
callq 0x2270
movq 0x10(%r14), %rsi
leaq 0x8(%rsp), %rdi
callq 0x40d4
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x2090
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x5107
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2160
leaq 0x24c4(%rip), %rsi      # 0x75d2
movq %rbx, %rdi
callq 0x2270
movq 0x18(%r14), %rdi
callq 0x40f8
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2120
leaq 0x3786(%rip), %rsi      # 0x88b7
movq %rbx, %rdi
callq 0x2270
movq 0x18(%r14), %rsi
leaq 0x8(%rsp), %rdi
callq 0x40b2
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x2090
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x5170
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2160
leaq 0x35c0(%rip), %rsi      # 0x8737
movq %rbx, %rdi
callq 0x2270
movq 0x18(%r14), %rsi
leaq 0x8(%rsp), %rdi
callq 0x40d4
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x2090
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x51b6
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2160
leaq 0x2415(%rip), %rsi      # 0x75d2
movq %rbx, %rdi
callq 0x2270
movq 0x20(%r14), %rdi
callq 0x40f8
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2120
leaq 0x36d7(%rip), %rsi      # 0x88b7
movq %rbx, %rdi
callq 0x2270
movq 0x20(%r14), %rsi
leaq 0x8(%rsp), %rdi
callq 0x40b2
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x2090
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x521f
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2160
leaq 0x3511(%rip), %rsi      # 0x8737
movq %rbx, %rdi
callq 0x2270
movq 0x20(%r14), %rsi
leaq 0x8(%rsp), %rdi
callq 0x40d4
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x2090
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x5265
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2160
leaq 0x2365(%rip), %rsi      # 0x75d1
movq %rbx, %rdi
callq 0x2270
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
jmp 0x52ab
jmp 0x52de
jmp 0x52ab
jmp 0x52de
jmp 0x52ab
jmp 0x52de
jmp 0x52ab
jmp 0x52de
jmp 0x52ab
jmp 0x52de
jmp 0x52ab
jmp 0x52de
jmp 0x52ab
jmp 0x52de
jmp 0x52ab
jmp 0x52de
jmp 0x52ab
jmp 0x52de
jmp 0x52ab
jmp 0x52de
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x52e1
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2160
jmp 0x52e1
jmp 0x52de
movq %rax, %r14
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
jne 0x52b8
jmp 0x52e1
jmp 0x52de
movq %rax, %r14
movq (%rbx), %rdi
cmpq %r15, %rdi
je 0x52f4
movq (%r15), %rsi
incq %rsi
callq 0x2160
movq %r14, %rdi
callq 0x2240