user: 请显示与下面列出的汇编代码相匹配的C语言实现:

```asm
<reset_board>:
  endbr64
  push   %r14
  lea    D220(%rip),%rcx
  push   %r13
  movq   %rcx,%xmm0
  lea    D199(%rip),%rcx
  push   %r12
  mov    %rdi,%r12
  mov    $0x41,%edi
  push   %rbp
  mov    $0x31,%ebp
  push   %rbx
  mov    $0x38,%ebx
  sub    $0x110,%rsp
  mov    %fs:0x28,%rax
  mov    %rax,0x108(%rsp)
  lea    D75(%rip),%rax
  lea    0x8(%rsp),%r14
  lea    0x100(%rsp),%r13
  movq   %rax,%xmm1
  lea    D54(%rip),%rax
  punpcklqdq %xmm1,%xmm0
  movq   %rax,%xmm2
  lea    D228(%rip),%rax
  movups %xmm0,0x8(%rsp)
  movq   %rcx,%xmm0
  movq   %rax,%xmm3
  lea    D106(%rip),%rcx
  punpcklqdq %xmm2,%xmm0
  lea    D285(%rip),%rax
  movups %xmm0,0x18(%rsp)
  movq   %rcx,%xmm0
  movq   %rax,%xmm4
  lea    D129(%rip),%rcx
  punpcklqdq %xmm3,%xmm0
  lea    D105(%rip),%rax
  movups %xmm0,0x28(%rsp)
  movq   %rcx,%xmm0
  movq   %rax,%xmm5
  lea    D109(%rip),%rcx
  punpcklqdq %xmm4,%xmm0
  lea    D166(%rip),%rax
  movups %xmm0,0x38(%rsp)
  movq   %rcx,%xmm0
  movq   %rax,%xmm6
  lea    D243(%rip),%rcx
  punpcklqdq %xmm5,%xmm0
  lea    D51(%rip),%rax
  movups %xmm0,0x48(%rsp)
  movq   %rcx,%xmm0
  movq   %rax,%xmm7
  lea    D29(%rip),%rcx
  punpcklqdq %xmm6,%xmm0
  lea    D209(%rip),%rax
  movups %xmm0,0x58(%rsp)
  movq   %rcx,%xmm0
  movq   %rax,%xmm1
  lea    D299(%rip),%rcx
  punpcklqdq %xmm7,%xmm0
  lea    D160(%rip),%rax
  movups %xmm0,0x68(%rsp)
  movq   %rcx,%xmm0
  movq   %rax,%xmm2
  lea    D11(%rip),%rcx
  punpcklqdq %xmm1,%xmm0
  lea    D161(%rip),%rax
  movups %xmm0,0x78(%rsp)
  movq   %rcx,%xmm0
  movq   %rax,%xmm3
  lea    D260(%rip),%rcx
  punpcklqdq %xmm2,%xmm0
  lea    D213(%rip),%rax
  movups %xmm0,0x88(%rsp)
  movq   %rcx,%xmm0
  lea    D288(%rip),%rcx
  movq   %rax,%xmm4
  punpcklqdq %xmm3,%xmm0
  lea    D88(%rip),%rax
  movups %xmm0,0x98(%rsp)
  movq   %rcx,%xmm0
  lea    D193(%rip),%rcx
  movq   %rax,%xmm5
  punpcklqdq %xmm4,%xmm0
  lea    D214(%rip),%rax
  movups %xmm0,0xa8(%rsp)
  movq   %rcx,%xmm0
  lea    D108(%rip),%rcx
  movq   %rax,%xmm6
  punpcklqdq %xmm5,%xmm0
  lea    D291(%rip),%rax
  movups %xmm0,0xb8(%rsp)
  movq   %rcx,%xmm0
  lea    D77(%rip),%rcx
  movq   %rax,%xmm7
  punpcklqdq %xmm6,%xmm0
  lea    D298(%rip),%rax
  movups %xmm0,0xc8(%rsp)
  movq   %rcx,%xmm0
  lea    D217(%rip),%rcx
  movq   %rax,%xmm1
  punpcklqdq %xmm7,%xmm0
  lea    D280(%rip),%rax
  movups %xmm0,0xd8(%rsp)
  movq   %rcx,%xmm0
  punpcklqdq %xmm1,%xmm0
  mov    %rax,0xf8(%rsp)
  movups %xmm0,0xe8(%rsp)
  jmp    L20
  nopl   0x0(%rax,%rax,1)
L17:
  mov    (%r14),%rax
  add    $0x8,%r14
  movzbl 0x2(%rax),%ebx
  movzbl 0x1(%rax),%ebp
  movsbl (%rax),%edi
L20:
  call   <convert_hex_char_to_int@plt>
  lea    -0x30(%rbx),%edx
  lea    -0x30(%rbp),%esi
  mov    %r12,%rcx
  mov    %eax,%edi
  movsbl %dl,%edx
  movsbl %sil,%esi
  call   <set_piece@plt>
  cmp    %r14,%r13
  jne    L17
  mov    0x108(%rsp),%rax
  sub    %fs:0x28,%rax
  jne    L5
  add    $0x110,%rsp
  pop    %rbx
  pop    %rbp
  pop    %r12
  pop    %r13
  pop    %r14
  ret
L5:
  call   <__stack_chk_fail@plt>
```

tool_calls: name: extract_symbolic_data
arguments: data_label: D220
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D199
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D75
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D54
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D228
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D106
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D285
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D129
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D105
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D109
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D166
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D243
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D51
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D29
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D209
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D299
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D160
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D11
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D161
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D260
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D213
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D288
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D88
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D193
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D214
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D108
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D291
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D77
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D298
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D217
type_guessed: string
name: extract_symbolic_data
arguments: data_label: D280
type_guessed: string

tool: D220: 828

tool: D199: B48

tool: D75: 938

tool: D54: C58

tool: D228: 878

tool: D106: 968

tool: D285: 717

tool: D129: A88

tool: D105: 737

tool: D109: 727

tool: D166: 757

tool: D243: 747

tool: D51: 777

tool: D29: 767

tool: D209: 112

tool: D299: 787

tool: D160: 132

tool: D11: 122

tool: D161: 152

tool: D260: 142

tool: D213: 172

tool: D288: 162

tool: D88: 411

tool: D193: 182

tool: D214: 331

tool: D108: 221

tool: D291: 651

tool: D77: 541

tool: D298: 271

tool: D217: 361

tool: D280: 481

assistant: ```c
void reset_board(int **board) {
  const char *defaultPieces[32] = {"A18", "828", "938", "B48", "C58", "968", "878", "A88", "717", "727", "737", "747", "757", "767", "777", "787", "112", "122", "132", "142", "152", "162", "172", "182", "411", "221", "331", "541", "651", "361", "271", "481"};
  for (int i = 0; i < sizeof(defaultPieces) / sizeof(int *); i++) {
    set_piece(convert_hex_char_to_int(defaultPieces[i][0]), defaultPieces[i][1] - '0', defaultPieces[i][2] - '0', board);
  }
}
```