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

```asm
<janus_get_api_error>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  mov    %edi,-0x4(%rbp)
  cmpl   $0x0,-0x4(%rbp)
  je     L166
  cmpl   $0x0,-0x4(%rbp)
  js     L33
  cmpl   $0x1ea,-0x4(%rbp)
  jg     L33
  cmpl   $0x193,-0x4(%rbp)
  jl     L33
  mov    -0x4(%rbp),%eax
  sub    $0x193,%eax
  cmp    $0x57,%eax
  ja     L33
  mov    %eax,%eax
  lea    0x0(,%rax,4),%rdx
  lea    D256(%rip),%rax
  mov    (%rdx,%rax,1),%eax
  cltq
  lea    D256(%rip),%rdx
  add    %rdx,%rax
  notrack jmp *%rax
L166:
  lea    D10(%rip),%rax
  jmp    L138
  lea    D275(%rip),%rax
  jmp    L138
  lea    D220(%rip),%rax
  jmp    L138
  lea    D83(%rip),%rax
  jmp    L138
  lea    D7(%rip),%rax
  jmp    L138
  lea    D149(%rip),%rax
  jmp    L138
  lea    D131(%rip),%rax
  jmp    L138
  lea    D157(%rip),%rax
  jmp    L138
  lea    D31(%rip),%rax
  jmp    L138
  lea    D74(%rip),%rax
  jmp    L138
  lea    D122(%rip),%rax
  jmp    L138
  lea    D243(%rip),%rax
  jmp    L138
  lea    D49(%rip),%rax
  jmp    L138
  lea    D277(%rip),%rax
  jmp    L138
  lea    D3(%rip),%rax
  jmp    L138
  lea    D52(%rip),%rax
  jmp    L138
  lea    D253(%rip),%rax
  jmp    L138
  lea    D229(%rip),%rax
  jmp    L138
  lea    D217(%rip),%rax
  jmp    L138
  lea    D251(%rip),%rax
  jmp    L138
  lea    D25(%rip),%rax
  jmp    L138
  lea    D218(%rip),%rax
  jmp    L138
  lea    D129(%rip),%rax
  jmp    L138
  lea    D21(%rip),%rax
  jmp    L138
  lea    D159(%rip),%rax
  jmp    L138
L33:
  lea    D83(%rip),%rax
L138:
  pop    %rbp
  ret
```

tool_calls: name: retrieve_data
arguments: tag: D10
type_guessed: string
name: retrieve_data
arguments: tag: D275
type_guessed: string
name: retrieve_data
arguments: tag: D220
type_guessed: string
name: retrieve_data
arguments: tag: D83
type_guessed: string
name: retrieve_data
arguments: tag: D7
type_guessed: string
name: retrieve_data
arguments: tag: D149
type_guessed: string
name: retrieve_data
arguments: tag: D131
type_guessed: string
name: retrieve_data
arguments: tag: D157
type_guessed: string
name: retrieve_data
arguments: tag: D31
type_guessed: string
name: retrieve_data
arguments: tag: D74
type_guessed: string
name: retrieve_data
arguments: tag: D122
type_guessed: string
name: retrieve_data
arguments: tag: D243
type_guessed: string
name: retrieve_data
arguments: tag: D49
type_guessed: string
name: retrieve_data
arguments: tag: D277
type_guessed: string
name: retrieve_data
arguments: tag: D3
type_guessed: string
name: retrieve_data
arguments: tag: D52
type_guessed: string
name: retrieve_data
arguments: tag: D253
type_guessed: string
name: retrieve_data
arguments: tag: D229
type_guessed: string
name: retrieve_data
arguments: tag: D217
type_guessed: string
name: retrieve_data
arguments: tag: D251
type_guessed: string
name: retrieve_data
arguments: tag: D25
type_guessed: string
name: retrieve_data
arguments: tag: D218
type_guessed: string
name: retrieve_data
arguments: tag: D129
type_guessed: string
name: retrieve_data
arguments: tag: D21
type_guessed: string
name: retrieve_data
arguments: tag: D159
type_guessed: string

tool: D10: Success

tool: D275: Unauthorized request (wrong or missing secret/token)

tool: D220: Unauthorized access to plugin (token is not allowed to)

tool: D83: Unknown error

tool: D7: Use GET

tool: D149: Use POST

tool: D131: Missing request

tool: D157: Unknown request

tool: D31: Invalid JSON

tool: D74: Invalid JSON Object

tool: D122: Missing mandatory element

tool: D243: Invalid path for this request

tool: D49: Session not found

tool: D277: Handle not found

tool: D3: Plugin not found

tool: D52: Error attaching plugin

tool: D253: Error sending message to plugin

tool: D229: Error detaching from plugin

tool: D217: Unsupported JSEP type

tool: D251: Invalid SDP

tool: D25: Invalid stream

tool: D218: Invalid element type

tool: D129: Session ID already in use

tool: D21: Unexpected ANSWER (no OFFER)

tool: D159: Token not found

assistant: ```c
const char *janus_get_api_error(int error) {
  switch (error) {
  case 0:
    return "Success";
  case 403:
    return "Unauthorized request (wrong or missing secret/token)";
  case 405:
    return "Unauthorized access to plugin (token is not allowed to)";
  case 490:
    return "Unknown error";
  case 450:
    return "Use GET";
  case 451:
    return "Use POST";
  case 452:
    return "Missing request";
  case 453:
    return "Unknown request";
  case 454:
    return "Invalid JSON";
  case 455:
    return "Invalid JSON Object";
  case 456:
    return "Missing mandatory element";
  case 457:
    return "Invalid path for this request";
  case 458:
    return "Session not found";
  case 459:
    return "Handle not found";
  case 460:
    return "Plugin not found";
  case 461:
    return "Error attaching plugin";
  case 462:
    return "Error sending message to plugin";
  case 463:
    return "Error detaching from plugin";
  case 464:
    return "Unsupported JSEP type";
  case 465:
    return "Invalid SDP";
  case 466:
    return "Invalid stream";
  case 467:
    return "Invalid element type";
  case 468:
    return "Session ID already in use";
  case 469:
    return "Unexpected ANSWER (no OFFER)";
  case 470:
    return "Token not found";
  default:
    return "Unknown error";
  }
  return "Unknown error";
}
```