LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_cpp_makefile_star2_O3/adamnovak[P]rlcsa/adaptive_samples.cpp
// Function: CSA::AdaptiveSamples::trySample(std::pair<unsigned int, unsigned int>, unsigned int)
void
AdaptiveSamples::trySample(sample_type sample, usint offset)
{
  if(this->promote_probability > 0.0)
  {
    double temp = (this->promote_probability * this->window_size * offset) / this->sum;
    if(rand() / (RAND_MAX + 1.0) >= temp) { return; }
  }

  if(this->use_candidates) { this->addCandidate(sample); }
  else                     { this->addSample(sample); }
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movsd 0x38(%rdi), %xmm0
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x14ba5
movl 0x40(%r14), %eax
movl 0x48(%r14), %ecx
xorps %xmm1, %xmm1
cvtsi2sd %rax, %xmm1
mulsd %xmm1, %xmm0
movl %edx, %eax
xorps %xmm1, %xmm1
cvtsi2sd %rax, %xmm1
mulsd %xmm0, %xmm1
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
divsd %xmm0, %xmm1
movsd %xmm1, (%rsp)
callq 0x30a0
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
mulsd 0xe1d2(%rip), %xmm0     # 0x22d70
ucomisd (%rsp), %xmm0
jae 0x14bd0
cmpb $0x1, 0x34(%r14)
jne 0x14bbe
movq %r14, %rdi
movq %rbx, %rsi
addq $0x8, %rsp
popq %rbx
popq %r14
jmp 0x14e8c
movq %r14, %rdi
movq %rbx, %rsi
addq $0x8, %rsp
popq %rbx
popq %r14
jmp 0x14304
addq $0x8, %rsp
popq %rbx
popq %r14
retq
// File: /workspace/github_cpp_makefile_star2_O3/adamnovak[P]rlcsa/adaptive_samples.cpp
// Function: CSA::AdaptiveSamples::locate(std::pair<unsigned int, unsigned int>, bool)
usint*
AdaptiveSamples::locate(pair_type range, bool steps)
{
  if(length(range) == 0) { return 0; }

  usint* data = new usint[length(range)];
  for(usint i = 0, j = range.first; j <= range.second; i++, j++)
  {
    data[i] = this->locate(j, steps);
  }

  return data;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rsi, %r12
shrq $0x20, %r12
movl %r12d, %eax
subl %ebx, %eax
incl %eax
jne 0x14bfb
xorl %r15d, %r15d
jmp 0x14c42
movl %edx, %ebp
movq %rdi, %r14
movl %eax, %edi
shlq $0x2, %rdi
callq 0x3030
movq %rax, %r15
cmpl %ebx, %r12d
jb 0x14c42
xorl %r13d, %r13d
movzbl %bpl, %ebp
leal (%rbx,%r13), %esi
movq %r14, %rdi
movl %ebp, %edx
callq 0x14770
movl %r13d, %ecx
movl %eax, (%r15,%rcx,4)
leal (%rbx,%r13), %eax
incl %eax
movl %r13d, %ecx
incl %ecx
movl %ecx, %r13d
cmpl %r12d, %eax
jbe 0x14c1a
movq %r15, %rax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/main.cpp
// Function: main
int main() {
    welcomeMessage();
    
    Game game;
    while (!game.getExitGame()) {
        game.menu();
        game.resetGame();
    }
    
    cout << "Have a great holiday and may the force be with you! Make sure to check out "
         << "Star Wars: The Last Jedi" << endl << endl;
    
    return 0;
}

// Assembly:
pushq %rbx
subq $0x50, %rsp
callq 0x26f2
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
callq 0x4f90
movq %rbx, %rdi
callq 0x5d9a
testb %al, %al
jne 0x2641
movq %rbx, %rdi
callq 0x5042
movq %rbx, %rdi
callq 0x5d9e
jmp 0x2623
movq 0xb988(%rip), %rdi      # 0xdfd0
leaq 0x59b5(%rip), %rsi      # 0x8004
movl $0x4b, %edx
callq 0x2160
movq 0xb970(%rip), %rbx      # 0xdfd0
leaq 0x59e9(%rip), %rsi      # 0x8050
movl $0x18, %edx
movq %rbx, %rdi
callq 0x2160
movq (%rbx), %rax
addq -0x18(%rax), %rbx
movq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq 0xb93e(%rip), %rdi      # 0xdfd0
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq 0x8(%rsp), %rdi
callq 0x501a
xorl %eax, %eax
addq $0x50, %rsp
popq %rbx
retq
jmp 0x26dd
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x501a
movq %rbx, %rdi
callq 0x2220
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/StartSpace.cpp
// Function: StartSpace::StartSpace()
StartSpace::StartSpace() {
    Space::roomName = "Blast Site";
    Space::roomDescription= "It looks like an explosion just took place here. You don't remember what happened though.";
    
    Space::top = new Corridor;
    Space::top->setBottom(this);
    Space::bottom = new SnokeSpace;
    Space::bottom->setTop(this);
    Space::left = nullptr;
    Space::right = new CoreReactor;
    Space::right->setLeft(this);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
callq 0x7548
leaq 0xb334(%rip), %rax      # 0xdaa8
movq %rax, (%rbx)
leaq 0x8(%rbx), %rdi
movq 0x10(%rbx), %rdx
leaq 0x5d7e(%rip), %rcx      # 0x8504
movl $0xa, %r8d
xorl %esi, %esi
callq 0x21c0
leaq 0x28(%rbx), %rdi
movq 0x30(%rbx), %rdx
leaq 0x59af(%rip), %rcx      # 0x8151
movl $0x59, %r8d
xorl %esi, %esi
callq 0x21c0
movl $0x68, %edi
callq 0x2140
movq %rax, %r15
movq %rax, %rdi
callq 0x4408
movq %r15, 0x48(%rbx)
movq %r15, %rdi
movq %rbx, %rsi
callq 0x76b4
movl $0x68, %edi
callq 0x2140
movq %rax, %r15
movq %rax, %rdi
callq 0x2c0c
movq %r15, 0x50(%rbx)
movq %r15, %rdi
movq %rbx, %rsi
callq 0x76ae
movq $0x0, 0x60(%rbx)
movl $0x70, %edi
callq 0x2140
movq %rax, %r15
movq %rax, %rdi
callq 0x3058
movq %r15, 0x58(%rbx)
movq %r15, %rdi
movq %rbx, %rsi
callq 0x76ba
popq %rbx
popq %r14
popq %r15
retq
movq %rax, %r14
movl $0x70, %esi
jmp 0x283d
jmp 0x2835
movq %rax, %r14
movl $0x68, %esi
movq %r15, %rdi
callq 0x2150
jmp 0x284a
movq %rax, %r14
movq %rbx, %rdi
callq 0x75f6
movq %r14, %rdi
callq 0x2220
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/StartSpace.cpp
// Function: StartSpace::StartSpace(Space*, Space*, Space*, Space*)
StartSpace::StartSpace(Space* top, Space* bottom, Space* left, Space* right) {
    this->Space::top = top;
    this->Space::bottom = bottom;
    this->Space::left = left;
    this->Space::right = right;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
movq %r8, %rbx
movq %rcx, %r14
movq %rdx, %r15
movq %rsi, %r12
movq %rdi, %r13
callq 0x7548
leaq 0xb22a(%rip), %rax      # 0xdaa8
movq %rax, (%r13)
movq %r12, 0x48(%r13)
movq %r15, 0x50(%r13)
movq %r14, 0x60(%r13)
movq %rbx, 0x58(%r13)
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/SnokeSpace.cpp
// Function: SnokeSpace::SnokeSpace()
SnokeSpace::SnokeSpace() {
    Space::roomName = "Supreme Leader Snoke";
    Space::roomDescription= "A figure emerges from the back of the room. The dark side emanates greatly. ";
    
    Space::top = nullptr;
    Space::bottom = nullptr;
    Space::left = nullptr;
    Space::right = nullptr;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
callq 0x7548
leaq 0xaed1(%rip), %rax      # 0xdaf0
movq %rax, (%rbx)
leaq 0x8(%rbx), %rdi
movq 0x10(%rbx), %rdx
leaq 0x5678(%rip), %rcx      # 0x82a9
movl $0x14, %r8d
xorl %esi, %esi
callq 0x21c0
leaq 0x28(%rbx), %rdi
movq 0x30(%rbx), %rdx
leaq 0x5671(%rip), %rcx      # 0x82be
movl $0x4c, %r8d
xorl %esi, %esi
callq 0x21c0
xorps %xmm0, %xmm0
movups %xmm0, 0x58(%rbx)
movups %xmm0, 0x48(%rbx)
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movq %rax, %r14
movq %rbx, %rdi
callq 0x75f6
movq %r14, %rdi
callq 0x2220
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/SnokeSpace.cpp
// Function: SnokeSpace::SnokeSpace(Space*, Space*, Space*, Space*)
SnokeSpace::SnokeSpace(Space* top, Space* bottom, Space* left, Space* right) {
    this->Space::top = top;
    this->Space::bottom = bottom;
    this->Space::left = left;
    this->Space::right = right;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
movq %r8, %rbx
movq %rcx, %r14
movq %rdx, %r15
movq %rsi, %r12
movq %rdi, %r13
callq 0x7548
leaq 0xae4c(%rip), %rax      # 0xdaf0
movq %rax, (%r13)
movq %r12, 0x48(%r13)
movq %r15, 0x50(%r13)
movq %r14, 0x60(%r13)
movq %rbx, 0x58(%r13)
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/LaunchBay.cpp
// Function: LaunchBay::LaunchBay()
LaunchBay::LaunchBay() {
    Space::roomName = "Launch Bay";
    Space::roomDescription= "The heart of the Starship. A towering plasma cylinder glow ahead lighting the entire room.";
    
    Space::top = nullptr;
    Space::bottom = nullptr;
    Space::left = nullptr;
    Space::right = nullptr;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
callq 0x7548
leaq 0xad51(%rip), %rax      # 0xdb38
movq %rax, (%rbx)
leaq 0x8(%rbx), %rdi
movq 0x10(%rbx), %rdx
leaq 0x7000(%rip), %rcx      # 0x9df9
movl $0xa, %r8d
xorl %esi, %esi
callq 0x21c0
leaq 0x28(%rbx), %rdi
movq 0x30(%rbx), %rdx
leaq 0x54f6(%rip), %rcx      # 0x830b
movl $0x5a, %r8d
xorl %esi, %esi
callq 0x21c0
xorps %xmm0, %xmm0
movups %xmm0, 0x58(%rbx)
movups %xmm0, 0x48(%rbx)
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movq %rax, %r14
movq %rbx, %rdi
callq 0x75f6
movq %r14, %rdi
callq 0x2220
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/LaunchBay.cpp
// Function: LaunchBay::getChoice[abi:cxx11]()
string LaunchBay::getChoice() {
    cout << "Please select a choice (enter integer): ";
    int choice = getInteger();
    validate(choice, 1, 3);
    cout << endl;
    
    if (choice == 1) {
        return "east";
    } else if (choice == 2) {
        return "items";
    } else {
        return "look";
    }
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x10, %rsp
movq %rdi, %rbx
movq 0xb02b(%rip), %r14      # 0xdfd0
leaq 0x526e(%rip), %rsi      # 0x821a
movl $0x28, %edx
movq %r14, %rdi
callq 0x2160
callq 0x678c
leaq 0xc(%rsp), %r15
movl %eax, (%r15)
movq %r15, %rdi
movl $0x1, %esi
movl $0x3, %edx
callq 0x3d90
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movl (%r15), %eax
leaq 0x10(%rbx), %rcx
movq %rcx, (%rbx)
cmpl $0x2, %eax
je 0x3023
cmpl $0x1, %eax
jne 0x3033
leaq 0x522f(%rip), %rsi      # 0x8249
leaq 0x522c(%rip), %rdx      # 0x824d
jmp 0x3041
leaq 0x522a(%rip), %rsi      # 0x8254
leaq 0x5228(%rip), %rdx      # 0x8259
jmp 0x3041
leaq 0x5220(%rip), %rsi      # 0x825a
leaq 0x521d(%rip), %rdx      # 0x825e
movq %rbx, %rdi
callq 0x2b74
movq %rbx, %rax
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
retq
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/CoreReactor.cpp
// Function: CoreReactor::CoreReactor()
CoreReactor::CoreReactor() {
    Space::roomName = "Core Reactor";
    Space::roomDescription= "The heart of the Starship. A towering plasma cylinder glows ahead lighting the entire room. Maybe there is something useful in here...";
    
    Space::top = new Corridor;
    Space::top->setBottom(this);
    Space::bottom = new DetentionBlock;
    Space::bottom->setTop(this);
    Space::left = nullptr;
    Space::right = new Infirmary;
    Space::right->setLeft(this);
    
    lightsaberAvail = true;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
callq 0x7548
leaq 0xab14(%rip), %rax      # 0xdb80
movq %rax, (%rbx)
leaq 0x8(%rbx), %rdi
movq 0x10(%rbx), %rdx
leaq 0x6c5f(%rip), %rcx      # 0x9cdd
movl $0xc, %r8d
xorl %esi, %esi
callq 0x21c0
leaq 0x28(%rbx), %rdi
movq 0x30(%rbx), %rdx
leaq 0x533c(%rip), %rcx      # 0x83d6
movl $0x86, %r8d
xorl %esi, %esi
callq 0x21c0
movl $0x68, %edi
callq 0x2140
movq %rax, %r15
movq %rax, %rdi
callq 0x4408
movq %r15, 0x48(%rbx)
movq %r15, %rdi
movq %rbx, %rsi
callq 0x76b4
movl $0x70, %edi
callq 0x2140
movq %rax, %r15
movq %rax, %rdi
callq 0x6cbc
movq %r15, 0x50(%rbx)
movq %r15, %rdi
movq %rbx, %rsi
callq 0x76ae
movq $0x0, 0x60(%rbx)
movl $0x70, %edi
callq 0x2140
movq %rax, %r15
movq %rax, %rdi
callq 0x3e18
movq %r15, 0x58(%rbx)
movq %r15, %rdi
movq %rbx, %rsi
callq 0x76ba
movb $0x1, 0x68(%rbx)
popq %rbx
popq %r14
popq %r15
retq
jmp 0x3127
movq %rax, %r14
movl $0x70, %esi
jmp 0x3139
movq %rax, %r14
movl $0x68, %esi
movq %r15, %rdi
callq 0x2150
jmp 0x3146
movq %rax, %r14
movq %rbx, %rdi
callq 0x75f6
movq %r14, %rdi
callq 0x2220
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Map.cpp
// Function: Map::moveNorth()
void Map::moveNorth() {
    if (location->getTop() != nullptr) {
        location = location->getTop();
        printLocation();
    } else {
        cout << "Cannot move in that direction." << endl;
    }
    
}

// Assembly:
pushq %rbx
movq %rdi, %rbx
movq 0x10(%rdi), %rdi
callq 0x7682
testq %rax, %rax
je 0x3818
movq 0x10(%rbx), %rdi
callq 0x7682
movq %rax, 0x10(%rbx)
movq %rbx, %rdi
popq %rbx
jmp 0x385c
movq 0xa7b1(%rip), %rbx      # 0xdfd0
leaq 0x4cf9(%rip), %rsi      # 0x851f
movl $0x1e, %edx
movq %rbx, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
popq %rbx
jmp 0x20d0
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Map.cpp
// Function: Map::moveSouth()
void Map::moveSouth() {
    if (location->getBottom() != nullptr) {
        location = location->getBottom();
        printLocation();
    } else {
        cout << "Cannot move in that direction." << endl;
    }
}

// Assembly:
pushq %rbx
movq %rdi, %rbx
movq 0x10(%rdi), %rdi
callq 0x7688
testq %rax, %rax
je 0x3b10
movq 0x10(%rbx), %rdi
callq 0x7688
movq %rax, 0x10(%rbx)
movq %rbx, %rdi
popq %rbx
jmp 0x385c
movq 0xa4b9(%rip), %rbx      # 0xdfd0
leaq 0x4a01(%rip), %rsi      # 0x851f
movl $0x1e, %edx
movq %rbx, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
popq %rbx
jmp 0x20d0
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Map.cpp
// Function: Map::moveEast()
void Map::moveEast() {
    if (location->getRight() != nullptr) {
        location = location->getRight();
        printLocation();
    } else {
        cout << "Cannot move in that direction." << endl;
    }
}

// Assembly:
pushq %rbx
movq %rdi, %rbx
movq 0x10(%rdi), %rdi
callq 0x7694
testq %rax, %rax
je 0x3b7c
movq 0x10(%rbx), %rdi
callq 0x7694
movq %rax, 0x10(%rbx)
movq %rbx, %rdi
popq %rbx
jmp 0x385c
movq 0xa44d(%rip), %rbx      # 0xdfd0
leaq 0x4995(%rip), %rsi      # 0x851f
movl $0x1e, %edx
movq %rbx, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
popq %rbx
jmp 0x20d0
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Map.cpp
// Function: Map::moveWest()
void Map::moveWest() {
    if (location->getLeft() != nullptr) {
        location = location->getLeft();
        printLocation();
    } else {
        cout << "Cannot move in that direction." << endl;
    }
}

// Assembly:
pushq %rbx
movq %rdi, %rbx
movq 0x10(%rdi), %rdi
callq 0x768e
testq %rax, %rax
je 0x3be8
movq 0x10(%rbx), %rdi
callq 0x768e
movq %rax, 0x10(%rbx)
movq %rbx, %rdi
popq %rbx
jmp 0x385c
movq 0xa3e1(%rip), %rbx      # 0xdfd0
leaq 0x4929(%rip), %rsi      # 0x851f
movl $0x1e, %edx
movq %rbx, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
popq %rbx
jmp 0x20d0
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Map.cpp
// Function: Map::addSpace(Space*&, Space*&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
void Map::addSpace(Space*& location, Space*& newSpace, string side) {
    if (side == "right") {
        location->setRight(newSpace);
        newSpace->setLeft(location);
        newSpace = nullptr;
    } else if (side == "left") {
        location->setLeft(newSpace);
        newSpace->setRight(location);
        newSpace = nullptr;
    } else if (side == "top") {
        location->setTop(newSpace);
        newSpace->setBottom(location);
        newSpace = nullptr;
    } else {
        location->setBottom(newSpace);
        newSpace->setTop(location);
        newSpace = nullptr;
    }
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rcx, %r15
movq %rdx, %rbx
movq %rsi, %r14
leaq 0x4946(%rip), %rsi      # 0x859f
movq %rcx, %rdi
callq 0x2050
testl %eax, %eax
je 0x3ca3
leaq 0x4939(%rip), %rsi      # 0x85a5
movq %r15, %rdi
callq 0x2050
testl %eax, %eax
je 0x3cbb
leaq 0x492b(%rip), %rsi      # 0x85aa
movq %r15, %rdi
callq 0x2050
movq (%r14), %rdi
movq (%rbx), %rsi
testl %eax, %eax
je 0x3cd3
callq 0x76b4
movq (%rbx), %rdi
movq (%r14), %rsi
callq 0x76ae
jmp 0x3ce3
movq (%r14), %rdi
movq (%rbx), %rsi
callq 0x76c0
movq (%rbx), %rdi
movq (%r14), %rsi
callq 0x76ba
jmp 0x3ce3
movq (%r14), %rdi
movq (%rbx), %rsi
callq 0x76ba
movq (%rbx), %rdi
movq (%r14), %rsi
callq 0x76c0
jmp 0x3ce3
callq 0x76ae
movq (%rbx), %rdi
movq (%r14), %rsi
callq 0x76b4
movq $0x0, (%rbx)
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Map.cpp
// Function: Map::connectSpace(Space*, Space*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
void Map::connectSpace(Space* location, Space* connection, string side) {
    if (side == "right") {
        location->setRight(connection);
        connection->setLeft(location);
    } else if (side == "left") {
        location->setLeft(connection);
        connection->setRight(location);
    } else if (side == "top") {
        location->setTop(connection);
        connection->setRight(location);
    } else {
        location->setBottom(connection);
        connection->setTop(location);
    }
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rcx, %r15
movq %rdx, %r14
movq %rsi, %rbx
leaq 0x489a(%rip), %rsi      # 0x859f
movq %rcx, %rdi
callq 0x2050
testl %eax, %eax
je 0x3d52
leaq 0x488d(%rip), %rsi      # 0x85a5
movq %r15, %rdi
callq 0x2050
testl %eax, %eax
je 0x3d6d
leaq 0x487f(%rip), %rsi      # 0x85aa
movq %r15, %rdi
callq 0x2050
movq %rbx, %rdi
movq %r14, %rsi
testl %eax, %eax
je 0x3d7a
callq 0x76b4
movq %r14, %rdi
movq %rbx, %rsi
popq %rbx
popq %r14
popq %r15
jmp 0x76ae
movq %rbx, %rdi
movq %r14, %rsi
callq 0x76c0
movq %r14, %rdi
movq %rbx, %rsi
popq %rbx
popq %r14
popq %r15
jmp 0x76ba
movq %rbx, %rdi
movq %r14, %rsi
callq 0x76ba
jmp 0x3d7f
callq 0x76ae
movq %r14, %rdi
movq %rbx, %rsi
popq %rbx
popq %r14
popq %r15
jmp 0x76c0
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/validate.cpp
// Function: validate(int&, int, int)
void validate(int& selection, int min, int max) {
    while(selection < min || selection > max) {
        cout << "The number you input is invalid. Please enter a new number: ";
        selection = getInteger();
        cout << endl;
    }
}

// Assembly:
movl (%rdi), %eax
cmpl %esi, %eax
setge %cl
cmpl %edx, %eax
setle %al
testb %al, %cl
jne 0x3e15
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
movl %edx, %ebx
movl %esi, %ebp
movq %rdi, %r14
movq 0xa21a(%rip), %r15      # 0xdfd0
leaq 0x47f1(%rip), %r12      # 0x85ae
movl $0x3c, %edx
movq %r15, %rdi
movq %r12, %rsi
callq 0x2160
callq 0x678c
movl %eax, (%r14)
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movl (%r14), %eax
cmpl %ebp, %eax
setl %cl
cmpl %ebx, %eax
setg %al
orb %cl, %al
jne 0x3dbd
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Infirmary.cpp
// Function: Infirmary::Infirmary()
Infirmary::Infirmary() {
    Space::roomName = "Infirmary";
    Space::roomDescription= "There are a few med pods in here... a 20 min nap sounds in order.";
    
    Space::top = nullptr;
    Space::bottom = nullptr;
    Space::left = nullptr;
    Space::right = new Armory;
    Space::right->setLeft(this);
    
    medPodAvail = true;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
callq 0x7548
leaq 0x9d9c(%rip), %rax      # 0xdbc8
movq %rax, (%rbx)
leaq 0x8(%rbx), %rdi
movq 0x10(%rbx), %rdx
leaq 0x4629(%rip), %rcx      # 0x8467
movl $0x9, %r8d
xorl %esi, %esi
callq 0x21c0
leaq 0x28(%rbx), %rdi
movq 0x30(%rbx), %rdx
leaq 0x47ad(%rip), %rcx      # 0x8607
movl $0x41, %r8d
xorl %esi, %esi
callq 0x21c0
movq $0x0, 0x60(%rbx)
xorps %xmm0, %xmm0
movups %xmm0, 0x48(%rbx)
movl $0x70, %edi
callq 0x2140
movq %rax, %r14
movq %rax, %rdi
callq 0x492c
movq %r14, 0x58(%rbx)
movq %r14, %rdi
movq %rbx, %rsi
callq 0x76ba
movb $0x1, 0x68(%rbx)
popq %rbx
popq %r14
popq %r15
retq
movq %rax, %r15
movl $0x70, %esi
movq %r14, %rdi
callq 0x2150
jmp 0x3eb9
movq %rax, %r15
movq %rbx, %rdi
callq 0x75f6
movq %r15, %rdi
callq 0x2220
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Infirmary.cpp
// Function: Infirmary::printChoices()
void Infirmary::printChoices() {
    if (medPodAvail) {
        cout << "1) East - Armory" << endl
             << "2) West - Core Reactor" << endl
             << "3) Item Inventory " << endl
             << "4) Look around" << endl
             << "5) Use Med Pod Bay" << endl << endl;
    } else {
        cout << "1) East - Armory" << endl
        << "2) West - Core Reactor" << endl
        << "3) Item Inventory " << endl
        << "4) Look around" << endl << endl;
    }
}

// Assembly:
pushq %rbp
pushq %rbx
pushq %rax
movb 0x68(%rdi), %bpl
movq 0xa06c(%rip), %rbx      # 0xdfd0
leaq 0x46de(%rip), %rsi      # 0x8649
movl $0x10, %edx
movq %rbx, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
leaq 0x46b1(%rip), %rsi      # 0x865a
movl $0x16, %edx
movq %rax, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
leaq 0x468a(%rip), %rsi      # 0x8671
movl $0x12, %edx
movq %rax, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
leaq 0x465f(%rip), %rsi      # 0x8684
movl $0xe, %edx
movq %rax, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
cmpb $0x1, %bpl
jne 0x40a0
leaq 0x462a(%rip), %rsi      # 0x8693
movl $0x12, %edx
movq %rbx, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
addq $0x8, %rsp
popq %rbx
popq %rbp
jmp 0x20d0
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Corridor.cpp
// Function: Corridor::Corridor()
Corridor::Corridor() {
    Space::roomName = "Corridor";
    Space::roomDescription= "A long hallway on the Starship with locked doors lining the walls. This seems to be a dead end.";
    
    Space::top = nullptr;
    Space::bottom = nullptr;
    Space::left = nullptr;
    Space::right = nullptr;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
callq 0x7548
leaq 0x97f5(%rip), %rax      # 0xdc10
movq %rax, (%rbx)
leaq 0x8(%rbx), %rdi
movq 0x10(%rbx), %rdx
leaq 0x4280(%rip), %rcx      # 0x86ad
movl $0x8, %r8d
xorl %esi, %esi
callq 0x21c0
leaq 0x28(%rbx), %rdi
movq 0x30(%rbx), %rdx
leaq 0x426d(%rip), %rcx      # 0x86b6
movl $0x5f, %r8d
xorl %esi, %esi
callq 0x21c0
xorps %xmm0, %xmm0
movups %xmm0, 0x58(%rbx)
movups %xmm0, 0x48(%rbx)
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movq %rax, %r14
movq %rbx, %rdi
callq 0x75f6
movq %r14, %rdi
callq 0x2220
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Corridor.cpp
// Function: Corridor::getChoice[abi:cxx11]()
string Corridor::getChoice() {
    cout << "Please select a choice (enter integer): ";
    int choice = getInteger();
    validate(choice, 1, 3);
    cout << endl;
    
    if (choice == 1) {
        return "south";
    } else if (choice == 2) {
        return "items";
    } else {
        return "look";
    }
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x10, %rsp
movq %rdi, %rbx
movq 0x99f7(%rip), %r14      # 0xdfd0
leaq 0x3c3a(%rip), %rsi      # 0x821a
movl $0x28, %edx
movq %r14, %rdi
callq 0x2160
callq 0x678c
leaq 0xc(%rsp), %r15
movl %eax, (%r15)
movq %r15, %rdi
movl $0x1, %esi
movl $0x3, %edx
callq 0x3d90
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movl (%r15), %eax
leaq 0x10(%rbx), %rcx
movq %rcx, (%rbx)
cmpl $0x2, %eax
je 0x4657
cmpl $0x1, %eax
jne 0x4667
leaq 0x3c00(%rip), %rsi      # 0x824e
leaq 0x3bfe(%rip), %rdx      # 0x8253
jmp 0x4675
leaq 0x3bf6(%rip), %rsi      # 0x8254
leaq 0x3bf4(%rip), %rdx      # 0x8259
jmp 0x4675
leaq 0x3bec(%rip), %rsi      # 0x825a
leaq 0x3be9(%rip), %rdx      # 0x825e
movq %rbx, %rdi
callq 0x2b74
movq %rbx, %rax
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
retq
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/randomNumber.cpp
// Function: randomNumber(int, int)
int randomNumber(int min, int max) {
    std::random_device rd;                             //Create seed object
    std::minstd_rand0 engine(rd());                    //Seed the engine
    std::uniform_int_distribution<int> work(min, max); //Set range for distribution
    int randomNumber = work(engine);
    
    return randomNumber;
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
subq $0x13a0, %rsp           # imm = 0x13A0
movl %esi, %ebx
movl %edi, %ebp
leaq 0x18(%rsp), %r14
movq %r14, %rdi
callq 0x472a
movq %r14, %rdi
callq 0x2180
movl %eax, %ecx
leaq (%rcx,%rcx,2), %rcx
shrq $0x20, %rcx
movl %eax, %edx
subl %ecx, %edx
shrl %edx
addl %ecx, %edx
shrl $0x1e, %edx
movl %edx, %ecx
shll $0x1f, %ecx
orl %edx, %ecx
leal (%rax,%rcx), %edx
cmpl $0x1, %edx
adcl %eax, %ecx
leaq 0x8(%rsp), %rsi
movq %rcx, (%rsi)
leaq 0x10(%rsp), %rdi
movl %ebp, (%rdi)
movl %ebx, 0x4(%rdi)
movq %rdi, %rdx
callq 0x47a4
movl %eax, %ebx
leaq 0x18(%rsp), %rdi
callq 0x2120
movl %ebx, %eax
addq $0x13a0, %rsp           # imm = 0x13A0
popq %rbx
popq %r14
popq %rbp
retq
jmp 0x4721
jmp 0x470c
movq %rax, %rbx
leaq 0x18(%rsp), %rdi
callq 0x2120
movq %rbx, %rdi
callq 0x2220
movq %rax, %rdi
callq 0x2b69
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Armory.cpp
// Function: Armory::Armory()
Armory::Armory() {
    Space::roomName = "Armory";
    Space::roomDescription= "The space where all the weapons are stored on the ship. Mostly plasma blasters but you are too cool for those.";
    
    Space::top = new Corridor;
    Space::top->setBottom(this);
    Space::bottom = new Corridor;
    Space::top->setTop(this);
    Space::left = nullptr;
    Space::right = new Door;
    Space::right->setLeft(this);
    
    codeAvail = true;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
callq 0x7548
leaq 0x9318(%rip), %rax      # 0xdc58
movq %rax, (%rbx)
leaq 0x8(%rbx), %rdi
movq 0x10(%rbx), %rdx
leaq 0x3d01(%rip), %rcx      # 0x8653
movl $0x6, %r8d
xorl %esi, %esi
callq 0x21c0
leaq 0x28(%rbx), %rdi
movq 0x30(%rbx), %rdx
leaq 0x3dfa(%rip), %rcx      # 0x8768
movl $0x6e, %r8d
xorl %esi, %esi
callq 0x21c0
movl $0x68, %edi
callq 0x2140
movq %rax, %r15
movq %rax, %rdi
callq 0x4408
movq %r15, 0x48(%rbx)
movq %r15, %rdi
movq %rbx, %rsi
callq 0x76b4
movl $0x68, %edi
callq 0x2140
movq %rax, %r15
movq %rax, %rdi
callq 0x4408
movq %r15, 0x50(%rbx)
movq 0x48(%rbx), %rdi
movq %rbx, %rsi
callq 0x76ae
movq $0x0, 0x60(%rbx)
movl $0x68, %edi
callq 0x2140
movq %rax, %r15
movq %rax, %rdi
callq 0x68f4
movq %r15, 0x58(%rbx)
movq %r15, %rdi
movq %rbx, %rsi
callq 0x76ba
movb $0x1, 0x68(%rbx)
popq %rbx
popq %r14
popq %r15
retq
jmp 0x49fe
jmp 0x49fe
movq %rax, %r14
movl $0x68, %esi
movq %r15, %rdi
callq 0x2150
jmp 0x4a13
movq %rax, %r14
movq %rbx, %rdi
callq 0x75f6
movq %r14, %rdi
callq 0x2220
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Armory.cpp
// Function: Armory::printChoices()
void Armory::printChoices() {
    if (codeAvail) {
        cout << "1) North - Mysterious Room" << endl
             << "2) East - Startanium Door" << endl
             << "3) South - Mysterious Room" << endl
             << "4) West - Infirmary" << endl
             << "5) Item Inventory " << endl
             << "6) Look around" << endl
             << "7) Pick up crumpled paper" << endl << endl;
    } else {
        cout << "1) North - Mysterious Room" << endl
        << "2) East - Startanium Door" << endl
        << "3) South - Mysterious Room" << endl
        << "4) West - Infirmary" << endl
        << "5) Item Inventory " << endl
        << "6) Look around" << endl << endl;
    }
}

// Assembly:
pushq %rbp
pushq %rbx
pushq %rax
movb 0x68(%rdi), %bpl
movq 0x94e6(%rip), %rbx      # 0xdfd0
leaq 0x36ba(%rip), %rsi      # 0x81ab
movl $0x1a, %edx
movq %rbx, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
leaq 0x3ca8(%rip), %rsi      # 0x87d7
movl $0x19, %edx
movq %rax, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
leaq 0x3670(%rip), %rsi      # 0x81dd
movl $0x1a, %edx
movq %rax, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
leaq 0x3c46(%rip), %rsi      # 0x87f1
movl $0x13, %edx
movq %rax, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
leaq 0x38bb(%rip), %rsi      # 0x84a4
movl $0x12, %edx
movq %rax, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
leaq 0x3890(%rip), %rsi      # 0x84b7
movl $0xe, %edx
movq %rax, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
cmpb $0x1, %bpl
jne 0x4ca2
leaq 0x3b9a(%rip), %rsi      # 0x8805
movl $0x19, %edx
movq %rbx, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
addq $0x8, %rsp
popq %rbx
popq %rbp
jmp 0x20d0
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Game.cpp
// Function: Game::Game()
Game::Game() {
    playerName = "Luke";
    exitGame = false;
    gameOver = false;
    playerHealth = 10;
    doorCode = 1225;
    kyloWinGame = true;
    chewbaccaFree = false;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
leaq 0x10(%rdi), %r12
movq %r12, (%rdi)
xorl %eax, %eax
movq %rax, 0x8(%rdi)
movb $0x0, 0x10(%rdi)
leaq 0x30(%rdi), %r14
xorps %xmm0, %xmm0
movups %xmm0, 0x30(%rdi)
movq %rax, 0x40(%rdi)
leaq 0x385d(%rip), %rcx      # 0x881f
movl $0x4, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x21c0
movl $0x100, 0x20(%rbx)      # imm = 0x100
movabsq $0x4c90000000a, %rax    # imm = 0x4C90000000A
movq %rax, 0x24(%rbx)
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movq %rax, %r15
movq %r14, %rdi
callq 0x6330
movq (%rbx), %rdi
cmpq %r12, %rdi
je 0x5011
movq (%r12), %rsi
incq %rsi
callq 0x2150
movq %r15, %rdi
callq 0x2220
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Game.cpp
// Function: Game::doorInteraction(Map&)
void Game::doorInteraction(Map& map) {
    cout << map.getLocation()->getRoomDescription() << endl << endl;
    
    cout << "Please enter an access code: ";
    int userInput = getInteger();
    cout << endl;
    if (userInput == doorCode) {   //Door code is 1225 and found on paper description
        cout << "Access GRANTED (The door whirs open with a whoosh)" << endl << endl;
        map.moveSouth();
        pause();
    } else {
        cout << "Access DENIED (I guess you will be admiring the blasters a little longer)"       << endl << endl;
        map.moveWest();
        pause();
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x20, %rsp
movq %rsi, %rbx
movq %rdi, %r15
movq %rsi, %rdi
callq 0x3c3e
movq %rsp, %r14
movq %r14, %rdi
movq %rax, %rsi
callq 0x765e
movq (%r14), %rsi
movq 0x8(%r14), %rdx
movq 0x8890(%rip), %r14      # 0xdfd0
movq %r14, %rdi
callq 0x2160
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x57b7
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x2150
leaq 0x3644(%rip), %rsi      # 0x8e02
movl $0x1d, %edx
movq %r14, %rdi
callq 0x2160
callq 0x678c
movl %eax, %ebp
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
cmpl 0x28(%r15), %ebp
jne 0x586e
leaq 0x361a(%rip), %rsi      # 0x8e20
movl $0x32, %edx
movq %r14, %rdi
callq 0x2160
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rbx, %rdi
callq 0x3ae8
jmp 0x58db
leaq 0x35de(%rip), %rsi      # 0x8e53
movl $0x49, %edx
movq %r14, %rdi
callq 0x2160
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rbx, %rdi
callq 0x3bc0
callq 0x5da4
addq $0x20, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x590b
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x2150
movq %rbx, %rdi
callq 0x2220
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Game.cpp
// Function: Game::winMessage()
void Game::winMessage() {
    if (chewbaccaFree) {
    cout << "You quickly glance around the Launch Bay. Luckily, there is one star ship available for you to commandeer and escape the ship. As you board the ship, Poe and Chewbacca run up the ramp to give you a high five for defeating Kylo Ren. The action music again starts to blare as alarms go off in the launch bay. You fire up the engines and take off from the ship knowing that Supreme Leader Snoke still needs to be found and dealt with. After a long deliberation with Poe and Chewbacca, you all decide to stop at the Mos Eisley cantina for a well deserved break! As you engage the light drive, the ship you left behind disintegrates into billions of pieces... Chewy must have made some modifications in the core reactor." << endl << endl;
    } else {
        cout << "You quickly glance around the Launch Bay. Luckily, there is one star ship available for you to commandeer and escape the ship. As you board the ship, Poe runs up the ramp to give you a high five for defeating Kylo Ren. The action music again starts to blare as alarms go off in the launch bay. You fire up the engines and take off from the ship knowing that Supreme Leader Snoke still needs to be found and dealt with. After a long deliberation with Poe, you all decide to stop at the Mos Eisley cantina for a well deserved break! As you engage the light drive, you hear a faint grrrwaaaaaarggggh and can't help but to think that someone was left in the detention block. Oh well... " << endl << endl;
    }
    
    cout << "Congratulation you have COMPLETED this Star Wars adventure!" << endl << endl;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
cmpb $0x1, 0x23(%rdi)
jne 0x5cbd
movq 0x8321(%rip), %rdi      # 0xdfd0
leaq 0x3899(%rip), %rsi      # 0x954f
movl $0x2cb, %edx            # imm = 0x2CB
jmp 0x5cd0
movq 0x830c(%rip), %rdi      # 0xdfd0
leaq 0x3b50(%rip), %rsi      # 0x981b
movl $0x2aa, %edx            # imm = 0x2AA
callq 0x2160
movq 0x82f4(%rip), %rbx      # 0xdfd0
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq 0x3d92(%rip), %rsi      # 0x9ac6
movl $0x3b, %edx
movq %rbx, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
addq $0x8, %rsp
popq %rbx
popq %r14
jmp 0x20d0
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Game.cpp
// Function: Game::printItems()
void Game::printItems() {
    cout << setw(18) << "Inventory" << endl  //Header
    << "---------------------------------" << endl;
    for (int i = 0; i < inventory.size(); i++) {
        cout << inventory[i].itemName << ": " << inventory[i].itemDescription << endl;
    }
    cout << endl;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %r14
movq 0x7f6d(%rip), %rbx      # 0xdfd0
movq (%rbx), %rax
movq -0x18(%rax), %rax
movq $0x12, 0x10(%rbx,%rax)
leaq 0x2cda(%rip), %rsi      # 0x8d54
movl $0x9, %edx
movq %rbx, %rdi
callq 0x2160
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %r15
leaq 0x2ca6(%rip), %rsi      # 0x8d5e
movl $0x21, %edx
movq %rax, %rdi
callq 0x2160
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq 0x30(%r14), %rax
cmpq %rax, 0x38(%r14)
je 0x618b
xorl %ebp, %ebp
movq 0x7ecd(%rip), %r15      # 0xdfd0
leaq 0x2136(%rip), %r12      # 0x8240
xorl %ebx, %ebx
movq (%rax,%rbp), %rsi
movq 0x8(%rax,%rbp), %rdx
movq %r15, %rdi
callq 0x2160
movq %rax, %r13
movl $0x2, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0x2160
movq 0x30(%r14), %rax
movq 0x20(%rax,%rbp), %rsi
movq 0x28(%rax,%rbp), %rdx
movq %r13, %rdi
callq 0x2160
movq %rax, %r13
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %r13, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
incq %rbx
movq 0x30(%r14), %rax
movq 0x38(%r14), %rcx
subq %rax, %rcx
sarq $0x6, %rcx
addq $0x40, %rbp
cmpq %rbx, %rcx
ja 0x610c
movq 0x7e3e(%rip), %rbx      # 0xdfd0
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x20d0
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Game.cpp
// Function: Game::addLightsaber()
void Game::addLightsaber() {
    Items lightsaber;
    lightsaber.itemName = "GREEN LIGHT SABER: ";
    lightsaber.itemDescription = "The weapon of choice for a jedi.";
    inventory.push_back(lightsaber);
    kyloWinGame = false;
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x48, %rsp
movq %rdi, %rbx
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x4300
movq 0x8(%r14), %rdx
leaq 0x2b96(%rip), %rcx      # 0x8d80
movl $0x13, %r8d
movq %r14, %rdi
xorl %esi, %esi
callq 0x21c0
leaq 0x28(%rsp), %rdi
movq 0x8(%rdi), %rdx
leaq 0x2b8a(%rip), %rcx      # 0x8d94
movl $0x20, %r8d
xorl %esi, %esi
callq 0x21c0
leaq 0x30(%rbx), %rdi
leaq 0x8(%rsp), %rsi
callq 0x6360
movb $0x0, 0x21(%rbx)
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6244
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x2150
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x625f
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2150
addq $0x48, %rsp
popq %rbx
popq %r14
retq
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x638a
movq %rbx, %rdi
callq 0x2220
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Game.cpp
// Function: Game::addPaper()
void Game::addPaper() {
    Items accessCode;
    accessCode.itemName = "CRUMPLED PAPER: ";
    accessCode.itemDescription = "There is some writing in Ewokese: 1225... how mysterious...";
    inventory.push_back(accessCode);
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x48, %rsp
movq %rdi, %rbx
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x4300
movq 0x8(%r14), %rdx
leaq 0x2b17(%rip), %rcx      # 0x8db5
movl $0x10, %r8d
movq %r14, %rdi
xorl %esi, %esi
callq 0x21c0
leaq 0x28(%rsp), %rdi
movq 0x8(%rdi), %rdx
leaq 0x2b08(%rip), %rcx      # 0x8dc6
movl $0x3b, %r8d
xorl %esi, %esi
callq 0x21c0
addq $0x30, %rbx
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x6360
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x62f7
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x2150
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6312
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2150
addq $0x48, %rsp
popq %rbx
popq %r14
retq
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x638a
movq %rbx, %rdi
callq 0x2220
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/getInteger.cpp
// Function: getInteger()
int getInteger() {                      //See code citation in comment at top of page
    int integer;
    while (true) {
        string line;
        getline(cin, line);
        
        istringstream stream(line);
        stream >> integer;
        if (!stream.fail() && stream.eof() && integer >= 0) { //Num Validation & Pos Number Validation
            break;
        } else {
            cout << "The value you entered is not a valid integer. Please \n"
                    << "enter another integer: ";
        }
    }
    
    return integer;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x1a8, %rsp            # imm = 0x1A8
leaq 0x18(%rsp), %r13
movq 0x7837(%rip), %r14      # 0xdfe0
leaq 0x8(%rsp), %r15
leaq 0x28(%rsp), %r12
movq 0x7816(%rip), %rbx      # 0xdfd0
movq %r13, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
movb $0x0, 0x18(%rsp)
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %edx
movq %r14, %rdi
movq %r15, %rsi
callq 0x2240
movq %r12, %rdi
movq %r15, %rsi
movl $0x8, %edx
callq 0x21e0
movq %r12, %rdi
leaq 0x4(%rsp), %rsi
callq 0x20c0
movq 0x28(%rsp), %rax
movq -0x18(%rax), %rax
movl 0x48(%rsp,%rax), %eax
testb $0x5, %al
je 0x6886
movl $0x36, %edx
movq %rbx, %rdi
leaq 0x3308(%rip), %rsi      # 0x9b34
callq 0x2160
movb $0x1, %bpl
movl $0x17, %edx
movq %rbx, %rdi
leaq 0x3328(%rip), %rsi      # 0x9b6b
callq 0x2160
movq %r12, %rdi
movq 0x7776(%rip), %rsi      # 0xdfc8
callq 0x2190
leaq 0xa0(%rsp), %rdi
callq 0x2060
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x687b
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2150
testb %bpl, %bpl
jne 0x67ba
jmp 0x6895
testb $0x2, %al
je 0x681d
cmpl $0x0, 0x4(%rsp)
js 0x681d
xorl %ebp, %ebp
jmp 0x6848
movl 0x4(%rsp), %eax
addq $0x1a8, %rsp            # imm = 0x1A8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x68ad
movq %rax, %rbx
jmp 0x68d3
movq %rax, %rbx
movq 0x770c(%rip), %rsi      # 0xdfc8
leaq 0x28(%rsp), %rdi
callq 0x2190
leaq 0xa0(%rsp), %rdi
callq 0x2060
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x68ea
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2150
movq %rbx, %rdi
callq 0x2220
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/Door.cpp
// Function: Door::Door()
Door::Door() {
    Space::roomName = "Door";
    Space::roomDescription= "There appears to be a big startanium door impeding the way. It looks like some access code needs to be entered.";
    
    Space::top = new Corridor;
    Space::top->setBottom(this);
    Space::bottom = new KyloSpace;
    Space::bottom->setTop(this);
    Space::left = nullptr;
    Space::right = nullptr;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
callq 0x7548
leaq 0x7398(%rip), %rax      # 0xdca0
movq %rax, (%rbx)
leaq 0x8(%rbx), %rdi
movq 0x10(%rbx), %rdx
leaq 0x33dd(%rip), %rcx      # 0x9cf7
movl $0x4, %r8d
xorl %esi, %esi
callq 0x21c0
leaq 0x28(%rbx), %rdi
movq 0x30(%rbx), %rdx
leaq 0x3264(%rip), %rcx      # 0x9b9a
movl $0x6f, %r8d
xorl %esi, %esi
callq 0x21c0
movl $0x68, %edi
callq 0x2140
movq %rax, %r15
movq %rax, %rdi
callq 0x4408
movq %r15, 0x48(%rbx)
movq %r15, %rdi
movq %rbx, %rsi
callq 0x76b4
movl $0x68, %edi
callq 0x2140
movq %rax, %r15
movq %rax, %rdi
callq 0x7144
movq %r15, 0x50(%rbx)
movq %r15, %rdi
movq %rbx, %rsi
callq 0x76ae
xorps %xmm0, %xmm0
movups %xmm0, 0x58(%rbx)
popq %rbx
popq %r14
popq %r15
retq
jmp 0x699a
movq %rax, %r14
movl $0x68, %esi
movq %r15, %rdi
callq 0x2150
jmp 0x69af
movq %rax, %r14
movq %rbx, %rdi
callq 0x75f6
movq %r14, %rdi
callq 0x2220
nop
// File: /workspace/github_cpp_makefile_star2_O3/venGaza[P]starwars/src/DetentionBlock.cpp
// Function: DetentionBlock::DetentionBlock()
DetentionBlock::DetentionBlock() {
    Space::roomName = "Detention Block";
    Space::roomDescription= "A bunch of cells line the wall of the room. It appears there is only one prisoner currently in the First Order's captivity. Who could it be?";
    
    Space::top = nullptr;
    Space::bottom = nullptr;
    Space::left = nullptr;
    Space::right = nullptr;
    
    doorOpen = false;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
callq 0x7548
leaq 0x7019(%rip), %rax      # 0xdce8
movq %rax, (%rbx)
leaq 0x8(%rbx), %rdi
movq 0x10(%rbx), %rdx
leaq 0x2f54(%rip), %rcx      # 0x9c35
movl $0xf, %r8d
xorl %esi, %esi
callq 0x21c0
leaq 0x28(%rbx), %rdi
movq 0x30(%rbx), %rdx
leaq 0x2f48(%rip), %rcx      # 0x9c45
movl $0x8c, %r8d
xorl %esi, %esi
callq 0x21c0
xorps %xmm0, %xmm0
movups %xmm0, 0x58(%rbx)
movups %xmm0, 0x48(%rbx)
movb $0x0, 0x68(%rbx)
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movq %rax, %r14
movq %rbx, %rdi
callq 0x75f6
movq %r14, %rdi
callq 0x2220