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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x48
mov r14, r9
mov rbx, r8
mov r12, rdx
mov rbp, rcx
lea r13, [rcx + 8]
mov qword [rsp + 0x30], r13
xor esi, esi
mov qword [rsp + 0x38], rsi
lea ecx, [rsi + 0x50]
call fcn.1402695b8
mov r15, rax
mov qword [rsp + 0x38], rax
lea rdi, [rax + 0x10]
mov qword [rsp + 0x20], rdi
mov rdx, qword [rbx]
mov qword [rdi], rsi
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], 7
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp word [rdx + r8*2], si
jne 0x1400891b2
mov rcx, rdi
call fcn.140025e70
nop
mov rdx, qword [r14]
xor r14d, r14d
mov qword [rdi + 0x20], r14
mov qword [rdi + 0x30], r14
mov qword [rdi + 0x38], 7
nop dword [rax + rax]
inc rbx
cmp word [rdx + rbx*2], r14w
jne 0x1400891e0
mov r8, rbx
lea rcx, [rdi + 0x20]
call fcn.140025e70
nop
mov rdx, qword [rdi + 0x10]
mov r8, rdi
cmp qword [rdi + 0x18], 8
jb 0x140089208
mov r8, qword [rdi]
movabs rbx, 0xcbf29ce484222325
add rdx, rdx
mov rcx, r14
je 0x140089244
movabs r9, 0x100000001b3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + r8]
xor rbx, rax
imul rbx, r9
inc rcx
cmp rcx, rdx
jb 0x140089230
mov r9, rbx
mov r8, rdi
lea rdx, [rsp + 0x20]
mov rcx, rbp
call fcn.140034130
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x140089297
mov qword [r12], rax
mov byte [r12 + 8], 0
test r15, r15
je 0x14008944e
lea rcx, [rdi + 0x20]
call fcn.140025de0
mov rcx, rdi
call fcn.140025de0
mov edx, 0x50
mov rcx, r15
call fcn.140269844
jmp 0x14008944e
mov r8, qword [rbp + 0x10]
movabs rax, 0x333333333333333
cmp r8, rax
je 0x140089462
lea rdx, [r8 + 1]
xorps xmm0, xmm0
test rdx, rdx
js 0x1400892c1
cvtsi2ss xmm0, rdx
jmp 0x1400892d9
mov rcx, rdx
shr rcx, 1
mov rax, rdx
and eax, 1
or rcx, rax
cvtsi2ss xmm0, rcx
addss xmm0, xmm0
mov rcx, qword [rbp + 0x38]
xorps xmm1, xmm1
test rcx, rcx
js 0x1400892ec
cvtsi2ss xmm1, rcx
jmp 0x140089301
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [rbp]
seta al
test al, al
je 0x1400893f0
mov rcx, rbp
call fcn.14003d540
mov rdx, rax
mov rcx, rbp
call fcn.140033d10
mov rax, qword [rbp + 0x30]
and rax, rbx
add rax, rax
mov rdx, qword [rbp + 0x18]
mov r10, qword [rdx + rax*8 + 8]
mov rcx, qword [r13]
cmp r10, rcx
jne 0x140089352
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], r14
jmp 0x1400893e1
mov rsi, qword [rdx + rax*8]
mov r14, qword [rdi + 0x18]
mov r11, qword [rdi + 0x10]
nop
lea rax, [r10 + 0x10]
mov rcx, qword [rax + 0x10]
cmp qword [rax + 0x18], 8
jb 0x140089372
mov rax, qword [rax]
mov r9, rdi
cmp r14, 8
jb 0x14008937e
mov r9, qword [rdi]
cmp r11, rcx
jne 0x1400893b9
mov r8, r11
test r11, r11
je 0x1400893c4
movzx ecx, word [r9]
movzx edx, word [rax]
cmp cx, dx
jb 0x1400893b9
sub r9, rax
cmp cx, dx
ja 0x1400893b9
cmp r8, 1
je 0x1400893c4
dec r8
add rax, 2
movzx ecx, word [rax + r9]
movzx edx, word [rax]
cmp cx, dx
jae 0x14008939d
cmp r10, rsi
je 0x1400893d3
mov r10, qword [r10 + 8]
jmp 0x140089360
mov rax, qword [r10]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], r10
jmp 0x1400893e1
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x28], 0
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
mov r8, qword [rbp + 0x10]
mov rdx, qword [rsp + 0x20]
mov r9, qword [rdx + 8]
lea rax, [r8 + 1]
mov qword [rbp + 0x10], rax
mov qword [r15], rdx
mov qword [r15 + 8], r9
mov qword [r9], r15
mov qword [rdx + 8], r15
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp + 0x30]
and rax, rbx
add rax, rax
mov r8, qword [rcx + rax*8]
cmp r8, qword [r13]
jne 0x14008942d
mov qword [rcx + rax*8], r15
jmp 0x14008943f
cmp r8, rdx
jne 0x140089438
mov qword [rcx + rax*8], r15
jmp 0x140089444
cmp qword [rcx + rax*8 + 8], r9
jne 0x140089444
mov qword [rcx + rax*8 + 8], r15
mov qword [r12], r15
mov byte [r12 + 8], 1
mov rax, r12
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
lea rcx, str.unordered_map_set_too_long
call fcn.140245e14
int3