Function at 0x140004f30
Capabilities:
Connect to wmi namespace via wbemlocator
Reference wmi statements

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0x100
mov rax, qword [0x140021040]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov rdi, rcx
mov qword [rbp - 0x59], rcx
xor r15d, r15d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
js 0x140004faf
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
mov edx, 0xffffffff
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeSecurity]
test eax, eax
jns 0x140004fc9
call qword [sym.imp.ole32.dll_CoUninitialize]
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], recv
mov byte [rdi], r15b
jmp 0x1400057aa
mov qword [rbp - 0x41], r15
lea rax, [rbp - 0x41]
mov qword [rsp + 0x20], rax
lea r9, [0x14001b6e8]
xor edx, edx
mov r8d, 1
lea rcx, [0x14001b6f8]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x140004fa9
mov qword [rbp - 0x49], r15
mov ecx, 0x18
call fcn.140018a48
mov rbx, rax
mov qword [rbp - 0x59], rax
test rax, rax
je 0x140005042
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r15
mov dword [rbx + 0x10], 1
lea rcx, str.ROOTCIMV2
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
je 0x1400057e1
jmp 0x140005045
mov rbx, r15
mov qword [rbp - 0x59], rbx
test rbx, rbx
je 0x140005802
mov rcx, qword [rbp - 0x41]
mov rax, qword [rcx]
lea rdx, [rbp - 0x49]
mov qword [rsp + 0x40], rdx
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 [rbx]
call qword [rax + 0x18]
mov esi, eax
mov ecx, 0xffffffff
lock xadd dword [rbx + 0x10], ecx
cmp ecx, 1
jne 0x1400050c3
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400050a4
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r15
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1400050b6
call fcn.1400187a0
mov qword [rbx + 8], r15
mov edx, 0x18
mov rcx, rbx
call fcn.1400187a0
test esi, esi
js 0x140005104
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
mov edx, 0xa
mov rcx, qword [rbp - 0x49]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
jns 0x14000512e
mov rcx, qword [rbp - 0x49]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 0x41]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
call qword [sym.imp.ole32.dll_CoUninitialize]
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], recv
mov byte [rdi], 0
jmp 0x1400057aa
xorps xmm0, xmm0
movups xmmword [rbp + 0x17], xmm0
movdqa xmm1, xmmword [0x14001c8c0]
movdqu xmmword [rbp + 0x27], xmm1
mov byte [rbp + 0x17], 0
mov qword [rbp - 0x51], r15
mov ecx, 0x18
call fcn.140018a48
mov rbx, rax
mov qword [rbp - 0x59], rax
test rax, rax
je 0x140005188
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r15
mov dword [rbx + 0x10], 1
lea rcx, str.SELECT__FROM_Win32_Processor
call fcn.1400197e0
mov qword [rbx], rax
jmp 0x14000518b
mov rbx, r15
mov qword [rbp - 0x59], rbx
test rbx, rbx
je 0x14000580d
mov ecx, 0x18
call fcn.140018a48
mov rsi, rax
mov qword [rbp - 0x31], rax
test rax, rax
je 0x1400051d6
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rsi + 8], r15
mov dword [rsi + 0x10], 1
lea rcx, [0x14001b908]
call fcn.1400197e0
mov qword [rsi], rax
jmp 0x1400051d9
mov rsi, r15
mov qword [rbp - 0x31], rsi
test rsi, rsi
je 0x140005818
mov rcx, qword [rbp - 0x49]
mov rax, qword [rcx]
lea rdx, [rbp - 0x51]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r15
mov r9d, 0x30
mov r8, qword [rbx]
mov rdx, qword [rsi]
call qword [rax + 0xa0]
mov r14d, eax
mov ecx, 0xffffffff
lock xadd dword [rsi + 0x10], ecx
cmp ecx, 1
jne 0x140005250
mov rcx, qword [rsi]
test rcx, rcx
je 0x140005230
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rsi], r15
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x140005242
call fcn.1400187a0
mov qword [rsi + 8], r15
mov edx, 0x18
mov rcx, rsi
call fcn.1400187a0
nop
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x14000528f
mov rcx, qword [rbx]
test rcx, rcx
je 0x140005270
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r15
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140005282
call fcn.1400187a0
mov qword [rbx + 8], r15
mov edx, 0x18
mov rcx, rbx
call fcn.1400187a0
test r14d, r14d
js 0x140005403
mov qword [rbp - 0x59], r15
mov dword [rbp - 0x39], r15d
mov rcx, qword [rbp - 0x51]
test rcx, rcx
je 0x1400053fd
nop dword [rax]
mov rax, qword [rcx]
lea rdx, [rbp - 0x39]
mov qword [rsp + 0x20], rdx
lea r9, [rbp - 0x59]
mov edx, 0xffffffff
mov r8d, 1
call qword [rax + 0x20]
cmp dword [rbp - 0x39], 0
je 0x1400053f9
mov rcx, qword [rbp - 0x59]
mov rax, qword [rcx]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
lea r9, [rbp - 0x29]
xor r8d, r8d
lea rdx, str.ProcessorId
call qword [rax + 0x20]
test eax, eax
js 0x1400053e0
mov rsi, qword [rbp - 0x21]
mov ecx, 0x18
call fcn.140018a48
mov rbx, rax
mov qword [rbp - 0x69], rax
test rax, rax
je 0x14000534f
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r15
mov dword [rbx + 0x10], 1
mov rcx, rsi
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x140005352
test rsi, rsi
jne 0x1400057ec
jmp 0x140005352
mov rbx, r15
mov qword [rbp - 0x31], rbx
test rbx, rbx
je 0x140005823
mov rax, qword [rbx + 8]
test rax, rax
jne 0x140005374
mov rcx, qword [rbx]
call fcn.1400196c0
mov qword [rbx + 8], rax
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140005380
mov rdx, rax
lea rcx, [rbp + 0x17]
call fcn.14000ea70
lea rcx, [rbp - 0x29]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x1400053e0
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400053c1
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r15
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1400053d3
call fcn.1400187a0
mov qword [rbx + 8], r15
mov edx, 0x18
mov rcx, rbx
call fcn.1400187a0
mov rcx, qword [rbp - 0x59]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 0x51]
test rcx, rcx
jne 0x1400052b0
jmp 0x1400053fd
mov rcx, qword [rbp - 0x51]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
xorps xmm0, xmm0
movups xmmword [rbp - 9], xmm0
movdqa xmm1, xmmword [0x14001c8c0]
movdqu xmmword [rbp + 7], xmm1
mov byte [rbp - 9], 0
mov qword [rbp - 0x51], r15
mov ecx, 0x18
call fcn.140018a48
mov rbx, rax
mov qword [rbp - 0x69], rax
test rax, rax
je 0x14000545d
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r15
mov dword [rbx + 0x10], 1
lea rcx, str.SELECT__FROM_Win32_BIOS
call fcn.1400197e0
mov qword [rbx], rax
jmp 0x140005460
mov rbx, r15
mov qword [rbp - 0x69], rbx
test rbx, rbx
je 0x14000582e
mov ecx, 0x18
call fcn.140018a48
mov rsi, rax
mov qword [rbp - 0x59], rax
test rax, rax
je 0x1400054ab
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rsi + 8], r15
mov dword [rsi + 0x10], 1
lea rcx, [0x14001b908]
call fcn.1400197e0
mov qword [rsi], rax
jmp 0x1400054ae
mov rsi, r15
mov qword [rbp - 0x59], rsi
test rsi, rsi
je 0x140005839
mov rcx, qword [rbp - 0x49]
mov rax, qword [rcx]
lea rdx, [rbp - 0x51]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r15
mov r9d, 0x30
mov r8, qword [rbx]
mov rdx, qword [rsi]
call qword [rax + 0xa0]
mov r14d, eax
mov ecx, 0xffffffff
lock xadd dword [rsi + 0x10], ecx
cmp ecx, 1
jne 0x140005525
mov rcx, qword [rsi]
test rcx, rcx
je 0x140005505
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rsi], r15
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x140005517
call fcn.1400187a0
mov qword [rsi + 8], r15
mov edx, 0x18
mov rcx, rsi
call fcn.1400187a0
nop
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x140005564
mov rcx, qword [rbx]
test rcx, rcx
je 0x140005545
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r15
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140005557
call fcn.1400187a0
mov qword [rbx + 8], r15
mov edx, 0x18
mov rcx, rbx
call fcn.1400187a0
test r14d, r14d
js 0x1400056e3
mov qword [rbp - 0x59], r15
mov dword [rbp - 0x39], r15d
mov rcx, qword [rbp - 0x51]
test rcx, rcx
je 0x1400056dd
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rcx]
lea rdx, [rbp - 0x39]
mov qword [rsp + 0x20], rdx
lea r9, [rbp - 0x59]
mov edx, 0xffffffff
mov r8d, 1
call qword [rax + 0x20]
cmp dword [rbp - 0x39], 0
je 0x1400056d9
mov rcx, qword [rbp - 0x59]
mov rax, qword [rcx]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
lea r9, [rbp - 0x29]
xor r8d, r8d
lea rdx, str.SerialNumber
call qword [rax + 0x20]
test eax, eax
js 0x1400056c0
mov rsi, qword [rbp - 0x21]
mov ecx, 0x18
call fcn.140018a48
mov rbx, rax
mov qword [rbp - 0x69], rax
test rax, rax
je 0x14000562f
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r15
mov dword [rbx + 0x10], 1
mov rcx, rsi
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x140005632
test rsi, rsi
jne 0x1400057f7
jmp 0x140005632
mov rbx, r15
mov qword [rbp - 0x31], rbx
test rbx, rbx
je 0x1400057d6
mov rax, qword [rbx + 8]
test rax, rax
jne 0x140005654
mov rcx, qword [rbx]
call fcn.1400196c0
mov qword [rbx + 8], rax
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140005660
mov rdx, rax
lea rcx, [rbp - 9]
call fcn.14000ea70
lea rcx, [rbp - 0x29]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x1400056c0
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400056a1
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r15
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1400056b3
call fcn.1400187a0
mov qword [rbx + 8], r15
mov edx, 0x18
mov rcx, rbx
call fcn.1400187a0
mov rcx, qword [rbp - 0x59]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 0x51]
test rcx, rcx
jne 0x140005590
jmp 0x1400056dd
mov rcx, qword [rbp - 0x51]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 0x49]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 0x41]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
call qword [sym.imp.ole32.dll_CoUninitialize]
lea r8, [rbp - 9]
lea rdx, [rbp + 0x17]
lea rcx, [rbp - 0x29]
call fcn.14000f0b0
movups xmm0, xmmword [rbp - 0x29]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbp - 0x19]
movups xmmword [rdi + 0x10], xmm1
mov rdx, qword [rbp + 0xf]
cmp rdx, 0xf
jbe 0x14000575b
inc rdx
mov rcx, qword [rbp - 9]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005756
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140005756
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400187a0
movdqa xmm0, xmmword [0x14001c8c0]
movdqu xmmword [rbp + 7], xmm0
mov byte [rbp - 9], 0
mov rdx, qword [rbp + 0x2f]
cmp rdx, 0xf
jbe 0x1400057aa
inc rdx
mov rcx, qword [rbp + 0x17]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400057a5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400057a5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400187a0
mov rax, rdi
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.140018780
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
mov ecx, 0x8007000e
call fcn.1400196b0
nop
mov ecx, 0x8007000e
call fcn.1400196b0
nop
mov ecx, 0x8007000e
call fcn.1400196b0
nop
mov ecx, 0x8007000e
call fcn.1400196b0
nop
mov ecx, 0x8007000e
call fcn.1400196b0
nop
mov ecx, 0x8007000e
call fcn.1400196b0
nop
mov ecx, 0x8007000e
call fcn.1400196b0
nop
mov ecx, 0x8007000e
call fcn.1400196b0
nop
mov ecx, 0x8007000e
call fcn.1400196b0
nop
mov ecx, 0x8007000e
call fcn.1400196b0
int3