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

Disassembly:
xchg rbx, rsi
mov qword [rsp + 8], rsi
xchg rsi, rbx
xchg r15, rbp
mov qword [rsp + 0x10], r15
xchg rbp, r15
mov qword [rsp + 0x18], rsi
nop
push 0x75601955
mov qword [rsp], rdi
nop
mov qword [rsp - 8], r12
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r13
nop
mov qword [rsp - 8], r14
sub rsp, 8
nop
push 0xe06f779
mov qword [rsp], r15
sub rsp, 0x40
mov r14, r9
mov rbx, r8
mov r12, rdx
xchg rcx, rdi
mov r15, rdi
xchg rcx, rdi
xchg rdi, r10
mov rdi, qword [r8 + 0x10]
xchg r10, rdi
cmp qword [r8 + 0x18], 0x10
jb 0x1400e45fa
mov r8, qword [r8]
movabs rdi, 0xcbf29ce484222325
xor r13d, r13d
mov ecx, r13d
test r10, r10
je 0x1400e4660
movabs rdx, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rcx + r8]
push rdi
xor edi, eax
push rdi
xor rdi, qword [rsp + 8]
shr rdi, 0x20
ror rax, 0x20
xor edi, eax
ror rax, 0x20
shl rdi, 0x20
or rdi, qword [rsp]
add rsp, 0x10
imul rdi, rdx
inc rcx
cmp rcx, r10
jb 0x1400e4628
xchg r9, r12
mov r12, rdi
xchg r9, r12
mov r8, rbx
lea rdx, [rsp + 0x20]
xchg rcx, r13
mov r13, r15
xchg rcx, r13
call fcn.1400e3880
xchg rbx, rax
mov rbx, qword [rsp + 0x28]
xchg rbx, rax
test rax, rax
je 0x1400e469f
mov qword [r12], rax
mov byte [r12 + 8], r13b
jmp 0x1400e4a08
movabs rax, 0x333333333333333
cmp qword [r15 + 0x10], rax
je 0x1400e4a5f
lea rbp, [r15 + 8]
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x38], r13
mov ecx, 0x50
call fcn.1401541a0
mov rsi, rax
mov qword [rsp + 0x38], rax
xorps xmm0, xmm0
xchg r10, rax
movups xmmword [r10 + 0x10], xmm0
xchg r10, rax
xchg r12, r13
mov qword [rax + 0x20], r12
xchg r13, r12
xchg r13, r9
mov qword [rax + 0x28], r9
xchg r9, r13
movups xmm0, xmmword [rbx]
xchg r15, rax
movups xmmword [r15 + 0x10], xmm0
xchg r15, rax
xchg rbx, r9
movups xmm1, xmmword [r9 + 0x10]
xchg rbx, r9
movups xmmword [rax + 0x20], xmm1
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
xorps xmm0, xmm0
xchg r14, rax
movups xmmword [r14 + 0x30], xmm0
xchg r14, rax
mov qword [rax + 0x40], r13
xchg rcx, r13
mov qword [rax + 0x48], rcx
xchg rcx, r13
movups xmm0, xmmword [r14]
xchg rcx, rax
movups xmmword [rcx + 0x30], xmm0
xchg rcx, rax
xchg r10, r14
movups xmm1, xmmword [r10 + 0x10]
xchg r14, r10
movups xmmword [rax + 0x40], xmm1
mov qword [r14 + 0x10], r13
mov qword [r14 + 0x18], 0xf
mov byte [r14], 0
xchg rdi, rcx
mov rdi, qword [r15 + 0x10]
xchg rdi, rcx
movss xmm3, dword [r15]
add rcx, 1
xorps xmm0, xmm0
js 0x1400e4788
cvtsi2ss xmm0, rcx
jmp 0x1400e479d
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
xchg r14, rbx
mov r14, qword [r15 + 0x38]
xchg rbx, r14
xorps xmm2, xmm2
test rbx, rbx
js 0x1400e47bd
cvtsi2ss xmm2, rbx
jmp 0x1400e47d9
mov rcx, rbx
shr rcx, 1
xchg r14, rax
mov r14, rbx
xchg r14, rax
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, xmm3
seta al
test al, al
je 0x1400e496e
divss xmm0, xmm3
call fcn.14015529c
xor ecx, ecx
movss xmm1, dword [0x140001590]
comiss xmm0, xmm1
jb 0x1400e4828
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1400e4828
movabs rax, 0x8000000000000000
xchg r12, rax
mov rcx, r12
xchg r12, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x1400e486c
cmp rbx, 0x200
jae 0x1400e4863
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x1400e486c
xchg r13, rbx
mov r13, rcx
xchg r13, rbx
xchg rdx, rbx
mov rbx, rdx
xchg rbx, rdx
mov rcx, r15
call fcn.1400ea840
mov rax, qword [r15 + 0x30]
and rax, rdi
add rax, rax
xchg r10, r13
mov r10, qword [r15 + 0x18]
xchg r10, r13
xchg rbx, r15
mov r15, qword [r13 + rax*8 + 8]
xchg r15, rbx
mov rcx, qword [rbp]
cmp rbx, rcx
jne 0x1400e48b9
xchg rcx, r15
mov qword [rsp + 0x20], r15
xchg r15, rcx
jmp 0x1400e495a
mov r13, qword [r13 + rax*8]
mov rbp, qword [rsi + 0x20]
nop word [rax + rax]
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1400e48e3
mov rdx, qword [rdx]
lea rcx, [rsi + 0x10]
cmp qword [rsi + 0x28], 0x10
jb 0x1400e48fc
xchg r13, rcx
mov r13, qword [rsi + 0x10]
xchg r13, rcx
cmp rbp, rax
jne 0x1400e491b
xchg rdx, r8
mov rdx, rbp
xchg r8, rdx
call fcn.140155272
test eax, eax
je 0x1400e492d
cmp rbx, r13
je 0x1400e494b
mov rbx, qword [rbx + 8]
jmp 0x1400e48cd
xchg rcx, rax
mov rcx, qword [rbx]
xchg rcx, rax
xchg rcx, rax
mov qword [rsp + 0x20], rcx
xchg rcx, rax
mov qword [rsp + 0x28], rbx
lea rbp, [r15 + 8]
jmp 0x1400e4963
xchg rbx, r8
mov qword [rsp + 0x20], r8
xchg rbx, r8
lea rbp, [r15 + 8]
mov qword [rsp + 0x28], 0
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
xchg rdx, r11
mov r11, qword [rsp + 0x20]
xchg r11, rdx
xchg r13, r8
mov r13, qword [rdx + 8]
xchg r13, r8
inc qword [r15 + 0x10]
mov qword [rsi], rdx
mov qword [rsi + 8], r8
xchg rsi, rcx
mov qword [r8], rcx
xchg rsi, rcx
xchg rsi, r8
mov qword [rdx + 8], r8
xchg r8, rsi
xchg r14, rcx
mov r14, qword [r15 + 0x18]
xchg r14, rcx
xchg rdx, rax
mov rdx, qword [r15 + 0x30]
xchg rdx, rax
and rax, rdi
add rax, rax
mov r9, qword [rcx + rax*8]
cmp r9, qword [rbp]
jne 0x1400e49d6
xchg r8, rsi
mov qword [rcx + rax*8], r8
xchg rsi, r8
jmp 0x1400e49f3
cmp r9, rdx
jne 0x1400e49e8
mov qword [rcx + rax*8], rsi
jmp 0x1400e49f8
cmp qword [rcx + rax*8 + 8], r8
jne 0x1400e49f8
mov qword [rcx + rax*8 + 8], rsi
xchg rbp, rsi
mov qword [r12], rbp
xchg rbp, rsi
mov byte [r12 + 8], 1
xchg r12, rax
mov r12, rax
xchg r12, rax
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x80]
add rsp, 0x40
nop
xchg qword [rsp], r15
add rsp, 8
push rcx
push rdx
push rcx
push rax
push rbx
push rax
push rbx
xchg qword [rsp + 0x38], r14
add rsp, 0x40
push rdx
xchg qword [rsp + 8], r13
pop rdx
add rsp, 8
push rdx
push rdx
xchg qword [rsp + 0x10], r12
add rsp, 0x18
nop
add rsp, 8
xchg qword [rsp - 8], rdi
ret
lea rcx, [0x140001510]
call fcn.140154e00
int3