user: 请显示与下面列出的汇编代码相匹配的C语言实现：

```asm
<main>:
  endbr64
  sub    $0x8,%rsp
  lea    D27(%rip),%rdi
  call   <puts@plt>
  lea    D31(%rip),%rsi
  lea    D133(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D83(%rip),%rsi
  lea    D157(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D137(%rip),%rsi
  lea    D51(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D71(%rip),%rsi
  lea    D105(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D178(%rip),%rsi
  lea    D22(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D176(%rip),%rsi
  lea    D4(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D54(%rip),%rsi
  lea    D32(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D165(%rip),%rsi
  lea    D20(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D135(%rip),%rdi
  call   <puts@plt>
  mov    $0x0,%eax
  add    $0x8,%rsp
  ret
```

tool_calls: name: disassemble_data
arguments: label: D27
datatype: string
name: disassemble_data
arguments: label: D31
datatype: string
name: disassemble_data
arguments: label: D133
datatype: string
name: disassemble_data
arguments: label: D83
datatype: string
name: disassemble_data
arguments: label: D157
datatype: string
name: disassemble_data
arguments: label: D137
datatype: string
name: disassemble_data
arguments: label: D51
datatype: string
name: disassemble_data
arguments: label: D71
datatype: string
name: disassemble_data
arguments: label: D105
datatype: string
name: disassemble_data
arguments: label: D178
datatype: string
name: disassemble_data
arguments: label: D22
datatype: string
name: disassemble_data
arguments: label: D176
datatype: string
name: disassemble_data
arguments: label: D4
datatype: string
name: disassemble_data
arguments: label: D54
datatype: string
name: disassemble_data
arguments: label: D32
datatype: string
name: disassemble_data
arguments: label: D165
datatype: string
name: disassemble_data
arguments: label: D20
datatype: string
name: disassemble_data
arguments: label: D135
datatype: string

tool: D27: Start.

tool: D31: 3eda9ffe5537a588f54d0b2a453e5fa932986d0bc0f9556924f5c2379b2c91b0

tool: D133: 1234567890_1

tool: D83: a144d0b4d285260ebbbab6840baceaa09eab3e157443c9458de764b7262c8ace

tool: D157: 1234567890_2

tool: D137: 9f839169d293276d1b799707d2171ac1fd5b78d0f3bc7693dbed831524dd2d77

tool: D51: 1234567890_3

tool: D71: 6c5fe2a8e3de58a5e5ac061031a8e802ae1fb9e7197862ec1aedf236f0e23475

tool: D105: 1234567890_4

tool: D178: 945ab9d52b069923680c2c067fa6092cbbd9234cf7a38628f3033b2d54d3d3bf

tool: D22: 0123456789abcde-0123456789abcde-0123456789abcde-0123456789abcde-

tool: D176: d32b568cd1b96d459e7291ebf4b25d007f275c9f13149beeb782fac0716613f8

tool: D4: Franz jagt im komplett verwahrlosten Taxi quer durch Bayern

tool: D54: 78206a866dbb2bf017d8e34274aed01a8ce405b69d45db30bafa00f5eeed7d5e

tool: D32: Frank jagt im komplett verwahrlosten Taxi quer durch Bayern

tool: D165: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

tool: 

tool: D135: Done.

assistant: ```c
int main(void) {
  puts("Start.");
  sha256_calc("1234567890_1", "3eda9ffe5537a588f54d0b2a453e5fa932986d0bc0f9556924f5c2379b2c91b0");
  sha256_calc("1234567890_2", "a144d0b4d285260ebbbab6840baceaa09eab3e157443c9458de764b7262c8ace");
  sha256_calc("1234567890_3", "9f839169d293276d1b799707d2171ac1fd5b78d0f3bc7693dbed831524dd2d77");
  sha256_calc("1234567890_4", "6c5fe2a8e3de58a5e5ac061031a8e802ae1fb9e7197862ec1aedf236f0e23475");
  sha256_calc("0123456789abcde-0123456789abcde-0123456789abcde-0123456789abcde-", "945ab9d52b069923680c2c067fa6092cbbd9234cf7a38628f3033b2d54d3d3bf");
  sha256_calc("Franz jagt im komplett verwahrlosten Taxi quer durch Bayern", "d32b568cd1b96d459e7291ebf4b25d007f275c9f13149beeb782fac0716613f8");
  sha256_calc("Frank jagt im komplett verwahrlosten Taxi quer durch Bayern", "78206a866dbb2bf017d8e34274aed01a8ce405b69d45db30bafa00f5eeed7d5e");
  sha256_calc("", "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855");
  puts("Done.");
  return 0;
}
```