Function at 0x1a7f1c1eb30
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x130
lea rbp, [rsp + 0x40]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x1a7f1cde0c8]
xor rax, rsp
mov qword [rbp + 0xe8], rax
mov r9d, 4
mov rdi, rcx
mov r8, rdx
lea rcx, [rbp + 0xc0]
lea edx, [r9 + 0x1d]
call fcn.1a7f1c20bd0
movzx eax, byte [rbp + 0xc0]
lea rcx, [rbp + 0x60]
and eax, 0x7f
xor edx, edx
lea r8d, [rax + rax]
call fcn.1a7f1c1ede0
movdqa xmm3, xmmword [rbp + 0x70]
movdqa xmm2, xmmword [rbp + 0x80]
movdqa xmm4, xmmword [rbp + 0x60]
movdqa xmm5, xmmword [rbp + 0x90]
movups xmm0, xmmword [0x1a7f1ca9000]
movups xmm1, xmmword [0x1a7f1ca9010]
movaps xmmword [rbp + 0x30], xmm5
orps xmm5, xmm3
movaps xmmword [rbp + 0x40], xmm0
movaps xmmword [rbp + 0x20], xmm2
movaps xmmword [rbp], xmm4
orps xmm4, xmm2
orps xmm5, xmm4
movaps xmmword [rbp + 0x10], xmm3
movdqa xmm0, xmm5
movaps xmmword [rbp + 0x50], xmm1
psrldq xmm0, 8
orps xmm5, xmm0
movq rax, xmm5
lea rcx, [rax - 1]
not rax
shr rcx, 0x3f
shr rax, 0x3f
and rcx, rax
neg rcx
xor eax, eax
movq xmm2, rcx
not rcx
punpcklqdq xmm2, xmm2
movq xmm3, rcx
punpcklqdq xmm3, xmm3
nop dword [rax + rax]
movdqu xmm1, xmmword [rbp + rax*8]
movdqu xmm0, xmmword [rbp + rax*8 + 0x40]
andps xmm1, xmm2
andps xmm0, xmm3
xorps xmm1, xmm0
movdqu xmmword [rbp + rax*8 + 0x40], xmm1
add rax, 2
cmp rax, 4
jl 0x1a7f1c1ec20
mov r15d, 6
lea rsi, [0x1a7f1cab000]
lea r14d, [r15 + 0x1e]
nop word [rax + rax]
movzx ecx, r15b
mov rax, r15
shr rax, 3
and cl, 7
add r15, 7
movzx edx, byte [rbp + rax + 0xc1]
movzx eax, byte [rbp + rax + 0xc0]
shl rdx, 8
or rdx, rax
shr rdx, cl
movzx ecx, dl
mov edx, 0xff
sub rdx, rcx
mov eax, ecx
shr rax, 7
dec rax
mov rbx, rax
and rax, rcx
not rbx
lea rcx, [rbp + 0x60]
and rdx, rbx
or rdx, rax
mov r8, rdx
and edx, 1
shr r8, 1
add r8, rdx
mov rdx, rsi
call fcn.1a7f1c091e0
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0xa0]
call fcn.1a7f1c07880
and ebx, 1
dec rbx
shr rbx, 0x3f
dec rbx
xor eax, eax
movq xmm2, rbx
not rbx
punpcklqdq xmm2, xmm2
movq xmm3, rbx
punpcklqdq xmm3, xmm3
nop
movdqu xmm0, xmmword [rbp + rax + 0x80]
movdqu xmm1, xmmword [rbp + rax + 0xa0]
andps xmm0, xmm3
andps xmm1, xmm2
xorps xmm1, xmm0
movdqu xmmword [rbp + rax + 0x80], xmm1
add rax, 0x10
cmp rax, 0x20
jl 0x1a7f1c1ed00
lea r8, [rbp + 0x60]
lea rdx, [rbp]
lea rcx, [rbp]
call fcn.1a7f1c0a240
add rsi, 0x1000
sub r14, 1
jne 0x1a7f1c1ec60
mov rax, qword [rbp]
mov qword [rdi], rax
mov rax, qword [rbp + 8]
mov qword [rdi + 8], rax
mov rax, qword [rbp + 0x10]
mov qword [rdi + 0x10], rax
mov rax, qword [rbp + 0x18]
mov qword [rdi + 0x18], rax
mov rax, qword [rbp + 0x20]
mov qword [rdi + 0x20], rax
mov rax, qword [rbp + 0x28]
mov qword [rdi + 0x28], rax
mov rax, qword [rbp + 0x30]
mov qword [rdi + 0x30], rax
mov rax, qword [rbp + 0x38]
mov qword [rdi + 0x38], rax
mov rax, qword [rbp + 0x40]
mov qword [rdi + 0x40], rax
mov rax, qword [rbp + 0x48]
mov qword [rdi + 0x48], rax
mov rax, qword [rbp + 0x50]
mov qword [rdi + 0x50], rax
mov rax, qword [rbp + 0x58]
mov qword [rdi + 0x58], rax
mov rcx, qword [rbp + 0xe8]
xor rcx, rsp
call fcn.1a7f1c210f0
mov rbx, qword [rsp + 0x170]
add rsp, 0x130
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret