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

```asm
<wdctl_command>:
  endbr64
  sub    $0xd,%edi
  cmp    $0x16,%edi
  ja     L5
  mov    %edi,%edi
  lea    D21(%rip),%rdx
  movslq (%rdx,%rdi,4),%rax
  add    %rdx,%rax
  notrack jmp *%rax
  lea    D14(%rip),%rdi
  jmp    L85
  lea    D4(%rip),%rdi
L85:
  sub    $0x8,%rsp
  call   <wdctl_command_action@plt>
  add    $0x8,%rsp
  ret
  lea    D65(%rip),%rdi
  jmp    L85
  lea    D135(%rip),%rdi
  jmp    L85
  lea    D156(%rip),%rdi
  jmp    L85
  lea    D178(%rip),%rdi
  jmp    L85
  lea    D74(%rip),%rdi
  jmp    L85
  lea    D49(%rip),%rdi
  jmp    L85
  lea    D131(%rip),%rdi
  jmp    L85
  lea    D127(%rip),%rdi
  jmp    L85
  lea    D114(%rip),%rdi
  jmp    L85
  lea    D47(%rip),%rdi
  jmp    L85
  lea    D11(%rip),%rdi
  jmp    L85
  lea    D41(%rip),%rdi
  jmp    L85
  lea    D32(%rip),%rdi
  jmp    L85
  lea    D165(%rip),%rdi
  jmp    L85
  lea    D120(%rip),%rdi
  jmp    L85
L5:
  ret
```

tool_calls: name: retrieve_data
arguments: tag: D14
type_infered: string
name: retrieve_data
arguments: tag: D4
type_infered: string
name: retrieve_data
arguments: tag: D65
type_infered: string
name: retrieve_data
arguments: tag: D135
type_infered: string
name: retrieve_data
arguments: tag: D156
type_infered: string
name: retrieve_data
arguments: tag: D178
type_infered: string
name: retrieve_data
arguments: tag: D74
type_infered: string
name: retrieve_data
arguments: tag: D49
type_infered: string
name: retrieve_data
arguments: tag: D131
type_infered: string
name: retrieve_data
arguments: tag: D127
type_infered: string
name: retrieve_data
arguments: tag: D114
type_infered: string
name: retrieve_data
arguments: tag: D47
type_infered: string
name: retrieve_data
arguments: tag: D11
type_infered: string
name: retrieve_data
arguments: tag: D41
type_infered: string
name: retrieve_data
arguments: tag: D32
type_infered: string
name: retrieve_data
arguments: tag: D165
type_infered: string
name: retrieve_data
arguments: tag: D120
type_infered: string

tool: D14: del_trusted_mac

tool: D4: clear_trusted_mac

tool: D65: add_untrusted_mac

tool: D135: del_untrusted_mac

tool: D156: clear_untrusted_mac

tool: D178: del_trusted_iplist

tool: D74: add_trusted_iplist

tool: D49: clear_trusted_iplist

tool: D131: add_trusted_pdomains

tool: D127: del_trusted_pdomains

tool: D114: clear_trusted_pdomains

tool: D47: show_trusted_pdomains

tool: D11: add_trusted_local_mac

tool: D41: del_trusted_local_mac

tool: D32: clear_trusted_local_mac

tool: D165: show_trusted_local_mac

tool: D120: add_trusted_mac

assistant: ```c
void wdctl_command(int command) {
  char *action = NULL;
  switch (command) {
  case 16:
    action = "add_trusted_mac";
    break;
  case 26:
    action = "del_trusted_mac";
    break;
  case 17:
    action = "clear_trusted_mac";
    break;
  case 13:
    action = "add_untrusted_mac";
    break;
  case 27:
    action = "del_untrusted_mac";
    break;
  case 14:
    action = "clear_untrusted_mac";
    break;
  case 25:
    action = "del_trusted_iplist";
    break;
  case 21:
    action = "add_trusted_iplist";
    break;
  case 24:
    action = "clear_trusted_iplist";
    break;
  case 28:
    action = "add_trusted_pdomains";
    break;
  case 29:
    action = "del_trusted_pdomains";
    break;
  case 30:
    action = "clear_trusted_pdomains";
    break;
  case 31:
    action = "show_trusted_pdomains";
    break;
  case 32:
    action = "add_trusted_local_mac";
    break;
  case 33:
    action = "del_trusted_local_mac";
    break;
  case 35:
    action = "clear_trusted_local_mac";
    break;
  case 34:
    action = "show_trusted_local_mac";
    break;
  }
  if (action)
    wdctl_command_action(action);
}
```