user: 请将这段汇编代码片段转换成等效的C代码:

```asm
<yoyakuck>:
  endbr64
  push   %rbx
  mov    %rdi,%rbx
  lea    D177(%rip),%rsi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  jne    L1
L84:
  pop    %rbx
  ret
L1:
  lea    D121(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D129(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D144(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D133(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D187(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D72(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D18(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D119(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D108(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D156(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D5(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D168(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D90(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D83(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D77(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D59(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D8(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L84
  lea    D171(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  sete   %al
  movzbl %al,%eax
  jmp    L84
```

tool_calls: name: read_data
arguments: data_label: D177
type_guessed: string
name: read_data
arguments: data_label: D121
type_guessed: string
name: read_data
arguments: data_label: D129
type_guessed: string
name: read_data
arguments: data_label: D144
type_guessed: string
name: read_data
arguments: data_label: D133
type_guessed: string
name: read_data
arguments: data_label: D187
type_guessed: string
name: read_data
arguments: data_label: D72
type_guessed: string
name: read_data
arguments: data_label: D18
type_guessed: string
name: read_data
arguments: data_label: D119
type_guessed: string
name: read_data
arguments: data_label: D108
type_guessed: string
name: read_data
arguments: data_label: D156
type_guessed: string
name: read_data
arguments: data_label: D5
type_guessed: string
name: read_data
arguments: data_label: D168
type_guessed: string
name: read_data
arguments: data_label: D90
type_guessed: string
name: read_data
arguments: data_label: D83
type_guessed: string
name: read_data
arguments: data_label: D77
type_guessed: string
name: read_data
arguments: data_label: D59
type_guessed: string
name: read_data
arguments: data_label: D8
type_guessed: string
name: read_data
arguments: data_label: D171
type_guessed: string

tool: D177: for

tool: D121: while

tool: D129: do

tool: D144: break

tool: D133: continue

tool: D187: switch

tool: D72: case

tool: D18: if

tool: D119: else

tool: D108: goto

tool: D156: default

tool: D5: volatile

tool: D168: ragister

tool: D90: return

tool: D83: enum

tool: D77: typedef

tool: D59: sizeof

tool: D8: static

tool: D171: auto

assistant: ```c
int yoyakuck(char *yk) {
  if (strcmp(yk, "for") == 0)
    return 1;
  if (strcmp(yk, "while") == 0)
    return 1;
  if (strcmp(yk, "do") == 0)
    return 1;
  if (strcmp(yk, "break") == 0)
    return 1;
  if (strcmp(yk, "continue") == 0)
    return 1;
  if (strcmp(yk, "switch") == 0)
    return 1;
  if (strcmp(yk, "case") == 0)
    return 1;
  if (strcmp(yk, "if") == 0)
    return 1;
  if (strcmp(yk, "else") == 0)
    return 1;
  if (strcmp(yk, "goto") == 0)
    return 1;
  if (strcmp(yk, "default") == 0)
    return 1;
  if (strcmp(yk, "volatile") == 0)
    return 1;
  if (strcmp(yk, "ragister") == 0)
    return 1;
  if (strcmp(yk, "return") == 0)
    return 1;
  if (strcmp(yk, "enum") == 0)
    return 1;
  if (strcmp(yk, "typedef") == 0)
    return 1;
  if (strcmp(yk, "sizeof") == 0)
    return 1;
  if (strcmp(yk, "static") == 0)
    return 1;
  if (strcmp(yk, "auto") == 0)
    return 1;
  return 0;
}
```