// File: /workspace/github_c_makefile_star2_O3/lh3[P]ksw2/cli.c
// Function: main
int main(int argc, char *argv[])
{
	void *km = 0;
	int8_t a = 2, b = 4, q = 4, e = 2, q2 = 13, e2 = 1;
	int c, i, pair = 1, w = -1, flag = 0, rep = 1, zdrop = -1, no_kalloc = 0;
	char *algo = "extd", *s;
	int8_t mat[25];
	ksw_extz_t ez;
	gzFile fp[2];

	while ((c = getopt(argc, argv, "t:w:R:rsgz:A:B:O:E:Ka")) >= 0) {
		if (c == 't') algo = optarg;
		else if (c == 'w') w = atoi(optarg);
		else if (c == 'R') rep = atoi(optarg);
		else if (c == 'z') zdrop = atoi(optarg);
		else if (c == 'r') flag |= KSW_EZ_RIGHT;
		else if (c == 's') flag |= KSW_EZ_SCORE_ONLY;
		else if (c == 'g') flag |= KSW_EZ_APPROX_MAX | KSW_EZ_APPROX_DROP;
		else if (c == 'K') no_kalloc = 1;
		else if (c == 'A') a = atoi(optarg);
		else if (c == 'B') b = atoi(optarg);
		else if (c == 'a') pair = 0;
		else if (c == 'O') {
			q = q2 = strtol(optarg, &s, 10);
			if (*s == ',') q2 = strtol(s+1, &s, 10);
		} else if (c == 'E') {
			e = e2 = strtol(optarg, &s, 10);
			if (*s == ',') e2 = strtol(s+1, &s, 10);
		}
	}
	if (argc - optind < 2) {
		fprintf(stderr, "Usage: ksw2-test [options] <DNA-target> <DNA-query>\n");
		fprintf(stderr, "Options:\n");
		fprintf(stderr, "  -t STR        algorithm: gg, gg2, gg2_sse, extz, extz2_sse, extd, extd2_sse [%s]\n", algo);
		fprintf(stderr, "  -R INT        repeat INT times (for benchmarking) [1]\n");
		fprintf(stderr, "  -w INT        band width [inf]\n");
		fprintf(stderr, "  -z INT        Z-drop [%d]\n", zdrop);
		fprintf(stderr, "  -r            gap right alignment\n");
		fprintf(stderr, "  -s            score only\n");
		fprintf(stderr, "  -A INT        match score [%d]\n", a);
		fprintf(stderr, "  -B INT        mismatch penalty [%d]\n", b);
		fprintf(stderr, "  -O INT[,INT]  gap open penalty [%d,%d]\n", q, q2);
		fprintf(stderr, "  -E INT[,INT]  gap extension penalty [%d,%d]\n", e, e2);
		fprintf(stderr, "  -a            all vs all\n");
		return 1;
	}
#ifdef HAVE_KALLOC
	km = no_kalloc? 0 : km_init();
#endif
	memset(&ez, 0, sizeof(ksw_extz_t));
	ksw_gen_simple_mat(5, mat, a, -b);
	fp[0] = gzopen(argv[optind], "r");
	fp[1] = gzopen(argv[optind+1], "r");

	if (fp[0] == 0 && fp[1] == 0) {
		global_aln(algo, km, argv[optind+1], argv[optind], 5, mat, q, e, q2, e2, w, zdrop, flag, &ez);
		print_aln("first", "second", &ez);
	} else if (fp[0] && fp[1]) {
		kseq_t *ks[2];
		ks[0] = kseq_init(fp[0]);
		ks[1] = kseq_init(fp[1]);
		if (pair) {
			while (kseq_read(ks[0]) > 0) {
				if (kseq_read(ks[1]) <= 0) break;
				for (i = 0; i < rep; ++i)
					global_aln(algo, km, ks[1]->seq.s, ks[0]->seq.s, 5, mat, q, e, q2, e2, w, zdrop, flag, &ez);
				print_aln(ks[0]->name.s, ks[1]->name.s, &ez);
			}
		} else {
			int i, m_seq = 0, n_seq = 0;
			named_seq_t *seq = 0;
			while (kseq_read(ks[0]) > 0) {
				named_seq_t *s;
				if (n_seq == m_seq) EXPAND(seq, m_seq);
				s = &seq[n_seq++];
				s->name = strdup(ks[0]->name.s);
				s->seq = strdup(ks[0]->seq.s);
			}
			while (kseq_read(ks[1]) > 0) {
				for (i = 0; i < n_seq; ++i) {
					global_aln(algo, km, ks[1]->seq.s, seq[i].seq, 5, mat, q, e, q2, e2, w, zdrop, flag, &ez);
					print_aln(seq[i].name, ks[1]->name.s, &ez);
				}
			}
			for (i = 0; i < n_seq; ++i) {
				free(seq[i].name);
				free(seq[i].seq);
			}
			free(seq);
		}
		kseq_destroy(ks[0]);
		kseq_destroy(ks[1]);
		gzclose(fp[0]);
		gzclose(fp[1]);
	}
	kfree(km, ez.cigar);
#ifdef HAVE_KALLOC
	km_destroy(km);
#endif
	return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xf8, %rsp
movq %rsi, %rbp
movl %edi, %r12d
leaq 0xbcbf(%rip), %rdx      # 0xd089
callq 0x1130
testl %eax, %eax
js 0x166e
movb $0xd, %cl
movq %rcx, 0x40(%rsp)
movb $0x1, %cl
movq %rcx, 0x18(%rsp)
movl $0x1, 0x50(%rsp)
movl $0xffffffff, %ecx       # imm = 0xFFFFFFFF
movq %rcx, 0x60(%rsp)
movl $0x0, 0x10(%rsp)
leaq 0xbc7e(%rip), %rcx      # 0xd084
movq %rcx, 0x20(%rsp)
movb $0x4, %cl
movl %ecx, (%rsp)
movb $0x2, %cl
movl %ecx, 0x38(%rsp)
leaq 0x80(%rsp), %rbx
leaq 0xbc64(%rip), %r13      # 0xd089
leaq 0xbc34(%rip), %r15      # 0xd060
movb $0x4, %cl
movq %rcx, 0x28(%rsp)
xorl %edx, %edx
movl $0xffffffff, %ecx       # imm = 0xFFFFFFFF
movq %rcx, 0x58(%rsp)
movl $0x1, 0x30(%rsp)
movb $0x2, %cl
movq %rcx, 0x48(%rsp)
movq %rbx, %r14
cmpl $0x60, %eax
jle 0x1473
leal -0x72(%rax), %ecx
cmpl $0x8, %ecx
ja 0x1513
movslq (%r15,%rcx,4), %rax
addq %r15, %rax
jmpq *%rax
orl $0x2, %edx
jmp 0x1560
cmpl $0x4a, %eax
movq %rdx, 0x8(%rsp)
jg 0x14df
cmpl $0x41, %eax
je 0x1588
cmpl $0x42, %eax
je 0x15a7
cmpl $0x45, %eax
movq 0x8(%rsp), %rdx
jne 0x1560
movq 0xeb34(%rip), %rax      # 0xffd8
movq (%rax), %rdi
movq %rbx, %rsi
movl $0xa, %edx
callq 0x10e0
movq 0x80(%rsp), %rdi
cmpb $0x2c, (%rdi)
movq %rax, 0x48(%rsp)
jne 0x160c
incq %rdi
movq %rbx, %rsi
movl $0xa, %edx
callq 0x10e0
jmp 0x160c
cmpl $0x4b, %eax
je 0x159d
cmpl $0x4f, %eax
je 0x15bb
cmpl $0x52, %eax
movq 0x8(%rsp), %rdx
jne 0x1560
movq 0xead6(%rip), %rax      # 0xffd8
movq (%rax), %rdi
callq 0x1140
movl %eax, 0x50(%rsp)
jmp 0x1611
cmpl $0x61, %eax
je 0x15f6
cmpl $0x67, %eax
jne 0x1560
orl $0x18, %edx
jmp 0x1560
movq %rdx, 0x8(%rsp)
movq 0xeaa6(%rip), %rax      # 0xffd8
movq (%rax), %rdi
callq 0x1140
movq %rax, 0x60(%rsp)
jmp 0x1611
movq %rdx, 0x8(%rsp)
movq 0xea88(%rip), %rax      # 0xffd8
movq (%rax), %rax
movq %rax, 0x20(%rsp)
jmp 0x1611
orl $0x1, %edx
movq %rdx, 0x8(%rsp)
jmp 0x1611
movq %rdx, 0x8(%rsp)
movq 0xea62(%rip), %rax      # 0xffd8
movq (%rax), %rdi
callq 0x1140
movq %rax, 0x58(%rsp)
jmp 0x1611
movq 0xea49(%rip), %rax      # 0xffd8
movq (%rax), %rdi
callq 0x1140
movl %eax, 0x38(%rsp)
jmp 0x1611
movl $0x1, 0x10(%rsp)
jmp 0x1611
movq 0xea2a(%rip), %rax      # 0xffd8
movq (%rax), %rdi
callq 0x1140
movl %eax, (%rsp)
jmp 0x1611
movq 0xea16(%rip), %rax      # 0xffd8
movq (%rax), %rdi
movq %rbx, %rsi
movl $0xa, %edx
callq 0x10e0
movq 0x80(%rsp), %rdi
cmpb $0x2c, (%rdi)
movq %rax, 0x28(%rsp)
jne 0x1605
incq %rdi
movq %rbx, %rsi
movl $0xa, %edx
callq 0x10e0
jmp 0x1605
movq %rdx, 0x8(%rsp)
movl $0x0, 0x30(%rsp)
jmp 0x1611
movq %rax, 0x40(%rsp)
jmp 0x1611
movq %rax, 0x18(%rsp)
movl %r12d, %edi
movq %rbp, %rsi
movq %r13, %rdx
callq 0x1130
testl %eax, %eax
movq 0x8(%rsp), %rdx
movq %r14, %rbx
jns 0x1451
movq 0xe99a(%rip), %rax      # 0xffd0
subl (%rax), %r12d
cmpl $0x2, %r12d
jl 0x1ca1
cmpl $0x0, 0x30(%rsp)
sete %al
movl %eax, 0x30(%rsp)
cmpl $0x0, 0x10(%rsp)
movq 0x60(%rsp), %r12
je 0x16d3
movq $0x0, 0x10(%rsp)
movq 0x58(%rsp), %r13
jmp 0x1700
movq 0xe95b(%rip), %rax      # 0xffd0
subl (%rax), %r12d
movb $0xd, %al
movq %rax, 0x40(%rsp)
movb $0x1, %al
movq %rax, 0x18(%rsp)
movl $0xffffffff, %r13d      # imm = 0xFFFFFFFF
leaq 0xb9f1(%rip), %rax      # 0xd084
movb $0x4, %bl
movb $0x2, %r15b
cmpl $0x1, %r12d
movq %rax, 0x20(%rsp)
jle 0x1cbe
movl $0x1, 0x50(%rsp)
movl $0x0, 0x30(%rsp)
movq $0x0, 0x8(%rsp)
movl $0xffffffff, %r12d      # imm = 0xFFFFFFFF
movb $0x4, %al
movl %eax, (%rsp)
movb $0x2, %al
movl %eax, 0x38(%rsp)
jmp 0x16e7
movq 0x48(%rsp), %rax
movl %eax, %r15d
movq 0x28(%rsp), %rax
movl %eax, %ebx
movq 0x58(%rsp), %r13
callq 0x2c2c
movq %rax, 0x10(%rsp)
movl %r15d, %eax
movq %rax, 0x48(%rsp)
movl %ebx, %eax
movq %rax, 0x28(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0xe0(%rsp)
movaps %xmm0, 0xd0(%rsp)
movaps %xmm0, 0xc0(%rsp)
movq $0x0, 0xf0(%rsp)
movl 0x38(%rsp), %edx
movl %edx, %eax
sarb $0x7, %al
xorb %al, %dl
subb %al, %dl
movl (%rsp), %eax
movl %eax, %ecx
sarb $0x7, %cl
xorb %cl, %al
subb %al, %cl
leaq 0xa4(%rsp), %rax
movzbl %dl, %edx
movd %edx, %xmm0
punpcklbw %xmm0, %xmm0    # xmm0 = xmm0[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7]
pshuflw $0x0, %xmm0, %xmm0      # xmm0 = xmm0[0,0,0,0,4,5,6,7]
movzbl %cl, %ecx
movd %ecx, %xmm1
punpcklbw %xmm1, %xmm1    # xmm1 = xmm1[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7]
pshuflw $0x0, %xmm1, %xmm1      # xmm1 = xmm1[0,0,0,0,4,5,6,7]
xorl %ecx, %ecx
movdqa 0xb89e(%rip), %xmm2     # 0xd010
movdqa 0xb8a6(%rip), %xmm3     # 0xd020
movq %rcx, %xmm4
pshufd $0x44, %xmm4, %xmm4     # xmm4 = xmm4[0,1,0,1]
movdqa %xmm4, %xmm5
pcmpeqd %xmm2, %xmm5
pshufd $0xb1, %xmm5, %xmm6     # xmm6 = xmm5[1,0,3,2]
pand %xmm5, %xmm6
pcmpeqd %xmm3, %xmm4
pshufd $0xb1, %xmm4, %xmm5     # xmm5 = xmm4[1,0,3,2]
pand %xmm4, %xmm5
packssdw %xmm6, %xmm5
packssdw %xmm5, %xmm5
packsswb %xmm5, %xmm5
movdqa %xmm0, %xmm4
pand %xmm5, %xmm4
pandn %xmm1, %xmm5
por %xmm4, %xmm5
movd %xmm5, -0x4(%rax)
movb $0x0, (%rax)
incq %rcx
addq $0x5, %rax
cmpq $0x4, %rcx
jne 0x177a
movb $0x0, 0xb8(%rsp)
movl $0x0, 0xb4(%rsp)
movq 0xe7e3(%rip), %r15      # 0xffd0
movslq (%r15), %rax
movq (%rbp,%rax,8), %rdi
leaq 0xbaad(%rip), %rbx      # 0xd2a9
movq %rbx, %rsi
callq 0x1120
movq %rax, %r14
movslq (%r15), %rax
movq 0x8(%rbp,%rax,8), %rdi
movq %rbx, %rsi
callq 0x1120
movq %rax, %rbx
movq %r14, %rax
orq %rbx, %rax
jne 0x1899
movslq (%r15), %rax
movq (%rbp,%rax,8), %rcx
movq 0x8(%rbp,%rax,8), %rdx
subq $0x8, %rsp
leaq 0xc8(%rsp), %rbx
movsbl 0x20(%rsp), %eax
movsbl 0x48(%rsp), %r10d
movsbl 0x50(%rsp), %r11d
movsbl 0x30(%rsp), %r9d
leaq 0xa8(%rsp), %r8
movq 0x28(%rsp), %rdi
movq 0x18(%rsp), %r15
movq %r15, %rsi
pushq %rbx
pushq 0x18(%rsp)
pushq %r12
pushq %r13
pushq %rax
pushq %r10
pushq %r11
callq 0x1e0b
addq $0x40, %rsp
leaq 0xba26(%rip), %rdi      # 0xd2ab
leaq 0xba25(%rip), %rsi      # 0xd2b1
movq %rbx, %rdx
callq 0x24f3
jmp 0x1c75
testq %r14, %r14
movq 0x10(%rsp), %r15
je 0x1c75
testq %rbx, %rbx
movq %r15, 0x10(%rsp)
je 0x1c75
movq %r14, 0x90(%rsp)
movq %r14, %rdi
callq 0x2597
movq %rax, %r14
movq %rbx, %rdi
callq 0x2597
movq %rax, %r15
cmpb $0x0, 0x30(%rsp)
movq %r13, 0x58(%rsp)
movq %r12, 0x60(%rsp)
movq %rbx, 0x88(%rsp)
movq %r14, %rdi
je 0x1996
callq 0x25e1
testl %eax, %eax
movq %r14, 0x70(%rsp)
jle 0x1abc
movq %r14, %r12
movq %r15, 0x68(%rsp)
xorl %ebp, %ebp
movl $0x8, %r14d
movq $0x0, (%rsp)
xorl %r15d, %r15d
movl %r15d, %eax
cmpq %rax, %rbp
jne 0x1953
movl %r15d, %ebx
sarl %ebx
addl %r15d, %ebx
testl %r15d, %r15d
movl $0x10, %eax
cmovel %eax, %ebx
movslq %ebx, %rsi
shlq $0x4, %rsi
movq (%rsp), %rdi
callq 0x1110
movq %rax, %r13
movl %ebx, %r15d
jmp 0x1957
movq (%rsp), %r13
incq %rbp
movq 0x10(%r12), %rdi
callq 0x1170
movq %rax, -0x8(%r13,%r14)
movq 0x40(%r12), %rdi
callq 0x1170
movq %r13, (%rsp)
movq %rax, (%r13,%r14)
movq %r12, %rdi
callq 0x25e1
addq $0x10, %r14
testl %eax, %eax
jg 0x1920
movq 0x68(%rsp), %r15
jmp 0x1ac6
callq 0x25e1
testl %eax, %eax
jle 0x1c46
leaq 0xc0(%rsp), %rbx
movsbl 0x18(%rsp), %eax
movq %rax, 0x30(%rsp)
movsbl 0x40(%rsp), %eax
movq %rax, (%rsp)
movsbl 0x48(%rsp), %eax
movq %rax, 0x18(%rsp)
movsbl 0x28(%rsp), %eax
movl %eax, 0x38(%rsp)
movq %r14, 0x70(%rsp)
movq %r15, 0x68(%rsp)
movq 0x18(%rsp), %r12
movq %r15, %rdi
callq 0x25e1
testl %eax, %eax
jle 0x1c46
cmpl $0x0, 0x50(%rsp)
movq %r15, %rcx
movq 0x58(%rsp), %r11
movq 0x20(%rsp), %rdx
movq %rbx, %r10
movq %r14, %r8
movq 0x10(%rsp), %rsi
movq 0x30(%rsp), %r15
movq (%rsp), %rbp
leaq 0xa0(%rsp), %r14
jle 0x1a8e
movl 0x50(%rsp), %r13d
movq %rdx, 0x20(%rsp)
movq 0x40(%rcx), %rdx
movq 0x40(%r8), %rcx
subq $0x8, %rsp
movq 0x28(%rsp), %rdi
movq %r14, %r8
movl 0x40(%rsp), %r9d
pushq %r10
pushq 0x18(%rsp)
pushq 0x78(%rsp)
pushq %r11
pushq %r15
pushq %rbp
pushq %r12
movq %r15, %rbp
movq %r10, %r15
movq %r11, %rbx
callq 0x1e0b
movq 0x50(%rsp), %rsi
movq %rbx, %r11
movq 0xb0(%rsp), %r8
movq %r15, %r10
movq %rbp, %r15
movq 0x40(%rsp), %rbp
movq 0xa8(%rsp), %rcx
addq $0x40, %rsp
decl %r13d
jne 0x1a2a
movq %r8, %r14
movq 0x10(%r8), %rdi
movq 0x10(%rcx), %rsi
movq %r10, %rdx
movq %rcx, %r15
movq %r10, %rbx
callq 0x24f3
movq %r14, %rdi
callq 0x25e1
testl %eax, %eax
jg 0x19e0
jmp 0x1c46
xorl %ebp, %ebp
movq $0x0, (%rsp)
movq %r15, %rdi
callq 0x25e1
movl %ebp, %ecx
movq %rcx, 0x78(%rsp)
testl %eax, %eax
jle 0x1c0a
movq 0x78(%rsp), %rax
shlq $0x4, %rax
movq %rax, 0x30(%rsp)
movsbl 0x18(%rsp), %eax
movq %rax, 0x18(%rsp)
movsbl 0x40(%rsp), %eax
movq %rax, 0x38(%rsp)
movsbl 0x48(%rsp), %eax
movq %rax, 0x50(%rsp)
movsbl 0x28(%rsp), %eax
movl %eax, 0x28(%rsp)
movq %rbp, 0x98(%rsp)
testl %ebp, %ebp
movq 0x58(%rsp), %r10
movq 0x20(%rsp), %rdx
movq 0x60(%rsp), %r11
movq 0x8(%rsp), %r13
movq %r15, %r14
movq 0x10(%rsp), %rsi
movq (%rsp), %rdi
leaq 0xc0(%rsp), %rbp
movq 0x38(%rsp), %r15
movq 0x50(%rsp), %r12
leaq 0xa0(%rsp), %rax
je 0x1bef
xorl %ebx, %ebx
movq %rdx, 0x20(%rsp)
movq %rdi, (%rsp)
movq 0x40(%r14), %rdx
movq 0x8(%rdi,%rbx), %rcx
subq $0x8, %rsp
movq 0x28(%rsp), %rdi
movq %rax, %r8
movl 0x30(%rsp), %r9d
pushq %rbp
pushq %r13
pushq %r11
pushq %r10
pushq 0x40(%rsp)
pushq %r15
pushq %r12
movq %rbp, %r15
movq %r13, %rbp
movq %r11, %r13
movq %rax, %r12
callq 0x1e0b
addq $0x40, %rsp
movq (%rsp), %rax
movq (%rax,%rbx), %rdi
movq 0x10(%r14), %rsi
movq %r15, %rdx
callq 0x24f3
movq %r12, %rax
movq (%rsp), %rdi
movq 0x30(%rsp), %rcx
movq 0x10(%rsp), %rsi
movq %r13, %r11
movq %rbp, %r13
movq %r15, %rbp
movq 0x38(%rsp), %r15
movq 0x58(%rsp), %r10
movq 0x50(%rsp), %r12
addq $0x10, %rbx
cmpq %rbx, %rcx
jne 0x1b67
movq %r14, %rdi
callq 0x25e1
testl %eax, %eax
movq %r14, %r15
movq 0x98(%rsp), %rbp
jg 0x1b1a
testl %ebp, %ebp
movq (%rsp), %r14
movq 0x78(%rsp), %r12
je 0x1c39
shlq $0x4, %r12
xorl %ebx, %ebx
movq (%r14,%rbx), %rdi
callq 0x1040
movq 0x8(%r14,%rbx), %rdi
callq 0x1040
addq $0x10, %rbx
cmpq %rbx, %r12
jne 0x1c1d
movq %r14, %rdi
callq 0x1040
movq 0x70(%rsp), %r14
movq %r14, %rdi
callq 0x294a
movq %r15, %rdi
callq 0x294a
movq 0x90(%rsp), %rdi
callq 0x1030
movq 0x88(%rsp), %rdi
callq 0x1030
movq 0x10(%rsp), %r15
movq 0xf0(%rsp), %rsi
movq %r15, %rdi
callq 0x2cb0
movq %r15, %rdi
callq 0x2c3b
xorl %eax, %eax
addq $0xf8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl 0x38(%rsp), %eax
movl %eax, %r15d
movl (%rsp), %eax
movl %eax, %ebx
movq 0x60(%rsp), %r13
movq 0x28(%rsp), %r12
movq 0x48(%rsp), %rbp
jmp 0x1cc4
movb $0x4, %r12b
movb $0x2, %bpl
movq 0xe32d(%rip), %r14      # 0xfff8
movq (%r14), %rcx
leaq 0xb3ca(%rip), %rdi      # 0xd09f
movl $0x34, %esi
movl $0x1, %edx
callq 0x1160
movq (%r14), %rcx
leaq 0xb3e6(%rip), %rdi      # 0xd0d4
movl $0x9, %esi
movl $0x1, %edx
callq 0x1160
movq (%r14), %rdi
leaq 0xb3d7(%rip), %rsi      # 0xd0de
movq 0x20(%rsp), %rdx
xorl %eax, %eax
callq 0x10d0
movq (%r14), %rcx
leaq 0xb415(%rip), %rdi      # 0xd132
movl $0x38, %esi
movl $0x1, %edx
callq 0x1160
movq (%r14), %rcx
leaq 0xb435(%rip), %rdi      # 0xd16b
movl $0x21, %esi
movl $0x1, %edx
callq 0x1160
movq (%r14), %rdi
leaq 0xb43e(%rip), %rsi      # 0xd18d
movl %r13d, %edx
xorl %eax, %eax
callq 0x10d0
movq (%r14), %rcx
leaq 0xb447(%rip), %rdi      # 0xd1aa
movl $0x24, %esi
movl $0x1, %edx
callq 0x1160
movq (%r14), %rcx
leaq 0xb453(%rip), %rdi      # 0xd1cf
movl $0x1b, %esi
movl $0x1, %edx
callq 0x1160
movq (%r14), %rdi
movsbl %r15b, %edx
leaq 0xb452(%rip), %rsi      # 0xd1eb
xorl %eax, %eax
callq 0x10d0
movq (%r14), %rdi
movsbl %bl, %edx
leaq 0xb460(%rip), %rsi      # 0xd20d
xorl %eax, %eax
callq 0x10d0
movq (%r14), %rdi
movsbl %r12b, %edx
movsbl 0x40(%rsp), %ecx
leaq 0xb46d(%rip), %rsi      # 0xd234
xorl %eax, %eax
callq 0x10d0
movq (%r14), %rdi
movsbl %bpl, %edx
movsbl 0x18(%rsp), %ecx
leaq 0xb47d(%rip), %rsi      # 0xd25e
xorl %eax, %eax
callq 0x10d0
movq (%r14), %rcx
leaq 0xb49b(%rip), %rdi      # 0xd28d
movl $0x1b, %esi
movl $0x1, %edx
callq 0x1160
movl $0x1, %eax
jmp 0x1c8f