// File: /workspace/github_c_makefile_star2_O3/Carton32[P]quectel-CM/mbim-cm.c
// Function: requestQueryDataCall
static int requestQueryDataCall(UCHAR  *pConnectionStatus, int curIpFamily) {
    int retval;

    (void)curIpFamily;

    *pConnectionStatus = QWDS_PKT_DATA_DISCONNECTED;

    retval = mbim_query_connect(mbim_sessionID);
    if (retval)
        goto exit;

    switch(ActivationState) {
        case MBIMActivationStateUnknown: *pConnectionStatus = QWDS_PKT_DATA_UNKNOW; break;
        case MBIMActivationStateActivated: *pConnectionStatus = QWDS_PKT_DATA_CONNECTED; break;
        case MBIMActivationStateActivating: *pConnectionStatus = QWDS_PKT_DATA_DISCONNECTED; break;
        case MBIMActivationStateDeactivated: *pConnectionStatus = QWDS_PKT_DATA_DISCONNECTED; break;
        case MBIMActivationStateDeactivating: *pConnectionStatus = QWDS_PKT_DATA_DISCONNECTED; break;
        default: *pConnectionStatus = QWDS_PKT_DATA_DISCONNECTED; break;
    }

exit:
    return retval;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x58, %rsp
movq %rdi, %rbx
movb $0x1, (%rdi)
movl 0x18a5b(%rip), %ebp     # 0x2bf14
movq $0x0, 0x10(%rsp)
cmpl $0x1, 0x18a47(%rip)     # 0x2bf10
jne 0x134d4
cmpl $0x0, 0x1885e(%rip)     # 0x2bd30
je 0x13533
movq 0x16ae5(%rip), %rax     # 0x29fc0
movq (%rax), %r14
callq 0xea3b
leaq 0xf02d(%rip), %rsi      # 0x22517
leaq 0xf03d(%rip), %rcx      # 0x2252e
movq %r14, %rdi
movq %rax, %rdx
movl %ebp, %r8d
xorl %eax, %eax
callq 0x52c0
leaq 0x177a0(%rip), %rax     # 0x2aca8
movq (%rax), %r14
testq %r14, %r14
je 0x13533
callq 0xea3b
leaq 0xeffb(%rip), %rsi      # 0x22517
leaq 0xf00b(%rip), %rcx      # 0x2252e
movq %r14, %rdi
movq %rax, %rdx
movl %ebp, %r8d
xorl %eax, %eax
callq 0x52c0
leaq 0x1c(%rsp), %rdx
movl %ebp, (%rdx)
xorl %r12d, %r12d
movl $0xc, %edi
xorl %esi, %esi
movl $0x3c, %ecx
callq 0x10a7b
movq %rax, %r14
leaq 0x10(%rsp), %r15
movq %rax, %rdi
movq %r15, %rsi
movl $0x7530, %edx           # imm = 0x7530
callq 0x10c38
movl %eax, %ebp
movq (%r15), %rdi
testq %rdi, %rdi
je 0x135d3
movl $0x7fffffff, %eax       # imm = 0x7FFFFFFF
addl (%rdi), %eax
cmpl $0x3, %eax
ja 0x1358d
movl %eax, %eax
leaq 0xf2ab(%rip), %rcx      # 0x22830
movq (%rcx,%rax,8), %rax
movl (%rdi,%rax), %r12d
testl %ebp, %ebp
sete %r15b
movl %ebp, %eax
orl %r12d, %eax
jne 0x135e4
cmpl $0x0, 0x2c(%rdi)
je 0x135ae
movl 0x34(%rdi), %eax
movl %eax, 0x18967(%rip)     # 0x2bf10
callq 0x15a9f
testq %r14, %r14
je 0x135bb
movq %r14, %rdi
callq 0x5040
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x136a6
callq 0x5040
jmp 0x136a6
testl %ebp, %ebp
sete %r15b
movl $0x22b8, %r13d          # imm = 0x22B8
xorl %r12d, %r12d
jmp 0x13603
xorl %esi, %esi
cmpl $0x0, 0x18743(%rip)     # 0x2bd30
sete %sil
callq 0x10dbe
testl %r12d, %r12d
movl $0x22b8, %r13d          # imm = 0x22B8
cmovnel %r12d, %r13d
testq %r14, %r14
je 0x13610
movq %r14, %rdi
callq 0x5040
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x13628
callq 0x5040
movq $0x0, 0x10(%rsp)
movq 0x16991(%rip), %rax     # 0x29fc0
movq (%rax), %r14
callq 0xea3b
movl %r12d, (%rsp)
leaq 0xdd43(%rip), %rsi      # 0x21385
leaq 0xeee5(%rip), %rcx      # 0x2252e
movq %r14, %rdi
movq %rax, %rdx
movl $0x6c2, %r8d            # imm = 0x6C2
movl %ebp, %r9d
xorl %eax, %eax
callq 0x52c0
leaq 0x17642(%rip), %rax     # 0x2aca8
movq (%rax), %r14
testq %r14, %r14
je 0x1369b
callq 0xea3b
movl %r12d, (%rsp)
leaq 0xdd07(%rip), %rsi      # 0x21385
leaq 0xeea9(%rip), %rcx      # 0x2252e
movq %r14, %rdi
movq %rax, %rdx
movl $0x6c2, %r8d            # imm = 0x6C2
movl %ebp, %r9d
xorl %eax, %eax
callq 0x52c0
testb %r15b, %r15b
cmovnel %r13d, %ebp
testl %ebp, %ebp
jne 0x136cf
movl 0x18864(%rip), %eax     # 0x2bf10
leal (,%rax,8), %ecx
movabsq $0x101010200, %rdx      # imm = 0x101010200
shrq %cl, %rdx
cmpl $0x5, %eax
movl $0x1, %eax
cmovbl %edx, %eax
movb %al, (%rbx)
xorl %ebp, %ebp
movl %ebp, %eax
addq $0x58, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq