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

```asm
<c_fit_ols>:
  endbr64
  movupd (%rdi),%xmm0
  pxor   %xmm2,%xmm2
  movsd  (%rsi),%xmm1
  movupd 0x40(%rsi),%xmm8
  movapd %xmm0,%xmm3
  addsd  %xmm2,%xmm1
  movapd %xmm0,%xmm7
  addsd  %xmm2,%xmm3
  unpckhpd %xmm7,%xmm7
  movapd %xmm8,%xmm9
  movapd %xmm3,%xmm6
  movsd  0x8(%rsi),%xmm3
  addsd  %xmm7,%xmm6
  movupd (%rsi),%xmm7
  addsd  %xmm3,%xmm1
  movapd %xmm0,%xmm3
  mulpd  %xmm0,%xmm3
  mulpd  %xmm7,%xmm0
  movapd %xmm3,%xmm5
  unpckhpd %xmm3,%xmm3
  addsd  %xmm2,%xmm5
  addsd  %xmm0,%xmm2
  unpckhpd %xmm0,%xmm0
  addsd  %xmm0,%xmm2
  movupd 0x10(%rdi),%xmm0
  addsd  %xmm3,%xmm5
  movapd %xmm0,%xmm3
  movapd %xmm0,%xmm7
  addsd  %xmm6,%xmm3
  unpckhpd %xmm7,%xmm7
  movapd %xmm7,%xmm4
  movupd 0x10(%rsi),%xmm7
  addsd  %xmm3,%xmm4
  movsd  0x10(%rsi),%xmm3
  addsd  %xmm3,%xmm1
  movsd  0x18(%rsi),%xmm3
  addsd  %xmm1,%xmm3
  movapd %xmm0,%xmm1
  mulpd  %xmm0,%xmm1
  mulpd  %xmm7,%xmm0
  addsd  %xmm1,%xmm5
  unpckhpd %xmm1,%xmm1
  addsd  %xmm0,%xmm2
  unpckhpd %xmm0,%xmm0
  addsd  %xmm5,%xmm1
  addsd  %xmm2,%xmm0
  movupd 0x20(%rdi),%xmm2
  addsd  %xmm2,%xmm4
  movapd %xmm2,%xmm6
  unpckhpd %xmm6,%xmm6
  movapd %xmm6,%xmm5
  movupd 0x20(%rsi),%xmm6
  addsd  %xmm4,%xmm5
  movsd  0x20(%rsi),%xmm4
  addsd  %xmm4,%xmm3
  movsd  0x28(%rsi),%xmm4
  addsd  %xmm3,%xmm4
  movapd %xmm2,%xmm3
  mulpd  %xmm2,%xmm3
  mulpd  %xmm6,%xmm2
  addsd  %xmm3,%xmm1
  unpckhpd %xmm3,%xmm3
  addsd  %xmm2,%xmm0
  unpckhpd %xmm2,%xmm2
  addsd  %xmm1,%xmm3
  movsd  0x30(%rsi),%xmm1
  addsd  %xmm2,%xmm0
  movupd 0x30(%rdi),%xmm2
  addsd  %xmm1,%xmm4
  movsd  0x38(%rsi),%xmm1
  addsd  %xmm2,%xmm5
  movapd %xmm2,%xmm7
  unpckhpd %xmm7,%xmm7
  addsd  %xmm1,%xmm4
  movapd %xmm2,%xmm1
  addsd  %xmm7,%xmm5
  movupd 0x30(%rsi),%xmm7
  mulpd  %xmm2,%xmm1
  mulpd  %xmm7,%xmm2
  addsd  %xmm4,%xmm9
  addsd  %xmm1,%xmm3
  unpckhpd %xmm1,%xmm1
  addsd  %xmm2,%xmm0
  unpckhpd %xmm2,%xmm2
  addsd  %xmm3,%xmm1
  addsd  %xmm0,%xmm2
  movupd 0x40(%rdi),%xmm0
  movapd %xmm0,%xmm4
  movapd %xmm0,%xmm7
  mulpd  %xmm0,%xmm4
  addsd  %xmm5,%xmm7
  movapd %xmm2,%xmm3
  movapd %xmm8,%xmm2
  pxor   %xmm5,%xmm5
  unpckhpd %xmm8,%xmm8
  mulpd  %xmm0,%xmm2
  cvtsi2sdl (%rdx),%xmm5
  unpckhpd %xmm0,%xmm0
  addsd  %xmm7,%xmm0
  movapd %xmm4,%xmm6
  unpckhpd %xmm4,%xmm4
  addsd  %xmm1,%xmm6
  divsd  %xmm5,%xmm0
  movapd %xmm8,%xmm1
  addsd  %xmm9,%xmm1
  addsd  %xmm2,%xmm3
  unpckhpd %xmm2,%xmm2
  addsd  %xmm3,%xmm2
  divsd  %xmm5,%xmm1
  movapd %xmm0,%xmm3
  divsd  %xmm5,%xmm2
  mulsd  %xmm1,%xmm3
  subsd  %xmm3,%xmm2
  movapd %xmm4,%xmm3
  movapd %xmm0,%xmm4
  addsd  %xmm6,%xmm3
  mulsd  %xmm0,%xmm4
  divsd  %xmm5,%xmm3
  subsd  %xmm4,%xmm3
  divsd  %xmm3,%xmm2
  mulsd  %xmm2,%xmm0
  subsd  %xmm0,%xmm1
  unpcklpd %xmm2,%xmm1
  movups %xmm1,(%rcx)
  ret
```

assistant: ```c
void c_fit_ols(double *x, double *y, int *n, double *beta) {
  double sumx = 0;
  double sumy = 0;
  double sumx2 = 0;
  double sumxy = 0;
  for (int i = 0; i < 10; i++) {
    sumx += x[i];
    sumy += y[i];
    sumx2 += x[i] * x[i];
    sumxy += x[i] * y[i];
  }
  double nd;
  nd = (double)*n;
  double xbar = sumx / nd;
  double ybar = sumy / nd;
  double x2bar = sumx2 / nd;
  double xybar = sumxy / nd;
  beta[1] = (xybar - xbar * ybar) / (x2bar - xbar * xbar);
  beta[0] = ybar - beta[1] * xbar;
}
```