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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x128]
sub rsp, 0x1f0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
movaps xmmword [rax - 0xb8], xmm13
movaps xmmword [rax - 0xc8], xmm14
movaps xmmword [rax - 0xd8], xmm15
mov rax, qword [0x1401be040]
xor rax, rsp
mov qword [rbp + 0x40], rax
movss dword [rsp + 0x40], xmm3
mov r14, r8
mov qword [rsp + 0x48], r8
mov rsi, rdx
mov rdi, rcx
mov r12, qword [rbp + 0x158]
mov qword [rbp - 0x50], r12
xor r15d, r15d
movss xmm9, dword [rcx]
subss xmm9, dword [rcx + 0x104]
addss xmm9, dword [rcx + 8]
movss xmm10, dword [rcx + 4]
xorps xmm8, xmm8
addss xmm10, xmm8
movss xmm12, dword [rcx + 0xc]
subss xmm12, dword [0x1401af0c0]
lea rcx, [rbp - 0x20]
call fcn.1400ddba0
mov rbx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x140145b8a
mov rax, qword [rax]
mov rcx, qword [0x140241980]
movss xmm11, dword [rcx + 0x3bf8]
movss xmm0, dword [0x1401af19c]
movss xmm15, dword [0x1401af180]
test rax, rax
je 0x140145be0
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm15
movaps xmm2, xmm11
lea rdx, [rsp + 0x50]
mov rcx, qword [rcx + 0x3bf0]
call fcn.140103e70
movss xmm11, dword [rsp + 0x54]
mov rcx, rbx
call fcn.1400de030
mov rcx, qword [rsi + 0x10]
mov rdx, qword [0x14023d6d8]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, rdx
jb 0x14014652a
mov r9, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x140145c16
mov r9, qword [rsi]
lea r13, [0x14023d6c8]
mov rax, r13
cmp qword [0x14023d6e0], 0xf
cmova rax, qword [0x14023d6c8]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp]
call fcn.140139c60
lea rdx, [rbp]
cmp qword [rbp + 0x18], 0xf
cmova rdx, qword [rbp]
movabs rbx, 0xcbf29ce484222325
mov rcx, r15
mov r8, qword [rbp + 0x10]
test r8, r8
je 0x140145c93
movabs r9, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor rbx, rax
imul rbx, r9
inc rcx
cmp rcx, r8
jb 0x140145c80
lea rcx, [rbp]
call fcn.1400de030
movss xmm6, dword [rdi + 0xac]
movss xmm7, dword [rdi + 0xa8]
movss xmm13, dword [rdi + 0xa4]
movss dword [rsp + 0x70], xmm13
movss dword [rsp + 0x74], xmm7
movss dword [rsp + 0x78], xmm6
movss xmm14, dword [0x14023cd10]
movss dword [rsp + 0x7c], xmm14
mov rdx, rsi
lea rcx, [rbp - 0x20]
call fcn.1400ddba0
movss dword [rsp + 0x50], xmm13
movss dword [rsp + 0x54], xmm7
movss dword [rsp + 0x58], xmm6
movss dword [rsp + 0x5c], xmm14
lea r9, [rsp + 0x50]
mov r8, rax
movaps xmm0, xmm10
unpcklps xmm0, xmm9
movq rdx, xmm0
call fcn.140148230
mov rdx, r12
cmp qword [r12 + 0x18], 0xf
jbe 0x140145d27
mov rdx, qword [r12]
mov r8, r14
lea rcx, [rbp + 0x20]
call fcn.140147050
nop
movss dword [rbp - 0x40], xmm13
movss dword [rbp - 0x3c], xmm7
movss dword [rbp - 0x38], xmm6
movss dword [rbp - 0x34], xmm14
lea rax, [rbp - 0x20]
mov qword [rsp + 0x50], rax
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x20]
call fcn.1400ddba0
mov r15, rax
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x70]
call fcn.1400ddba0
mov r14, rax
mov rdx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x140145d80
mov rdx, qword [rax]
mov rcx, qword [0x140241980]
movss xmm13, dword [0x1401aefb8]
movss xmm14, dword [0x1401af19c]
test rdx, rdx
jne 0x140145da4
movaps xmm6, xmm8
jmp 0x140145dec
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rdx
movss dword [rsp + 0x20], xmm14
movaps xmm3, xmm15
movss xmm2, dword [rcx + 0x3bf8]
lea rdx, [rsp + 0x50]
mov rcx, qword [rcx + 0x3bf0]
call fcn.140103e70
movss xmm0, dword [rsp + 0x50]
addss xmm0, xmm13
cvttss2si eax, xmm0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
mov rcx, r14
call fcn.1400de030
movaps xmm7, xmm9
addss xmm7, xmm8
movaps xmm1, xmm12
subss xmm1, xmm6
addss xmm1, xmm10
movups xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp - 0x40], xmm0
lea r9, [rbp - 0x40]
mov r8, r15
unpcklps xmm1, xmm7
movq rdx, xmm1
call fcn.140148230
lea rax, [rbp - 0x70]
mov qword [rsp + 0x50], rax
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x70]
call fcn.1400ddba0
mov r15, rax
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x20]
call fcn.1400ddba0
mov r14, rax
mov rdx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x140145e5d
mov rdx, qword [rax]
mov rcx, qword [0x140241980]
test rdx, rdx
jne 0x140145e6f
movaps xmm6, xmm8
jmp 0x140145eb7
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rdx
movss dword [rsp + 0x20], xmm14
movaps xmm3, xmm15
movss xmm2, dword [rcx + 0x3bf8]
lea rdx, [rsp + 0x50]
mov rcx, qword [rcx + 0x3bf0]
call fcn.140103e70
movss xmm0, dword [rsp + 0x50]
addss xmm0, xmm13
cvttss2si eax, xmm0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
mov rcx, r14
call fcn.1400de030
movaps xmm1, xmm12
subss xmm1, xmm6
addss xmm1, xmm10
movups xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
lea r9, [rsp + 0x70]
mov r8, r15
unpcklps xmm1, xmm7
movq rdx, xmm1
call fcn.140148230
addss xmm9, xmm11
mov rax, qword [0x140241980]
movss xmm2, dword [rax + 0xdf4]
mov rcx, qword [0x14023cd18]
movss xmm3, dword [0x1401af088]
comiss xmm2, xmm10
jbe 0x140145f9e
movss xmm1, dword [rax + 0xdf8]
comiss xmm1, xmm9
jbe 0x140145f9e
movaps xmm0, xmm10
addss xmm0, xmm12
comiss xmm0, xmm2
jbe 0x140145f9e
movaps xmm0, xmm9
addss xmm0, xmm3
comiss xmm0, xmm1
jbe 0x140145f9e
movss xmm1, dword [rdi + 0xc]
movss xmm0, dword [rdi + 0x10]
movss xmm5, dword [rdi + 4]
movss xmm4, dword [rdi + 8]
comiss xmm2, xmm5
jbe 0x140145f9e
movss xmm3, dword [rax + 0xdf8]
comiss xmm3, xmm4
jbe 0x140145f9e
addss xmm1, xmm5
comiss xmm1, xmm2
jbe 0x140145f9e
addss xmm0, xmm4
comiss xmm0, xmm3
jbe 0x140145f9e
test rcx, rcx
jne 0x140145f9e
mov r14b, 1
movss xmm0, dword [rax + 0x3760]
ucomiss xmm0, xmm8
jp 0x140145fa1
jne 0x140145fa1
mov qword [0x14023cd18], rbx
jmp 0x14014603b
xor r14b, r14b
test rcx, rcx
je 0x14014603b
cmp rcx, rbx
jne 0x14014603b
cmp byte [rax + 0xdfc], 0
je 0x140146030
subss xmm2, xmm10
comiss xmm8, xmm2
jbe 0x140145fcd
movaps xmm1, xmm8
jmp 0x140145fd5
movaps xmm1, xmm12
minss xmm1, xmm2
subss xmm1, xmm8
movaps xmm0, xmm12
subss xmm0, xmm8
divss xmm1, xmm0
movss xmm2, dword [rbp + 0x150]
movaps xmm0, xmm2
movss xmm15, dword [rsp + 0x40]
subss xmm0, xmm15
mulss xmm1, xmm0
addss xmm1, xmm15
comiss xmm15, xmm1
jbe 0x14014601d
movaps xmm0, xmm15
mov r15, qword [rsp + 0x48]
movss dword [r15], xmm0
jmp 0x140146047
movaps xmm0, xmm2
minss xmm0, xmm1
mov r15, qword [rsp + 0x48]
movss dword [r15], xmm0
jmp 0x140146047
mov qword [0x14023cd18], 0
mov r15, qword [rsp + 0x48]
movss xmm15, dword [rsp + 0x40]
mov rdx, rsi
lea rcx, [rbp - 0x70]
call fcn.1400ddba0
mov r8, rax
lea rdx, [rsp + 0x48]
call fcn.14013dfe0
mov rax, qword [0x140241980]
movss xmm0, dword [rax + 0x18]
movss xmm7, dword [0x1401af064]
mulss xmm0, xmm7
mulss xmm0, dword [0x1401aef74]
movss xmm13, dword [0x1401af058]
mulss xmm0, xmm13
movss xmm1, dword [rsp + 0x48]
subss xmm1, xmm0
mov r8b, 1
lea rcx, [rsp + 0x48]
call fcn.14013dde0
mov word [rsp + 0x40], 0x23
mov byte [rsp + 0x42], 0
lea r8, [rsp + 0x41]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x40]
call fcn.1401383f0
nop
lea r8, [rbp - 0x40]
mov rdx, rsi
lea rcx, [rbp - 0x20]
call fcn.14013f030
nop
lea rcx, [rbp - 0x40]
call fcn.1400de030
nop
cmp qword [0x14023d6e0], 0xf
cmova r13, qword [0x14023d6c8]
mov r8, qword [0x14023d6d8]
mov rdx, r13
lea rcx, [rbp - 0x20]
call fcn.1400de200
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm1
xor esi, esi
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], sil
lea rdx, [rbp - 0x40]
movq rcx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 0xf
cmova rdx, rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], rsi
mov qword [rbp - 0x78], rsi
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x140146155
lea rcx, [rsp + 0x70]
call fcn.1400defe0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
call fcn.14013dfe0
nop
mov rdx, qword [rbp - 0x28]
cmp rdx, 0xf
jbe 0x1401461b8
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401461b2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1401461b2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14014b9a4
nop
lea rcx, [rbp - 0x20]
call fcn.1400de030
movss xmm6, dword [0x1401aefc0]
test r14b, r14b
jne 0x1401461d7
cmp qword [0x14023cd18], rbx
jne 0x1401461db
movaps xmm14, xmm6
mov rax, qword [0x140241980]
movss xmm1, dword [rax + 0x18]
mulss xmm1, xmm7
mulss xmm1, dword [0x1401aef74]
mulss xmm1, xmm13
mulss xmm1, xmm14
addss xmm1, dword [rsp + 0x48]
mov r8b, 1
lea rcx, [rsp + 0x48]
call fcn.14013dde0
movaps xmm14, xmm9
addss xmm14, xmm6
movaps xmm7, xmm10
addss xmm7, xmm6
movss xmm0, dword [rdi + 0x74]
movss dword [rsp + 0x70], xmm0
movss xmm1, dword [rdi + 0x78]
movss dword [rsp + 0x74], xmm1
movss xmm0, dword [rdi + 0x7c]
movss dword [rsp + 0x78], xmm0
movss xmm1, dword [0x14023cd10]
movss dword [rsp + 0x7c], xmm1
movss dword [rsp + 0x50], xmm7
movss dword [rsp + 0x54], xmm14
lea rcx, [rsp + 0x70]
call fcn.1400e1850
movaps xmm1, xmm14
addss xmm1, dword [0x1401af080]
movss dword [rsp + 0x40], xmm1
movaps xmm0, xmm12
subss xmm0, dword [0x1401af010]
addss xmm0, xmm7
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x64], xmm1
mov dword [rsp + 0x28], esi
movss dword [rsp + 0x20], xmm13
mov r9d, eax
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x50]
mov rcx, qword [0x140241c08]
call fcn.1400fff50
movss xmm1, dword [r15]
movaps xmm6, xmm1
subss xmm6, xmm15
movss xmm0, dword [rbp + 0x150]
subss xmm0, xmm15
divss xmm6, xmm0
movaps xmm0, xmm12
subss xmm0, xmm8
mulss xmm6, xmm0
addss xmm6, xmm8
ucomiss xmm1, xmm15
jp 0x1401462f5
je 0x140146386
movss xmm0, dword [rdi + 0xb4]
movss dword [rsp + 0x70], xmm0
movss xmm1, dword [rdi + 0xb8]
movss dword [rsp + 0x74], xmm1
movss xmm0, dword [rdi + 0xbc]
movss dword [rsp + 0x78], xmm0
movss xmm1, dword [0x14023cd10]
movss dword [rsp + 0x7c], xmm1
movss dword [rsp + 0x60], xmm7
movss dword [rsp + 0x64], xmm14
lea rcx, [rsp + 0x70]
call fcn.1400e1850
subss xmm6, dword [0x1401af010]
addss xmm6, xmm7
movss dword [rsp + 0x50], xmm6
movss xmm0, dword [rsp + 0x40]
movss dword [rsp + 0x54], xmm0
mov dword [rsp + 0x28], esi
movss dword [rsp + 0x20], xmm13
mov r9d, eax
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x60]
mov rcx, qword [0x140241c08]
call fcn.1400fff50
movss xmm0, dword [rdi + 0x84]
movss dword [rsp + 0x70], xmm0
movss xmm1, dword [rdi + 0x88]
movss dword [rsp + 0x74], xmm1
movss xmm0, dword [rdi + 0x8c]
movss dword [rsp + 0x78], xmm0
movss xmm1, dword [0x14023cd10]
movss dword [rsp + 0x7c], xmm1
movss dword [rsp + 0x60], xmm10
movss dword [rsp + 0x64], xmm9
lea rcx, [rsp + 0x70]
call fcn.1400e1850
movaps xmm7, xmm9
addss xmm7, dword [0x1401af088]
movaps xmm6, xmm10
addss xmm6, xmm12
movss dword [rsp + 0x50], xmm6
movss dword [rsp + 0x54], xmm7
movss dword [rsp + 0x30], xmm8
mov dword [rsp + 0x28], esi
movss dword [rsp + 0x20], xmm13
mov r9d, eax
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x60]
mov rcx, qword [0x140241c08]
call fcn.1400ffe40
mov dword [rsp + 0x70], 0x3e48c8c9
mov dword [rsp + 0x74], 0x3e48c8c9
mov dword [rsp + 0x78], 0x3e48c8c9
movss xmm0, dword [rsp + 0x48]
mulss xmm0, dword [0x14023cd10]
movss dword [rsp + 0x7c], xmm0
movss dword [rsp + 0x48], xmm10
movss dword [rsp + 0x4c], xmm9
lea rcx, [rsp + 0x70]
call fcn.1400e1850
movss dword [rsp + 0x50], xmm6
movss dword [rsp + 0x54], xmm7
movss dword [rsp + 0x30], xmm8
mov dword [rsp + 0x28], esi
movss dword [rsp + 0x20], xmm13
mov r9d, eax
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
mov rcx, qword [0x140241c08]
call fcn.1400ffe40
addss xmm11, dword [0x1401af088]
addss xmm11, dword [0x1401af064]
addss xmm11, dword [rdi]
movss dword [rdi], xmm11
lea rcx, [rbp + 0x20]
call fcn.1400de030
nop
mov rcx, r12
call fcn.1400de030
mov rcx, qword [rbp + 0x40]
xor rcx, rsp
call fcn.14014b630
lea r11, [rsp + 0x1f0]
mov rbx, qword [r11 + 0x58]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400d9c60
nop