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

```asm
<tile_property_identifier>:
  endbr64
  push   %rbx
  mov    %rdi,%rbx
  lea    D2(%rip),%rsi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0xf,%eax
  test   %rdx,%rdx
  jne    L66
L94:
  pop    %rbx
  ret
L66:
  lea    D67(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x12,%eax
  test   %rdx,%rdx
  je     L94
  lea    D17(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x10,%eax
  test   %rdx,%rdx
  je     L94
  lea    D14(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x11,%eax
  test   %rdx,%rdx
  je     L94
  lea    D30(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0xe,%eax
  test   %rdx,%rdx
  je     L94
  lea    D51(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x23,%eax
  test   %rdx,%rdx
  je     L94
  lea    D130(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x13,%eax
  test   %rdx,%rdx
  je     L94
  lea    D31(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x14,%eax
  test   %rdx,%rdx
  je     L94
  lea    D29(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x16,%eax
  test   %rdx,%rdx
  je     L94
  lea    D131(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x15,%eax
  test   %rdx,%rdx
  je     L94
  lea    D12(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x17,%eax
  test   %rdx,%rdx
  je     L94
  lea    D119(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x22,%eax
  test   %rdx,%rdx
  je     L94
  lea    D102(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x20,%eax
  test   %rdx,%rdx
  je     L94
  lea    D71(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  cmp    $0x1,%rax
  sbb    %eax,%eax
  and    $0x22,%eax
  sub    $0x1,%eax
  jmp    L94
```

tool_calls: name: retrieve_data
arguments: data_label: D2
datatype: string
name: retrieve_data
arguments: data_label: D67
datatype: string
name: retrieve_data
arguments: data_label: D17
datatype: string
name: retrieve_data
arguments: data_label: D14
datatype: string
name: retrieve_data
arguments: data_label: D30
datatype: string
name: retrieve_data
arguments: data_label: D51
datatype: string
name: retrieve_data
arguments: data_label: D130
datatype: string
name: retrieve_data
arguments: data_label: D31
datatype: string
name: retrieve_data
arguments: data_label: D29
datatype: string
name: retrieve_data
arguments: data_label: D131
datatype: string
name: retrieve_data
arguments: data_label: D12
datatype: string
name: retrieve_data
arguments: data_label: D119
datatype: string
name: retrieve_data
arguments: data_label: D102
datatype: string
name: retrieve_data
arguments: data_label: D71
datatype: string

tool: D2: once

tool: D67: active

tool: D17: tid

tool: D14: dirs

tool: D30: space

tool: D51: floor

tool: D130: horz

tool: D31: open

tool: D29: locked

tool: D131: ext

tool: D12: breaks

tool: D119: key

tool: D102: depth

tool: D71: msg

assistant: ```c
unsigned int tile_property_identifier(const char *name) {
  if (strcmp(name, "once") == 0) {
    return 0x0000000F;
  } else if (strcmp(name, "active") == 0) {
    return 0x00000012;
  } else if (strcmp(name, "tid") == 0) {
    return 0x00000010;
  } else if (strcmp(name, "dirs") == 0) {
    return 0x00000011;
  } else if (strcmp(name, "space") == 0) {
    return 0x0000000E;
  } else if (strcmp(name, "floor") == 0) {
    return 0x00000023;
  } else if (strcmp(name, "horz") == 0) {
    return 0x00000013;
  } else if (strcmp(name, "open") == 0) {
    return 0x00000014;
  } else if (strcmp(name, "locked") == 0) {
    return 0x00000016;
  } else if (strcmp(name, "ext") == 0) {
    return 0x00000015;
  } else if (strcmp(name, "breaks") == 0) {
    return 0x00000017;
  } else if (strcmp(name, "key") == 0) {
    return 0x00000022;
  } else if (strcmp(name, "depth") == 0) {
    return 0x00000020;
  } else if (strcmp(name, "msg") == 0) {
    return 0x00000021;
  }
  return 0xFFFFFFFF;
}
```