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

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x98
mov r14, rcx
test r8, r8
je 0x1400563dc
lea r9, [r8 - 1]
mov r10d, r8d
and r10d, 7
movabs rax, 0x100000001b3
cmp r9, 7
jae 0x1400563fe
mov edi, 0x811c9dc5
mov rcx, rdx
jmp 0x140056471
movabs rbx, 0x1c9d3adb639f298e
mov qword [rsp + 0x20], rbx
cmp qword [r14 + 0x28], 0
jne 0x14005656c
xor r14d, r14d
jmp 0x1400567c6
mov rbx, r8
and rbx, 0xfffffffffffffff8
mov edi, 0x811c9dc5
mov rcx, rdx
nop dword [rax]
movzx esi, byte [rcx]
xor rsi, rdi
imul rsi, rax
movzx edi, byte [rcx + 1]
xor rdi, rsi
imul rdi, rax
movzx esi, byte [rcx + 2]
xor rsi, rdi
imul rsi, rax
movzx edi, byte [rcx + 3]
xor rdi, rsi
imul rdi, rax
movzx esi, byte [rcx + 4]
xor rsi, rdi
imul rsi, rax
movzx edi, byte [rcx + 5]
xor rdi, rsi
imul rdi, rax
movzx esi, byte [rcx + 6]
xor rsi, rdi
imul rsi, rax
movzx edi, byte [rcx + 7]
add rcx, 8
xor rdi, rsi
imul rdi, rax
add rbx, 0xfffffffffffffff8
jne 0x140056410
mov rsi, rdi
test r10, r10
je 0x140056496
xor ebx, ebx
nop dword [rax + rax]
movzx esi, byte [rcx + rbx]
xor rsi, rdi
imul rsi, rax
inc rbx
mov rdi, rsi
cmp r10, rbx
jne 0x140056480
xor rsi, 0xff
imul rsi, rax
mov qword [rsp + 0x20], rsi
mov ecx, r8d
and ecx, 7
cmp r9, 7
jae 0x1400564b9
mov edi, 0x811c9dc5
jmp 0x140056531
and r8, 0xfffffffffffffff8
mov edi, 0x811c9dc5
nop word cs:[rax + rax]
movzx ebx, byte [rdx]
xor rbx, rdi
imul rbx, rax
movzx edi, byte [rdx + 1]
xor rdi, rbx
imul rdi, rax
movzx ebx, byte [rdx + 2]
xor rbx, rdi
imul rbx, rax
movzx edi, byte [rdx + 3]
xor rdi, rbx
imul rdi, rax
movzx ebx, byte [rdx + 4]
xor rbx, rdi
imul rbx, rax
movzx edi, byte [rdx + 5]
xor rdi, rbx
imul rdi, rax
movzx ebx, byte [rdx + 6]
xor rbx, rdi
imul rbx, rax
movzx edi, byte [rdx + 7]
add rdx, 8
xor rdi, rbx
imul rdi, rax
add r8, 0xfffffffffffffff8
jne 0x1400564d0
mov rbx, rdi
test rcx, rcx
je 0x140056556
xor esi, esi
nop dword [rax + rax]
movzx ebx, byte [rdx + rsi]
xor rbx, rdi
imul rbx, rax
inc rsi
mov rdi, rbx
cmp rcx, rsi
jne 0x140056540
xor rbx, 0xff
imul rbx, rax
cmp qword [r14 + 0x28], 0
je 0x1400563f6
mov rcx, qword [r14 + 8]
mov rdx, qword [r14 + 0x10]
mov r8, rbx
call fcn.140035200
mov r8, qword [r14 + 0x40]
mov rdx, qword [r14 + 0x48]
mov r10, qword [r14 + 0x18]
mov r11, qword [r14 + 0x30]
mov rcx, rax
shr rcx, 0x39
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
xor r14d, r14d
pcmpeqd xmm1, xmm1
xor r9d, r9d
and rax, r10
movdqu xmm2, xmmword [r11 + rax]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb edi, xmm3
nop word cs:[rax + rax]
test di, di
je 0x140056610
bsf cx, di
movzx ecx, cx
add rcx, rax
and rcx, r10
shl rcx, 3
mov rsi, r11
sub rsi, rcx
mov rcx, qword [rsi - 8]
cmp rdx, rcx
jbe 0x1400567d6
lea esi, [rdi - 1]
and esi, edi
imul rcx, rcx, 0x78
mov edi, esi
cmp qword [r8 + rcx + 8], rbx
jne 0x1400565d0
jmp 0x14005662d
pcmpeqb xmm2, xmm1
pmovmskb ecx, xmm2
test ecx, ecx
jne 0x1400567c6
add rax, r9
add rax, 0x10
add r9, 0x10
jmp 0x1400565af
lea rax, [r8 + rcx]
add rax, 0x10
cmp dword [r8 + rcx + 0x10], 1
jne 0x14005665d
mov rdi, qword [rax + 8]
movabs rcx, 0xb96489859f1cf9ac
cmp rdi, rcx
jne 0x1400566c6
mov r8, qword [rax + 0x38]
mov r9, qword [rax + 0x40]
jmp 0x140056769
mov r8, qword [rax + 0x38]
mov r9, qword [rax + 0x40]
test r9, r9
je 0x140056766
lea rax, [r9 + r9*2]
lea rdx, [r8 + rax*8]
movabs rbx, 0xb96489859f1cf9ac
mov rax, r8
jmp 0x140056699
cmp rax, rdx
je 0x140056769
mov rsi, qword [rax + 8]
mov rcx, qword [rax + 0x10]
add rax, 0x18
shl rcx, 3
lea rcx, [rcx + rcx*2]
nop dword [rax]
test rcx, rcx
je 0x140056690
mov rdi, qword [rsi + 0x10]
add rsi, 0x18
add rcx, 0xffffffffffffffe8
cmp rdi, rbx
je 0x1400566b0
lea rax, [rsp + 0x20]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x38], rdi
movabs rax, 0xb96489859f1cf9ac
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x28]
mov qword [rsp + 0x48], rax
lea rax, [0x140001410]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x58], rax
lea rax, [0x140056ae0]
mov qword [rsp + 0x60], rax
lea rax, [0x140179308]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], 2
mov qword [rsp + 0x68], 0
lea rax, [rsp + 0x48]
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x90], 2
lea rdx, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823clap_3.2.25_srcparserparser.rs
lea rcx, [rsp + 0x68]
call fcn.14016f2f0
ud2
xor r9d, r9d
shl r9, 3
lea rax, [r9 + r9*2]
xor r14d, r14d
xor ecx, ecx
mov rdx, r8
nop dword [rax]
cmp rax, rcx
je 0x1400567c6
add rcx, 0x18
cmp qword [rdx + 0x10], 0
lea rdx, [rdx + 0x18]
je 0x140056780
mov rax, qword [r8 + rcx - 0x10]
mov rdx, qword [rax + 8]
mov r14, qword [rdx + 0x10]
add r14, 0xf
and r14, 0xfffffffffffffff0
add r14, qword [rax]
mov rcx, r14
call qword [rdx + 0x18]
movabs rcx, 0xb96489859f1cf9ac
cmp rax, rcx
jne 0x1400567e4
test r14, r14
je 0x1400567e4
mov rax, r14
add rsp, 0x98
pop rbx
pop rdi
pop rsi
pop r14
ret
lea r8, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823indexmap_1.9.3_srcmapcore.rs
call fcn.14016f330
ud2
lea rcx, str.Fatal_internal_error._Please_consider_filing_a_bug_report_at_https:__github.com_clap_rs_clap_issues
lea r8, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823clap_3.2.25_srcparsermatches_arg_matches.rs
mov edx, 0x63
call fcn.14016f690
ud2