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

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rsi, r9
mov rbx, r8
mov r15, rdx
mov rbp, rcx
mov r11, qword [r9 + 0x10]
mov r8, r9
mov r10, qword [r9 + 0x18]
cmp r10, 7
jbe 0x14003d3e9
mov r8, qword [r9]
movabs rdx, 0xcbf29ce484222325
lea r9, [r11 + r11]
xor r12d, r12d
mov ecx, r12d
test r9, r9
je 0x14003d424
movabs rdi, 0x100000001b3
nop dword [rax]
movzx eax, byte [rcx + r8]
xor rdx, rax
imul rdx, rdi
inc rcx
cmp rcx, r9
jb 0x14003d410
movsxd rax, dword [rsi + 0x20]
xor rax, rdx
mov qword [rsp + 0x80], rax
lea rdi, [rbp + 8]
cmp rbx, qword [rdi]
je 0x14003d4ae
mov rcx, rsi
cmp r10, 7
jbe 0x14003d448
mov rcx, qword [rsi]
mov rdx, qword [rbx + 0x20]
lea r8, [rbx + 0x10]
cmp qword [rbx + 0x28], 7
jbe 0x14003d45b
mov r8, qword [rbx + 0x10]
cmp rdx, r11
jne 0x14003d4aa
test rdx, rdx
je 0x14003d484
sub r8, rcx
nop dword [rax + rax]
movzx eax, word [rcx + r8]
cmp ax, word [rcx]
jne 0x14003d4a2
add rcx, 2
sub rdx, 1
jne 0x14003d470
mov eax, dword [rsi + 0x20]
cmp dword [rbx + 0x30], eax
jne 0x14003d4a2
mov r14, qword [rbx]
mov qword [rsp + 0x20], r14
mov rax, rbx
mov qword [rsp + 0x28], rbx
lea rdi, [rbp + 8]
jmp 0x14003d4cb
mov rax, qword [rsp + 0x80]
lea rdi, [rbp + 8]
mov r9, rax
mov r8, rsi
lea rdx, [rsp + 0x20]
mov rcx, rbp
call fcn.140026ac0
mov rax, qword [rsp + 0x28]
mov r14, qword [rsp + 0x20]
test rax, rax
je 0x14003d4ee
mov qword [r15], rax
mov rax, r15
mov rbx, qword [rsp + 0x90]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
movabs rax, 0x38e38e38e38e38e
cmp qword [rbp + 0x10], rax
je 0x14003d7b9
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], r12
mov ecx, 0x48
call fcn.14006c698
mov rdi, rax
mov qword [rsp + 0x38], rax
xorps xmm0, xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rax + 0x20], r12
mov qword [rax + 0x28], r12
mov r15, qword [rsi + 0x10]
mov r12, rsi
cmp qword [rsi + 0x18], 7
jbe 0x14003d53e
mov r12, qword [rsi]
movabs r13, 0x7ffffffffffffffe
cmp r15, r13
ja 0x14003d7c6
mov qword [rax + 0x28], 7
cmp r15, 7
ja 0x14003d571
mov qword [rax + 0x20], r15
movups xmm0, xmmword [r12]
movups xmmword [rax + 0x10], xmm0
jmp 0x14003d61b
mov rax, r15
or rax, 7
cmp rax, r13
jbe 0x14003d58d
movabs rax, 0x7fffffffffffffff
lea rcx, [rax + rax]
jmp 0x14003d5bf
mov ecx, 0xa
cmp rax, rcx
cmovb rax, rcx
mov r13, rax
lea rcx, [rax + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x14003d7b3
add rcx, rcx
cmp rcx, 0x1000
jb 0x14003d5ee
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14003d7b3
mov rcx, rax
call fcn.14006c698
mov rcx, rax
test rax, rax
je 0x14003d7ad
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14003d5fc
test rcx, rcx
je 0x14003d5fa
call fcn.14006c698
jmp 0x14003d5fc
xor eax, eax
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x20], r15
mov qword [rdi + 0x28], r13
lea r8, [r15*2 + 2]
mov rdx, r12
mov rcx, rax
call fcn.1400982e0
mov eax, dword [rsi + 0x20]
mov dword [rdi + 0x30], eax
lea rcx, [rdi + 0x38]
xor eax, eax
mov qword [rcx], rax
mov qword [rcx + 8], rax
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x14003d645
lock inc dword [rax + 8]
mov r14, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x38]
mov rax, qword [rsi + 0x28]
mov qword [rcx], rax
mov rax, qword [rsi + 0x30]
mov qword [rcx + 8], rax
mov rcx, qword [rbp + 0x10]
add rcx, 1
xorps xmm0, xmm0
js 0x14003d668
cvtsi2ss xmm0, rcx
jmp 0x14003d67d
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [rbp + 0x38]
xorps xmm1, xmm1
test rcx, rcx
js 0x14003d690
cvtsi2ss xmm1, rcx
jmp 0x14003d6a5
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 0x14003d74a
mov rcx, rbp
call fcn.140027014
cmp rbx, qword [rbp + 8]
je 0x14003d727
lea rcx, [rdi + 0x10]
cmp qword [rdi + 0x28], 7
jbe 0x14003d6d5
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rbx + 0x20]
lea r8, [rbx + 0x10]
cmp qword [rbx + 0x28], 7
jbe 0x14003d6e8
mov r8, qword [rbx + 0x10]
cmp rdx, qword [rdi + 0x20]
jne 0x14003d727
test rdx, rdx
je 0x14003d70a
sub r8, rcx
movzx eax, word [r8 + rcx]
cmp ax, word [rcx]
jne 0x14003d727
add rcx, 2
sub rdx, 1
jne 0x14003d6f6
mov eax, dword [rdi + 0x30]
cmp dword [rbx + 0x30], eax
jne 0x14003d727
mov rax, qword [rbx]
mov qword [rsp + 0x30], rax
mov rbx, qword [rsp + 0x80]
mov r14, rax
jmp 0x14003d752
mov rbx, qword [rsp + 0x80]
mov r9, rbx
lea r8, [rdi + 0x10]
lea rdx, [rsp + 0x30]
mov rcx, rbp
call fcn.140026ac0
mov r14, qword [rsp + 0x30]
jmp 0x14003d752
mov rbx, qword [rsp + 0x80]
mov rdx, qword [r14 + 8]
inc qword [rbp + 0x10]
mov qword [rdi], r14
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [r14 + 8], rdi
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 [rbp + 8]
jne 0x14003d786
mov qword [rcx + rax*8], rdi
jmp 0x14003d798
cmp r8, r14
jne 0x14003d791
mov qword [rcx + rax*8], rdi
jmp 0x14003d79d
cmp qword [rcx + rax*8 + 8], rdx
jne 0x14003d79d
mov qword [rcx + rax*8 + 8], rdi
mov rax, qword [rsp + 0x88]
mov qword [rax], rdi
jmp 0x14003d4d6
call fcn.14007da9c
int3
call fcn.140001150
nop
lea rcx, str.unordered_map_set_too_long
call fcn.14006aaac
nop
call fcn.1400012b0
int3