Function at 0x1800170e0
Capabilities:
Encode data using xor
Encrypt data using rc4 prga
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
push rsi
push rdi
push r14
sub rsp, 0x30
mov r14, r8
lea r8, [0x180000000]
mov eax, dword [r8 + rcx*4 + 0x17388]
add rax, r8
jmp rax
mov rax, qword [r14]
mov rcx, qword [rdx]
cmp qword [rcx], rax
sete al
mov rbx, qword [rsp + 0x60]
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret
mov rdi, qword [rdx]
mov rax, qword [r14 + 0x10]
cmp qword [rdi + 0x10], rax
jne 0x180017315
mov rdi, qword [rdi + 8]
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x58], r15
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x180017211
movabs rbp, 0x100000001b3
movabs r15, 0xcbf29ce484222325
nop dword [rax]
cmp qword [rbx + 0x28], 7
lea rdx, [rbx + 0x10]
mov r8, qword [rbx + 0x20]
jbe 0x180017173
mov rdx, qword [rbx + 0x10]
xor ecx, ecx
mov r9, r15
add r8, r8
je 0x180017193
nop dword [rax]
movzx eax, byte [rdx + rcx]
inc rcx
xor r9, rax
imul r9, rbp
cmp rcx, r8
jb 0x180017180
lea r8, [rbx + 0x10]
mov rcx, r14
lea rdx, [rsp + 0x20]
call fcn.180011c40
mov r9, qword [rax + 8]
test r9, r9
je 0x18001722b
cmp qword [r9 + 0x28], 7
lea rcx, [r9 + 0x10]
jbe 0x1800171bc
mov rcx, qword [r9 + 0x10]
cmp qword [rbx + 0x28], 7
lea r8, [rbx + 0x10]
mov rdx, qword [rbx + 0x20]
jbe 0x1800171cf
mov r8, qword [rbx + 0x10]
cmp rdx, qword [r9 + 0x20]
jne 0x18001722b
test rdx, rdx
je 0x1800171f4
sub r8, rcx
nop dword [rax]
movzx eax, word [rcx + r8]
cmp ax, word [rcx]
jne 0x18001722b
add rcx, 2
sub rdx, 1
jne 0x1800171e0
lea rdx, [r9 + 0x30]
lea rcx, [rbx + 0x30]
call fcn.180005640
test al, al
je 0x18001722b
mov rbx, qword [rbx]
cmp rbx, rdi
jne 0x180017160
mov al, 1
mov rbp, qword [rsp + 0x50]
mov r15, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret
xor al, al
jmp 0x180017213
mov rax, qword [rdx]
movabs r9, 0xe38e38e38e38e39
mov rdi, qword [r14]
mov rcx, qword [r14 + 8]
sub rcx, rdi
mov rsi, qword [rax + 8]
mov rbx, qword [rax]
mov rax, r9
imul rcx
mov rax, r9
mov r8, rdx
sar r8, 2
mov rcx, r8
shr rcx, 0x3f
add r8, rcx
mov rcx, rsi
sub rcx, rbx
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, r8
jne 0x180017315
cmp rbx, rsi
je case.0x180017102.0
mov rdx, rdi
mov rcx, rbx
call fcn.180005640
test al, al
je 0x180017315
add rbx, 0x48
add rdi, 0x48
cmp rbx, rsi
jne 0x180017290
mov al, 1
mov rbx, qword [rsp + 0x60]
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret
cmp qword [r14 + 0x18], 7
mov rdx, qword [rdx]
mov rax, qword [r14 + 0x10]
jbe 0x1800172cd
mov r14, qword [r14]
cmp qword [rdx + 0x18], 7
mov rcx, qword [rdx + 0x10]
jbe 0x1800172db
mov rdx, qword [rdx]
cmp rcx, rax
jne 0x180017315
test rcx, rcx
je case.0x180017102.0
sub rdx, r14
nop dword [rax]
movzx eax, word [r14 + rdx]
cmp ax, word [r14]
jne 0x180017315
add r14, 2
sub rcx, 1
jne 0x1800172f0
mov al, 1
mov rbx, qword [rsp + 0x60]
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret
xor al, al
mov rbx, qword [rsp + 0x60]
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret
movzx eax, byte [r14]
mov rcx, qword [rdx]
cmp byte [rcx], al
sete al
mov rbx, qword [rsp + 0x60]
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret
mov eax, dword [r14]
mov rcx, qword [rdx]
cmp dword [rcx], eax
sete al
mov rbx, qword [rsp + 0x60]
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret
mov rax, qword [rdx]
movss xmm0, dword [rax]
ucomiss xmm0, dword [r14]
jp 0x180017315
jne 0x180017315
mov rbx, qword [rsp + 0x60]
mov al, 1
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret
mov rax, qword [rdx]
movsd xmm0, qword [rax]
ucomisd xmm0, qword [r14]
jmp 0x180017363