Function at 0x14003a8a0
Capabilities:
Authenticate hmac
Encode data using xor

Disassembly:
push rsi
push r14
push r15
sub rsp, 0x20
mov qword [rsp + 0x48], rbp
lea r14, [rcx + 0x80]
mov qword [rsp + 0x50], rdi
mov r15, rcx
mov edi, 0x40
mov qword [rsp + 0x58], r12
mov ecx, edi
mov rbp, r8
mov r12, rdx
call fcn.14003e794
mov ecx, edi
mov qword [r14], rax
lea rsi, [r15 + 0x88]
call fcn.14003e794
mov qword [rsi], rax
xorps xmm0, xmm0
mov rax, qword [r14]
xorps xmm1, xmm1
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov rax, qword [rsi]
movups xmmword [rax], xmm1
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax + 0x20], xmm1
movups xmmword [rax + 0x30], xmm1
cmp rbp, rdi
jbe 0x14003a985
mov rax, qword [r15 + 8]
lea rcx, [r15 + 8]
mov qword [rsp + 0x40], rbx
call qword [rax + reloc.WS2_32.dll_recv]
mov rax, qword [r15 + 8]
lea rcx, [r15 + 8]
mov r8, rbp
mov rdx, r12
call qword [rax + 0x20]
mov rax, qword [r15 + 8]
lea rcx, [r15 + 8]
call qword [rax + 0x18]
mov r8, qword [r14]
mov r10, rax
mov r9, qword [rsi]
mov rbx, qword [rsp + 0x40]
mov rcx, qword [rax]
cmp rcx, qword [rax + 8]
je 0x14003a9a1
nop dword [rax + rax]
mov edx, edi
dec edi
test edx, edx
jle 0x14003a9a1
movzx eax, byte [rcx]
mov byte [r8], al
inc r8
movzx eax, byte [rcx]
inc rcx
mov byte [r9], al
inc r9
cmp rcx, qword [r10 + 8]
jne 0x14003a960
jmp 0x14003a9a1
mov rcx, qword [r14]
mov r8, rbp
mov rdx, r12
call fcn.14009ade0
mov rcx, qword [rsi]
mov r8, rbp
mov rdx, r12
call fcn.14009ade0
mov rdx, qword [rsi]
mov rcx, qword [r14]
mov r12, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
lea r9, [rdx + 0x3f]
lea r8, [rcx + 0x3f]
cmp rdx, r8
ja 0x14003a9ca
xor eax, eax
cmp r9, rcx
jae 0x14003a9fa
cmp rdx, r14
ja 0x14003a9d6
xor eax, eax
cmp r9, r14
jae 0x14003a9fa
cmp rdx, rsi
ja 0x14003a9e2
xor eax, eax
cmp r9, rsi
jae 0x14003a9fa
cmp rcx, r14
ja 0x14003a9ee
xor eax, eax
cmp r8, r14
jae 0x14003a9fa
cmp rcx, rsi
ja 0x14003aa3a
xor eax, eax
cmp r8, rsi
jb 0x14003aa3a
cmp rax, 0x40
jae 0x14003aabe
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [r14]
xor byte [rcx + rax], 0x36
mov rcx, qword [rsi]
xor byte [rcx + rax], 0x5c
inc rax
cmp rax, 0x40
jl 0x14003aa10
mov rax, qword [r15]
mov rcx, r15
add rsp, 0x20
pop r15
pop r14
pop rsi
jmp qword [rax + reloc.WS2_32.dll_recv]
movdqu xmm0, xmmword [rcx]
movdqa xmm2, xmmword [str.6666666666666666_security.dll]
movdqa xmm3, xmmword [0x1400acd90]
movdqa xmm1, xmm2
xorps xmm1, xmm0
movdqu xmm0, xmmword [rdx]
movdqu xmmword [rcx], xmm1
xorps xmm0, xmm3
movdqa xmm1, xmm2
movdqu xmmword [rdx], xmm0
movdqu xmm0, xmmword [rcx + 0x10]
xorps xmm1, xmm0
movdqu xmm0, xmmword [rdx + 0x10]
movdqu xmmword [rcx + 0x10], xmm1
movdqa xmm1, xmm3
xorps xmm1, xmm0
movdqu xmm0, xmmword [rcx + 0x20]
movdqu xmmword [rdx + 0x10], xmm1
movdqa xmm1, xmm2
xorps xmm1, xmm0
movdqu xmm0, xmmword [rdx + 0x20]
movdqu xmmword [rcx + 0x20], xmm1
xorps xmm0, xmm3
movdqu xmmword [rdx + 0x20], xmm0
movdqu xmm0, xmmword [rcx + 0x30]
xorps xmm2, xmm0
movdqu xmm0, xmmword [rdx + 0x30]
movdqu xmmword [rcx + 0x30], xmm2
xorps xmm3, xmm0
movdqu xmmword [rdx + 0x30], xmm3
mov rax, qword [r15]
mov rcx, r15
add rsp, 0x20
pop r15
pop r14
pop rsi
jmp qword [rax + reloc.WS2_32.dll_recv]