// File: /workspace/github_c_makefile_star2_O0/OpenKMIP[P]libkmip/src/kmip_io.c
// Function: kmip_print_response_header
void
kmip_print_response_header(FILE *f, int indent, ResponseHeader *value)
{
    fprintf(f, "%*sResponse Header @ %p\n", indent, "", (void *)value);
    
    if(value != NULL)
    {
        kmip_print_protocol_version(f, indent + 2, value->protocol_version);
        fprintf(f, "%*sTime Stamp: ", indent + 2, "");
        kmip_print_date_time(f, value->time_stamp);
        fprintf(f, "\n");
        kmip_print_nonce(f, indent + 2, value->nonce);

        kmip_print_byte_string(f, indent + 2, "Server Hashed Password", value->server_hashed_password);

        fprintf(f, "%*sAttestation Types: %zu\n", indent + 2, "", value->attestation_type_count);
        for(size_t i = 0; i < value->attestation_type_count; i++)
        {
            /* TODO (ph) Add enum value -> string functionality. */
            fprintf(f, "%*sAttestation Type: %s\n", indent + 4, "", "???");
        }
        kmip_print_text_string(f, indent + 2, "Client Correlation Value", value->client_correlation_value);
        kmip_print_text_string(f, indent + 2, "Server Correlation Value", value->server_correlation_value);
        fprintf(f, "%*sBatch Count: %d\n", indent + 2, "", value->batch_count);
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %edx
movq -0x18(%rbp), %r8
leaq 0xa948(%rip), %rsi      # 0x301cd
leaq 0x5b69(%rip), %rcx      # 0x2b3f5
movb $0x0, %al
callq 0x21d0
cmpq $0x0, -0x18(%rbp)
je 0x259ff
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %esi
addl $0x2, %esi
movq -0x18(%rbp), %rax
movq (%rax), %rdx
callq 0x235d0
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %edx
addl $0x2, %edx
leaq 0xa8e4(%rip), %rsi      # 0x301a9
leaq 0x5b29(%rip), %rcx      # 0x2b3f5
movb $0x0, %al
callq 0x21d0
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movq 0x8(%rax), %rsi
callq 0x23560
movq -0x8(%rbp), %rdi
leaq 0x5b05(%rip), %rsi      # 0x2b3f4
movb $0x0, %al
callq 0x21d0
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %esi
addl $0x2, %esi
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rdx
callq 0x23700
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %esi
addl $0x2, %esi
movq -0x18(%rbp), %rax
movq 0x40(%rax), %rcx
leaq 0xa8c0(%rip), %rdx      # 0x301e6
callq 0x23470
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %edx
addl $0x2, %edx
movq -0x18(%rbp), %rax
movq 0x28(%rax), %r8
leaq 0xa7f0(%rip), %rsi      # 0x30134
leaq 0x5aaa(%rip), %rcx      # 0x2b3f5
movb $0x0, %al
callq 0x21d0
movq $0x0, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq -0x18(%rbp), %rcx
cmpq 0x28(%rcx), %rax
jae 0x2599c
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %edx
addl $0x4, %edx
leaq 0xa7d6(%rip), %rsi      # 0x3014f
leaq 0x5a75(%rip), %rcx      # 0x2b3f5
leaq 0xa7e1(%rip), %r8       # 0x30168
movb $0x0, %al
callq 0x21d0
movq -0x20(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x20(%rbp)
jmp 0x2595a
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %esi
addl $0x2, %esi
movq -0x18(%rbp), %rax
movq 0x30(%rax), %rcx
leaq 0xa70e(%rip), %rdx      # 0x300c3
callq 0x233f0
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %esi
addl $0x2, %esi
movq -0x18(%rbp), %rax
movq 0x38(%rax), %rcx
leaq 0xa709(%rip), %rdx      # 0x300dc
callq 0x233f0
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %edx
addl $0x2, %edx
movq -0x18(%rbp), %rax
movl 0x10(%rax), %r8d
leaq 0xa7c8(%rip), %rsi      # 0x301b9
leaq 0x59fd(%rip), %rcx      # 0x2b3f5
movb $0x0, %al
callq 0x21d0
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)