Function at 0x1402931dc
Capabilities:
Create new key via cryptacquirecontext
Hash data via wincrypt
Import public key
Initialize hashing via wincrypt

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov qword [rbp - 0x10], 0xfffffffffffffffe
mov r15d, r9d
mov rsi, r8
mov r14, rdx
mov r12, rcx
and qword [rbp + 0x40], 0
and qword [rbp + 0x50], 0
and qword [rbp + 0x48], 0
mov dword [rsp + 0x20], 0xf0000000
mov r9d, DispGetParam
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x48]
call qword [sym.imp.api_ms_win_security_cryptoapi_l1_1_0.dll_CryptAcquireContextW]
nop dword [rax + rax]
test eax, eax
setne al
mov rcx, qword [rbp + 0x38]
lea rdx, str.Acquiring_cryptographic_provider_failed
mov qword [rsp + 0x20], rdx
movzx r9d, al
lea r8, str.amcorewcd_sourcecommoncertificateutilscertificate.cpp
mov edx, 0xd7
call fcn.140060d38
mov rdi, qword [rbp + 0x40]
test rdi, rdi
je 0x140293292
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, rdi
call qword [sym.imp.api_ms_win_security_cryptoapi_l1_1_0.dll_CryptDestroyHash]
nop dword [rax + rax]
mov ecx, ebx
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
and qword [rbp + 0x40], 0
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, r15d
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.api_ms_win_security_cryptoapi_l1_1_0.dll_CryptCreateHash]
nop dword [rax + rax]
test eax, eax
setne al
mov rcx, qword [rbp + 0x38]
lea rdx, str.Creating_hash_object_failed
mov qword [rsp + 0x20], rdx
movzx r9d, al
lea r8, str.amcorewcd_sourcecommoncertificateutilscertificate.cpp
mov edx, 0xe2
call fcn.140060d38
mov r8, qword [r14 + 8]
sub r8, qword [r14]
xor r9d, r9d
mov rdx, qword [r14]
mov rcx, qword [rbp + 0x40]
call qword [sym.imp.api_ms_win_security_cryptoapi_l1_1_0.dll_CryptHashData]
nop dword [rax + rax]
test eax, eax
setne al
mov rcx, qword [rbp + 0x38]
lea rdx, str.Computing_hash_object_failed
mov qword [rsp + 0x20], rdx
movzx r9d, al
lea r8, str.amcorewcd_sourcecommoncertificateutilscertificate.cpp
mov edx, 0xea
call fcn.140060d38
mov rax, qword [r12]
mov r8, qword [rax + 0x18]
add r8, 0x60
lea r9, [rbp + 0x50]
mov edx, 0x10001
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.CRYPT32.dll_CryptImportPublicKeyInfo]
nop dword [rax + rax]
test eax, eax
setne al
mov rcx, qword [rbp + 0x38]
lea rdx, str.Importing_pubic_key_failed
mov qword [rsp + 0x20], rdx
movzx r9d, al
lea r8, str.amcorewcd_sourcecommoncertificateutilscertificate.cpp
mov edx, MsiGetProductInfoExW
call fcn.140060d38
mov r8, qword [rsi + 8]
sub r8, qword [rsi]
and dword [rsp + 0x28], 0
and qword [rsp + 0x20], 0
mov r9, qword [rbp + 0x50]
mov rdx, qword [rsi]
mov rcx, qword [rbp + 0x40]
call qword [sym.imp.api_ms_win_security_cryptoapi_l1_1_0.dll_CryptVerifySignatureW]
nop dword [rax + rax]
cmp eax, 1
sete bl
mov rcx, qword [rbp + 0x40]
test rcx, rcx
je 0x1402933be
call qword [sym.imp.api_ms_win_security_cryptoapi_l1_1_0.dll_CryptDestroyHash]
nop dword [rax + rax]
nop
mov rcx, qword [rbp + 0x48]
test rcx, rcx
je 0x1402933d5
xor edx, edx
call qword [sym.imp.api_ms_win_security_cryptoapi_l1_1_0.dll_CryptReleaseContext]
nop dword [rax + rax]
mov al, bl
add rsp, 0x40
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret