user: 请从给定的汇编指令推导出C源代码：

```asm
<mixy>:
  endbr64
  push   %r15
  push   %r14
  push   %r13
  push   %r12
  push   %rbp
  push   %rbx
  mov    %edx,%ebx
  sub    $0xe8,%rsp
  mov    %rdi,0x40(%rsp)
  lea    0x0(,%rdx,8),%edi
  mov    %esi,0x3c(%rsp)
  mov    %rcx,0x68(%rsp)
  mov    %fs:0x28,%rax
  mov    %rax,0xd8(%rsp)
  xor    %eax,%eax
  call   <malloc@plt>
  mov    %rax,0x60(%rsp)
  test   %rax,%rax
  je     L200
L76:
  cmp    $0x1,%ebx
  jle    L31
  mov    0x60(%rsp),%rsi
  lea    -0x2(%rbx),%eax
  mov    $0x4,%r12d
  lea    D226(%rip),%r13
  lea    0x8(%rsi),%r14
  lea    0x10(%rsi,%rax,8),%rbp
  mov    %r14,%r15
  jmp    L259
L245:
  add    $0x8,%r15
  add    $0x4,%r12d
  cmp    %r15,%rbp
  je     L185
L259:
  mov    %r12d,%edi
  call   <malloc@plt>
  mov    %rax,(%r15)
  test   %rax,%rax
  jne    L245
  mov    $0xc4,%edx
  mov    %r13,%rsi
  add    $0x8,%r15
  add    $0x4,%r12d
  lea    D215(%rip),%rdi
  call   <Die@plt>
  cmp    %r15,%rbp
  jne    L259
L185:
  mov    %ebx,%eax
  mov    0x40(%rsp),%rsi
  mov    $0x1,%r12d
  movabs $0x8000000000006001,%r15
  mov    %rax,0x58(%rsp)
  mov    0x3c(%rsp),%eax
  sub    $0x1,%eax
  lea    0x8(%rsi,%rax,8),%r13
L289:
  xor    %ebx,%ebx
  cs nopw 0x0(%rax,%rax,1)
L118:
  mov    0x3c(%rsp),%eax
  pxor   %xmm0,%xmm0
  mov    0x40(%rsp),%rdx
  movl   $0x0,0x4(%rsp)
  movaps %xmm0,0x80(%rsp)
  movaps %xmm0,0x70(%rsp)
  movaps %xmm0,0x90(%rsp)
  movaps %xmm0,0xa0(%rsp)
  movaps %xmm0,0xb0(%rsp)
  movaps %xmm0,0xc0(%rsp)
  test   %eax,%eax
  jle    L199
  mov    %r14,0x8(%rsp)
  mov    %rdx,%rbp
  mov    %r12,%r14
  mov    %rbx,%r12
  jmp    L229
  nopl   (%rax)
L293:
  movzbl (%rdx,%r14,1),%eax
  sub    $0x20,%eax
  cmp    $0x3f,%al
  jbe    L356
L150:
  call   <SymbolIndex@plt>
  movslq %eax,%rbx
  mov    0x0(%rbp),%rax
  movsbl (%rax,%r14,1),%edi
  call   <SymbolIndex@plt>
  movss  D220(%rip),%xmm0
  addss  0x70(%rsp,%rbx,4),%xmm0
  cltq
  addl   $0x1,0x4(%rsp)
  movss  %xmm0,0x70(%rsp,%rbx,4)
  movss  D220(%rip),%xmm0
  addss  0x80(%rsp,%rax,4),%xmm0
  movss  %xmm0,0x80(%rsp,%rax,4)
  lea    (%rax,%rbx,4),%rax
  movss  D220(%rip),%xmm0
  addss  0x90(%rsp,%rax,4),%xmm0
  movss  %xmm0,0x90(%rsp,%rax,4)
L128:
  add    $0x8,%rbp
  cmp    %rbp,%r13
  je     L241
L229:
  mov    0x0(%rbp),%rdx
  movsbl (%rdx,%r12,1),%edi
  lea    -0x20(%rdi),%eax
  cmp    $0x3f,%al
  ja     L293
  bt     %rax,%r15
  jae    L293
  add    $0x8,%rbp
  cmp    %rbp,%r13
  jne    L229
L241:
  movss  0xa0(%rsp),%xmm5
  mov    %r12,%rbx
  mov    %r14,%r12
  movss  0xa4(%rsp),%xmm6
  mov    0x8(%rsp),%r14
  mov    0x4(%rsp),%edx
  movss  0xac(%rsp),%xmm7
  movss  %xmm5,0x8(%rsp)
  movss  0xa8(%rsp),%xmm5
  movss  0x90(%rsp),%xmm1
  movss  %xmm6,0x10(%rsp)
  movss  0xb0(%rsp),%xmm6
  movss  0x94(%rsp),%xmm2
  movss  %xmm5,0x14(%rsp)
  movss  0xb4(%rsp),%xmm5
  movss  0x98(%rsp),%xmm3
  movss  %xmm7,0x18(%rsp)
  movss  0xb8(%rsp),%xmm7
  movss  0x9c(%rsp),%xmm4
  movss  %xmm6,0x1c(%rsp)
  movss  0xbc(%rsp),%xmm6
  movss  %xmm5,0x20(%rsp)
  movss  0xc0(%rsp),%xmm5
  movss  %xmm7,0x24(%rsp)
  movss  0xc4(%rsp),%xmm7
  movss  %xmm6,0x34(%rsp)
  movss  0xc8(%rsp),%xmm6
  movss  %xmm5,0x28(%rsp)
  movss  0xcc(%rsp),%xmm5
  movss  %xmm7,0x38(%rsp)
  movss  %xmm6,0x2c(%rsp)
  movss  %xmm5,0x30(%rsp)
  test   %edx,%edx
  je     L83
  pxor   %xmm0,%xmm0
  movaps 0x70(%rsp),%xmm6
  movaps 0x80(%rsp),%xmm5
  cvtsi2ssl 0x4(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm0,%xmm7
  shufps $0x0,%xmm7,%xmm7
  divps  %xmm7,%xmm6
  movss  %xmm1,0x90(%rsp)
  divps  %xmm7,%xmm5
  movss  0x8(%rsp),%xmm7
  movaps %xmm6,0x70(%rsp)
  divss  %xmm0,%xmm7
  divss  %xmm0,%xmm2
  movss  %xmm7,0x8(%rsp)
  movss  %xmm7,0xa0(%rsp)
  movss  0x10(%rsp),%xmm7
  divss  %xmm0,%xmm7
  movss  %xmm2,0x94(%rsp)
  divss  %xmm0,%xmm3
  movss  %xmm7,0x10(%rsp)
  movss  %xmm7,0xa4(%rsp)
  movss  0x14(%rsp),%xmm7
  divss  %xmm0,%xmm7
  movss  %xmm3,0x98(%rsp)
  divss  %xmm0,%xmm4
  movss  %xmm7,0x14(%rsp)
  movss  %xmm7,0xa8(%rsp)
  movss  0x18(%rsp),%xmm7
  divss  %xmm0,%xmm7
  movss  %xmm4,0x9c(%rsp)
  movss  %xmm7,0x18(%rsp)
  movss  %xmm7,0xac(%rsp)
  movss  0x1c(%rsp),%xmm7
  divss  %xmm0,%xmm7
  movss  %xmm7,0x1c(%rsp)
  movss  %xmm7,0xb0(%rsp)
  movss  0x20(%rsp),%xmm7
  divss  %xmm0,%xmm7
  movss  %xmm7,0x20(%rsp)
  movss  %xmm7,0xb4(%rsp)
  movss  0x24(%rsp),%xmm7
  divss  %xmm0,%xmm7
  movss  %xmm7,0x24(%rsp)
  movss  %xmm7,0xb8(%rsp)
  movss  0x34(%rsp),%xmm7
  divss  %xmm0,%xmm7
  movss  %xmm7,0x34(%rsp)
  movss  %xmm7,0xbc(%rsp)
  movaps %xmm5,0x80(%rsp)
  movss  0x28(%rsp),%xmm6
  movss  0x38(%rsp),%xmm5
  divss  %xmm0,%xmm6
  divss  %xmm0,%xmm5
  movss  %xmm6,0x28(%rsp)
  movss  %xmm6,0xc0(%rsp)
  movss  0x2c(%rsp),%xmm6
  divss  %xmm0,%xmm6
  movss  %xmm5,0x38(%rsp)
  movss  %xmm5,0xc4(%rsp)
  movss  0x30(%rsp),%xmm5
  divss  %xmm0,%xmm5
  movss  %xmm6,0x2c(%rsp)
  movss  %xmm6,0xc8(%rsp)
  movss  %xmm5,0x30(%rsp)
  movss  %xmm5,0xcc(%rsp)
L83:
  pxor   %xmm5,%xmm5
  mov    (%r14),%rax
  lea    0x0(,%rbx,4),%rbp
  comiss %xmm5,%xmm1
  movl   $0x0,(%rax,%rbx,4)
  jbe    L100
  movss  0x70(%rsp),%xmm0
  movaps %xmm1,%xmm5
  movss  %xmm2,0x54(%rsp)
  mulss  0x80(%rsp),%xmm0
  movss  %xmm4,0x50(%rsp)
  movss  %xmm3,0x4c(%rsp)
  movss  %xmm1,0x48(%rsp)
  divss  %xmm0,%xmm5
  movaps %xmm5,%xmm0
  call   <log@plt>
  movss  0x48(%rsp),%xmm1
  mov    (%r14),%rax
  movss  0x54(%rsp),%xmm2
  movss  0x50(%rsp),%xmm4
  cvtss2sd %xmm1,%xmm1
  mulsd  D52(%rip),%xmm1
  movss  0x4c(%rsp),%xmm3
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L100:
  pxor   %xmm5,%xmm5
  comiss %xmm5,%xmm2
  jbe    L249
  movss  0x70(%rsp),%xmm0
  movaps %xmm2,%xmm1
  movss  %xmm4,0x50(%rsp)
  mulss  0x84(%rsp),%xmm0
  movss  %xmm3,0x4c(%rsp)
  movss  %xmm2,0x48(%rsp)
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  movss  0x48(%rsp),%xmm2
  mov    (%r14),%rax
  movss  0x50(%rsp),%xmm4
  movss  0x4c(%rsp),%xmm3
  cvtss2sd %xmm2,%xmm2
  mulsd  D52(%rip),%xmm2
  mulsd  %xmm2,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L249:
  pxor   %xmm2,%xmm2
  comiss %xmm2,%xmm3
  jbe    L198
  movss  0x70(%rsp),%xmm0
  movaps %xmm3,%xmm1
  movss  %xmm4,0x4c(%rsp)
  mulss  0x88(%rsp),%xmm0
  movss  %xmm3,0x48(%rsp)
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  movss  0x48(%rsp),%xmm3
  mov    (%r14),%rax
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  movss  0x4c(%rsp),%xmm4
  cvtss2sd %xmm3,%xmm0
  mulsd  D52(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L198:
  pxor   %xmm3,%xmm3
  comiss %xmm3,%xmm4
  jbe    L378
  movss  0x70(%rsp),%xmm0
  movaps %xmm4,%xmm1
  movss  %xmm4,0x48(%rsp)
  mulss  0x8c(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  movss  0x48(%rsp),%xmm4
  mov    (%r14),%rax
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtss2sd %xmm4,%xmm0
  mulsd  D52(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L378:
  movss  0x8(%rsp),%xmm6
  pxor   %xmm4,%xmm4
  comiss %xmm4,%xmm6
  jbe    L217
  movss  0x74(%rsp),%xmm0
  movaps %xmm6,%xmm1
  mulss  0x80(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  mov    (%r14),%rax
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtss2sd 0x8(%rsp),%xmm0
  mulsd  D52(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L217:
  movss  0x10(%rsp),%xmm7
  pxor   %xmm3,%xmm3
  comiss %xmm3,%xmm7
  jbe    L247
  movss  0x74(%rsp),%xmm0
  movaps %xmm7,%xmm1
  mulss  0x84(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  mov    (%r14),%rax
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtss2sd 0x10(%rsp),%xmm0
  mulsd  D52(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L247:
  movss  0x14(%rsp),%xmm5
  pxor   %xmm2,%xmm2
  comiss %xmm2,%xmm5
  jbe    L151
  movss  0x74(%rsp),%xmm0
  movaps %xmm5,%xmm1
  mulss  0x88(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  mov    (%r14),%rax
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtss2sd 0x14(%rsp),%xmm0
  mulsd  D52(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L151:
  movss  0x18(%rsp),%xmm6
  pxor   %xmm4,%xmm4
  comiss %xmm4,%xmm6
  jbe    L362
  movss  0x74(%rsp),%xmm0
  movaps %xmm6,%xmm1
  mulss  0x8c(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  mov    (%r14),%rax
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtss2sd 0x18(%rsp),%xmm0
  mulsd  D52(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L362:
  movss  0x1c(%rsp),%xmm7
  pxor   %xmm6,%xmm6
  comiss %xmm6,%xmm7
  jbe    L190
  movss  0x78(%rsp),%xmm0
  movaps %xmm7,%xmm1
  mulss  0x80(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  mov    (%r14),%rax
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtss2sd 0x1c(%rsp),%xmm0
  mulsd  D52(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L190:
  movss  0x20(%rsp),%xmm3
  pxor   %xmm7,%xmm7
  comiss %xmm7,%xmm3
  jbe    L361
  movss  0x78(%rsp),%xmm0
  movaps %xmm3,%xmm1
  mulss  0x84(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  mov    (%r14),%rax
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtss2sd 0x20(%rsp),%xmm0
  mulsd  D52(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L361:
  movss  0x24(%rsp),%xmm5
  pxor   %xmm3,%xmm3
  comiss %xmm3,%xmm5
  jbe    L257
  movss  0x78(%rsp),%xmm0
  movaps %xmm5,%xmm1
  mulss  0x88(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  mov    (%r14),%rax
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtss2sd 0x24(%rsp),%xmm0
  mulsd  D52(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L257:
  movss  0x34(%rsp),%xmm2
  pxor   %xmm5,%xmm5
  comiss %xmm5,%xmm2
  jbe    L15
  movss  0x78(%rsp),%xmm0
  movaps %xmm2,%xmm1
  mulss  0x8c(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  mov    (%r14),%rax
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtss2sd 0x34(%rsp),%xmm0
  mulsd  D52(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L15:
  movss  0x28(%rsp),%xmm4
  pxor   %xmm2,%xmm2
  comiss %xmm2,%xmm4
  jbe    L124
  movss  0x7c(%rsp),%xmm0
  movaps %xmm4,%xmm1
  mulss  0x80(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  mov    (%r14),%rax
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtss2sd 0x28(%rsp),%xmm0
  mulsd  D52(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L124:
  movss  0x38(%rsp),%xmm6
  pxor   %xmm4,%xmm4
  comiss %xmm4,%xmm6
  jbe    L367
  movss  0x7c(%rsp),%xmm0
  movaps %xmm6,%xmm1
  mulss  0x84(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  mov    (%r14),%rax
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtss2sd 0x38(%rsp),%xmm0
  mulsd  D52(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L367:
  movss  0x2c(%rsp),%xmm7
  pxor   %xmm6,%xmm6
  comiss %xmm6,%xmm7
  jbe    L103
  movss  0x7c(%rsp),%xmm0
  movaps %xmm7,%xmm1
  mulss  0x88(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  mov    (%r14),%rax
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtss2sd 0x2c(%rsp),%xmm0
  mulsd  D52(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%ecx
  add    %ecx,(%rax,%rbp,1)
L103:
  movss  0x30(%rsp),%xmm7
  pxor   %xmm3,%xmm3
  comiss %xmm3,%xmm7
  ja     L303
  lea    (%rax,%rbp,1),%rcx
  mov    0x4(%rsp),%eax
  imul   (%rcx),%eax
L65:
  cltd
  add    $0x1,%rbx
  idivl  0x3c(%rsp)
  mov    %eax,(%rcx)
  cmp    %r12,%rbx
  jne    L118
  add    $0x1,%r12
  add    $0x8,%r14
  cmp    %r12,0x58(%rsp)
  jne    L289
L31:
  mov    0x68(%rsp),%rax
  mov    0x60(%rsp),%rsi
  mov    %rsi,(%rax)
  mov    0xd8(%rsp),%rax
  sub    %fs:0x28,%rax
  jne    L97
  add    $0xe8,%rsp
  pop    %rbx
  pop    %rbp
  pop    %r12
  pop    %r13
  pop    %r14
  pop    %r15
  ret
  nopl   0x0(%rax)
L356:
  bt     %rax,%r15
  jb     L128
  jmp    L150
  nop
L303:
  movss  0x7c(%rsp),%xmm0
  movaps %xmm7,%xmm1
  mulss  0x8c(%rsp),%xmm0
  divss  %xmm0,%xmm1
  movaps %xmm1,%xmm0
  call   <log@plt>
  mov    (%r14),%rcx
  movapd %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtss2sd 0x30(%rsp),%xmm0
  mulsd  D52(%rip),%xmm0
  add    %rbp,%rcx
  mulsd  %xmm1,%xmm0
  cvttsd2si %xmm0,%eax
  add    (%rcx),%eax
  imul   0x4(%rsp),%eax
  jmp    L65
L199:
  pxor   %xmm4,%xmm4
  movl   $0x0,0x30(%rsp)
  movl   $0x0,0x2c(%rsp)
  movaps %xmm4,%xmm3
  movaps %xmm4,%xmm2
  movaps %xmm4,%xmm1
  movl   $0x0,0x38(%rsp)
  movl   $0x0,0x28(%rsp)
  movl   $0x0,0x34(%rsp)
  movl   $0x0,0x24(%rsp)
  movl   $0x0,0x20(%rsp)
  movl   $0x0,0x1c(%rsp)
  movl   $0x0,0x18(%rsp)
  movl   $0x0,0x14(%rsp)
  movl   $0x0,0x10(%rsp)
  movl   $0x0,0x8(%rsp)
  jmp    L83
L200:
  mov    $0xc1,%edx
  lea    D226(%rip),%rsi
  lea    D215(%rip),%rdi
  call   <Die@plt>
  jmp    L76
L97:
  call   <__stack_chk_fail@plt>
```

tool_calls: name: parse_data
arguments: data_label: D226
datatype: string
name: parse_data
arguments: data_label: D215
datatype: string
name: parse_data
arguments: data_label: D220
datatype: f32
name: parse_data
arguments: data_label: D52
datatype: f64

tool: D226: /scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/2022-01-22/02-19-57/repos/fredericokremer/genix/refs/heads/master/bin/tRNAscan-SE/fastmodelmaker.c

tool: D215: Memory allocation failure at %s line %d

tool: D220: 1

tool: D52: 144.269504

assistant: ```c
void mixy(char **aseq, int nseq, int alen, int ***ret_mxy) {
  int **mxy;
  float fx[4];
  float fy[4];
  float fxy[4][4];
  int idx;
  int i, j;
  int symi, symj;
  int pairs;
  long test;
  if ((mxy = (int **)malloc(alen * sizeof(int *))) == NULL)
    Die("Memory allocation failure at %s line %d", "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/2022-01-22/02-19-57/repos/fredericokremer/genix/refs/heads/master/bin/tRNAscan-SE/fastmodelmaker.c", 193);
  for (j = 1; j < alen; j++)
    if ((mxy[j] = (int *)malloc(j * sizeof(int))) == NULL)
      Die("Memory allocation failure at %s line %d", "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/2022-01-22/02-19-57/repos/fredericokremer/genix/refs/heads/master/bin/tRNAscan-SE/fastmodelmaker.c", 196);
  test = (long)mxy[20];
  for (j = 1; j < alen; j++)
    for (i = 0; i < j; i++) {
      for (symj = 0; symj < 4; symj++) {
        fx[symj] = fy[symj] = 0.0;
        for (symi = 0; symi < 4; symi++)
          fxy[symj][symi] = 0.0;
      }
      pairs = 0;
      for (idx = 0; idx < nseq; idx++) {
        if (((aseq[idx][i]) == ' ' || (aseq[idx][i]) == '.' || (aseq[idx][i]) == '_' || (aseq[idx][i]) == '-') || ((aseq[idx][j]) == ' ' || (aseq[idx][j]) == '.' || (aseq[idx][j]) == '_' || (aseq[idx][j]) == '-'))
          continue;
        symi = SymbolIndex(aseq[idx][i]);
        symj = SymbolIndex(aseq[idx][j]);
        fx[symi] += 1.0;
        fy[symj] += 1.0;
        fxy[symi][symj] += 1.0;
        pairs++;
      }
      if (pairs > 0)
        for (symi = 0; symi < 4; symi++) {
          fx[symi] /= (float)pairs;
          fy[symi] /= (float)pairs;
          for (symj = 0; symj < 4; symj++)
            fxy[symi][symj] /= (float)pairs;
        }
      mxy[j][i] = 0;
      for (symi = 0; symi < 4; symi++)
        for (symj = 0; symj < 4; symj++) {
          if (fxy[symi][symj] > 0.0)
            mxy[j][i] += (int)(144.269504 * fxy[symi][symj] * log((fxy[symi][symj] / (fx[symi] * fy[symj]))));
        }
      mxy[j][i] = (mxy[j][i] * pairs) / nseq;
    }
  *ret_mxy = mxy;
}
```