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

```asm
<stage_cu>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  mov    $0x0,%esi
  mov    $0x50001004,%edi
  call   <Xil_Out32@plt>
  mov    $0xb0040000,%esi
  mov    $0x50001000,%edi
  call   <Xil_Out32@plt>
  mov    $0x4,%esi
  mov    $0x50001004,%edi
  call   <Xil_Out32@plt>
  mov    $0xbe8503ff,%esi
  mov    $0x50001000,%edi
  call   <Xil_Out32@plt>
  mov    $0x8,%esi
  mov    $0x50001004,%edi
  call   <Xil_Out32@plt>
  mov    $0x200000,%esi
  mov    $0x50001000,%edi
  call   <Xil_Out32@plt>
  mov    $0xc,%esi
  mov    $0x50001004,%edi
  call   <Xil_Out32@plt>
  mov    $0xb004000e,%esi
  mov    $0x50001000,%edi
  call   <Xil_Out32@plt>
  mov    $0x10,%esi
  mov    $0x50001004,%edi
  call   <Xil_Out32@plt>
  mov    $0xc2048504,%esi
  mov    $0x50001000,%edi
  call   <Xil_Out32@plt>
  mov    $0x14,%esi
  mov    $0x50001004,%edi
  call   <Xil_Out32@plt>
  mov    $0xbf810000,%esi
  mov    $0x50001000,%edi
  call   <Xil_Out32@plt>
  mov    $0x0,%esi
  mov    $0x50002004,%edi
  call   <Xil_Out32@plt>
  mov    $0xa,%esi
  mov    $0x50002008,%edi
  call   <Xil_Out32@plt>
  mov    $0x24,%esi
  mov    $0x5000200c,%edi
  call   <Xil_Out32@plt>
  mov    $0xe,%esi
  mov    $0x50002010,%edi
  call   <Xil_Out32@plt>
  mov    $0x2f,%esi
  mov    $0x50002014,%edi
  call   <Xil_Out32@plt>
  mov    $0x1,%esi
  mov    $0x50002000,%edi
  call   <Xil_Out32@plt>
  mov    $0x10,%esi
  mov    $0x50002004,%edi
  call   <Xil_Out32@plt>
  mov    $0x21,%esi
  mov    $0x50002008,%edi
  call   <Xil_Out32@plt>
  mov    $0x2b,%esi
  mov    $0x5000200c,%edi
  call   <Xil_Out32@plt>
  mov    $0x8,%esi
  mov    $0x50002010,%edi
  call   <Xil_Out32@plt>
  mov    $0x18,%esi
  mov    $0x50002014,%edi
  call   <Xil_Out32@plt>
  mov    $0x1,%esi
  mov    $0x50002000,%edi
  call   <Xil_Out32@plt>
  mov    $0x20,%esi
  mov    $0x50002004,%edi
  call   <Xil_Out32@plt>
  mov    $0x0,%esi
  mov    $0x50002008,%edi
  call   <Xil_Out32@plt>
  mov    $0x14,%esi
  mov    $0x5000200c,%edi
  call   <Xil_Out32@plt>
  mov    $0x0,%esi
  mov    $0x50002010,%edi
  call   <Xil_Out32@plt>
  mov    $0x0,%esi
  mov    $0x50002014,%edi
  call   <Xil_Out32@plt>
  mov    $0x1,%esi
  mov    $0x50002000,%edi
  call   <Xil_Out32@plt>
  nop
  pop    %rbp
  ret
```

assistant: ```c
void stage_cu() {
  Xil_Out32(0x50001004, 0);
  Xil_Out32(0x50001000, 0xB0040000);
  Xil_Out32(0x50001004, 4);
  Xil_Out32(0x50001000, 0xBE8503FF);
  Xil_Out32(0x50001004, 8);
  Xil_Out32(0x50001000, 0x00200000);
  Xil_Out32(0x50001004, 12);
  Xil_Out32(0x50001000, 0xB004000E);
  Xil_Out32(0x50001004, 16);
  Xil_Out32(0x50001000, 0xC2048504);
  Xil_Out32(0x50001004, 20);
  Xil_Out32(0x50001000, 0xBF810000);
  Xil_Out32(0x50002004, 0);
  Xil_Out32(0x50002008, 0xA);
  Xil_Out32(0x5000200C, 0x24);
  Xil_Out32(0x50002010, 0xE);
  Xil_Out32(0x50002014, 0x2F);
  Xil_Out32(0x50002000, 1);
  Xil_Out32(0x50002004, 16);
  Xil_Out32(0x50002008, 0x21);
  Xil_Out32(0x5000200C, 0x2B);
  Xil_Out32(0x50002010, 0x8);
  Xil_Out32(0x50002014, 0x18);
  Xil_Out32(0x50002000, 1);
  Xil_Out32(0x50002004, 32);
  Xil_Out32(0x50002008, 0x0);
  Xil_Out32(0x5000200C, 0x14);
  Xil_Out32(0x50002010, 0x0);
  Xil_Out32(0x50002014, 0x0);
  Xil_Out32(0x50002000, 1);
}
```