Function at 0x140002bd0
Capabilities:
Hash data using sha1

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x140]
sub rsp, 0x240
mov rax, qword [0x14007c070]
xor rax, rsp
mov qword [rbp + 0x130], rax
mov r8, rdx
mov rsi, rcx
mov qword [rbp + 0x40], rcx
lea r9, [rbp + 0xa5]
movabs r10, 0xcccccccccccccccd
nop dword [rax]
dec r9
mov rax, r10
mul r8
shr rdx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8, rdx
test rdx, rdx
jne 0x140002c20
xor r14d, r14d
mov qword [rbp + 0xf0], r14
mov qword [rbp + 0x100], r14
mov qword [rbp + 0x108], 0xf
mov byte [rbp + 0xf0], r14b
lea rax, [rbp + 0xa5]
cmp r9, rax
je 0x140002c93
lea r8, [rbp + 0xa5]
sub r8, r9
mov rdx, r9
lea rcx, [rbp + 0xf0]
call fcn.1400086d0
nop
mov r8, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x140002ca0
mov r8, qword [rsi]
mov r9, qword [rsi + 0x10]
lea rcx, [rbp + 0xf0]
call fcn.14000a6e0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x90], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xa0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp + 0x108]
cmp rdx, 0x10
jb 0x140002d15
inc rdx
mov rcx, qword [rbp + 0xf0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002d10
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003050
call fcn.14002e6d0
mov qword [rbp + 0x68], r14
mov qword [rbp + 0x78], r14
mov qword [rbp + 0x80], 0xf
mov byte [rbp + 0x68], 0
mov dword [rbp + 0x50], 0x67452301
mov dword [rbp + 0x54], 0xefcdab89
mov dword [rbp + 0x58], 0x98badcfe
mov dword [rbp + 0x5c], 0x10325476
mov dword [rbp + 0x60], 0xc3d2e1f0
xor r8d, r8d
lea rdx, [0x14006b99b]
lea rcx, [rbp + 0x68]
call fcn.1400086d0
mov qword [rbp + 0x88], r14
lea rdx, [rbp + 0x90]
lea rcx, [rsp + 0x50]
call fcn.140013df0
nop
nop dword [rax + rax]
mov r8d, 0x40
sub r8, qword [rbp + 0x78]
lea rdx, [rbp + 0xf0]
lea rcx, [rsp + 0x50]
call fcn.14001eb80
mov rdi, qword [rsp + 0x58]
mov rcx, qword [rbp + 0x78]
mov rdx, qword [rbp + 0x80]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x140002de6
lea rax, [rcx + rdi]
mov qword [rbp + 0x78], rax
lea rbx, [rbp + 0x68]
cmp rdx, 0x10
cmovae rbx, qword [rbp + 0x68]
add rbx, rcx
mov r8, rdi
lea rdx, [rbp + 0xf0]
mov rcx, rbx
call fcn.1400305c0
mov byte [rbx + rdi], 0
jmp 0x140002dfe
mov qword [rsp + 0x20], rdi
lea r9, [rbp + 0xf0]
mov rdx, rdi
lea rcx, [rbp + 0x68]
call fcn.140009600
cmp qword [rbp + 0x78], 0x40
jne 0x140002e42
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x68]
call fcn.14001e600
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x50]
call fcn.14001d400
mov qword [rbp + 0x78], r14
lea rax, [rbp + 0x68]
cmp qword [rbp + 0x80], 0x10
cmovae rax, qword [rbp + 0x68]
mov byte [rax], 0
jmp 0x140002d80
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rsp + rcx + 0x50], rax
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x90]
mov dword [rsp + rcx + 0x4c], edx
lea rcx, [rsp + 0x60]
call fcn.1400072a0
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x50], rax
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0x4c], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp - 0x20], rax
lea rcx, [rbp - 0x20]
call fcn.14002c510
nop
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x50]
call fcn.14001e8f0
xor bl, bl
mov r8, qword [rsp + 0x30]
movzx eax, bl
cmp byte [rax + r8], 0
jne 0x140002ed4
inc bl
cmp bl, 0x14
jb 0x140002ec3
xor dl, dl
cmp bl, 0x14
jae 0x140002ef9
movzx eax, bl
movzx ecx, byte [rax + r8]
test cl, 1
jne 0x140002ef9
nop dword [rax + rax]
inc dl
shr cl, 1
test cl, 1
je 0x140002ef0
shl bl, 3
add bl, dl
test r8, r8
je 0x140002f46
mov rdx, qword [rsp + 0x40]
sub rdx, r8
mov rax, r8
cmp rdx, 0x1000
jb 0x140002f30
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003056
mov rcx, r8
call fcn.14002e6d0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], r14
mov rdx, qword [rbp + 0x80]
cmp rdx, 0x10
jb 0x140002f84
inc rdx
mov rcx, qword [rbp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002f7f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000305c
call fcn.14002e6d0
mov qword [rbp + 0x78], r14
mov qword [rbp + 0x80], 0xf
mov byte [rbp + 0x68], 0
mov rdx, qword [rbp + 0xa8]
cmp rdx, 0x10
jb 0x140002fd5
inc rdx
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002fcf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003044
call fcn.14002e6d0
nop
mov rdx, qword [rsi + 0x18]
cmp rdx, 0x10
jb 0x14000300b
inc rdx
mov rcx, qword [rsi]
cmp rdx, 0x1000
jb 0x140003006
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14000304a
mov rcx, r8
call fcn.14002e6d0
mov qword [rsi + 0x10], r14
mov qword [rsi + 0x18], 0xf
mov byte [rsi], 0
movzx eax, bl
mov rcx, qword [rbp + 0x130]
xor rcx, rsp
call fcn.14002e6b0
lea r11, [rsp + 0x240]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
call fcn.1400367d0
nop
call fcn.1400367d0
nop
call fcn.1400367d0
nop
call fcn.1400367d0
nop
call fcn.1400367d0
int3