// File: angelapwen[P]text-based-game/game.cpp
// Function: Game::commitMurder()
void Game::commitMurder() {
	string weaponChoice;

	cout <<
	     "\n********************************************************************************"
	     << endl;
	cout << "Mr. Boddy has entered the " << murderRoom << "." << endl;
	cout << "You have successfully collected at least four unique weapons." <<
	     endl;
	cout << "This is your opportunity to murder him and flee the scene!" << endl;
	cout << "\nPress enter when you are ready." << endl;
	getchar();
	cout << "Which weapon would you like to use to kill Mr. Boddy?" << endl;
	cout << "The contents of your satchel are: " << endl;

	// Print weapons in the satchel
	satchel->printWeapons();

	cout << "Type your weapon of choice exactly as printed above." << endl;
	weaponChoice = weaponValidation();

	cout << "\nYou advance towards Mr. Boddy, " << weaponChoice << " in hand."
																				  << endl;
	cout << "He smiles at you. \"";
	if (character == 's') {
		cout << "Miss Scarlet!";
	}
	else if (character == 'm') {
		cout << "Colonel Mustard!";
	}
	else if (character == 'w') {
		cout << "Mrs. White!";
	}
	else if (character == 'g') {
		cout << "Mr. Green!";
	}
	else if (character == 'p') {
		cout << "Mrs. Peacock!";
	}
	else {
		cout << "Professor Plum!";
	}
	cout << " Where did you come from?\"" << endl;
	cout << "You do not hesitate." << endl;
	cout << "After all, Hydra is counting on you." << endl;

	if (weaponChoice == "pipe") {
	cout << "You have murdered Mr. Boddy, with the lead " <<
	     weaponChoice << ", in the " << murderRoom << "." << endl;
	}
	else {
		cout << "You have murdered Mr. Boddy, with the " <<
		     weaponChoice << ", in the " << murderRoom << "." << endl;
	}

	murder = true;

	cout << "\nPress enter to continue." << endl;
	getchar();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x150, %rsp            # imm = 0x150
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x68(%rbp)
leaq -0x28(%rbp), %rdi
callq 0x32f0
movq 0x12eb9(%rip), %rdi     # 0x1afd0
leaq 0xa9cb(%rip), %rsi      # 0x12ae9
callq 0x3200
movq %rax, -0x60(%rbp)
jmp 0x8129
movq -0x60(%rbp), %rdi
movq 0x12e8c(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x813b
movq 0x12e8e(%rip), %rdi     # 0x1afd0
leaq 0xc588(%rip), %rsi      # 0x146d1
callq 0x3200
movq %rax, -0x70(%rbp)
jmp 0x8154
movq -0x70(%rbp), %rdi
movq -0x68(%rbp), %rsi
addq $0x68, %rsi
callq 0x31d0
movq %rax, -0x78(%rbp)
jmp 0x816b
movq -0x78(%rbp), %rdi
leaq 0xaed6(%rip), %rsi      # 0x1304c
callq 0x3200
movq %rax, -0x80(%rbp)
jmp 0x8181
movq -0x80(%rbp), %rdi
movq 0x12e34(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x8193
movq 0x12e36(%rip), %rdi     # 0x1afd0
leaq 0xc54b(%rip), %rsi      # 0x146ec
callq 0x3200
movq %rax, -0x88(%rbp)
jmp 0x81af
movq -0x88(%rbp), %rdi
movq 0x12e03(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x81c4
movq 0x12e05(%rip), %rdi     # 0x1afd0
leaq 0xc558(%rip), %rsi      # 0x1472a
callq 0x3200
movq %rax, -0x90(%rbp)
jmp 0x81e0
movq -0x90(%rbp), %rdi
movq 0x12dd2(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x81f5
movq 0x12dd4(%rip), %rdi     # 0x1afd0
leaq 0xc562(%rip), %rsi      # 0x14765
callq 0x3200
movq %rax, -0x98(%rbp)
jmp 0x8211
movq -0x98(%rbp), %rdi
movq 0x12da1(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x8226
callq 0x3300
jmp 0x822d
movq 0x12d9c(%rip), %rdi     # 0x1afd0
leaq 0xc54b(%rip), %rsi      # 0x14786
callq 0x3200
movq %rax, -0xa0(%rbp)
jmp 0x8249
movq -0xa0(%rbp), %rdi
movq 0x12d69(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x825e
movq 0x12d6b(%rip), %rdi     # 0x1afd0
leaq 0xc550(%rip), %rsi      # 0x147bc
callq 0x3200
movq %rax, -0xa8(%rbp)
jmp 0x827a
movq -0xa8(%rbp), %rdi
movq 0x12d38(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x828f
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rdi
movq (%rdi), %rax
movq 0x8(%rax), %rax
callq *%rax
jmp 0x82a2
movq 0x12d27(%rip), %rdi     # 0x1afd0
leaq 0xc52f(%rip), %rsi      # 0x147df
callq 0x3200
movq %rax, -0xb0(%rbp)
jmp 0x82be
movq -0xb0(%rbp), %rdi
movq 0x12cf4(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x82d3
movq -0x68(%rbp), %rsi
leaq -0x58(%rbp), %rdi
callq 0x8830
jmp 0x82e2
leaq -0x28(%rbp), %rdi
leaq -0x58(%rbp), %rsi
movq %rsi, -0xc0(%rbp)
callq 0x3290
movq -0xc0(%rbp), %rdi
callq 0x3130
movq 0x12cc7(%rip), %rdi     # 0x1afd0
leaq 0xc504(%rip), %rsi      # 0x14814
callq 0x3200
movq %rax, -0xb8(%rbp)
jmp 0x831e
movq -0xb8(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x31d0
movq %rax, -0xc8(%rbp)
jmp 0x8337
movq -0xc8(%rbp), %rdi
leaq 0xc4f0(%rip), %rsi      # 0x14835
callq 0x3200
movq %rax, -0xd0(%rbp)
jmp 0x8353
movq -0xd0(%rbp), %rdi
movq 0x12c5f(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x8368
movq 0x12c61(%rip), %rdi     # 0x1afd0
leaq 0xc4c9(%rip), %rsi      # 0x1483f
callq 0x3200
jmp 0x837d
movq -0x68(%rbp), %rax
movsbl 0x8a(%rax), %eax
cmpl $0x73, %eax
jne 0x83c1
movq 0x12c3c(%rip), %rdi     # 0x1afd0
leaq 0xc4b8(%rip), %rsi      # 0x14853
callq 0x3200
jmp 0x83a2
jmp 0x847f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
leaq -0x28(%rbp), %rdi
callq 0x3130
jmp 0x86d3
movq -0x68(%rbp), %rax
movsbl 0x8a(%rax), %eax
cmpl $0x6d, %eax
jne 0x83eb
movq 0x12bf8(%rip), %rdi     # 0x1afd0
leaq 0xc482(%rip), %rsi      # 0x14861
callq 0x3200
jmp 0x83e6
jmp 0x847d
movq -0x68(%rbp), %rax
movsbl 0x8a(%rax), %eax
cmpl $0x77, %eax
jne 0x8412
movq 0x12bce(%rip), %rdi     # 0x1afd0
leaq 0xc469(%rip), %rsi      # 0x14872
callq 0x3200
jmp 0x8410
jmp 0x847b
movq -0x68(%rbp), %rax
movsbl 0x8a(%rax), %eax
cmpl $0x67, %eax
jne 0x8439
movq 0x12ba7(%rip), %rdi     # 0x1afd0
leaq 0xc44e(%rip), %rsi      # 0x1487e
callq 0x3200
jmp 0x8437
jmp 0x8479
movq -0x68(%rbp), %rax
movsbl 0x8a(%rax), %eax
cmpl $0x70, %eax
jne 0x8460
movq 0x12b80(%rip), %rdi     # 0x1afd0
leaq 0xc432(%rip), %rsi      # 0x14889
callq 0x3200
jmp 0x845e
jmp 0x8477
movq 0x12b69(%rip), %rdi     # 0x1afd0
leaq 0xc429(%rip), %rsi      # 0x14897
callq 0x3200
jmp 0x8475
jmp 0x8477
jmp 0x8479
jmp 0x847b
jmp 0x847d
jmp 0x847f
movq 0x12b4a(%rip), %rdi     # 0x1afd0
leaq 0xc41a(%rip), %rsi      # 0x148a7
callq 0x3200
movq %rax, -0xd8(%rbp)
jmp 0x849b
movq -0xd8(%rbp), %rdi
movq 0x12b17(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x84b0
movq 0x12b19(%rip), %rdi     # 0x1afd0
leaq 0xc404(%rip), %rsi      # 0x148c2
callq 0x3200
movq %rax, -0xe0(%rbp)
jmp 0x84cc
movq -0xe0(%rbp), %rdi
movq 0x12ae6(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x84e1
movq 0x12ae8(%rip), %rdi     # 0x1afd0
leaq 0xc3e8(%rip), %rsi      # 0x148d7
callq 0x3200
movq %rax, -0xe8(%rbp)
jmp 0x84fd
movq -0xe8(%rbp), %rdi
movq 0x12ab5(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x8512
leaq 0xa04e(%rip), %rsi      # 0x12567
leaq -0x28(%rbp), %rdi
callq 0x3f80
movb %al, -0xe9(%rbp)
jmp 0x852a
movb -0xe9(%rbp), %al
testb $0x1, %al
jne 0x8539
jmp 0x85dd
movq 0x12a90(%rip), %rdi     # 0x1afd0
leaq 0xc3b5(%rip), %rsi      # 0x148fc
callq 0x3200
movq %rax, -0xf8(%rbp)
jmp 0x8555
movq -0xf8(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x31d0
movq %rax, -0x100(%rbp)
jmp 0x856e
movq -0x100(%rbp), %rdi
leaq 0xc3ac(%rip), %rsi      # 0x14928
callq 0x3200
movq %rax, -0x108(%rbp)
jmp 0x858a
movq -0x108(%rbp), %rdi
movq -0x68(%rbp), %rsi
addq $0x68, %rsi
callq 0x31d0
movq %rax, -0x110(%rbp)
jmp 0x85a7
movq -0x110(%rbp), %rdi
leaq 0xaa97(%rip), %rsi      # 0x1304c
callq 0x3200
movq %rax, -0x118(%rbp)
jmp 0x85c3
movq -0x118(%rbp), %rdi
movq 0x129ef(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x85d8
jmp 0x867e
movq 0x129ec(%rip), %rdi     # 0x1afd0
leaq 0xc347(%rip), %rsi      # 0x14932
callq 0x3200
movq %rax, -0x120(%rbp)
jmp 0x85f9
movq -0x120(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x31d0
movq %rax, -0x128(%rbp)
jmp 0x8612
movq -0x128(%rbp), %rdi
leaq 0xc308(%rip), %rsi      # 0x14928
callq 0x3200
movq %rax, -0x130(%rbp)
jmp 0x862e
movq -0x130(%rbp), %rdi
movq -0x68(%rbp), %rsi
addq $0x68, %rsi
callq 0x31d0
movq %rax, -0x138(%rbp)
jmp 0x864b
movq -0x138(%rbp), %rdi
leaq 0xa9f3(%rip), %rsi      # 0x1304c
callq 0x3200
movq %rax, -0x140(%rbp)
jmp 0x8667
movq -0x140(%rbp), %rdi
movq 0x1294b(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x867c
jmp 0x867e
movq -0x68(%rbp), %rax
movb $0x1, 0x88(%rax)
movq 0x12940(%rip), %rdi     # 0x1afd0
leaq 0xb917(%rip), %rsi      # 0x13fae
callq 0x3200
movq %rax, -0x148(%rbp)
jmp 0x86a5
movq -0x148(%rbp), %rdi
movq 0x1290d(%rip), %rsi     # 0x1afc0
callq 0x3230
jmp 0x86ba
callq 0x3300
jmp 0x86c1
leaq -0x28(%rbp), %rdi
callq 0x3130
addq $0x150, %rsp            # imm = 0x150
popq %rbp
retq
movq -0x30(%rbp), %rdi
callq 0x3370
nopl (%rax)