// File: /workspace/github_c_makefile_star2_O0/back1127[P]linkedge-thing-access-websocket_client_sdk/sdk/test/linux/simulated_device.c
// Function: cb_get_property
static int cb_get_property(const char *pk, const char *dn,
                                       leda_device_data_t properties[], 
                                       int properties_count, 
                                       void *usr_data)
{
    int i;
    for (i = 0; i < properties_count; i++) {
        if (strcmp(properties[i].key, PROPERTY_INT32_RW) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%d", get_dev_int32_rw(pk, dn));
            properties[i].type = LEDA_TYPE_INT;
        } else if (strcmp(properties[i].key, PROPERTY_INT32_R) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%d", get_dev_int32_r(pk, dn));
            properties[i].type = LEDA_TYPE_INT;
        } else if (strcmp(properties[i].key, PROPERTY_FLOAT_RW) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%f", get_dev_float_rw(pk, dn));
            properties[i].type = LEDA_TYPE_FLOAT;
        } else if (strcmp(properties[i].key, PROPERTY_FLOAT_R) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%f", get_dev_float_r(pk, dn));
            properties[i].type = LEDA_TYPE_FLOAT;
        } else if (strcmp(properties[i].key, PROPERTY_DOUBLE_RW) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%lf", get_dev_double_rw(pk, dn));
            properties[i].type = LEDA_TYPE_DOUBLE;
        } else if (strcmp(properties[i].key, PROPERTY_DOUBLE_R) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%lf", get_dev_double_r(pk, dn));
            properties[i].type = LEDA_TYPE_DOUBLE;
        } else if (strcmp(properties[i].key, PROPERTY_ENUM_RW) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%d", get_dev_enum_rw(pk, dn));
            properties[i].type = LEDA_TYPE_ENUM;
        } else if (strcmp(properties[i].key, PROPERTY_ENUM_R) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%d", get_dev_enum_r(pk, dn));
            properties[i].type = LEDA_TYPE_ENUM;
        }  else if (strcmp(properties[i].key, PROPERTY_BOOL_RW) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%d", get_dev_bool_rw(pk, dn));
            properties[i].type = LEDA_TYPE_BOOL;
        } else if (strcmp(properties[i].key, PROPERTY_BOOL_R) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%d", get_dev_bool_r(pk, dn));
            properties[i].type = LEDA_TYPE_BOOL;
        } else if (strcmp(properties[i].key, PROPERTY_STRING_RW) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%s", get_dev_string_rw(pk, dn));
            properties[i].type = LEDA_TYPE_TEXT;
        } else if (strcmp(properties[i].key, PROPERTY_STRING_R) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%s", get_dev_string_r(pk, dn));
            properties[i].type = LEDA_TYPE_TEXT;
        }  else if (strcmp(properties[i].key, PROPERTY_DATE_RW) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%s", get_dev_date_rw(pk, dn));
            properties[i].type = LEDA_TYPE_DATE;
        }   else if (strcmp(properties[i].key, PROPERTY_DATE_R) == 0) {
            snprintf(properties[i].value, MAX_PARAM_VALUE_LENGTH, "%s", get_dev_date_r(pk, dn));
            properties[i].type = LEDA_TYPE_DATE;
        } else {
            return LEDA_ERROR_PROPERTY_NOT_EXIST;
        }
    }

    return LE_SUCCESS;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movl %ecx, -0x24(%rbp)
movq %r8, -0x30(%rbp)
movl $0x0, -0x34(%rbp)
movl -0x34(%rbp), %eax
cmpl -0x24(%rbp), %eax
jge 0x3581
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0x1225(%rip), %rsi      # 0x4033
callq 0x11e0
cmpl $0x0, %eax
jne 0x2e75
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0x40(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x13f0
movq -0x40(%rbp), %rdi
movl %eax, %ecx
movl $0x800, %esi            # imm = 0x800
leaq 0x11eb(%rip), %rdx      # 0x403c
movb $0x0, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x0, (%rax)
jmp 0x3571
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0x11e8(%rip), %rsi      # 0x407a
callq 0x11e0
cmpl $0x0, %eax
jne 0x2ef9
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0x48(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x14a0
movq -0x48(%rbp), %rdi
movl %eax, %ecx
movl $0x800, %esi            # imm = 0x800
leaq 0x1167(%rip), %rdx      # 0x403c
movb $0x0, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x0, (%rax)
jmp 0x356f
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0x1135(%rip), %rsi      # 0x404b
callq 0x11e0
cmpl $0x0, %eax
jne 0x2f7f
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0x50(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x14e0
movq -0x50(%rbp), %rdi
cvtss2sd %xmm0, %xmm0
movl $0x800, %esi            # imm = 0x800
leaq 0x10f9(%rip), %rdx      # 0x4054
movb $0x1, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x2, (%rax)
jmp 0x356d
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0x10e6(%rip), %rsi      # 0x4082
callq 0x11e0
cmpl $0x0, %eax
jne 0x3005
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0x58(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x15a0
movq -0x58(%rbp), %rdi
cvtss2sd %xmm0, %xmm0
movl $0x800, %esi            # imm = 0x800
leaq 0x1073(%rip), %rdx      # 0x4054
movb $0x1, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x2, (%rax)
jmp 0x356b
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0x1068(%rip), %rsi      # 0x408a
callq 0x11e0
cmpl $0x0, %eax
jne 0x3087
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0x60(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x15e0
movq -0x60(%rbp), %rdi
movl $0x800, %esi            # imm = 0x800
leaq 0x1031(%rip), %rdx      # 0x4094
movb $0x1, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x8, (%rax)
jmp 0x3569
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0xff4(%rip), %rsi       # 0x4098
callq 0x11e0
cmpl $0x0, %eax
jne 0x3109
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0x68(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x16a0
movq -0x68(%rbp), %rdi
movl $0x800, %esi            # imm = 0x800
leaq 0xfaf(%rip), %rdx       # 0x4094
movb $0x1, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x8, (%rax)
jmp 0x3567
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0xf7b(%rip), %rsi       # 0x40a1
callq 0x11e0
cmpl $0x0, %eax
jne 0x318d
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0x70(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x16e0
movq -0x70(%rbp), %rdi
movl %eax, %ecx
movl $0x800, %esi            # imm = 0x800
leaq 0xed3(%rip), %rdx       # 0x403c
movb $0x0, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x5, (%rax)
jmp 0x3565
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0xeff(%rip), %rsi       # 0x40a9
callq 0x11e0
cmpl $0x0, %eax
jne 0x3211
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0x78(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x1790
movq -0x78(%rbp), %rdi
movl %eax, %ecx
movl $0x800, %esi            # imm = 0x800
leaq 0xe4f(%rip), %rdx       # 0x403c
movb $0x0, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x5, (%rax)
jmp 0x3563
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0xe82(%rip), %rsi       # 0x40b0
callq 0x11e0
cmpl $0x0, %eax
jne 0x3298
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0x80(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x17d0
movq -0x80(%rbp), %rdi
andb $0x1, %al
movzbl %al, %ecx
movl $0x800, %esi            # imm = 0x800
leaq 0xdc8(%rip), %rdx       # 0x403c
movb $0x0, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x1, (%rax)
jmp 0x3561
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0xe03(%rip), %rsi       # 0x40b8
callq 0x11e0
cmpl $0x0, %eax
jne 0x3325
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0x88(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x1880
movq -0x88(%rbp), %rdi
andb $0x1, %al
movzbl %al, %ecx
movl $0x800, %esi            # imm = 0x800
leaq 0xd3b(%rip), %rdx       # 0x403c
movb $0x0, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x1, (%rax)
jmp 0x355f
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0xd21(%rip), %rsi       # 0x4063
callq 0x11e0
cmpl $0x0, %eax
jne 0x33b0
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0x90(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x18c0
movq -0x90(%rbp), %rdi
movq %rax, %rcx
movl $0x800, %esi            # imm = 0x800
leaq 0xc94(%rip), %rdx       # 0x4020
movb $0x0, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x3, (%rax)
jmp 0x355d
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0xcf2(%rip), %rsi       # 0x40bf
callq 0x11e0
cmpl $0x0, %eax
jne 0x343b
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0x98(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x1980
movq -0x98(%rbp), %rdi
movq %rax, %rcx
movl $0x800, %esi            # imm = 0x800
leaq 0xc09(%rip), %rdx       # 0x4020
movb $0x0, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x3, (%rax)
jmp 0x355b
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0xc70(%rip), %rsi       # 0x40c8
callq 0x11e0
cmpl $0x0, %eax
jne 0x34c6
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0xa0(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x1a00
movq -0xa0(%rbp), %rdi
movq %rax, %rcx
movl $0x800, %esi            # imm = 0x800
leaq 0xb7e(%rip), %rdx       # 0x4020
movb $0x0, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x4, (%rax)
jmp 0x3559
movq -0x20(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x844, %rax, %rax      # imm = 0x844
addq %rax, %rdi
addq $0x4, %rdi
leaq 0xbed(%rip), %rsi       # 0x40d0
callq 0x11e0
cmpl $0x0, %eax
jne 0x354e
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
addq $0x44, %rax
movq %rax, -0xa8(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x1ad0
movq -0xa8(%rbp), %rdi
movq %rax, %rcx
movl $0x800, %esi            # imm = 0x800
leaq 0xaf3(%rip), %rdx       # 0x4020
movb $0x0, %al
callq 0x1050
movq -0x20(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq $0x844, %rcx, %rcx      # imm = 0x844
addq %rcx, %rax
movl $0x4, (%rax)
jmp 0x3557
movl $0x1a9ca, -0x4(%rbp)    # imm = 0x1A9CA
jmp 0x3588
jmp 0x3559
jmp 0x355b
jmp 0x355d
jmp 0x355f
jmp 0x3561
jmp 0x3563
jmp 0x3565
jmp 0x3567
jmp 0x3569
jmp 0x356b
jmp 0x356d
jmp 0x356f
jmp 0x3571
jmp 0x3573
movl -0x34(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x34(%rbp)
jmp 0x2de5
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0xb0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)