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

```asm
<get_mime_type>:
  endbr64
  push   %rbx
  mov    $0x2e,%esi
  call   <strrchr@plt>
  mov    %rax,%rbx
  test   %rax,%rax
  je     L236
  lea    D236(%rip),%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L65
  lea    D157(%rip),%rbx
L236:
  mov    %rbx,%rax
  pop    %rbx
  ret
L65:
  lea    D139(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L83
  lea    D157(%rip),%rbx
  jmp    L236
L83:
  lea    D45(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L17
  lea    D114(%rip),%rbx
  jmp    L236
L17:
  lea    D156(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L76
  lea    D114(%rip),%rbx
  jmp    L236
L76:
  lea    D86(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L107
  lea    D238(%rip),%rbx
  jmp    L236
L107:
  lea    D18(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L67
  lea    D52(%rip),%rbx
  jmp    L236
L67:
  lea    D130(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L153
  lea    D66(%rip),%rbx
  jmp    L236
L153:
  lea    D103(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L113
  lea    D38(%rip),%rbx
  jmp    L236
L113:
  lea    D105(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L233
  lea    D184(%rip),%rbx
  jmp    L236
L233:
  lea    D58(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L151
  lea    D218(%rip),%rbx
  jmp    L236
L151:
  lea    D75(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L205
  lea    D140(%rip),%rbx
  jmp    L236
L205:
  lea    D1(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L146
  lea    D140(%rip),%rbx
  jmp    L236
L146:
  lea    D33(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  lea    D110(%rip),%rbx
  mov    $0x0,%eax
  cmovne %rax,%rbx
  jmp    L236
```

tool_calls: name: extract_symbolic_data
arguments: label: D236
data_type: string
name: extract_symbolic_data
arguments: label: D157
data_type: string
name: extract_symbolic_data
arguments: label: D139
data_type: string
name: extract_symbolic_data
arguments: label: D45
data_type: string
name: extract_symbolic_data
arguments: label: D114
data_type: string
name: extract_symbolic_data
arguments: label: D156
data_type: string
name: extract_symbolic_data
arguments: label: D86
data_type: string
name: extract_symbolic_data
arguments: label: D238
data_type: string
name: extract_symbolic_data
arguments: label: D18
data_type: string
name: extract_symbolic_data
arguments: label: D52
data_type: string
name: extract_symbolic_data
arguments: label: D130
data_type: string
name: extract_symbolic_data
arguments: label: D66
data_type: string
name: extract_symbolic_data
arguments: label: D103
data_type: string
name: extract_symbolic_data
arguments: label: D38
data_type: string
name: extract_symbolic_data
arguments: label: D105
data_type: string
name: extract_symbolic_data
arguments: label: D184
data_type: string
name: extract_symbolic_data
arguments: label: D58
data_type: string
name: extract_symbolic_data
arguments: label: D218
data_type: string
name: extract_symbolic_data
arguments: label: D75
data_type: string
name: extract_symbolic_data
arguments: label: D140
data_type: string
name: extract_symbolic_data
arguments: label: D1
data_type: string
name: extract_symbolic_data
arguments: label: D33
data_type: string
name: extract_symbolic_data
arguments: label: D110
data_type: string

tool: D236: .html

tool: D157: text/html

tool: D139: .htm

tool: D45: .jpg

tool: D114: image/jpeg

tool: D156: .jpeg

tool: D86: .gif

tool: D238: image/gif

tool: D18: .png

tool: D52: image/png

tool: D130: .css

tool: D66: text/css

tool: D103: .au

tool: D38: audio/basic

tool: D105: .wav

tool: D184: audio/wav

tool: D58: .avi

tool: D218: video/x-msvideo

tool: D75: .mpeg

tool: D140: video/mpeg

tool: D1: .mpg

tool: D33: .mp3

tool: D110: audio/mpeg

assistant: ```c
char *get_mime_type(char *name) {
  char *ext = strrchr(name, '.');
  if (!ext)
    return NULL;
  if (strcmp(ext, ".html") == 0 || strcmp(ext, ".htm") == 0)
    return "text/html";
  if (strcmp(ext, ".jpg") == 0 || strcmp(ext, ".jpeg") == 0)
    return "image/jpeg";
  if (strcmp(ext, ".gif") == 0)
    return "image/gif";
  if (strcmp(ext, ".png") == 0)
    return "image/png";
  if (strcmp(ext, ".css") == 0)
    return "text/css";
  if (strcmp(ext, ".au") == 0)
    return "audio/basic";
  if (strcmp(ext, ".wav") == 0)
    return "audio/wav";
  if (strcmp(ext, ".avi") == 0)
    return "video/x-msvideo";
  if (strcmp(ext, ".mpeg") == 0 || strcmp(ext, ".mpg") == 0)
    return "video/mpeg";
  if (strcmp(ext, ".mp3") == 0)
    return "audio/mpeg";
  return NULL;
}
```