Function at 0x1400380d0
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
sub rsp, 0x60
mov rsi, r8
mov qword [rsp + 0x40], rdx
mov r14, rcx
mov qword [rsp + 0x20], rcx
mov rbx, qword [r8 + 0x10]
mov rdx, r8
mov r12, qword [r8 + 0x18]
cmp r12, 0xf
jbe 0x140038108
mov rdx, qword [r8]
movabs rbp, 0xcbf29ce484222325
xor ecx, ecx
test rbx, rbx
je 0x140038143
movabs r8, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
xor rbp, rax
imul rbp, r8
inc rcx
cmp rcx, rbx
jb 0x140038130
mov rax, qword [r14 + 0x30]
and rax, rbp
add rax, rax
mov r15, qword [r14 + 0x18]
mov rdi, qword [r15 + rax*8 + 8]
mov r13, qword [r14 + 8]
cmp rdi, r13
jne 0x140038167
mov rdi, r13
mov r15, r13
jmp 0x1400381c1
mov r15, qword [r15 + rax*8]
nop dword [rax + rax]
lea rdx, [rdi + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x140038182
mov rdx, qword [rdx]
mov rcx, rsi
cmp r12, 0xf
jbe 0x14003818e
mov rcx, qword [rsi]
cmp rbx, rax
jne 0x14003819f
mov r8, rbx
call fcn.1400d5c40
test eax, eax
je 0x1400381aa
cmp rdi, r15
je 0x1400381bb
mov rdi, qword [rdi + 8]
jmp 0x140038170
mov rax, qword [rsp + 0x40]
mov qword [rax], rdi
mov byte [rax + 8], 0
jmp 0x140038453
mov r13, rdi
mov r15, rdi
movabs rax, 0x147ae147ae147ae
cmp qword [r14 + 0x10], rax
je 0x14003846b
lea rax, [r14 + 8]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], 0
mov ecx, 0xc8
call fcn.1400a8b80
mov r12, rax
mov qword [rsp + 0x50], rax
lea r14, [rax + 0x10]
mov qword [rsp + 0x58], r14
mov rdx, rsi
mov rcx, r14
call fcn.1400165e0
nop
lea rbx, [r14 + 0x20]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx + 0x20], xmm0
movups xmmword [rbx + 0x30], xmm0
movups xmmword [rbx + 0x40], xmm0
movups xmmword [rbx + 0x50], xmm0
movups xmmword [rbx + 0x60], xmm0
movups xmmword [rbx + 0x70], xmm0
movups xmmword [rbx + 0x80], xmm0
mov qword [rbx + 0x90], rax
mov qword [rsp + 0x30], rbx
xor esi, esi
mov qword [rbx], rsi
mov qword [rbx + 8], rsi
mov qword [rbx + 0x10], rsi
lea rcx, [rbx + 0x18]
call fcn.14002e000
mov qword [rbx + 0x58], rsi
mov qword [rbx + 0x60], rsi
mov qword [rbx + 0x68], rsi
mov qword [rbx + 0x80], rsi
mov qword [rbx + 0x88], rsi
mov qword [rbx + 0x90], rsi
mov rsi, qword [rsp + 0x20]
mov rcx, qword [rsi + 0x10]
movss xmm3, dword [rsi]
add rcx, 1
xorps xmm0, xmm0
js 0x14003829d
cvtsi2ss xmm0, rcx
jmp 0x1400382b2
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rbx, qword [rsi + 0x38]
xorps xmm2, xmm2
test rbx, rbx
js 0x1400382c5
cvtsi2ss xmm2, rbx
jmp 0x1400382dd
mov rcx, rbx
shr rcx, 1
mov rax, rbx
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, xmm3
seta al
test al, al
je 0x1400383fa
divss xmm0, xmm3
call fcn.1400d2420
xor ecx, ecx
movss xmm1, dword [0x1400f7154]
comiss xmm0, xmm1
jb 0x140038320
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x140038320
movabs rax, 0x8000000000000000
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x140038352
cmp rbx, 0x200
jae 0x14003834f
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x140038352
mov rbx, rcx
mov rdx, rbx
mov rcx, rsi
call fcn.14002e080
mov rax, qword [rsi + 0x30]
and rax, rbp
add rax, rax
mov r15, qword [rsi + 0x18]
mov rbx, qword [r15 + rax*8 + 8]
mov rdi, qword [rsi + 8]
cmp rbx, rdi
jne 0x140038383
mov qword [rsp + 0x30], rdi
mov r15, rdi
jmp 0x1400383ec
mov r15, qword [r15 + rax*8]
mov r13, qword [r14 + 0x18]
mov rsi, qword [r14 + 0x10]
nop
mov rdi, rbx
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x1400383a5
mov rdx, qword [rdx]
mov rcx, r14
cmp r13, 0xf
jbe 0x1400383b1
mov rcx, qword [r14]
cmp rsi, rax
jne 0x1400383c2
mov r8, rsi
call fcn.1400d5c40
test eax, eax
je 0x1400383cd
cmp rbx, r15
je 0x1400383df
mov rbx, qword [rbx + 8]
jmp 0x140038390
mov rdi, qword [rbx]
mov qword [rsp + 0x30], rdi
mov r15, rdi
mov rsi, qword [rsp + 0x20]
jmp 0x1400383f5
mov qword [rsp + 0x30], rbx
mov r15, rbx
mov rsi, qword [rsp + 0x20]
mov qword [rsp + 0x38], 0
mov r13, qword [rsp + 0x30]
mov rdx, qword [rdi + 8]
inc qword [rsi + 0x10]
mov qword [r12], r13
mov qword [r12 + 8], rdx
mov qword [rdx], r12
mov qword [rdi + 8], r12
mov rcx, qword [rsi + 0x18]
mov rax, qword [rsi + 0x30]
and rax, rbp
add rax, rax
mov r8, qword [rcx + rax*8]
cmp r8, qword [rsi + 8]
jne 0x140038430
mov qword [rcx + rax*8], r12
jmp 0x140038442
cmp r8, r15
jne 0x14003843b
mov qword [rcx + rax*8], r12
jmp 0x140038447
cmp qword [rcx + rax*8 + 8], rdx
jne 0x140038447
mov qword [rcx + rax*8 + 8], r12
mov rax, qword [rsp + 0x40]
mov qword [rax], r12
mov byte [rax + 8], 1
mov rbx, qword [rsp + 0xb8]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rcx, str.unordered_map_set_too_long
call fcn.1400a75d8
int3