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

```asm
<parse_baud_rate>:
  endbr64
  sub    $0x8,%rsp
  call   <atoi@plt>
  cmp    $0x7a120,%eax
  je     L207
  cmp    $0x7a120,%eax
  jg     L333
  cmp    $0x4b00,%eax
  je     L474
  cmp    $0x4b00,%eax
  jle    L146
  cmp    $0x1c200,%eax
  je     L488
  cmp    $0x1c200,%eax
  jle    L431
  cmp    $0x38400,%eax
  je     L353
  cmp    $0x70800,%eax
  jne    L385
  mov    D152(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L146:
  cmp    $0x960,%eax
  je     L383
  cmp    $0x960,%eax
  jle    L473
  cmp    $0x12c0,%eax
  je     L133
  cmp    $0x2580,%eax
  jne    L385
  mov    D192(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L473:
  cmp    $0x12c,%eax
  je     L294
  cmp    $0x4b0,%eax
  jne    L385
  mov    D121(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L431:
  cmp    $0x9600,%eax
  je     L288
  cmp    $0xe100,%eax
  jne    L385
  mov    D88(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L333:
  cmp    $0x1e8480,%eax
  je     L86
  cmp    $0x1e8480,%eax
  jle    L127
  cmp    $0x3567e0,%eax
  je     L34
  cmp    $0x3567e0,%eax
  jle    L392
  cmp    $0x3d0900,%eax
  jne    L385
  mov    D113(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L127:
  cmp    $0xf4240,%eax
  je     L470
  cmp    $0xf4240,%eax
  jle    L308
  cmp    $0x119400,%eax
  je     L101
  cmp    $0x16e360,%eax
  jne    L385
  mov    D115(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L308:
  cmp    $0x8ca00,%eax
  je     L290
  cmp    $0xe1000,%eax
  jne    L385
  mov    D128(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L392:
  cmp    $0x2625a0,%eax
  je     L263
  cmp    $0x2dc6c0,%eax
  jne    L385
  mov    D34(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L294:
  mov    D37(%rip),%rax
  mov    (%rax),%eax
L236:
  add    $0x8,%rsp
  ret
L383:
  mov    D153(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L133:
  mov    D226(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L474:
  mov    D215(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L288:
  mov    D136(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L488:
  mov    D201(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L353:
  mov    D64(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L207:
  mov    D107(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L290:
  mov    D23(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L470:
  mov    D73(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L101:
  mov    D63(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L86:
  mov    D4(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L263:
  mov    D190(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L34:
  mov    D61(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
L385:
  mov    D100(%rip),%rax
  mov    (%rax),%eax
  jmp    L236
```

assistant: ```c
speed_t parse_baud_rate(char *str) {
  switch (atoi(str)) {
  case 300:
    return B300;
  case 1200:
    return B1200;
  case 2400:
    return B2400;
  case 4800:
    return B4800;
  case 9600:
    return B9600;
  case 19200:
    return B19200;
  case 38400:
    return B38400;
  case 57600:
    return B57600;
  case 115200:
    return B115200;
  case 230400:
    return B230400;
  case 460800:
    return B460800;
  case 500000:
    return B500000;
  case 576000:
    return B576000;
  case 921600:
    return B921600;
  case 1000000:
    return B1000000;
  case 1152000:
    return B1152000;
  case 1500000:
    return B1500000;
  case 2000000:
    return B2000000;
  case 2500000:
    return B2500000;
  case 3000000:
    return B3000000;
  case 3500000:
    return B3500000;
  case 4000000:
    return B4000000;
  default:
    return B0;
  }
}
```