user: 提供的汇编代码用C语言表示会是什么样子：

```asm
<build_transij>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  mov    %rdi,-0x28(%rbp)
  mov    %rsi,-0x30(%rbp)
  mov    %edx,-0x34(%rbp)
  mov    %ecx,-0x38(%rbp)
  mov    %r8d,-0x3c(%rbp)
  mov    %r9d,-0x40(%rbp)
  movl   $0x0,-0x14(%rbp)
  jmp    L411
L84:
  movl   $0x0,-0x10(%rbp)
  jmp    L103
L28:
  mov    -0x14(%rbp),%eax
  movslq %eax,%rdx
  mov    %rdx,%rax
  add    %rax,%rax
  add    %rdx,%rax
  shl    $0x2,%rax
  mov    %rax,%rdx
  mov    0x10(%rbp),%rax
  add    %rax,%rdx
  mov    -0x10(%rbp),%eax
  cltq
  pxor   %xmm0,%xmm0
  movss  %xmm0,(%rdx,%rax,4)
  addl   $0x1,-0x10(%rbp)
L103:
  cmpl   $0x2,-0x10(%rbp)
  jle    L28
  addl   $0x1,-0x14(%rbp)
L411:
  cmpl   $0x2,-0x14(%rbp)
  jle    L84
  movl   $0x0,-0xc(%rbp)
  jmp    L147
L442:
  cmpl   $0x0,-0x3c(%rbp)
  jle    L169
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x3c(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2c,%al
  je     L39
L169:
  mov    -0x38(%rbp),%eax
  cmp    -0x40(%rbp),%eax
  jl     L167
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x40(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2c,%al
  je     L397
L167:
  movl   $0x0,-0x8(%rbp)
  mov    -0x3c(%rbp),%eax
  add    $0x1,%eax
  mov    %eax,-0x4(%rbp)
  jmp    L136
L95:
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x4(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2c,%al
  je     L272
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x4(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x20,%al
  je     L272
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x4(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2e,%al
  je     L272
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x4(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x5f,%al
  je     L272
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x4(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2d,%al
  je     L272
  addl   $0x1,-0x8(%rbp)
L272:
  addl   $0x1,-0x4(%rbp)
L136:
  mov    -0x4(%rbp),%eax
  cmp    -0x40(%rbp),%eax
  jl     L95
  cmpl   $0x0,-0x8(%rbp)
  jle    L126
  cmpl   $0x0,-0x3c(%rbp)
  jle    L228
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x3c(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x20,%al
  je     L132
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x3c(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2e,%al
  je     L132
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x3c(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x5f,%al
  je     L132
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x3c(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2d,%al
  jne    L228
L132:
  mov    0x10(%rbp),%rax
  add    $0x18,%rax
  movss  0x4(%rax),%xmm1
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  movss  (%rax),%xmm0
  mov    0x10(%rbp),%rax
  add    $0x18,%rax
  addss  %xmm1,%xmm0
  movss  %xmm0,0x4(%rax)
  jmp    L240
L228:
  mov    0x10(%rbp),%rax
  movss  0x4(%rax),%xmm1
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  movss  (%rax),%xmm0
  addss  %xmm1,%xmm0
  mov    0x10(%rbp),%rax
  movss  %xmm0,0x4(%rax)
L240:
  mov    -0x38(%rbp),%eax
  cmp    -0x40(%rbp),%eax
  jl     L29
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x40(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x20,%al
  je     L141
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x40(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2e,%al
  je     L141
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x40(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x5f,%al
  je     L141
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x40(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2d,%al
  jne    L29
L141:
  mov    0x10(%rbp),%rax
  add    $0xc,%rax
  movss  0x8(%rax),%xmm1
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  movss  (%rax),%xmm0
  mov    0x10(%rbp),%rax
  add    $0xc,%rax
  addss  %xmm1,%xmm0
  movss  %xmm0,0x8(%rax)
  jmp    L501
L29:
  mov    0x10(%rbp),%rax
  add    $0xc,%rax
  movss  (%rax),%xmm1
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  movss  (%rax),%xmm0
  mov    0x10(%rbp),%rax
  add    $0xc,%rax
  addss  %xmm1,%xmm0
  movss  %xmm0,(%rax)
L501:
  mov    0x10(%rbp),%rax
  add    $0xc,%rax
  movss  0x4(%rax),%xmm1
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  movss  (%rax),%xmm2
  mov    -0x8(%rbp),%eax
  sub    $0x1,%eax
  pxor   %xmm0,%xmm0
  cvtsi2ss %eax,%xmm0
  mulss  %xmm2,%xmm0
  mov    0x10(%rbp),%rax
  add    $0xc,%rax
  addss  %xmm1,%xmm0
  movss  %xmm0,0x4(%rax)
  jmp    L295
L126:
  cmpl   $0x0,-0x3c(%rbp)
  jle    L458
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x3c(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x20,%al
  je     L336
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x3c(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2e,%al
  je     L336
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x3c(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x5f,%al
  je     L336
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x3c(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2d,%al
  jne    L458
L336:
  mov    -0x38(%rbp),%eax
  cmp    -0x40(%rbp),%eax
  jl     L439
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x40(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x20,%al
  je     L98
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x40(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2e,%al
  je     L98
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x40(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x5f,%al
  je     L98
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x40(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2d,%al
  jne    L439
L98:
  mov    0x10(%rbp),%rax
  add    $0x18,%rax
  movss  0x8(%rax),%xmm1
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  movss  (%rax),%xmm0
  mov    0x10(%rbp),%rax
  add    $0x18,%rax
  addss  %xmm1,%xmm0
  movss  %xmm0,0x8(%rax)
  jmp    L295
L439:
  mov    0x10(%rbp),%rax
  add    $0x18,%rax
  movss  (%rax),%xmm1
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  movss  (%rax),%xmm0
  mov    0x10(%rbp),%rax
  add    $0x18,%rax
  addss  %xmm1,%xmm0
  movss  %xmm0,(%rax)
  jmp    L295
L458:
  mov    -0x38(%rbp),%eax
  cmp    -0x40(%rbp),%eax
  jl     L38
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x40(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x20,%al
  je     L66
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x40(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2e,%al
  je     L66
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x40(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x5f,%al
  je     L66
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,8),%rdx
  mov    -0x28(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rdx
  mov    -0x40(%rbp),%eax
  cltq
  sub    $0x1,%rax
  add    %rdx,%rax
  movzbl (%rax),%eax
  cmp    $0x2d,%al
  jne    L38
L66:
  mov    0x10(%rbp),%rax
  movss  0x8(%rax),%xmm1
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  movss  (%rax),%xmm0
  addss  %xmm1,%xmm0
  mov    0x10(%rbp),%rax
  movss  %xmm0,0x8(%rax)
  jmp    L295
L38:
  mov    0x10(%rbp),%rax
  movss  (%rax),%xmm1
  mov    -0xc(%rbp),%eax
  cltq
  lea    0x0(,%rax,4),%rdx
  mov    -0x30(%rbp),%rax
  add    %rdx,%rax
  movss  (%rax),%xmm0
  addss  %xmm1,%xmm0
  mov    0x10(%rbp),%rax
  movss  %xmm0,(%rax)
  jmp    L295
L39:
  nop
  jmp    L295
L397:
  nop
L295:
  addl   $0x1,-0xc(%rbp)
L147:
  mov    -0xc(%rbp),%eax
  cmp    -0x34(%rbp),%eax
  jl     L442
  mov    $0x1,%eax
  pop    %rbp
  ret
```

assistant: ```c
int build_transij(char **aseqs, float *weights, int nseq, int M, int i, int j, float transij[3][3]) {
  int x, y;
  int idx;
  int inscount;
  int pos;
  for (x = 0; x < 3; x++)
    for (y = 0; y < 3; y++)
      transij[x][y] = 0.0;
  for (idx = 0; idx < nseq; idx++) {
    if (i > 0 && aseqs[idx][i - 1] == ',')
      continue;
    if (j < M + 1 && aseqs[idx][j - 1] == ',')
      continue;
    inscount = 0;
    for (pos = i + 1; pos < j; pos++)
      if (aseqs[idx][pos - 1] != ',' && !((aseqs[idx][pos - 1]) == ' ' || (aseqs[idx][pos - 1]) == '.' || (aseqs[idx][pos - 1]) == '_' || (aseqs[idx][pos - 1]) == '-'))
        inscount++;
    if (inscount > 0) {
      if (i > 0 && ((aseqs[idx][i - 1]) == ' ' || (aseqs[idx][i - 1]) == '.' || (aseqs[idx][i - 1]) == '_' || (aseqs[idx][i - 1]) == '-'))
        transij[2][1] += weights[idx];
      else
        transij[0][1] += weights[idx];
      if (j < M + 1 && ((aseqs[idx][j - 1]) == ' ' || (aseqs[idx][j - 1]) == '.' || (aseqs[idx][j - 1]) == '_' || (aseqs[idx][j - 1]) == '-'))
        transij[1][2] += weights[idx];
      else
        transij[1][0] += weights[idx];
      transij[1][1] += weights[idx] * (inscount - 1);
    } else {
      if (i > 0 && ((aseqs[idx][i - 1]) == ' ' || (aseqs[idx][i - 1]) == '.' || (aseqs[idx][i - 1]) == '_' || (aseqs[idx][i - 1]) == '-')) {
        if (j < M + 1 && ((aseqs[idx][j - 1]) == ' ' || (aseqs[idx][j - 1]) == '.' || (aseqs[idx][j - 1]) == '_' || (aseqs[idx][j - 1]) == '-'))
          transij[2][2] += weights[idx];
        else
          transij[2][0] += weights[idx];
      } else {
        if (j < M + 1 && ((aseqs[idx][j - 1]) == ' ' || (aseqs[idx][j - 1]) == '.' || (aseqs[idx][j - 1]) == '_' || (aseqs[idx][j - 1]) == '-'))
          transij[0][2] += weights[idx];
        else
          transij[0][0] += weights[idx];
      }
    }
  }
  return 1;
}
```