Function at 0x140010840
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0xd8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x50], 0xfffffffffffffffe
movzx eax, byte [0x140b65265]
mov ecx, 0x7df200
mov edx, 1
call fcn.14001a120
test rax, rax
je 0x140010b6e
lea rdx, [0x14021fba8]
mov r8d, 0x7df200
mov qword [rbp + 0x48], rax
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
xorps xmm0, xmm0
movaps xmmword [rbp + 0x30], xmm0
movaps xmmword [rbp + 0x20], xmm0
movaps xmmword [rbp + 0x10], xmm0
movaps xmmword [rbp], xmm0
mov ecx, 0x7948163d
mov rax, 0xfffffffffffffffc
nop word cs:[rax + rax]
mov edx, ecx
shl edx, 0xd
xor edx, ecx
mov r8d, edx
shr r8d, 0x11
xor r8d, edx
mov ecx, r8d
shl ecx, 5
xor ecx, r8d
mov dword [rbp + rax + 4], ecx
add rax, 4
cmp rax, 0x3c
jb 0x1400108c0
mov rax, qword [0x1409fedc0]
xor rax, qword [rbp]
mov rcx, qword [0x1409fedc8]
xor rcx, qword [rbp + 8]
mov rdx, qword [0x1409fedd0]
xor rdx, qword [rbp + 0x10]
mov r8, qword [0x1409fedd8]
xor r8, qword [rbp + 0x18]
mov r9, qword [0x1409fede0]
xor r9, qword [rbp + 0x20]
mov r10, qword [0x1409fede8]
xor r10, qword [rbp + 0x28]
mov r11, qword [0x1409fedf0]
xor r11, qword [rbp + 0x30]
mov rsi, qword [0x1409fedf8]
xor rsi, qword [rbp + 0x38]
mov qword [rbp], rax
mov qword [rbp + 8], rcx
mov qword [rbp + 0x10], rdx
mov qword [rbp + 0x18], r8
mov qword [rbp + 0x20], r9
mov qword [rbp + 0x28], r10
mov qword [rbp + 0x30], r11
mov qword [rbp + 0x38], rsi
lea rcx, [rbp - 0x30]
mov rdx, rbp
mov r8d, 0x40
mov r9d, 0x20
call fcn.1400df310
cmp qword [rbp - 0x30], 0
mov rdx, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x20]
je 0x1400109a1
lea rax, [rdx*2]
test rax, rax
mov rbx, qword [rbp + 0x48]
je 0x140010aff
jmp 0x140010af4
mov rax, qword [rbp - 0x18]
test rax, rax
mov rbx, qword [rbp + 0x48]
je 0x140010b8e
mov r15d, 0x7df200
mov r14, rbx
jmp 0x1400109c9
sub r15, r8
je 0x140010aef
mov r9, r14
cmp r15, rax
mov r8, rax
cmovb r8, r15
add r14, r8
cmp r8, 8
jb 0x1400109ed
lea r10, [rcx + r8]
cmp r9, r10
jae 0x140010a60
cmp rcx, r14
jae 0x140010a60
xor r10d, r10d
mov rsi, r8
mov r11, r10
and rsi, 3
je 0x140010a15
mov rdi, r10
nop
movzx r11d, byte [rcx + rdi]
xor byte [r9 + rdi], r11b
lea r11, [rdi + 1]
mov rdi, r11
dec rsi
jne 0x140010a00
sub r10, r8
cmp r10, 0xfffffffffffffffc
ja 0x1400109c0
nop
movzx r10d, byte [rcx + r11]
xor byte [r9 + r11], r10b
movzx r10d, byte [rcx + r11 + 1]
xor byte [r9 + r11 + 1], r10b
movzx r10d, byte [rcx + r11 + 2]
xor byte [r9 + r11 + 2], r10b
movzx r10d, byte [rcx + r11 + 3]
xor byte [r9 + r11 + 3], r10b
lea r10, [r11 + 4]
mov r11, r10
cmp r8, r10
jne 0x140010a20
jmp 0x1400109c0
cmp r8, 0x20
jae 0x140010a6b
xor r10d, r10d
jmp 0x140010ac3
mov r10, r8
and r10, 0xffffffffffffffe0
xor r11d, r11d
nop word cs:[rax + rax]
movups xmm0, xmmword [rcx + r11]
movups xmm1, xmmword [rcx + r11 + 0x10]
movups xmm2, xmmword [r9 + r11]
xorps xmm2, xmm0
movups xmm0, xmmword [r9 + r11 + 0x10]
xorps xmm0, xmm1
movups xmmword [r9 + r11], xmm2
movups xmmword [r9 + r11 + 0x10], xmm0
add r11, 0x20
cmp r10, r11
jne 0x140010a80
cmp r8, r10
je 0x1400109c0
test r8b, 0x18
je 0x1400109f0
mov r11, r10
mov r10, r8
and r10, 0xfffffffffffffff8
nop dword [rax]
mov rsi, qword [rcx + r11]
xor qword [r9 + r11], rsi
add r11, 8
cmp r10, r11
jne 0x140010ad0
cmp r8, r10
je 0x1400109c0
jmp 0x1400109f0
test rdx, rdx
je 0x140010aff
mov r8d, 1
call fcn.14001a130
movzx eax, byte [0x140b65265]
mov ecx, 0x7df200
mov edx, 1
call fcn.14001a120
test rax, rax
je 0x140010b7d
mov rsi, rax
mov r8d, 0x7df200
mov rcx, rax
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov edx, 0x7df200
mov r8d, 1
mov rcx, rbx
call fcn.14001a130
mov qword [rbp], 0x7df200
mov qword [rbp + 8], rsi
mov qword [rbp + 0x10], 0x7df200
mov rcx, rbp
call fcn.140007a60
nop
add rsp, 0xd8
pop rbx
pop rdi
pop rsi
pop r14
pop r15
pop rbp
ret
mov ecx, 1
mov edx, 0x7df200
call fcn.14021cf70
mov ecx, 1
mov edx, 0x7df200
call fcn.14021cf70
jmp 0x140010bcb
mov qword [rbp - 0x10], rcx
mov qword [rbp - 8], rdx
lea rax, [0x14021fa50]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], 1
lea rax, str.C:Userslucak.cargo_registry_srcindex.crates.io_6f17d22bba15001finclude_crypt_crypto_0.1.0_srcxor.rs
mov qword [rbp - 0x50], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
lea rdx, str.C:Userslucak.cargo_registry_srcindex.crates.io_6f17d22bba15001finclude_crypt_crypto_0.1.0_srcxor.rs
lea rcx, [rbp - 0x60]
call fcn.14021d190
ud2