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

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xd0
mov rcx, qword [0x1800a83e8]
movaps xmmword [rax - 0x48], xmm6
call fcn.18000d3f4
mov rbx, rax
test rax, rax
je 0x180035be9
mov rcx, rax
call fcn.18001d2fc
test al, al
je 0x180035be9
mov rcx, rbx
call fcn.18001d3e0
test al, al
je 0x180035be9
mov rcx, rbx
call fcn.18001da88
mov r12, rax
test rax, rax
je 0x180035be9
movabs rax, 0xa4edff494469c0f
lea rdx, [rbp - 0x59]
mov qword [rbp - 0x59], rax
movabs rdi, 0x6f22bab9f135fd4d
movabs rax, 0x39f96b0cccb3fe63
mov qword [rbp - 0x79], rdi
mov qword [rbp - 0x51], rax
movabs rsi, 0x39f96b0cccb3fe06
movdqa xmm0, xmmword [rbp - 0x59]
movabs rcx, 0xcbf29ce484222325
mov qword [rbp - 0x71], rsi
mov r9, rcx
xorps xmm0, xmmword [rbp - 0x79]
movabs r14, 0x100000001b3
movq rax, xmm0
movdqa xmmword [rbp - 0x59], xmm0
test al, al
je 0x180035913
inc rdx
movsx rax, al
xor r9, rax
imul r9, r14
mov al, byte [rdx]
cmp al, 0
jne 0x1800358ff
movabs rax, 0x24fdbd19a569c07
mov qword [rbp - 0x79], rdi
mov qword [rbp - 0x49], rax
lea rdx, [rbp - 0x49]
movabs rax, 0x39f96b0cccb38c63
mov qword [rbp - 0x71], rsi
movdqa xmm0, xmmword [rbp - 0x79]
mov r10, rcx
mov qword [rbp - 0x41], rax
xorps xmm0, xmmword [rbp - 0x49]
movq rax, xmm0
movdqa xmmword [rbp - 0x49], xmm0
test al, al
je 0x180035969
inc rdx
movsx rax, al
xor r10, rax
imul r10, r14
mov al, byte [rdx]
cmp al, 0
jne 0x180035955
mov rax, qword [r12]
mov r8, rcx
mov r11, qword [rax + 0x10]
mov rbx, r11
mov dl, byte [r11]
test dl, dl
je 0x180035994
mov al, dl
inc rbx
movsx rax, al
xor r8, rax
imul r8, r14
mov al, byte [rbx]
test al, al
jne 0x180035980
cmp r8, r9
je 0x1800359b9
jmp 0x1800359ac
movsx rax, dl
xor rcx, rax
imul rcx, r14
inc r11
mov dl, byte [r11]
test dl, dl
jne 0x18003599b
cmp rcx, r10
jne 0x180035be9
mov rax, qword [0x1800a8d18]
test rax, rax
jne 0x180035a32
mov qword [rbp - 0x69], rdi
lea rdx, [rbp - 0x79]
mov qword [rbp - 0x61], rsi
lea rcx, [rbp - 0x69]
mov qword [rbp - 0x79], rdi
movabs rax, 0x1856dff794469c0f
mov qword [rbp - 0x71], rsi
movdqa xmm0, xmmword [rbp - 0x79]
xorps xmm0, xmmword [rbp - 0x69]
mov qword [rbp - 0x69], rax
movabs rax, 0x399c076eadd88c69
mov qword [rbp - 0x61], rax
movdqa xmmword [rbp - 0x79], xmm0
movdqa xmm0, xmmword [rbp - 0x69]
mov qword [rbp - 0x19], rdi
mov qword [rbp - 0x11], rsi
xorps xmm0, xmmword [rbp - 0x19]
movdqa xmmword [rbp - 0x69], xmm0
call fcn.180008848
mov qword [0x1800a8d18], rax
test rax, rax
je 0x180035be9
mov rcx, qword [rax + 0xb8]
test rcx, rcx
je 0x180035be9
mov rax, qword [rcx]
test rax, rax
je 0x180035be9
mov rsi, qword [rax + 0x10]
test rsi, rsi
je 0x180035be9
mov rsi, qword [rsi + 0x28]
xor r14d, r14d
test rsi, rsi
je 0x180035be9
movss xmm6, dword [0x1800a34a4]
lea r15d, [r14 + 0x20]
cmp r14, qword [rsi + 0x10]
jae 0x180035be9
mov rax, qword [rsi + 0x18]
mov rdi, qword [r15 + rax]
test rdi, rdi
je 0x180035bdd
mov rcx, rdi
call fcn.18000a238
mov ecx, 0xc570e484
cmp rax, rcx
jne 0x180035bdd
mov rcx, rdi
call fcn.18000b038
test byte [rax], 2
je 0x180035bdd
mov rcx, rdi
call fcn.1800168a0
mov rcx, r12
mov qword [rbp + 0x6f], rax
mov rbx, rax
call fcn.18000bc34
mov cl, byte [0x1800a83e1]
neg cl
mov rcx, qword [0x1800a83e8]
sbb r13d, r13d
and r13d, 0xb7ffdfff
call fcn.18000d77c
lea rdx, [rbp + 7]
mov rcx, rax
call fcn.180022f70
lea rdx, [rbp - 9]
mov rcx, rbx
call fcn.18002a49c
mov rcx, rdi
call fcn.1800168a0
lea rdx, [rbp - 0x19]
mov rcx, rax
call fcn.18002a49c
mov rcx, qword [0x1800a83e8]
mov rbx, rax
call fcn.1800168a0
lea rdx, [rbp - 0x69]
mov rcx, rax
call fcn.18002a49c
movss xmm3, dword [rbx]
movss xmm2, dword [rbx + 8]
movsd xmm0, qword [rax]
subss xmm2, dword [rax + 8]
movsd qword [rbp - 0x39], xmm0
movss xmm0, dword [rbx + 4]
subss xmm0, dword [rbp - 0x35]
subss xmm3, dword [rbp - 0x39]
mulss xmm2, xmm2
mulss xmm0, xmm0
mulss xmm3, xmm3
addss xmm0, xmm3
addss xmm0, xmm2
call fcn.18002e330
comiss xmm6, xmm0
jb 0x180035bdd
and qword [rsp + 0x20], 0
lea r8d, [r13 + 0x48a12001]
xorps xmm3, xmm3
lea rdx, [rbp - 9]
lea rcx, [rbp + 7]
call fcn.180017544
test al, al
je 0x180035bdd
mov rcx, qword [0x1800a83e8]
call fcn.18000d77c
lea rdx, [rbp - 0x79]
mov rcx, rax
call fcn.180022f70
mov rcx, qword [rbp + 0x67]
lea r9, [rbp - 0x29]
mov r8, rdi
mov rdx, r12
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
mov dword [rbp - 0x21], eax
mov rax, qword [rbp + 0x6f]
mov qword [rsp + 0x20], rax
movsd qword [rbp - 0x29], xmm0
call fcn.1800355c0
inc r14
add r15, 8
jmp 0x180035a77
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret