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

Disassembly:
mov r11, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x4d0
mov qword [r11 - 0x478], 0xfffffffffffffffe
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rsi
mov rax, qword [0x14035d8c0]
xor rax, rsp
mov qword [rsp + 0x4c8], rax
mov r14, rcx
mov qword [rsp + 0x68], rcx
xor ebx, ebx
mov dword [rsp + 0x54], ebx
lea rcx, [r11 - 0x50]
call fcn.14000a1bc
nop
mov byte [rsp + 0x4a0], bl
lea r8d, [rbx + 0xe]
lea rdx, str.srl::WMI::Init
lea rcx, [rsp + 0x4a8]
call fcn.140009e14
nop
call fcn.1400227c0
cmp dword [rax + 8], 4
jl 0x14005d780
mov byte [rsp + 0x4a0], 1
lea rcx, [rsp + 0x4a0]
call fcn.140018900
mov byte [rsp + 0x50], 0
lea rsi, [r14 + 0x30]
mov qword [rsp + 0x20], rsi
lea r9, [0x1402df040]
mov r13d, 1
mov r8d, r13d
xor edx, edx
lea rcx, [0x1402df110]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x14005d905
lea ecx, [r13 + 0x17]
call fcn.14008ba48
mov rdi, rax
mov qword [rsp + 0x88], rax
test rax, rax
je 0x14005d7f1
mov qword [rax + 8], rbx
mov dword [rax + 0x10], r13d
lea rcx, str.ROOTCIMV2
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rdi], rax
test rax, rax
je 0x14005e406
jmp 0x14005d7f4
mov rdi, rbx
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0x60], rdi
test rdi, rdi
je 0x14005e411
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x14005d819
mov rdx, qword [rax]
jmp 0x14005d81c
mov rdx, rbx
mov rcx, qword [rsi]
lea r15, [r14 + 0x38]
mov rax, qword [rcx]
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor r8d, r8d
call qword [rax + 0x18]
mov dword [rsp + 0x58], eax
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x14005d8b0
mov qword [rsp + 0x78], rcx
mov eax, 0xffffffff
lock xadd dword [rcx + 0x10], eax
sub eax, 1
mov dword [rsp + 0x70], eax
jne 0x14005d8a7
mov rdi, qword [rsp + 0x78]
test rdi, rdi
je 0x14005d8a7
mov rcx, qword [rdi]
test rcx, rcx
je 0x14005d888
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rdi], rbx
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x14005d89a
call fcn.14008ba90
mov qword [rdi + 8], rbx
mov edx, 0x18
mov rcx, rdi
call fcn.1400045a8
mov qword [rsp + 0x60], rbx
mov eax, dword [rsp + 0x58]
test eax, eax
js 0x14005d8f7
mov dword [rsp + 0x38], ebx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0xa]
mov rcx, qword [r15]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
js 0x14005d8eb
mov byte [rsp + 0x50], 1
jmp 0x14005d90c
mov rcx, qword [r15]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [r15], rbx
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rsi], rbx
jmp 0x14005d90c
mov qword [rsi], rbx
mov qword [r14 + 0x38], rbx
jmp 0x14005d919
cmp byte [rsp + 0x50], 0
je 0x14005de64
mov byte [r14 + 0x28], 1
call fcn.1400227c0
cmp dword [rax + 8], 3
jl 0x14005e3cc
call fcn.1400227c0
mov rdi, rax
mov qword [rsp + 0x68], rax
lea rcx, [rsp + 0x160]
call fcn.14001bb00
nop
lea rcx, [rsp + 0x420]
call fcn.14000a1bc
nop
mov r8d, 5
lea rdx, str.TRACE
lea rcx, [rsp + 0x420]
call fcn.140009e14
lea rcx, [rsp + 0x360]
call fcn.14000a1bc
nop
mov r14d, ebx
mov r15d, 2
cmp dword [rdi + 0x10], 0
jle 0x14005da2d
lea r12d, [r15 + 2]
cmp r14d, 0xa
jge 0x14005da2d
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x378]
mov rax, rdx
sub rax, rcx
cmp rax, r15
jb 0x14005da04
lea rsi, [rcx + 2]
mov qword [rsp + 0x370], rsi
lea rdi, [rsp + 0x360]
cmp rdx, 8
cmovae rdi, qword [rsp + 0x360]
lea rcx, [rdi + rcx*2]
mov r8, r12
lea rdx, [0x1402f2578]
call fcn.14022f3d0
mov word [rdi + rsi*2], bx
mov rdi, qword [rsp + 0x68]
jmp 0x14005da20
mov qword [rsp + 0x20], r15
lea r9, [0x1402f2578]
mov rdx, r15
lea rcx, [rsp + 0x360]
call fcn.140023610
inc r14d
cmp r14d, dword [rdi + 0x10]
jl 0x14005d9a0
lea rcx, [rsp + 0x400]
call fcn.14000a1bc
nop
lea rcx, [rsp + 0x3e0]
call fcn.14000a1bc
nop
lea r8, [rsp + 0x3e0]
lea rdx, [rsp + 0x400]
mov rcx, rdi
call fcn.1400228f0
lea r14, [rsp + 0x360]
cmp qword [rsp + 0x378], 8
cmovae r14, qword [rsp + 0x360]
mov edx, 0x2040
lea rcx, [rsp + 0x98]
call fcn.14022d4c4
mov rcx, qword [rsp + 0x170]
movsxd rdx, dword [rcx + 4]
lea rcx, [rsp + 0x170]
add rcx, rdx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rsp + 0x400]
cmp qword [rsp + 0x418], 8
cmovae rdx, qword [rsp + 0x400]
mov r8, qword [rsp + 0x410]
lea rcx, [rsp + 0x170]
call fcn.140019270
mov rdi, rax
mov edx, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rcx, [rsp + 0xa8]
call fcn.14022d4c4
mov rsi, rax
lea rdx, [0x1402f20d0]
mov rcx, rdi
call fcn.140018e90
mov rdi, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov edx, dword [rsi + 8]
call qword [rsi]
mov edx, 6
lea rcx, [rsp + 0xb8]
call fcn.14022d4ec
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
add rcx, rdi
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rdi]
movsxd rcx, dword [rax + 4]
mov eax, 0x30
mov word [rcx + rdi + 0x58], ax
lea edx, [rax - 0x2d]
lea rcx, [rsp + 0xc8]
call fcn.14022d4d8
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
add rcx, rdi
mov rdx, qword [rax + 8]
call qword [rax]
lea rdx, [rsp + 0x3e0]
cmp qword [rsp + 0x3f8], 8
cmovae rdx, qword [rsp + 0x3e0]
mov r8, qword [rsp + 0x3f0]
mov rcx, rdi
call fcn.140019270
mov rdi, rax
mov edx, 5
lea rcx, [rsp + 0xd8]
call fcn.14022d4ec
mov rsi, rax
lea rdx, [0x1402f20d0]
mov rcx, rdi
call fcn.140018e90
mov rdi, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov rdx, qword [rsi + 8]
call qword [rsi]
mov rcx, qword [rdi]
movsxd rdx, dword [rcx + 4]
mov eax, 0x20
mov word [rdx + rdi + 0x58], ax
lea edx, [rax + 0x20]
lea rcx, [rsp + 0xe8]
call fcn.14022d4c4
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
add rcx, rdi
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rsp + 0x420]
cmp qword [rsp + 0x438], 8
cmovae rdx, qword [rsp + 0x420]
mov r8, qword [rsp + 0x430]
mov rcx, rdi
call fcn.140019270
lea rdx, [0x1402f25c8]
mov rcx, rax
call fcn.140018e90
mov rcx, rax
mov rdx, r14
call fcn.140018e90
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x14036cfc0], eax
jle 0x14005dc96
lea rcx, [0x14036cfc0]
call fcn.14022b1d8
cmp dword [0x14036cfc0], 0xffffffff
jne 0x14005dc96
lea rdi, [0x14036cfc8]
mov rcx, rdi
call fcn.14000a1bc
lea rcx, [0x14027e0e0]
call fcn.14022ace0
lea rcx, [0x14036cfc0]
call fcn.14022b178
jmp 0x14005dc9d
lea rdi, [0x14036cfc8]
lea rcx, [rsp + 0x3a0]
call fcn.140009da0
movdqa xmm0, xmmword [0x1402f9360]
movdqu xmmword [rsp + 0x3b0], xmm0
mov word [rsp + 0x3a0], bx
mov dword [rsp + 0x54], r15d
mov rcx, qword [rsp + 0x1e8]
test cl, 2
jne 0x14005dd06
mov rax, qword [rsp + 0x1b8]
mov r8, qword [rax]
test r8, r8
je 0x14005dd06
mov rax, qword [rsp + 0x198]
mov rdx, qword [rax]
cmp r8, qword [rsp + 0x1e0]
cmovb r8, qword [rsp + 0x1e0]
sub r8, rdx
jmp 0x14005dd3a
test cl, 4
jne 0x14005dd4a
mov rax, qword [rsp + 0x1b0]
mov rcx, qword [rax]
test rcx, rcx
je 0x14005dd4a
mov rax, qword [rsp + 0x190]
mov rdx, qword [rax]
mov rax, qword [rsp + 0x1c8]
movsxd r8, dword [rax]
add r8, r8
sub r8, rdx
add r8, rcx
sar r8, 1
lea rcx, [rsp + 0x3a0]
call fcn.140009e14
and r15d, 0xfffffffd
mov dword [rsp + 0x54], r15d
mov dword [rsp + 0x54], r13d
mov rdx, qword [0x14036cfe0]
cmp rdx, 8
jb 0x14005dd9e
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x14036cfc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005dd99
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005e41c
call fcn.1400045a8
movups xmm0, xmmword [rsp + 0x3a0]
movups xmmword [0x14036cfc8], xmm0
movups xmm1, xmmword [rsp + 0x3b0]
movups xmmword [0x14036cfd8], xmm1
movdqa xmm0, xmmword [0x1402f9360]
movdqu xmmword [rsp + 0x3b0], xmm0
mov word [rsp + 0x3a0], bx
and r13d, 0xfffffffe
mov dword [rsp + 0x54], r13d
lea rcx, [rsp + 0x3a0]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x3e0]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x400]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x360]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x420]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x160]
call fcn.14001b7c0
call fcn.1400227c0
cmp qword [0x14036cfe0], 8
cmovae rdi, qword [0x14036cfc8]
mov r8, qword [0x14036cfd8]
mov rdx, rdi
mov rcx, rax
call fcn.140019270
lea rdx, str.WMI_inited_ok.
jmp 0x14005e39c
call fcn.1400227c0
cmp dword [rax + 8], 3
jl 0x14005e3cc
call fcn.1400227c0
mov r13, rax
lea rcx, [rsp + 0x260]
call fcn.14001bb00
nop
lea rcx, [rsp + 0x480]
call fcn.14000a1bc
nop
mov r8d, 5
lea rdx, str.TRACE
lea rcx, [rsp + 0x480]
call fcn.140009e14
lea rcx, [rsp + 0x380]
call fcn.14000a1bc
nop
mov r14d, ebx
mov r12d, 4
cmp dword [r13 + 0x10], 0
jle 0x14005df68
lea r15d, [r12 - 2]
nop dword [rax + rax]
cmp r14d, 0xa
jge 0x14005df68
mov rcx, qword [rsp + 0x390]
mov rdx, qword [rsp + 0x398]
mov rax, rdx
sub rax, rcx
cmp rax, r15
jb 0x14005df3f
lea rsi, [rcx + 2]
mov qword [rsp + 0x390], rsi
lea rdi, [rsp + 0x380]
cmp rdx, 8
cmovae rdi, qword [rsp + 0x380]
lea rcx, [rdi + rcx*2]
mov r8, r12
lea rdx, [0x1402f2578]
call fcn.14022f3d0
mov word [rdi + rsi*2], bx
jmp 0x14005df5b
mov qword [rsp + 0x20], r15
lea r9, [0x1402f2578]
mov rdx, r15
lea rcx, [rsp + 0x380]
call fcn.140023610
inc r14d
cmp r14d, dword [r13 + 0x10]
jl 0x14005dee0
lea rcx, [rsp + 0x460]
call fcn.14000a1bc
nop
lea rcx, [rsp + 0x440]
call fcn.14000a1bc
nop
lea r8, [rsp + 0x440]
lea rdx, [rsp + 0x460]
mov rcx, r13
call fcn.1400228f0
lea r14, [rsp + 0x380]
cmp qword [rsp + 0x398], 8
cmovae r14, qword [rsp + 0x380]
mov edx, 0x2040
lea rcx, [rsp + 0xf8]
call fcn.14022d4c4
mov rcx, qword [rsp + 0x270]
movsxd rdx, dword [rcx + 4]
lea rcx, [rsp + 0x270]
add rcx, rdx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rsp + 0x460]
cmp qword [rsp + 0x478], 8
cmovae rdx, qword [rsp + 0x460]
mov r8, qword [rsp + 0x470]
lea rcx, [rsp + 0x270]
call fcn.140019270
mov rdi, rax
mov edx, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rcx, [rsp + 0x108]
call fcn.14022d4c4
mov rsi, rax
lea rdx, [0x1402f20d0]
mov rcx, rdi
call fcn.140018e90
mov rdi, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov edx, dword [rsi + 8]
call qword [rsi]
mov edx, 6
lea rcx, [rsp + 0x118]
call fcn.14022d4ec
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
add rcx, rdi
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rdi]
movsxd rcx, dword [rax + 4]
mov eax, 0x30
mov word [rcx + rdi + 0x58], ax
lea edx, [rax - 0x2d]
lea rcx, [rsp + 0x128]
call fcn.14022d4d8
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
add rcx, rdi
mov rdx, qword [rax + 8]
call qword [rax]
lea rdx, [rsp + 0x440]
cmp qword [rsp + 0x458], 8
cmovae rdx, qword [rsp + 0x440]
mov r8, qword [rsp + 0x450]
mov rcx, rdi
call fcn.140019270
mov rdi, rax
mov edx, 5
lea rcx, [rsp + 0x138]
call fcn.14022d4ec
mov rsi, rax
lea rdx, [0x1402f20d0]
mov rcx, rdi
call fcn.140018e90
mov rdi, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov rdx, qword [rsi + 8]
call qword [rsi]
mov rcx, qword [rdi]
movsxd rdx, dword [rcx + 4]
mov eax, 0x20
mov word [rdx + rdi + 0x58], ax
lea edx, [rax + 0x20]
lea rcx, [rsp + 0x148]
call fcn.14022d4c4
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
add rcx, rdi
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rsp + 0x480]
cmp qword [rsp + 0x498], 8
cmovae rdx, qword [rsp + 0x480]
mov r8, qword [rsp + 0x490]
mov rcx, rdi
call fcn.140019270
lea rdx, [0x1402f25c8]
mov rcx, rax
call fcn.140018e90
mov rcx, rax
mov rdx, r14
call fcn.140018e90
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x14036cfc0], eax
jle 0x14005e1d1
lea rcx, [0x14036cfc0]
call fcn.14022b1d8
cmp dword [0x14036cfc0], 0xffffffff
jne 0x14005e1d1
lea rdi, [0x14036cfc8]
mov rcx, rdi
call fcn.14000a1bc
lea rcx, [0x14027e0e0]
call fcn.14022ace0
lea rcx, [0x14036cfc0]
call fcn.14022b178
jmp 0x14005e1d8
lea rdi, [0x14036cfc8]
lea rcx, [rsp + 0x3c0]
call fcn.140009da0
movdqa xmm0, xmmword [0x1402f9360]
movdqu xmmword [rsp + 0x3d0], xmm0
mov word [rsp + 0x3c0], bx
mov esi, 8
mov dword [rsp + 0x54], esi
mov rcx, qword [rsp + 0x2e8]
test cl, 2
jne 0x14005e245
mov rax, qword [rsp + 0x2b8]
mov r8, qword [rax]
test r8, r8
je 0x14005e245
mov rax, qword [rsp + 0x298]
mov rdx, qword [rax]
cmp r8, qword [rsp + 0x2e0]
cmovb r8, qword [rsp + 0x2e0]
sub r8, rdx
jmp 0x14005e279
test cl, 4
jne 0x14005e289
mov rax, qword [rsp + 0x2b0]
mov rcx, qword [rax]
test rcx, rcx
je 0x14005e289
mov rax, qword [rsp + 0x290]
mov rdx, qword [rax]
mov rax, qword [rsp + 0x2c8]
movsxd r8, dword [rax]
add r8, r8
sub r8, rdx
add r8, rcx
sar r8, 1
lea rcx, [rsp + 0x3c0]
call fcn.140009e14
and esi, 0xfffffff7
mov dword [rsp + 0x54], esi
mov dword [rsp + 0x54], r12d
mov rdx, qword [0x14036cfe0]
cmp rdx, 8
jb 0x14005e2db
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x14036cfc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005e2d6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005e422
call fcn.1400045a8
movups xmm0, xmmword [rsp + 0x3c0]
movups xmmword [0x14036cfc8], xmm0
movups xmm1, xmmword [rsp + 0x3d0]
movups xmmword [0x14036cfd8], xmm1
movdqa xmm0, xmmword [0x1402f9360]
movdqu xmmword [rsp + 0x3d0], xmm0
mov word [rsp + 0x3c0], bx
and r12d, 0xfffffffb
mov dword [rsp + 0x54], r12d
lea rcx, [rsp + 0x3c0]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x440]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x460]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x380]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x480]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x260]
call fcn.14001b7c0
call fcn.1400227c0
cmp qword [0x14036cfe0], 8
cmovae rdi, qword [0x14036cfc8]
mov r8, qword [0x14036cfd8]
mov rdx, rdi
mov rcx, rax
call fcn.140019270
lea rdx, str.WMI_init_failure.
mov rcx, rax
call fcn.140018e90
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
mov rbx, rax
mov dl, 0xa
add rcx, rax
call fcn.140019760
movzx edx, ax
mov rcx, rbx
call fcn.1400195a0
mov rcx, rbx
call fcn.14001a220
nop
lea rcx, [rsp + 0x4a0]
call fcn.14001a370
mov rcx, qword [rsp + 0x4c8]
xor rcx, rsp
call fcn.14022aa20
lea r11, [rsp + 0x4d0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov ecx, 0x8007000e
call fcn.14022bdc0
nop
mov ecx, 0x8007000e
call fcn.14022bdc0
nop
call fcn.140231e34
nop
call fcn.140231e34
int3