Function at 0x140014a30
Capabilities:
Hash data using sha1
Hash data using sha1 via wincrypt
Hash data via wincrypt
Initialize hashing via wincrypt

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x98
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov rax, qword [0x1402126b0]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x20], 0xf0000000
mov r9d, 1
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x58]
call qword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
test eax, eax
jne 0x140014ab4
xor r8d, r8d
mov edx, reloc.WS2_32.dll_sendto
mov rcx, qword [rsp + 0xa0]
call fcn.140015630
nop
mov eax, dword [rsp + 0x30]
or eax, 1
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0xa0]
jmp 0x140014cd4
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x8004
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.ADVAPI32.dll_CryptCreateHash]
test eax, eax
jne 0x140014b06
xor r8d, r8d
mov edx, reloc.WS2_32.dll_sendto
mov rcx, qword [rsp + 0xa0]
call fcn.140015630
nop
mov eax, dword [rsp + 0x30]
or eax, 1
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0xa0]
jmp 0x140014cd4
mov rcx, qword [rsp + 0xa8]
call fcn.140009780
mov qword [rsp + 0x38], rax
mov rcx, qword [rsp + 0xa8]
call fcn.1400097a0
xor r9d, r9d
mov rcx, qword [rsp + 0x38]
mov r8d, ecx
mov rdx, rax
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ADVAPI32.dll_CryptHashData]
test eax, eax
jne 0x140014b70
xor r8d, r8d
mov edx, reloc.WS2_32.dll_sendto
mov rcx, qword [rsp + 0xa0]
call fcn.140015630
nop
mov eax, dword [rsp + 0x30]
or eax, 1
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0xa0]
jmp 0x140014cd4
mov dword [rsp + 0x48], 0
mov dword [rsp + 0x4c], 4
mov dword [rsp + 0x20], 0
lea r9, [rsp + 0x4c]
lea r8, [rsp + 0x48]
mov edx, 4
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ADVAPI32.dll_CryptGetHashParam]
test eax, eax
jne 0x140014bd4
xor r8d, r8d
mov edx, reloc.WS2_32.dll_sendto
mov rcx, qword [rsp + 0xa0]
call fcn.140015630
nop
mov eax, dword [rsp + 0x30]
or eax, 1
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0xa0]
jmp 0x140014cd4
lea rcx, [rsp + 0x60]
call fcn.140009a60
nop
mov eax, dword [rsp + 0x48]
inc eax
mov eax, eax
mov edx, eax
lea rcx, [rsp + 0x60]
call fcn.140010340
mov eax, dword [rsp + 0x48]
xor r8d, r8d
mov edx, eax
lea rcx, [rsp + 0x60]
call fcn.1400154e0
xor edx, edx
lea rcx, [rsp + 0x60]
call fcn.1400097d0
mov dword [rsp + 0x20], 0
lea r9, [rsp + 0x48]
mov r8, rax
mov edx, 2
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ADVAPI32.dll_CryptGetHashParam]
test eax, eax
jne 0x140014c6a
xor r8d, r8d
mov edx, reloc.WS2_32.dll_sendto
mov rcx, qword [rsp + 0xa0]
call fcn.140015630
mov eax, dword [rsp + 0x30]
or eax, 1
mov dword [rsp + 0x30], eax
lea rcx, [rsp + 0x60]
call fcn.140009960
mov rax, qword [rsp + 0xa0]
jmp 0x140014cd4
cmp dword [rsp + 0x48], 0x14
je 0x140014ca5
xor r8d, r8d
mov edx, reloc.WS2_32.dll_sendto
mov rcx, qword [rsp + 0xa0]
call fcn.140015630
mov eax, dword [rsp + 0x30]
or eax, 1
mov dword [rsp + 0x30], eax
lea rcx, [rsp + 0x60]
call fcn.140009960
mov rax, qword [rsp + 0xa0]
jmp 0x140014cd4
lea rdx, [rsp + 0x60]
mov rcx, qword [rsp + 0xa0]
call fcn.140009990
mov eax, dword [rsp + 0x30]
or eax, 1
mov dword [rsp + 0x30], eax
lea rcx, [rsp + 0x60]
call fcn.140009960
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140138320
add rsp, 0x98
ret