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

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x128
mov rdi, r9
mov r14, r8
mov rsi, rcx
mov rax, qword [0x14039ce38]
xor rax, rsp
mov qword [rsp + 0x120], rax
test r9, r9
mov rax, qword [rcx]
cmove rdi, rax
test rdx, rdx
jne 0x14006e1a3
cmp rdi, rax
je 0x14006e450
mov ebx, dword [rdi + 0x28]
cmp rbx, r14
jae 0x14006e218
mov r15, rdx
cmp qword [rsi + 8], rdi
je 0x14006e1d9
mov ecx, dword [rdi + 0x2c]
call fcn.14008be00
test rax, rax
je 0x14006e464
mov r12, rax
mov rcx, qword [rsi + 0x10]
call fcn.14008be60
mov qword [rsi + 0x10], r12
mov qword [rsi + 8], rdi
lea r12, [rsi + 8]
mov rcx, r12
call qword [rdi + reloc.WS2_32.dll_recv]
mov rax, qword [rsi + 8]
mov rcx, r12
mov rdx, r15
mov r8, r14
call qword [rax + 0x18]
mov rax, qword [rsi + 8]
lea rdx, [rsp + 0x20]
mov rcx, r12
call qword [rax + 0x20]
mov rax, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
mov r14d, dword [rax + 4]
mov edx, dword [rax + 0x2c]
call fcn.14008bea0
jmp 0x14006e22a
test r14, r14
je 0x14006e22a
lea rcx, [rsp + 0x20]
mov r8, r14
call fcn.14025bfc0
cmp ebx, r14d
je 0x14006e247
mov eax, r14d
mov r8, rbx
sub r8, rax
lea rcx, [rsp + rax]
add rcx, 0x20
xor edx, edx
call fcn.14025c7b0
test rbx, rbx
je 0x14006e307
cmp ebx, 8
jae 0x14006e25c
xor eax, eax
jmp 0x14006e2f0
cmp ebx, 0x20
jae 0x14006e265
xor eax, eax
jmp 0x14006e2b3
mov eax, ebx
and eax, 0xffffffe0
xor ecx, ecx
movaps xmm0, xmmword [str.6666666666666666jjjjjjjjjjjjjjjj__f]
nop word cs:[rax + rax]
movaps xmm1, xmmword [rsp + rcx + 0x20]
xorps xmm1, xmm0
movaps xmm2, xmmword [rsp + rcx + 0x30]
xorps xmm2, xmm0
movaps xmmword [rsp + rcx + 0xa0], xmm1
movaps xmmword [rsp + rcx + 0xb0], xmm2
add rcx, 0x20
cmp rax, rcx
jne 0x14006e280
cmp rax, rbx
je 0x14006e307
test bl, 0x18
je 0x14006e2f0
mov rcx, rax
mov eax, ebx
and eax, 0xfffffff8
movabs rdx, 0x3636363636363636
nop word cs:[rax + rax]
mov r8, qword [rsp + rcx + 0x20]
xor r8, rdx
mov qword [rsp + rcx + 0xa0], r8
add rcx, 8
cmp rax, rcx
jne 0x14006e2d0
cmp rax, rbx
je 0x14006e307
nop
movzx ecx, byte [rsp + rax + 0x20]
xor cl, 0x36
mov byte [rsp + rax + 0xa0], cl
inc rax
cmp rbx, rax
jne 0x14006e2f0
cmp qword [rsi + 0x28], rdi
je 0x14006e332
mov ecx, dword [rdi + 0x2c]
call fcn.14008be00
test rax, rax
je 0x14006e464
mov r14, rax
mov rcx, qword [rsi + 0x30]
call fcn.14008be60
mov qword [rsi + 0x30], r14
mov qword [rsi + 0x28], rdi
lea r14, [rsi + 0x28]
mov rcx, r14
call qword [rdi + reloc.WS2_32.dll_recv]
mov rax, qword [r14]
lea rdx, [rsp + 0xa0]
mov rcx, r14
mov r8, rbx
call qword [rax + 0x18]
test rbx, rbx
je 0x14006e407
cmp ebx, 8
jae 0x14006e365
xor eax, eax
jmp 0x14006e3f0
cmp ebx, 0x20
jae 0x14006e36e
xor eax, eax
jmp 0x14006e3b3
mov eax, ebx
and eax, 0xffffffe0
xor ecx, ecx
movaps xmm0, xmmword [0x1402a1870]
nop dword [rax]
movaps xmm1, xmmword [rsp + rcx + 0x20]
xorps xmm1, xmm0
movaps xmm2, xmmword [rsp + rcx + 0x30]
xorps xmm2, xmm0
movaps xmmword [rsp + rcx + 0xa0], xmm1
movaps xmmword [rsp + rcx + 0xb0], xmm2
add rcx, 0x20
cmp rax, rcx
jne 0x14006e380
cmp rax, rbx
je 0x14006e407
test bl, 0x18
je 0x14006e3f0
mov rcx, rax
mov eax, ebx
and eax, 0xfffffff8
movabs rdx, 0x5c5c5c5c5c5c5c5c
nop word cs:[rax + rax]
mov r8, qword [rsp + rcx + 0x20]
xor r8, rdx
mov qword [rsp + rcx + 0xa0], r8
add rcx, 8
cmp rax, rcx
jne 0x14006e3d0
cmp rax, rbx
je 0x14006e407
nop
movzx ecx, byte [rsp + rax + 0x20]
xor cl, 0x5c
mov byte [rsp + rax + 0xa0], cl
inc rax
cmp rbx, rax
jne 0x14006e3f0
cmp qword [rsi + 0x48], rdi
je 0x14006e42e
mov ecx, dword [rdi + 0x2c]
call fcn.14008be00
test rax, rax
je 0x14006e464
mov r14, rax
mov rcx, qword [rsi + 0x50]
call fcn.14008be60
mov qword [rsi + 0x50], r14
mov qword [rsi + 0x48], rdi
lea r14, [rsi + 0x48]
mov rcx, r14
call qword [rdi + reloc.WS2_32.dll_recv]
mov rax, qword [rsi + 0x48]
lea rdx, [rsp + 0xa0]
mov rcx, r14
mov r8, rbx
call qword [rax + 0x18]
mov qword [rsi], rdi
lea rdx, [rsi + 0x28]
add rsi, 8
mov rcx, rsi
call fcn.140060f30
mov esi, eax
jmp 0x14006e466
xor esi, esi
mov rcx, qword [rsp + 0x120]
xor rcx, rsp
call fcn.140258ea0
mov eax, esi
add rsp, 0x128
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret