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

Disassembly:
push rbp
sub rsp, 0x220
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x198], 0xfffffffffffffffe
mov qword [rbp + 0x110], rdx
mov qword [rbp + 0x108], rcx
xor eax, eax
mov ecx, eax
xor edx, edx
call qword [sym.imp.ole32.dll_CoInitializeEx]
mov dword [rbp + 0x104], eax
cmp dword [rbp + 0x104], 0
jge 0x140036767
mov dword [rbp + 0x11c], 0
jmp 0x140036d87
xor eax, eax
mov r9d, eax
mov edx, 0xffffffff
xor eax, eax
mov rcx, r9
mov r8, r9
mov dword [rsp + 0x20], 0
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x40], 0
call qword [sym.imp.ole32.dll_CoInitializeSecurity]
mov dword [rbp + 0x104], eax
cmp dword [rbp + 0x104], 0
jge 0x1400367d1
call qword [sym.imp.ole32.dll_CoUninitialize]
mov dword [rbp + 0x11c], 0
jmp 0x140036d87
mov qword [rbp + 0xf8], 0
lea rcx, [0x1400588b8]
xor eax, eax
mov edx, eax
mov r8d, 1
lea r9, [0x1400587e8]
lea rax, [rbp + 0xf8]
mov qword [rsp + 0x20], rax
call qword [sym.imp.ole32.dll_CoCreateInstance]
mov dword [rbp + 0x104], eax
cmp dword [rbp + 0x104], 0
jge 0x14003682e
call qword [sym.imp.ole32.dll_CoUninitialize]
mov dword [rbp + 0x11c], 0
jmp 0x140036d87
mov qword [rbp + 0xf0], 0
mov rax, qword [rbp + 0xf8]
mov qword [rbp + 0x20], rax
lea rcx, [rbp + 0xd1]
lea rdx, [rbp + 0xd2]
call fcn.140036e30
lea rax, [rbp + 0xd2]
mov qword [rbp + 0x120], rax
mov rax, qword [rbp + 0x120]
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x138], rax
mov rax, qword [rbp + 0x138]
movzx eax, word [rax + 0x14]
cmp eax, 0
je 0x140036911
mov rax, qword [rbp + 0x28]
mov qword [rbp + 0x150], rax
mov qword [rbp + 0x148], rax
mov rax, qword [rbp + 0x148]
mov qword [rbp + 0x18], rax
mov dword [rbp + 0x144], 0
cmp dword [rbp + 0x144], 0xb
jge 0x14003690c
mov rax, qword [rbp + 0x150]
movsxd rcx, dword [rbp + 0x144]
movzx ecx, word [rax + rcx*2]
mov eax, dword [rbp + 0x144]
mov r8d, 0x32
cdq
idiv r8d
mov rax, qword [rbp + 0x18]
add edx, 0x36
xor ecx, edx
mov dx, cx
movsxd rcx, dword [rbp + 0x144]
mov word [rax + rcx*2], dx
mov eax, dword [rbp + 0x144]
add eax, 1
mov dword [rbp + 0x144], eax
jmp 0x1400368b2
jmp 0x140036911
mov rdx, qword [rbp + 0x28]
lea rcx, [rbp + 0xe8]
mov qword [rbp + 8], rcx
call fcn.140036e70
mov rcx, qword [rbp + 8]
call fcn.140036f10
mov rcx, qword [rbp + 0x20]
mov rdx, rax
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
mov r8, rsp
lea r9, [rbp + 0xf0]
mov qword [r8 + 0x40], r9
mov qword [r8 + 0x38], 0
mov qword [r8 + 0x30], 0
mov dword [r8 + 0x28], 0
mov qword [r8 + 0x20], 0
xor r8d, r8d
mov r9d, r8d
mov r8, r9
call rax
mov dword [rbp + 0x14], eax
jmp 0x14003697d
mov eax, dword [rbp + 0x14]
mov dword [rbp + 0x104], eax
lea rcx, [rbp + 0xe8]
call fcn.140036f60
cmp dword [rbp + 0x104], 0
jge 0x1400369c1
mov rcx, qword [rbp + 0xf8]
mov rax, qword [rcx]
call qword [rax + 0x10]
call qword [sym.imp.ole32.dll_CoUninitialize]
mov dword [rbp + 0x11c], 0
jmp 0x140036d87
mov qword [rbp + 0xc8], 0
mov rax, qword [rbp + 0xf0]
mov qword [rbp - 8], rax
lea rcx, [rbp + 0x77]
lea rdx, [rbp + 0x78]
call fcn.140036f80
lea rax, [rbp + 0x78]
mov qword [rbp + 0x128], rax
mov rax, qword [rbp + 0x128]
mov qword [rbp], rax
mov qword [rbp + 0x178], rax
mov rax, qword [rbp + 0x178]
movzx eax, word [rax + 0x46]
cmp eax, 0
je 0x140036a9b
mov rax, qword [rbp]
mov qword [rbp + 0x190], rax
mov qword [rbp + 0x188], rax
mov rax, qword [rbp + 0x188]
mov qword [rbp - 0x10], rax
mov dword [rbp + 0x184], 0
cmp dword [rbp + 0x184], 0x24
jge 0x140036a96
mov rax, qword [rbp + 0x190]
movsxd rcx, dword [rbp + 0x184]
movzx ecx, word [rax + rcx*2]
mov eax, dword [rbp + 0x184]
mov r8d, 0x32
cdq
idiv r8d
mov rax, qword [rbp - 0x10]
add edx, 0x36
xor ecx, edx
mov dx, cx
movsxd rcx, dword [rbp + 0x184]
mov word [rax + rcx*2], dx
mov eax, dword [rbp + 0x184]
add eax, 1
mov dword [rbp + 0x184], eax
jmp 0x140036a3c
jmp 0x140036a9b
mov rdx, qword [rbp]
lea rcx, [rbp + 0xc0]
call fcn.140036e70
lea rcx, [rbp + 0xc0]
call fcn.140036f10
mov qword [rbp - 0x20], rax
lea rcx, [rbp + 0x5f]
lea rdx, [rbp + 0x60]
call fcn.140036fc0
lea rax, [rbp + 0x60]
mov qword [rbp + 0x130], rax
mov rax, qword [rbp + 0x130]
mov qword [rbp - 0x18], rax
mov qword [rbp + 0x158], rax
mov rax, qword [rbp + 0x158]
movzx eax, word [rax + 6]
cmp eax, 0
je 0x140036b7f
mov rax, qword [rbp - 0x18]
mov qword [rbp + 0x170], rax
mov qword [rbp + 0x168], rax
mov rax, qword [rbp + 0x168]
mov qword [rbp - 0x28], rax
mov dword [rbp + 0x164], 0
cmp dword [rbp + 0x164], 4
jge 0x140036b7a
mov rax, qword [rbp + 0x170]
movsxd rcx, dword [rbp + 0x164]
movzx ecx, word [rax + rcx*2]
mov eax, dword [rbp + 0x164]
mov r8d, 0x32
cdq
idiv r8d
mov rax, qword [rbp - 0x28]
add edx, 0x36
xor ecx, edx
mov dx, cx
movsxd rcx, dword [rbp + 0x164]
mov word [rax + rcx*2], dx
mov eax, dword [rbp + 0x164]
add eax, 1
mov dword [rbp + 0x164], eax
jmp 0x140036b20
jmp 0x140036b7f
mov rdx, qword [rbp - 0x18]
lea rcx, [rbp + 0x68]
call fcn.140036e70
jmp 0x140036b91
lea rcx, [rbp + 0x68]
call fcn.140036f10
mov rcx, qword [rbp - 8]
mov r8, qword [rbp - 0x20]
mov rdx, rax
mov rax, qword [rcx]
mov rax, qword [rax + 0xa0]
mov r9, rsp
lea r10, [rbp + 0xc8]
mov qword [r9 + 0x28], r10
mov qword [r9 + 0x20], 0
mov r9d, 0x30
call rax
mov dword [rbp - 0x2c], eax
jmp 0x140036bd5
mov eax, dword [rbp - 0x2c]
mov dword [rbp + 0x104], eax
lea rcx, [rbp + 0x68]
call fcn.140036f60
lea rcx, [rbp + 0xc0]
call fcn.140036f60
cmp dword [rbp + 0x104], 0
jge 0x140036c2f
mov rcx, qword [rbp + 0xf0]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0xf8]
mov rax, qword [rcx]
call qword [rax + 0x10]
call qword [sym.imp.ole32.dll_CoUninitialize]
mov dword [rbp + 0x11c], 0
jmp 0x140036d87
mov qword [rbp + 0x50], 0
mov dword [rbp + 0x4c], 0
cmp qword [rbp + 0xc8], 0
je 0x140036d50
mov rcx, qword [rbp + 0xc8]
mov rax, qword [rcx]
mov edx, 0xffffffff
mov r8d, 1
lea r9, [rbp + 0x50]
lea r10, [rbp + 0x4c]
mov qword [rsp + 0x20], r10
call qword [rax + 0x20]
mov dword [rbp + 0x104], eax
cmp dword [rbp + 0x4c], 0
jne 0x140036c86
jmp 0x140036d50
mov rcx, qword [rbp + 0x50]
mov rax, qword [rcx]
lea rdx, str.Caption
xor r8d, r8d
lea r9, [rbp + 0x30]
xor r10d, r10d
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], 0
call qword [rax + 0x20]
mov dword [rbp + 0x104], eax
cmp dword [rbp + 0x104], 0
jl 0x140036ce0
mov rdx, qword [rbp + 0x38]
mov rcx, qword [rbp + 0x108]
call fcn.140036fe0
lea rcx, [rbp + 0x30]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rcx, qword [rbp + 0x50]
mov rax, qword [rcx]
lea rdx, str.AdapterRAM
xor r8d, r8d
lea r9, [rbp + 0x30]
xor r10d, r10d
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], 0
call qword [rax + 0x20]
mov dword [rbp + 0x104], eax
cmp dword [rbp + 0x104], 0
jl 0x140036d41
mov rax, qword [rbp + 0x38]
shr rax, 0x14
mov dx, ax
mov rcx, qword [rbp + 0x110]
call fcn.140037010
lea rcx, [rbp + 0x30]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rcx, qword [rbp + 0x50]
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140036c3e
mov rcx, qword [rbp + 0xf0]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0xf8]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0xc8]
mov rax, qword [rcx]
call qword [rax + 0x10]
call qword [sym.imp.ole32.dll_CoUninitialize]
mov dword [rbp + 0x11c], 1
mov eax, dword [rbp + 0x11c]
add rsp, 0x220
pop rbp
ret