Function at 0x180006b40
Capabilities:
Connect to wmi namespace via wbemlocator
Reference sql statements
Reference wmi statements

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x20]
sub rsp, 0x120
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
mov ebx, eax
test eax, eax
jns 0x180006bb6
lea rdx, str.Failed_to_initialize_COM_library._Error_code__0x
lea rcx, [0x18048a280]
call fcn.18000c960
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
add rdx, rax
and dword [rdx + 0x18], 0xfffff9ff
or dword [rdx + 0x18], 0x800
mov edx, ebx
mov rcx, rax
call fcn.180008e00
mov rcx, rax
call fcn.18000cbe0
add rsp, 0x120
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
xor r15d, r15d
mov qword [rsp + 0x40], r15
mov dword [rsp + 0x38], r15d
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
lea edx, [r15 - 1]
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeSecurity]
mov ebx, eax
test eax, eax
jns 0x180006c35
lea rdx, str.Failed_to_initialize_security._Error_code__0x
lea rcx, [0x18048a280]
call fcn.18000c960
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
add rdx, rax
and dword [rdx + 0x18], 0xfffff9ff
or dword [rdx + 0x18], 0x800
mov edx, ebx
mov rcx, rax
call fcn.180008e00
mov rcx, rax
call fcn.18000cbe0
call qword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x180006ba4
mov qword [rbp + 0x78], r15
lea rax, [rbp + 0x78]
mov qword [rsp + 0x20], rax
lea r9, [0x18003b148]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x18003b138]
call qword [sym.imp.ole32.dll_CoCreateInstance]
mov ebx, eax
test eax, eax
jns 0x180006c6b
lea rdx, str.Failed_to_create_IWbemLocator_object._Error_code__0x
jmp 0x180006bf4
mov qword [rbp + 0x70], r15
mov ecx, 0x18
call fcn.180011df0
mov rbx, rax
mov qword [rbp + 0x68], rax
test rax, rax
je 0x180006cab
mov qword [rax + 8], r15
mov dword [rax + 0x10], 1
lea rcx, str.ROOTCIMV2
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
je 0x18000740e
jmp 0x180006cae
mov rbx, r15
mov qword [rbp - 0x20], rbx
test rbx, rbx
je 0x180007424
mov rcx, qword [rbp + 0x78]
mov rax, qword [rcx]
lea rdx, [rbp + 0x70]
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbx]
call qword [rax + 0x18]
mov edi, eax
mov ecx, 0xffffffff
lock xadd dword [rbx + 0x10], ecx
cmp ecx, 1
jne 0x180006d2c
mov rcx, qword [rbx]
test rcx, rcx
je 0x180006d0d
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r15
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x180006d1f
call fcn.180011de8
mov qword [rbx + 8], r15
mov edx, 0x18
mov rcx, rbx
call fcn.180011de8
test edi, edi
jns 0x180006d82
lea rdx, str.Could_not_connect_to_WMI_namespace._Error_code__0x
lea rcx, [0x18048a280]
call fcn.18000c960
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
add rdx, rax
and dword [rdx + 0x18], 0xfffff9ff
or dword [rdx + 0x18], 0x800
mov edx, edi
mov rcx, rax
call fcn.180008e00
mov rcx, rax
call fcn.18000cbe0
mov rcx, qword [rbp + 0x78]
mov rax, qword [rcx]
call qword [rax + 0x10]
call qword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x180006ba4
mov dword [rsp + 0x38], r15d
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0xa]
mov rcx, qword [rbp + 0x70]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
mov ebx, eax
test eax, eax
jns 0x180006e12
lea rdx, str.Could_not_set_proxy_blanket._Error_code__0x
lea rcx, [0x18048a280]
call fcn.18000c960
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
add rdx, rax
and dword [rdx + 0x18], 0xfffff9ff
or dword [rdx + 0x18], 0x800
mov edx, ebx
mov rcx, rax
call fcn.180008e00
mov rcx, rax
call fcn.18000cbe0
mov rcx, qword [rbp + 0x70]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0x78]
mov rax, qword [rcx]
call qword [rax + 0x10]
call qword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x180006ba4
mov qword [rsp + 0x50], r15
mov ecx, 0x18
call fcn.180011df0
mov rbx, rax
mov qword [rbp + 0x68], rax
test rax, rax
je 0x180006e49
mov qword [rax + 8], r15
mov dword [rax + 0x10], 1
lea rcx, str.SELECT__FROM_Win32_NetworkAdapter_WHERE_NetConnectionStatus0
call fcn.180011ad0
mov qword [rbx], rax
jmp 0x180006e4c
mov rbx, r15
mov qword [rbp - 0x18], rbx
test rbx, rbx
je 0x180007424
mov ecx, 0x18
call fcn.180011df0
mov rdi, rax
mov qword [rbp + 0x68], rax
test rax, rax
je 0x180006e8b
mov qword [rax + 8], r15
mov dword [rax + 0x10], 1
lea rcx, [0x180048990]
call fcn.180011ad0
mov qword [rdi], rax
jmp 0x180006e8e
mov rdi, r15
mov qword [rbp - 0x10], rdi
test rdi, rdi
je 0x18000742f
mov rcx, qword [rbp + 0x70]
mov rax, qword [rcx]
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r15
mov r9d, 0x30
mov r8, qword [rbx]
mov rdx, qword [rdi]
call qword [rax + 0xa0]
mov esi, eax
mov ecx, 0xffffffff
lock xadd dword [rdi + 0x10], ecx
cmp ecx, 1
jne 0x180006f05
mov rcx, qword [rdi]
test rcx, rcx
je 0x180006ee5
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rdi], r15
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x180006ef7
call fcn.180011de8
mov qword [rdi + 8], r15
mov edx, 0x18
mov rcx, rdi
call fcn.180011de8
nop
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x180006f44
mov rcx, qword [rbx]
test rcx, rcx
je 0x180006f25
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r15
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x180006f37
call fcn.180011de8
mov qword [rbx + 8], r15
mov edx, 0x18
mov rcx, rbx
call fcn.180011de8
test esi, esi
jns 0x180006fa4
lea rdx, str.Query_for_network_adapters_failed._Error_code__0x
lea rcx, [0x18048a280]
call fcn.18000c960
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
add rdx, rax
and dword [rdx + 0x18], 0xfffff9ff
or dword [rdx + 0x18], 0x800
mov edx, esi
mov rcx, rax
call fcn.180008e00
mov rcx, rax
call fcn.18000cbe0
mov rcx, qword [rbp + 0x70]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0x78]
mov rax, qword [rcx]
call qword [rax + 0x10]
call qword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x180006ba4
mov qword [rsp + 0x58], r15
mov dword [rbp + 0x60], r15d
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1800073de
mov r12d, 0x27
mov rax, qword [rcx]
lea rdx, [rbp + 0x60]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x58]
mov edx, 0xffffffff
lea r8d, [rdx + 2]
call qword [rax + 0x20]
cmp dword [rbp + 0x60], 0
je 0x1800073d9
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
lea r9, [rbp - 0x38]
xor r8d, r8d
lea rdx, str.DeviceID
call qword [rax + 0x20]
test eax, eax
js 0x1800073b5
cmp word [rbp - 0x38], 8
jne 0x1800073b5
mov r14, qword [rbp - 0x30]
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r15w
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp word [r14 + r8*2], 0
jne 0x180007050
mov rdx, r14
lea rcx, [rsp + 0x68]
call fcn.180002660
nop
lea r8, [rsp + 0x68]
lea rcx, [rbp - 0x58]
call fcn.18000cc80
mov rcx, rax
mov rdx, qword [rax + 0x10]
mov r9, qword [rax + 0x18]
mov rax, r9
sub rax, rdx
cmp rax, 1
jb 0x1800070ae
lea r8, [rdx + 1]
mov qword [rcx + 0x10], r8
mov rax, rcx
cmp r9, 8
jb 0x1800070a2
mov rax, qword [rcx]
mov word [rax + rdx*2], r12w
mov word [rax + r8*2], r15w
jmp 0x1800070cb
mov qword [rsp + 0x20], 1
lea r9, [0x180048a1c]
mov edx, 1
call fcn.18000e360
mov rcx, rax
mov qword [rbp - 0x78], r15
mov qword [rbp - 0x68], r15
mov qword [rbp - 0x60], r15
movups xmm0, xmmword [rcx]
movups xmmword [rbp - 0x78], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp - 0x68], xmm1
mov qword [rcx + 0x10], r15
mov qword [rcx + 0x18], 7
mov word [rcx], r15w
mov rdx, qword [rbp - 0x40]
cmp rdx, 8
jb 0x180007136
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180007131
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000743a
call fcn.180011de8
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x40], 7
mov word [rbp - 0x58], r15w
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x180007188
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180007183
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180007440
call fcn.180011de8
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r15w
mov ecx, 0x18
call fcn.180011df0
mov rbx, rax
mov qword [rbp - 8], rax
test rax, rax
je 0x1800071cd
mov qword [rax + 8], r15
mov dword [rax + 0x10], 1
lea rcx, str.Enable
call fcn.180011ad0
mov qword [rbx], rax
jmp 0x1800071d0
mov rbx, r15
mov qword [rbp], rbx
test rbx, rbx
je 0x180007403
lea rsi, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae rsi, qword [rbp - 0x78]
mov ecx, 0x18
call fcn.180011df0
mov rdi, rax
mov qword [rbp + 8], rax
test rax, rax
je 0x180007228
mov qword [rax + 8], r15
mov dword [rax + 0x10], 1
mov rcx, rsi
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rdi], rax
test rax, rax
jne 0x18000722b
test rsi, rsi
jne 0x180007419
jmp 0x18000722b
mov rdi, r15
mov qword [rbp + 0x10], rdi
test rdi, rdi
je 0x18000744c
mov rcx, qword [rbp + 0x70]
mov rax, qword [rcx]
mov qword [rsp + 0x38], r15
lea rdx, [rsp + 0x60]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov r8, qword [rbx]
mov rdx, qword [rdi]
call qword [rax + 0xc0]
mov esi, eax
mov ecx, 0xffffffff
lock xadd dword [rdi + 0x10], ecx
cmp ecx, 1
jne 0x1800072a9
mov rcx, qword [rdi]
test rcx, rcx
je 0x180007289
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rdi], r15
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x18000729b
call fcn.180011de8
mov qword [rdi + 8], r15
mov edx, 0x18
mov rcx, rdi
call fcn.180011de8
nop
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x1800072e8
mov rcx, qword [rbx]
test rcx, rcx
je 0x1800072c9
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r15
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1800072db
call fcn.180011de8
mov qword [rbx + 8], r15
mov edx, 0x18
mov rcx, rbx
call fcn.180011de8
test esi, esi
js 0x18000730c
lea rdx, str.Enabled_wireless_adapter:
lea rcx, [0x180489fc0]
call fcn.18000c960
mov rcx, rax
mov rdx, r14
call fcn.18000c960
jmp 0x18000735c
lea rdx, str.Failed_to_enable_wireless_adapter:
lea rcx, [0x18048a280]
call fcn.18000c960
mov rcx, rax
mov rdx, r14
call fcn.18000c960
mov rcx, rax
lea rdx, str.._Error_code__0x
call fcn.18000c960
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
mov ecx, dword [rdx + rax + 0x18]
and ecx, 0xfffff9ff
bts ecx, 0xb
mov dword [rdx + rax + 0x18], ecx
mov edx, esi
mov rcx, rax
call fcn.180008e00
mov rcx, rax
call fcn.18000cbe0
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x180007375
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x1800073b5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800073b0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180007446
call fcn.180011de8
lea rcx, [rbp - 0x38]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1800073de
jmp 0x180006fc1
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0x70]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0x78]
mov rax, qword [rcx]
call qword [rax + 0x10]
call qword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x180006ba4
mov ecx, 0x8007000e
call fcn.180011ac0
nop
mov ecx, 0x8007000e
call fcn.180011ac0
nop
mov ecx, 0x8007000e
call fcn.180011ac0
nop
mov ecx, 0x8007000e
call fcn.180011ac0
nop
mov ecx, 0x8007000e
call fcn.180011ac0
nop
call fcn.180018f64
nop
call fcn.180018f64
nop
call fcn.180018f64
nop
mov ecx, 0x8007000e
call fcn.180011ac0
int3