// File: /workspace/github_c_makefile_star2_O0/ToniWestbrook[P]paladin/bwamem.c
// Function: mem_print_chain
void mem_print_chain(const bntseq_t *bns, mem_chain_v *chn)
{
	int i, j;
	for (i = 0; i < chn->n; ++i) {
		mem_chain_t *p = &chn->a[i];
		err_printf("* Found CHAIN(%d): n=%d; weight=%d", i, p->n, mem_chain_weight(p));
		for (j = 0; j < p->n; ++j) {
			bwtint_t pos;
			int is_rev;
			pos = bns_depos(bns, p->seeds[j].rbeg, &is_rev);
			if (is_rev) pos -= p->seeds[j].len - 1;
			err_printf("\t%d;%d;%d,%ld(%s:%c%ld)", p->seeds[j].score, p->seeds[j].len, p->seeds[j].qbeg, (long)p->seeds[j].rbeg, bns->anns[p->rid].name, "+-"[is_rev], (long)(pos - bns->anns[p->rid].offset) + 1);
		}
		err_putchar('\n');
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl $0x0, -0x14(%rbp)
movslq -0x14(%rbp), %rax
movq -0x10(%rbp), %rcx
cmpq (%rcx), %rax
jae 0x1ce53
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rax
movslq -0x14(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movq %rax, -0x20(%rbp)
movl -0x14(%rbp), %eax
movl %eax, -0x34(%rbp)
movq -0x20(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x30(%rbp)
movq -0x20(%rbp), %rdi
callq 0x1ca80
movl -0x34(%rbp), %esi
movl -0x30(%rbp), %edx
movl %eax, %ecx
leaq 0x1da14(%rip), %rdi     # 0x3a70a
movb $0x0, %al
callq 0x12e40
movl $0x0, -0x18(%rbp)
movl -0x18(%rbp), %eax
movq -0x20(%rbp), %rcx
cmpl (%rcx), %eax
jge 0x1ce31
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rax
movslq -0x18(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movq (%rax), %rsi
leaq -0x2c(%rbp), %rdx
callq 0x1ce60
movq %rax, -0x28(%rbp)
cmpl $0x0, -0x2c(%rbp)
je 0x1cd67
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rax
movslq -0x18(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movl 0xc(%rax), %eax
subl $0x1, %eax
movslq %eax, %rcx
movq -0x28(%rbp), %rax
subq %rcx, %rax
movq %rax, -0x28(%rbp)
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rax
movslq -0x18(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movl 0x10(%rax), %esi
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rax
movslq -0x18(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movl 0xc(%rax), %edx
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rax
movslq -0x18(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movl 0x8(%rax), %ecx
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rax
movslq -0x18(%rbp), %rdi
imulq $0x18, %rdi, %rdi
addq %rdi, %rax
movq (%rax), %r8
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movq -0x20(%rbp), %rdi
movslq 0xc(%rdi), %rdi
imulq $0x28, %rdi, %rdi
addq %rdi, %rax
movq 0x18(%rax), %r9
movslq -0x2c(%rbp), %rdi
leaq 0x1d960(%rip), %rax     # 0x3a745
movsbl (%rax,%rdi), %r10d
movq -0x28(%rbp), %rax
movq -0x8(%rbp), %rdi
movq 0x10(%rdi), %rdi
movq -0x20(%rbp), %r11
movslq 0xc(%r11), %r11
imulq $0x28, %r11, %r11
addq %r11, %rdi
subq (%rdi), %rax
addq $0x1, %rax
leaq 0x1d91a(%rip), %rdi     # 0x3a72d
movl %r10d, (%rsp)
movq %rax, 0x8(%rsp)
movb $0x0, %al
callq 0x12e40
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x1cd04
movq 0x23178(%rip), %rax     # 0x3ffb0
movq (%rax), %rsi
movl $0xa, %edi
callq 0x12ff0
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x1cca7
addq $0x50, %rsp
popq %rbp
retq
nopl (%rax)