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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x7e8
movaps xmmword [rsp + 0x7d0], xmm6
mov rsi, rdx
mov r14, rcx
mov rdi, qword [rdx + 8]
mov rax, qword [rdx + 0x10]
test rax, rax
je 0x40e08c
mov ebx, 0x811c9dc5
movabs rcx, 0x100000001b3
xor edx, edx
movzx r8d, byte [rdi + rdx]
xor rbx, r8
imul rbx, rcx
inc rdx
cmp rax, rdx
jne 0x40e06b
xor rbx, 0xff
imul rbx, rcx
jmp 0x40e096
movabs rbx, 0x1c9d3adb639f298e
xor eax, eax
mov qword [rsp + 0x68], rax
mov ecx, 8
mov qword [rsp + 0x70], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x2e8], rax
mov qword [rsp + 0x2f0], rcx
mov qword [rsp + 0x2f8], rax
call dbg.__getit
mov qword [rsp + 0x38], r14
test rax, rax
je 0x40e423
mov r12, qword [rax]
mov r13, qword [rax + 8]
lea rcx, [r12 + 1]
mov qword [rax], rcx
xorps xmm6, xmm6
movaps xmmword [rsp + 0x50], xmm6
movaps xmmword [rsp + 0x40], xmm6
lea r15, [rsp + 0x68]
movups xmm0, xmmword [r15]
movups xmm1, xmmword [r15 + 0x10]
movups xmm2, xmmword [r15 + 0x20]
lea rdi, [rsp + 0x6c8]
movaps xmmword [rdi - 0xd8], xmm0
movaps xmmword [rdi - 0xc8], xmm1
movaps xmmword [rdi - 0xb8], xmm2
lea r14, [rsp + 0x2e8]
movups xmm0, xmmword [r14]
movaps xmmword [rdi - 0xa8], xmm0
mov rax, qword [r14 + 0x10]
mov qword [rdi - 0x98], rax
movups xmm0, xmmword [0x004939d0]
movaps xmmword [rdi - 0x48], xmm0
movups xmm0, xmmword [0x004939e0]
movaps xmmword [rdi - 0x38], xmm0
mov qword [rdi - 0x18], rbx
mov rax, qword [rsi + 0x10]
mov qword [rdi - 0x128], rax
movups xmm0, xmmword [rsi]
movaps xmmword [rdi - 0x138], xmm0
xor ebx, ebx
mov qword [rdi - 0x10], rbx
mov dword [rdi + 0x100], 0x110000
movabs rsi, 0x8000000000000000
mov qword [rdi - 0x78], rsi
mov r8d, 0x88
mov rcx, rdi
xor edx, edx
call sub.msvcrt.dll_memset
mov qword [rdi - 0x120], rbx
mov eax, 8
mov qword [rdi - 0x118], rax
mov qword [rdi - 0x110], rbx
mov rcx, qword [rsp + 0x58]
mov qword [rdi - 0x108], rcx
mov qword [rdi - 0x100], 4
mov qword [rdi - 0xf8], rbx
mov rcx, qword [rsp + 0x48]
mov qword [rdi - 0xf0], rcx
mov qword [rdi - 0xe8], rax
mov qword [rdi - 0xe0], rbx
mov qword [rdi + 0x90], rbx
mov qword [rdi - 0x60], rsi
mov qword [rdi + 0xa0], rbx
movaps xmmword [rdi - 0x178], xmm6
movaps xmmword [rdi - 0x168], xmm6
mov qword [rdi - 0x158], rbx
mov qword [rdi + 0xb0], rbx
mov ecx, 0x400000
mov qword [rdi + 0xc0], rcx
mov qword [rdi + 0xc8], rcx
mov qword [rdi - 0x28], r12
mov qword [rdi - 0x20], r13
mov qword [rdi - 0x90], rbx
mov qword [rdi - 0x88], rax
mov qword [rdi - 0x80], rbx
mov qword [rdi + 0xd0], rbx
mov qword [rdi - 0x148], 1
mov qword [rdi - 0x140], rbx
movups xmmword [rdi + 0xe0], xmm6
mov qword [rdi + 0xf0], rbx
lea rsi, [0x00488c24]
mov r8d, 4
mov rcx, r15
mov rdx, rsi
call sym.clap::build::arg::Arg::new::h9bbb24204a6fc2bd
mov edx, 4
mov rcx, rsi
call sym.core::str::__impl_str_::trim_start_matches::h7f66ba34ac2a87cf
mov qword [r15 + 0x218], rax
mov qword [r15 + 0x220], rdx
mov r8d, 0x1f8
mov rcx, r14
mov rdx, r15
call sym.memcpy
mov r12d, 0x208
lea rsi, [r15 + r12]
lea r13, [r14 + r12]
mov ecx, 0xb
mov rdi, r13
rep movsq qword [rdi], qword [rsi]
mov eax, dword [r15 + 0x260]
movzx ecx, word [r15 + 0x265]
mov word [rsp + 0x30], cx
mov dl, byte [r15 + 0x267]
or eax, 8
lea r8, str.Print_help_informationversionPrint_version_information_home_htb_ac_453129_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.1.0_src_build_command.rs__
mov qword [r14 + 0x1f8], r8
mov qword [r14 + 0x200], 0x16
mov dword [r14 + 0x260], eax
mov byte [r14 + 0x264], bl
mov word [r14 + 0x265], cx
mov byte [r14 + 0x267], dl
lea r15, [rsp + 0x68]
lea rbp, [rsp + 0x550]
mov rcx, r15
mov rdx, rbp
mov r8, r14
call sym.clap::build::command::App::arg::ha958a58a0d7af4c4
lea rsi, [0x00488d8e]
mov r8d, 7
mov rcx, rbp
mov rdx, rsi
call sym.clap::build::arg::Arg::new::h9bbb24204a6fc2bd
mov edx, 7
mov rcx, rsi
call sym.core::str::__impl_str_::trim_start_matches::h7f66ba34ac2a87cf
mov qword [rbp + 0x218], rax
mov qword [rbp + 0x220], rdx
mov r8d, 0x1f8
mov rcx, r14
mov rdx, rbp
call sym.memcpy
add r12, rbp
mov ecx, 0xb
mov rdi, r13
mov rsi, r12
rep movsq qword [rdi], qword [rsi]
mov eax, dword [rbp + 0x260]
movzx ecx, word [rbp + 0x265]
mov word [rsp + 0x30], cx
mov dl, byte [rbp + 0x267]
or eax, 8
lea r8, [0x00488d95]
mov qword [r14 + 0x1f8], r8
mov qword [r14 + 0x200], 0x19
mov dword [r14 + 0x260], eax
mov byte [r14 + 0x264], bl
mov word [r14 + 0x265], cx
mov byte [r14 + 0x267], dl
mov rcx, qword [rsp + 0x38]
mov rdx, r15
mov r8, r14
call sym.clap::build::command::App::arg::ha958a58a0d7af4c4
movaps xmm6, xmmword [rsp + 0x7d0]
add rsp, 0x7e8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rax, [0x00493b28]
mov qword [rsp + 0x20], rax
lea rcx, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_threadlocal.rs
lea r9, sym._ZN4core3ptr237drop_in_place_LT_clap..build..arg..Arg..validator_LT__LT_rcat..Commands_u20_as_u20_clap..derive..Subcommand_GT_
lea r8, [rsp + 0x550]
mov edx, 0x46
call dbg.unwrap_failed
ud2