// File: /workspace/github_cpp_makefile_star2_O1/npaster[P]gmsh_tools/gmshMesh.cpp
// Function: gmsh::Gmesh::writeGmesh_MSHformat(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>) const
void
Gmesh::writeGmesh_MSHformat(const std::string name_mesh) const
{
   std::ofstream mesh_file(name_mesh);
   if (!mesh_file.is_open()) {
      std::cout << "Unable to open file " << name_mesh << std::endl;
      abort();
   } else {
      std::cout << "------------------------" << std::endl;
      std::cout << "Writing mesh " << name_mesh << std::endl;
      std::cout << "MSH ASCII file format" << std::endl;
      std::cout << "------------------------" << std::endl;
   }

   size_t offset_elements(1);

   mesh_file << "$MeshFormat" << std::endl;
   mesh_file << "2.2 0 8" << std::endl;
   mesh_file << "$EndMeshFormat" << std::endl;

   mesh_file << "$Nodes" << std::endl;
   mesh_file << _nodes.size() << std::endl;

   for (size_t i = 0; i < _nodes.size(); i++) {
      Node node(_nodes[i]);
      mesh_file << node.getIndex() << " " << (node.getCoordinate())[0] << " "
                << (node.getCoordinate())[1] << " " << (node.getCoordinate())[2] << std::endl;
   }

   mesh_file << "$EndNodes" << std::endl;
   mesh_file << "$Elements" << std::endl;
   mesh_file << _number_of_elements << std::endl;

   for (size_t i = 0; i < _vertices.size(); i++) {
      Vertice vert(_vertices[i]);
      mesh_file << offset_elements << " " << 15 << " " << 2 //number of tag
                << " " << vert.getPhysicalEntities() << " " << vert.getElemTag() << " "
                << (vert.getNodes())[0] << std::endl;
      offset_elements += 1;
   }

   for (size_t i = 0; i < _edges.size(); i++) {
      Edge edge(_edges[i]);
      mesh_file << offset_elements << " " << 1 << " " << 2 //number of tag
                << " " << edge.getPhysicalEntities() << " " << edge.getElemTag() << " "
                << (edge.getNodes())[0] << " " << (edge.getNodes())[1] << std::endl;
      offset_elements += 1;
   }

   for (size_t i = 0; i < _triangles.size(); i++) {
      Triangle tri(_triangles[i]);
      mesh_file << offset_elements << " " << 2 << " " << 2 //number of tag
                << " " << tri.getPhysicalEntities() << " " << tri.getElemTag() << " "
                << (tri.getNodes())[0] << " " << (tri.getNodes())[1] << " " << (tri.getNodes())[2]
                << std::endl;
      offset_elements += 1;
   }

   for (size_t i = 0; i < _quadrangles.size(); i++) {
      Quadrangle quad(_quadrangles[i]);
      mesh_file << offset_elements << " " << 3 << " " << 2 //number of tag
                << " " << quad.getPhysicalEntities() << " " << quad.getElemTag() << " "
                << (quad.getNodes())[0] << " " << (quad.getNodes())[1] << " "
                << (quad.getNodes())[2] << " " << (quad.getNodes())[3] << std::endl;
      offset_elements += 1;
   }

   for (size_t i = 0; i < _tetrahedra.size(); i++) {
      Tetrahedron tet(_tetrahedra[i]);
      mesh_file << offset_elements << " " << 4 << " " << 2 //number of tag
                << " " << tet.getPhysicalEntities() << " " << tet.getElemTag() << " "
                << (tet.getNodes())[0] << " " << (tet.getNodes())[1] << " " << (tet.getNodes())[2]
                << " " << (tet.getNodes())[3] << std::endl;
      offset_elements += 1;
   }

   for (size_t i = 0; i < _hexahedra.size(); i++) {
      Hexahedron hexa(_hexahedra[i]);
      mesh_file << offset_elements << " " << 5 << " " << 2 //number of tag
                << " " << hexa.getPhysicalEntities() << " " << hexa.getElemTag() << " "
                << (hexa.getNodes())[0] << " " << (hexa.getNodes())[1] << " "
                << (hexa.getNodes())[2] << " " << (hexa.getNodes())[3] << " "
                << (hexa.getNodes())[4] << " " << (hexa.getNodes())[5] << " "
                << (hexa.getNodes())[6] << " " << (hexa.getNodes())[7] << std::endl;
      offset_elements += 1;
   }

   for (size_t i = 0; i < _prisms.size(); i++) {
      Prism pri(_prisms[i]);
      mesh_file << offset_elements << " " << 6 << " " << 2 //number of tag
                << " " << pri.getPhysicalEntities() << " " << pri.getElemTag() << " "
                << (pri.getNodes())[0] << " " << (pri.getNodes())[1] << " " << (pri.getNodes())[2]
                << " " << (pri.getNodes())[3] << " " << (pri.getNodes())[4] << " "
                << (pri.getNodes())[5] << std::endl;
      offset_elements += 1;
   }

   for (size_t i = 0; i < _pyramids.size(); i++) {
      Pyramid py(_pyramids[i]);
      mesh_file << offset_elements << " " << 7 << " " << 2 //number of tag
                << " " << py.getPhysicalEntities() << " " << py.getElemTag() << " "
                << (py.getNodes())[0] << " " << (py.getNodes())[1] << " " << (py.getNodes())[2]
                << " " << (py.getNodes())[3] << " " << (py.getNodes())[4] << std::endl;
      offset_elements += 1;
   }

   mesh_file << "$EndElements" << std::endl;

   mesh_file.close();

   std::cout << "------------------------" << std::endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x308, %rsp            # imm = 0x308
movq %rsi, %r14
movq %rdi, -0x30(%rbp)
leaq -0x330(%rbp), %rdi
movl $0x10, %edx
callq 0x2330
leaq -0x2c0(%rbp), %rdi
callq 0x2050
testb %al, %al
je 0x8f09
movq 0xf9b9(%rip), %r15      # 0x16fd8
leaq 0x9a45(%rip), %rsi      # 0x1106b
movl $0x18, %edx
movq %r15, %rdi
callq 0x2230
movq (%r15), %rax
addq -0x18(%rax), %r15
movq %r15, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq 0xf987(%rip), %rdi      # 0x16fd8
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq 0xf973(%rip), %rdi      # 0x16fd8
leaq 0xa3c3(%rip), %rsi      # 0x11a2f
movl $0xd, %edx
callq 0x2230
movq (%r14), %rsi
movq 0x8(%r14), %rdx
movq 0xf954(%rip), %rdi      # 0x16fd8
callq 0x2230
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq 0xf91e(%rip), %r14      # 0x16fd8
leaq 0xa3b4(%rip), %rsi      # 0x11a75
movl $0x15, %edx
movq %r14, %rdi
callq 0x2230
movq (%r14), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq 0xf8ec(%rip), %rdi      # 0x16fd8
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq 0xf8d8(%rip), %r14      # 0x16fd8
leaq 0x9964(%rip), %rsi      # 0x1106b
movl $0x18, %edx
movq %r14, %rdi
callq 0x2230
movq (%r14), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq 0xf8a6(%rip), %rdi      # 0x16fd8
callq 0x2030
movq %rax, %rdi
callq 0x2180
leaq 0xa345(%rip), %rsi      # 0x11a8b
leaq -0x330(%rbp), %r14
movl $0xb, %edx
movq %r14, %rdi
callq 0x2230
movq -0x330(%rbp), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
leaq -0x330(%rbp), %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
leaq 0xa307(%rip), %rsi      # 0x11a97
leaq -0x330(%rbp), %r14
movl $0x7, %edx
movq %r14, %rdi
callq 0x2230
movq -0x330(%rbp), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
leaq -0x330(%rbp), %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
leaq 0xa2c5(%rip), %rsi      # 0x11a9f
leaq -0x330(%rbp), %r14
movl $0xe, %edx
movq %r14, %rdi
callq 0x2230
movq -0x330(%rbp), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
leaq -0x330(%rbp), %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
leaq 0xa17c(%rip), %rsi      # 0x119a0
leaq -0x330(%rbp), %r14
movl $0x6, %edx
movq %r14, %rdi
callq 0x2230
movq -0x330(%rbp), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
leaq -0x330(%rbp), %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq -0x30(%rbp), %rax
movq 0x10(%rax), %rsi
subq 0x8(%rax), %rsi
sarq $0x3, %rsi
movabsq $-0x3333333333333333, %rax # imm = 0xCCCCCCCCCCCCCCCD
imulq %rax, %rsi
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq -0x30(%rbp), %rcx
movq 0x8(%rcx), %rax
cmpq %rax, 0x10(%rcx)
je 0x79f9
xorl %ebx, %ebx
leaq -0xd0(%rbp), %r14
leaq 0xa499(%rip), %r12      # 0x11d76
xorl %r13d, %r13d
movq 0x20(%rax,%rbx), %rcx
movq %rcx, -0xb0(%rbp)
movups (%rax,%rbx), %xmm0
movups 0x10(%rax,%rbx), %xmm1
movaps %xmm1, -0xc0(%rbp)
movaps %xmm0, -0xd0(%rbp)
movq %r14, %rdi
callq 0x2b1c
leaq -0x330(%rbp), %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r15
movl $0x1, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0x2230
leaq -0x50(%rbp), %rdi
movq %r14, %rsi
callq 0x2afa
movsd -0x50(%rbp), %xmm0
movq %r15, %rdi
callq 0x2290
movq %rax, %r15
movl $0x1, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0x2230
leaq -0x68(%rbp), %rdi
movq %r14, %rsi
callq 0x2afa
movsd -0x60(%rbp), %xmm0
movq %r15, %rdi
callq 0x2290
movq %rax, %r15
movl $0x1, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0x2230
leaq -0x80(%rbp), %rdi
movq %r14, %rsi
callq 0x2afa
movsd -0x70(%rbp), %xmm0
movq %r15, %rdi
callq 0x2290
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
incq %r13
movq -0x30(%rbp), %rcx
movq 0x8(%rcx), %rax
movq 0x10(%rcx), %rcx
subq %rax, %rcx
sarq $0x3, %rcx
movabsq $-0x3333333333333333, %rdx # imm = 0xCCCCCCCCCCCCCCCD
imulq %rdx, %rcx
addq $0x28, %rbx
cmpq %rcx, %r13
jb 0x78e0
leaq 0xa0ae(%rip), %rsi      # 0x11aae
leaq -0x330(%rbp), %r14
movl $0x9, %edx
movq %r14, %rdi
callq 0x2230
movq -0x330(%rbp), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
leaq -0x330(%rbp), %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
leaq 0x9fa6(%rip), %rsi      # 0x119f0
leaq -0x330(%rbp), %r14
movl $0x9, %edx
movq %r14, %rdi
callq 0x2230
movq -0x330(%rbp), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
leaq -0x330(%rbp), %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq -0x30(%rbp), %rax
movq 0xe0(%rax), %rsi
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq -0x30(%rbp), %rax
movq 0x20(%rax), %r12
cmpq %r12, 0x28(%rax)
je 0x7c6e
leaq -0xb8(%rbp), %rbx
xorl %r14d, %r14d
leaq -0xd0(%rbp), %r15
leaq 0xa27e(%rip), %r13      # 0x11d76
movq $0x0, -0x38(%rbp)
leaq (%r12,%r14), %rsi
movq %r15, %rdi
callq 0x338e
movq -0x38(%rbp), %rsi
incq %rsi
movups 0x18(%r12,%r14), %xmm0
movups 0x28(%r12,%r14), %xmm1
movups %xmm1, 0x10(%rbx)
movups %xmm0, (%rbx)
leaq -0x330(%rbp), %rdi
movq %rsi, -0x38(%rbp)
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0xf, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x2, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2bd8
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2be2
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x50(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x50(%rbp), %rax
movq (%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x7c28
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x7c39
callq 0x21e0
movq -0x30(%rbp), %rax
movq 0x20(%rax), %r12
movq 0x28(%rax), %rax
subq %r12, %rax
sarq $0x3, %rax
movabsq $0x6db6db6db6db6db7, %rcx # imm = 0x6DB6DB6DB6DB6DB7
imulq %rcx, %rax
addq $0x38, %r14
cmpq %rax, -0x38(%rbp)
jb 0x7b00
incq -0x38(%rbp)
jmp 0x7c77
movl $0x1, %eax
movq %rax, -0x38(%rbp)
movq -0x30(%rbp), %rax
movq 0x38(%rax), %r12
cmpq %r12, 0x40(%rax)
je 0x7e4b
xorl %r14d, %r14d
leaq -0xd0(%rbp), %r15
leaq 0xa0dc(%rip), %r13      # 0x11d76
xorl %ebx, %ebx
leaq (%r12,%r14), %rsi
movq %r15, %rdi
callq 0x338e
movq -0x38(%rbp), %rax
leaq (%rax,%rbx), %rsi
movups 0x18(%r12,%r14), %xmm0
movups 0x28(%r12,%r14), %xmm1
leaq -0xb8(%rbp), %rax
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x1, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x2, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2bd8
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2be2
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x50(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x50(%rbp), %rax
movq (%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x68(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq -0x68(%rbp), %rdi
testq %rdi, %rdi
je 0x7df7
callq 0x21e0
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x7e05
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x7e16
callq 0x21e0
incq %rbx
movq -0x30(%rbp), %rax
movq 0x38(%rax), %r12
movq 0x40(%rax), %rax
subq %r12, %rax
sarq $0x3, %rax
movabsq $0x6db6db6db6db6db7, %rcx # imm = 0x6DB6DB6DB6DB6DB7
imulq %rcx, %rax
addq $0x38, %r14
cmpq %rax, %rbx
jb 0x7c9c
addq %rbx, -0x38(%rbp)
movq -0x30(%rbp), %rax
movq 0x50(%rax), %r12
cmpq %r12, 0x58(%rax)
je 0x805c
xorl %r14d, %r14d
leaq -0xd0(%rbp), %r15
leaq 0x9f08(%rip), %r13      # 0x11d76
xorl %ebx, %ebx
leaq (%r12,%r14), %rsi
movq %r15, %rdi
callq 0x338e
movq -0x38(%rbp), %rax
leaq (%rax,%rbx), %rsi
movups 0x18(%r12,%r14), %xmm0
movups 0x28(%r12,%r14), %xmm1
leaq -0xb8(%rbp), %rax
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x2, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x2, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2bd8
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2be2
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x50(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x50(%rbp), %rax
movq (%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x68(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x80(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x80(%rbp), %rax
movq 0x10(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq -0x80(%rbp), %rdi
testq %rdi, %rdi
je 0x7ffa
callq 0x21e0
movq -0x68(%rbp), %rdi
testq %rdi, %rdi
je 0x8008
callq 0x21e0
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x8016
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x8027
callq 0x21e0
incq %rbx
movq -0x30(%rbp), %rax
movq 0x50(%rax), %r12
movq 0x58(%rax), %rax
subq %r12, %rax
sarq $0x3, %rax
movabsq $0x6db6db6db6db6db7, %rcx # imm = 0x6DB6DB6DB6DB6DB7
imulq %rcx, %rax
addq $0x38, %r14
cmpq %rax, %rbx
jb 0x7e70
addq %rbx, -0x38(%rbp)
movq -0x30(%rbp), %rax
movq 0x68(%rax), %r12
cmpq %r12, 0x70(%rax)
je 0x82b3
xorl %r14d, %r14d
leaq -0xd0(%rbp), %r15
leaq 0x9cf7(%rip), %r13      # 0x11d76
xorl %ebx, %ebx
leaq (%r12,%r14), %rsi
movq %r15, %rdi
callq 0x338e
movq -0x38(%rbp), %rax
leaq (%rax,%rbx), %rsi
movups 0x18(%r12,%r14), %xmm0
movups 0x28(%r12,%r14), %xmm1
leaq -0xb8(%rbp), %rax
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x3, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x2, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2bd8
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2be2
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x50(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x50(%rbp), %rax
movq (%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x68(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x80(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x80(%rbp), %rax
movq 0x10(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x98(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x98(%rbp), %rax
movq 0x18(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq -0x98(%rbp), %rdi
testq %rdi, %rdi
je 0x8243
callq 0x21e0
movq -0x80(%rbp), %rdi
testq %rdi, %rdi
je 0x8251
callq 0x21e0
movq -0x68(%rbp), %rdi
testq %rdi, %rdi
je 0x825f
callq 0x21e0
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x826d
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x827e
callq 0x21e0
incq %rbx
movq -0x30(%rbp), %rax
movq 0x68(%rax), %r12
movq 0x70(%rax), %rax
subq %r12, %rax
sarq $0x3, %rax
movabsq $0x6db6db6db6db6db7, %rcx # imm = 0x6DB6DB6DB6DB6DB7
imulq %rcx, %rax
addq $0x38, %r14
cmpq %rax, %rbx
jb 0x8081
addq %rbx, -0x38(%rbp)
movq -0x30(%rbp), %rax
movq 0x80(%rax), %r12
cmpq %r12, 0x88(%rax)
je 0x8516
xorl %r14d, %r14d
leaq -0xd0(%rbp), %r15
leaq 0x9a9a(%rip), %r13      # 0x11d76
xorl %ebx, %ebx
leaq (%r12,%r14), %rsi
movq %r15, %rdi
callq 0x338e
movq -0x38(%rbp), %rax
leaq (%rax,%rbx), %rsi
movups 0x18(%r12,%r14), %xmm0
movups 0x28(%r12,%r14), %xmm1
leaq -0xb8(%rbp), %rax
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x4, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x2, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2bd8
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2be2
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x50(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x50(%rbp), %rax
movq (%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x68(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x80(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x80(%rbp), %rax
movq 0x10(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x98(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x98(%rbp), %rax
movq 0x18(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq -0x98(%rbp), %rdi
testq %rdi, %rdi
je 0x84a0
callq 0x21e0
movq -0x80(%rbp), %rdi
testq %rdi, %rdi
je 0x84ae
callq 0x21e0
movq -0x68(%rbp), %rdi
testq %rdi, %rdi
je 0x84bc
callq 0x21e0
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x84ca
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x84db
callq 0x21e0
incq %rbx
movq -0x30(%rbp), %rax
movq 0x80(%rax), %r12
movq 0x88(%rax), %rax
subq %r12, %rax
sarq $0x3, %rax
movabsq $0x6db6db6db6db6db7, %rcx # imm = 0x6DB6DB6DB6DB6DB7
imulq %rcx, %rax
addq $0x38, %r14
cmpq %rax, %rbx
jb 0x82de
addq %rbx, -0x38(%rbp)
movq -0x30(%rbp), %rax
movq 0x98(%rax), %r12
cmpq %r12, 0xa0(%rax)
je 0x8891
xorl %ebx, %ebx
leaq -0xd0(%rbp), %r15
leaq 0x9838(%rip), %r13      # 0x11d76
xorl %r14d, %r14d
leaq (%r12,%rbx), %rsi
movq %r15, %rdi
callq 0x338e
movq -0x38(%rbp), %rax
leaq (%rax,%r14), %rsi
movups 0x18(%r12,%rbx), %xmm0
movups 0x28(%r12,%rbx), %xmm1
leaq -0xb8(%rbp), %rax
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x5, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x2, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2bd8
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2be2
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x50(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x50(%rbp), %rax
movq (%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x68(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x80(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x80(%rbp), %rax
movq 0x10(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x98(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x98(%rbp), %rax
movq 0x18(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0xe8(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0xe8(%rbp), %rax
movq 0x20(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x100(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x100(%rbp), %rax
movq 0x28(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x130(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x130(%rbp), %rax
movq 0x30(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x118(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x118(%rbp), %rax
movq 0x38(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq -0x118(%rbp), %rdi
testq %rdi, %rdi
je 0x87d7
callq 0x21e0
movq -0x130(%rbp), %rdi
testq %rdi, %rdi
je 0x87e8
callq 0x21e0
movq -0x100(%rbp), %rdi
testq %rdi, %rdi
je 0x87f9
callq 0x21e0
movq -0xe8(%rbp), %rdi
testq %rdi, %rdi
je 0x880a
callq 0x21e0
movq -0x98(%rbp), %rdi
testq %rdi, %rdi
je 0x881b
callq 0x21e0
movq -0x80(%rbp), %rdi
testq %rdi, %rdi
je 0x8829
callq 0x21e0
movq -0x68(%rbp), %rdi
testq %rdi, %rdi
je 0x8837
callq 0x21e0
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x8845
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x8856
callq 0x21e0
incq %r14
movq -0x30(%rbp), %rax
movq 0x98(%rax), %r12
movq 0xa0(%rax), %rax
subq %r12, %rax
sarq $0x3, %rax
movabsq $0x6db6db6db6db6db7, %rcx # imm = 0x6DB6DB6DB6DB6DB7
imulq %rcx, %rax
addq $0x38, %rbx
cmpq %rax, %r14
jb 0x8541
addq %r14, -0x38(%rbp)
movq -0x30(%rbp), %rax
movq 0xb0(%rax), %r12
cmpq %r12, 0xb8(%rax)
je 0x8b80
xorl %r14d, %r14d
leaq -0xd0(%rbp), %r15
leaq 0x94bc(%rip), %r13      # 0x11d76
xorl %ebx, %ebx
leaq (%r12,%r14), %rsi
movq %r15, %rdi
callq 0x338e
movq -0x38(%rbp), %rax
leaq (%rax,%rbx), %rsi
movups 0x18(%r12,%r14), %xmm0
movups 0x28(%r12,%r14), %xmm1
leaq -0xb8(%rbp), %rax
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x6, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x2, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2bd8
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2be2
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x50(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x50(%rbp), %rax
movq (%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x68(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x80(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x80(%rbp), %rax
movq 0x10(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x98(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x98(%rbp), %rax
movq 0x18(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0xe8(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0xe8(%rbp), %rax
movq 0x20(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x100(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x100(%rbp), %rax
movq 0x28(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq -0x100(%rbp), %rdi
testq %rdi, %rdi
je 0x8ae8
callq 0x21e0
movq -0xe8(%rbp), %rdi
testq %rdi, %rdi
je 0x8af9
callq 0x21e0
movq -0x98(%rbp), %rdi
testq %rdi, %rdi
je 0x8b0a
callq 0x21e0
movq -0x80(%rbp), %rdi
testq %rdi, %rdi
je 0x8b18
callq 0x21e0
movq -0x68(%rbp), %rdi
testq %rdi, %rdi
je 0x8b26
callq 0x21e0
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x8b34
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x8b45
callq 0x21e0
incq %rbx
movq -0x30(%rbp), %rax
movq 0xb0(%rax), %r12
movq 0xb8(%rax), %rax
subq %r12, %rax
sarq $0x3, %rax
movabsq $0x6db6db6db6db6db7, %rcx # imm = 0x6DB6DB6DB6DB6DB7
imulq %rcx, %rax
addq $0x38, %r14
cmpq %rax, %rbx
jb 0x88bc
addq %rbx, -0x38(%rbp)
movq -0x30(%rbp), %rax
movq 0xc8(%rax), %r12
cmpq %r12, 0xd0(%rax)
je 0x8e25
xorl %r14d, %r14d
leaq -0xd0(%rbp), %r15
leaq 0x91cd(%rip), %r13      # 0x11d76
xorl %ebx, %ebx
leaq (%r12,%r14), %rsi
movq %r15, %rdi
callq 0x338e
movq -0x38(%rbp), %rax
leaq (%rax,%rbx), %rsi
movups 0x18(%r12,%r14), %xmm0
movups 0x28(%r12,%r14), %xmm1
leaq -0xb8(%rbp), %rax
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x7, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r12, %rdi
movl $0x2, %esi
callq 0x22d0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2bd8
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2be2
movq %r12, %rdi
movq %rax, %rsi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x50(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x50(%rbp), %rax
movq (%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x68(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x80(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x80(%rbp), %rax
movq 0x10(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x98(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0x98(%rbp), %rax
movq 0x18(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0xe8(%rbp), %rdi
movq %r15, %rsi
callq 0x2bec
movq -0xe8(%rbp), %rax
movq 0x20(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq -0xe8(%rbp), %rdi
testq %rdi, %rdi
je 0x8da2
callq 0x21e0
movq -0x98(%rbp), %rdi
testq %rdi, %rdi
je 0x8db3
callq 0x21e0
movq -0x80(%rbp), %rdi
testq %rdi, %rdi
je 0x8dc1
callq 0x21e0
movq -0x68(%rbp), %rdi
testq %rdi, %rdi
je 0x8dcf
callq 0x21e0
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x8ddd
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x8dee
callq 0x21e0
incq %rbx
movq -0x30(%rbp), %rax
movq 0xc8(%rax), %r12
movq 0xd0(%rax), %rax
subq %r12, %rax
sarq $0x3, %rax
movabsq $0x6db6db6db6db6db7, %rcx # imm = 0x6DB6DB6DB6DB6DB7
imulq %rcx, %rax
addq $0x38, %r14
cmpq %rax, %rbx
jb 0x8bab
leaq 0x8c8c(%rip), %rsi      # 0x11ab8
leaq -0x330(%rbp), %rbx
movl $0xc, %edx
movq %rbx, %rdi
callq 0x2230
movq -0x330(%rbp), %rax
addq -0x18(%rax), %rbx
movq %rbx, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
leaq -0x330(%rbp), %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2180
leaq -0x330(%rbp), %rdi
callq 0x2240
movq 0xe156(%rip), %rbx      # 0x16fd8
leaq 0x81e2(%rip), %rsi      # 0x1106b
movl $0x18, %edx
movq %rbx, %rdi
callq 0x2230
movq (%rbx), %rax
addq -0x18(%rax), %rbx
movq %rbx, %rdi
movl $0xa, %esi
callq 0x21f0
movsbl %al, %esi
movq 0xe124(%rip), %rdi      # 0x16fd8
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq 0xe108(%rip), %rax      # 0x16fd0
movq (%rax), %rcx
movq 0x18(%rax), %rax
leaq -0x328(%rbp), %rdi
movq %rcx, -0x8(%rdi)
movq -0x18(%rcx), %rcx
movq %rax, -0x330(%rbp,%rcx)
callq 0x21c0
leaq -0x238(%rbp), %rdi
callq 0x20a0
addq $0x308, %rsp            # imm = 0x308
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0xe0c8(%rip), %rdi      # 0x16fd8
leaq 0x8785(%rip), %rsi      # 0x1169c
movl $0x14, %edx
callq 0x2230
movq (%r14), %rsi
movq 0x8(%r14), %rdx
movq 0xe0a9(%rip), %rdi      # 0x16fd8
callq 0x2230
movq %rax, %rdi
callq 0x20f0
callq 0x2140
jmp 0x913f
jmp 0x9119
jmp 0x9106
jmp 0x90f0
jmp 0x913f
jmp 0x9152
jmp 0x912c
jmp 0x9119
jmp 0x9106
jmp 0x90f0
jmp 0x909b
jmp 0x913f
jmp 0x9152
jmp 0x912c
jmp 0x9119
jmp 0x9106
jmp 0x90f0
jmp 0x909b
jmp 0x90a0
jmp 0x9041
jmp 0x9152
jmp 0x912c
jmp 0x913f
jmp 0x9119
jmp 0x9106
jmp 0x913f
jmp 0x9152
jmp 0x912c
jmp 0x9119
jmp 0x9106
jmp 0x913f
jmp 0x9152
jmp 0x912c
jmp 0x9119
jmp 0x913f
jmp 0x9152
jmp 0x912c
jmp 0x913f
jmp 0x9152
jmp 0x912c
jmp 0x913f
jmp 0x9152
jmp 0x912c
jmp 0x9119
jmp 0x9106
jmp 0x90f0
jmp 0x909b
jmp 0x912c
jmp 0x9119
jmp 0x9106
jmp 0x90f0
jmp 0x909b
jmp 0x90a0
movq %rax, %rbx
jmp 0x90b9
jmp 0x912c
jmp 0x9119
jmp 0x9106
jmp 0x90f0
jmp 0x912c
jmp 0x9119
jmp 0x9106
jmp 0x912c
jmp 0x9119
jmp 0x9106
jmp 0x912c
jmp 0x9119
jmp 0x912c
jmp 0x913f
jmp 0x913f
jmp 0x913f
jmp 0x913f
movq %rax, %rbx
jmp 0x90db
movq %rax, %rbx
jmp 0x90ca
movq %rax, %rbx
movq -0x118(%rbp), %rdi
testq %rdi, %rdi
je 0x90b9
callq 0x21e0
movq -0x130(%rbp), %rdi
testq %rdi, %rdi
je 0x90ca
callq 0x21e0
movq -0x100(%rbp), %rdi
testq %rdi, %rdi
je 0x90db
callq 0x21e0
movq -0xe8(%rbp), %rdi
testq %rdi, %rdi
je 0x90f3
callq 0x21e0
jmp 0x90f3
jmp 0x90f0
movq %rax, %rbx
movq -0x98(%rbp), %rdi
testq %rdi, %rdi
je 0x9109
callq 0x21e0
jmp 0x9109
movq %rax, %rbx
movq -0x80(%rbp), %rdi
testq %rdi, %rdi
je 0x911c
callq 0x21e0
jmp 0x911c
movq %rax, %rbx
movq -0x68(%rbp), %rdi
testq %rdi, %rdi
je 0x912f
callq 0x21e0
jmp 0x912f
movq %rax, %rbx
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x9155
callq 0x21e0
jmp 0x9155
movq %rax, %rbx
jmp 0x9166
jmp 0x9152
jmp 0x9152
jmp 0x9152
jmp 0x9152
jmp 0x9152
jmp 0x9152
jmp 0x9152
movq %rax, %rbx
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x9166
callq 0x21e0
leaq -0x330(%rbp), %rdi
callq 0x2260
movq %rbx, %rdi
callq 0x22f0