user: 提供的汇编代码用C语言表示会是什么样子:

```asm
<scgi_header_status_get_string>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x20,%rsp
  mov    %rdi,-0x18(%rbp)
  mov    -0x18(%rbp),%rax
  lea    D500(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L637
  lea    D601(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L637:
  mov    -0x18(%rbp),%rax
  lea    D201(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L746
  lea    D202(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L746:
  mov    -0x18(%rbp),%rax
  lea    D43(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L709
  lea    D727(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L709:
  mov    -0x18(%rbp),%rax
  lea    D77(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L612
  lea    D735(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L612:
  mov    -0x18(%rbp),%rax
  lea    D526(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L52
  lea    D472(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L52:
  mov    -0x18(%rbp),%rax
  lea    D569(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L523
  lea    D557(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L523:
  mov    -0x18(%rbp),%rax
  lea    D473(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L374
  lea    D109(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L374:
  mov    -0x18(%rbp),%rax
  lea    D712(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L69
  lea    D362(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L69:
  mov    -0x18(%rbp),%rax
  lea    D482(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L294
  lea    D510(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L294:
  mov    -0x18(%rbp),%rax
  lea    D191(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L545
  lea    D381(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L545:
  mov    -0x18(%rbp),%rax
  lea    D492(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L682
  lea    D334(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L682:
  mov    -0x18(%rbp),%rax
  lea    D810(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L578
  lea    D643(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L578:
  mov    -0x18(%rbp),%rax
  lea    D229(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L98
  lea    D104(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L98:
  mov    -0x18(%rbp),%rax
  lea    D83(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L297
  lea    D122(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L297:
  mov    -0x18(%rbp),%rax
  lea    D409(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L687
  lea    D102(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L687:
  mov    -0x18(%rbp),%rax
  lea    D718(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L592
  lea    D425(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L592:
  mov    -0x18(%rbp),%rax
  lea    D70(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L808
  lea    D382(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L808:
  mov    -0x18(%rbp),%rax
  lea    D512(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L576
  lea    D134(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L576:
  mov    -0x18(%rbp),%rax
  lea    D648(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L662
  lea    D561(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L662:
  mov    -0x18(%rbp),%rax
  lea    D377(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L711
  lea    D711(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L711:
  mov    -0x18(%rbp),%rax
  lea    D815(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L531
  lea    D764(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L531:
  mov    -0x18(%rbp),%rax
  lea    D140(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L735
  lea    D649(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L735:
  mov    -0x18(%rbp),%rax
  lea    D407(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L753
  lea    D429(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L753:
  mov    -0x18(%rbp),%rax
  lea    D426(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L560
  lea    D540(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L560:
  mov    -0x18(%rbp),%rax
  lea    D650(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L183
  lea    D6(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L183:
  mov    -0x18(%rbp),%rax
  lea    D773(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L492
  lea    D646(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L492:
  mov    -0x18(%rbp),%rax
  lea    D368(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L164
  lea    D10(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L164:
  mov    -0x18(%rbp),%rax
  lea    D366(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L4
  lea    D491(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L4:
  mov    -0x18(%rbp),%rax
  lea    D365(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L659
  lea    D717(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L659:
  mov    -0x18(%rbp),%rax
  lea    D656(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L109
  lea    D212(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L109:
  mov    -0x18(%rbp),%rax
  lea    D595(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L768
  lea    D723(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L768:
  mov    -0x18(%rbp),%rax
  lea    D578(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L155
  lea    D116(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L155:
  mov    -0x18(%rbp),%rax
  lea    D385(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L332
  lea    D349(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L332:
  mov    -0x18(%rbp),%rax
  lea    D268(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L602
  lea    D752(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L602:
  mov    -0x18(%rbp),%rax
  lea    D744(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L589
  lea    D563(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L589:
  mov    -0x18(%rbp),%rax
  lea    D179(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L10
  lea    D323(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L10:
  mov    -0x18(%rbp),%rax
  lea    D173(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L572
  lea    D584(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L572:
  mov    -0x18(%rbp),%rax
  lea    D665(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L323
  lea    D525(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L323:
  mov    -0x18(%rbp),%rax
  lea    D689(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L742
  lea    D800(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L742:
  mov    -0x18(%rbp),%rax
  lea    D699(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L786
  lea    D111(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L786:
  mov    -0x18(%rbp),%rax
  lea    D430(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L314
  lea    D577(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L283
L314:
  mov    -0x18(%rbp),%rax
  mov    %rax,-0x8(%rbp)
L283:
  mov    -0x8(%rbp),%rax
  mov    %rax,%rdi
  call   <strdup@plt>
  leave
  ret
```

tool_calls: name: unpack_data
arguments: label: D500
type: string
name: unpack_data
arguments: label: D601
type: string
name: unpack_data
arguments: label: D201
type: string
name: unpack_data
arguments: label: D202
type: string
name: unpack_data
arguments: label: D43
type: string
name: unpack_data
arguments: label: D727
type: string
name: unpack_data
arguments: label: D77
type: string
name: unpack_data
arguments: label: D735
type: string
name: unpack_data
arguments: label: D526
type: string
name: unpack_data
arguments: label: D472
type: string
name: unpack_data
arguments: label: D569
type: string
name: unpack_data
arguments: label: D557
type: string
name: unpack_data
arguments: label: D473
type: string
name: unpack_data
arguments: label: D109
type: string
name: unpack_data
arguments: label: D712
type: string
name: unpack_data
arguments: label: D362
type: string
name: unpack_data
arguments: label: D482
type: string
name: unpack_data
arguments: label: D510
type: string
name: unpack_data
arguments: label: D191
type: string
name: unpack_data
arguments: label: D381
type: string
name: unpack_data
arguments: label: D492
type: string
name: unpack_data
arguments: label: D334
type: string
name: unpack_data
arguments: label: D810
type: string
name: unpack_data
arguments: label: D643
type: string
name: unpack_data
arguments: label: D229
type: string
name: unpack_data
arguments: label: D104
type: string
name: unpack_data
arguments: label: D83
type: string
name: unpack_data
arguments: label: D122
type: string
name: unpack_data
arguments: label: D409
type: string
name: unpack_data
arguments: label: D102
type: string
name: unpack_data
arguments: label: D718
type: string
name: unpack_data
arguments: label: D425
type: string
name: unpack_data
arguments: label: D70
type: string
name: unpack_data
arguments: label: D382
type: string
name: unpack_data
arguments: label: D512
type: string
name: unpack_data
arguments: label: D134
type: string
name: unpack_data
arguments: label: D648
type: string
name: unpack_data
arguments: label: D561
type: string
name: unpack_data
arguments: label: D377
type: string
name: unpack_data
arguments: label: D711
type: string
name: unpack_data
arguments: label: D815
type: string
name: unpack_data
arguments: label: D764
type: string
name: unpack_data
arguments: label: D140
type: string
name: unpack_data
arguments: label: D649
type: string
name: unpack_data
arguments: label: D407
type: string
name: unpack_data
arguments: label: D429
type: string
name: unpack_data
arguments: label: D426
type: string
name: unpack_data
arguments: label: D540
type: string
name: unpack_data
arguments: label: D650
type: string
name: unpack_data
arguments: label: D6
type: string
name: unpack_data
arguments: label: D773
type: string
name: unpack_data
arguments: label: D646
type: string
name: unpack_data
arguments: label: D368
type: string
name: unpack_data
arguments: label: D10
type: string
name: unpack_data
arguments: label: D366
type: string
name: unpack_data
arguments: label: D491
type: string
name: unpack_data
arguments: label: D365
type: string
name: unpack_data
arguments: label: D717
type: string
name: unpack_data
arguments: label: D656
type: string
name: unpack_data
arguments: label: D212
type: string
name: unpack_data
arguments: label: D595
type: string
name: unpack_data
arguments: label: D723
type: string
name: unpack_data
arguments: label: D578
type: string
name: unpack_data
arguments: label: D116
type: string
name: unpack_data
arguments: label: D385
type: string
name: unpack_data
arguments: label: D349
type: string
name: unpack_data
arguments: label: D268
type: string
name: unpack_data
arguments: label: D752
type: string
name: unpack_data
arguments: label: D744
type: string
name: unpack_data
arguments: label: D563
type: string
name: unpack_data
arguments: label: D179
type: string
name: unpack_data
arguments: label: D323
type: string
name: unpack_data
arguments: label: D173
type: string
name: unpack_data
arguments: label: D584
type: string
name: unpack_data
arguments: label: D665
type: string
name: unpack_data
arguments: label: D525
type: string
name: unpack_data
arguments: label: D689
type: string
name: unpack_data
arguments: label: D800
type: string
name: unpack_data
arguments: label: D699
type: string
name: unpack_data
arguments: label: D111
type: string
name: unpack_data
arguments: label: D430
type: string
name: unpack_data
arguments: label: D577
type: string

tool: D500: 100

tool: D601: 100 Continue

tool: D201: 101

tool: D202: 101 Switching Protocols

tool: D43: 200

tool: D727: 200 OK

tool: D77: 201

tool: D735: 201 Created

tool: D526: 202

tool: D472: 202 Accepted

tool: D569: 203

tool: D557: 203 Non-Authoritative Information

tool: D473: 204

tool: D109: 204 No Content

tool: D712: 205

tool: D362: 205 Reset Content

tool: D482: 206

tool: D510: 206 Partial Content

tool: D191: 300

tool: D381: 300 Multiple Choices

tool: D492: 301

tool: D334: 301 Moved Permanently

tool: D810: 302

tool: D643: 302 Found

tool: D229: 303

tool: D104: 303 See Other

tool: D83: 304

tool: D122: 304 Not Modified

tool: D409: 305

tool: D102: 305 Use Proxy

tool: D718: 306

tool: D425: 306 (Unused)

tool: D70: 307

tool: D382: 307 Temporary Redirect

tool: D512: 400

tool: D134: 400 Bad Request

tool: D648: 401

tool: D561: 401 Unauthorized

tool: D377: 402

tool: D711: 402 Payment Required

tool: D815: 403

tool: D764: 403 Forbidden

tool: D140: 404

tool: D649: 404 Not Found

tool: D407: 405

tool: D429: 405 Method Not Allowed

tool: D426: 406

tool: D540: 406 Not Acceptable

tool: D650: 407

tool: D6: 407 Proxy Authentication Required

tool: D773: 408

tool: D646: 408 Request Timeout

tool: D368: 409

tool: D10: 409 Conflict

tool: D366: 410

tool: D491: 410 Gone

tool: D365: 411

tool: D717: 411 Length Required

tool: D656: 412

tool: D212: 412 Precondition Failed

tool: D595: 413

tool: D723: 413 Request Entity Too Large

tool: D578: 414

tool: D116: 414 Request-URI Too Long

tool: D385: 415

tool: D349: 415 Unsupported Media Type

tool: D268: 416

tool: D752: 416 Request Range Not Satisfiable

tool: D744: 417

tool: D563: 417 Expectation Failed

tool: D179: 500

tool: D323: 500 Internal Server Error

tool: D173: 501

tool: D584: 501 Not Implemented

tool: D665: 502

tool: D525: 502 Bad Gateway

tool: D689: 503

tool: D800: 503 Service Unavailable

tool: D699: 504

tool: D111: 504 Gateway Timeout

tool: D430: 505

tool: D577: 505 HTTP Version Not Supported

assistant: ```c
char *scgi_header_status_get_string(const char *code) {
  char *string;
  if (strcmp(code, "100") == 0) {
    string = "100 Continue";
  } else if (strcmp(code, "101") == 0) {
    string = "101 Switching Protocols";
  } else if (strcmp(code, "200") == 0) {
    string = "200 OK";
  } else if (strcmp(code, "201") == 0) {
    string = "201 Created";
  } else if (strcmp(code, "202") == 0) {
    string = "202 Accepted";
  } else if (strcmp(code, "203") == 0) {
    string = "203 Non-Authoritative Information";
  } else if (strcmp(code, "204") == 0) {
    string = "204 No Content";
  } else if (strcmp(code, "205") == 0) {
    string = "205 Reset Content";
  } else if (strcmp(code, "206") == 0) {
    string = "206 Partial Content";
  } else if (strcmp(code, "300") == 0) {
    string = "300 Multiple Choices";
  } else if (strcmp(code, "301") == 0) {
    string = "301 Moved Permanently";
  } else if (strcmp(code, "302") == 0) {
    string = "302 Found";
  } else if (strcmp(code, "303") == 0) {
    string = "303 See Other";
  } else if (strcmp(code, "304") == 0) {
    string = "304 Not Modified";
  } else if (strcmp(code, "305") == 0) {
    string = "305 Use Proxy";
  } else if (strcmp(code, "306") == 0) {
    string = "306 (Unused)";
  } else if (strcmp(code, "307") == 0) {
    string = "307 Temporary Redirect";
  } else if (strcmp(code, "400") == 0) {
    string = "400 Bad Request";
  } else if (strcmp(code, "401") == 0) {
    string = "401 Unauthorized";
  } else if (strcmp(code, "402") == 0) {
    string = "402 Payment Required";
  } else if (strcmp(code, "403") == 0) {
    string = "403 Forbidden";
  } else if (strcmp(code, "404") == 0) {
    string = "404 Not Found";
  } else if (strcmp(code, "405") == 0) {
    string = "405 Method Not Allowed";
  } else if (strcmp(code, "406") == 0) {
    string = "406 Not Acceptable";
  } else if (strcmp(code, "407") == 0) {
    string = "407 Proxy Authentication Required";
  } else if (strcmp(code, "408") == 0) {
    string = "408 Request Timeout";
  } else if (strcmp(code, "409") == 0) {
    string = "409 Conflict";
  } else if (strcmp(code, "410") == 0) {
    string = "410 Gone";
  } else if (strcmp(code, "411") == 0) {
    string = "411 Length Required";
  } else if (strcmp(code, "412") == 0) {
    string = "412 Precondition Failed";
  } else if (strcmp(code, "413") == 0) {
    string = "413 Request Entity Too Large";
  } else if (strcmp(code, "414") == 0) {
    string = "414 Request-URI Too Long";
  } else if (strcmp(code, "415") == 0) {
    string = "415 Unsupported Media Type";
  } else if (strcmp(code, "416") == 0) {
    string = "416 Request Range Not Satisfiable";
  } else if (strcmp(code, "417") == 0) {
    string = "417 Expectation Failed";
  } else if (strcmp(code, "500") == 0) {
    string = "500 Internal Server Error";
  } else if (strcmp(code, "501") == 0) {
    string = "501 Not Implemented";
  } else if (strcmp(code, "502") == 0) {
    string = "502 Bad Gateway";
  } else if (strcmp(code, "503") == 0) {
    string = "503 Service Unavailable";
  } else if (strcmp(code, "504") == 0) {
    string = "504 Gateway Timeout";
  } else if (strcmp(code, "505") == 0) {
    string = "505 HTTP Version Not Supported";
  } else {
    string = (char *)code;
  }
  return (strdup(string));
}
```