Function at 0x14000ae00
Capabilities:
Hash data with md5

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa0
mov rax, qword [0x1402390c0]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov r15d, 0
mov qword [rsp + 0x38], rcx
lea rbx, [r8 + 0x48]
mov dword [r11 - 0x58], 0x67452301
mov dword [r11 - 0x4c], 0x10325476
mov r14d, 0xefcdab89
mov dword [r11 - 0x54], r14d
mov r13d, 0x98badcfe
mov dword [r11 - 0x50], r13d
mov rdi, r8
mov qword [rsp + 0x20], r15
mov rsi, rdx
lea rbp, [r8*8]
mov r12d, r15d
and rbx, 0xffffffffffffffc0
je 0x14000aee0
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
ja 0x14000b2d5
cmp rbx, 0x1000
jb 0x14000aebf
lea rcx, [rbx + 0x27]
cmp rcx, rbx
jbe 0x14000b2c9
call fcn.140046470
test rax, rax
je 0x14000b2cf
lea r15, [rax + 0x27]
and r15, 0xffffffffffffffe0
mov qword [r15 - 8], rax
jmp 0x14000aeca
mov rcx, rbx
call fcn.140046470
mov r15, rax
mov r8, rbx
mov qword [rsp + 0x20], r15
xor edx, edx
lea r12, [r15 + rbx]
mov rcx, r15
call fcn.140072a30
mov r8, rdi
mov rdx, rsi
mov rcx, r15
call fcn.140072390
sub r12, r15
mov byte [r15 + rdi], 0x80
mov rcx, r12
mov qword [r15 + rbx - 8], rbp
shr rcx, 6
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rcx
test rcx, rcx
je 0x14000b25a
mov r12, r15
lea r10, [0x140000000]
mov r15d, 0x67452301
mov eax, 0x10325476
nop word [rax + rax]
movups xmm0, xmmword [r12]
xor r8d, r8d
mov ebp, 2
movups xmm1, xmmword [r12 + 0x10]
mov r9d, r14d
mov esi, r13d
movaps xmmword [rsp + 0x40], xmm0
mov r11d, r15d
movups xmm0, xmmword [r12 + 0x20]
mov edi, eax
xor r14d, r14d
movaps xmmword [rsp + 0x50], xmm1
mov r13d, ebp
movups xmm1, xmmword [r12 + 0x30]
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x70], xmm1
cmp r8d, 0x10
jge 0x14000af8d
mov eax, esi
mov edx, r9d
not edx
and eax, r9d
and edx, edi
or edx, eax
mov eax, r8d
jmp 0x14000afde
mov edx, edi
cmp r8d, 0x20
jge 0x14000afad
not edx
mov eax, edi
and eax, r9d
and edx, esi
or edx, eax
lea eax, [r8*4 + 1]
add eax, r8d
jmp 0x14000afd0
cmp r8d, 0x30
jge 0x14000afc5
xor edx, esi
lea eax, [r8*2 + 5]
xor edx, r9d
add eax, r8d
jmp 0x14000afd0
not edx
or edx, r9d
xor edx, esi
imul eax, r8d, 7
and eax, 0x8000000f
jge 0x14000afde
dec eax
or eax, 0xfffffff0
inc eax
mov eax, dword [rsp + rax*4 + 0x40]
mov ebx, r9d
add eax, dword [r14 + r10 + 0x76d30]
movzx ecx, byte [r14 + r10 + 0x76c30]
add eax, edx
add eax, r11d
rol eax, cl
add r9d, eax
lea eax, [r13 - 1]
cmp eax, 0x10
jge 0x14000b021
mov edx, r9d
lea r10d, [r8 + 2]
not edx
mov eax, ebx
and eax, r9d
and edx, esi
or edx, eax
lea eax, [r10 - 1]
jmp 0x14000b08d
lea eax, [rbp - 1]
mov edx, esi
cmp eax, 0x20
jge 0x14000b055
not edx
mov eax, esi
and eax, r9d
and edx, ebx
or edx, eax
lea eax, [r8*4 + 6]
add eax, r8d
and eax, 0x8000000f
jge 0x14000b04f
dec eax
or eax, 0xfffffff0
inc eax
lea r10d, [r8 + 2]
jmp 0x14000b08d
lea r10d, [r8 + 2]
lea eax, [r10 - 1]
cmp eax, 0x30
jge 0x14000b071
xor edx, ebx
lea eax, [r8 + 4]
xor edx, r9d
lea eax, [r8 + rax*2]
jmp 0x14000b07f
not edx
lea eax, [r8 + 1]
or edx, r9d
xor edx, ebx
imul eax, eax, 7
and eax, 0x8000000f
jge 0x14000b08d
dec eax
or eax, 0xfffffff0
inc eax
mov ecx, dword [rsp + rax*4 + 0x40]
mov r11d, r9d
lea rax, [0x140000000]
add ecx, dword [r14 + rax + 0x76d34]
lea eax, [rdx + rcx]
add eax, edi
lea rdi, [0x140000000]
movzx ecx, byte [r14 + rdi + 0x76c34]
rol eax, cl
add r9d, eax
cmp r10d, 0x10
jge 0x14000b0d7
mov eax, r11d
mov edx, r9d
not edx
and eax, r9d
and edx, ebx
or edx, eax
mov eax, r10d
jmp 0x14000b12e
mov edx, ebx
cmp r10d, 0x20
jge 0x14000b0f8
not edx
mov eax, ebx
and eax, r9d
and edx, r11d
or edx, eax
lea eax, [r8*4 + 0xb]
add eax, r8d
jmp 0x14000b120
cmp r10d, 0x30
jge 0x14000b111
xor edx, r11d
lea eax, [r8*2 + 0xb]
xor edx, r9d
add eax, r8d
jmp 0x14000b120
not edx
lea eax, [r8 + 2]
or edx, r9d
xor edx, r11d
imul eax, eax, 7
and eax, 0x8000000f
jge 0x14000b12e
dec eax
or eax, 0xfffffff0
inc eax
mov eax, dword [rsp + rax*4 + 0x40]
lea rcx, [0x140000000]
add eax, dword [r14 + rdi + 0x76d38]
mov edi, r9d
movzx ecx, byte [r14 + rcx + 0x76c38]
add eax, edx
add eax, esi
rol eax, cl
add r9d, eax
lea eax, [r10 + 1]
cmp eax, 0x10
jge 0x14000b170
mov edx, r9d
mov ecx, edi
not edx
and ecx, r9d
and edx, r11d
or edx, ecx
jmp 0x14000b1be
mov edx, r11d
cmp eax, 0x20
jge 0x14000b18e
not edx
mov eax, r11d
and eax, r9d
and edx, edi
or edx, eax
lea eax, [r8 + 4]
lea eax, [r8 + rax*4]
jmp 0x14000b1b0
cmp eax, 0x30
jge 0x14000b1a2
xor edx, edi
lea eax, [r8 + 7]
xor edx, r9d
lea eax, [r8 + rax*2]
jmp 0x14000b1b0
not edx
lea eax, [r8 + 3]
or edx, r9d
xor edx, edi
imul eax, eax, 7
and eax, 0x8000000f
jge 0x14000b1be
dec eax
or eax, 0xfffffff0
inc eax
mov eax, dword [rsp + rax*4 + 0x40]
lea r10, [0x140000000]
add eax, dword [r14 + r10 + 0x76d3c]
mov esi, r9d
movzx ecx, byte [r14 + r10 + 0x76c3c]
add edx, eax
add edx, ebx
add r8d, 4
rol edx, cl
add r14, 0x10
add r9d, edx
add r13d, 4
add ebp, 4
cmp r8d, 0x40
jl 0x14000af74
mov r14d, dword [rsp + 0x84]
add r15d, r11d
mov r13d, dword [rsp + 0x88]
add r14d, r9d
mov eax, dword [rsp + 0x8c]
add r13d, esi
add eax, edi
mov dword [rsp + 0x84], r14d
add r12, 0x40
mov dword [rsp + 0x88], r13d
sub qword [rsp + 0x28], 1
mov dword [rsp + 0x8c], eax
jne 0x14000af30
mov r12, qword [rsp + 0x30]
mov dword [rsp + 0x80], r15d
mov r15, qword [rsp + 0x20]
mov rbx, qword [rsp + 0x38]
movups xmm0, xmmword [rsp + 0x80]
movups xmmword [rbx], xmm0
test r15, r15
je 0x14000b29b
cmp r12, 0x1000
jb 0x14000b290
mov rcx, qword [r15 - 8]
add r12, 0x27
sub r15, rcx
lea rax, [r15 - 8]
cmp rax, 0x1f
ja 0x14000b2cf
mov r15, rcx
mov rdx, r12
mov rcx, r15
call fcn.1400464ac
mov rax, rbx
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.140046870
mov rbx, qword [rsp + 0xe0]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140006cb0
int3
call fcn.14004c4d4
int3
call fcn.140006d10
int3