// File: /workspace/github_cpp_makefile_star2_O1/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 $0x468, %rsp            # imm = 0x468
movl %r8d, %ebp
movl %ecx, 0x54(%rsp)
movq %rdx, 0x198(%rsp)
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x2ff2b(%rip), %rax     # 0xaef00
addq $0x10, %rax
movq %rax, 0x158(%rsp)
movq %rax, (%rdi)
addq $0x8, %rdi
leaq 0x18(%rbx), %rax
movq %rax, 0x190(%rsp)
movq %rax, 0x8(%rbx)
movq (%rsi), %rsi
movq 0x8(%r14), %rdx
addq %rsi, %rdx
movq %rdi, 0x188(%rsp)
callq 0x2c652
leaq 0x30b9a(%rip), %rax     # 0xafbb0
movq %rax, (%rbx)
movw $0x100, 0x28(%rbx)      # imm = 0x100
leaq 0x30(%rbx), %rax
movq %rax, 0x28(%rsp)
xorps %xmm0, %xmm0
movups %xmm0, 0x30(%rbx)
movups %xmm0, 0x39(%rbx)
leaq 0x50(%rbx), %rax
movq %rax, 0x160(%rsp)
movups %xmm0, 0x50(%rbx)
movups %xmm0, 0x59(%rbx)
leaq 0x1c0(%rsp), %rdi
movq %r14, %rsi
movl %ebp, %edx
callq 0x30fec
leaq 0x2f578(%rip), %rax     # 0xae5d8
leaq 0x428(%rsp), %rbp
movq %rax, -0x268(%rbp)
movl $0x0, -0x8(%rbp)
leaq 0x438(%rsp), %rcx
movq %rcx, -0x10(%rcx)
xorl %eax, %eax
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
leaq 0x458(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
movb $0x1, 0x6(%rsp)
leaq 0x1c0(%rsp), %r14
movq 0x30f30(%rip), %r12     # 0xaffe0
movq %r14, %rdi
callq 0x33e2a
testb %al, %al
je 0x7f3b4
xorl %edi, %edi
callq 0x3fc6c
testb %al, %al
je 0x7f104
movl 0x420(%rsp), %esi
movq %r12, %rdi
callq 0xa3e0
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0xa570
movsbl %al, %esi
movq %r15, %rdi
callq 0xa040
movq %rax, %rdi
callq 0xa3f0
movq %rbp, %rdi
callq 0x374e6
cmpq $0x0, 0x430(%rsp)
je 0x7f0b0
movq 0x428(%rsp), %rax
movb (%rax), %r14b
cmpb $0x23, %r14b
jne 0x7f13b
movb $0x1, 0x28(%rbx)
movl $0x1, %edx
movq %rbp, %rdi
xorl %esi, %esi
callq 0xa100
cmpq $0x0, 0x430(%rsp)
je 0x7f27a
movb %r14b, 0x7(%rsp)
cmpb $0x23, %r14b
setne %al
movq 0x30(%rbx), %r14
movq 0x38(%rbx), %r12
cmpq %r12, %r14
setne %cl
testb %cl, %al
jne 0x7f245
cmpq %r12, %r14
je 0x7f189
movq %r14, %r15
movq (%r15), %rax
movq %r15, %rdi
callq *(%rax)
subq $-0x80, %r15
cmpq %r12, %r15
jne 0x7f174
movq %r14, 0x38(%rbx)
leaq 0x8(%rsp), %rdi
movq %rbp, %rsi
movl $0x9, %edx
movl $0x1, %ecx
callq 0x42fdc
leaq 0xc0(%rsp), %r12
movq 0x8(%rsp), %r15
movq 0x10(%rsp), %r14
cmpq %r14, %r15
je 0x7f23b
leaq 0x78(%rsp), %r13
movq %r13, %rdi
movq %r15, %rsi
callq 0x861ba
movq 0x28(%rsp), %rdi
movq %r13, %rsi
callq 0x87b2c
movq 0x38(%rbx), %rax
subq 0x30(%rbx), %rax
cmpq $0x81, %rax
jb 0x7f1ec
movb $0x0, 0x48(%rbx)
leaq 0x30a1d(%rip), %rax     # 0xafc10
movq %rax, 0x78(%rsp)
movq %r12, %rdi
callq 0x8749e
movq 0x158(%rsp), %rax
movq %rax, 0x78(%rsp)
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x7f232
movq 0x90(%rsp), %rsi
incq %rsi
callq 0xa5a0
addq $0x20, %r15
jmp 0x7f1b2
leaq 0x8(%rsp), %rdi
callq 0x32c12
callq 0xa070
movl $0x0, (%rax)
movq 0x30(%rbx), %rax
movq 0x38(%rbx), %r14
cmpq %r14, %rax
je 0x7f94e
cmpb $0x0, 0x54(%rsp)
je 0x7f282
cmpb $0x23, 0x7(%rsp)
movq 0x30d6c(%rip), %r12     # 0xaffe0
jne 0x7f389
xorl %r14d, %r14d
jmp 0x7f3a3
subq %rax, %r14
je 0x7f374
sarq $0x7, %r14
cmpq $0x1, %r14
adcq $0x0, %r14
xorl %r12d, %r12d
leaq 0x1(%r12), %r15
movl $0x1, %esi
cmpq $0x9, %r12
jb 0x7f2f9
movl $0x4, %esi
movq %r15, %rcx
cmpq $0x63, %rcx
jbe 0x7f2f2
cmpq $0x3e7, %rcx            # imm = 0x3E7
jbe 0x7f2f7
cmpq $0x2710, %rcx           # imm = 0x2710
jb 0x7f2f9
movq %rcx, %rax
movabsq $0x346dc5d63886594b, %rdx # imm = 0x346DC5D63886594B
mulq %rdx
shrq $0xb, %rdx
addl $0x4, %esi
cmpq $0x1869f, %rcx          # imm = 0x1869F
movq %rdx, %rcx
ja 0x7f2b2
addl $-0x3, %esi
jmp 0x7f2f9
addl $-0x2, %esi
jmp 0x7f2f9
decl %esi
movl %esi, %esi
leaq 0x88(%rsp), %rax
movq %rax, 0x78(%rsp)
leaq 0x78(%rsp), %rdi
xorl %edx, %edx
callq 0xa670
movq 0x78(%rsp), %rdi
movl 0x80(%rsp), %esi
movq %r15, %rdx
callq 0x2cb62
movq 0x28(%rsp), %rdi
movq %r12, %rsi
callq 0x86268
addq $0x8, %rax
movq %rax, %rdi
leaq 0x78(%rsp), %rsi
callq 0xa6e0
movq 0x78(%rsp), %rdi
leaq 0x88(%rsp), %rax
cmpq %rax, %rdi
je 0x7f368
movq 0x88(%rsp), %rsi
incq %rsi
callq 0xa5a0
movq %r15, %r12
cmpq %r14, %r15
jne 0x7f29a
movb $0x1, 0x28(%rbx)
movb $0x1, %r14b
movb $0x1, 0x6(%rsp)
movq 0x30c59(%rip), %r12     # 0xaffe0
jmp 0x7f3a3
movb $0x1, %r14b
cmpb $0x0, 0x28(%rbx)
jne 0x7f3a3
leaq 0x1c0(%rsp), %rdi
callq 0x33e2a
movb %al, 0x6(%rsp)
testb %r14b, %r14b
leaq 0x1c0(%rsp), %r14
je 0x7f0b0
movq 0x30(%rbx), %rax
cmpq 0x38(%rbx), %rax
je 0x7f8ee
testb $0x1, 0x6(%rsp)
je 0x7f4b2
leaq 0x1c0(%rsp), %r14
leaq 0x78(%rsp), %r15
leaq 0x316f7(%rip), %r12     # 0xb0ad8
movq %rbp, %rdi
callq 0x374e6
cmpq $0x0, 0x430(%rsp)
je 0x7f4a2
movq %r15, %rdi
movq %rbp, %rsi
movl $0x9, %edx
movl $0x1, %ecx
callq 0x42fdc
movq 0x80(%rsp), %rax
subq 0x78(%rsp), %rax
sarq $0x5, %rax
movq 0x38(%rbx), %r13
subq 0x30(%rbx), %r13
sarq $0x7, %r13
subq %rax, %r13
jbe 0x7f45a
movq %r15, %rdi
movq %r12, %rsi
callq 0x30dca
movq 0x80(%rsp), %rax
subq 0x78(%rsp), %rax
cmpq $0x21, %rax
jb 0x7f455
movb $0x0, 0x90(%rsp)
decq %r13
jne 0x7f42f
movq 0x160(%rsp), %rdi
movq %r15, %rsi
callq 0x8807a
movq 0x58(%rbx), %rax
subq 0x50(%rbx), %rax
cmpq $0x21, %rax
jb 0x7f47c
movb $0x0, 0x68(%rbx)
callq 0xa070
movl $0x0, (%rax)
movq 0x78(%rsp), %rax
cmpq 0x80(%rsp), %rax
jne 0x7f7d0
movq %r15, %rdi
callq 0x32c12
movq %r14, %rdi
callq 0x33e2a
testb %al, %al
jne 0x7f3e1
leaq 0x2f11f(%rip), %rax     # 0xae5d8
movq %rax, 0x1c0(%rsp)
movq 0x448(%rsp), %rdi
leaq 0x458(%rsp), %rax
cmpq %rax, %rdi
je 0x7f4e6
movq 0x458(%rsp), %rsi
incq %rsi
callq 0xa5a0
movq 0x428(%rsp), %rdi
leaq 0x438(%rsp), %rax
cmpq %rax, %rdi
je 0x7f50b
movq 0x438(%rsp), %rsi
incq %rsi
callq 0xa5a0
leaq 0x2f17e(%rip), %rax     # 0xae690
leaq 0x3e0(%rsp), %r14
movq %rax, -0x220(%r14)
movq %r14, %rdi
callq 0x43b9a
leaq 0x2f1c0(%rip), %rax     # 0xae6f0
movq %rax, -0x218(%r14)
leaq 0x2c8(%rsp), %r14
leaq 0x2f1d2(%rip), %rax     # 0xae718
movq %rax, (%r14)
leaq 0x1d8(%rsp), %r15
movq %r15, %rdi
callq 0xa4b0
leaq 0x2f1e0(%rip), %rax     # 0xae740
movq %rax, -0x10(%r15)
leaq 0x2f1fd(%rip), %rbp     # 0xae768
movq %rbp, (%r14)
movq $0x0, -0x8(%r15)
movq %r14, %rdi
callq 0xa1c0
movq 0x198(%rsp), %rsi
cmpq $0x0, 0x8(%rsi)
je 0x7f7b6
leaq 0x1c0(%rsp), %rdi
xorl %edx, %edx
callq 0x30fec
leaq 0x428(%rsp), %r14
leaq 0x2f029(%rip), %rax     # 0xae5d8
movq %rax, -0x268(%r14)
movl $0x0, -0x8(%r14)
leaq 0x438(%rsp), %rax
movq %rax, (%r14)
xorl %eax, %eax
movq %rax, 0x8(%r14)
movb %al, 0x10(%r14)
leaq 0x458(%rsp), %rcx
movq %rcx, 0x20(%r14)
movq %rax, 0x28(%r14)
movb %al, 0x30(%r14)
leaq 0x78(%rsp), %r15
leaq 0x88(%rsp), %rcx
movq %rcx, (%r15)
movq %rax, 0x8(%r15)
movb %al, 0x10(%r15)
leaq 0x1c0(%rsp), %r12
movq %r12, %rdi
callq 0x33e2a
testb %al, %al
je 0x7f6cf
movq %r14, %rdi
callq 0x374e6
movq %r14, %rdi
callq 0x387de
movq 0x430(%rsp), %rax
testq %rax, %rax
je 0x7f6a6
movq 0x80(%rsp), %rdx
testq %rdx, %rdx
je 0x7f6bf
cmpq %rax, %rdx
jne 0x7f65c
movq 0x428(%rsp), %rsi
movq 0x78(%rsp), %rdi
callq 0xa5c0
testl %eax, %eax
je 0x7f607
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8014c
movq %rax, %r13
cmpq $-0x1, %rax
je 0x7f607
movq %rbx, %rdi
movq %r15, %rsi
callq 0x8014c
cmpq $-0x1, %rax
jne 0x7f86f
movq 0x28(%rsp), %rdi
movq %r13, %rsi
callq 0x86268
addq $0x8, %rax
movq %rax, %rdi
movq %r15, %rsi
callq 0xa320
jmp 0x7f607
movq $0x0, 0x80(%rsp)
movq 0x78(%rsp), %rax
movb $0x0, (%rax)
jmp 0x7f607
movq %r15, %rdi
movq %r14, %rsi
callq 0xa320
jmp 0x7f607
movq 0x78(%rsp), %rdi
leaq 0x88(%rsp), %rax
cmpq %rax, %rdi
je 0x7f6f1
movq 0x88(%rsp), %rsi
incq %rsi
callq 0xa5a0
leaq 0x2eee0(%rip), %rax     # 0xae5d8
movq %rax, 0x1c0(%rsp)
movq 0x448(%rsp), %rdi
leaq 0x458(%rsp), %rax
cmpq %rax, %rdi
je 0x7f725
movq 0x458(%rsp), %rsi
incq %rsi
callq 0xa5a0
movq 0x428(%rsp), %rdi
leaq 0x438(%rsp), %rax
cmpq %rax, %rdi
je 0x7f74a
movq 0x438(%rsp), %rsi
incq %rsi
callq 0xa5a0
leaq 0x3e0(%rsp), %r14
leaq 0x2ef37(%rip), %rax     # 0xae690
movq %rax, -0x220(%r14)
movq %r14, %rdi
callq 0x43b9a
leaq 0x2ef81(%rip), %rax     # 0xae6f0
movq %rax, -0x218(%r14)
leaq 0x2c8(%rsp), %r14
leaq 0x2ef93(%rip), %rax     # 0xae718
movq %rax, (%r14)
leaq 0x1d8(%rsp), %r15
movq %r15, %rdi
callq 0xa4b0
leaq 0x2efa1(%rip), %rax     # 0xae740
movq %rax, -0x10(%r15)
movq %rbp, (%r14)
movq $0x0, -0x8(%r15)
movq %r14, %rdi
callq 0xa1c0
movq %rbx, %rdi
callq 0x801c4
addq $0x468, %rsp            # imm = 0x468
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
callq 0xa6b0
testl %eax, %eax
jne 0x7f9e7
leaq 0x128(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x10e09(%rip), %rsi     # 0x905f9
leaq 0x10e12(%rip), %rdx     # 0x90609
leaq 0x118(%rsp), %rdi
callq 0x2fdd8
leaq 0xf8(%rsp), %rdi
movl $0xc6, %esi
callq 0x2d60a
leaq 0x138(%rsp), %rdi
leaq 0x118(%rsp), %rsi
leaq 0xf8(%rsp), %rdx
callq 0x2d562
leaq 0xb3ab(%rip), %rsi      # 0x8abe5
leaq 0x138(%rsp), %rdi
callq 0xaac0
leaq 0x40(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7fa7e
movups (%rcx), %xmm0
movups %xmm0, (%r15)
jmp 0x7fa8b
movl $0x10, %edi
callq 0xa2c0
movq %rax, %r14
leaq 0x118(%rsp), %rdi
movq 0x188(%rsp), %rsi
movl $0x22, %edx
callq 0x38d2b
leaq 0x10e2d(%rip), %rsi     # 0x906ca
leaq 0x138(%rsp), %rdi
leaq 0x118(%rsp), %rdx
callq 0x2c037
leaq 0x10e18(%rip), %rsi     # 0x906d1
leaq 0x138(%rsp), %rdi
callq 0xaac0
leaq 0x40(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7f9f1
movups (%rcx), %xmm0
movups %xmm0, (%r15)
jmp 0x7f9fe
movl $0x10, %edi
callq 0xa2c0
movq %rax, %r14
leaq 0x78(%rsp), %rdi
leaq 0x88(%rsp), %rax
movq %rax, (%rdi)
leaq 0x10d8d(%rip), %rsi     # 0x9069f
leaq 0x10da2(%rip), %rdx     # 0x906bb
callq 0x2fdd8
movb $0x1, %bpl
leaq 0x78(%rsp), %rdx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x32a1e
xorl %ebp, %ebp
leaq 0x2f166(%rip), %rsi     # 0xaeaa0
movq 0x3063f(%rip), %rdx     # 0xaff80
movq %r14, %rdi
callq 0xa9b0
jmp 0x7fbc5
callq 0xa6b0
testl %eax, %eax
jne 0x7f9e7
leaq 0x148(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x10c8b(%rip), %rsi     # 0x905f9
leaq 0x10c94(%rip), %rdx     # 0x90609
leaq 0x138(%rsp), %rdi
callq 0x2fdd8
leaq 0x118(%rsp), %rdi
movl $0xa6, %esi
callq 0x2d60a
leaq 0x30(%rsp), %rdi
leaq 0x138(%rsp), %rsi
leaq 0x118(%rsp), %rdx
callq 0x2d562
leaq 0xb230(%rip), %rsi      # 0x8abe5
leaq 0x30(%rsp), %rdi
callq 0xaac0
leaq 0x68(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7fbf3
movups (%rcx), %xmm0
movups %xmm0, (%r15)
jmp 0x7fc00
movl $0x1, %edi
callq 0xa6c0
movq %rdx, 0x30(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x40(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x38(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xf8(%rsp), %rdi
leaq 0x78(%rsp), %rsi
movl $0x22, %edx
callq 0x38d2b
leaq 0x58(%rsp), %rdi
leaq 0x30(%rsp), %rsi
leaq 0xf8(%rsp), %rdx
callq 0x2d562
leaq 0x10c90(%rip), %rsi     # 0x906db
leaq 0x58(%rsp), %rdi
callq 0xaac0
leaq 0x18(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7fb79
movups (%rcx), %xmm0
movups %xmm0, (%r13)
jmp 0x7fb86
movq %rdx, 0x30(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x40(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x38(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x1b0(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x10b8a(%rip), %rsi     # 0x90640
leaq 0x10bce(%rip), %rdx     # 0x9068b
leaq 0x1a0(%rsp), %rdi
callq 0x2fdd8
leaq 0xce62(%rip), %rsi      # 0x8c933
leaq 0x1a0(%rsp), %rdi
callq 0xaac0
leaq 0x178(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7fb02
movups (%rcx), %xmm0
movups %xmm0, (%rbp)
jmp 0x7fb15
movq %rdx, 0x168(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x178(%rsp)
movq 0x8(%rax), %rsi
leaq 0x168(%rsp), %rdx
movq %rsi, 0x8(%rdx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x58(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x2d562
leaq 0x10b72(%rip), %rsi     # 0x906bc
leaq 0x58(%rsp), %rdi
callq 0xaac0
leaq 0x18(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7fbc5
movups (%rcx), %xmm0
leaq 0x18(%rsp), %rdx
movups %xmm0, (%rdx)
jmp 0x7fbd2
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %rsi
movq %rdx, 0x8(%rsi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movb $0x1, %bpl
movq %r14, %rdi
callq 0xa930
xorl %ebp, %ebp
movq 0x30432(%rip), %rsi     # 0xaffe8
movq 0x303a3(%rip), %rdx     # 0xaff60
movq %r14, %rdi
callq 0xa9b0
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x3523b
movq %rdx, 0x58(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x68(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x60(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x178(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x10a15(%rip), %rsi     # 0x90640
leaq 0x10a59(%rip), %rdx     # 0x9068b
leaq 0x168(%rsp), %rdi
callq 0x2fdd8
leaq 0xcced(%rip), %rsi      # 0x8c933
leaq 0x168(%rsp), %rdi
callq 0xaac0
leaq 0x108(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7fc77
movups (%rcx), %xmm0
movups %xmm0, (%rbp)
jmp 0x7fc8a
movq %rdx, 0xf8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x108(%rsp)
movq 0x8(%rax), %rsi
leaq 0xf8(%rsp), %rdx
movq %rsi, 0x8(%rdx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x8(%rsp), %rdi
leaq 0x58(%rsp), %rsi
callq 0x2d562
leaq 0x109cd(%rip), %rsi     # 0x9068c
leaq 0x8(%rsp), %rdi
callq 0xaac0
leaq 0x88(%rsp), %rcx
movq %rcx, 0x78(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x7fcf5
movups (%rcx), %xmm0
leaq 0x88(%rsp), %rdx
movups %xmm0, (%rdx)
jmp 0x7fd05
movq %rdx, 0x78(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x88(%rsp)
movq 0x8(%rax), %rdx
leaq 0x78(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x3523b
movq %rax, %r12
movq 0x78(%rsp), %rdi
leaq 0x88(%rsp), %rax
cmpq %rax, %rdi
je 0x7fd50
movq 0x88(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fd50
movq %rax, %r12
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fd70
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fd70
movq %rax, %r12
movq 0xf8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x7fd92
movq 0x108(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fd92
movq %rax, %r12
movq 0x168(%rsp), %rdi
cmpq %r13, %rdi
je 0x7fdb4
movq 0x178(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fdb4
movq %rax, %r12
movq 0x58(%rsp), %rdi
cmpq %r15, %rdi
je 0x7fdd0
movq 0x68(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fdd0
movq %rax, %r12
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fe31
movq 0x40(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fe31
movq %rax, %r12
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x7fe11
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fe11
movq %rax, %r12
leaq 0x68(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fe57
movq 0x68(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fe57
movq %rax, %r12
leaq 0x128(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7feb8
movq 0x128(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7feb8
movq %rax, %r12
movq 0x168(%rsp), %rdi
cmpq %rbp, %rdi
je 0x7fed9
movq 0x178(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fed9
movq %rax, %r12
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x7fe98
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fe98
movq %rax, %r12
movb $0x1, %bpl
leaq 0x68(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7fefe
movq 0x68(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7fefe
movq %rax, %r12
movq 0x138(%rsp), %rdi
cmpq %r14, %rdi
je 0x800f9
movq 0x148(%rsp), %rsi
jmp 0x800dd
movq %rax, %r12
movq 0x1a0(%rsp), %rdi
cmpq %r13, %rdi
je 0x7ff29
movq 0x1b0(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7ff29
movq %rax, %r12
movb $0x1, %bpl
leaq 0x108(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7ff48
movq 0x108(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7ff48
jmp 0x800e7
movq %rax, %r12
movq 0x30(%rsp), %rdi
cmpq %r15, %rdi
je 0x7ff69
movq 0x40(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7ff69
movq %rax, %r12
movb $0x1, %bpl
movq 0x30(%rsp), %rdi
cmpq %r15, %rdi
je 0x7ff96
movq 0x40(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7ff96
jmp 0x800e7
movq %rax, %r12
leaq 0x148(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x80008
movq 0x148(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x80008
movq %rax, %r12
movb $0x1, %bpl
leaq 0x148(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x80033
movq 0x148(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x80033
movq %rax, %r12
movq 0x78(%rsp), %rdi
leaq 0x88(%rsp), %rax
cmpq %rax, %rdi
je 0x7ffea
movq 0x88(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x7ffea
movq %rax, %r12
movb $0x1, %bpl
testb %bpl, %bpl
je 0x800f9
movq %r14, %rdi
callq 0xa440
jmp 0x800f9
jmp 0x800e7
movq %rax, %r12
leaq 0x108(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x80063
movq 0x108(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x80063
jmp 0x80058
movq %rax, %r12
movb $0x1, %bpl
leaq 0x128(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x80088
movq 0x128(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x80088
jmp 0x80058
movq %rax, %r12
jmp 0x80106
movq %rax, %r12
movq 0x118(%rsp), %rdi
cmpq %r14, %rdi
je 0x800ef
movq 0x128(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x800ef
movq %rax, %r12
movb $0x1, %bpl
testb %bpl, %bpl
je 0x800c3
movq %r14, %rdi
callq 0xa440
jmp 0x800c3
jmp 0x800ec
jmp 0x800c0
jmp 0x800c0
jmp 0x800e7
movq %rax, %r12
leaq 0x78(%rsp), %rdi
callq 0x86228
jmp 0x800b1
movq %rax, %r12
leaq 0x8(%rsp), %rdi
jmp 0x800f4
jmp 0x800ec
jmp 0x800e7
jmp 0x800c0
jmp 0x800e7
movq %rax, %r12
movq 0x78(%rsp), %rdi
leaq 0x88(%rsp), %rax
cmpq %rax, %rdi
je 0x800f9
movq 0x88(%rsp), %rsi
incq %rsi
callq 0xa5a0
jmp 0x800f9
movq %rax, %r12
jmp 0x800f9
movq %rax, %r12
leaq 0x78(%rsp), %rdi
callq 0x32c12
leaq 0x1c0(%rsp), %rdi
callq 0x2e31c
movq 0x160(%rsp), %rdi
callq 0x3299a
movq 0x28(%rsp), %rdi
callq 0x329dc
movq 0x158(%rsp), %rax
movq %rax, (%rbx)
movq 0x8(%rbx), %rdi
movq 0x190(%rsp), %rax
cmpq %rax, %rdi
je 0x80144
movq (%rax), %rsi
incq %rsi
callq 0xa5a0
movq %r12, %rdi
callq 0xaa10