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

    /* This encoding matches the following values:
    *  Attribute
    *      Attribute Name - Protect Stop Date
    *      Attribute Value - 1335514945 (Fri Apr 27 10:22:25 CEST 2012)
    */
    uint8 expected[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x11,
        0x50, 0x72, 0x6F, 0x74, 0x65, 0x63, 0x74, 0x20,
        0x53, 0x74, 0x6F, 0x70, 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, 0x57, 0x41
    };

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

    int64 date_time = 1335514945;

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

    attr.type = KMIP_ATTR_PROTECT_STOP_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 $0x4f9a5741, (%r13)     # imm = 0x4F9A5741
leaq 0x10(%rsp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e6d
movl $0xd, (%r12)
movq %r13, 0x8(%r12)
movq %rbx, %rdi
movq %r12, %rsi
callq 0x17846
leaq 0x21ce8(%rip), %rdx     # 0x28ec0
leaq 0x1fb38(%rip), %r9      # 0x26d17
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_protect_stop_date
int
test_decode_attribute_protect_stop_date(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    /* This encoding matches the following values:
    *  Attribute
    *      Attribute Name - Protect Stop Date
    *      Attribute Value - 1335514945 (Fri Apr 27 10:22:25 CEST 2012)
    */
    uint8 encoding[56] = {
        0x42, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x30,
        0x42, 0x00, 0x0A, 0x07, 0x00, 0x00, 0x00, 0x11,
        0x50, 0x72, 0x6F, 0x74, 0x65, 0x63, 0x74, 0x20,
        0x53, 0x74, 0x6F, 0x70, 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, 0x57, 0x41
    };

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

    int64 date_time = 1335514945;
    Attribute expected = {0};
    kmip_init_attribute(&expected);
    expected.type = KMIP_ATTR_PROTECT_STOP_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 0x21cb6(%rip), %xmm0    # 0x28ee0
leaq 0x30(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps 0x21c95(%rip), %xmm0    # 0x28ed0
movaps %xmm0, 0x10(%r15)
movaps 0x21c79(%rip), %xmm0    # 0x28ec0
movaps %xmm0, (%r15)
movabsq $0x41579a4f00000000, %rax # imm = 0x41579A4F00000000
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 $0x4f9a5741, (%r12)     # imm = 0x4F9A5741
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e6d
movl $0xd, (%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 0x1fa62(%rip), %r8      # 0x26d3f
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_protocol_version
int
test_encode_protocol_version(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[40] = {
        0x42, 0x00, 0x69, 0x01, 0x00, 0x00, 0x00, 0x20,
        0x42, 0x00, 0x6A, 0x02, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x6B, 0x02, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
    };
    
    uint8 observed[40] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    struct protocol_version pv = {0};
    pv.major = 1;
    pv.minor = 0;
    
    int result = kmip_encode_protocol_version(&ctx, &pv);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x8d8, %rsp            # imm = 0x8D8
movq %rdi, %r14
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x10(%rsp), %r15
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
andq $0x0, 0x20(%r15)
leaq 0x40(%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 0x8(%rsp), %rsi
movq $0x1, (%rsi)
movq %rbx, %rdi
callq 0x17a71
leaq 0x219c2(%rip), %rdx     # 0x28f60
leaq 0x1f820(%rip), %r9      # 0x26dc5
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 $0x8d8, %rsp            # imm = 0x8D8
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_protocol_version
int
test_decode_protocol_version(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 encoding[40] = {
        0x42, 0x00, 0x69, 0x01, 0x00, 0x00, 0x00, 0x20,
        0x42, 0x00, 0x6A, 0x02, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x6B, 0x02, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
    };
    
    struct kmip ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);
    
    struct protocol_version expected = {0};
    expected.major = 1;
    expected.minor = 0;
    struct protocol_version observed = {0};
    
    int result = kmip_decode_protocol_version(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_protocol_version(&expected, &observed),
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x8d0, %rsp            # imm = 0x8D0
movq %rdi, %rbx
incw (%rdi)
movaps 0x21984(%rip), %xmm0    # 0x28f70
leaq 0x10(%rsp), %r15
movaps %xmm0, 0x10(%r15)
movaps 0x21963(%rip), %xmm0    # 0x28f60
movaps %xmm0, (%r15)
andq $0x0, 0x20(%r15)
leaq 0x38(%rsp), %r14
movl $0x898, %edx            # imm = 0x898
movq %r14, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x28
popq %rdx
movq %r14, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x8(%rsp), %r15
movq $0x1, (%r15)
movq %rsp, %r12
andq $0x0, (%r12)
movq %r14, %rdi
movq %r12, %rsi
callq 0x1cb7a
movl %eax, %ebp
movq %r15, %rdi
movq %r12, %rsi
callq 0x150a3
leaq 0x1f785(%rip), %r8      # 0x26de2
movq %rbx, %rdi
movq %r14, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebx
movq %r14, %rdi
callq 0x12ade
movl %ebx, %eax
addq $0x8d0, %rsp            # imm = 0x8D0
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_cryptographic_parameters
int
test_encode_cryptographic_parameters(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[72] = {
        0x42, 0x00, 0x2B, 0x01, 0x00, 0x00, 0x00, 0x40,
        0x42, 0x00, 0x11, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x5F, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x38, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x83, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x00
    };
    
    uint8 observed[72] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    struct cryptographic_parameters cp = {0};
    cp.block_cipher_mode = KMIP_BLOCK_CBC;
    cp.padding_method = KMIP_PAD_PKCS5;
    cp.hashing_algorithm = KMIP_HASH_SHA1;
    cp.key_role_type = KMIP_ROLE_KEK;
    
    int result = kmip_encode_cryptographic_parameters(&ctx, &cp);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x940, %rsp            # imm = 0x940
movq %rdi, %rbx
incw (%rdi)
xorps %xmm0, %xmm0
movq %rsp, %r15
movaps %xmm0, 0x30(%r15)
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
andq $0x0, 0x40(%r15)
leaq 0xa8(%rsp), %r14
movl $0x898, %edx            # imm = 0x898
movq %r14, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x48
popq %rdx
movq %r14, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x50(%rsp), %rsi
xorps %xmm0, %xmm0
movaps %xmm0, 0x40(%rsi)
movaps %xmm0, 0x30(%rsi)
movaps %xmm0, 0x20(%rsi)
movaps %xmm0, 0x10(%rsi)
movaps 0x1e912(%rip), %xmm0    # 0x26010
movaps %xmm0, (%rsi)
movq %r14, %rdi
callq 0x172e5
leaq 0x21880(%rip), %rdx     # 0x28f90
leaq 0x1f6e8(%rip), %r9      # 0x26dff
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebx
movq %r14, %rdi
callq 0x12ade
movl %ebx, %eax
addq $0x940, %rsp            # imm = 0x940
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_cryptographic_parameters
int
test_decode_cryptographic_parameters(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 encoding[72] = {
        0x42, 0x00, 0x2B, 0x01, 0x00, 0x00, 0x00, 0x40,
        0x42, 0x00, 0x11, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x5F, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x38, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x83, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x00
    };
    
    struct kmip ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);
    
    struct cryptographic_parameters expected = {0};
    kmip_init_cryptographic_parameters(&expected);
    expected.block_cipher_mode = KMIP_BLOCK_CBC;
    expected.padding_method = KMIP_PAD_PKCS5;
    expected.hashing_algorithm = KMIP_HASH_SHA1;
    expected.key_role_type = KMIP_ROLE_KEK;
    struct cryptographic_parameters observed = {0};
    kmip_init_cryptographic_parameters(&observed);
    
    int result = kmip_decode_cryptographic_parameters(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_cryptographic_parameters(&expected, &observed),
        result,
        __func__);
    kmip_free_cryptographic_parameters(&ctx, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x990, %rsp            # imm = 0x990
movq %rdi, %r14
incw (%rdi)
leaq 0x21833(%rip), %rsi     # 0x28f90
pushq $0x9
popq %rcx
movq %rsp, %r15
movq %r15, %rdi
rep  movsq (%rsi), %es:(%rdi)
leaq 0xf8(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x48
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
xorps %xmm0, %xmm0
leaq 0xa0(%rsp), %r12
movaps %xmm0, 0x40(%r12)
movaps %xmm0, 0x30(%r12)
movaps %xmm0, 0x20(%r12)
movaps %xmm0, 0x10(%r12)
movaps %xmm0, (%r12)
movq %r12, %rdi
callq 0x12e85
movaps 0x1e849(%rip), %xmm0    # 0x26010
movaps %xmm0, (%r12)
leaq 0x50(%rsp), %r15
xorps %xmm0, %xmm0
movaps %xmm0, 0x40(%r15)
movaps %xmm0, 0x30(%r15)
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e85
movq %rbx, %rdi
movq %r15, %rsi
callq 0x1b8dd
movl %eax, %ebp
movq %r12, %rdi
movq %r15, %rsi
callq 0x14e63
leaq 0x1f611(%rip), %r8      # 0x26e24
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebp
movq %rbx, %rdi
movq %r15, %rsi
callq 0x13194
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x990, %rsp            # imm = 0x990
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_encryption_key_information
int
test_encode_encryption_key_information(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[80] = {
        0x42, 0x00, 0x36, 0x01, 0x00, 0x00, 0x00, 0x48,
        0x42, 0x00, 0x94, 0x07, 0x00, 0x00, 0x00, 0x24,
        0x31, 0x30, 0x30, 0x31, 0x38, 0x32, 0x64, 0x35,
        0x2D, 0x37, 0x32, 0x62, 0x38, 0x2D, 0x34, 0x37, 
        0x61, 0x61, 0x2D, 0x38, 0x33, 0x38, 0x33, 0x2D,
        0x34, 0x64, 0x39, 0x37, 0x64, 0x35, 0x31, 0x32, 
        0x65, 0x39, 0x38, 0x61, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x2B, 0x01, 0x00, 0x00, 0x00, 0x10, 
        0x42, 0x00, 0x11, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x00
    };
    
    uint8 observed[80] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    struct text_string uuid = {0};
    uuid.value = "100182d5-72b8-47aa-8383-4d97d512e98a";
    uuid.size = 36;
    
    struct cryptographic_parameters cp = {0};
    cp.block_cipher_mode = KMIP_BLOCK_NIST_KEY_WRAP;
    
    struct encryption_key_information eki = {0};
    eki.unique_identifier = &uuid;
    eki.cryptographic_parameters = &cp;
    
    int result = kmip_encode_encryption_key_information(&ctx, &eki);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x960, %rsp            # imm = 0x960
movq %rdi, %rbx
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x70(%rsp), %r15
movaps %xmm0, 0x40(%r15)
movaps %xmm0, 0x30(%r15)
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
leaq 0xc8(%rsp), %r14
movl $0x898, %edx            # imm = 0x898
movq %r14, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x50
popq %rdx
movq %r14, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x1f5a0(%rip), %rax     # 0x26e49
leaq 0x10(%rsp), %rcx
movq %rax, (%rcx)
movq $0x24, 0x8(%rcx)
leaq 0x20(%rsp), %rax
xorps %xmm0, %xmm0
movaps %xmm0, (%rax)
movaps %xmm0, 0x40(%rax)
movaps %xmm0, 0x30(%rax)
movaps %xmm0, 0x20(%rax)
movaps %xmm0, 0x10(%rax)
movl $0xd, (%rax)
movq %rsp, %rsi
movq %rcx, (%rsi)
movq %rax, 0x8(%rsi)
movq %r14, %rdi
callq 0x17b0b
leaq 0x216ed(%rip), %rdx     # 0x28fe0
leaq 0x1f574(%rip), %r9      # 0x26e6e
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebx
movq %r14, %rdi
callq 0x12ade
movl %ebx, %eax
addq $0x960, %rsp            # imm = 0x960
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_encryption_key_information
int
test_decode_encryption_key_information(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 encoding[80] = {
        0x42, 0x00, 0x36, 0x01, 0x00, 0x00, 0x00, 0x48,
        0x42, 0x00, 0x94, 0x07, 0x00, 0x00, 0x00, 0x24,
        0x31, 0x30, 0x30, 0x31, 0x38, 0x32, 0x64, 0x35,
        0x2D, 0x37, 0x32, 0x62, 0x38, 0x2D, 0x34, 0x37, 
        0x61, 0x61, 0x2D, 0x38, 0x33, 0x38, 0x33, 0x2D,
        0x34, 0x64, 0x39, 0x37, 0x64, 0x35, 0x31, 0x32, 
        0x65, 0x39, 0x38, 0x61, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x2B, 0x01, 0x00, 0x00, 0x00, 0x10, 
        0x42, 0x00, 0x11, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x00
    };
    
    struct kmip ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);
    
    struct text_string uuid = {0};
    uuid.value = "100182d5-72b8-47aa-8383-4d97d512e98a";
    uuid.size = 36;
    
    struct cryptographic_parameters cp = {0};
    kmip_init_cryptographic_parameters(&cp);
    
    cp.block_cipher_mode = KMIP_BLOCK_NIST_KEY_WRAP;
    
    struct encryption_key_information expected = {0};
    expected.unique_identifier = &uuid;
    expected.cryptographic_parameters = &cp;
    
    struct encryption_key_information observed = {0};
    
    int result = kmip_decode_encryption_key_information(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_encryption_key_information(&expected, &observed),
        result,
        __func__);
    kmip_free_encryption_key_information(&ctx, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x968, %rsp            # imm = 0x968
movq %rdi, %r14
incw (%rdi)
leaq 0x2169e(%rip), %rsi     # 0x28fe0
pushq $0xa
popq %rcx
leaq 0x80(%rsp), %r15
movq %r15, %rdi
rep  movsq (%rsi), %es:(%rdi)
leaq 0xd0(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x50
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x1f4c8(%rip), %rax     # 0x26e49
leaq 0x20(%rsp), %r13
movq %rax, (%r13)
movq $0x24, 0x8(%r13)
xorps %xmm0, %xmm0
leaq 0x30(%rsp), %r15
movaps %xmm0, 0x40(%r15)
movaps %xmm0, 0x30(%r15)
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e85
movl $0xd, (%r15)
leaq 0x10(%rsp), %r12
movq %r13, (%r12)
movq %r15, 0x8(%r12)
movq %rsp, %r15
xorps %xmm0, %xmm0
movaps %xmm0, (%r15)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x1d000
movl %eax, %ebp
movq %r12, %rdi
movq %r15, %rsi
callq 0x15210
leaq 0x1f49d(%rip), %r8      # 0x26e95
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebp
movq %rbx, %rdi
movq %r15, %rsi
callq 0x13421
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x968, %rsp            # imm = 0x968
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_encode_mac_signature_key_information
int
test_encode_mac_signature_key_information(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[80] = {
        0x42, 0x00, 0x4E, 0x01, 0x00, 0x00, 0x00, 0x48,
        0x42, 0x00, 0x94, 0x07, 0x00, 0x00, 0x00, 0x24,
        0x31, 0x30, 0x30, 0x31, 0x38, 0x32, 0x64, 0x35,
        0x2D, 0x37, 0x32, 0x62, 0x38, 0x2D, 0x34, 0x37, 
        0x61, 0x61, 0x2D, 0x38, 0x33, 0x38, 0x33, 0x2D,
        0x34, 0x64, 0x39, 0x37, 0x64, 0x35, 0x31, 0x32, 
        0x65, 0x39, 0x38, 0x61, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x2B, 0x01, 0x00, 0x00, 0x00, 0x10, 
        0x42, 0x00, 0x11, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x00
    };
    
    uint8 observed[80] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    struct text_string uuid = {0};
    uuid.value = "100182d5-72b8-47aa-8383-4d97d512e98a";
    uuid.size = 36;

    struct cryptographic_parameters cp = {0};
    cp.block_cipher_mode = KMIP_BLOCK_NIST_KEY_WRAP;

    struct mac_signature_key_information mski = {0};
    mski.unique_identifier = &uuid;
    mski.cryptographic_parameters = &cp;
    
    int result = kmip_encode_mac_signature_key_information(&ctx, &mski);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x960, %rsp            # imm = 0x960
movq %rdi, %rbx
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x70(%rsp), %r15
movaps %xmm0, 0x40(%r15)
movaps %xmm0, 0x30(%r15)
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
leaq 0xc8(%rsp), %r14
movl $0x898, %edx            # imm = 0x898
movq %r14, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x50
popq %rdx
movq %r14, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x1f3b9(%rip), %rax     # 0x26e49
leaq 0x10(%rsp), %rcx
movq %rax, (%rcx)
movq $0x24, 0x8(%rcx)
leaq 0x20(%rsp), %rax
xorps %xmm0, %xmm0
movaps %xmm0, (%rax)
movaps %xmm0, 0x40(%rax)
movaps %xmm0, 0x30(%rax)
movaps %xmm0, 0x20(%rax)
movaps %xmm0, 0x10(%rax)
movl $0xd, (%rax)
movq %rsp, %rsi
movq %rcx, (%rsi)
movq %rax, 0x8(%rsi)
movq %r14, %rdi
callq 0x17bd9
leaq 0x21556(%rip), %rdx     # 0x29030
leaq 0x1f3db(%rip), %r9      # 0x26ebc
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebx
movq %r14, %rdi
callq 0x12ade
movl %ebx, %eax
addq $0x960, %rsp            # imm = 0x960
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_mac_signature_key_information
int
test_decode_mac_signature_key_information(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 encoding[80] = {
        0x42, 0x00, 0x4E, 0x01, 0x00, 0x00, 0x00, 0x48,
        0x42, 0x00, 0x94, 0x07, 0x00, 0x00, 0x00, 0x24,
        0x31, 0x30, 0x30, 0x31, 0x38, 0x32, 0x64, 0x35,
        0x2D, 0x37, 0x32, 0x62, 0x38, 0x2D, 0x34, 0x37, 
        0x61, 0x61, 0x2D, 0x38, 0x33, 0x38, 0x33, 0x2D,
        0x34, 0x64, 0x39, 0x37, 0x64, 0x35, 0x31, 0x32, 
        0x65, 0x39, 0x38, 0x61, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x2B, 0x01, 0x00, 0x00, 0x00, 0x10, 
        0x42, 0x00, 0x11, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x00
    };
    
    struct kmip ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);
    
    struct text_string uuid = {0};
    uuid.value = "100182d5-72b8-47aa-8383-4d97d512e98a";
    uuid.size = 36;

    struct cryptographic_parameters cp = {0};
    kmip_init_cryptographic_parameters(&cp);
    
    cp.block_cipher_mode = KMIP_BLOCK_NIST_KEY_WRAP;

    struct mac_signature_key_information expected = {0};
    expected.unique_identifier = &uuid;
    expected.cryptographic_parameters = &cp;
    
    struct mac_signature_key_information observed = {0};
    
    int result = kmip_decode_mac_signature_key_information(&ctx, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_mac_signature_key_information(&expected, &observed),
        result,
        __func__);
    kmip_free_mac_signature_key_information(&ctx, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x968, %rsp            # imm = 0x968
movq %rdi, %r14
incw (%rdi)
leaq 0x21507(%rip), %rsi     # 0x29030
pushq $0xa
popq %rcx
leaq 0x80(%rsp), %r15
movq %r15, %rdi
rep  movsq (%rsi), %es:(%rdi)
leaq 0xd0(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x50
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x1f2e1(%rip), %rax     # 0x26e49
leaq 0x20(%rsp), %r13
movq %rax, (%r13)
movq $0x24, 0x8(%r13)
xorps %xmm0, %xmm0
leaq 0x30(%rsp), %r15
movaps %xmm0, 0x40(%r15)
movaps %xmm0, 0x30(%r15)
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
movq %r15, %rdi
callq 0x12e85
movl $0xd, (%r15)
leaq 0x10(%rsp), %r12
movq %r13, (%r12)
movq %r15, 0x8(%r12)
movq %rsp, %r15
xorps %xmm0, %xmm0
movaps %xmm0, (%r15)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x1d17a
movl %eax, %ebp
movq %r12, %rdi
movq %r15, %rsi
callq 0x15287
leaq 0x1f307(%rip), %r8      # 0x26ee6
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %ebp, %ecx
callq 0x134d
movl %eax, %ebp
movq %rbx, %rdi
movq %r15, %rsi
callq 0x13485
movq %rbx, %rdi
callq 0x12ade
movl %ebp, %eax
addq $0x968, %rsp            # imm = 0x968
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_encode_key_wrapping_data
int
test_encode_key_wrapping_data(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[104] = {
        0x42, 0x00, 0x46, 0x01, 0x00, 0x00, 0x00, 0x60, 
        0x42, 0x00, 0x9E, 0x05, 0x00, 0x00, 0x00, 0x04, 
        0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 
        0x42, 0x00, 0x36, 0x01, 0x00, 0x00, 0x00, 0x48, 
        0x42, 0x00, 0x94, 0x07, 0x00, 0x00, 0x00, 0x24, 
        0x31, 0x30, 0x30, 0x31, 0x38, 0x32, 0x64, 0x35,
        0x2D, 0x37, 0x32, 0x62, 0x38, 0x2D, 0x34, 0x37, 
        0x61, 0x61, 0x2D, 0x38, 0x33, 0x38, 0x33, 0x2D, 
        0x34, 0x64, 0x39, 0x37, 0x64, 0x35, 0x31, 0x32, 
        0x65, 0x39, 0x38, 0x61, 0x00, 0x00, 0x00, 0x00, 
        0x42, 0x00, 0x2B, 0x01, 0x00, 0x00, 0x00, 0x10,
        0x42, 0x00, 0x11, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x00
    };
    
    uint8 observed[104] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    struct text_string uuid = {0};
    uuid.value = "100182d5-72b8-47aa-8383-4d97d512e98a";
    uuid.size = 36;
    
    struct cryptographic_parameters cp = {0};
    cp.block_cipher_mode = KMIP_BLOCK_NIST_KEY_WRAP;
    
    struct encryption_key_information eki = {0};
    eki.unique_identifier = &uuid;
    eki.cryptographic_parameters = &cp;
    
    struct key_wrapping_data kwd = {0};
    kwd.wrapping_method = KMIP_WRAP_ENCRYPT;
    kwd.encryption_key_info = &eki;
    
    int result = kmip_encode_key_wrapping_data(&ctx, &kwd);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x9a0, %rsp            # imm = 0x9A0
movq %rdi, %rbx
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0xa0(%rsp), %r14
movaps %xmm0, 0x50(%r14)
movaps %xmm0, 0x40(%r14)
movaps %xmm0, 0x30(%r14)
movaps %xmm0, 0x20(%r14)
movaps %xmm0, 0x10(%r14)
movaps %xmm0, (%r14)
andq $0x0, 0x60(%r14)
leaq 0x108(%rsp), %r15
movl $0x898, %edx            # imm = 0x898
movq %r15, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x68
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
xorl %ecx, %ecx
callq 0x128ed
leaq 0x1f1c5(%rip), %rax     # 0x26e49
leaq 0x10(%rsp), %rcx
movq %rax, (%rcx)
movq $0x24, 0x8(%rcx)
leaq 0x50(%rsp), %rax
xorps %xmm0, %xmm0
movaps %xmm0, (%rax)
movaps %xmm0, 0x40(%rax)
movaps %xmm0, 0x30(%rax)
movaps %xmm0, 0x20(%rax)
movaps %xmm0, 0x10(%rax)
movl $0xd, (%rax)
movq %rsp, %rdx
movq %rcx, (%rdx)
movq %rax, 0x8(%rdx)
leaq 0x20(%rsp), %rsi
movaps %xmm0, (%rsi)
movaps %xmm0, 0x20(%rsi)
movaps %xmm0, 0x10(%rsi)
movl $0x1, (%rsi)
movq %rdx, 0x8(%rsi)
movq %r15, %rdi
callq 0x17ca7
leaq 0x21398(%rip), %rdx     # 0x29080
leaq 0x1f221(%rip), %r9      # 0x26f10
movq %rbx, %rdi
movq %r15, %rsi
movq %r14, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebx
movq %r15, %rdi
callq 0x12ade
movl %ebx, %eax
addq $0x9a0, %rsp            # imm = 0x9A0
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_encode_key_material_byte_string
int
test_encode_key_material_byte_string(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[24] = {
        0x42, 0x00, 0x43, 0x08, 0x00, 0x00, 0x00, 0x10,
        0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77,
        0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF
    };
    
    uint8 observed[24] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    uint8 value[16] = {
        0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77,
        0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF
    };
    struct byte_string key = {0};
    key.value = value;
    key.size = ARRAY_LENGTH(value);
    
    int result = kmip_encode_key_material(&ctx, KMIP_KEYFORMAT_RAW, &key);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x8d8, %rsp            # imm = 0x8D8
movq %rdi, %r14
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %r15
movaps %xmm0, (%r15)
andq $0x0, 0x10(%r15)
leaq 0x40(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x18
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
movaps 0x1e273(%rip), %xmm0    # 0x26110
movq %rsp, %rax
movaps %xmm0, (%rax)
leaq 0x10(%rsp), %rdx
movq %rax, (%rdx)
movq $0x10, 0x8(%rdx)
pushq $0x1
popq %rsi
movq %rbx, %rdi
callq 0x17eda
leaq 0x2122b(%rip), %rdx     # 0x290f0
leaq 0x1f080(%rip), %r9      # 0x26f4c
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 $0x8d8, %rsp            # imm = 0x8D8
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_key_material_byte_string
int
test_decode_key_material_byte_string(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 encoding[24] = {
        0x42, 0x00, 0x43, 0x08, 0x00, 0x00, 0x00, 0x10,
        0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77,
        0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF
    };
    
    struct kmip ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);
    
    uint8 value[16] = {
        0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77,
        0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF
    };
    struct byte_string expected = {0};
    expected.value = value;
    expected.size = ARRAY_LENGTH(value);
    
    struct byte_string *expected_ptr = &expected;
    struct byte_string *observed_ptr = NULL;
    
    int result = kmip_decode_key_material(
        &ctx,
        KMIP_KEYFORMAT_RAW,
        (void**)&observed_ptr);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_key_material(KMIP_KEYFORMAT_RAW, (void**)&expected_ptr, (void**)&observed_ptr),
        result,
        __func__);
    kmip_free_key_material(&ctx, KMIP_KEYFORMAT_RAW, (void**)&observed_ptr);
    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)
movaps 0x211db(%rip), %xmm0    # 0x290f0
leaq 0x30(%rsp), %r15
movaps %xmm0, (%r15)
movabsq $-0x11223344556678, %rax # imm = 0xFFEEDDCCBBAA9988
movq %rax, 0x10(%r15)
leaq 0x50(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x18
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
movaps 0x1e1b9(%rip), %xmm0    # 0x26110
leaq 0x10(%rsp), %rax
movaps %xmm0, (%rax)
leaq 0x20(%rsp), %rcx
movq %rax, (%rcx)
movq $0x10, 0x8(%rcx)
leaq 0x8(%rsp), %r15
movq %rcx, (%r15)
movq %rsp, %r12
andq $0x0, (%r12)
pushq $0x1
popq %rbp
movq %rbx, %rdi
movl %ebp, %esi
movq %r12, %rdx
callq 0x1cd79
movl %eax, %r13d
movl %ebp, %edi
movq %r15, %rsi
movq %r12, %rdx
callq 0x1510f
leaq 0x1efcb(%rip), %r8      # 0x26f71
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %r13d, %ecx
callq 0x134d
movl %eax, %r14d
movq %rbx, %rdi
movl %ebp, %esi
movq %r12, %rdx
callq 0x13351
movq %rbx, %rdi
callq 0x12ade
movl %r14d, %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_encode_key_material_transparent_symmetric_key
int
test_encode_key_material_transparent_symmetric_key(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[48] = {
        0x42, 0x00, 0x43, 0x01, 0x00, 0x00, 0x00, 0x28, 
        0x42, 0x00, 0x3F, 0x08, 0x00, 0x00, 0x00, 0x20, 
        0x00, 0x00, 0x11, 0x11, 0x22, 0x22, 0x33, 0x33, 
        0x44, 0x44, 0x55, 0x55, 0x66, 0x66, 0x77, 0x77,
        0x88, 0x88, 0x99, 0x99, 0xAA, 0xAA, 0xBB, 0xBB,
        0xCC, 0xCC, 0xDD, 0xDD, 0xEE, 0xEE, 0xFF, 0xFF
    };
    
    uint8 observed[48] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    uint8 value[32] = {
        0x00, 0x00, 0x11, 0x11, 0x22, 0x22, 0x33, 0x33, 
        0x44, 0x44, 0x55, 0x55, 0x66, 0x66, 0x77, 0x77,
        0x88, 0x88, 0x99, 0x99, 0xAA, 0xAA, 0xBB, 0xBB,
        0xCC, 0xCC, 0xDD, 0xDD, 0xEE, 0xEE, 0xFF, 0xFF
    };
    struct byte_string key = {0};
    key.value = value;
    key.size = ARRAY_LENGTH(value);
    struct transparent_symmetric_key tsk = {0};
    tsk.key = &key;
    
    int result = kmip_encode_key_material(&ctx, KMIP_KEYFORMAT_TRANS_SYMMETRIC_KEY, &tsk);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x908, %rsp            # imm = 0x908
movq %rdi, %r14
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x40(%rsp), %r15
movaps %xmm0, 0x20(%r15)
movaps %xmm0, 0x10(%r15)
movaps %xmm0, (%r15)
leaq 0x70(%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
movaps 0x23b29(%rip), %xmm0    # 0x2bb60
leaq 0x20(%rsp), %rax
movaps %xmm0, 0x10(%rax)
movaps 0x23b09(%rip), %xmm0    # 0x2bb50
movaps %xmm0, (%rax)
leaq 0x10(%rsp), %rcx
movq %rax, (%rcx)
movq $0x20, 0x8(%rcx)
leaq 0x8(%rsp), %rdx
movq %rcx, (%rdx)
pushq $0x7
popq %rsi
movq %rbx, %rdi
callq 0x17eda
leaq 0x2109c(%rip), %rdx     # 0x29110
leaq 0x1ef1b(%rip), %r9      # 0x26f96
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 $0x908, %rsp            # imm = 0x908
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_encode_key_value
int
test_encode_key_value(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[32] = {
        0x42, 0x00, 0x45, 0x01, 0x00, 0x00, 0x00, 0x18,
        0x42, 0x00, 0x43, 0x08, 0x00, 0x00, 0x00, 0x10,
        0xD3, 0x51, 0x91, 0x0F, 0x1D, 0x79, 0x34, 0xD6,
        0xE2, 0xAE, 0x17, 0x57, 0x65, 0x64, 0xE2, 0xBC
    };
    
    uint8 observed[32] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    uint8 value[16] = {
        0xD3, 0x51, 0x91, 0x0F, 0x1D, 0x79, 0x34, 0xD6,
        0xE2, 0xAE, 0x17, 0x57, 0x65, 0x64, 0xE2, 0xBC
    };
    struct byte_string key = {0};
    key.value = value;
    key.size = ARRAY_LENGTH(value);
    
    struct key_value kv = {0};
    kv.key_material = &key;
    
    int result = kmip_encode_key_value(&ctx, KMIP_KEYFORMAT_RAW, &kv);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x8f8, %rsp            # imm = 0x8F8
movq %rdi, %r14
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x40(%rsp), %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 $0x20
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
movaps 0x1defd(%rip), %xmm0    # 0x26100
movq %rsp, %rax
movaps %xmm0, (%rax)
leaq 0x18(%rsp), %rcx
movq %rax, (%rcx)
movq $0x10, 0x8(%rcx)
leaq 0x28(%rsp), %rdx
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rdx)
movq %rcx, (%rdx)
pushq $0x1
popq %rsi
movq %rbx, %rdi
callq 0x17fbc
leaq 0x23936(%rip), %rdx     # 0x2bb70
leaq 0x1edbb(%rip), %r9      # 0x26ffc
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 %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_decode_key_value
int
test_decode_key_value(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 encoding[32] = {
        0x42, 0x00, 0x45, 0x01, 0x00, 0x00, 0x00, 0x18,
        0x42, 0x00, 0x43, 0x08, 0x00, 0x00, 0x00, 0x10,
        0xD3, 0x51, 0x91, 0x0F, 0x1D, 0x79, 0x34, 0xD6,
        0xE2, 0xAE, 0x17, 0x57, 0x65, 0x64, 0xE2, 0xBC
    };
    
    struct kmip ctx = {0};
    kmip_init(&ctx, encoding, ARRAY_LENGTH(encoding), KMIP_1_0);
    
    uint8 value[16] = {
        0xD3, 0x51, 0x91, 0x0F, 0x1D, 0x79, 0x34, 0xD6,
        0xE2, 0xAE, 0x17, 0x57, 0x65, 0x64, 0xE2, 0xBC
    };
    struct byte_string key = {0};
    key.value = value;
    key.size = ARRAY_LENGTH(value);
    
    struct key_value expected = {0};
    expected.key_material = &key;
    struct key_value observed = {0};
    
    int result = kmip_decode_key_value(&ctx, KMIP_KEYFORMAT_RAW, &observed);
    result = report_decoding_test_result(
        tracker,
        &ctx,
        kmip_compare_key_value(KMIP_KEYFORMAT_RAW, &expected, &observed),
        result,
        __func__);
    kmip_free_key_value(&ctx, KMIP_KEYFORMAT_RAW, &observed);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x908, %rsp            # imm = 0x908
movq %rdi, %r14
incw (%rdi)
movaps 0x238f6(%rip), %xmm0    # 0x2bb80
leaq 0x50(%rsp), %r15
movaps %xmm0, 0x10(%r15)
movaps 0x238d5(%rip), %xmm0    # 0x2bb70
movaps %xmm0, (%r15)
leaq 0x70(%rsp), %rbx
movl $0x898, %edx            # imm = 0x898
movq %rbx, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x20
popq %rdx
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x128ed
movaps 0x1de36(%rip), %xmm0    # 0x26100
movq %rsp, %rax
movaps %xmm0, (%rax)
leaq 0x10(%rsp), %rcx
movq %rax, (%rcx)
movq $0x10, 0x8(%rcx)
xorps %xmm0, %xmm0
leaq 0x38(%rsp), %r12
movups %xmm0, 0x8(%r12)
movq %rcx, (%r12)
leaq 0x20(%rsp), %r15
movaps %xmm0, (%r15)
andq $0x0, 0x10(%r15)
pushq $0x1
popq %rbp
movq %rbx, %rdi
movl %ebp, %esi
movq %r15, %rdx
callq 0x1ce8b
movl %eax, %r13d
movl %ebp, %edi
movq %r12, %rsi
movq %r15, %rdx
callq 0x1516c
leaq 0x1eceb(%rip), %r8      # 0x27012
movq %r14, %rdi
movq %rbx, %rsi
movl %eax, %edx
movl %r13d, %ecx
callq 0x134d
movl %eax, %r14d
movq %rbx, %rdi
movl %ebp, %esi
movq %r15, %rdx
callq 0x133a6
movq %rbx, %rdi
callq 0x12ade
movl %r14d, %eax
addq $0x908, %rsp            # imm = 0x908
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_encode_key_block_key_value_structure
int
test_encode_key_block_key_value_structure(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[88] = {
        0x42, 0x00, 0x40, 0x01, 0x00, 0x00, 0x00, 0x50, 
        0x42, 0x00, 0x42, 0x05, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 
        0x42, 0x00, 0x45, 0x01, 0x00, 0x00, 0x00, 0x18, 
        0x42, 0x00, 0x43, 0x08, 0x00, 0x00, 0x00, 0x10, 
        0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77,
        0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, 
        0x42, 0x00, 0x28, 0x05, 0x00, 0x00, 0x00, 0x04, 
        0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x2A, 0x02, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00
    };
    
    uint8 observed[88] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    uint8 value[16] = {
        0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77,
        0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF
    };
    struct byte_string key = {0};
    key.value = value;
    key.size = ARRAY_LENGTH(value);
    
    struct key_value kv = {0};
    kv.key_material = &key;
    
    struct key_block kb = {0};
    kb.key_format_type = KMIP_KEYFORMAT_RAW;
    kb.key_value = &kv;
    kb.cryptographic_algorithm = KMIP_CRYPTOALG_AES;
    kb.cryptographic_length = 128;
    
    int result = kmip_encode_key_block(&ctx, &kb);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x960, %rsp            # imm = 0x960
movq %rdi, %rbx
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x70(%rsp), %r14
movaps %xmm0, 0x40(%r14)
movaps %xmm0, 0x30(%r14)
movaps %xmm0, 0x20(%r14)
movaps %xmm0, 0x10(%r14)
movaps %xmm0, (%r14)
andq $0x0, 0x50(%r14)
leaq 0xc8(%rsp), %r15
movl $0x898, %edx            # imm = 0x898
movq %r15, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x58
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
xorl %ecx, %ecx
callq 0x128ed
movaps 0x1d7b7(%rip), %xmm0    # 0x26110
movq %rsp, %rax
movaps %xmm0, (%rax)
leaq 0x18(%rsp), %rcx
movq %rax, (%rcx)
movq $0x10, 0x8(%rcx)
leaq 0x28(%rsp), %rax
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movq %rcx, (%rax)
leaq 0x40(%rsp), %rsi
movaps %xmm0, (%rsi)
movaps %xmm0, 0x10(%rsi)
andq $0x0, 0x20(%rsi)
movl $0x1, (%rsi)
movq %rax, 0x8(%rsi)
movabsq $0x8000000003, %rax     # imm = 0x8000000003
movq %rax, 0x14(%rsi)
movq %r15, %rdi
callq 0x180bd
leaq 0x208fa(%rip), %rdx     # 0x292b0
leaq 0x1e70f(%rip), %r9      # 0x270cc
movq %rbx, %rdi
movq %r15, %rsi
movq %r14, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebx
movq %r15, %rdi
callq 0x12ade
movl %ebx, %eax
addq $0x960, %rsp            # imm = 0x960
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/OpenKMIP[P]libkmip/tests/tests.c
// Function: test_encode_symmetric_key
int
test_encode_symmetric_key(TestTracker *tracker)
{
    TRACK_TEST(tracker);

    uint8 expected[96] = {
        0x42, 0x00, 0x8F, 0x01, 0x00, 0x00, 0x00, 0x58, 
        0x42, 0x00, 0x40, 0x01, 0x00, 0x00, 0x00, 0x50, 
        0x42, 0x00, 0x42, 0x05, 0x00, 0x00, 0x00, 0x04, 
        0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 
        0x42, 0x00, 0x45, 0x01, 0x00, 0x00, 0x00, 0x18, 
        0x42, 0x00, 0x43, 0x08, 0x00, 0x00, 0x00, 0x10, 
        0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 
        0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 
        0x42, 0x00, 0x28, 0x05, 0x00, 0x00, 0x00, 0x04, 
        0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
        0x42, 0x00, 0x2A, 0x02, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00
    };
    
    uint8 observed[96] = {0};
    struct kmip ctx = {0};
    kmip_init(&ctx, observed, ARRAY_LENGTH(observed), KMIP_1_0);
    
    uint8 value[16] = {
        0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
        0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
    };
    struct byte_string key = {0};
    key.value = value;
    key.size = ARRAY_LENGTH(value);
    
    struct key_value kv = {0};
    kv.key_material = &key;
    
    struct key_block kb = {0};
    kb.key_format_type = KMIP_KEYFORMAT_RAW;
    kb.key_value = &kv;
    kb.cryptographic_algorithm = KMIP_CRYPTOALG_AES;
    kb.cryptographic_length = 128;
    
    struct symmetric_key sk = {0};
    sk.key_block = &kb;
    
    int result = kmip_encode_symmetric_key(&ctx, &sk);
    result = report_encoding_test_result(
        tracker,
        &ctx,
        expected,
        observed,
        result,
        __func__);
    kmip_destroy(&ctx);
    return(result);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x980, %rsp            # imm = 0x980
movq %rdi, %rbx
incw (%rdi)
xorps %xmm0, %xmm0
leaq 0x80(%rsp), %r14
movaps %xmm0, 0x50(%r14)
movaps %xmm0, 0x40(%r14)
movaps %xmm0, 0x30(%r14)
movaps %xmm0, 0x20(%r14)
movaps %xmm0, 0x10(%r14)
movaps %xmm0, (%r14)
leaq 0xe8(%rsp), %r15
movl $0x898, %edx            # imm = 0x898
movq %r15, %rdi
xorl %esi, %esi
callq 0x10c0
pushq $0x60
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
xorl %ecx, %ecx
callq 0x128ed
movaps 0x1d59a(%rip), %xmm0    # 0x26120
leaq 0x10(%rsp), %rax
movaps %xmm0, (%rax)
leaq 0x28(%rsp), %rcx
movq %rax, (%rcx)
movq $0x10, 0x8(%rcx)
leaq 0x38(%rsp), %rax
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movq %rcx, (%rax)
leaq 0x50(%rsp), %rcx
andq $0x0, 0x20(%rcx)
movaps %xmm0, (%rcx)
movaps %xmm0, 0x10(%rcx)
movl $0x1, (%rcx)
movq %rax, 0x8(%rcx)
movabsq $0x8000000003, %rax     # imm = 0x8000000003
movq %rax, 0x14(%rcx)
leaq 0x8(%rsp), %rsi
movq %rcx, (%rsi)
movq %r15, %rdi
callq 0x1825f
leaq 0x20723(%rip), %rdx     # 0x29310
leaq 0x1e52c(%rip), %r9      # 0x27120
movq %rbx, %rdi
movq %r15, %rsi
movq %r14, %rcx
movl %eax, %r8d
callq 0x123c
movl %eax, %ebx
movq %r15, %rdi
callq 0x12ade
movl %ebx, %eax
addq $0x980, %rsp            # imm = 0x980
popq %rbx
popq %r14
popq %r15
retq