// File: /workspace/github_c_makefile_star2_O3/aokad[P]sequeeze/seqtk.c
// Function: stk_sample
int stk_sample(int argc, char *argv[])
{
	int c, twopass = 0;
	uint64_t i, num = 0, n_seqs = 0;
	double frac = 0.;
	gzFile fp;
	kseq_t *seq;
	krand_t *kr = 0;

	while ((c = getopt(argc, argv, "2s:")) >= 0)
		if (c == 's') kr = kr_srand(atol(optarg));
		else if (c == '2') twopass = 1;

	if (optind + 2 > argc) {
		fprintf(stderr, "\n");
		fprintf(stderr, "Usage:   seqtk sample [-2] [-s seed=11] <in.fa> <frac>|<number>\n\n");
		fprintf(stderr, "Options: -s INT       RNG seed [11]\n");
		fprintf(stderr, "         -2           2-pass mode: twice as slow but with much reduced memory\n\n");
		return 1;
	}
	frac = atof(argv[optind+1]);
	if (frac >= 1.0) num = (uint64_t)(frac + .499), frac = 0.;
	else if (twopass) {
		fprintf(stderr, "[W::%s] when sampling a fraction, option -2 is ignored.", __func__);
		twopass = 0;
	}
	if (kr == 0) kr = kr_srand(11);

	if (!twopass) { // the streaming version
		kseq_t *buf = 0;
		if (num > 0) buf = calloc(num, sizeof(kseq_t));
		if (num > 0 && buf == NULL) {
			fprintf(stderr, "[E::%s] Could not allocate enough memory for %" PRIu64 " sequences. Exiting...\n", __func__, num);
			free(kr);
			return 1;
		}

		fp = strcmp(argv[optind], "-")? gzopen(argv[optind], "r") : gzdopen(fileno(stdin), "r");
		if (fp == 0) {
			fprintf(stderr, "[E::%s] failed to open the input file/stream.\n", __func__);
			return 1;
		}
		seq = kseq_init(fp);
		n_seqs = 0;
		while (kseq_read(seq) >= 0) {
			double r = kr_drand(kr);
			++n_seqs;
			if (num) {
				uint64_t y = n_seqs - 1 < num? n_seqs - 1 : (uint64_t)(r * n_seqs);
				if (y < num) cpy_kseq(&buf[y], seq);
			} else if (r < frac) stk_printseq(seq, UINT_MAX);
		}
		for (i = 0; i < num; ++i) {
			kseq_t *p = &buf[i];
			if (p->seq.l) stk_printseq(p, UINT_MAX);
			free(p->seq.s); free(p->qual.s); free(p->name.s);
		}
		if (buf != NULL) free(buf);
	} else {
		uint64_t *buf;
		khash_t(64) *hash;
		int absent;

		if (strcmp(argv[optind], "-") == 0) {
			fprintf(stderr, "[E::%s] in the 2-pass mode, the input cannot be STDIN.\n", __func__);
			free(kr);
			return 1;
		}

		// 1st pass
		buf = malloc(num * 8);
		for (i = 0; i < num; ++i) buf[i] = UINT64_MAX;
		fp = gzopen(argv[optind], "r");
		if (fp == 0) {
			fprintf(stderr, "[E::%s] failed to open the input file/stream.\n", __func__);
			return 1;
		}
		seq = kseq_init(fp);
		n_seqs = 0;
		while (kseq_read(seq) >= 0) {
			double r = kr_drand(kr);
			uint64_t y;
			++n_seqs;
			y = n_seqs - 1 < num? n_seqs - 1 : (uint64_t)(r * n_seqs);
			if (y < num) buf[y] = n_seqs;
		}
		kseq_destroy(seq);
		gzclose(fp);
		hash = kh_init(64);
		for (i = 0; i < num; ++i) kh_put(64, hash, buf[i], &absent);
		free(buf);
		// 2nd pass
		fp = gzopen(argv[optind], "r");
		seq = kseq_init(fp);
		n_seqs = 0;
		while (kseq_read(seq) >= 0)
			if (kh_get(64, hash, ++n_seqs) != kh_end(hash))
				stk_printseq(seq, UINT_MAX);
		kh_destroy(64, hash);
	}

	kseq_destroy(seq);
	gzclose(fp);
	free(kr);
	return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %rsi, %rbp
movl %edi, %ebx
leaq 0x537e(%rip), %rdx      # 0xbb1c
callq 0x2240
xorl %r15d, %r15d
testl %eax, %eax
movq %rbp, 0x20(%rsp)
js 0x6803
leaq 0x5366(%rip), %r14      # 0xbb1c
movq 0x981b(%rip), %r12      # 0xffd8
xorl %r13d, %r13d
cmpl $0x32, %eax
je 0x67e0
cmpl $0x73, %eax
jne 0x67e6
movq (%r12), %rdi
callq 0x2230
movq %rax, %rdi
callq 0x3844
movq %rax, %r13
jmp 0x67e6
movl $0x1, %r15d
movl %ebx, %edi
movq %rbp, %rsi
movq %r14, %rdx
callq 0x2240
testl %eax, %eax
jns 0x67c0
testl %r15d, %r15d
sete %bpl
movq %r13, %r12
jmp 0x6809
movb $0x1, %bpl
xorl %r12d, %r12d
movq 0x97c0(%rip), %r15      # 0xffd0
movslq (%r15), %rax
leal 0x2(%rax), %ecx
cmpl %ebx, %ecx
jg 0x71b2
movq 0x20(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rdi
callq 0x20a0
ucomisd 0x4843(%rip), %xmm0     # 0xb078
jae 0x684e
testb %bpl, %bpl
je 0x71b9
movq $0x0, 0x8(%rsp)
movb $0x1, %bpl
jmp 0x687e
addsd 0x482a(%rip), %xmm0     # 0xb080
cvttsd2si %xmm0, %rax
movq %rax, %rcx
subsd 0x4822(%rip), %xmm0     # 0xb088
cvttsd2si %xmm0, %rdx
sarq $0x3f, %rcx
andq %rcx, %rdx
orq %rax, %rdx
movq %rdx, 0x8(%rsp)
xorpd %xmm0, %xmm0
testq %r12, %r12
jne 0x689c
movl $0xb, %edi
movapd %xmm0, 0x10(%rsp)
callq 0x3844
movapd 0x10(%rsp), %xmm0
movq %rax, %r12
testb %bpl, %bpl
je 0x6902
movapd %xmm0, 0x10(%rsp)
movq 0x8(%rsp), %rbx
testq %rbx, %rbx
movq 0x20(%rsp), %r14
je 0x6de9
movl $0x70, %esi
movq %rbx, %rdi
callq 0x2160
movq %rax, %r13
testq %rax, %rax
jne 0x6dec
movq 0x971e(%rip), %rax      # 0xfff8
movq (%rax), %rdi
leaq 0x5336(%rip), %rsi      # 0xbc1a
leaq 0x5324(%rip), %rdx      # 0xbc0f
movq %rbx, %rcx
xorl %eax, %eax
callq 0x2190
movq %r12, %rdi
callq 0x2050
jmp 0x71e5
movslq (%r15), %rax
movq 0x20(%rsp), %rcx
movq (%rcx,%rax,8), %rbx
cmpb $0x2d, (%rbx)
movq 0x8(%rsp), %rbp
jne 0x6922
cmpb $0x0, 0x1(%rbx)
je 0x71dd
leaq (,%rbp,8), %r14
movq %r14, %rdi
callq 0x21d0
movq %rax, %r13
testq %rbp, %rbp
je 0x694a
movq %r13, %rdi
movl $0xff, %esi
movq %r14, %rdx
callq 0x2120
leaq 0x4857(%rip), %rsi      # 0xb1a8
movq %rbx, %rdi
callq 0x2220
testq %rax, %rax
je 0x71cf
movq %rax, %rbx
movq %r12, 0x28(%rsp)
movq %rax, %rdi
callq 0x3edd
movq %rax, %r14
movq %rax, %rdi
callq 0x3f27
testl %eax, %eax
js 0x6a13
movl $0x1, %r15d
leaq -0x1(%r15), %r12
movq 0x28(%rsp), %rdi
callq 0x38a0
cmpq %rbp, %r12
jb 0x69f6
shrq $0xb, %rax
xorps %xmm0, %xmm0
cvtsi2sd %rax, %xmm0
mulsd 0x46de(%rip), %xmm0     # 0xb090
movq %r15, %xmm1
punpckldq 0x4661(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x4669(%rip), %xmm1     # 0xb030
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
addsd %xmm1, %xmm2
mulsd %xmm0, %xmm2
cvttsd2si %xmm2, %rax
movq %rax, %rcx
sarq $0x3f, %rcx
subsd 0x469d(%rip), %xmm2     # 0xb088
cvttsd2si %xmm2, %r12
andq %rcx, %r12
orq %rax, %r12
cmpq %rbp, %r12
jae 0x6a00
movq %r15, (%r13,%r12,8)
movq %r14, %rdi
callq 0x3f27
incq %r15
testl %eax, %eax
jns 0x698b
movq %r13, 0x30(%rsp)
movq %r14, %rdi
callq 0x428d
movq %rbx, %rdi
callq 0x2040
movl $0x1, %edi
movl $0x28, %esi
callq 0x2160
movq %rax, %r13
testq %rbp, %rbp
movq %rax, 0x10(%rsp)
je 0x6fe9
xorl %ebx, %ebx
movsd 0x4646(%rip), %xmm1     # 0xb098
movsd 0x4616(%rip), %xmm2     # 0xb070
xorl %r12d, %r12d
xorl %r11d, %r11d
xorl %ecx, %ecx
xorl %r14d, %r14d
movq 0x30(%rsp), %rdx
movq (%rdx,%r14,8), %r15
cmpl %r11d, %ecx
jb 0x6c94
movl 0x4(%r13), %eax
leal (%rax,%rax), %edx
cmpl %r12d, %edx
movl $0x0, %edx
sbbl %edx, %edx
orl $0x1, %edx
addl %r12d, %edx
decl %edx
movl %edx, %esi
shrl %esi
orl %edx, %esi
movl %esi, %edx
shrl $0x2, %edx
orl %esi, %edx
movl %edx, %esi
shrl $0x4, %esi
orl %edx, %esi
movl %esi, %edi
shrl $0x8, %edi
orl %esi, %edi
movl %edi, %edx
shrl $0x10, %edx
orl %edi, %edx
incl %edx
cmpl $0x5, %edx
movl $0x4, %esi
cmovael %edx, %esi
cvtsi2sd %rsi, %xmm0
mulsd %xmm1, %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %rdi
cmpl %edi, %eax
jae 0x6c94
movq %rdi, 0x38(%rsp)
movq %rax, 0x40(%rsp)
movl %esi, %ebp
shrl $0x2, %ebp
andl $-0x4, %ebp
cmpl $0x10, %edx
movl $0x4, %eax
cmovbl %eax, %ebp
movq %rbp, %rdi
movq %rsi, (%rsp)
callq 0x21d0
movq %rax, %r13
movq %rax, %rdi
movl $0xaa, %esi
movq %rbp, %rdx
callq 0x2120
movq (%rsp), %rcx
cmpl %ecx, %r12d
jae 0x6b44
movq 0x10(%rsp), %rbp
movq 0x18(%rbp), %rdi
movl (%rsp), %esi
shlq $0x3, %rsi
callq 0x2200
movq (%rsp), %rcx
movq %rax, 0x18(%rbp)
testl %r12d, %r12d
je 0x6c5d
leal -0x1(%rcx), %eax
xorl %edx, %edx
movl %edx, %esi
shrl $0x4, %esi
movl (%rbx,%rsi,4), %r8d
leal (%rdx,%rdx), %ecx
andl $0x1e, %ecx
movl %r8d, %edi
shrl %cl, %edi
testb $0x3, %dil
jne 0x6c29
leaq (%rbx,%rsi,4), %r9
movq 0x10(%rsp), %rsi
movq 0x18(%rsi), %rsi
movq (%rsi,%rdx,8), %rdi
btsl %ecx, %r8d
movl %r8d, (%r9)
movq %rdi, %r10
shrq $0x21, %r10
movl %edi, %ecx
shll $0xb, %ecx
xorl %ecx, %r10d
xorl %edi, %r10d
movl %eax, %r8d
andl %r10d, %r8d
movl %r8d, %r9d
shrl $0x4, %r9d
movl (%r13,%r9,4), %r11d
leal (%r8,%r8), %ecx
andl $0x1e, %ecx
movl $0x2, %ebp
shll %cl, %ebp
testl %r11d, %ebp
jne 0x6bef
movl %r10d, %ecx
shrl $0x3, %ecx
shll $0x3, %r10d
xorl %ecx, %r10d
orl $0x1, %r10d
andl %eax, %r10d
addl %r10d, %r8d
andl %eax, %r8d
movl %r8d, %r9d
shrl $0x4, %r9d
movl (%r13,%r9,4), %r11d
leal (%r8,%r8), %ecx
andl $0x1e, %ecx
movl $0x2, %ebp
shll %cl, %ebp
testl %r11d, %ebp
je 0x6bca
notl %ebp
andl %r11d, %ebp
movl %ebp, (%r13,%r9,4)
movl %r8d, %r10d
cmpl %r12d, %r8d
jae 0x6c25
movl (%rbx,%r9,4), %r8d
movl %r8d, %r11d
shrl %cl, %r11d
testb $0x3, %r11b
jne 0x6c25
leaq (%rbx,%r9,4), %r9
movq (%rsi,%r10,8), %r11
movq %rdi, (%rsi,%r10,8)
movq %r11, %rdi
jmp 0x6b78
movq %rdi, (%rsi,%r10,8)
incq %rdx
cmpl %edx, %r12d
jne 0x6b49
movq (%rsp), %rcx
cmpl %ecx, %r12d
jbe 0x6c5d
movq 0x10(%rsp), %r12
movq 0x18(%r12), %rdi
movl (%rsp), %esi
shlq $0x3, %rsi
callq 0x2200
movq (%rsp), %rcx
movq %rax, 0x18(%r12)
movq %rbx, %rdi
movq %rcx, %r12
callq 0x2050
movq %r13, %rbx
movq 0x38(%rsp), %rax
movl %eax, %r11d
movq 0x10(%rsp), %r13
movq 0x8(%rsp), %rbp
movsd 0x4413(%rip), %xmm1     # 0xb098
movsd 0x43e3(%rip), %xmm2     # 0xb070
movq 0x40(%rsp), %rax
jmp 0x6c96
movl %ecx, %eax
leal -0x1(%r12), %edi
movq %r15, %r8
shrq $0x21, %r8
movl %r15d, %ecx
shll $0xb, %ecx
xorl %ecx, %r8d
xorl %r15d, %r8d
movl %edi, %esi
andl %r8d, %esi
movl %esi, %ecx
shrl $0x4, %ecx
movl (%rbx,%rcx,4), %edx
leal (%rsi,%rsi), %ecx
shrl %cl, %edx
testb $0x2, %dl
je 0x6ccc
movl %esi, %edx
jmp 0x6d62
movl %r11d, (%rsp)
movl %r8d, %ecx
shrl $0x3, %ecx
shll $0x3, %r8d
xorl %ecx, %r8d
orl $0x1, %r8d
andl %edi, %r8d
movl %r12d, %edx
movl %esi, %r9d
movl %r9d, %ecx
shrl $0x4, %ecx
movl (%rbx,%rcx,4), %r10d
leal (%r9,%r9), %ecx
andl $0x1e, %ecx
movl %r10d, %r11d
shrl %cl, %r11d
testb $0x2, %r11b
jne 0x6d42
testb $0x1, %r11b
jne 0x6d1f
movq 0x18(%r13), %r11
movl %r9d, %r13d
cmpq %r15, (%r11,%r13,8)
movq 0x10(%rsp), %r13
je 0x6d42
btl %ecx, %r10d
cmovbl %r9d, %edx
addl %r8d, %r9d
andl %edi, %r9d
cmpl %esi, %r9d
jne 0x6cea
movb $0x1, %cl
movl %r12d, %edi
cmpl %r12d, %edx
movl (%rsp), %r11d
je 0x6d55
jmp 0x6d62
shrl %cl, %r10d
testb $0x2, %r10b
sete %cl
movl %r9d, %esi
movl %edx, %edi
movl (%rsp), %r11d
cmpl %r12d, %edi
cmovel %esi, %edi
testb %cl, %cl
cmovnel %esi, %edi
movl %edi, %edx
movl %edx, %esi
shrl $0x4, %esi
movl (%rbx,%rsi,4), %edi
leal (%rdx,%rdx), %ecx
andl $0x1e, %ecx
movl %edi, %r8d
shrl %cl, %r8d
testb $0x2, %r8b
jne 0x6da4
testb $0x1, %r8b
je 0x6dc6
movq 0x18(%r13), %r8
movl %edx, %edx
movl $0x3, %r9d
shll %cl, %r9d
movq %r15, (%r8,%rdx,8)
notl %r9d
andl %r9d, %edi
movl %edi, (%rbx,%rsi,4)
incl 0x4(%r13)
jmp 0x6dc6
movq 0x18(%r13), %r8
movl $0x3, %r9d
shll %cl, %r9d
movl %edx, %ecx
movq %r15, (%r8,%rcx,8)
notl %r9d
andl %r9d, %edi
movl %edi, (%rbx,%rsi,4)
incl 0x4(%r13)
incl %eax
movl %eax, %ecx
incq %r14
cmpq %rbp, %r14
jne 0x6a65
movl %ecx, 0x8(%r13)
movl %r11d, 0xc(%r13)
movl %r12d, (%r13)
movq %rbx, 0x10(%r13)
jmp 0x6fee
xorl %r13d, %r13d
movslq (%r15), %rax
movq (%r14,%rax,8), %rdi
cmpb $0x2d, (%rdi)
jne 0x6e02
cmpb $0x0, 0x1(%rdi)
je 0x7190
leaq 0x439f(%rip), %rsi      # 0xb1a8
callq 0x2220
testq %rax, %rax
je 0x71d6
movq %rax, (%rsp)
movq %rax, %rdi
callq 0x3edd
movq %rax, %rbp
movq %rax, %rdi
callq 0x3f27
testl %eax, %eax
js 0x6f45
movl $0x1, %ebx
movq 0x917e(%rip), %r14      # 0xffc0
movq %r12, %rdi
callq 0x38a0
shrq $0xb, %rax
xorps %xmm0, %xmm0
cvtsi2sd %rax, %xmm0
mulsd 0x4232(%rip), %xmm0     # 0xb090
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x6ecd
movq %rbx, %xmm1
punpckldq 0x41ab(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x41b3(%rip), %xmm1     # 0xb030
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
addsd %xmm1, %xmm2
mulsd %xmm2, %xmm0
cvttsd2si %xmm0, %rcx
leaq -0x1(%rbx), %rdx
movq %rcx, %rsi
sarq $0x3f, %rsi
subsd 0x41e3(%rip), %xmm0     # 0xb088
cvttsd2si %xmm0, %rax
andq %rsi, %rax
orq %rcx, %rax
cmpq %rdi, %rdx
cmovbq %rdx, %rax
cmpq %rdi, %rax
jae 0x6f32
imulq $0x70, %rax, %rdi
addq %r13, %rdi
movq %rbp, %rsi
callq 0x71ec
jmp 0x6f32
movapd 0x10(%rsp), %xmm1
ucomisd %xmm0, %xmm1
jbe 0x6f32
movq 0x48(%rbp), %r15
xorl %eax, %eax
testq %r15, %r15
setne %al
leal 0x3e(,%rax,2), %edi
callq 0x2060
movq 0x10(%rbp), %rdi
movq (%r14), %rsi
callq 0x2110
movl $0xa, %edi
callq 0x2060
movq 0x40(%rbp), %rdi
callq 0x2080
testq %r15, %r15
je 0x6f32
movl $0x2b, %edi
callq 0x2060
movl $0xa, %edi
callq 0x2060
movq 0x58(%rbp), %rdi
callq 0x2080
movq %rbp, %rdi
callq 0x3f27
incq %rbx
testl %eax, %eax
jns 0x6e42
cmpq $0x0, 0x8(%rsp)
je 0x7163
leaq 0x58(%r13), %rbx
movq 0x9064(%rip), %r14      # 0xffc0
cmpq $0x0, -0x28(%rbx)
je 0x6fbb
xorl %eax, %eax
cmpq $0x0, -0x10(%rbx)
setne %al
leal 0x3e(,%rax,2), %edi
callq 0x2060
movq -0x48(%rbx), %rdi
movq (%r14), %rsi
callq 0x2110
movl $0xa, %edi
callq 0x2060
movq -0x18(%rbx), %rdi
callq 0x2080
cmpq $0x0, -0x10(%rbx)
je 0x6fbb
movl $0x2b, %edi
callq 0x2060
movl $0xa, %edi
callq 0x2060
movq (%rbx), %rdi
callq 0x2080
movq -0x18(%rbx), %rdi
callq 0x2050
movq (%rbx), %rdi
callq 0x2050
movq -0x48(%rbx), %rdi
callq 0x2050
addq $0x70, %rbx
decq 0x8(%rsp)
jne 0x6f5c
jmp 0x7154
xorl %ebx, %ebx
xorl %r12d, %r12d
movq 0x30(%rsp), %rdi
callq 0x2050
movq 0x8fd1(%rip), %rax      # 0xffd0
movslq (%rax), %rax
movq 0x20(%rsp), %rcx
movq (%rcx,%rax,8), %rdi
leaq 0x4196(%rip), %rsi      # 0xb1a8
callq 0x2220
movq %rax, (%rsp)
movq %rax, %rdi
callq 0x3edd
movq %rax, %rbp
movq %rax, %rdi
callq 0x3f27
testl %eax, %eax
js 0x7130
leal -0x1(%r12), %r14d
xorl %r15d, %r15d
incq %r15
movl $0x0, %edx
testl %r12d, %r12d
je 0x70b6
movq %r15, %rax
shrq $0x21, %rax
movl %r15d, %ecx
shll $0xb, %ecx
xorl %ecx, %eax
xorl %r15d, %eax
movl %r14d, %esi
andl %eax, %esi
movl %eax, %ecx
shrl $0x3, %ecx
shll $0x3, %eax
xorl %ecx, %eax
orl $0x1, %eax
andl %r14d, %eax
movl %esi, %edx
movl %edx, %ecx
shrl $0x4, %ecx
movl (%rbx,%rcx,4), %edi
leal (%rdx,%rdx), %ecx
andl $0x1e, %ecx
movl %edi, %r8d
shrl %cl, %r8d
testb $0x2, %r8b
jne 0x70ac
testb $0x1, %r8b
jne 0x70a1
movq 0x18(%r13), %r8
movl %edx, %r9d
cmpq %r15, (%r8,%r9,8)
je 0x70ac
addl %eax, %edx
andl %r14d, %edx
cmpl %esi, %edx
jne 0x7074
jmp 0x7120
shrl %cl, %edi
testb $0x3, %dil
cmovnel %r12d, %edx
cmpl %r12d, %edx
je 0x7120
movq 0x48(%rbp), %r13
xorl %eax, %eax
testq %r13, %r13
setne %al
leal 0x3e(,%rax,2), %edi
callq 0x2060
movq 0x10(%rbp), %rdi
movq 0x8ee2(%rip), %rax      # 0xffc0
movq (%rax), %rsi
callq 0x2110
movl $0xa, %edi
callq 0x2060
movq 0x40(%rbp), %rdi
callq 0x2080
testq %r13, %r13
movq 0x10(%rsp), %r13
je 0x7120
movl $0x2b, %edi
callq 0x2060
movl $0xa, %edi
callq 0x2060
movq 0x58(%rbp), %rdi
callq 0x2080
movq %rbp, %rdi
callq 0x3f27
testl %eax, %eax
jns 0x703e
testq %r13, %r13
je 0x715e
movq 0x18(%r13), %rdi
callq 0x2050
movq %rbx, %rdi
callq 0x2050
movq 0x20(%r13), %rdi
callq 0x2050
movq 0x28(%rsp), %r12
movq %r13, %rdi
callq 0x2050
jmp 0x7163
movq 0x28(%rsp), %r12
movq (%rsp), %rbx
movq %rbp, %rdi
callq 0x428d
movq %rbx, %rdi
callq 0x2040
movq %r12, %rdi
callq 0x2050
xorl %eax, %eax
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x8e31(%rip), %rax      # 0xffc8
movq (%rax), %rdi
callq 0x21b0
leaq 0x4002(%rip), %rsi      # 0xb1a8
movl %eax, %edi
callq 0x20b0
jmp 0x6e0e
callq 0x28e0
jmp 0x71e5
movapd %xmm0, 0x10(%rsp)
callq 0x2857
movapd 0x10(%rsp), %xmm0
jmp 0x6840
callq 0x2876
jmp 0x71e5
callq 0x28c1
jmp 0x71e5
movq %r12, %rdi
callq 0x2895
movl $0x1, %eax
jmp 0x7181