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

Disassembly:
xchg rbp, rbx
mov qword [rsp + 8], rbp
xchg rbx, rbp
xchg r9, rbp
mov qword [rsp + 0x10], r9
xchg rbp, r9
xchg rsi, r13
mov qword [rsp + 0x18], r13
xchg r13, rsi
push rdi
nop
mov qword [rsp - 8], r12
sub rsp, 8
nop
mov qword [rsp - 8], r13
sub rsp, 8
push r14
push r15
sub rsp, 0x40
xchg r9, r13
mov r14, r13
xchg r9, r13
xchg r8, rbx
mov r8, rbx
xchg rbx, r8
mov r12, rdx
mov r15, rcx
mov r10, qword [r8 + 0x10]
cmp qword [r8 + 0x18], 0x10
jb 0x1400e45f8
mov r8, qword [r8]
movabs rdi, 0xcbf29ce484222325
xor r13d, r13d
mov ecx, r13d
test r10, r10
je 0x1400e465e
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 0x1400e4626
xchg rbp, rdi
mov r9, rbp
xchg rdi, rbp
mov r8, rbx
lea rdx, [rsp + 0x20]
xchg rsi, r15
mov rcx, rsi
xchg r15, rsi
call fcn.1400e3860
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x1400e469d
xchg r15, rax
mov qword [r12], r15
xchg r15, rax
mov byte [r12 + 8], r13b
jmp 0x1400e4a13
movabs rax, 0x333333333333333
cmp qword [r15 + 0x10], rax
je 0x1400e4a6d
lea rbp, [r15 + 8]
mov qword [rsp + 0x30], rbp
xchg rcx, r13
mov qword [rsp + 0x38], rcx
xchg rcx, r13
mov ecx, 0x50
call fcn.140154090
xchg rsi, rax
mov rax, rsi
xchg rsi, rax
mov qword [rsp + 0x38], rax
xorps xmm0, xmm0
movups xmmword [rax + 0x10], xmm0
xchg r14, r13
mov qword [rax + 0x20], r14
xchg r14, r13
mov qword [rax + 0x28], r13
xchg rbp, rbx
movups xmm0, xmmword [rbp]
xchg rbx, rbp
movups xmmword [rax + 0x10], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rax + 0x20], xmm1
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
xorps xmm0, xmm0
xchg rbx, rax
movups xmmword [rbx + 0x30], xmm0
xchg rbx, rax
xchg r15, r13
mov qword [rax + 0x40], r15
xchg r13, r15
xchg r13, r11
mov qword [rax + 0x48], r11
xchg r13, r11
movups xmm0, xmmword [r14]
movups xmmword [rax + 0x30], xmm0
xchg r12, r14
movups xmm1, xmmword [r12 + 0x10]
xchg r12, r14
xchg r9, rax
movups xmmword [r9 + 0x40], xmm1
xchg r9, rax
xchg r12, r13
mov qword [r14 + 0x10], r12
xchg r13, r12
mov qword [r14 + 0x18], 0xf
mov byte [r14], 0
xchg r13, rcx
mov r13, qword [r15 + 0x10]
xchg r13, rcx
xchg r15, r11
movss xmm3, dword [r11]
xchg r15, r11
add rcx, 1
xorps xmm0, xmm0
js 0x1400e4793
cvtsi2ss xmm0, rcx
jmp 0x1400e47a8
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rbx, qword [r15 + 0x38]
xorps xmm2, xmm2
test rbx, rbx
js 0x1400e47c2
cvtsi2ss xmm2, rbx
jmp 0x1400e47e4
xchg rbx, rcx
mov rbx, rcx
xchg rcx, rbx
shr rcx, 1
xchg rbx, rax
mov rbx, rax
xchg rbx, 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 0x1400e497f
divss xmm0, xmm3
call fcn.14015518c
xor ecx, ecx
movss xmm1, dword [0x140001590]
comiss xmm0, xmm1
jb 0x1400e4833
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1400e4833
movabs rax, 0x8000000000000000
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x1400e4877
cmp rbx, 0x200
jae 0x1400e486e
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x1400e4877
xchg rcx, r8
mov rbx, r8
xchg rcx, r8
xchg rbx, r8
mov rdx, r8
xchg rbx, r8
xchg r15, rcx
mov r15, rcx
xchg rcx, r15
call fcn.1400ea8f0
mov rax, qword [r15 + 0x30]
and rax, rdi
add rax, rax
mov r13, qword [r15 + 0x18]
xchg rbx, r14
mov r14, qword [r13 + rax*8 + 8]
xchg r14, rbx
xchg rcx, r13
mov r13, qword [rbp]
xchg r13, rcx
cmp rbx, rcx
jne 0x1400e48c4
mov qword [rsp + 0x20], rcx
jmp 0x1400e496b
mov r13, qword [r13 + rax*8]
xchg r15, rbp
mov r15, qword [rsi + 0x20]
xchg r15, rbp
nop word [rax + rax]
lea rdx, [rbx + 0x10]
xchg r11, rax
mov r11, qword [rdx + 0x10]
xchg r11, rax
cmp qword [rdx + 0x18], 0x10
jb 0x1400e48f8
mov rdx, qword [rdx]
lea rcx, [rsi + 0x10]
cmp qword [rsi + 0x28], 0x10
jb 0x1400e4911
xchg rcx, rbx
mov rbx, qword [rsi + 0x10]
xchg rbx, rcx
cmp rbp, rax
jne 0x1400e4930
xchg rdx, rbp
mov r8, rdx
xchg rbp, rdx
call fcn.140155162
test eax, eax
je 0x1400e4942
cmp rbx, r13
je 0x1400e495c
mov rbx, qword [rbx + 8]
jmp 0x1400e48de
xchg rdx, rax
mov rdx, qword [rbx]
xchg rdx, rax
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rbx
lea rbp, [r15 + 8]
jmp 0x1400e4974
xchg rbx, r9
mov qword [rsp + 0x20], r9
xchg rbx, r9
lea rbp, [r15 + 8]
mov qword [rsp + 0x28], 0
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
mov rdx, qword [rsp + 0x20]
mov r8, qword [rdx + 8]
inc qword [r15 + 0x10]
xchg rdx, r15
mov qword [rsi], r15
xchg rdx, r15
xchg r9, r8
mov qword [rsi + 8], r9
xchg r8, r9
mov qword [r8], rsi
mov qword [rdx + 8], rsi
xchg r13, rcx
mov r13, qword [r15 + 0x18]
xchg rcx, r13
xchg r12, rax
mov r12, qword [r15 + 0x30]
xchg r12, rax
and rax, rdi
add rax, rax
xchg r9, rbp
mov rbp, qword [rcx + rax*8]
xchg r9, rbp
cmp r9, qword [rbp]
jne 0x1400e49e1
xchg rsi, rbp
mov qword [rcx + rax*8], rbp
xchg rbp, rsi
jmp 0x1400e49fe
cmp r9, rdx
jne 0x1400e49f3
mov qword [rcx + rax*8], rsi
jmp 0x1400e4a09
cmp qword [rcx + rax*8 + 8], r8
jne 0x1400e4a09
xchg r12, rsi
mov qword [rcx + rax*8 + 8], r12
xchg r12, rsi
mov qword [r12], 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
mov r15, qword [rsp]
add rsp, 8
push rbx
push rbx
push rcx
push rax
push rbx
push rbx
xchg qword [rsp + 0x30], r14
add rsp, 0x38
push rcx
push rax
push rcx
push rcx
push rcx
push rbx
push rax
push rax
xchg qword [rsp + 0x40], r13
add rsp, 0x48
nop
mov r12, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rdi, qword [rsp - 8]
ret
lea rcx, [0x140001510]
call fcn.140154cf0
int3