// File: /workspace/github_c_makefile_star2_O1/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
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %rdx, %r14
movl %esi, %edx
movq %rdi, %rbx
leaq 0x93b6(%rip), %rsi      # 0x26fb1
leaq 0x35dd(%rip), %rcx      # 0x211df
movq %rdx, 0x8(%rsp)
movq %r14, %r8
xorl %eax, %eax
callq 0x2200
testq %r14, %r14
je 0x1dd4d
movq 0x8(%rsp), %rax
leal 0x2(%rax), %ebp
movq (%r14), %rdx
movq %rbx, %rdi
movl %ebp, %esi
callq 0x1c1b4
leaq 0x9357(%rip), %rsi      # 0x26f8d
leaq 0x35a2(%rip), %r12      # 0x211df
movq %rbx, %rdi
movl %ebp, %edx
movq %r12, %rcx
xorl %eax, %eax
callq 0x2200
movq 0x8(%r14), %rsi
movq %rbx, %rdi
callq 0x1c16f
movl $0xa, %edi
movq %rbx, %rsi
callq 0x21b0
movq 0x18(%r14), %rdx
movq %rbx, %rdi
movl %ebp, %esi
callq 0x1c2b5
movq 0x40(%r14), %rcx
leaq 0x934c(%rip), %rdx      # 0x26fca
movq %rbx, %rdi
movl %ebp, %esi
callq 0x1c097
movq 0x28(%r14), %r8
leaq 0x9285(%rip), %rsi      # 0x26f18
movq %rbx, %rdi
movl %ebp, 0x14(%rsp)
movl %ebp, %edx
movq %r12, %rcx
xorl %eax, %eax
callq 0x2200
cmpq $0x0, 0x28(%r14)
je 0x1dcf3
movq 0x8(%rsp), %rax
addl $0x4, %eax
movq %rax, 0x8(%rsp)
leaq 0x9272(%rip), %r12      # 0x26f33
leaq 0x3517(%rip), %r13      # 0x211df
leaq 0x927d(%rip), %rbp      # 0x26f4c
xorl %r15d, %r15d
movq %rbx, %rdi
movq %r12, %rsi
movq 0x8(%rsp), %rdx
movq %r13, %rcx
movq %rbp, %r8
xorl %eax, %eax
callq 0x2200
incq %r15
cmpq 0x28(%r14), %r15
jb 0x1dcd2
movq 0x30(%r14), %rcx
leaq 0x91a9(%rip), %rdx      # 0x26ea7
movq %rbx, %rdi
movl 0x14(%rsp), %ebp
movl %ebp, %esi
callq 0x1c039
movq 0x38(%r14), %rcx
leaq 0x91a9(%rip), %rdx      # 0x26ec0
movq %rbx, %rdi
movl %ebp, %esi
callq 0x1c039
movl 0x10(%r14), %r8d
leaq 0x9271(%rip), %rsi      # 0x26f9d
leaq 0x34ac(%rip), %rcx      # 0x211df
movq %rbx, %rdi
movl %ebp, %edx
xorl %eax, %eax
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2200
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq