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

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], r9
push rbp
push rdi
push r14
lea rbp, [rax - 0x57]
sub rsp, 0xa0
and qword [rbp + 0x5f], 0
mov rbx, r9
mov r10d, edx
movaps xmmword [rax - 0x28], xmm6
bswap r10d
mov r9d, r8d
mov r10d, r10d
bswap r9d
shl r10, 0x20
mov rdi, rcx
mov r9d, r9d
movabs rcx, 0xcbf29ce484222325
or r10, r9
movaps xmmword [rax - 0x38], xmm7
mov qword [rbp - 0x21], r10
xor r9d, r9d
movzx eax, byte [rbp + r9 - 0x21]
movabs r11, 0x100000001b3
xor rcx, rax
inc r9
imul rcx, r11
cmp r9, 8
jb 0x1400311b3
mov r9, qword [rdi + 0xc8]
mov rsi, qword [rdi + 0xb0]
and r9, rcx
mov r11, qword [rdi + 0xa0]
add r9, r9
mov rax, qword [rsi + r9*8]
cmp qword [rsi + r9*8], r11
jne 0x1400311fd
mov rcx, r11
jmp 0x140031205
mov rcx, qword [rsi + r9*8 + 8]
mov rcx, qword [rcx]
cmp rax, rcx
je 0x140031215
cmp qword [rax + 0x10], r10
je 0x140031218
mov rax, qword [rax]
jmp 0x1400311f2
mov rax, r11
cmp rax, r11
jne 0x14003142b
movss xmm2, dword [0x140060a94]
xorps xmm0, xmm0
mov eax, edx
mov dword [rbp - 0x25], 0x3f800000
shr eax, 0x10
mov r9d, 0xff00
movzx ecx, al
movzx eax, dl
and edx, r9d
shl eax, 0x10
or ecx, eax
mov dword [rbp + 0xb], 0x3f800000
or ecx, edx
lea rdx, [rbp - 0x31]
mov eax, ecx
mov qword [rsp + 0x28], rdx
and dword [rsp + 0x20], 0
lea rdx, [rbp - 9]
shr eax, 0x10
cvtsi2ss xmm0, rax
mov eax, ecx
shr eax, 8
movzx eax, al
mulss xmm0, xmm2
movss dword [rbp - 0x31], xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
movzx eax, cl
mulss xmm0, xmm2
movss dword [rbp - 0x2d], xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mov eax, r8d
shr eax, 0x10
movzx ecx, al
movzx eax, r8b
and r8d, r9d
shl eax, 0x10
xor r9d, r9d
or ecx, eax
mulss xmm0, xmm2
or ecx, r8d
mov eax, ecx
shr eax, 0x10
lea r8d, [r9 + 2]
movss dword [rbp - 0x29], xmm0
xorps xmm0, xmm0
movups xmm1, xmmword [rbp - 0x31]
mov dword [rbp - 0x25], 0x3f800000
movss dword [rbp - 9], xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mov eax, ecx
shr eax, 8
movzx eax, al
movups xmmword [rbp - 5], xmm1
mulss xmm0, xmm2
movss dword [rbp - 0x31], xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
movzx eax, cl
mov rcx, qword [rdi + 0x28]
mulss xmm0, xmm2
movss dword [rbp - 0x2d], xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm2
movss dword [rbp - 0x29], xmm0
movups xmm0, xmmword [rbp - 0x31]
and qword [rbp - 0x31], 0
movups xmmword [rbp + 0xf], xmm0
mov rax, qword [rcx]
call qword [rax + 0x48]
test eax, eax
js 0x140031477
movss xmm2, dword [0x140060aa4]
xor r8d, r8d
mov edx, dword [rbp + 0x7b]
mov ecx, dword [rbp + 0x83]
mov r9, qword [rbp - 0x31]
add ecx, edx
movd xmm3, ebx
movd xmm0, edx
lea rdx, [rbp + 0x5f]
cvtdq2ps xmm0, xmm0
mov qword [rsp + 0x20], rdx
lea rdx, [rbp - 0x19]
movd xmm1, ecx
mov rcx, qword [rdi + 0x28]
addss xmm0, xmm2
cvtdq2ps xmm1, xmm1
movss dword [rbp - 0x15], xmm0
cvtdq2ps xmm3, xmm3
addss xmm1, xmm2
addss xmm3, xmm2
movss dword [rbp - 0xd], xmm1
movss dword [rbp - 0x19], xmm3
movss dword [rbp - 0x11], xmm3
movups xmm0, xmmword [rbp - 0x19]
movdqu xmmword [rbp - 0x19], xmm0
mov rax, qword [rcx]
call qword [rax + 0x50]
test eax, eax
js 0x14003141f
lea rbx, [rdi + 0x98]
mov rax, qword [rbx + 8]
lea r9, [rbp - 0x21]
mov rsi, qword [rax]
lea rax, [rbp + 0x5f]
mov rdx, rsi
mov qword [rsp + 0x20], rax
mov r14, qword [rsi + 8]
mov r8, r14
call fcn.140032950
mov rdx, rax
movabs rcx, 0x7fffffffffffffe
mov rax, qword [rbx + 0x10]
sub rcx, rax
cmp rcx, 1
jb 0x1400314b7
inc rax
mov rcx, rbx
mov qword [rbx + 0x10], rax
mov qword [rsi + 8], rdx
mov qword [r14], rdx
lea rdx, [rbp - 0x19]
mov r9, qword [rbx + 8]
mov r9, qword [r9]
lea r8, [r9 + 0x10]
call fcn.140032700
mov rcx, qword [rbp - 0x31]
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140031477
mov rcx, qword [rax + 0x18]
movd xmm6, dword [rbp + 0x7b]
mov qword [rbp + 0x5f], rcx
movd xmm7, ebx
mov rax, qword [rcx]
cvtdq2ps xmm7, xmm7
cvtdq2ps xmm6, xmm6
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movq rdx, xmm0
call qword [rax + 0x40]
movd xmm1, dword [rbp + 0x83]
movaps xmm0, xmm7
mov rcx, qword [rbp + 0x5f]
cvtdq2ps xmm1, xmm1
mov rax, qword [rcx]
addss xmm1, xmm6
unpcklps xmm0, xmm1
movq rdx, xmm0
call qword [rax + 0x48]
mov rcx, qword [rbp + 0x5f]
test rcx, rcx
je 0x140031492
mov rax, qword [rcx]
movss xmm1, dword [rdi + 0x104]
call qword [rax + 0x20]
mov rcx, qword [rbp + 0x5f]
lea r11, [rsp + 0xa0]
mov rax, rcx
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
lea rcx, str.list_T__too_long
call fcn.140055f70
int3