user: 下面的汇编指令对应的C源代码是什么：

```asm
<internal_fiat_p448_selectznz>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x1a0,%rsp
  mov    %rdi,-0x188(%rbp)
  mov    %rsi,-0x190(%rbp)
  mov    %rdx,-0x198(%rbp)
  mov    %rcx,-0x1a0(%rbp)
  mov    -0x198(%rbp),%rax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x180(%rbp)
  mov    -0x198(%rbp),%rax
  add    $0x8,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x178(%rbp)
  mov    -0x198(%rbp),%rax
  add    $0x10,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x170(%rbp)
  mov    -0x198(%rbp),%rax
  add    $0x18,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x168(%rbp)
  mov    -0x198(%rbp),%rax
  add    $0x20,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x160(%rbp)
  mov    -0x198(%rbp),%rax
  add    $0x28,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x158(%rbp)
  mov    -0x198(%rbp),%rax
  add    $0x30,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x150(%rbp)
  mov    -0x198(%rbp),%rax
  add    $0x38,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x148(%rbp)
  mov    -0x1a0(%rbp),%rax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x140(%rbp)
  mov    -0x1a0(%rbp),%rax
  add    $0x8,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x138(%rbp)
  mov    -0x1a0(%rbp),%rax
  add    $0x10,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x130(%rbp)
  mov    -0x1a0(%rbp),%rax
  add    $0x18,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x128(%rbp)
  mov    -0x1a0(%rbp),%rax
  add    $0x20,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x120(%rbp)
  mov    -0x1a0(%rbp),%rax
  add    $0x28,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x118(%rbp)
  mov    -0x1a0(%rbp),%rax
  add    $0x30,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x110(%rbp)
  mov    -0x1a0(%rbp),%rax
  add    $0x38,%eax
  mov    $0x8,%esi
  mov    %eax,%edi
  call   <_br2_load@plt>
  mov    %rax,-0x108(%rbp)
  cmpq   $0x0,-0x190(%rbp)
  jne    L34
  mov    $0x0,%eax
  jmp    L116
L34:
  mov    $0xffffffffffffffff,%rax
L116:
  mov    %rax,-0x100(%rbp)
  mov    -0x100(%rbp),%rax
  not    %rax
  mov    %rax,-0xf8(%rbp)
  mov    -0x140(%rbp),%rax
  and    -0x100(%rbp),%rax
  mov    %rax,%rdx
  mov    -0x180(%rbp),%rax
  and    -0xf8(%rbp),%rax
  or     %rdx,%rax
  mov    %rax,-0xf0(%rbp)
  cmpq   $0x0,-0x190(%rbp)
  jne    L125
  mov    $0x0,%eax
  jmp    L151
L125:
  mov    $0xffffffffffffffff,%rax
L151:
  mov    %rax,-0xe8(%rbp)
  mov    -0xe8(%rbp),%rax
  not    %rax
  mov    %rax,-0xe0(%rbp)
  mov    -0x138(%rbp),%rax
  and    -0xe8(%rbp),%rax
  mov    %rax,%rdx
  mov    -0x178(%rbp),%rax
  and    -0xe0(%rbp),%rax
  or     %rdx,%rax
  mov    %rax,-0xd8(%rbp)
  cmpq   $0x0,-0x190(%rbp)
  jne    L78
  mov    $0x0,%eax
  jmp    L156
L78:
  mov    $0xffffffffffffffff,%rax
L156:
  mov    %rax,-0xd0(%rbp)
  mov    -0xd0(%rbp),%rax
  not    %rax
  mov    %rax,-0xc8(%rbp)
  mov    -0x130(%rbp),%rax
  and    -0xd0(%rbp),%rax
  mov    %rax,%rdx
  mov    -0x170(%rbp),%rax
  and    -0xc8(%rbp),%rax
  or     %rdx,%rax
  mov    %rax,-0xc0(%rbp)
  cmpq   $0x0,-0x190(%rbp)
  jne    L20
  mov    $0x0,%eax
  jmp    L56
L20:
  mov    $0xffffffffffffffff,%rax
L56:
  mov    %rax,-0xb8(%rbp)
  mov    -0xb8(%rbp),%rax
  not    %rax
  mov    %rax,-0xb0(%rbp)
  mov    -0x128(%rbp),%rax
  and    -0xb8(%rbp),%rax
  mov    %rax,%rdx
  mov    -0x168(%rbp),%rax
  and    -0xb0(%rbp),%rax
  or     %rdx,%rax
  mov    %rax,-0xa8(%rbp)
  cmpq   $0x0,-0x190(%rbp)
  jne    L89
  mov    $0x0,%eax
  jmp    L53
L89:
  mov    $0xffffffffffffffff,%rax
L53:
  mov    %rax,-0xa0(%rbp)
  mov    -0xa0(%rbp),%rax
  not    %rax
  mov    %rax,-0x98(%rbp)
  mov    -0x120(%rbp),%rax
  and    -0xa0(%rbp),%rax
  mov    %rax,%rdx
  mov    -0x160(%rbp),%rax
  and    -0x98(%rbp),%rax
  or     %rdx,%rax
  mov    %rax,-0x90(%rbp)
  cmpq   $0x0,-0x190(%rbp)
  jne    L3
  mov    $0x0,%eax
  jmp    L44
L3:
  mov    $0xffffffffffffffff,%rax
L44:
  mov    %rax,-0x88(%rbp)
  mov    -0x88(%rbp),%rax
  not    %rax
  mov    %rax,-0x80(%rbp)
  mov    -0x118(%rbp),%rax
  and    -0x88(%rbp),%rax
  mov    %rax,%rdx
  mov    -0x158(%rbp),%rax
  and    -0x80(%rbp),%rax
  or     %rdx,%rax
  mov    %rax,-0x78(%rbp)
  cmpq   $0x0,-0x190(%rbp)
  jne    L69
  mov    $0x0,%eax
  jmp    L121
L69:
  mov    $0xffffffffffffffff,%rax
L121:
  mov    %rax,-0x70(%rbp)
  mov    -0x70(%rbp),%rax
  not    %rax
  mov    %rax,-0x68(%rbp)
  mov    -0x110(%rbp),%rax
  and    -0x70(%rbp),%rax
  mov    %rax,%rdx
  mov    -0x150(%rbp),%rax
  and    -0x68(%rbp),%rax
  or     %rdx,%rax
  mov    %rax,-0x60(%rbp)
  cmpq   $0x0,-0x190(%rbp)
  jne    L97
  mov    $0x0,%eax
  jmp    L58
L97:
  mov    $0xffffffffffffffff,%rax
L58:
  mov    %rax,-0x58(%rbp)
  mov    -0x58(%rbp),%rax
  not    %rax
  mov    %rax,-0x50(%rbp)
  mov    -0x108(%rbp),%rax
  and    -0x58(%rbp),%rax
  mov    %rax,%rdx
  mov    -0x148(%rbp),%rax
  and    -0x50(%rbp),%rax
  or     %rdx,%rax
  mov    %rax,-0x48(%rbp)
  mov    -0xf0(%rbp),%rax
  mov    %rax,-0x40(%rbp)
  mov    -0xd8(%rbp),%rax
  mov    %rax,-0x38(%rbp)
  mov    -0xc0(%rbp),%rax
  mov    %rax,-0x30(%rbp)
  mov    -0xa8(%rbp),%rax
  mov    %rax,-0x28(%rbp)
  mov    -0x90(%rbp),%rax
  mov    %rax,-0x20(%rbp)
  mov    -0x78(%rbp),%rax
  mov    %rax,-0x18(%rbp)
  mov    -0x60(%rbp),%rax
  mov    %rax,-0x10(%rbp)
  mov    -0x48(%rbp),%rax
  mov    %rax,-0x8(%rbp)
  mov    -0x188(%rbp),%rax
  mov    %eax,%ecx
  mov    -0x40(%rbp),%rax
  mov    $0x8,%edx
  mov    %rax,%rsi
  mov    %ecx,%edi
  call   <_br2_store@plt>
  mov    -0x188(%rbp),%rax
  add    $0x8,%eax
  mov    %eax,%ecx
  mov    -0x38(%rbp),%rax
  mov    $0x8,%edx
  mov    %rax,%rsi
  mov    %ecx,%edi
  call   <_br2_store@plt>
  mov    -0x188(%rbp),%rax
  add    $0x10,%eax
  mov    %eax,%ecx
  mov    -0x30(%rbp),%rax
  mov    $0x8,%edx
  mov    %rax,%rsi
  mov    %ecx,%edi
  call   <_br2_store@plt>
  mov    -0x188(%rbp),%rax
  add    $0x18,%eax
  mov    %eax,%ecx
  mov    -0x28(%rbp),%rax
  mov    $0x8,%edx
  mov    %rax,%rsi
  mov    %ecx,%edi
  call   <_br2_store@plt>
  mov    -0x188(%rbp),%rax
  add    $0x20,%eax
  mov    %eax,%ecx
  mov    -0x20(%rbp),%rax
  mov    $0x8,%edx
  mov    %rax,%rsi
  mov    %ecx,%edi
  call   <_br2_store@plt>
  mov    -0x188(%rbp),%rax
  add    $0x28,%eax
  mov    %eax,%ecx
  mov    -0x18(%rbp),%rax
  mov    $0x8,%edx
  mov    %rax,%rsi
  mov    %ecx,%edi
  call   <_br2_store@plt>
  mov    -0x188(%rbp),%rax
  add    $0x30,%eax
  mov    %eax,%ecx
  mov    -0x10(%rbp),%rax
  mov    $0x8,%edx
  mov    %rax,%rsi
  mov    %ecx,%edi
  call   <_br2_store@plt>
  mov    -0x188(%rbp),%rax
  add    $0x38,%eax
  mov    %eax,%ecx
  mov    -0x8(%rbp),%rax
  mov    $0x8,%edx
  mov    %rax,%rsi
  mov    %ecx,%edi
  call   <_br2_store@plt>
  nop
  leave
  ret
```

assistant: ```c
void internal_fiat_p448_selectznz(uintptr_t out0, uintptr_t in0, uintptr_t in1, uintptr_t in2) {
  uintptr_t x8, x16, x0, x17, x9, x19, x1, x20, x10, x22, x2, x23, x11, x25, x3, x26, x12, x28, x4, x29, x13, x31, x5, x32, x14, x34, x6, x35, x15, x37, x7, x38, x18, x21, x24, x27, x30, x33, x36, x39, x40, x41, x42, x43, x44, x45, x46, x47;
  x0 = _br2_load((in1) + ((uintptr_t)0ULL), sizeof(uintptr_t));
  x1 = _br2_load((in1) + ((uintptr_t)8ULL), sizeof(uintptr_t));
  x2 = _br2_load((in1) + ((uintptr_t)16ULL), sizeof(uintptr_t));
  x3 = _br2_load((in1) + ((uintptr_t)24ULL), sizeof(uintptr_t));
  x4 = _br2_load((in1) + ((uintptr_t)32ULL), sizeof(uintptr_t));
  x5 = _br2_load((in1) + ((uintptr_t)40ULL), sizeof(uintptr_t));
  x6 = _br2_load((in1) + ((uintptr_t)48ULL), sizeof(uintptr_t));
  x7 = _br2_load((in1) + ((uintptr_t)56ULL), sizeof(uintptr_t));
  x8 = _br2_load((in2) + ((uintptr_t)0ULL), sizeof(uintptr_t));
  x9 = _br2_load((in2) + ((uintptr_t)8ULL), sizeof(uintptr_t));
  x10 = _br2_load((in2) + ((uintptr_t)16ULL), sizeof(uintptr_t));
  x11 = _br2_load((in2) + ((uintptr_t)24ULL), sizeof(uintptr_t));
  x12 = _br2_load((in2) + ((uintptr_t)32ULL), sizeof(uintptr_t));
  x13 = _br2_load((in2) + ((uintptr_t)40ULL), sizeof(uintptr_t));
  x14 = _br2_load((in2) + ((uintptr_t)48ULL), sizeof(uintptr_t));
  x15 = _br2_load((in2) + ((uintptr_t)56ULL), sizeof(uintptr_t));
  x16 = ((uintptr_t)-1ULL) + ((in0) == ((uintptr_t)0ULL));
  x17 = (x16) ^ ((uintptr_t)18446744073709551615ULL);
  x18 = ((x8) & (x16)) | ((x0) & (x17));
  x19 = ((uintptr_t)-1ULL) + ((in0) == ((uintptr_t)0ULL));
  x20 = (x19) ^ ((uintptr_t)18446744073709551615ULL);
  x21 = ((x9) & (x19)) | ((x1) & (x20));
  x22 = ((uintptr_t)-1ULL) + ((in0) == ((uintptr_t)0ULL));
  x23 = (x22) ^ ((uintptr_t)18446744073709551615ULL);
  x24 = ((x10) & (x22)) | ((x2) & (x23));
  x25 = ((uintptr_t)-1ULL) + ((in0) == ((uintptr_t)0ULL));
  x26 = (x25) ^ ((uintptr_t)18446744073709551615ULL);
  x27 = ((x11) & (x25)) | ((x3) & (x26));
  x28 = ((uintptr_t)-1ULL) + ((in0) == ((uintptr_t)0ULL));
  x29 = (x28) ^ ((uintptr_t)18446744073709551615ULL);
  x30 = ((x12) & (x28)) | ((x4) & (x29));
  x31 = ((uintptr_t)-1ULL) + ((in0) == ((uintptr_t)0ULL));
  x32 = (x31) ^ ((uintptr_t)18446744073709551615ULL);
  x33 = ((x13) & (x31)) | ((x5) & (x32));
  x34 = ((uintptr_t)-1ULL) + ((in0) == ((uintptr_t)0ULL));
  x35 = (x34) ^ ((uintptr_t)18446744073709551615ULL);
  x36 = ((x14) & (x34)) | ((x6) & (x35));
  x37 = ((uintptr_t)-1ULL) + ((in0) == ((uintptr_t)0ULL));
  x38 = (x37) ^ ((uintptr_t)18446744073709551615ULL);
  x39 = ((x15) & (x37)) | ((x7) & (x38));
  x40 = x18;
  x41 = x21;
  x42 = x24;
  x43 = x27;
  x44 = x30;
  x45 = x33;
  x46 = x36;
  x47 = x39;
  _br2_store((out0) + ((uintptr_t)0ULL), x40, sizeof(uintptr_t));
  _br2_store((out0) + ((uintptr_t)8ULL), x41, sizeof(uintptr_t));
  _br2_store((out0) + ((uintptr_t)16ULL), x42, sizeof(uintptr_t));
  _br2_store((out0) + ((uintptr_t)24ULL), x43, sizeof(uintptr_t));
  _br2_store((out0) + ((uintptr_t)32ULL), x44, sizeof(uintptr_t));
  _br2_store((out0) + ((uintptr_t)40ULL), x45, sizeof(uintptr_t));
  _br2_store((out0) + ((uintptr_t)48ULL), x46, sizeof(uintptr_t));
  _br2_store((out0) + ((uintptr_t)56ULL), x47, sizeof(uintptr_t));
  return;
}
```