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

```asm
<main>:
  endbr64
  sub    $0x8,%rsp
  lea    D46(%rip),%rdi
  call   <puts@plt>
  lea    D150(%rip),%rsi
  lea    D149(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D116(%rip),%rsi
  lea    D29(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D94(%rip),%rsi
  lea    D37(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D63(%rip),%rsi
  lea    D52(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D100(%rip),%rsi
  lea    D145(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D104(%rip),%rsi
  lea    D126(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D112(%rip),%rsi
  lea    D44(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D92(%rip),%rsi
  lea    D148(%rip),%rdi
  call   <sha256_calc@plt>
  lea    D17(%rip),%rdi
  call   <puts@plt>
  xor    %eax,%eax
  add    $0x8,%rsp
  ret
```

tool_calls: name: unpack_data
arguments: label: D46
type: string
name: unpack_data
arguments: label: D150
type: string
name: unpack_data
arguments: label: D149
type: string
name: unpack_data
arguments: label: D116
type: string
name: unpack_data
arguments: label: D29
type: string
name: unpack_data
arguments: label: D94
type: string
name: unpack_data
arguments: label: D37
type: string
name: unpack_data
arguments: label: D63
type: string
name: unpack_data
arguments: label: D52
type: string
name: unpack_data
arguments: label: D100
type: string
name: unpack_data
arguments: label: D145
type: string
name: unpack_data
arguments: label: D104
type: string
name: unpack_data
arguments: label: D126
type: string
name: unpack_data
arguments: label: D112
type: string
name: unpack_data
arguments: label: D44
type: string
name: unpack_data
arguments: label: D92
type: string
name: unpack_data
arguments: label: D148
type: string
name: unpack_data
arguments: label: D17
type: string

tool: D46: Start.

tool: D150: 3eda9ffe5537a588f54d0b2a453e5fa932986d0bc0f9556924f5c2379b2c91b0

tool: D149: 1234567890_1

tool: D116: a144d0b4d285260ebbbab6840baceaa09eab3e157443c9458de764b7262c8ace

tool: D29: 1234567890_2

tool: D94: 9f839169d293276d1b799707d2171ac1fd5b78d0f3bc7693dbed831524dd2d77

tool: D37: 1234567890_3

tool: D63: 6c5fe2a8e3de58a5e5ac061031a8e802ae1fb9e7197862ec1aedf236f0e23475

tool: D52: 1234567890_4

tool: D100: 945ab9d52b069923680c2c067fa6092cbbd9234cf7a38628f3033b2d54d3d3bf

tool: D145: 0123456789abcde-0123456789abcde-0123456789abcde-0123456789abcde-

tool: D104: d32b568cd1b96d459e7291ebf4b25d007f275c9f13149beeb782fac0716613f8

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

tool: D112: 78206a866dbb2bf017d8e34274aed01a8ce405b69d45db30bafa00f5eeed7d5e

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

tool: D92: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

tool: 

tool: D17: 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;
}
```