// File: /workspace/github_cpp_makefile_star2_O2/muzuka[P]Cards-Against-Humanity-Online/Client.cpp
// Function: getInput()
void getInput() {
	switch (blackCard.numOfAnswers) {
		case 1:
			printf("This black card requires one  white card.\n");
			printf("Please enter your answer in this form:\na # to send answer.\nt # to test the answer.\n");
			printf("s to see score.\nb to see black card\nh to see hand.\nq to quit.\n");
			cin >> answer;
			if (answer == 'q') {
				note = composeNOTIFYMessage('q', self.getName());
				bytesSent = send(self.getSocket(), (char*)note.c_str(), 100, 0);
				if (bytesSent <= 0) {
					printf("Couldn't send quit.\n");
				}
				exit(EXIT_FAILURE);
			}
			else if(answer == 'h') {
				printHand(self.getHand());
			}
			else if(answer == 's') {
				printf("You have won %d rounds.\n", self.getScore());
			}
			else if(answer == 'b') {
				printf("%s\n", blackCard.content.c_str());
			}
			else {
				cin >> num[0];
			}
			break;
		case 2:
			printf("This black card requires two white cards.\n");
			printf("Please enter your answer in this form:\na # # to send answer.\nt # # to test the answer");
			printf("s to see score.\nb to see black card\nh to see hand.\nq to quit.\n");
			cin >> answer;
			if (answer == 'q') {
				note = composeNOTIFYMessage('q', self.getName());
				bytesSent = send(self.getSocket(), (char*)note.c_str(), 100, 0);
				if (bytesSent <= 0) {
					printf("Couldn't send quit.\n");
					exit(EXIT_FAILURE);
				}
				exit(EXIT_FAILURE);
			}
			else if(answer == 'h') {
				printHand(self.getHand());
			}
			else if(answer == 's') {
				printf("You have won %d rounds.\n", self.getScore());
			}
			else if(answer == 'b') {
				printf("%s\n", blackCard.content.c_str());
			}
			else {
				cin >> num[0];
				cin >> num[1];
			}
			break;
		case 3:
			printf("This black card requires three white cards.\n");
			printf("Please enter your answer in this form:\na # # # to send answer.\nt # # # to test the answer");
			printf("s to see score.\nb to see black card\nh to see hand.\nq to quit.\n");
			cin >> answer;
			if (answer == 'q') {
				note = composeNOTIFYMessage('q', self.getName());
				bytesSent = send(self.getSocket(), (char*)note.c_str(), 100, 0);
				if (bytesSent <= 0) {
					printf("Couldn't send quit.\n");
					exit(EXIT_FAILURE);
				}
				exit(EXIT_FAILURE);
			}
			else if(answer == 'h') {
				printHand(self.getHand());
			}
			else if(answer == 's') {
				printf("You have won %d rounds.\n", self.getScore());
			}
			else if(answer == 'b') {
				printf("%s\n", blackCard.content.c_str());
			}
			else {
				cin >> num[0];
				cin >> num[1];
				cin >> num[2];
			}
			break;
		default:
			break;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0xc8, %rsp
movl 0x4c56(%rip), %eax      # 0x938c
cmpl $0x3, %eax
je 0x4848
cmpl $0x2, %eax
je 0x47c2
cmpl $0x1, %eax
jne 0x4961
leaq 0x1f9c(%rip), %rdi      # 0x66f0
callq 0x2230
leaq 0x1fba(%rip), %rdi      # 0x671a
callq 0x2230
leaq 0x2001(%rip), %rdi      # 0x676d
callq 0x2230
movq 0x4868(%rip), %rdi      # 0x8fe0
leaq 0x4d8d(%rip), %rsi      # 0x950c
callq 0x21e0
movzbl 0x4d81(%rip), %eax      # 0x950c
cmpl $0x62, %eax
je 0x4906
cmpl $0x68, %eax
je 0x493b
cmpl $0x73, %eax
je 0x48e1
cmpl $0x71, %eax
je 0x49f4
movq 0x482a(%rip), %rdi      # 0x8fe0
leaq 0x4d43(%rip), %rsi      # 0x9500
jmp 0x48d3
leaq 0x1efd(%rip), %rdi      # 0x66c6
callq 0x2230
leaq 0x196a(%rip), %rdi      # 0x613f
xorl %eax, %eax
callq 0x2040
leaq 0x1f8a(%rip), %rdi      # 0x676d
callq 0x2230
movq 0x47f1(%rip), %rdi      # 0x8fe0
leaq 0x4d16(%rip), %rsi      # 0x950c
callq 0x21e0
movzbl 0x4d0a(%rip), %eax      # 0x950c
cmpl $0x62, %eax
je 0x4906
cmpl $0x68, %eax
je 0x491b
cmpl $0x73, %eax
je 0x48e1
cmpl $0x71, %eax
je 0x496b
movq 0x47b3(%rip), %rbx      # 0x8fe0
leaq 0x4ccc(%rip), %rsi      # 0x9500
movq %rbx, %rdi
callq 0x2100
leaq 0x4cc1(%rip), %rsi      # 0x9504
jmp 0x48d0
leaq 0x1e4b(%rip), %rdi      # 0x669a
callq 0x2230
leaq 0x193a(%rip), %rdi      # 0x6195
xorl %eax, %eax
callq 0x2040
leaq 0x1f04(%rip), %rdi      # 0x676d
callq 0x2230
movq 0x476b(%rip), %rdi      # 0x8fe0
leaq 0x4c90(%rip), %rsi      # 0x950c
callq 0x21e0
movzbl 0x4c84(%rip), %eax      # 0x950c
cmpl $0x62, %eax
je 0x4906
cmpl $0x68, %eax
je 0x492b
cmpl $0x73, %eax
je 0x48e1
cmpl $0x71, %eax
je 0x49b1
movq 0x4735(%rip), %rbx      # 0x8fe0
leaq 0x4c4e(%rip), %rsi      # 0x9500
movq %rbx, %rdi
callq 0x2100
leaq 0x4c43(%rip), %rsi      # 0x9504
movq %rbx, %rdi
callq 0x2100
leaq 0x4c38(%rip), %rsi      # 0x9508
movq %rbx, %rdi
addq $0xc8, %rsp
popq %rbx
popq %rbp
jmp 0x2100
leaq 0x4ac8(%rip), %rdi      # 0x93b0
callq 0x2964
leaq 0x180f(%rip), %rdi      # 0x6103
movl %eax, %esi
xorl %eax, %eax
addq $0xc8, %rsp
popq %rbx
popq %rbp
jmp 0x2040
movq 0x4a5b(%rip), %rdi      # 0x9368
addq $0xc8, %rsp
popq %rbx
popq %rbp
jmp 0x2230
leaq 0x4a8e(%rip), %rsi      # 0x93b0
leaq -0xb8(%rbp), %rbx
jmp 0x4949
leaq 0x4a7e(%rip), %rsi      # 0x93b0
leaq -0xa0(%rbp), %rbx
jmp 0x4949
leaq 0x4a6e(%rip), %rsi      # 0x93b0
leaq -0xd0(%rbp), %rbx
movq %rbx, %rdi
callq 0x2c0a
movq %rbx, %rdi
callq 0x4371
movq %rbx, %rdi
callq 0x2c42
addq $0xc8, %rsp
popq %rbx
popq %rbp
retq
leaq 0x4a3e(%rip), %rsi      # 0x93b0
leaq -0x68(%rbp), %rbx
movq %rbx, %rdi
callq 0x292e
leaq -0x28(%rbp), %rdi
pushq $0x71
popq %rsi
movq %rbx, %rdx
callq 0x445b
leaq 0x4bbc(%rip), %rdi      # 0x9550
leaq -0x28(%rbp), %rbx
movq %rbx, %rsi
callq 0x21b0
movq %rbx, %rdi
callq 0x22e8
leaq -0x68(%rbp), %rdi
jmp 0x4a3b
leaq 0x49f8(%rip), %rsi      # 0x93b0
leaq -0x48(%rbp), %rbx
movq %rbx, %rdi
callq 0x292e
leaq -0x28(%rbp), %rdi
pushq $0x71
popq %rsi
movq %rbx, %rdx
callq 0x445b
leaq 0x4b76(%rip), %rdi      # 0x9550
leaq -0x28(%rbp), %rbx
movq %rbx, %rsi
callq 0x21b0
movq %rbx, %rdi
callq 0x22e8
leaq -0x48(%rbp), %rdi
jmp 0x4a3b
leaq 0x49b5(%rip), %rsi      # 0x93b0
leaq -0x88(%rbp), %rbx
movq %rbx, %rdi
callq 0x292e
leaq -0x28(%rbp), %rdi
pushq $0x71
popq %rsi
movq %rbx, %rdx
callq 0x445b
leaq 0x4b30(%rip), %rdi      # 0x9550
leaq -0x28(%rbp), %rbx
movq %rbx, %rsi
callq 0x21b0
movq %rbx, %rdi
callq 0x22e8
leaq -0x88(%rbp), %rdi
callq 0x22e8
leaq 0x4969(%rip), %rdi      # 0x93b0
callq 0x2950
movq 0x4afd(%rip), %rsi      # 0x9550
pushq $0x64
popq %rdx
movl %eax, %edi
xorl %ecx, %ecx
callq 0x20c0
movl %eax, 0x474b(%rip)      # 0x91b0
testl %eax, %eax
jg 0x4a75
leaq 0x1d3b(%rip), %rdi      # 0x67ab
callq 0x2230
pushq $0x1
popq %rdi
callq 0x21a0
movq %rax, %rbx
leaq -0x88(%rbp), %rdi
jmp 0x4a99
movq %rax, %rbx
leaq -0x48(%rbp), %rdi
jmp 0x4a99
movq %rax, %rbx
leaq -0x68(%rbp), %rdi
callq 0x22e8
movq %rbx, %rdi
callq 0x2280