Function at 0x14003aa30
Capabilities:
Link many functions at runtime

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov qword [rax - 0x48], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov rbp, rdx
mov rsi, rcx
xor r13d, r13d
mov dword [rax + 0x10], r13d
lea r15d, [r13 + 1]
test rdx, rdx
jne 0x14003aaa3
call fcn.140039c50
mov rcx, rax
test rax, rax
je 0x14003adfb
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x14004487d.0]
add rax, 0x18
mov qword [rsp + 0xa8], rax
mov r14d, r15d
mov dword [rsp + 0x98], r15d
mov rbx, qword [rsp + 0xa0]
jmp 0x14003ab0b
call fcn.140039c50
mov rcx, rax
test rax, rax
je 0x14003ae06
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x14004487d.0]
add rax, 0x18
mov qword [rsp + 0xa0], rax
mov rdx, rbp
lea rcx, [rsp + 0xa0]
call fcn.14003b370
test al, al
jne 0x14003aaf2
mov rdx, rbp
lea rcx, [rsp + 0xa0]
call fcn.14003b460
nop
mov r14d, 2
mov dword [rsp + 0x98], r14d
mov rbx, qword [rsp + 0xa0]
mov rax, rbx
movzx ecx, byte [rsi + 8]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], ecx
lea rax, str.CHPProximitySensorNativeWrapper::LoadDllpath_IsLibraryLoaded__d___pDLLPath:__s
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9d, 3
lea r8, [0x1404675c0]
lea edx, [r9 + 0x5d]
lea rcx, str.d:jenkinsworkspacemainrel4_dellconsumermainrel4_dellconsumerplatform_vista_sharedhpproximitysensornativewrapper.cpp
call fcn.140039f30
nop
mov rdi, 0xffffffffffffffff
test r14b, 2
je 0x14003ab88
and r14d, 0xfffffffd
mov dword [rsp + 0x98], r14d
lea rdx, [rbx - 0x18]
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003ab80
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14004487d.0]
mov r14d, dword [rsp + 0x98]
test r14b, 1
je 0x14003abb6
mov rdx, qword [rsp + 0xa8]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003abb6
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14004487d.0]
cmp byte [rsi + 8], 0
jne 0x14003acea
test rbp, rbp
je 0x14003acea
cmp byte [rbp], 0
je 0x14003acea
inc rdi
cmp byte [rdi + rbp], 0
jne 0x14003abd3
test edi, edi
jne 0x14003abee
lea rcx, [rsi + 0x10]
call fcn.14003b060
jmp 0x14003ac98
mov rcx, qword [rsi + 0x10]
mov r12d, dword [rcx - 0x10]
mov r14, rbp
sub r14, rcx
test edi, edi
js 0x14003ade5
sub r15d, dword [rcx - 8]
mov eax, dword [rcx - 0xc]
sub eax, edi
or r15d, eax
jge 0x14003ac21
mov edx, edi
lea rcx, [rsi + 0x10]
call fcn.14003b7a0
mov rcx, qword [rsi + 0x10]
cmp r14, r12
ja 0x14003ac6d
lea rdx, [rcx + r14]
movsxd r14, edi
test edi, edi
je 0x14003ac7f
test rdx, rdx
jne 0x14003ac48
call fcn.1402384dc
mov dword [rax], reloc.WS2_32.dll_shutdown
call fcn.140238370
jmp 0x14003ac7f
movsxd rax, dword [rcx - 0xc]
cmp rax, r14
jae 0x14003ac63
call fcn.1402384dc
mov dword [rax], 0x22
call fcn.140238370
jmp 0x14003ac7f
mov r8, r14
call fcn.140222330
jmp 0x14003ac7f
movsxd r14, edi
movsxd rdx, dword [rcx - 0xc]
mov r9, r14
mov r8, rbp
call fcn.1400397a0
mov rax, qword [rsi + 0x10]
cmp edi, dword [rax - 0xc]
jg 0x14003adf0
mov dword [rax - 0x10], edi
mov rax, qword [rsi + 0x10]
mov byte [r14 + rax], 0
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [rsi + 0x18], rax
mov qword [rsp + 0x30], rax
lea rax, str.CHPProximitySensorNativeWrapper::LoadDllhandle_m_hDLL_0x_08x_
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9d, 3
lea r8, [0x1404675c0]
lea edx, [r9 + 0x67]
lea rcx, str.d:jenkinsworkspacemainrel4_dellconsumermainrel4_dellconsumerplatform_vista_sharedhpproximitysensornativewrapper.cpp
call fcn.140039f30
mov rcx, qword [rsi + 0x18]
test rcx, rcx
jne 0x14003ad04
mov rcx, rsi
call fcn.14003ae20
xor al, al
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rdx, str.Initialize
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x28], rax
lea rdx, str.DestroyHpProximitySensorInstance
mov rcx, qword [rsi + 0x18]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x30], rax
lea rdx, str.SubscribeHpProximitySensorEvent
mov rcx, qword [rsi + 0x18]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x38], rax
lea rdx, str.UnsubscribeHpProximitySensorEvent
mov rcx, qword [rsi + 0x18]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x40], rax
lea rdx, str.OnPowerResume
mov rcx, qword [rsi + 0x18]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x48], rax
cmp qword [rsi + 0x28], 0
je 0x14003ad8e
cmp qword [rsi + 0x30], 0
je 0x14003ad8e
cmp qword [rsi + 0x38], 0
je 0x14003ad8e
cmp qword [rsi + 0x40], 0
je 0x14003ad8e
test rax, rax
je 0x14003ad8e
mov al, 1
jmp 0x14003ad90
xor al, al
mov byte [rsi + 8], al
movzx eax, al
mov dword [rsp + 0x30], eax
lea rax, str.CHPProximitySensorNativeWrapper::LoadDll_SetLibraryLoaded__d_
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9d, 3
lea r8, [0x1404675c0]
lea edx, [r9 + 0x7b]
lea rcx, str.d:jenkinsworkspacemainrel4_dellconsumermainrel4_dellconsumerplatform_vista_sharedhpproximitysensornativewrapper.cpp
call fcn.140039f30
movzx eax, byte [rsi + 8]
test al, al
jne 0x14003acec
mov rcx, rsi
call fcn.14003ae20
movzx eax, byte [rsi + 8]
jmp 0x14003acec
mov ecx, 0x80070057
call fcn.140039950
int3
mov ecx, 0x80070057
call fcn.140039950
int3
mov ecx, 0x80004005
call fcn.140039950
int3
mov ecx, 0x80004005
call fcn.140039950
int3