user: Translate the below assembly code into C programming language:

```asm
<standard_kword>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x10,%rsp
  mov    %rdi,-0x8(%rbp)
  cmpq   $0x0,-0x8(%rbp)
  jne    L22
  mov    $0x0,%eax
  jmp    L9
L22:
  mov    -0x8(%rbp),%rax
  lea    D24(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L3
  mov    $0x1,%eax
  jmp    L9
L3:
  mov    -0x8(%rbp),%rax
  lea    D0(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L124
  mov    $0x1,%eax
  jmp    L9
L124:
  mov    -0x8(%rbp),%rax
  lea    D76(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L211
  mov    $0x1,%eax
  jmp    L9
L211:
  mov    -0x8(%rbp),%rax
  lea    D7(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L8
  mov    $0x1,%eax
  jmp    L9
L8:
  mov    -0x8(%rbp),%rax
  lea    D75(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L143
  mov    $0x1,%eax
  jmp    L9
L143:
  mov    -0x8(%rbp),%rax
  lea    D47(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L213
  mov    $0x1,%eax
  jmp    L9
L213:
  mov    -0x8(%rbp),%rax
  lea    D18(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L86
  mov    $0x1,%eax
  jmp    L9
L86:
  mov    -0x8(%rbp),%rax
  lea    D15(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L38
  mov    $0x1,%eax
  jmp    L9
L38:
  mov    -0x8(%rbp),%rax
  lea    D86(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L78
  mov    $0x1,%eax
  jmp    L9
L78:
  mov    -0x8(%rbp),%rax
  lea    D82(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L152
  mov    $0x1,%eax
  jmp    L9
L152:
  mov    $0x0,%eax
L9:
  leave
  ret
```

tool_calls: name: unpack_data
arguments: label: D24
data_type: string
name: unpack_data
arguments: label: D0
data_type: string
name: unpack_data
arguments: label: D76
data_type: string
name: unpack_data
arguments: label: D7
data_type: string
name: unpack_data
arguments: label: D75
data_type: string
name: unpack_data
arguments: label: D47
data_type: string
name: unpack_data
arguments: label: D18
data_type: string
name: unpack_data
arguments: label: D15
data_type: string
name: unpack_data
arguments: label: D86
data_type: string
name: unpack_data
arguments: label: D82
data_type: string

tool: D24: ORIGINATOR

tool: D0: DESCRIPTOR

tool: D76: CREATED

tool: D7: MANUFACTURER

tool: D75: PROD_DATE

tool: D47: SERIAL

tool: D18: MATERIAL

tool: D15: INSTRUMENTATION

tool: D86: MEASUREMENT_SOURCE

tool: D82: PRINT_CONDITIONS

assistant: ```c
int standard_kword(const char *ksym) {
  if (ksym == NULL)
    return 0;
  if (strcmp(ksym, "ORIGINATOR") == 0)
    return 1;
  if (strcmp(ksym, "DESCRIPTOR") == 0)
    return 1;
  if (strcmp(ksym, "CREATED") == 0)
    return 1;
  if (strcmp(ksym, "MANUFACTURER") == 0)
    return 1;
  if (strcmp(ksym, "PROD_DATE") == 0)
    return 1;
  if (strcmp(ksym, "SERIAL") == 0)
    return 1;
  if (strcmp(ksym, "MATERIAL") == 0)
    return 1;
  if (strcmp(ksym, "INSTRUMENTATION") == 0)
    return 1;
  if (strcmp(ksym, "MEASUREMENT_SOURCE") == 0)
    return 1;
  if (strcmp(ksym, "PRINT_CONDITIONS") == 0)
    return 1;
  return 0;
}
```