Function at 0x140007a20
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 - 0x30]
sub rsp, 0x130
mov rax, qword [0x1401dedc0]
xor rax, rsp
mov qword [rbp + 0x20], rax
mov rdi, r9
mov r13, r8
mov qword [rbp - 0x80], rdx
mov qword [rbp - 0x18], rdx
mov qword [rbp - 0x10], r8
mov r15, qword [rbp + 0x90]
xorps xmm0, xmm0
movups xmmword [rbp - 8], xmm0
xor r12d, r12d
mov qword [rbp + 8], r12
mov qword [rbp + 0x10], r12
lea r8d, [r12 + 7]
lea rdx, str.SELECT
lea rcx, [rbp - 8]
call fcn.14000b570
nop
mov r9, r13
cmp qword [r13 + 0x18], 7
jbe 0x140007a99
mov r9, qword [r13]
mov rsi, 0xffffffffffffffff
inc rsi
cmp word [r9 + rsi*2], 0
jne 0x140007aa0
mov r14, qword [rbp + 8]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
sub rax, r14
cmp rsi, rax
ja 0x140007af2
lea rax, [rsi + r14]
mov qword [rbp + 8], rax
lea rbx, [rbp - 8]
cmp rcx, 7
cmova rbx, qword [rbp - 8]
lea rcx, [rbx + r14*2]
lea r8, [rsi + rsi]
mov rdx, r9
call sub.VCRUNTIME140.dll_memmove
lea rax, [r14 + rsi]
mov word [rbx + rax*2], r12w
lea rbx, [rbp - 8]
jmp 0x140007b09
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
lea rcx, [rbp - 8]
call fcn.14000f360
mov rbx, rax
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
mov rax, rdx
sub rax, rcx
cmp rax, 6
jb 0x140007b4e
lea r14, [rcx + 6]
mov qword [rbx + 0x10], r14
mov rsi, rbx
cmp rdx, 7
jbe 0x140007b31
mov rsi, qword [rbx]
lea rcx, [rsi + rcx*2]
mov r8d, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
lea rdx, str._FROM
call sub.VCRUNTIME140.dll_memmove
mov word [rsi + r14*2], r12w
jmp 0x140007b70
mov qword [rsp + 0x20], 6
lea r9, str._FROM
xor r8d, r8d
lea edx, [r8 + 6]
mov rcx, rbx
call fcn.14000f360
mov rbx, rax
mov rax, qword [rbp - 0x80]
mov rdx, rax
cmp qword [rax + 0x18], 7
jbe 0x140007b81
mov rdx, qword [rax]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x140007b90
mov rcx, rbx
call fcn.14003f150
xor r14d, r14d
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], r14
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], rax
mov dword [rbp + 0x18], r14d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
js 0x140007d5e
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x38], r14d
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor r8d, r8d
lea edx, [r14 - 1]
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeSecurity]
test eax, eax
js 0x140007d57
lea rax, [rbp - 0x48]
mov qword [rsp + 0x20], rax
lea r9, [0x1401ac148]
mov r12d, 1
mov r8d, r12d
xor edx, edx
lea rcx, [0x1401ac098]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x140007d57
mov rax, qword [rbp - 0x48]
mov rcx, qword [rax]
mov rsi, qword [rcx + 0x18]
lea ecx, [r14 + 0x18]
call fcn.14014ac08
mov rbx, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x140007c90
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r14
mov dword [rbx + 0x10], r12d
mov rcx, r15
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x140007c93
test r15, r15
jne 0x1400083c1
jmp 0x140007c93
mov rbx, r14
mov qword [rbp - 0x78], rbx
test rbx, rbx
je 0x1400083f8
lea rax, [rbp - 0x50]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbx]
mov rcx, qword [rbp - 0x48]
call rsi
mov esi, eax
mov ecx, 0xffffffff
lock xadd dword [rbx + 0x10], ecx
cmp ecx, 1
jne 0x140007d0d
mov rcx, qword [rbx]
test rcx, rcx
je 0x140007cee
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r14
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140007d00
call fcn.14014b350
mov qword [rbx + 8], r14
mov edx, 0x18
mov rcx, rbx
call fcn.14014ac44
test esi, esi
js 0x140007d4d
mov dword [rsp + 0x38], r14d
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0xa]
mov rcx, qword [rbp - 0x50]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
jns 0x140007da7
mov rcx, qword [rbp - 0x50]
mov rax, qword [rcx]
call qword [rax + select]
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
call qword [rax + select]
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
mov rdx, qword [rbp + 0x10]
cmp rdx, 7
jbe 0x140007f90
mov rcx, qword [rbp - 8]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007d9d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400083af
call fcn.14014ac44
jmp 0x140007f90
mov rax, qword [rbp - 0x50]
mov rcx, qword [rax]
mov r15, qword [rcx + 0xa0]
lea rsi, [rbp - 8]
cmp qword [rbp + 0x10], 7
cmova rsi, qword [rbp - 8]
mov ecx, 0x18
call fcn.14014ac08
mov rbx, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x140007e0a
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r14
mov dword [rbx + 0x10], r12d
mov rcx, rsi
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x140007e0d
test rsi, rsi
jne 0x1400083cc
jmp 0x140007e0d
mov rbx, r14
mov qword [rbp - 0x70], rbx
test rbx, rbx
je 0x1400083f8
mov r14, qword [rbx]
mov ecx, 0x18
call fcn.14014ac08
mov rsi, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x140007e63
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], r12d
lea rcx, [0x14015de08]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rsi], rax
test rax, rax
je 0x1400083d7
jmp 0x140007e65
xor esi, esi
mov qword [rbp - 0x68], rsi
test rsi, rsi
je 0x1400083b6
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
mov r9d, 0x30
mov r8, r14
mov rdx, qword [rsi]
mov rcx, qword [rbp - 0x50]
call r15
mov r14d, eax
mov ecx, 0xffffffff
lock xadd dword [rsi + 0x10], ecx
cmp ecx, 1
jne 0x140007ee2
mov rcx, qword [rsi]
test rcx, rcx
je 0x140007ebe
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rsi], 0
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x140007ed4
call fcn.14014b350
mov qword [rsi + 8], 0
mov edx, 0x18
mov rcx, rsi
call fcn.14014ac44
nop
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x140007f29
mov rcx, qword [rbx]
test rcx, rcx
je 0x140007f06
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], 0
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140007f1c
call fcn.14014b350
mov qword [rbx + 8], 0
mov edx, 0x18
mov rcx, rbx
call fcn.14014ac44
test r14d, r14d
jns 0x140007fda
mov rcx, qword [rbp - 0x50]
mov rax, qword [rcx]
call qword [rax + select]
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
call qword [rax + select]
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
mov rdx, qword [rbp + 0x10]
cmp rdx, 7
jbe 0x140007f8d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007f88
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400083af
call fcn.14014ac44
xor r14d, r14d
mov qword [rbp + 8], r14
mov qword [rbp + 0x10], 7
mov word [rbp - 8], r14w
mov rcx, qword [rbp - 0x80]
call fcn.14003e3c0
nop
mov rcx, r13
call fcn.14003e3c0
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.14014b190
mov rbx, qword [rsp + 0x170]
add rsp, 0x130
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rcx, qword [rbp - 0x40]
test rcx, rcx
je 0x1400082df
xor r14d, r14d
nop word [rax + rax]
mov rax, qword [rcx]
lea rdx, [rbp + 0x18]
mov qword [rsp + 0x20], rdx
lea r9, [rbp - 0x38]
mov r8d, r12d
mov edx, 0xffffffff
call qword [rax + 0x20]
cmp dword [rbp + 0x18], 0
je 0x1400082df
mov rcx, qword [rbp - 0x38]
mov rax, qword [rcx]
mov rdx, r13
cmp qword [r13 + 0x18], 7
jbe 0x14000802a
mov rdx, qword [r13]
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r14
lea r9, [rbp - 0x30]
xor r8d, r8d
call qword [rax + 0x20]
lea rdx, [0x1401df438]
lea rcx, [0x1401df450]
call sub.VCRUNTIME140.dll___std_type_info_compare
test eax, eax
je 0x140008296
lea rdx, [0x1401df450]
lea rcx, [0x1401df450]
call sub.VCRUNTIME140.dll___std_type_info_compare
test eax, eax
je 0x140008296
lea rdx, [0x1401df468]
lea rcx, [0x1401df450]
call sub.VCRUNTIME140.dll___std_type_info_compare
test eax, eax
jne 0x1400080b3
movsx eax, word [rbp - 0x28]
mov dword [rsp + 0x60], eax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x1400080a9
mov dword [rdx], eax
add qword [rdi + 8], 4
jmp 0x1400082be
lea r8, [rsp + 0x60]
jmp 0x1400082b6
lea rdx, [0x1401df480]
lea rcx, [0x1401df450]
call sub.VCRUNTIME140.dll___std_type_info_compare
test eax, eax
jne 0x1400080f2
mov rax, qword [rbp - 0x28]
mov dword [rsp + 0x64], eax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x1400080e8
mov dword [rdx], eax
add qword [rdi + 8], 4
jmp 0x1400082be
lea r8, [rsp + 0x64]
jmp 0x1400082b6
lea rdx, [0x1401df498]
lea rcx, [0x1401df450]
call sub.VCRUNTIME140.dll___std_type_info_compare
test eax, eax
jne 0x140008131
movzx eax, word [rbp - 0x28]
mov dword [rsp + 0x68], eax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x140008127
mov dword [rdx], eax
add qword [rdi + 8], 4
jmp 0x1400082be
lea r8, [rsp + 0x68]
jmp 0x1400082b6
lea rdx, [0x1401df4b0]
lea rcx, [0x1401df450]
call sub.VCRUNTIME140.dll___std_type_info_compare
test eax, eax
jne 0x140008170
mov rax, qword [rbp - 0x28]
mov dword [rsp + 0x6c], eax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x140008166
mov dword [rdx], eax
add qword [rdi + 8], 4
jmp 0x1400082be
lea r8, [rsp + 0x6c]
jmp 0x1400082b6
lea rdx, [0x1401df4c8]
lea rcx, [0x1401df450]
call sub.VCRUNTIME140.dll___std_type_info_compare
test eax, eax
jne 0x1400081af
mov rax, qword [rbp - 0x28]
mov dword [rsp + 0x70], eax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x1400081a5
mov dword [rdx], eax
add qword [rdi + 8], 4
jmp 0x1400082be
lea r8, [rsp + 0x70]
jmp 0x1400082b6
mov rsi, qword [rbp - 0x28]
mov ecx, 0x18
call fcn.14014ac08
mov rbx, rax
mov qword [rbp - 0x60], rax
test rax, rax
je 0x1400081f9
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r14
mov dword [rbx + 0x10], r12d
mov rcx, rsi
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x1400081fc
test rsi, rsi
jne 0x1400083e2
jmp 0x1400081fc
mov rbx, r14
mov qword [rbp - 0x58], rbx
test rbx, rbx
je 0x1400083f8
mov rcx, qword [rbx]
test rcx, rcx
je 0x14000822d
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 0x1400083ed
jmp 0x140008230
mov rax, r14
mov dword [rsp + 0x74], eax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x140008247
mov dword [rdx], eax
add qword [rdi + 8], 4
jmp 0x140008255
lea r8, [rsp + 0x74]
mov rcx, rdi
call fcn.14000c900
nop
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x1400082be
mov rcx, qword [rbx]
test rcx, rcx
je 0x140008275
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r14
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140008287
call fcn.14014b350
mov qword [rbx + 8], r14
mov edx, 0x18
mov rcx, rbx
call fcn.14014ac44
jmp 0x1400082be
mov rax, qword [rbp - 0x28]
mov dword [rsp + 0x78], eax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x1400082b1
mov dword [rdx], eax
add qword [rdi + 8], 4
jmp 0x1400082be
lea r8, [rsp + 0x78]
mov rcx, rdi
call fcn.14000c900
lea rcx, [rbp - 0x30]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rcx, qword [rbp - 0x38]
mov rax, qword [rcx]
call qword [rax + select]
mov rcx, qword [rbp - 0x40]
test rcx, rcx
jne 0x140007ff0
mov rsi, qword [rdi + 8]
mov rdx, qword [rdi]
mov rcx, rsi
sub rcx, rdx
cmp rcx, 4
jae 0x140008347
sar rcx, 2
cmp rcx, 1
jbe 0x140008302
lea rax, [rdx + 4]
jmp 0x140008343
jae 0x140008347
mov rax, qword [rdi + 0x10]
sub rax, rdx
sar rax, 2
cmp rax, 1
jae 0x140008327
lea r8, [rsp + 0x50]
mov rdx, r12
mov rcx, rdi
call fcn.140010730
jmp 0x140008347
sub r12, rcx
lea rbx, [r12*4]
mov r8, rbx
xor edx, edx
mov rcx, rsi
call sub.VCRUNTIME140.dll_memset
lea rax, [rsi + rbx]
mov qword [rdi + 8], rax
mov rcx, qword [rbp - 0x50]
mov rax, qword [rcx]
call qword [rax + select]
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
call qword [rax + select]
mov rcx, qword [rbp - 0x40]
mov rax, qword [rcx]
call qword [rax + select]
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
mov rdx, qword [rbp + 0x10]
cmp rdx, 7
jbe 0x140007f8d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007f88
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140007f88
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov ecx, 0x8007000e
call fcn.140149bb0
nop
mov ecx, 0x8007000e
call fcn.140149bb0
nop
mov ecx, 0x8007000e
call fcn.140149bb0
nop
mov ecx, 0x8007000e
call fcn.140149bb0
nop
mov ecx, 0x8007000e
call fcn.140149bb0
nop
mov ecx, 0x8007000e
call fcn.140149bb0
nop
mov ecx, 0x8007000e
call fcn.140149bb0
int3