Function at 0x140037120
Capabilities:
Connect to wmi namespace via wbemlocator

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x50
mov rbx, rcx
xor r15d, r15d
mov r12d, 0x80000000
cmp qword [rbx], 0
je 0x140037153
cmp qword [rbx + 8], 0
jne 0x14003735d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
js 0x140037361
movzx eax, byte [rbx + 0x1b]
test al, al
jne 0x1400371b3
mov qword [rsp + 0x40], r15
mov dword [rsp + 0x38], r15d
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 - 1]
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeSecurity]
lea ecx, [rax + r12]
test r12d, ecx
jne 0x1400371af
cmp eax, 0x80010119
jne 0x14003734a
mov byte [rbx + 0x1b], 1
mov qword [rsp + 0x20], rbx
lea r9, [0x140332178]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140332188]
call qword [sym.imp.ole32.dll_CoCreateInstance]
mov edi, eax
test eax, eax
js 0x14003732b
mov r14, qword [rbx]
mov rax, qword [r14]
mov rbp, qword [rax + 0x18]
mov ecx, 0x18
call fcn.140214338
mov rdi, rax
mov qword [rsp + 0x88], rax
test rax, rax
je 0x140037226
mov qword [rax + 8], r15
mov dword [rax + 0x10], 1
lea rcx, str.ROOTCIMV2
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rdi], rax
test rax, rax
je 0x14003738e
jmp 0x140037229
mov rdi, r15
mov qword [rsp + 0x80], rdi
test rdi, rdi
je 0x140037383
lea rsi, [rbx + 8]
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rdi]
mov rcx, r14
call rbp
mov ebp, eax
mov ecx, 0xffffffff
lock xadd dword [rdi + 0x10], ecx
cmp ecx, 1
jne 0x1400372a6
mov rcx, qword [rdi]
test rcx, rcx
je 0x140037287
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rdi], r15
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x140037299
call fcn.140214330
mov qword [rdi + 8], r15
mov edx, 0x18
mov rcx, rdi
call fcn.140214330
mov qword [rsp + 0x80], r15
test ebp, ebp
jns 0x1400372e0
mov rcx, qword [rbx]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbx], r15
call qword [sym.imp.ole32.dll_CoUninitialize]
mov rcx, rbx
call fcn.1400373a0
test al, al
jne 0x140037142
mov byte [rbx + 0x10], 1
mov dword [rbx + 0x14], ebp
jmp 0x140037368
mov dword [rsp + 0x38], r15d
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0xa]
mov rcx, qword [rsi]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
mov edi, eax
test eax, eax
jns 0x140037359
mov rcx, qword [rsi]
mov rdx, qword [rcx]
call qword [rdx + 0x10]
mov qword [rsi], r15
mov rcx, qword [rbx]
mov rdx, qword [rcx]
call qword [rdx + 0x10]
mov qword [rbx], r15
call qword [sym.imp.ole32.dll_CoUninitialize]
mov rcx, rbx
call fcn.1400373a0
test al, al
jne 0x140037142
mov byte [rbx + 0x10], 1
mov dword [rbx + 0x14], edi
jmp 0x140037368
mov byte [rbx + 0x10], 1
mov dword [rbx + 0x14], eax
call qword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x140037368
mov byte [rbx + 0x10], 0
mov al, 1
jmp 0x14003736a
mov byte [rbx + 0x10], 1
mov dword [rbx + 0x14], eax
xor al, al
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
mov ecx, 0x8007000e
call fcn.140215750
nop
mov ecx, 0x8007000e
call fcn.140215750
int3