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

```asm
<librpip_uart_config_convert_l2b>:
  endbr64
  cmp    $0x7a120,%edi
  je     L66
  jg     L100
  cmp    $0x9600,%edi
  je     L259
  jle    L197
  cmp    $0x38400,%edi
  je     L117
  jle    L148
  cmp    $0x70800,%edi
  jne    L146
  mov    D23(%rip),%rax
  mov    (%rax),%eax
  ret
  nopl   0x0(%rax,%rax,1)
L100:
  cmp    $0x1e8480,%edi
  je     L106
  jle    L109
  cmp    $0x3567e0,%edi
  je     L228
  jle    L140
  cmp    $0x3d0900,%edi
  jne    L146
  mov    D14(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L148:
  cmp    $0xe100,%edi
  je     L149
  cmp    $0x1c200,%edi
  jne    L146
  mov    D28(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L197:
  cmp    $0x12c0,%edi
  je     L237
  jle    L144
  cmp    $0x2580,%edi
  je     L145
  cmp    $0x4b00,%edi
  jne    L146
  mov    D72(%rip),%rax
  mov    (%rax),%eax
  ret
  nopl   0x0(%rax,%rax,1)
L140:
  cmp    $0x2625a0,%edi
  je     L161
  cmp    $0x2dc6c0,%edi
  jne    L146
  mov    D90(%rip),%rax
  mov    (%rax),%eax
  ret
  xchg   %ax,%ax
L109:
  cmp    $0xf4240,%edi
  je     L260
  jle    L225
  cmp    $0x119400,%edi
  je     L168
  cmp    $0x16e360,%edi
  jne    L146
  mov    D38(%rip),%rax
  mov    (%rax),%eax
  ret
  nopl   0x0(%rax)
L144:
  cmp    $0x4b0,%edi
  je     L88
  cmp    $0x960,%edi
  jne    L146
  mov    D95(%rip),%rax
  mov    (%rax),%eax
  ret
  xchg   %ax,%ax
L225:
  cmp    $0x8ca00,%edi
  je     L74
  cmp    $0xe1000,%edi
  jne    L146
  mov    D5(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L146:
  xor    %eax,%eax
  ret
  nopl   0x0(%rax,%rax,1)
L117:
  mov    D195(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L259:
  mov    D1(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L66:
  mov    D81(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L74:
  mov    D64(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L88:
  mov    D135(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L168:
  mov    D2(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L260:
  mov    D168(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L161:
  mov    D11(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L145:
  mov    D109(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L237:
  mov    D131(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L149:
  mov    D177(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L228:
  mov    D137(%rip),%rax
  mov    (%rax),%eax
  ret
  nopw   0x0(%rax,%rax,1)
L106:
  mov    D104(%rip),%rax
  mov    (%rax),%eax
  ret
```

assistant: ```c
uint32_t librpip_uart_config_convert_l2b(uint32_t baud) {
  switch (baud) {
  case 1200:
    return B1200;
    break;
  case 2400:
    return B2400;
    break;
  case 4800:
    return B4800;
    break;
  case 9600:
    return B9600;
    break;
  case 19200:
    return B19200;
    break;
  case 38400:
    return B38400;
    break;
  case 57600:
    return B57600;
    break;
  case 115200:
    return B115200;
    break;
  case 230400:
    return B230400;
    break;
  case 460800:
    return B460800;
    break;
  case 500000:
    return B500000;
    break;
  case 576000:
    return B576000;
    break;
  case 921600:
    return B921600;
    break;
  case 1000000:
    return B1000000;
    break;
  case 1152000:
    return B1152000;
    break;
  case 1500000:
    return B1500000;
    break;
  case 2000000:
    return B2000000;
    break;
  case 2500000:
    return B2500000;
    break;
  case 3000000:
    return B3000000;
    break;
  case 3500000:
    return B3500000;
    break;
  case 4000000:
    return B4000000;
    break;
  }
  return 0;
}
```