Function at 0x1400e9500
Capabilities:
Hash data using sha1

Disassembly:
push rbp
push rbx
push r14
lea rbp, [rsp - 0x4f0]
sub rsp, 0x5f0
mov rax, qword [0x140554040]
xor rax, rsp
mov qword [rbp + 0x4d0], rax
mov rdx, qword [rcx + 0x18]
mov r14, rcx
mov qword [rsp + 0x28], rcx
cmp qword [rdx + 8], 0
mov ebx, dword [rdx + 0x10]
jne 0x1400e9545
mov eax, 0xffffff53
jmp 0x1400e98b4
mov qword [rsp + 0x618], rsi
lea rcx, [rbp + 0x2b0]
mov qword [rsp + 0x620], rdi
xorps xmm0, xmm0
xor edi, edi
mov qword [rsp + 0x628], r12
xor eax, eax
mov qword [rbp - 0x20], rdi
mov qword [rbp - 0x80], rdi
mov r8, rbx
mov dword [rbp - 0x78], edi
mov esi, edi
mov qword [rbp + 0x50], rdi
mov qword [rbp - 0x10], rdi
mov dword [rbp - 8], edi
mov dword [rbp - 0x34], 0x67452301
mov dword [rbp - 0x30], 0xefcdab89
mov dword [rbp - 0x2c], 0x98badcfe
mov dword [rbp - 0x28], 0x10325476
mov dword [rbp + 0x3c], 0x67452301
mov dword [rbp + 0x40], 0xefcdab89
mov dword [rbp + 0x44], 0x98badcfe
mov dword [rbp + 0x48], 0x10325476
mov dword [rbp + 0x4c], 0xc3d2e1f0
mov rdx, qword [rdx + 8]
mov qword [rsp + 0x5e8], r13
mov qword [rsp + 0x5e0], r15
mov r15d, edi
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x38], rax
movups xmmword [rsp + 0x58], xmm0
mov dword [rsp + 0x68], eax
mov qword [rsp + 0x40], rbx
call sub.VCRUNTIME140.dll_memcpy
mov r9d, 0xffffffe0
lea r13d, [rbx + 0x21]
sub r9d, ebx
mov eax, 0xffffffdf
sub eax, ebx
mov dword [rsp + 0x34], r9d
mov dword [rsp + 0x20], eax
mov r12d, edi
nop dword [rax]
lea edx, [rax + r13]
lea rcx, [rsp + 0x70]
call fcn.1400e7b90
test eax, eax
je 0x1400e987d
lea ebx, [r9 + r13]
movsxd r8, ebx
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x60]
call sub.VCRUNTIME140.dll_memcpy
mov rdi, qword [r14 + 0x18]
lea rcx, [rbp + 0x60]
mov eax, ebx
mov rbx, qword [rsp + 0x40]
add rcx, rax
mov r8, rbx
mov rdx, qword [rdi + 8]
call sub.VCRUNTIME140.dll_memcpy
lea eax, [r13 - 0x20]
movups xmm0, xmmword [rdi + 0x1c]
movups xmm1, xmmword [rdi + 0x2c]
movups xmmword [rbp + rax + 0x60], xmm0
movups xmm0, xmmword [rdi + 0x3c]
movups xmmword [rbp + rax + 0x70], xmm1
movups xmm1, xmmword [rdi + 0x4c]
movups xmmword [rbp + r13 + 0x60], xmm0
movups xmmword [rbp + r13 + 0x70], xmm1
test esi, esi
jne 0x1400e96dc
lea r8d, [r13 + 0x20]
lea rdx, [rbp + 0x60]
lea rcx, [rbp - 0x10]
call fcn.1400c9880
mov esi, eax
test eax, eax
jne 0x1400e96d8
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x10]
call fcn.1400c9d20
mov r15d, dword [rsp + 0x68]
mov esi, eax
movups xmm0, xmmword [rsp + 0x58]
mov qword [rsp + 0x38], r15
mov r15d, dword [rbp - 0x80]
movups xmmword [rsp + 0x48], xmm0
jmp 0x1400e96e1
mov r15d, dword [rbp - 0x80]
movups xmm0, xmmword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
movups xmmword [rbp + rbx + 0x2b0], xmm0
mov dword [rbp + rbx + 0x2c0], eax
test esi, esi
jne 0x1400e9714
lea r14d, [rbx + 0x14]
lea rbx, [rbp + 0x2b0]
cmp r15d, 0x40
jb 0x1400e975d
mov esi, 0xffffff7c
mov r14, qword [rsp + 0x28]
mov eax, dword [rsp + 0x20]
inc r13d
mov r9d, dword [rsp + 0x34]
add eax, r13d
add r12d, 0x10
cmp eax, 3
mov eax, dword [rsp + 0x20]
jl 0x1400e9620
test esi, esi
jne 0x1400e9882
mov rcx, r14
call fcn.1400e8f60
mov esi, eax
test eax, eax
jne 0x1400e9882
mov rcx, r14
call fcn.1400e9330
mov esi, eax
jmp 0x1400e988a
mov ecx, dword [rbp - 0x7c]
lea eax, [r14 + rcx]
mov dword [rbp - 0x7c], eax
cmp eax, ecx
jae 0x1400e976e
inc dword [rbp - 0x78]
test r15d, r15d
je 0x1400e97de
mov ecx, 0x40
mov eax, r15d
sub ecx, r15d
lea rdx, [rbp + 0x2b0]
cmp r14d, ecx
mov edi, r14d
cmovae edi, ecx
lea rcx, [rbp - 0x74]
add rcx, rax
mov r8d, edi
call sub.VCRUNTIME140.dll_memcpy
mov r15d, dword [rbp - 0x80]
lea rbx, [rbp + 0x2b0]
add r15d, edi
add rbx, rdi
sub r14d, edi
mov dword [rbp - 0x80], r15d
cmp r15d, 0x40
jne 0x1400e97de
lea rdx, [rbp - 0x74]
lea rcx, [rbp - 0x80]
call fcn.1400dc7b0
mov esi, eax
test eax, eax
je 0x1400e97d7
mov r15d, dword [rbp - 0x80]
jmp 0x1400e970f
xor r15d, r15d
mov dword [rbp - 0x80], r15d
cmp r14d, 0x40
jb 0x1400e9830
mov edi, r14d
shr rdi, 6
nop dword [rax + rax]
movups xmm0, xmmword [rbx]
lea rdx, [rbp - 0x74]
add r14d, 0xffffffc0
lea rcx, [rbp - 0x80]
movups xmmword [rbp - 0x74], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x64], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rbp - 0x54], xmm0
movups xmm1, xmmword [rbx + 0x30]
add rbx, 0x40
movups xmmword [rbp - 0x44], xmm1
call fcn.1400dc7b0
mov esi, eax
sub rdi, 1
jne 0x1400e97f0
mov r15d, dword [rbp - 0x80]
test r14d, r14d
je 0x1400e984b
mov r8d, r14d
lea rcx, [rbp - 0x74]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov r15d, r14d
mov dword [rbp - 0x80], r14d
test esi, esi
jne 0x1400e970f
mov r14, qword [rsp + 0x28]
movsxd rcx, r12d
mov rdx, qword [r14 + 0x18]
add rdx, 0xad
add rdx, rcx
lea rcx, [rbp - 0x80]
call fcn.1400dd110
mov r15d, dword [rbp - 0x80]
mov esi, eax
jmp 0x1400e9714
mov esi, 0xfffffed2
mov rcx, r14
call fcn.1400e9330
mov r15, qword [rsp + 0x5e0]
mov eax, esi
mov rsi, qword [rsp + 0x618]
mov r13, qword [rsp + 0x5e8]
mov r12, qword [rsp + 0x628]
mov rdi, qword [rsp + 0x620]
mov rcx, qword [rbp + 0x4d0]
xor rcx, rsp
call fcn.1400e9c90
add rsp, 0x5f0
pop r14
pop rbx
pop rbp
ret