// File: /workspace/github_cpp_makefile_star2_O1/chhylp123[P]hifiasm/Overlaps.cpp
// Function: dbg_spec_edge(asg_t*, unsigned int, unsigned int)
void dbg_spec_edge(asg_t *g, uint32_t s, uint32_t e)
{
    asg_arc_t *av; uint32_t an, k, v, w;

    if(s >= g->n_seq) return;

    v = s<<1;
    av = asg_arc_a(g, v); an = asg_arc_n(g, v);
    for (k = 0; k < an; k++) {
        if(av[k].del) continue;
        if((av[k].v>>1) == e) {
            w = av[k].v;
            fprintf(stderr, "[M::%s]\tL\tutg%.6dl\t%c\tutg%.6dl\t%c\t%dM\tL1:i:%d\tL2:i:%u\n", __func__,
            (v>>1)+1, "+-"[v&1], (w>>1)+1, "+-"[w&1], av[k].ol, asg_arc_len(av[k]), 0/**au[j].ou**/);
        }
    }

    v = (s<<1)+1;
    av = asg_arc_a(g, v); an = asg_arc_n(g, v);
    for (k = 0; k < an; k++) {
        if(av[k].del) continue;
        if((av[k].v>>1) == e) {
            w = av[k].v;
            fprintf(stderr, "[M::%s]\tL\tutg%.6dl\t%c\tutg%.6dl\t%c\t%dM\tL1:i:%d\tL2:i:%u\n", __func__,
            (v>>1)+1, "+-"[v&1], (w>>1)+1, "+-"[w&1], av[k].ol, asg_arc_len(av[k]), 0/**au[j].ou**/);
        }
    }
    
}

// Assembly:
movl $0x7fffffff, %eax       # imm = 0x7FFFFFFF
andl 0x14(%rdi), %eax
cmpl %esi, %eax
jbe 0xf05d6
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movl %edx, %ebx
movl %esi, %r14d
movq %rdi, %r15
leal (%r14,%r14), %esi
movq 0x28(%rdi), %rax
movq (%rax,%rsi,8), %rax
testl %eax, %eax
je 0xf051c
movq 0x8(%r15), %rcx
movq %rax, %rdx
shrq $0x20, %rdx
leal 0x1(%r14), %edi
movl %edi, 0x4(%rsp)
movl %eax, %eax
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,8), %r13
addq $0xc, %r13
shlq $0x3, %rax
leaq (%rax,%rax,2), %rbp
xorl %r12d, %r12d
movq %rsi, 0x8(%rsp)
movl (%r13,%r12), %r10d
testl %r10d, %r10d
js 0xf04b8
movl -0x4(%r13,%r12), %eax
movl %eax, %r9d
shrl %r9d
cmpl %ebx, %r9d
je 0xf04c3
addq $0x18, %r12
cmpq %r12, %rbp
jne 0xf049e
jmp 0xf051c
movq 0x199b16(%rip), %rcx    # 0x289fe0
movq (%rcx), %rdi
incl %r9d
andl $0x1, %eax
leaq 0x135ce9(%rip), %rcx    # 0x2261c3
movsbl (%rax,%rcx), %eax
movq %rax, 0x10(%rsp)
movl -0xc(%r13,%r12), %r11d
leaq 0x13c149(%rip), %rsi    # 0x22c638
leaq 0x13c179(%rip), %rdx    # 0x22c66f
movl 0x4(%rsp), %ecx
movl $0x2b, %r8d
xorl %eax, %eax
pushq $0x0
pushq %r11
pushq %r10
pushq 0x28(%rsp)
callq 0x22b0
movq 0x28(%rsp), %rsi
addq $0x20, %rsp
jmp 0xf04b8
movq 0x28(%r15), %rax
movl %esi, %ecx
movq 0x8(%rax,%rcx,8), %rax
testl %eax, %eax
je 0xf05c8
movq 0x8(%r15), %rcx
movq %rax, %rdx
shrq $0x20, %rdx
incl %r14d
movl %eax, %eax
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,8), %r13
addq $0xc, %r13
shlq $0x3, %rax
leaq (%rax,%rax,2), %rbp
xorl %r15d, %r15d
movl (%r13,%r15), %r10d
testl %r10d, %r10d
js 0xf0570
movl -0x4(%r13,%r15), %eax
movl %eax, %r9d
shrl %r9d
cmpl %ebx, %r9d
je 0xf057b
addq $0x18, %r15
cmpq %r15, %rbp
jne 0xf0556
jmp 0xf05c8
movq 0x199a5e(%rip), %rcx    # 0x289fe0
movq (%rcx), %rdi
incl %r9d
andl $0x1, %eax
leaq 0x135c31(%rip), %rcx    # 0x2261c3
movsbl (%rax,%rcx), %r11d
movl -0xc(%r13,%r15), %r12d
leaq 0x13c095(%rip), %rsi    # 0x22c638
leaq 0x13c0c5(%rip), %rdx    # 0x22c66f
movl %r14d, %ecx
movl $0x2d, %r8d
xorl %eax, %eax
pushq $0x0
pushq %r12
pushq %r10
pushq %r11
callq 0x22b0
addq $0x20, %rsp
jmp 0xf0570
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq