user: Please show me the C implementation that matches the assembly code listed below:

```asm
<handle_command>:
  endbr64
  push   %r13
  lea    D6(%rip),%rsi
  push   %r12
  push   %rbp
  mov    %rdi,%rbp
  push   %rbx
  sub    $0x28,%rsp
  mov    %fs:0x28,%rax
  mov    %rax,0x18(%rsp)
  xor    %eax,%eax
  lea    0x10(%rsp),%rbx
  lea    0xc(%rsp),%r12
  mov    %rbx,%rcx
  mov    %r12,%rdx
  call   <sscanf@plt>
  cmp    $0x2,%eax
  je     L10
  lea    0x8(%rsp),%r13
  xor    %eax,%eax
  lea    D76(%rip),%rsi
  mov    %rbp,%rdi
  mov    %r13,%rdx
  call   <sscanf@plt>
  cmp    $0x1,%eax
  je     L57
  mov    $0x4,%edx
  lea    D9(%rip),%rsi
  mov    %rbp,%rdi
  call   <strncmp@plt>
  test   %eax,%eax
  jne    L100
  call   <handle_list@plt>
L70:
  mov    0x18(%rsp),%rax
  sub    %fs:0x28,%rax
  jne    L159
  add    $0x28,%rsp
  pop    %rbx
  pop    %rbp
  pop    %r12
  pop    %r13
  ret
  nopl   0x0(%rax)
L57:
  mov    0x8(%rsp),%edi
  call   <handle_destroy@plt>
  jmp    L70
  nopl   0x0(%rax,%rax,1)
L10:
  mov    0x10(%rsp),%esi
  mov    0xc(%rsp),%edi
  call   <handle_create@plt>
  jmp    L70
  nop
L100:
  xor    %eax,%eax
  mov    %r13,%rdx
  lea    D15(%rip),%rsi
  mov    %rbp,%rdi
  call   <sscanf@plt>
  cmp    $0x2,%eax
  je     L87
  xor    %eax,%eax
  mov    %rbx,%r8
  mov    %r12,%rcx
  mov    %r13,%rdx
  lea    D8(%rip),%rsi
  mov    %rbp,%rdi
  call   <sscanf@plt>
  cmp    $0x3,%eax
  je     L157
  xor    %eax,%eax
  lea    0x14(%rsp),%r9
  mov    %rbx,%r8
  mov    %r12,%rcx
  mov    %r13,%rdx
  lea    D13(%rip),%rsi
  mov    %rbp,%rdi
  call   <sscanf@plt>
  cmp    $0x4,%eax
  je     L114
  mov    $0x4,%edx
  lea    D34(%rip),%rsi
  mov    %rbp,%rdi
  call   <strncmp@plt>
  test   %eax,%eax
  je     L140
  mov    $0x4,%edx
  lea    D47(%rip),%rsi
  mov    %rbp,%rdi
  call   <strncmp@plt>
  test   %eax,%eax
  jne    L76
  call   <bye@plt>
  jmp    L70
  xchg   %ax,%ax
L87:
  mov    0x8(%rsp),%edi
  call   <handle_print@plt>
  jmp    L70
  xchg   %ax,%ax
L140:
  call   <usage@plt>
  jmp    L70
  nopw   0x0(%rax,%rax,1)
L157:
  mov    0x10(%rsp),%edx
  mov    0xc(%rsp),%esi
  mov    0x8(%rsp),%edi
  call   <handle_get@plt>
  jmp    L70
  cs nopw 0x0(%rax,%rax,1)
L114:
  movss  0x14(%rsp),%xmm0
  mov    0x10(%rsp),%edx
  mov    0xc(%rsp),%esi
  mov    0x8(%rsp),%edi
  call   <handle_set@plt>
  jmp    L70
  nopl   0x0(%rax)
L76:
  mov    %rbp,%rsi
  lea    D62(%rip),%rdi
  call   <printf@plt>
  jmp    L70
L159:
  call   <__stack_chk_fail@plt>
```

tool_calls: name: read_data
arguments: data_tag: D6
type_infered: string
name: read_data
arguments: data_tag: D76
type_infered: string
name: read_data
arguments: data_tag: D9
type_infered: string
name: read_data
arguments: data_tag: D15
type_infered: string
name: read_data
arguments: data_tag: D8
type_infered: string
name: read_data
arguments: data_tag: D13
type_infered: string
name: read_data
arguments: data_tag: D34
type_infered: string
name: read_data
arguments: data_tag: D47
type_infered: string
name: read_data
arguments: data_tag: D62
type_infered: string

tool: D6: create %d %d

tool: D76: destroy %d

tool: D9: list

tool: D15: print %d

tool: D8: get %d %d %d

tool: D13: set %d %d %d %f

tool: D34: help

tool: D47: quit

tool: D62: ERROR: '%s' is not a valid command.


assistant: ```c
void handle_command(const char *cmdbuf) {
  int id;
  int r, c;
  float v;
  if (2 == sscanf(cmdbuf, "create %d %d", &r, &c)) {
    handle_create(r, c);
  } else if (1 == sscanf(cmdbuf, "destroy %d", &id)) {
    handle_destroy(id);
  } else if (!strncmp(cmdbuf, "list", 4)) {
    handle_list();
  } else if (2 == sscanf(cmdbuf, "print %d", &id)) {
    handle_print(id);
  } else if (3 == sscanf(cmdbuf, "get %d %d %d", &id, &r, &c)) {
    handle_get(id, r, c);
  } else if (4 == sscanf(cmdbuf, "set %d %d %d %f", &id, &r, &c, &v)) {
    handle_set(id, r, c, v);
  } else if (!strncmp(cmdbuf, "help", 4)) {
    usage();
  } else if (!strncmp(cmdbuf, "quit", 4)) {
    bye();
  } else {
    printf("ERROR: "
           "'%s' is not a valid command."
           "\n",
           cmdbuf);
  }
}
```