Function at 0x140001b10
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x208
movaps xmmword [rsp + 0x1f0], xmm7
movaps xmmword [rsp + 0x1e0], xmm6
mov rdi, r8
mov rbx, rdx
mov rsi, rcx
mov r15, qword [rcx + 0x2d0]
mov r14d, 0x10
sub r14, r15
cmp r14, r8
jbe 0x140001b87
mov rax, r15
add rax, rdi
jb 0x14000254d
cmp rax, 0x10
ja 0x140002561
test rdi, rdi
je 0x140001c99
lea rax, [rsi + 0x2c0]
add rax, r15
cmp rdi, 8
jae 0x140001bbc
xor ecx, ecx
jmp 0x140001c70
movaps xmm0, xmmword [rsi + 0x2c0]
movaps xmmword [rsp + 0x20], xmm0
cmp r15, 0x11
jae 0x140002577
cmp r15, 0x10
je 0x140001d5f
lea rax, [rsp + r15]
add rax, 0x20
cmp r14, 8
jae 0x140001bc6
xor ecx, ecx
jmp 0x140001d40
cmp rdi, 0x20
jae 0x140001bd7
xor ecx, ecx
jmp 0x140001c36
cmp r14, 0x20
jae 0x140001ca5
xor ecx, ecx
jmp 0x140001d06
mov rcx, rdi
and rcx, 0xffffffffffffffe0
lea rdx, [r15 + rsi]
add rdx, 0x2d0
xor r8d, r8d
nop dword [rax]
movups xmm0, xmmword [rbx + r8]
movups xmm1, xmmword [rbx + r8 + 0x10]
movups xmm2, xmmword [rdx + r8 - 0x10]
movups xmm3, xmmword [rdx + r8]
xorps xmm2, xmm0
xorps xmm3, xmm1
movups xmmword [rbx + r8], xmm2
movups xmmword [rbx + r8 + 0x10], xmm3
movups xmmword [rdx + r8 - 0x10], xmm0
movups xmmword [rdx + r8], xmm1
add r8, 0x20
cmp rcx, r8
jne 0x140001bf0
cmp rcx, rdi
je 0x140001c8f
test dil, 0x18
je 0x140001c70
mov rdx, rcx
mov rcx, rdi
and rcx, 0xfffffffffffffff8
mov r8, qword [rbx + rdx]
mov r9, qword [rax + rdx]
xor r9, r8
mov qword [rbx + rdx], r9
mov qword [rax + rdx], r8
add rdx, 8
cmp rcx, rdx
jne 0x140001c40
cmp rcx, rdi
je 0x140001c8f
nop word cs:[rax + rax]
movzx edx, byte [rbx + rcx]
movzx r8d, byte [rax + rcx]
xor r8b, dl
mov byte [rbx + rcx], r8b
mov byte [rax + rcx], dl
lea rdx, [rcx + 1]
mov rcx, rdx
cmp rdi, rdx
jne 0x140001c70
add rdi, qword [rsi + 0x2d0]
mov rax, rdi
mov qword [rsi + 0x2d0], rax
jmp 0x140002529
mov rcx, r14
and rcx, 0xffffffffffffffe0
lea rdx, [rsp + 0x20]
add rdx, r15
add rdx, 0x10
xor r8d, r8d
nop dword [rax + rax]
movups xmm0, xmmword [rbx + r8]
movups xmm1, xmmword [rbx + r8 + 0x10]
movups xmm2, xmmword [rdx + r8 - 0x10]
movups xmm3, xmmword [rdx + r8]
xorps xmm2, xmm0
xorps xmm3, xmm1
movups xmmword [rbx + r8], xmm2
movups xmmword [rbx + r8 + 0x10], xmm3
movups xmmword [rdx + r8 - 0x10], xmm0
movups xmmword [rdx + r8], xmm1
add r8, 0x20
cmp rcx, r8
jne 0x140001cc0
cmp r14, rcx
je 0x140001d5f
test r14b, 0x18
je 0x140001d40
mov rdx, rcx
mov rcx, r14
and rcx, 0xfffffffffffffff8
mov r8, qword [rbx + rdx]
mov r9, qword [rax + rdx]
xor r9, r8
mov qword [rbx + rdx], r9
mov qword [rax + rdx], r8
add rdx, 8
cmp rcx, rdx
jne 0x140001d10
cmp r14, rcx
je 0x140001d5f
nop word cs:[rax + rax]
movzx edx, byte [rbx + rcx]
movzx r8d, byte [rax + rcx]
xor r8b, dl
mov byte [rbx + rcx], r8b
mov byte [rax + rcx], dl
lea rdx, [rcx + 1]
mov rcx, rdx
cmp r14, rdx
jne 0x140001d40
sub rdi, r14
mov rax, qword [0x140036008]
movzx eax, byte [rax]
cmp al, 1
jne 0x140001da0
movaps xmm0, xmmword [rsp + 0x20]
movaps xmmword [rsp + 0xd0], xmm0
lea rcx, [rsp + 0x20]
lea r8, [rsp + 0xd0]
mov rdx, rsi
call fcn.1400017d0
add r14, rbx
cmp rdi, 0x7f
ja 0x140001df8
jmp 0x1400022be
xorps xmm0, xmm0
movaps xmmword [rsp + 0x100], xmm0
movaps xmmword [rsp + 0xf0], xmm0
movaps xmmword [rsp + 0xe0], xmm0
movaps xmm0, xmmword [rsp + 0x20]
movaps xmmword [rsp + 0xd0], xmm0
lea rdx, [rsp + 0xd0]
mov r8d, 4
mov rcx, rsi
call fcn.140011be0
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmmword [rsp + 0x20], xmm0
add r14, rbx
cmp rdi, 0x7f
jbe 0x1400022be
lea rcx, [rsp + 0x50]
mov rdx, r14
call fcn.140001720
mov rax, qword [0x140036008]
movzx eax, byte [rax]
cmp al, 1
jne 0x140001f17
movaps xmm0, xmmword [rsp + 0x50]
movaps xmm1, xmmword [rsp + 0x60]
movaps xmm2, xmmword [rsp + 0x70]
movaps xmm3, xmmword [rsp + 0x80]
movaps xmm4, xmmword [rsp + 0x90]
movaps xmm5, xmmword [rsp + 0xa0]
movaps xmm6, xmmword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0xe0], xmm1
movaps xmmword [rsp + 0xf0], xmm2
movaps xmmword [rsp + 0x100], xmm3
movaps xmmword [rsp + 0x110], xmm4
movaps xmmword [rsp + 0x120], xmm5
movaps xmmword [rsp + 0x130], xmm6
movaps xmmword [rsp + 0x140], xmm7
lea rdx, [rsp + 0xd0]
mov rcx, rsi
call fcn.140001830
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 + 0x50], xmm0
movaps xmmword [rsp + 0x60], xmm1
movaps xmmword [rsp + 0x70], xmm2
movaps xmmword [rsp + 0x80], xmm3
movaps xmmword [rsp + 0x90], xmm4
movaps xmmword [rsp + 0xa0], xmm5
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xc0], xmm7
jmp 0x140001f43
lea r12, [rsp + 0x90]
lea rdx, [rsp + 0x50]
mov r8d, 4
mov rcx, rsi
call fcn.140011be0
mov r8d, 4
mov rcx, rsi
mov rdx, r12
call fcn.140011be0
movups xmm0, xmmword [r14]
xorps xmm0, xmmword [rsp + 0x20]
movups xmmword [r14], xmm0
add rdi, 0xfffffffffffffff0
cmp rdi, 0xf0
jb 0x1400021e0
lea r14, [rsp + 0x1a0]
sub rbx, r15
add rbx, 0x90
lea r15, [rsp + 0x160]
lea r12, [rsp + 0xd0]
jmp 0x1400020af
mov r8d, 4
mov rcx, rsi
mov rdx, r15
call fcn.140011be0
mov r8d, 4
mov rcx, rsi
mov rdx, r14
call fcn.140011be0
movups xmm0, xmmword [rbx - 0x70]
movups xmm1, xmmword [rbx - 0x60]
movups xmm2, xmmword [rbx - 0x50]
movups xmm3, xmmword [rbx - 0x40]
xorps xmm0, xmmword [rsp + 0x50]
xorps xmm1, xmmword [rsp + 0x60]
movups xmmword [rbx - 0x70], xmm0
movups xmmword [rbx - 0x60], xmm1
xorps xmm2, xmmword [rsp + 0x70]
xorps xmm3, xmmword [rsp + 0x80]
movups xmmword [rbx - 0x50], xmm2
movups xmmword [rbx - 0x40], xmm3
movups xmm0, xmmword [rbx - 0x30]
movups xmm1, xmmword [rbx - 0x20]
xorps xmm0, xmmword [rsp + 0x90]
xorps xmm1, xmmword [rsp + 0xa0]
movups xmmword [rbx - 0x30], xmm0
movups xmmword [rbx - 0x20], xmm1
movups xmm0, xmmword [rbx - 0x10]
movups xmm1, xmmword [rbx]
xorps xmm0, xmmword [rsp + 0xb0]
xorps xmm1, xmmword [rsp + 0xc0]
movups xmmword [rbx - 0x10], xmm0
movups xmmword [rbx], xmm1
movaps xmm0, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0xc0], xmm0
movaps xmm0, xmmword [rsp + 0x1c0]
movaps xmmword [rsp + 0xb0], xmm0
movaps xmm0, xmmword [rsp + 0x1b0]
movaps xmmword [rsp + 0xa0], xmm0
movaps xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x90], xmm0
movaps xmm0, xmmword [rsp + 0x160]
movaps xmm1, xmmword [rsp + 0x170]
movaps xmm2, xmmword [rsp + 0x180]
movaps xmm3, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0x80], xmm3
movaps xmmword [rsp + 0x70], xmm2
movaps xmmword [rsp + 0x60], xmm1
movaps xmmword [rsp + 0x50], xmm0
sub rbx, 0xffffffffffffff80
cmp rdi, 0xef
jbe 0x1400021e6
add rdi, 0xffffffffffffff80
mov rcx, r15
mov rdx, rbx
call fcn.140001720
mov rax, qword [0x140036008]
movzx eax, byte [rax]
cmp al, 1
jne 0x140001f90
movaps xmm0, xmmword [rsp + 0x160]
movaps xmm1, xmmword [rsp + 0x170]
movaps xmm2, xmmword [rsp + 0x180]
movaps xmm3, xmmword [rsp + 0x190]
movaps xmm4, xmmword [rsp + 0x1a0]
movaps xmm5, xmmword [rsp + 0x1b0]
movaps xmm6, xmmword [rsp + 0x1c0]
movaps xmm7, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0xe0], xmm1
movaps xmmword [rsp + 0xf0], xmm2
movaps xmmword [rsp + 0x100], xmm3
movaps xmmword [rsp + 0x110], xmm4
movaps xmmword [rsp + 0x120], xmm5
movaps xmmword [rsp + 0x130], xmm6
movaps xmmword [rsp + 0x140], xmm7
mov rcx, rsi
mov rdx, r12
call fcn.140001830
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 + 0x160], xmm0
movaps xmmword [rsp + 0x170], xmm1
movaps xmmword [rsp + 0x180], xmm2
movaps xmmword [rsp + 0x190], xmm3
movaps xmmword [rsp + 0x1a0], xmm4
movaps xmmword [rsp + 0x1b0], xmm5
movaps xmmword [rsp + 0x1c0], xmm6
movaps xmmword [rsp + 0x1d0], xmm7
jmp 0x140001fb2
add r14, 0x10
jmp 0x1400021ed
add rbx, 0xffffffffffffff90
mov r14, rbx
add rdi, 0xffffffffffffff90
mov eax, 0xf
nop word cs:[rax + rax]
movzx ecx, byte [rsp + rax + 0x41]
xor byte [r14 + rax - 0xf], cl
movzx ecx, byte [rsp + rax + 0x42]
xor byte [r14 + rax - 0xe], cl
movzx ecx, byte [rsp + rax + 0x43]
xor byte [r14 + rax - 0xd], cl
movzx ecx, byte [rsp + rax + 0x44]
xor byte [r14 + rax - 0xc], cl
movzx ecx, byte [rsp + rax + 0x45]
xor byte [r14 + rax - 0xb], cl
movzx ecx, byte [rsp + rax + 0x46]
xor byte [r14 + rax - 0xa], cl
movzx ecx, byte [rsp + rax + 0x47]
xor byte [r14 + rax - 9], cl
movzx ecx, byte [rsp + rax + 0x48]
xor byte [r14 + rax - 8], cl
movzx ecx, byte [rsp + rax + 0x49]
xor byte [r14 + rax - 7], cl
movzx ecx, byte [rsp + rax + 0x4a]
xor byte [r14 + rax - 6], cl
movzx ecx, byte [rsp + rax + 0x4b]
xor byte [r14 + rax - 5], cl
movzx ecx, byte [rsp + rax + 0x4c]
xor byte [r14 + rax - 4], cl
movzx ecx, byte [rsp + rax + 0x4d]
xor byte [r14 + rax - 3], cl
movzx ecx, byte [rsp + rax + 0x4e]
xor byte [r14 + rax - 2], cl
movzx ecx, byte [rsp + rax + 0x4f]
xor byte [r14 + rax - 1], cl
movzx ecx, byte [rsp + rax + 0x50]
xor byte [r14 + rax], cl
add rax, 0x10
cmp rax, 0x7f
jne 0x140002200
add r14, 0x70
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0x20], xmm0
mov eax, edi
and eax, 0xf
mov qword [rsp + 0x158], rax
mov rbp, rdi
and rbp, 0xfffffffffffffff0
je 0x140002483
lea r12, [rsp + 0xe0]
xor r13d, r13d
lea rbx, [rsp + 0x20]
lea r15, [rsp + 0xd0]
xorps xmm6, xmm6
jmp 0x140002349
movups xmmword [r12 + 0x20], xmm6
movups xmmword [r12 + 0x10], xmm6
movups xmmword [r12], xmm6
movaps xmm0, xmmword [rsp + 0x20]
movaps xmmword [rsp + 0xd0], xmm0
mov r8d, 4
mov rcx, rsi
mov rdx, r15
call fcn.140011be0
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmmword [rsp + 0x20], xmm0
add r13, 0x10
cmp rbp, r13
je 0x140002483
movzx eax, byte [rsp + 0x20]
movsd xmm0, qword [r14 + r13]
movaps xmmword [rsp + 0x30], xmm0
xor al, byte [rsp + 0x30]
movups xmm0, xmmword [r14 + r13]
mov byte [r14 + r13], al
movzx eax, byte [rsp + 0x21]
xor al, byte [rsp + 0x31]
mov byte [r14 + r13 + 1], al
movzx eax, byte [rsp + 0x22]
xor al, byte [rsp + 0x32]
mov byte [r14 + r13 + 2], al
movzx eax, byte [rsp + 0x23]
xor al, byte [rsp + 0x33]
mov byte [r14 + r13 + 3], al
movzx eax, byte [rsp + 0x24]
xor al, byte [rsp + 0x34]
mov byte [r14 + r13 + 4], al
movzx eax, byte [rsp + 0x25]
xor al, byte [rsp + 0x35]
mov byte [r14 + r13 + 5], al
movzx eax, byte [rsp + 0x26]
xor al, byte [rsp + 0x36]
mov byte [r14 + r13 + 6], al
movzx eax, byte [rsp + 0x27]
xor al, byte [rsp + 0x37]
mov byte [r14 + r13 + 7], al
movzx eax, byte [rsp + 0x28]
movsd xmm1, qword [r14 + r13 + 8]
movaps xmmword [rsp + 0x40], xmm1
xor al, byte [rsp + 0x40]
mov byte [r14 + r13 + 8], al
movzx eax, byte [rsp + 0x29]
xor al, byte [rsp + 0x41]
mov byte [r14 + r13 + 9], al
movzx eax, byte [rsp + 0x2a]
xor al, byte [rsp + 0x42]
mov byte [r14 + r13 + 0xa], al
movzx eax, byte [rsp + 0x2b]
xor al, byte [rsp + 0x43]
mov byte [r14 + r13 + 0xb], al
movzx eax, byte [rsp + 0x2c]
xor al, byte [rsp + 0x44]
mov byte [r14 + r13 + 0xc], al
movzx eax, byte [rsp + 0x2d]
xor al, byte [rsp + 0x45]
mov byte [r14 + r13 + 0xd], al
movzx eax, byte [rsp + 0x2e]
xor al, byte [rsp + 0x46]
mov byte [r14 + r13 + 0xe], al
movzx eax, byte [rsp + 0x2f]
xor al, byte [rsp + 0x47]
mov byte [r14 + r13 + 0xf], al
movaps xmmword [rsp + 0x20], xmm0
mov rax, qword [0x140036008]
movzx eax, byte [rax]
cmp al, 1
jne 0x140002300
movaps xmm0, xmmword [rsp + 0x20]
movaps xmmword [rsp + 0xd0], xmm0
mov rcx, rbx
mov rdx, rsi
mov r8, r15
call fcn.1400017d0
add r13, 0x10
cmp rbp, r13
jne 0x140002349
lea rax, [rsi + 0x2c0]
mov rbx, qword [rsp + 0x158]
test rbx, rbx
je 0x14000251a
and edi, 1
cmp ebx, 1
jne 0x1400024a7
xor ecx, ecx
jmp 0x1400024fc
mov rdx, rbx
sub rdx, rdi
lea r8, [r14 + rbp]
inc r8
xor r9d, r9d
nop word [rax + rax]
movzx ecx, byte [r8 + r9 - 1]
movzx r10d, byte [rsp + r9 + 0x20]
xor r10b, cl
mov byte [r8 + r9 - 1], r10b
mov byte [rsp + r9 + 0x20], cl
lea rcx, [r9 + 2]
movzx r10d, byte [r8 + r9]
movzx r11d, byte [rsp + r9 + 0x21]
xor r11b, r10b
mov byte [r8 + r9], r11b
mov byte [rsp + r9 + 0x21], r10b
mov r9, rcx
cmp rdx, rcx
jne 0x1400024c0
test rdi, rdi
je 0x14000251a
add r14, rbp
movzx edx, byte [r14 + rcx]
movzx r8d, byte [rsp + rcx + 0x20]
xor r8b, dl
mov byte [r14 + rcx], r8b
mov byte [rsp + rcx + 0x20], dl
mov qword [rsi + 0x2d0], rbx
movaps xmm0, xmmword [rsp + 0x20]
movaps xmmword [rax], xmm0
movaps xmm6, xmmword [rsp + 0x1e0]
movaps xmm7, xmmword [rsp + 0x1f0]
add rsp, 0x208
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str.C:UsersOffender.cargo_registry_srcindex.crates.io_6f17d22bba15001fcfb_mode_0.7.1_srclib.rs
mov rcx, r15
mov rdx, rax
call fcn.14002cd50
ud2
lea r8, str.C:UsersOffender.cargo_registry_srcindex.crates.io_6f17d22bba15001fcfb_mode_0.7.1_srclib.rs
mov edx, 0x10
mov rcx, rax
call fcn.14002ccd0
ud2
lea r8, str.C:UsersOffender.cargo_registry_srcindex.crates.io_6f17d22bba15001fcfb_mode_0.7.1_srclib.rs
mov edx, 0x10
mov rcx, r15
call fcn.14002cc50
ud2