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

```asm
<ClothingLayerNumber>:
  endbr64
  push   %rbx
  mov    %rdi,%rbx
  cmpb   $0x75,(%rdi)
  je     L183
L153:
  cmpb   $0x73,(%rbx)
  je     L258
L47:
  cmpb   $0x74,(%rbx)
  je     L223
L108:
  cmpb   $0x76,(%rbx)
  je     L168
L46:
  cmpb   $0x6a,(%rbx)
  je     L216
L239:
  cmpb   $0x63,(%rbx)
  je     L24
L169:
  mov    $0xb,%eax
  cmpb   $0x6f,(%rbx)
  je     L193
L263:
  pop    %rbx
  ret
L183:
  lea    D90(%rip),%rsi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x1,%eax
  test   %rdx,%rdx
  je     L263
  cmpb   $0x75,(%rbx)
  jne    L153
  lea    D25(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x2,%eax
  test   %rdx,%rdx
  je     L263
  cmpb   $0x75,(%rbx)
  jne    L153
  lea    D86(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x3,%eax
  test   %rdx,%rdx
  jne    L153
  jmp    L263
L258:
  lea    D16(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x4,%eax
  test   %rdx,%rdx
  jne    L47
  jmp    L263
L223:
  lea    D96(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x5,%eax
  test   %rdx,%rdx
  jne    L108
  jmp    L263
L168:
  lea    D70(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x6,%eax
  test   %rdx,%rdx
  jne    L46
  jmp    L263
L216:
  lea    D19(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x7,%eax
  test   %rdx,%rdx
  jne    L239
  jmp    L263
L24:
  lea    D83(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x8,%eax
  test   %rdx,%rdx
  jne    L169
  jmp    L263
L193:
  lea    D8(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  mov    %rax,%rdx
  mov    $0x9,%eax
  test   %rdx,%rdx
  je     L263
  cmpb   $0x6f,(%rbx)
  jne    L202
  lea    D61(%rip),%rsi
  mov    %rbx,%rdi
  call   <strcmp@plt>
  cmp    $0x1,%rax
  mov    $0xa,%eax
  sbb    $0xffffffff,%eax
  jmp    L263
L202:
  mov    $0xb,%eax
  jmp    L263
```

tool_calls: name: read_data
arguments: data_label: D90
type_guessed: string
name: read_data
arguments: data_label: D25
type_guessed: string
name: read_data
arguments: data_label: D86
type_guessed: string
name: read_data
arguments: data_label: D16
type_guessed: string
name: read_data
arguments: data_label: D96
type_guessed: string
name: read_data
arguments: data_label: D70
type_guessed: string
name: read_data
arguments: data_label: D19
type_guessed: string
name: read_data
arguments: data_label: D83
type_guessed: string
name: read_data
arguments: data_label: D8
type_guessed: string
name: read_data
arguments: data_label: D61
type_guessed: string

tool: D90: underlayerpre

tool: D25: underlayer

tool: D86: underlayerpost

tool: D16: shirtlayer

tool: D96: tielayer

tool: D70: vestlayer

tool: D19: jacketlayer

tool: D83: coatlayer

tool: D8: overlayer

tool: D61: overlayerpost

assistant: ```c
int ClothingLayerNumber(char *layer) {
  if ((((layer)[0] == ("underlayerpre")[0]) && (strcmp((layer), ("underlayerpre")) == 0)))
    return (1);
  else if ((((layer)[0] == ("underlayer")[0]) && (strcmp((layer), ("underlayer")) == 0)))
    return (2);
  else if ((((layer)[0] == ("underlayerpost")[0]) && (strcmp((layer), ("underlayerpost")) == 0)))
    return (3);
  else if ((((layer)[0] == ("shirtlayer")[0]) && (strcmp((layer), ("shirtlayer")) == 0)))
    return (4);
  else if ((((layer)[0] == ("tielayer")[0]) && (strcmp((layer), ("tielayer")) == 0)))
    return (5);
  else if ((((layer)[0] == ("vestlayer")[0]) && (strcmp((layer), ("vestlayer")) == 0)))
    return (6);
  else if ((((layer)[0] == ("jacketlayer")[0]) && (strcmp((layer), ("jacketlayer")) == 0)))
    return (7);
  else if ((((layer)[0] == ("coatlayer")[0]) && (strcmp((layer), ("coatlayer")) == 0)))
    return (8);
  else if ((((layer)[0] == ("overlayer")[0]) && (strcmp((layer), ("overlayer")) == 0)))
    return (9);
  else if ((((layer)[0] == ("overlayerpost")[0]) && (strcmp((layer), ("overlayerpost")) == 0)))
    return (10);
  else
    return (11);
}
```