Function at 0x140001f30
Capabilities:
Create new key via cryptacquirecontext
Hash data via wincrypt
Initialize hashing via wincrypt

Disassembly:
push rbx
push rdi
push r13
sub rsp, 0x60
mov rax, qword [0x14002e308]
mov edi, edx
mov r8d, edx
mov rdx, rcx
mov ecx, 0x10001
xor ebx, ebx
call qword [rax + VariantCopy]
mov r13, rax
test rax, rax
je 0x14000216b
lea r9d, [rbx + 0x18]
lea rcx, [rsp + 0x38]
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x98], rbx
mov dword [rsp + 0x20], 0xf0000000
call qword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
test eax, eax
je 0x140002129
mov rcx, qword [rsp + 0x38]
lea rax, [rsp + 0x98]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x800c
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_CryptCreateHash]
test eax, eax
je 0x140002129
mov r8, qword [r13 + 0x18]
mov rax, qword [0x14002e308]
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x50], r14
mov r14d, 1
lea r9, [rsp + 0x30]
add r8, 0x60
mov edx, r14d
call qword [rax + 0x80]
test eax, eax
je 0x140002124
mov rcx, qword [rsp + 0x30]
lea r8, [rsp + 0x90]
lea edx, [rbx + 3]
xor r9d, r9d
mov dword [rsp + 0x90], r14d
call qword [sym.imp.ADVAPI32.dll_CryptSetKeyParam]
test eax, eax
je 0x140002124
lea rdx, [rsp + 0x40]
lea rcx, str.NE1OYnBDZWE4WThkY0VRVGI4WFJweVk4ZU5FSU5TUXQ
mov qword [rsp + 0x40], rbx
call fcn.1400017c0
test eax, eax
jle 0x140002124
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x98]
xor r9d, r9d
mov r8d, eax
call qword [sym.imp.ADVAPI32.dll_CryptHashData]
test eax, eax
je 0x140002119
lea rdx, [rsp + 0x48]
lea rcx, str.u4eqb59m482PeAogasJ3cjGxaHI582rDCJn61rP22H23Xuxw37Zzy_qf_SLsrpLwmWko9aYFNZ14_g9HArKGewb_8h8tPjv7iGXhRnKAjXSePpI9p1ZC9gcGUkmQ3Fouk50M8BPzAWJZZELeQV6iJ3t08S_ht84M6d51sbc93SobRyIJq78L5B5EZZXRRVZ_4pyceXte4QGIJYLiJuFiEnb6ltyiyWqVi87L4JLYuip2BZc1C2WKhXCMLP8EsjjaEIIYWWznaEBiFxwntQ4D6x4NHk4sSYWxrWM8A
mov qword [rsp + 0x80], rbp
mov qword [rsp + 0x48], rbx
call fcn.1400017c0
movsxd rbp, eax
test edi, edi
jle 0x140002111
lea eax, [rbp + 1]
lea ecx, [rbx + 0x40]
mov qword [rsp + 0x58], rsi
movsxd rdx, eax
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
mov rsi, qword [rsp + 0x48]
mov rdi, rax
test rax, rax
je 0x140002103
mov ecx, ebx
test ebp, ebp
jle 0x1400020d2
lea rdx, [rbp + rsi - 1]
nop word [rax + rax]
movzx eax, byte [rdx]
inc rcx
dec rdx
mov byte [rcx + rdi - 1], al
cmp rcx, rbp
jl 0x1400020c0
mov r9, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x98]
mov r8d, ebp
mov rdx, rdi
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
call qword [sym.imp.ADVAPI32.dll_CryptVerifySignatureW]
mov rcx, rdi
test eax, eax
cmovne ebx, r14d
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rsi, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov r14, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x98]
test rcx, rcx
je 0x14000213c
call qword [sym.imp.ADVAPI32.dll_CryptDestroyHash]
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14000214c
call qword [sym.imp.ADVAPI32.dll_CryptDestroyKey]
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14000215e
xor edx, edx
call qword [sym.imp.ADVAPI32.dll_CryptReleaseContext]
mov rdx, qword [0x14002e308]
mov rcx, r13
call qword [rdx + 0x58]
mov eax, ebx
add rsp, 0x60
pop r13
pop rdi
pop rbx
ret