Function at 0x14008e230
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
movdqa xmmword [rsp + 0x50], xmm8
movdqa xmmword [rsp + 0x40], xmm7
movdqa xmmword [rsp + 0x30], xmm6
mov rsi, r8
mov rbx, rdx
mov qword [rsp + 0x20], rcx
cmp qword [rcx + 0x18], 0
je 0x14008e420
movabs rax, 0x517cc1b727220a95
cmp rsi, 8
jb 0x14008e29f
lea rcx, [rsi - 8]
mov r9, rcx
shr r9, 3
inc r9
mov r8d, r9d
and r8d, 3
cmp rcx, 0x18
jae 0x14008e2ad
xor r14d, r14d
mov rcx, rbx
mov rdx, rsi
jmp 0x14008e2fd
xor r14d, r14d
mov rdx, rsi
mov rcx, rbx
jmp 0x14008e32b
and r9, 0xfffffffffffffffc
xor r14d, r14d
mov rcx, rbx
mov rdx, rsi
nop word [rax + rax]
rol r14, 5
xor r14, qword [rcx]
imul r14, rax
rol r14, 5
xor r14, qword [rcx + 8]
imul r14, rax
rol r14, 5
xor r14, qword [rcx + 0x10]
imul r14, rax
rol r14, 5
xor r14, qword [rcx + 0x18]
imul r14, rax
add rdx, 0xffffffffffffffe0
add rcx, 0x20
add r9, 0xfffffffffffffffc
jne 0x14008e2c0
test r8, r8
je 0x14008e32b
shl r8, 3
xor r9d, r9d
nop dword [rax]
rol r14, 5
xor r14, qword [rcx + r9]
imul r14, rax
add r9, 8
cmp r8, r9
jne 0x14008e310
add rcx, r9
sub rdx, r9
cmp rdx, 3
ja 0x14008e4a7
mov r9, qword [rsp + 0x20]
cmp rdx, 2
jae 0x14008e4cc
test rdx, rdx
je 0x14008e357
movzx ecx, byte [rcx]
rol r14, 5
xor r14, rcx
imul r14, rax
rol r14, 5
xor r14, 0xff
imul r14, rax
mov rcx, qword [r9]
mov r12, qword [r9 + 8]
mov rax, r14
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm6, xmm0, 0
mov qword [rsp + 0x28], rcx
lea r13, [rcx - 0x18]
xor ebp, ebp
pcmpeqd xmm7, xmm7
and r14, r12
mov rax, qword [rsp + 0x28]
movdqu xmm8, xmmword [rax + r14]
movdqa xmm0, xmm8
pcmpeqb xmm0, xmm6
pmovmskb edi, xmm0
test edi, edi
jne 0x14008e3dc
pcmpeqb xmm8, xmm7
pmovmskb eax, xmm8
test eax, eax
jne 0x14008e420
add r14, rbp
add r14, 0x10
add rbp, 0x10
jmp 0x14008e395
lea eax, [rdi - 1]
and eax, edi
mov edi, eax
test ax, ax
je 0x14008e3b4
tzcnt eax, edi
add rax, r14
and rax, r12
neg rax
lea r15, [rax + rax*2]
cmp qword [r13 + r15*8 + 8], rsi
jne 0x14008e3d0
lea rax, [r15*8]
add rax, r13
mov rdx, qword [rax]
mov rcx, rbx
mov r8, rsi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x14008e3d0
mov rax, qword [rsp + 0x28]
mov ebp, dword [rax + r15*8 - 8]
jmp 0x14008e543
mov rdi, qword [rsp + 0x20]
mov ebp, dword [rdi + 0x68]
add ebp, dword [rdi + 0x30]
jb 0x14008e566
je 0x14008e566
test rsi, rsi
je 0x14008e4f1
mov r14, qword [rdi + 0x60]
mov r12, rsi
neg r12
mov rax, r14
sub rax, rsi
jb 0x14008e465
cmp rax, qword [rdi + 0x58]
jb 0x14008e465
add r14, r12
mov qword [rdi + 0x60], r14
jne 0x14008e4f8
lea r15, [rdi + 0x38]
mov rcx, r15
mov rdx, rsi
call sym._ZN10proc_macro6bridge5arena5Arena4grow17h2d2bbf45ad4e00cdE.llvm.6092460648869975136
mov rax, qword [rdi + 0x60]
mov rcx, rax
sub rcx, rsi
jb 0x14008e49d
mov r14d, 0
cmp rcx, qword [rdi + 0x58]
jb 0x14008e496
add rax, r12
mov qword [rdi + 0x60], rax
mov r14, rax
test r14, r14
je 0x14008e469
jmp 0x14008e4f8
xor r14d, r14d
test r14, r14
je 0x14008e469
jmp 0x14008e4f8
mov r8d, dword [rcx]
rol r14, 5
xor r14, r8
imul r14, rax
add rdx, 0xfffffffffffffffc
add rcx, 4
mov r9, qword [rsp + 0x20]
cmp rdx, 2
jb 0x14008e344
movzx r8d, word [rcx]
rol r14, 5
xor r14, r8
imul r14, rax
add rdx, 0xfffffffffffffffe
add rcx, 2
test rdx, rdx
jne 0x14008e349
jmp 0x14008e357
lea r14, fcn.14008d160
mov rcx, r14
mov rdx, rbx
mov r8, rsi
call sym.memcpy
mov rdx, qword [rdi + 0x30]
cmp rdx, qword [rdi + 0x28]
jne 0x14008e51d
lea rcx, [rdi + 0x20]
call sym.alloc::raw_vec::RawVec_T_A_::reserve_for_push::had70b0133968261c
mov rdx, qword [rdi + 0x30]
mov rax, qword [rdi + 0x20]
shl rdx, 4
mov qword [rax + rdx], r14
mov qword [rax + rdx + 8], rsi
inc qword [rdi + 0x30]
mov rcx, rdi
mov rdx, r14
mov r8, rsi
mov r9d, ebp
call sym.hashbrown::map::HashMap_K_V_S_A_::insert::hdcb5166129cbe5e3
mov eax, ebp
movaps xmm6, xmmword [rsp + 0x30]
movaps xmm7, xmmword [rsp + 0x40]
movaps xmm8, xmmword [rsp + 0x50]
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [0x1401830c2]
lea r8, str.libraryproc_macro_src_bridge_symbol.rs
mov edx, 0x21
call sym.core::option::expect_failed::hb83fff03a4798f33
ud2