Function at 0x1400c8d40
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, 0x658
movdqa xmmword [rsp + 0x640], xmm11
movdqa xmmword [rsp + 0x630], xmm10
movdqa xmmword [rsp + 0x620], xmm9
movaps xmmword [rsp + 0x610], xmm8
movdqa xmmword [rsp + 0x600], xmm7
movdqa xmmword [rsp + 0x5f0], xmm6
mov qword [rsp + 0xa0], rcx
movzx eax, byte [r8 + 0xf0]
mov byte [rsp + 0x2e], al
mov eax, dword [r8 + 0xf4]
mov dword [rsp + 0x83], eax
mov eax, dword [r8 + 0xf1]
mov dword [rsp + 0x80], eax
mov rax, qword [r8 + 0xf8]
mov qword [rsp + 0x88], rax
mov rax, qword [r8 + 0x100]
mov qword [rsp + 0x90], rax
mov rax, qword [r8 + 0x88]
mov qword [rsp + 0x98], rax
mov rax, qword [r8 + 0x90]
mov qword [rsp + 0x30], rax
mov rax, qword [r8 + 0x98]
mov qword [rsp + 0x40], rax
lea rdi, [r8 + 0xa0]
mov eax, dword [r8 + 0xb0]
mov dword [rsp + 0x2a0], eax
movups xmm0, xmmword [r8 + 0xa0]
movaps xmmword [rsp + 0x290], xmm0
mov ebx, dword [r8 + 0xb4]
lea rsi, [r8 + 0xb8]
mov rax, qword [r8 + 0xd8]
mov qword [rsp + 0x450], rax
movups xmm0, xmmword [r8 + 0xc8]
movaps xmmword [rsp + 0x440], xmm0
movups xmm0, xmmword [r8 + 0xb8]
movaps xmmword [rsp + 0x430], xmm0
movups xmm0, xmmword [r8 + 0x78]
movaps xmmword [rsp + 0x240], xmm0
movups xmm0, xmmword [r8 + 0x68]
movaps xmmword [rsp + 0x230], xmm0
movups xmm0, xmmword [r8 + 0x28]
movups xmm1, xmmword [r8 + 0x38]
movups xmm2, xmmword [r8 + 0x48]
movups xmm3, xmmword [r8 + 0x58]
movaps xmmword [rsp + 0x220], xmm3
movaps xmmword [rsp + 0x210], xmm2
movaps xmmword [rsp + 0x200], xmm1
movaps xmmword [rsp + 0x1f0], xmm0
mov rax, qword [r8 + 0xe0]
mov qword [rsp + 0x258], rax
mov eax, dword [r8 + 0xe8]
mov dword [rsp + 0x1ec], eax
movzx eax, byte [r8 + 0x108]
mov byte [rsp + 0x2f], al
mov rax, qword [r8 + 0xd8]
mov qword [rsp + 0x5e0], rax
movups xmm0, xmmword [r8 + 0xc8]
movaps xmmword [rsp + 0x5d0], xmm0
movups xmm0, xmmword [r8 + 0x88]
movups xmm1, xmmword [r8 + 0x98]
movups xmm2, xmmword [r8 + 0xa8]
movups xmm3, xmmword [r8 + 0xb8]
movaps xmmword [rsp + 0x5c0], xmm3
movaps xmmword [rsp + 0x5b0], xmm2
movaps xmmword [rsp + 0x5a0], xmm1
movaps xmmword [rsp + 0x590], xmm0
mov rax, qword [r8 + 0x20]
mov qword [rsp + 0x4b0], rax
movdqu xmm0, xmmword [r8]
movdqu xmm1, xmmword [r8 + 0x10]
movdqa xmmword [rsp + 0x4a0], xmm1
movdqa xmmword [rsp + 0x490], xmm0
test rbx, rbx
je 0x1400c90ab
mov r14, rdx
cmp qword [rsp + 0x40], rbx
jbe 0x1400c8fd1
mov rax, qword [rsp + 0x30]
cmp byte [rax + rbx], 0xbf
jle 0x1400c9062
cmp ebx, 5
je 0x1400c901e
cmp ebx, 4
jne 0x1400c90ab
lea rdx, str.httphttpswswssftpfileC:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.5.0_srcparser.rs
mov rcx, qword [rsp + 0x30]
mov r8, rbx
call fcn.14011a450
test eax, eax
jne 0x1400c90ab
lea rax, [r14 + 0x10]
mov qword [rsp + 0x1d0], rax
cmp byte [r14 + 0x1ba], 0
jne 0x1400c9057
jmp 0x1400c92ae
jne 0x1400c9062
cmp ebx, 5
je 0x1400c901e
cmp ebx, 4
jne 0x1400c90ab
lea rdx, str.httphttpswswssftpfileC:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.5.0_srcparser.rs
mov rcx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x40]
call fcn.14011a450
test eax, eax
jne 0x1400c90ab
lea rax, [r14 + 0x10]
mov qword [rsp + 0x1d0], rax
cmp byte [r14 + 0x1ba], 0
jne 0x1400c9083
jmp 0x1400c92ae
lea rdx, [0x1401864f4]
mov rcx, qword [rsp + 0x30]
mov r8, rbx
call fcn.14011a450
test eax, eax
jne 0x1400c90ab
lea rax, [r14 + 0x10]
mov qword [rsp + 0x1d0], rax
cmp byte [r14 + 0x1ba], 0
je 0x1400c92ae
cmp qword [rsp + 0x40], rbx
jbe 0x1400c9083
mov rax, qword [rsp + 0x30]
cmp byte [rax + rbx], 0xbf
jg 0x1400c908a
lea rax, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.5.0_srclib.rs
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x40]
xor r8d, r8d
mov r9, rbx
call fcn.14011af60
cmp qword [rsp + 0x40], rbx
jne 0x1400c9062
cmp ebx, 5
jne 0x1400c90ab
lea rdx, [0x1401864f4]
mov rcx, qword [rsp + 0x30]
mov r8, rbx
call fcn.14011a450
test eax, eax
je 0x1400c92ae
movzx eax, byte [0x140198310]
mov edx, 0x70
xor ecx, ecx
call fcn.1400f2240
test rax, rax
je 0x1400cac6e
mov qword [rax + 0x58], 1
lea rcx, [0x140153278]
mov qword [rax + 0x60], rcx
mov word [rax + 0x68], 0
mov rcx, qword [rsp + 0x98]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x30]
mov qword [rax + 8], rcx
mov rcx, qword [rsp + 0x40]
mov qword [rax + 0x10], rcx
movups xmm0, xmmword [rdi]
movups xmmword [rax + 0x18], xmm0
mov ecx, dword [rdi + 0x10]
mov dword [rax + 0x28], ecx
mov dword [rax + 0x2c], ebx
movdqu xmm0, xmmword [rsi]
movdqu xmm1, xmmword [rsi + 0x10]
movdqu xmmword [rax + 0x30], xmm0
movdqu xmmword [rax + 0x40], xmm1
mov rcx, qword [rsi + 0x20]
mov qword [rax + 0x50], rcx
mov rcx, qword [rsp + 0xa0]
mov qword [rcx], 2
mov qword [rcx + 8], rax
cmp qword [rsp + 0x490], 0
je 0x1400c9153
xor r13d, r13d
cmp qword [r14 + 0x150], 0
movzx eax, byte [rsp + 0x2e]
mov dword [rsp + 0x1e8], eax
sete r13b
add r13d, r13d
xor esi, esi
movdqa xmm6, xmmword [str.uespemosarenegylmodnarodsetybdet]
movdqa xmm7, xmmword [0x140127760]
xorps xmm8, xmm8
lea r12, [rsp + 0xb0]
lea rdi, [rsp + 0x2e0]
movabs r15, 0x100000001b3
mov qword [rsp + 0x1e0], rbx
mov qword [rsp + 0x50], r14
cmp r13, 2
jne 0x1400c9a3b
jmp 0x1400c9ab0
imul r8, rsi, 0x68
add r8, qword [r14 + 0x148]
mov r14, qword [r8 + 8]
cmp qword [r8], 1
mov ebx, 0
adc rbx, 1
mov qword [rsp + 0x38], r8
lea r13, [r8 + 0x18]
lea rcx, [rsp + 0x1f0]
call fcn.14003d690
test al, al
jne 0x1400cac21
mov rcx, qword [rsp + 0x1f0]
mov rax, rcx
mov qword [rsp + 0x58], rcx
cmp rcx, 2
mov r10, qword [rsp + 0x38]
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x60], r14
mov qword [rsp + 0xa8], r13
jne 0x1400c9420
movdqu xmm0, xmmword [rsp + 0x1f8]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmm6
movdqa xmmword [rsp + 0xb0], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmm7
movdqa xmmword [rsp + 0xc0], xmm1
movdqa xmmword [rsp + 0xd0], xmm0
lea rax, [rsp + 0xe0]
movaps xmmword [rax], xmm8
mov qword [rax + 0x10], 0
add byte [rax], al
add byte [rax], al
mov rsi, qword [r10 + 0x40]
xor eax, eax
test rsi, rsi
setne al
mov qword [rsp + 0x2e0], rax
mov r8d, 8
mov rcx, r12
mov rdx, rdi
mov r15, r10
call fcn.140019ec0
test rsi, rsi
je 0x1400c94b0
mov rdx, qword [r15 + 0x48]
mov r8, qword [r15 + 0x50]
mov rcx, r12
jmp 0x1400c94c9
invalid
mov rax, qword [r10 + 0x40]
xor edx, edx
test rax, rax
setne dl
movabs rcx, 0xcbf29ce484222325
test ah, ah
pushfq
bnd retf
xor rdx, rcx
movabs rcx, 0x1efac7090aef4a21
imul rdx, rcx
test rax, rax
je 0x1400c95e0
mov r8, qword [r10 + 0x50]
test r8, r8
je 0x1400c95ec
mov rax, qword [r10 + 0x48]
mov r9, r8
ror dword [rcx - 0x7d], 0xe1
invalid
je 0x1400c95f1
mov rcx, rax
nop word cs:[rax + rax]
nop word cs:[rax + rax]
movzx esi, byte [rcx]
inc rcx
xor rsi, rdx
imul rsi, r15
scasd eax, dword [rdi]
test dword [rax - 0x77], 0xc9ff49f2
dec r9
jne 0x1400c9480
cmp r8, 8
jae 0x1400c95fd
jmp 0x1400c9670
movzx eax, byte [r15 + 0x48]
mov qword [rsp + 0x2e0], rax
mov r8d, 8
mov rcx, r12
mov rdx, rdi
call fcn.140019ec0
mov rax, qword [rsp + 0xc0]
add byte [rax], al
add byte [rbx + rcx*4 - 0x74], cl
and al, 0xe0
add byte [rax], al
add byte [rcx - 0x3f], cl
loope 0x1400c951a
invalid
or r9, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0xc8]
xor rcx, r9
mov r8, qword [rsp + 0xb0]
add r8, rax
mov rdx, qword [rsp + 0xb8]
add rdx, rcx
rol rax, 0xd
xor rax, r8
rol rcx, 0x10
rol ecx, 0x10
rol r8, 0x20
xor rcx, rdx
add rdx, rax
rol rax, 0x11
add r8, rcx
xor rax, rdx
rol rcx, 0x15
xor rcx, r8
rol rdx, 0x20
xor r8, r9
xor rdx, 0xff
add r8, rax
rol rax, 0xd
add rdx, rcx
xor rax, r8
rol rcx, 0x10
xor rcx, rdx
rol r8, 0x20
add rdx, rax
add r8, rcx
rol rax, 0x11
xor rax, rdx
rol rcx, 0x15
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
add rdx, rcx
xor rax, r8
rol rcx, 0x10
xor rcx, rdx
rol r8, 0x20
add rdx, rax
add r8, rcx
rol rax, 0x11
xor rax, rdx
rol rcx, 0x15
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
add rdx, rcx
xor rax, r8
shl rcx, 0x10
xor rcx, rdx
add rdx, rax
shr rax, 0x2f
shr rcx, 0x2b
xor rcx, rax
mov rsi, rdx
shr rsi, 0x20
xor rsi, rdx
xor rsi, rcx
mov r10, qword [rsp + 0x38]
jmp 0x1400c9670
movzx eax, byte [r10 + 0x48]
xor rdx, rax
imul rdx, rcx
mov rsi, rdx
jmp 0x1400c9670
mov rsi, rdx
mov rcx, rax
cmp r8, 8
jb 0x1400c9670
add rax, r8
movzx edx, byte [rcx]
xor rdx, rsi
imul rdx, r15
movzx r8d, byte [rcx + 1]
xor r8, rdx
imul r8, r15
movzx edx, byte [rcx + 2]
xor rdx, r8
imul rdx, r15
movzx r8d, byte [rcx + 3]
xor r8, rdx
imul r8, r15
movzx edx, byte [rcx + 4]
xor rdx, r8
imul rdx, r15
movzx r8d, byte [rcx + 5]
xor r8, rdx
imul r8, r15
movzx edx, byte [rcx + 6]
xor rdx, r8
imul rdx, r15
movzx esi, byte [rcx + 7]
add rcx, 8
xor rsi, rdx
imul rsi, r15
cmp rcx, rax
jne 0x1400c9600
nop word cs:[rax + rax]
and esi, 0x7fff
movzx ebx, word [rsp + 0x248]
mov edi, esi
and edi, ebx
mov rbp, qword [rsp + 0x240]
mov r14, qword [rsp + 0x238]
mov r12, qword [rsp + 0x210]
mov r15, qword [rsp + 0x218]
xor r13d, r13d
jmp 0x1400c96c6
movzx eax, byte [rax + 8]
cmp al, byte [r10 + 0x48]
je 0x1400c976e
nop word cs:[rax + rax]
inc r13
inc rdi
mov rax, rdi
nop dword [rax]
mov rdi, rax
mov eax, 0
cmp rdi, rbp
jae 0x1400c96d0
movzx ecx, word [r14 + rdi*4]
cmp rcx, 0xffff
je 0x1400c97c0
movzx eax, word [r14 + rdi*4 + 2]
mov edx, ebx
and edx, eax
mov r8d, edi
sub r8d, edx
and r8d, ebx
cmp r8, r13
jb 0x1400c9860
cmp ax, si
jne 0x1400c96c0
cmp r15, rcx
jbe 0x1400cac12
imul rax, rcx, 0x68
mov rcx, qword [r12 + rax + 0x40]
test rcx, rcx
leave
setne dl
cmp qword [r10 + 0x40], 0
sete r8b
cmp dl, r8b
je 0x1400c96c0
add rax, r12
add rax, 0x40
test rcx, rcx
je 0x1400c96a7
mov r8, qword [rax + 0x10]
cmp r8, qword [r10 + 0x50]
jne 0x1400c96c0
mov rdx, qword [r10 + 0x48]
mov rcx, qword [rax + 8]
call fcn.14011a450
mov r10, qword [rsp + 0x38]
test eax, eax
jne 0x1400c96c0
mov rbx, qword [rsp + 0x1e0]
mov r14, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x78]
lea r12, [rsp + 0xb0]
lea rdi, [rsp + 0x2e0]
movabs r15, 0x100000001b3
mov r13, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x70]
cmp r13, 2
je 0x1400c9ab0
jmp 0x1400c9a3b
cmp r13, 0x200
setae r15b
cmp dword [rsp + 0x58], 2
setne bl
mov rax, qword [r10 + 0x40]
test rax, rax
je 0x1400c9900
lea rdx, [r10 + 0x58]
mov r8, qword [r10 + 0x48]
mov r9, qword [r10 + 0x50]
lea r12, [rsp + 0xb0]
mov rcx, r12
call qword [rax]
mov rax, qword [rsp + 0xb0]
movzx ecx, byte [rsp + 0xb8]
movzx edx, byte [rsp + 0xbf]
shl edx, 0x10
movzx r8d, word [rsp + 0xbd]
or r8d, edx
shl r8, 0x20
mov ebp, dword [rsp + 0xb9]
or rbp, r8
lea rdx, [rsp + 0xe0]
movdqu xmm0, xmmword [rdx - 0x20]
movdqa xmmword [rsp + 0x2e0], xmm0
mov r14, qword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
jmp 0x1400c991e
cmp r13, 0x200
setae r15b
cmp dword [rsp + 0x58], 2
setne bl
mov rax, qword [r10 + 0x40]
test rax, rax
mov r8, qword [rsp + 0x1d8]
mov rbp, qword [rsp + 0x70]
je 0x1400c9930
lea rdx, [r10 + 0x58]
mov r8, qword [r10 + 0x48]
mov r9, qword [r10 + 0x50]
lea r12, [rsp + 0xb0]
mov rcx, r12
call qword [rax]
mov rax, qword [rsp + 0xb0]
movzx ecx, byte [rsp + 0xb8]
movzx edx, byte [rsp + 0xbf]
shl edx, 0x10
movzx r8d, word [rsp + 0xbd]
or r8d, edx
shl r8, 0x20
mov edx, dword [rsp + 0xb9]
or rdx, r8
mov r8, rdx
lea rdx, [rsp + 0xe0]
movdqu xmm0, xmmword [rdx - 0x20]
movdqa xmmword [rsp + 0x2e0], xmm0
mov r14, qword [rsp + 0x50]
jmp 0x1400c9944
movzx ecx, byte [r10 + 0x48]
xor eax, eax
mov r14, qword [rsp + 0x50]
lea r12, [rsp + 0xb0]
mov r13, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x70]
and r15b, bl
movaps xmm0, xmmword [rsp + 0x2e0]
mov rdx, rbp
jmp 0x1400c995f
movzx ecx, byte [r10 + 0x48]
xor eax, eax
mov r14, qword [rsp + 0x50]
lea r12, [rsp + 0xb0]
mov r13, qword [rsp + 0x48]
and r15b, bl
movaps xmm0, xmmword [rsp + 0x2e0]
mov qword [rsp + 0x1d8], r8
mov rdx, r8
shl rdx, 8
movzx ecx, cl
or rcx, rdx
movaps xmmword [rsp + 0x1c0], xmm0
movdqa xmm0, xmmword [rsp + 0x1c0]
lea r8, [rsp + 0x50b]
movdqu xmmword [r8 - 0x1b], xmm0
movzx edx, byte [rsp + 0x3c4]
mov byte [r8 + 4], dl
mov edx, dword [rsp + 0x3c0]
mov dword [r8], edx
lea rdx, [rsp + 0x1f0]
mov qword [rsp + 0x4d8], rdx
mov qword [rsp + 0x4e0], rax
mov qword [rsp + 0x4e8], rcx
mov qword [rsp + 0x500], rdi
mov word [rsp + 0x508], si
mov byte [rsp + 0x50a], r15b
mov rsi, qword [rsp + 0xa8]
lea rdx, [rsi + 0x18]
mov rax, qword [rsi]
mov r8, qword [rsi + 8]
mov r9, qword [rsi + 0x10]
adc byte [rcx + r9*4 - 0x1f], r9b
call qword [rax]
movzx eax, byte [rsi + 0x20]
mov byte [rsp + 0xd0], al
lea rcx, [rsp + 0x4d8]
mov rdx, r12
call fcn.14009c010
test rax, rax
je 0x1400cac2a
mov rbx, qword [rsp + 0x1e0]
mov rsi, qword [rsp + 0x78]
lea rdi, [rsp + 0x2e0]
movabs r15, 0x100000001b3
cmp r13, 2
je 0x1400c9ab0
mov rdx, qword [r14 + 0x150]
cmp rsi, rdx
jae 0x1400cac53
imul r8, rsi, 0x68
add r8, qword [r14 + 0x148]
cmp r13, 1
jne 0x1400c932b
mov rdx, qword [r14 + 0x168]
mov rcx, qword [rsp + 0x60]
cmp rcx, rdx
jae 0x1400cac62
add byte [rax], al
mov rax, qword [r14 + 0x160]
lea rcx, [rcx + rcx*8]
lea r13, [rax + rcx*8]
cmp qword [rax + rcx*8 + 0x10], 0
je 0x1400c9a97
mov r14, qword [r13 + 0x18]
mov ebx, 1
jmp 0x1400c9a9c
mov ebx, 2
mov qword [rsp + 0x38], r8
add r13, 0x20
jmp 0x1400c9345
inc rsi
cmp rsi, qword [r14 + 0x150]
jb 0x1400c9320
invalid
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x590]
call fcn.1400cad30
cmp byte [rsp + 0xb0], 3
jne 0x1400c9bb2
lea rcx, str.Parsed_Url_is_not_a_valid_Urioperation_timed_outURL_scheme_is_not_allowedBuilderRequestRedirectStatusBodyDecodeUpgradehttp:__
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x420], rax
mov dword [rsp + 0x420], eax
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhttp_0.2.12_srcheadermap.rs
mov rdx, r15
call fcn.14011a930
lea rax, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhttp_0.2.12_srcheadermap.rs
jmp 0x1400cac31
lea rax, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhttp_0.2.12_srcheadermap.rs