Function at 0x140255fc0
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 0x140256007
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x140256127
mov rcx, qword [rdi + 0x18]
lea rdx, [0x1402c85c0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x28], rax
test rax, rax
jne 0x140256039
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x140256127
mov rcx, qword [rdi + 0x18]
lea rdx, [0x1402c85d8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x38], rax
test rax, rax
jne 0x14025606b
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x140256127
mov rcx, qword [rdi + 0x18]
lea rdx, [0x1402c85f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x48], rax
test rax, rax
jne 0x14025609d
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x140256127
mov rcx, qword [rdi + 0x18]
lea rdx, [0x14028a500]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x50], rax
test rax, rax
jne 0x1402560cb
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x140256127
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 0x1402560f9
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x140256127
mov rcx, qword [rdi + 0x18]
lea rdx, [0x1402c8628]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x30], rax
test rax, rax
jne 0x14025613b
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, esi
test eax, eax
cmovle ebx, eax
test ebx, ebx
jns 0x14025613b
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x14025613b
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 0x140256165
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, esi
test eax, eax
cmovle ecx, eax
test ecx, ecx
js 0x1402561b3
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 0x140256193
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, esi
test eax, eax
cmovle ecx, eax
test ecx, ecx
js 0x1402561b3
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 0x1402561b3
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