Function at 0x2f887bfb1
Capabilities:
Encode data using xor

Disassembly:
push rcx
addss xmm6, xmm11
emms
paddusw mm1, mm3
ror cx, 7
emms
push r8
not r8
neg r8d
or cl, r8b
addps xmm8, xmm3
movups xmm2, xmm4
pop r8
shl rcx, 9
nop
dec rcx
paddsb mm3, mm4
dec rcx
maxss xmm12, xmm5
pop rcx
mov qword [rsp + 8], rcx
push r11
psllq mm7, 0x1e
push rdx
emms
push r8
shr dx, 0x11
push r13
rcl r13b, 0x13
push rax
rcpss xmm2, xmm3
push r9
emms
pop r9
punpckhbw mm4, mm2
pop rax
nop
pop r13
sar edx, 3
pop r8
cmp r11d, edx
pop rdx
nop
pop r11
mov qword [rsp + 0x10], rdx
push r12
emms
not r12d
movlhps xmm6, xmm10
push r14
add r12b, r14b
emms
push r15
nop
pop r15
punpckldq mm5, mm1
sub r14, r12
pop r14
nop
paddusb mm3, mm0
inc r12d
pop r12
mov qword [rsp + 0x18], r8
push rbx
inc rbx
push r10
nop
push r11
pmullw mm3, mm6
pop r11
nop
pop r10
shr rbx, 4
pop rbx
mov qword [rsp + 0x20], r9
push rdx
sar dx, 9
pop rdx
sub rsp, 0x64
push rdx
mov rdx, 2
push rax
dec rax
push r13
cmp r13d, eax
emms
push r12
nop
inc eax
psrld mm6, 0x55
pop r12
xorps xmm1, xmm2
add eax, r13d
pop r13
nop
pop rax
dec rdx
jne 0x2f887c081
pop rdx
mov rcx, 0x3e5ac037
push r14
emms
pop r14
call fcn.2f88776cf
cmp r10, 0x1e
jne 0x2f887c0c8
push r15
not r15d
pop r15
jmp 0x2f887c0d0
push r10
psrld mm7, 0x42
pop r10
push r13
mulps xmm5, xmm12
pop r13
mov r15, rax
push r12
nop
push rdx
xadd r12d, edx
push rbx
xorps xmm14, xmm4
push rcx
or edx, ecx
push r13
emms
push r9
nop
push r10
emms
pop r10
emms
pop r9
psllq mm0, 0x51
pop r13
emms
pop rcx
emms
pop rbx
inc r12
pop rdx
punpckldq mm5, mm1
pop r12
mov rcx, 0x3e5ac037
cmp r10w, r11w
jne 0x2f887c12f
push rcx
xorps xmm10, xmm1
push rax
nop
emms
pop rax
psrad mm7, 0x13
pop rcx
jmp 0x2f887c142
push r10
emms
push r12
inc r12
punpckldq mm7, mm4
pop r12
packssdw mm7, mm4
pop r10
push rdx
dec rdx
push r14
neg dl
ror dl, 0x16
pop r14
subps xmm7, xmm13
pop rdx
call fcn.2f887785e
push rcx
mov rcx, 3
push r10
pop r10
dec rcx
jne 0x2f887c161
pop rcx
add rsp, 0x64
cmp r10d, 0x64
jne 0x2f887c1a0
push rax
nop
push r9
psrld mm7, 9
shl ax, 0x17
pop r9
maxss xmm10, xmm0
pop rax
jmp 0x2f887c1b4
push r13
shr r13d, 4
push rcx
shl cx, 8
psrad mm0, 0x5b
pop rcx
emms
pop r13
push r14
nop
push r11
sbb r14d, r11d
emms
pop r11
psrld mm1, 0x41
pop r14
mov rcx, qword [rsp + 8]
push rax
mov rax, 2
push rbx
push r14
pop r14
pop rbx
dec rax
jne 0x2f887c1d3
pop rax
mov rdx, qword [rsp + 0x10]
cmp r10w, 0x36
jne 0x2f887c20c
push rbx
pcmpgtd mm2, mm6
push rdx
nop
psraw mm3, 0x1d
pop rdx
packsswb mm2, mm5
pop rbx
jmp 0x2f887c21e
push r9
pcmpgtb mm1, mm3
push r12
nop
dec r12d
pop r12
dec r9
pop r9
push rax
sub eax, 4
push r15
shr r15d, 7
rcl ax, 0x15
pop r15
nop
pop rax
mov r8, qword [rsp + 0x18]
push r9
pcmpeqd mm0, mm5
psrlw mm4, 0x34
push r10
psraw mm1, 0x30
dec r10
push r13
not r10d
emms
push rcx
mov r10, 0xe
inc ecx
push rax
sub ecx, 0x17
nop
pop rax
rcl r10d, 4
shl r9, 0xb
pop rcx
movaps xmm11, xmm7
psraw mm0, 0xc
pop r13
movups xmm1, xmm13
emms
pop r10
psrad mm1, 0x5f
emms
pop r9
mov r9, qword [rsp + 0x20]
push rbx
comiss xmm5, xmm15
rcpss xmm3, xmm14
nop
andps xmm11, xmm12
dec ebx
push r8
maxps xmm2, xmm9
nop
cmp r8, rbx
neg bl
push r11
emms
nop
cmp r8w, r11w
push r12
mulps xmm1, xmm8
rcl r11, 0xc
push rax
psrlw mm0, 0x1f
pop rax
sub r11, r8
xadd r8w, bx
pop r12
minps xmm11, xmm0
orps xmm3, xmm10
sbb rbx, r11
pop r11
emms
pandn mm6, mm0
emms
punpckldq mm0, mm2
pop r8
rol bx, 1
shl bx, 7
not rbx
sbb bx, 0x13
psraw mm5, 0x55
pop rbx
mov r10, rcx
push r14
mov r14, 1
push r13
push rcx
pop rcx
pop r13
dec r14
jne 0x2f887c2fe
pop r14
jmp r15