Function at 0x14009d7c3
Capabilities:
Hash data via wincrypt
Initialize hashing via wincrypt

Disassembly:
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r8
push r15
mov rax, 7
sub rsp, 8
mov qword [rsp], 0
dec rax
jne 0x14009d7db
sub rsp, 0x28
call fcn.14012b830
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x28]
sub rsp, 0x10
call fcn.14012b8a0
add rsp, 0x10
mov dword [section..data], 0x1400041
mov dword [section..data], 0x1400042
mov qword [rsp + 0x30], 0
mov dword [section..data], 0x1400042
mov qword [rsp + 0x38], 0
mov dword [section..data], 0x1400042
mov qword [rsp + 0x40], 0
mov dword [section..data], 0x1400042
mov qword [rsp + 0x48], 0
mov dword [section..data], 0x1400042
mov qword [rsp + 0x50], 0
mov dword [section..data], 0x1400044
call fcn.14004fc9f
and rax, rax
je 0x14009d88e
xor rax, rax
jmp 0x14009d895
mov rax, 1
and rax, rax
je 0x14009d8b0
mov dword [section..data], 0x1400044
mov rax, 0xffffffffffffffff
jmp 0x14009daf1
mov dword [section..data], 0x1400044
mov dword [section..data], 0x1400046
mov dword [section..data], 0x1400048
sub rsp, 8
lea rax, [rsp + 0x50]
push rax
push 0
push 0
push qword [rsp + 0xa0]
sub rsp, 8
sub rsp, 0x20
call fcn.140096f60
add rsp, 0x28
mov rcx, rax
pop rdx
pop r8
pop r9
sub rsp, 0x20
call sub.ADVAPI32.dll_CryptCreateHash
add rsp, 0x30
mov qword [rsp + 0x30], rax
mov dword [section..data], 0x140004a
mov r15, qword [rsp + 0x30]
and r15, r15
jne 0x14009d94a
mov dword [section..data], 0x140004b
mov qword [rsp + 0x40], 0xffffffffffffffff
mov dword [section..data], 0x140004c
jmp 0x14009daa1
mov dword [section..data], 0x140004d
mov dword [section..data], 0x140004f
push qword [rsp + 0x48]
pop rax
mov qword [rsp + 0x38], rax
mov dword [section..data], 0x1400051
push 1
sub rsp, 8
mov rcx, qword [rsp + 0x38]
sub rsp, 0x20
call fcn.140127510
add rsp, 0x28
push rax
mov rax, qword [rsp + 0x38]
mov rdx, rax
mov rcx, qword [rsp + 0x48]
pop r8
pop r9
call sub.ADVAPI32.dll_CryptHashData
mov qword [rsp + 0x30], rax
mov dword [section..data], 0x1400052
mov r15, qword [rsp + 0x30]
and r15, r15
jne 0x14009d9df
mov dword [section..data], 0x1400053
mov qword [rsp + 0x40], 0xffffffffffffffff
mov dword [section..data], 0x1400054
jmp 0x14009daa1
mov dword [section..data], 0x1400055
mov dword [section..data], 0x1400058
sub rsp, 8
lea rax, [rsp + 0x58]
push rax
push 1
push qword [rsp + 0x50]
push qword [rsp + 0x98]
sub rsp, 8
sub rsp, 0x20
call fcn.140096f60
add rsp, 0x28
mov rcx, rax
pop rdx
pop r8
pop r9
sub rsp, 0x20
call sub.ADVAPI32.dll_CryptDeriveKey
add rsp, 0x30
mov qword [rsp + 0x30], rax
mov dword [section..data], 0x1400059
mov r15, qword [rsp + 0x30]
and r15, r15
jne 0x14009da6b
mov dword [section..data], 0x140005a
mov qword [rsp + 0x40], 0xffffffffffffffff
mov dword [section..data], 0x140005b
jmp 0x14009daa1
mov dword [section..data], 0x140005c
mov dword [section..data], 0x140005d
push qword [rsp + 0x50]
pop rax
mov qword [rsp + 0x40], rax
mov dword [section..data], 0x140005e
mov r15, qword [rsp + 0x40]
and r15, r15
je 0x14009d8ba
mov dword [section..data], 0x1400060
mov r15, qword [rsp + 0x38]
and r15, r15
je 0x14009dac9
mov dword [section..data], 0x1400061
mov rcx, qword [rsp + 0x38]
call sub.ADVAPI32.dll_CryptDestroyHash
mov dword [section..data], 0x1400062
mov dword [section..data], 0x1400064
mov rax, qword [rsp + 0x40]
jmp 0x14009daf1
push rax
mov rcx, qword [rsp + 0x30]
sub rsp, 0x28
call fcn.14012b910
add rsp, 0x28
pop rax
add rsp, 0x60
pop r15
ret