// File: /workspace/github_cpp_makefile_star2_O2/tomfunkhouser[P]gaps/apps/msh2df/msh2df.cpp
// Function: main
int 
main(int argc, char **argv)
{
  // Parse program arguments
  if (!ParseArgs(argc, argv)) exit(-1);

  // Read mesh file
  R3Mesh *mesh = ReadMesh(input_mesh_filename);
  if (!mesh) exit(-1);

  // Update program arguments based on mesh properties
  if (grid_bbox.IsEmpty()) grid_bbox = mesh->BBox();
  if (IsManifold(mesh)) input_is_manifold = TRUE;
  if (input_is_manifold) sign_estimation_method = 1;

  // Initialize grid with appropriate dimensions
  R3Grid grid(grid_bbox, target_grid_spacing, 5, grid_max_resolution, grid_border);

  // Estimate distance
  if (!EstimateDistanceUsingGrid(&grid, mesh)) return 0;

  // Refine distance
  if (refinement_radius > 0) {
    if (!RefineDistanceUsingKdtree(&grid, mesh, refinement_radius)) return 0;
  }

  // Estimate sign
  if (estimate_sign) {
    if (!EstimateSign(&grid, mesh)) exit(-1);
  }
  
  // Update signed distance
  RNBoolean update_distances = (estimate_sign && !input_is_manifold) ? TRUE : FALSE;
  if (update_distances) {
    if (!UpdateSignedDistanceUsingGrid(&grid, mesh)) return 0;
  }

  // Create point samples
  RNArray<Point *> points;
  if (output_points_filename || update_distances) {
    if (!CreatePoints(&grid, mesh, points)) return 0;
  }

  // Write point sample file
  if (output_points_filename && !points.IsEmpty()) {
    if (!WritePoints(points, output_points_filename)) return 0;
  }
  
  // Refine signed distance
  if (update_distances && !points.IsEmpty() && (refinement_radius > 0)) {
    if (!RefineSignedDistanceUsingKdtree(&grid, points, refinement_radius)) return 0;
  }

  // Delete point samples
  if (!points.IsEmpty()) {
    if (!DeletePoints(points)) return 0;
  }

  // Truncate distance
  if (refinement_radius > 0) {
    if (!SmoothDistanceAtRefinementBoundary(&grid, refinement_radius)) exit(-1);
  }

  // Truncate distance
  if (!TruncateDistance(&grid, truncation_distance)) exit(-1);

  // Write grid
  if (output_grid_filename) {
    if (!WriteGrid(&grid, output_grid_filename)) exit(-1);
  }

  // Write mesh file
  if (output_mesh_filename) {
    // Create isosurface
    R3Mesh *isosurface = ExtractIsosurface(&grid);
    if (!isosurface) exit(-1);

    // Write mesh
    if (!WriteMesh(isosurface, output_mesh_filename)) exit(-1);

    // Delete mesh
    delete isosurface;
  }

  // Return success
  return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x6e8, %rsp            # imm = 0x6E8
movq %rsi, %rbx
movl %edi, %ebp
movq 0xd380f(%rip), %r12     # 0xe3c98
movq 0xd3828(%rip), %rax     # 0xe3cb8
movq %rax, (%rsp)
cmpl $0x2, %ebp
jl 0x10847
movq %rbx, %r13
movl %ebp, %r15d
addq $0x8, %rbx
leal -0x1(%r15), %ebp
movq (%rbx), %r14
cmpb $0x2d, (%r14)
jne 0x106ad
cmpb $0x76, 0x1(%r14)
jne 0x104ca
cmpb $0x0, 0x2(%r14)
je 0x106f4
movq %r14, %rdi
leaq 0x89bec(%rip), %rsi     # 0x9a0c0
callq 0xe670
testl %eax, %eax
je 0x106dc
movq %r14, %rdi
leaq 0x89bdc(%rip), %rsi     # 0x9a0c7
callq 0xe670
testl %eax, %eax
je 0x106e8
movq %r14, %rdi
leaq 0x89bd4(%rip), %rsi     # 0x9a0d6
callq 0xe670
testl %eax, %eax
je 0x10700
movq %r14, %rdi
leaq 0x89bda(%rip), %rsi     # 0x9a0f3
callq 0xe670
testl %eax, %eax
je 0x10713
movq %r14, %rdi
leaq 0x89be3(%rip), %rsi     # 0x9a113
callq 0xe670
testl %eax, %eax
je 0x10729
movq %r14, %rdi
leaq 0x89be4(%rip), %rsi     # 0x9a12b
callq 0xe670
testl %eax, %eax
je 0x10745
movq %r14, %rdi
leaq 0x89be2(%rip), %rsi     # 0x9a140
callq 0xe670
testl %eax, %eax
je 0x10763
movq %r14, %rdi
leaq 0x89bd4(%rip), %rsi     # 0x9a149
callq 0xe670
testl %eax, %eax
je 0x1077e
movq %r14, %rdi
leaq 0x89bc5(%rip), %rsi     # 0x9a151
callq 0xe670
testl %eax, %eax
je 0x10799
movq %r14, %rdi
leaq 0x89bbe(%rip), %rsi     # 0x9a161
callq 0xe670
testl %eax, %eax
je 0x107b2
movq %r14, %rdi
leaq 0x89bba(%rip), %rsi     # 0x9a174
callq 0xe670
testl %eax, %eax
je 0x107cb
movq %r14, %rdi
leaq 0x89bb0(%rip), %rsi     # 0x9a181
callq 0xe670
testl %eax, %eax
je 0x107e0
movq %r14, %rdi
leaq 0x89ba8(%rip), %rsi     # 0x9a190
callq 0xe670
testl %eax, %eax
je 0x107fe
movq %r14, %rdi
leaq 0x89ba4(%rip), %rsi     # 0x9a1a3
callq 0xe670
testl %eax, %eax
je 0x10494
movq %r14, %rdi
leaq 0x89ba2(%rip), %rsi     # 0x9a1b8
callq 0xe670
testl %eax, %eax
je 0x1080a
movq %r14, %rdi
leaq 0x89b9b(%rip), %rsi     # 0x9a1c8
callq 0xe670
testl %eax, %eax
jne 0x132bc
movq 0x10(%r13), %rdi
callq 0xe5a0
movsd %xmm0, 0xd3605(%rip)    # 0xe3c50
movq 0x18(%r13), %rdi
callq 0xe5a0
movsd %xmm0, 0xd35fc(%rip)    # 0xe3c58
movq 0x20(%r13), %rdi
callq 0xe5a0
movsd %xmm0, 0xd35f3(%rip)    # 0xe3c60
movq 0x28(%r13), %rdi
callq 0xe5a0
movsd %xmm0, 0xd35ea(%rip)    # 0xe3c68
movq 0x30(%r13), %rdi
callq 0xe5a0
movsd %xmm0, 0xd35e1(%rip)    # 0xe3c70
addl $-0x7, %r15d
movq 0x38(%r13), %rdi
addq $0x38, %r13
callq 0xe5a0
movsd %xmm0, 0xd35d0(%rip)    # 0xe3c78
jmp 0x107f3
testq %r12, %r12
je 0x106cd
cmpq $0x0, (%rsp)
jne 0x132bc
movq %r14, 0xd35f4(%rip)     # 0xe3cb8
movq %r14, (%rsp)
jmp 0x10494
movq %r14, 0xd35c4(%rip)     # 0xe3c98
movq %r14, %r12
jmp 0x10494
movb $0x1, 0xd35e9(%rip)     # 0xe3ccc
jmp 0x10494
movb $0x1, 0xd35b5(%rip)     # 0xe3ca4
jmp 0x10494
movb $0x1, 0xd35cd(%rip)     # 0xe3cc8
jmp 0x10494
movb $0x1, 0xd359d(%rip)     # 0xe3ca4
andl $0x0, 0xd2da2(%rip)     # 0xe34b0
jmp 0x10494
movb $0x1, 0xd358a(%rip)     # 0xe3ca4
movl $0x1, 0xd2d8c(%rip)     # 0xe34b0
jmp 0x10494
addl $-0x2, %r15d
movq 0x10(%r13), %rdi
addq $0x10, %r13
callq 0xe740
movl %eax, 0xd2d70(%rip)     # 0xe34b0
jmp 0x107f3
addl $-0x2, %r15d
movq 0x10(%r13), %rdi
addq $0x10, %r13
callq 0xe5a0
movsd %xmm0, 0xd3552(%rip)    # 0xe3cb0
jmp 0x107f3
addl $-0x2, %r15d
movq 0x10(%r13), %rdi
addq $0x10, %r13
callq 0xe5a0
movsd %xmm0, 0xd2d3c(%rip)    # 0xe34b8
jmp 0x107f3
addl $-0x2, %r15d
movq 0x10(%r13), %rdi
addq $0x10, %r13
callq 0xe5a0
movsd %xmm0, 0xd2d31(%rip)    # 0xe34c8
jmp 0x107f3
addl $-0x2, %r15d
movq 0x10(%r13), %rdi
addq $0x10, %r13
callq 0xe740
movl %eax, 0xd2d10(%rip)     # 0xe34c0
jmp 0x107f3
addl $-0x2, %r15d
movq 0x10(%r13), %rdi
addq $0x10, %r13
callq 0xe740
movl %eax, 0xd2d07(%rip)     # 0xe34d0
jmp 0x107f3
addl $-0x2, %r15d
movq 0x10(%r13), %rax
addq $0x10, %r13
movq %rax, 0xd34e2(%rip)     # 0xe3cc0
jmp 0x107f3
addl $-0x2, %r15d
movq 0x10(%r13), %rax
addq $0x10, %r13
movq %rax, 0xd34b5(%rip)     # 0xe3ca8
movl %r15d, %ebp
movq %r13, %rbx
jmp 0x10494
movb $0x1, 0xd349b(%rip)     # 0xe3ca0
jmp 0x10494
movq 0x10(%r13), %rdi
callq 0xe5a0
movsd %xmm0, 0xd3465(%rip)    # 0xe3c80
movq 0x18(%r13), %rdi
callq 0xe5a0
movsd %xmm0, 0xd345c(%rip)    # 0xe3c88
addl $-0x4, %r15d
movq 0x20(%r13), %rdi
addq $0x20, %r13
callq 0xe5a0
movsd %xmm0, 0xd344b(%rip)    # 0xe3c90
jmp 0x107f3
testq %r12, %r12
je 0x132d5
cmpq $0x0, (%rsp)
je 0x132d5
cmpb $0x1, 0xd3442(%rip)     # 0xe3ca4
jne 0x10880
cmpl $0x1, 0xd2c45(%rip)     # 0xe34b0
jne 0x10880
cmpl $0x2, 0xd2c5c(%rip)     # 0xe34d0
jg 0x10880
movl $0x3, 0xd2c50(%rip)     # 0xe34d0
leaq 0x460(%rsp), %rbx
movq %rbx, %rdi
callq 0x6c9a6
movq %rbx, %rdi
callq 0x135be
movl $0x138, %edi            # imm = 0x138
callq 0xe450
movq %rax, %r15
movq %rax, %rdi
callq 0x20a30
movq (%r15), %rax
movq %r15, %rdi
movq %r12, %rsi
callq *0x180(%rax)
testl %eax, %eax
je 0x132e5
cmpb $0x1, 0xd33fd(%rip)     # 0xe3cc8
jne 0x10939
leaq 0x89b93(%rip), %rdi     # 0x9a467
callq 0xe730
leaq 0x460(%rsp), %rdi
callq 0x6c9e0
leaq 0x89934(%rip), %rdi     # 0x9a221
movb $0x1, %al
callq 0xe070
movl 0x34(%r15), %esi
leaq 0x89939(%rip), %rdi     # 0x9a238
xorl %eax, %eax
callq 0xe070
movl 0x24(%r15), %esi
leaq 0x89937(%rip), %rdi     # 0x9a248
xorl %eax, %eax
callq 0xe070
movl 0x14(%r15), %esi
leaq 0x89935(%rip), %rdi     # 0x9a258
xorl %eax, %eax
callq 0xe070
movq 0xd264f(%rip), %rax     # 0xe2f80
movq (%rax), %rdi
callq 0xe540
leaq 0xd3308(%rip), %rdi     # 0xe3c48
callq 0x13560
testl %eax, %eax
je 0x1095c
leaq 0xf8(%r15), %rsi
leaq 0xd32f1(%rip), %rdi     # 0xe3c48
callq 0x1358c
movq %r15, %rdi
callq 0x13521
testl %eax, %eax
je 0x10971
movb $0x1, 0xd3331(%rip)     # 0xe3ca0
jmp 0x1097a
cmpb $0x1, 0xd3328(%rip)     # 0xe3ca0
jne 0x10984
movl $0x1, 0xd2b2c(%rip)     # 0xe34b0
movsd 0xd2b2c(%rip), %xmm0    # 0xe34b8
movl 0xd2b2e(%rip), %ecx     # 0xe34c0
cvttsd2si 0xd2b2d(%rip), %r8d # 0xe34c8
leaq 0xd32a6(%rip), %rsi     # 0xe3c48
leaq 0x200(%rsp), %rdi
pushq $0x5
popq %rdx
callq 0x3c80e
leaq 0x460(%rsp), %rdi
callq 0x6c9a6
leaq 0x460(%rsp), %rdi
callq 0x135be
leaq 0x200(%rsp), %rdi
xorpd %xmm0, %xmm0
callq 0x3f9c0
xorl %ebx, %ebx
leaq 0x200(%rsp), %r14
pushq $0x2
popq %rbp
movslq 0x34(%r15), %rax
cmpq %rax, %rbx
jge 0x10a27
movq 0x28(%r15), %rax
movq (%rax,%rbx,8), %rax
movq 0x8(%rax), %rsi
movq 0x10(%rax), %rdx
addq $0x18, %rsi
addq $0x18, %rdx
movq 0x18(%rax), %rcx
addq $0x18, %rcx
incq %rbx
cvtsi2sd %ebx, %xmm0
movq %r14, %rdi
movl %ebp, %r8d
callq 0x135c6
jmp 0x109ea
leaq 0x200(%rsp), %rdi
callq 0x3de9c
movq %r15, %rbp
leaq 0x200(%rsp), %rdi
callq 0x3dc30
leaq 0x200(%rsp), %rdi
movsd 0x228(%rdi), %xmm0
callq 0x3fd60
cmpb $0x0, 0xd3268(%rip)     # 0xe3cc8
je 0x10b86
leaq 0x89a08(%rip), %rdi     # 0x9a475
callq 0xe730
leaq 0x460(%rsp), %rdi
callq 0x6c9e0
leaq 0x8979b(%rip), %rdi     # 0x9a221
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rbx
movl 0x238(%rbx), %esi
movl 0x23c(%rbx), %edx
movl 0x240(%rbx), %ecx
leaq 0x897bd(%rip), %rdi     # 0x9a26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%rbx), %xmm0
leaq 0x897c0(%rip), %rdi     # 0x9a284
movb $0x1, %al
callq 0xe070
movq %rbx, %rdi
callq 0x3cee6
leaq 0x897ba(%rip), %rdi     # 0x9a294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13648
leaq 0x897b1(%rip), %rdi     # 0x9a2a8
movb $0x1, %al
callq 0xe070
leaq 0xe8(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x3ce36
movsd 0xe8(%rsp), %xmm0
leaq 0x89794(%rip), %rdi     # 0x9a2b7
movb $0x1, %al
callq 0xe070
movsd 0xf0(%rsp), %xmm0
leaq 0x8978d(%rip), %rdi     # 0x9a2c7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x3ce8e
leaq 0x89782(%rip), %rdi     # 0x9a2d7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13672
leaq 0x89776(%rip), %rdi     # 0x9a2e6
movb $0x1, %al
callq 0xe070
movq 0xd2402(%rip), %rax     # 0xe2f80
movq (%rax), %rdi
callq 0xe540
movl 0xd2943(%rip), %r14d    # 0xe34d0
testl %r14d, %r14d
movq %rbp, 0x28(%rsp)
jle 0x10f1d
leaq 0x68(%rsp), %rdi
callq 0x6c9a6
leaq 0x68(%rsp), %rdi
callq 0x135be
leaq 0xe8(%rsp), %rdi
movq %rbp, %rsi
callq 0x14924
movsd 0x428(%rsp), %xmm0
movsd %xmm0, 0x30(%rsp)
addq $0xf8, %rbp
movq %rbp, %rdi
callq 0x362b8
movapd %xmm0, %xmm1
cvtsi2sd %r14d, %xmm0
mulsd 0x30(%rsp), %xmm0
ucomisd %xmm1, %xmm0
jbe 0x10bfa
movq %rbp, %rdi
callq 0x362b8
movl %r14d, 0x90(%rsp)
movsd 0xd30a6(%rip), %xmm1    # 0xe3cb0
minsd %xmm0, %xmm1
movsd %xmm1, 0x40(%rsp)
xorl %eax, %eax
leaq 0x480(%rsp), %r14
leaq 0x120(%rsp), %r15
leaq 0xe8(%rsp), %r13
leaq 0x460(%rsp), %rbp
cmpl 0x440(%rsp), %eax
jge 0x10db4
movq %rax, 0x18(%rsp)
cvtsi2sd %eax, %xmm0
movsd %xmm0, 0x20(%rsp)
xorl %r12d, %r12d
cmpl 0x43c(%rsp), %r12d
jge 0x10da8
cvtsi2sd %r12d, %xmm0
movsd %xmm0, 0x58(%rsp)
xorl %ebx, %ebx
cmpl 0x438(%rsp), %ebx
jge 0x10da0
cvtsi2sd %ebx, %xmm0
movq %r15, %rdi
leaq 0x200(%rsp), %rsi
movsd 0x58(%rsp), %xmm1
movsd 0x20(%rsp), %xmm2
callq 0x42b5a
movq 0x430(%rsp), %rax
movl 0x448(%rsp), %ecx
imull 0x18(%rsp), %ecx
movl 0x444(%rsp), %edx
imull %r12d, %edx
addl %ebx, %ecx
addl %edx, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movapd %xmm0, 0x80(%rsp)
movapd %xmm0, %xmm1
andpd 0x893c3(%rip), %xmm1    # 0x9a0a0
ucomisd 0x40(%rsp), %xmm1
ja 0x10d99
maxsd 0x30(%rsp), %xmm1
movsd 0x40(%rsp), %xmm0
ucomisd %xmm1, %xmm0
jbe 0x10d99
mulsd 0x89349(%rip), %xmm1    # 0x9a050
movapd %xmm1, (%rsp)
movq %r14, %rdi
callq 0x48bde
xorpd %xmm0, %xmm0
movq %r13, %rdi
movq %r15, %rsi
movq %rbp, %rdx
movapd (%rsp), %xmm1
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x16112
movapd (%rsp), %xmm1
cmpl $0x0, 0x460(%rsp)
je 0x10cef
movsd 0x498(%rsp), %xmm0
xorpd %xmm1, %xmm1
cmplesd 0x80(%rsp), %xmm1
movapd %xmm1, %xmm2
andpd %xmm0, %xmm2
xorpd 0x8930a(%rip), %xmm0    # 0x9a070
andnpd %xmm0, %xmm1
orpd %xmm2, %xmm1
movq 0x430(%rsp), %rax
movl 0x448(%rsp), %ecx
imull 0x18(%rsp), %ecx
movl 0x444(%rsp), %edx
imull %r12d, %edx
addl %ebx, %ecx
addl %edx, %ecx
movslq %ecx, %rcx
movlpd %xmm1, (%rax,%rcx,8)
incl %ebx
jmp 0x10c70
incl %r12d
jmp 0x10c55
movq 0x18(%rsp), %rax
incl %eax
jmp 0x10c36
cmpb $0x0, 0xd2f0d(%rip)     # 0xe3cc8
movq 0x28(%rsp), %rbp
je 0x10f10
leaq 0x896ca(%rip), %rdi     # 0x9a497
callq 0xe730
leaq 0x68(%rsp), %rdi
callq 0x6c9e0
movl 0x90(%rsp), %r14d
leaq 0x89436(%rip), %rdi     # 0x9a221
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rbx
movl 0x238(%rbx), %esi
movl 0x23c(%rbx), %edx
movl 0x240(%rbx), %ecx
leaq 0x89458(%rip), %rdi     # 0x9a26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%rbx), %xmm0
leaq 0x8945b(%rip), %rdi     # 0x9a284
movb $0x1, %al
callq 0xe070
movq %rbx, %rdi
callq 0x3cee6
leaq 0x89455(%rip), %rdi     # 0x9a294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13648
leaq 0x8944c(%rip), %rdi     # 0x9a2a8
movb $0x1, %al
callq 0xe070
leaq 0x460(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x3ce36
movsd 0x460(%rsp), %xmm0
leaq 0x8942f(%rip), %rdi     # 0x9a2b7
movb $0x1, %al
callq 0xe070
movsd 0x468(%rsp), %xmm0
leaq 0x89428(%rip), %rdi     # 0x9a2c7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x3ce8e
leaq 0x8941d(%rip), %rdi     # 0x9a2d7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13672
leaq 0x89411(%rip), %rdi     # 0x9a2e6
movb $0x1, %al
callq 0xe070
leaq 0x89412(%rip), %rdi     # 0x9a2f5
movl %r14d, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x89420(%rip), %rdi     # 0x9a314
movsd 0x40(%rsp), %xmm0
movb $0x1, %al
callq 0xe070
movq 0xd2078(%rip), %rax     # 0xe2f80
movq (%rax), %rdi
callq 0xe540
leaq 0xe8(%rsp), %rdi
callq 0x14a08
cmpb $0x1, 0xd2d80(%rip)     # 0xe3ca4
jne 0x11e58
leaq 0x450(%rsp), %rdi
callq 0x6c9a6
leaq 0x450(%rsp), %rdi
callq 0x135be
movl 0xd2566(%rip), %esi     # 0xe34b0
cmpl $0x1, %esi
je 0x11096
testl %esi, %esi
jne 0x132f2
leaq 0x460(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x3cca6
leaq 0x460(%rsp), %rdi
xorpd %xmm0, %xmm0
callq 0x3f9c0
movsd 0x428(%rsp), %xmm0
movsd %xmm0, (%rsp)
xorl %r13d, %r13d
leaq 0xe8(%rsp), %rbp
leaq 0xd0(%rsp), %rbx
leaq 0x1a0(%rsp), %r15
movq 0x28(%rsp), %rdi
movslq 0x34(%rdi), %rax
cmpq %rax, %r13
jge 0x1120d
movq %r15, %r12
movq %rbx, %r15
movq 0x28(%rdi), %rax
movq %r13, %r14
movq (%rax,%r13,8), %r13
movq %r13, %rsi
callq 0x1375e
movq %rbp, %rdi
movq %rax, %rsi
movsd (%rsp), %xmm0
callq 0x49a96
movq 0x8(%r13), %rsi
movq 0x10(%r13), %rbx
movq 0x18(%r13), %r13
addq $0x18, %rsi
leaq 0x120(%rsp), %rdi
callq 0x48bf0
addq $0x18, %rbx
leaq 0x68(%rsp), %rdi
movq %rbx, %rsi
callq 0x48bf0
addq $0x18, %r13
movq %r15, %rbx
movq %r15, %rdi
movq %r13, %rsi
callq 0x48bf0
movq %r12, %r15
movq %r12, %rdi
leaq 0x120(%rsp), %rsi
movq %rbp, %rdx
callq 0x49331
leaq 0xb8(%rsp), %r12
movq %r14, %r13
movq %r12, %rdi
leaq 0x68(%rsp), %rsi
movq %rbp, %rdx
callq 0x49331
leaq 0x160(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rsi
movq %rbp, %rdx
callq 0x49331
leaq 0x460(%rsp), %rdi
movq %r15, %rsi
movq %r12, %rdx
movq %r14, %rcx
movsd 0x88f93(%rip), %xmm0    # 0x9a018
pushq $0x2
popq %r8
callq 0x135c6
incq %r13
jmp 0x10faa
leaq 0x460(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x3cca6
leaq 0x460(%rsp), %rdi
xorpd %xmm0, %xmm0
callq 0x3f9c0
leaq 0xb8(%rsp), %rdi
callq 0x6ceee
movq 0x690(%rsp), %r13
movsd 0x428(%rsp), %xmm0
movsd %xmm0, 0x18(%rsp)
leaq 0x120(%rsp), %rdi
movq %rbp, %rsi
callq 0x14924
movsd 0x88f10(%rip), %xmm0    # 0x9a008
movsd 0x18(%rsp), %xmm1
mulsd %xmm1, %xmm0
movsd %xmm0, 0x90(%rsp)
xorl %ebx, %ebx
leaq 0xb8(%rsp), %r14
movapd %xmm1, %xmm0
cmpl 0x698(%rsp), %ebx
jge 0x11779
xorl %ebp, %ebp
cmpl 0x69c(%rsp), %ebp
jge 0x11206
xorl %r15d, %r15d
movl 0x6a0(%rsp), %eax
cmpl %eax, %r15d
jge 0x111ff
testl %ebx, %ebx
je 0x11181
testl %ebp, %ebp
je 0x11181
movl 0x698(%rsp), %ecx
decl %ecx
cmpl %ecx, %ebx
je 0x11181
movl 0x69c(%rsp), %ecx
decl %ecx
cmpl %ecx, %ebp
sete %cl
testl %r15d, %r15d
sete %dl
orb %cl, %dl
decl %eax
cmpl %eax, %r15d
sete %al
orb %dl, %al
cmpb $0x1, %al
jne 0x111f7
movq 0x430(%rsp), %rax
movl 0x448(%rsp), %ecx
imull %r15d, %ecx
movl 0x444(%rsp), %edx
imull %ebp, %edx
addl %ebx, %ecx
addl %edx, %ecx
movslq %ecx, %rcx
ucomisd (%rax,%rcx,8), %xmm0
ja 0x111f7
movl 0x6a8(%rsp), %eax
imull %r15d, %eax
movl 0x6a4(%rsp), %ecx
imull %ebp, %ecx
addl %ebx, %eax
addl %ecx, %eax
movslq %eax, %r12
leaq (,%r12,8), %rsi
addq %r13, %rsi
movq %r14, %rdi
callq 0x1378a
movq 0x690(%rsp), %rax
movabsq $0x3ff0000000000000, %rcx # imm = 0x3FF0000000000000
movq %rcx, (%rax,%r12,8)
movsd 0x18(%rsp), %xmm0
incl %r15d
jmp 0x11138
incl %ebp
jmp 0x11128
incl %ebx
jmp 0x11119
xorl %ecx, %ecx
leaq 0x6b8(%rsp), %r15
leaq 0xa0(%rsp), %r12
leaq 0x6d0(%rsp), %rbx
movq %rdi, %rbp
cltq
cmpq %rax, %rcx
jge 0x11722
movq 0x28(%rbp), %rax
movq %rcx, 0x40(%rsp)
movq (%rax,%rcx,8), %r13
movq %rbp, %rdi
movq %r13, %rsi
callq 0x1375e
leaq 0xe8(%rsp), %rdi
movq %rax, %rsi
movsd (%rsp), %xmm0
callq 0x49a96
movq 0x8(%r13), %rbp
movq 0x10(%r13), %r14
movq 0x18(%r13), %r13
leaq 0x18(%rbp), %rsi
leaq 0x120(%rsp), %rdi
callq 0x48bf0
leaq 0x18(%r14), %rsi
leaq 0x68(%rsp), %rdi
callq 0x48bf0
leaq 0x18(%r13), %rsi
leaq 0xd0(%rsp), %rdi
callq 0x48bf0
movq 0x28(%rsp), %rdi
movq %rbp, %rsi
callq 0x1373e
leaq 0x1a0(%rsp), %rdi
movq %rax, %rsi
movsd (%rsp), %xmm0
callq 0x49a96
movq 0x28(%rsp), %rbp
movq %rbp, %rdi
movq %r14, %rsi
callq 0x1373e
leaq 0xb8(%rsp), %rdi
movq %rax, %rsi
movsd (%rsp), %xmm0
callq 0x49a96
movq %rbp, %rdi
movq %r13, %rsi
callq 0x1373e
leaq 0x160(%rsp), %rdi
movq %rax, %rsi
movsd (%rsp), %xmm0
callq 0x49a96
leaq 0x460(%rsp), %rdi
leaq 0x120(%rsp), %rsi
leaq 0x68(%rsp), %rdx
leaq 0xd0(%rsp), %rcx
movsd 0x88cf6(%rip), %xmm0    # 0x9a020
pushq $0x2
popq %r8
callq 0x135c6
leaq 0x178(%rsp), %rdi
leaq 0x120(%rsp), %rsi
leaq 0xe8(%rsp), %r14
movq %r14, %rdx
callq 0x48ea7
movq %r15, %rdi
leaq 0x68(%rsp), %rsi
movq %r14, %rdx
callq 0x48ea7
movq %r12, %rdi
leaq 0xd0(%rsp), %rsi
movq %r14, %rdx
callq 0x48ea7
leaq 0x460(%rsp), %rdi
leaq 0x178(%rsp), %rsi
movq %r15, %rdx
movq %r12, %rcx
movsd 0x88c8c(%rip), %xmm0    # 0x9a020
pushq $0x2
popq %r8
callq 0x135c6
movq %r15, %rdi
leaq 0xe8(%rsp), %rsi
movsd 0x88c60(%rip), %xmm0    # 0x9a010
callq 0x49a96
leaq 0x178(%rsp), %rdi
leaq 0x120(%rsp), %rsi
movq %r15, %rdx
callq 0x48ea7
movq %rbx, %r14
movq %rbx, %rdi
leaq 0xe8(%rsp), %rsi
movsd 0x88c2d(%rip), %xmm0    # 0x9a010
callq 0x49a96
movq %r12, %rdi
leaq 0x68(%rsp), %rsi
movq %r14, %rdx
callq 0x48ea7
leaq 0x1c0(%rsp), %rdi
leaq 0xe8(%rsp), %rsi
movsd 0x88c00(%rip), %xmm0    # 0x9a010
callq 0x49a96
leaq 0x1d8(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
leaq 0x1c0(%rsp), %rdx
callq 0x48ea7
leaq 0x460(%rsp), %rdi
leaq 0x178(%rsp), %rsi
movq %r12, %rdx
leaq 0x1d8(%rsp), %rcx
movsd 0x88bcb(%rip), %xmm0    # 0x9a020
pushq $0x2
popq %r8
callq 0x135c6
movq %r15, %rdi
leaq 0xe8(%rsp), %rsi
movsd 0x88bd7(%rip), %xmm0    # 0x9a048
callq 0x49a96
leaq 0x178(%rsp), %rdi
leaq 0x120(%rsp), %rsi
movq %r15, %rdx
callq 0x48ea7
movq %rbx, %r14
movq %rbx, %rdi
leaq 0xe8(%rsp), %rsi
movsd 0x88ba4(%rip), %xmm0    # 0x9a048
callq 0x49a96
movq %r12, %rdi
leaq 0x68(%rsp), %rsi
movq %r14, %rdx
callq 0x48ea7
leaq 0x1c0(%rsp), %rdi
leaq 0xe8(%rsp), %rsi
movsd 0x88b77(%rip), %xmm0    # 0x9a048
callq 0x49a96
leaq 0x1d8(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
leaq 0x1c0(%rsp), %rdx
callq 0x48ea7
leaq 0x460(%rsp), %rdi
leaq 0x178(%rsp), %rsi
movq %r12, %rdx
leaq 0x1d8(%rsp), %rcx
movsd 0x88b0a(%rip), %xmm0    # 0x9a020
pushq $0x2
popq %r8
callq 0x135c6
leaq 0x178(%rsp), %rdi
leaq 0x120(%rsp), %rsi
leaq 0x1a0(%rsp), %rdx
callq 0x48ea7
movq %r15, %rdi
leaq 0x68(%rsp), %rsi
leaq 0xb8(%rsp), %rdx
callq 0x48ea7
movq %r12, %rdi
leaq 0xd0(%rsp), %rsi
leaq 0x160(%rsp), %rdx
callq 0x48ea7
leaq 0x460(%rsp), %rdi
leaq 0x178(%rsp), %rsi
movq %r15, %rdx
movq %r12, %rcx
movsd 0x88a99(%rip), %xmm0    # 0x9a020
pushq $0x2
popq %r8
callq 0x135c6
movq %r15, %rdi
leaq 0x1a0(%rsp), %rsi
movsd 0x88a6d(%rip), %xmm0    # 0x9a010
callq 0x49a96
leaq 0x178(%rsp), %rdi
leaq 0x120(%rsp), %rsi
movq %r15, %rdx
callq 0x48ea7
movq %rbx, %r14
movq %rbx, %rdi
leaq 0xb8(%rsp), %rsi
movsd 0x88a3a(%rip), %xmm0    # 0x9a010
callq 0x49a96
movq %r12, %rdi
leaq 0x68(%rsp), %rsi
movq %r14, %rdx
callq 0x48ea7
leaq 0x1c0(%rsp), %rdi
leaq 0x160(%rsp), %rsi
movsd 0x88a0d(%rip), %xmm0    # 0x9a010
callq 0x49a96
leaq 0x1d8(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
leaq 0x1c0(%rsp), %rdx
callq 0x48ea7
leaq 0x460(%rsp), %rdi
leaq 0x178(%rsp), %rsi
movq %r12, %rdx
leaq 0x1d8(%rsp), %rcx
movsd 0x889d8(%rip), %xmm0    # 0x9a020
pushq $0x2
popq %r8
callq 0x135c6
movq %r15, %rdi
leaq 0x1a0(%rsp), %rsi
movsd 0x889e4(%rip), %xmm0    # 0x9a048
callq 0x49a96
leaq 0x178(%rsp), %rdi
leaq 0x120(%rsp), %rsi
movq %r15, %rdx
callq 0x48ea7
movq %rbx, %r14
movq %rbx, %rdi
leaq 0xb8(%rsp), %rsi
movsd 0x889b1(%rip), %xmm0    # 0x9a048
callq 0x49a96
movq %r12, %rdi
leaq 0x68(%rsp), %rsi
movq %r14, %rdx
callq 0x48ea7
leaq 0x1c0(%rsp), %rdi
leaq 0x160(%rsp), %rsi
movsd 0x88984(%rip), %xmm0    # 0x9a048
callq 0x49a96
leaq 0x1d8(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
leaq 0x1c0(%rsp), %rdx
callq 0x48ea7
leaq 0x460(%rsp), %rdi
leaq 0x178(%rsp), %rsi
movq %r12, %rdx
leaq 0x1d8(%rsp), %rcx
movsd 0x88917(%rip), %xmm0    # 0x9a020
pushq $0x2
popq %r8
callq 0x135c6
movq 0x40(%rsp), %rcx
incq %rcx
movl 0x34(%rbp), %eax
jmp 0x1122a
leaq 0x460(%rsp), %rdi
xorl %esi, %esi
callq 0x3ff12
leaq 0x460(%rsp), %rdi
movsd 0x888d7(%rip), %xmm1    # 0x9a018
movsd 0x888d7(%rip), %xmm2    # 0x9a020
xorpd %xmm0, %xmm0
callq 0x3e34c
leaq 0x200(%rsp), %rdi
leaq 0x460(%rsp), %rsi
callq 0x3fd8c
leaq 0x460(%rsp), %rdi
callq 0x3ccfe
jmp 0x11c42
movsd 0x8888f(%rip), %xmm0    # 0x9a010
mulsd 0x90(%rsp), %xmm0
movsd %xmm0, 0x1f0(%rsp)
leaq 0xb8(%rsp), %r14
leaq 0xe8(%rsp), %rbp
movq %r13, 0x1b8(%rsp)
movslq 0xc4(%rsp), %rax
testq %rax, %rax
je 0x11bc3
movq 0xb8(%rsp), %rcx
movq %r14, %rdi
movq -0x8(%rcx,%rax,8), %r14
callq 0x13780
subq %r13, %r14
shrq $0x3, %r14
movl %r14d, %eax
cltd
idivl 0x6a8(%rsp)
movl %eax, %esi
movl %edx, %eax
movl 0x6a4(%rsp), %ecx
cltd
idivl %ecx
movl %eax, %edi
movl %r14d, %eax
cltd
idivl %ecx
movl %edx, %ebx
cvtsi2sd %edx, %xmm0
movl %edi, 0x58(%rsp)
cvtsi2sd %edi, %xmm1
movl %esi, 0x20(%rsp)
cvtsi2sd %esi, %xmm2
leaq 0x68(%rsp), %rdi
leaq 0x460(%rsp), %rsi
callq 0x42b5a
pushq $-0x1
popq %rcx
movsd 0x18(%rsp), %xmm1
leaq 0xb8(%rsp), %r14
movl %ebx, 0x30(%rsp)
cmpl $0x2, %ecx
je 0x117ab
movl %ecx, %esi
addl 0x20(%rsp), %esi
js 0x11bbc
cmpl 0x6a0(%rsp), %esi
jge 0x11bbc
movl %ecx, %eax
imull %ecx, %eax
movl %eax, 0x19c(%rsp)
cvtsi2sd %esi, %xmm0
movsd %xmm0, 0x1f8(%rsp)
pushq $-0x1
popq %rax
movl %esi, 0x80(%rsp)
movl %ecx, 0x64(%rsp)
cmpl $0x2, %eax
je 0x11bbc
movl %eax, 0x3c(%rsp)
movl %eax, %edi
addl 0x58(%rsp), %edi
js 0x11bad
cmpl 0x69c(%rsp), %edi
jge 0x11bad
movl 0x3c(%rsp), %eax
imull %eax, %eax
addl 0x19c(%rsp), %eax
movl %eax, 0x190(%rsp)
cvtsi2sd %edi, %xmm0
movsd %xmm0, 0x158(%rsp)
pushq $-0x1
popq %r12
movl %edi, 0x40(%rsp)
cmpl $0x2, %r12d
je 0x11bad
movl %r12d, %r15d
addl %ebx, %r15d
js 0x11b59
cmpl 0x698(%rsp), %r15d
jge 0x11b59
movq 0x690(%rsp), %rax
movl 0x6a8(%rsp), %ecx
imull %esi, %ecx
movl 0x6a4(%rsp), %edx
imull %edi, %edx
addl %r15d, %ecx
addl %edx, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
ucomisd 0x88734(%rip), %xmm0    # 0x9a058
ja 0x11b59
movq 0x430(%rsp), %rax
movl 0x448(%rsp), %ecx
imull 0x20(%rsp), %ecx
movl 0x444(%rsp), %edx
imull 0x58(%rsp), %edx
addl %ebx, %ecx
addl %edx, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm2
movsd 0x90(%rsp), %xmm0
ucomisd %xmm2, %xmm0
jbe 0x11aff
movl %r12d, %eax
imull %r12d, %eax
addl 0x190(%rsp), %eax
cvtsi2sd %eax, %xmm0
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
ucomisd 0x886cd(%rip), %xmm0    # 0x9a058
jb 0x11993
sqrtsd %xmm0, %xmm0
jmp 0x119ad
movsd %xmm2, (%rsp)
callq 0xe350
movsd (%rsp), %xmm2
movl 0x40(%rsp), %edi
movl 0x80(%rsp), %esi
ucomisd %xmm2, %xmm0
jbe 0x11aff
cvtsi2sd %r15d, %xmm0
leaq 0xd0(%rsp), %rbx
movq %rbx, %rdi
leaq 0x460(%rsp), %rsi
movsd 0x158(%rsp), %xmm1
movsd 0x1f8(%rsp), %xmm2
callq 0x42b5a
movq %rbp, %rdi
leaq 0x68(%rsp), %rsi
movq %rbx, %rdx
callq 0x4930e
leaq 0x1a0(%rsp), %rdi
movq %rbp, %rsi
movsd 0x88607(%rip), %xmm0    # 0x9a010
callq 0x49354
leaq 0x160(%rsp), %rbx
movq %rbx, %rdi
callq 0x6ceee
xorpd %xmm0, %xmm0
leaq 0x120(%rsp), %rdi
leaq 0x1a0(%rsp), %rsi
movq %rbx, %rdx
movsd 0x1f0(%rsp), %xmm1
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x17078
pushq $0x1
popq %r13
xorl %r14d, %r14d
movslq 0x16c(%rsp), %rax
cmpq %rax, %r14
jge 0x11ad7
movq 0x160(%rsp), %rax
movq (%rax,%r14,8), %rbx
movq 0x18(%rbx), %rsi
movq 0x28(%rsp), %rdi
callq 0x1375e
movq %rbp, %rdi
movq %rax, %rsi
callq 0x477b4
movq %rbx, %rdi
pushq $0x40
popq %rsi
callq 0xe460
movq %rbp, %rdi
leaq 0x68(%rsp), %rsi
callq 0x1e3ec
movsd %xmm0, (%rsp)
movq %rbp, %rdi
leaq 0xd0(%rsp), %rsi
callq 0x1e3ec
movsd (%rsp), %xmm1
mulsd %xmm0, %xmm1
leaq 0xd210a(%rip), %rax     # 0xe3bc8
movsd (%rax), %xmm0
ucomisd %xmm1, %xmm0
jae 0x11b61
incq %r14
incq %r13
jmp 0x11a4f
leaq 0x160(%rsp), %rdi
callq 0x6cf5c
movq 0x1b8(%rsp), %r13
leaq 0xb8(%rsp), %r14
movl 0x80(%rsp), %esi
movl 0x40(%rsp), %edi
movl 0x6a8(%rsp), %eax
imull %esi, %eax
movl 0x6a4(%rsp), %ecx
imull %edi, %ecx
addl %r15d, %eax
addl %ecx, %eax
movslq %eax, %rbx
leaq (,%rbx,8), %rsi
addq %r13, %rsi
movq %r14, %rdi
callq 0x1378a
movq 0x690(%rsp), %rax
movabsq $0x3ff0000000000000, %rcx # imm = 0x3FF0000000000000
movq %rcx, (%rax,%rbx,8)
movsd 0x18(%rsp), %xmm1
movl 0x30(%rsp), %ebx
movl 0x80(%rsp), %esi
movl 0x40(%rsp), %edi
incl %r12d
jmp 0x118cf
leaq 0xb8(%rsp), %r14
movl 0x30(%rsp), %ebx
cmpl %r13d, 0x16c(%rsp)
jle 0x11b90
movq 0x160(%rsp), %rax
movq (%rax,%r13,8), %rdi
pushq $0x40
popq %rsi
callq 0xe460
incq %r13
jmp 0x11b6d
leaq 0x160(%rsp), %rdi
callq 0x6cf5c
movq 0x1b8(%rsp), %r13
movsd 0x18(%rsp), %xmm1
jmp 0x11b4e
movl 0x3c(%rsp), %eax
incl %eax
movl 0x64(%rsp), %ecx
jmp 0x1187f
incl %ecx
jmp 0x11836
leaq 0x460(%rsp), %rdi
movsd 0x88445(%rip), %xmm1    # 0x9a018
movsd 0x88445(%rip), %xmm2    # 0x9a020
xorpd %xmm0, %xmm0
callq 0x3e34c
leaq 0x200(%rsp), %rdi
leaq 0x460(%rsp), %rsi
callq 0x3fd8c
cmpb $0x1, 0xd20cc(%rip)     # 0xe3ccc
jne 0x11c16
leaq 0x88754(%rip), %rsi     # 0x9a35d
leaq 0x460(%rsp), %rdi
callq 0x44c84
leaq 0x120(%rsp), %rdi
callq 0x14a08
leaq 0xb8(%rsp), %rdi
callq 0x6cf5c
leaq 0x460(%rsp), %rdi
callq 0x3ccfe
movq 0x28(%rsp), %rbp
cmpb $0x1, 0xd207f(%rip)     # 0xe3cc8
jne 0x11d6f
leaq 0x88863(%rip), %rdi     # 0x9a4b9
callq 0xe730
leaq 0x450(%rsp), %rdi
callq 0x6c9e0
leaq 0x885b2(%rip), %rdi     # 0x9a221
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rbx
movl 0x238(%rbx), %esi
movl 0x23c(%rbx), %edx
movl 0x240(%rbx), %ecx
leaq 0x885d4(%rip), %rdi     # 0x9a26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%rbx), %xmm0
leaq 0x885d7(%rip), %rdi     # 0x9a284
movb $0x1, %al
callq 0xe070
movq %rbx, %rdi
callq 0x3cee6
leaq 0x885d1(%rip), %rdi     # 0x9a294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13648
leaq 0x885c8(%rip), %rdi     # 0x9a2a8
movb $0x1, %al
callq 0xe070
leaq 0x460(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x3ce36
movsd 0x460(%rsp), %xmm0
leaq 0x885ab(%rip), %rdi     # 0x9a2b7
movb $0x1, %al
callq 0xe070
movsd 0x468(%rsp), %xmm0
leaq 0x885a4(%rip), %rdi     # 0x9a2c7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x3ce8e
leaq 0x88599(%rip), %rdi     # 0x9a2d7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13672
leaq 0x8858d(%rip), %rdi     # 0x9a2e6
movb $0x1, %al
callq 0xe070
movq 0xd1219(%rip), %rax     # 0xe2f80
movq (%rax), %rdi
callq 0xe540
movb 0xd1f2a(%rip), %r14b    # 0xe3ca0
xorb $0x1, %r14b
andb 0xd1f23(%rip), %r14b    # 0xe3ca4
testb $0x1, %r14b
je 0x11e58
leaq 0xe8(%rsp), %rdi
callq 0x6c9a6
leaq 0xe8(%rsp), %rdi
callq 0x135be
leaq 0x460(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x3cca6
leaq 0x8967f(%rip), %rax     # 0x9b440
cvtss2sd (%rax), %xmm2
leaq 0x460(%rsp), %rdi
xorpd %xmm0, %xmm0
xorpd %xmm1, %xmm1
callq 0x3e34c
leaq 0x460(%rsp), %rdi
callq 0x3de9c
leaq 0x460(%rsp), %rdi
callq 0x3dc30
movsd 0x428(%rsp), %xmm0
leaq 0x460(%rsp), %rdi
callq 0x3fd60
leaq 0x460(%rsp), %rdi
callq 0x3dca4
movl 0x44c(%rsp), %eax
movq 0x690(%rsp), %rcx
xorl %edx, %edx
testl %eax, %eax
cmovlel %edx, %eax
movq 0x430(%rsp), %rsi
xorpd %xmm0, %xmm0
cmpq %rdx, %rax
je 0x11e60
movsd (%rsi,%rdx,8), %xmm1
ucomisd %xmm0, %xmm1
jae 0x11e53
movsd (%rcx,%rdx,8), %xmm1
movsd %xmm1, (%rsi,%rdx,8)
incq %rdx
jmp 0x11e39
xorl %r14d, %r14d
jmp 0x11f9a
cmpb $0x0, 0xd1e61(%rip)     # 0xe3cc8
je 0x11f8d
leaq 0x88658(%rip), %rdi     # 0x9a4cc
callq 0xe730
leaq 0xe8(%rsp), %rdi
callq 0x6c9e0
leaq 0x88394(%rip), %rdi     # 0x9a221
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rbx
movl 0x238(%rbx), %esi
movl 0x23c(%rbx), %edx
movl 0x240(%rbx), %ecx
leaq 0x883b6(%rip), %rdi     # 0x9a26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%rbx), %xmm0
leaq 0x883b9(%rip), %rdi     # 0x9a284
movb $0x1, %al
callq 0xe070
movq %rbx, %rdi
callq 0x3cee6
leaq 0x883b3(%rip), %rdi     # 0x9a294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13648
leaq 0x883aa(%rip), %rdi     # 0x9a2a8
movb $0x1, %al
callq 0xe070
leaq 0x120(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x3ce36
movsd 0x120(%rsp), %xmm0
leaq 0x8838d(%rip), %rdi     # 0x9a2b7
movb $0x1, %al
callq 0xe070
movsd 0x128(%rsp), %xmm0
leaq 0x88386(%rip), %rdi     # 0x9a2c7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x3ce8e
leaq 0x8837b(%rip), %rdi     # 0x9a2d7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13672
leaq 0x8836f(%rip), %rdi     # 0x9a2e6
movb $0x1, %al
callq 0xe070
movq 0xd0ffb(%rip), %rax     # 0xe2f80
movq (%rax), %rdi
callq 0xe540
leaq 0x460(%rsp), %rdi
callq 0x3ccfe
leaq 0xa0(%rsp), %rdi
callq 0x6ceee
cmpq $0x0, 0xd1cf9(%rip)     # 0xe3ca8
sete %al
movl %r14d, %ecx
notb %cl
testb %al, %cl
jne 0x1248d
leaq 0xd0(%rsp), %rdi
callq 0x6c9a6
leaq 0xd0(%rsp), %rdi
callq 0x135be
leaq 0x68(%rsp), %rdi
movq %rbp, %rsi
callq 0x14924
movl %r14d, 0x90(%rsp)
leaq 0x200(%rsp), %rax
movsd 0x228(%rax), %xmm1
cvtsi2sdl 0xd14ca(%rip), %xmm0 # 0xe34d0
mulsd %xmm1, %xmm0
movsd %xmm1, (%rsp)
maxsd %xmm0, %xmm1
movsd %xmm1, 0x80(%rsp)
xorl %ebx, %ebx
leaq 0x460(%rsp), %r15
pushq $0x40
popq %r13
cmpl 0x440(%rsp), %ebx
jge 0x121bb
cvtsi2sd %ebx, %xmm0
movsd %xmm0, 0x20(%rsp)
xorl %eax, %eax
movq %rbx, 0x30(%rsp)
cmpl 0x43c(%rsp), %eax
jge 0x121b4
cvtsi2sd %eax, %xmm0
movsd %xmm0, 0x58(%rsp)
xorl %r14d, %r14d
movl %eax, 0x40(%rsp)
cmpl 0x438(%rsp), %r14d
jge 0x121ad
movl %eax, %esi
movq 0x430(%rsp), %rax
movl 0x448(%rsp), %ecx
imull %ebx, %ecx
movl 0x444(%rsp), %edx
imull %esi, %edx
addl %r14d, %ecx
addl %edx, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm1
xorpd %xmm0, %xmm0
ucomisd %xmm1, %xmm0
ja 0x121a1
ucomisd 0x80(%rsp), %xmm1
ja 0x121a1
movsd %xmm1, 0x18(%rsp)
leaq 0xe8(%rsp), %rdi
callq 0x6ceee
cvtsi2sd %r14d, %xmm0
movq %r15, %rdi
leaq 0x200(%rsp), %rsi
movsd 0x58(%rsp), %xmm1
movsd 0x20(%rsp), %xmm2
callq 0x42b5a
leaq 0xd1ad1(%rip), %rax     # 0xe3bc8
movsd 0x18(%rsp), %xmm1
addsd (%rax), %xmm1
xorpd %xmm0, %xmm0
leaq 0x68(%rsp), %rdi
movq %r15, %rsi
leaq 0xe8(%rsp), %rdx
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x17078
xorl %ebx, %ebx
movslq 0xf4(%rsp), %rax
cmpq %rax, %rbx
jge 0x1218f
movq %r15, %rbp
movq 0xe8(%rsp), %rax
movq (%rax,%rbx,8), %r12
pushq $0x38
popq %rdi
callq 0xe450
movq %rax, %r15
movq 0x18(%r12), %rsi
movq 0x28(%rsp), %rdi
callq 0x1375e
leaq 0x20(%r12), %rsi
movq %r15, %rdi
movq %rax, %rdx
movsd (%rsp), %xmm0
callq 0x13792
leaq 0xa0(%rsp), %rdi
movq %r15, %rsi
callq 0x1378a
movq %r12, %rdi
movq %r13, %rsi
callq 0xe460
incq %rbx
movq %rbp, %r15
jmp 0x12121
leaq 0xe8(%rsp), %rdi
callq 0x6cf5c
movq 0x30(%rsp), %rbx
incl %r14d
movl 0x40(%rsp), %eax
jmp 0x12066
incl %eax
jmp 0x12048
incl %ebx
jmp 0x1202a
leaq 0xe8(%rsp), %rdi
callq 0x137c6
leaq 0x460(%rsp), %rdi
leaq 0xa0(%rsp), %rsi
xorl %edx, %edx
callq 0x137f2
movsd 0x87e29(%rip), %xmm1    # 0x9a010
movsd (%rsp), %xmm0
mulsd %xmm0, %xmm1
movsd %xmm1, 0x40(%rsp)
mulsd 0x87e2a(%rip), %xmm0    # 0x9a028
movsd %xmm0, (%rsp)
xorl %r13d, %r13d
leaq 0x1a0(%rsp), %rbx
leaq 0x460(%rsp), %r14
pushq $0x6
popq %rbp
leaq 0x120(%rsp), %r15
movslq 0xac(%rsp), %rax
cmpq %rax, %r13
jge 0x122b5
movq 0xa0(%rsp), %rax
movq (%rax,%r13,8), %r12
movq %rbx, %rdi
callq 0x6ceee
movsd 0x40(%rsp), %xmm0
movsd %xmm0, 0x30(%r12)
xorpd %xmm0, %xmm0
movq %r14, %rdi
movq %r12, %rsi
movsd (%rsp), %xmm1
movl %ebp, %edx
movq %rbx, %rcx
movq %r15, %r8
callq 0x13908
testl %eax, %eax
je 0x122a5
movslq 0x1ac(%rsp), %rax
testq %rax, %rax
je 0x122a5
movsd 0x118(%rsp,%rax,8), %xmm0
mulsd 0x87d7f(%rip), %xmm0    # 0x9a010
movsd 0x30(%r12), %xmm1
ucomisd %xmm0, %xmm1
jbe 0x122a5
movsd %xmm0, 0x30(%r12)
movq %rbx, %rdi
callq 0x6cf5c
incq %r13
jmp 0x12221
cmpb $0x0, 0xd1a0c(%rip)     # 0xe3cc8
movl 0x90(%rsp), %r14d
je 0x12311
leaq 0x88227(%rip), %rdi     # 0x9a4f4
callq 0xe730
leaq 0xd0(%rsp), %rdi
callq 0x6c9e0
leaq 0x87f3b(%rip), %rdi     # 0x9a221
movb $0x1, %al
callq 0xe070
movl 0xac(%rsp), %esi
leaq 0x8806b(%rip), %rdi     # 0x9a366
xorl %eax, %eax
callq 0xe070
movq 0xd0c77(%rip), %rax     # 0xe2f80
movq (%rax), %rdi
callq 0xe540
leaq 0x460(%rsp), %rdi
callq 0x13a00
leaq 0x68(%rsp), %rdi
callq 0x14a08
movq 0xd1979(%rip), %rbx     # 0xe3ca8
testq %rbx, %rbx
je 0x1248d
cmpl $0x0, 0xac(%rsp)
je 0x1248d
leaq 0xe8(%rsp), %rdi
callq 0x6c9a6
leaq 0xe8(%rsp), %rdi
callq 0x135be
movq 0xd1941(%rip), %rdi     # 0xe3ca8
leaq 0x88024(%rip), %rsi     # 0x9a392
callq 0xe550
testq %rax, %rax
je 0x1240e
movq %rax, %r14
xorl %ebp, %ebp
leaq 0x460(%rsp), %r15
pushq $0x4
popq %r12
pushq $0x6
popq %r13
movslq 0xac(%rsp), %rax
cmpq %rax, %rbp
jge 0x12424
movq 0xa0(%rsp), %rax
movq (%rax,%rbp,8), %rax
movupd (%rax), %xmm0
movupd 0x10(%rax), %xmm1
cvtpd2ps %xmm1, %xmm1
cvtpd2ps %xmm0, %xmm0
unpcklpd %xmm1, %xmm0            # xmm0 = xmm0[0],xmm1[0]
movapd %xmm0, 0x460(%rsp)
movupd 0x20(%rax), %xmm0
cvtpd2ps %xmm0, %xmm0
movlpd %xmm0, 0x470(%rsp)
movq %r15, %rdi
movq %r12, %rsi
movq %r13, %rdx
movq %r14, %rcx
callq 0xe8f0
incq %rbp
cmpq $0x6, %rax
je 0x12391
leaq 0x87fb5(%rip), %rdi     # 0x9a3b4
movq %rbx, %rsi
xorl %eax, %eax
callq 0x6edae
jmp 0x1328e
leaq 0x87f80(%rip), %rdi     # 0x9a395
movq %rbx, %rsi
xorl %eax, %eax
callq 0x6edae
jmp 0x1328e
movq %r14, %rdi
callq 0xe440
cmpb $0x1, 0xd1895(%rip)     # 0xe3cc8
movl 0x90(%rsp), %r14d
jne 0x1248d
leaq 0x87f99(%rip), %rdi     # 0x9a3dd
movq %rbx, %rsi
xorl %eax, %eax
callq 0xe070
leaq 0xe8(%rsp), %rdi
callq 0x6c9e0
leaq 0x87dbf(%rip), %rdi     # 0x9a221
movb $0x1, %al
callq 0xe070
movl 0xac(%rsp), %esi
leaq 0x87eef(%rip), %rdi     # 0x9a366
xorl %eax, %eax
callq 0xe070
movq 0xd0afb(%rip), %rax     # 0xe2f80
movq (%rax), %rdi
callq 0xe540
testb $0x1, %r14b
je 0x12a13
cmpl $0x0, 0xac(%rsp)
setne %al
movl 0xd1028(%rip), %ebx     # 0xe34d0
testl %ebx, %ebx
setg %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0x12a13
leaq 0x6b8(%rsp), %rdi
callq 0x6c9a6
leaq 0x6b8(%rsp), %rdi
callq 0x135be
leaq 0xe8(%rsp), %rdi
callq 0x137c6
leaq 0x460(%rsp), %rdi
leaq 0xa0(%rsp), %rsi
xorl %edx, %edx
callq 0x137f2
leaq 0x200(%rsp), %rsi
movsd 0x228(%rsi), %xmm0
movsd %xmm0, 0x80(%rsp)
leaq 0x120(%rsp), %rdi
callq 0x14314
leaq 0x120(%rsp), %rdi
callq 0x362b8
movsd %xmm0, 0x40(%rsp)
cvtsi2sd %ebx, %xmm0
mulsd 0x80(%rsp), %xmm0
movsd %xmm0, (%rsp)
leaq 0x120(%rsp), %rdi
callq 0x36966
movsd (%rsp), %xmm1
ucomisd 0x40(%rsp), %xmm1
jbe 0x12594
leaq 0x120(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x14314
leaq 0x120(%rsp), %rdi
callq 0x362b8
movsd %xmm0, (%rsp)
leaq 0x120(%rsp), %rdi
callq 0x36966
movsd (%rsp), %xmm1
movl %ebx, 0x30(%rsp)
movsd 0xd1710(%rip), %xmm0    # 0xe3cb0
minsd %xmm1, %xmm0
movapd 0x87ac4(%rip), %xmm1    # 0x9a070
movapd %xmm0, 0x90(%rsp)
xorpd %xmm0, %xmm1
movapd %xmm1, 0x40(%rsp)
xorl %ebx, %ebx
movl $0x0, 0x20(%rsp)
cmpl 0x440(%rsp), %ebx
jge 0x1283e
cvtsi2sd %ebx, %xmm0
movsd %xmm0, 0x18(%rsp)
xorl %r13d, %r13d
cmpl 0x43c(%rsp), %r13d
jge 0x12837
cvtsi2sd %r13d, %xmm0
movsd %xmm0, 0x28(%rsp)
xorl %ebp, %ebp
cmpl 0x438(%rsp), %ebp
jge 0x1282f
movq 0x430(%rsp), %rax
movl 0x448(%rsp), %ecx
imull %ebx, %ecx
movl 0x444(%rsp), %edx
imull %r13d, %edx
addl %ecx, %edx
addl %ebp, %edx
movslq %edx, %rcx
movsd (%rax,%rcx,8), %xmm1
ucomisd 0x87a1c(%rip), %xmm1    # 0x9a058
jae 0x12828
movapd 0x40(%rsp), %xmm0
ucomisd %xmm1, %xmm0
ja 0x12828
movapd %xmm1, (%rsp)
cvtsi2sd %ebp, %xmm0
leaq 0x68(%rsp), %r14
movq %r14, %rdi
leaq 0x200(%rsp), %rsi
movsd 0x28(%rsp), %xmm1
movsd 0x18(%rsp), %xmm2
callq 0x42b5a
movapd (%rsp), %xmm1
andpd 0x87a17(%rip), %xmm1    # 0x9a0a0
addsd 0x80(%rsp), %xmm1
xorpd %xmm0, %xmm0
leaq 0x460(%rsp), %rdi
movq %r14, %rsi
xorl %edx, %edx
callq 0x143b4
movq %rax, %r12
testq %rax, %rax
je 0x127f2
leaq 0xd0(%rsp), %rdi
movq %r12, %rsi
callq 0x48bf0
movq %r12, %rdx
addq $0x18, %rdx
leaq 0x120(%rsp), %rdi
movq %r12, %rsi
callq 0x47840
leaq 0x1a0(%rsp), %r15
movq %r15, %rdi
leaq 0x68(%rsp), %rsi
callq 0x48bf0
movq %r15, %rdi
leaq 0x120(%rsp), %rsi
callq 0x48eea
leaq 0xb8(%rsp), %r14
movq %r14, %rdi
movq %r15, %rsi
movq %r12, %rdx
callq 0x48dbd
movq %r14, %rdi
callq 0x494a6
leaq 0xd14a3(%rip), %rax     # 0xe3bc8
ucomisd (%rax), %xmm0
jbe 0x1278f
leaq 0xb8(%rsp), %r15
movq %r15, %rdi
movsd %xmm0, 0x58(%rsp)
callq 0x49c9e
movsd 0x58(%rsp), %xmm1
movsd 0x30(%r12), %xmm0
minsd %xmm1, %xmm0
leaq 0x178(%rsp), %rdi
movq %r15, %rsi
callq 0x49a96
leaq 0x160(%rsp), %rdi
movq %r12, %rsi
leaq 0x178(%rsp), %rdx
callq 0x48ea7
leaq 0xd0(%rsp), %rdi
leaq 0x160(%rsp), %rsi
callq 0x48eca
leaq 0x68(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
callq 0x1e1e6
movapd %xmm0, %xmm1
xorpd 0x878c3(%rip), %xmm1    # 0x9a070
movapd (%rsp), %xmm2
cmpltsd 0x8789d(%rip), %xmm2    # 0x9a058
andpd %xmm2, %xmm1
andnpd %xmm0, %xmm2
orpd %xmm1, %xmm2
movq 0x430(%rsp), %rax
movl 0x448(%rsp), %ecx
imull %ebx, %ecx
movl 0x444(%rsp), %edx
imull %r13d, %edx
addl %ecx, %edx
addl %ebp, %edx
movslq %edx, %rcx
movlpd %xmm2, (%rax,%rcx,8)
jmp 0x12828
movq 0x430(%rsp), %rax
movl 0x448(%rsp), %ecx
imull %ebx, %ecx
movl 0x444(%rsp), %edx
imull %r13d, %edx
addl %ecx, %edx
addl %ebp, %edx
movslq %edx, %rcx
movabsq $-0x3810000020000000, %rdx # imm = 0xC7EFFFFFE0000000
movq %rdx, (%rax,%rcx,8)
incl 0x20(%rsp)
incl %ebp
jmp 0x125fe
incl %r13d
jmp 0x125e3
incl %ebx
jmp 0x125c9
leaq 0x200(%rsp), %rdi
movsd 0x877e2(%rip), %xmm1    # 0x9a030
xorpd %xmm0, %xmm0
callq 0x3f9de
leaq 0x200(%rsp), %rdi
movsd 0x877d1(%rip), %xmm0    # 0x9a038
xorpd %xmm1, %xmm1
callq 0x3f9de
leaq 0x200(%rsp), %rdi
movl 0x24c(%rdi), %esi
callq 0x3f614
leaq 0x200(%rsp), %rdi
movsd 0x8779d(%rip), %xmm0    # 0x9a030
xorpd %xmm1, %xmm1
callq 0x3f9de
cmpb $0x1, 0xd1425(%rip)     # 0xe3cc8
jne 0x12a06
leaq 0x87c63(%rip), %rdi     # 0x9a513
callq 0xe730
leaq 0x6b8(%rsp), %rdi
callq 0x6c9e0
leaq 0x87958(%rip), %rdi     # 0x9a221
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rbx
movl 0x238(%rbx), %esi
movl 0x23c(%rbx), %edx
movl 0x240(%rbx), %ecx
leaq 0x8797a(%rip), %rdi     # 0x9a26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%rbx), %xmm0
leaq 0x8797d(%rip), %rdi     # 0x9a284
movb $0x1, %al
callq 0xe070
movq %rbx, %rdi
callq 0x3cee6
leaq 0x87977(%rip), %rdi     # 0x9a294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13648
leaq 0x8796e(%rip), %rdi     # 0x9a2a8
movb $0x1, %al
callq 0xe070
leaq 0x120(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x3ce36
movl 0x30(%rsp), %ebx
movsd 0x120(%rsp), %xmm0
leaq 0x8794d(%rip), %rdi     # 0x9a2b7
movb $0x1, %al
callq 0xe070
movsd 0x128(%rsp), %xmm0
leaq 0x87946(%rip), %rdi     # 0x9a2c7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x3ce8e
leaq 0x8793b(%rip), %rdi     # 0x9a2d7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13672
leaq 0x8792f(%rip), %rdi     # 0x9a2e6
movb $0x1, %al
callq 0xe070
leaq 0x87930(%rip), %rdi     # 0x9a2f5
movl %ebx, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x8793f(%rip), %rdi     # 0x9a314
movapd 0x90(%rsp), %xmm0
movb $0x1, %al
callq 0xe070
leaq 0x87a09(%rip), %rdi     # 0x9a3f5
movl 0x20(%rsp), %esi
xorl %eax, %eax
callq 0xe070
movq 0xd0582(%rip), %rax     # 0xe2f80
movq (%rax), %rdi
callq 0xe540
leaq 0x460(%rsp), %rdi
callq 0x13a00
movl 0xac(%rsp), %eax
testl %eax, %eax
je 0x12a4b
xorl %r14d, %r14d
pushq $0x38
popq %rbx
cltq
cmpq %rax, %r14
jge 0x12a4b
movq 0xa0(%rsp), %rax
movq (%rax,%r14,8), %rdi
movq %rbx, %rsi
callq 0xe460
incq %r14
movl 0xac(%rsp), %eax
jmp 0x12a24
movl 0xd0a7f(%rip), %ebx     # 0xe34d0
testl %ebx, %ebx
jle 0x12e5c
leaq 0xe8(%rsp), %rdi
callq 0x6c9a6
leaq 0xe8(%rsp), %rdi
callq 0x135be
leaq 0x460(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x3cca6
leal -0x2(%rbx), %eax
cvtsi2sd %eax, %xmm0
movsd 0x428(%rsp), %xmm1
addl $0x2, %ebx
cvtsi2sd %ebx, %xmm2
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm2
movsd %xmm2, 0x90(%rsp)
addsd %xmm1, %xmm1
maxsd %xmm0, %xmm1
movsd %xmm1, 0x190(%rsp)
xorl %esi, %esi
pushq $-0x1
popq %rax
movl %eax, 0x158(%rsp)
movl $0x0, 0x64(%rsp)
cmpl 0x440(%rsp), %esi
jge 0x12d0c
xorl %edi, %edi
pushq $-0x1
popq %rax
movl %eax, 0x20(%rsp)
movl %esi, 0x30(%rsp)
cmpl 0x43c(%rsp), %edi
jge 0x12cfe
xorl %r8d, %r8d
pushq $-0x1
popq %rax
movl %eax, 0x28(%rsp)
movl %edi, 0x18(%rsp)
cmpl 0x438(%rsp), %r8d
jge 0x12cf3
movq 0x690(%rsp), %rax
movl 0x6a8(%rsp), %ecx
imull %esi, %ecx
movl 0x6a4(%rsp), %edx
imull %edi, %edx
addl %r8d, %ecx
addl %edx, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
andpd 0x87557(%rip), %xmm0    # 0x9a0a0
ucomisd 0x90(%rsp), %xmm0
ja 0x12ce7
movsd 0x190(%rsp), %xmm1
ucomisd %xmm0, %xmm1
ja 0x12ce7
movl %r8d, 0x3c(%rsp)
xorpd %xmm3, %xmm3
xorl %ebx, %ebx
movl 0x158(%rsp), %r14d
xorpd %xmm2, %xmm2
pushq $-0x1
popq %rcx
cmpl $0x2, %ecx
je 0x12c87
movl %ecx, %eax
addl %esi, %eax
js 0x12c7b
cmpl 0x440(%rsp), %eax
jge 0x12c7b
movl %ecx, 0x58(%rsp)
movl 0x20(%rsp), %r15d
movl %ebx, 0x80(%rsp)
pushq $-0x1
popq %rbp
cmpl $0x2, %ebp
je 0x12c6c
movl %ebp, %eax
addl %edi, %eax
js 0x12c60
cmpl 0x43c(%rsp), %eax
jge 0x12c60
movl 0x28(%rsp), %r12d
pushq $0x3
popq %rdi
movl %edi, %r13d
subl $0x1, %r13d
jb 0x12c5c
testl %r12d, %r12d
js 0x12c54
cmpl 0x438(%rsp), %r12d
jge 0x12c54
movsd %xmm3, 0x40(%rsp)
movsd %xmm2, (%rsp)
addl %ebx, %edi
movsd 0x87413(%rip), %xmm0    # 0x9a020
callq 0xe720
movq 0x690(%rsp), %rax
movl 0x6a8(%rsp), %ecx
imull %r14d, %ecx
movl 0x6a4(%rsp), %edx
imull %r15d, %edx
addl %ecx, %edx
addl %r12d, %edx
movslq %edx, %rcx
movsd (%rax,%rcx,8), %xmm1
mulsd %xmm0, %xmm1
movsd (%rsp), %xmm2
addsd %xmm1, %xmm2
movsd 0x40(%rsp), %xmm3
addsd %xmm0, %xmm3
incl %r12d
movl %r13d, %edi
jmp 0x12be3
movl 0x18(%rsp), %edi
incl %ebp
decl %ebx
incl %r15d
jmp 0x12bb8
movl 0x30(%rsp), %esi
movl 0x80(%rsp), %ebx
movl 0x58(%rsp), %ecx
incl %ecx
decl %ebx
incl %r14d
jmp 0x12b85
leaq 0xd0f3a(%rip), %rax     # 0xe3bc8
movsd (%rax), %xmm0
movapd %xmm0, %xmm1
xorpd 0x873d2(%rip), %xmm1    # 0x9a070
ucomisd %xmm1, %xmm3
jb 0x12cb1
ucomisd %xmm3, %xmm0
jb 0x12cb1
movl 0x3c(%rsp), %r8d
jmp 0x12ce7
divsd %xmm3, %xmm2
movq 0x430(%rsp), %rax
movl 0x448(%rsp), %ecx
imull %esi, %ecx
movl 0x444(%rsp), %edx
imull %edi, %edx
movl 0x3c(%rsp), %r8d
addl %r8d, %ecx
addl %edx, %ecx
movslq %ecx, %rcx
movsd %xmm2, (%rax,%rcx,8)
incl 0x64(%rsp)
incl %r8d
incl 0x28(%rsp)
jmp 0x12b0a
incl %edi
incl 0x20(%rsp)
jmp 0x12aef
incl %esi
incl 0x158(%rsp)
jmp 0x12ad5
cmpb $0x0, 0xd0fb5(%rip)     # 0xe3cc8
je 0x12e4f
leaq 0x8781d(%rip), %rdi     # 0x9a53d
callq 0xe730
leaq 0xe8(%rsp), %rdi
callq 0x6c9e0
leaq 0x874e8(%rip), %rdi     # 0x9a221
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %r14
movl 0x238(%r14), %esi
movl 0x23c(%r14), %edx
movl 0x240(%r14), %ecx
leaq 0x87507(%rip), %rdi     # 0x9a26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%r14), %xmm0
leaq 0x87509(%rip), %rdi     # 0x9a284
movb $0x1, %al
callq 0xe070
movq %r14, %rdi
callq 0x3cee6
leaq 0x87503(%rip), %rdi     # 0x9a294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13648
leaq 0x874fa(%rip), %rdi     # 0x9a2a8
movb $0x1, %al
callq 0xe070
leaq 0x120(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x3ce36
movsd 0x120(%rsp), %xmm0
leaq 0x874dd(%rip), %rdi     # 0x9a2b7
movb $0x1, %al
callq 0xe070
movsd 0x128(%rsp), %xmm0
leaq 0x874d6(%rip), %rdi     # 0x9a2c7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x3ce8e
leaq 0x874cb(%rip), %rdi     # 0x9a2d7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13672
leaq 0x874bf(%rip), %rdi     # 0x9a2e6
movb $0x1, %al
callq 0xe070
leaq 0x875d3(%rip), %rdi     # 0x9a408
movl 0x64(%rsp), %esi
xorl %eax, %eax
callq 0xe070
movq 0xd0139(%rip), %rax     # 0xe2f80
movq (%rax), %rdi
callq 0xe540
leaq 0x460(%rsp), %rdi
callq 0x3ccfe
movsd 0xd0e4c(%rip), %xmm0    # 0xe3cb0
leaq 0xd0d6d(%rip), %rax     # 0xe3bd8
movapd %xmm0, (%rsp)
ucomisd (%rax), %xmm0
jae 0x1301d
leaq 0x460(%rsp), %rdi
callq 0x6c9a6
leaq 0x460(%rsp), %rdi
callq 0x135be
movapd 0x871d4(%rip), %xmm0    # 0x9a070
xorpd (%rsp), %xmm0
leaq 0x88598(%rip), %rax     # 0x9b440
cvtss2sd (%rax), %xmm2
leaq 0x200(%rsp), %rdi
movapd %xmm0, %xmm1
movsd %xmm2, 0x40(%rsp)
callq 0x3e34c
leaq 0x200(%rsp), %rdi
movaps (%rsp), %xmm0
movsd 0x40(%rsp), %xmm1
movaps %xmm0, %xmm2
callq 0x3e34c
cmpb $0x1, 0xd0de4(%rip)     # 0xe3cc8
jne 0x1301d
leaq 0x8766d(%rip), %rdi     # 0x9a55e
callq 0xe730
leaq 0x460(%rsp), %rdi
callq 0x6c9e0
leaq 0x87317(%rip), %rdi     # 0x9a221
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rbx
movl 0x238(%rbx), %esi
movl 0x23c(%rbx), %edx
movl 0x240(%rbx), %ecx
leaq 0x87339(%rip), %rdi     # 0x9a26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%rbx), %xmm0
leaq 0x8733c(%rip), %rdi     # 0x9a284
movb $0x1, %al
callq 0xe070
movq %rbx, %rdi
callq 0x3cee6
leaq 0x87336(%rip), %rdi     # 0x9a294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13648
leaq 0x8732d(%rip), %rdi     # 0x9a2a8
movb $0x1, %al
callq 0xe070
leaq 0xe8(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x3ce36
movsd 0xe8(%rsp), %xmm0
leaq 0x87310(%rip), %rdi     # 0x9a2b7
movb $0x1, %al
callq 0xe070
movsd 0xf0(%rsp), %xmm0
leaq 0x87309(%rip), %rdi     # 0x9a2c7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x3ce8e
leaq 0x872fe(%rip), %rdi     # 0x9a2d7
movb $0x1, %al
callq 0xe070
leaq 0x200(%rsp), %rdi
callq 0x13672
leaq 0x872f2(%rip), %rdi     # 0x9a2e6
movb $0x1, %al
callq 0xe070
leaq 0x87414(%rip), %rdi     # 0x9a416
movapd (%rsp), %xmm0
movb $0x1, %al
callq 0xe070
movq 0xcff6b(%rip), %rax     # 0xe2f80
movq (%rax), %rdi
callq 0xe540
movq 0xd0c94(%rip), %rbx     # 0xe3cb8
testq %rbx, %rbx
je 0x130e1
leaq 0x460(%rsp), %rdi
callq 0x6c9a6
leaq 0x460(%rsp), %rdi
callq 0x135be
leaq 0x200(%rsp), %rdi
movq %rbx, %rsi
callq 0x44c84
testl %eax, %eax
je 0x132ee
cmpb $0x1, 0xd0c62(%rip)     # 0xe3cc8
jne 0x130e1
leaq 0x87507(%rip), %rdi     # 0x9a576
callq 0xe730
leaq 0x460(%rsp), %rdi
callq 0x6c9e0
leaq 0x87199(%rip), %rdi     # 0x9a221
movb $0x1, %al
callq 0xe070
movslq 0x44c(%rsp), %rax
shlq $0x3, %rax
movq %rax, %xmm1
punpckldq 0x86fd8(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x86fe0(%rip), %xmm1    # 0x9a090
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x86f7c(%rip), %xmm0    # 0x9a040
leaq 0x8735d(%rip), %rdi     # 0x9a428
movb $0x1, %al
callq 0xe070
movq 0xcfea7(%rip), %rax     # 0xe2f80
movq (%rax), %rdi
callq 0xe540
cmpq $0x0, 0xd0bd7(%rip)     # 0xe3cc0
je 0x1328e
leaq 0x460(%rsp), %rdi
callq 0x6c9a6
leaq 0x460(%rsp), %rdi
callq 0x135be
movl $0x138, %edi            # imm = 0x138
callq 0xe450
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a30
leaq 0x200(%rsp), %rdi
movsd 0x228(%rdi), %xmm0
movq %rbx, %rsi
callq 0x46706
cmpb $0x1, 0xd0b8b(%rip)     # 0xe3cc8
jne 0x131d6
leaq 0x8743b(%rip), %rdi     # 0x9a585
callq 0xe730
leaq 0x460(%rsp), %rdi
callq 0x6c9e0
leaq 0x870be(%rip), %rdi     # 0x9a221
movb $0x1, %al
callq 0xe070
movl 0x34(%rbx), %esi
leaq 0x870c4(%rip), %rdi     # 0x9a238
xorl %eax, %eax
callq 0xe070
movl 0x24(%rbx), %esi
leaq 0x870c3(%rip), %rdi     # 0x9a248
xorl %eax, %eax
callq 0xe070
movl 0x14(%rbx), %esi
leaq 0x870c2(%rip), %rdi     # 0x9a258
xorl %eax, %eax
callq 0xe070
movq %rbx, %rdi
callq 0x13521
testl %eax, %eax
leaq 0x872a0(%rip), %rax     # 0x9a44e
leaq 0x87295(%rip), %rsi     # 0x9a44a
cmoveq %rax, %rsi
leaq 0x87279(%rip), %rdi     # 0x9a439
xorl %eax, %eax
callq 0xe070
movq 0xcfdb2(%rip), %rax     # 0xe2f80
movq (%rax), %rdi
callq 0xe540
movq 0xd0ae3(%rip), %r14     # 0xe3cc0
leaq 0x460(%rsp), %rdi
callq 0x6c9a6
leaq 0x460(%rsp), %rdi
callq 0x135be
movq (%rbx), %rax
movq %rbx, %rdi
movq %r14, %rsi
callq *0x1d0(%rax)
testl %eax, %eax
je 0x132ee
cmpb $0x1, 0xd0ab3(%rip)     # 0xe3cc8
jne 0x13285
leaq 0x87233(%rip), %rdi     # 0x9a451
movq %r14, %rsi
xorl %eax, %eax
callq 0xe070
leaq 0x460(%rsp), %rdi
callq 0x6c9e0
leaq 0x86fe5(%rip), %rdi     # 0x9a221
movb $0x1, %al
callq 0xe070
movl 0x34(%rbx), %esi
leaq 0x86feb(%rip), %rdi     # 0x9a238
xorl %eax, %eax
callq 0xe070
movl 0x24(%rbx), %esi
leaq 0x86fea(%rip), %rdi     # 0x9a248
xorl %eax, %eax
callq 0xe070
movl 0x14(%rbx), %esi
leaq 0x86fe9(%rip), %rdi     # 0x9a258
xorl %eax, %eax
callq 0xe070
movq 0xcfd03(%rip), %rax     # 0xe2f80
movq (%rax), %rdi
callq 0xe540
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x8(%rax)
leaq 0xa0(%rsp), %rdi
callq 0x6cf5c
leaq 0x200(%rsp), %rdi
callq 0x3ccfe
xorl %eax, %eax
addq $0x6e8, %rsp            # imm = 0x6E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x86f0b(%rip), %rdi     # 0x9a1ce
movq %r14, %rsi
xorl %eax, %eax
callq 0x6edae
pushq $0x1
popq %rdi
callq 0xe570
leaq 0x86f0f(%rip), %rdi     # 0x9a1eb
xorl %eax, %eax
callq 0x6edae
jmp 0x132ee
movq (%r15), %rax
movq %r15, %rdi
callq *0x8(%rax)
pushq $-0x1
jmp 0x132cf
leaq 0x8703b(%rip), %rdi     # 0x9a334
xorl %eax, %eax
callq 0x6edae
jmp 0x132ee
jmp 0x13304
movq %rax, %r14
leaq 0x460(%rsp), %rdi
callq 0x3ccfe
jmp 0x134ff
jmp 0x1333a
jmp 0x1345f
jmp 0x133e2
movq %rax, %r14
movl $0x138, %esi            # imm = 0x138
movq %rbx, %rdi
callq 0xe460
jmp 0x134ff
movq %rax, %r14
leaq 0x120(%rsp), %rdi
callq 0x36966
jmp 0x13462
jmp 0x1345f
jmp 0x1345a
jmp 0x1345a
jmp 0x1345f
movq %rax, %r14
jmp 0x134a2
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x1347a
jmp 0x1343c
jmp 0x1345f
jmp 0x13437
jmp 0x134ea
jmp 0x1343c
jmp 0x134fc
jmp 0x13437
movq %rax, %r14
movl $0x138, %esi            # imm = 0x138
movq %r15, %rdi
callq 0xe460
jmp 0x13519
jmp 0x134ea
jmp 0x134fc
jmp 0x1347a
jmp 0x1347a
movq %rax, %r14
leaq 0x1a0(%rsp), %rdi
callq 0x6cf5c
jmp 0x133e5
movq %rax, %r14
leaq 0x460(%rsp), %rdi
callq 0x13a00
jmp 0x134de
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x1343c
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
jmp 0x13437
movq %rax, %r14
jmp 0x134af
movq %rax, %r14
jmp 0x1350c
jmp 0x1345f
jmp 0x1345f
jmp 0x1345f
jmp 0x1345f
jmp 0x1345f
jmp 0x1345f
jmp 0x1347a
jmp 0x1347a
jmp 0x13485
jmp 0x1345f
jmp 0x1345f
movq %rax, %r14
jmp 0x134de
movq %rax, %r14
leaq 0x460(%rsp), %rdi
callq 0x13a00
jmp 0x134ff
jmp 0x1347a
jmp 0x1347a
jmp 0x134be
movq %rax, %r14
jmp 0x13495
jmp 0x134ea
jmp 0x13485
jmp 0x13485
movq %rax, %r14
leaq 0x160(%rsp), %rdi
callq 0x6cf5c
leaq 0x120(%rsp), %rdi
callq 0x14a08
leaq 0xb8(%rsp), %rdi
callq 0x6cf5c
leaq 0x460(%rsp), %rdi
callq 0x3ccfe
jmp 0x1350c
movq %rax, %r14
jmp 0x134d1
movq %rax, %r14
pushq $0x38
popq %rsi
movq %r15, %rdi
callq 0xe460
leaq 0xe8(%rsp), %rdi
callq 0x6cf5c
leaq 0x68(%rsp), %rdi
callq 0x14a08
jmp 0x134ff
movq %rax, %r14
leaq 0xe8(%rsp), %rdi
callq 0x14a08
jmp 0x1350c
movq %rax, %r14
leaq 0xa0(%rsp), %rdi
callq 0x6cf5c
leaq 0x200(%rsp), %rdi
callq 0x3ccfe
movq %r14, %rdi
callq 0xe820