Function at 0x14000357c
Capabilities:
Check if file exists
Delete registry value
Query or enumerate registry value
Set registry value

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x580]
sub rsp, 0x680
mov rax, qword [0x140090008]
xor rax, rsp
mov qword [rbp + 0x570], rax
xor r15d, r15d
or r12, 0xffffffffffffffff
mov dword [rbp - 0x68], r15d
mov esi, edx
mov dword [rsp + 0x68], r15d
mov rbx, rcx
mov r14d, r12d
mov dword [rsp + 0x60], r12d
mov edi, r15d
mov dword [rbp - 0x74], r15d
call fcn.140002dfc
mov rcx, rax
test rax, rax
je 0x140004fe6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x40], rax
call fcn.140002dfc
mov rcx, rax
test rax, rax
je 0x140004fe6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], rax
mov qword [rsp + 0x70], r15
call fcn.140002dfc
mov rcx, rax
test rax, rax
je 0x140004fe6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x58], rax
call fcn.140002dfc
mov rcx, rax
test rax, rax
je 0x140004fe6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x60], rax
call fcn.140002dfc
mov rcx, rax
test rax, rax
je 0x140004fe6
mov rax, qword [rax]
call qword [rax + 0x18]
lea rdx, str.Blend.17.0
mov qword [rbp - 0x80], r15
add rax, 0x18
lea rcx, [rbp - 0x18]
mov qword [rbp - 0x70], rax
call fcn.140009580
mov eax, r15d
lea r9, str.SoftwareMicrosoftVSCommon17.0SQM
xchg qword [0x140090f60], rax
mov r8d, esi
lea rcx, [0x140091790]
mov rdx, rbx
call fcn.1400105a0
xor ebx, ebx
lea r13, str.SoftwareMicrosoftBlend17.0
mov esi, eax
test eax, eax
jns 0x140003740
call fcn.140002dfc
mov rcx, rax
test rax, rax
je 0x140004fe6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
lea r8, str.util_InitMainParam
lea rdx, str.Failure_calling__s.
mov qword [rbp], rax
lea rcx, [rbp]
call fcn.14000a5f0
mov rbx, qword [rbp]
lea r15d, [r12 + 2]
mov r8, rbx
lea rdx, str.VisualStudio
mov ecx, r15d
mov r9d, esi
call fcn.14005378c
lea rdx, [rbx - 0x18]
mov eax, r12d
mov edi, esi
lock xadd dword [rdx + 0x10], eax
add eax, r12d
xor ebx, ebx
test eax, eax
jg 0x140004c48
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov esi, ebx
mov r12, rbx
jmp 0x140004c63
mov rdx, qword [0x1400917d0]
lea rax, [0x140091748]
mov qword [rsp + 0x28], rax
lea r9, [0x1400917d8]
lea r8, str.0_t_a_
mov qword [rsp + 0x20], rbx
mov rcx, r13
call fcn.14000fb30
mov dword [rbp - 0x2c], eax
mov r15d, 1
test eax, eax
jns 0x140003784
cmp eax, 0x80070057
je 0x1400037b4
jmp 0x1400037a6
cmp dword [0x140091760], ebx
je 0x140003794
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
lea rcx, [0x140091790]
call fcn.14001065c
mov edi, eax
test eax, eax
jns 0x1400037b4
mov dword [0x140091818], r15d
mov dword [0x140091740], r15d
cmp qword [0x140091848], rbx
lea rax, [0x14000336c]
mov qword [0x1400917b0], rax
jne 0x140003813
cmp qword [0x140091930], rbx
jne 0x140003813
lea rcx, [rbp + 0x360]
call fcn.140012ee8
cmp word [rbp + 0x360], bx
je 0x140003813
mov r9d, 0x103
lea rbx, [0x140092650]
lea r8, [rbp + 0x360]
mov rcx, rbx
lea edx, [r9 + 1]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy_s]
mov qword [0x140091930], rbx
xor ebx, ebx
lea rcx, [0x1400921f0]
call fcn.14004c1c4
lea rdx, str.VisualStudio
mov ecx, 3
test eax, eax
jns 0x140003838
lea r8, str.Running_in_traditional_mode.
jmp 0x140003860
lea r8, str.Running_in_isolation_mode.
call fcn.14005352c
call fcn.14004c2cc
test eax, eax
jns 0x140003868
lea r8, str.Failed_to_read_installation_config_info.
mov ecx, 2
lea rdx, str.VisualStudio
mov r9d, eax
call fcn.14005378c
cmp byte [0x1400921f0], bl
je 0x140003949
lea rcx, [rbp + 0x50]
call fcn.140017214
mov rdx, qword [rbp + 0x50]
add rdx, 0xffffffffffffffe8
mov rbx, qword [rax]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, r12d
xor r8d, r8d
test eax, eax
jg 0x1400038a6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor r8d, r8d
mov rcx, r12
inc rcx
cmp word [rbx + rcx*2], r8w
jne 0x1400038a9
mov rdx, qword [reloc.OLEAUT32.dll_SysStringLen]
movabs rax, 0x7ffffffffffffffe
sub rax, rdx
cmp rax, rcx
jb 0x140004ff1
cmp qword [reloc.OLEAUT32.dll_VariantInit], 8
lea r9, [0x140090700]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x130]
cmovae r9, qword [0x140090700]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rdx
call fcn.14000ba08
xor ebx, ebx
lea rdx, [rbp + 0x130]
cmp qword [rbp + 0x148], 8
jb 0x140003925
mov rdx, qword [rbp + 0x130]
test rdx, rdx
jne 0x140003925
mov eax, ebx
jmp 0x140003931
mov rax, r12
inc rax
cmp word [rdx + rax*2], bx
jne 0x140003928
mov r8d, eax
lea rcx, [rbp - 0x18]
call fcn.14000a350
lea rcx, [rbp + 0x130]
call fcn.140009344
cmp byte [0x1400925d0], bl
jne 0x14000398c
lea rcx, str.shell32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14000397c
lea rdx, str.SetCurrentProcessExplicitAppUserModelID
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1400925c8], rax
jmp 0x140003983
mov rax, qword [0x1400925c8]
mov byte [0x1400925d0], r15b
jmp 0x140003993
mov rax, qword [0x1400925c8]
test rax, rax
je 0x14000399e
mov rcx, qword [rbp - 0x18]
call rax
mov ecx, dword [0x140091768]
mov eax, ecx
neg eax
sbb esi, esi
and esi, 0x100
add esi, r15d
test ecx, ecx
je 0x1400039bb
bts esi, 9
or esi, 0x11800
call fcn.140021768
test eax, eax
js 0x140004c5c
lea rdx, [0x140066310]
mov qword [0x140091788], rbx
mov ecx, 0x6e8
call fcn.140052ab0
test rax, rax
je 0x140004c50
mov rcx, rax
call fcn.14000b618
mov qword [0x140091788], rax
test rax, rax
je 0x140004c57
lea rcx, [rax + 8]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov eax, dword [0x140091714]
test eax, eax
jne 0x140003aa1
cmp dword [0x140091850], ebx
jne 0x140003a6d
cmp dword [0x140091830], ebx
jne 0x140003a6d
cmp dword [0x140091720], ebx
jne 0x140003a6d
cmp dword [0x14009171c], ebx
jne 0x140003a6d
mov rcx, qword [0x140091788]
mov rax, qword [rcx]
call qword [rax + 0x68]
test al, al
je 0x140003a67
mov esi, 0xc22
mov r12, qword [rsp + 0x70]
mov edi, 0x80004005
mov r14d, ebx
jmp 0x140004c63
mov eax, dword [0x140091714]
test eax, eax
jne 0x140003aa1
cmp dword [0x140091850], ebx
jne 0x140003aa1
cmp dword [0x140091830], ebx
jne 0x140003aa1
cmp dword [0x14009171c], ebx
jne 0x140003aa1
mov rcx, qword [0x140091788]
mov rax, qword [rcx]
call qword [rax + 0x70]
test al, al
je 0x140003aa1
mov esi, 0xc25
jmp 0x140003a55
cmp dword [0x14009181c], ebx
je 0x140003ac2
xor r9d, r9d
lea r8, [0x140070d50]
lea rdx, str.Attach_debugger_now_
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
lea rcx, [rbp + 0x58]
call fcn.140007064
mov rdx, rax
lea rcx, [rbp - 0x58]
call fcn.140009900
mov rdx, qword [rbp + 0x58]
mov eax, r12d
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], eax
add eax, r12d
test eax, eax
jg 0x140003af7
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rdx, str.devenv.exe
lea rcx, [rbp - 0x58]
call fcn.140009210
lea rcx, [rbp + 0x60]
call fcn.140007064
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.140009900
mov rdx, qword [rbp + 0x60]
mov eax, r12d
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], eax
add eax, r12d
test eax, eax
jg 0x140003b3c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rdx, str.VSWinExpress.exe
lea rcx, [rbp - 0x60]
call fcn.140009210
mov rcx, qword [rbp - 0x58]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x140003b68
mov ecx, 2
call fcn.14005789c
test eax, eax
jg 0x140003b9a
mov rcx, qword [rbp - 0x60]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x140003b9a
mov rax, qword [0x140091788]
mov dword [rax + 0x6b0], 0x1f4
mov rax, qword [0x140091788]
mov dword [rax + 0x6b4], 0x4000
jmp 0x140003bd6
mov rax, qword [0x140091788]
lea rbx, [rax + 0x6b0]
lea r14, [rax + 0x6b4]
test rbx, rbx
je 0x140003bd4
mov rdi, qword [0x1400921d0]
lea rdx, str.Community
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_wcscmp
test eax, eax
jne 0x140003c23
mov dword [rbx], 0x708
xor ebx, ebx
mov rax, qword [0x140091788]
mov r15d, 5
bts dword [rax + 0x6b4], 0x10
cmp byte [0x1400921f0], bl
je 0x140003c09
mov al, byte [0x140091e8a]
bts esi, 0xd
neg al
sbb r15d, r15d
neg r15d
add r15d, 4
mov rdx, qword [0x140091848]
test rdx, rdx
je 0x140003c6e
mov rax, r12
inc rax
cmp word [rdx + rax*2], bx
jne 0x140003c18
jmp 0x140003c76
lea rdx, str.Professional
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_wcscmp
test eax, eax
jne 0x140003c3e
mov dword [rbx], 0x7d0
jmp 0x140003bd4
lea rdx, str.Enterprise
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_wcscmp
test eax, eax
jne 0x140003bd4
mov dword [rbx], 0xbb8
xor ebx, ebx
test r14, r14
je 0x140003bd6
mov dword [r14], 0x188
jmp 0x140003bd6
mov rdx, r13
mov eax, 0x1d
lea rcx, [rbp - 0x70]
mov r8d, eax
mov edi, ebx
call fcn.14000a350
lea rcx, [rbp + 0x68]
call fcn.140017214
mov r8, qword [0x140091930]
lea r9, [rbp - 0x80]
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rax]
call fcn.140052134
mov rdx, qword [rbp + 0x68]
mov eax, r12d
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], eax
add eax, r12d
test eax, eax
jg 0x140003cc4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rcx, qword [rbp - 0x80]
call fcn.1400168f8
mov r13b, al
test al, al
je 0x140003cec
mov rdx, qword [rbp - 0x80]
lea rcx, [rbp + 0x88]
call fcn.14001698c
mov r14d, 1
jmp 0x140003d05
lea rdx, [0x1400706b8]
lea rcx, [rbp + 0x80]
call fcn.140009580
mov r14d, 2
lea rdx, [rbp + 0x78]
mov r12, rax
call fcn.140016824
lea rcx, [rbp + 0x70]
mov rbx, qword [rax]
call fcn.140017214
mov rdx, qword [0x140091930]
lea rcx, [0x140091e60]
mov r9d, esi
mov r8, qword [rax]
mov rax, qword [0x140091788]
mov qword [rsp + 0x58], rax
mov rax, qword [r12]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x70]
mov qword [rsp + 0x48], rbx
xor ebx, ebx
mov byte [rsp + 0x40], r13b
lea r13, str.SoftwareMicrosoftBlend17.0
mov dword [rsp + 0x38], r15d
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
call fcn.140020c78
mov rdx, qword [rbp + 0x70]
mov esi, eax
add rdx, 0xffffffffffffffe8
or r12, 0xffffffffffffffff
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, r12d
test eax, eax
jg 0x140003d9c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rbp + 0x78]
mov eax, r12d
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], eax
add eax, r12d
test eax, eax
jg 0x140003dbc
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test r14b, 2
je 0x140003de9
mov rdx, qword [rbp + 0x80]
and r14d, 0xfffffffd
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, r12d
test eax, eax
jg 0x140003de9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r15d, 1
test r15b, r14b
je 0x140003e17
mov rdx, qword [rbp + 0x88]
mov eax, r12d
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], eax
add eax, r12d
test eax, eax
jg 0x140003e17
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test esi, esi
jns 0x140003e98
call fcn.140002dfc
mov rcx, rax
test rax, rax
je 0x140004fe6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
lea r8, str.InitializeExternalAppID
lea rdx, str.Failure_calling__s.
mov qword [rbp + 8], rax
lea rcx, [rbp + 8]
call fcn.14000a5f0
mov rbx, qword [rbp + 8]
mov r9d, esi
lea rdx, str.VisualStudio
mov r8, rbx
mov ecx, r15d
call fcn.14005378c
lea rdx, [rbx - 0x18]
mov eax, r12d
mov edi, esi
lock xadd dword [rdx + 0x10], eax
add eax, r12d
xor ebx, ebx
test eax, eax
jg 0x140004c43
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r14d, dword [rsp + 0x60]
jmp 0x140003736
xor r8d, r8d
lea rdx, [rbp - 0x40]
lea rcx, [0x140091e60]
call fcn.14002cf80
mov r8, qword [rbp - 0x40]
lea r14, [0x140092860]
mov rcx, r14
mov edx, 0x400
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
mov qword [0x140091848], r14
call fcn.14001938c
mov rax, qword [rbp - 0x80]
test rax, rax
jne 0x140003ede
mov rcx, rbx
jmp 0x140003efa
mov rcx, rax
call qword [sym.imp.OLEAUT32.dll_SysAllocStringByteLen]
mov rcx, qword [rbp - 0x80]
mov edx, eax
call qword [sym.imp.OLEAUT32.dll_DllRegisterServer]
mov rcx, rax
mov rax, qword [rbp - 0x80]
mov qword [rbp + 0x90], rcx
test rax, rax
je 0x140003f0f
test rcx, rcx
je 0x140004ff7
mov rax, qword [0x140091e70]
lea rdx, [rbp + 0x90]
mov rcx, qword [rax + 0xe8]
mov rax, qword [0x140092568]
test rcx, rcx
cmovne rax, rcx
mov rcx, rax
call fcn.14001966c
mov rcx, qword [0x140091848]
call fcn.140010d50
mov esi, eax
test eax, eax
jns 0x140003f8b
call fcn.140002dfc
mov rcx, rax
test rax, rax
je 0x140004fe6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
lea r8, str.util_OleInitialize
lea rdx, str.Failure_calling__s.
mov qword [rbp + 0x10], rax
lea rcx, [rbp + 0x10]
call fcn.14000a5f0
mov rbx, qword [rbp + 0x10]
jmp 0x140003e55
lea rax, [rbp + 0x48]
mov dword [rbp - 0x74], r15d
mov qword [rsp + 0x40], rax
mov esi, 0x2001f
lea rax, [rbp + 0x18]
mov qword [rbp + 0x18], rbx
mov qword [rsp + 0x38], rax
xor r9d, r9d
mov qword [rsp + 0x30], rbx
xor r8d, r8d
mov dword [rsp + 0x28], esi
mov rdx, r14
mov rcx, 0xffffffff80000002
mov dword [rsp + 0x20], ebx
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x140003fdb
mov rax, qword [rbp + 0x18]
mov qword [rbp - 0x50], rax
jmp 0x140004022
lea rax, [rbp + 0x4c]
mov qword [rbp + 0x20], rbx
mov qword [rsp + 0x40], rax
xor r9d, r9d
lea rax, [rbp + 0x20]
xor r8d, r8d
mov qword [rsp + 0x38], rax
mov rdx, r14
mov qword [rsp + 0x30], rbx
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], ebx
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
mov rcx, rbx
cmove rcx, qword [rbp + 0x20]
mov qword [rbp - 0x50], rcx
mov rdx, qword [0x140091848]
test rdx, rdx
jne 0x140004032
mov eax, ebx
jmp 0x14000403e
mov rax, r12
inc rax
cmp word [rdx + rax*2], bx
jne 0x140004035
mov r8d, eax
lea rcx, [rbp - 0x48]
call fcn.14000a350
lea rdx, str._ConfigInitialization
mov rax, r12
inc rax
cmp word [rdx + rax*2], bx
jne 0x140004054
mov r8d, eax
lea rcx, [rbp - 0x48]
call fcn.1400097e8
mov rax, qword [0x140091e70]
mov r9d, esi
mov rdx, qword [rbp - 0x48]
mov qword [rbp + 0x28], rbx
mov rcx, qword [rax + 0xe8]
mov rax, qword [0x140092568]
test rcx, rcx
cmovne rax, rcx
lea rcx, [rbp + 0x28]
mov qword [rsp + 0x20], rcx
xor r8d, r8d
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140004117
mov r12, qword [rbp + 0x28]
lea rax, [rbp - 0x38]
mov qword [rsp + 0x28], rax
lea r9, [rbp - 0x34]
lea rax, [rbp - 0x30]
mov dword [rbp - 0x38], 4
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.ConfigPkgDefCacheBlend
mov rcx, r12
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x1400040f9
cmp dword [rbp - 0x34], 4
jne 0x1400040f9
mov rax, qword [0x140091788]
mov ecx, dword [rax + 0x6b0]
cmp dword [rbp - 0x30], ecx
je 0x140004109
lea rdx, str.ConfigPkgDefCacheTimestamp
mov rcx, r12
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
test r12, r12
je 0x14000411a
mov rcx, r12
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov r12, rbx
cmp dword [0x140091718], ebx
je 0x1400041d1
call fcn.140002dfc
mov rcx, rax
test rax, rax
je 0x140004fe6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
lea rdx, [0x140091f00]
lea rcx, [rbp + 0x30]
mov qword [rbp + 0x30], rax
call fcn.140009900
mov rax, qword [0x140091e70]
mov rbx, qword [rbp + 0x30]
mov rdx, qword [0x140091848]
mov r8, rbx
mov rcx, qword [rax + 0xe8]
mov rax, qword [0x140092568]
test rcx, rcx
cmovne rax, rcx
mov rcx, rax
call fcn.140011240
lea rdx, [rbx - 0x18]
xor eax, eax
xor ebx, ebx
cmp dword [0x140091830], eax
jne 0x1400041bb
mov r14d, eax
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, r15d
jg 0x140004532
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov esi, ebx
jmp 0x140004c63
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, r15d
jg 0x1400041d1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
cmp dword [0x140091850], ebx
jne 0x140004287
cmp dword [0x140091830], ebx
jne 0x1400042b3
cmp dword [0x1400917e0], ebx
jne 0x14000428f
cmp dword [0x140091818], ebx
jne 0x14000428f
cmp dword [0x1400917e4], ebx
jne 0x14000428f
cmp dword [0x140091838], ebx
jne 0x14000428f
cmp dword [0x1400917ec], ebx
jne 0x14000428f
cmp dword [0x1400917e8], ebx
jne 0x14000428f
cmp dword [0x140091808], ebx
jne 0x14000428f
cmp dword [0x14009180c], ebx
jne 0x14000428f
cmp dword [0x140091778], ebx
jne 0x14000428f
cmp dword [0x140091780], ebx
jne 0x14000428f
cmp qword [0x1400917d8], rbx
jne 0x14000428f
cmp dword [0x140091908], ebx
jne 0x14000428f
cmp dword [0x140091768], ebx
jne 0x14000428f
cmp dword [0x140091840], ebx
jne 0x14000428f
cmp dword [0x140091720], ebx
jne 0x1400042b3
cmp dword [0x14009171c], ebx
jne 0x1400042b3
cmp dword [0x1400917a8], ebx
je 0x140004405
call fcn.1400025ec
cmp dword [0x140091830], ebx
jne 0x1400042b3
cmp dword [0x140091720], ebx
jne 0x1400042b3
cmp dword [0x14009171c], ebx
jne 0x1400042b3
cmp dword [0x140091908], ebx
jne 0x1400042b3
cmp dword [0x140091768], ebx
je 0x140004405
call fcn.140002dfc
mov rcx, rax
test rax, rax
je 0x140004fe6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
lea rdx, [0x140091f00]
lea rcx, [rbp + 0x38]
mov qword [rbp + 0x38], rax
call fcn.140009900
mov rax, qword [0x140091e70]
mov rsi, qword [0x140092568]
mov rbx, qword [rbp + 0x38]
mov rcx, qword [rax + 0xe8]
test rcx, rcx
cmovne rsi, rcx
test rbx, rbx
je 0x140004332
mov rcx, rbx
call fcn.14001105c
test eax, eax
jns 0x140004347
xor r9d, r9d
lea r8, [0x1400730d0]
mov rdx, r14
mov rcx, rsi
call fcn.1400113bc
mov rcx, rsi
call fcn.140011144
jmp 0x140004357
mov r9b, r15b
lea r8, [0x1400730d0]
mov rdx, r14
mov rcx, rsi
call fcn.1400113bc
mov rcx, rsi
call fcn.140011144
mov rcx, rsi
call fcn.140010f94
xor eax, eax
cmp dword [0x140091908], eax
jne 0x140004c23
cmp dword [0x14009171c], eax
jne 0x140004c23
lea rdx, [rbx - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
xor ebx, ebx
sub eax, r15d
jg 0x14000438d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
cmp dword [0x140091830], ebx
je 0x140004405
mov qword [rbp - 0x10], rbx
mov rbx, qword [0x140091788]
mov rcx, rbx
mov rax, qword [rbx]
call qword [rax + 0x40]
shr eax, 4
test r15b, al
je 0x1400043f4
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.14001bfa4
xor ebx, ebx
test eax, eax
js 0x1400043f6
mov rcx, qword [rbp - 0x10]
lea rdx, [rbp + 0x98]
mov rax, qword [rcx]
call qword [rax + 0x18]
test eax, eax
js 0x1400043f6
mov rdx, qword [rbp + 0x98]
mov rcx, qword [0x140091848]
mov r8d, dword [rdx + 8]
mov rdx, qword [rdx]
call fcn.1400223b0
jmp 0x1400043f6
xor ebx, ebx
mov rcx, qword [rbp - 0x10]
test rcx, rcx
je 0x140004405
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
lea rax, str.RDRERRRRRRI2RRRRQEQPPKEHRRRERRRRRIRRRIRRQ1QMIECTRER3HRQAAIJQDZM3J2MTJ3IKZEDPD9ZPDMQTJ0PIZ3HTITPRAEEHMCC1HCKIZ3C8QZMJCRD1P9ADR1R1PTDHA8MTCAIJZHHMREHTHJMRE9DHKAKCD0QCPQAJ
mov dword [rbp + 0xc0], 0x19f0
mov qword [rbp + 0xd0], rax
lea rcx, [rbp + 0xdc]
mov eax, 0x19fa
mov dword [rbp + 0xc4], 0x1a10
mov dword [rbp + 0xc8], 0x1a11
mov edx, reloc.OLEAUT32.dll_SafeArrayGetLBound
mov dword [rbp + 0xd8], 0x8004
mov dword [rcx], eax
add eax, r15d
lea rcx, [rcx + 4]
sub rdx, r15
jne 0x14000444c
mov rax, qword [0x140091788]
mov rdx, qword [0x140091848]
mov dword [rbp + 0x128], ebx
mov dword [rbp + 0x12c], 0x1a0f
mov ecx, dword [rax + 0x6b8]
lea rax, [rbp + 0xc0]
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rax
call fcn.140017268
mov rdx, qword [0x140091788]
test rdx, rdx
je 0x1400044a5
add rdx, 0x18
jmp 0x1400044a8
mov rdx, rbx
lea rcx, [0x140091e60]
call fcn.140020e3c
mov edi, eax
test eax, eax
js 0x140004c39
cmp dword [0x140091714], ebx
jne 0x14000453b
cmp dword [0x140091850], ebx
jne 0x14000453b
cmp dword [0x140091830], ebx
jne 0x14000453b
cmp dword [0x140091720], ebx
jne 0x14000453b
cmp dword [0x14009171c], ebx
jne 0x14000453b
call fcn.140022f10
test eax, eax
jns 0x14000453b
mov rcx, qword [0x140091788]
test rcx, rcx
je 0x14000450e
add rcx, 0x618
call fcn.14001f480
mov rcx, qword [0x140091788]
mov rax, qword [rcx]
xor r8d, r8d
xor edx, edx
call qword [rax + 0x30]
mov rdx, qword [0x140090f60]
call fcn.1400230c8
mov edi, eax
test eax, eax
js 0x140004c39
mov r14d, ebx
mov esi, dword [rsp + 0x68]
jmp 0x140004c63
cmp dword [rbp - 0x2c], 0x80070057
jne 0x140004649
mov rbx, qword [0x1400917d8]
xor edi, edi
test rbx, rbx
je 0x140004571
mov rcx, rbx
mov rbx, qword [rbx + 0x28]
call fcn.140053218
mov rcx, rbx
test rbx, rbx
jne 0x140004559
mov qword [0x1400917d8], rdi
mov rax, qword [0x1400917d0]
test rax, rax
je 0x1400045a4
mov r8, qword [0x1400917a0]
or rdx, 0xffffffffffffffff
inc rdx
cmp word [r8 + rdx*2], di
jne 0x140004588
add rdx, r15
mov rcx, rax
call sub.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s
mov rax, qword [0x1400917d0]
mov rbx, qword [0x140091750]
mov qword [0x140091748], rdi
mov rcx, rbx
test rbx, rbx
je 0x1400045d2
mov rbx, qword [rbx + 0x10]
call fcn.140053218
mov rcx, rbx
test rbx, rbx
jne 0x1400045ba
mov rax, qword [0x1400917d0]
lea rcx, [0x140091748]
xor ebx, ebx
mov qword [rsp + 0x28], rcx
lea r9, [0x1400917d8]
lea rcx, [0x140091750]
mov qword [0x140091750], rbx
mov qword [rsp + 0x20], rcx
lea r8, str.0_t_a_
mov rcx, qword [0x140091848]
mov rdx, rax
call fcn.14000fb30
test eax, eax
jns 0x140004622
mov dword [0x140091740], r15d
mov dword [0x140091818], r15d
lea rcx, [0x140091790]
mov qword [0x140091848], r14
call fcn.14001065c
test eax, eax
jns 0x140004650
mov dword [0x140091740], r15d
mov dword [0x140091818], r15d
jmp 0x140004650
mov r14, qword [0x140091848]
lea rcx, [0x140091c28]
mov qword [0x140091c20], r14
lea r8, str.SoftwareMicrosoftVSCommon17.0SQM
mov edx, 0x104
sub r8, rcx
lea rax, [rdx + 0x7ffffefa]
test rax, rax
je 0x14000468f
movzx eax, word [rcx + r8]
test ax, ax
je 0x14000468f
mov word [rcx], ax
add rcx, 2
sub rdx, r15
jne 0x14000466d
lea rax, [rcx - 2]
mov dword [rbp - 0x28], 0x7000
test rdx, rdx
cmovne rax, rcx
lea rcx, [rbp - 0x28]
mov word [rax], bx
call qword [sym.imp.KERNEL32.dll_SetThreadStackGuarantee]
lea rcx, [0x140024ad8]
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rcx, [0x140024cb8]
mov qword [0x140091938], rax
call qword [sym.imp.VCRUNTIME140.dll__set_purecall_handler]
mov rax, qword [0x140091e70]
mov rdx, qword [rbp - 0x40]
mov rcx, qword [rax + 0xe8]
mov rax, qword [0x140092568]
test rcx, rcx
cmovne rax, rcx
mov rcx, rax
call fcn.1400260a8
mov rcx, qword [0x140091848]
mov edx, eax
call fcn.140025f50
mov edi, eax
test eax, eax
js 0x140004c39
mov rdx, qword [0x140091848]
lea rax, [rbp - 8]
mov rsi, 0xffffffff80000002
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov r9d, 0x20019
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140004810
mov rcx, qword [rbp - 8]
lea rax, [rsp + 0x78]
mov qword [rsp + 0x28], rax
lea r9, [rbp - 0x68]
lea rax, [rbp + 0x150]
mov edi, 0x208
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.ThisVersionDTECLSID
mov dword [rsp + 0x78], edi
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x14000479a
lea rdx, [0x140091888]
lea rcx, [rbp + 0x150]
call qword [sym.imp.ole32.dll_IIDFromString]
jmp 0x1400047a9
movups xmm0, xmmword [0x140069fb8]
movdqu xmmword [0x140091888], xmm0
mov rcx, qword [rbp - 8]
lea rax, [rsp + 0x78]
mov qword [rsp + 0x28], rax
lea r9, [rbp - 0x68]
lea rax, [rbp + 0x150]
mov dword [rsp + 0x78], edi
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.ThisVersionSolutionCLSID
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x1400047f5
lea rdx, [0x140091898]
lea rcx, [rbp + 0x150]
call qword [sym.imp.ole32.dll_IIDFromString]
jmp 0x140004804
movups xmm0, xmmword [0x140069fb8]
movdqu xmmword [0x140091898], xmm0
mov rcx, qword [rbp - 8]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x140004827
movups xmm0, xmmword [0x140069fb8]
movdqu xmmword [0x140091888], xmm0
movdqu xmmword [0x140091898], xmm0
mov rcx, qword [0x140091848]
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x78], ebx
call fcn.1400129c0
mov edi, eax
test eax, eax
js 0x140004c39
cmp dword [rbp - 0x78], ebx
jne 0x140004c39
mov rax, qword [0x140091e60]
lea r14, [0x140091e60]
mov rbx, qword [0x140091788]
mov rcx, r14
call qword [rax + 0x60]
test al, al
je 0x140004878
mov qword [rbx + 0x5c0], r14
mov rax, qword [0x140091788]
lea rcx, [0x14006a9b8]
mov qword [rax + 0x180], rcx
mov dword [rax + 0x188], 5
call fcn.1400276c8
mov eax, dword [0x140091830]
xor ebx, ebx
cmp dword [0x140091768], ebx
cmovne eax, r15d
cmp dword [0x140091834], ebx
mov dword [0x140091830], eax
je 0x1400048c4
mov r14d, ebx
jmp 0x1400041b4
test eax, eax
jne 0x140004927
cmp dword [0x140091908], ebx
jne 0x140004927
cmp dword [0x14009177c], ebx
je 0x1400049bc
lea r8, [0x140070f14]
mov qword [rbp - 0x20], rbx
lea rdx, str.Blend.ver
lea rcx, [rbp - 0x20]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen_s]
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x140004c39
lea rdx, str.SoftwareMicrosoftBlend17.0_n
call fcn.14000c868
mov rcx, qword [rbp - 0x20]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov esi, ebx
mov r14d, dword [rsp + 0x60]
jmp 0x140004c63
call fcn.14004e604
mov r9d, 0x20006
mov qword [rbp + 0xa0], rbx
mov rdx, rsi
mov dword [rbp + 0xa8], ebx
lea rcx, [rbp + 0xa0]
mov qword [rbp + 0xb0], rbx
mov byte [rax + 0xa], r15b
mov r8, qword [0x140091848]
call fcn.14000cbd8
mov rbx, qword [rbp + 0xa0]
xor esi, esi
test eax, eax
jne 0x1400049ac
mov rcx, qword [0x1400917a0]
test rcx, rcx
je 0x1400049ac
or rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], si
jne 0x14000497d
lea eax, [rax*2 + 2]
mov r9d, r15d
mov dword [rsp + 0x28], eax
lea rdx, str.SetupCommandLine
mov qword [rsp + 0x20], rcx
xor r8d, r8d
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test rbx, rbx
je 0x1400049ba
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor ebx, ebx
call fcn.140018ee4
test al, al
jne 0x1400049d4
mov edi, 0x80004005
mov esi, 0xbef
jmp 0x14000491d
mov rcx, qword [0x140091788]
lea rax, [rcx + 0x1ac]
mov qword [0x140091880], rax
test rcx, rcx
je 0x1400049fb
lea rax, [rcx + 8]
mov qword [0x1400918a8], rax
jmp 0x140004a02
mov qword [0x1400918a8], rbx
call fcn.140008260
mov esi, eax
test eax, eax
jns 0x140004a83
call fcn.140002dfc
mov rcx, rax
test rax, rax
je 0x140004fe6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
lea r8, str.SetCmdUICtxts
lea rdx, str.Failure_calling__s.
mov qword [rbp + 0x40], rax
lea rcx, [rbp + 0x40]
call fcn.14000a5f0
mov rbx, qword [rbp + 0x40]
lea rdx, str.VisualStudio
mov r8, rbx
mov r9d, esi
mov ecx, r15d
call fcn.14005378c
lea rdx, [rbx - 0x18]
or eax, 0xffffffff
mov edi, esi
lock xadd dword [rdx + 0x10], eax
xor ebx, ebx
sub eax, r15d
jg 0x140004c39
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14000491b
mov rax, qword [0x140091788]
lea rcx, str.SoftwareMicrosoftBlend14.0
mov qword [rax + 0x1a0], rcx
mov dword [rax + 0x1a8], 2
cmp dword [0x140091774], ebx
jne 0x140004abc
cmp dword [0x140091830], ebx
jne 0x140004abc
mov eax, dword [0x140091720]
test eax, eax
je 0x140004ac7
call fcn.140018ad0
mov eax, dword [0x140091720]
cmp dword [0x140091768], ebx
je 0x140004b26
call fcn.140013354
call fcn.1400134c8
cmp byte [0x1400921f0], bl
je 0x140004ae9
mov rcx, r14
call fcn.140020ebc
mov rbx, qword [0x140091788]
lea rdx, [rbx + 0x1ac]
call fcn.140018fe0
lea rdx, [rbx + 0x3b4]
mov dil, al
call fcn.140018fe0
xor ebx, ebx
test dil, dil
je 0x140004b1c
mov edi, ebx
test al, al
jne 0x1400048bc
mov edi, 0x80004005
jmp 0x1400048bc
test eax, eax
je 0x140004bb7
call fcn.140022f10
test eax, eax
js 0x14000452f
lea rcx, [0x140091790]
call fcn.14000fa20
mov rbx, rax
test rax, rax
je 0x140004b87
lea rdx, str.VStudioComposeMEF
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
test rax, rax
je 0x140004b87
mov ecx, 0x2345
mov qword [0x140091798], rbx
call fcn.14005a96c
lea rcx, [0x140091790]
call rdi
mov edi, eax
xor ebx, ebx
jmp 0x140004b9d
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
xor ebx, ebx
or edi, 0x80070000
test eax, eax
cmovle edi, eax
mov esi, edi
sar esi, 0x1f
mov r14d, esi
and r14d, 0xbb9
and esi, 0xbeb
jmp 0x140004c63
lea rcx, [0x140091790]
call fcn.14000fa20
mov ecx, 0x241d
mov rbx, rax
call fcn.14005a96c
test rbx, rbx
je 0x140004c10
lea rdx, str.VStudioMain
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
test rax, rax
je 0x140004c10
mov ecx, 0x241e
mov qword [0x140091798], rbx
call fcn.14005a96c
lea rcx, [0x140091790]
call rsi
mov esi, dword [rsp + 0x68]
mov r14d, eax
jmp 0x140004c1f
mov r14d, dword [rsp + 0x60]
mov edi, 0x80004005
mov esi, 0xbeb
xor ebx, ebx
jmp 0x140004c63
mov r14d, eax
lea rdx, [rbx - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
xor ebx, ebx
jmp 0x1400041a2
mov r14d, dword [rsp + 0x60]
jmp 0x140004532
mov r14d, dword [rsp + 0x60]
mov r12, rbx
jmp 0x140004532
mov qword [0x140091788], rbx
mov edi, 0x8007000e
mov esi, dword [rsp + 0x68]
mov r12d, esi
mov rcx, qword [0x140091788]
test rcx, rcx
je 0x140004c7b
add rcx, 0x618
call fcn.14001f480
test edi, edi
jns 0x140004e19
cmp dword [0x140091720], ebx
jne 0x140004e19
cmp dword [0x14009171c], ebx
jne 0x140004e19
mov rax, qword [0x140091848]
mov rcx, qword [0x140091788]
test rax, rax
cmovne r13, rax
mov qword [0x140091848], r13
test rcx, rcx
je 0x140004cc7
mov rax, qword [rcx]
xor r8d, r8d
xor edx, edx
call qword [rax + 0x30]
cmp qword [0x140090f60], rbx
je 0x140004e04
mov r13d, 0xbea
test esi, esi
jne 0x140004d0a
cmp edi, 0x80070002
je 0x140004d07
cmp edi, 0x8007000e
je 0x140004d00
lea esi, [r13 + 1]
cmp edi, 0x80070057
lea eax, [rsi + 3]
cmovne esi, eax
jmp 0x140004d0a
mov esi, 0xbed
jmp 0x140004d0a
mov esi, r13d
call fcn.140002dfc
test rax, rax
je 0x140004fe6
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
mov ecx, esi
lea rbx, [rax + 0x18]
mov qword [rsp + 0x68], rbx
sub ecx, r13d
je 0x140004dd1
sub ecx, 4
je 0x140004d48
sub ecx, 0x35
je 0x140004d48
cmp ecx, 1
jne 0x140004dd1
mov eax, dword [rbx - 0xc]
mov ecx, r15d
sub ecx, dword [rbx - 8]
mov edi, 0x104
sub eax, edi
or ecx, eax
jge 0x140004d6d
mov edx, edi
lea rcx, [rsp + 0x68]
call fcn.1400028a0
mov rbx, qword [rsp + 0x68]
mov edx, edi
mov rcx, rbx
call fcn.1400534a0
movsxd rdx, dword [rbx - 0xc]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsnlen]
xor r13d, r13d
test eax, eax
js 0x140004fdb
cmp eax, dword [rbx - 0xc]
jg 0x140004fdb
mov dword [rbx - 0x10], eax
cdqe
mov word [rbx + rax*2], r13w
mov rdi, qword [0x140090f60]
cmp dword [rbx - 8], r15d
jle 0x140004dc1
mov edx, dword [rbx - 0x10]
lea rcx, [rsp + 0x68]
call fcn.140002948
mov rbx, qword [rsp + 0x68]
mov r9, rbx
mov r8d, esi
mov rcx, rdi
call fcn.140010c18
jmp 0x140004de8
mov rcx, qword [0x140090f60]
mov r8d, esi
mov edx, 0xbb8
call fcn.140010730
xor r13d, r13d
lea rdx, [rbx - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140004e1c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140004e1c
mov rcx, qword [0x140090f58]
mov edx, 0x19e6
lea r8d, [rdx + 1]
call fcn.140010730
xor r13d, r13d
mov rbx, qword [0x140091750]
jmp 0x140004e2e
mov rbx, qword [rbx + 0x10]
call fcn.140053218
mov rcx, rbx
test rbx, rbx
jne 0x140004e25
mov rbx, qword [0x140091798]
lea rcx, [0x140091790]
mov qword [0x140091750], r13
call fcn.1400106bc
mov rcx, qword [0x140091788]
test rcx, rcx
je 0x140004e66
add rcx, 8
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
cmp dword [rbp - 0x74], r13d
je 0x140004e76
call fcn.140025ff4
call fcn.140010f80
test rbx, rbx
je 0x140004e9c
lea rdx, str.VStudioTerm
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
jne 0x140004e98
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140004e9c
xor ecx, ecx
call rax
mov rbx, qword [0x140091e30]
test rbx, rbx
je 0x140004ebd
mov rcx, rbx
call fcn.140026240
mov edx, reloc.OLEAUT32.dll_SafeArrayAllocDescriptorEx
mov rcx, rbx
call fcn.140052590
lea rcx, [0x140091e60]
mov qword [0x140091e30], r13
call fcn.140020ebc
mov rdx, qword [rbp - 0x18]
add rdx, 0xffffffffffffffe8
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140004eee
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov rdx, qword [rbp - 0x70]
add rdx, 0xffffffffffffffe8
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140004f16
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rbp - 0x60]
add rdx, 0xffffffffffffffe8
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140004f34
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rbp - 0x58]
add rdx, 0xffffffffffffffe8
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140004f52
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test r12, r12
je 0x140004f60
mov rcx, r12
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x140004f72
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffe8
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140004f90
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rbp - 0x40]
add rdx, 0xffffffffffffffe8
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140004fae
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov eax, r14d
mov rcx, qword [rbp + 0x570]
xor rcx, rsp
call fcn.140052570
mov rbx, qword [rsp + 0x6d0]
add rsp, 0x680
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80070057
call fcn.140002fa4
int3
mov ecx, 0x80004005
call fcn.140002fa4
int3
call fcn.1400030ec
int3
mov ecx, 0x8007000e
call fcn.140002fa4
int3