Function at 0x1401334f0
Capabilities:
Authenticate hmac
Encode data using xor
Hash data using sha384
Hash data using sha512
Hash data with md5

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov ebp, r9d
mov r10, r8
mov rbx, rcx
test rcx, rcx
je 0x140133a47
test r8, r8
jne 0x14013352c
test r9d, r9d
jne 0x140133a47
lea eax, [rdx - 3]
cmp eax, 5
jbe 0x140133540
lea eax, [rdx - 0xa]
cmp eax, 4
ja 0x140133a47
mov byte [rcx + 0x229], 0
mov byte [rcx + 0x228], dl
call fcn.1401332f0
mov esi, eax
test eax, eax
jne 0x140133a4c
lea rdi, [rcx + 0xe0]
xor r15d, r15d
lea r12, [rcx + 0x160]
movzx ecx, byte [rcx + 0x228]
sub ecx, 3
je 0x140133842
sub ecx, 1
je 0x1401337fb
sub ecx, 2
je 0x1401337ab
sub ecx, 1
je 0x1401336c0
cmp ecx, 1
jne 0x140133a47
mov r13d, pe_nt_image_headers64
cmp ebp, r13d
ja 0x1401335c8
test r10, r10
je 0x140133930
mov r8, rbp
mov rdx, r10
mov rcx, rdi
call fcn.14016ee10
jmp 0x140133930
test r10, r10
je 0x1401336b4
mov r8d, ebp
mov rdx, r10
mov rcx, rbx
call fcn.140132f20
mov esi, eax
test eax, eax
jne 0x140133928
test rdi, rdi
je 0x1401336b4
mov rcx, rbx
call fcn.1401330c0
mov esi, eax
test eax, eax
jne 0x140133a43
movups xmm0, xmmword [rbx]
movabs rax, 0x6a09e667f3bcc908
mov esi, r15d
mov r14d, 0x40
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rdi + 0x10], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rdi + 0x20], xmm0
movups xmm1, xmmword [rbx + 0x30]
movups xmmword [rdi + 0x30], xmm1
mov qword [rbx], rax
movabs rax, 0xbb67ae8584caa73b
mov qword [rbx + 8], rax
movabs rax, 0x3c6ef372fe94f82b
mov qword [rbx + 0x10], rax
movabs rax, 0xa54ff53a5f1d36f1
mov qword [rbx + 0x18], rax
movabs rax, 0x510e527fade682d1
mov qword [rbx + 0x20], rax
movabs rax, 0x9b05688c2b3e6c1f
mov qword [rbx + 0x28], rax
movabs rax, 0x1f83d9abfb41bd6b
mov qword [rbx + 0x30], rax
movabs rax, 0x5be0cd19137e2179
mov qword [rbx + 0x38], rax
mov dword [rbx + 0xc0], r15d
mov qword [rbx + 0xc8], r15
mov qword [rbx + 0xd0], r15
jmp 0x140133938
mov esi, 0xffffff53
mov eax, esi
jmp 0x140133a4c
mov r13d, pe_nt_image_headers64
cmp ebp, r13d
jbe 0x1401335ac
test r10, r10
je 0x1401336b4
mov r8d, ebp
mov rdx, r10
mov rcx, rbx
call fcn.140132f20
mov esi, eax
test eax, eax
jne 0x140133928
test rdi, rdi
je 0x1401336b4
mov rcx, rbx
call fcn.1401330c0
mov esi, eax
test eax, eax
jne 0x140133a43
movups xmm0, xmmword [rbx]
movabs rax, 0xcbbb9d5dc1059ed8
mov esi, r15d
mov r14d, 0x30
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rdi + 0x10], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rdi + 0x20], xmm0
mov qword [rbx], rax
movabs rax, 0x629a292a367cd507
mov qword [rbx + 8], rax
movabs rax, 0x9159015a3070dd17
mov qword [rbx + 0x10], rax
movabs rax, 0x152fecd8f70e5939
mov qword [rbx + 0x18], rax
movabs rax, 0x67332667ffc00b31
mov qword [rbx + 0x20], rax
movabs rax, 0x8eb44a8768581511
mov qword [rbx + 0x28], rax
movabs rax, 0xdb0c2e0d64f98fa7
mov qword [rbx + 0x30], rax
movabs rax, 0x47b5481dbefa4fa4
mov qword [rbx + 0x38], rax
mov dword [rbx + 0xc0], r15d
mov qword [rbx + 0xc8], r15
mov qword [rbx + 0xd0], r15
jmp 0x140133938
mov r13d, 0x40
cmp ebp, r13d
jbe 0x1401335ac
test r10, r10
je 0x1401336b4
mov r8d, ebp
mov rdx, r10
mov rcx, rbx
call fcn.1401347c0
mov esi, eax
test eax, eax
jne 0x140133928
mov rdx, rdi
mov rcx, rbx
call fcn.140135160
mov esi, eax
test eax, eax
jne 0x140133928
mov r14d, 0x20
jmp 0x140133938
mov r13d, 0x40
cmp ebp, r13d
jbe 0x1401335ac
mov r8d, ebp
mov rdx, r10
mov rcx, rbx
call fcn.1401301e0
mov esi, eax
test eax, eax
jne 0x140133928
mov rdx, rdi
mov rcx, rbx
call fcn.140130680
mov esi, eax
test eax, eax
jne 0x140133928
mov r14d, 0x14
jmp 0x140133938
mov r14d, 0x40
mov r13d, r14d
cmp ebp, r14d
jbe 0x1401335ac
mov r8d, ebp
mov rdx, r10
mov rcx, rbx
call fcn.140138870
mov esi, eax
test eax, eax
jne 0x140133928
test rdi, rdi
je 0x1401336b4
mov eax, dword [rbx]
lea rsi, [rbx + 0xc]
mov byte [rax + rsi], pe_nt_image_headers64
mov ecx, dword [rbx]
inc ecx
mov dword [rbx], ecx
cmp ecx, 0x38
jbe 0x1401338ae
mov r8d, r14d
xor edx, edx
sub r8d, ecx
add rcx, rsi
call fcn.14016f4b0
mov rdx, rsi
mov dword [rbx], r14d
mov rcx, rbx
call fcn.140138080
mov ecx, r15d
mov dword [rbx], r15d
mov r8d, 0x38
xor edx, edx
sub r8d, ecx
add rcx, rsi
call fcn.14016f4b0
mov r8d, dword [rbx + 4]
mov rdx, rsi
mov eax, dword [rbx + 8]
mov ecx, r8d
shr ecx, 0x1d
lea ecx, [rcx + rax*8]
mov dword [rbx + 8], ecx
lea eax, [r8*8]
mov dword [rbx + 4], eax
mov rcx, rbx
mov dword [rsi + 0x38], eax
mov eax, dword [rbx + 8]
mov dword [rsi + 0x3c], eax
call fcn.140138080
movups xmm0, xmmword [rbx + 0x4c]
mov esi, r15d
mov r14d, reloc.WS2_32.dll_recv
movups xmmword [rdi], xmm0
mov dword [rbx + 0x4c], 0x67452301
mov dword [rbx + 0x50], 0xefcdab89
mov dword [rbx + 0x54], 0x98badcfe
mov dword [rbx + 0x58], 0x10325476
mov qword [rbx], r15
mov dword [rbx + 8], r15d
jmp 0x140133938
test esi, esi
jne 0x140133a43
mov r14d, ebp
cmp ebp, r13d
jae 0x14013394b
mov r8d, r13d
mov ecx, r14d
sub r8d, r14d
add rcx, rdi
xor edx, edx
call fcn.14016f4b0
lea eax, [r13 - 1]
lea rdx, [rax + rdi]
add rax, r12
cmp rdi, rax
ja 0x14013398d
cmp rdx, r12
jb 0x14013398d
cmp r15d, r13d
jae 0x140133a43
mov ecx, r13d
nop dword [rax]
movzx eax, byte [rdi]
lea rdi, [rdi + 1]
xor al, 0x5c
mov byte [rdi + 0x7f], al
xor byte [rdi - 1], 0x36
sub rcx, 1
jne 0x140133970
mov eax, esi
jmp 0x140133a4c
movdqa xmm3, xmmword [0x1402deb40]
mov edx, 0x20
movdqa xmm4, xmmword [str.6666666666666666]
nop dword [rax]
nop word [rax + rax]
mov eax, r15d
movdqa xmm0, xmm3
movdqa xmm1, xmm4
add r15d, 0x40
movdqu xmm2, xmmword [rdi + rax]
xorps xmm0, xmm2
xorps xmm1, xmm2
movdqu xmmword [rdi + rax], xmm1
movdqu xmmword [r12 + rax], xmm0
lea eax, [rdx - 0x10]
movdqa xmm0, xmm3
movdqa xmm1, xmm4
movdqu xmm2, xmmword [rdi + rax]
xorps xmm0, xmm2
xorps xmm1, xmm2
movdqu xmmword [rdi + rax], xmm1
movdqu xmmword [r12 + rax], xmm0
mov eax, edx
movdqa xmm0, xmm3
movdqa xmm1, xmm4
movdqu xmm2, xmmword [rdi + rax]
xorps xmm0, xmm2
xorps xmm1, xmm2
movdqu xmmword [rdi + rax], xmm1
movdqu xmmword [r12 + rax], xmm0
lea eax, [rdx + 0x10]
add edx, 0x40
movdqa xmm0, xmm3
movdqa xmm1, xmm4
movdqu xmm2, xmmword [rdi + rax]
xorps xmm0, xmm2
xorps xmm1, xmm2
movdqu xmmword [r12 + rax], xmm0
movdqu xmmword [rdi + rax], xmm1
cmp r15d, r13d
jb 0x1401339b0
mov eax, esi
jmp 0x140133a4c
mov eax, 0xffffff53
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret