// File: /workspace/github_c_makefile_star2_O1/ethinethin[P]Secret/input.c
// Function: input_loop
extern void input_loop(void)
{
	char *line;

	/* Start in room 0 and show it */
	room_name();
	look_room();
	GAME_STATUS = 0;

	/* set up tab completion */
	linenoiseSetCompletionCallback(completion);

	/* main input loop */
	while(putchar('\n') && (line = linenoise("command> ")) != NULL) {
		if (line[0] != '\0') {
			linenoiseHistoryAdd(line);
			parse_input(line);
			if (GAME_STATUS == -1) {
				quit_screen();
				break;
			} else if (GAME_STATUS == -2) {
				bad_ending();
				break;
			} else if (GAME_STATUS == -3) {
				good_ending();
				break;
			}
		}
		free(line);
	}
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xb8, %rsp
callq 0x561f
callq 0x5648
movl $0x0, 0xc75f(%rip)      # 0xfba4
leaq 0x72f(%rip), %rdi       # 0x3b7b
callq 0x3c85
movl $0xa, %edi
callq 0x3050
testl %eax, %eax
je 0x3b69
leaq 0x3d72(%rip), %r14      # 0x71dc
leaq 0x3d75(%rip), %r15      # 0x71e6
leaq 0x50(%rsp), %r12
movq %r14, %rdi
callq 0x49d6
testq %rax, %rax
je 0x3b69
movq %rax, %rbp
cmpb $0x0, (%rax)
je 0x3942
movq %rbp, %rdi
callq 0x51f1
xorl %eax, %eax
movb (%rbp,%rax), %cl
testb %cl, %cl
je 0x34c9
leal -0x41(%rcx), %edx
movzbl %cl, %esi
orb $0x20, %cl
cmpb $0x1a, %dl
movzbl %cl, %ecx
cmovael %esi, %ecx
movb %cl, 0x50(%rsp,%rax)
incq %rax
cmpq $0x63, %rax
jne 0x349d
movl $0x63, %eax
movl %eax, %eax
movb $0x0, 0x50(%rsp,%rax)
movq %r12, %rdi
movq %r15, %rsi
callq 0x3260
movq %rax, 0x10(%rsp)
movl $0x1, %ebx
xorl %edi, %edi
movq %r15, %rsi
callq 0x3260
movq %rax, 0x10(%rsp,%rbx,8)
incq %rbx
cmpq $0x8, %rbx
jne 0x34e5
movq 0x10(%rsp), %r13
testq %r13, %r13
je 0x3921
movq %r13, %rdi
leaq 0x3cd4(%rip), %rsi      # 0x71e9
callq 0x3170
testl %eax, %eax
je 0x35aa
movq %r13, %rdi
leaq 0x3cc2(%rip), %rsi      # 0x71ee
callq 0x3170
testl %eax, %eax
je 0x35aa
movq %r13, %rdi
leaq 0x3cb4(%rip), %rsi      # 0x71f3
callq 0x3170
testl %eax, %eax
je 0x35aa
movq %r13, %rdi
leaq 0x3c35(%rip), %rsi      # 0x7187
callq 0x3170
testl %eax, %eax
je 0x3602
movq %r13, %rdi
leaq 0x3cc3(%rip), %rsi      # 0x722c
callq 0x3170
testl %eax, %eax
je 0x3602
movq %r13, %rdi
leaq 0x3c75(%rip), %rsi      # 0x71f5
callq 0x3170
testl %eax, %eax
sete %dl
movq 0x18(%rsp), %rbx
testq %rbx, %rbx
sete %cl
andb %dl, %cl
cmpb $0x1, %cl
jne 0x36f6
callq 0x5648
jmp 0x3921
leaq 0x3cb2(%rip), %rdi      # 0x7263
xorl %eax, %eax
callq 0x30f0
callq 0x3180
movl %eax, %ebx
callq 0x3180
cmpl $0xa, %eax
je 0x35e7
cmpl $-0x1, %eax
jne 0x35bf
movl $0xa, %edi
callq 0x3050
movq 0xa9f9(%rip), %rax      # 0xdfd8
movq (%rax), %rdi
callq 0x31b0
andl $-0x21, %ebx
cmpl $0x59, %ebx
jne 0x3921
movl $0xffffffff, 0xc5a7(%rip) # imm = 0xFFFFFFFF
jmp 0x3921
leaq 0x3a3d(%rip), %rdi      # 0x7046
callq 0x3090
leaq 0x3fb1(%rip), %rdi      # 0x75c6
callq 0x3090
leaq 0x3fb1(%rip), %rdi      # 0x75d2
callq 0x3090
leaq 0x3fdd(%rip), %rdi      # 0x760a
callq 0x3090
leaq 0x3a0e(%rip), %rbx      # 0x7047
movq %rbx, %rdi
callq 0x3090
leaq 0x3ff5(%rip), %rdi      # 0x763d
callq 0x3090
leaq 0x3ffe(%rip), %rdi      # 0x7652
callq 0x3090
leaq 0x4038(%rip), %rdi      # 0x7698
callq 0x3090
movq %rbx, %rdi
callq 0x3090
leaq 0x4046(%rip), %rdi      # 0x76ba
callq 0x3090
leaq 0x4049(%rip), %rdi      # 0x76c9
callq 0x3090
leaq 0x405f(%rip), %rdi      # 0x76eb
callq 0x3090
leaq 0x406b(%rip), %rdi      # 0x7703
callq 0x3090
movq %rbx, %rdi
callq 0x3090
leaq 0x406c(%rip), %rdi      # 0x7718
callq 0x3090
leaq 0x407b(%rip), %rdi      # 0x7733
callq 0x3090
leaq 0x4091(%rip), %rdi      # 0x7755
callq 0x3090
movq %rbx, %rdi
callq 0x3090
leaq 0x4099(%rip), %rdi      # 0x7771
callq 0x3090
leaq 0x4095(%rip), %rdi      # 0x7779
callq 0x3090
movq %rbx, %rdi
callq 0x3090
jmp 0x3921
movl %eax, 0xc(%rsp)
movq %r13, %rdi
leaq 0x3af6(%rip), %rsi      # 0x71fa
callq 0x3170
testl %eax, %eax
je 0x3914
movq %r13, %rdi
leaq 0x3ae2(%rip), %rsi      # 0x71fd
callq 0x3170
testl %eax, %eax
je 0x3914
movq %r13, %rdi
leaq 0x3ad0(%rip), %rsi      # 0x7202
callq 0x3170
testl %eax, %eax
je 0x3914
movq %r13, %rdi
leaq 0x3abe(%rip), %rsi      # 0x7207
callq 0x3170
testl %eax, %eax
je 0x3919
movq %r13, %rdi
leaq 0x3aad(%rip), %rsi      # 0x720d
callq 0x3170
testl %eax, %eax
je 0x3919
movq %r13, %rdi
leaq 0x565b(%rip), %rsi      # 0x8dd2
callq 0x3170
testl %eax, %eax
je 0x3919
movq %r13, %rdi
leaq 0x3a84(%rip), %rsi      # 0x7212
callq 0x3170
testl %eax, %eax
je 0x3919
movq %r13, %rdi
leaq 0x412e(%rip), %rsi      # 0x78d3
callq 0x3170
testl %eax, %eax
je 0x3961
movq %r13, %rdi
leaq 0x41af(%rip), %rsi      # 0x796b
callq 0x3170
testl %eax, %eax
je 0x396a
movq %r13, %rdi
leaq 0x3a8e(%rip), %rsi      # 0x7261
callq 0x3170
testl %eax, %eax
je 0x3973
movq %r13, %rdi
leaq 0x3a2d(%rip), %rsi      # 0x7217
callq 0x3170
testl %eax, %eax
je 0x39a5
movq %r13, %rdi
leaq 0x3a18(%rip), %rsi      # 0x7219
callq 0x3170
testl %eax, %eax
je 0x397c
movq %r13, %rdi
leaq 0x3a06(%rip), %rsi      # 0x721e
callq 0x3170
testl %eax, %eax
je 0x397c
movq %r13, %rdi
leaq 0x39f3(%rip), %rsi      # 0x7222
callq 0x3170
testl %eax, %eax
je 0x39c2
movq %r13, %rdi
leaq 0x39e1(%rip), %rsi      # 0x7227
callq 0x3170
testl %eax, %eax
je 0x39b1
movq %r13, %rdi
leaq 0x39d1(%rip), %rsi      # 0x722e
callq 0x3170
testl %eax, %eax
je 0x39b1
movq %r13, %rdi
leaq 0x39bf(%rip), %rsi      # 0x7233
callq 0x3170
testl %eax, %eax
je 0x3a06
movq %r13, %rdi
leaq 0x39aa(%rip), %rsi      # 0x7235
callq 0x3170
testl %eax, %eax
je 0x3a06
movq %r13, %rdi
leaq 0x399d(%rip), %rsi      # 0x723f
callq 0x3170
testl %eax, %eax
je 0x3a06
cmpl $0x0, 0xc(%rsp)
je 0x3a2b
movq %r13, %rdi
leaq 0x3982(%rip), %rsi      # 0x7246
callq 0x3170
testl %eax, %eax
je 0x3a4f
leaq 0x3972(%rip), %rdi      # 0x724a
movq %r13, %rsi
xorl %eax, %eax
callq 0x30f0
movl $0x1, %ebx
movq 0x10(%rsp,%rbx,8), %rsi
testq %rsi, %rsi
je 0x38ff
leaq 0x3967(%rip), %rdi      # 0x725f
xorl %eax, %eax
callq 0x30f0
incq %rbx
cmpq $0x4, %rbx
jne 0x38e7
leaq 0x398f(%rip), %rdi      # 0x729e
jmp 0x36ec
movq %rbx, %rdi
jmp 0x391c
movq %r13, %rdi
callq 0x5703
movl 0xc27d(%rip), %eax      # 0xfba4
cmpl $-0x3, %eax
je 0x3aa4
cmpl $-0x2, %eax
je 0x3ae0
cmpl $-0x1, %eax
je 0x3ad0
movq %rbp, %rdi
callq 0x3040
movl $0xa, %edi
callq 0x3050
testl %eax, %eax
jne 0x3476
jmp 0x3b69
leaq 0x389f(%rip), %rdi      # 0x7207
jmp 0x391c
leaq 0x389c(%rip), %rdi      # 0x720d
jmp 0x391c
leaq 0x5458(%rip), %rdi      # 0x8dd2
jmp 0x391c
testq %rbx, %rbx
je 0x3994
movq %rbx, %rdi
leaq 0x39ae(%rip), %rsi      # 0x7339
callq 0x3170
testl %eax, %eax
je 0x39eb
callq 0x5618
movq 0x18(%rsp), %rsi
movq 0x20(%rsp), %rdx
jmp 0x39fa
leaq 0x3866(%rip), %rdi      # 0x7212
jmp 0x391c
callq 0x5618
movl %eax, %edi
callq 0x58ae
jmp 0x3921
testq %rbx, %rbx
je 0x39da
movq %rbx, %rdi
leaq 0x3968(%rip), %rsi      # 0x7339
callq 0x3170
testl %eax, %eax
je 0x3a10
callq 0x5618
movq 0x18(%rsp), %rsi
movq 0x20(%rsp), %rdx
jmp 0x3a1f
callq 0x5618
movq 0x20(%rsp), %rsi
movq 0x28(%rsp), %rdx
movl %eax, %edi
callq 0x5a3d
jmp 0x3921
callq 0x59aa
jmp 0x3921
callq 0x5618
movq 0x20(%rsp), %rsi
movq 0x28(%rsp), %rdx
movl %eax, %edi
callq 0x5d13
jmp 0x3921
movq %rbx, %rdi
leaq 0x380e(%rip), %rsi      # 0x7243
callq 0x3170
testl %eax, %eax
je 0x3a5e
callq 0x5618
movq 0x18(%rsp), %rsi
movq 0x20(%rsp), %rdx
jmp 0x3a98
leaq 0x10(%rsp), %rdi
callq 0x5edc
jmp 0x3921
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x3a78
leaq 0x38ca(%rip), %rsi      # 0x7339
callq 0x3170
testl %eax, %eax
je 0x3a89
callq 0x5618
movq 0x20(%rsp), %rsi
movq 0x28(%rsp), %rdx
jmp 0x3a98
callq 0x5618
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movl %eax, %edi
callq 0x5df0
jmp 0x3921
leaq 0x3ab8(%rip), %r14      # 0x7563
leaq 0x3a86(%rip), %r15      # 0x7538
leaq 0x3a30(%rip), %r12      # 0x74e9
leaq 0x39da(%rip), %r13      # 0x749a
leaq 0x3982(%rip), %rbp      # 0x7449
leaq 0x3963(%rip), %rbx      # 0x7431
jmp 0x3b0a
leaq 0x37ca(%rip), %r14      # 0x72a1
leaq 0x3568(%rip), %rdi      # 0x7046
jmp 0x3b50
leaq 0x3928(%rip), %r14      # 0x740f
leaq 0x38e5(%rip), %r15      # 0x73d3
leaq 0x3892(%rip), %r12      # 0x7387
leaq 0x3841(%rip), %r13      # 0x733d
leaq 0x37ec(%rip), %rbp      # 0x72ef
leaq 0x37ce(%rip), %rbx      # 0x72d8
leaq 0x3535(%rip), %rdi      # 0x7046
callq 0x3090
movq %rbx, %rdi
callq 0x3090
leaq 0x3522(%rip), %rbx      # 0x7047
movq %rbx, %rdi
callq 0x3090
movq %rbp, %rdi
callq 0x3090
movq %r13, %rdi
callq 0x3090
movq %r12, %rdi
callq 0x3090
movq %r15, %rdi
callq 0x3090
movq %rbx, %rdi
callq 0x3090
movq %r14, %rdi
callq 0x3090
leaq 0x3a10(%rip), %rdi      # 0x7574
callq 0x3090
addq $0xb8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq