user: 请将以下的汇编代码转换成C语言代码：

```asm
<bufferizeNeigh>:
  endbr64
  mov    %esi,%eax
  mov    (%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,(%rdx)
  mov    0x4(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x4(%rdx)
  mov    0x8(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x8(%rdx)
  mov    0xc(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0xc(%rdx)
  mov    0x10(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x10(%rdx)
  mov    0x14(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x14(%rdx)
  mov    0x18(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x18(%rdx)
  mov    0x1c(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x1c(%rdx)
  mov    0x20(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x20(%rdx)
  mov    0x24(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x24(%rdx)
  mov    0x28(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x28(%rdx)
  mov    0x2c(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x2c(%rdx)
  mov    0x30(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x30(%rdx)
  mov    0x34(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x34(%rdx)
  mov    0x38(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x38(%rdx)
  mov    0x3c(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x3c(%rdx)
  mov    0x40(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x40(%rdx)
  mov    0x44(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x44(%rdx)
  mov    0x48(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x48(%rdx)
  mov    0x4c(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x4c(%rdx)
  mov    0x50(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x50(%rdx)
  mov    0x54(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x54(%rdx)
  mov    0x58(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x58(%rdx)
  mov    0x5c(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x5c(%rdx)
  mov    0x60(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x60(%rdx)
  mov    0x64(%rcx),%esi
  add    %eax,%esi
  movslq %esi,%rsi
  cmpb   $0x1,(%rdi,%rsi,1)
  sbb    %esi,%esi
  or     $0x1,%esi
  mov    %esi,0x64(%rdx)
  add    0x68(%rcx),%eax
  cltq
  cmpb   $0x1,(%rdi,%rax,1)
  sbb    %eax,%eax
  or     $0x1,%eax
  mov    %eax,0x68(%rdx)
  ret
```

assistant: ```c
void bufferizeNeigh(unsigned char *vol, int idx, int nb[27], const int volNeigh[27]) {
  int nidx;
  int i, j, k, ii;
  ii = 0;
  for (k = 0; k < 3; k++)
    for (j = 0; j < 3; j++)
      for (i = 0; i < 3; i++) {
        nidx = idx + volNeigh[ii++];
        nb[((j) * (3) + (i) + (k) * (3) * (3))] = (vol[nidx] != 0) ? 1 : -1;
      }
}
```