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

Disassembly:
xchg rcx, r10
mov qword [rsp + 8], r10
xchg r10, rcx
nop
sub rsp, 8
mov qword [rsp], rbx
nop
sub rsp, 8
mov qword [rsp], r13
sub rsp, 0x38
movabs rax, 0xfffffffffffffff
mov r13, rcx
bsr rcx, rax
mov ebx, 1
mov eax, ebx
shl rax, cl
cmp rdx, rax
ja 0x1400ea8e5
mov qword [rsp + 0x58], rbp
lea rax, [rdx - 1]
xchg rbp, r10
mov r10, qword [r13 + 8]
xchg rbp, r10
or rax, rbx
bsr rcx, rax
mov qword [rsp + 0x60], rsi
xchg rbp, r11
mov r8, r11
xchg rbp, r11
inc ecx
xchg r13, rdi
mov qword [rsp + 0x68], r13
xchg rdi, r13
shl rbx, cl
mov qword [rsp + 0x30], r12
lea r12, [r13 + 0x18]
xchg r12, rdx
mov rcx, rdx
xchg r12, rdx
lea rdx, [rbx + rbx]
call fcn.1400e9f90
mov qword [r13 + 0x38], rbx
lea rax, [rbx - 1]
mov qword [r13 + 0x30], rax
mov rdi, qword [r13 + 8]
mov rdi, qword [rdi]
xchg rsi, r12
mov r12, rdi
xchg r12, rsi
cmp rdi, rbp
je 0x1400ea860
mov qword [rsp + 0x28], r14
movabs rax, 0xcbf29ce484222325
mov qword [rsp + 0x20], r15
movabs r10, 0x100000001b3
nop dword [rax + rax]
xchg r9, r13
mov r13, qword [rdi + 0x28]
xchg r13, r9
lea r8, [rdi + 0x10]
mov rsi, qword [rsi]
xchg r15, r9
mov r9, qword [rdi + 0x20]
xchg r15, r9
cmp r9, 0x10
jb 0x1400ea622
xchg rdx, r8
mov rdx, qword [rdi + 0x10]
xchg r8, rdx
xor ecx, ecx
xchg rdx, r10
mov r10, rax
xchg r10, rdx
test r15, r15
je 0x1400ea67b
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx + r8]
inc rcx
push rdx
xor edx, eax
push rdx
xor rdx, qword [rsp + 8]
shr rdx, 0x20
ror rax, 0x20
xor edx, eax
ror rax, 0x20
shl rdx, 0x20
xor rdx, qword [rsp]
add rsp, 0x10
imul rdx, r10
cmp rcx, r15
jb 0x1400ea643
mov r13, qword [r13 + 0x30]
and r13, rdx
shl r13, 1
shl r13, 2
shl r13, 1
add r13, qword [r12]
xchg r10, r12
mov r10, qword [r13]
xchg r12, r10
cmp r12, rbp
jne 0x1400ea6bc
xchg rdi, r14
mov qword [r13], r14
xchg r14, rdi
xchg rcx, rdi
mov qword [r13 + 8], rcx
xchg rdi, rcx
jmp 0x1400ea825
mov rbx, qword [r13 + 8]
cmp qword [rbx + 0x28], 0x10
lea rdx, [rbx + 0x10]
xchg rbp, rax
mov rbp, qword [rdx + 0x10]
xchg rbp, rax
jb 0x1400ea6da
mov rdx, qword [rdx]
lea rcx, [rdi + 0x10]
cmp r9, 0x10
jb 0x1400ea6f2
xchg rcx, r12
mov r12, qword [rdi + 0x10]
xchg r12, rcx
cmp r15, rax
jne 0x1400ea769
xchg r15, r8
mov r15, r8
xchg r8, r15
call fcn.140155082
test eax, eax
jne 0x1400ea765
mov r8, qword [rbx]
cmp r8, rdi
je 0x1400ea75c
mov rdx, qword [rdi + 8]
xchg r12, rsi
mov qword [rdx], r12
xchg r12, rsi
xchg r10, rcx
mov r10, qword [rsi + 8]
xchg rcx, r10
xchg r8, r9
mov qword [rcx], r9
xchg r9, r8
mov rax, qword [r8 + 8]
xchg rdi, r13
mov qword [rax], r13
xchg r13, rdi
mov qword [r8 + 8], rcx
xchg rdx, r14
mov qword [rsi + 8], r14
xchg rdx, r14
mov qword [rdi + 8], rax
mov qword [r13 + 8], rdi
jmp 0x1400ea81b
mov r9, qword [rdi + 0x28]
cmp r12, rbx
je 0x1400ea7de
nop word [rax + rax]
mov rbx, qword [rbx + 8]
cmp qword [rbx + 0x28], 0x10
lea rdx, [rbx + 0x10]
xchg r11, rax
mov r11, qword [rdx + 0x10]
xchg r11, rax
jb 0x1400ea79a
mov rdx, qword [rdx]
lea rcx, [rdi + 0x10]
cmp r9, 0x10
jb 0x1400ea7b2
xchg r14, rcx
mov r14, qword [rdi + 0x10]
xchg rcx, r14
cmp r15, rax
jne 0x1400ea7d5
xchg r8, r15
mov r15, r8
xchg r8, r15
call fcn.140155082
test eax, eax
je 0x1400ea89c
mov r9, qword [rdi + 0x28]
cmp r12, rbx
jne 0x1400ea77c
mov rdx, qword [rdi + 8]
mov qword [rdx], rsi
xchg rcx, rdi
mov rdi, qword [rsi + 8]
xchg rcx, rdi
mov qword [rcx], rbx
mov rax, qword [rbx + 8]
xchg r12, rdi
mov qword [rax], r12
xchg r12, rdi
mov qword [rbx + 8], rcx
xchg rdx, r13
mov qword [rsi + 8], r13
xchg rdx, r13
mov qword [rdi + 8], rax
xchg rdi, rbx
mov qword [r13], rbx
xchg rdi, rbx
movabs r10, 0x100000001b3
xchg r13, r10
mov r10, qword [rsp + 0x50]
xchg r13, r10
xchg rdi, rsi
mov rsi, rdi
xchg rdi, rsi
movabs rax, 0xcbf29ce484222325
lea r12, [r13 + 0x18]
cmp rsi, rbp
jne 0x1400ea5f3
mov r15, qword [rsp + 0x20]
xchg r14, rdi
mov rdi, qword [rsp + 0x28]
xchg rdi, r14
xchg rdi, r10
mov r10, qword [rsp + 0x68]
xchg rdi, r10
mov rsi, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x58]
mov r12, qword [rsp + 0x30]
add rsp, 0x38
nop
add rsp, 8
mov r13, qword [rsp - 8]
push rax
push rcx
push rax
push rcx
push rdx
xchg qword [rsp + 0x28], rbx
pop rdx
pop rcx
pop rax
pop rcx
pop rax
add rsp, 8
ret
xchg r8, r12
mov r12, qword [rbx]
xchg r12, r8
xchg r11, rdx
mov r11, qword [rdi + 8]
xchg r11, rdx
mov qword [rdx], rsi
mov rcx, qword [rsi + 8]
xchg r8, rdi
mov qword [rcx], rdi
xchg r8, rdi
xchg rsi, rax
mov rsi, qword [r8 + 8]
xchg rsi, rax
xchg r13, rdi
mov qword [rax], r13
xchg rdi, r13
mov qword [r8 + 8], rcx
mov qword [rsi + 8], rdx
xchg r8, rax
mov qword [rdi + 8], r8
xchg r8, rax
jmp 0x1400ea81b
lea rcx, [0x140001530]
call fcn.140154c10
int3