Function at 0x140017880
Capabilities:
Hash data using sha256
Hash data with md5

Disassembly:
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x24f0]
mov eax, 0x25f0
call fcn.1400599a0
sub rsp, rax
mov qword [rbp + 0xc0], 0xfffffffffffffffe
mov qword [rsp + 0x2620], rbx
mov qword [rsp + 0x2628], rsi
mov qword [rsp + 0x2630], rdi
mov r15, rcx
lea r13, [0x1400acbf0]
cmp qword [0x1400acc00], 0
jne 0x1400181a5
xor edx, edx
mov r8d, 0x1000
lea rcx, [rbp + 0x4f0]
call fcn.14005ac40
xor edx, edx
mov r8d, 0x1000
lea rcx, [rbp + 0x14f0]
call fcn.14005ac40
lea rdx, [0x1400a1a50]
lea rcx, [rbp - 0x20]
call fcn.140018920
nop
lea rdx, [0x1400a1a88]
lea rcx, [rbp + 0xa0]
call fcn.14002f940
nop
lea rcx, [rbp + 0x80]
call fcn.140017100
nop
lea rcx, [rbp + 0x60]
call fcn.14002bcc0
nop
lea rcx, [rbp + 0x40]
call fcn.14002b290
nop
lea rcx, [rbp + 0x20]
call fcn.140016b90
nop
lea rcx, [rbp]
call fcn.14002b830
nop
lea r8, [rbp + 0xa0]
cmp qword [rbp + 0xb8], 8
cmovae r8, qword [rbp + 0xa0]
mov edx, 0x800
lea rcx, [rbp + 0x4f0]
call fcn.140061ad8
lea r8, [rbp + 0x80]
cmp qword [rbp + 0x98], 8
cmovae r8, qword [rbp + 0x80]
mov edx, 0x800
lea rcx, [rbp + 0x4f0]
call fcn.140061b40
lea r8, [rbp + 0x60]
cmp qword [rbp + 0x78], 8
cmovae r8, qword [rbp + 0x60]
mov edx, 0x800
lea rcx, [rbp + 0x4f0]
call fcn.140061b40
lea r8, [rbp + 0x40]
cmp qword [rbp + 0x58], 8
cmovae r8, qword [rbp + 0x40]
mov edx, 0x800
lea rcx, [rbp + 0x4f0]
call fcn.140061b40
lea r8, [rbp - 0x20]
cmp qword [rbp - 8], 8
cmovae r8, qword [rbp - 0x20]
mov edx, 0x800
lea rcx, [rbp + 0x4f0]
call fcn.140061b40
lea r8, [rbp]
cmp qword [rbp + 0x18], 8
cmovae r8, qword [rbp]
mov edx, 0x800
lea rcx, [rbp + 0x14f0]
call fcn.140061b40
lea r8, [rbp + 0x20]
cmp qword [rbp + 0x38], 8
cmovae r8, qword [rbp + 0x20]
mov edx, 0x800
lea rcx, [rbp + 0x14f0]
call fcn.140061b40
lea r8, [rbp - 0x20]
cmp qword [rbp - 8], 8
cmovae r8, qword [rbp - 0x20]
mov edx, 0x800
lea rcx, [rbp + 0x14f0]
call fcn.140061b40
mov edx, 0x800
lea rcx, [rbp + 0x4f0]
call fcn.1400612b4
xor r12d, r12d
mov qword [rsp + 0x70], r12
mov ecx, r12d
mov qword [rsp + 0x78], rcx
mov dword [rbp - 0x40], 0x6a09e667
mov dword [rbp - 0x3c], 0xbb67ae85
mov dword [rbp - 0x38], 0x3c6ef372
mov dword [rbp - 0x34], 0xa54ff53a
mov dword [rbp - 0x30], 0x510e527f
mov dword [rbp - 0x2c], 0x9b05688c
mov dword [rbp - 0x28], 0x1f83d9ab
mov dword [rbp - 0x24], 0x5be0cd19
lea rdi, [rax + rax]
lea rbx, [rbp + 0x4f0]
test rdi, rdi
je 0x140017b2e
cmp rdi, 0x40
jb 0x140017b05
mov rsi, rdi
shr rsi, 6
imul rax, rsi, 0xffffffffffffffc0
add rdi, rax
mov rdx, rbx
lea rcx, [rsp + 0x70]
call fcn.1400113a0
add rbx, 0x40
add qword [rsp + 0x70], 0x40
sub rsi, 1
jne 0x140017ae3
mov rcx, qword [rsp + 0x78]
test rdi, rdi
je 0x140017b2e
nop word [rax + rax]
movzx eax, byte [rbx]
mov byte [rbp + rcx - 0x80], al
mov rcx, qword [rsp + 0x78]
inc rcx
mov qword [rsp + 0x78], rcx
lea rbx, [rbx + 1]
sub rdi, 1
jne 0x140017b10
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x70]
call fcn.140010ec0
nop
mov edx, 0x800
lea rcx, [rbp + 0x14f0]
call fcn.1400612b4
mov qword [rsp + 0x70], r12
mov rcx, r12
mov qword [rsp + 0x78], rcx
mov dword [rbp - 0x40], 0x6a09e667
mov dword [rbp - 0x3c], 0xbb67ae85
mov dword [rbp - 0x38], 0x3c6ef372
mov dword [rbp - 0x34], 0xa54ff53a
mov dword [rbp - 0x30], 0x510e527f
mov dword [rbp - 0x2c], 0x9b05688c
mov dword [rbp - 0x28], 0x1f83d9ab
mov dword [rbp - 0x24], 0x5be0cd19
lea rdi, [rax + rax]
lea rbx, [rbp + 0x14f0]
test rdi, rdi
je 0x140017c0e
cmp rdi, 0x40
jb 0x140017be2
mov rsi, rdi
shr rsi, 6
imul rax, rsi, 0xffffffffffffffc0
add rdi, rax
nop dword [rax + rax]
mov rdx, rbx
lea rcx, [rsp + 0x70]
call fcn.1400113a0
add rbx, 0x40
add qword [rsp + 0x70], 0x40
sub rsi, 1
jne 0x140017bc0
mov rcx, qword [rsp + 0x78]
test rdi, rdi
je 0x140017c0e
nop word [rax + rax]
movzx eax, byte [rbx]
mov byte [rbp + rcx - 0x80], al
mov rcx, qword [rsp + 0x78]
inc rcx
mov qword [rsp + 0x78], rcx
lea rbx, [rbx + 1]
sub rdi, 1
jne 0x140017bf0
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x70]
call fcn.140010ec0
nop
lea r9, [rsp + 0x30]
mov rdi, qword [rsp + 0x30]
mov r14, qword [rsp + 0x48]
cmp r14, 0x10
cmovae r9, rdi
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov rax, rdx
sub rax, rcx
mov rsi, qword [rsp + 0x40]
cmp rsi, rax
ja 0x140017c7e
lea rax, [rcx + rsi]
mov qword [rsp + 0x60], rax
lea rbx, [rsp + 0x50]
cmp rdx, 0x10
cmovae rbx, qword [rsp + 0x50]
add rbx, rcx
mov r8, rsi
mov rdx, r9
mov rcx, rbx
call fcn.14005a7e0
mov byte [rbx + rsi], 0
jmp 0x140017c9a
mov qword [rsp + 0x20], rsi
mov rdx, rsi
lea rcx, [rsp + 0x50]
call fcn.14002eeb0
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x30]
cmp r14, 0x10
jb 0x140017cd1
lea rdx, [r14 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x140017cc9
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400181da
mov rcx, rdi
call fcn.140058d50
xor edx, edx
mov r8d, 0x400
lea rcx, [rbp + 0xf0]
call fcn.14005ac40
lea rdx, [0x14009f31c]
lea rcx, [rsp + 0x30]
call fcn.1400185c0
lea r9, [rsp + 0x50]
cmp qword [rsp + 0x68], 0x10
cmovae r9, qword [rsp + 0x50]
cmp qword [rax + 0x18], 0x10
jb 0x140017d11
mov rax, qword [rax]
mov r8, rax
mov edx, 0x400
lea rcx, [rbp + 0xf0]
call fcn.14002eb60
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x140017d62
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017d5d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400181e0
call fcn.140058d50
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], r12
mov dword [rbp - 0x40], 0x67452301
mov dword [rbp - 0x3c], 0xefcdab89
mov dword [rbp - 0x38], 0x98badcfe
mov dword [rbp - 0x34], 0x10325476
lea rdx, [rbp + 0xf0]
lea rcx, [rsp + 0x70]
call fcn.1400104c0
lea rdx, [rbp + 0xc8]
lea rcx, [rsp + 0x70]
call fcn.140010000
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x140017db7
mov rdx, qword [rax]
mov rax, r13
test rdx, rdx
jne 0x140017ddd
mov qword [0x1400acc00], r12
cmp qword [0x1400acc08], 0x10
cmovae rax, qword [0x1400acbf0]
mov byte [rax], dl
jmp 0x140017ed3
mov r9, qword [0x1400acc08]
mov r10, qword [0x1400acbf0]
cmp r9, 0x10
cmovae rax, r10
cmp rdx, rax
jb 0x140017eb9
mov rax, r13
cmp r9, 0x10
cmovae rax, r10
mov rcx, qword [0x1400acc00]
add rax, rcx
cmp rdx, rax
ja 0x140017eb9
mov rax, r13
cmp r9, 0x10
cmovae rax, r10
sub rdx, rax
movdqa xmm0, xmmword [0x1400a1ab0]
movdqu xmmword [rsp + 0x40], xmm0
mov byte [rsp + 0x30], 0
cmp rcx, rdx
jb 0x1400181e6
sub rcx, rdx
mov r8, 0xffffffffffffffff
cmp rcx, r8
cmovb r8, rcx
mov rax, r13
cmp r9, 0x10
cmovae rax, r10
add rdx, rax
lea rcx, [rsp + 0x30]
call fcn.14002c9f0
lea rdx, [rsp + 0x30]
mov rcx, r13
call fcn.14002c8e0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x140017ed3
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017eb2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400181ec
call fcn.140058d50
jmp 0x140017ed3
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x140017ec0
mov rcx, r13
call fcn.14002c9f0
nop
mov rdx, qword [rbp + 0xe0]
cmp rdx, 0x10
jb 0x140017f15
inc rdx
mov rcx, qword [rbp + 0xc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017f0f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400181f2
call fcn.140058d50
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x140017f52
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017f4d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400181f8
call fcn.140058d50
movdqa xmm0, xmmword [0x1400a1ab0]
movdqu xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x50], 0
mov rdx, qword [rbp + 0x18]
cmp rdx, 8
jb 0x140017fa5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017fa0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400181fe
call fcn.140058d50
movdqa xmm0, xmmword [0x1400a1aa0]
movdqu xmmword [rbp + 0x10], xmm0
mov word [rbp], r12w
mov rdx, qword [rbp + 0x38]
cmp rdx, 8
jb 0x140017ff7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017ff2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018204
call fcn.140058d50
movdqa xmm0, xmmword [0x1400a1aa0]
movdqu xmmword [rbp + 0x30], xmm0
mov word [rbp + 0x20], r12w
mov rdx, qword [rbp + 0x58]
cmp rdx, 8
jb 0x140018049
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018044
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001820a
call fcn.140058d50
movdqa xmm0, xmmword [0x1400a1aa0]
movdqu xmmword [rbp + 0x50], xmm0
mov word [rbp + 0x40], r12w
mov rdx, qword [rbp + 0x78]
cmp rdx, 8
jb 0x14001809b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018096
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018210
call fcn.140058d50
movdqa xmm0, xmmword [0x1400a1aa0]
movdqu xmmword [rbp + 0x70], xmm0
mov word [rbp + 0x60], r12w
mov rdx, qword [rbp + 0x98]
cmp rdx, 8
jb 0x1400180f3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400180ee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018216
call fcn.140058d50
movdqa xmm0, xmmword [0x1400a1aa0]
movdqu xmmword [rbp + 0x90], xmm0
mov word [rbp + 0x80], r12w
mov rdx, qword [rbp + 0xb8]
cmp rdx, 8
jb 0x140018151
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001814c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001821c
call fcn.140058d50
movdqa xmm0, xmmword [0x1400a1aa0]
movdqu xmmword [rbp + 0xb0], xmm0
mov word [rbp + 0xa0], r12w
mov rdx, qword [rbp - 8]
cmp rdx, 8
jb 0x1400181a5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400181a0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400181d4
call fcn.140058d50
mov rdx, r13
mov rcx, r15
call fcn.14002c800
mov rax, r15
lea r11, [rsp + 0x25f0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14005d4d4
nop
call fcn.14005d4d4
nop
call fcn.14005d4d4
nop
call fcn.14002c7e0
int3
call fcn.14005d4d4
nop
call fcn.14005d4d4
nop
call fcn.14005d4d4
nop
call fcn.14005d4d4
nop
call fcn.14005d4d4
nop
call fcn.14005d4d4
nop
call fcn.14005d4d4
nop
call fcn.14005d4d4
nop
call fcn.14005d4d4
int3