// File: 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
subq $0x8f0, %rsp            # imm = 0x8F0
movq %rsi, -0x5f0(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x5e8(%rbp)
leaq -0x210(%rbp), %rdi
movq %rdi, -0x5e0(%rbp)
movl $0x10, %edx
callq 0x2330
movq -0x5e0(%rbp), %rdi
callq 0x2140
movb %al, -0x5d1(%rbp)
jmp 0x8811
movb -0x5d1(%rbp), %al
testb $0x1, %al
jne 0x8886
jmp 0x881d
movq 0x287b4(%rip), %rdi     # 0x30fd8
leaq 0x18fb7(%rip), %rsi     # 0x217e2
callq 0x21b0
movq %rax, -0x5f8(%rbp)
jmp 0x8839
movq -0x5f0(%rbp), %rsi
movq -0x5f8(%rbp), %rdi
callq 0x2190
movq %rax, -0x600(%rbp)
jmp 0x8855
movq -0x600(%rbp), %rdi
movq 0x28765(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x886a
callq 0x2110
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x9fda
movq 0x2874b(%rip), %rdi     # 0x30fd8
leaq 0x187d7(%rip), %rsi     # 0x2106b
callq 0x21b0
movq %rax, -0x608(%rbp)
jmp 0x88a2
movq -0x608(%rbp), %rdi
movq 0x28718(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x88b7
movq 0x2871a(%rip), %rdi     # 0x30fd8
leaq 0x1931c(%rip), %rsi     # 0x21be1
callq 0x21b0
movq %rax, -0x610(%rbp)
jmp 0x88d3
movq -0x5f0(%rbp), %rsi
movq -0x610(%rbp), %rdi
callq 0x2190
movq %rax, -0x618(%rbp)
jmp 0x88ef
movq -0x618(%rbp), %rdi
movq 0x286cb(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8904
movq 0x286cd(%rip), %rdi     # 0x30fd8
leaq 0x192dd(%rip), %rsi     # 0x21bef
callq 0x21b0
movq %rax, -0x620(%rbp)
jmp 0x8920
movq -0x620(%rbp), %rdi
movq 0x2869a(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8935
movq 0x2869c(%rip), %rdi     # 0x30fd8
leaq 0x18728(%rip), %rsi     # 0x2106b
callq 0x21b0
movq %rax, -0x628(%rbp)
jmp 0x8951
movq -0x628(%rbp), %rdi
movq 0x28669(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8966
jmp 0x8968
leaq 0x19291(%rip), %rsi     # 0x21c00
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x630(%rbp)
jmp 0x8984
movq -0x630(%rbp), %rdi
movq 0x28636(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8999
leaq 0x19277(%rip), %rsi     # 0x21c17
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x638(%rbp)
jmp 0x89b5
movq -0x638(%rbp), %rdi
movq 0x28605(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x89ca
leaq 0x1952d(%rip), %rsi     # 0x21efe
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x640(%rbp)
jmp 0x89e6
movq -0x640(%rbp), %rdi
movq 0x285d4(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x89fb
leaq 0x18e10(%rip), %rsi     # 0x21812
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x648(%rbp)
jmp 0x8a17
movq -0x648(%rbp), %rdi
movq 0x285a3(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8a2c
movq -0x5e8(%rbp), %rdi
addq $0x8, %rdi
callq 0xeb00
movq %rax, %rsi
leaq -0x210(%rbp), %rdi
callq 0x2060
movq %rax, -0x650(%rbp)
jmp 0x8a54
movq -0x650(%rbp), %rdi
movq 0x28566(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8a69
movq $0x0, -0x228(%rbp)
movq -0x5e8(%rbp), %rdi
movq -0x228(%rbp), %rax
movq %rax, -0x658(%rbp)
addq $0x8, %rdi
callq 0xeb00
movq %rax, %rcx
movq -0x658(%rbp), %rax
cmpq %rcx, %rax
jae 0x8c4b
movq -0x5e8(%rbp), %rdi
addq $0x8, %rdi
movq -0x228(%rbp), %rsi
callq 0xf490
movq 0x20(%rax), %rcx
movq %rcx, -0x230(%rbp)
movups (%rax), %xmm0
movups 0x10(%rax), %xmm1
movaps %xmm1, -0x240(%rbp)
movaps %xmm0, -0x250(%rbp)
leaq -0x268(%rbp), %rdi
leaq -0x250(%rbp), %rsi
callq 0x2770
jmp 0x8af1
xorl %eax, %eax
movl %eax, %esi
leaq -0x268(%rbp), %rdi
callq 0xef60
movsd (%rax), %xmm0
leaq -0x210(%rbp), %rdi
callq 0x2320
movq %rax, -0x660(%rbp)
jmp 0x8b1a
movq -0x660(%rbp), %rdi
leaq 0x193d6(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x668(%rbp)
jmp 0x8b36
leaq -0x280(%rbp), %rdi
leaq -0x250(%rbp), %rsi
callq 0x2770
jmp 0x8b4b
leaq -0x280(%rbp), %rdi
movl $0x1, %esi
callq 0xef60
movq -0x668(%rbp), %rdi
movsd (%rax), %xmm0
callq 0x2320
movq %rax, -0x670(%rbp)
jmp 0x8b75
movq -0x670(%rbp), %rdi
leaq 0x1937b(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x678(%rbp)
jmp 0x8b91
leaq -0x298(%rbp), %rdi
leaq -0x250(%rbp), %rsi
callq 0x2770
jmp 0x8ba6
leaq -0x298(%rbp), %rdi
movl $0x2, %esi
callq 0xef60
movq -0x678(%rbp), %rdi
movsd (%rax), %xmm0
callq 0x2320
movq %rax, -0x680(%rbp)
jmp 0x8bd0
movq -0x680(%rbp), %rdi
leaq 0x19320(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x688(%rbp)
jmp 0x8bec
leaq -0x250(%rbp), %rdi
callq 0x27a0
movq %rax, -0x690(%rbp)
jmp 0x8c01
movq -0x690(%rbp), %rsi
movq -0x688(%rbp), %rdi
callq 0x2060
movq %rax, -0x698(%rbp)
jmp 0x8c1d
movq -0x698(%rbp), %rdi
movq 0x2839d(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8c32
jmp 0x8c34
movq -0x228(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x228(%rbp)
jmp 0x8a74
leaq 0x192ac(%rip), %rsi     # 0x21efe
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x6a0(%rbp)
jmp 0x8c67
movq -0x6a0(%rbp), %rdi
movq 0x28353(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8c7c
leaq 0x18c4a(%rip), %rsi     # 0x218cd
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x6a8(%rbp)
jmp 0x8c98
movq -0x6a8(%rbp), %rdi
movq 0x28322(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8cad
movq -0x5e8(%rbp), %rdi
addq $0x38, %rdi
callq 0xe110
movq %rax, %rsi
leaq -0x210(%rbp), %rdi
callq 0x2060
movq %rax, -0x6b0(%rbp)
jmp 0x8cd5
movq -0x6b0(%rbp), %rdi
movq 0x282e5(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8cea
movq $0x0, -0x2a0(%rbp)
movq -0x5e8(%rbp), %rdi
movq -0x2a0(%rbp), %rax
movq %rax, -0x6b8(%rbp)
addq $0x38, %rdi
callq 0xe110
movq %rax, %rcx
movq -0x6b8(%rbp), %rax
cmpq %rcx, %rax
jae 0x8ee5
movq -0x5e8(%rbp), %rdi
addq $0x38, %rdi
movq -0x2a0(%rbp), %rsi
callq 0xf4b0
movq %rax, %rsi
leaq -0x2d8(%rbp), %rdi
callq 0xec20
jmp 0x8d4e
leaq -0x2f0(%rbp), %rdi
leaq -0x2d8(%rbp), %rsi
callq 0x29f0
jmp 0x8d63
xorl %eax, %eax
movl %eax, %esi
leaq -0x2f0(%rbp), %rdi
callq 0x36c0
movq (%rax), %rsi
leaq -0x210(%rbp), %rdi
callq 0x2060
movq %rax, -0x6c0(%rbp)
jmp 0x8d8b
movq -0x6c0(%rbp), %rdi
leaq 0x19165(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x6c8(%rbp)
jmp 0x8da7
leaq -0x308(%rbp), %rdi
leaq -0x2d8(%rbp), %rsi
callq 0x29f0
jmp 0x8dbc
leaq -0x308(%rbp), %rdi
movl $0x1, %esi
callq 0x36c0
movq -0x6c8(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x6d0(%rbp)
jmp 0x8de5
movq -0x6d0(%rbp), %rdi
leaq 0x1910b(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x6d8(%rbp)
jmp 0x8e01
leaq -0x2d8(%rbp), %rdi
callq 0x29b0
movq %rax, -0x6e0(%rbp)
jmp 0x8e16
movq -0x6e0(%rbp), %rsi
movq -0x6d8(%rbp), %rdi
callq 0x2060
movq %rax, -0x6e8(%rbp)
jmp 0x8e32
movq -0x6e8(%rbp), %rdi
movq 0x28188(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8e47
leaq -0x308(%rbp), %rdi
callq 0x37c0
leaq -0x2f0(%rbp), %rdi
callq 0x37c0
leaq -0x2d8(%rbp), %rdi
callq 0xf070
movq -0x2a0(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x2a0(%rbp)
jmp 0x8cf5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x8ed4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x8ec8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
leaq -0x308(%rbp), %rdi
callq 0x37c0
leaq -0x2f0(%rbp), %rdi
callq 0x37c0
leaq -0x2d8(%rbp), %rdi
callq 0xf070
jmp 0x9fda
leaq 0x19012(%rip), %rsi     # 0x21efe
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x6f0(%rbp)
jmp 0x8f01
movq -0x6f0(%rbp), %rdi
movq 0x280b9(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8f16
leaq 0x18a1d(%rip), %rsi     # 0x2193a
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x6f8(%rbp)
jmp 0x8f32
movq -0x6f8(%rbp), %rdi
movq 0x28088(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8f47
movq -0x5e8(%rbp), %rdi
addq $0x50, %rdi
callq 0xe3e0
movq %rax, %rsi
leaq -0x210(%rbp), %rdi
callq 0x2060
movq %rax, -0x700(%rbp)
jmp 0x8f6f
movq -0x700(%rbp), %rdi
movq 0x2804b(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x8f84
movq $0x0, -0x310(%rbp)
movq -0x5e8(%rbp), %rdi
movq -0x310(%rbp), %rax
movq %rax, -0x708(%rbp)
addq $0x50, %rdi
callq 0xe3e0
movq %rax, %rcx
movq -0x708(%rbp), %rax
cmpq %rcx, %rax
jae 0x9205
movq -0x5e8(%rbp), %rdi
addq $0x50, %rdi
movq -0x310(%rbp), %rsi
callq 0xf4d0
movq %rax, %rsi
leaq -0x348(%rbp), %rdi
callq 0xec90
jmp 0x8fe8
leaq -0x360(%rbp), %rdi
leaq -0x348(%rbp), %rsi
callq 0x29f0
jmp 0x8ffd
xorl %eax, %eax
movl %eax, %esi
leaq -0x360(%rbp), %rdi
callq 0x36c0
movq (%rax), %rsi
leaq -0x210(%rbp), %rdi
callq 0x2060
movq %rax, -0x710(%rbp)
jmp 0x9025
movq -0x710(%rbp), %rdi
leaq 0x18ecb(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x718(%rbp)
jmp 0x9041
leaq -0x378(%rbp), %rdi
leaq -0x348(%rbp), %rsi
callq 0x29f0
jmp 0x9056
leaq -0x378(%rbp), %rdi
movl $0x1, %esi
callq 0x36c0
movq -0x718(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x720(%rbp)
jmp 0x907f
movq -0x720(%rbp), %rdi
leaq 0x18e71(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x728(%rbp)
jmp 0x909b
leaq -0x390(%rbp), %rdi
leaq -0x348(%rbp), %rsi
callq 0x29f0
jmp 0x90b0
leaq -0x390(%rbp), %rdi
movl $0x2, %esi
callq 0x36c0
movq -0x728(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x730(%rbp)
jmp 0x90d9
movq -0x730(%rbp), %rdi
leaq 0x18e17(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x738(%rbp)
jmp 0x90f5
leaq -0x348(%rbp), %rdi
callq 0x29b0
movq %rax, -0x740(%rbp)
jmp 0x910a
movq -0x740(%rbp), %rsi
movq -0x738(%rbp), %rdi
callq 0x2060
movq %rax, -0x748(%rbp)
jmp 0x9126
movq -0x748(%rbp), %rdi
movq 0x27e94(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x913b
leaq -0x390(%rbp), %rdi
callq 0x37c0
leaq -0x378(%rbp), %rdi
callq 0x37c0
leaq -0x360(%rbp), %rdi
callq 0x37c0
leaq -0x348(%rbp), %rdi
callq 0xf100
movq -0x310(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x310(%rbp)
jmp 0x8f8f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x91f4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x91e8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x91dc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
leaq -0x390(%rbp), %rdi
callq 0x37c0
leaq -0x378(%rbp), %rdi
callq 0x37c0
leaq -0x360(%rbp), %rdi
callq 0x37c0
leaq -0x348(%rbp), %rdi
callq 0xf100
jmp 0x9fda
leaq 0x18cf2(%rip), %rsi     # 0x21efe
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x750(%rbp)
jmp 0x9221
movq -0x750(%rbp), %rdi
movq 0x27d99(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x9236
leaq 0x187f7(%rip), %rsi     # 0x21a34
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x758(%rbp)
jmp 0x9252
movq -0x758(%rbp), %rdi
movq 0x27d68(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x9267
movq -0x5e8(%rbp), %rdi
addq $0x68, %rdi
callq 0xe410
movq %rax, %rsi
leaq -0x210(%rbp), %rdi
callq 0x2060
movq %rax, -0x760(%rbp)
jmp 0x928f
movq -0x760(%rbp), %rdi
movq 0x27d2b(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x92a4
movq $0x0, -0x398(%rbp)
movq -0x5e8(%rbp), %rdi
movq -0x398(%rbp), %rax
movq %rax, -0x768(%rbp)
addq $0x68, %rdi
callq 0xe410
movq %rax, %rcx
movq -0x768(%rbp), %rax
cmpq %rcx, %rax
jae 0x95ab
movq -0x5e8(%rbp), %rdi
addq $0x68, %rdi
movq -0x398(%rbp), %rsi
callq 0xf4f0
movq %rax, %rsi
leaq -0x3d0(%rbp), %rdi
callq 0xed00
jmp 0x9308
leaq -0x3e8(%rbp), %rdi
leaq -0x3d0(%rbp), %rsi
callq 0x29f0
jmp 0x931d
xorl %eax, %eax
movl %eax, %esi
leaq -0x3e8(%rbp), %rdi
callq 0x36c0
movq (%rax), %rsi
leaq -0x210(%rbp), %rdi
callq 0x2060
movq %rax, -0x770(%rbp)
jmp 0x9345
movq -0x770(%rbp), %rdi
leaq 0x18bab(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x778(%rbp)
jmp 0x9361
leaq -0x400(%rbp), %rdi
leaq -0x3d0(%rbp), %rsi
callq 0x29f0
jmp 0x9376
leaq -0x400(%rbp), %rdi
movl $0x1, %esi
callq 0x36c0
movq -0x778(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x780(%rbp)
jmp 0x939f
movq -0x780(%rbp), %rdi
leaq 0x18b51(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x788(%rbp)
jmp 0x93bb
leaq -0x418(%rbp), %rdi
leaq -0x3d0(%rbp), %rsi
callq 0x29f0
jmp 0x93d0
leaq -0x418(%rbp), %rdi
movl $0x2, %esi
callq 0x36c0
movq -0x788(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x790(%rbp)
jmp 0x93f9
movq -0x790(%rbp), %rdi
leaq 0x18af7(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x798(%rbp)
jmp 0x9415
leaq -0x430(%rbp), %rdi
leaq -0x3d0(%rbp), %rsi
callq 0x29f0
jmp 0x942a
leaq -0x430(%rbp), %rdi
movl $0x3, %esi
callq 0x36c0
movq -0x798(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x7a0(%rbp)
jmp 0x9453
movq -0x7a0(%rbp), %rdi
leaq 0x18a9d(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x7a8(%rbp)
jmp 0x946f
leaq -0x3d0(%rbp), %rdi
callq 0x29b0
movq %rax, -0x7b0(%rbp)
jmp 0x9484
movq -0x7b0(%rbp), %rsi
movq -0x7a8(%rbp), %rdi
callq 0x2060
movq %rax, -0x7b8(%rbp)
jmp 0x94a0
movq -0x7b8(%rbp), %rdi
movq 0x27b1a(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x94b5
leaq -0x430(%rbp), %rdi
callq 0x37c0
leaq -0x418(%rbp), %rdi
callq 0x37c0
leaq -0x400(%rbp), %rdi
callq 0x37c0
leaq -0x3e8(%rbp), %rdi
callq 0x37c0
leaq -0x3d0(%rbp), %rdi
callq 0xf220
movq -0x398(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x398(%rbp)
jmp 0x92af
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x959a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x958e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x9582
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x9576
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
leaq -0x430(%rbp), %rdi
callq 0x37c0
leaq -0x418(%rbp), %rdi
callq 0x37c0
leaq -0x400(%rbp), %rdi
callq 0x37c0
leaq -0x3e8(%rbp), %rdi
callq 0x37c0
leaq -0x3d0(%rbp), %rdi
callq 0xf220
jmp 0x9fda
leaq 0x1894c(%rip), %rsi     # 0x21efe
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x7c0(%rbp)
jmp 0x95c7
movq -0x7c0(%rbp), %rdi
movq 0x279f3(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x95dc
leaq 0x183d4(%rip), %rsi     # 0x219b7
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x7c8(%rbp)
jmp 0x95f8
movq -0x7c8(%rbp), %rdi
movq 0x279c2(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x960d
movq -0x5e8(%rbp), %rdi
subq $-0x80, %rdi
callq 0xe6e0
movq %rax, %rsi
leaq -0x210(%rbp), %rdi
callq 0x2060
movq %rax, -0x7d0(%rbp)
jmp 0x9635
movq -0x7d0(%rbp), %rdi
movq 0x27985(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x964a
movq $0x0, -0x438(%rbp)
movq -0x5e8(%rbp), %rdi
movq -0x438(%rbp), %rax
movq %rax, -0x7d8(%rbp)
addq $0x80, %rdi
callq 0xe6e0
movq %rax, %rcx
movq -0x7d8(%rbp), %rax
cmpq %rcx, %rax
jae 0x9954
movq -0x5e8(%rbp), %rdi
subq $-0x80, %rdi
movq -0x438(%rbp), %rsi
callq 0xf510
movq %rax, %rsi
leaq -0x470(%rbp), %rdi
callq 0xede0
jmp 0x96b1
leaq -0x488(%rbp), %rdi
leaq -0x470(%rbp), %rsi
callq 0x29f0
jmp 0x96c6
xorl %eax, %eax
movl %eax, %esi
leaq -0x488(%rbp), %rdi
callq 0x36c0
movq (%rax), %rsi
leaq -0x210(%rbp), %rdi
callq 0x2060
movq %rax, -0x7e0(%rbp)
jmp 0x96ee
movq -0x7e0(%rbp), %rdi
leaq 0x18802(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x7e8(%rbp)
jmp 0x970a
leaq -0x4a0(%rbp), %rdi
leaq -0x470(%rbp), %rsi
callq 0x29f0
jmp 0x971f
leaq -0x4a0(%rbp), %rdi
movl $0x1, %esi
callq 0x36c0
movq -0x7e8(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x7f0(%rbp)
jmp 0x9748
movq -0x7f0(%rbp), %rdi
leaq 0x187a8(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x7f8(%rbp)
jmp 0x9764
leaq -0x4b8(%rbp), %rdi
leaq -0x470(%rbp), %rsi
callq 0x29f0
jmp 0x9779
leaq -0x4b8(%rbp), %rdi
movl $0x2, %esi
callq 0x36c0
movq -0x7f8(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x800(%rbp)
jmp 0x97a2
movq -0x800(%rbp), %rdi
leaq 0x1874e(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x808(%rbp)
jmp 0x97be
leaq -0x4d0(%rbp), %rdi
leaq -0x470(%rbp), %rsi
callq 0x29f0
jmp 0x97d3
leaq -0x4d0(%rbp), %rdi
movl $0x3, %esi
callq 0x36c0
movq -0x808(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x810(%rbp)
jmp 0x97fc
movq -0x810(%rbp), %rdi
leaq 0x186f4(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x818(%rbp)
jmp 0x9818
leaq -0x470(%rbp), %rdi
callq 0x29b0
movq %rax, -0x820(%rbp)
jmp 0x982d
movq -0x820(%rbp), %rsi
movq -0x818(%rbp), %rdi
callq 0x2060
movq %rax, -0x828(%rbp)
jmp 0x9849
movq -0x828(%rbp), %rdi
movq 0x27771(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x985e
leaq -0x4d0(%rbp), %rdi
callq 0x37c0
leaq -0x4b8(%rbp), %rdi
callq 0x37c0
leaq -0x4a0(%rbp), %rdi
callq 0x37c0
leaq -0x488(%rbp), %rdi
callq 0x37c0
leaq -0x470(%rbp), %rdi
callq 0xf190
movq -0x438(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x438(%rbp)
jmp 0x9655
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x9943
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x9937
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x992b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x991f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
leaq -0x4d0(%rbp), %rdi
callq 0x37c0
leaq -0x4b8(%rbp), %rdi
callq 0x37c0
leaq -0x4a0(%rbp), %rdi
callq 0x37c0
leaq -0x488(%rbp), %rdi
callq 0x37c0
leaq -0x470(%rbp), %rdi
callq 0xf190
jmp 0x9fda
leaq 0x185a3(%rip), %rsi     # 0x21efe
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x830(%rbp)
jmp 0x9970
movq -0x830(%rbp), %rdi
movq 0x2764a(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x9985
leaq 0x18111(%rip), %rsi     # 0x21a9d
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x838(%rbp)
jmp 0x99a1
movq -0x838(%rbp), %rdi
movq 0x27619(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x99b6
movq -0x5e8(%rbp), %rdi
addq $0x98, %rdi
callq 0xe710
movq %rax, %rsi
leaq -0x210(%rbp), %rdi
callq 0x2060
movq %rax, -0x840(%rbp)
jmp 0x99e1
movq -0x840(%rbp), %rdi
movq 0x275d9(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x99f6
movq $0x0, -0x4d8(%rbp)
movq -0x5e8(%rbp), %rdi
movq -0x4d8(%rbp), %rax
movq %rax, -0x848(%rbp)
addq $0x68, %rdi
callq 0xe410
movq %rax, %rcx
movq -0x848(%rbp), %rax
cmpq %rcx, %rax
jae 0x9f24
movq -0x5e8(%rbp), %rdi
addq $0x98, %rdi
movq -0x4d8(%rbp), %rsi
callq 0xf530
movq %rax, %rsi
leaq -0x510(%rbp), %rdi
callq 0xed70
jmp 0x9a5d
leaq -0x528(%rbp), %rdi
leaq -0x510(%rbp), %rsi
callq 0x29f0
jmp 0x9a72
xorl %eax, %eax
movl %eax, %esi
leaq -0x528(%rbp), %rdi
callq 0x36c0
movq (%rax), %rsi
leaq -0x210(%rbp), %rdi
callq 0x2060
movq %rax, -0x850(%rbp)
jmp 0x9a9a
movq -0x850(%rbp), %rdi
leaq 0x18456(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x858(%rbp)
jmp 0x9ab6
leaq -0x540(%rbp), %rdi
leaq -0x510(%rbp), %rsi
callq 0x29f0
jmp 0x9acb
leaq -0x540(%rbp), %rdi
movl $0x1, %esi
callq 0x36c0
movq -0x858(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x860(%rbp)
jmp 0x9af4
movq -0x860(%rbp), %rdi
leaq 0x183fc(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x868(%rbp)
jmp 0x9b10
leaq -0x558(%rbp), %rdi
leaq -0x510(%rbp), %rsi
callq 0x29f0
jmp 0x9b25
leaq -0x558(%rbp), %rdi
movl $0x2, %esi
callq 0x36c0
movq -0x868(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x870(%rbp)
jmp 0x9b4e
movq -0x870(%rbp), %rdi
leaq 0x183a2(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x878(%rbp)
jmp 0x9b6a
leaq -0x570(%rbp), %rdi
leaq -0x510(%rbp), %rsi
callq 0x29f0
jmp 0x9b7f
leaq -0x570(%rbp), %rdi
movl $0x3, %esi
callq 0x36c0
movq -0x878(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x880(%rbp)
jmp 0x9ba8
movq -0x880(%rbp), %rdi
leaq 0x18348(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x888(%rbp)
jmp 0x9bc4
leaq -0x588(%rbp), %rdi
leaq -0x510(%rbp), %rsi
callq 0x29f0
jmp 0x9bd9
leaq -0x588(%rbp), %rdi
movl $0x4, %esi
callq 0x36c0
movq -0x888(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x890(%rbp)
jmp 0x9c02
movq -0x890(%rbp), %rdi
leaq 0x182ee(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x898(%rbp)
jmp 0x9c1e
leaq -0x5a0(%rbp), %rdi
leaq -0x510(%rbp), %rsi
callq 0x29f0
jmp 0x9c33
leaq -0x5a0(%rbp), %rdi
movl $0x5, %esi
callq 0x36c0
movq -0x898(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x8a0(%rbp)
jmp 0x9c5c
movq -0x8a0(%rbp), %rdi
leaq 0x18294(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x8a8(%rbp)
jmp 0x9c78
leaq -0x5b8(%rbp), %rdi
leaq -0x510(%rbp), %rsi
callq 0x29f0
jmp 0x9c8d
leaq -0x5b8(%rbp), %rdi
movl $0x6, %esi
callq 0x36c0
movq -0x8a8(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x8b0(%rbp)
jmp 0x9cb6
movq -0x8b0(%rbp), %rdi
leaq 0x1823a(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x8b8(%rbp)
jmp 0x9cd2
leaq -0x5d0(%rbp), %rdi
leaq -0x510(%rbp), %rsi
callq 0x29f0
jmp 0x9ce7
leaq -0x5d0(%rbp), %rdi
movl $0x7, %esi
callq 0x36c0
movq -0x8b8(%rbp), %rdi
movq (%rax), %rsi
callq 0x2060
movq %rax, -0x8c0(%rbp)
jmp 0x9d10
movq -0x8c0(%rbp), %rdi
leaq 0x181e0(%rip), %rsi     # 0x21efe
callq 0x21b0
movq %rax, -0x8c8(%rbp)
jmp 0x9d2c
leaq -0x510(%rbp), %rdi
callq 0x29b0
movq %rax, -0x8d0(%rbp)
jmp 0x9d41
movq -0x8d0(%rbp), %rsi
movq -0x8c8(%rbp), %rdi
callq 0x2060
movq %rax, -0x8d8(%rbp)
jmp 0x9d5d
movq -0x8d8(%rbp), %rdi
movq 0x2725d(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x9d72
leaq -0x5d0(%rbp), %rdi
callq 0x37c0
leaq -0x5b8(%rbp), %rdi
callq 0x37c0
leaq -0x5a0(%rbp), %rdi
callq 0x37c0
leaq -0x588(%rbp), %rdi
callq 0x37c0
leaq -0x570(%rbp), %rdi
callq 0x37c0
leaq -0x558(%rbp), %rdi
callq 0x37c0
leaq -0x540(%rbp), %rdi
callq 0x37c0
leaq -0x528(%rbp), %rdi
callq 0x37c0
leaq -0x510(%rbp), %rdi
callq 0xf2b0
movq -0x4d8(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x4d8(%rbp)
jmp 0x9a01
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x9f13
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x9f07
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x9efb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x9eef
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x9ee3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x9ed7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x9ecb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
jmp 0x9ebf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x218(%rbp)
movl %eax, -0x21c(%rbp)
leaq -0x5d0(%rbp), %rdi
callq 0x37c0
leaq -0x5b8(%rbp), %rdi
callq 0x37c0
leaq -0x5a0(%rbp), %rdi
callq 0x37c0
leaq -0x588(%rbp), %rdi
callq 0x37c0
leaq -0x570(%rbp), %rdi
callq 0x37c0
leaq -0x558(%rbp), %rdi
callq 0x37c0
leaq -0x540(%rbp), %rdi
callq 0x37c0
leaq -0x528(%rbp), %rdi
callq 0x37c0
leaq -0x510(%rbp), %rdi
callq 0xf2b0
jmp 0x9fda
leaq 0x17fd3(%rip), %rsi     # 0x21efe
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x8e0(%rbp)
jmp 0x9f40
movq -0x8e0(%rbp), %rdi
movq 0x2707a(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x9f55
leaq 0x17cc7(%rip), %rsi     # 0x21c23
leaq -0x210(%rbp), %rdi
callq 0x21b0
movq %rax, -0x8e8(%rbp)
jmp 0x9f71
movq -0x8e8(%rbp), %rdi
movq 0x27049(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x9f86
leaq -0x210(%rbp), %rdi
callq 0x2240
jmp 0x9f94
movq 0x2703d(%rip), %rdi     # 0x30fd8
leaq 0x170c9(%rip), %rsi     # 0x2106b
callq 0x21b0
movq %rax, -0x8f0(%rbp)
jmp 0x9fb0
movq -0x8f0(%rbp), %rdi
movq 0x2700a(%rip), %rsi     # 0x30fc8
callq 0x21e0
jmp 0x9fc5
leaq -0x210(%rbp), %rdi
callq 0x2260
addq $0x8f0, %rsp            # imm = 0x8F0
popq %rbp
retq
leaq -0x210(%rbp), %rdi
callq 0x2260
movq -0x218(%rbp), %rdi
callq 0x22e0
nopw %cs:(%rax,%rax)