// File: /workspace/github_c_makefile_star2_O2/lh3[P]fermi-lite/mag.c
// Function: mag_v_write
void mag_v_write(const magv_t *p, kstring_t *out)
{
	int j, k;
	if (p->len <= 0) return;
	out->l = 0;
	kputc('@', out); kputl(p->k[0], out); kputc(':', out); kputl(p->k[1], out);
	kputc('\t', out); kputw(p->nsr, out);
	for (j = 0; j < 2; ++j) {
		const ku128_v *r = &p->nei[j];
		kputc('\t', out);
		for (k = 0; k < r->n; ++k) {
			if (edge_is_del(r->a[k])) continue;
			kputl(r->a[k].x, out); kputc(',', out); kputw((int32_t)r->a[k].y, out);
			kputc(';', out);
		}
		if (p->nei[j].n == 0) kputc('.', out);
	}
	kputc('\n', out);
	ks_resize(out, out->l + 2 * p->len + 5);
	for (j = 0; j < p->len; ++j)
		out->s[out->l++] = "ACGT"[(int)p->seq[j] - 1];
	out->s[out->l] = 0;
	kputsn("\n+\n", 3, out);
	kputsn(p->cov, p->len, out);
	kputc('\n', out);
}

// Assembly:
cmpl $0x0, (%rdi)
jle 0xd520
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %rsi, %rbx
movq %rdi, %r14
andq $0x0, (%rsi)
pushq $0x40
popq %rdi
callq 0xd521
movq 0x10(%r14), %rdi
movq %rbx, %rsi
callq 0xd5a4
pushq $0x3a
popq %rdi
movq %rbx, %rsi
callq 0xd521
movq 0x18(%r14), %rdi
movq %rbx, %rsi
callq 0xd5a4
pushq $0x9
popq %rdi
movq %rbx, %rsi
callq 0xd521
movl 0x4(%r14), %edi
movq %rbx, %rsi
callq 0xd683
movq %r14, (%rsp)
leaq 0x20(%r14), %rax
movq %rax, 0x8(%rsp)
xorl %eax, %eax
pushq $0x2c
popq %r15
pushq $0x3b
popq %r12
cmpq $0x2, %rax
je 0xd43a
movq %rax, 0x10(%rsp)
imulq $0x18, %rax, %r13
addq 0x8(%rsp), %r13
pushq $0x9
popq %rdi
movq %rbx, %rsi
callq 0xd521
pushq $0x8
popq %r14
xorl %ebp, %ebp
movq (%r13), %rax
cmpq %rbp, %rax
jbe 0xd41d
movq 0x10(%r13), %rax
movq -0x8(%rax,%r14), %rdi
cmpq $-0x2, %rdi
je 0xd414
cmpq $0x0, (%rax,%r14)
je 0xd414
movq %rbx, %rsi
callq 0xd5a4
movl %r15d, %edi
movq %rbx, %rsi
callq 0xd521
movq 0x10(%r13), %rax
movl (%rax,%r14), %edi
movq %rbx, %rsi
callq 0xd683
movl %r12d, %edi
movq %rbx, %rsi
callq 0xd521
incq %rbp
addq $0x10, %r14
jmp 0xd3c7
testq %rax, %rax
jne 0xd42d
pushq $0x2e
popq %rdi
movq %rbx, %rsi
callq 0xd521
movq 0x10(%rsp), %rax
incq %rax
jmp 0xd39e
pushq $0xa
popq %rdi
movq %rbx, %rsi
callq 0xd521
movq (%rsp), %r14
movslq (%r14), %rax
movq (%rbx), %rcx
leaq (%rcx,%rax,2), %rdx
addq $0x5, %rdx
cmpq %rdx, 0x8(%rbx)
jae 0xd4aa
leaq (%rcx,%rax,2), %rax
addq $0x4, %rax
movq %rax, %rcx
shrq %rcx
orq %rax, %rcx
movq %rcx, %rax
shrq $0x2, %rax
orq %rcx, %rax
movq %rax, %rcx
shrq $0x4, %rcx
orq %rax, %rcx
movq %rcx, %rax
shrq $0x8, %rax
orq %rcx, %rax
movq %rax, %rsi
shrq $0x10, %rsi
orq %rax, %rsi
incq %rsi
movq %rsi, 0x8(%rbx)
movq 0x10(%rbx), %rdi
callq 0x21c0
movq %rax, 0x10(%rbx)
xorl %eax, %eax
leaq 0x7663(%rip), %rcx      # 0x14b16
movslq (%r14), %rdx
cmpq %rdx, %rax
jge 0xd4de
movq 0x50(%r14), %rdx
movsbq (%rdx,%rax), %rdx
movb -0x1(%rdx,%rcx), %dl
movq (%rbx), %rsi
movq 0x10(%rbx), %rdi
leaq 0x1(%rsi), %r8
movq %r8, (%rbx)
movb %dl, (%rdi,%rsi)
incq %rax
jmp 0xd4b3
movq (%rbx), %rax
movq 0x10(%rbx), %rcx
movb $0x0, (%rcx,%rax)
leaq 0x6f13(%rip), %rdi      # 0x14403
pushq $0x3
popq %rsi
movq %rbx, %rdx
callq 0xd761
movq 0x58(%r14), %rdi
movl (%r14), %esi
movq %rbx, %rdx
callq 0xd761
pushq $0xa
popq %rdi
movq %rbx, %rsi
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0xd521
retq