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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x58
lea rbp, [rsp + 0x50]
mov qword [rbp], 0xfffffffffffffffe
mov r14, r8
mov rdi, rdx
mov rbx, rcx
mov r15, qword [r8 + 0x10]
cmp qword [r8 + 0x18], 0x10
mov r12, r8
jb 0x180075d97
mov r12, qword [r14]
test r15, r15
je 0x180075de2
movabs rdx, 0xcbf29ce484222325
movabs rax, 0x100000001b3
xor ecx, ecx
nop word cs:[rax + rax]
movzx r8d, byte [r12 + rcx]
xor r8, rdx
imul r8, rax
mov r9, rcx
inc r9
mov rcx, r9
mov r13, r8
mov rdx, r8
cmp r15, r9
jne 0x180075dc0
jmp 0x180075dec
movabs r13, 0xcbf29ce484222325
mov qword [rbp - 0x10], rdi
mov rcx, qword [rbx + 0x30]
and rcx, r13
mov rax, qword [rbx + 0x18]
mov rdx, rcx
shl rdx, 4
mov rdx, qword [rax + rdx + 8]
cmp rdx, qword [rbx + 8]
je 0x180075e64
mov qword [rbp - 8], r13
mov r13, rdi
add rcx, rcx
mov rsi, qword [rax + rcx*8]
mov rdi, rdx
cmp r15, qword [rdi + 0x20]
jne 0x180075e53
nop word cs:[rax + rax]
cmp qword [rdi + 0x28], 0x10
jb 0x180075e40
mov rdx, qword [rdi + 0x10]
jmp 0x180075e44
lea rdx, [rdi + 0x10]
mov rcx, r12
mov r8, r15
call fcn.1800a80a0
test eax, eax
je 0x180075e69
cmp rdi, rsi
je 0x180075e7f
mov rdi, qword [rdi + 8]
cmp r15, qword [rdi + 0x20]
je 0x180075e30
jmp 0x180075e53
mov rsi, rdx
jmp 0x180075e86
test rdi, rdi
je 0x180075e7c
mov qword [r13], rdi
mov byte [r13 + 8], 0
jmp 0x1800760e7
mov rsi, qword [rdi]
mov rdi, r13
mov r13, qword [rbp - 8]
movabs rax, 0x492492492492492
cmp qword [rbx + 0x10], rax
je 0x1800760fc
lea rax, [rbx + 8]
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x18], 0
nop
mov ecx, 0x38
call fcn.18007ca5c
nop
mov r12, rax
mov qword [rbp - 0x20], rax
mov r15, rax
add r15, 0x10
mov qword [rbp - 0x18], rax
nop
mov rcx, r15
mov rdx, r14
call fcn.18006fbb0
nop
mov rax, qword [r14 + 0x20]
mov qword [r12 + 0x30], rax
mov rax, qword [rbx + 0x10]
inc rax
js 0x180075eee
cvtsi2ss xmm1, rax
jmp 0x180075f06
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
movaps xmm1, xmm0
movss xmm0, dword [rbx]
mov rax, qword [rbx + 0x38]
test rax, rax
js 0x180075f1a
cvtsi2ss xmm2, rax
jmp 0x180075f31
mov rcx, rax
shr rcx, 1
mov edx, eax
and edx, 1
or rdx, rcx
cvtsi2ss xmm2, rdx
addss xmm2, xmm2
movaps xmm3, xmm1
divss xmm3, xmm2
ucomiss xmm3, xmm0
jbe 0x180076030
divss xmm1, xmm0
xorps xmm0, xmm0
roundss xmm0, xmm1, 0xa
cvttss2si rcx, xmm0
mov rdx, rcx
subss xmm0, dword [0x1800b5000]
sar rdx, 0x3f
cvttss2si r8, xmm0
and r8, rdx
or r8, rcx
cmp r8, 9
mov ecx, 8
cmovae rcx, r8
cmp rax, rcx
jae 0x180075f9a
lea rdx, [rax*8]
cmp rdx, rcx
cmovb rdx, rcx
cmp rax, 0x200
cmovae rdx, rcx
jmp 0x180075f9d
mov rdx, rax
nop
mov rcx, rbx
call fcn.1800761b0
nop
mov rdx, qword [rbx + 0x30]
and rdx, r13
mov rcx, qword [rbx + 0x18]
mov rax, rdx
shl rax, 4
mov rax, qword [rcx + rax + 8]
cmp rax, qword [rbx + 8]
je 0x180076024
mov qword [rbp - 8], rdi
add rdx, rdx
cmp qword [r12 + 0x28], 0x10
jb 0x180075fd8
mov r15, qword [r12 + 0x10]
mov r14, r15
mov rsi, qword [rcx + rdx*8]
mov r15, qword [r12 + 0x20]
mov rdi, rax
cmp r15, qword [rdi + 0x20]
jne 0x180076013
nop dword [rax]
cmp qword [rdi + 0x28], 0x10
jb 0x180076000
mov rdx, qword [rdi + 0x10]
jmp 0x180076004
lea rdx, [rdi + 0x10]
mov rcx, r14
mov r8, r15
call fcn.1800a80a0
test eax, eax
je 0x180076029
cmp rdi, rsi
je 0x18007602c
mov rdi, qword [rdi + 8]
cmp r15, qword [rdi + 0x20]
je 0x180075ff0
jmp 0x180076013
mov rsi, rax
jmp 0x180076030
mov rsi, qword [rdi]
mov rdi, qword [rbp - 8]
mov qword [rbp - 0x20], 0
mov rax, qword [rsi + 8]
inc qword [rbx + 0x10]
mov qword [r12], rsi
mov qword [r12 + 8], rax
mov qword [rax], r12
mov qword [rsi + 8], r12
and r13, qword [rbx + 0x30]
mov r9, qword [rbx + 0x18]
shl r13, 4
lea r8, [r9 + r13]
lea rdx, [r9 + r13]
add rdx, 8
mov r9, qword [r9 + r13]
cmp r9, qword [rbx + 8]
je 0x180076081
cmp r9, rsi
je 0x180076087
mov r8, rdx
cmp qword [rdx], rax
jne 0x18007608a
jmp 0x180076087
mov qword [r8], r12
mov r8, rdx
mov qword [r8], r12
mov qword [rdi], r12
mov byte [rdi + 8], 1
mov rdi, qword [rbp - 0x20]
test rdi, rdi
je 0x1800760e7
mov rax, qword [rdi + 0x28]
cmp rax, 0x10
jb 0x1800760da
mov rdx, qword [rdi + 0x10]
lea rcx, [rax + 1]
cmp rcx, 0x1000
jb 0x1800760cc
mov rcx, qword [rdx - 8]
add rdx, 0xfffffffffffffff8
sub rdx, rcx
cmp rdx, 0x20
jae 0x180076108
add rax, 0x28
jmp 0x1800760d2
mov rax, rcx
mov rcx, rdx
mov rdx, rax
call fcn.18007caa0
mov edx, 0x38
mov rcx, rdi
call fcn.18007caa0
mov rax, qword [rbp - 0x10]
add rsp, 0x58
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rcx, str.unordered_map_set_too_long
call fcn.18007ce78
call fcn.18008eb10
int3