Function at 0x14008a2f0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov rax, qword [0x1402ab7e8]
xor rax, rsp
mov qword [rbp + 0x70], rax
mov rbx, r9
mov r14, rdx
mov rdi, rcx
xor r15d, r15d
lea rax, vtable.pk_product_t.0
mov qword [rbp - 0x40], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x20], recv
mov byte [rbp - 0x38], r15b
movups xmmword [rbp - 0x18], xmm0
mov qword [rbp - 8], r15
mov qword [rbp], recv
mov byte [rbp - 0x18], r15b
lea rdx, [rbp - 0x38]
mov rcx, r9
call fcn.14009cf70
lea rdx, [rbp - 0x18]
mov rcx, rbx
call fcn.14009cf70
nop
lea rdx, [rbp - 0x38]
lea rcx, [rsp + 0x20]
call fcn.140078bf0
add rdi, 0x18
lea rax, [rsp + 0x20]
cmp rdi, rax
je 0x14008a3f0
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x14008a3cb
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x14008a3c6
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14008a950
mov rcx, r8
call fcn.1400e0320
mov qword [rdi + 0x18], recv
movups xmm0, xmmword [rsp + 0x20]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rsp + 0x30]
movups xmmword [rdi + 0x10], xmm1
mov edx, recv
mov byte [rsp + 0x20], 0
jmp 0x14008a3f5
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x14008a42d
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14008a428
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14008a950
call fcn.1400e0320
lea rax, [rsp + 0x50]
mov qword [rsp + 0x40], rax
movabs rax, 0x92b91ae4da5a0ef3
mov qword [rbp + 0x10], rax
movabs rax, 0xc89bbbb94b139611
mov qword [rbp + 0x18], rax
movabs rax, 0x70d896a3757c45f3
mov qword [rbp + 0x20], rax
movabs rax, 0x8ec6fdfee861a3b4
mov qword [rbp + 0x28], rax
movabs r13, 0xf7f46881a90f7abd
mov qword [rbp + 0x30], r13
movabs r12, 0xa4faf8dc2c72e562
mov qword [rbp + 0x38], r12
movabs rcx, 0x70d896a3757c459f
mov qword [rbp + 0x40], rcx
mov qword [rbp + 0x48], rax
movdqa xmm0, xmmword [rbp + 0x10]
pxor xmm0, xmmword [rbp + 0x30]
movdqa xmmword [rbp + 0x10], xmm0
movdqa xmm1, xmmword [rbp + 0x20]
pxor xmm1, xmmword [rbp + 0x40]
movdqa xmmword [rbp + 0x20], xmm1
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r15
lea rax, [rbp + 0x10]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14008a4e0
lea rdx, [rbp + 0x10]
lea rcx, [rsp + 0x50]
call fcn.140078f10
nop
movabs rax, 0xf7f41db39a6113ca
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], r12
mov qword [rbp + 0x10], r13
mov qword [rbp + 0x18], r12
movdqa xmm0, xmmword [rbp + 0x30]
pxor xmm0, xmmword [rbp + 0x10]
movdqa xmmword [rbp + 0x30], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], r15
mov qword [rbp + 0x68], r15
lea rax, [rbp + 0x30]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14008a540
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x50]
call fcn.140078f10
nop
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x50]
call fcn.1400795e0
mov rbx, rax
test rax, rax
je 0x14008a945
mov rcx, rax
call fcn.140079820
test al, al
je 0x14008a945
mov rcx, qword [0x1402b3fd8]
mov qword [rcx + 8], rbx
mov r8, qword [rdi + 0x10]
mov rdx, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x14008a59e
mov rdx, qword [rdi]
movabs r9, 0xcbf29ce484222325
mov rcx, r15
test r8, r8
je 0x14008a5d3
movabs r10, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x14008a5c0
mov r8, rdi
lea rdx, [rsp + 0x40]
call fcn.140098260
mov rcx, qword [rax + 8]
mov rsi, qword [0x1402b4018]
test rcx, rcx
cmovne rsi, rcx
add rsi, 0x30
mov rcx, rsi
call fcn.1400874e0
mov ebx, eax
movabs rax, 0xf7f46881a97c16de
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], r12
mov qword [rbp + 0x10], r13
mov qword [rbp + 0x18], r12
movdqa xmm0, xmmword [rbp + 0x30]
pxor xmm0, xmmword [rbp + 0x10]
movdqa xmmword [rbp + 0x30], xmm0
lea rcx, [rbp + 0x30]
call fcn.1400ed640
mov rdx, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x14008a63f
mov rdx, qword [rsi]
movabs rax, 0xb5a62dd1f0475ae6
mov qword [rbp + 0x10], rax
movabs rax, 0xf4b5d8810c37ab2d
mov qword [rbp + 0x18], rax
movabs rax, 0x70d89cd0505c0bda
mov qword [rbp + 0x20], rax
movabs rax, 0x8ec6fdfee861a3b4
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x50], r13
mov qword [rbp + 0x58], r12
movabs rcx, 0x70d896a3757c459f
mov qword [rbp + 0x60], rcx
mov qword [rbp + 0x68], rax
movdqa xmm0, xmmword [rbp + 0x10]
pxor xmm0, xmmword [rbp + 0x50]
movdqa xmmword [rbp + 0x10], xmm0
movdqa xmm1, xmmword [rbp + 0x20]
pxor xmm1, xmmword [rbp + 0x60]
movdqa xmmword [rbp + 0x20], xmm1
lea rcx, [rbp + 0x10]
call fcn.1400773d0
test ebx, ebx
jne 0x14008a6e9
mov rcx, rsi
call fcn.1400874e0
mov ebx, eax
test eax, eax
jne 0x14008a6e9
nop word [rax + rax]
mov ecx, 0xc8
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, rsi
call fcn.1400874e0
mov ebx, eax
test eax, eax
je 0x14008a6d0
movabs rax, 0xf7f46881a97c16de
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], r12
mov qword [rbp + 0x10], r13
mov qword [rbp + 0x18], r12
movdqa xmm0, xmmword [rbp + 0x30]
pxor xmm0, xmmword [rbp + 0x10]
movdqa xmmword [rbp + 0x30], xmm0
lea rcx, [rbp + 0x30]
call fcn.1400ed640
movabs rax, 0xb5a62dd1f0475ae6
mov qword [rbp + 0x10], rax
movabs rax, 0xcbb6d8810c37ab2d
mov qword [rbp + 0x18], rax
movabs rax, 0x5ef6b8c41b1521fe
mov qword [rbp + 0x20], rax
movabs rax, 0x8ec6fdfee861a3be
mov qword [rbp + 0x28], rax
movabs rax, 0x70d896a3757c459f
mov qword [rbp + 0x60], rax
movabs rax, 0x8ec6fdfee861a3b4
mov qword [rbp + 0x50], r13
mov qword [rbp + 0x58], r12
movdqa xmm0, xmmword [rbp + 0x10]
mov qword [rbp + 0x68], rax
movdqa xmm1, xmmword [rbp + 0x20]
pxor xmm0, xmmword [rbp + 0x50]
pxor xmm1, xmmword [rbp + 0x60]
movdqa xmmword [rbp + 0x10], xmm0
movdqa xmmword [rbp + 0x20], xmm1
lea rcx, [rbp + 0x10]
call fcn.1400773d0
mov ecx, ebx
mov rax, qword [0x1402b3fd8]
mov qword [rax], rcx
lea rax, vtable.pk_do_magic_t.0
mov qword [rsp + 0x70], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], r15
mov qword [rbp - 0x70], recv
mov byte [rsp + 0x78], 0
mov qword [rbp - 0x68], r15
movdqu xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r15
mov rdx, rdi
lea rcx, [rbp + 0x50]
call fcn.140078bf0
mov rbx, rax
mov qword [rbp + 0x30], rax
mov rdx, rax
lea rcx, [rsp + 0x78]
call fcn.14008c4a0
nop
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x14008a837
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x14008a832
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14008a956
mov rcx, r8
call fcn.1400e0320
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], recv
mov byte [rbx], 0
lea rdx, [rsp + 0x70]
mov rcx, r14
call fcn.140084310
nop
lea rcx, [rbp - 0x60]
call fcn.140078d10
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x14008a899
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14008a894
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14008a950
call fcn.1400e0320
mov qword [rbp - 0x78], r15
mov qword [rbp - 0x70], recv
mov byte [rsp + 0x78], 0
mov rdx, qword [rbp]
cmp rdx, 0x10
jb 0x14008a8e1
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14008a8dc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14008a93f
call fcn.1400e0320
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x14008a918
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14008a913
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14008a93f
call fcn.1400e0320
mov rcx, qword [rbp + 0x70]
xor rcx, rsp
call fcn.1400e0300
mov rbx, qword [rsp + 0x1d0]
add rsp, 0x180
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400e80c8
nop
mov ecx, 0xffffffff
call fcn.1400e8448
int3
call fcn.1400e80c8
nop
call fcn.1400e80c8
int3