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

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xb0
mov rbx, rcx
xor r13d, r13d
mov ecx, reloc.WS2_32.dll_recv
mov rax, qword gs:[0x58]
mov rdx, qword [rax]
mov eax, dword [rcx + rdx]
cmp dword [0x140b1e20c], eax
jle 0x1400449db
lea rcx, [0x140b1e20c]
call fcn.14009f204
cmp dword [0x140b1e20c], 0xffffffff
jne 0x1400449db
lea rcx, [0x1400a4910]
call fcn.14009f4e0
lea rcx, [0x140b1e20c]
call fcn.14009f198
cmp qword [0x140b15c78], r13
je 0x140044a44
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
mov r8d, 0x19
cmp qword [0x140b15c78], r8
cmovb r8, qword [0x140b15c78]
lea rdx, [0x140b15c68]
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rdx, qword [0x140b15c68]
mov rcx, rbx
call fcn.140031a00
mov rax, rbx
mov rbx, qword [rsp + 0xf0]
add rsp, 0xb0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov qword [rbp - 0x39], r13
mov qword [rbp + 0x7f], r13
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
js 0x140044a87
lea rax, [rbp - 0x39]
mov qword [rsp + 0x20], rax
lea r9, [0x1400adf88]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1400adf98]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x140044a9e
call qword [sym.imp.ole32.dll_CoUninitialize]
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], r13b
jmp 0x140044a26
mov rax, qword [rbp - 0x39]
mov rcx, qword [rax]
mov rsi, qword [rcx + 0x18]
mov ecx, 0x18
call fcn.14009f27c
mov rdi, rax
mov qword [rbp + 0x77], rax
test rax, rax
je 0x140044ae5
mov qword [rax + 8], r13
mov dword [rax + 0x10], 1
lea rcx, str.ROOTCIMV2
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rdi], rax
test rax, rax
je 0x140044eb9
jmp 0x140044ae8
mov rdi, r13
mov qword [rbp - 0x19], rdi
test rdi, rdi
je 0x140044ecf
lea rax, [rbp + 0x7f]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rdi]
mov rcx, qword [rbp - 0x39]
call rsi
mov esi, eax
mov r14, 0xffffffffffffffff
mov ecx, r14d
lock xadd dword [rdi + 0x10], ecx
cmp ecx, 1
jne 0x140044b67
mov rcx, qword [rdi]
test rcx, rcx
je 0x140044b48
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rdi], r13
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x140044b5a
call fcn.14009f500
mov qword [rdi + 8], r13
mov edx, 0x18
mov rcx, rdi
call fcn.14009f500
test esi, esi
js 0x140044ba7
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0xa]
mov rcx, qword [rbp + 0x7f]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
jns 0x140044bd1
mov rcx, qword [rbp + 0x7f]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 0x39]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
call qword [sym.imp.ole32.dll_CoUninitialize]
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], 0
jmp 0x140044a26
mov qword [rbp - 0x31], r13
mov rax, qword [rbp + 0x7f]
mov rcx, qword [rax]
mov r12, qword [rcx + 0xa0]
mov ecx, 0x18
call fcn.14009f27c
mov rdi, rax
mov qword [rbp + 0x77], rax
test rax, rax
je 0x140044c15
mov qword [rax + 8], r13
mov dword [rax + 0x10], 1
lea rcx, str.SELECT_UUID_FROM_Win32_ComputerSystemProduct
call fcn.1400a0300
mov qword [rdi], rax
jmp 0x140044c18
mov rdi, r13
mov qword [rbp - 0x11], rdi
test rdi, rdi
je 0x140044ecf
mov r15, qword [rdi]
mov ecx, 0x18
call fcn.14009f27c
mov rsi, rax
mov qword [rbp + 0x77], rax
test rax, rax
je 0x140044c5a
mov qword [rax + 8], r13
mov dword [rax + 0x10], 1
lea rcx, [0x1400bb288]
call fcn.1400a0300
mov qword [rsi], rax
jmp 0x140044c5d
mov rsi, r13
mov qword [rbp - 9], rsi
test rsi, rsi
je 0x140044eda
lea rax, [rbp - 0x31]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9d, 0x30
mov r8, r15
mov rdx, qword [rsi]
mov rcx, qword [rbp + 0x7f]
call r12
mov r15d, eax
mov ecx, r14d
lock xadd dword [rsi + 0x10], ecx
cmp ecx, 1
jne 0x140044ccc
mov rcx, qword [rsi]
test rcx, rcx
je 0x140044cac
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rsi], r13
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x140044cbe
call fcn.14009f500
mov qword [rsi + 8], r13
mov edx, 0x18
mov rcx, rsi
call fcn.14009f500
nop
mov eax, r14d
lock xadd dword [rdi + 0x10], eax
cmp eax, 1
jne 0x140044d09
mov rcx, qword [rdi]
test rcx, rcx
je 0x140044cea
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rdi], r13
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x140044cfc
call fcn.14009f500
mov qword [rdi + 8], r13
mov edx, 0x18
mov rcx, rdi
call fcn.14009f500
test r15d, r15d
js 0x140044b9d
mov qword [rbp - 0x29], r13
mov dword [rbp + 0x6f], r13d
mov rcx, qword [rbp - 0x31]
test rcx, rcx
je 0x140044d8a
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rcx]
lea rdx, [rbp + 0x6f]
mov qword [rsp + 0x20], rdx
lea r9, [rbp - 0x29]
mov r8d, 1
mov edx, r14d
call qword [rax + 0x20]
cmp eax, 1
je 0x140044d8a
mov rcx, qword [rbp - 0x29]
mov rax, qword [rcx]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r13
lea r9, [rbp + 7]
xor r8d, r8d
lea rdx, str.UUID
call qword [rax + 0x20]
test eax, eax
jns 0x140044da7
mov rcx, qword [rbp - 0x29]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 0x31]
test rcx, rcx
jne 0x140044d30
mov rcx, qword [rbp + 0x7f]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 0x39]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 0x31]
jmp 0x140044bab
mov rsi, qword [rbp + 0xf]
mov ecx, 0x18
call fcn.14009f27c
mov rdi, rax
mov qword [rbp + 0x77], rax
test rax, rax
je 0x140044de8
mov qword [rax + 8], r13
mov dword [rax + 0x10], 1
mov rcx, rsi
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rdi], rax
test rax, rax
jne 0x140044deb
test rsi, rsi
jne 0x140044ec4
jmp 0x140044deb
mov rdi, r13
mov qword [rbp - 1], rdi
test rdi, rdi
je 0x140044eae
mov rax, qword [rdi + 8]
test rax, rax
jne 0x140044e0d
mov rcx, qword [rdi]
call fcn.1400a01e0
mov qword [rdi + 8], rax
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x140044e10
mov rdx, rax
lea rsi, [0x140b15c68]
mov rcx, rsi
call fcn.140050690
nop
lock xadd dword [rdi + 0x10], r14d
cmp r14d, 1
jne 0x140044e69
mov rcx, qword [rdi]
test rcx, rcx
je 0x140044e4a
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rdi], r13
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x140044e5c
call fcn.14009f500
mov qword [rdi + 8], r13
mov edx, 0x18
mov rcx, rdi
call fcn.14009f500
lea rcx, [rbp + 7]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
mov r8d, 0x19
cmp qword [0x140b15c78], r8
cmovb r8, qword [0x140b15c78]
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rsi, qword [0x140b15c68]
mov rdx, rsi
jmp 0x140044a1e
mov ecx, 0x8007000e
call fcn.1400a01d0
nop
mov ecx, 0x8007000e
call fcn.1400a01d0
nop
mov ecx, 0x8007000e
call fcn.1400a01d0
nop
mov ecx, 0x8007000e
call fcn.1400a01d0
nop
mov ecx, 0x8007000e
call fcn.1400a01d0
int3