user: What is the c source code of the assembly code below?

```asm
<c_print_results>:
  endbr64
  push   %r15
  xor    %eax,%eax
  push   %r14
  push   %r13
  push   %r12
  mov    %r9d,%r12d
  push   %rbp
  mov    %edx,%ebp
  push   %rbx
  mov    %esi,%ebx
  mov    %rdi,%rsi
  lea    D109(%rip),%rdi
  sub    $0x18,%rsp
  mov    0x50(%rsp),%r15
  mov    0x58(%rsp),%r14d
  mov    %r8d,0x8(%rsp)
  mov    %ecx,0xc(%rsp)
  mov    0x60(%rsp),%r13
  call   <printf@plt>
  xor    %eax,%eax
  movsbl %bl,%esi
  lea    D52(%rip),%rdi
  call   <printf@plt>
  mov    0x8(%rsp),%r8d
  movslq 0xc(%rsp),%rdx
  test   %r8d,%r8d
  jne    L59
  movslq %ebp,%rsi
  test   %edx,%edx
  jne    L44
L50:
  lea    D63(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
L11:
  mov    %r12d,%esi
  lea    D30(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  xor    %eax,%eax
  mov    %r15,%rsi
  lea    D31(%rip),%rdi
  call   <printf@plt>
  test   %r14d,%r14d
  js     L10
  jne    L16
  lea    D49(%rip),%rdi
  call   <puts@plt>
L19:
  mov    %r13,%rsi
  lea    D98(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D66(%rip),%rdi
  call   <puts@plt>
  lea    D111(%rip),%rdi
  call   <puts@plt>
  lea    D106(%rip),%rdi
  call   <puts@plt>
  add    $0x18,%rsp
  lea    D124(%rip),%rdi
  pop    %rbx
  pop    %rbp
  pop    %r12
  pop    %r13
  pop    %r14
  pop    %r15
  jmp    1060 <puts@plt>
  nopw   0x0(%rax,%rax,1)
L16:
  lea    D121(%rip),%rdi
  call   <puts@plt>
  jmp    L19
  xchg   %ax,%ax
L44:
  imul   %rdx,%rsi
  jmp    L50
  nopl   0x0(%rax)
L59:
  mov    %r8d,%ecx
  mov    %ebp,%esi
  lea    D97(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  jmp    L11
  nopl   0x0(%rax,%rax,1)
L10:
  lea    D73(%rip),%rdi
  call   <puts@plt>
  jmp    L19
```

tool_calls: name: extract_symbolic_data
arguments: data_label: D109
data_type: string
name: extract_symbolic_data
arguments: data_label: D52
data_type: string
name: extract_symbolic_data
arguments: data_label: D63
data_type: string
name: extract_symbolic_data
arguments: data_label: D30
data_type: string
name: extract_symbolic_data
arguments: data_label: D31
data_type: string
name: extract_symbolic_data
arguments: data_label: D49
data_type: string
name: extract_symbolic_data
arguments: data_label: D98
data_type: string
name: extract_symbolic_data
arguments: data_label: D66
data_type: string
name: extract_symbolic_data
arguments: data_label: D111
data_type: string
name: extract_symbolic_data
arguments: data_label: D106
data_type: string
name: extract_symbolic_data
arguments: data_label: D124
data_type: string
name: extract_symbolic_data
arguments: data_label: D121
data_type: string
name: extract_symbolic_data
arguments: data_label: D97
data_type: string
name: extract_symbolic_data
arguments: data_label: D73
data_type: string

tool: D109: 

 %s Benchmark Completed


tool: D52:  Class           =                        %c


tool: D63:  Size            =             %12ld


tool: D30:  Iterations      =             %12d


tool: D31:  Operation type  = %24s


tool: D49:  Verification    =             UNSUCCESSFUL

tool: D98:  Version         =             %12s


tool: D66: 


tool: D111:  Please send all errors/feedbacks to:


tool: D106:  NPB Development Team

tool: D124:  npb@nas.nasa.gov


tool: D121:  Verification    =               SUCCESSFUL

tool: D97:  Size            =             %4dx%4dx%4d


tool: D73:  Verification    =            NOT PERFORMED

assistant: ```c
void c_print_results(char *name, char class, int n1, int n2, int n3, int niter, char *optype, int passed_verification, char *npbversion) {
  printf("\n\n %s Benchmark Completed\n", name);
  printf(" Class           =                        %c\n", class);
  if (n3 == 0) {
    long nn = n1;
    if (n2 != 0)
      nn *= n2;
    printf(" Size            =             %12ld\n", nn);
  } else
    printf(" Size            =             %4dx%4dx%4d\n", n1, n2, n3);
  printf(" Iterations      =             %12d\n", niter);
  printf(" Operation type  = %24s\n", optype);
  if (passed_verification < 0)
    printf(" Verification    =            NOT PERFORMED\n");
  else if (passed_verification)
    printf(" Verification    =               SUCCESSFUL\n");
  else
    printf(" Verification    =             UNSUCCESSFUL\n");
  printf(" Version         =             %12s\n", npbversion);
  printf("\n\n");
  printf(" Please send all errors/feedbacks to:\n\n");
  printf(" NPB Development Team\n");
  printf(" npb@nas.nasa.gov\n\n");
}
```