LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_attribute_object_type
int
test_decode_attribute_object_type(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 encoding[48] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x28,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x0B,
        0x4F, 0x62, 0x6A, 0x65, 0x63, 0x74, 0x20, 0x54,
        0x79, 0x70, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x0B, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00
    };
    
    struct kmip ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);
    
    enum object_type t = KMIP_OBJTYPE_SYMMETRIC_KEY;
    struct attribute expected = {0};
    kmip_init_attribute(&expected);
    expected.type = KMIP_ATTR_OBJECT_TYPE;
    expected.value = &t;
    struct attribute observed = {0};
    kmip_init_attribute(&observed);
    
    int result = kmip_decode_attribute(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_attribute(&expected, &observed),
        result,
        __func__);
    kmip_free_attribute(&ctx, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x900, %rsp            # imm = 0x900
movq %rdi, %r14
incw (%rdi)
movaps 0x22c66(%rip), %xmm0    # 0x28c90
leaq 0x30(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps 0x22c45(%rip), %xmm0    # 0x28c80
movaps %xmm0, 0x10(%r15)
movaps 0x22c29(%rip), %xmm0    # 0x28c70
movaps %xmm0, (%r15)
leaq 0x68(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x30
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
pushq $0x2
popq %rbp
leaq 0xc(%rsp), %r12
movl %ebp, (%r12)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e6d
movl %ebp, (%r15)
movq %r12, 0x8(%r15)
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1c743
movl %eax, %ebp
movq %r15, %rdi
movq %r12, %rsi
callq 0x14d69
leaq 0x20943(%rip), %r8      # 0x26a0d
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebp
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1309a
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x900, %rsp            # imm = 0x900
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_encode_attribute_cryptographic_algorithm
int
test_encode_attribute_cryptographic_algorithm(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x17,
        0x43, 0x72, 0x79, 0x70, 0x74, 0x6F, 0x67, 0x72,
        0x61, 0x70, 0x68, 0x69, 0x63, 0x20, 0x41, 0x6C,
        0x67, 0x6F, 0x72, 0x69, 0x74, 0x68, 0x6D, 0x00,
        0x42, 0x00, 0x0B, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00
    };
    
    uint8 observed[56] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    enum cryptographic_algorithm a = KMIP_CRYPTOALG_AES;
    struct attribute attr = {0};
    kmip_init_attribute(&attr);
    
    attr.type = KMIP_ATTR_CRYPTOGRAPHIC_ALGORITHM;
    attr.value = &a;
    
    int result = kmip_encode_attribute(&ctx, &attr);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x8f8, %rsp            # imm = 0x8F8
movq %rdi, %r14
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
andq $0x0, 0x30(%r15)
leaq 0x60(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x38
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
pushq $0x3
popq %rbp
leaq 0xc(%rsp), %r13
movl %ebp, (%r13)
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movl %ebp, (%r12)
movq %r13, 0x8(%r12)
movq %rbx, %rdi
movq %r12, %rsi
callq 0x17846
leaq 0x22b0e(%rip), %rdx     # 0x28ca0
leaq 0x20896(%rip), %r9      # 0x26a2f
movq %r14, %rdi
movq %rbx, %rsi
movq %r15, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebp
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x8f8, %rsp            # imm = 0x8F8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_attribute_cryptographic_algorithm
int
test_decode_attribute_cryptographic_algorithm(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 encoding[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x17,
        0x43, 0x72, 0x79, 0x70, 0x74, 0x6F, 0x67, 0x72,
        0x61, 0x70, 0x68, 0x69, 0x63, 0x20, 0x41, 0x6C,
        0x67, 0x6F, 0x72, 0x69, 0x74, 0x68, 0x6D, 0x00,
        0x42, 0x00, 0x0B, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00
    };
    
    struct kmip ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);
    
    enum cryptographic_algorithm a = KMIP_CRYPTOALG_AES;
    struct attribute expected = {0};
    kmip_init_attribute(&expected);
    expected.type = KMIP_ATTR_CRYPTOGRAPHIC_ALGORITHM;
    expected.value = &a;
    struct attribute observed = {0};
    kmip_init_attribute(&observed);
    
    int result = kmip_decode_attribute(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_attribute(&expected, &observed),
        result,
        __func__);
    kmip_free_attribute(&ctx, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x900, %rsp            # imm = 0x900
movq %rdi, %r14
incw (%rdi)
movaps 0x22adc(%rip), %xmm0    # 0x28cc0
leaq 0x30(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps 0x22abb(%rip), %xmm0    # 0x28cb0
movaps %xmm0, 0x10(%r15)
movaps 0x22a9f(%rip), %xmm0    # 0x28ca0
movaps %xmm0, (%r15)
movq $0x3000000, 0x30(%r15)  # imm = 0x3000000
leaq 0x68(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x38
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
pushq $0x3
popq %rbp
leaq 0xc(%rsp), %r12
movl %ebp, (%r12)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e6d
movl %ebp, (%r15)
movq %r12, 0x8(%r15)
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1c743
movl %eax, %ebp
movq %r15, %rdi
movq %r12, %rsi
callq 0x14d69
leaq 0x207d1(%rip), %r8      # 0x26a5d
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebp
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1309a
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x900, %rsp            # imm = 0x900
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_encode_attribute_cryptographic_length
int
test_encode_attribute_cryptographic_length(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x14,
        0x43, 0x72, 0x79, 0x70, 0x74, 0x6F, 0x67, 0x72,
        0x61, 0x70, 0x68, 0x69, 0x63, 0x20, 0x4C, 0x65,
        0x6E, 0x67, 0x74, 0x68, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x0B, 0x02, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00
    };
    
    uint8 observed[56] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    int32 length = 128;
    struct attribute attr = {0};
    kmip_init_attribute(&attr);
    
    attr.type = KMIP_ATTR_CRYPTOGRAPHIC_LENGTH;
    attr.value = &length;
    
    int result = kmip_encode_attribute(&ctx, &attr);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x8f8, %rsp            # imm = 0x8F8
movq %rdi, %r14
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
andq $0x0, 0x30(%r15)
leaq 0x60(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x38
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0xc(%rsp), %r13
movl $0x80, (%r13)
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movl $0x4, (%r12)
movq %r13, 0x8(%r12)
movq %rbx, %rdi
movq %r12, %rsi
callq 0x17846
leaq 0x22987(%rip), %rdx     # 0x28ce0
leaq 0x2072b(%rip), %r9      # 0x26a8b
movq %r14, %rdi
movq %rbx, %rsi
movq %r15, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebp
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x8f8, %rsp            # imm = 0x8F8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_attribute_cryptographic_length
int
test_decode_attribute_cryptographic_length(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 encoding[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x14,
        0x43, 0x72, 0x79, 0x70, 0x74, 0x6F, 0x67, 0x72,
        0x61, 0x70, 0x68, 0x69, 0x63, 0x20, 0x4C, 0x65,
        0x6E, 0x67, 0x74, 0x68, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x0B, 0x02, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00
    };
    
    struct kmip ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);
    
    int32 length = 128;
    struct attribute expected = {0};
    kmip_init_attribute(&expected);
    expected.type = KMIP_ATTR_CRYPTOGRAPHIC_LENGTH;
    expected.value = &length;
    struct attribute observed = {0};
    kmip_init_attribute(&observed);
    
    int result = kmip_decode_attribute(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_attribute(&expected, &observed),
        result,
        __func__);
    kmip_free_attribute(&ctx, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x900, %rsp            # imm = 0x900
movq %rdi, %r14
incw (%rdi)
movaps 0x22955(%rip), %xmm0    # 0x28d00
leaq 0x30(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps 0x22934(%rip), %xmm0    # 0x28cf0
movaps %xmm0, 0x10(%r15)
movaps 0x22918(%rip), %xmm0    # 0x28ce0
movaps %xmm0, (%r15)
movl $0x80000000, %eax       # imm = 0x80000000
movq %rax, 0x30(%r15)
leaq 0x68(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x38
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0xc(%rsp), %r12
movl $0x80, (%r12)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e6d
movl $0x4, (%r15)
movq %r12, 0x8(%r15)
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1c743
movl %eax, %ebp
movq %r15, %rdi
movq %r12, %rsi
callq 0x14d69
leaq 0x2065d(%rip), %r8      # 0x26ab6
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebp
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1309a
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x900, %rsp            # imm = 0x900
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_encode_attribute_operation_policy_name
int
test_encode_attribute_operation_policy_name(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x15,
        0x4F, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6F,
        0x6E, 0x20, 0x50, 0x6F, 0x6C, 0x69, 0x63, 0x79,
        0x20, 0x4E, 0x61, 0x6D, 0x65, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x0B, 0x07, 0x00, 0x00, 0x00, 0x07,
        0x64, 0x65, 0x66, 0x61, 0x75, 0x6C, 0x74, 0x00
    };
    
    uint8 observed[56] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    struct text_string policy = {0};
    policy.value = "default";
    policy.size = 7;
    
    struct attribute attr = {0};
    kmip_init_attribute(&attr);
    
    attr.type = KMIP_ATTR_OPERATION_POLICY_NAME;
    attr.value = &policy;
    
    int result = kmip_encode_attribute(&ctx, &attr);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x8f8, %rsp            # imm = 0x8F8
movq %rdi, %r14
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
andq $0x0, 0x30(%r15)
leaq 0x60(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x38
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x2015e(%rip), %rax     # 0x2664a
leaq 0x10(%rsp), %r13
movq %rax, (%r13)
movq $0x7, 0x8(%r13)
movq %rsp, %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movl $0x5, (%r12)
movq %r13, 0x8(%r12)
movq %rbx, %rdi
movq %r12, %rsi
callq 0x17846
leaq 0x227f1(%rip), %rdx     # 0x28d20
leaq 0x205ab(%rip), %r9      # 0x26ae1
movq %r14, %rdi
movq %rbx, %rsi
movq %r15, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebp
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x8f8, %rsp            # imm = 0x8F8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_attribute_operation_policy_name
int
test_decode_attribute_operation_policy_name(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 encoding[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x15,
        0x4F, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6F,
        0x6E, 0x20, 0x50, 0x6F, 0x6C, 0x69, 0x63, 0x79,
        0x20, 0x4E, 0x61, 0x6D, 0x65, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x0B, 0x07, 0x00, 0x00, 0x00, 0x07,
        0x64, 0x65, 0x66, 0x61, 0x75, 0x6C, 0x74, 0x00
    };
    
    struct kmip ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);
    
    struct text_string policy = {0};
    policy.value = "default";
    policy.size = 7;
    
    struct attribute expected = {0};
    kmip_init_attribute(&expected);
    expected.type = KMIP_ATTR_OPERATION_POLICY_NAME;
    expected.value = &policy;
    struct attribute observed = {0};
    kmip_init_attribute(&observed);
    
    int result = kmip_decode_attribute(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_attribute(&expected, &observed),
        result,
        __func__);
    kmip_free_attribute(&ctx, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x900, %rsp            # imm = 0x900
movq %rdi, %r14
incw (%rdi)
movaps 0x227bf(%rip), %xmm0    # 0x28d40
leaq 0x30(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps 0x2279e(%rip), %xmm0    # 0x28d30
movaps %xmm0, 0x10(%r15)
movaps 0x22782(%rip), %xmm0    # 0x28d20
movaps %xmm0, (%r15)
movabsq $0x746c7561666564, %rax # imm = 0x746C7561666564
movq %rax, 0x30(%r15)
leaq 0x68(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x38
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x2006f(%rip), %rax     # 0x2664a
leaq 0x20(%rsp), %r12
movq %rax, (%r12)
movq $0x7, 0x8(%r12)
xorps %xmm0, %xmm0
leaq 0x10(%rsp), %r15
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e6d
movl $0x5, (%r15)
movq %r12, 0x8(%r15)
movq %rsp, %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1c743
movl %eax, %ebp
movq %r15, %rdi
movq %r12, %rsi
callq 0x14d69
leaq 0x204cf(%rip), %r8      # 0x26b0d
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebp
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1309a
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x900, %rsp            # imm = 0x900
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_encode_attribute_cryptographic_usage_mask
int
test_encode_attribute_cryptographic_usage_mask(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x18,
        0x43, 0x72, 0x79, 0x70, 0x74, 0x6F, 0x67, 0x72,
        0x61, 0x70, 0x68, 0x69, 0x63, 0x20, 0x55, 0x73,
        0x61, 0x67, 0x65, 0x20, 0x4D, 0x61, 0x73, 0x6B,
        0x42, 0x00, 0x0B, 0x02, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00
    };
    
    uint8 observed[56] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    int32 mask = KMIP_CRYPTOMASK_ENCRYPT | KMIP_CRYPTOMASK_DECRYPT;
    struct attribute attr = {0};
    kmip_init_attribute(&attr);
    
    attr.type = KMIP_ATTR_CRYPTOGRAPHIC_USAGE_MASK;
    attr.value = &mask;
    
    int result = kmip_encode_attribute(&ctx, &attr);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x8f8, %rsp            # imm = 0x8F8
movq %rdi, %r14
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
andq $0x0, 0x30(%r15)
leaq 0x60(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x38
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0xc(%rsp), %r13
movl $0xc, (%r13)
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movl $0x6, (%r12)
movq %r13, 0x8(%r12)
movq %rbx, %rdi
movq %r12, %rsi
callq 0x17846
leaq 0x22655(%rip), %rdx     # 0x28d60
leaq 0x20427(%rip), %r9      # 0x26b39
movq %r14, %rdi
movq %rbx, %rsi
movq %r15, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebp
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x8f8, %rsp            # imm = 0x8F8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_attribute_cryptographic_usage_mask
int
test_decode_attribute_cryptographic_usage_mask(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 encoding[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x18,
        0x43, 0x72, 0x79, 0x70, 0x74, 0x6F, 0x67, 0x72,
        0x61, 0x70, 0x68, 0x69, 0x63, 0x20, 0x55, 0x73,
        0x61, 0x67, 0x65, 0x20, 0x4D, 0x61, 0x73, 0x6B,
        0x42, 0x00, 0x0B, 0x02, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00
    };
    
    struct kmip ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);
    
    int32 mask = KMIP_CRYPTOMASK_ENCRYPT | KMIP_CRYPTOMASK_DECRYPT;
    struct attribute expected = {0};
    kmip_init_attribute(&expected);
    expected.type = KMIP_ATTR_CRYPTOGRAPHIC_USAGE_MASK;
    expected.value = &mask;
    struct attribute observed = {0};
    kmip_init_attribute(&observed);
    
    int result = kmip_decode_attribute(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_attribute(&expected, &observed),
        result,
        __func__);
    kmip_free_attribute(&ctx, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x900, %rsp            # imm = 0x900
movq %rdi, %r14
incw (%rdi)
movaps 0x22623(%rip), %xmm0    # 0x28d80
leaq 0x30(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps 0x22602(%rip), %xmm0    # 0x28d70
movaps %xmm0, 0x10(%r15)
movaps 0x225e6(%rip), %xmm0    # 0x28d60
movaps %xmm0, (%r15)
movq $0xc000000, 0x30(%r15)  # imm = 0xC000000
leaq 0x68(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x38
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0xc(%rsp), %r12
movl $0xc, (%r12)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e6d
movl $0x6, (%r15)
movq %r12, 0x8(%r15)
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1c743
movl %eax, %ebp
movq %r15, %rdi
movq %r12, %rsi
callq 0x14d69
leaq 0x2035e(%rip), %r8      # 0x26b68
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebp
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1309a
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x900, %rsp            # imm = 0x900
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_encode_attribute_state
int
test_encode_attribute_state(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[40] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x20,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x05, 
        0x53, 0x74, 0x61, 0x74, 0x65, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x0B, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00
    };
    
    uint8 observed[40] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    enum state s = KMIP_STATE_PRE_ACTIVE;
    struct attribute attr = {0};
    kmip_init_attribute(&attr);
    
    attr.type = KMIP_ATTR_STATE;
    attr.value = &s;
    
    int result = kmip_encode_attribute(&ctx, &attr);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x8e8, %rsp            # imm = 0x8E8
movq %rdi, %r14
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
andq $0x0, 0x20(%r15)
leaq 0x50(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x28
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0xc(%rsp), %r13
movl $0x1, (%r13)
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movl $0x7, (%r12)
movq %r13, 0x8(%r12)
movq %rbx, %rdi
movq %r12, %rsi
callq 0x17846
leaq 0x224ce(%rip), %rdx     # 0x28da0
leaq 0x202be(%rip), %r9      # 0x26b97
movq %r14, %rdi
movq %rbx, %rsi
movq %r15, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebp
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x8e8, %rsp            # imm = 0x8E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_attribute_state
int
test_decode_attribute_state(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 encoding[40] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x20,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x05, 
        0x53, 0x74, 0x61, 0x74, 0x65, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x0B, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00
    };
    
    struct kmip ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);
    
    enum state s = KMIP_STATE_PRE_ACTIVE;
    struct attribute expected = {0};
    kmip_init_attribute(&expected);
    expected.type = KMIP_ATTR_STATE;
    expected.value = &s;
    struct attribute observed = {0};
    kmip_init_attribute(&observed);
    
    int result = kmip_decode_attribute(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_attribute(&expected, &observed),
        result,
        __func__);
    kmip_free_attribute(&ctx, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x8f0, %rsp            # imm = 0x8F0
movq %rdi, %r14
incw (%rdi)
movaps 0x2248c(%rip), %xmm0    # 0x28db0
leaq 0x30(%rsp), %r15
movaps %xmm0, 0x10(%r15)
movaps 0x2246b(%rip), %xmm0    # 0x28da0
movaps %xmm0, (%r15)
movq $0x1000000, 0x20(%r15)  # imm = 0x1000000
leaq 0x58(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x28
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0xc(%rsp), %r12
movl $0x1, (%r12)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e6d
movl $0x7, (%r15)
movq %r12, 0x8(%r15)
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1c743
movl %eax, %ebp
movq %r15, %rdi
movq %r12, %rsi
callq 0x14d69
leaq 0x201ee(%rip), %r8      # 0x26bb3
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebp
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1309a
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x8f0, %rsp            # imm = 0x8F0
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_encode_attribute_object_group
int
test_encode_attribute_object_group(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    /* This encoding matches the following values:
    *  Attribute
    *      Attribute Name - Object Group
    *      Attribute Value - RoundRobinTestGroup
    */
    uint8 expected[64] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x38,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x0C,
        0x4F, 0x62, 0x6A, 0x65, 0x63, 0x74, 0x20, 0x47,
        0x72, 0x6F, 0x75, 0x70, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x0B, 0x07, 0x00, 0x00, 0x00, 0x13,
        0x52, 0x6F, 0x75, 0x6E, 0x64, 0x52, 0x6F, 0x62,
        0x69, 0x6E, 0x54, 0x65, 0x73, 0x74, 0x47, 0x72,
        0x6F, 0x75, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00
    };

    uint8 observed[64] = {0};
    KMIP ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);

    TextString object_group = {0};
    object_group.value = "RoundRobinTestGroup";
    object_group.size = 19;

    Attribute attr = {0};
    kmip_init_attribute(&attr);

    attr.type = KMIP_ATTR_OBJECT_GROUP;
    attr.value = &object_group;

    int result = kmip_encode_attribute(&ctx, &attr);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x8f8, %rsp            # imm = 0x8F8
movq %rdi, %r14
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, 0x30(%r15)
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
leaq 0x60(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x40
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x20177(%rip), %rax     # 0x26bcf
leaq 0x10(%rsp), %r13
movq %rax, (%r13)
movq $0x13, 0x8(%r13)
movq %rsp, %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movl $0x9, (%r12)
movq %r13, 0x8(%r12)
movq %rbx, %rdi
movq %r12, %rsi
callq 0x17846
leaq 0x22335(%rip), %rdx     # 0x28dd0
leaq 0x20141(%rip), %r9      # 0x26be3
movq %r14, %rdi
movq %rbx, %rsi
movq %r15, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebp
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x8f8, %rsp            # imm = 0x8F8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_attribute_object_group
int
test_decode_attribute_object_group(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    /* This encoding matches the following values:
    *  Attribute
    *      Attribute Name - Object Group
    *      Attribute Value - RoundRobinTestGroup
    */
    uint8 encoding[64] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x38,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x0C,
        0x4F, 0x62, 0x6A, 0x65, 0x63, 0x74, 0x20, 0x47,
        0x72, 0x6F, 0x75, 0x70, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x0B, 0x07, 0x00, 0x00, 0x00, 0x13,
        0x52, 0x6F, 0x75, 0x6E, 0x64, 0x52, 0x6F, 0x62,
        0x69, 0x6E, 0x54, 0x65, 0x73, 0x74, 0x47, 0x72,
        0x6F, 0x75, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00
    };

    KMIP ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);

    TextString object_group = {0};
    object_group.value = "RoundRobinTestGroup";
    object_group.size = 19;

    Attribute expected = {0};
    kmip_init_attribute(&expected);
    expected.type = KMIP_ATTR_OBJECT_GROUP;
    expected.value = &object_group;
    Attribute observed = {0};
    kmip_init_attribute(&observed);

    int result = kmip_decode_attribute(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_attribute(&expected, &observed),
        result,
        __func__);
    kmip_free_attribute(&ctx, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x910, %rsp            # imm = 0x910
movq %rdi, %r14
incw (%rdi)
movaps 0x22313(%rip), %xmm0    # 0x28e00
leaq 0x30(%rsp), %r15
movaps %xmm0, 0x30(%r15)
movaps 0x222f2(%rip), %xmm0    # 0x28df0
movaps %xmm0, 0x20(%r15)
movaps 0x222d6(%rip), %xmm0    # 0x28de0
movaps %xmm0, 0x10(%r15)
movaps 0x222ba(%rip), %xmm0    # 0x28dd0
movaps %xmm0, (%r15)
leaq 0x78(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x40
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x2008a(%rip), %rax     # 0x26bcf
leaq 0x20(%rsp), %r12
movq %rax, (%r12)
movq $0x13, 0x8(%r12)
xorps %xmm0, %xmm0
leaq 0x10(%rsp), %r15
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e6d
movl $0x9, (%r15)
movq %r12, 0x8(%r15)
movq %rsp, %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1c743
movl %eax, %ebp
movq %r15, %rdi
movq %r12, %rsi
callq 0x14d69
leaq 0x2005e(%rip), %r8      # 0x26c06
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebp
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1309a
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x910, %rsp            # imm = 0x910
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_encode_attribute_activation_date
int
test_encode_attribute_activation_date(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    /* This encoding matches the following values:
    *  Attribute
    *      Attribute Name - Activation Date
    *      Attribute Value - 2 (Thu Jan 01 01:00:02 UST 1970)
    */
    uint8 expected[48] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x28,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x0F,
        0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69,
        0x6F, 0x6E, 0x20, 0x44, 0x61, 0x74, 0x65, 0x00,
        0x42, 0x00, 0x0B, 0x09, 0x00, 0x00, 0x00, 0x08,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02
    };

    uint8 observed[48] = {0};
    KMIP ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);

    int64 date_time = 2;

    Attribute attr = {0};
    kmip_init_attribute(&attr);

    attr.type = KMIP_ATTR_ACTIVATION_DATE;
    attr.value = &date_time;

    int result = kmip_encode_attribute(&ctx, &attr);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__
    );
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x8e8, %rsp            # imm = 0x8E8
movq %rdi, %r14
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
leaq 0x50(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x30
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x8(%rsp), %r13
movq $0x2, (%r13)
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movl $0xa, (%r12)
movq %r13, 0x8(%r12)
movq %rbx, %rdi
movq %r12, %rsi
callq 0x17846
leaq 0x221a0(%rip), %rdx     # 0x28e10
leaq 0x1ffb2(%rip), %r9      # 0x26c29
movq %r14, %rdi
movq %rbx, %rsi
movq %r15, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebp
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x8e8, %rsp            # imm = 0x8E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_attribute_activation_date
int
test_decode_attribute_activation_date(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 encoding[48] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x28,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x0F,
        0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69,
        0x6F, 0x6E, 0x20, 0x44, 0x61, 0x74, 0x65, 0x00,
        0x42, 0x00, 0x0B, 0x09, 0x00, 0x00, 0x00, 0x08,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02
    };

    KMIP ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);

    int64 date_time = 2;
    Attribute expected = {0};
    kmip_init_attribute(&expected);
    expected.type = KMIP_ATTR_ACTIVATION_DATE;
    expected.value = &date_time;
    Attribute observed = {0};
    kmip_init_attribute(&observed);

    int result = kmip_decode_attribute(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_attribute(&expected, &observed),
        result,
        __func__);
    kmip_free_attribute(&ctx, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x900, %rsp            # imm = 0x900
movq %rdi, %r14
incw (%rdi)
movaps 0x2216e(%rip), %xmm0    # 0x28e30
leaq 0x30(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps 0x2214d(%rip), %xmm0    # 0x28e20
movaps %xmm0, 0x10(%r15)
movaps 0x22131(%rip), %xmm0    # 0x28e10
movaps %xmm0, (%r15)
leaq 0x68(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x30
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x8(%rsp), %r12
movq $0x2, (%r12)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e6d
movl $0xa, (%r15)
movq %r12, 0x8(%r15)
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1c743
movl %eax, %ebp
movq %r15, %rdi
movq %r12, %rsi
callq 0x14d69
leaq 0x1fee8(%rip), %r8      # 0x26c4f
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebp
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1309a
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x900, %rsp            # imm = 0x900
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_encode_attribute_deactivation_date
int
test_encode_attribute_deactivation_date(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    /* This encoding matches the following values:
    *  Attribute
    *      Attribute Name - Deactivation Date
    *      Attribute Value - 1335514467 (Fri Apr 27 10:14:27 CEST 2012)
    */
    uint8 expected[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x11,
        0x44, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61,
        0x74, 0x69, 0x6F, 0x6E, 0x20, 0x44, 0x61, 0x74,
        0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x0B, 0x09, 0x00, 0x00, 0x00, 0x08,
        0x00, 0x00, 0x00, 0x00, 0x4F, 0x9A, 0x55, 0x63
    };

    uint8 observed[56] = {0};
    KMIP ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);

    int64 date_time = 1335514467;

    Attribute attr = {0};
    kmip_init_attribute(&attr);

    attr.type = KMIP_ATTR_DEACTIVATION_DATE;
    attr.value = &date_time;

    int result = kmip_encode_attribute(&ctx, &attr);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__
    );
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x8f8, %rsp            # imm = 0x8F8
movq %rdi, %r14
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
andq $0x0, 0x30(%r15)
leaq 0x60(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x38
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x8(%rsp), %r13
movq $0x4f9a5563, (%r13)     # imm = 0x4F9A5563
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movl $0xb, (%r12)
movq %r13, 0x8(%r12)
movq %rbx, %rdi
movq %r12, %rsi
callq 0x17846
leaq 0x2200c(%rip), %rdx     # 0x28e40
leaq 0x1fe3a(%rip), %r9      # 0x26c75
movq %r14, %rdi
movq %rbx, %rsi
movq %r15, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebp
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x8f8, %rsp            # imm = 0x8F8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_attribute_deactivation_date
int
test_decode_attribute_deactivation_date(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    /* This encoding matches the following values:
    *  Attribute
    *      Attribute Name - Deactivation Date
    *      Attribute Value - 1335514467 (Fri Apr 27 10:14:27 CEST 2012)
    */
    uint8 encoding[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x11,
        0x44, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61,
        0x74, 0x69, 0x6F, 0x6E, 0x20, 0x44, 0x61, 0x74,
        0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x0B, 0x09, 0x00, 0x00, 0x00, 0x08,
        0x00, 0x00, 0x00, 0x00, 0x4F, 0x9A, 0x55, 0x63
    };

    KMIP ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);

    int64 date_time = 1335514467;
    Attribute expected = {0};
    kmip_init_attribute(&expected);
    expected.type = KMIP_ATTR_DEACTIVATION_DATE;
    expected.value = &date_time;
    Attribute observed = {0};
    kmip_init_attribute(&observed);

    int result = kmip_decode_attribute(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_attribute(&expected, &observed),
        result,
        __func__);
    kmip_free_attribute(&ctx, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x900, %rsp            # imm = 0x900
movq %rdi, %r14
incw (%rdi)
movaps 0x21fda(%rip), %xmm0    # 0x28e60
leaq 0x30(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps 0x21fb9(%rip), %xmm0    # 0x28e50
movaps %xmm0, 0x10(%r15)
movaps 0x21f9d(%rip), %xmm0    # 0x28e40
movaps %xmm0, (%r15)
movabsq $0x63559a4f00000000, %rax # imm = 0x63559A4F00000000
movq %rax, 0x30(%r15)
leaq 0x68(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x38
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x8(%rsp), %r12
movq $0x4f9a5563, (%r12)     # imm = 0x4F9A5563
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e6d
movl $0xb, (%r15)
movq %r12, 0x8(%r15)
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1c743
movl %eax, %ebp
movq %r15, %rdi
movq %r12, %rsi
callq 0x14d69
leaq 0x1fd64(%rip), %r8      # 0x26c9d
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebp
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1309a
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x900, %rsp            # imm = 0x900
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_encode_attribute_process_start_date
int
test_encode_attribute_process_start_date(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    /* This encoding matches the following values:
    *  Attribute
    *      Attribute Name - Process Start Date
    *      Attribute Value - 1136113200 (Sun Jan 01 12:00:00 CET 2006)
    */
    uint8 expected[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x12,
        0x50, 0x72, 0x6F, 0x63, 0x65, 0x73, 0x73, 0x20,
        0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x44, 0x61,
        0x74, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x0B, 0x09, 0x00, 0x00, 0x00, 0x08,
        0x00, 0x00, 0x00, 0x00, 0x43, 0xB7, 0xB6, 0x30
    };

    uint8 observed[56] = {0};
    KMIP ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);

    int64 date_time = 1136113200;

    Attribute attr = {0};
    kmip_init_attribute(&attr);

    attr.type = KMIP_ATTR_PROCESS_START_DATE;
    attr.value = &date_time;

    int result = kmip_encode_attribute(&ctx, &attr);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__
    );
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x8f8, %rsp            # imm = 0x8F8
movq %rdi, %r14
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
andq $0x0, 0x30(%r15)
leaq 0x60(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x38
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x8(%rsp), %r13
movq $0x43b7b630, (%r13)     # imm = 0x43B7B630
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movl $0xc, (%r12)
movq %r13, 0x8(%r12)
movq %rbx, %rdi
movq %r12, %rsi
callq 0x17846
leaq 0x21e7a(%rip), %rdx     # 0x28e80
leaq 0x1fcb8(%rip), %r9      # 0x26cc5
movq %r14, %rdi
movq %rbx, %rsi
movq %r15, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebp
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x8f8, %rsp            # imm = 0x8F8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_attribute_process_start_date
int
test_decode_attribute_process_start_date(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    /* This encoding matches the following values:
    *  Attribute
    *      Attribute Name - Process Start Date
    *      Attribute Value - 1136113200 (Sun Jan 01 12:00:00 CET 2006)
    */
    uint8 encoding[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x12,
        0x50, 0x72, 0x6F, 0x63, 0x65, 0x73, 0x73, 0x20,
        0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x44, 0x61,
        0x74, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x0B, 0x09, 0x00, 0x00, 0x00, 0x08,
        0x00, 0x00, 0x00, 0x00, 0x43, 0xB7, 0xB6, 0x30
    };

    KMIP ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);

    int64 date_time = 1136113200;
    Attribute expected = {0};
    kmip_init_attribute(&expected);
    expected.type = KMIP_ATTR_PROCESS_START_DATE;
    expected.value = &date_time;
    Attribute observed = {0};
    kmip_init_attribute(&observed);

    int result = kmip_decode_attribute(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_attribute(&expected, &observed),
        result,
        __func__);
    kmip_free_attribute(&ctx, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x900, %rsp            # imm = 0x900
movq %rdi, %r14
incw (%rdi)
movaps 0x21e48(%rip), %xmm0    # 0x28ea0
leaq 0x30(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps 0x21e27(%rip), %xmm0    # 0x28e90
movaps %xmm0, 0x10(%r15)
movaps 0x21e0b(%rip), %xmm0    # 0x28e80
movaps %xmm0, (%r15)
movabsq $0x30b6b74300000000, %rax # imm = 0x30B6B74300000000
movq %rax, 0x30(%r15)
leaq 0x68(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x38
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x8(%rsp), %r12
movq $0x43b7b630, (%r12)     # imm = 0x43B7B630
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e6d
movl $0xc, (%r15)
movq %r12, 0x8(%r15)
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1c743
movl %eax, %ebp
movq %r15, %rdi
movq %r12, %rsi
callq 0x14d69
leaq 0x1fbe3(%rip), %r8      # 0x26cee
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebp
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1309a
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x900, %rsp            # imm = 0x900
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq