// File: /workspace/github_cpp_makefile_star2_O3/ncbi[P]amr/seq.cpp
// Function: Seq_sp::Mutation::qc() const
void Mutation::qc () const
{
  if (! qc_on)
    return;
    
  QC_IMPLY (! geneName. empty (), isIdentifier (geneName, false));
  QC_ASSERT (pos != no_index);
  
  if (prot)
  {
    for (const char c : ref)
      if (c != *terminator && ! strchr (peptideAlphabet, c))
        throw runtime_error ("Protein mutation cannot have ambiguities in the reference sequence");
    for (const char c : allele)
      QC_ASSERT (strchr (extTermPeptideAlphabet, c));
  }
  else
  {
    for (const char c : ref)
      if (! strchr (dnaAlphabet, c))
        throw runtime_error ("DNA mutation cannot have ambiguities in the reference sequence");
    for (const char c : allele)
      QC_ASSERT (strchr (extDnaAlphabet, c));
  }

  QC_IMPLY (! frameshift, ref != allele);
  QC_IMPLY (frameshift, prot && allele. empty ());
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x118, %rsp            # imm = 0x118
leaq 0x34a18(%rip), %rax     # 0xb9a98
cmpb $0x1, (%rax)
jne 0x8539e
movq %rdi, %rbp
cmpq $0x0, 0x18(%rdi)
je 0x8515a
leaq 0x10(%rbp), %r15
callq 0xb070
movq %rax, %r14
movl $0x0, (%rax)
movq %r15, %rdi
xorl %esi, %esi
callq 0x143a4
testb %al, %al
jne 0x85162
callq 0xb6b0
testl %eax, %eax
jne 0x8567f
leaq 0x98(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x12f77(%rip), %rsi     # 0x98052
leaq 0x12f80(%rip), %rdx     # 0x98062
leaq 0x88(%rsp), %rdi
callq 0xdc76
leaq 0xa8(%rsp), %rdi
movl $0x1207, %esi           # imm = 0x1207
callq 0xe1b2
leaq 0xc8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0xa8(%rsp), %rdx
callq 0xe10a
leaq 0xe0ac(%rip), %rsi      # 0x931d1
leaq 0xc8(%rsp), %rdi
callq 0xbb10
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x858fa
movups (%rcx), %xmm0
movups %xmm0, (%r15)
jmp 0x85907
callq 0xb070
movq %rax, %r14
movl $0x0, (%r14)
cmpq $-0x1, 0x30(%rbp)
je 0x85541
movb 0x8(%rbp), %r13b
movq 0x38(%rbp), %rax
movq %rax, 0x110(%rsp)
movq 0x40(%rbp), %rbx
cmpb $0x1, %r13b
movb %r13b, 0x7(%rsp)
jne 0x8522d
movq %rbp, 0x108(%rsp)
testq %rbx, %rbx
je 0x851e3
movq 0x34a35(%rip), %rax     # 0xb9be0
movb (%rax), %bpl
movq 0x3487b(%rip), %r12     # 0xb9a30
xorl %r13d, %r13d
movq 0x110(%rsp), %rax
movsbl (%rax,%r13), %esi
cmpb %bpl, %sil
je 0x851db
movq %r12, %rdi
callq 0xb230
testq %rax, %rax
je 0x8550f
incq %r13
cmpq %r13, %rbx
jne 0x851b8
movq 0x108(%rsp), %rbp
movq 0x58(%rbp), %r12
movq 0x60(%rbp), %r13
testq %r13, %r13
je 0x852b0
movq 0x349e5(%rip), %rbp     # 0xb9be8
xorl %r15d, %r15d
movsbl (%r12,%r15), %esi
movl $0x0, (%r14)
movq %rbp, %rdi
callq 0xb230
testq %rax, %rax
je 0x853d1
incq %r15
cmpq %r15, %r13
jne 0x85206
jmp 0x852a6
testq %rbx, %rbx
je 0x85262
movq 0x347e7(%rip), %r12     # 0xb9a20
xorl %r15d, %r15d
movq 0x110(%rsp), %rax
movsbl (%rax,%r15), %esi
movq %r12, %rdi
callq 0xb230
testq %rax, %rax
je 0x853b0
incq %r15
cmpq %r15, %rbx
jne 0x8523c
movq 0x58(%rbp), %r12
movq 0x60(%rbp), %r13
testq %r13, %r13
je 0x852b0
movq %rbp, 0x108(%rsp)
movq 0x34952(%rip), %rbp     # 0xb9bd0
xorl %r15d, %r15d
movsbl (%r12,%r15), %esi
movl $0x0, (%r14)
movq %rbp, %rdi
callq 0xb230
testq %rax, %rax
je 0x85470
incq %r15
cmpq %r15, %r13
jne 0x85281
movq 0x108(%rsp), %rbp
jmp 0x852b3
xorl %r13d, %r13d
cmpb $0x0, 0x78(%rbp)
movl $0x0, (%r14)
je 0x85375
cmpb $0x0, 0x7(%rsp)
je 0x852d6
cmpq $0x0, 0x60(%rbp)
je 0x8539e
callq 0xb6b0
testl %eax, %eax
jne 0x8567f
leaq 0x98(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x12d5c(%rip), %rsi     # 0x98052
leaq 0x12d65(%rip), %rdx     # 0x98062
leaq 0x88(%rsp), %rdi
callq 0xdc76
leaq 0xa8(%rsp), %rdi
movl $0x121c, %esi           # imm = 0x121C
callq 0xe1b2
leaq 0xc8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0xa8(%rsp), %rdx
callq 0xe10a
leaq 0xde91(%rip), %rsi      # 0x931d1
leaq 0xc8(%rsp), %rdi
callq 0xbb10
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x859d7
movups (%rcx), %xmm0
movups %xmm0, (%r15)
jmp 0x859e4
cmpq %r13, %rbx
jne 0x8539e
testq %r13, %r13
je 0x855e0
movq 0x110(%rsp), %rdi
movq %r12, %rsi
movq %r13, %rdx
callq 0xb5c0
testl %eax, %eax
je 0x855e0
addq $0x118, %rsp            # imm = 0x118
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x10, %edi
callq 0xb2d0
movq %rax, %r14
leaq 0x140e2(%rip), %rsi     # 0x994a6
movq %rax, %rdi
callq 0xb250
jmp 0x8552b
callq 0xb6b0
testl %eax, %eax
jne 0x8567f
leaq 0x98(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x12c61(%rip), %rsi     # 0x98052
leaq 0x12c6a(%rip), %rdx     # 0x98062
leaq 0x88(%rsp), %rdi
callq 0xdc76
leaq 0xa8(%rsp), %rdi
movl $0x1210, %esi           # imm = 0x1210
callq 0xe1b2
leaq 0xc8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0xa8(%rsp), %rdx
callq 0xe10a
leaq 0xdd96(%rip), %rsi      # 0x931d1
leaq 0xc8(%rsp), %rdi
callq 0xbb10
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x85689
movups (%rcx), %xmm0
movups %xmm0, (%r15)
jmp 0x85696
callq 0xb6b0
testl %eax, %eax
jne 0x8567f
leaq 0x98(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x12bc2(%rip), %rsi     # 0x98052
leaq 0x12bcb(%rip), %rdx     # 0x98062
leaq 0x88(%rsp), %rdi
callq 0xdc76
leaq 0xa8(%rsp), %rdi
movl $0x1218, %esi           # imm = 0x1218
callq 0xe1b2
leaq 0xc8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0xa8(%rsp), %rdx
callq 0xe10a
leaq 0xdcf7(%rip), %rsi      # 0x931d1
leaq 0xc8(%rsp), %rdi
callq 0xbb10
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x8570a
movups (%rcx), %xmm0
movups %xmm0, (%r15)
jmp 0x85717
movl $0x10, %edi
callq 0xb2d0
movq %rax, %r14
leaq 0x13f1d(%rip), %rsi     # 0x99440
movq %rax, %rdi
callq 0xb250
movq 0x33abe(%rip), %rsi     # 0xb8ff0
movq 0x33a37(%rip), %rdx     # 0xb8f70
movq %r14, %rdi
callq 0xba00
callq 0xb6b0
testl %eax, %eax
jne 0x8567f
leaq 0x98(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x12af1(%rip), %rsi     # 0x98052
leaq 0x12afa(%rip), %rdx     # 0x98062
leaq 0x88(%rsp), %rdi
callq 0xdc76
leaq 0xa8(%rsp), %rdi
movl $0x1208, %esi           # imm = 0x1208
callq 0xe1b2
leaq 0xc8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0xa8(%rsp), %rdx
callq 0xe10a
leaq 0xdc26(%rip), %rsi      # 0x931d1
leaq 0xc8(%rsp), %rdi
callq 0xbb10
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x85879
movups (%rcx), %xmm0
movups %xmm0, (%r15)
jmp 0x85886
callq 0xb6b0
testl %eax, %eax
jne 0x8567f
leaq 0x98(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x12a52(%rip), %rsi     # 0x98052
leaq 0x12a5b(%rip), %rdx     # 0x98062
leaq 0x88(%rsp), %rdi
callq 0xdc76
leaq 0xa8(%rsp), %rdi
movl $0x121b, %esi           # imm = 0x121B
callq 0xe1b2
leaq 0xc8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0xa8(%rsp), %rdx
callq 0xe10a
leaq 0xdb87(%rip), %rsi      # 0x931d1
leaq 0xc8(%rsp), %rdi
callq 0xbb10
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x85a58
movups (%rcx), %xmm0
movups %xmm0, (%r15)
jmp 0x85a65
movl $0x1, %edi
callq 0xb6d0
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x10(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x78(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x13d28(%rip), %rsi     # 0x993e7
leaq 0x13d4a(%rip), %rdx     # 0x99410
leaq 0x68(%rsp), %rdi
callq 0xdc76
leaq 0xe1da(%rip), %rsi      # 0x938b1
leaq 0x68(%rsp), %rdi
callq 0xbb10
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x8578b
movups (%rcx), %xmm0
movups %xmm0, (%r13)
jmp 0x85798
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x10(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x78(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x13ca7(%rip), %rsi     # 0x993e7
leaq 0x13cc9(%rip), %rdx     # 0x99410
leaq 0x68(%rsp), %rdi
callq 0xdc76
leaq 0xe159(%rip), %rsi      # 0x938b1
leaq 0x68(%rsp), %rdi
callq 0xbb10
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x85802
movups (%rcx), %xmm0
movups %xmm0, (%r13)
jmp 0x8580f
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
movq 0x8(%rax), %rsi
leaq 0x28(%rsp), %rdx
movq %rsi, 0x8(%rdx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xe8(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0xe10a
leaq 0x13cb6(%rip), %rsi     # 0x99483
leaq 0xe8(%rsp), %rdi
callq 0xbb10
leaq 0x58(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x8597b
movups (%rcx), %xmm0
movups %xmm0, (%rbp)
jmp 0x85988
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
movq 0x8(%rax), %rsi
leaq 0x28(%rsp), %rdx
movq %rsi, 0x8(%rdx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xe8(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0xe10a
leaq 0x13ca1(%rip), %rsi     # 0x994e5
leaq 0xe8(%rsp), %rdi
callq 0xbb10
leaq 0x58(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x859a9
movups (%rcx), %xmm0
movups %xmm0, (%rbp)
jmp 0x859b6
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x10(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x78(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x13b38(%rip), %rsi     # 0x993e7
leaq 0x13b5a(%rip), %rdx     # 0x99410
leaq 0x68(%rsp), %rdi
callq 0xdc76
leaq 0xdfea(%rip), %rsi      # 0x938b1
leaq 0x68(%rsp), %rdi
callq 0xbb10
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x85ad9
movups (%rcx), %xmm0
movups %xmm0, (%r13)
jmp 0x85ae6
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x10(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x78(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x13ab7(%rip), %rsi     # 0x993e7
leaq 0x13ad9(%rip), %rdx     # 0x99410
leaq 0x68(%rsp), %rdi
callq 0xdc76
leaq 0xdf69(%rip), %rsi      # 0x938b1
leaq 0x68(%rsp), %rdi
callq 0xbb10
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x85b50
movups (%rcx), %xmm0
movups %xmm0, (%r13)
jmp 0x85b5d
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
movq 0x8(%rax), %rdx
leaq 0x48(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x1155a
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
movq 0x8(%rax), %rdx
leaq 0x48(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x1155a
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x10(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x78(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x139da(%rip), %rsi     # 0x993e7
leaq 0x139fc(%rip), %rdx     # 0x99410
leaq 0x68(%rsp), %rdi
callq 0xdc76
leaq 0xde8c(%rip), %rsi      # 0x938b1
leaq 0x68(%rsp), %rdi
callq 0xbb10
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x85bc7
movups (%rcx), %xmm0
movups %xmm0, (%r13)
jmp 0x85bd4
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x10(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x78(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x13959(%rip), %rsi     # 0x993e7
leaq 0x1397b(%rip), %rdx     # 0x99410
leaq 0x68(%rsp), %rdi
callq 0xdc76
leaq 0xde0b(%rip), %rsi      # 0x938b1
leaq 0x68(%rsp), %rdi
callq 0xbb10
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x85c3e
movups (%rcx), %xmm0
movups %xmm0, (%r13)
jmp 0x85c4b
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
movq 0x8(%rax), %rsi
leaq 0x28(%rsp), %rdx
movq %rsi, 0x8(%rdx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xe8(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0xe10a
leaq 0x13915(%rip), %rsi     # 0x99430
leaq 0xe8(%rsp), %rdi
callq 0xbb10
leaq 0x58(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x85cb5
movups (%rcx), %xmm0
movups %xmm0, (%rbp)
jmp 0x85cc2
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
movq 0x8(%rax), %rsi
leaq 0x28(%rsp), %rdx
movq %rsi, 0x8(%rdx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xe8(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0xe10a
leaq 0x1387f(%rip), %rsi     # 0x99411
leaq 0xe8(%rsp), %rdi
callq 0xbb10
leaq 0x58(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x85ce3
movups (%rcx), %xmm0
movups %xmm0, (%rbp)
jmp 0x85cf0
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
movq 0x8(%rax), %rsi
leaq 0x28(%rsp), %rdx
movq %rsi, 0x8(%rdx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xe8(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0xe10a
leaq 0x13905(%rip), %rsi     # 0x9950e
leaq 0xe8(%rsp), %rdi
callq 0xbb10
leaq 0x58(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x85d11
movups (%rcx), %xmm0
movups %xmm0, (%rbp)
jmp 0x85d1e
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
movq 0x8(%rax), %rsi
leaq 0x28(%rsp), %rdx
movq %rsi, 0x8(%rdx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xe8(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0xe10a
leaq 0x13880(%rip), %rsi     # 0x99500
leaq 0xe8(%rsp), %rdi
callq 0xbb10
leaq 0x58(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x85d3f
movups (%rcx), %xmm0
movups %xmm0, (%rbp)
jmp 0x85d4c
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
movq 0x8(%rax), %rdx
leaq 0x48(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x1155a
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
movq 0x8(%rax), %rdx
leaq 0x48(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x1155a
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
movq 0x8(%rax), %rdx
leaq 0x48(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x1155a
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
movq 0x8(%rax), %rdx
leaq 0x48(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x1155a
jmp 0x85dc7
jmp 0x85de3
jmp 0x85dc7
jmp 0x85de3
jmp 0x85dc7
jmp 0x85de3
jmp 0x85e1f
jmp 0x85e1f
jmp 0x85dc7
jmp 0x85de3
jmp 0x85e1f
jmp 0x85e4e
jmp 0x85e4e
jmp 0x85e1f
jmp 0x85e4e
jmp 0x85e7d
jmp 0x85e7d
jmp 0x85e4e
jmp 0x85e7d
jmp 0x85e9f
jmp 0x85e9f
jmp 0x85e7d
jmp 0x85dc7
jmp 0x85de3
movq %rax, %rbx
movq 0x48(%rsp), %rdi
cmpq %rbp, %rdi
je 0x85de6
movq 0x58(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x85de6
movq %rax, %rbx
leaq 0xf8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x85e22
movq 0xf8(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x85e22
jmp 0x85e9f
jmp 0x85ec7
jmp 0x85ec7
jmp 0x85e9f
jmp 0x85e1f
movq %rax, %rbx
movq 0x28(%rsp), %rdi
cmpq %r13, %rdi
je 0x85e51
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x85e51
jmp 0x85ec7
jmp 0x85eef
jmp 0x85eef
jmp 0x85ec7
jmp 0x85e4e
movq %rax, %rbx
movq 0x68(%rsp), %rdi
cmpq %r12, %rdi
je 0x85e80
movq 0x78(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x85e80
jmp 0x85eef
jmp 0x85f13
jmp 0x85f13
jmp 0x85eef
jmp 0x85e7d
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x85ea2
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x85ea2
jmp 0x85f13
jmp 0x85f13
jmp 0x85e9f
movq %rax, %rbx
leaq 0xd8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x85eca
movq 0xd8(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x85eca
jmp 0x85ec7
movq %rax, %rbx
leaq 0xb8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x85ef2
movq 0xb8(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x85ef2
jmp 0x85eef
movq %rax, %rbx
movq 0x88(%rsp), %rdi
cmpq %r14, %rdi
je 0x85f25
movq 0x98(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x85f25
jmp 0x85f13
movq %rax, %rbx
jmp 0x85f25
jmp 0x85f1a
movq %rax, %rbx
movq %r14, %rdi
callq 0xb440
movq %rbx, %rdi
callq 0xba60
nop