user: 提供的汇编代码用C语言表示会是什么样子：

```asm
<getCustomSplitStatisticCompetingRisk>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0xc0,%rsp
  mov    %edi,-0x84(%rbp)
  mov    %rsi,-0x90(%rbp)
  mov    %rdx,-0x98(%rbp)
  mov    %rcx,-0xa0(%rbp)
  mov    %r8d,-0x88(%rbp)
  mov    %r9d,-0xa4(%rbp)
  movsd  %xmm0,-0xb0(%rbp)
  movsd  %xmm1,-0xb8(%rbp)
  pxor   %xmm0,%xmm0
  movsd  %xmm0,-0x50(%rbp)
  movsd  -0x50(%rbp),%xmm0
  movsd  %xmm0,-0x60(%rbp)
  mov    -0xa4(%rbp),%eax
  mov    %eax,%edi
  call   <alloc_uivector@plt>
  mov    %rax,-0x40(%rbp)
  mov    -0xa4(%rbp),%eax
  mov    %eax,%edi
  call   <alloc_uivector@plt>
  mov    %rax,-0x38(%rbp)
  mov    -0xa4(%rbp),%eax
  mov    %eax,%edi
  call   <alloc_uivector@plt>
  mov    %rax,-0x30(%rbp)
  mov    -0xa4(%rbp),%eax
  mov    %eax,%edi
  call   <alloc_uivector@plt>
  mov    %rax,-0x28(%rbp)
  mov    -0xa4(%rbp),%edx
  mov    -0x88(%rbp),%eax
  mov    %edx,%esi
  mov    %eax,%edi
  call   <alloc_uimatrix@plt>
  mov    %rax,-0x20(%rbp)
  mov    -0xa4(%rbp),%edx
  mov    -0x88(%rbp),%eax
  mov    %edx,%esi
  mov    %eax,%edi
  call   <alloc_uimatrix@plt>
  mov    %rax,-0x18(%rbp)
  mov    -0xa4(%rbp),%edx
  mov    -0x88(%rbp),%eax
  mov    %edx,%esi
  mov    %eax,%edi
  call   <alloc_uimatrix@plt>
  mov    %rax,-0x10(%rbp)
  mov    -0xa4(%rbp),%edx
  mov    -0x88(%rbp),%eax
  mov    %edx,%esi
  mov    %eax,%edi
  call   <alloc_uimatrix@plt>
  mov    %rax,-0x8(%rbp)
  movl   $0x1,-0x74(%rbp)
  jmp    L568
L545:
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x38(%rbp),%rax
  add    %rdx,%rax
  movl   $0x0,(%rax)
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  movl   $0x0,(%rax)
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x40(%rbp),%rax
  add    %rdx,%rax
  movl   $0x0,(%rax)
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  movl   $0x0,(%rax)
  movl   $0x1,-0x78(%rbp)
  jmp    L168
L302:
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x20(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  movl   $0x0,(%rax)
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x18(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  movl   $0x0,(%rax)
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x10(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  movl   $0x0,(%rax)
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x8(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  movl   $0x0,(%rax)
  addl   $0x1,-0x78(%rbp)
L168:
  mov    -0x78(%rbp),%eax
  cmp    -0x88(%rbp),%eax
  jbe    L302
  addl   $0x1,-0x74(%rbp)
L568:
  mov    -0x74(%rbp),%eax
  cmp    -0xa4(%rbp),%eax
  jbe    L545
  mov    -0xa4(%rbp),%eax
  mov    %eax,-0x74(%rbp)
  mov    -0x84(%rbp),%eax
  mov    %eax,-0x7c(%rbp)
  jmp    L221
L419:
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    0x10(%rbp),%rax
  add    %rdx,%rax
  movsd  (%rax),%xmm1
  mov    -0x7c(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x98(%rbp),%rax
  add    %rdx,%rax
  movsd  (%rax),%xmm0
  comisd %xmm1,%xmm0
  jb     L54
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%edx
  add    $0x1,%edx
  mov    %edx,(%rax)
  mov    -0x7c(%rbp),%edx
  mov    -0x90(%rbp),%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x1,%al
  jne    L167
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%edx
  add    $0x1,%edx
  mov    %edx,(%rax)
L167:
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    0x10(%rbp),%rax
  add    %rdx,%rax
  movsd  (%rax),%xmm0
  mov    -0x7c(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x98(%rbp),%rax
  add    %rdx,%rax
  movsd  (%rax),%xmm1
  ucomisd %xmm1,%xmm0
  jp     L561
  ucomisd %xmm1,%xmm0
  jne    L561
  mov    -0x7c(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0xa0(%rbp),%rax
  add    %rdx,%rax
  movsd  (%rax),%xmm0
  pxor   %xmm1,%xmm1
  comisd %xmm1,%xmm0
  jbe    L561
  mov    -0x7c(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0xa0(%rbp),%rax
  add    %rdx,%rax
  movsd  (%rax),%xmm0
  cvttsd2si %xmm0,%rax
  mov    %eax,%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x20(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%edx
  add    $0x1,%edx
  mov    %edx,(%rax)
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x38(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%edx
  add    $0x1,%edx
  mov    %edx,(%rax)
  mov    -0x7c(%rbp),%edx
  mov    -0x90(%rbp),%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x1,%al
  jne    L561
  mov    -0x7c(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0xa0(%rbp),%rax
  add    %rdx,%rax
  movsd  (%rax),%xmm0
  cvttsd2si %xmm0,%rax
  mov    %eax,%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x18(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%edx
  add    $0x1,%edx
  mov    %edx,(%rax)
L561:
  subl   $0x1,-0x7c(%rbp)
  jmp    L221
L54:
  subl   $0x1,-0x74(%rbp)
L221:
  cmpl   $0x0,-0x7c(%rbp)
  je     L166
  cmpl   $0x0,-0x74(%rbp)
  jne    L419
L166:
  mov    -0xa4(%rbp),%eax
  mov    %eax,-0x74(%rbp)
  jmp    L408
L464:
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%ecx
  mov    -0x74(%rbp),%eax
  sub    $0x1,%eax
  mov    %eax,%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%edx
  mov    -0x74(%rbp),%eax
  sub    $0x1,%eax
  mov    %eax,%eax
  lea    0x0(,%rax,4),%rsi
  mov    -0x28(%rbp),%rax
  add    %rsi,%rax
  add    %ecx,%edx
  mov    %edx,(%rax)
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%ecx
  mov    -0x74(%rbp),%eax
  sub    $0x1,%eax
  mov    %eax,%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%edx
  mov    -0x74(%rbp),%eax
  sub    $0x1,%eax
  mov    %eax,%eax
  lea    0x0(,%rax,4),%rsi
  mov    -0x30(%rbp),%rax
  add    %rsi,%rax
  add    %ecx,%edx
  mov    %edx,(%rax)
  subl   $0x1,-0x74(%rbp)
L408:
  cmpl   $0x1,-0x74(%rbp)
  ja     L464
  movl   $0x1,-0x74(%rbp)
  jmp    L176
L20:
  movl   $0x1,-0x78(%rbp)
  jmp    L416
L316:
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    -0x78(%rbp),%edx
  lea    0x0(,%rdx,8),%rcx
  mov    -0x10(%rbp),%rdx
  add    %rcx,%rdx
  mov    (%rdx),%rcx
  mov    -0x74(%rbp),%edx
  shl    $0x2,%rdx
  add    %rcx,%rdx
  mov    (%rax),%eax
  mov    %eax,(%rdx)
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  mov    -0x78(%rbp),%edx
  lea    0x0(,%rdx,8),%rcx
  mov    -0x8(%rbp),%rdx
  add    %rcx,%rdx
  mov    (%rdx),%rcx
  mov    -0x74(%rbp),%edx
  shl    $0x2,%rdx
  add    %rcx,%rdx
  mov    (%rax),%eax
  mov    %eax,(%rdx)
  movl   $0x1,-0x6c(%rbp)
  jmp    L63
L431:
  movl   $0x1,-0x70(%rbp)
  jmp    L260
L543:
  mov    -0x78(%rbp),%eax
  cmp    -0x70(%rbp),%eax
  je     L510
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x10(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%ecx
  mov    -0x70(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x20(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x6c(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%edx
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rsi
  mov    -0x10(%rbp),%rax
  add    %rsi,%rax
  mov    (%rax),%rsi
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rsi,%rax
  add    %ecx,%edx
  mov    %edx,(%rax)
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x8(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%ecx
  mov    -0x70(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x18(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x6c(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%edx
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rsi
  mov    -0x8(%rbp),%rax
  add    %rsi,%rax
  mov    (%rax),%rsi
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rsi,%rax
  add    %ecx,%edx
  mov    %edx,(%rax)
L510:
  addl   $0x1,-0x70(%rbp)
L260:
  mov    -0x70(%rbp),%eax
  cmp    -0x88(%rbp),%eax
  jbe    L543
  addl   $0x1,-0x6c(%rbp)
L63:
  mov    -0x6c(%rbp),%eax
  cmp    -0x74(%rbp),%eax
  jb     L431
  addl   $0x1,-0x78(%rbp)
L416:
  mov    -0x78(%rbp),%eax
  cmp    -0x88(%rbp),%eax
  jbe    L316
  addl   $0x1,-0x74(%rbp)
L176:
  mov    -0x74(%rbp),%eax
  cmp    -0xa4(%rbp),%eax
  jbe    L20
  movl   $0x1,-0x78(%rbp)
  jmp    L196
L245:
  pxor   %xmm0,%xmm0
  movsd  %xmm0,-0x58(%rbp)
  movl   $0x1,-0x74(%rbp)
  jmp    L281
L155:
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x18(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%eax
  mov    %eax,%eax
  test   %rax,%rax
  js     L70
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  jmp    L405
L70:
  mov    %rax,%rdx
  shr    %rdx
  and    $0x1,%eax
  or     %rax,%rdx
  pxor   %xmm0,%xmm0
  cvtsi2sd %rdx,%xmm0
  addsd  %xmm0,%xmm0
L405:
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x20(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%eax
  mov    %eax,%eax
  test   %rax,%rax
  js     L471
  pxor   %xmm2,%xmm2
  cvtsi2sd %rax,%xmm2
  jmp    L454
L471:
  mov    %rax,%rdx
  shr    %rdx
  and    $0x1,%eax
  or     %rax,%rdx
  pxor   %xmm1,%xmm1
  cvtsi2sd %rdx,%xmm1
  movapd %xmm1,%xmm2
  addsd  %xmm1,%xmm2
L454:
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x8(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%eax
  mov    %eax,%eax
  test   %rax,%rax
  js     L565
  pxor   %xmm1,%xmm1
  cvtsi2sd %rax,%xmm1
  jmp    L460
L565:
  mov    %rax,%rdx
  shr    %rdx
  and    $0x1,%eax
  or     %rax,%rdx
  pxor   %xmm1,%xmm1
  cvtsi2sd %rdx,%xmm1
  addsd  %xmm1,%xmm1
L460:
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x10(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%eax
  mov    %eax,%eax
  test   %rax,%rax
  js     L34
  pxor   %xmm3,%xmm3
  cvtsi2sd %rax,%xmm3
  jmp    L365
L34:
  mov    %rax,%rdx
  shr    %rdx
  and    $0x1,%eax
  or     %rax,%rdx
  pxor   %xmm3,%xmm3
  cvtsi2sd %rdx,%xmm3
  addsd  %xmm3,%xmm3
L365:
  divsd  %xmm3,%xmm1
  mulsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x58(%rbp),%xmm1
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x58(%rbp)
  addl   $0x1,-0x74(%rbp)
L281:
  mov    -0x74(%rbp),%eax
  cmp    -0xa4(%rbp),%eax
  jbe    L155
  movsd  -0x60(%rbp),%xmm0
  addsd  -0x58(%rbp),%xmm0
  movsd  %xmm0,-0x60(%rbp)
  pxor   %xmm0,%xmm0
  movsd  %xmm0,-0x48(%rbp)
  movl   $0x1,-0x74(%rbp)
  jmp    L352
L172:
  mov    -0x74(%rbp),%eax
  lea    0x0(,%rax,4),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%eax
  cmp    $0x1,%eax
  jbe    L564
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x20(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%eax
  mov    %eax,%eax
  test   %rax,%rax
  js     L470
  pxor   %xmm1,%xmm1
  cvtsi2sd %rax,%xmm1
  jmp    L12
L470:
  mov    %rax,%rdx
  shr    %rdx
  and    $0x1,%eax
  or     %rax,%rdx
  pxor   %xmm0,%xmm0
  cvtsi2sd %rdx,%xmm0
  movapd %xmm0,%xmm1
  addsd  %xmm0,%xmm1
L12:
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x8(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%eax
  mov    %eax,%eax
  test   %rax,%rax
  js     L58
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  jmp    L472
L58:
  mov    %rax,%rdx
  shr    %rdx
  and    $0x1,%eax
  or     %rax,%rdx
  pxor   %xmm0,%xmm0
  cvtsi2sd %rdx,%xmm0
  addsd  %xmm0,%xmm0
L472:
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x10(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%eax
  mov    %eax,%eax
  test   %rax,%rax
  js     L206
  pxor   %xmm2,%xmm2
  cvtsi2sd %rax,%xmm2
  jmp    L387
L206:
  mov    %rax,%rdx
  shr    %rdx
  and    $0x1,%eax
  or     %rax,%rdx
  pxor   %xmm2,%xmm2
  cvtsi2sd %rdx,%xmm2
  addsd  %xmm2,%xmm2
L387:
  divsd  %xmm2,%xmm0
  movapd %xmm1,%xmm2
  mulsd  %xmm0,%xmm2
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x8(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%eax
  mov    %eax,%eax
  test   %rax,%rax
  js     L197
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  jmp    L497
L197:
  mov    %rax,%rdx
  shr    %rdx
  and    $0x1,%eax
  or     %rax,%rdx
  pxor   %xmm0,%xmm0
  cvtsi2sd %rdx,%xmm0
  addsd  %xmm0,%xmm0
L497:
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x10(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%eax
  mov    %eax,%eax
  test   %rax,%rax
  js     L523
  pxor   %xmm1,%xmm1
  cvtsi2sd %rax,%xmm1
  jmp    L555
L523:
  mov    %rax,%rdx
  shr    %rdx
  and    $0x1,%eax
  or     %rax,%rdx
  pxor   %xmm1,%xmm1
  cvtsi2sd %rdx,%xmm1
  addsd  %xmm1,%xmm1
L555:
  movapd %xmm0,%xmm3
  divsd  %xmm1,%xmm3
  movsd  D8(%rip),%xmm0
  subsd  %xmm3,%xmm0
  mulsd  %xmm0,%xmm2
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x10(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%eax
  mov    -0x78(%rbp),%edx
  lea    0x0(,%rdx,8),%rcx
  mov    -0x20(%rbp),%rdx
  add    %rcx,%rdx
  mov    (%rdx),%rcx
  mov    -0x74(%rbp),%edx
  shl    $0x2,%rdx
  add    %rcx,%rdx
  mov    (%rdx),%edx
  sub    %edx,%eax
  mov    %eax,%eax
  test   %rax,%rax
  js     L243
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  jmp    L415
L243:
  mov    %rax,%rdx
  shr    %rdx
  and    $0x1,%eax
  or     %rax,%rdx
  pxor   %xmm0,%xmm0
  cvtsi2sd %rdx,%xmm0
  addsd  %xmm0,%xmm0
L415:
  mov    -0x78(%rbp),%eax
  lea    0x0(,%rax,8),%rdx
  mov    -0x10(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x74(%rbp),%eax
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    (%rax),%eax
  sub    $0x1,%eax
  mov    %eax,%eax
  test   %rax,%rax
  js     L62
  pxor   %xmm1,%xmm1
  cvtsi2sd %rax,%xmm1
  jmp    L576
L62:
  mov    %rax,%rdx
  shr    %rdx
  and    $0x1,%eax
  or     %rax,%rdx
  pxor   %xmm1,%xmm1
  cvtsi2sd %rdx,%xmm1
  addsd  %xmm1,%xmm1
L576:
  divsd  %xmm1,%xmm0
  mulsd  %xmm2,%xmm0
  movsd  -0x48(%rbp),%xmm1
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x48(%rbp)
L564:
  addl   $0x1,-0x74(%rbp)
L352:
  mov    -0x74(%rbp),%eax
  cmp    -0xa4(%rbp),%eax
  jbe    L172
  movsd  -0x50(%rbp),%xmm0
  addsd  -0x48(%rbp),%xmm0
  movsd  %xmm0,-0x50(%rbp)
  addl   $0x1,-0x78(%rbp)
L196:
  mov    -0x78(%rbp),%eax
  cmp    -0x88(%rbp),%eax
  jbe    L245
  mov    -0xa4(%rbp),%edx
  mov    -0x40(%rbp),%rax
  mov    %edx,%esi
  mov    %rax,%rdi
  call   <dealloc_uivector@plt>
  mov    -0xa4(%rbp),%edx
  mov    -0x38(%rbp),%rax
  mov    %edx,%esi
  mov    %rax,%rdi
  call   <dealloc_uivector@plt>
  mov    -0xa4(%rbp),%edx
  mov    -0x30(%rbp),%rax
  mov    %edx,%esi
  mov    %rax,%rdi
  call   <dealloc_uivector@plt>
  mov    -0xa4(%rbp),%edx
  mov    -0x28(%rbp),%rax
  mov    %edx,%esi
  mov    %rax,%rdi
  call   <dealloc_uivector@plt>
  mov    -0xa4(%rbp),%edx
  mov    -0x88(%rbp),%ecx
  mov    -0x20(%rbp),%rax
  mov    %ecx,%esi
  mov    %rax,%rdi
  call   <dealloc_uimatrix@plt>
  mov    -0xa4(%rbp),%edx
  mov    -0x88(%rbp),%ecx
  mov    -0x18(%rbp),%rax
  mov    %ecx,%esi
  mov    %rax,%rdi
  call   <dealloc_uimatrix@plt>
  mov    -0xa4(%rbp),%edx
  mov    -0x88(%rbp),%ecx
  mov    -0x10(%rbp),%rax
  mov    %ecx,%esi
  mov    %rax,%rdi
  call   <dealloc_uimatrix@plt>
  mov    -0xa4(%rbp),%edx
  mov    -0x88(%rbp),%ecx
  mov    -0x8(%rbp),%rax
  mov    %ecx,%esi
  mov    %rax,%rdi
  call   <dealloc_uimatrix@plt>
  movsd  -0x60(%rbp),%xmm0
  movq   D33(%rip),%xmm1
  andpd  %xmm1,%xmm0
  movsd  %xmm0,-0x60(%rbp)
  mov    -0x50(%rbp),%rax
  movq   %rax,%xmm0
  call   <sqrt@plt>
  movq   %xmm0,%rax
  mov    %rax,-0x50(%rbp)
  movsd  D7(%rip),%xmm0
  comisd -0x50(%rbp),%xmm0
  jb     L486
  movsd  D7(%rip),%xmm0
  comisd -0x60(%rbp),%xmm0
  jb     L122
  pxor   %xmm0,%xmm0
  movsd  %xmm0,-0x68(%rbp)
  jmp    L97
L122:
  movsd  -0x60(%rbp),%xmm0
  divsd  -0x50(%rbp),%xmm0
  movsd  %xmm0,-0x68(%rbp)
  jmp    L97
L486:
  movsd  -0x60(%rbp),%xmm0
  divsd  -0x50(%rbp),%xmm0
  movsd  %xmm0,-0x68(%rbp)
L97:
  movsd  -0x68(%rbp),%xmm0
  movq   %xmm0,%rax
  movq   %rax,%xmm0
  leave
  ret
```

tool_calls: name: retrieve_data
arguments: tag: D8
type_guessed: f64
name: retrieve_data
arguments: tag: D33
type_guessed: qword
name: retrieve_data
arguments: tag: D7
type_guessed: byte[8]

tool: D8: 1

tool: D33: 9223372036854775807

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

assistant: ```c
double getCustomSplitStatisticCompetingRisk(unsigned int n, char *membership, double *time, double *event, unsigned int eventTypeSize, unsigned int eventTimeSize, double *eventTime, double *response, double mean, double variance, unsigned int maxLevel, double **feature, unsigned int featureCount) {
  unsigned int *nodeLeftEvent, *nodeParentEvent;
  unsigned int *nodeLeftAtRisk, *nodeParentAtRisk;
  unsigned int **nodeLeftEventCR, **nodeParentEventCR;
  unsigned int **nodeLeftInclusiveAtRisk, **nodeParentInclusiveAtRisk;
  double delta, deltaNum, deltaSubNum, deltaDen, deltaSubDen;
  unsigned int i, j, k, r, s;
  deltaNum = deltaDen = 0.0;
  nodeLeftEvent = alloc_uivector(eventTimeSize);
  nodeParentEvent = alloc_uivector(eventTimeSize);
  nodeLeftAtRisk = alloc_uivector(eventTimeSize);
  nodeParentAtRisk = alloc_uivector(eventTimeSize);
  nodeParentEventCR = alloc_uimatrix(eventTypeSize, eventTimeSize);
  nodeLeftEventCR = alloc_uimatrix(eventTypeSize, eventTimeSize);
  nodeParentInclusiveAtRisk = alloc_uimatrix(eventTypeSize, eventTimeSize);
  nodeLeftInclusiveAtRisk = alloc_uimatrix(eventTypeSize, eventTimeSize);
  for (k = 1; k <= eventTimeSize; k++) {
    nodeParentEvent[k] = 0;
    nodeParentAtRisk[k] = 0;
    nodeLeftEvent[k] = 0;
    nodeLeftAtRisk[k] = 0;
    for (j = 1; j <= eventTypeSize; j++) {
      nodeParentEventCR[j][k] = 0;
      nodeLeftEventCR[j][k] = 0;
      nodeParentInclusiveAtRisk[j][k] = 0;
      nodeLeftInclusiveAtRisk[j][k] = 0;
    }
  }
  k = eventTimeSize;
  i = n;
  while ((i > 0) && (k > 0)) {
    if (eventTime[k] <= time[i]) {
      nodeParentAtRisk[k]++;
      if (membership[i] == 0x01) {
        nodeLeftAtRisk[k]++;
      }
      if (eventTime[k] == time[i]) {
        if (event[i] > 0) {
          nodeParentEventCR[(unsigned int)event[i]][k]++;
          nodeParentEvent[k]++;
          if (membership[i] == 0x01) {
            nodeLeftEventCR[(unsigned int)event[i]][k]++;
          }
        }
      }
      i--;
    } else {
      k--;
    }
  }
  for (k = eventTimeSize; k > 1; k--) {
    nodeParentAtRisk[k - 1] = nodeParentAtRisk[k] + nodeParentAtRisk[k - 1];
    nodeLeftAtRisk[k - 1] = nodeLeftAtRisk[k] + nodeLeftAtRisk[k - 1];
  }
  for (k = 1; k <= eventTimeSize; k++) {
    for (j = 1; j <= eventTypeSize; j++) {
      nodeParentInclusiveAtRisk[j][k] = nodeParentAtRisk[k];
      nodeLeftInclusiveAtRisk[j][k] = nodeLeftAtRisk[k];
      for (s = 1; s < k; s++) {
        for (r = 1; r <= eventTypeSize; r++) {
          if (j != r) {
            nodeParentInclusiveAtRisk[j][k] += nodeParentEventCR[r][s];
            nodeLeftInclusiveAtRisk[j][k] += nodeLeftEventCR[r][s];
          }
        }
      }
    }
  }
  for (j = 1; j <= eventTypeSize; j++) {
    deltaSubNum = 0;
    for (k = 1; k <= eventTimeSize; k++) {
      deltaSubNum = deltaSubNum + (nodeLeftEventCR[j][k] - (nodeParentEventCR[j][k] * ((double)nodeLeftInclusiveAtRisk[j][k] / nodeParentInclusiveAtRisk[j][k])));
    }
    deltaNum = deltaNum + deltaSubNum;
    deltaSubDen = 0;
    for (k = 1; k <= eventTimeSize; k++) {
      if (nodeParentAtRisk[k] >= 2) {
        deltaSubDen = deltaSubDen + ((nodeParentEventCR[j][k] * ((double)nodeLeftInclusiveAtRisk[j][k] / nodeParentInclusiveAtRisk[j][k])) * (1.0 - ((double)nodeLeftInclusiveAtRisk[j][k] / nodeParentInclusiveAtRisk[j][k])) * ((double)(nodeParentInclusiveAtRisk[j][k] - nodeParentEventCR[j][k]) / (nodeParentInclusiveAtRisk[j][k] - 1)));
      }
    }
    deltaDen = deltaDen + deltaSubDen;
  }
  dealloc_uivector(nodeLeftEvent, eventTimeSize);
  dealloc_uivector(nodeParentEvent, eventTimeSize);
  dealloc_uivector(nodeLeftAtRisk, eventTimeSize);
  dealloc_uivector(nodeParentAtRisk, eventTimeSize);
  dealloc_uimatrix(nodeParentEventCR, eventTypeSize, eventTimeSize);
  dealloc_uimatrix(nodeLeftEventCR, eventTypeSize, eventTimeSize);
  dealloc_uimatrix(nodeParentInclusiveAtRisk, eventTypeSize, eventTimeSize);
  dealloc_uimatrix(nodeLeftInclusiveAtRisk, eventTypeSize, eventTimeSize);
  deltaNum = fabs(deltaNum);
  deltaDen = sqrt(deltaDen);
  if (deltaDen <= 1.0e-9) {
    if (deltaNum <= 1.0e-9) {
      delta = 0.0;
    } else {
      delta = deltaNum / deltaDen;
    }
  } else {
    delta = deltaNum / deltaDen;
  }
  return delta;
}
```