// File: /workspace/github_c_makefile_star2_O0/lh3[P]fermi-lite/misc.c
// Function: fml_utg_print
void fml_utg_print(int n, const fml_utg_t *utg)
{
	int i, j, l;
	kstring_t out = {0,0,0};
	for (i = 0; i < n; ++i) {
		const fml_utg_t *u = &utg[i];
		out.l = 0;
		kputc('@', &out); kputw(i<<1|0, &out); kputc(':', &out); kputw(i<<1|1, &out);
		kputc('\t', &out); kputw(u->nsr, &out);
		kputc('\t', &out);
		for (j = 0; j < u->n_ovlp[0]; ++j) {
			kputw(u->ovlp[j].id<<1|u->ovlp[j].to, &out); kputc(',', &out);
			kputw(u->ovlp[j].len, &out); kputc(';', &out);
		}
		if (u->n_ovlp[0] == 0) kputc('.', &out);
		kputc('\t', &out);
		for (; j < u->n_ovlp[0] + u->n_ovlp[1]; ++j) {
			kputw(u->ovlp[j].id<<1|u->ovlp[j].to, &out); kputc(',', &out);
			kputw(u->ovlp[j].len, &out); kputc(';', &out);
		}
		if (u->n_ovlp[1] == 0) kputc('.', &out);
		kputc('\n', &out);
		l = out.l;
		kputsn(u->seq, u->len, &out);
		kputsn("\n+\n", 3, &out);
		kputsn(u->cov, u->len, &out);
		kputc('\n', &out);
		fputs(out.s, stdout);
	}
	free(out.s);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movl %edi, -0x4(%rbp)
movq %rsi, -0x10(%rbp)
leaq -0x38(%rbp), %rdi
xorl %esi, %esi
movl $0x18, %edx
callq 0x2110
movl $0x0, -0x14(%rbp)
movl -0x14(%rbp), %eax
cmpl -0x4(%rbp), %eax
jge 0x389c
movq -0x10(%rbp), %rax
movslq -0x14(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movq %rax, -0x40(%rbp)
movq $0x0, -0x38(%rbp)
movl $0x40, %edi
leaq -0x38(%rbp), %rsi
callq 0x38b0
movl -0x14(%rbp), %edi
shll %edi
orl $0x0, %edi
leaq -0x38(%rbp), %rsi
callq 0x39e0
movl $0x3a, %edi
leaq -0x38(%rbp), %rsi
callq 0x38b0
movl -0x14(%rbp), %edi
shll %edi
orl $0x1, %edi
leaq -0x38(%rbp), %rsi
callq 0x39e0
movl $0x9, %edi
leaq -0x38(%rbp), %rsi
callq 0x38b0
movq -0x40(%rbp), %rax
movl 0x4(%rax), %edi
leaq -0x38(%rbp), %rsi
callq 0x39e0
movl $0x9, %edi
leaq -0x38(%rbp), %rsi
callq 0x38b0
movl $0x0, -0x18(%rbp)
movl -0x18(%rbp), %eax
movq -0x40(%rbp), %rcx
cmpl 0x18(%rcx), %eax
jge 0x3736
movq -0x40(%rbp), %rax
movq 0x20(%rax), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rax
shrq $0x20, %rax
andq $0x7fffffff, %rax       # imm = 0x7FFFFFFF
movl %eax, %edi
shll %edi
movq -0x40(%rbp), %rax
movq 0x20(%rax), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rax
shrq $0x3f, %rax
orl %eax, %edi
leaq -0x38(%rbp), %rsi
callq 0x39e0
movl $0x2c, %edi
leaq -0x38(%rbp), %rsi
callq 0x38b0
movq -0x40(%rbp), %rax
movq 0x20(%rax), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rax
andq $0x7fffffff, %rax       # imm = 0x7FFFFFFF
movl %eax, %edi
leaq -0x38(%rbp), %rsi
callq 0x39e0
movl $0x3b, %edi
leaq -0x38(%rbp), %rsi
callq 0x38b0
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x369e
movq -0x40(%rbp), %rax
cmpl $0x0, 0x18(%rax)
jne 0x374e
movl $0x2e, %edi
leaq -0x38(%rbp), %rsi
callq 0x38b0
movl $0x9, %edi
leaq -0x38(%rbp), %rsi
callq 0x38b0
movl -0x18(%rbp), %eax
movq -0x40(%rbp), %rcx
movl 0x18(%rcx), %ecx
movq -0x40(%rbp), %rdx
addl 0x1c(%rdx), %ecx
cmpl %ecx, %eax
jge 0x37fd
movq -0x40(%rbp), %rax
movq 0x20(%rax), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rax
shrq $0x20, %rax
andq $0x7fffffff, %rax       # imm = 0x7FFFFFFF
movl %eax, %edi
shll %edi
movq -0x40(%rbp), %rax
movq 0x20(%rax), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rax
shrq $0x3f, %rax
orl %eax, %edi
leaq -0x38(%rbp), %rsi
callq 0x39e0
movl $0x2c, %edi
leaq -0x38(%rbp), %rsi
callq 0x38b0
movq -0x40(%rbp), %rax
movq 0x20(%rax), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rax
andq $0x7fffffff, %rax       # imm = 0x7FFFFFFF
movl %eax, %edi
leaq -0x38(%rbp), %rsi
callq 0x39e0
movl $0x3b, %edi
leaq -0x38(%rbp), %rsi
callq 0x38b0
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x375c
movq -0x40(%rbp), %rax
cmpl $0x0, 0x1c(%rax)
jne 0x3815
movl $0x2e, %edi
leaq -0x38(%rbp), %rsi
callq 0x38b0
movl $0xa, %edi
leaq -0x38(%rbp), %rsi
callq 0x38b0
movq -0x38(%rbp), %rax
movl %eax, -0x1c(%rbp)
movq -0x40(%rbp), %rax
movq 0x8(%rax), %rdi
movq -0x40(%rbp), %rax
movl (%rax), %esi
leaq -0x38(%rbp), %rdx
callq 0x2e90
leaq 0x21b53(%rip), %rdi     # 0x2539b
movl $0x3, %esi
leaq -0x38(%rbp), %rdx
callq 0x2e90
movq -0x40(%rbp), %rax
movq 0x10(%rax), %rdi
movq -0x40(%rbp), %rax
movl (%rax), %esi
leaq -0x38(%rbp), %rdx
callq 0x2e90
movl $0xa, %edi
leaq -0x38(%rbp), %rsi
callq 0x38b0
movq -0x28(%rbp), %rdi
movq 0x2673a(%rip), %rax     # 0x29fc0
movq (%rax), %rsi
callq 0x2100
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x3606
movq -0x28(%rbp), %rdi
callq 0x2040
addq $0x40, %rsp
popq %rbp
retq
nopl (%rax,%rax)