// File: ncbi[P]amr/alignment.cpp
// Function: Alignment_sp::SeqChange::setStartStopRef()
void SeqChange::setStartStopRef ()
{
  ASSERT (al);
  ASSERT (start < al->refSeq. size ());
  
  start_ref = al->refStart;
  FOR (size_t, i, start)
    if (al->refSeq [i] != '-')
      start_ref += al->al2ref_len;
      
  stop_ref = start_ref;
  FOR_START (size_t, i, start, start + len)
    if (al->refSeq [i] != '-')
      stop_ref += al->al2ref_len;
}

// Assembly:
subq $0x278, %rsp            # imm = 0x278
movq %rdi, 0x270(%rsp)
movq 0x270(%rsp), %rax
movq %rax, 0x28(%rsp)
callq 0xd0a0
movq %rax, %rcx
movq 0x28(%rsp), %rax
movl $0x0, (%rcx)
cmpq $0x0, 0x8(%rax)
jne 0x968b1
callq 0xd8c0
cmpl $0x0, %eax
jne 0x968a7
leaq 0x1cf(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0xdd50
movq 0x20(%rsp), %rdx
leaq 0x50b1a(%rip), %rsi     # 0xe7170
leaq 0x1d0(%rsp), %rdi
callq 0xfae0
jmp 0x96665
leaq 0x198(%rsp), %rdi
movl $0x146, %esi            # imm = 0x146
callq 0x11600
jmp 0x96679
leaq 0x1f0(%rsp), %rdi
leaq 0x1d0(%rsp), %rsi
leaq 0x198(%rsp), %rdx
callq 0x11510
jmp 0x96698
leaq 0x4cb32(%rip), %rdx     # 0xe31d1
leaq 0x210(%rsp), %rdi
leaq 0x1f0(%rsp), %rsi
callq 0x114c0
jmp 0x966b6
leaq 0x157(%rsp), %rdi
movq %rdi, 0x18(%rsp)
callq 0xdd50
movq 0x18(%rsp), %rdx
leaq 0x50ff4(%rip), %rsi     # 0xe76c8
leaq 0x158(%rsp), %rdi
callq 0xfae0
jmp 0x966e3
leaq 0x4d2ba(%rip), %rdx     # 0xe39a4
leaq 0x178(%rsp), %rdi
leaq 0x158(%rsp), %rsi
callq 0x114c0
jmp 0x96701
leaq 0x230(%rsp), %rdi
leaq 0x210(%rsp), %rsi
leaq 0x178(%rsp), %rdx
callq 0x11510
jmp 0x96720
leaq 0x5144c(%rip), %rdx     # 0xe7b73
leaq 0x250(%rsp), %rdi
leaq 0x230(%rsp), %rsi
callq 0x114c0
jmp 0x9673e
leaq 0x250(%rsp), %rdi
callq 0x173d0
jmp 0x9674d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x96895
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x96888
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x9687b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x9686e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x96854
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x96847
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x9683a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x9682d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
leaq 0x250(%rsp), %rdi
callq 0xdf08
leaq 0x230(%rsp), %rdi
callq 0xdf08
leaq 0x178(%rsp), %rdi
callq 0xdf08
leaq 0x158(%rsp), %rdi
callq 0xdf08
leaq 0x157(%rsp), %rdi
callq 0xd7a0
leaq 0x210(%rsp), %rdi
callq 0xdf08
leaq 0x1f0(%rsp), %rdi
callq 0xdf08
leaq 0x198(%rsp), %rdi
callq 0xdf08
leaq 0x1d0(%rsp), %rdi
callq 0xdf08
leaq 0x1cf(%rsp), %rdi
callq 0xd7a0
jmp 0x96c55
movl $0x1, %edi
callq 0xd8e0
callq 0xd0a0
movq %rax, %rcx
movq 0x28(%rsp), %rax
movl $0x0, (%rcx)
movq 0x18(%rax), %rcx
movq %rcx, 0x10(%rsp)
movq 0x8(%rax), %rdi
addq $0x98, %rdi
callq 0xd520
movq %rax, %rcx
movq 0x10(%rsp), %rax
cmpq %rcx, %rax
jb 0x96b5b
callq 0xd8c0
cmpl $0x0, %eax
jne 0x96b51
leaq 0xaf(%rsp), %rdi
movq %rdi, 0x8(%rsp)
callq 0xdd50
movq 0x8(%rsp), %rdx
leaq 0x50856(%rip), %rsi     # 0xe7170
leaq 0xb0(%rsp), %rdi
callq 0xfae0
jmp 0x96929
leaq 0x88(%rsp), %rdi
movl $0x147, %esi            # imm = 0x147
callq 0x11600
jmp 0x9693d
leaq 0xd0(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
leaq 0x88(%rsp), %rdx
callq 0x11510
jmp 0x9695c
leaq 0x4c86e(%rip), %rdx     # 0xe31d1
leaq 0xf0(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
callq 0x114c0
jmp 0x9697a
leaq 0x47(%rsp), %rdi
movq %rdi, (%rsp)
callq 0xdd50
movq (%rsp), %rdx
leaq 0x50d35(%rip), %rsi     # 0xe76c8
leaq 0x48(%rsp), %rdi
callq 0xfae0
jmp 0x9699f
leaq 0x4cffe(%rip), %rdx     # 0xe39a4
leaq 0x68(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x114c0
jmp 0x969b7
leaq 0x110(%rsp), %rdi
leaq 0xf0(%rsp), %rsi
leaq 0x68(%rsp), %rdx
callq 0x11510
jmp 0x969d3
leaq 0x50d1e(%rip), %rdx     # 0xe76f8
leaq 0x130(%rsp), %rdi
leaq 0x110(%rsp), %rsi
callq 0x114c0
jmp 0x969f1
leaq 0x130(%rsp), %rdi
callq 0x173d0
jmp 0x96a00
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x96b3f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x96b32
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x96b25
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x96b18
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x96b01
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x96af7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x96aed
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
jmp 0x96ae0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1c0(%rsp)
movl %eax, 0x1bc(%rsp)
leaq 0x130(%rsp), %rdi
callq 0xdf08
leaq 0x110(%rsp), %rdi
callq 0xdf08
leaq 0x68(%rsp), %rdi
callq 0xdf08
leaq 0x48(%rsp), %rdi
callq 0xdf08
leaq 0x47(%rsp), %rdi
callq 0xd7a0
leaq 0xf0(%rsp), %rdi
callq 0xdf08
leaq 0xd0(%rsp), %rdi
callq 0xdf08
leaq 0x88(%rsp), %rdi
callq 0xdf08
leaq 0xb0(%rsp), %rdi
callq 0xdf08
leaq 0xaf(%rsp), %rdi
callq 0xd7a0
jmp 0x96c55
movl $0x1, %edi
callq 0xd8e0
movq 0x28(%rsp), %rax
movq 0x8(%rax), %rcx
movq 0xb8(%rcx), %rcx
movq %rcx, 0x68(%rax)
movq $0x0, 0x38(%rsp)
movq 0x28(%rsp), %rcx
movq 0x38(%rsp), %rax
cmpq 0x18(%rcx), %rax
jae 0x96bd4
movq 0x28(%rsp), %rax
movq 0x8(%rax), %rdi
addq $0x98, %rdi
movq 0x38(%rsp), %rsi
callq 0xd7d0
movsbl (%rax), %eax
cmpl $0x2d, %eax
je 0x96bc2
movq 0x28(%rsp), %rax
movq 0x8(%rax), %rcx
movq 0x208(%rcx), %rcx
addq 0x68(%rax), %rcx
movq %rcx, 0x68(%rax)
jmp 0x96bc4
movq 0x38(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x38(%rsp)
jmp 0x96b78
movq 0x28(%rsp), %rax
movq 0x68(%rax), %rcx
movq %rcx, 0x70(%rax)
movq 0x18(%rax), %rax
movq %rax, 0x30(%rsp)
movq 0x28(%rsp), %rdx
movq 0x30(%rsp), %rax
movq 0x18(%rdx), %rcx
addq 0x20(%rdx), %rcx
cmpq %rcx, %rax
jae 0x96c4d
movq 0x28(%rsp), %rax
movq 0x8(%rax), %rdi
addq $0x98, %rdi
movq 0x30(%rsp), %rsi
callq 0xd7d0
movsbl (%rax), %eax
cmpl $0x2d, %eax
je 0x96c3b
movq 0x28(%rsp), %rax
movq 0x8(%rax), %rcx
movq 0x208(%rcx), %rcx
addq 0x70(%rax), %rcx
movq %rcx, 0x70(%rax)
jmp 0x96c3d
movq 0x30(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x30(%rsp)
jmp 0x96bea
addq $0x278, %rsp            # imm = 0x278
retq
movq 0x1c0(%rsp), %rdi
callq 0xdd40
nopw %cs:(%rax,%rax)