Function at 0x140001bf0
Capabilities:
Hash data with md5

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x40]
sub rsp, 0x140
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x30], rax
xor eax, eax
mov byte [rsp + 0x46], 0
mov dword [rsp + 0x30], eax
lea r13, str.ABCDEFGHJLKMNPQRTUVWXYZ2346789
mov byte [rsp + 0x34], al
lea rdi, [0x1400066d0]
mov eax, dword [rcx + 0xc]
xor r12d, r12d
xorps xmm0, xmm0
mov esi, r12d
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x20], eax
movzx eax, byte [rcx + 0x10]
lea r15d, [r12 + 0x30]
mov byte [rsp + 0x24], al
lea r14d, [r12 + 0x57]
mov eax, dword [rcx + 6]
mov dword [rsp + 0x25], eax
movzx eax, byte [rcx + 0xa]
movsd xmm0, qword [rsp + 0x20]
mov byte [rsp + 0x29], al
mov eax, dword [rcx]
mov dword [rsp + 0x2a], eax
movzx eax, byte [rcx + 4]
mov byte [rsp + 0x2e], al
mov eax, dword [rcx + 0x12]
mov dword [rsp + 0x2f], eax
movzx eax, byte [rcx + 0x16]
mov byte [rsp + 0x33], al
mov eax, dword [rsp + 0x28]
mov dword [rsp + 0x40], eax
movzx eax, word [rsp + 0x2c]
mov word [rsp + 0x44], ax
movzx eax, byte [rsp + 0x20]
movsd qword [rsp + 0x38], xmm0
test al, al
je 0x140001cf1
mov ebx, r12d
nop dword [rax]
movsx edx, al
mov rcx, r13
call qword [sym.imp.VCRUNTIME140.dll_strchr]
mov rcx, rax
lea rbx, [rbx + 1]
sub ecx, r13d
mov eax, r15d
cmp ecx, 0xa
cmovge eax, r14d
inc esi
add al, cl
mov byte [rbx + rdi - 1], al
movzx eax, byte [rsp + rbx + 0x38]
test al, al
jne 0x140001cc0
movsxd rax, esi
cmp rax, 0x400
jae 0x140002099
mov byte [rax + rdi], r12b
cmp byte [0x1400066d0], 0x20
jne 0x140001d18
nop dword [rax]
inc rdi
cmp byte [rdi], 0x20
je 0x140001d10
mov rbx, rdi
nop dword [rax + rax]
movsx ecx, byte [rbx]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
mov ecx, eax
add eax, 0xffffffbf
cmp al, 0x19
jbe 0x140001d3a
sub cl, r15b
cmp cl, 9
ja 0x140001d3f
inc rbx
jmp 0x140001d20
dec rbx
mov r14d, 1
mov rsi, r12
mov r15d, r14d
cmp rbx, rdi
jb 0x140001d91
lea r13d, [r14 - 0x31]
movsx ecx, byte [rbx]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
mov edx, eax
mov ecx, 0xffffffc9
add eax, 0xffffffbf
cmp al, 0x19
movsx eax, dl
cmova ecx, r13d
dec rbx
add eax, ecx
cdqe
imul rax, r15
imul r15, r15, 0x1e
add rsi, rax
cmp rbx, rdi
jae 0x140001d57
lea r13, str.ABCDEFGHJLKMNPQRTUVWXYZ2346789
mov r8, rsi
test rsi, rsi
jns 0x140001da0
neg r8
mov byte [rbp - 0x50], 0x2d
mov ecx, r12d
mov r10, rsi
shr r10, 0x3f
mov rdx, r8
test rsi, rsi
sets cl
inc ecx
cmp r8, 0xa
jb 0x140001de2
movabs r9, 0xcccccccccccccccd
nop word [rax + rax]
mov rax, r9
inc ecx
mul rdx
shr rdx, 3
cmp rdx, 0xa
jae 0x140001dd0
movsxd rax, ecx
mov ebx, 0x30
dec ecx
mov r9d, ecx
sub r9d, r10d
mov byte [rbp + rax - 0x50], r12b
js 0x140001e4a
movsxd rax, ecx
movabs r10, 0x6666666666666667
lea rcx, [rbp - 0x50]
add rcx, rax
nop dword [rax]
mov rax, r10
lea rcx, [rcx - 1]
imul r8
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea eax, [rdx + rdx*4]
add eax, eax
sub r8d, eax
mov eax, 0x57
cmp r8d, 9
cmovle eax, ebx
add al, r8b
mov r8, rdx
sub r9d, r14d
mov byte [rcx + 1], al
jns 0x140001e10
lea rcx, [rbp - 0x50]
dec rcx
cmp byte [rcx + 1], r12b
lea rcx, [rcx + 1]
jne 0x140001e51
lea r8, [0x140006ad0]
xor edx, edx
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r8 + rdx]
mov byte [rcx + rdx], al
lea rdx, [rdx + 1]
test al, al
jne 0x140001e70
xorps xmm0, xmm0
mov qword [rsp + 0x60], r12
movups xmmword [rsp + 0x68], xmm0
mov dword [rsp + 0x50], 0x67452301
lea rax, [rbp - 0x50]
movups xmmword [rsp + 0x78], xmm0
mov dword [rsp + 0x54], 0xefcdab89
mov r8, 0xffffffffffffffff
movups xmmword [rbp - 0x78], xmm0
mov dword [rsp + 0x58], 0x98badcfe
movups xmmword [rbp - 0x68], xmm0
mov dword [rsp + 0x5c], 0x10325476
inc r8
cmp byte [rax + r8], r12b
jne 0x140001ec5
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x50]
call section..text
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x38]
call fcn.1400010d0
mov rcx, qword [rsp + 0x38]
xor eax, eax
mov qword [0x1400066b8], rax
xorps xmm0, xmm0
mov dword [0x1400066c0], eax
movabs r10, 0x8888888888888889
mov word [0x1400066c4], ax
movups xmmword [0x1400066a8], xmm0
cmp rcx, 0x1e
jb 0x140001f36
mov rdx, rcx
mov rax, r10
inc r14d
mul rdx
shr rdx, 4
cmp rdx, 0x1e
jae 0x140001f23
movsxd rax, r14d
lea r9, [0x1400066a8]
mov byte [rax + r9], r12b
lea eax, [r14 - 1]
movsxd r8, eax
test eax, eax
js 0x140001f79
nop
mov rax, r10
mul rcx
shr rdx, 4
imul eax, edx, 0x1e
sub ecx, eax
mov eax, 0x57
cmp ecx, 9
cmovle eax, ebx
add al, cl
mov rcx, rdx
mov byte [r8 + r9], al
sub r8, 1
jns 0x140001f50
cmp byte [0x1400066a8], r12b
lea rbx, [0x140006b10]
mov r8d, r12d
je 0x140001fd3
mov rdx, r12
nop
movsx rcx, byte [rdx + r9]
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x140001fa4
movzx ecx, byte [rcx + r13 - 0x30]
jmp 0x140001fc4
lea eax, [rcx - 0x41]
cmp al, 0x19
ja 0x140001fb3
movzx ecx, byte [rcx + r13 - 0x37]
jmp 0x140001fc4
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x140001fc2
movzx ecx, byte [rcx + r13 - 0x57]
jmp 0x140001fc4
xor cl, cl
mov byte [rdx + rbx], cl
inc r8d
inc rdx
cmp byte [rdx + r9], r12b
jne 0x140001f90
movsxd rax, r8d
cmp rax, 0x400
jae 0x140002099
mov byte [rax + rbx], r12b
mov rax, 0xffffffffffffffff
mov byte [0x140006b16], r12b
inc rax
cmp byte [rbx + rax], r12b
jne 0x140001ff4
cmp rax, 6
jae 0x140002040
nop dword [rax]
nop word [rax + rax]
lea r8, [rax + 1]
mov rdx, rbx
lea rcx, [0x140006b11]
call sub.VCRUNTIME140.dll_memmove
mov rax, 0xffffffffffffffff
mov byte [0x140006b10], 0x41
inc rax
cmp byte [rbx + rax], r12b
jne 0x140002031
cmp rax, 6
jb 0x140002010
lea r8, [rsp + 0x2e]
sub r8, rbx
nop dword [rax + rax]
movzx edx, byte [rbx]
movzx ecx, byte [rbx + r8]
sub edx, ecx
jne 0x140002063
inc rbx
test ecx, ecx
jne 0x140002050
test edx, edx
sete r12b
mov eax, r12d
mov rcx, qword [rbp + 0x30]
xor rcx, rsp
call fcn.140002390
lea r11, [rsp + 0x140]
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.1400024b8
int3