Function at 0x140057170
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 [0x140342fc0]
xor rax, rsp
mov qword [rbp + 0x28], rax
mov rdi, r9
mov rsi, r8
mov r15, rdx
mov qword [rbp - 0x10], rdx
mov qword [rbp - 8], r8
mov r12, qword [rbp + 0x90]
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x10], xmm1
mov r8d, 7
lea rdx, str.SELECT
lea rcx, [rbp]
call fcn.140039770
nop
mov rdx, rsi
cmp qword [rsi + 0x18], 7
jbe 0x1400571e5
mov rdx, qword [rsi]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400571f0
lea rcx, [rbp]
call fcn.140046ad0
mov r8d, 6
lea rdx, str._FROM
mov rcx, rax
call fcn.140046ad0
mov rdx, r15
cmp qword [r15 + 0x18], 7
jbe 0x140057226
mov rdx, qword [r15]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x140057230
mov rcx, rax
call fcn.140046ad0
xor ebx, ebx
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x48], rbx
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x30], rbx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x18], rax
mov dword [rbp + 0x20], ebx
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
jns 0x14005738c
mov rdx, qword [rbp + 0x18]
cmp rdx, 7
jbe 0x1400572b7
mov rcx, qword [rbp]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400572b2
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057c18
call fcn.14025e770
movdqa xmm0, xmmword [0x1402f99c0]
mov word [rbp], bx
movdqu xmmword [rbp + 0x10], xmm0
mov rdx, qword [r15 + 0x18]
cmp rdx, 7
jbe 0x140057307
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
mov rcx, qword [r15]
jb 0x140057302
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140057c4a
mov rcx, r8
call fcn.14025e770
mov qword [r15 + 0x10], rbx
mov qword [r15 + 0x18], 7
mov word [r15], bx
mov rdx, qword [rsi + 0x18]
cmp rdx, 7
jbe 0x140057356
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsi]
cmp rdx, 0x1000
jb 0x140057351
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140057bf1
mov rcx, r8
call fcn.14025e770
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], 7
mov word [rsi], bx
mov rcx, qword [rbp + 0x28]
xor rcx, rsp
call fcn.14025e750
mov rbx, qword [rsp + 0x170]
add rsp, 0x130
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov qword [rsp + 0x40], rbx
mov dword [rsp + 0x38], ebx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], ebx
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 - 1]
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeSecurity]
test eax, eax
jns 0x1400573c7
call qword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x140057277
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
lea r9, [0x1402e3d98]
mov r13d, 1
mov r8d, r13d
xor edx, edx
lea rcx, [0x1402e3da8]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400573fe
call qword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x140057277
mov rax, qword [rbp - 0x40]
mov rcx, qword [rax]
mov r14, qword [rcx + 0x18]
mov ecx, 0x18
call fcn.14025e8a8
mov rbx, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x140057453
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], rax
mov dword [rbx + 0x10], r13d
mov rcx, r12
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x14005744e
test r12, r12
jne 0x140057c29
xor r12d, r12d
jmp 0x140057459
xor r12d, r12d
mov ebx, r12d
mov qword [rbp - 0x70], rbx
test rbx, rbx
je 0x140057c1e
lea rax, [rbp - 0x48]
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 - 0x40]
call r14
mov r14d, eax
mov ecx, 0xffffffff
lock xadd dword [rbx + 0x10], ecx
cmp ecx, 1
jne 0x1400574d5
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400574b6
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r12
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1400574c8
call fcn.14025e770
mov qword [rbx + 8], r12
mov edx, 0x18
mov rcx, rbx
call fcn.14025e770
test r14d, r14d
jns 0x1400575e4
mov rcx, qword [rbp - 0x40]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, 7
jbe 0x14005752f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14005752a
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057c18
call fcn.14025e770
movdqa xmm0, xmmword [0x1402f99c0]
mov word [rbp], r12w
movdqu xmmword [rbp + 0x10], xmm0
mov rdx, qword [r15 + 0x18]
cmp rdx, 7
jbe 0x140057580
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
mov rcx, qword [r15]
jb 0x14005757b
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140057c4a
mov rcx, r8
call fcn.14025e770
mov word [r15], r12w
mov qword [r15 + 0x18], 7
mov qword [r15 + 0x10], r12
mov rdx, qword [rsi + 0x18]
cmp rdx, 7
jbe 0x1400575cf
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
mov rcx, qword [rsi]
jb 0x1400575ca
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140057bf1
mov rcx, r8
call fcn.14025e770
mov qword [rsi + 0x10], r12
mov qword [rsi + 0x18], 7
mov word [rsi], r12w
jmp 0x140057365
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 - 0x48]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
jns 0x140057625
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
jmp 0x1400574de
mov rax, qword [rbp - 0x48]
mov rcx, qword [rax]
mov r13, qword [rcx + 0xa0]
lea r14, [rbp]
cmp qword [rbp + 0x18], 7
cmova r14, qword [rbp]
mov ecx, 0x18
call fcn.14025e8a8
mov rbx, rax
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14005768b
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, r14
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x14005768e
test r14, r14
jne 0x140057bf7
jmp 0x14005768e
mov rbx, r12
mov qword [rbp - 0x68], rbx
test rbx, rbx
je 0x140057c1e
mov r12, qword [rbx]
mov ecx, 0x18
call fcn.14025e8a8
mov r14, rax
mov qword [rsp + 0x50], rax
test rax, rax
je 0x1400576eb
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r14], xmm0
mov qword [r14 + 0x10], rax
mov qword [r14 + 8], rax
mov dword [r14 + 0x10], 1
lea rcx, [0x1402f95a8]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [r14], rax
test rax, rax
je 0x140057c34
xor ecx, ecx
jmp 0x1400576f0
xor ecx, ecx
mov r14d, ecx
mov qword [rbp - 0x60], r14
test r14, r14
je 0x140057c3f
lea rax, [rbp - 0x38]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov r9d, 0x30
mov r8, r12
mov rdx, qword [r14]
mov rcx, qword [rbp - 0x48]
call r13
mov r12d, eax
mov ecx, 0xffffffff
lock xadd dword [r14 + 0x10], ecx
cmp ecx, 1
jne 0x14005776a
mov rcx, qword [r14]
test rcx, rcx
je 0x140057747
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
xor r13d, r13d
mov qword [r14], r13
jmp 0x14005774a
xor r13d, r13d
mov rcx, qword [r14 + 8]
test rcx, rcx
je 0x14005775c
call fcn.14025e770
mov qword [r14 + 8], r13
mov edx, 0x18
mov rcx, r14
call fcn.14025e770
nop
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x1400577b1
mov rcx, qword [rbx]
test rcx, rcx
je 0x14005778f
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
xor r14d, r14d
mov qword [rbx], r14
jmp 0x140057792
xor r14d, r14d
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1400577a4
call fcn.14025e770
mov qword [rbx + 8], r14
mov edx, 0x18
mov rcx, rbx
call fcn.14025e770
test r12d, r12d
jns 0x140057818
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 0x40]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, 7
jbe 0x140057811
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005780c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057c18
call fcn.14025e770
xor ebx, ebx
jmp 0x1400572b7
mov rcx, qword [rbp - 0x38]
mov r12d, 1
test rcx, rcx
je 0x140057b28
xor r13d, r13d
nop
mov rax, qword [rcx]
lea rdx, [rbp + 0x20]
mov qword [rsp + 0x20], rdx
lea r9, [rbp - 0x30]
mov r8d, r12d
mov edx, 0xffffffff
call qword [rax + 0x20]
cmp dword [rbp + 0x20], 0
je 0x140057b28
mov rcx, qword [rbp - 0x30]
mov rax, qword [rcx]
mov rdx, rsi
cmp qword [rsi + 0x18], 7
jbe 0x140057869
mov rdx, qword [rsi]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r13
lea r9, [rbp - 0x28]
xor r8d, r8d
call qword [rax + 0x20]
lea rdx, [0x140348a98]
lea rcx, [0x140349200]
call fcn.140260628
test eax, eax
je 0x140057add
lea rdx, [0x140347858]
lea rcx, [0x140349200]
call fcn.140260628
test eax, eax
je 0x140057add
lea rdx, [0x140349648]
lea rcx, [0x140349200]
call fcn.140260628
test eax, eax
jne 0x1400578f5
movsx rax, word [rbp - 0x20]
mov qword [rsp + 0x60], rax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x1400578eb
mov qword [rdx], rax
add qword [rdi + 8], 8
jmp 0x140057b07
lea r8, [rsp + 0x60]
jmp 0x140057aff
lea rdx, [0x1403479e8]
lea rcx, [0x140349200]
call fcn.140260628
test eax, eax
jne 0x140057935
mov eax, dword [rbp - 0x20]
mov qword [rsp + 0x68], rax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x14005792b
mov qword [rdx], rax
add qword [rdi + 8], 8
jmp 0x140057b07
lea r8, [rsp + 0x68]
jmp 0x140057aff
lea rdx, [0x140348f88]
lea rcx, [0x140349200]
call fcn.140260628
test eax, eax
jne 0x140057976
movzx eax, word [rbp - 0x20]
mov qword [rsp + 0x70], rax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x14005796c
mov qword [rdx], rax
add qword [rdi + 8], 8
jmp 0x140057b07
lea r8, [rsp + 0x70]
jmp 0x140057aff
lea rdx, [0x140348c08]
lea rcx, [0x140349200]
call fcn.140260628
test eax, eax
jne 0x1400579b7
mov rax, qword [rbp - 0x20]
mov qword [rsp + 0x78], rax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x1400579ad
mov qword [rdx], rax
add qword [rdi + 8], 8
jmp 0x140057b07
lea r8, [rsp + 0x78]
jmp 0x140057aff
lea rdx, [0x140347818]
lea rcx, [0x140349200]
call fcn.140260628
test eax, eax
jne 0x1400579f6
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x80], rax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x1400579ed
mov qword [rdx], rax
add qword [rdi + 8], 8
jmp 0x140057b07
lea r8, [rbp - 0x80]
jmp 0x140057aff
mov r14, qword [rbp - 0x20]
mov ecx, 0x18
call fcn.14025e8a8
mov rbx, rax
mov qword [rbp - 0x58], rax
test rax, rax
je 0x140057a40
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r13
mov dword [rbx + 0x10], r12d
mov rcx, r14
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x140057a43
test r14, r14
jne 0x140057c02
jmp 0x140057a43
mov rbx, r13
mov qword [rbp - 0x50], rbx
test rbx, rbx
je 0x140057c1e
mov rcx, qword [rbx]
test rcx, rcx
je 0x140057a74
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 0x140057c0d
jmp 0x140057a77
mov rax, r13
mov qword [rbp - 0x78], rax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x140057a8f
mov qword [rdx], rax
add qword [rdi + 8], 8
jmp 0x140057a9c
lea r8, [rbp - 0x78]
mov rcx, rdi
call fcn.140082e50
nop
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x140057b07
mov rcx, qword [rbx]
test rcx, rcx
je 0x140057abc
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r13
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140057ace
call fcn.14025e770
mov qword [rbx + 8], r13
mov edx, 0x18
mov rcx, rbx
call fcn.14025e770
jmp 0x140057b07
movsxd rax, dword [rbp - 0x20]
mov qword [rsp + 0x58], rax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x140057afa
mov qword [rdx], rax
add qword [rdi + 8], 8
jmp 0x140057b07
lea r8, [rsp + 0x58]
mov rcx, rdi
call fcn.140082e50
lea rcx, [rbp - 0x28]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rcx, qword [rbp - 0x30]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 0x38]
test rcx, rcx
jne 0x140057830
mov r14, qword [rdi + 8]
mov rdx, qword [rdi]
mov rcx, r14
sub rcx, rdx
cmp rcx, 8
jae 0x140057b88
sar rcx, 3
cmp rcx, 1
jbe 0x140057b4b
lea rax, [rdx + 8]
jmp 0x140057b84
jae 0x140057b88
mov rax, qword [rdi + 0x10]
sub rax, rdx
sar rax, 3
cmp rax, 1
jae 0x140057b68
mov rcx, rdi
call fcn.140082cf0
jmp 0x140057b88
sub r12, rcx
lea rbx, [r12*8]
mov r8, rbx
xor edx, edx
mov rcx, r14
call fcn.14029f290
lea rax, [r14 + rbx]
mov qword [rdi + 8], rax
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 0x40]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp - 0x38]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, 7
jbe 0x140057811
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005780c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057c18
jmp 0x14005780c
call fcn.14027aed0
nop
mov ecx, 0x8007000e
call fcn.14025e1c0
nop
mov ecx, 0x8007000e
call fcn.14025e1c0
nop
mov ecx, 0x8007000e
call fcn.14025e1c0
nop
call fcn.14027aed0
nop
mov ecx, 0x8007000e
call fcn.14025e1c0
nop
mov ecx, 0x8007000e
call fcn.14025e1c0
nop
mov ecx, 0x8007000e
call fcn.14025e1c0
nop
mov ecx, 0x8007000e
call fcn.14025e1c0
nop
call fcn.14027aed0
int3