Function at 0x140006650
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x198
movaps xmmword [rsp + 0x180], xmm7
movaps xmmword [rsp + 0x170], xmm6
mov rdi, rdx
mov r12, rcx
mov rsi, qword [rcx + 0x3d0]
mov r13, qword [rcx + 0x3d8]
lea rdx, [rcx + 0x3f0]
movzx r10d, byte [rcx + 0x3f0]
movzx ecx, r10b
mov r9d, reloc.WS2_32.dll_recv
sub r9, rcx
mov r11, r8
sub r11, r9
jae 0x1400066e8
test r10b, r10b
je 0x140006745
mov rax, rcx
add rax, r8
jb 0x140006f4f
cmp rax, 0x10
ja 0x140006f5e
test r8, r8
je 0x1400067c1
mov r9d, r8d
and r9d, 3
cmp r8, 4
jae 0x14000674d
xor r11d, r11d
jmp 0x140006796
mov rax, r11
shr rax, 4
inc rax
add rax, rsi
mov rax, r13
adc rax, 0
mov al, 1
jb 0x140006f2b
test r10b, r10b
je 0x140006745
cmp r10b, 0x11
jae 0x140006f72
lea rax, [r12 + rcx]
add rax, 0x3e0
sub rdx, rax
cmp r9, rdx
mov r8, rdx
cmovb r8, r9
test r8, r8
je 0x140006875
cmp rdx, 8
jae 0x1400067c8
xor r8d, r8d
jmp 0x140006860
mov r11, r8
jmp 0x140006880
and r8, 0xfffffffffffffffc
lea r10, [rcx + r12]
add r10, 0x3e3
xor esi, esi
nop
movzx r11d, byte [r10 + rsi - 3]
xor byte [rdi + rsi], r11b
movzx r11d, byte [r10 + rsi - 2]
xor byte [rdi + rsi + 1], r11b
movzx r11d, byte [r10 + rsi - 1]
xor byte [rdi + rsi + 2], r11b
movzx r11d, byte [r10 + rsi]
xor byte [rdi + rsi + 3], r11b
lea r11, [rsi + 4]
mov rsi, r11
cmp r8, r11
jne 0x140006760
test r9, r9
je 0x1400067c1
add rcx, r11
add rcx, r12
add rcx, 0x3e0
add rdi, r11
xor r8d, r8d
nop
movzx r10d, byte [rcx + r8]
xor byte [rdi + r8], r10b
inc r8
cmp r9, r8
jne 0x1400067b0
mov byte [rdx], al
jmp 0x140006f29
cmp rdx, 0x20
jae 0x1400067d3
xor r8d, r8d
jmp 0x14000682a
mov r8, rdx
and r8, 0xffffffffffffffe0
add rcx, r12
add rcx, 0x3f0
xor r10d, r10d
nop word [rax + rax]
movups xmm0, xmmword [rcx + r10 - 0x10]
movups xmm1, xmmword [rcx + r10]
movups xmm2, xmmword [rdi + r10]
xorps xmm2, xmm0
movups xmm0, xmmword [rdi + r10 + 0x10]
xorps xmm0, xmm1
movups xmmword [rdi + r10], xmm2
movups xmmword [rdi + r10 + 0x10], xmm0
add r10, 0x20
cmp r8, r10
jne 0x1400067f0
cmp rdx, r8
je 0x140006875
test dl, 0x18
je 0x140006860
mov rcx, r8
mov r8, rdx
and r8, 0xfffffffffffffff8
nop word cs:[rax + rax]
mov r10, qword [rax + rcx]
xor qword [rdi + rcx], r10
add rcx, 8
cmp r8, rcx
jne 0x140006840
cmp rdx, r8
je 0x140006875
nop word cs:[rax + rax]
movzx ecx, byte [rax + r8]
xor byte [rdi + r8], cl
lea rcx, [r8 + 1]
mov r8, rcx
cmp r9, rcx
jne 0x140006860
add rdi, r9
add rsi, 1
adc r13, 0
mov eax, r11d
and eax, 0x7f
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0x20], r11
and r11, 0xffffffffffffff80
mov qword [rsp + 0x28], r11
je 0x140006c0c
xor ebx, ebx
mov qword [rsp + 0x150], rdi
mov qword [rsp + 0xc8], r12
jmp 0x14000699c
mov r8d, 4
mov r12, qword [rsp + 0xc8]
mov rcx, r12
lea rdx, [rsp + 0x40]
call fcn.140008400
mov r8d, 4
mov rcx, r12
lea rdx, [rsp + 0x80]
call fcn.140008400
mov rdi, qword [rsp + 0x150]
movups xmm0, xmmword [rdi + rbx]
movups xmm1, xmmword [rdi + rbx + 0x10]
movups xmm2, xmmword [rdi + rbx + 0x20]
movups xmm3, xmmword [rdi + rbx + 0x30]
xorps xmm0, xmmword [rsp + 0x40]
xorps xmm1, xmmword [rsp + 0x50]
movups xmmword [rdi + rbx], xmm0
movups xmmword [rdi + rbx + 0x10], xmm1
xorps xmm2, xmmword [rsp + 0x60]
xorps xmm3, xmmword [rsp + 0x70]
movups xmmword [rdi + rbx + 0x20], xmm2
movups xmmword [rdi + rbx + 0x30], xmm3
movups xmm0, xmmword [rdi + rbx + 0x40]
movups xmm1, xmmword [rdi + rbx + 0x50]
xorps xmm0, xmmword [rsp + 0x80]
xorps xmm1, xmmword [rsp + 0x90]
movups xmmword [rdi + rbx + 0x40], xmm0
movups xmmword [rdi + rbx + 0x50], xmm1
movups xmm0, xmmword [rdi + rbx + 0x60]
movups xmm1, xmmword [rdi + rbx + 0x70]
xorps xmm0, xmmword [rsp + 0xa0]
xorps xmm1, xmmword [rsp + 0xb0]
movups xmmword [rdi + rbx + 0x60], xmm0
movups xmmword [rdi + rbx + 0x70], xmm1
sub rbx, 0xffffffffffffff80
mov rsi, qword [rsp + 0x38]
add rsi, 8
mov r13, qword [rsp + 0x30]
adc r13, 0
cmp qword [rsp + 0x28], rbx
je 0x140006c0c
mov rax, qword [r12 + 0x3c0]
mov qword [rsp + 0x38], rsi
add rax, rsi
mov rcx, qword [r12 + 0x3c8]
mov qword [rsp + 0x30], r13
adc rcx, r13
mov rdx, rcx
bswap rdx
mov r8, rax
bswap r8
mov qword [rsp + 0x160], r8
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x168], rdx
mov qword [rsp + 0x40], rdx
mov rdx, rax
add rdx, 1
mov r10, rcx
adc r10, 0
bswap r10
bswap rdx
mov qword [rsp + 0x158], rdx
mov qword [rsp + 0x58], rdx
mov r11, rax
add r11, 2
mov r15, rcx
adc r15, 0
bswap r15
mov qword [rsp + 0x50], r10
bswap r11
mov qword [rsp + 0x68], r11
mov qword [rsp + 0x60], r15
mov r14, rax
add r14, 3
mov rbp, rcx
adc rbp, 0
bswap rbp
bswap r14
mov qword [rsp + 0x78], r14
mov rdi, rax
add rdi, 4
mov r12, rcx
adc r12, 0
bswap r12
bswap rdi
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x88], rdi
mov qword [rsp + 0x80], r12
mov r13, rax
add r13, 5
mov rsi, rcx
adc rsi, 0
bswap rsi
bswap r13
mov qword [rsp + 0x98], r13
mov rdx, rax
add rdx, 6
mov r8, rcx
adc r8, 0
bswap r8
mov qword [rsp + 0x90], rsi
bswap rdx
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xa0], r8
add rax, 7
adc rcx, 0
bswap rcx
bswap rax
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xb0], rcx
mov r9, qword [0x140036028]
movzx r9d, byte [r9]
cmp r9b, 1
jne 0x1400068c0
mov r9, qword [rsp + 0x168]
mov qword [rsp + 0xd0], r9
mov r9, qword [rsp + 0x160]
mov qword [rsp + 0xd8], r9
mov qword [rsp + 0xe0], r10
mov r9, qword [rsp + 0x158]
mov qword [rsp + 0xe8], r9
mov qword [rsp + 0xf0], r15
mov qword [rsp + 0xf8], r11
mov qword [rsp + 0x100], rbp
mov qword [rsp + 0x108], r14
mov qword [rsp + 0x110], r12
mov qword [rsp + 0x118], rdi
mov qword [rsp + 0x120], rsi
mov qword [rsp + 0x128], r13
mov qword [rsp + 0x130], r8
mov qword [rsp + 0x138], rdx
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
mov r12, qword [rsp + 0xc8]
mov rcx, r12
lea rdx, [rsp + 0xd0]
call fcn.140006290
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmm1, xmmword [rsp + 0xe0]
movaps xmm2, xmmword [rsp + 0xf0]
movaps xmm3, xmmword [rsp + 0x100]
movaps xmm4, xmmword [rsp + 0x110]
movaps xmm5, xmmword [rsp + 0x120]
movaps xmm6, xmmword [rsp + 0x130]
movaps xmm7, xmmword [rsp + 0x140]
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x50], xmm1
movaps xmmword [rsp + 0x60], xmm2
movaps xmmword [rsp + 0x70], xmm3
movaps xmmword [rsp + 0x80], xmm4
movaps xmmword [rsp + 0x90], xmm5
movaps xmmword [rsp + 0xa0], xmm6
movaps xmmword [rsp + 0xb0], xmm7
jmp 0x1400068f1
mov rax, qword [rsp + 0x28]
lea r15, [rdi + rax]
mov rax, qword [rsp + 0x20]
and eax, 0xf
mov r14, qword [rsp + 0xc0]
mov qword [rsp + 0x38], rax
sub r14, rax
cmp r14, 0x10
mov qword [rsp + 0x30], r14
jae 0x140006d0f
mov r14, qword [rsp + 0x38]
test r14, r14
je 0x140006f11
mov rax, qword [r12 + 0x3c0]
add rax, rsi
mov rcx, qword [r12 + 0x3c8]
adc rcx, r13
bswap rcx
bswap rax
lea rbx, [r12 + 0x3e0]
mov qword [r12 + 0x3e8], rax
mov qword [r12 + 0x3e0], rcx
mov rdx, qword [0x140036028]
movzx edx, byte [rdx]
cmp dl, 1
jne 0x140006e7e
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xd8], rax
lea rcx, [rsp + 0x40]
lea r8, [rsp + 0xd0]
mov rdx, r12
call fcn.140006210
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [r12 + 0x3e0], xmm0
mov r8, qword [rsp + 0x20]
cmp r14d, 8
jb 0x140006ed4
add r15, qword [rsp + 0x30]
and r8d, 7
mov rax, r14
sub rax, r8
xor ecx, ecx
nop word cs:[rax + rax]
mov rdx, qword [rbx + rcx]
xor qword [r15 + rcx], rdx
add rcx, 8
cmp rax, rcx
jne 0x140006cf0
test r8, r8
jne 0x140006ed6
jmp 0x140006f11
lea rbp, [rsp + 0xe0]
xorps xmm6, xmm6
mov rbx, r15
jmp 0x140006e12
movups xmmword [rbp + 0x20], xmm6
movups xmmword [rbp + 0x10], xmm6
movups xmmword [rbp], xmm6
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0xd8], rax
mov r8d, 4
mov rcx, r12
lea rdx, [rsp + 0xd0]
call fcn.140008400
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmmword [rsp + 0x40], xmm0
add r14, 0xfffffffffffffff0
movzx eax, byte [rsp + 0x40]
xor byte [rbx], al
movzx eax, byte [rsp + 0x41]
xor byte [rbx + 1], al
movzx eax, byte [rsp + 0x42]
xor byte [rbx + 2], al
movzx eax, byte [rsp + 0x43]
xor byte [rbx + 3], al
movzx eax, byte [rsp + 0x44]
xor byte [rbx + 4], al
movzx eax, byte [rsp + 0x45]
xor byte [rbx + 5], al
movzx eax, byte [rsp + 0x46]
xor byte [rbx + 6], al
movzx eax, byte [rsp + 0x47]
xor byte [rbx + 7], al
movzx eax, byte [rsp + 0x48]
xor byte [rbx + 8], al
movzx eax, byte [rsp + 0x49]
xor byte [rbx + 9], al
movzx eax, byte [rsp + 0x4a]
xor byte [rbx + 0xa], al
movzx eax, byte [rsp + 0x4b]
xor byte [rbx + 0xb], al
movzx eax, byte [rsp + 0x4c]
xor byte [rbx + 0xc], al
movzx eax, byte [rsp + 0x4d]
xor byte [rbx + 0xd], al
movzx eax, byte [rsp + 0x4e]
xor byte [rbx + 0xe], al
movzx eax, byte [rsp + 0x4f]
xor byte [rbx + 0xf], al
add rsi, 1
adc r13, 0
add rbx, 0x10
cmp r14, 0x10
jb 0x140006c3c
test rbx, rbx
je 0x140006c3c
mov rax, qword [r12 + 0x3c0]
add rax, rsi
mov rcx, qword [r12 + 0x3c8]
adc rcx, r13
bswap rcx
bswap rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rcx
mov rdx, qword [0x140036028]
movzx edx, byte [rdx]
cmp dl, 1
jne 0x140006d30
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xd8], rax
lea rcx, [rsp + 0x40]
mov rdx, r12
lea r8, [rsp + 0xd0]
call fcn.140006210
jmp 0x140006d79
xorps xmm0, xmm0
movaps xmmword [rsp + 0x100], xmm0
movaps xmmword [rsp + 0xf0], xmm0
movaps xmmword [rsp + 0xe0], xmm0
movups xmm0, xmmword [rbx]
movaps xmmword [rsp + 0xd0], xmm0
lea rdx, [rsp + 0xd0]
mov r8d, 4
mov rcx, r12
call fcn.140008400
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [rbx], xmm0
mov r8, qword [rsp + 0x20]
cmp r14d, 8
jae 0x140006cd3
xor eax, eax
mov rcx, r14
sub rcx, rax
lea rdx, [rax + r12]
add rdx, 0x3e0
mov r8, qword [rsp + 0x28]
add r8, rax
add r8, qword [rsp + 0xc0]
sub r8, r14
add rdi, r8
xor eax, eax
nop
movzx r8d, byte [rdx + rax]
xor byte [rdi + rax], r8b
inc rax
cmp rcx, rax
jne 0x140006f00
mov byte [r12 + 0x3f0], r14b
mov qword [r12 + 0x3d0], rsi
mov qword [r12 + 0x3d8], r13
xor eax, eax
movaps xmm6, xmmword [rsp + 0x170]
movaps xmm7, xmmword [rsp + 0x180]
add rsp, 0x198
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str.C:UsersAdmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fctr_0.8.0_srclib.rs
mov rdx, rax
call fcn.1400282c0
lea r8, str.C:UsersAdmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fctr_0.8.0_srclib.rs
mov edx, reloc.WS2_32.dll_recv
mov rcx, rax
call fcn.1400282b0
lea r8, str.C:UsersAdmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fctr_0.8.0_srclib.rs
mov edx, reloc.WS2_32.dll_recv
call fcn.1400282a0
int3