Function at 0x1400019e0
Capabilities:
Check for time delay via gettickcount
Query or enumerate registry value

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xcf0
mov qword [rsp + 0x1c8], 0xfffffffffffffffe
mov rax, qword [0x14015d3e0]
xor rax, rsp
mov qword [rsp + 0xce0], rax
mov r12, r8
mov r14, rdx
mov r15, rcx
lea r13, str.base_stor_vssmodulescoord_srcprovmgr.cxx
mov qword [rsp + 0x58], r13
lea rax, str.CVssProviderManager::GetProviderProperties
mov qword [rsp + 0x60], rax
lea rax, str.CORPRVMC
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x70], 0x576
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
xor esi, esi
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rsi + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
mov dword [rsp + 0x148], esi
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x150], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x158], rax
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x160], eax
mov eax, dword [rsp + 0x74]
mov dword [rsp + 0x164], eax
call qword [sym.imp.api_ms_win_core_sysinfo_l1_1_0.dll_GetTickCount]
nop dword [rax + rax]
mov dword [rsp + 0x174], eax
mov dword [rsp + 0x144], 0xffffffff
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x178], eax
mov dword [rsp + 0x140], esi
mov qword [rsp + 0x1a0], rsi
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x180], xmm0
xorps xmm1, xmm1
movdqa xmmword [rsp + 0x190], xmm1
mov qword [rsp + 0x1b8], rsi
lea rcx, [rsp + 0x1b8]
call qword [sym.imp.VssTrace.DLL_Ordinal_10]
nop dword [rax + rax]
test eax, eax
js 0x14001aa14
lea rcx, [rsp + 0x140]
call qword [sym.imp.VssTrace.DLL_Ordinal_9]
nop dword [rax + rax]
test eax, eax
js 0x14001aa14
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x1a0], rax
test rax, rax
je 0x14001aa21
mov eax, dword [rax + 0x30]
inc eax
mov dword [rsp + 0x170], eax
mov ebx, dword [rsp + 0x178]
cmp ebx, 0xff
jne 0x140001b83
mov ebx, RegisterTypeLib
mov edi, dword [rsp + 0x164]
call qword [sym.imp.VssTrace.DLL_Ordinal_5]
nop dword [rax + rax]
test eax, eax
jne 0x14001aa2d
cmp byte [rsp + 0xfb], sil
je 0x140001bd6
lea rbx, [rsp + 0x80]
mov edi, 0xf
nop word [rax + rax]
mov rcx, qword [rbx]
test rcx, rcx
jne 0x14001aabc
add rbx, 8
sub rdi, 1
jne 0x140001bc0
mov qword [rsp + 0x110], rsi
mov qword [rsp + 0x1b0], rsi
lea rdx, [rsp + 0x4a0]
mov rcx, r14
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CLSIDFromString]
nop dword [rax + rax]
mov ebx, eax
mov dword [rsp + 0x148], eax
test eax, eax
js 0x14001aad0
lea rax, [rsp + 0x110]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rdx, r14
mov rcx, r15
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegOpenKeyExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jne 0x14001ab44
movups xmm0, xmmword [str.QueryStringValue]
movups xmmword [rsp + 0x4b0], xmm0
movups xmm1, xmmword [0x1400f9500]
movups xmmword [rsp + 0x4c0], xmm1
movzx eax, word [0x1400f9510]
mov word [rsp + 0x4d0], ax
mov dword [rsp + 0x148], esi
xor edx, edx
mov r8d, 0x200
lea rcx, [rsp + 0xae0]
call sub.msvcrt.dll_memset
mov dword [rsp + 0x120], 0x1fe
lea rax, [rsp + 0x120]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xae0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
xor r8d, r8d
lea rdx, [0x1400f9584]
mov rcx, qword [rsp + 0x110]
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jne 0x14001abc5
mov ebx, dword [rsp + 0x50]
cmp ebx, 1
jne 0x14001ac59
movups xmm0, xmmword [str.QueryDWORDValue]
movups xmmword [rsp + 0x4b0], xmm0
movups xmm1, xmmword [0x1400f9528]
movups xmmword [rsp + 0x4c0], xmm1
mov dword [rsp + 0x148], esi
mov dword [rsp + 0x130], esi
mov dword [rsp + 0x50], esi
mov dword [rsp + 0x120], 4
lea rax, [rsp + 0x120]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x130]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
xor r8d, r8d
lea rdx, [0x1400f9578]
mov rcx, qword [rsp + 0x110]
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jne 0x14001adda
mov ebx, dword [rsp + 0x50]
cmp ebx, 4
jne 0x14001ae6e
mov edi, dword [rsp + 0x130]
cmp edi, 1
jne 0x14001afef
movups xmm0, xmmword [str.QueryStringValue]
movups xmmword [rsp + 0x4b0], xmm0
movups xmm1, xmmword [0x1400f9500]
movups xmmword [rsp + 0x4c0], xmm1
movzx eax, word [0x1400f9510]
mov word [rsp + 0x4d0], ax
mov dword [rsp + 0x148], esi
xor edx, edx
mov r8d, 0x200
lea rcx, [rsp + 0x8e0]
call sub.msvcrt.dll_memset
mov dword [rsp + 0x120], 0x1fe
lea rax, [rsp + 0x120]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x8e0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
xor r8d, r8d
lea rdx, [0x1400f9568]
mov rcx, qword [rsp + 0x110]
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jne 0x14001b081
mov ebx, dword [rsp + 0x50]
cmp ebx, 1
jne 0x14001b115
movups xmm0, xmmword [str.QueryStringValue]
movups xmmword [rsp + 0x4b0], xmm0
movups xmm1, xmmword [0x1400f9500]
movups xmmword [rsp + 0x4c0], xmm1
movzx eax, word [0x1400f9510]
mov word [rsp + 0x4d0], ax
mov dword [rsp + 0x148], esi
xor edx, edx
mov r8d, 0x200
lea rcx, [rsp + 0x4e0]
call sub.msvcrt.dll_memset
mov dword [rsp + 0x120], 0x1fe
lea rax, [rsp + 0x120]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x4e0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
xor r8d, r8d
lea rdx, [0x1400f9550]
mov rcx, qword [rsp + 0x110]
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jne 0x14001b296
mov ebx, dword [rsp + 0x50]
cmp ebx, 1
jne 0x14001b32a
lea rdx, [rsp + 0x490]
lea rcx, [rsp + 0x4e0]
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CLSIDFromString]
nop dword [rax + rax]
mov ebx, eax
mov dword [rsp + 0x148], eax
test eax, eax
js 0x14001b4ab
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea r14, [0x1400f9540]
mov rdx, r14
mov rcx, qword [rsp + 0x110]
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegOpenKeyExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jne 0x14001b527
movups xmm0, xmmword [str.QueryStringValue]
movups xmmword [rsp + 0x4b0], xmm0
movups xmm1, xmmword [0x1400f9500]
movups xmmword [rsp + 0x4c0], xmm1
movzx eax, word [0x1400f9510]
mov word [rsp + 0x4d0], ax
mov dword [rsp + 0x148], esi
xor edx, edx
mov r8d, 0x200
lea rcx, [rsp + 0x6e0]
call sub.msvcrt.dll_memset
mov dword [rsp + 0x120], 0x1fe
lea rax, [rsp + 0x120]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x6e0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
xor r8d, r8d
lea rdx, [0x1400f9538]
mov rcx, qword [rsp + 0x1b0]
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jne 0x14001b5b0
mov ebx, dword [rsp + 0x50]
cmp ebx, 1
jne 0x14001b644
lea rdx, [rsp + 0x480]
lea rcx, [rsp + 0x6e0]
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CLSIDFromString]
nop dword [rax + rax]
mov ebx, eax
mov dword [rsp + 0x148], eax
test eax, eax
js 0x14001b7c5
movaps xmm0, xmmword [rsp + 0x480]
movdqa xmmword [rsp + 0x100], xmm0
movaps xmm1, xmmword [rsp + 0x490]
movdqa xmmword [rsp + 0x120], xmm1
movaps xmm0, xmmword [rsp + 0x4a0]
movdqa xmmword [rsp + 0x4b0], xmm0
lea rax, [rsp + 0x100]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x8e0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], edi
lea r9, [rsp + 0xae0]
lea r8, [rsp + 0x4b0]
lea rdx, [rsp + 0x140]
mov rcx, r12
call fcn.140004810
nop
lea r15, str.CVssProviderManager::GetProviderProperties
lea r12, str.CORPRVMC
mov rcx, qword [rsp + 0x110]
test rcx, rcx
je 0x1400020c5
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
test eax, eax
jne 0x14001b850
mov rcx, qword [rsp + 0x1b0]
test rcx, rcx
je 0x1400020e6
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
test eax, eax
jne 0x14001b8c3
mov edi, dword [rsp + 0x148]
mov rbx, rsi
mov rcx, qword [rsp + rbx*8 + 0x180]
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoTaskMemFree]
nop dword [rax + rax]
mov qword [rsp + rbx*8 + 0x180], rsi
inc rbx
cmp rbx, 4
jl 0x1400020f0
call qword [sym.imp.api_ms_win_core_sysinfo_l1_1_0.dll_GetTickCount]
nop dword [rax + rax]
mov r8d, eax
sub r8d, dword [rsp + 0x174]
mov eax, 0x10624dd3
mul r8d
mov r9d, edx
shr r9d, 6
imul ecx, r9d, 0x3e8
mov ebx, r8d
sub ebx, ecx
mov eax, 0x88888889
mul r9d
shr edx, 5
imul eax, edx, 0x3c
sub r9d, eax
mov eax, 0x45e7b273
mul r8d
mov r10d, edx
shr r10d, 0xe
mov eax, 0x88888889
mul r10d
shr edx, 5
imul ecx, edx, 0x3c
sub r10d, ecx
mov eax, 0x95217cb1
mul r8d
mov r11d, edx
shr r11d, 0x15
mov eax, 0x88888889
mul r11d
shr edx, 5
imul eax, edx, 0x3c
sub r11d, eax
mov eax, dword [rsp + 0x178]
cmp eax, 0xff
jne 0x1400021ab
mov eax, RegisterTypeLib
mov ecx, dword [rsp + 0x148]
mov dword [rsp + 0x48], ecx
mov dword [rsp + 0x40], r8d
mov dword [rsp + 0x38], ebx
mov dword [rsp + 0x30], r9d
mov dword [rsp + 0x28], r10d
mov dword [rsp + 0x20], r11d
lea r9, str.Time_spent:__02ld:_02ld:_02ld__04ld__total:__x__HRESULT:__x
mov r8d, eax
lea rdx, str.EXIT
lea rcx, [rsp + 0x140]
call fcn.14000a350
mov rcx, qword [rsp + 0x1a0]
call qword [sym.imp.VssTrace.DLL_Ordinal_9]
nop dword [rax + rax]
mov eax, edi
mov rcx, qword [rsp + 0xce0]
xor rcx, rsp
call fcn.1400164a0
add rsp, 0xcf0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov rax, qword [rsp + 0x1a0]
jmp 0x140001b5a
mov dword [rsp + 0x170], esi
jmp 0x140001b6f
mov ecx, edi
call qword [sym.imp.VssTrace.DLL_Ordinal_7]
nop dword [rax + rax]
test eax, eax
je 0x140001b9e
lea rcx, [rsp + 0x140]
call fcn.1400c3fe4
cmp dword [rsp + 0x140], esi
je 0x140001b9e
mov qword [rsp + 0x40], rsi
mov dword [rsp + 0x38], ebx
lea rax, str.ENTER
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x164]
mov dword [rsp + 0x20], eax
mov r9d, dword [rsp + 0x170]
mov r8d, dword [rsp + 0x160]
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x150]
call qword [sym.imp.VssTrace.DLL_Ordinal_3]
nop dword [rax + rax]
nop
jmp 0x140001b9e
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoTaskMemFree]
nop dword [rax + rax]
mov qword [rbx], rsi
jmp 0x140001bcc
mov qword [rsp + 0x58], r13
lea r15, str.CVssProviderManager::GetProviderProperties
mov qword [rsp + 0x60], r15
lea r12, str.CORPRVMC
mov qword [rsp + 0x68], r12
mov dword [rsp + 0x70], 0x586
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
mov qword [rsp + 0x20], r14
lea r9, str.CLSIDFromString__s_
mov r8d, ebx
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2a9c
mov qword [rsp + 0x58], r13
lea r15, str.CVssProviderManager::GetProviderProperties
mov qword [rsp + 0x60], r15
lea r12, str.CORPRVMC
mov qword [rsp + 0x68], r12
mov dword [rsp + 0x70], 0x591
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
test ebx, ebx
jle 0x14001aba4
movzx ebx, bx
or ebx, 0x80070000
mov qword [rsp + 0x20], r14
lea r9, str.RegOpenKeyExW_hKeyProviders__s_KEY_READ_..._
mov r8d, ebx
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2a9c
lea rdi, str.base_stor_vssmodulescoord_src_reg_util.cxx
mov qword [rsp + 0x58], rdi
lea r12, str.QueryStringValue
mov qword [rsp + 0x60], r12
lea r15, str.CORREGUC
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xa6
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
test ebx, ebx
jle 0x14001ac2c
movzx ebx, bx
or ebx, 0x80070000
lea r13, [0x1400f9584]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r14
lea r9, str.RegQueryValueExW__s__s_..._
mov r8d, ebx
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2a9c
lea rdi, str.base_stor_vssmodulescoord_src_reg_util.cxx
mov qword [rsp + 0x58], rdi
lea r12, str.QueryStringValue
mov qword [rsp + 0x60], r12
lea r15, str.CORREGUC
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xac
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
mov r8d, ebx
lea rdx, [rsp + 0x3d8]
lea rcx, [rsp + 0x58]
call fcn.1400bedbc
mov r8d, 1
lea rdx, [rsp + 0x330]
mov rcx, rax
call fcn.1400bedbc
lea r13, [0x1400f9584]
mov r8, r13
lea rdx, [rsp + 0x288]
mov rcx, rax
call fcn.1400bf0cc
mov r8, r14
lea rdx, [rsp + 0x1e0]
mov rcx, rax
call fcn.1400bf0cc
mov r9d, 1
mov r8, rax
mov edx, 0x3007
lea rcx, [rsp + 0x140]
call fcn.1400c09a4
lea rcx, [rsp + 0x288]
call fcn.1400bed5c
lea rcx, [rsp + 0x330]
call fcn.1400bed5c
lea rcx, [rsp + 0x3d8]
call fcn.1400bed5c
lea rcx, [rsp + 0x58]
call fcn.1400bed5c
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xad
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], r13
lea rax, [rsp + 0x4b0]
mov qword [rsp + 0x20], rax
lea r9, str._s:_The_value__s_in_the_key_with_name__s_has_not_a_REG_SZ_type._dwType__0x_08lx
mov r8d, 0x80042302
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2090
lea rdi, str.base_stor_vssmodulescoord_src_reg_util.cxx
mov qword [rsp + 0x58], rdi
lea r12, str.QueryDWORDValue
mov qword [rsp + 0x60], r12
lea r15, str.CORREGUC
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xf1
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
test ebx, ebx
jle 0x14001ae41
movzx ebx, bx
or ebx, 0x80070000
lea r13, [0x1400f9578]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r14
lea r9, str.RegQueryValueExW__s__s_..._
mov r8d, ebx
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2a9c
lea rdi, str.base_stor_vssmodulescoord_src_reg_util.cxx
mov qword [rsp + 0x58], rdi
lea r12, str.QueryDWORDValue
mov qword [rsp + 0x60], r12
lea r15, str.CORREGUC
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xf7
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
mov r8d, ebx
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x58]
call fcn.1400bedbc
mov r8d, 4
lea rdx, [rsp + 0x288]
mov rcx, rax
call fcn.1400bedbc
lea r13, [0x1400f9578]
mov r8, r13
lea rdx, [rsp + 0x330]
mov rcx, rax
call fcn.1400bf0cc
mov r8, r14
lea rdx, [rsp + 0x3d8]
mov rcx, rax
call fcn.1400bf0cc
mov r9d, 1
mov r8, rax
mov edx, 0x3007
lea rcx, [rsp + 0x140]
call fcn.1400c09a4
lea rcx, [rsp + 0x330]
call fcn.1400bed5c
lea rcx, [rsp + 0x288]
call fcn.1400bed5c
lea rcx, [rsp + 0x1e0]
call fcn.1400bed5c
lea rcx, [rsp + 0x58]
call fcn.1400bed5c
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xf8
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], r13
lea rax, [rsp + 0x4b0]
mov qword [rsp + 0x20], rax
lea r9, str._s:_The_value__s_in_the_key_with_name__s_has_not_a_REG_DWORD_type._dwType__0x_08lx
mov r8d, 0x80042302
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2090
cmp edi, 2
jb 0x14001affd
cmp edi, 4
jbe 0x140001d87
mov qword [rsp + 0x58], r13
lea r15, str.CVssProviderManager::GetProviderProperties
mov qword [rsp + 0x60], r15
lea r12, str.CORPRVMC
mov qword [rsp + 0x68], r12
mov dword [rsp + 0x70], 0x5b2
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
mov dword [rsp + 0x30], edi
lea r13, [0x1400f9578]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r14
lea r9, str.QueryDWORDValue_hProvider__s__s__d_
xor r8d, r8d
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2a9c
lea rdi, str.base_stor_vssmodulescoord_src_reg_util.cxx
mov qword [rsp + 0x58], rdi
lea r12, str.QueryStringValue
mov qword [rsp + 0x60], r12
lea r15, str.CORREGUC
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xa6
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
test ebx, ebx
jle 0x14001b0e8
movzx ebx, bx
or ebx, 0x80070000
lea r13, [0x1400f9568]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r14
lea r9, str.RegQueryValueExW__s__s_..._
mov r8d, ebx
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2a9c
lea rdi, str.base_stor_vssmodulescoord_src_reg_util.cxx
mov qword [rsp + 0x58], rdi
lea r12, str.QueryStringValue
mov qword [rsp + 0x60], r12
lea r15, str.CORREGUC
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xac
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
mov r8d, ebx
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x58]
call fcn.1400bedbc
mov r8d, 1
lea rdx, [rsp + 0x288]
mov rcx, rax
call fcn.1400bedbc
lea r13, [0x1400f9568]
mov r8, r13
lea rdx, [rsp + 0x330]
mov rcx, rax
call fcn.1400bf0cc
mov r8, r14
lea rdx, [rsp + 0x3d8]
mov rcx, rax
call fcn.1400bf0cc
mov r9d, 1
mov r8, rax
mov edx, 0x3007
lea rcx, [rsp + 0x140]
call fcn.1400c09a4
lea rcx, [rsp + 0x330]
call fcn.1400bed5c
lea rcx, [rsp + 0x288]
call fcn.1400bed5c
lea rcx, [rsp + 0x1e0]
call fcn.1400bed5c
lea rcx, [rsp + 0x58]
call fcn.1400bed5c
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xad
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], r13
lea rax, [rsp + 0x4b0]
mov qword [rsp + 0x20], rax
lea r9, str._s:_The_value__s_in_the_key_with_name__s_has_not_a_REG_SZ_type._dwType__0x_08lx
mov r8d, 0x80042302
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2090
lea rdi, str.base_stor_vssmodulescoord_src_reg_util.cxx
mov qword [rsp + 0x58], rdi
lea r12, str.QueryStringValue
mov qword [rsp + 0x60], r12
lea r15, str.CORREGUC
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xa6
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
test ebx, ebx
jle 0x14001b2fd
movzx ebx, bx
or ebx, 0x80070000
lea r13, [0x1400f9550]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r14
lea r9, str.RegQueryValueExW__s__s_..._
mov r8d, ebx
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2a9c
lea rdi, str.base_stor_vssmodulescoord_src_reg_util.cxx
mov qword [rsp + 0x58], rdi
lea r12, str.QueryStringValue
mov qword [rsp + 0x60], r12
lea r15, str.CORREGUC
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xac
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
mov r8d, ebx
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x58]
call fcn.1400bedbc
mov r8d, 1
lea rdx, [rsp + 0x288]
mov rcx, rax
call fcn.1400bedbc
lea r13, [0x1400f9550]
mov r8, r13
lea rdx, [rsp + 0x330]
mov rcx, rax
call fcn.1400bf0cc
mov r8, r14
lea rdx, [rsp + 0x3d8]
mov rcx, rax
call fcn.1400bf0cc
mov r9d, 1
mov r8, rax
mov edx, 0x3007
lea rcx, [rsp + 0x140]
call fcn.1400c09a4
lea rcx, [rsp + 0x330]
call fcn.1400bed5c
lea rcx, [rsp + 0x288]
call fcn.1400bed5c
lea rcx, [rsp + 0x1e0]
call fcn.1400bed5c
lea rcx, [rsp + 0x58]
call fcn.1400bed5c
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xad
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], r13
lea rax, [rsp + 0x4b0]
mov qword [rsp + 0x20], rax
lea r9, str._s:_The_value__s_in_the_key_with_name__s_has_not_a_REG_SZ_type._dwType__0x_08lx
mov r8d, 0x80042302
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2090
mov qword [rsp + 0x58], r13
lea r15, str.CVssProviderManager::GetProviderProperties
mov qword [rsp + 0x60], r15
lea r12, str.CORPRVMC
mov qword [rsp + 0x68], r12
mov dword [rsp + 0x70], 0x5d2
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
lea rax, [rsp + 0x4e0]
mov qword [rsp + 0x20], rax
lea r9, str.CLSIDFromString__s_
mov r8d, ebx
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2a9c
mov qword [rsp + 0x58], r13
lea r15, str.CVssProviderManager::GetProviderProperties
mov qword [rsp + 0x60], r15
lea r12, str.CORPRVMC
mov qword [rsp + 0x68], r12
mov dword [rsp + 0x70], 0x5de
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
test ebx, ebx
jle 0x14001b587
movzx ebx, bx
or ebx, 0x80070000
lea rax, [rsp + 0x4e0]
mov qword [rsp + 0x20], rax
lea r9, str.CLSIDFromString__s_
mov r8d, ebx
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2a9c
lea rdi, str.base_stor_vssmodulescoord_src_reg_util.cxx
mov qword [rsp + 0x58], rdi
lea r12, str.QueryStringValue
mov qword [rsp + 0x60], r12
lea r15, str.CORREGUC
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xa6
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
test ebx, ebx
jle 0x14001b617
movzx ebx, bx
or ebx, 0x80070000
lea r13, [0x1400f9538]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r14
lea r9, str.RegQueryValueExW__s__s_..._
mov r8d, ebx
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2a9c
lea rdi, str.base_stor_vssmodulescoord_src_reg_util.cxx
mov qword [rsp + 0x58], rdi
lea r12, str.QueryStringValue
mov qword [rsp + 0x60], r12
lea r15, str.CORREGUC
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xac
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
mov r8d, ebx
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x58]
call fcn.1400bedbc
mov r8d, 1
lea rdx, [rsp + 0x288]
mov rcx, rax
call fcn.1400bedbc
lea r13, [0x1400f9538]
mov r8, r13
lea rdx, [rsp + 0x330]
mov rcx, rax
call fcn.1400bf0cc
mov r8, r14
lea rdx, [rsp + 0x3d8]
mov rcx, rax
call fcn.1400bf0cc
mov r9d, 1
mov r8, rax
mov edx, 0x3007
lea rcx, [rsp + 0x140]
call fcn.1400c09a4
lea rcx, [rsp + 0x330]
call fcn.1400bed5c
lea rcx, [rsp + 0x288]
call fcn.1400bed5c
lea rcx, [rsp + 0x1e0]
call fcn.1400bed5c
lea rcx, [rsp + 0x58]
call fcn.1400bed5c
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0xad
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], r13
lea rax, [rsp + 0x4b0]
mov qword [rsp + 0x20], rax
lea r9, str._s:_The_value__s_in_the_key_with_name__s_has_not_a_REG_SZ_type._dwType__0x_08lx
mov r8d, 0x80042302
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2090
mov qword [rsp + 0x58], r13
lea r15, str.CVssProviderManager::GetProviderProperties
mov qword [rsp + 0x60], r15
lea r12, str.CORPRVMC
mov qword [rsp + 0x68], r12
mov dword [rsp + 0x70], 0x5f1
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
lea rax, [rsp + 0x6e0]
mov qword [rsp + 0x20], rax
lea r9, str.CLSIDFromString__s_
mov r8d, ebx
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.1400c2a9c
nop
xor esi, esi
lea r13, str.base_stor_vssmodulescoord_srcprovmgr.cxx
jmp 0x140002096
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r12
mov dword [rsp + 0x70], 0x602
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov r9d, eax
lea r8, str.Error_closing_the_hKeyProvider_key.__0x_08lx_
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.140009fb0
nop
jmp 0x1400020c5
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r12
mov dword [rsp + 0x70], 0x606
mov dword [rsp + 0x74], 1
mov dword [rsp + 0x78], 0xff
mov dword [rsp + 0xf8], 0x1000000
xor edx, edx
lea r8d, [rdx + 0x78]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll_memset
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov r9d, eax
lea r8, str.Error_closing_the_hKeyCLSID_key.__0x_08lx_
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x140]
call fcn.140009fb0
nop
jmp 0x1400020e6