// File: /workspace/github_cpp_makefile_star2_O3/ncbi[P]amr/tsv.cpp
// Function: Common_sp::TextTable::TextTable(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, bool, unsigned int)
TextTable::TextTable (const string &tableFName,
                      const string &columnSynonymsFName,
                      bool headerP,
                      uint displayPeriod)
: Named (tableFName)
{  
  {
    LineInput f (tableFName, displayPeriod);
    bool dataExists = true;
    // header
    while (f. nextLine ())
    {
      if (verbose ())
        cerr << f. lineNum << endl;
      trimTrailing (f. line);
      if (f. line. empty ())
        continue;
      const bool thisPound = (f. line. front () == '#');
      if (thisPound)
      {
        pound = true;
        f. line. erase (0, 1);
      }
      if (f. line. empty ())
        continue;
      if (header. empty () || thisPound)
      {
        header. clear ();
        StringVector h (f. line, '\t', true);
        for (string& s : h)
          header << std::move (Header (std::move (s)));
      }
      ASSERT (! header. empty ());
      if (headerP)
      {
        if (! thisPound)
        {
          if (! pound)
            dataExists = f. nextLine ();
          break;
        }
      }
      else
      {
        FFOR (size_t, i, header. size ())
          header [i]. name = to_string (i + 1);
        dataExists = true;
        pound = true;
        break;
      }
    }
    if (header. empty ())
      throw Error (*this, "Cannot read the table header");
    // dataExists <=> f.line is valid
    // rows[]
    while (dataExists)
    {
      trimTrailing (f. line);
      if (! f. line. empty ())
      {
        StringVector row (f. line, '\t', true);
        FFOR_START (size_t, i, row. size (), header. size ())
          row << noString;        
        rows << std::move (row);
        ASSERT (row. empty ());
      }
      dataExists = f. nextLine ();
    }
  }
  
  if (! columnSynonymsFName. empty ())
  {
    LineInput colF (columnSynonymsFName);
    string mainSyn;
    while (colF. nextLine ())
    {
      trim (colF. line);
      const string& syn = colF. line;
      if (syn. empty ())
        mainSyn. clear ();
      else
      {
        if (mainSyn. empty ())
          mainSyn = syn;
        else
          if (mainSyn != syn)
          {
            const ColNum i = col2num_ (syn);
            if (i != no_index)
            {
              if (hasColumn (mainSyn))
                throw runtime_error ("Table " + strQuote (name) + ": Column " + strQuote (mainSyn) + " already exists");
              else
                header [i]. name = mainSyn;
            }
          }
      }
    }
  }
  
  setHeader ();
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x478, %rsp            # imm = 0x478
movl %r8d, %ebp
movl %ecx, 0x6c(%rsp)
movq %rdx, 0x1a8(%rsp)
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x30249(%rip), %rax     # 0xaef40
addq $0x10, %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rdi)
addq $0x8, %rdi
leaq 0x18(%rbx), %rax
movq %rax, 0x1a0(%rsp)
movq %rax, 0x8(%rbx)
movq (%rsi), %rsi
movq 0x8(%r14), %rdx
addq %rsi, %rdx
movq %rdi, 0x198(%rsp)
callq 0x2c212
leaq 0x30e7b(%rip), %rax     # 0xafbb0
movq %rax, (%rbx)
movw $0x100, 0x28(%rbx)      # imm = 0x100
leaq 0x30(%rbx), %rax
movq %rax, 0x40(%rsp)
xorps %xmm0, %xmm0
movups %xmm0, 0x30(%rbx)
movups %xmm0, 0x39(%rbx)
leaq 0x50(%rbx), %rax
movq %rax, 0x170(%rsp)
movups %xmm0, 0x50(%rbx)
movq %rbx, 0x10(%rsp)
movups %xmm0, 0x59(%rbx)
leaq 0x1d0(%rsp), %rdi
movq %r14, %rsi
movl %ebp, %edx
callq 0x30bc4
leaq 0x2f894(%rip), %rax     # 0xae618
leaq 0x438(%rsp), %rcx
movq %rax, -0x268(%rcx)
movl $0x0, -0x8(%rcx)
leaq 0x448(%rsp), %rcx
movq %rcx, -0x10(%rcx)
xorl %eax, %eax
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
leaq 0x468(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
leaq 0x1d0(%rsp), %r15
leaq 0xf0(%rsp), %r13
leaq 0x30e39(%rip), %rbx     # 0xafc10
movb $0x1, %r12b
movq %r15, %rdi
callq 0x33b76
testb %al, %al
movq 0x18(%rsp), %rbp
je 0x7f112
xorl %edi, %edi
callq 0x3f82b
testb %al, %al
je 0x7ee37
movl 0x430(%rsp), %esi
movq 0x311d8(%rip), %rdi     # 0xaffe0
callq 0xa3e0
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0xa570
movsbl %al, %esi
movq %r14, %rdi
callq 0xa040
movq %rax, %rdi
callq 0xa3f0
leaq 0x438(%rsp), %rdi
callq 0x37275
cmpq $0x0, 0x440(%rsp)
je 0x7edda
movq 0x438(%rsp), %rax
movb (%rax), %bpl
cmpb $0x23, %bpl
jne 0x7eea0
movq 0x10(%rsp), %rax
movb $0x1, 0x28(%rax)
movl $0x1, %edx
leaq 0x438(%rsp), %rdi
xorl %esi, %esi
callq 0xa100
cmpq $0x0, 0x440(%rsp)
je 0x7edda
movb %bpl, 0xf(%rsp)
movq 0x10(%rsp), %rax
movq 0x30(%rax), %r15
movq 0x38(%rax), %rbp
jmp 0x7eec3
movb %bpl, 0xf(%rsp)
setne %al
movq 0x10(%rsp), %rcx
movq 0x30(%rcx), %r15
movq 0x38(%rcx), %rbp
cmpq %rbp, %r15
setne %cl
testb %cl, %al
jne 0x7efb5
cmpq %rbp, %r15
je 0x7eee5
movq %r15, %r14
movq (%r14), %rax
movq %r14, %rdi
callq *(%rax)
subq $-0x80, %r14
cmpq %rbp, %r14
jne 0x7eecb
movq 0x10(%rsp), %rax
movq %r15, 0x38(%rax)
leaq 0x20(%rsp), %rdi
leaq 0x438(%rsp), %rsi
movl $0x9, %edx
movl $0x1, %ecx
callq 0x42b7e
movq 0x20(%rsp), %r14
movq 0x28(%rsp), %r15
cmpq %r15, %r14
movq 0x18(%rsp), %rbp
je 0x7ef9e
movq %r13, %rdi
movq %r14, %rsi
callq 0x8613c
movq 0x40(%rsp), %rdi
movq %r13, %rsi
callq 0x87a8e
movq 0x10(%rsp), %rcx
movq 0x38(%rcx), %rax
subq 0x30(%rcx), %rax
cmpq $0x81, %rax
jb 0x7ef4f
movq 0x10(%rsp), %rax
movb $0x0, 0x48(%rax)
movq %rbx, 0xf0(%rsp)
leaq 0x138(%rsp), %rdi
callq 0x873f4
movq %rbp, 0xf0(%rsp)
movq 0xf8(%rsp), %rdi
leaq 0x108(%rsp), %rax
cmpq %rax, %rdi
je 0x7ef91
movq 0x108(%rsp), %rsi
incq %rsi
callq 0xa5a0
addq $0x20, %r14
cmpq %r15, %r14
jne 0x7ef19
leaq 0x20(%rsp), %rdi
callq 0x327d2
movq 0x10(%rsp), %rax
movq 0x30(%rax), %r15
movq 0x38(%rax), %rbp
callq 0xa070
movl $0x0, (%rax)
cmpq %rbp, %r15
je 0x7f5fd
cmpb $0x0, 0x6c(%rsp)
je 0x7f00c
cmpb $0x23, 0xf(%rsp)
leaq 0x1d0(%rsp), %r15
je 0x7edda
movq 0x10(%rsp), %rax
cmpb $0x0, 0x28(%rax)
movq 0x18(%rsp), %rbp
jne 0x7f112
leaq 0x1d0(%rsp), %rdi
callq 0x33b76
movl %eax, %r12d
jmp 0x7f112
subq %r15, %rbp
sarq $0x7, %rbp
cmpq $0x1, %rbp
adcq $0x0, %rbp
xorl %r13d, %r13d
leaq 0xf0(%rsp), %r14
movabsq $0x346dc5d63886594b, %rbx # imm = 0x346DC5D63886594B
leaq 0x1(%r13), %r15
movl $0x1, %esi
cmpq $0x9, %r13
jb 0x7f084
movl $0x4, %esi
movq %r15, %rcx
cmpq $0x63, %rcx
jbe 0x7f07d
cmpq $0x3e7, %rcx            # imm = 0x3E7
jbe 0x7f082
cmpq $0x2710, %rcx           # imm = 0x2710
jb 0x7f084
movq %rcx, %rax
mulq %rbx
shrq $0xb, %rdx
addl $0x4, %esi
cmpq $0x1869f, %rcx          # imm = 0x1869F
movq %rdx, %rcx
ja 0x7f047
addl $-0x3, %esi
jmp 0x7f084
addl $-0x2, %esi
jmp 0x7f084
decl %esi
movl %esi, %esi
leaq 0x100(%rsp), %rax
movq %rax, 0xf0(%rsp)
movq %r14, %rdi
xorl %edx, %edx
callq 0xa670
movq 0xf0(%rsp), %rdi
movl 0xf8(%rsp), %esi
movq %r15, %rdx
callq 0x2c726
movq 0x40(%rsp), %rdi
movq %r13, %rsi
callq 0x861ea
addq $0x8, %rax
movq %rax, %rdi
movq %r14, %rsi
callq 0xa6e0
movq 0xf0(%rsp), %rdi
leaq 0x100(%rsp), %rax
cmpq %rax, %rdi
je 0x7f0f8
movq 0x100(%rsp), %rsi
incq %rsi
callq 0xa5a0
movq %r15, %r13
cmpq %rbp, %r15
jne 0x7f030
movq 0x10(%rsp), %rax
movb $0x1, 0x28(%rax)
movq 0x18(%rsp), %rbp
movq 0x10(%rsp), %rcx
movq 0x30(%rcx), %rax
cmpq 0x38(%rcx), %rax
je 0x7f714
leaq 0x1d0(%rsp), %r15
leaq 0xf0(%rsp), %r13
leaq 0x3199c(%rip), %r14     # 0xb0ad8
testb $0x1, %r12b
je 0x7f239
leaq 0x438(%rsp), %rdi
callq 0x37275
cmpq $0x0, 0x440(%rsp)
je 0x7f229
movq %r13, %rdi
leaq 0x438(%rsp), %rsi
movl $0x9, %edx
movl $0x1, %ecx
callq 0x42b7e
movq 0xf8(%rsp), %rax
subq 0xf0(%rsp), %rax
sarq $0x5, %rax
movq 0x10(%rsp), %rcx
movq 0x38(%rcx), %rbx
subq 0x30(%rcx), %rbx
sarq $0x7, %rbx
subq %rax, %rbx
jbe 0x7f1d4
movq %r13, %rdi
movq %r14, %rsi
callq 0x309da
movq 0xf8(%rsp), %rax
subq 0xf0(%rsp), %rax
cmpq $0x21, %rax
jb 0x7f1cf
movb $0x0, 0x108(%rsp)
decq %rbx
jne 0x7f1a6
movq 0x170(%rsp), %rdi
movq %r13, %rsi
callq 0x87ff4
movq 0x10(%rsp), %rcx
movq 0x58(%rcx), %rax
subq 0x50(%rcx), %rax
cmpq $0x21, %rax
jb 0x7f200
movq 0x10(%rsp), %rax
movb $0x0, 0x68(%rax)
callq 0xa070
movl $0x0, (%rax)
movq 0xf0(%rsp), %rax
cmpq 0xf8(%rsp), %rax
jne 0x7f565
movq %r13, %rdi
callq 0x327d2
movq %r15, %rdi
callq 0x33b76
movl %eax, %r12d
jmp 0x7f13c
leaq 0x2f3d8(%rip), %rax     # 0xae618
movq %rax, 0x1d0(%rsp)
movq 0x458(%rsp), %rdi
leaq 0x468(%rsp), %rax
cmpq %rax, %rdi
je 0x7f26d
movq 0x468(%rsp), %rsi
incq %rsi
callq 0xa5a0
movq 0x438(%rsp), %rdi
leaq 0x448(%rsp), %rax
cmpq %rax, %rdi
je 0x7f292
movq 0x448(%rsp), %rsi
incq %rsi
callq 0xa5a0
leaq 0x2f437(%rip), %rax     # 0xae6d0
leaq 0x3f0(%rsp), %r14
movq %rax, -0x220(%r14)
movq %r14, %rdi
callq 0x436fc
leaq 0x2f479(%rip), %rax     # 0xae730
movq %rax, -0x218(%r14)
leaq 0x2d8(%rsp), %r14
leaq 0x2f48b(%rip), %rax     # 0xae758
movq %rax, (%r14)
leaq 0x1e8(%rsp), %r15
movq %r15, %rdi
callq 0xa4b0
leaq 0x2f499(%rip), %rbp     # 0xae780
movq %rbp, -0x10(%r15)
leaq 0x2f4b6(%rip), %rbx     # 0xae7a8
movq %rbx, (%r14)
movq $0x0, -0x8(%r15)
movq %r14, %rdi
callq 0xa1c0
movq 0x1a8(%rsp), %rsi
cmpq $0x0, 0x8(%rsi)
je 0x7f549
leaq 0x1d0(%rsp), %rdi
xorl %edx, %edx
callq 0x30bc4
leaq 0x438(%rsp), %r15
leaq 0x2f2e2(%rip), %rax     # 0xae618
movq %rax, -0x268(%r15)
movl $0x0, -0x8(%r15)
leaq 0x448(%rsp), %rax
movq %rax, (%r15)
xorl %eax, %eax
movq %rax, 0x8(%r15)
movb %al, 0x10(%r15)
leaq 0x468(%rsp), %rcx
movq %rcx, 0x20(%r15)
movq %rax, 0x28(%r15)
movb %al, 0x30(%r15)
leaq 0x100(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
leaq 0x1d0(%rsp), %r12
leaq 0xf0(%rsp), %r13
movq %r12, %rdi
callq 0x33b76
testb %al, %al
je 0x7f466
movq %r15, %rdi
callq 0x37275
movq %r15, %rdi
callq 0x384ed
movq 0x440(%rsp), %rdx
testq %rdx, %rdx
je 0x7f43a
movq 0xf8(%rsp), %rax
testq %rax, %rax
je 0x7f456
cmpq %rdx, %rax
jne 0x7f3ec
movq 0x438(%rsp), %rsi
movq 0xf0(%rsp), %rdi
callq 0xa5c0
testl %eax, %eax
je 0x7f390
movq 0x10(%rsp), %rdi
movq %r15, %rsi
callq 0x7ff96
movq %rax, %r14
cmpq $-0x1, %rax
je 0x7f390
movq 0x10(%rsp), %rdi
movq %r13, %rsi
callq 0x7ff96
cmpq $-0x1, %rax
jne 0x7f69c
movq 0x40(%rsp), %rdi
movq %r14, %rsi
callq 0x861ea
addq $0x8, %rax
movq %rax, %rdi
movq %r13, %rsi
callq 0xa320
jmp 0x7f390
movq $0x0, 0xf8(%rsp)
movq 0xf0(%rsp), %rax
movb $0x0, (%rax)
jmp 0x7f390
movq %r13, %rdi
movq %r15, %rsi
callq 0xa320
jmp 0x7f390
movq 0xf0(%rsp), %rdi
leaq 0x100(%rsp), %rax
cmpq %rax, %rdi
je 0x7f48b
movq 0x100(%rsp), %rsi
incq %rsi
callq 0xa5a0
leaq 0x2f186(%rip), %rax     # 0xae618
movq %rax, 0x1d0(%rsp)
movq 0x458(%rsp), %rdi
leaq 0x468(%rsp), %rax
cmpq %rax, %rdi
je 0x7f4bf
movq 0x468(%rsp), %rsi
incq %rsi
callq 0xa5a0
movq 0x438(%rsp), %rdi
leaq 0x448(%rsp), %rax
cmpq %rax, %rdi
je 0x7f4e4
movq 0x448(%rsp), %rsi
incq %rsi
callq 0xa5a0
leaq 0x3f0(%rsp), %r14
leaq 0x2f1dd(%rip), %rax     # 0xae6d0
movq %rax, -0x220(%r14)
movq %r14, %rdi
callq 0x436fc
leaq 0x2f227(%rip), %rax     # 0xae730
movq %rax, -0x218(%r14)
leaq 0x2d8(%rsp), %r14
leaq 0x2f239(%rip), %rax     # 0xae758
movq %rax, (%r14)
leaq 0x1e8(%rsp), %r15
movq %r15, %rdi
callq 0xa4b0
movq %rbp, -0x10(%r15)
movq %rbx, (%r14)
movq $0x0, -0x8(%r15)
movq %r14, %rdi
callq 0xa1c0
movq 0x10(%rsp), %rdi
callq 0x8000e
addq $0x478, %rsp            # imm = 0x478
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
callq 0xa6b0
testl %eax, %eax
jne 0x7f692
leaq 0x80(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x11074(%rip), %rsi     # 0x905f9
leaq 0x1107d(%rip), %rdx     # 0x90609
leaq 0x70(%rsp), %rdi
callq 0x2fa1a
leaq 0xb0(%rsp), %rdi
movl $0xc6, %esi
callq 0x2d1fa
leaq 0xd0(%rsp), %rdi
leaq 0x70(%rsp), %rsi
leaq 0xb0(%rsp), %rdx
callq 0x2d152
leaq 0xb61c(%rip), %rsi      # 0x8abe5
leaq 0xd0(%rsp), %rdi
callq 0xaac0
leaq 0x58(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7f77d
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
jmp 0x7f78a
callq 0xa6b0
testl %eax, %eax
jne 0x7f692
leaq 0xe0(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x10fdc(%rip), %rsi     # 0x905f9
leaq 0x10fe5(%rip), %rdx     # 0x90609
leaq 0xd0(%rsp), %rdi
callq 0x2fa1a
leaq 0x70(%rsp), %rdi
movl $0xa6, %esi
callq 0x2d1fa
leaq 0x48(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
leaq 0x70(%rsp), %rdx
callq 0x2d152
leaq 0xb587(%rip), %rsi      # 0x8abe5
leaq 0x48(%rsp), %rdi
callq 0xaac0
leaq 0xa0(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7f89e
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
jmp 0x7f8b1
movl $0x1, %edi
callq 0xa6c0
movl $0x10, %edi
callq 0xa2c0
movq %rax, %r13
leaq 0x70(%rsp), %rdi
movq 0x198(%rsp), %rsi
movl $0x22, %edx
callq 0x38a3a
leaq 0x11003(%rip), %rsi     # 0x906ca
leaq 0xd0(%rsp), %rdi
leaq 0x70(%rsp), %rdx
callq 0x2bbf7
leaq 0x10ff1(%rip), %rsi     # 0x906d1
leaq 0xd0(%rsp), %rdi
callq 0xaac0
leaq 0x58(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7f809
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
jmp 0x7f816
movl $0x10, %edi
callq 0xa2c0
movq %rax, %r14
leaq 0x100(%rsp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0x10f6b(%rip), %rsi     # 0x9069f
leaq 0x10f80(%rip), %rdx     # 0x906bb
leaq 0xf0(%rsp), %rdi
callq 0x2fa1a
movb $0x1, %bpl
leaq 0xf0(%rsp), %rdx
movq %r14, %rdi
movq 0x10(%rsp), %rsi
callq 0x3263e
xorl %ebp, %ebp
leaq 0x2f377(%rip), %rsi     # 0xaeae0
movq 0x30810(%rip), %rdx     # 0xaff80
movq %r14, %rdi
callq 0xa9b0
jmp 0x7fa7f
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x50(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x1c0(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x10e8b(%rip), %rsi     # 0x90640
leaq 0x10ecf(%rip), %rdx     # 0x9068b
leaq 0x1b0(%rsp), %rdi
callq 0x2fa1a
leaq 0xd163(%rip), %rsi      # 0x8c933
leaq 0x1b0(%rsp), %rdi
callq 0xaac0
leaq 0x188(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7f933
movups (%rcx), %xmm0
movups %xmm0, (%r13)
jmp 0x7f946
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x50(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xb0(%rsp), %rdi
leaq 0xf0(%rsp), %rsi
movl $0x22, %edx
callq 0x38a3a
leaq 0x90(%rsp), %rdi
leaq 0x48(%rsp), %rsi
leaq 0xb0(%rsp), %rdx
callq 0x2d152
leaq 0x10e72(%rip), %rsi     # 0x906db
leaq 0x90(%rsp), %rdi
callq 0xaac0
leaq 0x30(%rsp), %r14
movq %r14, -0x10(%r14)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7fa33
movups (%rcx), %xmm0
movups %xmm0, (%r14)
jmp 0x7fa40
movq %rdx, 0x90(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xa0(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x98(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x188(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x10d61(%rip), %rsi     # 0x90640
leaq 0x10da5(%rip), %rdx     # 0x9068b
leaq 0x178(%rsp), %rdi
callq 0x2fa1a
leaq 0xd039(%rip), %rsi      # 0x8c933
leaq 0x178(%rsp), %rdi
callq 0xaac0
leaq 0xc0(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7f9b3
movups (%rcx), %xmm0
movups %xmm0, (%r13)
jmp 0x7f9c6
movq %rdx, 0x178(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x188(%rsp)
movq 0x8(%rax), %rsi
leaq 0x178(%rsp), %rdx
movq %rsi, 0x8(%rdx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x90(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x2d152
leaq 0x10d3e(%rip), %rsi     # 0x906bc
leaq 0x90(%rsp), %rdi
callq 0xaac0
leaq 0x30(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7fa7f
movups (%rcx), %xmm0
movups %xmm0, (%rbp)
jmp 0x7fa8c
movq %rdx, 0xb0(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xc0(%rsp)
movq 0x8(%rax), %rsi
leaq 0xb0(%rsp), %rdx
movq %rsi, 0x8(%rdx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x20(%rsp), %rdi
leaq 0x90(%rsp), %rsi
callq 0x2d152
leaq 0x10c8e(%rip), %rsi     # 0x9068c
leaq 0x20(%rsp), %rdi
callq 0xaac0
leaq 0x100(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7faad
movups (%rcx), %xmm0
movups %xmm0, (%rbp)
jmp 0x7fac0
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
movq 0x8(%rax), %rdx
leaq 0x20(%rsp), %rsi
movq %rdx, 0x8(%rsi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movb $0x1, %bpl
movq %r13, %rdi
callq 0xa930
xorl %ebp, %ebp
movq 0x30578(%rip), %rsi     # 0xaffe8
movq 0x304e9(%rip), %rdx     # 0xaff60
movq %r13, %rdi
callq 0xa9b0
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
movq 0x8(%rax), %rdx
leaq 0x20(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x34fa2
movq %rdx, 0xf0(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x100(%rsp)
movq 0x8(%rax), %rdx
leaq 0xf0(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x34fa2
movq %rax, %r12
movq 0xf0(%rsp), %rdi
cmpq %rbp, %rdi
je 0x7fb09
movq 0x100(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fb09
movq %rax, %r12
leaq 0x30(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fb29
movq 0x30(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fb29
movq %rax, %r12
movq 0xb0(%rsp), %rdi
cmpq %r13, %rdi
je 0x7fbd9
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fbd9
movq %rax, %r12
movq 0x20(%rsp), %rdi
cmpq %rbp, %rdi
je 0x7fb6e
movq 0x30(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fb6e
movq %rax, %r12
leaq 0xa0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fbfb
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fbfb
movq %rax, %r12
movq 0x20(%rsp), %rdi
cmpq %r14, %rdi
je 0x7fbb3
movq 0x30(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fbb3
movq %rax, %r12
movb $0x1, %bpl
leaq 0xa0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fc20
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fc20
movq %rax, %r12
movq 0x178(%rsp), %rdi
cmpq %r15, %rdi
je 0x7fc4b
movq 0x188(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fc4b
movq %rax, %r12
movq 0x178(%rsp), %rdi
cmpq %r13, %rdi
je 0x7fc6d
movq 0x188(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fc6d
movq %rax, %r12
movb $0x1, %bpl
leaq 0xc0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fc92
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fc92
jmp 0x7ff0a
movq %rax, %r12
movq 0x90(%rsp), %rdi
cmpq %rbx, %rdi
je 0x7fcae
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fcae
movq %rax, %r12
movq 0x1b0(%rsp), %rdi
cmpq %r15, %rdi
je 0x7fcd2
movq 0x1c0(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fcd2
movq %rax, %r12
movb $0x1, %bpl
movq 0x48(%rsp), %rdi
cmpq %rbx, %rdi
je 0x7fcf8
movq 0x58(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fcf8
movq %rax, %r12
leaq 0x58(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fd4b
movq 0x58(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fd4b
movq %rax, %r12
movq 0x48(%rsp), %rdi
cmpq %rbx, %rdi
je 0x7fdbc
movq 0x58(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fdbc
movq %rax, %r12
movb $0x1, %bpl
leaq 0xe0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fd19
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0xa5a0
leaq 0x80(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fd3a
movq 0x80(%rsp), %rsi
incq %rsi
callq 0xa5a0
testb %bpl, %bpl
jne 0x7fe5b
jmp 0x7fed1
movq %rax, %r12
leaq 0x80(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fe0c
movq 0x80(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fe0c
movq %rax, %r12
movq 0xf0(%rsp), %rdi
cmpq %rbx, %rdi
je 0x7fd95
movq 0x100(%rsp), %rsi
incq %rsi
callq 0xa5a0
testb %bpl, %bpl
movq 0x18(%rsp), %rbp
jne 0x7fdac
jmp 0x7ff45
movq %rax, %r12
movq 0x18(%rsp), %rbp
movq %r14, %rdi
callq 0xa440
jmp 0x7ff45
movq %rax, %r12
leaq 0xe0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fe35
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fe35
jmp 0x7fe2a
movq %rax, %r12
leaq 0x80(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fe5b
movq 0x80(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fe5b
jmp 0x7fe2a
movq %rax, %r12
movq 0xd0(%rsp), %rdi
cmpq %r14, %rdi
je 0x7ff12
movq 0xe0(%rsp), %rsi
jmp 0x7febe
movq %rax, %r12
jmp 0x7ff03
movq %rax, %r12
leaq 0xc0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fe6d
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fe6d
movq %rax, %r12
movq %r13, %rdi
callq 0xa440
jmp 0x7fed1
jmp 0x7ff0f
movq %rax, %r12
movq 0x70(%rsp), %rdi
cmpq %r14, %rdi
je 0x7fe8e
movq 0x80(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fe8e
jmp 0x7fece
movq %rax, %r12
movq 0x18(%rsp), %rbp
jmp 0x7ff38
jmp 0x7ff0f
jmp 0x7ff0f
jmp 0x7ff0f
movq %rax, %r12
movq 0xf0(%rsp), %rdi
leaq 0x100(%rsp), %rax
cmpq %rax, %rdi
je 0x7ff12
movq 0x100(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7ff12
jmp 0x7fece
jmp 0x7ff0a
jmp 0x7ff35
movq %rax, %r12
movq 0xf0(%rsp), %rdi
leaq 0x100(%rsp), %rax
cmpq %rax, %rdi
je 0x7fef6
movq 0x100(%rsp), %rsi
incq %rsi
callq 0xa5a0
leaq 0x1d0(%rsp), %rdi
callq 0x2defc
movq 0x18(%rsp), %rbp
jmp 0x7ff52
movq %rax, %r12
jmp 0x7ff45
movq %rax, %r12
movq 0x18(%rsp), %rbp
jmp 0x7ff45
movq %rax, %r12
jmp 0x7ff2e
movq %rax, %r12
leaq 0xf0(%rsp), %rdi
callq 0x861aa
leaq 0x20(%rsp), %rdi
jmp 0x7ff40
movq %rax, %r12
leaq 0xf0(%rsp), %rdi
callq 0x327d2
leaq 0x1d0(%rsp), %rdi
callq 0x2defc
movq 0x170(%rsp), %rdi
callq 0x325ae
movq 0x40(%rsp), %rdi
callq 0x325f6
movq 0x10(%rsp), %rax
movq %rbp, (%rax)
movq 0x8(%rax), %rdi
movq 0x1a0(%rsp), %rax
cmpq %rax, %rdi
je 0x7ff8d
movq (%rax), %rsi
incq %rsi
callq 0xa5a0
movq %r12, %rdi
callq 0xaa10
nop