user: What would the C source look like for the assembly code provided here?

```asm
<sleepTime>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x20,%rsp
  movss  %xmm0,-0x14(%rbp)
  mov    %rdi,-0x20(%rbp)
  movss  -0x14(%rbp),%xmm0
  comiss D173(%rip),%xmm0
  jb     L120
  movq   $0x3c,-0x8(%rbp)
L120:
  movss  D173(%rip),%xmm0
  comiss -0x14(%rbp),%xmm0
  jbe    L143
  pxor   %xmm0,%xmm0
  cvtss2sd -0x14(%rbp),%xmm0
  comisd D5(%rip),%xmm0
  jb     L143
  movq   $0x78,-0x8(%rbp)
L143:
  pxor   %xmm1,%xmm1
  cvtss2sd -0x14(%rbp),%xmm1
  movsd  D5(%rip),%xmm0
  comisd %xmm1,%xmm0
  jbe    L5
  pxor   %xmm0,%xmm0
  cvtss2sd -0x14(%rbp),%xmm0
  comisd D155(%rip),%xmm0
  jb     L5
  movq   $0xb4,-0x8(%rbp)
L5:
  pxor   %xmm1,%xmm1
  cvtss2sd -0x14(%rbp),%xmm1
  movsd  D155(%rip),%xmm0
  comisd %xmm1,%xmm0
  jbe    L25
  pxor   %xmm0,%xmm0
  cvtss2sd -0x14(%rbp),%xmm0
  comisd D44(%rip),%xmm0
  jb     L25
  movq   $0xf0,-0x8(%rbp)
L25:
  pxor   %xmm1,%xmm1
  cvtss2sd -0x14(%rbp),%xmm1
  movsd  D44(%rip),%xmm0
  comisd %xmm1,%xmm0
  jbe    L146
  pxor   %xmm0,%xmm0
  cvtss2sd -0x14(%rbp),%xmm0
  comisd D15(%rip),%xmm0
  jb     L146
  movq   $0x12c,-0x8(%rbp)
L146:
  pxor   %xmm1,%xmm1
  cvtss2sd -0x14(%rbp),%xmm1
  movsd  D15(%rip),%xmm0
  comisd %xmm1,%xmm0
  jbe    L183
  movss  -0x14(%rbp),%xmm0
  comiss D46(%rip),%xmm0
  jb     L183
  movq   $0x168,-0x8(%rbp)
L183:
  movss  D46(%rip),%xmm0
  comiss -0x14(%rbp),%xmm0
  jbe    L83
  pxor   %xmm0,%xmm0
  cvtss2sd -0x14(%rbp),%xmm0
  comisd D140(%rip),%xmm0
  jb     L83
  movq   $0x1a4,-0x8(%rbp)
L83:
  pxor   %xmm1,%xmm1
  cvtss2sd -0x14(%rbp),%xmm1
  movsd  D140(%rip),%xmm0
  comisd %xmm1,%xmm0
  jbe    L144
  pxor   %xmm0,%xmm0
  cvtss2sd -0x14(%rbp),%xmm0
  comisd D50(%rip),%xmm0
  jb     L144
  movq   $0x1e0,-0x8(%rbp)
L144:
  pxor   %xmm1,%xmm1
  cvtss2sd -0x14(%rbp),%xmm1
  movsd  D50(%rip),%xmm0
  comisd %xmm1,%xmm0
  jbe    L49
  pxor   %xmm0,%xmm0
  cvtss2sd -0x14(%rbp),%xmm0
  comisd D75(%rip),%xmm0
  jb     L49
  movq   $0x258,-0x8(%rbp)
L49:
  pxor   %xmm1,%xmm1
  cvtss2sd -0x14(%rbp),%xmm1
  movsd  D75(%rip),%xmm0
  comisd %xmm1,%xmm0
  jbe    L193
  movq   $0x384,-0x8(%rbp)
L193:
  mov    $0x0,%eax
  call   <millis@plt>
  sub    -0x20(%rbp),%rax
  shr    $0x3,%rax
  movabs $0x20c49ba5e353f7cf,%rdx
  mul    %rdx
  mov    %rdx,%rax
  shr    $0x4,%rax
  sub    %rax,-0x8(%rbp)
  cmpq   $0xa,-0x8(%rbp)
  ja     L60
  movq   $0xa,-0x8(%rbp)
L60:
  cmpq   $0x384,-0x8(%rbp)
  jbe    L106
  movq   $0x384,-0x8(%rbp)
L106:
  mov    -0x8(%rbp),%rax
  leave
  ret
```

tool_calls: name: parse_data
arguments: label: D173
type: f32
name: parse_data
arguments: label: D5
type: f64[2]
name: parse_data
arguments: label: D155
type: f64[2]
name: parse_data
arguments: label: D44
type: f64[2]
name: parse_data
arguments: label: D15
type: f64[2]
name: parse_data
arguments: label: D46
type: f32
name: parse_data
arguments: label: D140
type: f64[2]
name: parse_data
arguments: label: D50
type: f64[2]
name: parse_data
arguments: label: D75
type: f64

tool: D173: 4

tool: {"D5": [3.9,3.8]}

tool: {"D155": [3.8,3.7]}

tool: {"D44": [3.7,3.6]}

tool: {"D15": [3.6,5.3360734e-315]}

tool: D46: 3.5

tool: {"D140": [3.4,3.3]}

tool: {"D50": [3.3,3.2]}

tool: D75: 3.2

assistant: ```c
int sleepTime(float ASpannung, unsigned long beginn) {
  unsigned long sleep;
  if (ASpannung >= 4) {
    sleep = 60;
  }
  if ((ASpannung < 4.0) && (ASpannung >= 3.9)) {
    sleep = 120;
  }
  if ((ASpannung < 3.9) && (ASpannung >= 3.8)) {
    sleep = 180;
  }
  if ((ASpannung < 3.8) && (ASpannung >= 3.7)) {
    sleep = 240;
  }
  if ((ASpannung < 3.7) && (ASpannung >= 3.6)) {
    sleep = 300;
  }
  if ((ASpannung < 3.6) && (ASpannung >= 3.5)) {
    sleep = 360;
  }
  if ((ASpannung < 3.5) && (ASpannung >= 3.4)) {
    sleep = 420;
  }
  if ((ASpannung < 3.4) && (ASpannung >= 3.3)) {
    sleep = 480;
  }
  if ((ASpannung < 3.3) && (ASpannung >= 3.2)) {
    sleep = 600;
  }
  if (ASpannung < 3.2) {
    sleep = 900;
  }
  sleep = (sleep - ((millis() - beginn) / 1000));
  if (sleep <= 10) {
    sleep = 10;
  }
  if (sleep > 900) {
    sleep = 900;
  }
  return (int)sleep;
}
```