user: Demonstrate the C code that generates the assembly output below:

```asm
<to_speed>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  mov    %edi,-0x4(%rbp)
  cmpl   $0x38400,-0x4(%rbp)
  je     L455
  cmpl   $0x38400,-0x4(%rbp)
  jg     L323
  cmpl   $0x1c200,-0x4(%rbp)
  je     L503
  cmpl   $0x1c200,-0x4(%rbp)
  jg     L323
  cmpl   $0xe100,-0x4(%rbp)
  je     L147
  cmpl   $0xe100,-0x4(%rbp)
  jg     L323
  cmpl   $0x9600,-0x4(%rbp)
  je     L242
  cmpl   $0x9600,-0x4(%rbp)
  jg     L323
  cmpl   $0x4b00,-0x4(%rbp)
  je     L461
  cmpl   $0x4b00,-0x4(%rbp)
  jg     L323
  cmpl   $0x2580,-0x4(%rbp)
  je     L125
  cmpl   $0x2580,-0x4(%rbp)
  jg     L323
  cmpl   $0x12c0,-0x4(%rbp)
  je     L459
  cmpl   $0x12c0,-0x4(%rbp)
  jg     L323
  cmpl   $0x960,-0x4(%rbp)
  je     L68
  cmpl   $0x960,-0x4(%rbp)
  jg     L323
  cmpl   $0x708,-0x4(%rbp)
  je     L224
  cmpl   $0x708,-0x4(%rbp)
  jg     L323
  cmpl   $0x4b0,-0x4(%rbp)
  je     L142
  cmpl   $0x4b0,-0x4(%rbp)
  jg     L323
  cmpl   $0x258,-0x4(%rbp)
  je     L489
  cmpl   $0x258,-0x4(%rbp)
  jg     L323
  cmpl   $0x12c,-0x4(%rbp)
  je     L76
  cmpl   $0x12c,-0x4(%rbp)
  jg     L323
  cmpl   $0xc8,-0x4(%rbp)
  je     L221
  cmpl   $0xc8,-0x4(%rbp)
  jg     L323
  cmpl   $0x96,-0x4(%rbp)
  je     L149
  cmpl   $0x96,-0x4(%rbp)
  jg     L323
  cmpl   $0x86,-0x4(%rbp)
  je     L88
  cmpl   $0x86,-0x4(%rbp)
  jg     L323
  cmpl   $0x6e,-0x4(%rbp)
  je     L363
  cmpl   $0x6e,-0x4(%rbp)
  jg     L323
  cmpl   $0x32,-0x4(%rbp)
  je     L64
  cmpl   $0x4b,-0x4(%rbp)
  je     L494
  jmp    L323
L64:
  mov    D153(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L494:
  mov    D177(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L363:
  mov    D13(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L88:
  mov    D55(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L149:
  mov    D151(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L221:
  mov    D35(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L76:
  mov    D65(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L489:
  mov    D118(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L142:
  mov    D27(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L224:
  mov    D11(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L68:
  mov    D117(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L459:
  mov    D50(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L125:
  mov    D129(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L461:
  mov    D146(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L242:
  mov    D178(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L147:
  mov    D53(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L503:
  mov    D59(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L455:
  mov    D126(%rip),%rax
  mov    (%rax),%eax
  jmp    L501
L323:
  mov    D70(%rip),%rax
  mov    (%rax),%eax
L501:
  pop    %rbp
  ret
```

assistant: ```c
tcflag_t to_speed(const int speed) {
  switch (speed) {
  case 50:
    return B50;
  case 75:
    return B75;
  case 110:
    return B110;
  case 134:
    return B134;
  case 150:
    return B150;
  case 200:
    return B200;
  case 300:
    return B300;
  case 600:
    return B600;
  case 1200:
    return B1200;
  case 1800:
    return B1800;
  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;
  default:
    return B0;
  }
}
```