Function at 0x2b3689070
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x258
movdqu xmm2, xmmword [rcx]
movdqu xmm3, xmmword [rcx + 0x10]
movdqu xmm4, xmmword [rdx]
movdqu xmm5, xmmword [rdx + 0x10]
mov qword [rsp + 0x20], r9
mov rdi, rcx
mov r9, r8
mov rbx, rdx
lea rsi, [rsp + 0x1d0]
mov r8d, 0x40
lea rcx, [rsp + 0x70]
movaps xmmword [rsp + 0x1d0], xmm2
mov rdx, rsi
lea r15, [rsp + 0x150]
movaps xmmword [rsp + 0x1e0], xmm3
lea r13, [rsp + 0xb0]
movaps xmmword [rsp + 0x1f0], xmm4
lea r14, [rsp + 0x1f0]
lea r12, [rsp + 0xd0]
movaps xmmword [rsp + 0x200], xmm5
call fcn.2b36867d0
lea rdx, [rdi + 0x20]
mov rcx, rsi
call fcn.2b36879e0
lea rdx, [rsp + 0x230]
mov rcx, r15
call fcn.2b3685e90
mov r8, r15
mov rdx, rsi
mov rcx, r13
call fcn.2b3685db0
mov rdx, r14
mov r8, r15
mov rcx, r12
call fcn.2b3685db0
mov rcx, r13
mov r14d, 0xff
call fcn.2b3685ce0
mov rcx, r12
call fcn.2b3685ce0
mov rcx, r15
movdqa xmm2, xmmword [rsp + 0xb0]
movdqa xmm3, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0x150], xmm2
movaps xmmword [rsp + 0x160], xmm3
call fcn.2b3685ce0
lea rcx, [rsp + 0x30]
movdqa xmm4, xmmword [rsp + 0xd0]
movdqa xmm5, xmmword [rsp + 0xe0]
movzx r10d, byte [rsp + 0x150]
movaps xmmword [rsp + 0x30], xmm4
movaps xmmword [rsp + 0x40], xmm5
shl r10d, 7
call fcn.2b3685ce0
mov r8, rbx
mov rdx, rsi
mov rcx, r15
or byte [rsp + 0x4f], r10b
call fcn.2b3688be0
lea rcx, [rsp + 0x110]
mov r8, rsi
mov rdx, r15
movdqa xmm2, xmmword [rsp + 0x150]
mov ebp, eax
movdqa xmm3, xmmword [rsp + 0x160]
mov dword [rsp + 0x130], 1
movdqa xmm4, xmmword [rsp + 0x1d0]
movdqa xmm5, xmmword [rsp + 0x1e0]
mov qword [rsp + 0x134], 0
movaps xmmword [rsp + 0xd0], xmm2
movaps xmmword [rsp + 0xe0], xmm3
movaps xmmword [rsp + 0xf0], xmm4
movaps xmmword [rsp + 0x100], xmm5
mov qword [rsp + 0x13c], 0
mov qword [rsp + 0x144], 0
mov dword [rsp + 0x14c], 0
call fcn.2b3685db0
movdqa xmm2, xmmword [0x2b3759060]
movdqa xmm3, xmmword [0x2b3759070]
movdqa xmm4, xmmword [0x2b3759080]
movdqa xmm5, xmmword [0x2b3759090]
movaps xmmword [rsp + 0x150], xmm2
movdqa xmm2, xmmword [0x2b37590a0]
movaps xmmword [rsp + 0x160], xmm3
movdqa xmm3, xmmword [0x2b37590b0]
movaps xmmword [rsp + 0x170], xmm4
movdqa xmm4, xmmword [0x2b37590c0]
movaps xmmword [rsp + 0x180], xmm5
movdqa xmm5, xmmword [0x2b37590d0]
movaps xmmword [rsp + 0x190], xmm2
movaps xmmword [rsp + 0x1a0], xmm3
movaps xmmword [rsp + 0x1b0], xmm4
movaps xmmword [rsp + 0x1c0], xmm5
nop
mov eax, r14d
mov ecx, r14d
mov rdx, r15
sar eax, 3
and ecx, 7
cdqe
movzx ebx, byte [rsp + rax + 0x70]
sar ebx, cl
mov rcx, r15
call fcn.2b3687550
and ebx, 1
mov r8, r12
mov rdx, r15
neg ebx
mov rcx, rsi
call fcn.2b3688730
movd xmm0, ebx
movdqa xmm1, xmmword [rsp + 0x150]
pxor xmm1, xmmword [rsp + 0x1d0]
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
pshufd xmm0, xmm0, 0
pand xmm1, xmm0
pxor xmm1, xmmword [rsp + 0x150]
movaps xmmword [rsp + 0x150], xmm1
movdqa xmm1, xmmword [rsp + 0x160]
pxor xmm1, xmmword [rsp + 0x1e0]
pand xmm1, xmm0
pxor xmm1, xmmword [rsp + 0x160]
movaps xmmword [rsp + 0x160], xmm1
movdqa xmm1, xmmword [rsp + 0x170]
pxor xmm1, xmmword [rsp + 0x1f0]
pand xmm1, xmm0
pxor xmm1, xmmword [rsp + 0x170]
movaps xmmword [rsp + 0x170], xmm1
movdqa xmm1, xmmword [rsp + 0x180]
pxor xmm1, xmmword [rsp + 0x200]
pand xmm1, xmm0
pxor xmm1, xmmword [rsp + 0x180]
movaps xmmword [rsp + 0x180], xmm1
movdqa xmm1, xmmword [rsp + 0x1b0]
pxor xmm1, xmmword [rsp + 0x230]
pand xmm1, xmm0
pxor xmm1, xmmword [rsp + 0x1b0]
movaps xmmword [rsp + 0x1b0], xmm1
movdqa xmm1, xmmword [rsp + 0x1c0]
pxor xmm1, xmmword [rsp + 0x240]
pand xmm1, xmm0
pxor xmm1, xmmword [rsp + 0x1c0]
movaps xmmword [rsp + 0x1c0], xmm1
movdqa xmm1, xmmword [rsp + 0x190]
pxor xmm1, xmmword [rsp + 0x210]
pand xmm1, xmm0
pxor xmm1, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0x190], xmm1
movdqa xmm1, xmmword [rsp + 0x1a0]
pxor xmm1, xmmword [rsp + 0x220]
pand xmm0, xmm1
pxor xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x1a0], xmm0
sub r14d, 1
jae 0x2b36892d0
movdqa xmm2, xmmword [rsp + 0x150]
mov r8, rdi
mov rdx, r15
movdqa xmm3, xmmword [rsp + 0x160]
movdqa xmm4, xmmword [rsp + 0x170]
mov rcx, r13
movdqa xmm5, xmmword [rsp + 0x180]
lea r14, [rsp + 0x90]
movaps xmmword [rsp + 0xd0], xmm2
movdqa xmm2, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0xe0], xmm3
movdqa xmm3, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0xf0], xmm4
movdqa xmm4, xmmword [rsp + 0x1b0]
movaps xmmword [rsp + 0x100], xmm5
movdqa xmm5, xmmword [rsp + 0x1c0]
movaps xmmword [rsp + 0x110], xmm2
movaps xmmword [rsp + 0x120], xmm3
movaps xmmword [rsp + 0x130], xmm4
movaps xmmword [rsp + 0x140], xmm5
call fcn.2b3688be0
lea rcx, [rsp + 0x210]
mov r8, r15
mov rdx, r13
movdqa xmm2, xmmword [rsp + 0xb0]
mov ebx, eax
movdqa xmm3, xmmword [rsp + 0xc0]
mov dword [rsp + 0x230], 1
movdqa xmm4, xmmword [rsp + 0x150]
movdqa xmm5, xmmword [rsp + 0x160]
mov qword [rsp + 0x234], 0
movaps xmmword [rsp + 0x1d0], xmm2
movaps xmmword [rsp + 0x1e0], xmm3
movaps xmmword [rsp + 0x1f0], xmm4
movaps xmmword [rsp + 0x200], xmm5
mov qword [rsp + 0x23c], 0
mov qword [rsp + 0x244], 0
mov dword [rsp + 0x24c], 0
call fcn.2b3685db0
mov r8, rsi
mov rdx, r12
mov rcx, r12
call fcn.2b3688730
lea rdx, [rsp + 0x130]
mov rcx, r15
call fcn.2b3685e90
mov r8, r15
mov rdx, r12
mov rcx, r14
call fcn.2b3685db0
lea rdx, [rsp + 0xf0]
mov r8, r15
mov rcx, r13
call fcn.2b3685db0
mov rcx, r14
call fcn.2b3685ce0
mov rcx, r13
call fcn.2b3685ce0
mov rcx, r15
movdqa xmm2, xmmword [rsp + 0x90]
movdqa xmm3, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x150], xmm2
movaps xmmword [rsp + 0x160], xmm3
call fcn.2b3685ce0
lea rcx, [rsp + 0x50]
movzx r10d, byte [rsp + 0x150]
movdqa xmm4, xmmword [rsp + 0xb0]
movdqa xmm5, xmmword [rsp + 0xc0]
shl r10d, 7
movaps xmmword [rsp + 0x50], xmm4
movaps xmmword [rsp + 0x60], xmm5
call fcn.2b3685ce0
or byte [rsp + 0x6f], r10b
movdqa xmm0, xmmword [rsp + 0x30]
movdqa xmm1, xmmword [rsp + 0x40]
pxor xmm0, xmmword [rsp + 0x50]
pxor xmm1, xmmword [rsp + 0x60]
por xmm0, xmm1
movdqa xmm1, xmm0
psrldq xmm1, 8
por xmm0, xmm1
movdqa xmm1, xmm0
psrldq xmm1, 4
por xmm0, xmm1
movdqa xmm1, xmm0
psrldq xmm1, 2
por xmm0, xmm1
movdqa xmm1, xmm0
psrldq xmm1, 1
por xmm0, xmm1
movd eax, xmm0
mov edx, eax
shr dl, 4
or eax, edx
mov edx, eax
shr dl, 2
or eax, edx
mov edx, eax
shr dl, 1
or eax, edx
not eax
and eax, ebx
and eax, ebp
and eax, 1
add rsp, 0x258
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret