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

```asm
<response_get_mime>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x10,%rsp
  mov    %rdi,-0x8(%rbp)
  cmpq   $0x0,-0x8(%rbp)
  je     L157
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  lea    D162(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L178
  lea    D140(%rip),%rax
  jmp    L12
L178:
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  lea    D88(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L105
  lea    D170(%rip),%rax
  jmp    L12
L105:
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  lea    D146(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L4
  lea    D48(%rip),%rax
  jmp    L12
L4:
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  lea    D53(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L144
  lea    D48(%rip),%rax
  jmp    L12
L144:
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  lea    D2(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L34
  lea    D48(%rip),%rax
  jmp    L12
L34:
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  lea    D166(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L70
  lea    D18(%rip),%rax
  jmp    L12
L70:
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  lea    D75(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L108
  lea    D50(%rip),%rax
  jmp    L12
L108:
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  lea    D196(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L77
  lea    D208(%rip),%rax
  jmp    L12
L77:
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  lea    D147(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L73
  lea    D171(%rip),%rax
  jmp    L12
L73:
  mov    -0x8(%rbp),%rax
  add    $0x1,%rax
  lea    D31(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L157
  lea    D28(%rip),%rax
  jmp    L12
L157:
  lea    D12(%rip),%rax
L12:
  leave
  ret
```

tool_calls: name: disassemble_data
arguments: label: D162
datatype: string
name: disassemble_data
arguments: label: D140
datatype: string
name: disassemble_data
arguments: label: D88
datatype: string
name: disassemble_data
arguments: label: D170
datatype: string
name: disassemble_data
arguments: label: D146
datatype: string
name: disassemble_data
arguments: label: D48
datatype: string
name: disassemble_data
arguments: label: D53
datatype: string
name: disassemble_data
arguments: label: D2
datatype: string
name: disassemble_data
arguments: label: D166
datatype: string
name: disassemble_data
arguments: label: D18
datatype: string
name: disassemble_data
arguments: label: D75
datatype: string
name: disassemble_data
arguments: label: D50
datatype: string
name: disassemble_data
arguments: label: D196
datatype: string
name: disassemble_data
arguments: label: D208
datatype: string
name: disassemble_data
arguments: label: D147
datatype: string
name: disassemble_data
arguments: label: D171
datatype: string
name: disassemble_data
arguments: label: D31
datatype: string
name: disassemble_data
arguments: label: D28
datatype: string
name: disassemble_data
arguments: label: D12
datatype: string

tool: D162: html

tool: D140: text/html

tool: D88: txt

tool: D170: text/plain

tool: D146: jpe

tool: D48: image/jpeg

tool: D53: jpg

tool: D2: jpeg

tool: D166: png

tool: D18: image/png

tool: D75: gif

tool: D50: image/gif

tool: D196: css

tool: D208: text/css

tool: D147: js

tool: D171: text/javascript

tool: D31: pdf

tool: D28: application/pdf

tool: D12: application/octet-stream

assistant: ```c
const char *response_get_mime(const char *extension) {
  if (extension != NULL) {
    if (strcmp(extension + 1, "html") == 0)
      return "text/html";
    if (strcmp(extension + 1, "txt") == 0)
      return "text/plain";
    if (strcmp(extension + 1, "jpe") == 0)
      return "image/jpeg";
    if (strcmp(extension + 1, "jpg") == 0)
      return "image/jpeg";
    if (strcmp(extension + 1, "jpeg") == 0)
      return "image/jpeg";
    if (strcmp(extension + 1, "png") == 0)
      return "image/png";
    if (strcmp(extension + 1, "gif") == 0)
      return "image/gif";
    if (strcmp(extension + 1, "css") == 0)
      return "text/css";
    if (strcmp(extension + 1, "js") == 0)
      return "text/javascript";
    if (strcmp(extension + 1, "pdf") == 0)
      return "application/pdf";
  }
  return "application/octet-stream";
}
```