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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov qword [rax - 0x48], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x20], rsi
mov rbx, r9
mov r12, r8
mov r15, rdx
mov rsi, rcx
mov r13, qword [r8 + 0x10]
cmp qword [r8 + 0x18], 0x10
jb 0x140042a4a
mov r8, qword [r8]
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
test r13, r13
je 0x140042a79
movzx eax, byte [rcx + r8]
xor rdx, rax
movabs r9, 0x100000001b3
imul rdx, r9
inc rcx
cmp rcx, r13
jb 0x140042a5b
mov r14, qword [rsi + 0x30]
and r14, rdx
add r14, r14
mov rax, qword [rsi + 0x18]
lea rcx, [rsi + 8]
mov qword [rsp + 0x80], rcx
mov rdi, qword [rcx]
cmp rdi, qword [rax + r14*8]
je 0x140042b09
mov rdi, qword [rax + r14*8 + 8]
mov rdi, qword [rdi]
cmp rdi, qword [rax + r14*8]
je 0x140042b09
mov rdi, qword [rdi + 8]
lea rdx, [rdi + 0x10]
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x140042ac0
mov rdx, qword [rdx]
mov rcx, r12
cmp qword [r12 + 0x18], 0x10
jb 0x140042acf
mov rcx, qword [r12]
cmp r13, r8
jne 0x140042aa4
mov r8, r13
call fcn.140056142
test eax, eax
mov rax, qword [rsi + 0x18]
jne 0x140042aa4
mov r8, rbx
lea rdx, [rsp + 0x70]
mov rcx, qword [rsp + 0x80]
call fcn.140042c84
mov qword [r15], rdi
mov byte [r15 + 8], 0
mov rax, r15
jmp 0x140042c32
mov qword [rsp + 0x80], rbx
mov rax, qword [rbx]
cmp rdi, rax
je 0x140042b46
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], rbx
mov rdx, qword [rdi + 8]
mov rcx, qword [rax + 8]
mov qword [rdi + 8], rcx
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rbx + 8], rdx
mov rdx, qword [rsi + 0x18]
mov rax, qword [rdx + r14*8]
cmp rax, qword [rsi + 8]
jne 0x140042b63
mov qword [rdx + r14*8], rbx
mov rax, qword [rsi + 0x18]
mov qword [rax + r14*8 + 8], rbx
jmp 0x140042b92
cmp rax, rdi
jne 0x140042b6e
mov qword [rdx + r14*8], rbx
jmp 0x140042b92
mov rax, qword [rdx + r14*8 + 8]
mov rcx, qword [rax]
mov qword [rdx + r14*8 + 8], rcx
cmp rcx, rbx
je 0x140042b92
mov rdx, qword [rsi + 0x18]
mov rax, qword [rdx + r14*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r14*8 + 8], rcx
movss xmm3, dword [rsi]
mov rax, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x38]
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
movss xmm1, dword [0x140060ad8]
test rax, rax
jns 0x140042bb7
addss xmm0, xmm1
xorps xmm2, xmm2
cvtsi2ss xmm2, rdx
test rdx, rdx
jns 0x140042bc8
addss xmm2, xmm1
divss xmm0, xmm2
comiss xmm3, xmm0
jae 0x140042c27
cmp rdx, 0x200
jae 0x140042be0
shl rdx, 3
jmp 0x140042bf2
movabs rax, 0xfffffffffffffff
cmp rdx, rax
jae 0x140042bf2
add rdx, rdx
mov rcx, rsi
call fcn.1400073a4
mov rax, qword [rsi + 8]
cmp qword [rax], rax
je 0x140042c27
mov r14, qword [rax + 8]
mov rdi, qword [rsi + 8]
mov rdi, qword [rdi]
lea r8, [rdi + 0x10]
mov r9, rdi
lea rdx, [rsp + 0x28]
mov rcx, rsi
call fcn.140042a0c
cmp rdi, r14
jne 0x140042c07
mov qword [r15], rbx
mov byte [r15 + 8], 1
mov rax, r15
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret