Function at 0x140015d90
Capabilities:
Get common file path
Query or enumerate registry value

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x190]
sub rsp, 0x290
mov rax, qword [0x140036558]
xor rax, rsp
mov qword [rbp + 0x180], rax
mov r15, rdx
mov r14, rcx
xor esi, esi
mov edi, esi
mov dword [rsp + 0x58], 4
lea rcx, [rsp + 0x38]
call qword [sym.imp.MFC42u.dll_CDaoIndexFieldInfo::CDaoIndexFieldInfo]
nop dword [rax + rax]
nop
lea rcx, [rsp + 0x50]
call qword [sym.imp.MFC42u.dll_CDaoIndexFieldInfo::CDaoIndexFieldInfo]
nop dword [rax + rax]
nop
lea rcx, [rsp + 0x30]
call qword [sym.imp.MFC42u.dll_CDaoIndexFieldInfo::CDaoIndexFieldInfo]
nop dword [rax + rax]
nop
lea rcx, [rsp + 0x48]
call qword [sym.imp.MFC42u.dll_CDaoIndexFieldInfo::CDaoIndexFieldInfo]
nop dword [rax + rax]
nop
test r14, r14
je 0x140016219
mov edx, 0x254
lea rcx, [rsp + 0x50]
call qword [sym.imp.MFC42u.dll_CPropertySheet::OnCtlColor]
nop dword [rax + rax]
lea r8, [0x14002afe4]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call qword [sym.imp.MFC42u.dll_CComboBoxEx::DeleteItem]
nop dword [rax + rax]
nop
mov rdx, rax
lea rcx, [rsp + 0x50]
call qword [sym.imp.MFC42u.dll_AfxDaoGetEngine]
nop dword [rax + rax]
nop
lea rcx, [rsp + 0x40]
call qword [sym.imp.MFC42u.dll_CDocObjectServer::XOleDocument::AddRef]
nop dword [rax + rax]
mov edx, 0x153
lea rcx, [rsp + 0x38]
call qword [sym.imp.MFC42u.dll_CPropertySheet::OnCtlColor]
nop dword [rax + rax]
mov edx, 0x255
lea rcx, [rsp + 0x48]
call qword [sym.imp.MFC42u.dll_CPropertySheet::OnCtlColor]
nop dword [rax + rax]
lea r8, [0x14002afe4]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x48]
call qword [sym.imp.MFC42u.dll_CComboBoxEx::DeleteItem]
nop dword [rax + rax]
nop
mov rdx, rax
lea rcx, [rsp + 0x48]
call qword [sym.imp.MFC42u.dll_AfxDaoGetEngine]
nop dword [rax + rax]
nop
lea rcx, [rsp + 0x40]
call qword [sym.imp.MFC42u.dll_CDocObjectServer::XOleDocument::AddRef]
nop dword [rax + rax]
mov edx, 0x153
lea rcx, [rsp + 0x30]
call qword [sym.imp.MFC42u.dll_CPropertySheet::OnCtlColor]
nop dword [rax + rax]
mov rax, qword [0x14003c7e8]
cmp dword [rax - 8], esi
jne 0x140016171
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
lea r9d, [rsi + 1]
xor r8d, r8d
lea rdx, str.SystemCurrentControlSetControlSecureBootState
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
nop dword [rax + rax]
test eax, eax
jne 0x140015fc5
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x5c]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, str.UEFISecureBootEnabled
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
nop dword [rax + rax]
mov edi, eax
test eax, eax
jle 0x140015f83
movzx edi, ax
or edi, 0x80070000
lea rcx, [rsp + 0x38]
test edi, edi
jne 0x140015fa1
cmp dword [rsp + 0x5c], 1
jne 0x140015f9a
mov edx, 0x2f0
jmp 0x140015fa6
mov edx, 0x2f1
jmp 0x140015fa6
mov edx, 0x2ef
call qword [sym.imp.MFC42u.dll_CPropertySheet::OnCtlColor]
nop dword [rax + rax]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop dword [rax + rax]
jmp 0x140015fdb
mov edx, 0x2ef
lea rcx, [rsp + 0x38]
call qword [sym.imp.MFC42u.dll_CPropertySheet::OnCtlColor]
nop dword [rax + rax]
mov ebx, 0x104
mov edx, ebx
lea rcx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
nop dword [rax + rax]
test eax, eax
je 0x140016171
mov edx, ebx
lea rax, [rsp + 0x70]
cmp word [rax], si
je 0x140016011
add rax, 2
sub rdx, 1
jne 0x140016002
mov rax, rdx
mov rcx, rbx
sub rcx, rdx
neg rax
sbb r8, r8
and r8, rcx
mov rax, rdx
neg rax
sbb edi, edi
not edi
and edi, 0x80070057
test rdx, rdx
je 0x140016091
sub rbx, r8
lea rcx, [rsp + 0x70]
lea rcx, [rcx + r8*2]
je 0x140016076
mov eax, 0x7ffffffe
lea rdx, str._fveapi.dll
sub rdx, rcx
test rax, rax
je 0x140016076
movzx r8d, word [rdx + rcx]
test r8w, r8w
je 0x140016076
mov word [rcx], r8w
add rcx, 2
dec rax
sub rbx, 1
jne 0x140016055
lea rax, [rcx - 2]
test rbx, rbx
cmovne rax, rcx
mov word [rax], si
neg rbx
sbb edi, edi
not edi
and edi, 0x8007007a
test edi, edi
js 0x140016171
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
nop dword [rax + rax]
mov rbx, rax
test rax, rax
je 0x140016171
lea rdx, str.FveGetSecureBootBindingState
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x140016162
or dword [rsp + 0x40], 0xffffffff
movabs r10, 0x9f853e7356543b70
lea rcx, [rsp + 0x40]
call qword [0x1400283f8]
mov edi, eax
test eax, eax
je 0x140016108
cmp eax, 0x80070522
jne 0x140016162
mov edx, 0x2ff
jmp 0x140016151
mov eax, dword [rsp + 0x40]
cmp eax, 0xffffffff
je 0x14001614c
test eax, eax
je 0x140016145
cmp eax, 1
je 0x14001613e
cmp eax, 2
je 0x140016137
lea rcx, [rsp + 0x30]
cmp eax, 3
je 0x140016130
mov edx, 0x153
jmp 0x140016156
mov edx, 0x2f5
jmp 0x140016156
mov edx, 0x2f4
jmp 0x140016151
mov edx, 0x2f3
jmp 0x140016151
mov edx, 0x2f2
jmp 0x140016151
mov edx, 0x153
lea rcx, [rsp + 0x30]
call qword [sym.imp.MFC42u.dll_CPropertySheet::OnCtlColor]
nop dword [rax + rax]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop dword [rax + rax]
mov rax, qword [r14]
movabs r10, 0xab881e03545bcb70
mov dword [rsp + 0x20], esi
xor r9d, r9d
lea r8, [rsp + 0x50]
mov rdx, r15
mov rcx, r14
mov rax, qword [rax + 0x60]
call qword [0x1400283f8]
mov rax, qword [r14]
movabs r10, 0xab881e03545bcb70
mov dword [rsp + 0x20], esi
xor r9d, r9d
lea r8, [rsp + 0x38]
lea rdx, [r15 + 0x38]
mov rcx, r14
mov rax, qword [rax + 0x60]
call qword [0x1400283f8]
mov rax, qword [r14]
movabs r10, 0xab881e03545bcb70
mov dword [rsp + 0x20], esi
xor r9d, r9d
lea r8, [rsp + 0x48]
mov rdx, r15
mov rcx, r14
mov rax, qword [rax + 0x60]
call qword [0x1400283f8]
mov rax, qword [r14]
movabs r10, 0xab881e03545bcb70
mov dword [rsp + 0x20], esi
xor r9d, r9d
lea r8, [rsp + 0x30]
lea rdx, [r15 + 0x38]
mov rcx, r14
mov rax, qword [rax + 0x60]
call qword [0x1400283f8]
mov esi, edi
lea rcx, [rsp + 0x48]
call qword [sym.imp.MFC42u.dll_CDocObjectServer::XOleDocument::AddRef]
nop dword [rax + rax]
nop
lea rcx, [rsp + 0x30]
call qword [sym.imp.MFC42u.dll_CDocObjectServer::XOleDocument::AddRef]
nop dword [rax + rax]
nop
lea rcx, [rsp + 0x50]
call qword [sym.imp.MFC42u.dll_CDocObjectServer::XOleDocument::AddRef]
nop dword [rax + rax]
nop
lea rcx, [rsp + 0x38]
call qword [sym.imp.MFC42u.dll_CDocObjectServer::XOleDocument::AddRef]
nop dword [rax + rax]
mov eax, esi
mov rcx, qword [rbp + 0x180]
xor rcx, rsp
call fcn.140005280
mov rbx, qword [rsp + 0x2d0]
add rsp, 0x290
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret