// File: ncbi[P]amr/alignment.cpp
// Function: Alignment_sp::Alignment::getGlobalTargetStart() const
long Alignment::getGlobalTargetStart () const
{ 
  ASSERT (! targetProt);
  ASSERT (refProt);
  return targetStrand
           ? (long) targetStart - 3 * (long) refStart
           : (long) targetEnd   + 3 * (long) refStart; 
}

// Assembly:
subq $0x268, %rsp            # imm = 0x268
movq %rdi, 0x260(%rsp)
movq 0x260(%rsp), %rax
movq %rax, 0x28(%rsp)
callq 0xd0a0
movq %rax, %rcx
movq 0x28(%rsp), %rax
movl $0x0, (%rcx)
testb $0x1, 0x8(%rax)
je 0xa36e0
callq 0xd8c0
cmpl $0x0, %eax
jne 0xa36d6
leaq 0x1bf(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0xdd50
movq 0x20(%rsp), %rdx
leaq 0x43ceb(%rip), %rsi     # 0xe7170
leaq 0x1c0(%rsp), %rdi
callq 0xfae0
jmp 0xa3494
leaq 0x188(%rsp), %rdi
movl $0x3ed, %esi            # imm = 0x3ED
callq 0x11600
jmp 0xa34a8
leaq 0x1e0(%rsp), %rdi
leaq 0x1c0(%rsp), %rsi
leaq 0x188(%rsp), %rdx
callq 0x11510
jmp 0xa34c7
leaq 0x3fd03(%rip), %rdx     # 0xe31d1
leaq 0x200(%rsp), %rdi
leaq 0x1e0(%rsp), %rsi
callq 0x114c0
jmp 0xa34e5
leaq 0x147(%rsp), %rdi
movq %rdi, 0x18(%rsp)
callq 0xdd50
movq 0x18(%rsp), %rdx
leaq 0x44938(%rip), %rsi     # 0xe7e3b
leaq 0x148(%rsp), %rdi
callq 0xfae0
jmp 0xa3512
leaq 0x4048b(%rip), %rdx     # 0xe39a4
leaq 0x168(%rsp), %rdi
leaq 0x148(%rsp), %rsi
callq 0x114c0
jmp 0xa3530
leaq 0x220(%rsp), %rdi
leaq 0x200(%rsp), %rsi
leaq 0x168(%rsp), %rdx
callq 0x11510
jmp 0xa354f
leaq 0x44920(%rip), %rdx     # 0xe7e76
leaq 0x240(%rsp), %rdi
leaq 0x220(%rsp), %rsi
callq 0x114c0
jmp 0xa356d
leaq 0x240(%rsp), %rdi
callq 0x173d0
jmp 0xa357c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa36c4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa36b7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa36aa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa369d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa3683
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa3676
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa3669
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa365c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
leaq 0x240(%rsp), %rdi
callq 0xdf08
leaq 0x220(%rsp), %rdi
callq 0xdf08
leaq 0x168(%rsp), %rdi
callq 0xdf08
leaq 0x148(%rsp), %rdi
callq 0xdf08
leaq 0x147(%rsp), %rdi
callq 0xd7a0
leaq 0x200(%rsp), %rdi
callq 0xdf08
leaq 0x1e0(%rsp), %rdi
callq 0xdf08
leaq 0x188(%rsp), %rdi
callq 0xdf08
leaq 0x1c0(%rsp), %rdi
callq 0xdf08
leaq 0x1bf(%rsp), %rdi
callq 0xd7a0
jmp 0xa39a9
movl $0x1, %edi
callq 0xd8e0
callq 0xd0a0
movq %rax, %rcx
movq 0x28(%rsp), %rax
movl $0x0, (%rcx)
testb $0x1, 0x70(%rax)
jne 0xa3960
callq 0xd8c0
cmpl $0x0, %eax
jne 0xa3956
leaq 0x9f(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0xdd50
movq 0x10(%rsp), %rdx
leaq 0x43a47(%rip), %rsi     # 0xe7170
leaq 0xa0(%rsp), %rdi
callq 0xfae0
jmp 0xa3738
leaq 0x78(%rsp), %rdi
movl $0x3ee, %esi            # imm = 0x3EE
callq 0x11600
jmp 0xa3749
leaq 0xc0(%rsp), %rdi
leaq 0xa0(%rsp), %rsi
leaq 0x78(%rsp), %rdx
callq 0x11510
jmp 0xa3765
leaq 0x3fa65(%rip), %rdx     # 0xe31d1
leaq 0xe0(%rsp), %rdi
leaq 0xc0(%rsp), %rsi
callq 0x114c0
jmp 0xa3783
leaq 0x37(%rsp), %rdi
movq %rdi, 0x8(%rsp)
callq 0xdd50
movq 0x8(%rsp), %rdx
leaq 0x4469d(%rip), %rsi     # 0xe7e3b
leaq 0x38(%rsp), %rdi
callq 0xfae0
jmp 0xa37aa
leaq 0x401f3(%rip), %rdx     # 0xe39a4
leaq 0x58(%rsp), %rdi
leaq 0x38(%rsp), %rsi
callq 0x114c0
jmp 0xa37c2
leaq 0x100(%rsp), %rdi
leaq 0xe0(%rsp), %rsi
leaq 0x58(%rsp), %rdx
callq 0x11510
jmp 0xa37de
leaq 0x445d9(%rip), %rdx     # 0xe7dbe
leaq 0x120(%rsp), %rdi
leaq 0x100(%rsp), %rsi
callq 0x114c0
jmp 0xa37fc
leaq 0x120(%rsp), %rdi
callq 0x173d0
jmp 0xa380b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa3947
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa393a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa3930
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa3923
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa390c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa3902
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa38f8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0xa38eb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
leaq 0x120(%rsp), %rdi
callq 0xdf08
leaq 0x100(%rsp), %rdi
callq 0xdf08
leaq 0x58(%rsp), %rdi
callq 0xdf08
leaq 0x38(%rsp), %rdi
callq 0xdf08
leaq 0x37(%rsp), %rdi
callq 0xd7a0
leaq 0xe0(%rsp), %rdi
callq 0xdf08
leaq 0xc0(%rsp), %rdi
callq 0xdf08
leaq 0x78(%rsp), %rdi
callq 0xdf08
leaq 0xa0(%rsp), %rdi
callq 0xdf08
leaq 0x9f(%rsp), %rdi
callq 0xd7a0
jmp 0xa39a9
movl $0x1, %edi
callq 0xd8e0
movq 0x28(%rsp), %rax
testb $0x1, 0x68(%rax)
je 0xa3985
movq 0x28(%rsp), %rcx
movq 0x50(%rcx), %rax
imulq $0x3, 0xb8(%rcx), %rcx
subq %rcx, %rax
movq %rax, (%rsp)
jmp 0xa399d
movq 0x28(%rsp), %rcx
movq 0x58(%rcx), %rax
imulq $0x3, 0xb8(%rcx), %rcx
addq %rcx, %rax
movq %rax, (%rsp)
movq (%rsp), %rax
addq $0x268, %rsp            # imm = 0x268
retq
movq 0x1b0(%rsp), %rdi
callq 0xdd40
nopw %cs:(%rax,%rax)