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

```asm
<execute_cmd>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x10,%rsp
  mov    %rdi,-0x8(%rbp)
  mov    -0x8(%rbp),%rax
  movzbl (%rax),%eax
  cmp    $0x62,%al
  jne    L266
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  mov    %rax,%rsi
  mov    $0x2,%edi
  call   <inc_dec_cmd@plt>
  jmp    L42
L266:
  mov    -0x8(%rbp),%rax
  movzbl (%rax),%eax
  cmp    $0x63,%al
  jne    L110
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  mov    %rax,%rsi
  mov    $0x3,%edi
  call   <inc_dec_cmd@plt>
  jmp    L42
L110:
  mov    -0x8(%rbp),%rax
  lea    D8(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L29
  mov    $0x0,%edi
  call   <enable_tvout@plt>
  jmp    L42
L29:
  mov    -0x8(%rbp),%rax
  lea    D68(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L318
  mov    $0x0,%eax
  call   <reset_defaults@plt>
  jmp    L42
L318:
  mov    -0x8(%rbp),%rax
  lea    D31(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L197
  mov    $0x1,%edi
  call   <enable_tvout@plt>
  jmp    L42
L197:
  mov    -0x8(%rbp),%rax
  movzbl (%rax),%eax
  cmp    $0x66,%al
  jne    L254
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  mov    %rax,%rsi
  mov    $0x1,%edi
  call   <inc_dec_cmd@plt>
  jmp    L42
L254:
  mov    -0x8(%rbp),%rax
  lea    D51(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L168
  mov    $0x0,%eax
  call   <get_settings@plt>
  jmp    L42
L168:
  mov    -0x8(%rbp),%rax
  movzbl (%rax),%eax
  cmp    $0x68,%al
  jne    L220
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  mov    %rax,%rsi
  mov    $0x3,%edi
  call   <xy_cmd@plt>
  jmp    L42
L220:
  mov    -0x8(%rbp),%rax
  movzbl (%rax),%eax
  cmp    $0x6c,%al
  jne    L292
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  mov    %rax,%rsi
  mov    $0x0,%edi
  call   <xy_cmd@plt>
  jmp    L42
L292:
  mov    -0x8(%rbp),%rax
  movzbl (%rax),%eax
  cmp    $0x6d,%al
  jne    L130
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  mov    %rax,%rdi
  call   <vga_mode@plt>
  jmp    L42
L130:
  mov    -0x8(%rbp),%rax
  movzbl (%rax),%eax
  cmp    $0x6f,%al
  jne    L412
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  mov    %rax,%rsi
  mov    $0x4,%edi
  call   <inc_dec_cmd@plt>
  jmp    L42
L412:
  mov    -0x8(%rbp),%rax
  movzbl (%rax),%eax
  cmp    $0x72,%al
  jne    L364
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  mov    %rax,%rdi
  call   <dump_registers@plt>
  jmp    L42
L364:
  mov    -0x8(%rbp),%rax
  movzbl (%rax),%eax
  cmp    $0x52,%al
  jne    L38
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  mov    %rax,%rdi
  call   <write_register@plt>
  jmp    L42
L38:
  mov    -0x8(%rbp),%rax
  movzbl (%rax),%eax
  cmp    $0x6e,%al
  jne    L305
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  mov    %rax,%rsi
  mov    $0x0,%edi
  call   <inc_dec_cmd@plt>
  jmp    L42
L305:
  mov    -0x8(%rbp),%rax
  movzbl (%rax),%eax
  cmp    $0x73,%al
  jne    L98
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  mov    %rax,%rdi
  call   <tv_standard@plt>
  jmp    L42
L98:
  mov    -0x8(%rbp),%rax
  movzbl (%rax),%eax
  cmp    $0x74,%al
  jne    L177
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  mov    %rax,%rsi
  mov    $0x1,%edi
  call   <xy_cmd@plt>
  jmp    L42
L177:
  mov    -0x8(%rbp),%rax
  movzbl (%rax),%eax
  cmp    $0x77,%al
  jne    L294
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  mov    %rax,%rsi
  mov    $0x2,%edi
  call   <xy_cmd@plt>
  jmp    L42
L294:
  mov    -0x8(%rbp),%rax
  lea    D55(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L289
  mov    $0x0,%edi
  call   <help@plt>
  jmp    L42
L289:
  mov    -0x8(%rbp),%rax
  lea    D66(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L102
  mov    $0x1,%edi
  call   <help@plt>
  jmp    L42
L102:
  mov    -0x8(%rbp),%rax
  lea    D48(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L340
  mov    $0x1,%edi
  call   <inc_dec_ffolat@plt>
  jmp    L42
L340:
  mov    -0x8(%rbp),%rax
  lea    D59(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L46
  mov    $0xffffffff,%edi
  call   <inc_dec_ffolat@plt>
  jmp    L42
L46:
  mov    -0x8(%rbp),%rax
  mov    %rax,%rsi
  lea    D73(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
L42:
  nop
  leave
  ret
```

tool_calls: name: read_data
arguments: data_label: D8
datatype: string
name: read_data
arguments: data_label: D68
datatype: string
name: read_data
arguments: data_label: D31
datatype: string
name: read_data
arguments: data_label: D51
datatype: string
name: read_data
arguments: data_label: D55
datatype: string
name: read_data
arguments: data_label: D66
datatype: string
name: read_data
arguments: data_label: D48
datatype: string
name: read_data
arguments: data_label: D59
datatype: string
name: read_data
arguments: data_label: D73
datatype: string

tool: D8: d

tool: D68: def

tool: D31: e

tool: D51: g

tool: D55: ?

tool: D66: ??

tool: D48: >

tool: D59: <

tool: D73: unknown command %s


assistant: ```c
void execute_cmd(char *in) {
  if (*in == 'b')
    inc_dec_cmd(2, in + 1);
  else if (*in == 'c')
    inc_dec_cmd(3, in + 1);
  else if (strcmp(in, "d") == 0)
    enable_tvout(0);
  else if (strcmp(in, "def") == 0)
    reset_defaults();
  else if (strcmp(in, "e") == 0)
    enable_tvout(1);
  else if (*in == 'f')
    inc_dec_cmd(1, in + 1);
  else if (strcmp(in, "g") == 0)
    get_settings();
  else if (*in == 'h')
    xy_cmd(3, in + 1);
  else if (*in == 'l')
    xy_cmd(0, in + 1);
  else if (*in == 'm')
    vga_mode(in + 1);
  else if (*in == 'o')
    inc_dec_cmd(4, in + 1);
  else if (*in == 'r')
    dump_registers(in + 1);
  else if (*in == 'R')
    write_register(in + 1);
  else if (*in == 'n')
    inc_dec_cmd(0, in + 1);
  else if (*in == 's')
    tv_standard(in + 1);
  else if (*in == 't')
    xy_cmd(1, in + 1);
  else if (*in == 'w')
    xy_cmd(2, in + 1);
  else if (strcmp(in, "?") == 0)
    help(0);
  else if (strcmp(in, "??") == 0)
    help(1);
  else if (strcmp(in, ">") == 0)
    inc_dec_ffolat(1);
  else if (strcmp(in, "<") == 0)
    inc_dec_ffolat(-1);
  else
    printf("unknown command %s\n", in);
}
```