Function at 0x14006e490
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov rdi, rcx
xor ebx, ebx
lea rcx, str.COMBASE.DLL
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [rdi + 0x18], rax
mov esi, 0x80070000
test rax, rax
jne 0x14006e4d7
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x14006e5f7
mov rcx, qword [rdi + 0x18]
lea rdx, str.WindowsCreateString
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x28], rax
test rax, rax
jne 0x14006e509
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x14006e5f7
mov rcx, qword [rdi + 0x18]
lea rdx, str.WindowsDeleteString
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x38], rax
test rax, rax
jne 0x14006e53b
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x14006e5f7
mov rcx, qword [rdi + 0x18]
lea rdx, str.RoActivateInstance
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x48], rax
test rax, rax
jne 0x14006e56d
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x14006e5f7
mov rcx, qword [rdi + 0x18]
lea rdx, str.RoGetActivationFactory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x50], rax
test rax, rax
jne 0x14006e59b
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x14006e5f7
mov rcx, qword [rdi + 0x18]
lea rdx, str.WindowsGetStringRawBuffer
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x40], rax
test rax, rax
jne 0x14006e5c9
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x14006e5f7
mov rcx, qword [rdi + 0x18]
lea rdx, str.WindowsCreateStringReference
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x30], rax
test rax, rax
jne 0x14006e60b
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
jns 0x14006e60b
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x14006e60b
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
and qword [rdi + 0x18], 0
lea rcx, str.Wscapi.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [rdi + 0x20], rax
test rax, rax
jne 0x14006e635
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, esi
test eax, eax
cmovle ecx, eax
test ecx, ecx
js 0x14006e683
mov rcx, qword [rdi + 0x20]
lea rdx, str.WscRegisterForChanges
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x58], rax
test rax, rax
jne 0x14006e663
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, esi
test eax, eax
cmovle ecx, eax
test ecx, ecx
js 0x14006e683
mov rcx, qword [rdi + 0x20]
lea rdx, str.WscUnRegisterChanges
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x60], rax
test rax, rax
jne 0x14006e683
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rsi, qword [rsp + 0x40]
mov eax, ebx
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret