// File: /workspace/github_cpp_makefile_star2_O1/tomfunkhouser[P]gaps/apps/msh2msh/msh2msh.cpp
// Function: ParseArgs(int, char**)
int ParseArgs(int argc, char **argv)
{
  // Check number of arguments
  if (argc == 1) {
    printf("Usage: mesh2mesh inputname outputname [options]\n");
    exit(0);
  }

  // Parse arguments
  argc--; argv++;
  while (argc > 0) {
    if ((*argv)[0] == '-') {
      R3Affine prev_xform = xform;
      if (!strcmp(*argv, "-v")) print_verbose = 1;
      else if (!strcmp(*argv, "-flip")) flip_faces = 1;
      else if (!strcmp(*argv, "-clean")) clean = 1;
      else if (!strcmp(*argv, "-fill_holes")) fill_holes = 1;
      else if (!strcmp(*argv, "-delete_interior_faces")) delete_interior_faces = 1;
      else if (!strcmp(*argv, "-swap_edges")) swap_edges = 1;
      else if (!strcmp(*argv, "-scale_by_area")) scale_by_area = 1;
      else if (!strcmp(*argv, "-scale_by_pca")) scale_by_pca = 1;
      else if (!strcmp(*argv, "-translate_by_centroid")) translate_by_centroid = 1;
      else if (!strcmp(*argv, "-center_at_origin")) translate_by_centroid = 1;
      else if (!strcmp(*argv, "-rotate_by_pca")) rotate_by_pca = 1;
      else if (!strcmp(*argv, "-align_by_pca")) align_by_pca = 1;
      else if (!strcmp(*argv, "-copy_colors")) copy_colors = 1;
      else if (!strcmp(*argv, "-copy_categories")) copy_categories = 1;
      else if (!strcmp(*argv, "-copy_segments")) copy_segments = 1;
      else if (!strcmp(*argv, "-copy_materials")) copy_materials = 1;
      else if (!strcmp(*argv, "-smooth"))  { argv++; argc--; smooth_factor = atof(*argv); }
      else if (!strcmp(*argv, "-scale")) { argv++; argc--; xform = R3identity_affine; xform.Scale(atof(*argv)); xform.Transform(prev_xform); }
      else if (!strcmp(*argv, "-tx")) { argv++; argc--; xform = R3identity_affine; xform.XTranslate(atof(*argv)); xform.Transform(prev_xform); }
      else if (!strcmp(*argv, "-ty")) { argv++; argc--; xform = R3identity_affine; xform.YTranslate(atof(*argv)); xform.Transform(prev_xform);}
      else if (!strcmp(*argv, "-tz")) { argv++; argc--; xform = R3identity_affine; xform.ZTranslate(atof(*argv)); xform.Transform(prev_xform);}
      else if (!strcmp(*argv, "-sx")) { argv++; argc--; xform = R3identity_affine; xform.XScale(atof(*argv)); xform.Transform(prev_xform);}
      else if (!strcmp(*argv, "-sy")) { argv++; argc--; xform = R3identity_affine; xform.YScale(atof(*argv)); xform.Transform(prev_xform);}
      else if (!strcmp(*argv, "-sz")) { argv++; argc--; xform = R3identity_affine; xform.ZScale(atof(*argv)); xform.Transform(prev_xform);}
      else if (!strcmp(*argv, "-rx")) { argv++; argc--; xform = R3identity_affine; xform.XRotate(RN_PI*atof(*argv)/180.0); xform.Transform(prev_xform);}
      else if (!strcmp(*argv, "-ry")) { argv++; argc--; xform = R3identity_affine; xform.YRotate(RN_PI*atof(*argv)/180.0); xform.Transform(prev_xform);}
      else if (!strcmp(*argv, "-rz")) { argv++; argc--; xform = R3identity_affine; xform.ZRotate(RN_PI*atof(*argv)/180.0); xform.Transform(prev_xform);}
      else if (!strcmp(*argv, "-xform")) { argv++; argc--; R4Matrix m;  if (ReadMatrix(m, *argv)) { xform = R3identity_affine; xform.Transform(R3Affine(m)); xform.Transform(prev_xform);} } 
      else if (!strcmp(*argv, "-min_edge_length")) { argv++; argc--; min_edge_length = atof(*argv); }
      else if (!strcmp(*argv, "-max_edge_length")) { argv++; argc--; max_edge_length = atof(*argv); }
      else if (!strcmp(*argv, "-remove_small_components")) { argv++; argc--; min_component_area = atof(*argv); }
      else if (!strcmp(*argv, "-source_mesh")) { argv++; argc--; source_mesh_name = *argv; }
      else if (!strcmp(*argv, "-merge_list")) { argv++; argc--; merge_list_name = *argv; }
      else if (!strcmp(*argv, "-debug_matrix")) { argv++; argc--; output_xform_name = *argv; }
      else if (!strcmp(*argv, "-transform")) {
        R4Matrix m;
        argv++; argc--; m[0][0] = atof(*argv); argv++; argc--; m[0][1] = atof(*argv);
        argv++; argc--; m[0][2] = atof(*argv); argv++; argc--; m[0][3] = atof(*argv);
        argv++; argc--; m[1][0] = atof(*argv); argv++; argc--; m[1][1] = atof(*argv);
        argv++; argc--; m[1][2] = atof(*argv); argv++; argc--; m[1][3] = atof(*argv);
        argv++; argc--; m[2][0] = atof(*argv); argv++; argc--; m[2][1] = atof(*argv);
        argv++; argc--; m[2][2] = atof(*argv); argv++; argc--; m[2][3] = atof(*argv);
        argv++; argc--; m[3][0] = atof(*argv); argv++; argc--; m[3][1] = atof(*argv);
        argv++; argc--; m[3][2] = atof(*argv); argv++; argc--; m[3][3] = atof(*argv);
        xform = R3identity_affine;
        xform.Transform(R3Affine(m));
        xform.Transform(prev_xform);
      }  
      else { RNFail("Invalid program argument: %s", *argv); exit(1); }
      argv++; argc--;
    }
    else {
      if (!input_mesh_name) input_mesh_name = *argv;
      else if (!output_mesh_name) output_mesh_name = *argv;
      else { RNFail("Invalid program argument: %s", *argv); exit(1); }
      argv++; argc--;
    }
  }

  // Check input filename
  if (!input_mesh_name) {
    RNFail("You did not specify an input file name.\n");
    return 0;
  }

  // Check output filename
  if (!output_mesh_name) {
    RNFail("You did not specify an output file name.\n");
    return 0;
  }

  // Return OK status 
  return 1;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x2a8, %rsp            # imm = 0x2A8
cmpl $0x1, %edi
je 0x11655
jle 0x115f7
movq %rsi, %rbp
movl %edi, %r14d
leaq 0x8bf9f(%rip), %rax     # 0x9cb38
movsd (%rax), %xmm0
movsd %xmm0, (%rsp)
leaq 0xc3c7f(%rip), %r12     # 0xd4828
addq $0x10, %r12
leaq 0x8(%rbp), %rbx
leal -0x1(%r14), %r13d
movq 0x8(%rbp), %rsi
cmpb $0x2d, (%rsi)
jne 0x11098
movq %r12, 0x88(%rsp)
leaq 0x90(%rsp), %rdi
leaq 0xc703f(%rip), %rsi     # 0xd7c18
callq 0x3d30e
leaq 0x110(%rsp), %rdi
leaq 0xc70ab(%rip), %rsi     # 0xd7c98
callq 0x3d30e
movq 0xc711f(%rip), %rax     # 0xd7d18
movq %rax, 0x190(%rsp)
movq (%rbx), %r15
movq %r15, %rdi
leaq 0x89452(%rip), %rsi     # 0x9a060
callq 0xe5e0
testl %eax, %eax
je 0x110c5
movq %r15, %rdi
leaq 0x8943e(%rip), %rsi     # 0x9a063
callq 0xe5e0
testl %eax, %eax
je 0x110d1
movq %r15, %rdi
leaq 0x8942d(%rip), %rsi     # 0x9a069
callq 0xe5e0
testl %eax, %eax
je 0x110dd
movq %r15, %rdi
leaq 0x8941d(%rip), %rsi     # 0x9a070
callq 0xe5e0
testl %eax, %eax
je 0x110e9
movq %r15, %rdi
leaq 0x89412(%rip), %rsi     # 0x9a07c
callq 0xe5e0
testl %eax, %eax
je 0x110f5
movq %r15, %rdi
leaq 0x89412(%rip), %rsi     # 0x9a093
callq 0xe5e0
testl %eax, %eax
je 0x11101
movq %r15, %rdi
leaq 0x89407(%rip), %rsi     # 0x9a09f
callq 0xe5e0
testl %eax, %eax
je 0x1110d
movq %r15, %rdi
leaq 0x893ff(%rip), %rsi     # 0x9a0ae
callq 0xe5e0
testl %eax, %eax
je 0x11125
movq %r15, %rdi
leaq 0x893f6(%rip), %rsi     # 0x9a0bc
callq 0xe5e0
testl %eax, %eax
je 0x11119
movq %r15, %rdi
leaq 0x893f6(%rip), %rsi     # 0x9a0d3
callq 0xe5e0
testl %eax, %eax
je 0x11119
movq %r15, %rdi
leaq 0x893f1(%rip), %rsi     # 0x9a0e5
callq 0xe5e0
testl %eax, %eax
je 0x11157
movq %r15, %rdi
leaq 0x893e9(%rip), %rsi     # 0x9a0f4
callq 0xe5e0
testl %eax, %eax
je 0x11163
movq %r15, %rdi
leaq 0x893e0(%rip), %rsi     # 0x9a102
callq 0xe5e0
testl %eax, %eax
je 0x1116f
movq %r15, %rdi
leaq 0x893d6(%rip), %rsi     # 0x9a10f
callq 0xe5e0
testl %eax, %eax
je 0x1117b
movq %r15, %rdi
leaq 0x893d0(%rip), %rsi     # 0x9a120
callq 0xe5e0
testl %eax, %eax
je 0x11187
movq %r15, %rdi
leaq 0x893c8(%rip), %rsi     # 0x9a12f
callq 0xe5e0
testl %eax, %eax
je 0x11193
movq %r15, %rdi
leaq 0x893c1(%rip), %rsi     # 0x9a13f
callq 0xe5e0
testl %eax, %eax
je 0x1119f
movq %r15, %rdi
leaq 0x893b2(%rip), %rsi     # 0x9a147
callq 0xe5e0
testl %eax, %eax
je 0x111bd
movq %r15, %rdi
leaq 0x893a2(%rip), %rsi     # 0x9a14e
callq 0xe5e0
testl %eax, %eax
je 0x11209
movq %r15, %rdi
leaq 0x8938f(%rip), %rsi     # 0x9a152
callq 0xe5e0
testl %eax, %eax
je 0x11255
movq %r15, %rdi
leaq 0x8937c(%rip), %rsi     # 0x9a156
callq 0xe5e0
testl %eax, %eax
je 0x112a1
movq %r15, %rdi
leaq 0x89369(%rip), %rsi     # 0x9a15a
callq 0xe5e0
testl %eax, %eax
je 0x112ed
movq %r15, %rdi
leaq 0x89356(%rip), %rsi     # 0x9a15e
callq 0xe5e0
testl %eax, %eax
je 0x11339
movq %r15, %rdi
leaq 0x89343(%rip), %rsi     # 0x9a162
callq 0xe5e0
testl %eax, %eax
je 0x11385
movq %r15, %rdi
leaq 0x89330(%rip), %rsi     # 0x9a166
callq 0xe5e0
testl %eax, %eax
je 0x113d1
movq %r15, %rdi
leaq 0x8931d(%rip), %rsi     # 0x9a16a
callq 0xe5e0
testl %eax, %eax
je 0x1142a
movq %r15, %rdi
leaq 0x8930a(%rip), %rsi     # 0x9a16e
callq 0xe5e0
testl %eax, %eax
je 0x11483
movq %r15, %rdi
leaq 0x892f7(%rip), %rsi     # 0x9a172
callq 0xe5e0
testl %eax, %eax
je 0x114d9
movq %r15, %rdi
leaq 0x892e7(%rip), %rsi     # 0x9a179
callq 0xe5e0
testl %eax, %eax
je 0x11561
movq %r15, %rdi
leaq 0x892e1(%rip), %rsi     # 0x9a18a
callq 0xe5e0
testl %eax, %eax
je 0x1157c
movq %r15, %rdi
leaq 0x892db(%rip), %rsi     # 0x9a19b
callq 0xe5e0
testl %eax, %eax
je 0x11597
movq %r15, %rdi
leaq 0x892dd(%rip), %rsi     # 0x9a1b4
callq 0xe5e0
testl %eax, %eax
je 0x115b2
movq %r15, %rdi
leaq 0x892d3(%rip), %rsi     # 0x9a1c1
callq 0xe5e0
testl %eax, %eax
je 0x115c7
movq %r15, %rdi
leaq 0x892c8(%rip), %rsi     # 0x9a1cd
callq 0xe5e0
testl %eax, %eax
je 0x115df
movq %r15, %rdi
leaq 0x892bf(%rip), %rsi     # 0x9a1db
callq 0xe5e0
testl %eax, %eax
jne 0x11668
leaq 0x8(%rsp), %rdi
callq 0x3d30c
movq 0x10(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x8(%rsp)
movq 0x18(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x10(%rsp)
movq 0x20(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x18(%rsp)
movq 0x28(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x20(%rsp)
movq 0x30(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x28(%rsp)
movq 0x38(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x30(%rsp)
movq 0x40(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x38(%rsp)
movq 0x48(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x40(%rsp)
movq 0x50(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x48(%rsp)
movq 0x58(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x50(%rsp)
movq 0x60(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x58(%rsp)
movq 0x68(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x60(%rsp)
movq 0x70(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x68(%rsp)
movq 0x78(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x70(%rsp)
movq 0x80(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x78(%rsp)
movq 0x88(%rbp), %rdi
callq 0xe550
movsd %xmm0, 0x80(%rsp)
leaq 0xc6bdd(%rip), %rdi     # 0xd7c10
leaq 0xc7296(%rip), %rsi     # 0xd82d0
callq 0x12d0e
leaq 0x198(%rsp), %rdi
leaq 0x8(%rsp), %rsi
xorl %edx, %edx
callq 0x3af82
leaq 0xc6bb6(%rip), %rdi     # 0xd7c10
leaq 0x198(%rsp), %rsi
callq 0x3b13e
leaq 0x198(%rsp), %rdi
callq 0x3afd0
leaq 0xc6b95(%rip), %rdi     # 0xd7c10
leaq 0x88(%rsp), %rsi
callq 0x3b13e
addq $0x88, %rbp
addl $-0x11, %r14d
jmp 0x11559
cmpq $0x0, 0xc6b18(%rip)     # 0xd7bb8
je 0x110bc
cmpq $0x0, 0xc6b16(%rip)     # 0xd7bc0
jne 0x1163d
movq %rsi, 0xc6b09(%rip)     # 0xd7bc0
jmp 0x11142
movq %rsi, 0xc6af5(%rip)     # 0xd7bb8
jmp 0x11142
movl $0x1, 0xc6c85(%rip)     # 0xd7d54
jmp 0x1112f
movl $0x1, 0xc6b15(%rip)     # 0xd7bf0
jmp 0x1112f
movl $0x1, 0xc6b0d(%rip)     # 0xd7bf4
jmp 0x1112f
movl $0x1, 0xc6b09(%rip)     # 0xd7bfc
jmp 0x1112f
movl $0x1, 0xc6b01(%rip)     # 0xd7c00
jmp 0x1112f
movl $0x1, 0xc6aed(%rip)     # 0xd7bf8
jmp 0x1112f
movl $0x1, 0xc6c29(%rip)     # 0xd7d40
jmp 0x1112f
movl $0x1, 0xc6c2d(%rip)     # 0xd7d50
jmp 0x1112f
movl $0x1, 0xc6c15(%rip)     # 0xd7d44
movq %rbx, %rbp
leaq 0x88(%rsp), %rdi
callq 0x3afd0
movq %rbp, %rbx
movq %rbx, %rbp
movl %r13d, %r14d
cmpl $0x1, %r13d
jg 0x10bad
jmp 0x115f7
movl $0x1, 0xc6be7(%rip)     # 0xd7d48
jmp 0x1112f
movl $0x1, 0xc6bdf(%rip)     # 0xd7d4c
jmp 0x1112f
movl $0x1, 0xc6a67(%rip)     # 0xd7be0
jmp 0x1112f
movl $0x1, 0xc6a5f(%rip)     # 0xd7be4
jmp 0x1112f
movl $0x1, 0xc6a57(%rip)     # 0xd7be8
jmp 0x1112f
movl $0x1, 0xc6a4f(%rip)     # 0xd7bec
jmp 0x1112f
addl $-0x2, %r14d
movq 0x10(%rbp), %rdi
addq $0x10, %rbp
callq 0xe550
movsd %xmm0, 0xc6a50(%rip)    # 0xd7c08
jmp 0x11559
leaq 0xc6a4c(%rip), %rdi     # 0xd7c10
leaq 0xc7105(%rip), %rsi     # 0xd82d0
callq 0x12d0e
addq $0x10, %rbp
movq (%rbp), %rdi
callq 0xe550
leaq 0xc6a34(%rip), %rdi     # 0xd7c18
callq 0x3e5f6
andb $-0x3, 0xc6b28(%rip)    # 0xd7d18
leaq 0xc6a19(%rip), %rdi     # 0xd7c10
leaq 0x88(%rsp), %rsi
callq 0x3b13e
jmp 0x11555
leaq 0xc6a00(%rip), %rdi     # 0xd7c10
leaq 0xc70b9(%rip), %rsi     # 0xd82d0
callq 0x12d0e
addq $0x10, %rbp
movq (%rbp), %rdi
callq 0xe550
leaq 0xc69e8(%rip), %rdi     # 0xd7c18
callq 0x3e272
andb $-0x3, 0xc6adc(%rip)    # 0xd7d18
leaq 0xc69cd(%rip), %rdi     # 0xd7c10
leaq 0x88(%rsp), %rsi
callq 0x3b13e
jmp 0x11555
leaq 0xc69b4(%rip), %rdi     # 0xd7c10
leaq 0xc706d(%rip), %rsi     # 0xd82d0
callq 0x12d0e
addq $0x10, %rbp
movq (%rbp), %rdi
callq 0xe550
leaq 0xc699c(%rip), %rdi     # 0xd7c18
callq 0x3e2a8
andb $-0x3, 0xc6a90(%rip)    # 0xd7d18
leaq 0xc6981(%rip), %rdi     # 0xd7c10
leaq 0x88(%rsp), %rsi
callq 0x3b13e
jmp 0x11555
leaq 0xc6968(%rip), %rdi     # 0xd7c10
leaq 0xc7021(%rip), %rsi     # 0xd82d0
callq 0x12d0e
addq $0x10, %rbp
movq (%rbp), %rdi
callq 0xe550
leaq 0xc6950(%rip), %rdi     # 0xd7c18
callq 0x3e2de
andb $-0x3, 0xc6a44(%rip)    # 0xd7d18
leaq 0xc6935(%rip), %rdi     # 0xd7c10
leaq 0x88(%rsp), %rsi
callq 0x3b13e
jmp 0x11555
leaq 0xc691c(%rip), %rdi     # 0xd7c10
leaq 0xc6fd5(%rip), %rsi     # 0xd82d0
callq 0x12d0e
addq $0x10, %rbp
movq (%rbp), %rdi
callq 0xe550
leaq 0xc6904(%rip), %rdi     # 0xd7c18
callq 0x3e4f0
andb $-0x3, 0xc69f8(%rip)    # 0xd7d18
leaq 0xc68e9(%rip), %rdi     # 0xd7c10
leaq 0x88(%rsp), %rsi
callq 0x3b13e
jmp 0x11555
leaq 0xc68d0(%rip), %rdi     # 0xd7c10
leaq 0xc6f89(%rip), %rsi     # 0xd82d0
callq 0x12d0e
addq $0x10, %rbp
movq (%rbp), %rdi
callq 0xe550
leaq 0xc68b8(%rip), %rdi     # 0xd7c18
callq 0x3e516
andb $-0x3, 0xc69ac(%rip)    # 0xd7d18
leaq 0xc689d(%rip), %rdi     # 0xd7c10
leaq 0x88(%rsp), %rsi
callq 0x3b13e
jmp 0x11555
leaq 0xc6884(%rip), %rdi     # 0xd7c10
leaq 0xc6f3d(%rip), %rsi     # 0xd82d0
callq 0x12d0e
addq $0x10, %rbp
movq (%rbp), %rdi
callq 0xe550
leaq 0xc686c(%rip), %rdi     # 0xd7c18
callq 0x3e53e
andb $-0x3, 0xc6960(%rip)    # 0xd7d18
leaq 0xc6851(%rip), %rdi     # 0xd7c10
leaq 0x88(%rsp), %rsi
callq 0x3b13e
jmp 0x11555
leaq 0xc6838(%rip), %rdi     # 0xd7c10
leaq 0xc6ef1(%rip), %rsi     # 0xd82d0
callq 0x12d0e
addq $0x10, %rbp
movq (%rbp), %rdi
callq 0xe550
mulsd (%rsp), %xmm0
divsd 0x88c0a(%rip), %xmm0    # 0x9a008
leaq 0xc6813(%rip), %rdi     # 0xd7c18
callq 0x3e6ce
andb $-0x3, 0xc6907(%rip)    # 0xd7d18
leaq 0xc67f8(%rip), %rdi     # 0xd7c10
leaq 0x88(%rsp), %rsi
callq 0x3b13e
jmp 0x11555
leaq 0xc67df(%rip), %rdi     # 0xd7c10
leaq 0xc6e98(%rip), %rsi     # 0xd82d0
callq 0x12d0e
addq $0x10, %rbp
movq (%rbp), %rdi
callq 0xe550
mulsd (%rsp), %xmm0
divsd 0x88bb1(%rip), %xmm0    # 0x9a008
leaq 0xc67ba(%rip), %rdi     # 0xd7c18
callq 0x3e7aa
andb $-0x3, 0xc68ae(%rip)    # 0xd7d18
leaq 0xc679f(%rip), %rdi     # 0xd7c10
leaq 0x88(%rsp), %rsi
callq 0x3b13e
jmp 0x11555
leaq 0xc6786(%rip), %rdi     # 0xd7c10
leaq 0xc6e3f(%rip), %rsi     # 0xd82d0
callq 0x12d0e
addq $0x10, %rbp
movq (%rbp), %rdi
callq 0xe550
mulsd (%rsp), %xmm0
divsd 0x88b58(%rip), %xmm0    # 0x9a008
leaq 0xc6761(%rip), %rdi     # 0xd7c18
callq 0x3e88c
andb $-0x3, 0xc6855(%rip)    # 0xd7d18
leaq 0xc6746(%rip), %rdi     # 0xd7c10
leaq 0x88(%rsp), %rsi
callq 0x3b13e
jmp 0x11555
leaq 0x8(%rsp), %rdi
callq 0x3d30c
addq $0x10, %rbp
movq (%rbp), %rsi
leaq 0x8(%rsp), %rdi
callq 0x116c3
testl %eax, %eax
je 0x11555
leaq 0xc6710(%rip), %rdi     # 0xd7c10
leaq 0xc6dc9(%rip), %rsi     # 0xd82d0
callq 0x12d0e
leaq 0x198(%rsp), %rdi
leaq 0x8(%rsp), %rsi
xorl %edx, %edx
callq 0x3af82
leaq 0xc66e9(%rip), %rdi     # 0xd7c10
leaq 0x198(%rsp), %rsi
callq 0x3b13e
leaq 0x198(%rsp), %rdi
callq 0x3afd0
leaq 0xc66c8(%rip), %rdi     # 0xd7c10
leaq 0x88(%rsp), %rsi
callq 0x3b13e
addl $-0x2, %r14d
movl %r14d, %r13d
jmp 0x11132
addl $-0x2, %r14d
movq 0x10(%rbp), %rdi
addq $0x10, %rbp
callq 0xe550
movsd %xmm0, 0xc67a6(%rip)    # 0xd7d20
jmp 0x11559
addl $-0x2, %r14d
movq 0x10(%rbp), %rdi
addq $0x10, %rbp
callq 0xe550
movsd %xmm0, 0xc6793(%rip)    # 0xd7d28
jmp 0x11559
addl $-0x2, %r14d
movq 0x10(%rbp), %rdi
addq $0x10, %rbp
callq 0xe550
movsd %xmm0, 0xc6780(%rip)    # 0xd7d30
jmp 0x11559
addl $-0x2, %r14d
movq 0x10(%rbp), %rax
addq $0x10, %rbp
movq %rax, 0xc660b(%rip)     # 0xd7bd0
jmp 0x11559
addl $-0x2, %r14d
movq 0x10(%rbp), %rax
addq $0x10, %rbp
movq %rax, 0xc65fe(%rip)     # 0xd7bd8
jmp 0x11559
addl $-0x2, %r14d
movq 0x10(%rbp), %rax
addq $0x10, %rbp
movq %rax, 0xc65d6(%rip)     # 0xd7bc8
jmp 0x11559
cmpq $0x0, 0xc65b9(%rip)     # 0xd7bb8
je 0x11619
movl $0x1, %ebx
cmpq $0x0, 0xc65b2(%rip)     # 0xd7bc0
jne 0x11629
leaq 0x88c15(%rip), %rdi     # 0x9a22c
jmp 0x11620
leaq 0x88be3(%rip), %rdi     # 0x9a203
xorl %ebx, %ebx
xorl %eax, %eax
callq 0x6aa3a
movl %ebx, %eax
addq $0x2a8, %rsp            # imm = 0x2A8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x88ba2(%rip), %rdi     # 0x9a1e6
xorl %eax, %eax
callq 0x6aa3a
movl $0x1, %edi
callq 0xe530
leaq 0x88d0e(%rip), %rdi     # 0x9a36a
callq 0xe690
xorl %edi, %edi
callq 0xe530
leaq 0x88b77(%rip), %rdi     # 0x9a1e6
movq %r15, %rsi
xorl %eax, %eax
callq 0x6aa3a
jmp 0x1164b
jmp 0x11699
jmp 0x11699
jmp 0x11685
jmp 0x11699
jmp 0x11699
movq %rax, %rbx
leaq 0x198(%rsp), %rdi
callq 0x3afd0
jmp 0x1169c
jmp 0x11699
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
callq 0x3afd0
jmp 0x116bb
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
callq 0x3b658
movq %rbx, %rdi
callq 0xe780