Function at 0x1400bc7a0
Capabilities:
Encode data using base64
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, 0xd8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x40], xmm6
mov qword [rbp + 0x38], 0xfffffffffffffffe
mov esi, r8d
mov rbx, rdx
mov qword [rbp + 0x18], rcx
mov dword [rbp - 0x40], r8d
xorps xmm6, xmm6
movups xmmword [rbp - 0x3c], xmm6
movups xmmword [rbp - 0x30], xmm6
test r8d, r8d
je 0x1400bc80d
mov eax, esi
imul rdi, rax, 0xb8
cmp esi, 0x17
jb 0x1400bc813
lea rcx, [rdi + 0x27]
call fcn.1400cd3b4
mov rcx, rax
add rcx, 0x27
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
jmp 0x1400bc81e
xor ecx, ecx
xor edi, edi
jmp 0x1400bc82d
mov rcx, rdi
call fcn.1400cd3b4
mov rcx, rax
mov qword [rbp - 0x38], rcx
mov qword [rbp - 0x30], rcx
add rdi, rcx
mov qword [rbp - 0x28], rdi
movaps xmmword [rbp], xmm6
movaps xmmword [rbp - 0x10], xmm6
mov r12, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x1400bc843
mov rbx, qword [rbx]
test r12, r12
js 0x1400bd1fb
mov dword [rbp - 0x1c], esi
movabs rsi, 0x100000001b3
cmp r12, 0x10
mov qword [rbp + 0x30], rdi
mov qword [rbp + 0x20], rcx
jae 0x1400bc898
mov qword [rbp], r12
mov qword [rbp + 8], 0xf
movups xmm0, xmmword [rbx]
movaps xmmword [rbp - 0x10], xmm0
lea r13, [rbp - 0x10]
mov r14d, 0xf
test r12, r12
jne 0x1400bc8f8
movabs rdi, 0xcbf29ce484222325
jmp 0x1400bc994
mov rax, r12
or rax, 0xf
cmp rax, 0x17
mov r14d, 0x16
cmovae r14, rax
cmp r14, 0xfff
jb 0x1400bc8d0
lea rcx, [r14 + 0x28]
call fcn.1400cd3b4
mov r13, rax
add r13, 0x27
and r13, 0xffffffffffffffe0
mov qword [r13 - 8], rax
jmp 0x1400bc8dc
lea rcx, [r14 + 1]
call fcn.1400cd3b4
mov r13, rax
mov qword [rbp - 0x10], r13
mov qword [rbp], r12
mov qword [rbp + 8], r14
lea r8, [r12 + 1]
mov rcx, r13
mov rdx, rbx
call fcn.1401022e0
lea rcx, [r12 - 1]
mov eax, r12d
and eax, 3
cmp rcx, 3
jae 0x1400bc917
movabs rdi, 0xcbf29ce484222325
xor ecx, ecx
jmp 0x1400bc96d
mov rdx, r12
and rdx, 0xfffffffffffffffc
movabs rdi, 0xcbf29ce484222325
xor ecx, ecx
nop word [rax + rax]
movzx r8d, byte [r13 + rcx]
xor r8, rdi
imul r8, rsi
movzx r9d, byte [r13 + rcx + 1]
xor r9, r8
imul r9, rsi
movzx r8d, byte [r13 + rcx + 2]
xor r8, r9
imul r8, rsi
movzx edi, byte [r13 + rcx + 3]
xor rdi, r8
imul rdi, rsi
add rcx, 4
cmp rdx, rcx
jne 0x1400bc930
test rax, rax
je 0x1400bc994
add rcx, r13
xor edx, edx
nop word [rax + rax]
movzx r8d, byte [rcx + rdx]
xor rdi, r8
imul rdi, rsi
inc rdx
cmp rax, rdx
jne 0x1400bc980
mov r8, qword [rbp + 0x18]
mov rax, qword [r8 + 0x30]
and rax, rdi
mov rcx, qword [r8 + 0x18]
mov rdx, rax
shl rdx, 4
mov rdx, qword [rcx + rdx + 8]
cmp rdx, qword [r8 + 8]
je 0x1400bca0e
add rax, rax
mov rbx, qword [rcx + rax*8]
cmp r12, qword [rdx + 0x20]
jne 0x1400bc9fd
nop word cs:[rax + rax]
cmp qword [rdx + 0x28], 0x10
jb 0x1400bc9e0
mov r15, rdx
mov rdx, qword [rdx + 0x10]
jmp 0x1400bc9e7
mov r15, rdx
add rdx, 0x10
mov rcx, r13
mov r8, r12
call fcn.1401021e0
test eax, eax
mov rdx, r15
je 0x1400bcc09
cmp rdx, rbx
je 0x1400bca11
mov rdx, qword [rdx + 8]
cmp r12, qword [rdx + 0x20]
je 0x1400bc9d0
jmp 0x1400bc9fd
mov rbx, rdx
movabs rax, 0x333333333333333
mov r12, qword [rbp + 0x18]
cmp qword [r12 + 0x10], rax
je 0x1400bd200
lea rax, [r12 + 8]
mov qword [rbp - 0x50], rax
mov ecx, 0x50
call fcn.1400cd3b4
mov qword [rbp - 0x48], rax
movaps xmm0, xmmword [rbp - 0x10]
movaps xmm1, xmmword [rbp]
movups xmmword [rax + 0x20], xmm1
movups xmmword [rax + 0x10], xmm0
mov qword [rbp], 0
mov qword [rbp + 8], 0xf
mov byte [rbp - 0x10], 0
mov rcx, qword [rbp - 0x40]
mov qword [rax + 0x30], rcx
xorps xmm0, xmm0
lea rcx, [rbp - 0x38]
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], 0
mov rcx, qword [rbp + 0x20]
mov qword [rax + 0x38], rcx
mov qword [rax + 0x40], rcx
mov rcx, qword [rbp + 0x30]
mov qword [rax + 0x48], rcx
mov rdx, qword [r12 + 0x10]
inc rdx
js 0x1400bcaa7
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
jmp 0x1400bcabf
mov rcx, rdx
shr rcx, 1
and edx, 1
or rdx, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
addss xmm0, xmm0
movss xmm1, dword [r12]
mov r14, qword [r12 + 0x38]
test r14, r14
js 0x1400bcad6
cvtsi2ss xmm2, r14
jmp 0x1400bcaee
mov rdx, r14
shr rdx, 1
mov ecx, r14d
and ecx, 1
or rcx, rdx
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm3, xmm0
divss xmm3, xmm2
ucomiss xmm3, xmm1
mov qword [rbp + 0x28], rax
jbe 0x1400bd07b
divss xmm0, xmm1
call fcn.140102068
cvttss2si rax, xmm0
mov rcx, rax
subss xmm0, dword [0x140130b28]
cvttss2si rdx, xmm0
sar rcx, 0x3f
and rdx, rcx
or rdx, rax
cmp rdx, 9
mov eax, 8
cmovae rax, rdx
cmp r14, rax
jae 0x1400bcb59
lea rcx, [r14*8]
cmp rcx, rax
cmovb rcx, rax
cmp r14, 0x200
cmovae rcx, rax
mov r14, rcx
movabs rax, 0x800000000000001
cmp r14, rax
jae 0x1400bd211
dec r14
or r14, 1
bsr r14, r14
xor r14, 0xffffffffffffffc0
add r14, 0x41
mov r13d, 1
mov ecx, r14d
shl r13, cl
mov ebx, 2
shl rbx, cl
mov rax, qword [r12 + 8]
mov qword [rbp + 0x30], rax
mov rcx, qword [r12 + 0x18]
mov rax, qword [r12 + 0x20]
mov rdx, rax
sub rdx, rcx
mov r8, rdx
sar r8, 3
cmp r8, rbx
jae 0x1400bcc1f
mov rax, rbx
shr rax, 0x3d
jne 0x1400bd21d
mov eax, 0x10
mov ecx, r14d
shl rax, cl
cmp rbx, 0x200
jb 0x1400bcc42
movabs rcx, 0x1ffffffffffffffc
cmp rbx, rcx
jae 0x1400bd222
add rax, 0x27
mov rcx, rax
call fcn.1400cd3b4
mov r15, rax
add r15, 0x27
and r15, 0xffffffffffffffe0
mov qword [r15 - 8], rax
jmp 0x1400bcc4d
mov qword [rbp + 0x28], rdx
mov sil, 1
cmp r14, 0x10
jae 0x1400bd106
jmp 0x1400bd13b
cmp rcx, rax
mov r11, qword [rbp + 0x30]
je 0x1400bcd5c
add rdx, 0xfffffffffffffff8
cmp rdx, 0x18
jae 0x1400bcd0e
mov r8, rcx
jmp 0x1400bcd50
mov rcx, rax
call fcn.1400cd3b4
mov r15, rax
mov rcx, qword [r12 + 0x18]
mov rdx, qword [r12 + 0x28]
sub rdx, rcx
je 0x1400bcc86
cmp rdx, 0x1000
jb 0x1400bcc81
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x1400bd20c
add rdx, 0x27
mov rcx, rax
call fcn.1400cd44c
mov qword [r12 + 0x18], r15
lea rax, [r15 + rbx*8]
mov edx, 0x10
mov ecx, r14d
shl rdx, cl
mov qword [r12 + 0x20], rax
mov qword [r12 + 0x28], rax
add rdx, 0xfffffffffffffff8
cmp rdx, 0x18
jae 0x1400bccb7
mov rcx, r15
mov r11, qword [rbp + 0x30]
jmp 0x1400bcd00
shr rdx, 3
inc rdx
mov r8, rdx
and r8, 0xfffffffffffffffc
lea rcx, [r15 + r8*8]
mov r11, qword [rbp + 0x30]
movq xmm0, r11
pshufd xmm0, xmm0, 0x44
xor r9d, r9d
nop word [rax + rax]
movdqu xmmword [r15 + r9*8], xmm0
movdqu xmmword [r15 + r9*8 + 0x10], xmm0
add r9, 4
cmp r8, r9
jne 0x1400bcce0
cmp rdx, r8
je 0x1400bcd5c
nop dword [rax + rax]
mov qword [rcx], r11
add rcx, 8
cmp rcx, rax
jne 0x1400bcd00
jmp 0x1400bcd5c
shr rdx, 3
inc rdx
mov r9, rdx
and r9, 0xfffffffffffffffc
lea r8, [rcx + r9*8]
movq xmm0, r11
pshufd xmm0, xmm0, 0x44
xor r10d, r10d
nop dword [rax]
movdqu xmmword [rcx + r10*8], xmm0
movdqu xmmword [rcx + r10*8 + 0x10], xmm0
add r10, 4
cmp r9, r10
jne 0x1400bcd30
cmp rdx, r9
je 0x1400bcd5c
nop dword [rax + rax]
mov qword [r8], r11
add r8, 8
cmp r8, rax
jne 0x1400bcd50
lea r8, [r13 - 1]
mov qword [r12 + 0x30], r8
mov qword [r12 + 0x38], r13
mov rbx, qword [r12 + 8]
mov r10, qword [rbx]
cmp r10, r11
jne 0x1400bcd99
jmp 0x1400bcff7
mov qword [r11 + rcx*8], r10
mov qword [r11 + rdx*8], r10
mov r9, qword [rbp + 0x30]
mov r10, qword [rbp + 0x20]
cmp r10, r9
je 0x1400bcfed
cmp qword [r10 + 0x28], 0x10
jb 0x1400bcdb0
mov r14, qword [r10 + 0x10]
jmp 0x1400bcdb4
lea r14, [r10 + 0x10]
mov r15, qword [r10 + 0x20]
movabs r8, 0xcbf29ce484222325
test r15, r15
je 0x1400bce77
mov eax, r15d
and eax, 3
cmp r15, 4
jae 0x1400bcdf0
xor ecx, ecx
movabs rdx, 0xcbf29ce484222325
jmp 0x1400bce4c
mov r8, r15
and r8, 0xfffffffffffffffc
xor ecx, ecx
movabs rdx, 0xcbf29ce484222325
nop word cs:[rax + rax]
movzx r9d, byte [r14 + rcx]
xor r9, rdx
imul r9, rsi
movzx edx, byte [r14 + rcx + 1]
xor rdx, r9
imul rdx, rsi
movzx r9d, byte [r14 + rcx + 2]
xor r9, rdx
imul r9, rsi
movzx edx, byte [r14 + rcx + 3]
xor rdx, r9
imul rdx, rsi
add rcx, 4
cmp r8, rcx
jne 0x1400bce10
mov r8, rdx
test rax, rax
je 0x1400bce77
add rcx, r14
xor r9d, r9d
nop word [rax + rax]
movzx r8d, byte [rcx + r9]
xor r8, rdx
imul r8, rsi
inc r9
mov rdx, r8
cmp rax, r9
jne 0x1400bce60
and r8, qword [r12 + 0x30]
mov rax, qword [r10]
mov qword [rbp + 0x20], rax
mov r11, qword [r12 + 0x18]
lea rcx, [r8 + r8]
mov rax, r8
shl rax, 4
lea rdx, [r8 + r8]
inc rdx
mov rbx, qword [r11 + rax]
cmp rbx, qword [rbp + 0x30]
je 0x1400bcd80
mov qword [rbp - 0x60], rcx
mov qword [rbp - 0x18], r10
mov qword [rbp - 0x58], rdx
mov r12, qword [r11 + rdx*8]
cmp r15, qword [r12 + 0x20]
mov r13, r11
jne 0x1400bcf57
cmp qword [r12 + 0x28], 0x10
jb 0x1400bced5
mov rdx, qword [r12 + 0x10]
jmp 0x1400bceda
lea rdx, [r12 + 0x10]
mov rcx, r14
mov r8, r15
call fcn.1401021e0
test eax, eax
mov r11, r13
jne 0x1400bcf57
mov rax, qword [r12]
mov rbx, qword [rbp - 0x18]
cmp rax, rbx
mov r9, qword [rbp + 0x30]
mov r10, qword [rbp + 0x20]
je 0x1400bcf22
mov rcx, qword [rbx + 8]
mov qword [rcx], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov r8, qword [rax + 8]
mov qword [r8], rbx
mov qword [rax + 8], rdx
mov qword [r10 + 8], rcx
mov qword [rbx + 8], r8
mov rax, qword [rbp - 0x58]
mov qword [r11 + rax*8], rbx
mov r12, qword [rbp + 0x18]
jmp 0x1400bcd90
mov rdx, qword [r12 + 0x10]
mov rcx, r14
mov r8, r15
call fcn.1401021e0
test eax, eax
mov r11, r13
je 0x1400bcfb3
cmp rbx, r12
je 0x1400bcf80
mov r12, qword [r12 + 8]
cmp r15, qword [r12 + 0x20]
jne 0x1400bcf57
cmp qword [r12 + 0x28], 0x10
jae 0x1400bcf40
lea rdx, [r12 + 0x10]
jmp 0x1400bcf45
mov r8, qword [rbp - 0x18]
mov rax, qword [r8 + 8]
mov r10, qword [rbp + 0x20]
mov qword [rax], r10
mov rcx, qword [r10 + 8]
mov qword [rcx], rbx
mov rdx, qword [rbx + 8]
mov qword [rdx], r8
mov qword [rbx + 8], rcx
mov qword [r10 + 8], rax
mov qword [r8 + 8], rdx
mov rax, qword [rbp - 0x60]
mov qword [r11 + rax*8], r8
jmp 0x1400bcfe0
mov rax, qword [r12]
mov r9, qword [rbp - 0x18]
mov rcx, qword [r9 + 8]
mov r10, qword [rbp + 0x20]
mov qword [rcx], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov r8, qword [rax + 8]
mov qword [r8], r9
mov qword [rax + 8], rdx
mov qword [r10 + 8], rcx
mov qword [r9 + 8], r8
mov r12, qword [rbp + 0x18]
mov r9, qword [rbp + 0x30]
jmp 0x1400bcd90
mov rbx, qword [r12 + 8]
mov r8, qword [r12 + 0x30]
and r8, rdi
mov rcx, qword [r12 + 0x18]
mov rdx, r8
shl rdx, 4
mov rsi, qword [rcx + rdx + 8]
cmp rsi, rbx
mov rax, qword [rbp + 0x28]
je 0x1400bd07b
add r8, r8
cmp qword [rax + 0x28], 0x10
jb 0x1400bd024
mov r14, qword [rax + 0x10]
jmp 0x1400bd02b
mov r14, rax
add r14, 0x10
mov rbx, qword [rcx + r8*8]
mov r15, qword [rax + 0x20]
cmp r15, qword [rsi + 0x20]
jne 0x1400bd067
nop dword [rax]
cmp qword [rsi + 0x28], 0x10
jb 0x1400bd050
mov rdx, qword [rsi + 0x10]
jmp 0x1400bd054
lea rdx, [rsi + 0x10]
mov rcx, r14
mov r8, r15
call fcn.1401021e0
test eax, eax
mov rax, qword [rbp + 0x28]
je 0x1400bd078
cmp rsi, rbx
je 0x1400bd07b
mov rsi, qword [rsi + 8]
cmp r15, qword [rsi + 0x20]
je 0x1400bd040
jmp 0x1400bd067
mov rbx, qword [rsi]
mov qword [rbp - 0x48], 0
mov r9, qword [rbx + 8]
inc qword [r12 + 0x10]
mov qword [rax], rbx
mov qword [rax + 8], r9
mov qword [r9], rax
mov qword [rbx + 8], rax
mov r8, qword [r12 + 0x18]
and rdi, qword [r12 + 0x30]
shl rdi, 4
lea rcx, [r8 + rdi]
lea rdx, [r8 + rdi]
add rdx, 8
mov r8, qword [r8 + rdi]
cmp r8, qword [r12 + 8]
je 0x1400bd0ce
cmp r8, rbx
je 0x1400bd0d4
mov rcx, rdx
cmp qword [rdx], r9
jne 0x1400bd0db
jmp 0x1400bd0d4
mov qword [rcx], rax
mov rcx, rdx
mov rax, qword [rbp + 0x28]
mov qword [rcx], rax
mov rdi, qword [rbp - 0x48]
test rdi, rdi
je 0x1400bd0fa
lea rcx, [rdi + 0x10]
call fcn.14009c820
mov edx, 0x50
mov rcx, rdi
call fcn.1400cd44c
mov r14, qword [rbp + 8]
xor esi, esi
cmp r14, 0x10
jb 0x1400bd13b
mov rcx, qword [rbp - 0x10]
lea rdx, [r14 + 1]
cmp rdx, 0x1000
jb 0x1400bd136
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x1400bd20c
add r14, 0x28
mov rdx, r14
mov rcx, rax
call fcn.1400cd44c
mov rdi, qword [rbp - 0x38]
test rdi, rdi
je 0x1400bd198
mov rbx, qword [rbp - 0x30]
cmp rdi, rbx
je 0x1400bd164
mov r14, rdi
mov rcx, r14
call fcn.14009c910
add r14, 0xb8
cmp r14, rbx
jne 0x1400bd150
mov rdx, qword [rbp - 0x28]
sub rdx, rdi
cmp rdx, 0x1000
jb 0x1400bd190
mov rax, qword [rdi - 8]
add rdi, 0xfffffffffffffff8
sub rdi, rax
cmp rdi, 0x20
jae 0x1400bd20c
add rdx, 0x27
mov rdi, rax
mov rcx, rdi
call fcn.1400cd44c
test sil, sil
mov ebx, dword [rbp - 0x1c]
mov rcx, qword [rbp + 0x28]
je 0x1400bd1e3
cmp dword [rcx + 0x30], ebx
je 0x1400bd1e3
mov rdi, qword [rcx + 0x38]
mov rsi, qword [rcx + 0x40]
cmp rdi, rsi
je 0x1400bd1e0
nop word cs:[rax + rax]
mov rcx, rdi
call fcn.14009c910
add rdi, 0xb8
cmp rdi, rsi
jne 0x1400bd1c0
mov rcx, qword [rbp + 0x28]
mov rax, qword [rcx + 0x38]
mov qword [rcx + 0x40], rax
mov dword [rcx + 0x30], ebx
movaps xmm6, xmmword [rbp + 0x40]
add rsp, 0xd8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.140002640
lea rcx, str.unordered_map_set_too_long
call fcn.1400ce2b8
call fcn.1400e193c
lea rcx, str.invalid_hash_bucket_count
call fcn.1400ce2b8
call fcn.140002660
call fcn.140002660
int3