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

```asm
<init_cong_ctrl>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  mov    %rdi,-0x8(%rbp)
  mov    %rsi,-0x10(%rbp)
  mov    -0x8(%rbp),%rax
  lea    0x10(%rax),%rdx
  movw   $0x1,(%rdx)
  mov    -0x8(%rbp),%rax
  add    $0xe,%rax
  movzwl (%rdx),%edx
  mov    %dx,(%rax)
  mov    -0x8(%rbp),%rdx
  add    $0xc,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x8(%rbp),%rax
  add    $0xa,%rax
  movzwl (%rdx),%edx
  mov    %dx,(%rax)
  mov    -0x8(%rbp),%rdx
  add    $0x8,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x8(%rbp),%rax
  add    $0x6,%rax
  movzwl (%rdx),%edx
  mov    %dx,(%rax)
  mov    -0x8(%rbp),%rdx
  add    $0x4,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x8(%rbp),%rax
  add    $0x2,%rax
  movzwl (%rdx),%edx
  mov    %dx,(%rax)
  movzwl (%rax),%edx
  mov    -0x8(%rbp),%rax
  mov    %dx,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x12,%rax
  movw   $0x2,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x14,%rax
  movw   $0x3,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x16,%rax
  movw   $0x4,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x18,%rax
  movw   $0x5,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x1a,%rax
  movw   $0x6,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x1c,%rax
  movw   $0x7,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x1e,%rax
  movw   $0x8,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x20,%rax
  movw   $0x9,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x22,%rax
  movw   $0xa,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x24,%rax
  movw   $0xe,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x26,%rax
  movw   $0x11,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x28,%rax
  movw   $0x15,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x2a,%rax
  movw   $0x19,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x2c,%rax
  movw   $0x1e,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x2e,%rax
  movw   $0x23,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x30,%rax
  movw   $0x2d,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x32,%rax
  movw   $0x3c,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x34,%rax
  movw   $0x50,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x36,%rax
  movw   $0x64,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x38,%rax
  movw   $0xc8,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x3a,%rax
  movw   $0x12c,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x3c,%rax
  movw   $0x190,(%rax)
  mov    -0x8(%rbp),%rax
  add    $0x3e,%rax
  movw   $0x1f4,(%rax)
  mov    -0x10(%rbp),%rax
  lea    0x10(%rax),%rdx
  movw   $0x0,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0xe,%rax
  movzwl (%rdx),%edx
  mov    %dx,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0xc,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0xa,%rax
  movzwl (%rdx),%edx
  mov    %dx,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0x8,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0x6,%rax
  movzwl (%rdx),%edx
  mov    %dx,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0x4,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0x2,%rax
  movzwl (%rdx),%edx
  mov    %dx,(%rax)
  movzwl (%rax),%edx
  mov    -0x10(%rbp),%rax
  mov    %dx,(%rax)
  mov    -0x10(%rbp),%rax
  add    $0x14,%rax
  movw   $0x1,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0x12,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0x18,%rax
  movw   $0x2,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0x16,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0x20,%rax
  movw   $0x3,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0x1e,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0x1c,%rax
  movzwl (%rdx),%edx
  mov    %dx,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0x1a,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x10(%rbp),%rax
  lea    0x2a(%rax),%rdx
  movw   $0x4,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0x28,%rax
  movzwl (%rdx),%edx
  mov    %dx,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0x26,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0x24,%rax
  movzwl (%rdx),%edx
  mov    %dx,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0x22,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0x36,%rax
  movw   $0x5,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0x34,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0x32,%rax
  movzwl (%rdx),%edx
  mov    %dx,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0x30,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0x2e,%rax
  movzwl (%rdx),%edx
  mov    %dx,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0x2c,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0x3a,%rax
  movw   $0x6,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0x38,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  mov    -0x10(%rbp),%rax
  add    $0x3e,%rax
  movw   $0x7,(%rax)
  mov    -0x10(%rbp),%rdx
  add    $0x3c,%rdx
  movzwl (%rax),%eax
  mov    %ax,(%rdx)
  nop
  pop    %rbp
  ret
```

assistant: ```c
void init_cong_ctrl(unsigned short *a, unsigned short *b) {
  a[0] = a[1] = a[2] = a[3] = a[4] = a[5] = a[6] = a[7] = a[8] = 1;
  a[9] = 2;
  a[10] = 3;
  a[11] = 4;
  a[12] = 5;
  a[13] = 6;
  a[14] = 7;
  a[15] = 8;
  a[16] = 9;
  a[17] = 10;
  a[18] = 14;
  a[19] = 17;
  a[20] = 21;
  a[21] = 25;
  a[22] = 30;
  a[23] = 35;
  a[24] = 45;
  a[25] = 60;
  a[26] = 80;
  a[27] = 100;
  a[28] = 200;
  a[29] = 300;
  a[30] = 400;
  a[31] = 500;
  b[0] = b[1] = b[2] = b[3] = b[4] = b[5] = b[6] = b[7] = b[8] = 0;
  b[9] = b[10] = 1;
  b[11] = b[12] = 2;
  b[13] = b[14] = b[15] = b[16] = 3;
  b[17] = b[18] = b[19] = b[20] = b[21] = 4;
  b[22] = b[23] = b[24] = b[25] = b[26] = b[27] = 5;
  b[28] = b[29] = 6;
  b[30] = b[31] = 7;
}
```