Function at 0x1400c94d0
Capabilities:
Hash data using sha1

Disassembly:
push rbp
push rdi
push r12
lea rbp, [rsp - 0x4f0]
sub rsp, 0x5f0
mov rax, qword [0x140126240]
xor rax, rsp
mov qword [rbp + 0x4d0], rax
mov rdx, qword [rcx + 0x10]
mov r12, rcx
cmp qword [rdx + 8], 0
mov edi, dword [rdx + 0x10]
jne 0x1400c9510
mov eax, 0xffffff53
jmp 0x1400c9948
mov qword [rsp + 0x618], rbx
lea rcx, [rbp + 0x2b0]
mov qword [rsp + 0x620], rsi
xorps xmm0, xmm0
xor esi, esi
mov qword [rsp + 0x628], r13
mov qword [rsp + 0x5e8], r14
mov r8, rdi
mov qword [rbp - 0x20], rsi
mov r14d, esi
mov dword [rbp - 0x34], 0x67452301
mov ebx, esi
mov dword [rbp - 0x30], 0xefcdab89
mov dword [rbp - 0x2c], 0x98badcfe
mov dword [rbp - 0x28], 0x10325476
mov qword [rbp - 0x80], rsi
mov dword [rbp - 0x78], esi
mov qword [rbp + 0x50], rsi
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 qword [rbp - 0x10], rsi
mov dword [rbp - 8], esi
mov rdx, qword [rdx + 8]
mov qword [rsp + 0x5e0], r15
xor r15d, r15d
mov qword [rsp + 0x20], r15
mov dword [rsp + 0x68], r15d
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x40], rdi
movups xmmword [rsp + 0x58], xmm0
call fcn.1400f7100
mov r9d, 0xffffffe0
mov qword [rsp + 0x38], rsi
sub r9d, edi
lea r13d, [rdi + 0x21]
mov eax, 0xffffffdf
mov dword [rsp + 0x30], r9d
sub eax, edi
mov dword [rsp + 0x28], eax
nop dword [rax + rax]
lea edx, [rax + r13]
lea rcx, [rsp + 0x70]
call fcn.1400c7d90
test eax, eax
je 0x1400c9911
lea edi, [r9 + r13]
movsxd r8, edi
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x60]
call fcn.1400f7100
mov rsi, qword [r12 + 0x10]
lea rcx, [rbp + 0x60]
mov eax, edi
mov rdi, qword [rsp + 0x40]
add rcx, rax
mov r8, rdi
mov rdx, qword [rsi + 8]
call fcn.1400f7100
lea eax, [r13 - 0x20]
movups xmm0, xmmword [rsi + 0x1c]
movups xmm1, xmmword [rsi + 0x2c]
movups xmmword [rbp + rax + 0x60], xmm0
movups xmm0, xmmword [rsi + 0x3c]
movups xmmword [rbp + rax + 0x70], xmm1
movups xmm1, xmmword [rsi + 0x4c]
movups xmmword [rbp + r13 + 0x60], xmm0
movups xmmword [rbp + r13 + 0x70], xmm1
test ebx, ebx
jne 0x1400c96ad
lea r8d, [r13 + 0x20]
lea rdx, [rbp + 0x60]
lea rcx, [rbp - 0x10]
call fcn.1400ac9e0
mov ebx, eax
test eax, eax
jne 0x1400c96a9
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x10]
call fcn.1400ace80
movups xmm0, xmmword [rsp + 0x58]
mov r15d, dword [rsp + 0x68]
mov ebx, eax
mov r14d, dword [rbp - 0x80]
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x20], r15
jmp 0x1400c96b2
mov r14d, dword [rbp - 0x80]
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [rbp + rdi + 0x2b0], xmm0
mov dword [rbp + rdi + 0x2c0], r15d
test ebx, ebx
jne 0x1400c98d1
lea r15d, [rdi + 0x14]
lea rsi, [rbp + 0x2b0]
cmp r14d, 0x40
jb 0x1400c96e5
mov ebx, 0xffffff7c
jmp 0x1400c98cc
mov ecx, dword [rbp - 0x7c]
lea eax, [r15 + rcx]
mov dword [rbp - 0x7c], eax
cmp eax, ecx
jae 0x1400c96f6
inc dword [rbp - 0x78]
test r14d, r14d
je 0x1400c9766
mov ecx, 0x40
mov eax, r14d
sub ecx, r14d
lea rdx, [rbp + 0x2b0]
cmp r15d, ecx
mov edi, r15d
cmovae edi, ecx
lea rcx, [rbp - 0x74]
add rcx, rax
mov r8d, edi
call fcn.1400f7100
mov r14d, dword [rbp - 0x80]
lea rsi, [rbp + 0x2b0]
add r14d, edi
add rsi, rdi
sub r15d, edi
mov dword [rbp - 0x80], r14d
cmp r14d, 0x40
jne 0x1400c9766
lea rdx, [rbp - 0x74]
lea rcx, [rbp - 0x80]
call fcn.1400bec60
mov ebx, eax
test eax, eax
je 0x1400c975f
mov r14d, dword [rbp - 0x80]
jmp 0x1400c98cc
xor r14d, r14d
mov dword [rbp - 0x80], r14d
cmp r15d, 0x40
jb 0x1400c97c0
mov edi, r15d
shr rdi, 6
nop dword [rax]
nop word [rax + rax]
movups xmm0, xmmword [rsi]
lea rdx, [rbp - 0x74]
add r15d, 0xffffffc0
lea rcx, [rbp - 0x80]
movups xmmword [rbp - 0x74], xmm0
movups xmm1, xmmword [rsi + 0x10]
movups xmmword [rbp - 0x64], xmm1
movups xmm0, xmmword [rsi + 0x20]
movups xmmword [rbp - 0x54], xmm0
movups xmm1, xmmword [rsi + 0x30]
add rsi, 0x40
movups xmmword [rbp - 0x44], xmm1
call fcn.1400bec60
mov ebx, eax
sub rdi, 1
jne 0x1400c9780
mov r14d, dword [rbp - 0x80]
test r15d, r15d
je 0x1400c97db
mov r8d, r15d
lea rcx, [rbp - 0x74]
mov rdx, rsi
call fcn.1400f7100
mov r14d, r15d
mov dword [rbp - 0x80], r15d
test ebx, ebx
jne 0x1400c98cc
mov rcx, qword [rsp + 0x38]
mov rbx, qword [r12 + 0x10]
add rcx, 0xad
add rbx, rcx
je 0x1400c98c7
mov eax, r14d
mov byte [rbp + rax - 0x74], 0x80
mov ecx, dword [rbp - 0x80]
inc ecx
mov dword [rbp - 0x80], ecx
cmp ecx, 0x38
jbe 0x1400c9848
mov eax, ecx
mov r8d, 0x40
sub r8d, ecx
xor edx, edx
lea rcx, [rbp - 0x74]
add rcx, rax
call fcn.1400f77a0
lea rdx, [rbp - 0x74]
mov dword [rbp - 0x80], 0x40
lea rcx, [rbp - 0x80]
call fcn.1400bec60
xor esi, esi
mov ecx, esi
mov dword [rbp - 0x80], ecx
jmp 0x1400c984a
xor esi, esi
mov eax, ecx
mov r8d, 0x38
sub r8d, ecx
xor edx, edx
lea rcx, [rbp - 0x74]
add rcx, rax
call fcn.1400f77a0
mov r8d, dword [rbp - 0x7c]
mov ecx, r8d
mov eax, dword [rbp - 0x78]
shr ecx, 0x1d
shl r8d, 3
mov dword [rbp - 0x7c], r8d
mov dword [rbp - 0x3c], r8d
lea edx, [rcx + rax*8]
mov dword [rbp - 0x78], edx
lea rcx, [rbp - 0x80]
mov dword [rbp - 0x38], edx
lea rdx, [rbp - 0x74]
call fcn.1400bec60
movups xmm0, xmmword [rbp - 0x34]
mov r14d, esi
movups xmmword [rbx], xmm0
mov dword [rbp - 0x34], 0x67452301
mov ebx, esi
mov dword [rbp - 0x30], 0xefcdab89
mov dword [rbp - 0x2c], 0x98badcfe
mov dword [rbp - 0x28], 0x10325476
mov qword [rbp - 0x80], 0
mov dword [rbp - 0x78], esi
jmp 0x1400c98cc
mov ebx, 0xffffff53
mov r15, qword [rsp + 0x20]
mov eax, dword [rsp + 0x28]
inc r13d
add qword [rsp + 0x38], 0x10
add eax, r13d
mov r9d, dword [rsp + 0x30]
cmp eax, 3
mov eax, dword [rsp + 0x28]
jl 0x1400c95f0
test ebx, ebx
jne 0x1400c9916
mov rcx, r12
call fcn.1400c8e70
mov ebx, eax
test eax, eax
jne 0x1400c9916
mov rcx, r12
call fcn.1400c9300
mov ebx, eax
jmp 0x1400c991e
mov ebx, 0xfffffed2
mov rcx, r12
call fcn.1400c9300
mov r15, qword [rsp + 0x5e0]
mov eax, ebx
mov rbx, qword [rsp + 0x618]
mov r14, qword [rsp + 0x5e8]
mov r13, qword [rsp + 0x628]
mov rsi, qword [rsp + 0x620]
mov rcx, qword [rbp + 0x4d0]
xor rcx, rsp
call fcn.1400ccc80
add rsp, 0x5f0
pop r12
pop rdi
pop rbp
ret