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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xb0
mov rax, qword [0x14035f240]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rdi, rcx
mov qword [rbp + 7], rcx
xor r13d, r13d
mov edx, reloc.WS2_32.dll_recv
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x140c258ac], eax
jle 0x140012895
lea rcx, [0x140c258ac]
call fcn.1401225a8
cmp dword [0x140c258ac], 0xffffffff
jne 0x140012895
lea rcx, [0x1401259a0]
call fcn.140122884
lea rcx, [0x140c258ac]
call fcn.14012253c
cmp qword [0x140c225f8], r13
je 0x140012910
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r13
mov qword [rdi + 0x18], r13
mov r8d, reloc.WS2_32.dll_sendto
cmp qword [0x140c225f8], r8
cmovb r8, qword [0x140c225f8]
lea rdx, [0x140c225e8]
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rdx, qword [0x140c225e8]
mov rcx, rdi
call fcn.140006860
mov rax, rdi
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.1401224e0
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov qword [rbp - 9], r13
mov qword [rbp - 0x11], r13
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
js 0x140012a7d
lea rax, [rbp - 9]
mov qword [rsp + 0x20], rax
lea r9, [0x140152838]
xor edx, edx
mov r8d, 1
lea rcx, [0x140152848]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x140012a77
mov rax, qword [rbp - 9]
mov rcx, qword [rax]
mov rsi, qword [rcx + 0x18]
mov ecx, Ordinal_27
call fcn.140122620
mov rbx, rax
mov qword [rbp - 0x29], rax
test rax, rax
je 0x1400129aa
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r13
mov dword [rbx + 0x10], 1
lea rcx, str.ROOTCIMV2
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
je 0x140012e02
jmp 0x1400129ad
mov rbx, r13
mov qword [rbp - 0x29], rbx
test rbx, rbx
je 0x140012e18
lea rax, [rbp - 0x11]
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 [rbx]
mov rcx, qword [rbp - 9]
call rsi
mov esi, eax
mov r14, 0xffffffffffffffff
mov ecx, r14d
lock xadd dword [rbx + 0x10], ecx
cmp ecx, 1
jne 0x140012a2c
mov rcx, qword [rbx]
test rcx, rcx
je 0x140012a0d
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r13
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140012a1f
call fcn.1401228a4
mov qword [rbx + 8], r13
mov edx, Ordinal_27
mov rcx, rbx
call fcn.1401228a4
test esi, esi
js 0x140012a6d
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
mov edx, 0xa
mov rcx, qword [rbp - 0x11]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
jns 0x140012a9a
mov rcx, qword [rbp - 0x11]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 9]
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], r13
mov qword [rdi + 0x18], r13
xor r8d, r8d
lea rdx, [0x14033f4c8]
jmp 0x1400128d8
mov qword [rbp - 1], r13
mov rax, qword [rbp - 0x11]
mov rcx, qword [rax]
mov r12, qword [rcx + 0xa0]
mov ecx, Ordinal_27
call fcn.140122620
mov rbx, rax
mov qword [rbp - 0x29], rax
test rax, rax
je 0x140012aea
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r13
mov dword [rbx + 0x10], 1
lea rcx, str.SELECT_SerialNumber_FROM_Win32_BIOS
call fcn.1401221b0
mov qword [rbx], rax
jmp 0x140012aed
mov rbx, r13
mov qword [rbp - 0x29], rbx
test rbx, rbx
je 0x140012e18
mov r15, qword [rbx]
mov ecx, Ordinal_27
call fcn.140122620
mov rsi, rax
mov qword [rbp - 0x21], rax
test rax, rax
je 0x140012b3b
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rsi + 8], r13
mov dword [rsi + 0x10], 1
lea rcx, [0x1403410c0]
call fcn.1401221b0
mov qword [rsi], rax
jmp 0x140012b3e
mov rsi, r13
mov qword [rbp - 0x21], rsi
test rsi, rsi
je 0x140012e23
lea rax, [rbp - 1]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9d, Ordinal_50
mov r8, r15
mov rdx, qword [rsi]
mov rcx, qword [rbp - 0x11]
call r12
mov r15d, eax
mov ecx, r14d
lock xadd dword [rsi + 0x10], ecx
cmp ecx, 1
jne 0x140012bad
mov rcx, qword [rsi]
test rcx, rcx
je 0x140012b8d
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rsi], r13
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x140012b9f
call fcn.1401228a4
mov qword [rsi + 8], r13
mov edx, Ordinal_27
mov rcx, rsi
call fcn.1401228a4
nop
mov eax, r14d
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x140012bea
mov rcx, qword [rbx]
test rcx, rcx
je 0x140012bcb
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r13
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140012bdd
call fcn.1401228a4
mov qword [rbx + 8], r13
mov edx, Ordinal_27
mov rcx, rbx
call fcn.1401228a4
test r15d, r15d
js 0x140012a63
mov qword [rbp + 7], r13
mov dword [rbp + 0x27], r13d
mov rcx, qword [rbp - 1]
test rcx, rcx
je 0x140012c71
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rcx]
lea rdx, [rbp + 0x27]
mov qword [rsp + 0x20], rdx
lea r9, [rbp + 7]
mov r8d, 1
mov edx, r14d
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
cmp eax, 1
je 0x140012c71
mov rcx, qword [rbp + 7]
mov rax, qword [rcx]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r13
lea r9, [rbp + 0xf]
xor r8d, r8d
lea rdx, [0x1403410f0]
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
test eax, eax
js 0x140012c5e
cmp word [rbp + 0xf], 8
je 0x140012c8e
mov rcx, qword [rbp + 7]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 1]
test rcx, rcx
jne 0x140012c10
mov rcx, qword [rbp - 0x11]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 9]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 1]
jmp 0x140012a71
mov rsi, qword [rbp + 0x17]
mov ecx, Ordinal_27
call fcn.140122620
mov rbx, rax
mov qword [rbp - 0x21], rax
test rax, rax
je 0x140012cdb
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r13
mov dword [rbx + 0x10], 1
mov rcx, rsi
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x140012cde
test rsi, rsi
jne 0x140012e0d
jmp 0x140012cde
mov rbx, r13
mov qword [rbp - 0x21], rbx
test rbx, rbx
je 0x140012df7
mov rax, qword [rbx + 8]
test rax, rax
jne 0x140012d00
mov rcx, qword [rbx]
call fcn.140122090
mov qword [rbx + 8], rax
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x140012d03
mov rdx, rax
lea rsi, [0x140c225e8]
mov rcx, rsi
call fcn.140006000
nop
lock xadd dword [rbx + 0x10], r14d
cmp r14d, 1
jne 0x140012d5c
mov rcx, qword [rbx]
test rcx, rcx
je 0x140012d3d
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r13
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140012d4f
call fcn.1401228a4
mov qword [rbx + 8], r13
mov edx, Ordinal_27
mov rcx, rbx
call fcn.1401228a4
lea rcx, [rbp + 0xf]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp qword [0x140c225f8], 8
jne 0x140012dbc
mov rcx, qword [reloc.WS2_32.dll_ntohs]
lea rax, [rcx - 8]
cmp rax, 1
jb 0x140012db4
mov qword [0x140c225f8], 9
mov rbx, rsi
cmp rcx, 0xf
cmova rbx, qword [0x140c225e8]
lea rcx, [rbx + 5]
mov r8d, 5
lea rdx, [rbx + 4]
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + 4], reloc.WLDAP32.dll_Ordinal_45
jmp 0x140012dbc
mov rcx, rsi
call fcn.140024370
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r13
mov qword [rdi + 0x18], r13
mov r8d, reloc.WS2_32.dll_sendto
cmp qword [0x140c225f8], r8
cmovb r8, qword [0x140c225f8]
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rsi, qword [0x140c225e8]
mov rdx, rsi
jmp 0x1400128d8
mov ecx, 0x8007000e
call fcn.140122080
nop
mov ecx, 0x8007000e
call fcn.140122080
nop
mov ecx, 0x8007000e
call fcn.140122080
nop
mov ecx, 0x8007000e
call fcn.140122080
nop
mov ecx, 0x8007000e
call fcn.140122080
int3