Function at 0x14004cfac
Capabilities:
Query or enumerate registry value

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3d8]
sub rsp, 0x4d8
mov qword [rbp - 0x78], 0xfffffffffffffffe
mov rax, qword [0x1400c9158]
xor rax, rsp
mov qword [rbp + 0x3c0], rax
mov qword [rsp + 0x78], r9
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x48], rcx
mov rbx, qword [rbp + 0x440]
mov qword [rsp + 0x58], rbx
mov r12, qword [rbp + 0x448]
mov dword [rbx], 2
test dword [0x1400ca100], 0x800
je 0x14004d033
mov r8d, 2
lea rdx, [0x1400a2048]
lea rcx, [0x1400c8290]
call fcn.140052eb8
xor r15d, r15d
mov dword [rsp + 0x40], r15d
mov dword [rsp + 0x44], 4
lea rax, [rsp + 0x44]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea r9d, [r15 + 0x10]
lea r8, str.IncludeIPSPlugin
lea rdx, str.SOFTWAREMicrosoftWindows_SearchPreviousSettings
call fcn.1400297c4
mov esi, eax
test eax, eax
jne 0x14004d084
mov r13d, dword [rsp + 0x40]
and r13d, 1
mov dword [rsp + 0x40], r13d
jmp 0x14004d0a3
add eax, 0xfffffffe
cmp eax, 1
cmovbe esi, r15d
mov r13d, r15d
mov dword [rsp + 0x40], r15d
test esi, esi
jle 0x14004d0a3
movzx esi, si
or esi, 0x80070000
mov rcx, qword [rbp + 0x418]
test esi, esi
jns 0x14004d0c2
mov r9d, esi
lea r8, str.onecoreuap_base_appmodel_search_search_search_service_setup.cxx
mov edx, 0xa50
call fcn.14002cfec
xor eax, eax
mov qword [rbp - 0x70], rax
mov dword [rbp - 0x68], eax
mov edi, r15d
mov eax, r13d
mov qword [rbp - 0x80], rax
test esi, esi
js 0x14004d61e
lea rcx, str.Search.TripoliIndexer
mov r13, qword [rsp + 0x70]
cmp edi, 3
jae 0x14004d1d8
cmp edi, 2
jne 0x14004d100
test rax, rax
je 0x14004d1ce
mov r15d, edi
mov r14d, edi
add r14, r14
mov rdx, qword [rcx + r14*8]
lea rcx, [rsp + 0x60]
call fcn.14001007c
nop
mov rbx, qword [rsp + 0x60]
mov rax, rbx
neg rax
sbb esi, esi
not esi
and esi, 0x8007000e
mov rcx, qword [rbp + 0x418]
jge 0x14004d14c
mov r9d, esi
lea r8, str.onecoreuap_base_appmodel_search_search_search_service_setup.cxx
mov edx, 0xa5d
call fcn.14002cfec
jmp 0x14004d15c
mov r8, r12
mov rdx, rbx
mov rcx, r13
call fcn.14004afac
mov esi, eax
mov ecx, esi
not ecx
shr ecx, 0x1f
mov dword [rbp + r15*4 - 0x70], ecx
xor r15d, r15d
test esi, esi
jns 0x14004d17f
lea rax, str.Search.TripoliIndexer
cmp dword [rax + r14*8 + 8], r15d
cmovne esi, r15d
lea rax, [0x140095aa0]
test rbx, rbx
cmovne rax, rbx
mov rcx, qword [rbp + 0x418]
mov qword [rsp + 0x28], rax
lea rax, str.PluginName:__ls
mov qword [rsp + 0x20], rax
mov r9d, esi
lea r8, str.onecoreuap_base_appmodel_search_search_search_service_setup.cxx
mov edx, 0xa6c
call fcn.1400501a0
nop
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov rax, qword [rbp - 0x80]
lea rcx, str.Search.TripoliIndexer
inc edi
test esi, esi
jns 0x14004d0e9
test esi, esi
mov r13d, dword [rsp + 0x40]
js 0x14004d61e
mov rbx, qword [rsp + 0x58]
mov dword [rbx], 3
test dword [0x1400ca100], 0x800
je 0x14004d215
mov r8d, 3
lea rdx, [0x1400a2048]
lea rcx, [0x1400c8290]
call fcn.140052eb8
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
mov r14, qword [rsp + 0x68]
mov rdx, r14
mov rcx, qword [rsp + 0x48]
call fcn.14001e414
mov esi, eax
test eax, eax
jle 0x14004d246
movzx esi, ax
or esi, 0x80070000
mov rcx, qword [rbp + 0x418]
mov qword [rsp + 0x28], r14
lea rax, str.AppRegPath:__ls
mov qword [rsp + 0x20], rax
mov r9d, esi
lea r8, str.onecoreuap_base_appmodel_search_search_search_service_setup.cxx
mov edx, 0xa77
call fcn.1400501a0
test esi, esi
js 0x14004d588
mov dword [rsp + 0x44], 0x104
mov dword [rsp + 0x68], 2
lea rax, [rsp + 0x44]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x68]
lea r8, str.DefaultProjectPath
xor edx, edx
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.api_ms_win_shcore_registry_l1_1_0.dll_SHGetValueW]
mov esi, eax
test eax, eax
jle 0x14004d2c5
movzx esi, ax
or esi, 0x80070000
mov rcx, qword [rbp + 0x418]
test esi, esi
jns 0x14004d37c
mov r9d, esi
lea r8, str.onecoreuap_base_appmodel_search_search_search_service_setup.cxx
mov edx, 0xa7f
call fcn.14002cfec
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x1b0]
call sub.msvcrt.dll_memset
mov r8d, 0x104
lea rdx, [rbp + 0x1b0]
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleFileNameW]
lea rdx, [rbp + 0x1b0]
lea rcx, [rsp + 0x48]
call fcn.1400500b4
nop
mov r9d, dword [r12 + 0x10]
mov r8, qword [r12 + 8]
mov edx, 0x7d5
lea rcx, [rsp + 0x48]
call fcn.1400500f4
mov dword [r12 + 0x14], eax
mov r8, qword [r12]
mov r10, qword [r8 + 0x20]
or r9d, 0xffffffff
mov r8d, eax
lea rdx, str.DefaultProjectPath
mov rcx, r12
mov rax, r10
call qword [case.0x14000702c.0]
nop
lea rcx, [rsp + 0x48]
call fcn.14002d080
jmp 0x14004d578
mov word [rbp + 0x1a6], r15w
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x58]
call fcn.14001007c
nop
mov rdi, qword [rsp + 0x58]
mov rax, rdi
neg rax
sbb esi, esi
not esi
and esi, 0x8007000e
mov rcx, qword [rbp + 0x418]
jge 0x14004d3ca
mov r9d, esi
lea r8, str.onecoreuap_base_appmodel_search_search_search_service_setup.cxx
mov edx, 0xa86
call fcn.14002cfec
jmp 0x14004d56f
mov r8d, 4
mov dword [rbx], r8d
mov r14d, 0x800
test dword [0x1400ca100], r14d
je 0x14004d3f5
lea rdx, [0x1400a2048]
lea rcx, [0x1400c8290]
call fcn.140052eb8
mov qword [rsp + 0x38], r12
mov r8, rdi
mov r15, qword [rsp + 0x78]
mov rdx, r15
mov rcx, qword [rsp + 0x70]
call fcn.14004c3ec
mov esi, eax
mov rcx, qword [rbp + 0x418]
mov qword [rsp + 0x28], r15
lea rax, str.Project_:_ls
mov qword [rsp + 0x20], rax
mov r9d, esi
lea r8, str.onecoreuap_base_appmodel_search_search_search_service_setup.cxx
mov edx, 0xa8e
call fcn.1400501a0
xor r15d, r15d
test esi, esi
js 0x14004d56f
lea r8d, [r15 + 5]
mov dword [rbx], r8d
test dword [0x1400ca100], r14d
je 0x14004d46b
lea rdx, [0x1400a2048]
lea rcx, [0x1400c8290]
call fcn.140052eb8
mov r14d, r15d
mov rdi, qword [rsp + 0x78]
mov r13, qword [rsp + 0x70]
cmp r14d, 3
jae 0x14004d565
cmp r14d, 2
jne 0x14004d492
cmp qword [rbp - 0x80], r15
je 0x14004d55a
mov r15d, r14d
cmp dword [rbp + r15*4 - 0x70], 0
je 0x14004d557
add r15, r15
lea rax, str.Search.TripoliIndexer
mov rdx, qword [rax + r15*8]
lea rcx, [rsp + 0x48]
call fcn.14001007c
nop
mov rbx, qword [rsp + 0x48]
mov rax, rbx
neg rax
sbb esi, esi
not esi
and esi, 0x8007000e
mov rcx, qword [rbp + 0x418]
jge 0x14004d4ee
mov r9d, esi
lea r8, str.onecoreuap_base_appmodel_search_search_search_service_setup.cxx
mov edx, 0xaa0
call fcn.14002cfec
jmp 0x14004d54e
lea rax, str.Search.TripoliIndexer
mov r9, r12
mov r8, rbx
mov rdx, rdi
mov rcx, r13
cmp dword [rax + r15*8 + 0xc], 0
je 0x14004d515
call fcn.14004c7f0
mov edx, 0xaa7
jmp 0x14004d51f
call fcn.14004cac0
mov edx, 0xaac
mov qword [rsp + 0x30], rbx
mov esi, eax
mov qword [rsp + 0x28], rdi
lea rax, str.Project:__ls__Plugin:__ls
mov qword [rsp + 0x20], rax
mov r9d, esi
lea r8, str.onecoreuap_base_appmodel_search_search_search_service_setup.cxx
mov rcx, qword [rbp + 0x418]
call fcn.1400501a0
nop
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
xor r15d, r15d
inc r14d
test esi, esi
jns 0x14004d478
mov rdi, qword [rsp + 0x58]
mov r13d, dword [rsp + 0x40]
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
jmp 0x14004d60a
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x60]
call sub.msvcrt.dll_memset
mov r8d, 0x104
lea rdx, [rbp - 0x60]
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleFileNameW]
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x48]
call fcn.1400500b4
nop
mov r9d, dword [r12 + 0x10]
mov r8, qword [r12 + 8]
mov edx, 0x7d7
lea rcx, [rsp + 0x48]
call fcn.1400500f4
mov dword [r12 + 0x14], eax
mov rcx, qword [r12]
mov r10, qword [rcx + 0x20]
or r9d, 0xffffffff
mov r8d, eax
mov rdx, r14
mov rcx, r12
mov rax, r10
call qword [case.0x14000702c.0]
nop
lea rcx, [rsp + 0x48]
call fcn.14002d080
test esi, esi
js 0x14004d61e
test r13d, r13d
je 0x14004d61e
cmp dword [rbp - 0x68], r15d
jne 0x14004d61e
call fcn.140051268
mov eax, esi
mov rcx, qword [rbp + 0x3c0]
xor rcx, rsp
call fcn.14002dd40
add rsp, 0x4d8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret