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

```asm
<main>:
  endbr64
  push   %rbx
  sub    $0x30,%rsp
  mov    %fs:0x28,%rax
  mov    %rax,0x28(%rsp)
  xor    %eax,%eax
  lea    D92(%rip),%rdi
  call   <printf@plt>
  lea    D99(%rip),%rdi
  call   <printf@plt>
  lea    0x8(%rsp),%rbx
  mov    %rbx,%rdi
  call   <nxt64_64_test@plt>
  mov    %rbx,%rsi
  lea    D125(%rip),%rdi
  call   <nxt64_vect_cmp@plt>
  lea    D102(%rip),%rdi
  call   <printf@plt>
  mov    %rbx,%rdi
  call   <nxt64_128_test@plt>
  mov    %rbx,%rsi
  lea    D42(%rip),%rdi
  call   <nxt64_vect_cmp@plt>
  lea    D144(%rip),%rdi
  call   <printf@plt>
  mov    %rbx,%rdi
  call   <nxt64_192_test@plt>
  mov    %rbx,%rsi
  lea    D34(%rip),%rdi
  call   <nxt64_vect_cmp@plt>
  lea    D68(%rip),%rdi
  call   <printf@plt>
  mov    %rbx,%rdi
  call   <nxt64_256_test@plt>
  mov    %rbx,%rsi
  lea    D147(%rip),%rdi
  call   <nxt64_vect_cmp@plt>
  lea    D154(%rip),%rdi
  call   <printf@plt>
  lea    0x10(%rsp),%rbx
  mov    %rbx,%rdi
  call   <nxt128_64_test@plt>
  mov    %rbx,%rsi
  lea    D150(%rip),%rdi
  call   <nxt128_vect_cmp@plt>
  lea    D160(%rip),%rdi
  call   <printf@plt>
  mov    %rbx,%rdi
  call   <nxt128_128_test@plt>
  mov    %rbx,%rsi
  lea    D139(%rip),%rdi
  call   <nxt128_vect_cmp@plt>
  lea    D167(%rip),%rdi
  call   <printf@plt>
  mov    %rbx,%rdi
  call   <nxt128_192_test@plt>
  mov    %rbx,%rsi
  lea    D104(%rip),%rdi
  call   <nxt128_vect_cmp@plt>
  lea    D172(%rip),%rdi
  call   <printf@plt>
  mov    %rbx,%rdi
  call   <nxt128_256_test@plt>
  mov    %rbx,%rsi
  lea    D91(%rip),%rdi
  call   <nxt128_vect_cmp@plt>
  lea    D32(%rip),%rdi
  call   <printf@plt>
  mov    0x28(%rsp),%rax
  sub    %fs:0x28,%rax
  jne    L2
  mov    $0x0,%eax
  add    $0x30,%rsp
  pop    %rbx
  ret
L2:
  call   <__stack_chk_fail@plt>
```

tool_calls: name: disassemble_data
arguments: tag: D92
type_guessed: string
name: disassemble_data
arguments: tag: D99
type_guessed: string
name: disassemble_data
arguments: tag: D125
type_guessed: string
name: disassemble_data
arguments: tag: D102
type_guessed: string
name: disassemble_data
arguments: tag: D42
type_guessed: string
name: disassemble_data
arguments: tag: D144
type_guessed: string
name: disassemble_data
arguments: tag: D34
type_guessed: string
name: disassemble_data
arguments: tag: D68
type_guessed: string
name: disassemble_data
arguments: tag: D147
type_guessed: string
name: disassemble_data
arguments: tag: D154
type_guessed: string
name: disassemble_data
arguments: tag: D150
type_guessed: string
name: disassemble_data
arguments: tag: D160
type_guessed: string
name: disassemble_data
arguments: tag: D139
type_guessed: string
name: disassemble_data
arguments: tag: D167
type_guessed: string
name: disassemble_data
arguments: tag: D104
type_guessed: string
name: disassemble_data
arguments: tag: D172
type_guessed: string
name: disassemble_data
arguments: tag: D91
type_guessed: string
name: disassemble_data
arguments: tag: D32
type_guessed: string

tool: D92: IDEA NXT Test Vectors:



tool: D99: NXT64 64 bits key:


tool: D125: 200e1f5847d8a2ce

tool: D102: NXT64 128 bits key:


tool: D42: b85d6b766dce952e

tool: D144: NXT64 192 bits key:


tool: D34: 2741d7963406daca

tool: D68: NXT64 256 bits key:


tool: D147: 8a4edfbc36bef7f6

tool: D154: NXT128 64 bits key:


tool: D150: 1eecbc7deb66e7dae1a7876d90c0b239

tool: D160: NXT128 128 bits key:


tool: D139: 849e0f0682f50cd588ae073006a10bee

tool: D167: NXT128 192 bits key:


tool: D104: 5934214ecba2d5fd58c261b28261b1bc

tool: D172: NXT128 256 bits key:


tool: D91: 45ccb1030f67b768247f530266bc4996

tool: D32: 
All tests passed


assistant: ```c
int main(void) {
  unsigned char *vectors64[] = {(unsigned char *)"200e1f5847d8a2ce", (unsigned char *)"b85d6b766dce952e", (unsigned char *)"2741d7963406daca", (unsigned char *)"8a4edfbc36bef7f6"};
  unsigned char *vectors128[] = {(unsigned char *)"1eecbc7deb66e7dae1a7876d90c0b239", (unsigned char *)"849e0f0682f50cd588ae073006a10bee", (unsigned char *)"5934214ecba2d5fd58c261b28261b1bc", (unsigned char *)"45ccb1030f67b768247f530266bc4996"};
  unsigned char ct64[8];
  unsigned char ct128[16];
  printf("IDEA NXT Test Vectors:\n\n");
  printf("NXT64 64 bits key:\n");
  nxt64_64_test(ct64);
  nxt64_vect_cmp(vectors64[0], ct64);
  printf("NXT64 128 bits key:\n");
  nxt64_128_test(ct64);
  nxt64_vect_cmp(vectors64[1], ct64);
  printf("NXT64 192 bits key:\n");
  nxt64_192_test(ct64);
  nxt64_vect_cmp(vectors64[2], ct64);
  printf("NXT64 256 bits key:\n");
  nxt64_256_test(ct64);
  nxt64_vect_cmp(vectors64[3], ct64);
  printf("NXT128 64 bits key:\n");
  nxt128_64_test(ct128);
  nxt128_vect_cmp(vectors128[0], ct128);
  printf("NXT128 128 bits key:\n");
  nxt128_128_test(ct128);
  nxt128_vect_cmp(vectors128[1], ct128);
  printf("NXT128 192 bits key:\n");
  nxt128_192_test(ct128);
  nxt128_vect_cmp(vectors128[2], ct128);
  printf("NXT128 256 bits key:\n");
  nxt128_256_test(ct128);
  nxt128_vect_cmp(vectors128[3], ct128);
  printf("\nAll tests passed\n");
  return 0;
}
```