Function at 0x14005c140
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 - 0x1d0]
sub rsp, 0x2d0
mov rax, qword [0x140346fc0]
xor rax, rsp
mov qword [rbp + 0x1c0], rax
mov r14, r9
mov rdi, r8
mov rsi, rdx
mov qword [rbp + 0x188], rdx
mov qword [rbp + 0x190], r8
xorps xmm0, xmm0
movups xmmword [rbp + 0x198], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1a8], xmm1
mov r8d, 7
lea rdx, str.SELECT
lea rcx, [rbp + 0x198]
call fcn.140025e20
nop
mov rdx, rdi
cmp qword [rdi + 0x18], 7
jbe 0x14005c1c3
mov rdx, qword [rdi]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x14005c1d0
lea rcx, [rbp + 0x198]
call fcn.140048ec0
mov r8d, 6
lea rdx, str._FROM
mov rcx, rax
call fcn.140048ec0
mov rdx, rsi
cmp qword [rsi + 0x18], 7
jbe 0x14005c209
mov rdx, qword [rsi]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], 0
jne 0x14005c210
mov rcx, rax
call fcn.140048ec0
xor r12d, r12d
mov qword [rbp + 0x158], r12
mov qword [rbp + 0x150], r12
mov qword [rbp + 0x160], r12
mov qword [rbp + 0x168], r12
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x170], xmm0
mov qword [rbp + 0x180], rax
mov dword [rbp + 0x1b8], r12d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
jns 0x14005c394
mov rdx, qword [rbp + 0x1b0]
cmp rdx, 7
jbe 0x14005c2b4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x198]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14005c2af
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005cd15
call fcn.140260e60
movdqa xmm0, xmmword [0x1402fcf40]
movdqu xmmword [rbp + 0x1a8], xmm0
mov word [rbp + 0x198], r12w
mov rdx, qword [rsi + 0x18]
cmp rdx, 7
jbe 0x14005c30b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsi]
cmp rdx, 0x1000
jb 0x14005c306
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14005cd31
mov rcx, r8
call fcn.140260e60
mov qword [rsi + 0x10], r12
mov qword [rsi + 0x18], 7
mov word [rsi], r12w
mov rdx, qword [rdi + 0x18]
cmp rdx, 7
jbe 0x14005c35a
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
mov rcx, qword [rdi]
jb 0x14005c355
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14005ccd8
mov rcx, r8
call fcn.140260e60
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], 7
mov word [rdi], r12w
mov rcx, qword [rbp + 0x1c0]
xor rcx, rsp
call fcn.140260e40
mov rbx, qword [rsp + 0x310]
add rsp, 0x2d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov qword [rsp + 0x40], r12
mov dword [rsp + 0x38], r12d
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], r12d
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 - 1]
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeSecurity]
test eax, eax
jns 0x14005c3d1
call qword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x14005c26e
lea rax, [rbp + 0x158]
mov qword [rsp + 0x20], rax
lea r9, [0x1402e6dd8]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1402e6de8]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x14005c406
call qword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x14005c26e
mov rax, qword [rbp + 0x158]
mov rcx, qword [rax]
mov r15, qword [rcx + 0x18]
mov ecx, 0x18
call fcn.140260f98
mov rbx, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x14005c45d
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r12
mov dword [rbx + 0x10], 1
lea rcx, str.ROOTCIMV2
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
je 0x14005ccde
jmp 0x14005c460
mov rbx, r12
mov qword [rbp + 0x30], rbx
test rbx, rbx
je 0x14005cd1b
lea rax, [rbp + 0x150]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbx]
mov rcx, qword [rbp + 0x158]
call r15
mov r15d, eax
mov ecx, 0xffffffff
lock xadd dword [rbx + 0x10], ecx
cmp ecx, 1
jne 0x14005c4e2
mov rcx, qword [rbx]
test rcx, rcx
je 0x14005c4c3
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r12
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14005c4d5
call fcn.140260e60
mov qword [rbx + 8], r12
mov edx, 0x18
mov rcx, rbx
call fcn.140260e60
test r15d, r15d
jns 0x14005c4ff
mov rcx, qword [rbp + 0x158]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
call qword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x14005c26e
mov dword [rsp + 0x38], r12d
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0xa]
mov rcx, qword [rbp + 0x150]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
jns 0x14005c543
mov rcx, qword [rbp + 0x150]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
jmp 0x14005c4e7
mov rax, qword [rbp + 0x150]
mov rcx, qword [rax]
mov r13, qword [rcx + 0xa0]
lea r15, [rbp + 0x198]
cmp qword [rbp + 0x1b0], 7
cmova r15, qword [rbp + 0x198]
mov ecx, 0x18
call fcn.140260f98
mov rbx, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x14005c5b5
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r12
mov dword [rbx + 0x10], 1
mov rcx, r15
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x14005c5b8
test r15, r15
jne 0x14005cce9
jmp 0x14005c5b8
mov rbx, r12
mov qword [rbp + 0x38], rbx
test rbx, rbx
je 0x14005cd1b
mov r12, qword [rbx]
mov ecx, 0x18
call fcn.140260f98
mov r15, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x14005c613
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r15], xmm0
mov qword [r15 + 0x10], rax
mov qword [r15 + 8], rax
mov dword [r15 + 0x10], 1
lea rcx, [0x1402fcb18]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [r15], rax
test rax, rax
je 0x14005ccf4
jmp 0x14005c616
xor r15d, r15d
mov qword [rbp + 0x40], r15
test r15, r15
je 0x14005cd26
lea rax, [rbp + 0x160]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
mov r9d, 0x30
mov r8, r12
mov rdx, qword [r15]
mov rcx, qword [rbp + 0x150]
call r13
mov r12d, eax
mov ecx, 0xffffffff
lock xadd dword [r15 + 0x10], ecx
cmp ecx, 1
jne 0x14005c69a
mov rcx, qword [r15]
test rcx, rcx
je 0x14005c676
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [r15], 0
mov rcx, qword [r15 + 8]
test rcx, rcx
je 0x14005c68c
call fcn.140260e60
mov qword [r15 + 8], 0
mov edx, 0x18
mov rcx, r15
call fcn.140260e60
nop
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x14005c6e1
mov rcx, qword [rbx]
test rcx, rcx
je 0x14005c6be
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], 0
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14005c6d4
call fcn.140260e60
mov qword [rbx + 8], 0
mov edx, 0x18
mov rcx, rbx
call fcn.140260e60
test r12d, r12d
jns 0x14005c80b
mov rcx, qword [rbp + 0x150]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp + 0x158]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
mov rdx, qword [rbp + 0x1b0]
cmp rdx, 7
jbe 0x14005c751
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x198]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005c74c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005cd15
call fcn.140260e60
xor ebx, ebx
movdqa xmm0, xmmword [0x1402fcf40]
mov word [rbp + 0x198], bx
movdqu xmmword [rbp + 0x1a8], xmm0
mov rdx, qword [rsi + 0x18]
cmp rdx, 7
jbe 0x14005c7a9
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
mov rcx, qword [rsi]
jb 0x14005c7a4
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14005cd31
mov rcx, r8
call fcn.140260e60
mov word [rsi], bx
mov qword [rsi + 0x18], 7
mov qword [rsi + 0x10], rbx
mov rdx, qword [rdi + 0x18]
cmp rdx, 7
jbe 0x14005c7f7
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
mov rcx, qword [rdi]
jb 0x14005c7f2
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14005ccd8
mov rcx, r8
call fcn.140260e60
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x18], 7
mov word [rdi], bx
jmp 0x14005c36a
mov rcx, qword [rbp + 0x160]
test rcx, rcx
je 0x14005cc4a
xor r12d, r12d
nop
mov rax, qword [rcx]
lea rdx, [rbp + 0x1b8]
mov qword [rsp + 0x20], rdx
lea r9, [rbp + 0x168]
mov edx, 0xffffffff
lea r8d, [rdx + 2]
call qword [rax + 0x20]
cmp dword [rbp + 0x1b8], 0
je 0x14005cc4a
mov rcx, qword [rbp + 0x168]
mov rax, qword [rcx]
mov rdx, rdi
cmp qword [rdi + 0x18], 7
jbe 0x14005c866
mov rdx, qword [rdi]
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r12
lea r9, [rbp + 0x170]
xor r8d, r8d
call qword [rax + 0x20]
lea rdx, [0x14034ca98]
lea rcx, [0x14034d648]
call fcn.140262d18
test eax, eax
je 0x14005cbcc
lea rdx, [0x14034b858]
lea rcx, [0x14034d648]
call fcn.140262d18
test eax, eax
je 0x14005cbcc
lea rdx, [0x14034d648]
lea rcx, [0x14034d648]
call fcn.140262d18
test eax, eax
jne 0x14005c910
cmp word [rbp + 0x178], ax
setne byte [rsp + 0x50]
mov rax, qword [r14]
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], r12
mov r8, qword [r14 + 0x18]
lea rdx, [rbp + 0x60]
lea rcx, [rbp - 0x50]
call fcn.140053f80
movaps xmm0, xmmword [rbp + 0x60]
movdqa xmmword [rbp + 0x70], xmm0
lea rax, [rsp + 0x50]
lea r8, [rbp + 0x70]
lea rdx, [rbp + 0xe0]
jmp 0x14005cc0d
lea rdx, [0x14034b9e8]
lea rcx, [0x14034d648]
call fcn.140262d18
test eax, eax
jne 0x14005c97b
cmp dword [rbp + 0x178], eax
setne byte [rsp + 0x51]
mov rax, qword [r14]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], r12
mov r8, qword [r14 + 0x18]
lea rdx, [rbp + 0x80]
lea rcx, [rsp + 0x60]
call fcn.140053f80
movaps xmm0, xmmword [rbp + 0x80]
movdqa xmmword [rbp + 0x90], xmm0
lea rax, [rsp + 0x51]
lea r8, [rbp + 0x90]
lea rdx, [rbp + 0xf0]
jmp 0x14005cc0d
lea rdx, [0x14034cf88]
lea rcx, [0x14034d648]
call fcn.140262d18
test eax, eax
jne 0x14005c9e7
cmp word [rbp + 0x178], ax
setne byte [rsp + 0x52]
mov rax, qword [r14]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], r12
mov r8, qword [r14 + 0x18]
lea rdx, [rbp + 0xa0]
lea rcx, [rsp + 0x70]
call fcn.140053f80
movaps xmm0, xmmword [rbp + 0xa0]
movdqa xmmword [rbp + 0xb0], xmm0
lea rax, [rsp + 0x52]
lea r8, [rbp + 0xb0]
lea rdx, [rbp + 0x100]
jmp 0x14005cc0d
lea rdx, [0x14034cc08]
lea rcx, [0x14034d648]
call fcn.140262d18
test eax, eax
jne 0x14005ca51
cmp qword [rbp + 0x178], 0
setne byte [rsp + 0x53]
mov rax, qword [r14]
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], r12
mov r8, qword [r14 + 0x18]
lea rdx, [rbp + 0xc0]
lea rcx, [rbp - 0x80]
call fcn.140053f80
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xd0], xmm0
lea rax, [rsp + 0x53]
lea r8, [rbp + 0xd0]
lea rdx, [rbp + 0x110]
jmp 0x14005cc0d
lea rdx, [0x14034b818]
lea rcx, [0x14034d648]
call fcn.140262d18
test eax, eax
jne 0x14005caaf
cmp qword [rbp + 0x178], 0
setne byte [rsp + 0x54]
mov rax, qword [r14]
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], r12
mov r8, qword [r14 + 0x18]
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x70]
call fcn.140053f80
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x20], xmm0
lea rax, [rsp + 0x54]
lea r8, [rbp - 0x20]
lea rdx, [rbp + 0x120]
jmp 0x14005cc0d
mov r15, qword [rbp + 0x178]
mov ecx, 0x18
call fcn.140260f98
mov rbx, rax
mov qword [rbp + 0x48], rax
test rax, rax
je 0x14005caff
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r12
mov dword [rbx + 0x10], 1
mov rcx, r15
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x14005cb02
test r15, r15
jne 0x14005ccff
jmp 0x14005cb02
mov rbx, r12
mov qword [rbp + 0x50], rbx
test rbx, rbx
je 0x14005cd1b
mov rcx, qword [rbx]
test rcx, rcx
je 0x14005cb33
call qword [sym.imp.OLEAUT32.dll_SysAllocStringByteLen]
mov edx, eax
mov rcx, qword [rbx]
call qword [sym.imp.OLEAUT32.dll_DllRegisterServer]
test rax, rax
je 0x14005cd0a
jmp 0x14005cb36
mov rax, r12
test rax, rax
setne byte [rsp + 0x55]
mov rax, qword [r14]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], r12
mov r8, qword [r14 + 0x18]
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x60]
call fcn.140053f80
movaps xmm0, xmmword [rbp - 0x10]
movdqa xmmword [rbp], xmm0
lea rax, [rsp + 0x55]
mov qword [rsp + 0x20], rax
mov r9d, 1
lea r8, [rbp]
lea rdx, [rbp + 0x130]
mov rcx, r14
call fcn.140053ff0
nop
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x14005cc20
mov rcx, qword [rbx]
test rcx, rcx
je 0x14005cbab
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r12
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14005cbbd
call fcn.140260e60
mov qword [rbx + 8], r12
mov edx, 0x18
mov rcx, rbx
call fcn.140260e60
jmp 0x14005cc20
cmp dword [rbp + 0x178], 0
setne byte [rsp + 0x56]
mov rax, qword [r14]
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], r12
mov r8, qword [r14 + 0x18]
lea rdx, [rbp + 0x10]
lea rcx, [rbp - 0x40]
call fcn.140053f80
movaps xmm0, xmmword [rbp + 0x10]
movdqa xmmword [rbp + 0x20], xmm0
lea rax, [rsp + 0x56]
lea r8, [rbp + 0x20]
lea rdx, [rbp + 0x140]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov rcx, r14
call fcn.140053ff0
lea rcx, [rbp + 0x170]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rcx, qword [rbp + 0x168]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp + 0x160]
test rcx, rcx
jne 0x14005c820
cmp qword [r14 + 0x18], 0
jne 0x14005cc60
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, r14
call fcn.14006beb0
mov rcx, qword [rbp + 0x150]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp + 0x158]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp + 0x160]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
mov rdx, qword [rbp + 0x1b0]
cmp rdx, 7
jbe 0x14005c751
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x198]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005c74c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005cd15
jmp 0x14005c74c
call fcn.14027d5c0
nop
mov ecx, 0x8007000e
call fcn.1402608b0
nop
mov ecx, 0x8007000e
call fcn.1402608b0
nop
mov ecx, 0x8007000e
call fcn.1402608b0
nop
mov ecx, 0x8007000e
call fcn.1402608b0
nop
mov ecx, 0x8007000e
call fcn.1402608b0
nop
call fcn.14027d5c0
nop
mov ecx, 0x8007000e
call fcn.1402608b0
nop
mov ecx, 0x8007000e
call fcn.1402608b0
nop
call fcn.14027d5c0
int3