Function at 0x140280b00
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x150
movdqa xmmword [rsp + 0x140], xmm10
movdqa xmmword [rsp + 0x130], xmm9
movdqa xmmword [rsp + 0x120], xmm8
movdqa xmmword [rsp + 0x110], xmm7
movdqa xmmword [rsp + 0x100], xmm6
mov rdi, rdx
mov rsi, rcx
mov eax, dword [rcx + 0x30]
movzx ecx, byte [rcx + 0x80]
mov r9d, 0xffffffff
xor r9, rax
test rcx, rcx
je 0x140280bae
mov edx, 0x40
sub rdx, rcx
mov rax, r8
sub rax, rdx
jbe 0x140280b84
mov r10d, eax
and r10d, 0x3f
shr rax, 6
cmp r10, 1
sbb rax, 0xffffffffffffffff
cmp rax, r9
ja 0x140280bd0
lea rax, [rsi + rcx]
add rax, 0x40
mov r15, r8
sub r15, rdx
jae 0x140280bfe
test r8, r8
je 0x140280cc5
cmp r8, 8
jae 0x140280c3f
xor edx, edx
jmp 0x140280cb0
xor ecx, ecx
mov r14, r8
and r14, 0x3f
setne cl
mov rax, r8
shr rax, 6
add rcx, rax
mov r15, r8
cmp rcx, r9
jbe 0x140280d36
lea rax, [0x1403a56b8]
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x1403a5678]
lea r8, [rsp + 0x80]
mov edx, 0x2b
call fcn.14013bd80
ud2
cmp cl, 0x38
jbe 0x140280c0a
xor ecx, ecx
jmp 0x140280d10
cmp cl, 0x30
jbe 0x140280cd0
xor ecx, ecx
mov r8, rcx
mov ecx, edx
and ecx, 0x78
nop dword [rax]
mov r9, qword [rax + r8]
xor qword [rdi + r8], r9
add r8, 8
cmp rcx, r8
jne 0x140280c20
cmp rdx, rcx
jne 0x140280d10
jmp 0x140280d25
mov rdx, r8
and rdx, 0xfffffffffffffff8
mov r9, qword [rax]
xor qword [rdi], r9
cmp rdx, 8
je 0x140280ca0
mov r9, qword [rax + 8]
xor qword [rdi + 8], r9
cmp rdx, 0x10
je 0x140280ca0
mov r9, qword [rax + 0x10]
xor qword [rdi + 0x10], r9
cmp rdx, 0x18
je 0x140280ca0
mov r9, qword [rax + 0x18]
xor qword [rdi + 0x18], r9
cmp rdx, 0x20
je 0x140280ca0
mov r9, qword [rax + 0x20]
xor qword [rdi + 0x20], r9
cmp rdx, 0x28
je 0x140280ca0
mov r9, qword [rax + 0x28]
xor qword [rdi + 0x28], r9
cmp rdx, 0x30
je 0x140280ca0
mov r9, qword [rax + 0x30]
xor qword [rdi + 0x30], r9
cmp rdx, r8
je 0x140280cc5
nop word cs:[rax + rax]
movzx r9d, byte [rax + rdx]
xor byte [rdi + rdx], r9b
lea r9, [rdx + 1]
mov rdx, r9
cmp r8, r9
jne 0x140280cb0
add r8b, cl
mov r14d, r8d
jmp 0x140281233
mov ecx, edx
and ecx, 0x70
xor r8d, r8d
nop dword [rax + rax]
movdqu xmm0, xmmword [rdi + r8]
movdqu xmm1, xmmword [rax + r8]
pxor xmm1, xmm0
movdqu xmmword [rdi + r8], xmm1
add r8, 0x10
cmp rcx, r8
jne 0x140280ce0
cmp rdx, rcx
je 0x140280d25
test dl, 8
jne 0x140280c15
nop dword [rax]
movzx r8d, byte [rax + rcx]
xor byte [rdi + rcx], r8b
lea r8, [rcx + 1]
mov rcx, r8
cmp rdx, r8
jne 0x140280d10
add rdi, rdx
mov rax, r15
shr rax, 6
mov r14d, r15d
and r14d, 0x3f
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rax
movzx ecx, byte [0x14030584a]
cmp cl, 1
jne 0x140280d6c
lea rdx, [rsp + 0x28]
mov rcx, rsi
call fcn.140281580
test r14, r14
jne 0x140280fff
jmp 0x140281233
movdqu xmm0, xmmword [rsi + 0x30]
cmp r15, 0x40
jb 0x140280ff1
movdqu xmm1, xmmword [rsi]
movdqu xmm2, xmmword [rsi + 0x10]
movdqu xmm3, xmmword [rsi + 0x20]
mov ecx, 1
pxor xmm4, xmm4
movdqa xmm5, xmmword [0x14030e140]
mov rdx, rdi
nop dword [rax]
mov r8d, 0xa
movdqa xmm8, xmm1
movdqa xmm6, xmm2
movdqa xmm7, xmm0
movdqa xmm9, xmm3
nop dword [rax + rax]
paddd xmm8, xmm6
pxor xmm7, xmm8
movdqa xmm10, xmm7
psrld xmm10, 0x10
pslld xmm7, 0x10
por xmm7, xmm10
paddd xmm9, xmm7
pxor xmm6, xmm9
movdqa xmm10, xmm6
psrld xmm10, 0x14
pslld xmm6, 0xc
por xmm6, xmm10
paddd xmm8, xmm6
pxor xmm7, xmm8
movdqa xmm10, xmm7
psrld xmm10, 0x18
pslld xmm7, 8
por xmm7, xmm10
paddd xmm9, xmm7
pxor xmm6, xmm9
movdqa xmm10, xmm6
psrld xmm10, 0x19
pslld xmm6, 7
por xmm6, xmm10
pshufd xmm9, xmm9, 0x39
pshufd xmm7, xmm7, 0x4e
pshufd xmm8, xmm8, 0x93
paddd xmm8, xmm6
pxor xmm7, xmm8
movdqa xmm10, xmm7
psrld xmm10, 0x10
pslld xmm7, 0x10
por xmm7, xmm10
paddd xmm9, xmm7
pxor xmm6, xmm9
movdqa xmm10, xmm6
psrld xmm10, 0x14
pslld xmm6, 0xc
por xmm6, xmm10
paddd xmm8, xmm6
pxor xmm7, xmm8
movdqa xmm10, xmm7
psrld xmm10, 0x18
pslld xmm7, 8
por xmm7, xmm10
paddd xmm9, xmm7
pxor xmm6, xmm9
movdqa xmm10, xmm6
psrld xmm10, 0x19
pslld xmm6, 7
por xmm6, xmm10
pshufd xmm9, xmm9, 0x93
pshufd xmm7, xmm7, 0x4e
pshufd xmm8, xmm8, 0x39
dec r8
jne 0x140280dc0
xor r8d, r8d
paddd xmm8, xmm1
paddd xmm6, xmm2
paddd xmm9, xmm3
paddd xmm7, xmm0
movdqa xmmword [rsp + 0x40], xmm8
movdqa xmmword [rsp + 0x50], xmm6
movdqa xmmword [rsp + 0x60], xmm9
movdqa xmmword [rsp + 0x70], xmm7
movdqu xmm6, xmmword [rdx]
movdqu xmm7, xmmword [rdx + 0x10]
movups xmm8, xmmword [rdx + 0x20]
movups xmm9, xmmword [rdx + 0x30]
movaps xmmword [rsp + 0xf0], xmm9
movdqa xmmword [rsp + 0xd0], xmm7
movdqa xmmword [rsp + 0xc0], xmm6
pxor xmm6, xmmword [rsp + 0x40]
pxor xmm7, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0xe0], xmm8
movdqa xmm8, xmmword [rsp + 0x60]
pxor xmm8, xmmword [rsp + 0xe0]
cmp rax, rcx
movdqa xmm9, xmmword [rsp + 0x70]
pxor xmm9, xmmword [rsp + 0xf0]
setne r8b
movdqu xmmword [rdx + 0x30], xmm9
movdqu xmmword [rdx + 0x20], xmm8
movdqu xmmword [rdx + 0x10], xmm7
movdqu xmmword [rdx], xmm6
mov rdx, rcx
shl rdx, 6
add rdx, rdi
add r8, rcx
movdqa xmmword [rsp + 0xb0], xmm4
movdqa xmmword [rsp + 0xa0], xmm4
movdqa xmmword [rsp + 0x90], xmm4
movdqa xmmword [rsp + 0x80], xmm6
movdqa xmmword [rsp + 0x90], xmm7
movdqa xmmword [rsp + 0xa0], xmm8
movdqa xmmword [rsp + 0xb0], xmm9
paddd xmm0, xmm5
cmp rax, rcx
mov rcx, r8
jne 0x140280da0
movd dword [rsi + 0x30], xmm0
test r14, r14
je 0x140281233
and r15, 0xffffffffffffffc0
lea rbx, [rsi + 0x40]
movzx eax, byte [0x14030584a]
cmp al, 1
jne 0x14028103b
mov rcx, rsi
mov rdx, rbx
call fcn.140282010
add rdi, r15
cmp r14d, 8
jb 0x1402811b9
cmp r14d, 0x20
jae 0x1402811bd
xor eax, eax
jmp 0x1402811f2
movdqu xmm4, xmmword [rsi]
movdqu xmm2, xmmword [rsi + 0x10]
movdqu xmm1, xmmword [rsi + 0x20]
movdqu xmm0, xmmword [rsi + 0x30]
mov eax, 0xa
movdqa xmm6, xmm4
movdqa xmm3, xmm2
movdqa xmm5, xmm0
movdqa xmm7, xmm1
nop word cs:[rax + rax]
paddd xmm6, xmm3
pxor xmm5, xmm6
movdqa xmm8, xmm5
psrld xmm8, 0x10
pslld xmm5, 0x10
por xmm5, xmm8
paddd xmm7, xmm5
pxor xmm3, xmm7
movdqa xmm8, xmm3
psrld xmm8, 0x14
pslld xmm3, 0xc
por xmm3, xmm8
paddd xmm6, xmm3
pxor xmm5, xmm6
movdqa xmm8, xmm5
psrld xmm8, 0x18
pslld xmm5, 8
por xmm5, xmm8
paddd xmm7, xmm5
pxor xmm3, xmm7
movdqa xmm8, xmm3
psrld xmm8, 0x19
pslld xmm3, 7
por xmm3, xmm8
pshufd xmm7, xmm7, 0x39
pshufd xmm5, xmm5, 0x4e
pshufd xmm6, xmm6, 0x93
paddd xmm6, xmm3
pxor xmm5, xmm6
movdqa xmm8, xmm5
psrld xmm8, 0x10
pslld xmm5, 0x10
por xmm5, xmm8
paddd xmm7, xmm5
pxor xmm3, xmm7
movdqa xmm8, xmm3
psrld xmm8, 0x14
pslld xmm3, 0xc
por xmm3, xmm8
paddd xmm6, xmm3
pxor xmm5, xmm6
movdqa xmm8, xmm5
psrld xmm8, 0x18
pslld xmm5, 8
por xmm5, xmm8
paddd xmm7, xmm5
pxor xmm3, xmm7
movdqa xmm8, xmm3
psrld xmm8, 0x19
pslld xmm3, 7
por xmm3, xmm8
pshufd xmm7, xmm7, 0x93
pshufd xmm5, xmm5, 0x4e
pshufd xmm6, xmm6, 0x39
dec rax
jne 0x140281070
paddd xmm6, xmm4
paddd xmm3, xmm2
paddd xmm7, xmm1
paddd xmm5, xmm0
movdqu xmmword [rsi + 0x40], xmm6
movdqu xmmword [rsi + 0x50], xmm3
movdqu xmmword [rsi + 0x60], xmm7
movdqu xmmword [rsi + 0x70], xmm5
movd eax, xmm0
inc eax
mov dword [rsi + 0x30], eax
add rdi, r15
cmp r14d, 8
jae 0x14028102a
xor eax, eax
jmp 0x140281220
mov eax, r14d
and eax, 0xffffffe0
movdqu xmm0, xmmword [rdi]
movdqu xmm1, xmmword [rdi + 0x10]
movdqu xmm2, xmmword [rsi + 0x40]
pxor xmm2, xmm0
movdqu xmm0, xmmword [rsi + 0x50]
pxor xmm0, xmm1
movdqu xmmword [rdi], xmm2
movdqu xmmword [rdi + 0x10], xmm0
cmp r14, rax
je 0x140281233
test r14b, 0x18
je 0x140281220
mov rcx, rax
mov eax, r14d
and eax, 0xfffffff8
nop dword [rax + rax]
mov rdx, qword [rbx + rcx]
xor qword [rdi + rcx], rdx
add rcx, 8
cmp rax, rcx
jne 0x140281200
cmp r14, rax
je 0x140281233
nop word cs:[rax + rax]
movzx ecx, byte [rbx + rax]
xor byte [rdi + rax], cl
lea rcx, [rax + 1]
mov rax, rcx
cmp r14, rcx
jne 0x140281220
mov byte [rsi + 0x80], r14b
movaps xmm6, xmmword [rsp + 0x100]
movaps xmm7, xmmword [rsp + 0x110]
movaps xmm8, xmmword [rsp + 0x120]
movaps xmm9, xmmword [rsp + 0x130]
movaps xmm10, xmmword [rsp + 0x140]
add rsp, 0x150
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret