Function at 0x140003de0
Capabilities:
Hash data with md5

Disassembly:
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], r9
push rbp
push rbx
push rdi
lea rbp, [rsp - 0xe0]
sub rsp, 0x1e0
mov rax, qword [0x1400bc0f8]
xor rax, rsp
mov qword [rbp + 0xd0], rax
xor ebx, ebx
lea rcx, [rbp + 0x108]
add rcx, 8
mov edi, ebx
mov rax, qword [rcx - 8]
test rax, rax
je 0x140003e4d
nop
mov qword [rbp + rdi*8 + 0x20], rax
mov rax, qword [rcx]
lea rcx, [rcx + 0x10]
mov qword [rbp + rdi*8 - 0x80], rax
inc rdi
mov rax, qword [rcx - 8]
test rax, rax
jne 0x140003e30
mov dword [rsp + 0x20], 0x67452301
mov dword [rsp + 0x24], 0xefcdab89
mov dword [rsp + 0x28], 0x98badcfe
mov qword [rsp + 0x2c], 0x10325476
mov dword [rsp + 0x34], ebx
test rdi, rdi
je 0x140003e9c
nop word [rax + rax]
mov r8, qword [rbp + rbx*8 - 0x80]
lea rcx, [rsp + 0x20]
mov rdx, qword [rbp + rbx*8 + 0x20]
call fcn.140004be0
inc rbx
cmp rbx, rdi
jb 0x140003e80
lea rdx, [rsp + 0x20]
lea rcx, [rbp + 0xc0]
call fcn.1400040e0
mov rdx, qword [str._m_b_]
mov r8, qword [rbp + 0x100]
movzx ecx, byte [rbp + 0xc0]
mov eax, ecx
and ecx, 0xf
shr rax, 4
movzx eax, byte [rax + rdx]
mov byte [r8], al
movzx eax, byte [rcx + rdx]
mov byte [r8 + 1], al
movzx ecx, byte [rbp + 0xc1]
mov eax, ecx
and ecx, 0xf
shr rax, 4
movzx eax, byte [rax + rdx]
mov byte [r8 + 2], al
movzx eax, byte [rcx + rdx]
mov byte [r8 + 3], al
movzx ecx, byte [rbp + 0xc2]
mov eax, ecx
and ecx, 0xf
shr rax, 4
movzx eax, byte [rax + rdx]
mov byte [r8 + 4], al
movzx eax, byte [rcx + rdx]
mov byte [r8 + 5], al
movzx ecx, byte [rbp + 0xc3]
mov eax, ecx
and ecx, 0xf
shr rax, 4
movzx eax, byte [rax + rdx]
mov byte [r8 + 6], al
movzx eax, byte [rcx + rdx]
movzx ecx, byte [rbp + 0xc4]
mov byte [r8 + 7], al
mov eax, ecx
shr rax, 4
and ecx, 0xf
movzx eax, byte [rax + rdx]
mov byte [r8 + 8], al
movzx eax, byte [rcx + rdx]
movzx ecx, byte [rbp + 0xc5]
mov byte [r8 + 9], al
mov eax, ecx
shr rax, 4
and ecx, 0xf
movzx eax, byte [rax + rdx]
mov byte [r8 + 0xa], al
movzx eax, byte [rcx + rdx]
movzx ecx, byte [rbp + 0xc6]
mov byte [r8 + 0xb], al
mov eax, ecx
shr rax, 4
and ecx, 0xf
movzx eax, byte [rax + rdx]
mov byte [r8 + 0xc], al
movzx eax, byte [rcx + rdx]
movzx ecx, byte [rbp + 0xc7]
mov byte [r8 + 0xd], al
mov eax, ecx
shr rax, 4
and ecx, 0xf
movzx eax, byte [rax + rdx]
mov byte [r8 + 0xe], al
movzx eax, byte [rcx + rdx]
movzx ecx, byte [rbp + 0xc8]
mov byte [r8 + 0xf], al
mov eax, ecx
shr rax, 4
and ecx, 0xf
movzx eax, byte [rax + rdx]
mov byte [r8 + 0x10], al
movzx eax, byte [rcx + rdx]
movzx ecx, byte [rbp + 0xc9]
mov byte [r8 + 0x11], al
mov eax, ecx
shr rax, 4
movzx eax, byte [rax + rdx]
mov byte [r8 + 0x12], al
and ecx, 0xf
movzx eax, byte [rcx + rdx]
mov byte [r8 + 0x13], al
movzx ecx, byte [rbp + 0xca]
mov eax, ecx
and ecx, 0xf
shr rax, 4
movzx eax, byte [rax + rdx]
mov byte [r8 + 0x14], al
movzx eax, byte [rcx + rdx]
movzx ecx, byte [rbp + 0xcb]
mov byte [r8 + 0x15], al
mov eax, ecx
shr rax, 4
and ecx, 0xf
movzx eax, byte [rax + rdx]
mov byte [r8 + 0x16], al
movzx eax, byte [rcx + rdx]
movzx ecx, byte [rbp + 0xcc]
mov byte [r8 + 0x17], al
mov eax, ecx
shr rax, 4
and ecx, 0xf
movzx eax, byte [rax + rdx]
mov byte [r8 + 0x18], al
movzx eax, byte [rcx + rdx]
movzx ecx, byte [rbp + 0xcd]
mov byte [r8 + 0x19], al
mov eax, ecx
shr rax, 4
and ecx, 0xf
movzx eax, byte [rax + rdx]
mov byte [r8 + 0x1a], al
movzx eax, byte [rcx + rdx]
movzx ecx, byte [rbp + 0xce]
mov byte [r8 + 0x1b], al
mov eax, ecx
shr rax, 4
and ecx, 0xf
movzx eax, byte [rax + rdx]
mov byte [r8 + 0x1c], al
movzx eax, byte [rcx + rdx]
movzx ecx, byte [rbp + 0xcf]
mov byte [r8 + 0x1d], al
mov eax, ecx
shr rax, 4
and ecx, 0xf
movzx eax, byte [rax + rdx]
mov byte [r8 + 0x1e], al
movzx eax, byte [rcx + rdx]
mov byte [r8 + 0x1f], al
mov byte [r8 + 0x20], 0
mov rcx, qword [rbp + 0xd0]
xor rcx, rsp
call fcn.14003fb10
add rsp, 0x1e0
pop rdi
pop rbx
pop rbp
ret