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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x90
mov rax, qword [0x14011e7d8]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov dword [rbp - 0x45], r8d
movsxd rax, edx
mov dword [rbp - 0x49], eax
mov rbx, rcx
mov qword [rbp - 0x41], rcx
cmp eax, 0xffffffff
je 0x1400b48e3
cmp r8d, 0xffffffff
je 0x1400b48e3
mov r9, qword [rcx + 8]
lea rdx, [rax + rax*2]
movsxd rax, r8d
lea rcx, [rax + rax*2]
mov r8, qword [r9 + rcx*8 + 0x10]
add r8, qword [r9 + rdx*8 + 0x10]
mov rdx, qword [r9 + rdx*8 + 8]
xor edi, edi
mov qword [rbp - 1], rdi
mov qword [rbp + 0xf], rdi
mov qword [rbp + 0x17], 0xf
mov byte [rbp - 1], dil
lea rcx, [rbp - 1]
call fcn.140030ea0
nop
mov r13, qword [rbx]
lea r8, [rbp - 1]
mov rsi, qword [rbp - 1]
mov r14, qword [rbp + 0x17]
cmp r14, 0x10
cmovae r8, rsi
movabs rcx, 0xcbf29ce484222325
mov edx, edi
mov rdi, qword [rbp + 0xf]
test rdi, rdi
je 0x1400b4584
movabs r9, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r9
inc rdx
cmp rdx, rdi
jb 0x1400b4570
mov rax, qword [r13 + 0x38]
and rax, rcx
add rax, rax
mov r15, qword [r13 + 0x20]
mov rbx, qword [r15 + rax*8 + 8]
mov r12, qword [r13 + 0x10]
cmp rbx, r12
je 0x1400b48a9
mov r15, qword [r15 + rax*8]
nop dword [rax + rax]
lea rdx, [rbx + 0x10]
cmp qword [rbx + 0x28], 0x10
jb 0x1400b45bf
mov rdx, qword [rbx + 0x10]
lea rcx, [rbp - 1]
cmp r14, 0x10
cmovae rcx, rsi
cmp rdi, qword [rbx + 0x20]
jne 0x1400b45dd
mov r8, rdi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400b45ec
cmp rbx, r15
je 0x1400b48a9
mov rbx, qword [rbx + 8]
jmp 0x1400b45b0
test rbx, rbx
je 0x1400b48a9
cmp rbx, r12
je 0x1400b48a9
mov r8, qword [r13 + 0x48]
mov rcx, qword [r13 + 0x50]
sub rcx, r8
movabs rax, 0x6666666666666667
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, dword [rbx + 0x30]
cmp rax, rdx
jae 0x1400b48a9
lea rax, [rax + rax*4]
mov ecx, dword [rbp - 0x49]
mov dword [rbp - 0x39], ecx
mov ecx, dword [rbp - 0x45]
mov dword [rbp - 0x35], ecx
vmovss xmm0, dword [r8 + rax*8 + 0x20]
vmovss dword [rbp - 0x31], xmm0
mov qword [rbp - 0x29], rdi
mov rdi, qword [rbp - 0x41]
mov rdx, qword [rdi + 0x28]
cmp rdx, qword [rdi + 0x30]
je 0x1400b4679
vmovups xmm0, xmmword [rbp - 0x39]
vmovups xmmword [rdx], xmm0
vmovsd xmm1, qword [rbp - 0x29]
vmovsd qword [rdx + 0x10], xmm1
add qword [rdi + 0x28], 0x18
jmp 0x1400b4686
lea r8, [rbp - 0x39]
lea rcx, [rdi + 0x20]
call fcn.140064b00
mov r9, qword [rdi + 0x28]
mov r8, qword [rdi + 0x20]
mov rcx, r9
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, 2
jl 0x1400b4730
vmovups xmm3, xmmword [r9 - 0x18]
vmovups xmmword [rbp - 0x19], xmm3
vmovsd xmm4, qword [r9 - 8]
lea rax, [rdx - 1]
vmovss xmm2, dword [rbp - 0x11]
mov r9d, dword [rbp - 0x19]
lea rcx, [rax - 1]
sar rcx, 1
lea rdx, [rcx + rcx*2]
vmovss xmm0, dword [r8 + rdx*8 + 8]
vcomiss xmm2, xmm0
ja 0x1400b46f9
vucomiss xmm0, xmm2
jp 0x1400b471f
jne 0x1400b471f
cmp dword [r8 + rdx*8], r9d
jle 0x1400b471f
lea rax, [rax + rax*2]
vmovups xmm0, xmmword [r8 + rdx*8]
vmovups xmmword [r8 + rax*8], xmm0
vmovsd xmm1, qword [r8 + rdx*8 + 0x10]
vmovsd qword [r8 + rax*8 + 0x10], xmm1
mov rax, rcx
test rcx, rcx
jg 0x1400b46d3
lea rax, [rax + rax*2]
vmovups xmmword [r8 + rax*8], xmm3
vmovsd qword [r8 + rax*8 + 0x10], xmm4
add rdi, 0x40
mov qword [rbp - 0x41], rdi
mov r13, qword [rdi]
mov rbx, qword [r13 + 8]
mov qword [rbp - 0x19], rbx
mov dword [rbp - 0x11], 0
mov r14, r13
mov r15, qword [rbp + 0x17]
mov rsi, qword [rbp + 0xf]
mov r12, qword [rbp - 1]
cmp byte [rbx + 0x19], 0
jne 0x1400b47d5
nop
mov qword [rbp - 0x19], rbx
lea rdx, [rbp - 1]
cmp r15, 0x10
cmovae rdx, r12
lea rcx, [rbx + 0x20]
cmp qword [rbx + 0x38], 0x10
jb 0x1400b477f
mov rcx, qword [rbx + 0x20]
mov rdi, qword [rbx + 0x30]
mov r8, rdi
cmp rsi, rdi
cmovb r8, rsi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400b47aa
cmp rdi, rsi
jae 0x1400b47a2
mov eax, 0xffffffff
jmp 0x1400b47aa
xor eax, eax
cmp rdi, rsi
seta al
shr eax, 0x1f
test al, al
je 0x1400b47be
mov dword [rbp - 0x11], 0
mov rbx, qword [rbx + 0x10]
jmp 0x1400b47cb
mov dword [rbp - 0x11], 1
mov r14, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x1400b4760
mov rdi, qword [rbp - 0x41]
cmp byte [r14 + 0x19], 0
jne 0x1400b4829
lea rdx, [r14 + 0x20]
cmp qword [r14 + 0x38], 0x10
jb 0x1400b47eb
mov rdx, qword [r14 + 0x20]
lea rcx, [rbp - 1]
cmp r15, 0x10
cmovae rcx, r12
mov rbx, qword [r14 + 0x30]
mov r8, rsi
cmp rbx, rsi
cmovb r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400b4822
cmp rsi, rbx
jae 0x1400b481a
mov eax, 0xffffffff
jmp 0x1400b4822
xor eax, eax
cmp rsi, rbx
seta al
shr eax, 0x1f
test al, al
je 0x1400b4893
movabs rax, 0x38e38e38e38e38e
cmp qword [rdi + 8], rax
je 0x1400b490a
mov qword [rbp - 0x39], rdi
xor esi, esi
mov qword [rbp - 0x31], rsi
lea ecx, [rsi + 0x48]
call fcn.1400eae84
mov rdi, rax
mov qword [rbp - 0x31], rax
lea rdx, [rbp - 1]
lea rcx, [rax + 0x20]
call fcn.14002af50
mov qword [rdi + 0x40], rsi
mov qword [rdi], r13
mov qword [rdi + 8], r13
mov qword [rdi + 0x10], r13
mov word [rdi + 0x18], si
vmovups xmm0, xmmword [rbp - 0x19]
vmovups xmmword [rbp - 0x39], xmm0
mov r8, rdi
lea rdx, [rbp - 0x39]
mov rcx, qword [rbp - 0x41]
call fcn.140073870
mov r14, rax
mov eax, dword [rbp - 0x49]
mov dword [r14 + 0x40], eax
mov eax, dword [rbp - 0x45]
mov dword [r14 + 0x44], eax
mov r14, qword [rbp + 0x17]
mov rsi, qword [rbp - 1]
cmp r14, 0x10
jb 0x1400b48e3
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x1400b48db
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400b48db
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rsi
call fcn.1400eaec0
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.1400eafe0
mov rbx, qword [rsp + 0xe8]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400746f0
nop
mov r10, qword [rcx + 0x38]
mov r8, qword [r10]
test r8, r8
je 0x1400b496f
mov rax, qword [rcx + 0x50]
movsxd rdx, dword [rax]
add rdx, r8
cmp r8, rdx
jae 0x1400b4930
movzx eax, byte [r8]
ret
mov rax, qword [rcx + 0x40]
mov r9, qword [rax]
test r9, r9
je 0x1400b496f
test byte [rcx + 0x70], 4
jne 0x1400b496f
mov rdx, qword [rcx + 0x68]
cmp rdx, r9
cmovb rdx, r9
cmp rdx, r8
jbe 0x1400b496f
mov qword [rcx + 0x68], rdx
mov rax, qword [r10]
mov qword [r10], rax
sub edx, eax
mov rax, qword [rcx + 0x50]
mov dword [rax], edx
mov rax, qword [rcx + 0x38]
mov rcx, qword [rax]
movzx eax, byte [rcx]
ret
mov eax, 0xffffffff
ret