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

```asm
<main>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x1b0,%rsp
  mov    %fs:0x28,%rax
  mov    %rax,-0x8(%rbp)
  xor    %eax,%eax
  lea    -0x1ac(%rbp),%rax
  mov    %rax,%rsi
  lea    D65(%rip),%rax
  mov    %rax,%rdi
  call   <scanf@plt>
  lea    D10(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  jmp    L110
L101:
  movl   $0x0,-0x1a4(%rbp)
  movl   $0x0,-0x1a8(%rbp)
  jmp    L98
L69:
  lea    -0x1a0(%rbp),%rdx
  mov    -0x1a8(%rbp),%eax
  cltq
  shl    $0x2,%rax
  add    %rdx,%rax
  mov    %rax,%rsi
  lea    D65(%rip),%rax
  mov    %rax,%rdi
  call   <scanf@plt>
  addl   $0x1,-0x1a8(%rbp)
L98:
  cmpl   $0x9,-0x1a8(%rbp)
  jle    L69
  mov    -0x1a0(%rbp),%edx
  mov    -0x19c(%rbp),%eax
  cmp    %eax,%edx
  jle    L71
  movl   $0x1,-0x1a8(%rbp)
  jmp    L89
L54:
  mov    -0x1a8(%rbp),%eax
  sub    $0x1,%eax
  cltq
  mov    -0x1a0(%rbp,%rax,4),%edx
  mov    -0x1a8(%rbp),%eax
  cltq
  mov    -0x1a0(%rbp,%rax,4),%eax
  cmp    %eax,%edx
  jg     L48
  addl   $0x1,-0x1a4(%rbp)
L48:
  addl   $0x1,-0x1a8(%rbp)
L89:
  cmpl   $0x9,-0x1a8(%rbp)
  jle    L54
  cmpl   $0x0,-0x1a4(%rbp)
  jne    L165
  lea    D9(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  jmp    L110
L165:
  lea    D22(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  jmp    L110
L71:
  mov    -0x1a0(%rbp),%edx
  mov    -0x19c(%rbp),%eax
  cmp    %eax,%edx
  jge    L53
  movl   $0x1,-0x1a8(%rbp)
  jmp    L79
L3:
  mov    -0x1a8(%rbp),%eax
  sub    $0x1,%eax
  cltq
  mov    -0x1a0(%rbp,%rax,4),%edx
  mov    -0x1a8(%rbp),%eax
  cltq
  mov    -0x1a0(%rbp,%rax,4),%eax
  cmp    %eax,%edx
  jl     L7
  addl   $0x1,-0x1a4(%rbp)
L7:
  addl   $0x1,-0x1a8(%rbp)
L79:
  cmpl   $0x9,-0x1a8(%rbp)
  jle    L3
  cmpl   $0x0,-0x1a4(%rbp)
  jne    L109
  lea    D9(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  jmp    L110
L109:
  lea    D22(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  jmp    L110
L53:
  lea    D22(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
L110:
  mov    -0x1ac(%rbp),%eax
  lea    -0x1(%rax),%edx
  mov    %edx,-0x1ac(%rbp)
  test   %eax,%eax
  jne    L101
  mov    $0x0,%eax
  mov    -0x8(%rbp),%rdx
  sub    %fs:0x28,%rdx
  je     L67
  call   <__stack_chk_fail@plt>
L67:
  leave
  ret
```

tool_calls: name: extract_symbolic_data
arguments: label: D65
type: string
name: extract_symbolic_data
arguments: label: D10
type: string
name: extract_symbolic_data
arguments: label: D9
type: string
name: extract_symbolic_data
arguments: label: D22
type: string

tool: D65: %d

tool: D10: Lumberjacks:


tool: D9: Ordered


tool: D22: Unordered


assistant: ```c
int main() {
  int a[101], i, t, x;
  scanf("%d", &t);
  printf("Lumberjacks:\n");
  while (t--) {
    x = 0;
    for (i = 0; i < 10; i++) {
      scanf("%d", &a[i]);
    }
    if (a[0] > a[1]) {
      for (i = 1; i < 10; i++) {
        if (a[i - 1] > a[i]) {
          x = x;
        } else {
          x++;
        }
      }
      if (x == 0) {
        printf("Ordered\n");
      } else {
        printf("Unordered\n");
      }
    } else if (a[0] < a[1]) {
      for (i = 1; i < 10; i++) {
        if (a[i - 1] < a[i]) {
          x = x;
        } else {
          x++;
        }
      }
      if (x == 0) {
        printf("Ordered\n");
      } else {
        printf("Unordered\n");
      }
    } else {
      printf("Unordered\n");
    }
  }
  return 0;
}
```