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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x70]
sub rsp, 0x170
xor edi, edi
mov r15, rcx
lea rcx, [rbp + 0x58]
mov dword [rbp + 0xc8], edi
mov esi, edi
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x60], rdi
mov rbx, r8
mov qword [rsp + 0x50], rdi
mov r14, rdx
mov qword [rsp + 0x58], rdi
call qword [sym.imp.OLEAUT32.dll_VariantClear]
lea rcx, [rbp + 0x10]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
lea rcx, [rbp - 8]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
lea rcx, [rbp + 0x40]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
lea rcx, [rbp - 0x20]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
lea rcx, [rbp + 0x28]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [rdi + 0xf]
mov qword [rbp - 0x58], rdi
xor r8d, r8d
mov qword [rbp - 0x50], rax
lea rdx, [0x14009d600]
mov qword [rbp - 0x28], rax
mov rcx, r15
mov byte [rbp - 0x68], dil
mov r12d, edi
mov qword [rbp - 0x30], rdi
mov byte [rbp - 0x40], dil
call fcn.140004d8c
xor r8d, r8d
mov dword [rbx], edi
lea rdx, [0x14009d600]
mov rcx, r14
call fcn.140004d8c
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitialize]
mov qword [rsp + 0x40], rdi
lea ebx, [rdi + 1]
mov dword [rsp + 0x38], edi
test eax, eax
mov qword [rsp + 0x30], rdi
mov r13d, edi
cmove r13d, ebx
mov dword [rsp + 0x28], 3
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
or edx, 0xffffffff
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeSecurity]
test eax, eax
je 0x14002dfd6
cmp eax, 0x80010119
jne 0x14002e41f
lea rax, [rsp + 0x70]
mov r8d, ebx
lea r9, [0x1400a9528]
mov qword [rsp + 0x20], rax
xor edx, edx
lea rcx, [0x1400a94c8]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jne 0x14002e41f
lea rdx, str.ROOTCIMV2
lea rcx, [rsp + 0x68]
call fcn.1400220fc
mov rcx, qword [rax]
test rcx, rcx
je 0x14002e01f
mov rdx, qword [rcx]
jmp 0x14002e022
mov rdx, rdi
mov rcx, qword [rsp + 0x70]
lea r8, [rsp + 0x60]
mov qword [rsp + 0x40], r8
xor r9d, r9d
mov qword [rsp + 0x38], rdi
xor r8d, r8d
mov qword [rsp + 0x30], rdi
mov rax, qword [rcx]
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
call qword [rax + 0x18]
lea rcx, [rsp + 0x68]
mov ebx, eax
call fcn.140024498
test ebx, ebx
jne 0x14002e41a
mov rcx, qword [rsp + 0x60]
lea eax, [rbx + 3]
mov dword [rsp + 0x38], edi
lea edx, [rbx + 0xa]
mov qword [rsp + 0x30], rdi
xor r9d, r9d
mov dword [rsp + 0x28], eax
xor r8d, r8d
mov dword [rsp + 0x20], eax
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
jne 0x14002e41a
lea ecx, [rbx + 0x18]
call fcn.140037e24
mov rbx, rax
test rax, rax
je 0x14002e0c0
lea rcx, str.Select__from_Win32_NetworkAdapter
mov qword [rax + 8], rdi
mov dword [rax + 0x10], 1
call fcn.140039270
mov qword [rbx], rax
jmp 0x14002e0c3
mov rbx, rdi
mov qword [rsp + 0x68], rbx
test rbx, rbx
je 0x14002e523
mov rdi, qword [rbx]
mov ecx, 0x18
call fcn.140037e24
mov rbx, rax
test rax, rax
je 0x14002e102
and qword [rax + 8], rsi
lea rcx, [0x1400a1d74]
mov dword [rax + 0x10], 1
call fcn.140039270
mov qword [rbx], rax
jmp 0x14002e104
xor ebx, ebx
mov qword [rbp - 0x48], rbx
test rbx, rbx
je 0x14002e52e
mov rcx, qword [rsp + 0x60]
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x28], rdx
mov r9d, gethostbyname
mov rdx, qword [rbx]
mov r8, rdi
and qword [rsp + 0x20], rsi
mov rax, qword [rcx]
call qword [rax + 0xa0]
lea rcx, [rbp - 0x48]
mov ebx, eax
call fcn.140024498
lea rcx, [rsp + 0x68]
call fcn.140024498
xor edi, edi
test ebx, ebx
jne 0x14002e41a
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14002e411
mov rdi, qword [rbp + 0xc0]
mov rax, qword [rcx]
lea rdx, [rbp + 0xc8]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x58]
or edx, 0xffffffff
mov r8d, 1
call qword [rax + 0x20]
test eax, eax
jne 0x14002e40a
cmp dword [rbp + 0xc8], esi
je 0x14002e3fa
xor r8d, r8d
lea rdx, [0x14009d600]
lea rcx, [rbp - 0x68]
call fcn.140004d8c
xor r8d, r8d
lea rdx, [0x14009d600]
lea rcx, [rbp - 0x40]
call fcn.140004d8c
mov rcx, qword [rsp + 0x58]
lea r9, [rbp - 8]
mov qword [rsp + 0x28], rsi
lea rdx, str.MACAddress
xor r8d, r8d
mov qword [rsp + 0x20], rsi
mov rax, qword [rcx]
call qword [rax + 0x20]
test eax, eax
jne 0x14002e223
cmp word [rbp - 8], 2
jb 0x14002e223
mov rcx, qword [rbp]
call fcn.140039150
mov rbx, rax
cmp byte [rax], sil
jne 0x14002e20c
mov rax, rsi
jmp 0x14002e214
mov rcx, rbx
call fcn.140045e50
mov r8, rax
lea rcx, [rbp - 0x40]
mov rdx, rbx
call fcn.140004d8c
mov rcx, qword [rsp + 0x58]
lea r9, [rbp + 0x10]
mov qword [rsp + 0x28], rsi
lea rdx, str.Name
xor r8d, r8d
mov qword [rsp + 0x20], rsi
mov rax, qword [rcx]
call qword [rax + 0x20]
test eax, eax
jne 0x14002e27e
cmp word [rbp + 0x10], 2
jb 0x14002e27e
mov rcx, qword [rbp + 0x18]
call fcn.140039150
mov rbx, rax
cmp byte [rax], sil
jne 0x14002e267
mov rax, rsi
jmp 0x14002e26f
mov rcx, rbx
call fcn.140045e50
mov r8, rax
lea rcx, [rbp - 0x68]
mov rdx, rbx
call fcn.140004b2c
or r9, 0xffffffffffffffff
mov qword [rbp - 0x70], reloc.WSOCK32.dll_ntohs
xor r8d, r8d
mov qword [rbp - 0x78], rsi
lea rdx, [rbp - 0x68]
mov byte [rsp + 0x78], sil
lea rcx, [rsp + 0x78]
call fcn.140004c64
cmp qword [rbp - 0x70], 0x10
lea rcx, [rsp + 0x78]
cmovae rcx, qword [rsp + 0x78]
call fcn.14007ef6c
lea rcx, str.miniport
call fcn.140045e50
mov r9, rax
lea rdx, str.miniport
xor r8d, r8d
lea rcx, [rsp + 0x78]
call fcn.14000501c
cmp rax, 0xffffffffffffffff
jne 0x14002e3dd
lea rcx, str.microsoft
call fcn.140045e50
mov r9, rax
lea rdx, str.microsoft
xor r8d, r8d
lea rcx, [rsp + 0x78]
call fcn.14000501c
cmp rax, 0xffffffffffffffff
jne 0x14002e3dd
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x14002e32e
mov rcx, qword [rsp + 0x78]
lea r8d, [rax + 2]
inc rdx
call fcn.140004554
mov rcx, qword [rsp + 0x58]
lea r9, [rbp - 0x20]
mov qword [rsp + 0x28], rsi
lea rdx, str.Speed
xor r8d, r8d
mov qword [rsp + 0x20], rsi
mov rax, qword [rcx]
call qword [rax + 0x20]
test eax, eax
jne 0x14002e3fa
cmp word [rbp - 0x20], 2
jb 0x14002e3fa
mov rcx, qword [rbp - 0x18]
lea r8d, [rax + 0xa]
lea rdx, [rbp + 0xc0]
mov qword [rbp + 0xc0], rsi
call fcn.140062840
mov ecx, eax
mov r8d, 0x10624dd3
mov eax, r8d
mul ecx
mov eax, r8d
shr edx, 6
mul edx
mov ebx, edx
shr ebx, 6
cmp ebx, r12d
jbe 0x14002e3fa
lea rax, [rbp - 0x68]
mov r12d, ebx
cmp r15, rax
je 0x14002e3bd
or r9, 0xffffffffffffffff
lea rdx, [rbp - 0x68]
xor r8d, r8d
mov rcx, r15
call fcn.140004c64
lea rax, [rbp - 0x40]
cmp r14, rax
je 0x14002e3d9
or r9, 0xffffffffffffffff
lea rdx, [rbp - 0x40]
xor r8d, r8d
mov rcx, r14
call fcn.140004c64
mov dword [rdi], ebx
jmp 0x14002e3fa
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x14002e3fa
mov rcx, qword [rsp + 0x78]
inc rdx
mov r8d, 1
call fcn.140004554
mov rcx, qword [rsp + 0x50]
test rcx, rcx
jne 0x14002e16e
jmp 0x14002e40f
mov rcx, qword [rsp + 0x50]
xor edi, edi
mov ebx, 1
mov esi, ebx
jmp 0x14002e424
mov ebx, 1
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x60]
test rdx, rdx
je 0x14002e43c
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14002e454
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14002e45f
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14002e46f
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
test r13d, r13d
je 0x14002e47a
call qword [sym.imp.ole32.dll_CoUninitialize]
mov rdx, qword [rbp - 0x28]
cmp rdx, 0x10
jb 0x14002e493
mov rcx, qword [rbp - 0x40]
inc rdx
mov r8, rbx
call fcn.140004554
mov rdx, qword [rbp - 0x50]
mov r14d, reloc.WSOCK32.dll_ntohs
mov qword [rbp - 0x28], r14
mov qword [rbp - 0x30], rdi
mov byte [rbp - 0x40], dil
cmp rdx, 0x10
jb 0x14002e4be
mov rcx, qword [rbp - 0x68]
inc rdx
mov r8, rbx
call fcn.140004554
lea rcx, [rbp + 0x28]
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x58], rdi
mov byte [rbp - 0x68], dil
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rbp - 0x20]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rbp + 0x40]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rbp - 8]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rbp + 0x10]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rbp + 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rbx, qword [rsp + 0x1b0]
mov eax, esi
add rsp, 0x170
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x8007000e
call fcn.140038fa0
int3
mov ecx, 0x8007000e
call fcn.140038fa0
int3