// File: /workspace/github_c_makefile_star2_O0/OpenKMIP[P]libkmip/src/kmip.c
// Function: kmip_decode_attribute_name
int
kmip_decode_attribute_name(KMIP *ctx, enum attribute_type *value)
{
    int result = 0;
    enum tag t = KMIP_TAG_ATTRIBUTE_NAME;
    TextString n = {0};
    
    result = kmip_decode_text_string(ctx, t, &n);
    CHECK_RESULT(ctx, result);
    
    if((n.size == 32) && (strncmp(n.value, "Application Specific Information", 32) == 0))
    {
        *value = KMIP_ATTR_APPLICATION_SPECIFIC_INFORMATION;
    }
    else if((n.size == 17) && (strncmp(n.value, "Unique Identifier", 17) == 0))
    {
        *value = KMIP_ATTR_UNIQUE_IDENTIFIER;
    }
    else if((n.size == 4) && (strncmp(n.value, "Name", 4) == 0))
    {
        *value = KMIP_ATTR_NAME;
    }
    else if((n.size == 11) && (strncmp(n.value, "Object Type", 11) == 0))
    {
        *value = KMIP_ATTR_OBJECT_TYPE;
    }
    else if((n.size == 23) && (strncmp(n.value, "Cryptographic Algorithm", 23) == 0))
    {
        *value = KMIP_ATTR_CRYPTOGRAPHIC_ALGORITHM;
    }
    else if((n.size == 20) && (strncmp(n.value, "Cryptographic Length", 20) == 0))
    {
        *value = KMIP_ATTR_CRYPTOGRAPHIC_LENGTH;
    }
    else if((n.size == 21) && (strncmp(n.value, "Operation Policy Name", 21) == 0))
    {
        *value = KMIP_ATTR_OPERATION_POLICY_NAME;
    }
    else if((n.size == 24) && (strncmp(n.value, "Cryptographic Usage Mask", 24) == 0))
    {
        *value = KMIP_ATTR_CRYPTOGRAPHIC_USAGE_MASK;
    }
    else if((n.size == 5) && (strncmp(n.value, "State", 5) == 0))
    {
        *value = KMIP_ATTR_STATE;
    }
    else if((n.size == 12) && (strncmp(n.value, "Object Group", 12) == 0))
    {
        *value = KMIP_ATTR_OBJECT_GROUP;
    }
    else if((n.size == 15) && (strncmp(n.value, "Activation Date", 15) == 0))
    {
        *value = KMIP_ATTR_ACTIVATION_DATE;
    }
    else if((n.size == 17) && (strncmp(n.value, "Deactivation Date", 17) == 0))
    {
        *value = KMIP_ATTR_DEACTIVATION_DATE;
    }
    else if((18 == n.size) && (strncmp(n.value, "Process Start Date", 18) == 0))
    {
        *value = KMIP_ATTR_PROCESS_START_DATE;
    }
    else if((17 == n.size) && (strncmp(n.value, "Protect Stop Date", 17) == 0))
    {
        *value = KMIP_ATTR_PROTECT_STOP_DATE;
    }
    else if((24 == n.size) && (strncmp(n.value, "Cryptographic Parameters", 24) == 0))
    {
        *value = KMIP_ATTR_CRYPTOGRAPHIC_PARAMETERS;
    }
    /* TODO (ph) Add all remaining attributes here. */
    else
    {
        kmip_push_error_frame(ctx, __func__, __LINE__);
        kmip_free_text_string(ctx, &n);
        return(KMIP_ERROR_ATTR_UNSUPPORTED);
    }
    
    kmip_free_text_string(ctx, &n);
    return(KMIP_OK);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl $0x0, -0x1c(%rbp)
movl $0x42000a, -0x20(%rbp)  # imm = 0x42000A
leaq -0x30(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x64e0
movq -0x10(%rbp), %rdi
movl -0x20(%rbp), %esi
leaq -0x30(%rbp), %rdx
callq 0x65b0
movl %eax, -0x1c(%rbp)
cmpl $0x0, -0x1c(%rbp)
je 0x17a67
movq -0x10(%rbp), %rdi
leaq 0xd977(%rip), %rsi      # 0x253c9
movl $0x2232, %edx           # imm = 0x2232
callq 0x6f20
movl -0x1c(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x17d9a
jmp 0x17a69
cmpq $0x20, -0x28(%rbp)
jne 0x17a99
movq -0x30(%rbp), %rdi
leaq 0xd24f(%rip), %rsi      # 0x24cca
movl $0x20, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17a99
movq -0x18(%rbp), %rax
movl $0x8, (%rax)
jmp 0x17d86
cmpq $0x11, -0x28(%rbp)
jne 0x17ac9
movq -0x30(%rbp), %rdi
leaq 0xd19f(%rip), %rsi      # 0x24c4a
movl $0x11, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17ac9
movq -0x18(%rbp), %rax
movl $0x0, (%rax)
jmp 0x17d84
cmpq $0x4, -0x28(%rbp)
jne 0x17af9
movq -0x30(%rbp), %rdi
leaq 0xd1cb(%rip), %rsi      # 0x24ca6
movl $0x4, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17af9
movq -0x18(%rbp), %rax
movl $0x1, (%rax)
jmp 0x17d82
cmpq $0xb, -0x28(%rbp)
jne 0x17b29
movq -0x30(%rbp), %rdi
leaq 0xd151(%rip), %rsi      # 0x24c5c
movl $0xb, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17b29
movq -0x18(%rbp), %rax
movl $0x2, (%rax)
jmp 0x17d80
cmpq $0x17, -0x28(%rbp)
jne 0x17b59
movq -0x30(%rbp), %rdi
leaq 0xd12d(%rip), %rsi      # 0x24c68
movl $0x17, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17b59
movq -0x18(%rbp), %rax
movl $0x3, (%rax)
jmp 0x17d7e
cmpq $0x14, -0x28(%rbp)
jne 0x17b89
movq -0x30(%rbp), %rdi
leaq 0xd115(%rip), %rsi      # 0x24c80
movl $0x14, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17b89
movq -0x18(%rbp), %rax
movl $0x4, (%rax)
jmp 0x17d7c
cmpq $0x15, -0x28(%rbp)
jne 0x17bb9
movq -0x30(%rbp), %rdi
leaq 0xd0fa(%rip), %rsi      # 0x24c95
movl $0x15, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17bb9
movq -0x18(%rbp), %rax
movl $0x5, (%rax)
jmp 0x17d7a
cmpq $0x18, -0x28(%rbp)
jne 0x17be9
movq -0x30(%rbp), %rdi
leaq 0xd0e0(%rip), %rsi      # 0x24cab
movl $0x18, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17be9
movq -0x18(%rbp), %rax
movl $0x6, (%rax)
jmp 0x17d78
cmpq $0x5, -0x28(%rbp)
jne 0x17c19
movq -0x30(%rbp), %rdi
leaq 0xd0c9(%rip), %rsi      # 0x24cc4
movl $0x5, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17c19
movq -0x18(%rbp), %rax
movl $0x7, (%rax)
jmp 0x17d76
cmpq $0xc, -0x28(%rbp)
jne 0x17c49
movq -0x30(%rbp), %rdi
leaq 0xd0c0(%rip), %rsi      # 0x24ceb
movl $0xc, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17c49
movq -0x18(%rbp), %rax
movl $0x9, (%rax)
jmp 0x17d74
cmpq $0xf, -0x28(%rbp)
jne 0x17c79
movq -0x30(%rbp), %rdi
leaq 0xd09d(%rip), %rsi      # 0x24cf8
movl $0xf, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17c79
movq -0x18(%rbp), %rax
movl $0xa, (%rax)
jmp 0x17d72
cmpq $0x11, -0x28(%rbp)
jne 0x17ca9
movq -0x30(%rbp), %rdi
leaq 0xd07d(%rip), %rsi      # 0x24d08
movl $0x11, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17ca9
movq -0x18(%rbp), %rax
movl $0xb, (%rax)
jmp 0x17d70
movl $0x12, %eax
cmpq -0x28(%rbp), %rax
jne 0x17cdd
movq -0x30(%rbp), %rdi
leaq 0xd05b(%rip), %rsi      # 0x24d1a
movl $0x12, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17cdd
movq -0x18(%rbp), %rax
movl $0xc, (%rax)
jmp 0x17d6e
movl $0x11, %eax
cmpq -0x28(%rbp), %rax
jne 0x17d0e
movq -0x30(%rbp), %rdi
leaq 0xd03a(%rip), %rsi      # 0x24d2d
movl $0x11, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17d0e
movq -0x18(%rbp), %rax
movl $0xd, (%rax)
jmp 0x17d6c
movl $0x18, %eax
cmpq -0x28(%rbp), %rax
jne 0x17d3f
movq -0x30(%rbp), %rdi
leaq 0xd01b(%rip), %rsi      # 0x24d3f
movl $0x18, %edx
callq 0x60f0
cmpl $0x0, %eax
jne 0x17d3f
movq -0x18(%rbp), %rax
movl $0xe, (%rax)
jmp 0x17d6a
movq -0x10(%rbp), %rdi
leaq 0xd67f(%rip), %rsi      # 0x253c9
movl $0x2273, %edx           # imm = 0x2273
callq 0x6f20
movq -0x10(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0x6380
movl $0xfffffffd, -0x4(%rbp) # imm = 0xFFFFFFFD
jmp 0x17d9a
jmp 0x17d6c
jmp 0x17d6e
jmp 0x17d70
jmp 0x17d72
jmp 0x17d74
jmp 0x17d76
jmp 0x17d78
jmp 0x17d7a
jmp 0x17d7c
jmp 0x17d7e
jmp 0x17d80
jmp 0x17d82
jmp 0x17d84
jmp 0x17d86
movq -0x10(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0x6380
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)