user: 这段汇编代码用C语言表示是什么样的:

```asm
<dsvdinv>:
  endbr64
  push   %r15
  mov    %rdi,%r15
  push   %r14
  push   %r13
  push   %r12
  push   %rbp
  push   %rbx
  movslq %edx,%rbx
  lea    0x0(,%rbx,8),%ebp
  sub    $0x148,%rsp
  mov    %rdi,0x28(%rsp)
  mov    %ebp,%edi
  mov    %rsi,0xc0(%rsp)
  mov    %rbx,0x38(%rsp)
  mov    %ebx,0x8(%rsp)
  call   <malloc@plt>
  mov    %ebp,%edi
  mov    %rax,0x18(%rsp)
  call   <malloc@plt>
  mov    0x8(%rsp),%r9d
  mov    %rax,0x98(%rsp)
  mov    %r9d,%eax
  imul   %r9d,%eax
  lea    0x0(,%rax,8),%edi
  mov    %eax,0xa0(%rsp)
  call   <malloc@plt>
  mov    %ebp,%edi
  mov    %rax,0x58(%rsp)
  call   <malloc@plt>
  mov    0x8(%rsp),%r9d
  mov    0x18(%rsp),%r11
  mov    %rax,0x10(%rsp)
  lea    -0x1(%r9),%edi
  test   %r9d,%r9d
  mov    %edi,0x78(%rsp)
  jle    L791
  lea    -0x2(%r9),%edi
  sub    $0x8,%rax
  mov    %r11,0x70(%rsp)
  mov    %r9d,%ebp
  mov    %edi,0x40(%rsp)
  lea    0x1(%r9),%edi
  sub    %r11,%rax
  pxor   %xmm5,%xmm5
  mov    %edi,0x50(%rsp)
  lea    0x8(,%rbx,8),%rdi
  lea    0x8(%r11),%r12
  movq   D75(%rip),%xmm4
  mov    %rdi,0x60(%rsp)
  movapd %xmm5,%xmm2
  movapd %xmm5,%xmm3
  mov    %r12,%r9
  mov    %rax,0x68(%rsp)
  lea    0x0(,%rbx,8),%r10
  movapd %xmm5,%xmm6
  mov    $0x1,%r13d
  movl   $0x1,0x48(%rsp)
  mov    %r10,%rbx
  movl   $0x0,0x8(%rsp)
  mov    %r15,0x20(%rsp)
  xor    %r15d,%r15d
L605:
  mulsd  %xmm2,%xmm3
  lea    -0x8(%r9),%rax
  mov    0x20(%rsp),%rdx
  mov    %r15d,%r14d
  mov    %rax,0x30(%rsp)
  mov    %r13d,%r10d
  mov    %r15d,%eax
  movsd  %xmm3,-0x8(%r9)
  movapd %xmm5,%xmm3
  nopl   0x0(%rax)
L1014:
  movsd  (%rdx),%xmm0
  add    $0x1,%eax
  add    %rbx,%rdx
  andpd  %xmm4,%xmm0
  addsd  %xmm0,%xmm3
  cmp    %eax,%ebp
  jg     L1014
  ucomisd %xmm5,%xmm3
  jp     L991
  mov    0x8(%rsp),%eax
  movapd %xmm5,%xmm7
  lea    (%rax,%rbp,1),%eax
  mov    %eax,0x18(%rsp)
  jne    L991
L505:
  mulsd  %xmm3,%xmm7
  mov    0x68(%rsp),%rax
  lea    (%rax,%r9,1),%rdi
  movsd  %xmm7,(%rdi)
  cmp    %r13d,%ebp
  je     L778
  jle    L778
  movslq 0x8(%rsp),%r11
  mov    0x28(%rsp),%rax
  movapd %xmm5,%xmm2
  mov    0x40(%rsp),%ecx
  lea    (%r11,%r13,1),%rdx
  lea    (%rax,%rdx,8),%r12
  lea    (%r11,%rcx,1),%rdx
  add    %r15,%rdx
  lea    0x10(%rax,%rdx,8),%r14
  mov    %r12,%rdx
  xchg   %ax,%ax
L217:
  movsd  (%rdx),%xmm0
  add    $0x8,%rdx
  andpd  %xmm4,%xmm0
  addsd  %xmm0,%xmm2
  cmp    %r14,%rdx
  jne    L217
  ucomisd %xmm5,%xmm2
  jp     L1335
  movapd %xmm5,%xmm3
  jne    L1335
L496:
  andpd  %xmm4,%xmm7
  mov    0x50(%rsp),%edi
  add    $0x1,%r15
  add    %edi,0x48(%rsp)
  mov    0x30(%rsp),%rax
  mov    0x60(%rsp),%rdi
  add    $0x1,%r13
  add    $0x8,%r9
  subl   $0x1,0x40(%rsp)
  movsd  (%rax),%xmm0
  mov    0x18(%rsp),%eax
  add    %rdi,0x20(%rsp)
  andpd  %xmm4,%xmm0
  mov    %eax,0x8(%rsp)
  addsd  %xmm7,%xmm0
  maxsd  %xmm0,%xmm6
  cmp    0x38(%rsp),%r15
  jne    L605
  movsd  D122(%rip),%xmm7
  mov    0x70(%rsp),%r11
  mov    %ebp,0x18(%rsp)
  mov    %ebp,%r9d
  movsd  %xmm7,0x90(%rsp)
  mulsd  %xmm7,%xmm6
L209:
  movslq 0x78(%rsp),%r13
  mov    %r9d,%eax
  mov    0x58(%rsp),%r14
  mov    %r11,0xc8(%rsp)
  not    %eax
  movsd  D13(%rip),%xmm7
  mov    %r13d,%esi
  mov    %eax,0x68(%rsp)
  cltq
  mov    %r13d,%edi
  imul   %r9d,%esi
  shl    $0x3,%rax
  lea    0x0(,%r13,8),%rcx
  mov    %r13,0x88(%rsp)
  mov    %rax,0x20(%rsp)
  lea    (%r11,%rcx,1),%rbp
  mov    %rcx,0x48(%rsp)
  add    $0x8,%rcx
  movslq %esi,%rax
  mov    %esi,0x8(%rsp)
  mov    %esi,%r12d
  mov    %rax,0x80(%rsp)
  add    %r13,%rax
  shl    $0x3,%rax
  mov    %esi,0xb0(%rsp)
  mov    %rax,0x60(%rsp)
  add    %rax,%r14
  mov    0x38(%rsp),%rax
  mov    %rdi,0xa8(%rsp)
  sub    $0x2,%rax
  sub    %rdi,%rax
  mov    %rax,0x50(%rsp)
  mov    0x28(%rsp),%rax
  add    $0x8,%rax
  mov    %rax,0x70(%rsp)
  jmp    L351
L679:
  movsd  %xmm7,(%r14)
  sub    $0x1,%r13
  sub    $0x8,%rbp
  sub    %r9d,%r12d
  movsd  0x8(%rbp),%xmm3
  add    0x20(%rsp),%r14
  cmp    %r13,0x50(%rsp)
  je     L394
L351:
  lea    0x1(%r13),%eax
  mov    0x18(%rsp),%esi
  mov    %r13d,0x18(%rsp)
  cmp    %r9d,%eax
  jge    L679
  ucomisd %xmm5,%xmm3
  jp     L742
  jne    L742
  movslq %r12d,%rax
  movslq %esi,%r15
  mov    %rax,0x40(%rsp)
  cmp    %esi,%r9d
  jle    L679
L338:
  mov    %r9d,%eax
  mov    0x58(%rsp),%rdi
  add    0x40(%rsp),%r15
  imul   %esi,%eax
  lea    (%rdi,%r15,8),%rdx
  cltq
  add    %r13,%rax
  lea    (%rdi,%rax,8),%rax
  nopl   0x0(%rax,%rax,1)
L43:
  add    $0x1,%esi
  movq   $0x0,(%rax)
  add    $0x8,%rdx
  add    %rcx,%rax
  movq   $0x0,-0x8(%rdx)
  cmp    %esi,%r9d
  jg     L43
  jmp    L679
L778:
  movapd %xmm5,%xmm2
  movapd %xmm5,%xmm3
  jmp    L496
L991:
  movslq 0x8(%rsp),%rcx
  mov    0x28(%rsp),%rdi
  mov    %r14d,%edx
  movapd %xmm5,%xmm2
  lea    (%rcx,%r15,1),%rax
  lea    (%rdi,%rax,8),%r12
  mov    %r12,%rax
L705:
  movsd  (%rax),%xmm0
  add    $0x1,%edx
  divsd  %xmm3,%xmm0
  movsd  %xmm0,(%rax)
  mulsd  %xmm0,%xmm0
  add    %rbx,%rax
  addsd  %xmm0,%xmm2
  cmp    %edx,%ebp
  jg     L705
  mov    0x48(%rsp),%eax
  mov    0x28(%rsp),%rdi
  sub    $0x1,%eax
  cltq
  lea    (%rdi,%rax,8),%rax
  movsd  (%rax),%xmm7
  mov    %rax,0x80(%rsp)
  comisd %xmm5,%xmm7
  movsd  %xmm7,0x18(%rsp)
  jb     L917
  ucomisd %xmm2,%xmm5
  ja     L1270
  movapd %xmm2,%xmm1
  sqrtsd %xmm1,%xmm1
L1204:
  andpd  %xmm4,%xmm1
  movapd %xmm1,%xmm7
  xorpd  D234(%rip),%xmm7
L111:
  movsd  0x18(%rsp),%xmm1
  mov    0x80(%rsp),%rax
  movapd %xmm1,%xmm8
  subsd  %xmm7,%xmm1
  mulsd  %xmm7,%xmm8
  movapd %xmm1,%xmm0
  movsd  %xmm1,(%rax)
  subsd  %xmm2,%xmm8
  cmp    %r13d,%ebp
  jle    L1227
  mov    0x28(%rsp),%rdi
  lea    (%rcx,%r13,1),%rax
  mov    %r10d,0x88(%rsp)
  mov    %r10d,%r11d
  mov    0x80(%rsp),%r10
  lea    (%rdi,%rax,8),%r8
  mov    0x8(%rsp),%edi
  mov    %r15,%rax
  sub    %r13,%rax
  add    %ebp,%edi
  sub    %rcx,%rax
  mov    %edi,0x18(%rsp)
  movslq %edi,%rsi
  add    %rax,%rsi
L59:
  mov    %r8,%rax
  movapd %xmm0,%xmm1
  movapd %xmm5,%xmm2
  mov    %r14d,%edx
  jmp    L153
  nopl   (%rax)
L386:
  movsd  (%rax,%rsi,8),%xmm1
  mov    %ecx,%edx
  add    %rbx,%rax
L153:
  mulsd  (%rax),%xmm1
  lea    0x1(%rdx),%ecx
  addsd  %xmm1,%xmm2
  cmp    %ecx,%ebp
  jne    L386
  divsd  %xmm8,%xmm2
  mov    %r8,%rax
  mov    %r14d,%ecx
  jmp    L1413
  cs nopw 0x0(%rax,%rax,1)
L957:
  movsd  (%rax,%rsi,8),%xmm0
  mov    %edi,%ecx
  add    %rbx,%rax
L1413:
  mulsd  %xmm2,%xmm0
  lea    0x1(%rcx),%edi
  addsd  (%rax),%xmm0
  movsd  %xmm0,(%rax)
  cmp    %ecx,%edx
  jne    L957
  movsd  (%r10),%xmm0
  lea    0x1(%r11),%eax
  add    $0x8,%r8
  sub    $0x1,%rsi
  cmp    %edx,%r11d
  je     L10
  mov    %eax,%r11d
  jmp    L59
L10:
  mov    0x88(%rsp),%r10d
  jmp    L295
L446:
  movsd  (%r12),%xmm0
L295:
  mulsd  %xmm3,%xmm0
  add    $0x1,%r14d
  movsd  %xmm0,(%r12)
  add    %rbx,%r12
  cmp    %r14d,%ebp
  jg     L446
  jmp    L505
L1335:
  mov    %r12,%rdx
  movapd %xmm5,%xmm1
L1144:
  movsd  (%rdx),%xmm0
  add    $0x8,%rdx
  divsd  %xmm2,%xmm0
  movsd  %xmm0,-0x8(%rdx)
  mulsd  %xmm0,%xmm0
  addsd  %xmm0,%xmm1
  cmp    %r14,%rdx
  jne    L1144
  movslq 0x48(%rsp),%rdx
  mov    0x28(%rsp),%rax
  lea    (%rax,%rdx,8),%rax
  movsd  (%rax),%xmm7
  mov    %rax,0x8(%rsp)
  movsd  %xmm7,0x80(%rsp)
  comisd %xmm5,%xmm7
  jb     L881
  ucomisd %xmm1,%xmm5
  ja     L87
  movapd %xmm1,%xmm3
  sqrtsd %xmm3,%xmm3
L981:
  andpd  %xmm4,%xmm3
  xorpd  D234(%rip),%xmm3
L932:
  mov    0x8(%rsp),%rax
  lea    (%rcx,%r15,1),%rdx
  shl    $0x3,%r11
  movsd  0x80(%rsp),%xmm0
  movapd %xmm0,%xmm7
  subsd  %xmm3,%xmm0
  mulsd  %xmm3,%xmm7
  movsd  %xmm0,(%rax)
  mov    0x70(%rsp),%rax
  lea    0x10(%rax,%rdx,8),%rsi
  mov    %r11,%rdx
  sub    %rax,%rdx
  subsd  %xmm1,%xmm7
  add    0x28(%rsp),%rdx
  mov    %r9,%rax
  jmp    L928
L29:
  movsd  (%rdx,%rax,1),%xmm0
L928:
  divsd  %xmm7,%xmm0
  add    $0x8,%rax
  movsd  %xmm0,-0x8(%rax)
  cmp    %rax,%rsi
  jne    L29
  movslq 0x18(%rsp),%rcx
  mov    0x28(%rsp),%rax
  shl    $0x3,%rcx
  add    %rax,%r11
  mov    %rcx,%rdx
  sub    0x70(%rsp),%rdx
  add    %rax,%rcx
  add    %rax,%rdx
L193:
  mov    %r13,%rax
  movapd %xmm5,%xmm1
  nopl   0x0(%rax)
L350:
  movsd  (%rcx,%rax,8),%xmm0
  mulsd  (%r11,%rax,8),%xmm0
  add    $0x1,%rax
  addsd  %xmm0,%xmm1
  cmp    %eax,%ebp
  jg     L350
  mov    %r9,%rax
  nopw   0x0(%rax,%rax,1)
L1393:
  movsd  (%rax),%xmm0
  mulsd  %xmm1,%xmm0
  addsd  (%rdx,%rax,1),%xmm0
  movsd  %xmm0,(%rdx,%rax,1)
  add    $0x8,%rax
  cmp    %rsi,%rax
  jne    L1393
  add    $0x1,%r10d
  add    %rbx,%rdx
  add    %rbx,%rcx
  cmp    %r10d,%ebp
  jne    L193
L1065:
  movsd  (%r12),%xmm0
  add    $0x8,%r12
  mulsd  %xmm2,%xmm0
  movsd  %xmm0,-0x8(%r12)
  cmp    %r14,%r12
  jne    L1065
  movsd  (%rdi),%xmm7
  jmp    L496
L394:
  mov    0x48(%rsp),%rax
  add    0x10(%rsp),%rax
  mov    %r9d,%ebp
  mov    0x28(%rsp),%rdi
  mov    %rax,0x30(%rsp)
  mov    0x60(%rsp),%rax
  mov    0x88(%rsp),%r12
  mov    0xc8(%rsp),%r11
  mov    0x38(%rsp),%r10
  add    %rdi,%rax
  mov    %rax,0x18(%rsp)
  mov    %r9d,%eax
  shl    $0x3,%r10
  neg    %eax
  mov    %r10,%rbx
  cltq
  lea    -0x8(,%rax,8),%rax
  mov    %rax,0x70(%rsp)
  movslq 0xa0(%rsp),%rax
  mov    %r11,0xa0(%rsp)
  lea    (%r12,%rax,1),%rdx
  lea    (%rdi,%rdx,8),%r13
  mov    0x80(%rsp),%rdx
  mov    0xb0(%rsp),%edi
  movaps %xmm4,0xb0(%rsp)
  add    0x78(%rsp),%edi
  sub    %rax,%rdx
  lea    -0x2(%r9),%eax
  mov    %edi,0x40(%rsp)
  mov    %eax,0x78(%rsp)
  lea    0x8(,%rdx,8),%rax
  mov    %rax,0x80(%rsp)
L1377:
  mov    0x30(%rsp),%rax
  lea    0x1(%r12),%r15d
  mov    %r12d,%r14d
  movsd  (%rax),%xmm0
  cmp    %r15d,%ebp
  jle    L1381
  mov    0x78(%rsp),%eax
  xor    %esi,%esi
  movsd  %xmm5,0x60(%rsp)
  movsd  %xmm6,0x48(%rsp)
  sub    %r12d,%eax
  movsd  %xmm0,0x38(%rsp)
  lea    0x8(,%rax,8),%rdx
  mov    0x80(%rsp),%rax
  lea    (%rax,%r13,1),%rdi
  call   <memset@plt>
  movsd  0x38(%rsp),%xmm0
  movsd  0x60(%rsp),%xmm5
  mov    D13(%rip),%rax
  movsd  0x48(%rsp),%xmm6
  ucomisd %xmm5,%xmm0
  movq   %rax,%xmm7
  jp     L1318
  je     L1444
L1318:
  movapd %xmm7,%xmm2
  mov    0x28(%rsp),%rdi
  mov    %r12,%r8
  mov    %r15d,%r9d
  divsd  %xmm0,%xmm2
  movslq 0x40(%rsp),%rax
  lea    (%rdi,%rax,8),%r11
  movslq 0x8(%rsp),%rax
  mov    %rax,%rsi
  lea    0x1(%r12,%rax,1),%rax
  lea    (%rdi,%rax,8),%r10
  sub    %rax,%r8
  lea    0x0(%rbp,%rsi,1),%eax
  mov    $0x1,%edi
  cltq
  add    %rax,%r8
  nopl   0x0(%rax)
L1141:
  mov    %r13,%rax
  mov    %r15d,%ecx
  movapd %xmm5,%xmm1
  nopw   0x0(%rax,%rax,1)
L1363:
  movsd  (%rax),%xmm0
  mulsd  (%rax,%rdi,8),%xmm0
  mov    %ecx,%edx
  lea    0x1(%rcx),%ecx
  add    %rbx,%rax
  addsd  %xmm0,%xmm1
  cmp    %ecx,%ebp
  jne    L1363
  movsd  (%r11),%xmm0
  divsd  %xmm0,%xmm1
  mulsd  %xmm2,%xmm1
  cmp    %r12d,%ebp
  jle    L1193
  mov    %r10,%rax
  mov    %r14d,%ecx
  jmp    L112
  nopl   0x0(%rax,%rax,1)
L1146:
  movsd  (%rax,%r8,8),%xmm0
  mov    %esi,%ecx
  add    %rbx,%rax
L112:
  mulsd  %xmm1,%xmm0
  lea    0x1(%rcx),%esi
  addsd  (%rax),%xmm0
  movsd  %xmm0,(%rax)
  cmp    %edx,%ecx
  jne    L1146
L1193:
  lea    0x1(%r9),%eax
  add    $0x8,%r10
  sub    $0x1,%r8
  add    $0x1,%rdi
  cmp    %r9d,%edx
  je     L475
  mov    %eax,%r9d
  jmp    L1141
L1381:
  ucomisd %xmm5,%xmm0
  jp     L907
  jne    L907
L1444:
  cmp    %r12d,%ebp
  jle    L751
  movslq 0x8(%rsp),%rax
  mov    0x28(%rsp),%rdi
  add    %r12,%rax
  lea    (%rdi,%rax,8),%rax
  nopl   (%rax)
L1301:
  add    $0x1,%r14d
  movq   $0x0,(%rax)
  add    %rbx,%rax
  cmp    %r14d,%ebp
  jne    L1301
L751:
  mov    0x18(%rsp),%rax
  mov    0x20(%rsp),%rdi
  sub    $0x1,%r12
  subq   $0x8,0x30(%rsp)
  add    0x70(%rsp),%r13
  movsd  (%rax),%xmm0
  sub    %ebp,0x8(%rsp)
  addsd  %xmm7,%xmm0
  movsd  %xmm0,(%rax)
  add    %rdi,%rax
  mov    0x68(%rsp),%edi
  mov    %rax,0x18(%rsp)
  add    %edi,0x40(%rsp)
  cmp    %r12,0x50(%rsp)
  jne    L1377
  mov    0xa0(%rsp),%r11
  mov    %ebp,%r9d
  movapd 0xb0(%rsp),%xmm4
  mov    %rbx,%rbp
  mov    0x88(%rsp),%rdi
  mov    0x28(%rsp),%r8
  mov    %r9d,%ebx
  movq   D234(%rip),%xmm8
  mov    %r11,%r15
  mov    0x58(%rsp),%r11
L208:
  mov    0x10(%rsp),%rsi
  lea    0x1(%rdi),%eax
  lea    0x0(,%rdi,8),%rcx
  movl   $0x1e,0x30(%rsp)
  mov    %eax,0x18(%rsp)
  mov    %rsi,%rax
  mov    %rcx,0x70(%rsp)
  add    %rcx,%rax
  mov    %rax,0x20(%rsp)
  lea    -0x1(%rdi),%eax
  mov    %eax,0x48(%rsp)
  cltq
  shl    $0x3,%rax
  lea    (%rsi,%rax,1),%rdx
  add    %r15,%rax
  sub    $0x8,%rsi
  mov    %rax,0x40(%rsp)
  lea    (%r15,%rcx,1),%rax
  sub    %r15,%rsi
  mov    %rdx,0x38(%rsp)
  mov    %rax,0x8(%rsp)
  nopl   0x0(%rax)
L1011:
  mov    0x8(%rsp),%rdx
  mov    0x18(%rsp),%r12d
  jmp    L174
  nopl   0x0(%rax)
L1415:
  test   %r12d,%r12d
  je     L1223
  movsd  (%rsi,%rdx,1),%xmm0
  sub    $0x8,%rdx
  andpd  %xmm4,%xmm0
  comisd %xmm0,%xmm6
  jae    L1284
L174:
  movsd  (%rdx),%xmm1
  mov    %r12d,%r14d
  sub    $0x1,%r12d
  lea    -0x2(%r14),%eax
  movapd %xmm1,%xmm0
  andpd  %xmm4,%xmm0
  comisd %xmm0,%xmm6
  jb     L1415
L520:
  mov    0x20(%rsp),%rax
  movsd  (%rax),%xmm9
  cmp    0x18(%rsp),%r14d
  je     L308
  subl   $0x1,0x30(%rsp)
  je     L805
  mov    0x10(%rsp),%rcx
  movslq %r12d,%rax
  movapd %xmm9,%xmm11
  lea    0x0(,%rax,8),%r13
  movsd  (%rcx,%rax,8),%xmm10
  mov    0x38(%rsp),%rax
  movsd  (%rax),%xmm1
  mov    0x40(%rsp),%rax
  movapd %xmm1,%xmm2
  movsd  (%rax),%xmm0
  addsd  %xmm1,%xmm11
  mov    0x8(%rsp),%rax
  subsd  %xmm9,%xmm2
  movsd  (%rax),%xmm3
  mulsd  %xmm11,%xmm2
  movapd %xmm0,%xmm11
  addsd  %xmm3,%xmm0
  subsd  %xmm3,%xmm11
  mulsd  %xmm11,%xmm0
  addsd  %xmm0,%xmm2
  movapd %xmm3,%xmm0
  addsd  %xmm3,%xmm0
  mulsd  %xmm1,%xmm0
  divsd  %xmm0,%xmm2
  movapd %xmm2,%xmm0
  andpd  %xmm4,%xmm0
  comisd %xmm7,%xmm0
  jbe    L510
  movapd %xmm7,%xmm0
  divsd  %xmm2,%xmm0
  mulsd  %xmm0,%xmm0
  addsd  %xmm7,%xmm0
  ucomisd %xmm0,%xmm5
  ja     L191
  sqrtsd %xmm0,%xmm0
L1159:
  mulsd  %xmm2,%xmm0
  andpd  %xmm4,%xmm0
L539:
  movapd %xmm10,%xmm11
  comisd %xmm5,%xmm2
  subsd  %xmm9,%xmm11
  addsd  %xmm10,%xmm9
  mulsd  %xmm11,%xmm9
  jae    L221
  xorpd  D234(%rip),%xmm0
L221:
  addsd  %xmm2,%xmm0
  lea    (%r15,%r13,1),%r10
  divsd  %xmm0,%xmm1
  subsd  %xmm3,%xmm1
  mulsd  %xmm3,%xmm1
  movapd %xmm1,%xmm11
  addsd  %xmm9,%xmm11
  divsd  %xmm10,%xmm11
  cmp    0x48(%rsp),%r12d
  jg     L524
  mov    %r10,%r14
  movapd %xmm7,%xmm1
  movapd %xmm7,%xmm3
  add    0x10(%rsp),%r13
  nopl   (%rax)
L673:
  mov    %r14,%rcx
  movsd  0x8(%r14),%xmm9
  add    $0x8,%r14
  mov    %r13,%r9
  movapd %xmm11,%xmm2
  add    $0x8,%r13
  add    $0x1,%r12d
  movsd  0x0(%r13),%xmm13
  mulsd  %xmm9,%xmm1
  andpd  %xmm4,%xmm2
  mulsd  %xmm3,%xmm9
  movapd %xmm1,%xmm3
  andpd  %xmm4,%xmm3
  comisd %xmm3,%xmm2
  ja     L988
  ucomisd %xmm5,%xmm1
  jp     L1098
  movapd %xmm5,%xmm0
  jne    L1098
L488:
  movapd %xmm11,%xmm3
  movsd  %xmm0,(%rcx)
  mov    %r11,%rax
  xor    %edx,%edx
  divsd  %xmm0,%xmm3
  movapd %xmm13,%xmm12
  sub    %r15,%rax
  add    %rcx,%rax
  divsd  %xmm0,%xmm1
  movapd %xmm9,%xmm0
  mulsd  %xmm3,%xmm9
  movapd %xmm3,%xmm11
  mulsd  %xmm10,%xmm11
  mulsd  %xmm1,%xmm10
  mulsd  %xmm1,%xmm0
  mulsd  %xmm1,%xmm12
  subsd  %xmm10,%xmm9
  movapd %xmm13,%xmm10
  mulsd  %xmm3,%xmm10
  addsd  %xmm0,%xmm11
  test   %ebx,%ebx
  jle    L279
  nopw   0x0(%rax,%rax,1)
L374:
  movsd  (%rax),%xmm2
  movsd  0x8(%rax),%xmm0
  movapd %xmm3,%xmm13
  add    $0x1,%edx
  movapd %xmm1,%xmm14
  mulsd  %xmm2,%xmm13
  mulsd  %xmm0,%xmm14
  mulsd  %xmm1,%xmm2
  mulsd  %xmm3,%xmm0
  addsd  %xmm14,%xmm13
  subsd  %xmm2,%xmm0
  movsd  %xmm13,(%rax)
  movsd  %xmm0,0x8(%rax)
  add    %rbp,%rax
  cmp    %edx,%ebx
  jne    L374
L279:
  movapd %xmm11,%xmm2
  movapd %xmm12,%xmm13
  andpd  %xmm4,%xmm2
  andpd  %xmm4,%xmm13
  comisd %xmm13,%xmm2
  ja     L961
  ucomisd %xmm5,%xmm12
  jp     L418
  movapd %xmm5,%xmm0
  jne    L418
L72:
  movsd  %xmm0,(%r9)
  movapd %xmm3,%xmm11
  movapd %xmm1,%xmm0
  xor    %edx,%edx
  mulsd  %xmm9,%xmm11
  mov    %r8,%rax
  mulsd  %xmm10,%xmm0
  sub    %r15,%rax
  mulsd  %xmm3,%xmm10
  add    %rcx,%rax
  mulsd  %xmm1,%xmm9
  addsd  %xmm0,%xmm11
  subsd  %xmm9,%xmm10
  test   %ebx,%ebx
  jle    L902
  nopl   0x0(%rax,%rax,1)
L74:
  movsd  (%rax),%xmm2
  movsd  0x8(%rax),%xmm0
  movapd %xmm3,%xmm9
  add    $0x1,%edx
  movapd %xmm1,%xmm12
  mulsd  %xmm2,%xmm9
  mulsd  %xmm0,%xmm12
  mulsd  %xmm1,%xmm2
  mulsd  %xmm3,%xmm0
  addsd  %xmm12,%xmm9
  subsd  %xmm2,%xmm0
  movsd  %xmm9,(%rax)
  movsd  %xmm0,0x8(%rax)
  add    %rbp,%rax
  cmp    %edx,%ebx
  jne    L74
L902:
  cmp    %edi,%r12d
  jne    L673
L524:
  mov    0x8(%rsp),%rax
  movq   $0x0,(%r10)
  movsd  %xmm11,(%rax)
  mov    0x20(%rsp),%rax
  movsd  %xmm10,(%rax)
  jmp    L1011
  nopl   0x0(%rax,%rax,1)
L988:
  movapd %xmm1,%xmm0
  divsd  %xmm11,%xmm0
  mulsd  %xmm0,%xmm0
  addsd  %xmm7,%xmm0
  ucomisd %xmm0,%xmm5
  ja     L63
  sqrtsd %xmm0,%xmm0
L52:
  mulsd  %xmm2,%xmm0
  jmp    L488
  nopl   0x0(%rax,%rax,1)
L961:
  movapd %xmm12,%xmm0
  divsd  %xmm11,%xmm0
  mulsd  %xmm0,%xmm0
  addsd  %xmm7,%xmm0
  ucomisd %xmm0,%xmm5
  ja     L269
  sqrtsd %xmm0,%xmm0
L584:
  mulsd  %xmm2,%xmm0
L481:
  ucomisd %xmm5,%xmm0
  jp     L958
  je     L72
L958:
  movapd %xmm7,%xmm1
  movapd %xmm11,%xmm3
  divsd  %xmm0,%xmm1
  mulsd  %xmm1,%xmm3
  mulsd  %xmm12,%xmm1
  jmp    L72
  nopl   0x0(%rax,%rax,1)
L418:
  movapd %xmm11,%xmm0
  divsd  %xmm12,%xmm0
  mulsd  %xmm0,%xmm0
  addsd  %xmm7,%xmm0
  ucomisd %xmm0,%xmm5
  ja     L1111
  sqrtsd %xmm0,%xmm0
L1241:
  mulsd  %xmm13,%xmm0
  jmp    L481
  nopw   0x0(%rax,%rax,1)
L1098:
  movapd %xmm11,%xmm0
  divsd  %xmm1,%xmm0
  mulsd  %xmm0,%xmm0
  addsd  %xmm7,%xmm0
  ucomisd %xmm0,%xmm5
  ja     L395
  sqrtsd %xmm0,%xmm0
L99:
  mulsd  %xmm3,%xmm0
  jmp    L488
L510:
  movapd %xmm2,%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm7,%xmm0
  ucomisd %xmm0,%xmm5
  ja     L757
  sqrtsd %xmm0,%xmm0
  jmp    L539
L1223:
  mov    $0x1,%r14d
  jmp    L520
L1284:
  cmp    %edi,%r12d
  jg     L520
  movslq %r12d,%r13
  cltq
  mov    %r11,0x60(%rsp)
  mov    %r12d,%r9d
  mov    %rdi,0x68(%rsp)
  mov    %r14d,%r11d
  mov    %edi,%r14d
  mov    %r12d,%edi
  mov    0x10(%rsp),%r12
  lea    (%r15,%r13,8),%rcx
  lea    (%r8,%rax,8),%r10
  sub    %rax,%r13
  movapd %xmm7,%xmm3
  movapd %xmm5,%xmm9
  nop
L571:
  mulsd  %xmm1,%xmm3
  mulsd  %xmm9,%xmm1
  movsd  %xmm1,(%rcx)
  movapd %xmm3,%xmm1
  andpd  %xmm4,%xmm1
  comisd %xmm1,%xmm6
  jae    L405
  mov    %r12,%rax
  sub    %r15,%rax
  add    %rcx,%rax
  movsd  (%rax),%xmm9
  movapd %xmm9,%xmm2
  andpd  %xmm4,%xmm2
  comisd %xmm2,%xmm1
  ja     L745
  ucomisd %xmm5,%xmm9
  jp     L660
  movapd %xmm5,%xmm1
  jne    L660
L1475:
  movapd %xmm7,%xmm0
  xorpd  %xmm8,%xmm3
  movsd  %xmm1,(%rax)
  xor    %edx,%edx
  divsd  %xmm1,%xmm0
  mov    %r10,%rax
  mulsd  %xmm0,%xmm9
  mulsd  %xmm0,%xmm3
  test   %ebx,%ebx
  jle    L455
  nopl   0x0(%rax,%rax,1)
L1024:
  movsd  (%rax),%xmm1
  movsd  (%rax,%r13,8),%xmm0
  movapd %xmm9,%xmm2
  add    $0x1,%edx
  movapd %xmm3,%xmm10
  mulsd  %xmm1,%xmm2
  mulsd  %xmm0,%xmm10
  mulsd  %xmm3,%xmm1
  mulsd  %xmm9,%xmm0
  addsd  %xmm10,%xmm2
  subsd  %xmm1,%xmm0
  movsd  %xmm2,(%rax)
  movsd  %xmm0,(%rax,%r13,8)
  add    %rbp,%rax
  cmp    %edx,%ebx
  jne    L1024
L455:
  add    $0x1,%r9d
  add    $0x8,%rcx
  add    $0x1,%r13
  cmp    %r14d,%r9d
  jg     L405
  movsd  (%rcx),%xmm1
  jmp    L571
  nopl   (%rax)
L745:
  movapd %xmm9,%xmm0
  divsd  %xmm3,%xmm0
  mulsd  %xmm0,%xmm0
  addsd  %xmm7,%xmm0
  ucomisd %xmm0,%xmm5
  ja     L1076
  sqrtsd %xmm0,%xmm0
L784:
  mulsd  %xmm0,%xmm1
  jmp    L1475
L660:
  movapd %xmm3,%xmm1
  divsd  %xmm9,%xmm1
  mulsd  %xmm1,%xmm1
  addsd  %xmm7,%xmm1
  ucomisd %xmm1,%xmm5
  ja     L40
  sqrtsd %xmm1,%xmm1
L1316:
  mulsd  %xmm2,%xmm1
  jmp    L1475
L405:
  mov    %edi,%r12d
  mov    %r11d,%r14d
  mov    0x68(%rsp),%rdi
  mov    0x60(%rsp),%r11
  jmp    L520
L907:
  movapd %xmm7,%xmm2
  divsd  %xmm0,%xmm2
L475:
  cmp    %r12d,%ebp
  jle    L751
  movslq 0x8(%rsp),%rax
  mov    0x28(%rsp),%rdi
  add    %r12,%rax
  lea    (%rdi,%rax,8),%rax
  nopw   0x0(%rax,%rax,1)
L1308:
  movsd  (%rax),%xmm0
  add    $0x1,%r14d
  mulsd  %xmm2,%xmm0
  movsd  %xmm0,(%rax)
  add    %rbx,%rax
  cmp    %r14d,%ebp
  jne    L1308
  jmp    L751
L308:
  comisd %xmm9,%xmm5
  ja     L514
L362:
  sub    $0x1,%rdi
  cmp    %rdi,0x50(%rsp)
  jne    L208
  mov    0x10(%rsp),%rax
  mov    %r15,%r11
  mov    %rbp,%r10
  mov    %ebx,%r9d
  mov    0xa8(%rsp),%rdi
  movapd %xmm5,%xmm0
  lea    0x8(%rax,%rdi,8),%rcx
L1147:
  movsd  (%rax),%xmm1
  add    $0x8,%rax
  maxsd  %xmm0,%xmm1
  movapd %xmm1,%xmm0
  cmp    %rcx,%rax
  jne    L1147
  mulsd  0x90(%rsp),%xmm0
  mov    0x10(%rsp),%rax
  xor    %r12d,%r12d
L1367:
  movsd  (%rax),%xmm2
  movapd %xmm5,%xmm1
  comisd %xmm2,%xmm0
  jae    L1396
  movapd %xmm7,%xmm1
  add    $0x1,%r12d
  divsd  %xmm2,%xmm1
L1396:
  movsd  %xmm1,(%rax)
  add    $0x8,%rax
  cmp    %rcx,%rax
  jne    L1367
  test   %r9d,%r9d
  jle    L501
  mov    0x58(%rsp),%rsi
  mov    0x10(%rsp),%r13
  xor    %ebx,%ebx
  mov    0xc0(%rsp),%rbp
  sub    %r13,%rsi
L493:
  mov    0x28(%rsp),%rdx
  mov    %rbp,%rdi
  xor    %r8d,%r8d
  sub    %r13,%rdx
L776:
  mov    %r13,%rax
  movapd %xmm5,%xmm1
  nopl   0x0(%rax,%rax,1)
L1424:
  movsd  (%rax,%rsi,1),%xmm0
  mulsd  (%rdx,%rax,1),%xmm0
  add    $0x8,%rax
  mulsd  -0x8(%rax),%xmm0
  addsd  %xmm0,%xmm1
  cmp    %rcx,%rax
  jne    L1424
  lea    0x1(%r8),%eax
  movsd  %xmm1,(%rdi)
  add    %r10,%rdx
  add    %r10,%rdi
  cmp    %eax,%r9d
  je     L807
  mov    %eax,%r8d
  jmp    L776
L805:
  xor    %r12d,%r12d
L69:
  add    $0x148,%rsp
  mov    %r12d,%eax
  pop    %rbx
  pop    %rbp
  pop    %r12
  pop    %r13
  pop    %r14
  pop    %r15
  ret
L917:
  ucomisd %xmm2,%xmm5
  ja     L477
  movapd %xmm2,%xmm1
  sqrtsd %xmm1,%xmm1
L81:
  movapd %xmm1,%xmm7
  andpd  %xmm4,%xmm7
  jmp    L111
L742:
  cmp    %esi,%r9d
  jle    L679
  mov    0x28(%rsp),%rbx
  lea    (%rsi,%r12,1),%eax
  movslq %esi,%r15
  mov    0x58(%rsp),%rdx
  cltq
  mov    0x70(%rsp),%r11
  lea    (%rbx,%rax,8),%rdi
  movslq %r12d,%rax
  lea    (%rax,%r15,1),%r8
  mov    %rax,0x40(%rsp)
  mov    %r9d,%eax
  imul   %esi,%eax
  lea    (%rbx,%r8,8),%rbx
  mov    %rbx,0x30(%rsp)
  movslq %eax,%r10
  lea    0x0(%r13,%r10,1),%rax
  lea    (%rdx,%rax,8),%rdx
  mov    0x78(%rsp),%eax
  sub    %esi,%eax
  add    %r8,%rax
  lea    (%r11,%rax,8),%r8
  mov    %rbx,%rax
L140:
  movsd  (%rax),%xmm0
  divsd  (%rdi),%xmm0
  divsd  %xmm3,%xmm0
  add    $0x8,%rax
  movsd  %xmm0,(%rdx)
  add    %rcx,%rdx
  cmp    %rax,%r8
  jne    L140
  mov    0x58(%rsp),%rax
  mov    %r13,%rdi
  add    %r15,%r10
  mov    %esi,%ebx
  sub    %r15,%rdi
  lea    (%rax,%r10,8),%r11
  shl    $0x3,%rdi
L959:
  mov    0x30(%rsp),%rax
  mov    %r11,%rdx
  movapd %xmm5,%xmm1
  nopl   0x0(%rax,%rax,1)
L1105:
  movsd  (%rax),%xmm0
  mulsd  (%rdx),%xmm0
  add    $0x8,%rax
  add    %rcx,%rdx
  addsd  %xmm0,%xmm1
  cmp    %rax,%r8
  jne    L1105
  mov    %r11,%rax
  mov    %esi,%edx
  nopl   (%rax)
L316:
  movsd  (%rdi,%rax,1),%xmm0
  mov    %edx,%r10d
  add    $0x1,%edx
  mulsd  %xmm1,%xmm0
  addsd  (%rax),%xmm0
  movsd  %xmm0,(%rax)
  add    %rcx,%rax
  cmp    %edx,%r9d
  jne    L316
  lea    0x1(%rbx),%eax
  add    $0x8,%r11
  sub    $0x8,%rdi
  cmp    %r10d,%ebx
  je     L338
  mov    %eax,%ebx
  jmp    L959
L881:
  ucomisd %xmm1,%xmm5
  ja     L863
  movapd %xmm1,%xmm3
  sqrtsd %xmm3,%xmm3
L1459:
  andpd  %xmm4,%xmm3
  jmp    L932
L514:
  xorpd  D234(%rip),%xmm9
  movsd  %xmm9,(%rax)
  test   %ebx,%ebx
  jle    L362
  mov    0x70(%rsp),%rax
  xor    %edx,%edx
  add    %r11,%rax
L297:
  movsd  (%rax),%xmm0
  xorpd  D234(%rip),%xmm0
  add    $0x1,%edx
  movsd  %xmm0,(%rax)
  add    %rbp,%rax
  cmp    %edx,%ebx
  jne    L297
  jmp    L362
L1227:
  mov    0x8(%rsp),%eax
  add    %ebp,%eax
  mov    %eax,0x18(%rsp)
  jmp    L295
L791:
  jne    L921
  xor    %r12d,%r12d
L501:
  mov    0x98(%rsp),%rdi
  mov    %r11,0x8(%rsp)
  call   <free@plt>
  mov    0x8(%rsp),%rdi
  call   <free@plt>
  mov    0x58(%rsp),%rdi
  call   <free@plt>
  mov    0x10(%rsp),%rdi
  call   <free@plt>
  jmp    L69
L807:
  lea    0x1(%rbx),%eax
  add    %r10,%rsi
  add    $0x8,%rbp
  cmp    %ebx,%r8d
  je     L501
  mov    %eax,%ebx
  jmp    L493
L921:
  movsd  D122(%rip),%xmm7
  pxor   %xmm5,%xmm5
  movl   $0x0,0x18(%rsp)
  movq   D75(%rip),%xmm4
  movapd %xmm5,%xmm3
  movsd  %xmm7,0x90(%rsp)
  movapd %xmm7,%xmm6
  jmp    L209
L1270:
  movapd %xmm2,%xmm0
  mov    %r9,0xf0(%rsp)
  mov    %rcx,0xb0(%rsp)
  mov    %r10d,0x90(%rsp)
  movaps %xmm4,0xe0(%rsp)
  movsd  %xmm5,0xd0(%rsp)
  movsd  %xmm6,0xc8(%rsp)
  movsd  %xmm3,0xa8(%rsp)
  movsd  %xmm2,0x88(%rsp)
  call   <sqrt@plt>
  mov    0xf0(%rsp),%r9
  movapd 0xe0(%rsp),%xmm4
  movsd  0xd0(%rsp),%xmm5
  movapd %xmm0,%xmm1
  movsd  0xc8(%rsp),%xmm6
  mov    0xb0(%rsp),%rcx
  movsd  0xa8(%rsp),%xmm3
  mov    0x90(%rsp),%r10d
  movsd  0x88(%rsp),%xmm2
  jmp    L1204
L757:
  mov    %rsi,0xe0(%rsp)
  mov    %r8,0xc8(%rsp)
  mov    %rdi,0xb0(%rsp)
  mov    %r11,0x88(%rsp)
  movsd  %xmm9,0xf8(%rsp)
  movaps %xmm4,0xd0(%rsp)
  movsd  %xmm5,0xf0(%rsp)
  movsd  %xmm6,0xa0(%rsp)
  movsd  %xmm10,0x80(%rsp)
  movsd  %xmm2,0x78(%rsp)
  movsd  %xmm3,0x68(%rsp)
  movsd  %xmm1,0x60(%rsp)
  call   <sqrt@plt>
  mov    D13(%rip),%rax
  movsd  0xf8(%rsp),%xmm9
  mov    0xe0(%rsp),%rsi
  mov    0xc8(%rsp),%r8
  movapd 0xd0(%rsp),%xmm4
  movsd  0x78(%rsp),%xmm2
  movq   %rax,%xmm7
  movsd  0xf0(%rsp),%xmm5
  mov    0xb0(%rsp),%rdi
  movsd  0xa0(%rsp),%xmm6
  movsd  0x68(%rsp),%xmm3
  mov    0x88(%rsp),%r11
  movsd  0x60(%rsp),%xmm1
  movq   D234(%rip),%xmm8
  movsd  0x80(%rsp),%xmm10
  jmp    L539
L395:
  mov    %rsi,0x120(%rsp)
  mov    %r10,0x100(%rsp)
  mov    %r8,0xf8(%rsp)
  mov    %rdi,0xe0(%rsp)
  mov    %r11,0xb0(%rsp)
  mov    %r9,0xa0(%rsp)
  mov    %rcx,0x88(%rsp)
  movaps %xmm4,0x110(%rsp)
  movsd  %xmm5,0x130(%rsp)
  movsd  %xmm6,0xd0(%rsp)
  movsd  %xmm10,0xf0(%rsp)
  movsd  %xmm11,0xc8(%rsp)
  movsd  %xmm3,0x80(%rsp)
  movsd  %xmm9,0x78(%rsp)
  movsd  %xmm1,0x68(%rsp)
  movsd  %xmm13,0x60(%rsp)
  call   <sqrt@plt>
  mov    D13(%rip),%rax
  mov    0x120(%rsp),%rsi
  movapd 0x110(%rsp),%xmm4
  mov    0x100(%rsp),%r10
  movsd  0x130(%rsp),%xmm5
  movsd  0x78(%rsp),%xmm9
  movq   %rax,%xmm7
  mov    0xf8(%rsp),%r8
  movsd  0x68(%rsp),%xmm1
  mov    0xe0(%rsp),%rdi
  movsd  0xd0(%rsp),%xmm6
  mov    0xb0(%rsp),%r11
  movsd  0x60(%rsp),%xmm13
  mov    0xa0(%rsp),%r9
  mov    0x88(%rsp),%rcx
  movsd  0xf0(%rsp),%xmm10
  movsd  0xc8(%rsp),%xmm11
  movq   D234(%rip),%xmm8
  movsd  0x80(%rsp),%xmm3
  jmp    L99
L1111:
  mov    %rsi,0x138(%rsp)
  mov    %r10,0x130(%rsp)
  mov    %r8,0x100(%rsp)
  mov    %rdi,0xf8(%rsp)
  mov    %r11,0xd0(%rsp)
  mov    %r9,0xb0(%rsp)
  mov    %rcx,0xa0(%rsp)
  movaps %xmm4,0x120(%rsp)
  movsd  %xmm5,0x110(%rsp)
  movsd  %xmm6,0xe0(%rsp)
  movsd  %xmm1,0xf0(%rsp)
  movsd  %xmm3,0xc8(%rsp)
  movsd  %xmm13,0x88(%rsp)
  movsd  %xmm10,0x80(%rsp)
  movsd  %xmm12,0x78(%rsp)
  movsd  %xmm9,0x68(%rsp)
  movsd  %xmm11,0x60(%rsp)
  call   <sqrt@plt>
  mov    D13(%rip),%rax
  mov    0x138(%rsp),%rsi
  movapd 0x120(%rsp),%xmm4
  mov    0x130(%rsp),%r10
  movsd  0x110(%rsp),%xmm5
  movsd  0x78(%rsp),%xmm12
  movq   %rax,%xmm7
  mov    0x100(%rsp),%r8
  mov    0xf8(%rsp),%rdi
  movsd  0xe0(%rsp),%xmm6
  movsd  0x68(%rsp),%xmm9
  mov    0xd0(%rsp),%r11
  movsd  0x60(%rsp),%xmm11
  mov    0xb0(%rsp),%r9
  mov    0xa0(%rsp),%rcx
  movsd  0xf0(%rsp),%xmm1
  movsd  0xc8(%rsp),%xmm3
  movq   D234(%rip),%xmm8
  movsd  0x88(%rsp),%xmm13
  movsd  0x80(%rsp),%xmm10
  jmp    L1241
L269:
  mov    %rsi,0x138(%rsp)
  mov    %r10,0x130(%rsp)
  mov    %r8,0x100(%rsp)
  mov    %rdi,0xf8(%rsp)
  mov    %r11,0xd0(%rsp)
  mov    %r9,0xb0(%rsp)
  mov    %rcx,0xa0(%rsp)
  movaps %xmm4,0x120(%rsp)
  movsd  %xmm5,0x110(%rsp)
  movsd  %xmm6,0xe0(%rsp)
  movsd  %xmm1,0xf0(%rsp)
  movsd  %xmm3,0xc8(%rsp)
  movsd  %xmm2,0x88(%rsp)
  movsd  %xmm10,0x80(%rsp)
  movsd  %xmm12,0x78(%rsp)
  movsd  %xmm9,0x68(%rsp)
  movsd  %xmm11,0x60(%rsp)
  call   <sqrt@plt>
  mov    D13(%rip),%rax
  mov    0x138(%rsp),%rsi
  movapd 0x120(%rsp),%xmm4
  mov    0x130(%rsp),%r10
  movsd  0x110(%rsp),%xmm5
  movsd  0x78(%rsp),%xmm12
  movq   %rax,%xmm7
  mov    0x100(%rsp),%r8
  mov    0xf8(%rsp),%rdi
  movsd  0xe0(%rsp),%xmm6
  movsd  0x68(%rsp),%xmm9
  mov    0xd0(%rsp),%r11
  movsd  0x60(%rsp),%xmm11
  mov    0xb0(%rsp),%r9
  mov    0xa0(%rsp),%rcx
  movsd  0xf0(%rsp),%xmm1
  movsd  0xc8(%rsp),%xmm3
  movq   D234(%rip),%xmm8
  movsd  0x88(%rsp),%xmm2
  movsd  0x80(%rsp),%xmm10
  jmp    L584
L40:
  movapd %xmm1,%xmm0
  mov    %rsi,0x120(%rsp)
  mov    %r8,0x100(%rsp)
  mov    %r10,0xf8(%rsp)
  mov    %rcx,0xe0(%rsp)
  mov    %r11d,0xd0(%rsp)
  mov    %r9d,0xc8(%rsp)
  mov    %edi,0xb0(%rsp)
  mov    %rax,0xa0(%rsp)
  movaps %xmm4,0x110(%rsp)
  movsd  %xmm5,0x130(%rsp)
  movsd  %xmm6,0xf0(%rsp)
  movsd  %xmm2,0x88(%rsp)
  movsd  %xmm9,0x80(%rsp)
  movsd  %xmm3,0x78(%rsp)
  call   <sqrt@plt>
  mov    D13(%rip),%rax
  mov    0x120(%rsp),%rsi
  movapd 0x110(%rsp),%xmm4
  mov    0x100(%rsp),%r8
  movapd %xmm0,%xmm1
  movq   %rax,%xmm7
  mov    0xf8(%rsp),%r10
  movsd  0x130(%rsp),%xmm5
  mov    0xe0(%rsp),%rcx
  mov    0xd0(%rsp),%r11d
  movsd  0xf0(%rsp),%xmm6
  mov    0xb0(%rsp),%edi
  mov    0xc8(%rsp),%r9d
  movsd  0x78(%rsp),%xmm3
  movq   D234(%rip),%xmm8
  mov    0xa0(%rsp),%rax
  movsd  0x88(%rsp),%xmm2
  movsd  0x80(%rsp),%xmm9
  jmp    L1316
L1076:
  mov    %rsi,0x120(%rsp)
  mov    %r8,0x100(%rsp)
  mov    %r10,0xf8(%rsp)
  mov    %rcx,0xe0(%rsp)
  mov    %r11d,0xd0(%rsp)
  mov    %r9d,0xc8(%rsp)
  mov    %edi,0xb0(%rsp)
  mov    %rax,0xa0(%rsp)
  movaps %xmm4,0x110(%rsp)
  movsd  %xmm5,0x130(%rsp)
  movsd  %xmm6,0xf0(%rsp)
  movsd  %xmm9,0x88(%rsp)
  movsd  %xmm3,0x80(%rsp)
  movsd  %xmm1,0x78(%rsp)
  call   <sqrt@plt>
  mov    D13(%rip),%rax
  mov    0x120(%rsp),%rsi
  movapd 0x110(%rsp),%xmm4
  mov    0x100(%rsp),%r8
  movq   %rax,%xmm7
  mov    0xf8(%rsp),%r10
  movsd  0x130(%rsp),%xmm5
  mov    0xe0(%rsp),%rcx
  mov    0xd0(%rsp),%r11d
  movsd  0xf0(%rsp),%xmm6
  mov    0xb0(%rsp),%edi
  mov    0xc8(%rsp),%r9d
  movsd  0x78(%rsp),%xmm1
  movq   D234(%rip),%xmm8
  mov    0xa0(%rsp),%rax
  movsd  0x88(%rsp),%xmm9
  movsd  0x80(%rsp),%xmm3
  jmp    L784
L863:
  movapd %xmm1,%xmm0
  mov    %r9,0xe0(%rsp)
  mov    %rdi,0xc8(%rsp)
  mov    %rcx,0xb0(%rsp)
  mov    %r11,0xa8(%rsp)
  mov    %r10d,0x90(%rsp)
  movaps %xmm4,0x100(%rsp)
  movsd  %xmm5,0xf8(%rsp)
  movsd  %xmm6,0xd0(%rsp)
  movsd  %xmm2,0xf0(%rsp)
  movsd  %xmm1,0x88(%rsp)
  call   <sqrt@plt>
  mov    0xe0(%rsp),%r9
  movapd 0x100(%rsp),%xmm4
  movsd  0xf8(%rsp),%xmm5
  mov    0xc8(%rsp),%rdi
  movapd %xmm0,%xmm3
  mov    0xb0(%rsp),%rcx
  mov    0xa8(%rsp),%r11
  movsd  0xd0(%rsp),%xmm6
  movsd  0xf0(%rsp),%xmm2
  mov    0x90(%rsp),%r10d
  movsd  0x88(%rsp),%xmm1
  jmp    L1459
L477:
  movapd %xmm2,%xmm0
  mov    %r9,0xf0(%rsp)
  mov    %rcx,0xb0(%rsp)
  mov    %r10d,0x90(%rsp)
  movaps %xmm4,0xe0(%rsp)
  movsd  %xmm5,0xd0(%rsp)
  movsd  %xmm6,0xc8(%rsp)
  movsd  %xmm3,0xa8(%rsp)
  movsd  %xmm2,0x88(%rsp)
  call   <sqrt@plt>
  mov    0xf0(%rsp),%r9
  movapd 0xe0(%rsp),%xmm4
  movsd  0xd0(%rsp),%xmm5
  movapd %xmm0,%xmm1
  movsd  0xc8(%rsp),%xmm6
  mov    0xb0(%rsp),%rcx
  movsd  0xa8(%rsp),%xmm3
  mov    0x90(%rsp),%r10d
  movsd  0x88(%rsp),%xmm2
  jmp    L81
L87:
  movapd %xmm1,%xmm0
  mov    %r9,0xe0(%rsp)
  mov    %rdi,0xc8(%rsp)
  mov    %rcx,0xb0(%rsp)
  mov    %r11,0xa8(%rsp)
  mov    %r10d,0x90(%rsp)
  movaps %xmm4,0x100(%rsp)
  movsd  %xmm5,0xf8(%rsp)
  movsd  %xmm6,0xd0(%rsp)
  movsd  %xmm2,0xf0(%rsp)
  movsd  %xmm1,0x88(%rsp)
  call   <sqrt@plt>
  mov    0xe0(%rsp),%r9
  movapd 0x100(%rsp),%xmm4
  movsd  0xf8(%rsp),%xmm5
  mov    0xc8(%rsp),%rdi
  movapd %xmm0,%xmm3
  mov    0xb0(%rsp),%rcx
  mov    0xa8(%rsp),%r11
  movsd  0xd0(%rsp),%xmm6
  movsd  0xf0(%rsp),%xmm2
  mov    0x90(%rsp),%r10d
  movsd  0x88(%rsp),%xmm1
  jmp    L981
  cs nopw 0x0(%rax,%rax,1)
L63:
  mov    %rsi,0x120(%rsp)
  mov    %r10,0x100(%rsp)
  mov    %r8,0xf8(%rsp)
  mov    %rdi,0xe0(%rsp)
  mov    %r11,0xb0(%rsp)
  mov    %r9,0xa0(%rsp)
  mov    %rcx,0x88(%rsp)
  movaps %xmm4,0x110(%rsp)
  movsd  %xmm5,0x130(%rsp)
  movsd  %xmm6,0xd0(%rsp)
  movsd  %xmm10,0xf0(%rsp)
  movsd  %xmm11,0xc8(%rsp)
  movsd  %xmm2,0x80(%rsp)
  movsd  %xmm9,0x78(%rsp)
  movsd  %xmm1,0x68(%rsp)
  movsd  %xmm13,0x60(%rsp)
  call   <sqrt@plt>
  mov    D13(%rip),%rax
  mov    0x120(%rsp),%rsi
  movapd 0x110(%rsp),%xmm4
  mov    0x100(%rsp),%r10
  movsd  0x130(%rsp),%xmm5
  movsd  0x78(%rsp),%xmm9
  movq   %rax,%xmm7
  mov    0xf8(%rsp),%r8
  movsd  0x68(%rsp),%xmm1
  mov    0xe0(%rsp),%rdi
  movsd  0xd0(%rsp),%xmm6
  mov    0xb0(%rsp),%r11
  movsd  0x60(%rsp),%xmm13
  mov    0xa0(%rsp),%r9
  mov    0x88(%rsp),%rcx
  movsd  0xf0(%rsp),%xmm10
  movsd  0xc8(%rsp),%xmm11
  movq   D234(%rip),%xmm8
  movsd  0x80(%rsp),%xmm2
  jmp    L52
L191:
  mov    %rsi,0xe0(%rsp)
  mov    %r8,0xc8(%rsp)
  mov    %rdi,0xb0(%rsp)
  mov    %r11,0x88(%rsp)
  movsd  %xmm9,0xf8(%rsp)
  movaps %xmm4,0xd0(%rsp)
  movsd  %xmm5,0xf0(%rsp)
  movsd  %xmm6,0xa0(%rsp)
  movsd  %xmm10,0x80(%rsp)
  movsd  %xmm2,0x78(%rsp)
  movsd  %xmm3,0x68(%rsp)
  movsd  %xmm1,0x60(%rsp)
  call   <sqrt@plt>
  mov    D13(%rip),%rax
  movsd  0xf8(%rsp),%xmm9
  mov    0xe0(%rsp),%rsi
  mov    0xc8(%rsp),%r8
  movapd 0xd0(%rsp),%xmm4
  movsd  0x78(%rsp),%xmm2
  movq   %rax,%xmm7
  movsd  0xf0(%rsp),%xmm5
  mov    0xb0(%rsp),%rdi
  movsd  0xa0(%rsp),%xmm6
  movsd  0x68(%rsp),%xmm3
  mov    0x88(%rsp),%r11
  movsd  0x60(%rsp),%xmm1
  movq   D234(%rip),%xmm8
  movsd  0x80(%rsp),%xmm10
  jmp    L1159
```

tool_calls: name: unpack_data
arguments: label: D75
type: qword
name: unpack_data
arguments: label: D122
type: byte[8]
name: unpack_data
arguments: label: D13
type: f64
name: unpack_data
arguments: label: D234
type: f32[4]

tool: D75: 9223372036854775807

tool: {"D122": [0x95,0xd6,0x26,0xe8,0x0b,0x2e,0x11,0x3e]}

tool: D13: 1

tool: {"D234": [0.0,-0.0,0.0,0.0]}

assistant: ```c
int dsvdinv(double *a, double *b, int m) {
  int flag, i, its, j, jj, k, l, nm, rank;
  double *vmat, *wmat, *w, *rv1, *tmp, c, f, h, s, x, y, z, anorm, g, scale, at, bt, ct, maxarg1, maxarg2, thresh, wmax, tol, tanorm;
  anorm = g = scale = 0.0;
  tanorm = tol = sizeof(anorm) > 4 ? 1.0e-9 : 1.0e-6;
  rv1 = (double *)malloc(m * sizeof(double));
  tmp = (double *)malloc(m * sizeof(double));
  vmat = (double *)malloc(m * m * sizeof(double));
  wmat = (double *)malloc(m * sizeof(double));
  l = nm = 0;
  for (i = 0; i < m; i++) {
    l = i + 1;
    rv1[i] = scale * g;
    g = s = scale = 0.0;
    for (k = i; k < m; k++)
      scale += fabs(a[k * m + i]);
    if (scale) {
      for (k = i; k < m; k++) {
        a[k * m + i] /= scale;
        s += a[k * m + i] * a[k * m + i];
      }
      f = a[i * m + i];
      g = -((f) >= 0.0 ? fabs(sqrt(s)) : -fabs(sqrt(s)));
      h = f * g - s;
      a[i * m + i] = f - g;
      for (j = l; j < m; j++) {
        s = 0.0;
        for (k = i; k < m; k++)
          s += a[k * m + i] * a[k * m + j];
        f = s / h;
        for (k = i; k < m; k++)
          a[k * m + j] += f * a[k * m + i];
      }
      for (k = i; k < m; k++)
        a[k * m + i] *= scale;
    }
    wmat[i] = scale * g;
    g = s = scale = 0.0;
    if (l != m) {
      for (k = l; k < m; k++)
        scale += fabs(a[i * m + k]);
      if (scale) {
        for (k = l; k < m; k++) {
          a[i * m + k] /= scale;
          s += a[i * m + k] * a[i * m + k];
        }
        f = a[i * m + l];
        g = -((f) >= 0.0 ? fabs(sqrt(s)) : -fabs(sqrt(s)));
        h = f * g - s;
        a[i * m + l] = f - g;
        for (k = l; k < m; k++)
          rv1[k] = a[i * m + k] / h;
        for (j = l; j < m; j++) {
          s = 0.0;
          for (k = l; k < m; k++)
            s += a[j * m + k] * a[i * m + k];
          for (k = l; k < m; k++)
            a[j * m + k] += s * rv1[k];
        }
        for (k = l; k < m; k++)
          a[i * m + k] *= scale;
      }
    }
    anorm = (maxarg1 = (anorm), maxarg2 = ((fabs(wmat[i]) + fabs(rv1[i]))), (maxarg1) > (maxarg2) ? (maxarg1) : (maxarg2));
    tanorm = tol * anorm;
  }
  for (i = m; i--;) {
    if (i < m - 1) {
      if (g) {
        for (j = l; j < m; j++)
          vmat[j * m + i] = (a[i * m + j] / a[i * m + l]) / g;
        for (j = l; j < m; j++) {
          s = 0.0;
          for (k = l; k < m; k++)
            s += a[i * m + k] * vmat[k * m + j];
          for (k = l; k < m; k++)
            vmat[k * m + j] += s * vmat[k * m + i];
        }
      }
      for (j = l; j < m; j++)
        vmat[i * m + j] = vmat[j * m + i] = 0.0;
    }
    vmat[i * m + i] = 1.0;
    g = rv1[i];
    l = i;
  }
  for (i = m; i--;) {
    l = i + 1;
    g = wmat[i];
    for (j = l; j < m; j++)
      a[i * m + j] = 0.0;
    if (g) {
      g = 1.0 / g;
      for (j = l; j < m; j++) {
        s = 0.0;
        for (k = l; k < m; k++)
          s += a[k * m + i] * a[k * m + j];
        f = (s / a[i * m + i]) * g;
        for (k = i; k < m; k++)
          a[k * m + j] += f * a[k * m + i];
      }
      for (j = i; j < m; j++)
        a[j * m + i] *= g;
    } else
      for (j = i; j < m; j++)
        a[j * m + i] = 0.0;
    ++a[i * m + i];
  }
  for (k = m; k--;) {
    for (its = 0; its < 30; its++) {
      flag = 1;
      for (l = k + 1; l--;) {
        nm = l - 1;
        if (fabs(rv1[l]) <= tanorm || !l) {
          flag = 0;
          break;
        }
        if (fabs(wmat[nm]) <= tanorm)
          break;
      }
      if (flag) {
        c = 0.0;
        s = 1.0;
        for (i = l; i <= k; i++) {
          f = s * rv1[i];
          rv1[i] = c * rv1[i];
          if (fabs(f) <= tanorm)
            break;
          g = wmat[i];
          h = ((at = fabs(f)) > (bt = fabs(g)) ? (ct = bt / at, at * sqrt(1.0 + ct * ct)) : (bt ? (ct = at / bt, bt * sqrt(1.0 + ct * ct)) : 0.0));
          wmat[i] = h;
          h = 1.0 / h;
          c = g * h;
          s = -f * h;
          for (j = 0; j < m; j++) {
            y = a[j * m + nm];
            z = a[j * m + i];
            a[j * m + nm] = y * c + z * s;
            a[j * m + i] = z * c - y * s;
          }
        }
      }
      z = wmat[k];
      if (l == k) {
        if (z < 0.0) {
          wmat[k] = -z;
          for (j = 0; j < m; j++)
            vmat[j * m + k] = -vmat[j * m + k];
        }
        break;
      }
      if (its == 29)
        return 0;
      x = wmat[l];
      nm = k - 1;
      y = wmat[nm];
      g = rv1[nm];
      h = rv1[k];
      f = ((y - z) * (y + z) + (g - h) * (g + h)) / (2.0 * h * y);
      g = ((at = fabs(f)) > (bt = fabs(1.0)) ? (ct = bt / at, at * sqrt(1.0 + ct * ct)) : (bt ? (ct = at / bt, bt * sqrt(1.0 + ct * ct)) : 0.0));
      f = ((x - z) * (x + z) + h * ((y / (f + ((f) >= 0.0 ? fabs(g) : -fabs(g)))) - h)) / x;
      c = s = 1.0;
      for (j = l; j <= nm; j++) {
        i = j + 1;
        g = rv1[i];
        y = wmat[i];
        h = s * g;
        g = c * g;
        z = ((at = fabs(f)) > (bt = fabs(h)) ? (ct = bt / at, at * sqrt(1.0 + ct * ct)) : (bt ? (ct = at / bt, bt * sqrt(1.0 + ct * ct)) : 0.0));
        rv1[j] = z;
        c = f / z;
        s = h / z;
        f = x * c + g * s;
        g = g * c - x * s;
        h = y * s;
        y *= c;
        for (jj = 0; jj < m; jj++) {
          x = vmat[jj * m + j];
          z = vmat[jj * m + i];
          vmat[jj * m + j] = x * c + z * s;
          vmat[jj * m + i] = z * c - x * s;
        }
        z = ((at = fabs(f)) > (bt = fabs(h)) ? (ct = bt / at, at * sqrt(1.0 + ct * ct)) : (bt ? (ct = at / bt, bt * sqrt(1.0 + ct * ct)) : 0.0));
        wmat[j] = z;
        if (z) {
          z = 1.0 / z;
          c = f * z;
          s = h * z;
        }
        f = c * g + s * y;
        x = c * y - s * g;
        for (jj = 0; jj < m; jj++) {
          y = a[jj * m + j];
          z = a[jj * m + i];
          a[jj * m + j] = y * c + z * s;
          a[jj * m + i] = z * c - y * s;
        }
      }
      rv1[l] = 0.0;
      rv1[k] = f;
      wmat[k] = x;
    }
  }
  wmax = 0.0;
  w = wmat;
  for (j = m; j--; w++)
    if (*w > wmax)
      wmax = *w;
  thresh = tol * wmax;
  rank = 0;
  w = wmat;
  for (j = m; j--; w++)
    if (*w <= thresh)
      *w = 0.0;
    else {
      rank++;
      *w = 1.0 / *w;
    }
  for (j = 0; j < m; j++)
    for (i = 0; i < m; i++) {
      s = 0.0;
      for (k = 0; k < m; k++)
        s += vmat[k + j * m] * a[k + i * m] * wmat[k];
      b[j + i * m] = s;
    }
  free(tmp);
  free(rv1);
  free(vmat);
  free(wmat);
  return rank;
}
```