// File: chhylp123[P]hifiasm/extract.cpp
// Function: ha_extract_print(All_reads const*, int, int, char**)
void ha_extract_print(const All_reads *rs, int n_rounds, int n, char **list)
{
	hm64_t *h;
	khint_t k;
	int i, absent, m, l;
	uint64_t j;
	const ma_hit_t_alloc *ov[2] = { rs->paf, rs->reverse_paf };
	FILE *fp = stdout;

	if (n > 0) {
		int max_len = 0;
		char *s = 0;
		strset_t *ss;
		ss = ss_init();
		for (i = 0; i < n; ++i)
			ss_put(ss, list[i], &absent);
		for (j = 0; j < rs->total_reads; ++j)
			if (max_len < (int)Get_NAME_LENGTH(*rs, j))
				max_len = Get_NAME_LENGTH(*rs, j);
		GFA_MALLOC(s, max_len + 1);
		h = h64_init();
		for (j = 0; j < rs->total_reads; ++j) {
			strncpy(s, Get_NAME(*rs, j), Get_NAME_LENGTH(*rs, j));
			s[Get_NAME_LENGTH(*rs, j)] = 0;
			if (ss_get(ss, s) != kh_end(ss)) {
				k = h64_put(h, j, &absent);
				kh_val(h, k) = -1;
			}
		}
		free(s);
		ss_destroy(ss);
	} else return;

	for (m = 0; m < n_rounds; ++m) {
		for (j = 0; j < rs->total_reads; ++j) {
			for (l = 0; l < 2; ++l) {
				const ma_hit_t_alloc *o = &ov[l][j];
				for (i = 0; i < (int)o->length; ++i) {
					uint64_t q = Get_qn(o->buffer[i]);
					uint64_t t = Get_tn(o->buffer[i]);
					int q_hit = 0, t_hit = 0;
					k = h64_get(h, q);
					q_hit = (k < kh_end(h) && kh_val(h, k) < m);
					k = h64_get(h, t);
					t_hit = (k < kh_end(h) && kh_val(h, k) < m);
					if ((!q_hit && !t_hit) || (q_hit && t_hit)) continue;
					if (!q_hit) {
						k = h64_put(h, q, &absent);
						if (absent) kh_val(h, k) = m;
					}
					if (!t_hit) {
						k = h64_put(h, t, &absent);
						if (absent) kh_val(h, k) = m;
					}
				}
			}
		}
	}

	for (j = 0; j < rs->total_reads; ++j) {
		for (l = 0; l < 2; ++l) {
			const ma_hit_t_alloc *o = &ov[l][j];
			for (i = 0; i < (int)o->length; ++i) {
				uint64_t q = Get_qn(o->buffer[i]);
				uint64_t t = Get_tn(o->buffer[i]);
				int q_hit = 0, t_hit = 0;
				q_hit = (h64_get(h, q) < kh_end(h));
				t_hit = (h64_get(h, t) < kh_end(h));
				if (!q_hit && !t_hit) continue;
				fwrite(Get_NAME(*rs, q), 1, Get_NAME_LENGTH(*rs, q), fp);
				fwrite("\t", 1, 1, fp);
				fprintf(fp, "%lu\t", (unsigned long)Get_READ_LENGTH(*rs, q));
				fprintf(fp, "%d\t", Get_qs(o->buffer[i]));
				fprintf(fp, "%d\t", Get_qe(o->buffer[i]));
				fputs(o->buffer[i].rev? "-\t" : "+\t", fp);
				fwrite(Get_NAME(*rs, t), 1, Get_NAME_LENGTH(*rs, t), fp);
				fwrite("\t", 1, 1, fp);
				fprintf(fp, "%lu\t", (unsigned long)Get_READ_LENGTH(*rs, t));
				fprintf(fp, "%d\t", Get_ts(o->buffer[i]));
				fprintf(fp, "%d\t%d\t%d\t%d\n", Get_te(o->buffer[i]), o->buffer[i].ml, o->buffer[i].bl, !l);
			}
		}
	}

	h64_destroy(h);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xf0, %rsp
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movl %edx, -0x10(%rbp)
movq %rcx, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq 0x78(%rax), %rax
movq %rax, -0x50(%rbp)
movq -0x8(%rbp), %rax
movq 0x80(%rax), %rax
movq %rax, -0x48(%rbp)
movq 0x20e51d(%rip), %rax    # 0x3c3fc8
movq (%rax), %rax
movq %rax, -0x58(%rbp)
cmpl $0x0, -0x10(%rbp)
jle 0x1b5cbe
movl $0x0, -0x5c(%rbp)
movq $0x0, -0x68(%rbp)
callq 0x1b63c0
movq %rax, -0x70(%rbp)
movl $0x0, -0x28(%rbp)
movl -0x28(%rbp), %eax
cmpl -0x10(%rbp), %eax
jge 0x1b5b07
movq -0x70(%rbp), %rdi
movq -0x18(%rbp), %rax
movslq -0x28(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq -0x2c(%rbp), %rdx
callq 0x1b63d0
movl -0x28(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x28(%rbp)
jmp 0x1b5adb
movq $0x0, -0x40(%rbp)
movq -0x40(%rbp), %rax
movq -0x8(%rbp), %rcx
cmpq 0x50(%rcx), %rax
jae 0x1b5b79
movl -0x5c(%rbp), %eax
movq -0x8(%rbp), %rcx
movq 0x40(%rcx), %rcx
movq -0x40(%rbp), %rdx
movq 0x8(%rcx,%rdx,8), %rcx
movq -0x8(%rbp), %rdx
movq 0x40(%rdx), %rdx
movq -0x40(%rbp), %rsi
subq (%rdx,%rsi,8), %rcx
cmpl %ecx, %eax
jge 0x1b5b69
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rax
movq -0x40(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rax
movq -0x8(%rbp), %rcx
movq 0x40(%rcx), %rcx
movq -0x40(%rbp), %rdx
subq (%rcx,%rdx,8), %rax
movl %eax, -0x5c(%rbp)
jmp 0x1b5b6b
movq -0x40(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x40(%rbp)
jmp 0x1b5b0f
movl -0x5c(%rbp), %eax
addl $0x1, %eax
movslq %eax, %rdi
shlq $0x0, %rdi
callq 0x2270
movq %rax, -0x68(%rbp)
callq 0x1b6410
movq %rax, -0x20(%rbp)
movq $0x0, -0x40(%rbp)
movq -0x40(%rbp), %rax
movq -0x8(%rbp), %rcx
cmpq 0x50(%rcx), %rax
jae 0x1b5caa
movq -0x68(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rsi
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rax
movq -0x40(%rbp), %rcx
addq (%rax,%rcx,8), %rsi
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rax
movq -0x40(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rdx
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rax
movq -0x40(%rbp), %rcx
subq (%rax,%rcx,8), %rdx
callq 0x20f0
movq -0x68(%rbp), %rax
movq -0x8(%rbp), %rcx
movq 0x40(%rcx), %rcx
movq -0x40(%rbp), %rdx
movq 0x8(%rcx,%rdx,8), %rcx
movq -0x8(%rbp), %rdx
movq 0x40(%rdx), %rdx
movq -0x40(%rbp), %rsi
subq (%rdx,%rsi,8), %rcx
movb $0x0, (%rax,%rcx)
movq -0x70(%rbp), %rdi
movq -0x68(%rbp), %rsi
callq 0x1b6420
movl %eax, -0xb4(%rbp)
movq -0x70(%rbp), %rax
cmpq $0x0, 0x10(%rax)
je 0x1b5c50
movq -0x70(%rbp), %rax
movl (%rax), %ecx
movl $0x1, %eax
shll %cl, %eax
movl %eax, -0xb8(%rbp)
jmp 0x1b5c5a
xorl %eax, %eax
movl %eax, -0xb8(%rbp)
jmp 0x1b5c5a
movl -0xb4(%rbp), %eax
movl -0xb8(%rbp), %ecx
cmpl %ecx, %eax
je 0x1b5c97
movq -0x20(%rbp), %rdi
movq -0x40(%rbp), %rsi
leaq -0x2c(%rbp), %rdx
callq 0x1b6460
movl %eax, -0x24(%rbp)
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movl -0x24(%rbp), %ecx
imulq $0xc, %rcx, %rcx
addq %rcx, %rax
movl $0xffffffff, 0x8(%rax)  # imm = 0xFFFFFFFF
jmp 0x1b5c99
movq -0x40(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x40(%rbp)
jmp 0x1b5ba0
movq -0x68(%rbp), %rdi
callq 0x2210
movq -0x70(%rbp), %rdi
callq 0x1b64a0
jmp 0x1b5cc3
jmp 0x1b63af
movl $0x0, -0x30(%rbp)
movl -0x30(%rbp), %eax
cmpl -0xc(%rbp), %eax
jge 0x1b5f7f
movq $0x0, -0x40(%rbp)
movq -0x40(%rbp), %rax
movq -0x8(%rbp), %rcx
cmpq 0x50(%rcx), %rax
jae 0x1b5f6f
movl $0x0, -0x34(%rbp)
cmpl $0x2, -0x34(%rbp)
jge 0x1b5f5c
movslq -0x34(%rbp), %rax
movq -0x50(%rbp,%rax,8), %rax
imulq $0x18, -0x40(%rbp), %rcx
addq %rcx, %rax
movq %rax, -0x78(%rbp)
movl $0x0, -0x28(%rbp)
movl -0x28(%rbp), %eax
movq -0x78(%rbp), %rcx
cmpl 0xc(%rcx), %eax
jge 0x1b5f4c
movq -0x78(%rbp), %rax
movq (%rax), %rax
movslq -0x28(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movq (%rax), %rax
shrq $0x20, %rax
movl %eax, %eax
movq %rax, -0x80(%rbp)
movq -0x78(%rbp), %rax
movq (%rax), %rax
movslq -0x28(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movl 0xc(%rax), %eax
movq %rax, -0x88(%rbp)
movl $0x0, -0x8c(%rbp)
movl $0x0, -0x90(%rbp)
movq -0x20(%rbp), %rdi
movq -0x80(%rbp), %rsi
callq 0x1b64c0
movl %eax, -0x24(%rbp)
movl -0x24(%rbp), %eax
movl %eax, -0xbc(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x10(%rax)
je 0x1b5db5
movq -0x20(%rbp), %rax
movl (%rax), %ecx
movl $0x1, %eax
shll %cl, %eax
movl %eax, -0xc0(%rbp)
jmp 0x1b5dbf
xorl %eax, %eax
movl %eax, -0xc0(%rbp)
jmp 0x1b5dbf
movl -0xbc(%rbp), %ecx
movl -0xc0(%rbp), %edx
xorl %eax, %eax
cmpl %edx, %ecx
movb %al, -0xc1(%rbp)
jae 0x1b5df8
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movl -0x24(%rbp), %ecx
imulq $0xc, %rcx, %rcx
addq %rcx, %rax
movl 0x8(%rax), %eax
cmpl -0x30(%rbp), %eax
setl %al
movb %al, -0xc1(%rbp)
movb -0xc1(%rbp), %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, -0x8c(%rbp)
movq -0x20(%rbp), %rdi
movq -0x88(%rbp), %rsi
callq 0x1b64c0
movl %eax, -0x24(%rbp)
movl -0x24(%rbp), %eax
movl %eax, -0xc8(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x10(%rax)
je 0x1b5e45
movq -0x20(%rbp), %rax
movl (%rax), %ecx
movl $0x1, %eax
shll %cl, %eax
movl %eax, -0xcc(%rbp)
jmp 0x1b5e4f
xorl %eax, %eax
movl %eax, -0xcc(%rbp)
jmp 0x1b5e4f
movl -0xc8(%rbp), %ecx
movl -0xcc(%rbp), %edx
xorl %eax, %eax
cmpl %edx, %ecx
movb %al, -0xcd(%rbp)
jae 0x1b5e88
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movl -0x24(%rbp), %ecx
imulq $0xc, %rcx, %rcx
addq %rcx, %rax
movl 0x8(%rax), %eax
cmpl -0x30(%rbp), %eax
setl %al
movb %al, -0xcd(%rbp)
movb -0xcd(%rbp), %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, -0x90(%rbp)
cmpl $0x0, -0x8c(%rbp)
jne 0x1b5eab
cmpl $0x0, -0x90(%rbp)
je 0x1b5ebd
cmpl $0x0, -0x8c(%rbp)
je 0x1b5ebf
cmpl $0x0, -0x90(%rbp)
je 0x1b5ebf
jmp 0x1b5f3e
cmpl $0x0, -0x8c(%rbp)
jne 0x1b5efc
movq -0x20(%rbp), %rdi
movq -0x80(%rbp), %rsi
leaq -0x2c(%rbp), %rdx
callq 0x1b6460
movl %eax, -0x24(%rbp)
cmpl $0x0, -0x2c(%rbp)
je 0x1b5efa
movl -0x30(%rbp), %ecx
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movl -0x24(%rbp), %edx
imulq $0xc, %rdx, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
jmp 0x1b5efc
cmpl $0x0, -0x90(%rbp)
jne 0x1b5f3c
movq -0x20(%rbp), %rdi
movq -0x88(%rbp), %rsi
leaq -0x2c(%rbp), %rdx
callq 0x1b6460
movl %eax, -0x24(%rbp)
cmpl $0x0, -0x2c(%rbp)
je 0x1b5f3a
movl -0x30(%rbp), %ecx
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movl -0x24(%rbp), %edx
imulq $0xc, %rdx, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
jmp 0x1b5f3c
jmp 0x1b5f3e
movl -0x28(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x28(%rbp)
jmp 0x1b5d1d
jmp 0x1b5f4e
movl -0x34(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x34(%rbp)
jmp 0x1b5cf7
jmp 0x1b5f5e
movq -0x40(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x40(%rbp)
jmp 0x1b5cde
jmp 0x1b5f71
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x1b5cca
movq $0x0, -0x40(%rbp)
movq -0x40(%rbp), %rax
movq -0x8(%rbp), %rcx
cmpq 0x50(%rcx), %rax
jae 0x1b63a6
movl $0x0, -0x34(%rbp)
cmpl $0x2, -0x34(%rbp)
jge 0x1b6393
movslq -0x34(%rbp), %rax
movq -0x50(%rbp,%rax,8), %rax
imulq $0x18, -0x40(%rbp), %rcx
addq %rcx, %rax
movq %rax, -0x98(%rbp)
movl $0x0, -0x28(%rbp)
movl -0x28(%rbp), %eax
movq -0x98(%rbp), %rcx
cmpl 0xc(%rcx), %eax
jge 0x1b6383
movq -0x98(%rbp), %rax
movq (%rax), %rax
movslq -0x28(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movq (%rax), %rax
shrq $0x20, %rax
movl %eax, %eax
movq %rax, -0xa0(%rbp)
movq -0x98(%rbp), %rax
movq (%rax), %rax
movslq -0x28(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movl 0xc(%rax), %eax
movq %rax, -0xa8(%rbp)
movl $0x0, -0xac(%rbp)
movl $0x0, -0xb0(%rbp)
movq -0x20(%rbp), %rdi
movq -0xa0(%rbp), %rsi
callq 0x1b64c0
movl %eax, -0xd4(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x10(%rax)
je 0x1b606a
movq -0x20(%rbp), %rax
movl (%rax), %ecx
movl $0x1, %eax
shll %cl, %eax
movl %eax, -0xd8(%rbp)
jmp 0x1b6074
xorl %eax, %eax
movl %eax, -0xd8(%rbp)
jmp 0x1b6074
movl -0xd4(%rbp), %eax
movl -0xd8(%rbp), %ecx
cmpl %ecx, %eax
setb %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, -0xac(%rbp)
movq -0x20(%rbp), %rdi
movq -0xa8(%rbp), %rsi
callq 0x1b64c0
movl %eax, -0xdc(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x10(%rax)
je 0x1b60c6
movq -0x20(%rbp), %rax
movl (%rax), %ecx
movl $0x1, %eax
shll %cl, %eax
movl %eax, -0xe0(%rbp)
jmp 0x1b60d0
xorl %eax, %eax
movl %eax, -0xe0(%rbp)
jmp 0x1b60d0
movl -0xdc(%rbp), %eax
movl -0xe0(%rbp), %ecx
cmpl %ecx, %eax
setb %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, -0xb0(%rbp)
cmpl $0x0, -0xac(%rbp)
jne 0x1b6103
cmpl $0x0, -0xb0(%rbp)
jne 0x1b6103
jmp 0x1b6375
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rdi
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rax
movq -0xa0(%rbp), %rcx
addq (%rax,%rcx,8), %rdi
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rax
movq -0xa0(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rdx
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rax
movq -0xa0(%rbp), %rcx
subq (%rax,%rcx,8), %rdx
movq -0x58(%rbp), %rcx
movl $0x1, %esi
callq 0x2400
movq -0x58(%rbp), %rcx
leaq 0x1e29ce(%rip), %rdi    # 0x398b2c
movl $0x1, %edx
movq %rdx, %rsi
callq 0x2400
movq -0x58(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rax
movq -0xa0(%rbp), %rcx
movq (%rax,%rcx,8), %rdx
leaq 0x1da201(%rip), %rsi    # 0x39038a
movb $0x0, %al
callq 0x22a0
movq -0x58(%rbp), %rdi
movq -0x98(%rbp), %rax
movq (%rax), %rax
movslq -0x28(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movq (%rax), %rax
movl %eax, %edx
leaq 0x1cb9d4(%rip), %rsi    # 0x381b89
movb $0x0, %al
callq 0x22a0
movq -0x58(%rbp), %rdi
movq -0x98(%rbp), %rax
movq (%rax), %rax
movslq -0x28(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movl 0x8(%rax), %edx
leaq 0x1cb9aa(%rip), %rsi    # 0x381b89
movb $0x0, %al
callq 0x22a0
movq -0x98(%rbp), %rax
movq (%rax), %rax
movslq -0x28(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movq 0x18(%rax), %rax
shrq $0x1f, %rax
andq $0x1, %rax
cmpl $0x0, %eax
je 0x1b621c
leaq 0x1cb97a(%rip), %rax    # 0x381b8d
movq %rax, -0xe8(%rbp)
jmp 0x1b622c
leaq 0x1cb96d(%rip), %rax    # 0x381b90
movq %rax, -0xe8(%rbp)
jmp 0x1b622c
movq -0xe8(%rbp), %rdi
movq -0x58(%rbp), %rsi
callq 0x21c0
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rdi
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rax
movq -0xa8(%rbp), %rcx
addq (%rax,%rcx,8), %rdi
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rax
movq -0xa8(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rdx
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rax
movq -0xa8(%rbp), %rcx
subq (%rax,%rcx,8), %rdx
movq -0x58(%rbp), %rcx
movl $0x1, %esi
callq 0x2400
movq -0x58(%rbp), %rcx
leaq 0x1e2895(%rip), %rdi    # 0x398b2c
movl $0x1, %edx
movq %rdx, %rsi
callq 0x2400
movq -0x58(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rax
movq -0xa8(%rbp), %rcx
movq (%rax,%rcx,8), %rdx
leaq 0x1da0c8(%rip), %rsi    # 0x39038a
movb $0x0, %al
callq 0x22a0
movq -0x58(%rbp), %rdi
movq -0x98(%rbp), %rax
movq (%rax), %rax
movslq -0x28(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movl 0x10(%rax), %edx
leaq 0x1cb89d(%rip), %rsi    # 0x381b89
movb $0x0, %al
callq 0x22a0
movq -0x58(%rbp), %rdi
movq -0x98(%rbp), %rax
movq (%rax), %rax
movslq -0x28(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movl 0x14(%rax), %edx
movq -0x98(%rbp), %rax
movq (%rax), %rax
movslq -0x28(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movq 0x18(%rax), %rax
shrq $0x1e, %rax
andq $0x1, %rax
movl %eax, %ecx
movq -0x98(%rbp), %rax
movq (%rax), %rax
movslq -0x28(%rbp), %rsi
imulq $0x28, %rsi, %rsi
addq %rsi, %rax
movq 0x18(%rax), %rax
shrq $0x20, %rax
andq $0x7fffffff, %rax       # imm = 0x7FFFFFFF
movl %eax, %r8d
cmpl $0x0, -0x34(%rbp)
setne %al
xorb $-0x1, %al
andb $0x1, %al
movzbl %al, %r9d
leaq 0x1d5adf(%rip), %rsi    # 0x38be4d
movb $0x0, %al
callq 0x22a0
movl -0x28(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x28(%rbp)
jmp 0x1b5fc9
jmp 0x1b6385
movl -0x34(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x34(%rbp)
jmp 0x1b5fa0
jmp 0x1b6395
movq -0x40(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x40(%rbp)
jmp 0x1b5f87
movq -0x20(%rbp), %rdi
callq 0x1b64f0
addq $0xf0, %rsp
popq %rbp
retq
nopl (%rax,%rax)