// File: /workspace/github_cpp_makefile_star2_O3/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 $0x758, %rsp            # imm = 0x758
movq 0xdf0d4(%rip), %r12     # 0xefc78
movq 0xdf0ed(%rip), %rax     # 0xefc98
movq %rax, (%rsp)
cmpl $0x2, %edi
jl 0x10f6f
movq %rsi, %rbp
movl %edi, %r13d
leaq 0x8(%rbp), %r15
leal -0x1(%r13), %ebx
movq 0x8(%rbp), %r14
cmpb $0x2d, (%r14)
jne 0x10dc9
cmpb $0x76, 0x1(%r14)
jne 0x10be6
cmpb $0x0, 0x2(%r14)
je 0x10e10
movq %r14, %rdi
leaq 0x994d0(%rip), %rsi     # 0xaa0c0
callq 0xe640
testl %eax, %eax
je 0x10df8
movq %r14, %rdi
leaq 0x994c0(%rip), %rsi     # 0xaa0c7
callq 0xe640
testl %eax, %eax
je 0x10e04
movq %r14, %rdi
leaq 0x994b8(%rip), %rsi     # 0xaa0d6
callq 0xe640
testl %eax, %eax
je 0x10e1c
movq %r14, %rdi
leaq 0x994be(%rip), %rsi     # 0xaa0f3
callq 0xe640
testl %eax, %eax
je 0x10e32
movq %r14, %rdi
leaq 0x994c7(%rip), %rsi     # 0xaa113
callq 0xe640
testl %eax, %eax
je 0x10e48
movq %r14, %rdi
leaq 0x994c8(%rip), %rsi     # 0xaa12b
callq 0xe640
testl %eax, %eax
je 0x10e64
movq %r14, %rdi
leaq 0x994c6(%rip), %rsi     # 0xaa140
callq 0xe640
testl %eax, %eax
je 0x10e82
movq %r14, %rdi
leaq 0x994b8(%rip), %rsi     # 0xaa149
callq 0xe640
testl %eax, %eax
je 0x10e9d
movq %r14, %rdi
leaq 0x994a9(%rip), %rsi     # 0xaa151
callq 0xe640
testl %eax, %eax
je 0x10eb8
movq %r14, %rdi
leaq 0x994a2(%rip), %rsi     # 0xaa161
callq 0xe640
testl %eax, %eax
je 0x10ed1
movq %r14, %rdi
leaq 0x9949e(%rip), %rsi     # 0xaa174
callq 0xe640
testl %eax, %eax
je 0x10eea
movq %r14, %rdi
leaq 0x99494(%rip), %rsi     # 0xaa181
callq 0xe640
testl %eax, %eax
je 0x10eff
movq %r14, %rdi
leaq 0x9948c(%rip), %rsi     # 0xaa190
callq 0xe640
testl %eax, %eax
je 0x10f29
movq %r14, %rdi
leaq 0x99488(%rip), %rsi     # 0xaa1a3
callq 0xe640
testl %eax, %eax
je 0x10f18
movq %r14, %rdi
leaq 0x99486(%rip), %rsi     # 0xaa1b8
callq 0xe640
testl %eax, %eax
je 0x10f32
movq %r14, %rdi
leaq 0x9947f(%rip), %rsi     # 0xaa1c8
callq 0xe640
testl %eax, %eax
jne 0x149e3
movq 0x10(%rbp), %rdi
callq 0xe580
movsd %xmm0, 0xdeec9(%rip)    # 0xefc30
movq 0x18(%rbp), %rdi
callq 0xe580
movsd %xmm0, 0xdeec0(%rip)    # 0xefc38
movq 0x20(%rbp), %rdi
callq 0xe580
movsd %xmm0, 0xdeeb7(%rip)    # 0xefc40
movq 0x28(%rbp), %rdi
callq 0xe580
movsd %xmm0, 0xdeeae(%rip)    # 0xefc48
movq 0x30(%rbp), %rdi
callq 0xe580
movsd %xmm0, 0xdeea5(%rip)    # 0xefc50
addl $-0x7, %r13d
movq 0x38(%rbp), %rdi
addq $0x38, %rbp
callq 0xe580
movsd %xmm0, 0xdee94(%rip)    # 0xefc58
jmp 0x10f12
testq %r12, %r12
je 0x10de9
cmpq $0x0, (%rsp)
jne 0x149e3
movq %r14, 0xdeeb8(%rip)     # 0xefc98
movq %r14, (%rsp)
jmp 0x10f18
movq %r14, 0xdee88(%rip)     # 0xefc78
movq %r14, %r12
jmp 0x10f18
movb $0x1, 0xdeead(%rip)     # 0xefcac
jmp 0x10f18
movb $0x1, 0xdee79(%rip)     # 0xefc84
jmp 0x10f18
movb $0x1, 0xdee91(%rip)     # 0xefca8
jmp 0x10f18
movb $0x1, 0xdee61(%rip)     # 0xefc84
movl $0x0, 0xde663(%rip)     # 0xef490
jmp 0x10f18
movb $0x1, 0xdee4b(%rip)     # 0xefc84
movl $0x1, 0xde64d(%rip)     # 0xef490
jmp 0x10f18
addl $-0x2, %r13d
movq 0x10(%rbp), %rdi
addq $0x10, %rbp
callq 0xe710
movl %eax, 0xde631(%rip)     # 0xef490
jmp 0x10f12
addl $-0x2, %r13d
movq 0x10(%rbp), %rdi
addq $0x10, %rbp
callq 0xe580
movsd %xmm0, 0xdee13(%rip)    # 0xefc90
jmp 0x10f12
addl $-0x2, %r13d
movq 0x10(%rbp), %rdi
addq $0x10, %rbp
callq 0xe580
movsd %xmm0, 0xde5fd(%rip)    # 0xef498
jmp 0x10f12
addl $-0x2, %r13d
movq 0x10(%rbp), %rdi
addq $0x10, %rbp
callq 0xe580
movsd %xmm0, 0xde5f2(%rip)    # 0xef4a8
jmp 0x10f12
addl $-0x2, %r13d
movq 0x10(%rbp), %rdi
addq $0x10, %rbp
callq 0xe710
movl %eax, 0xde5d1(%rip)     # 0xef4a0
jmp 0x10f12
addl $-0x2, %r13d
movq 0x10(%rbp), %rdi
addq $0x10, %rbp
callq 0xe710
movl %eax, 0xde5c8(%rip)     # 0xef4b0
jmp 0x10f12
addl $-0x2, %r13d
movq 0x10(%rbp), %rax
addq $0x10, %rbp
movq %rax, 0xdeda3(%rip)     # 0xefca0
jmp 0x10f12
addl $-0x2, %r13d
movq 0x10(%rbp), %rax
addq $0x10, %rbp
movq %rax, 0xded76(%rip)     # 0xefc88
movl %r13d, %ebx
movq %rbp, %r15
movq %r15, %rbp
movl %ebx, %r13d
cmpl $0x1, %ebx
jg 0x10bbe
jmp 0x10f6f
movb $0x1, 0xded50(%rip)     # 0xefc80
jmp 0x10f18
movq 0x10(%rbp), %rdi
callq 0xe580
movsd %xmm0, 0xded1d(%rip)    # 0xefc60
movq 0x18(%rbp), %rdi
callq 0xe580
movsd %xmm0, 0xded14(%rip)    # 0xefc68
addl $-0x4, %r13d
movq 0x20(%rbp), %rdi
addq $0x20, %rbp
callq 0xe580
movsd %xmm0, 0xded03(%rip)    # 0xefc70
jmp 0x10f12
testq %r12, %r12
je 0x149fe
cmpq $0x0, (%rsp)
je 0x149fe
cmpb $0x1, 0xdecfa(%rip)     # 0xefc84
jne 0x10fa8
cmpl $0x1, 0xde4fd(%rip)     # 0xef490
jne 0x10fa8
cmpl $0x2, 0xde514(%rip)     # 0xef4b0
jg 0x10fa8
movl $0x3, 0xde508(%rip)     # 0xef4b0
leaq 0x500(%rsp), %rbx
movq %rbx, %rdi
callq 0x7706c
movq %rbx, %rdi
xorl %esi, %esi
callq 0xe770
movl $0x138, %edi            # imm = 0x138
callq 0xe440
movq %rax, %rbx
movq %rax, %rdi
callq 0x234c8
movq (%rbx), %rax
movq %rbx, %rdi
movq %r12, %rsi
callq *0x180(%rax)
testl %eax, %eax
je 0x14a0e
cmpb $0x1, 0xdecb3(%rip)     # 0xefca8
jne 0x11060
leaq 0x99469(%rip), %rdi     # 0xaa467
callq 0xe700
leaq 0x500(%rsp), %rdi
callq 0x770ce
leaq 0x9920a(%rip), %rdi     # 0xaa221
movb $0x1, %al
callq 0xe070
movl 0x34(%rbx), %esi
leaq 0x99210(%rip), %rdi     # 0xaa238
xorl %eax, %eax
callq 0xe070
movl 0x24(%rbx), %esi
leaq 0x9920f(%rip), %rdi     # 0xaa248
xorl %eax, %eax
callq 0xe070
movl 0x14(%rbx), %esi
leaq 0x9920e(%rip), %rdi     # 0xaa258
xorl %eax, %eax
callq 0xe070
movq 0xddf18(%rip), %rax     # 0xeef70
movq (%rax), %rdi
callq 0xe520
movsd 0xdebc8(%rip), %xmm0    # 0xefc30
ucomisd 0xdebd8(%rip), %xmm0    # 0xefc48
ja 0x11096
movsd 0xdebbe(%rip), %xmm0    # 0xefc38
ucomisd 0xdebce(%rip), %xmm0    # 0xefc50
ja 0x11096
movsd 0xdebb4(%rip), %xmm0    # 0xefc40
ucomisd 0xdebc4(%rip), %xmm0    # 0xefc58
jbe 0x110bc
leaq 0x100(%rbx), %rsi
leaq 0xdeb8c(%rip), %rdi     # 0xefc30
callq 0x500a6
leaq 0x118(%rbx), %rsi
leaq 0xdeb91(%rip), %rdi     # 0xefc48
callq 0x500a6
movq %rbx, %rdi
callq 0x14c55
testl %eax, %eax
je 0x110d1
movb $0x1, 0xdebb1(%rip)     # 0xefc80
jmp 0x110da
cmpb $0x1, 0xdeba8(%rip)     # 0xefc80
jne 0x110e4
movl $0x1, 0xde3ac(%rip)     # 0xef490
movsd 0xde3ac(%rip), %xmm0    # 0xef498
movl 0xde3ae(%rip), %ecx     # 0xef4a0
cvttsd2si 0xde3ad(%rip), %r8d # 0xef4a8
leaq 0xdeb26(%rip), %rsi     # 0xefc28
leaq 0x2a0(%rsp), %rdi
movl $0x5, %edx
callq 0x420f6
leaq 0x20(%rsp), %rdi
callq 0x7706c
leaq 0x20(%rsp), %rdi
xorl %esi, %esi
callq 0xe770
leaq 0x2a0(%rsp), %rdi
xorpd %xmm0, %xmm0
callq 0x45a90
cmpl $0x0, 0x34(%rbx)
movq %rbx, %r12
movq %rbx, 0x10(%rsp)
jle 0x112c3
xorl %r15d, %r15d
leaq 0x2a0(%rsp), %r14
leaq 0x1c8(%rsp), %rbp
leaq 0xb8(%rsp), %rbx
movq 0x28(%r12), %rax
movq (%rax,%r15,8), %rax
movq 0x8(%rax), %rcx
movq 0x10(%rax), %r13
movq 0x18(%rax), %r12
movsd 0x18(%rcx), %xmm0
movsd 0x20(%rcx), %xmm1
movsd 0x28(%rcx), %xmm2
leaq 0x500(%rsp), %rdi
movq %r14, %rsi
callq 0x42e88
movsd 0x18(%r13), %xmm0
movsd 0x20(%r13), %xmm1
movsd 0x28(%r13), %xmm2
leaq 0xd0(%rsp), %rdi
movq %r14, %rsi
callq 0x42e88
movsd 0x18(%r12), %xmm0
movsd 0x20(%r12), %xmm1
movsd 0x28(%r12), %xmm2
leaq 0x150(%rsp), %rdi
movq %r14, %rsi
callq 0x42e88
incq %r15
xorps %xmm0, %xmm0
cvtsi2sd %r15d, %xmm0
movapd 0x500(%rsp), %xmm1
movapd 0x98e11(%rip), %xmm2    # 0xaa010
addpd %xmm2, %xmm1
cvttpd2dq %xmm1, %xmm1
movlpd %xmm1, 0x1b0(%rsp)
movsd 0x510(%rsp), %xmm1
movsd 0x98e3f(%rip), %xmm3    # 0xaa060
addsd %xmm3, %xmm1
cvttsd2si %xmm1, %eax
movl %eax, 0x1b8(%rsp)
movsd 0xe0(%rsp), %xmm1
addsd %xmm3, %xmm1
cvttsd2si %xmm1, %eax
movapd 0xd0(%rsp), %xmm1
addpd %xmm2, %xmm1
cvttpd2dq %xmm1, %xmm1
movlpd %xmm1, 0x1c8(%rsp)
movl %eax, 0x1d0(%rsp)
movapd 0x150(%rsp), %xmm1
addpd %xmm2, %xmm1
cvttpd2dq %xmm1, %xmm1
movlpd %xmm1, 0xb8(%rsp)
movsd 0x160(%rsp), %xmm1
addsd %xmm3, %xmm1
cvttsd2si %xmm1, %eax
movl %eax, 0xc0(%rsp)
movq %r14, %rdi
leaq 0x1b0(%rsp), %rsi
movq %rbp, %rdx
movq %rbx, %rcx
movl $0x2, %r8d
callq 0x481f8
movq 0x10(%rsp), %r12
movslq 0x34(%r12), %rax
cmpq %rax, %r15
jl 0x11168
leaq 0x2a0(%rsp), %rdi
callq 0x43ba8
leaq 0x2a0(%rsp), %rdi
callq 0x4386a
leaq 0x2a0(%rsp), %rdi
movsd 0x228(%rdi), %xmm0
callq 0x45f2c
cmpb $0x0, 0xde9af(%rip)     # 0xefca8
je 0x1145b
leaq 0x9916f(%rip), %rdi     # 0xaa475
callq 0xe700
leaq 0x20(%rsp), %rdi
callq 0x770ce
leaq 0x98f05(%rip), %rdi     # 0xaa221
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rbx
movl 0x238(%rbx), %esi
movl 0x23c(%rbx), %edx
movl 0x240(%rbx), %ecx
leaq 0x98f27(%rip), %rdi     # 0xaa26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%rbx), %xmm0
leaq 0x98f2a(%rip), %rdi     # 0xaa284
movb $0x1, %al
callq 0xe070
movq %rbx, %rdi
movq 0x10(%rsp), %r12
callq 0x42854
leaq 0x98f1f(%rip), %rdi     # 0xaa294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x2a0(%rsp), %rdi
movsd 0x228(%rdi), %xmm0
movsd %xmm0, (%rsp)
callq 0x42854
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movsd (%rsp), %xmm1
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
leaq 0x98ef1(%rip), %rdi     # 0xaa2a8
movb $0x1, %al
callq 0xe070
leaq 0x500(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x42796
movsd 0x500(%rsp), %xmm0
leaq 0x98ed4(%rip), %rdi     # 0xaa2b7
movb $0x1, %al
callq 0xe070
movsd 0x508(%rsp), %xmm0
leaq 0x98ecd(%rip), %rdi     # 0xaa2c7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x427fc
leaq 0x98ec2(%rip), %rdi     # 0xaa2d7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x42824
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0x11439
sqrtsd %xmm0, %xmm0
jmp 0x1143e
callq 0xe340
leaq 0x98ea1(%rip), %rdi     # 0xaa2e6
movb $0x1, %al
callq 0xe070
movq 0xddb1d(%rip), %rax     # 0xeef70
movq (%rax), %rdi
callq 0xe520
movl 0xde04f(%rip), %ebp     # 0xef4b0
testl %ebp, %ebp
jle 0x11866
leaq 0x20(%rsp), %rdi
callq 0x7706c
leaq 0x20(%rsp), %rdi
xorl %esi, %esi
callq 0xe770
leaq 0xd0(%rsp), %rdi
movq %r12, %rsi
callq 0x15d8c
movsd 0x4c8(%rsp), %xmm0
movsd %xmm0, 0x38(%rsp)
movq %r12, %rbx
addq $0xf8, %rbx
movq %rbx, %rdi
callq 0x3b0dc
movapd %xmm0, %xmm1
xorps %xmm0, %xmm0
cvtsi2sd %ebp, %xmm0
mulsd 0x38(%rsp), %xmm0
ucomisd %xmm1, %xmm0
jbe 0x114cf
movq %rbx, %rdi
callq 0x3b0dc
movl %ebp, 0x210(%rsp)
movsd 0xde7b2(%rip), %xmm1    # 0xefc90
minsd %xmm0, %xmm1
movsd %xmm1, 0x50(%rsp)
movl 0x4e0(%rsp), %ecx
testl %ecx, %ecx
jle 0x116c5
leaq 0x520(%rsp), %rbx
movq $0x0, 0x18(%rsp)
leaq 0x2a0(%rsp), %rax
movl 0x23c(%rax), %eax
leaq 0x150(%rsp), %r15
leaq 0xd0(%rsp), %r12
leaq 0x500(%rsp), %r13
testl %eax, %eax
jle 0x116b1
xorps %xmm0, %xmm0
cvtsi2sdl 0x18(%rsp), %xmm0
movsd %xmm0, 0x40(%rsp)
xorl %r14d, %r14d
movl 0x4d8(%rsp), %ecx
testl %ecx, %ecx
jle 0x1169e
xorps %xmm0, %xmm0
cvtsi2sd %r14d, %xmm0
movsd %xmm0, 0x48(%rsp)
xorl %ebp, %ebp
xorps %xmm0, %xmm0
cvtsi2sd %ebp, %xmm0
movq %r15, %rdi
leaq 0x2a0(%rsp), %rsi
movsd 0x48(%rsp), %xmm1
movsd 0x40(%rsp), %xmm2
callq 0x49388
movq 0x4d0(%rsp), %rax
movl 0x4e8(%rsp), %ecx
imull 0x18(%rsp), %ecx
movl 0x4e4(%rsp), %edx
imull %r14d, %edx
addl %ebp, %ecx
addl %edx, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movapd %xmm0, 0x1e0(%rsp)
movapd %xmm0, %xmm1
andpd 0x98a56(%rip), %xmm1    # 0xaa020
ucomisd 0x50(%rsp), %xmm1
ja 0x11686
maxsd 0x38(%rsp), %xmm1
movsd 0x50(%rsp), %xmm0
ucomisd %xmm1, %xmm0
jbe 0x11686
mulsd 0x98a74(%rip), %xmm1    # 0xaa068
movapd %xmm1, (%rsp)
movq %rbx, %rdi
callq 0x4fd3c
xorpd %xmm0, %xmm0
movq %r12, %rdi
movq %r15, %rsi
movq %r13, %rdx
movapd (%rsp), %xmm1
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x177a8
movapd (%rsp), %xmm1
cmpl $0x0, 0x500(%rsp)
je 0x115dc
movsd 0x538(%rsp), %xmm0
xorpd %xmm1, %xmm1
cmplesd 0x1e0(%rsp), %xmm1
movapd %xmm1, %xmm2
andpd %xmm0, %xmm2
xorpd 0x989dd(%rip), %xmm0    # 0xaa030
andnpd %xmm0, %xmm1
orpd %xmm2, %xmm1
movq 0x4d0(%rsp), %rax
movl 0x4e8(%rsp), %ecx
imull 0x18(%rsp), %ecx
movl 0x4e4(%rsp), %edx
imull %r14d, %edx
addl %ebp, %ecx
addl %edx, %ecx
movslq %ecx, %rcx
movlpd %xmm1, (%rax,%rcx,8)
incl %ebp
movl 0x4d8(%rsp), %ecx
cmpl %ecx, %ebp
jl 0x11567
movl 0x4dc(%rsp), %eax
incl %r14d
cmpl %eax, %r14d
jl 0x1154f
movl 0x4e0(%rsp), %ecx
movq 0x18(%rsp), %rdx
incl %edx
movq %rdx, 0x18(%rsp)
cmpl %ecx, %edx
jl 0x1152e
cmpb $0x0, 0xde5dc(%rip)     # 0xefca8
je 0x11854
leaq 0x98dbe(%rip), %rdi     # 0xaa497
callq 0xe700
leaq 0x20(%rsp), %rdi
callq 0x770ce
movl 0x210(%rsp), %ebp
leaq 0x98b2b(%rip), %rdi     # 0xaa221
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rbx
movl 0x238(%rbx), %esi
movl 0x23c(%rbx), %edx
movl 0x240(%rbx), %ecx
leaq 0x98b4d(%rip), %rdi     # 0xaa26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%rbx), %xmm0
leaq 0x98b50(%rip), %rdi     # 0xaa284
movb $0x1, %al
callq 0xe070
movq %rbx, %rdi
callq 0x42854
leaq 0x98b4a(%rip), %rdi     # 0xaa294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x2a0(%rsp), %rdi
movsd 0x228(%rdi), %xmm0
movsd %xmm0, (%rsp)
callq 0x42854
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movsd (%rsp), %xmm1
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
leaq 0x98b1c(%rip), %rdi     # 0xaa2a8
movb $0x1, %al
callq 0xe070
leaq 0x500(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x42796
movsd 0x500(%rsp), %xmm0
leaq 0x98aff(%rip), %rdi     # 0xaa2b7
movb $0x1, %al
callq 0xe070
movsd 0x508(%rsp), %xmm0
leaq 0x98af8(%rip), %rdi     # 0xaa2c7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x427fc
leaq 0x98aed(%rip), %rdi     # 0xaa2d7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x42824
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0x1180e
sqrtsd %xmm0, %xmm0
jmp 0x11813
callq 0xe340
leaq 0x98acc(%rip), %rdi     # 0xaa2e6
movb $0x1, %al
callq 0xe070
leaq 0x98acd(%rip), %rdi     # 0xaa2f5
movl %ebp, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x98adc(%rip), %rdi     # 0xaa314
movsd 0x50(%rsp), %xmm0
movb $0x1, %al
callq 0xe070
movq 0xdd724(%rip), %rax     # 0xeef70
movq (%rax), %rdi
callq 0xe520
leaq 0xd0(%rsp), %rdi
callq 0x15ea6
movq 0x10(%rsp), %r12
cmpb $0x1, 0xde417(%rip)     # 0xefc84
jne 0x132c1
leaq 0x4f0(%rsp), %rdi
callq 0x7706c
leaq 0x4f0(%rsp), %rdi
xorl %esi, %esi
callq 0xe770
movl 0xddbfb(%rip), %esi     # 0xef490
cmpl $0x1, %esi
je 0x12870
testl %esi, %esi
jne 0x14a21
leaq 0x500(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x425f6
leaq 0x500(%rsp), %rdi
xorpd %xmm0, %xmm0
callq 0x45a90
cmpl $0x0, 0x34(%r12)
movq %r12, %rcx
jle 0x12816
movsd 0x4c8(%rsp), %xmm0
movsd %xmm0, (%rsp)
xorl %r15d, %r15d
leaq 0x1b0(%rsp), %rbx
leaq 0x138(%rsp), %r12
leaq 0x500(%rsp), %r13
movq 0x28(%rcx), %rax
movq (%rax,%r15,8), %rbp
testb $0x4, 0xa8(%rbp)
jne 0x11926
movq 0x10(%rsp), %rdi
movq (%rdi), %rax
movq %rbp, %rsi
callq *0x2c8(%rax)
leaq 0x38(%rbp), %rsi
movq %rbx, %rdi
movsd (%rsp), %xmm0
callq 0x5116e
movq 0x8(%rbp), %rsi
movq 0x10(%rbp), %r14
movq 0x18(%rbp), %rbp
addq $0x18, %rsi
leaq 0x1c8(%rsp), %rdi
callq 0x4fd4e
addq $0x18, %r14
leaq 0xb8(%rsp), %rdi
movq %r14, %rsi
callq 0x4fd4e
addq $0x18, %rbp
movq %r12, %rdi
movq %rbp, %rsi
callq 0x4fd4e
leaq 0x280(%rsp), %rdi
leaq 0x1c8(%rsp), %rsi
movq %rbx, %rdx
callq 0x5075f
leaq 0x250(%rsp), %rdi
leaq 0xb8(%rsp), %rsi
movq %rbx, %rdx
callq 0x5075f
leaq 0xa0(%rsp), %rdi
movq %r12, %rsi
movq %rbx, %rdx
callq 0x5075f
movsd 0x280(%rsp), %xmm0
movsd 0x288(%rsp), %xmm1
movsd 0x290(%rsp), %xmm2
leaq 0xd0(%rsp), %rdi
movq %r13, %rsi
callq 0x42e88
movsd 0x250(%rsp), %xmm0
movsd 0x258(%rsp), %xmm1
movsd 0x260(%rsp), %xmm2
leaq 0x150(%rsp), %rdi
movq %r13, %rsi
callq 0x42e88
movsd 0xa0(%rsp), %xmm0
movsd 0xa8(%rsp), %xmm1
movsd 0xb0(%rsp), %xmm2
leaq 0x20(%rsp), %rdi
movq %r13, %rsi
callq 0x42e88
movapd 0xd0(%rsp), %xmm0
movapd 0x985c7(%rip), %xmm1    # 0xaa010
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x80(%rsp)
movsd 0xe0(%rsp), %xmm0
movsd 0x985f5(%rip), %xmm2    # 0xaa060
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x88(%rsp)
movsd 0x160(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movapd 0x150(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x1f0(%rsp)
movl %eax, 0x1f8(%rsp)
movapd 0x20(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x68(%rsp)
movsd 0x30(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x70(%rsp)
movq %r13, %rdi
leaq 0x80(%rsp), %rsi
leaq 0x1f0(%rsp), %rdx
leaq 0x68(%rsp), %rcx
movsd 0x98586(%rip), %xmm0    # 0xaa078
movl $0x2, %r8d
callq 0x481f8
incq %r15
movq 0x10(%rsp), %rcx
movslq 0x34(%rcx), %rax
cmpq %rax, %r15
jl 0x11904
testl %eax, %eax
jle 0x12816
xorl %r12d, %r12d
leaq 0x1b0(%rsp), %r14
leaq 0x1c8(%rsp), %rbp
leaq 0x500(%rsp), %r15
movq %rbp, %r13
movq 0x28(%rcx), %rax
movq %r12, 0x50(%rsp)
movq (%rax,%r12,8), %rbx
testb $0x4, 0xa8(%rbx)
jne 0x11b5f
movq 0x10(%rsp), %rdi
movq (%rdi), %rax
movq %rbx, %rsi
callq *0x2c8(%rax)
leaq 0x38(%rbx), %rsi
movq %r14, %rdi
movsd (%rsp), %xmm0
callq 0x5116e
movq %r14, %r12
movq 0x8(%rbx), %rbp
movq 0x10(%rbx), %r14
movq 0x18(%rbx), %rbx
leaq 0x18(%rbp), %rsi
movq %r13, %rdi
callq 0x4fd4e
leaq 0x18(%r14), %rsi
leaq 0xb8(%rsp), %rdi
callq 0x4fd4e
leaq 0x18(%rbx), %rsi
leaq 0x138(%rsp), %rdi
callq 0x4fd4e
testb $0x2, 0x78(%rbp)
jne 0x11bc4
movq 0x10(%rsp), %rdi
movq (%rdi), %rax
movq %rbp, %rsi
callq *0x2b0(%rax)
addq $0x30, %rbp
leaq 0x280(%rsp), %rdi
movq %rbp, %rsi
movsd (%rsp), %xmm0
callq 0x5116e
testb $0x2, 0x78(%r14)
jne 0x11bf5
movq 0x10(%rsp), %rdi
movq (%rdi), %rax
movq %r14, %rsi
callq *0x2b0(%rax)
addq $0x30, %r14
leaq 0x250(%rsp), %rdi
movq %r14, %rsi
movsd (%rsp), %xmm0
callq 0x5116e
testb $0x2, 0x78(%rbx)
movq %r13, %rbp
jne 0x11c28
movq 0x10(%rsp), %rdi
movq (%rdi), %rax
movq %rbx, %rsi
callq *0x2b0(%rax)
addq $0x30, %rbx
leaq 0xa0(%rsp), %rdi
movq %rbx, %rsi
movsd (%rsp), %xmm0
callq 0x5116e
movsd 0x1c8(%rsp), %xmm0
movsd 0x1d0(%rsp), %xmm1
movsd 0x1d8(%rsp), %xmm2
leaq 0xd0(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0xb8(%rsp), %xmm0
movsd 0xc0(%rsp), %xmm1
movsd 0xc8(%rsp), %xmm2
leaq 0x150(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0x138(%rsp), %xmm0
movsd 0x140(%rsp), %xmm1
movsd 0x148(%rsp), %xmm2
leaq 0x20(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movapd 0xd0(%rsp), %xmm0
movapd 0x98340(%rip), %xmm1    # 0xaa010
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x80(%rsp)
movsd 0xe0(%rsp), %xmm0
movsd 0x9836e(%rip), %xmm2    # 0xaa060
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x88(%rsp)
movsd 0x160(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movapd 0x150(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x1f0(%rsp)
movl %eax, 0x1f8(%rsp)
movapd 0x20(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x68(%rsp)
movsd 0x30(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x70(%rsp)
movq %r15, %rdi
leaq 0x80(%rsp), %rsi
leaq 0x1f0(%rsp), %rdx
leaq 0x68(%rsp), %rcx
movsd 0x98307(%rip), %xmm0    # 0xaa080
movl $0x2, %r8d
callq 0x481f8
leaq 0x80(%rsp), %rdi
movq %rbp, %rsi
movq %r12, %r14
movq %r12, %rdx
callq 0x50083
movq 0x50(%rsp), %r12
leaq 0xb8(%rsp), %r13
leaq 0x1f0(%rsp), %rdi
movq %r13, %rsi
movq %r14, %rdx
callq 0x50083
leaq 0x68(%rsp), %rdi
leaq 0x138(%rsp), %rsi
movq %r14, %rdx
callq 0x50083
movsd 0x80(%rsp), %xmm0
movsd 0x88(%rsp), %xmm1
movsd 0x90(%rsp), %xmm2
leaq 0xd0(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0x1f0(%rsp), %xmm0
movsd 0x1f8(%rsp), %xmm1
movsd 0x200(%rsp), %xmm2
leaq 0x150(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0x68(%rsp), %xmm0
movsd 0x70(%rsp), %xmm1
movsd 0x78(%rsp), %xmm2
leaq 0x20(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movapd 0xd0(%rsp), %xmm0
movapd 0x981bb(%rip), %xmm1    # 0xaa010
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x268(%rsp)
movsd 0xe0(%rsp), %xmm0
movsd 0x981e9(%rip), %xmm2    # 0xaa060
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x270(%rsp)
movsd 0x160(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movapd 0x150(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x190(%rsp)
movl %eax, 0x198(%rsp)
movapd 0x20(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x228(%rsp)
movsd 0x30(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x230(%rsp)
movq %r15, %rdi
leaq 0x268(%rsp), %rsi
leaq 0x190(%rsp), %rdx
leaq 0x228(%rsp), %rcx
movsd 0x98179(%rip), %xmm0    # 0xaa080
movl $0x2, %r8d
callq 0x481f8
leaq 0x1f0(%rsp), %rbx
movq %rbx, %rdi
movq %r14, %rsi
movsd 0x98138(%rip), %xmm0    # 0xaa060
callq 0x5116e
leaq 0x80(%rsp), %rdi
movq %rbp, %rsi
movq %rbx, %rdx
callq 0x50083
leaq 0x268(%rsp), %rbx
movq %rbx, %rdi
movq %r14, %rsi
movsd 0x9810a(%rip), %xmm0    # 0xaa060
callq 0x5116e
leaq 0x68(%rsp), %rdi
movq %r13, %rsi
movq %rbx, %rdx
callq 0x50083
leaq 0x228(%rsp), %rdi
movq %r14, %rsi
movsd 0x980e2(%rip), %xmm0    # 0xaa060
callq 0x5116e
leaq 0x190(%rsp), %rdi
leaq 0x138(%rsp), %rsi
leaq 0x228(%rsp), %rdx
callq 0x50083
movsd 0x80(%rsp), %xmm0
movsd 0x88(%rsp), %xmm1
movsd 0x90(%rsp), %xmm2
leaq 0xd0(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0x68(%rsp), %xmm0
movsd 0x70(%rsp), %xmm1
movsd 0x78(%rsp), %xmm2
leaq 0x150(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0x190(%rsp), %xmm0
movsd 0x198(%rsp), %xmm1
movsd 0x1a0(%rsp), %xmm2
leaq 0x20(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movapd 0xd0(%rsp), %xmm0
movapd 0x97fea(%rip), %xmm1    # 0xaa010
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x128(%rsp)
movsd 0xe0(%rsp), %xmm0
movsd 0x98018(%rip), %xmm2    # 0xaa060
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x130(%rsp)
movsd 0x160(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movapd 0x150(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x118(%rsp)
movl %eax, 0x120(%rsp)
movapd 0x20(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x108(%rsp)
movsd 0x30(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x110(%rsp)
movq %r15, %rdi
leaq 0x128(%rsp), %rsi
leaq 0x118(%rsp), %rdx
leaq 0x108(%rsp), %rcx
movsd 0x97fa8(%rip), %xmm0    # 0xaa080
movl $0x2, %r8d
callq 0x481f8
leaq 0x1f0(%rsp), %rbx
movq %rbx, %rdi
movq %r14, %rsi
movsd 0x97f8f(%rip), %xmm0    # 0xaa088
callq 0x5116e
leaq 0x80(%rsp), %rdi
movq %rbp, %rsi
movq %rbx, %rdx
callq 0x50083
leaq 0x268(%rsp), %rbx
movq %rbx, %rdi
movq %r14, %rsi
movsd 0x97f61(%rip), %xmm0    # 0xaa088
callq 0x5116e
leaq 0x68(%rsp), %rdi
movq %r13, %rsi
movq %rbx, %rdx
callq 0x50083
leaq 0x228(%rsp), %rdi
movq %r14, %rsi
movsd 0x97f39(%rip), %xmm0    # 0xaa088
callq 0x5116e
leaq 0x190(%rsp), %rdi
leaq 0x138(%rsp), %rsi
leaq 0x228(%rsp), %rdx
callq 0x50083
movsd 0x80(%rsp), %xmm0
movsd 0x88(%rsp), %xmm1
movsd 0x90(%rsp), %xmm2
leaq 0xd0(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0x68(%rsp), %xmm0
movsd 0x70(%rsp), %xmm1
movsd 0x78(%rsp), %xmm2
leaq 0x150(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0x190(%rsp), %xmm0
movsd 0x198(%rsp), %xmm1
movsd 0x1a0(%rsp), %xmm2
leaq 0x20(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movapd 0xd0(%rsp), %xmm0
movapd 0x97e19(%rip), %xmm1    # 0xaa010
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x128(%rsp)
movsd 0xe0(%rsp), %xmm0
movsd 0x97e47(%rip), %xmm2    # 0xaa060
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x130(%rsp)
movsd 0x160(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movapd 0x150(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x118(%rsp)
movl %eax, 0x120(%rsp)
movapd 0x20(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x108(%rsp)
movsd 0x30(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x110(%rsp)
movq %r15, %rdi
leaq 0x128(%rsp), %rsi
leaq 0x118(%rsp), %rdx
leaq 0x108(%rsp), %rcx
movsd 0x97dd7(%rip), %xmm0    # 0xaa080
movl $0x2, %r8d
callq 0x481f8
leaq 0x80(%rsp), %rdi
movq %rbp, %rsi
leaq 0x280(%rsp), %rdx
callq 0x50083
leaq 0x1f0(%rsp), %rdi
movq %r13, %rsi
leaq 0x250(%rsp), %rdx
callq 0x50083
leaq 0x68(%rsp), %rdi
leaq 0x138(%rsp), %rsi
leaq 0xa0(%rsp), %rdx
callq 0x50083
movsd 0x80(%rsp), %xmm0
movsd 0x88(%rsp), %xmm1
movsd 0x90(%rsp), %xmm2
leaq 0xd0(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0x1f0(%rsp), %xmm0
movsd 0x1f8(%rsp), %xmm1
movsd 0x200(%rsp), %xmm2
leaq 0x150(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0x68(%rsp), %xmm0
movsd 0x70(%rsp), %xmm1
movsd 0x78(%rsp), %xmm2
leaq 0x20(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movapd 0xd0(%rsp), %xmm0
movapd 0x97c8c(%rip), %xmm1    # 0xaa010
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x268(%rsp)
movsd 0xe0(%rsp), %xmm0
movsd 0x97cba(%rip), %xmm2    # 0xaa060
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x270(%rsp)
movsd 0x160(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movapd 0x150(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x190(%rsp)
movl %eax, 0x198(%rsp)
movapd 0x20(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x228(%rsp)
movsd 0x30(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x230(%rsp)
movq %r15, %rdi
leaq 0x268(%rsp), %rsi
leaq 0x190(%rsp), %rdx
leaq 0x228(%rsp), %rcx
movsd 0x97c4a(%rip), %xmm0    # 0xaa080
movl $0x2, %r8d
callq 0x481f8
leaq 0x1f0(%rsp), %rbx
movq %rbx, %rdi
leaq 0x280(%rsp), %rsi
movsd 0x97c04(%rip), %xmm0    # 0xaa060
callq 0x5116e
leaq 0x80(%rsp), %rdi
movq %rbp, %rsi
movq %rbx, %rdx
callq 0x50083
leaq 0x268(%rsp), %rbx
movq %rbx, %rdi
leaq 0x250(%rsp), %rsi
movsd 0x97bd1(%rip), %xmm0    # 0xaa060
callq 0x5116e
leaq 0x68(%rsp), %rdi
movq %r13, %rsi
movq %rbx, %rdx
callq 0x50083
leaq 0x228(%rsp), %rdi
leaq 0xa0(%rsp), %rsi
movsd 0x97ba4(%rip), %xmm0    # 0xaa060
callq 0x5116e
leaq 0x190(%rsp), %rdi
leaq 0x138(%rsp), %rsi
leaq 0x228(%rsp), %rdx
callq 0x50083
movsd 0x80(%rsp), %xmm0
movsd 0x88(%rsp), %xmm1
movsd 0x90(%rsp), %xmm2
leaq 0xd0(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0x68(%rsp), %xmm0
movsd 0x70(%rsp), %xmm1
movsd 0x78(%rsp), %xmm2
leaq 0x150(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0x190(%rsp), %xmm0
movsd 0x198(%rsp), %xmm1
movsd 0x1a0(%rsp), %xmm2
leaq 0x20(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movapd 0xd0(%rsp), %xmm0
movapd 0x97aac(%rip), %xmm1    # 0xaa010
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x128(%rsp)
movsd 0xe0(%rsp), %xmm0
movsd 0x97ada(%rip), %xmm2    # 0xaa060
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x130(%rsp)
movsd 0x160(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movapd 0x150(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x118(%rsp)
movl %eax, 0x120(%rsp)
movapd 0x20(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x108(%rsp)
movsd 0x30(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x110(%rsp)
movq %r15, %rdi
leaq 0x128(%rsp), %rsi
leaq 0x118(%rsp), %rdx
leaq 0x108(%rsp), %rcx
movsd 0x97a6a(%rip), %xmm0    # 0xaa080
movl $0x2, %r8d
callq 0x481f8
leaq 0x1f0(%rsp), %rbx
movq %rbx, %rdi
leaq 0x280(%rsp), %rsi
movsd 0x97a4c(%rip), %xmm0    # 0xaa088
callq 0x5116e
leaq 0x80(%rsp), %rdi
movq %rbp, %rsi
movq %rbx, %rdx
callq 0x50083
leaq 0x268(%rsp), %rbx
movq %rbx, %rdi
leaq 0x250(%rsp), %rsi
movsd 0x97a19(%rip), %xmm0    # 0xaa088
callq 0x5116e
leaq 0x68(%rsp), %rdi
movq %r13, %rsi
movq %rbx, %rdx
callq 0x50083
leaq 0x228(%rsp), %rdi
leaq 0xa0(%rsp), %rsi
movsd 0x979ec(%rip), %xmm0    # 0xaa088
callq 0x5116e
leaq 0x190(%rsp), %rdi
leaq 0x138(%rsp), %rsi
leaq 0x228(%rsp), %rdx
callq 0x50083
movsd 0x80(%rsp), %xmm0
movsd 0x88(%rsp), %xmm1
movsd 0x90(%rsp), %xmm2
leaq 0xd0(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0x68(%rsp), %xmm0
movsd 0x70(%rsp), %xmm1
movsd 0x78(%rsp), %xmm2
leaq 0x150(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movsd 0x190(%rsp), %xmm0
movsd 0x198(%rsp), %xmm1
movsd 0x1a0(%rsp), %xmm2
leaq 0x20(%rsp), %rdi
movq %r15, %rsi
callq 0x42e88
movapd 0xd0(%rsp), %xmm0
movapd 0x978cc(%rip), %xmm1    # 0xaa010
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x128(%rsp)
movsd 0xe0(%rsp), %xmm0
movsd 0x978fa(%rip), %xmm2    # 0xaa060
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x130(%rsp)
movsd 0x160(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movapd 0x150(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x118(%rsp)
movl %eax, 0x120(%rsp)
movapd 0x20(%rsp), %xmm0
addpd %xmm1, %xmm0
cvttpd2dq %xmm0, %xmm0
movlpd %xmm0, 0x108(%rsp)
movsd 0x30(%rsp), %xmm0
addsd %xmm2, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, 0x110(%rsp)
movq %r15, %rdi
leaq 0x128(%rsp), %rsi
leaq 0x118(%rsp), %rdx
leaq 0x108(%rsp), %rcx
movsd 0x9788a(%rip), %xmm0    # 0xaa080
movl $0x2, %r8d
callq 0x481f8
incq %r12
movq 0x10(%rsp), %rcx
movslq 0x34(%rcx), %rax
cmpq %rax, %r12
jl 0x11b35
movq %rcx, %r12
leaq 0x500(%rsp), %rdi
xorl %esi, %esi
callq 0x460f4
leaq 0x500(%rsp), %rdi
movsd 0x97840(%rip), %xmm1    # 0xaa078
movsd 0x97840(%rip), %xmm2    # 0xaa080
xorpd %xmm0, %xmm0
callq 0x44160
leaq 0x2a0(%rsp), %rdi
leaq 0x500(%rsp), %rsi
callq 0x45f56
leaq 0x500(%rsp), %rdi
callq 0x42652
jmp 0x12f1e
leaq 0x500(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x425f6
leaq 0x500(%rsp), %rdi
xorpd %xmm0, %xmm0
callq 0x45a90
leaq 0xb8(%rsp), %rdi
callq 0x77608
movq 0x730(%rsp), %r13
movsd 0x4c8(%rsp), %xmm0
movsd %xmm0, 0x38(%rsp)
leaq 0x150(%rsp), %rdi
movq %r12, %rsi
callq 0x15d8c
movl 0x738(%rsp), %eax
movabsq $0x3ff0000000000000, %r12 # imm = 0x3FF0000000000000
testl %eax, %eax
jle 0x12a04
xorl %ebp, %ebp
movl 0x73c(%rsp), %ecx
leaq 0xb8(%rsp), %rbx
testl %ecx, %ecx
jle 0x129fa
xorl %r14d, %r14d
movl 0x740(%rsp), %eax
movl %eax, %edx
testl %edx, %edx
jle 0x129e7
xorl %r15d, %r15d
testl %ebp, %ebp
je 0x12947
testl %r14d, %r14d
je 0x12947
movl 0x738(%rsp), %ecx
decl %ecx
cmpl %ecx, %ebp
je 0x12947
testl %r15d, %r15d
je 0x12947
movl 0x73c(%rsp), %ecx
decl %ecx
cmpl %ecx, %r14d
je 0x12947
decl %edx
cmpl %edx, %r15d
jne 0x129d0
movq 0x4d0(%rsp), %rcx
movl 0x4e8(%rsp), %edx
imull %r15d, %edx
movl 0x4e4(%rsp), %esi
imull %r14d, %esi
addl %ebp, %edx
addl %esi, %edx
movslq %edx, %rdx
movsd 0x38(%rsp), %xmm0
ucomisd (%rcx,%rdx,8), %xmm0
ja 0x129d0
movl 0x748(%rsp), %eax
imull %r15d, %eax
movl 0x744(%rsp), %ecx
imull %r14d, %ecx
addl %ebp, %eax
addl %ecx, %eax
movslq %eax, %r12
leaq (,%r12,8), %rsi
addq %r13, %rsi
movl 0xc4(%rsp), %edx
movq %rbx, %rdi
callq 0x7769e
movq 0x730(%rsp), %rax
movabsq $0x3ff0000000000000, %rcx # imm = 0x3FF0000000000000
movq %rcx, (%rax,%r12,8)
movq %rcx, %r12
movl 0x740(%rsp), %eax
incl %r15d
movl %eax, %edx
cmpl %eax, %r15d
jl 0x12913
movl 0x73c(%rsp), %ecx
movl %eax, %edx
incl %r14d
cmpl %ecx, %r14d
jl 0x12908
movl 0x738(%rsp), %eax
incl %ebp
cmpl %eax, %ebp
jl 0x128f4
movl 0xc4(%rsp), %eax
testl %eax, %eax
je 0x12e9f
movsd 0x97655(%rip), %xmm0    # 0xaa070
mulsd 0x38(%rsp), %xmm0
movsd 0x97637(%rip), %xmm1    # 0xaa060
movsd %xmm0, 0x40(%rsp)
mulsd %xmm0, %xmm1
movsd %xmm1, 0x1a8(%rsp)
movq %r13, 0x298(%rsp)
movq 0xb8(%rsp), %rcx
movslq %eax, %rsi
movq -0x8(%rcx,%rsi,8), %rbx
decl %esi
leaq 0xb8(%rsp), %rdi
callq 0x77828
subq %r13, %rbx
shrq $0x3, %rbx
movl %ebx, %eax
cltd
idivl 0x748(%rsp)
movl %eax, %esi
movl %edx, %eax
movl 0x744(%rsp), %ecx
cltd
idivl %ecx
movl %eax, %edi
movl %ebx, %eax
cltd
idivl %ecx
movl %edx, %ebx
xorps %xmm0, %xmm0
cvtsi2sd %edx, %xmm0
movl %edi, 0x1e0(%rsp)
xorps %xmm1, %xmm1
cvtsi2sd %edi, %xmm1
movl %esi, 0x48(%rsp)
xorps %xmm2, %xmm2
cvtsi2sd %esi, %xmm2
leaq 0x20(%rsp), %rdi
leaq 0x500(%rsp), %rsi
callq 0x49388
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, 0x20c(%rsp)
movl %eax, %esi
addl 0x48(%rsp), %esi
js 0x12e7e
cmpl 0x740(%rsp), %esi
jge 0x12e7e
movl 0x20c(%rsp), %eax
imull %eax, %eax
movl %eax, 0x24c(%rsp)
xorps %xmm0, %xmm0
cvtsi2sd %esi, %xmm0
movsd %xmm0, 0x220(%rsp)
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %esi, 0x18(%rsp)
movl %eax, 0x210(%rsp)
movl %eax, %edi
addl 0x1e0(%rsp), %edi
js 0x12e6c
cmpl 0x73c(%rsp), %edi
jge 0x12e6c
movl 0x210(%rsp), %eax
imull %eax, %eax
addl 0x24c(%rsp), %eax
movl %eax, 0x9c(%rsp)
xorps %xmm0, %xmm0
cvtsi2sd %edi, %xmm0
movsd %xmm0, 0x240(%rsp)
movl $0xffffffff, %r14d      # imm = 0xFFFFFFFF
movl %edi, 0x50(%rsp)
movl %r14d, %ebp
addl %ebx, %ebp
js 0x12e0c
cmpl 0x738(%rsp), %ebp
jge 0x12e0c
movq 0x730(%rsp), %rax
movl 0x748(%rsp), %ecx
imull %esi, %ecx
movl 0x744(%rsp), %edx
imull %edi, %edx
addl %ebp, %ecx
addl %edx, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
ucomisd 0x97507(%rip), %xmm0    # 0xaa0b0
ja 0x12e0c
movq 0x4d0(%rsp), %rax
movl 0x4e8(%rsp), %ecx
imull 0x48(%rsp), %ecx
movl 0x4e4(%rsp), %edx
imull 0x1e0(%rsp), %edx
addl %ebx, %ecx
addl %edx, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm2
movsd 0x40(%rsp), %xmm0
ucomisd %xmm2, %xmm0
jbe 0x12dbe
movl %r14d, %eax
imull %r14d, %eax
addl 0x9c(%rsp), %eax
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movsd 0x38(%rsp), %xmm1
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
ucomisd 0x97497(%rip), %xmm0    # 0xaa0b0
jb 0x12c21
sqrtsd %xmm0, %xmm0
jmp 0x12c38
movsd %xmm2, (%rsp)
callq 0xe340
movsd (%rsp), %xmm2
movl 0x50(%rsp), %edi
movl 0x18(%rsp), %esi
ucomisd %xmm2, %xmm0
jbe 0x12dbe
xorps %xmm0, %xmm0
cvtsi2sd %ebp, %xmm0
leaq 0x1b0(%rsp), %r15
movq %r15, %rdi
leaq 0x500(%rsp), %rsi
movsd 0x240(%rsp), %xmm1
movsd 0x220(%rsp), %xmm2
callq 0x49388
leaq 0xd0(%rsp), %r12
movq %r12, %rdi
leaq 0x20(%rsp), %rsi
movq %r15, %rdx
callq 0x5073c
leaq 0x1c8(%rsp), %rdi
movq %r12, %rsi
movsd 0x973c2(%rip), %xmm0    # 0xaa060
callq 0x50782
leaq 0x138(%rsp), %r15
movq %r15, %rdi
callq 0x77608
xorpd %xmm0, %xmm0
leaq 0x150(%rsp), %rdi
leaq 0x1c8(%rsp), %rsi
movq %r15, %rdx
movsd 0x1a8(%rsp), %xmm1
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x18888
cmpl $0x0, 0x144(%rsp)
jle 0x12d97
xorl %r13d, %r13d
movq 0x138(%rsp), %rax
movq (%rax,%r13,8), %r12
movq 0x18(%r12), %r15
testb $0x4, 0xa8(%r15)
jne 0x12d1a
movq 0x10(%rsp), %rdi
movq (%rdi), %rax
movq %r15, %rsi
callq *0x2c8(%rax)
addq $0x38, %r15
leaq 0xd0(%rsp), %rdi
movq %r15, %rsi
callq 0x4e832
movl $0x40, %esi
movq %r12, %rdi
callq 0xe450
leaq 0xd0(%rsp), %r15
movq %r15, %rdi
leaq 0x20(%rsp), %rsi
callq 0x2094b
movsd %xmm0, (%rsp)
movq %r15, %rdi
leaq 0x1b0(%rsp), %rsi
callq 0x2094b
movsd (%rsp), %xmm1
mulsd %xmm0, %xmm1
leaq 0xdce33(%rip), %rax     # 0xefba8
movsd (%rax), %xmm0
incq %r13
ucomisd %xmm1, %xmm0
jae 0x12e1b
movslq 0x144(%rsp), %rax
cmpq %rax, %r13
jl 0x12cee
leaq 0x138(%rsp), %rdi
callq 0x77672
movq 0x298(%rsp), %r13
movabsq $0x3ff0000000000000, %r12 # imm = 0x3FF0000000000000
movl 0x18(%rsp), %esi
movl 0x50(%rsp), %edi
movl 0x748(%rsp), %eax
imull %esi, %eax
movl 0x744(%rsp), %ecx
imull %edi, %ecx
addl %ebp, %eax
addl %ecx, %eax
movslq %eax, %r15
leaq (,%r15,8), %rsi
addq %r13, %rsi
movl 0xc4(%rsp), %edx
leaq 0xb8(%rsp), %rdi
callq 0x7769e
movq 0x730(%rsp), %rax
movq %r12, (%rax,%r15,8)
movl 0x18(%rsp), %esi
movl 0x50(%rsp), %edi
incl %r14d
cmpl $0x2, %r14d
jne 0x12b61
jmp 0x12e6c
movslq 0x144(%rsp), %rax
cmpq %rax, %r13
jge 0x12e4b
movq 0x138(%rsp), %rax
movq (%rax,%r13,8), %rdi
movl $0x40, %esi
callq 0xe450
incq %r13
cmpl %r13d, 0x144(%rsp)
jg 0x12e28
leaq 0x138(%rsp), %rdi
callq 0x77672
movq 0x298(%rsp), %r13
movabsq $0x3ff0000000000000, %r12 # imm = 0x3FF0000000000000
jmp 0x12e04
movl 0x210(%rsp), %eax
incl %eax
cmpl $0x2, %eax
jne 0x12b0c
movl 0x20c(%rsp), %eax
incl %eax
cmpl $0x2, %eax
jne 0x12ac2
movl 0xc4(%rsp), %eax
testl %eax, %eax
jne 0x12a44
leaq 0x500(%rsp), %rdi
movsd 0x971c9(%rip), %xmm1    # 0xaa078
movsd 0x971c9(%rip), %xmm2    # 0xaa080
xorpd %xmm0, %xmm0
callq 0x44160
leaq 0x2a0(%rsp), %rdi
leaq 0x500(%rsp), %rsi
callq 0x45f56
cmpb $0x1, 0xdcdd0(%rip)     # 0xefcac
jne 0x12ef2
leaq 0x97478(%rip), %rsi     # 0xaa35d
leaq 0x500(%rsp), %rdi
callq 0x4b2c4
leaq 0x150(%rsp), %rdi
callq 0x15ea6
leaq 0xb8(%rsp), %rdi
callq 0x77672
leaq 0x500(%rsp), %rdi
callq 0x42652
movq 0x10(%rsp), %r12
cmpb $0x1, 0xdcd83(%rip)     # 0xefca8
jne 0x1308a
leaq 0x97587(%rip), %rdi     # 0xaa4b9
callq 0xe700
leaq 0x4f0(%rsp), %rdi
callq 0x770ce
leaq 0x972d6(%rip), %rdi     # 0xaa221
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rbx
movl 0x238(%rbx), %esi
movl 0x23c(%rbx), %edx
movl 0x240(%rbx), %ecx
leaq 0x972f8(%rip), %rdi     # 0xaa26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%rbx), %xmm0
leaq 0x972fb(%rip), %rdi     # 0xaa284
movb $0x1, %al
callq 0xe070
movq %rbx, %rdi
movq 0x10(%rsp), %r12
callq 0x42854
leaq 0x972f0(%rip), %rdi     # 0xaa294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x2a0(%rsp), %rdi
movsd 0x228(%rdi), %xmm0
movsd %xmm0, (%rsp)
callq 0x42854
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movsd (%rsp), %xmm1
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
leaq 0x972c2(%rip), %rdi     # 0xaa2a8
movb $0x1, %al
callq 0xe070
leaq 0x500(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x42796
movsd 0x500(%rsp), %xmm0
leaq 0x972a5(%rip), %rdi     # 0xaa2b7
movb $0x1, %al
callq 0xe070
movsd 0x508(%rsp), %xmm0
leaq 0x9729e(%rip), %rdi     # 0xaa2c7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x427fc
leaq 0x97293(%rip), %rdi     # 0xaa2d7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x42824
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0x13068
sqrtsd %xmm0, %xmm0
jmp 0x1306d
callq 0xe340
leaq 0x97272(%rip), %rdi     # 0xaa2e6
movb $0x1, %al
callq 0xe070
movq 0xdbeee(%rip), %rax     # 0xeef70
movq (%rax), %rdi
callq 0xe520
movb 0xdcbef(%rip), %bpl     # 0xefc80
xorb $0x1, %bpl
andb 0xdcbe8(%rip), %bpl     # 0xefc84
testb $0x1, %bpl
je 0x132c1
leaq 0xd0(%rsp), %rdi
callq 0x7706c
leaq 0xd0(%rsp), %rdi
xorl %esi, %esi
callq 0xe770
leaq 0x500(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x425f6
leaq 0x983b2(%rip), %rax     # 0xab490
xorps %xmm2, %xmm2
cvtss2sd (%rax), %xmm2
leaq 0x500(%rsp), %rdi
xorpd %xmm0, %xmm0
xorpd %xmm1, %xmm1
callq 0x44160
leaq 0x500(%rsp), %rdi
callq 0x43ba8
leaq 0x500(%rsp), %rdi
callq 0x4386a
movsd 0x4c8(%rsp), %xmm0
leaq 0x500(%rsp), %rdi
callq 0x45f2c
leaq 0x500(%rsp), %rdi
callq 0x438e6
movslq 0x4ec(%rsp), %rax
testq %rax, %rax
jle 0x13177
movq 0x4d0(%rsp), %rcx
movq 0x730(%rsp), %rdx
xorl %esi, %esi
xorpd %xmm0, %xmm0
movsd (%rcx,%rsi,8), %xmm1
ucomisd %xmm0, %xmm1
jae 0x1316f
movsd (%rdx,%rsi,8), %xmm1
movsd %xmm1, (%rcx,%rsi,8)
incq %rsi
cmpq %rsi, %rax
jne 0x1315a
cmpb $0x0, 0xdcb2a(%rip)     # 0xefca8
je 0x132e7
leaq 0x97341(%rip), %rdi     # 0xaa4cc
callq 0xe700
leaq 0xd0(%rsp), %rdi
callq 0x770ce
leaq 0x9707d(%rip), %rdi     # 0xaa221
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rbx
movl 0x238(%rbx), %esi
movl 0x23c(%rbx), %edx
movl 0x240(%rbx), %ecx
leaq 0x9709f(%rip), %rdi     # 0xaa26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%rbx), %xmm0
leaq 0x970a2(%rip), %rdi     # 0xaa284
movb $0x1, %al
callq 0xe070
movq %rbx, %rdi
movq 0x10(%rsp), %r12
callq 0x42854
leaq 0x97097(%rip), %rdi     # 0xaa294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x2a0(%rsp), %rdi
movsd 0x228(%rdi), %xmm0
movsd %xmm0, (%rsp)
callq 0x42854
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movsd (%rsp), %xmm1
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
leaq 0x97069(%rip), %rdi     # 0xaa2a8
movb $0x1, %al
callq 0xe070
leaq 0x150(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x42796
movsd 0x150(%rsp), %xmm0
leaq 0x9704c(%rip), %rdi     # 0xaa2b7
movb $0x1, %al
callq 0xe070
movsd 0x158(%rsp), %xmm0
leaq 0x97045(%rip), %rdi     # 0xaa2c7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x427fc
leaq 0x9703a(%rip), %rdi     # 0xaa2d7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x42824
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0x132c5
sqrtsd %xmm0, %xmm0
jmp 0x132ca
xorl %ebp, %ebp
jmp 0x132f4
callq 0xe340
leaq 0x97015(%rip), %rdi     # 0xaa2e6
movb $0x1, %al
callq 0xe070
movq 0xdbc91(%rip), %rax     # 0xeef70
movq (%rax), %rdi
callq 0xe520
leaq 0x500(%rsp), %rdi
callq 0x42652
leaq 0xa0(%rsp), %rdi
callq 0x77608
cmpq $0x0, 0xdc97f(%rip)     # 0xefc88
sete %al
movl %ebp, %ecx
notb %cl
testb %al, %cl
jne 0x13869
leaq 0x1b0(%rsp), %rdi
callq 0x7706c
leaq 0x1b0(%rsp), %rdi
xorl %esi, %esi
callq 0xe770
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
callq 0x15d8c
movl %ebp, 0x210(%rsp)
movsd 0x4c8(%rsp), %xmm0
movsd %xmm0, (%rsp)
movl 0x4e0(%rsp), %ecx
testl %ecx, %ecx
jle 0x1358b
xorps %xmm0, %xmm0
cvtsi2sdl 0xdc140(%rip), %xmm0 # 0xef4b0
movsd (%rsp), %xmm1
mulsd %xmm1, %xmm0
maxsd %xmm0, %xmm1
movsd %xmm1, 0x18(%rsp)
xorl %ebx, %ebx
leaq 0x2a0(%rsp), %rax
movl 0x23c(%rax), %eax
leaq 0xd0(%rsp), %r14
leaq 0x500(%rsp), %r12
leaq 0xa0(%rsp), %r13
testl %eax, %eax
jle 0x13581
xorps %xmm0, %xmm0
cvtsi2sd %ebx, %xmm0
movsd %xmm0, 0x40(%rsp)
xorl %ebp, %ebp
movl 0x4d8(%rsp), %ecx
movq %rbx, 0x38(%rsp)
testl %ecx, %ecx
jle 0x13570
xorps %xmm0, %xmm0
cvtsi2sd %ebp, %xmm0
movsd %xmm0, 0x1e0(%rsp)
xorl %r15d, %r15d
movl %ebp, 0x48(%rsp)
movq 0x4d0(%rsp), %rax
movl 0x4e8(%rsp), %edx
imull %ebx, %edx
movl 0x4e4(%rsp), %esi
imull %ebp, %esi
addl %r15d, %edx
addl %esi, %edx
movslq %edx, %rdx
movsd (%rax,%rdx,8), %xmm1
xorpd %xmm0, %xmm0
ucomisd %xmm1, %xmm0
ja 0x1355d
movsd %xmm1, 0x50(%rsp)
ucomisd 0x18(%rsp), %xmm1
ja 0x1355d
movq %r14, %rdi
callq 0x77608
xorps %xmm0, %xmm0
cvtsi2sd %r15d, %xmm0
movq %r12, %rdi
leaq 0x2a0(%rsp), %rsi
movsd 0x1e0(%rsp), %xmm1
movsd 0x40(%rsp), %xmm2
callq 0x49388
leaq 0xdc73c(%rip), %rax     # 0xefba8
movsd 0x50(%rsp), %xmm1
addsd (%rax), %xmm1
xorpd %xmm0, %xmm0
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
movq %r14, %rdx
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x18888
cmpl $0x0, 0xdc(%rsp)
jle 0x13535
xorl %r14d, %r14d
movq 0xd0(%rsp), %rax
movq (%rax,%r14,8), %rbp
movl $0x38, %edi
callq 0xe440
movq %rax, %rbx
movq 0x18(%rbp), %r12
testb $0x4, 0xa8(%r12)
jne 0x134d9
movq 0x10(%rsp), %rdi
movq (%rdi), %rax
movq %r12, %rsi
callq *0x2c8(%rax)
leaq 0x20(%rbp), %rsi
movq %rbx, %rdi
callq 0x4fd4e
addq $0x38, %r12
movq %rbx, %rdi
addq $0x18, %rdi
movq %r12, %rsi
callq 0x507e2
movsd (%rsp), %xmm0
movsd %xmm0, 0x30(%rbx)
movl 0xac(%rsp), %edx
movq %r13, %rdi
movq %rbx, %rsi
callq 0x7769e
movl $0x40, %esi
movq %rbp, %rdi
callq 0xe450
incq %r14
movslq 0xdc(%rsp), %rax
cmpq %rax, %r14
jl 0x134a0
leaq 0xd0(%rsp), %r14
movq %r14, %rdi
callq 0x77672
movl 0x4d8(%rsp), %ecx
movq 0x38(%rsp), %rbx
leaq 0x500(%rsp), %r12
movl 0x48(%rsp), %ebp
incl %r15d
cmpl %ecx, %r15d
jl 0x133ed
movl 0x4dc(%rsp), %eax
incl %ebp
cmpl %eax, %ebp
jl 0x133ce
movl 0x4e0(%rsp), %ecx
incl %ebx
cmpl %ecx, %ebx
jl 0x133ab
leaq 0xd0(%rsp), %rdi
xorpd %xmm0, %xmm0
xorpd %xmm1, %xmm1
xorps %xmm2, %xmm2
callq 0x4fd3e
leaq 0xe8(%rsp), %rdi
xorpd %xmm0, %xmm0
xorpd %xmm1, %xmm1
xorps %xmm2, %xmm2
callq 0x507d2
movq $0x0, 0x100(%rsp)
leaq 0x500(%rsp), %rdi
leaq 0xa0(%rsp), %rsi
xorl %edx, %edx
callq 0x14c92
cmpl $0x0, 0xac(%rsp)
jle 0x136bd
movsd 0x96a6c(%rip), %xmm1    # 0xaa060
movsd (%rsp), %xmm0
mulsd %xmm0, %xmm1
movsd %xmm1, 0x50(%rsp)
mulsd 0x96a85(%rip), %xmm0    # 0xaa090
movsd %xmm0, (%rsp)
xorl %r13d, %r13d
leaq 0x1c8(%rsp), %rbx
leaq 0x500(%rsp), %r14
leaq 0x150(%rsp), %r15
movq 0xa0(%rsp), %rax
movq (%rax,%r13,8), %r12
movq %rbx, %rdi
callq 0x77608
movsd 0x50(%rsp), %xmm0
movsd %xmm0, 0x30(%r12)
xorpd %xmm0, %xmm0
movq %r14, %rdi
movq %r12, %rsi
movsd (%rsp), %xmm1
movl $0x6, %edx
movq %rbx, %rcx
movq %r15, %r8
callq 0x14dc0
testl %eax, %eax
je 0x136a1
movslq 0x1d4(%rsp), %rax
testq %rax, %rax
je 0x136a1
movsd 0x148(%rsp,%rax,8), %xmm0
mulsd 0x969d3(%rip), %xmm0    # 0xaa060
movsd 0x30(%r12), %xmm1
ucomisd %xmm0, %xmm1
jbe 0x136a1
movsd %xmm0, 0x30(%r12)
movq %rbx, %rdi
callq 0x77672
incq %r13
movslq 0xac(%rsp), %rax
cmpq %rax, %r13
jl 0x1362b
cmpb $0x0, 0xdc5e4(%rip)     # 0xefca8
movl 0x210(%rsp), %ebp
je 0x13718
leaq 0x96e20(%rip), %rdi     # 0xaa4f4
callq 0xe700
leaq 0x1b0(%rsp), %rdi
callq 0x770ce
leaq 0x96b34(%rip), %rdi     # 0xaa221
movb $0x1, %al
callq 0xe070
movl 0xac(%rsp), %esi
leaq 0x96c64(%rip), %rdi     # 0xaa366
xorl %eax, %eax
callq 0xe070
movq 0xdb860(%rip), %rax     # 0xeef70
movq (%rax), %rdi
callq 0xe520
leaq 0x500(%rsp), %rdi
callq 0x14ec0
leaq 0x20(%rsp), %rdi
callq 0x15ea6
movq 0xdc552(%rip), %rbx     # 0xefc88
testq %rbx, %rbx
je 0x13869
cmpl $0x0, 0xac(%rsp)
je 0x13869
leaq 0xd0(%rsp), %rdi
callq 0x7706c
leaq 0xd0(%rsp), %rdi
xorl %esi, %esi
callq 0xe770
movq 0xdc518(%rip), %rdi     # 0xefc88
leaq 0x96c1b(%rip), %rsi     # 0xaa392
callq 0xe530
testq %rax, %rax
je 0x13fb2
movq %rax, %r14
cmpl $0x0, 0xac(%rsp)
jle 0x13808
xorl %r12d, %r12d
leaq 0x500(%rsp), %r15
movq 0xa0(%rsp), %rax
movq (%rax,%r12,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, 0x500(%rsp)
movupd 0x20(%rax), %xmm0
cvtpd2ps %xmm0, %xmm0
movlpd %xmm0, 0x510(%rsp)
movl $0x4, %esi
movl $0x6, %edx
movq %r15, %rdi
movq %r14, %rcx
callq 0xe8c0
cmpq $0x6, %rax
jne 0x149d0
incq %r12
movslq 0xac(%rsp), %rax
cmpq %rax, %r12
jl 0x1379d
movq %r14, %rdi
callq 0xe430
cmpb $0x1, 0xdc491(%rip)     # 0xefca8
jne 0x13869
leaq 0x96bbd(%rip), %rdi     # 0xaa3dd
movq %rbx, %rsi
xorl %eax, %eax
callq 0xe070
leaq 0xd0(%rsp), %rdi
callq 0x770ce
leaq 0x969e3(%rip), %rdi     # 0xaa221
movb $0x1, %al
callq 0xe070
movl 0xac(%rsp), %esi
leaq 0x96b13(%rip), %rdi     # 0xaa366
xorl %eax, %eax
callq 0xe070
movq 0xdb70f(%rip), %rax     # 0xeef70
movq (%rax), %rdi
callq 0xe520
testb $0x1, %bpl
je 0x14031
cmpl $0x0, 0xac(%rsp)
setne %al
movl 0xdbc2c(%rip), %ebx     # 0xef4b0
testl %ebx, %ebx
setg %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0x14031
leaq 0x250(%rsp), %rdi
callq 0x7706c
leaq 0x250(%rsp), %rdi
xorl %esi, %esi
callq 0xe770
leaq 0xd0(%rsp), %rdi
xorpd %xmm0, %xmm0
xorpd %xmm1, %xmm1
xorps %xmm2, %xmm2
callq 0x4fd3e
leaq 0xe8(%rsp), %rdi
xorpd %xmm0, %xmm0
xorpd %xmm1, %xmm1
xorps %xmm2, %xmm2
callq 0x507d2
movq $0x0, 0x100(%rsp)
leaq 0x500(%rsp), %rdi
leaq 0xa0(%rsp), %rsi
xorl %edx, %edx
callq 0x14c92
movsd 0x4c8(%rsp), %xmm0
movsd %xmm0, 0x1e0(%rsp)
leaq 0x20(%rsp), %rdi
xorpd %xmm0, %xmm0
xorpd %xmm1, %xmm1
xorps %xmm2, %xmm2
callq 0x4fd3e
movl 0x4d8(%rsp), %eax
decl %eax
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movl 0x4dc(%rsp), %eax
decl %eax
xorps %xmm1, %xmm1
cvtsi2sd %eax, %xmm1
movl 0x4e0(%rsp), %eax
decl %eax
xorps %xmm2, %xmm2
cvtsi2sd %eax, %xmm2
leaq 0x1b0(%rsp), %rdi
callq 0x4fd3e
movsd 0x20(%rsp), %xmm0
movsd 0x28(%rsp), %xmm1
movsd 0x30(%rsp), %xmm2
leaq 0x1c8(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x49388
movsd 0x1b0(%rsp), %xmm0
movsd 0x1b8(%rsp), %xmm1
movsd 0x1c0(%rsp), %xmm2
leaq 0xb8(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x49388
leaq 0x150(%rsp), %rdi
leaq 0x1c8(%rsp), %rsi
leaq 0xb8(%rsp), %rdx
callq 0x3aada
leaq 0x150(%rsp), %rdi
callq 0x3b0dc
movsd %xmm0, 0x50(%rsp)
xorps %xmm0, %xmm0
cvtsi2sd %ebx, %xmm0
mulsd 0x1e0(%rsp), %xmm0
movsd %xmm0, (%rsp)
leaq 0x150(%rsp), %rdi
callq 0x3b8a8
movsd (%rsp), %xmm1
ucomisd 0x50(%rsp), %xmm1
jbe 0x13b0b
leaq 0x20(%rsp), %rdi
xorpd %xmm0, %xmm0
xorpd %xmm1, %xmm1
xorps %xmm2, %xmm2
callq 0x4fd3e
movl 0x4d8(%rsp), %eax
decl %eax
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movl 0x4dc(%rsp), %eax
decl %eax
xorps %xmm1, %xmm1
cvtsi2sd %eax, %xmm1
movl 0x4e0(%rsp), %eax
decl %eax
xorps %xmm2, %xmm2
cvtsi2sd %eax, %xmm2
leaq 0x1b0(%rsp), %rdi
callq 0x4fd3e
movsd 0x20(%rsp), %xmm0
movsd 0x28(%rsp), %xmm1
movsd 0x30(%rsp), %xmm2
leaq 0x1c8(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x49388
movsd 0x1b0(%rsp), %xmm0
movsd 0x1b8(%rsp), %xmm1
movsd 0x1c0(%rsp), %xmm2
leaq 0xb8(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x49388
leaq 0x150(%rsp), %rdi
leaq 0x1c8(%rsp), %rsi
leaq 0xb8(%rsp), %rdx
callq 0x3aada
leaq 0x150(%rsp), %rdi
callq 0x3b0dc
movsd %xmm0, (%rsp)
leaq 0x150(%rsp), %rdi
callq 0x3b8a8
movsd (%rsp), %xmm1
movl %ebx, 0x38(%rsp)
movsd 0xdc179(%rip), %xmm0    # 0xefc90
minsd %xmm1, %xmm0
movl 0x4e0(%rsp), %eax
testl %eax, %eax
movapd %xmm0, 0x210(%rsp)
jle 0x13e02
movapd 0x964f5(%rip), %xmm1    # 0xaa030
xorpd %xmm0, %xmm1
movapd %xmm1, 0x50(%rsp)
movq $0x0, 0x48(%rsp)
leaq 0x2a0(%rsp), %rcx
movl 0x23c(%rcx), %ecx
xorl %ebx, %ebx
testl %ecx, %ecx
jle 0x13df6
xorps %xmm0, %xmm0
cvtsi2sd %ebx, %xmm0
movsd %xmm0, 0x18(%rsp)
xorl %ebp, %ebp
movl 0x4d8(%rsp), %eax
testl %eax, %eax
jle 0x13de5
xorps %xmm0, %xmm0
cvtsi2sd %ebp, %xmm0
movsd %xmm0, 0x10(%rsp)
movq 0x4d0(%rsp), %rcx
movl 0x4e8(%rsp), %edx
xorl %r14d, %r14d
movl 0x4e4(%rsp), %esi
movl %ebx, %edi
imull %edx, %edi
movl %ebp, %r8d
imull %esi, %r8d
addl %edi, %r8d
addl %r14d, %r8d
movslq %r8d, %rdi
movsd (%rcx,%rdi,8), %xmm1
ucomisd 0x964e4(%rip), %xmm1    # 0xaa0b0
jae 0x13dd2
movapd 0x50(%rsp), %xmm0
ucomisd %xmm1, %xmm0
ja 0x13dd2
movapd %xmm1, (%rsp)
xorps %xmm0, %xmm0
cvtsi2sd %r14d, %xmm0
leaq 0x20(%rsp), %r15
movq %r15, %rdi
leaq 0x2a0(%rsp), %rsi
movsd 0x10(%rsp), %xmm1
movsd 0x18(%rsp), %xmm2
callq 0x49388
movapd (%rsp), %xmm1
andpd 0x96403(%rip), %xmm1    # 0xaa020
addsd 0x1e0(%rsp), %xmm1
xorpd %xmm0, %xmm0
leaq 0x500(%rsp), %rdi
movq %r15, %rsi
xorl %edx, %edx
callq 0x15826
movq %rax, %r13
testq %rax, %rax
je 0x13d89
leaq 0x1b0(%rsp), %rdi
movq %r13, %rsi
callq 0x4fd4e
movq %r13, %rdx
addq $0x18, %rdx
leaq 0x150(%rsp), %rdi
movq %r13, %rsi
callq 0x4e8be
leaq 0x1c8(%rsp), %r15
movq %r15, %rdi
leaq 0x20(%rsp), %rsi
callq 0x4fd4e
movq %r15, %rdi
leaq 0x150(%rsp), %rsi
callq 0x500c6
leaq 0xb8(%rsp), %r12
movq %r12, %rdi
movq %r15, %rsi
movq %r13, %rdx
callq 0x4ff9a
movq %r12, %rdi
callq 0x508d8
leaq 0xdbeef(%rip), %rax     # 0xefba8
ucomisd (%rax), %xmm0
jbe 0x13d22
leaq 0xb8(%rsp), %r15
movq %r15, %rdi
movsd %xmm0, 0x40(%rsp)
callq 0x513a4
movsd 0x40(%rsp), %xmm1
movsd 0x30(%r13), %xmm0
minsd %xmm1, %xmm0
leaq 0x280(%rsp), %rdi
movq %r15, %rsi
callq 0x5116e
leaq 0x138(%rsp), %rdi
movq %r13, %rsi
leaq 0x280(%rsp), %rdx
callq 0x50083
leaq 0x1b0(%rsp), %rdi
leaq 0x138(%rsp), %rsi
callq 0x500a6
leaq 0x20(%rsp), %rdi
leaq 0x1b0(%rsp), %rsi
callq 0x20738
movapd %xmm0, %xmm1
xorpd 0x962f0(%rip), %xmm1    # 0xaa030
movapd (%rsp), %xmm2
cmpltsd 0x96362(%rip), %xmm2    # 0xaa0b0
andpd %xmm2, %xmm1
andnpd %xmm0, %xmm2
orpd %xmm1, %xmm2
movq 0x4d0(%rsp), %rcx
movl 0x4e8(%rsp), %edx
movl 0x4e4(%rsp), %esi
movl %ebx, %eax
imull %edx, %eax
movl %ebp, %edi
imull %esi, %edi
addl %eax, %edi
addl %r14d, %edi
movslq %edi, %rax
movlpd %xmm2, (%rcx,%rax,8)
jmp 0x13dcb
movq 0x4d0(%rsp), %rcx
movl 0x4e8(%rsp), %edx
movl 0x4e4(%rsp), %esi
movl %ebx, %eax
imull %edx, %eax
movl %ebp, %edi
imull %esi, %edi
addl %eax, %edi
addl %r14d, %edi
movslq %edi, %rax
movabsq $-0x3810000020000000, %rdi # imm = 0xC7EFFFFFE0000000
movq %rdi, (%rcx,%rax,8)
movq 0x48(%rsp), %rax
incl %eax
movq %rax, 0x48(%rsp)
movl 0x4d8(%rsp), %eax
incl %r14d
cmpl %eax, %r14d
jl 0x13baa
movl 0x4dc(%rsp), %ecx
incl %ebp
cmpl %ecx, %ebp
jl 0x13b7c
movl 0x4e0(%rsp), %eax
incl %ebx
cmpl %eax, %ebx
jl 0x13b5e
jmp 0x13e0b
movq $0x0, 0x48(%rsp)
leaq 0x2a0(%rsp), %rdi
movsd 0x9627d(%rip), %xmm1    # 0xaa098
xorpd %xmm0, %xmm0
callq 0x45b34
leaq 0x2a0(%rsp), %rdi
movsd 0x9626c(%rip), %xmm0    # 0xaa0a0
xorpd %xmm1, %xmm1
callq 0x45b34
leaq 0x2a0(%rsp), %rdi
movl 0x24c(%rdi), %esi
callq 0x45668
leaq 0x2a0(%rsp), %rdi
movsd 0x96238(%rip), %xmm0    # 0xaa098
xorpd %xmm1, %xmm1
callq 0x45b34
cmpb $0x1, 0xdbe38(%rip)     # 0xefca8
jne 0x14024
leaq 0x96696(%rip), %rdi     # 0xaa513
callq 0xe700
leaq 0x250(%rsp), %rdi
callq 0x770ce
leaq 0x9638b(%rip), %rdi     # 0xaa221
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rbx
movl 0x238(%rbx), %esi
movl 0x23c(%rbx), %edx
movl 0x240(%rbx), %ecx
leaq 0x963ad(%rip), %rdi     # 0xaa26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%rbx), %xmm0
leaq 0x963b0(%rip), %rdi     # 0xaa284
movb $0x1, %al
callq 0xe070
movq %rbx, %rdi
callq 0x42854
leaq 0x963aa(%rip), %rdi     # 0xaa294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x2a0(%rsp), %rdi
movsd 0x228(%rdi), %xmm0
movsd %xmm0, (%rsp)
callq 0x42854
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movsd (%rsp), %xmm1
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
leaq 0x9637c(%rip), %rdi     # 0xaa2a8
movb $0x1, %al
callq 0xe070
leaq 0x150(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x42796
movl 0x38(%rsp), %ebx
movsd 0x150(%rsp), %xmm0
leaq 0x9635b(%rip), %rdi     # 0xaa2b7
movb $0x1, %al
callq 0xe070
movsd 0x158(%rsp), %xmm0
leaq 0x96354(%rip), %rdi     # 0xaa2c7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x427fc
leaq 0x96349(%rip), %rdi     # 0xaa2d7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x42824
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0x13fc8
sqrtsd %xmm0, %xmm0
jmp 0x13fcd
leaq 0x963dc(%rip), %rdi     # 0xaa395
movq %rbx, %rsi
xorl %eax, %eax
callq 0x797ce
jmp 0x149a2
callq 0xe340
leaq 0x96312(%rip), %rdi     # 0xaa2e6
movb $0x1, %al
callq 0xe070
leaq 0x96313(%rip), %rdi     # 0xaa2f5
movl %ebx, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x96322(%rip), %rdi     # 0xaa314
movapd 0x210(%rsp), %xmm0
movb $0x1, %al
callq 0xe070
leaq 0x963ec(%rip), %rdi     # 0xaa3f5
movq 0x48(%rsp), %rsi
xorl %eax, %eax
callq 0xe070
movq 0xdaf54(%rip), %rax     # 0xeef70
movq (%rax), %rdi
callq 0xe520
leaq 0x500(%rsp), %rdi
callq 0x14ec0
cmpl $0x0, 0xac(%rsp)
jle 0x14063
xorl %ebx, %ebx
movq 0xa0(%rsp), %rax
movq (%rax,%rbx,8), %rdi
movl $0x38, %esi
callq 0xe450
incq %rbx
movslq 0xac(%rsp), %rax
cmpq %rax, %rbx
jl 0x1403d
movl 0xdb447(%rip), %ebx     # 0xef4b0
testl %ebx, %ebx
jle 0x14529
leaq 0xd0(%rsp), %rdi
callq 0x7706c
movq $0x0, 0x1a8(%rsp)
leaq 0xd0(%rsp), %rdi
xorl %esi, %esi
callq 0xe770
leaq 0x500(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x425f6
movl 0x4e0(%rsp), %ecx
testl %ecx, %ecx
jle 0x1439b
leal -0x2(%rbx), %eax
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movsd 0x4c8(%rsp), %xmm1
addl $0x2, %ebx
xorps %xmm2, %xmm2
cvtsi2sd %ebx, %xmm2
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm2
movsd %xmm2, 0x210(%rsp)
addsd %xmm1, %xmm1
maxsd %xmm0, %xmm1
movsd %xmm1, 0x240(%rsp)
movq $0x0, 0x1a8(%rsp)
movl $0xffffffff, 0x220(%rsp) # imm = 0xFFFFFFFF
movl 0x4dc(%rsp), %eax
movl $0x0, 0x40(%rsp)
testl %eax, %eax
jle 0x14382
movl $0x0, 0x10(%rsp)
movl $0xffffffff, 0x38(%rsp) # imm = 0xFFFFFFFF
movl 0x4d8(%rsp), %esi
testl %esi, %esi
jle 0x14365
movq 0x730(%rsp), %rax
movl 0x748(%rsp), %ecx
xorl %r9d, %r9d
movl $0xffffffff, 0x18(%rsp) # imm = 0xFFFFFFFF
movl 0x744(%rsp), %edx
movl %ecx, %esi
imull 0x40(%rsp), %esi
movl %edx, %edi
imull 0x10(%rsp), %edi
addl %esi, %edi
addl %r9d, %edi
movslq %edi, %rsi
movsd (%rax,%rsi,8), %xmm0
andpd 0x95e93(%rip), %xmm0    # 0xaa020
ucomisd 0x210(%rsp), %xmm0
ja 0x14347
movsd 0x240(%rsp), %xmm1
ucomisd %xmm0, %xmm1
ja 0x14347
movl %r9d, 0x9c(%rsp)
xorpd %xmm2, %xmm2
movl $0xffffffff, %edi       # imm = 0xFFFFFFFF
xorl %r8d, %r8d
movl 0x220(%rsp), %r14d
xorpd %xmm3, %xmm3
movl %edi, %esi
addl 0x40(%rsp), %esi
movl %edi, 0x1e0(%rsp)
movl %r8d, 0x48(%rsp)
js 0x142af
cmpl 0x4e0(%rsp), %esi
jge 0x142af
movl $0xffffffff, %r15d      # imm = 0xFFFFFFFF
movl 0x38(%rsp), %ebx
movl %r8d, %r13d
movl %r15d, %esi
addl 0x10(%rsp), %esi
js 0x1429d
cmpl 0x4dc(%rsp), %esi
jge 0x1429d
movl $0x3, %ebp
movl 0x18(%rsp), %r12d
testl %r12d, %r12d
js 0x14296
cmpl 0x4d8(%rsp), %r12d
jge 0x14296
movsd %xmm3, 0x50(%rsp)
movsd %xmm2, (%rsp)
leal (%r13,%rbp), %edi
movsd 0x95e34(%rip), %xmm0    # 0xaa080
callq 0xe6f0
movq 0x730(%rsp), %rax
movl 0x748(%rsp), %ecx
movl 0x744(%rsp), %edx
movl %r14d, %esi
imull %ecx, %esi
movl %ebx, %edi
imull %edx, %edi
addl %esi, %edi
addl %r12d, %edi
movslq %edi, %rsi
movsd (%rax,%rsi,8), %xmm1
mulsd %xmm0, %xmm1
movsd (%rsp), %xmm2
addsd %xmm1, %xmm2
movsd 0x50(%rsp), %xmm3
addsd %xmm0, %xmm3
incl %r12d
decl %ebp
jne 0x14225
incl %r15d
decl %r13d
incl %ebx
cmpl $0x2, %r15d
jne 0x14201
movl 0x1e0(%rsp), %edi
incl %edi
movl 0x48(%rsp), %r8d
decl %r8d
incl %r14d
cmpl $0x2, %edi
jne 0x141cf
leaq 0xdb8d5(%rip), %rsi     # 0xefba8
movsd (%rsi), %xmm0
movapd %xmm0, %xmm1
xorpd 0x95d4d(%rip), %xmm1    # 0xaa030
ucomisd %xmm1, %xmm3
jb 0x142f9
ucomisd %xmm3, %xmm0
jb 0x142f9
movl 0x9c(%rsp), %r9d
jmp 0x14347
divsd %xmm3, %xmm2
movq 0x4d0(%rsp), %rsi
movl 0x4e8(%rsp), %edi
imull 0x40(%rsp), %edi
movl 0x4e4(%rsp), %r8d
imull 0x10(%rsp), %r8d
movl 0x9c(%rsp), %r9d
addl %r9d, %edi
addl %r8d, %edi
movslq %edi, %rdi
movsd %xmm2, (%rsi,%rdi,8)
movq 0x1a8(%rsp), %rsi
incl %esi
movq %rsi, 0x1a8(%rsp)
incl %r9d
movl 0x4d8(%rsp), %esi
incl 0x18(%rsp)
cmpl %esi, %r9d
jl 0x1416a
movl 0x4dc(%rsp), %eax
movl 0x10(%rsp), %ecx
incl %ecx
incl 0x38(%rsp)
movl %ecx, 0x10(%rsp)
cmpl %eax, %ecx
jl 0x14141
movl 0x4e0(%rsp), %ecx
movl 0x40(%rsp), %edx
incl %edx
incl 0x220(%rsp)
movl %edx, 0x40(%rsp)
cmpl %ecx, %edx
jl 0x14122
cmpb $0x0, 0xdb906(%rip)     # 0xefca8
je 0x1451c
leaq 0x9618e(%rip), %rdi     # 0xaa53d
callq 0xe700
leaq 0xd0(%rsp), %rdi
callq 0x770ce
leaq 0x95e59(%rip), %rdi     # 0xaa221
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %r14
movl 0x238(%r14), %esi
movl 0x23c(%r14), %edx
movl 0x240(%r14), %ecx
leaq 0x95e78(%rip), %rdi     # 0xaa26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%r14), %xmm0
leaq 0x95e7a(%rip), %rdi     # 0xaa284
movb $0x1, %al
callq 0xe070
movq %r14, %rdi
callq 0x42854
leaq 0x95e74(%rip), %rdi     # 0xaa294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x2a0(%rsp), %rdi
movsd 0x228(%rdi), %xmm0
movsd %xmm0, (%rsp)
callq 0x42854
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movsd (%rsp), %xmm1
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
leaq 0x95e46(%rip), %rdi     # 0xaa2a8
movb $0x1, %al
callq 0xe070
leaq 0x150(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x42796
movsd 0x150(%rsp), %xmm0
leaq 0x95e29(%rip), %rdi     # 0xaa2b7
movb $0x1, %al
callq 0xe070
movsd 0x158(%rsp), %xmm0
leaq 0x95e22(%rip), %rdi     # 0xaa2c7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x427fc
leaq 0x95e17(%rip), %rdi     # 0xaa2d7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x42824
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0x144e4
sqrtsd %xmm0, %xmm0
jmp 0x144e9
callq 0xe340
leaq 0x95df6(%rip), %rdi     # 0xaa2e6
movb $0x1, %al
callq 0xe070
leaq 0x95f0a(%rip), %rdi     # 0xaa408
movq 0x1a8(%rsp), %rsi
xorl %eax, %eax
callq 0xe070
movq 0xdaa5c(%rip), %rax     # 0xeef70
movq (%rax), %rdi
callq 0xe520
leaq 0x500(%rsp), %rdi
callq 0x42652
movsd 0xdb75f(%rip), %xmm0    # 0xefc90
leaq 0xdb680(%rip), %rax     # 0xefbb8
movapd %xmm0, (%rsp)
ucomisd (%rax), %xmm0
jae 0x1472b
leaq 0x500(%rsp), %rdi
callq 0x7706c
leaq 0x500(%rsp), %rdi
xorl %esi, %esi
callq 0xe770
movapd 0x95ac5(%rip), %xmm0    # 0xaa030
xorpd (%rsp), %xmm0
leaq 0x96f19(%rip), %rax     # 0xab490
xorps %xmm2, %xmm2
cvtss2sd (%rax), %xmm2
leaq 0x2a0(%rsp), %rdi
movapd %xmm0, %xmm1
movsd %xmm2, 0x50(%rsp)
callq 0x44160
leaq 0x2a0(%rsp), %rdi
movaps (%rsp), %xmm0
movsd 0x50(%rsp), %xmm1
movaps %xmm0, %xmm2
callq 0x44160
cmpb $0x1, 0xdb6f2(%rip)     # 0xefca8
jne 0x1472b
leaq 0x95f9b(%rip), %rdi     # 0xaa55e
callq 0xe700
leaq 0x500(%rsp), %rdi
callq 0x770ce
leaq 0x95c45(%rip), %rdi     # 0xaa221
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rbx
movl 0x238(%rbx), %esi
movl 0x23c(%rbx), %edx
movl 0x240(%rbx), %ecx
leaq 0x95c67(%rip), %rdi     # 0xaa26b
xorl %eax, %eax
callq 0xe070
movsd 0x228(%rbx), %xmm0
leaq 0x95c6a(%rip), %rdi     # 0xaa284
movb $0x1, %al
callq 0xe070
movq %rbx, %rdi
callq 0x42854
leaq 0x95c64(%rip), %rdi     # 0xaa294
movl %eax, %esi
xorl %eax, %eax
callq 0xe070
leaq 0x2a0(%rsp), %rdi
movsd 0x228(%rdi), %xmm0
movsd %xmm0, 0x50(%rsp)
callq 0x42854
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movsd 0x50(%rsp), %xmm1
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
leaq 0x95c34(%rip), %rdi     # 0xaa2a8
movb $0x1, %al
callq 0xe070
leaq 0xd0(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x42796
movsd 0xd0(%rsp), %xmm0
leaq 0x95c17(%rip), %rdi     # 0xaa2b7
movb $0x1, %al
callq 0xe070
movsd 0xd8(%rsp), %xmm0
leaq 0x95c10(%rip), %rdi     # 0xaa2c7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x427fc
leaq 0x95c05(%rip), %rdi     # 0xaa2d7
movb $0x1, %al
callq 0xe070
leaq 0x2a0(%rsp), %rdi
callq 0x42824
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0x146f6
sqrtsd %xmm0, %xmm0
jmp 0x146fb
callq 0xe340
leaq 0x95be4(%rip), %rdi     # 0xaa2e6
movb $0x1, %al
callq 0xe070
leaq 0x95d06(%rip), %rdi     # 0xaa416
movapd (%rsp), %xmm0
movb $0x1, %al
callq 0xe070
movq 0xda84d(%rip), %rax     # 0xeef70
movq (%rax), %rdi
callq 0xe520
movq 0xdb566(%rip), %rbx     # 0xefc98
testq %rbx, %rbx
je 0x147f1
leaq 0x500(%rsp), %rdi
callq 0x7706c
leaq 0x500(%rsp), %rdi
xorl %esi, %esi
callq 0xe770
leaq 0x2a0(%rsp), %rdi
movq %rbx, %rsi
callq 0x4b2c4
testl %eax, %eax
je 0x14a17
cmpb $0x1, 0xdb532(%rip)     # 0xefca8
jne 0x147f1
leaq 0x95df7(%rip), %rdi     # 0xaa576
callq 0xe700
leaq 0x500(%rsp), %rdi
callq 0x770ce
leaq 0x95a89(%rip), %rdi     # 0xaa221
movb $0x1, %al
callq 0xe070
movslq 0x4ec(%rsp), %rax
shlq $0x3, %rax
movq %rax, %xmm1
punpckldq 0x95888(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x95890(%rip), %xmm1    # 0xaa050
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x958d4(%rip), %xmm0    # 0xaa0a8
leaq 0x95c4d(%rip), %rdi     # 0xaa428
movb $0x1, %al
callq 0xe070
movq 0xda787(%rip), %rax     # 0xeef70
movq (%rax), %rdi
callq 0xe520
cmpq $0x0, 0xdb4a7(%rip)     # 0xefca0
je 0x149a2
leaq 0x500(%rsp), %rdi
callq 0x7706c
leaq 0x500(%rsp), %rdi
xorl %esi, %esi
callq 0xe770
movl $0x138, %edi            # imm = 0x138
callq 0xe440
movq %rax, %rbx
movq %rax, %rdi
callq 0x234c8
leaq 0x2a0(%rsp), %rdi
movsd 0x228(%rdi), %xmm0
movq %rbx, %rsi
callq 0x4d75a
cmpb $0x1, 0xdb459(%rip)     # 0xefca8
jne 0x148e8
leaq 0x95d29(%rip), %rdi     # 0xaa585
callq 0xe700
leaq 0x500(%rsp), %rdi
callq 0x770ce
leaq 0x959ac(%rip), %rdi     # 0xaa221
movb $0x1, %al
callq 0xe070
movl 0x34(%rbx), %esi
leaq 0x959b2(%rip), %rdi     # 0xaa238
xorl %eax, %eax
callq 0xe070
movl 0x24(%rbx), %esi
leaq 0x959b1(%rip), %rdi     # 0xaa248
xorl %eax, %eax
callq 0xe070
movl 0x14(%rbx), %esi
leaq 0x959b0(%rip), %rdi     # 0xaa258
xorl %eax, %eax
callq 0xe070
movq %rbx, %rdi
callq 0x14c55
testl %eax, %eax
leaq 0x95b8e(%rip), %rax     # 0xaa44e
leaq 0x95b83(%rip), %rsi     # 0xaa44a
cmoveq %rax, %rsi
leaq 0x95b67(%rip), %rdi     # 0xaa439
xorl %eax, %eax
callq 0xe070
movq 0xda690(%rip), %rax     # 0xeef70
movq (%rax), %rdi
callq 0xe520
movq 0xdb3b1(%rip), %r14     # 0xefca0
leaq 0x500(%rsp), %rdi
callq 0x7706c
leaq 0x500(%rsp), %rdi
xorl %esi, %esi
callq 0xe770
movq (%rbx), %rax
movq %rbx, %rdi
movq %r14, %rsi
callq *0x1d0(%rax)
testl %eax, %eax
je 0x14a17
cmpb $0x1, 0xdb37f(%rip)     # 0xefca8
jne 0x14999
leaq 0x95b1f(%rip), %rdi     # 0xaa451
movq %r14, %rsi
xorl %eax, %eax
callq 0xe070
leaq 0x500(%rsp), %rdi
callq 0x770ce
leaq 0x958d1(%rip), %rdi     # 0xaa221
movb $0x1, %al
callq 0xe070
movl 0x34(%rbx), %esi
leaq 0x958d7(%rip), %rdi     # 0xaa238
xorl %eax, %eax
callq 0xe070
movl 0x24(%rbx), %esi
leaq 0x958d6(%rip), %rdi     # 0xaa248
xorl %eax, %eax
callq 0xe070
movl 0x14(%rbx), %esi
leaq 0x958d5(%rip), %rdi     # 0xaa258
xorl %eax, %eax
callq 0xe070
movq 0xda5df(%rip), %rax     # 0xeef70
movq (%rax), %rdi
callq 0xe520
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x8(%rax)
leaq 0xa0(%rsp), %rdi
callq 0x77672
leaq 0x2a0(%rsp), %rdi
callq 0x42652
xorl %eax, %eax
addq $0x758, %rsp            # imm = 0x758
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x959dd(%rip), %rdi     # 0xaa3b4
movq %rbx, %rsi
xorl %eax, %eax
callq 0x797ce
jmp 0x149a2
leaq 0x957e4(%rip), %rdi     # 0xaa1ce
movq %r14, %rsi
xorl %eax, %eax
callq 0x797ce
movl $0x1, %edi
callq 0xe550
leaq 0x957e6(%rip), %rdi     # 0xaa1eb
xorl %eax, %eax
callq 0x797ce
jmp 0x14a17
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x8(%rax)
movl $0xffffffff, %edi       # imm = 0xFFFFFFFF
callq 0xe550
leaq 0x9590c(%rip), %rdi     # 0xaa334
xorl %eax, %eax
callq 0x797ce
jmp 0x14a17
jmp 0x14a38
jmp 0x14b3f
movq %rax, %r14
leaq 0x150(%rsp), %rdi
callq 0x3b8a8
jmp 0x14b88
movq %rax, %r14
jmp 0x14bd4
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b85
jmp 0x14a6b
movq %rax, %r14
leaq 0x500(%rsp), %rdi
callq 0x42652
jmp 0x14c33
movq %rax, %r14
movl $0x138, %esi            # imm = 0x138
movq %rbx, %rdi
callq 0xe450
jmp 0x14c33
jmp 0x14b66
jmp 0x14b9a
jmp 0x14b6b
jmp 0x14b85
jmp 0x14bae
jmp 0x14b9a
jmp 0x14b66
jmp 0x14b85
jmp 0x14bf0
jmp 0x14b6b
jmp 0x14b85
movq %rax, %r14
movl $0x138, %esi            # imm = 0x138
movq %rbx, %rdi
callq 0xe450
jmp 0x14c4d
jmp 0x14b66
jmp 0x14c30
jmp 0x14bf0
jmp 0x14bae
jmp 0x14bae
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14c30
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
movq %rax, %r14
leaq 0x1c8(%rsp), %rdi
callq 0x77672
jmp 0x14b42
movq %rax, %r14
leaq 0x500(%rsp), %rdi
callq 0x14ec0
jmp 0x14c24
jmp 0x14b66
jmp 0x14b6b
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
jmp 0x14b66
movq %rax, %r14
jmp 0x14be1
movq %rax, %r14
jmp 0x14c40
jmp 0x14b85
jmp 0x14b85
jmp 0x14b85
jmp 0x14b85
jmp 0x14b85
jmp 0x14b85
jmp 0x14b85
jmp 0x14b85
jmp 0x14bae
movq %rax, %r14
leaq 0x500(%rsp), %rdi
callq 0x14ec0
jmp 0x14c33
movq %rax, %r14
jmp 0x14c24
jmp 0x14bb7
jmp 0x14bae
jmp 0x14bae
jmp 0x14c02
jmp 0x14bae
jmp 0x14bf0
movq %rax, %r14
jmp 0x14bc7
jmp 0x14bb7
jmp 0x14bb7
movq %rax, %r14
leaq 0x138(%rsp), %rdi
callq 0x77672
leaq 0x150(%rsp), %rdi
callq 0x15ea6
leaq 0xb8(%rsp), %rdi
callq 0x77672
leaq 0x500(%rsp), %rdi
callq 0x42652
jmp 0x14c40
movq %rax, %r14
leaq 0xd0(%rsp), %rdi
callq 0x15ea6
jmp 0x14c40
movq %rax, %r14
jmp 0x14c17
movq %rax, %r14
movl $0x38, %esi
movq %rbx, %rdi
callq 0xe450
leaq 0xd0(%rsp), %rdi
callq 0x77672
leaq 0x20(%rsp), %rdi
callq 0x15ea6
jmp 0x14c33
movq %rax, %r14
leaq 0xa0(%rsp), %rdi
callq 0x77672
leaq 0x2a0(%rsp), %rdi
callq 0x42652
movq %r14, %rdi
callq 0xe7f0