// File: /workspace/github_cpp_makefile_star2_O3/npaster[P]gmsh_tools/gmshMesh.cpp
// Function: gmsh::Gmesh::writeGmesh_MEDITformat(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>) const
void
Gmesh::writeGmesh_MEDITformat(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 << "MESH file format" << std::endl;
      std::cout << "------------------------" << std::endl;
   }

   mesh_file << "MeshVersionFormatted 2" << std::endl;
   mesh_file << "Dimension 3" << std::endl;
   mesh_file << " " << std::endl;

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

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

   mesh_file << " " << std::endl;
   mesh_file << "Edges" << std::endl;
   mesh_file << _edges.size() << std::endl;

   for (size_t i = 0; i < _edges.size(); i++) {
      Edge edge(_edges[i]);
      mesh_file << (edge.getNodes())[0] << " " << (edge.getNodes())[1] << " "
                << edge.getPhysicalEntities() << std::endl;
   }

   mesh_file << " " << std::endl;
   mesh_file << "Triangles" << std::endl;
   mesh_file << _triangles.size() << std::endl;

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

   mesh_file << " " << std::endl;
   mesh_file << "Quadrilaterals" << std::endl;
   mesh_file << _quadrangles.size() << std::endl;

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

   mesh_file << " " << std::endl;
   mesh_file << "Tetrahedra" << std::endl;
   mesh_file << _tetrahedra.size() << std::endl;

   for (size_t i = 0; i < _tetrahedra.size(); i++) {
      Tetrahedron tetra(_tetrahedra[i]);
      mesh_file << (tetra.getNodes())[0] << " " << (tetra.getNodes())[1] << " "
                << (tetra.getNodes())[2] << " " << (tetra.getNodes())[3] << " "
                << tetra.getPhysicalEntities() << std::endl;
   }

   mesh_file << " " << std::endl;
   mesh_file << "Hexahedra" << std::endl;
   mesh_file << _hexahedra.size() << std::endl;

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

   mesh_file << " " << std::endl;
   mesh_file << "End" << 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, %rbx
leaq -0x330(%rbp), %rdi
movl $0x10, %edx
callq 0x2330
leaq -0x2c0(%rbp), %rdi
callq 0x2050
testb %al, %al
je 0x742a
movq 0x10e86(%rip), %r15     # 0x16fd8
leaq 0xaf12(%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 0x10e54(%rip), %rdi     # 0x16fd8
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq 0x10e40(%rip), %rdi     # 0x16fd8
leaq 0xb890(%rip), %rsi      # 0x11a2f
movl $0xd, %edx
callq 0x2230
movq (%r14), %rsi
movq 0x8(%r14), %rdx
movq 0x10e21(%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 0x10deb(%rip), %r14     # 0x16fd8
leaq 0xb849(%rip), %rsi      # 0x11a3d
movl $0x10, %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 0x10db9(%rip), %rdi     # 0x16fd8
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq 0x10da5(%rip), %r14     # 0x16fd8
leaq 0xae31(%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 0x10d73(%rip), %rdi     # 0x16fd8
callq 0x2030
movq %rax, %rdi
callq 0x2180
leaq 0xb7d5(%rip), %rsi      # 0x11a4e
leaq -0x330(%rbp), %r14
movl $0x16, %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 0xb7a2(%rip), %rsi      # 0x11a65
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 0xba69(%rip), %rsi      # 0x11d76
leaq -0x330(%rbp), %r14
movl $0x1, %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 0xb375(%rip), %rsi      # 0x116cc
leaq -0x330(%rbp), %r14
movl $0x8, %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 0x10(%rbx), %rsi
subq 0x8(%rbx), %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 0x8(%rbx), %rax
movq %rbx, -0x30(%rbp)
cmpq %rax, 0x10(%rbx)
je 0x6528
xorl %ebx, %ebx
leaq -0xd0(%rbp), %r15
leaq 0xb96a(%rip), %r13      # 0x11d76
xorl %r12d, %r12d
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)
leaq -0x60(%rbp), %rdi
movq %r15, %rsi
callq 0x2afa
movsd -0x60(%rbp), %xmm0
leaq -0x330(%rbp), %rdi
callq 0x2290
movq %rax, %r14
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x48(%rbp), %rdi
movq %r15, %rsi
callq 0x2afa
movsd -0x40(%rbp), %xmm0
movq %r14, %rdi
callq 0x2290
movq %rax, %r14
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x78(%rbp), %rdi
movq %r15, %rsi
callq 0x2afa
movsd -0x68(%rbp), %xmm0
movq %r14, %rdi
callq 0x2290
movq %rax, %r14
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r15, %rdi
callq 0x2b12
movq %r14, %rdi
movq %rax, %rsi
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
incq %r12
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, %r12
jb 0x640f
leaq 0xb847(%rip), %rsi      # 0x11d76
leaq -0x330(%rbp), %r14
movl $0x1, %edx
movq %r14, %rdi
callq 0x2230
movq -0x30(%rbp), %rbx
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 0xb1ef(%rip), %rsi      # 0x1176c
leaq -0x330(%rbp), %r14
movl $0x5, %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 0x40(%rbx), %rsi
subq 0x38(%rbx), %rsi
sarq $0x3, %rsi
movabsq $0x6db6db6db6db6db7, %rax # imm = 0x6DB6DB6DB6DB6DB7
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 0x38(%rbx), %r12
cmpq %r12, 0x40(%rbx)
je 0x6753
xorl %r15d, %r15d
leaq -0xd0(%rbp), %r14
leaq 0xb747(%rip), %r13      # 0x11d76
xorl %ebx, %ebx
leaq (%r12,%r15), %rsi
movq %r14, %rdi
callq 0x338e
movups 0x18(%r12,%r15), %xmm0
movups 0x28(%r12,%r15), %xmm1
leaq -0xb8(%rbp), %rax
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
leaq -0x60(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x60(%rbp), %rax
movq (%rax), %rsi
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x48(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x48(%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
movq %r14, %rdi
callq 0x2bd8
movq %r12, %rdi
movq %rax, %rsi
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 -0x48(%rbp), %rdi
testq %rdi, %rdi
je 0x6703
callq 0x21e0
movq -0x60(%rbp), %rdi
testq %rdi, %rdi
je 0x6711
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x6722
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, %r15
cmpq %rax, %rbx
jb 0x6631
leaq 0xb61c(%rip), %rsi      # 0x11d76
leaq -0x330(%rbp), %r14
movl $0x1, %edx
movq %r14, %rdi
callq 0x2230
movq -0x30(%rbp), %rbx
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 0xb016(%rip), %rsi      # 0x117be
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 0x58(%rbx), %rsi
subq 0x50(%rbx), %rsi
sarq $0x3, %rsi
movabsq $0x6db6db6db6db6db7, %rax # imm = 0x6DB6DB6DB6DB6DB7
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 0x50(%rbx), %r15
cmpq %r15, 0x58(%rbx)
je 0x69bb
xorl %r12d, %r12d
leaq -0xd0(%rbp), %r14
leaq 0xb51c(%rip), %r13      # 0x11d76
xorl %ebx, %ebx
leaq (%r15,%r12), %rsi
movq %r14, %rdi
callq 0x338e
movups 0x18(%r15,%r12), %xmm0
movups 0x28(%r15,%r12), %xmm1
leaq -0xb8(%rbp), %rax
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
leaq -0x60(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x60(%rbp), %rax
movq (%rax), %rsi
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r15
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x48(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x48(%rbp), %rax
movq 0x8(%rax), %rsi
movq %r15, %rdi
callq 0x2170
movq %rax, %r15
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x78(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x78(%rbp), %rax
movq 0x10(%rax), %rsi
movq %r15, %rdi
callq 0x2170
movq %rax, %r15
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r14, %rdi
callq 0x2bd8
movq %r15, %rdi
movq %rax, %rsi
callq 0x2170
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
movq -0x78(%rbp), %rdi
testq %rdi, %rdi
je 0x695d
callq 0x21e0
movq -0x48(%rbp), %rdi
testq %rdi, %rdi
je 0x696b
callq 0x21e0
movq -0x60(%rbp), %rdi
testq %rdi, %rdi
je 0x6979
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x698a
callq 0x21e0
incq %rbx
movq -0x30(%rbp), %rax
movq 0x50(%rax), %r15
movq 0x58(%rax), %rax
subq %r15, %rax
sarq $0x3, %rax
movabsq $0x6db6db6db6db6db7, %rcx # imm = 0x6DB6DB6DB6DB6DB7
imulq %rcx, %rax
addq $0x38, %r12
cmpq %rax, %rbx
jb 0x685c
leaq 0xb3b4(%rip), %rsi      # 0x11d76
leaq -0x330(%rbp), %r14
movl $0x1, %edx
movq %r14, %rdi
callq 0x2230
movq -0x30(%rbp), %rbx
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 0xae72(%rip), %rsi      # 0x11882
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
movq 0x70(%rbx), %rsi
subq 0x68(%rbx), %rsi
sarq $0x3, %rsi
movabsq $0x6db6db6db6db6db7, %rax # imm = 0x6DB6DB6DB6DB6DB7
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 0x68(%rbx), %r12
cmpq %r12, 0x70(%rbx)
je 0x6c69
xorl %r15d, %r15d
leaq -0xd0(%rbp), %r14
leaq 0xb2b4(%rip), %r13      # 0x11d76
xorl %ebx, %ebx
leaq (%r12,%r15), %rsi
movq %r14, %rdi
callq 0x338e
movups 0x18(%r12,%r15), %xmm0
movups 0x28(%r12,%r15), %xmm1
leaq -0xb8(%rbp), %rax
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
leaq -0x60(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x60(%rbp), %rax
movq (%rax), %rsi
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x48(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x48(%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 -0x78(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x78(%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 -0x90(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x90(%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
movq %r14, %rdi
callq 0x2bd8
movq %r12, %rdi
movq %rax, %rsi
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 -0x90(%rbp), %rdi
testq %rdi, %rdi
je 0x6bfd
callq 0x21e0
movq -0x78(%rbp), %rdi
testq %rdi, %rdi
je 0x6c0b
callq 0x21e0
movq -0x48(%rbp), %rdi
testq %rdi, %rdi
je 0x6c19
callq 0x21e0
movq -0x60(%rbp), %rdi
testq %rdi, %rdi
je 0x6c27
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x6c38
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, %r15
cmpq %rax, %rbx
jb 0x6ac4
leaq 0xb106(%rip), %rsi      # 0x11d76
leaq -0x330(%rbp), %r14
movl $0x1, %edx
movq %r14, %rdi
callq 0x2230
movq -0x30(%rbp), %rbx
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 0xab62(%rip), %rsi      # 0x11820
leaq -0x330(%rbp), %r14
movl $0xa, %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 0x88(%rbx), %rsi
subq 0x80(%rbx), %rsi
sarq $0x3, %rsi
movabsq $0x6db6db6db6db6db7, %rax # imm = 0x6DB6DB6DB6DB6DB7
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 0x80(%rbx), %r12
cmpq %r12, 0x88(%rbx)
je 0x6f29
xorl %r15d, %r15d
leaq -0xd0(%rbp), %r14
leaq 0xaffa(%rip), %r13      # 0x11d76
xorl %ebx, %ebx
leaq (%r12,%r15), %rsi
movq %r14, %rdi
callq 0x338e
movups 0x18(%r12,%r15), %xmm0
movups 0x28(%r12,%r15), %xmm1
leaq -0xb8(%rbp), %rax
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
leaq -0x60(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x60(%rbp), %rax
movq (%rax), %rsi
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x48(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x48(%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 -0x78(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x78(%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 -0x90(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x90(%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
movq %r14, %rdi
callq 0x2bd8
movq %r12, %rdi
movq %rax, %rsi
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 -0x90(%rbp), %rdi
testq %rdi, %rdi
je 0x6eb7
callq 0x21e0
movq -0x78(%rbp), %rdi
testq %rdi, %rdi
je 0x6ec5
callq 0x21e0
movq -0x48(%rbp), %rdi
testq %rdi, %rdi
je 0x6ed3
callq 0x21e0
movq -0x60(%rbp), %rdi
testq %rdi, %rdi
je 0x6ee1
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x6ef2
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, %r15
cmpq %rax, %rbx
jb 0x6d7e
leaq 0xae46(%rip), %rsi      # 0x11d76
leaq -0x330(%rbp), %r14
movl $0x1, %edx
movq %r14, %rdi
callq 0x2230
movq -0x30(%rbp), %rbx
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 0xa96d(%rip), %rsi      # 0x118eb
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 0xa0(%rbx), %rsi
subq 0x98(%rbx), %rsi
sarq $0x3, %rsi
movabsq $0x6db6db6db6db6db7, %rax # imm = 0x6DB6DB6DB6DB6DB7
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 0x70(%rbx), %rax
cmpq 0x68(%rbx), %rax
je 0x72fc
movq %rbx, %rcx
xorl %r15d, %r15d
leaq -0xd0(%rbp), %r14
leaq 0xad3d(%rip), %r13      # 0x11d76
xorl %ebx, %ebx
movq 0x98(%rcx), %r12
leaq (%r12,%r15), %rsi
movq %r14, %rdi
callq 0x338e
movups 0x18(%r12,%r15), %xmm0
movups 0x28(%r12,%r15), %xmm1
leaq -0xb8(%rbp), %rax
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
leaq -0x60(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x60(%rbp), %rax
movq (%rax), %rsi
leaq -0x330(%rbp), %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
leaq -0x48(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x48(%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 -0x78(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x78(%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 -0x90(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x90(%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 -0x130(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x130(%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 -0x118(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x118(%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 -0x100(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0x100(%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 -0xe8(%rbp), %rdi
movq %r14, %rsi
callq 0x2bec
movq -0xe8(%rbp), %rax
movq 0x38(%rax), %rsi
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2230
movq %r14, %rdi
callq 0x2bd8
movq %r12, %rdi
movq %rax, %rsi
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 0x724f
callq 0x21e0
movq -0x100(%rbp), %rdi
testq %rdi, %rdi
je 0x7260
callq 0x21e0
movq -0x118(%rbp), %rdi
testq %rdi, %rdi
je 0x7271
callq 0x21e0
movq -0x130(%rbp), %rdi
testq %rdi, %rdi
je 0x7282
callq 0x21e0
movq -0x90(%rbp), %rdi
testq %rdi, %rdi
je 0x7293
callq 0x21e0
movq -0x78(%rbp), %rdi
testq %rdi, %rdi
je 0x72a1
callq 0x21e0
movq -0x48(%rbp), %rdi
testq %rdi, %rdi
je 0x72af
callq 0x21e0
movq -0x60(%rbp), %rdi
testq %rdi, %rdi
je 0x72bd
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x72ce
callq 0x21e0
incq %rbx
movq -0x30(%rbp), %rcx
movq 0x70(%rcx), %rax
subq 0x68(%rcx), %rax
sarq $0x3, %rax
movabsq $0x6db6db6db6db6db7, %rdx # imm = 0x6DB6DB6DB6DB6DB7
imulq %rdx, %rax
addq $0x38, %r15
cmpq %rax, %rbx
jb 0x703b
leaq 0xaa73(%rip), %rsi      # 0x11d76
leaq -0x330(%rbp), %rbx
movl $0x1, %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 0xa724(%rip), %rsi      # 0x11a71
leaq -0x330(%rbp), %rbx
movl $0x3, %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 0xfc35(%rip), %rbx      # 0x16fd8
leaq 0x9cc1(%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 0xfc03(%rip), %rdi      # 0x16fd8
callq 0x2030
movq %rax, %rdi
callq 0x2180
movq 0xfbe7(%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 0xfba7(%rip), %rdi      # 0x16fd8
leaq 0xa264(%rip), %rsi      # 0x1169c
movl $0x14, %edx
callq 0x2230
movq (%r14), %rsi
movq 0x8(%r14), %rdx
movq 0xfb88(%rip), %rdi      # 0x16fd8
callq 0x2230
movq %rax, %rdi
callq 0x20f0
callq 0x2140
jmp 0x74d5
jmp 0x74da
jmp 0x75c2
jmp 0x74bc
jmp 0x7505
jmp 0x7590
jmp 0x757d
jmp 0x7567
jmp 0x74d0
jmp 0x75c2
jmp 0x74bc
jmp 0x7505
jmp 0x7590
jmp 0x757d
jmp 0x75c2
jmp 0x74bc
jmp 0x7505
jmp 0x7590
jmp 0x757d
jmp 0x75c2
jmp 0x74bc
jmp 0x7505
jmp 0x7590
jmp 0x75c2
movq %rax, %rbx
jmp 0x75af
jmp 0x7505
jmp 0x757d
jmp 0x7567
movq %rax, %rbx
jmp 0x7552
movq %rax, %rbx
jmp 0x7541
movq %rax, %rbx
jmp 0x7530
jmp 0x7505
jmp 0x7590
jmp 0x757d
jmp 0x7505
jmp 0x7590
jmp 0x757d
jmp 0x7505
jmp 0x7590
jmp 0x7505
jmp 0x7590
movq %rax, %rbx
jmp 0x75a1
jmp 0x75c2
jmp 0x75c2
jmp 0x75c2
movq %rax, %rbx
movq -0xe8(%rbp), %rdi
testq %rdi, %rdi
je 0x7530
callq 0x21e0
movq -0x100(%rbp), %rdi
testq %rdi, %rdi
je 0x7541
callq 0x21e0
movq -0x118(%rbp), %rdi
testq %rdi, %rdi
je 0x7552
callq 0x21e0
movq -0x130(%rbp), %rdi
testq %rdi, %rdi
je 0x756a
callq 0x21e0
jmp 0x756a
jmp 0x7567
movq %rax, %rbx
movq -0x90(%rbp), %rdi
testq %rdi, %rdi
je 0x7580
callq 0x21e0
jmp 0x7580
movq %rax, %rbx
movq -0x78(%rbp), %rdi
testq %rdi, %rdi
je 0x7593
callq 0x21e0
jmp 0x7593
movq %rax, %rbx
movq -0x48(%rbp), %rdi
testq %rdi, %rdi
je 0x75a1
callq 0x21e0
movq -0x60(%rbp), %rdi
testq %rdi, %rdi
je 0x75af
callq 0x21e0
movq -0xd0(%rbp), %rdi
testq %rdi, %rdi
je 0x75c5
callq 0x21e0
jmp 0x75c5
movq %rax, %rbx
leaq -0x330(%rbp), %rdi
callq 0x2260
movq %rbx, %rdi
callq 0x22f0
nop