user: Converte this assembly snippet into its equivalent C code:

```asm
<add_usb_radio_debug_function>:
  endbr64
  push   %r12
  mov    %rdi,%rsi
  lea    D4(%rip),%r12
  push   %rbp
  lea    D179(%rip),%rbp
  push   %rbx
  mov    %rdi,%rbx
  mov    %rbp,%rdi
  call   <USB_INFO@plt>
  lea    D44(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L36
  lea    D186(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L36
  lea    D144(%rip),%rsi
  mov    %rbx,%rdi
  lea    D105(%rip),%r12
  call   <strcmp@plt>
  test   %eax,%eax
  je     L36
  lea    D151(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L36
  lea    D137(%rip),%rsi
  mov    %rbx,%rdi
  lea    D31(%rip),%r12
  call   <strcmp@plt>
  test   %eax,%eax
  je     L36
  lea    D14(%rip),%rsi
  mov    %rbx,%rdi
  lea    D130(%rip),%r12
  call   <strcmp@plt>
  test   %eax,%eax
  je     L36
  lea    D58(%rip),%rsi
  mov    %rbx,%rdi
  lea    D21(%rip),%r12
  call   <strcmp@plt>
  test   %eax,%eax
  je     L36
  lea    D57(%rip),%rsi
  mov    %rbx,%rdi
  lea    D64(%rip),%r12
  call   <strcmp@plt>
  test   %eax,%eax
  je     L36
  lea    D173(%rip),%rsi
  mov    %rbx,%rdi
  lea    D180(%rip),%r12
  call   <strcmp@plt>
  test   %eax,%eax
  je     L36
  lea    D24(%rip),%rsi
  mov    %rbx,%rdi
  lea    D39(%rip),%r12
  call   <strcmp@plt>
  test   %eax,%eax
  je     L36
  lea    D118(%rip),%rsi
  mov    %rbx,%rdi
  lea    D204(%rip),%r12
  call   <strcmp@plt>
  test   %eax,%eax
  je     L36
  mov    %rbx,%rsi
  mov    %rbp,%rdi
  mov    %rbx,%r12
  call   <USB_INFO@plt>
L36:
  mov    %r12,%rax
  pop    %rbx
  pop    %rbp
  pop    %r12
  ret
```

tool_calls: name: read_data
arguments: data_tag: D4
data_type: string
name: read_data
arguments: data_tag: D179
data_type: string
name: read_data
arguments: data_tag: D44
data_type: string
name: read_data
arguments: data_tag: D186
data_type: string
name: read_data
arguments: data_tag: D144
data_type: string
name: read_data
arguments: data_tag: D105
data_type: string
name: read_data
arguments: data_tag: D151
data_type: string
name: read_data
arguments: data_tag: D137
data_type: string
name: read_data
arguments: data_tag: D31
data_type: string
name: read_data
arguments: data_tag: D14
data_type: string
name: read_data
arguments: data_tag: D130
data_type: string
name: read_data
arguments: data_tag: D58
data_type: string
name: read_data
arguments: data_tag: D21
data_type: string
name: read_data
arguments: data_tag: D57
data_type: string
name: read_data
arguments: data_tag: D64
data_type: string
name: read_data
arguments: data_tag: D173
data_type: string
name: read_data
arguments: data_tag: D180
data_type: string
name: read_data
arguments: data_tag: D24
data_type: string
name: read_data
arguments: data_tag: D39
data_type: string
name: read_data
arguments: data_tag: D118
data_type: string
name: read_data
arguments: data_tag: D204
data_type: string

tool: D4: mtp,adb,mass_storage,diag,modem,rmnet

tool: D179: switch to radio debug function:%s


tool: D44: mtp,adb,mass_storage

tool: D186: mtp,adb,mass_storage,acm

tool: D144: mtp,mass_storage

tool: D105: mtp,mass_storage,diag,modem,rmnet

tool: D151: mtp,mass_storage,acm

tool: D137: mtp

tool: D31: mtp,diag,modem,rmnet

tool: D14: mtp,adb

tool: D130: mtp,adb,diag,modem,rmnet

tool: D58: mass_storage,adb

tool: D21: mass_storage,adb,diag,modem,rmnet

tool: D57: mass_storage

tool: D64: mass_storage,diag,modem,rmnet

tool: D173: rndis,adb

tool: D180: rndis,adb,diag,modem

tool: D24: rndis

tool: D39: rndis,diag,modem

tool: D118: ffs,acm

tool: D204: adb,diag,modem,acm

assistant: ```c
const char *add_usb_radio_debug_function(const char *buff) {
  USB_INFO("switch to radio debug function:%s\n", buff);
  if (!strcmp(buff, "mtp,adb,mass_storage"))
    return "mtp,adb,mass_storage,diag,modem,rmnet";
  else if (!strcmp(buff, "mtp,adb,mass_storage,acm"))
    return "mtp,adb,mass_storage,diag,modem,rmnet";
  else if (!strcmp(buff, "mtp,mass_storage"))
    return "mtp,mass_storage,diag,modem,rmnet";
  else if (!strcmp(buff, "mtp,mass_storage,acm"))
    return "mtp,mass_storage,diag,modem,rmnet";
  else if (!strcmp(buff, "mtp"))
    return "mtp,diag,modem,rmnet";
  else if (!strcmp(buff, "mtp,adb"))
    return "mtp,adb,diag,modem,rmnet";
  else if (!strcmp(buff, "mass_storage,adb"))
    return "mass_storage,adb,diag,modem,rmnet";
  else if (!strcmp(buff, "mass_storage"))
    return "mass_storage,diag,modem,rmnet";
  else if (!strcmp(buff, "rndis,adb"))
    return "rndis,adb,diag,modem";
  else if (!strcmp(buff, "rndis"))
    return "rndis,diag,modem";
  else if (!strcmp(buff, "ffs,acm"))
    return "adb,diag,modem,acm";
  USB_INFO("switch to radio debug function:%s\n", buff);
  return buff;
}
```