Function at 0x1400fec00
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
lea rbp, [rsp - 0x48]
sub rsp, 0x148
mov rax, qword [0x1402376b8]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov rbx, rcx
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x38], r9
mov r9d, dword [rcx + 4]
mov rcx, qword [rcx + 0xa0]
mov r8d, r9d
rol rcx, 0x20
mov rdx, rcx
mov rax, rcx
shl rcx, 0x10
shl rax, 0x10
shr rdx, 0x10
xor rdx, rax
movabs rax, 0xffff0000ffff
and rdx, rax
xor rdx, rcx
mov rcx, rdx
mov rax, rdx
shr rcx, 8
shl rax, 8
xor rcx, rax
shl rdx, 8
movabs rax, 0xff00ff00ff00ff
and rcx, rax
xor rcx, rdx
mov qword [rbp - 0x1c], rcx
test r9d, r9d
jne 0x1400ff55a
lea r8d, [r9 + 4]
mov qword [rsp + 0x168], rsi
lea rdx, [rbp - 0x20]
mov qword [rsp + 0x140], rdi
mov rcx, rbx
mov qword [rsp + 0x138], r12
mov qword [rsp + 0x130], r13
mov eax, r8d
mov r8d, 0x10
mov qword [rsp + 0x128], r14
sub r8, rax
mov qword [rsp + 0x120], r15
add rdx, rax
movaps xmmword [rsp + 0x110], xmm6
movaps xmmword [rsp + 0x100], xmm7
call fcn.1400fa740
mov eax, dword [rbx + 8]
lea rcx, [rsp + 0x60]
mov rdx, rbx
lea esi, [rax + rax*2]
add esi, esi
lea rdi, [rsi*4]
sub rdx, rdi
mov r8, rdi
add rdx, 0x84
call fcn.14018ad02
mov r8d, 0x1e
lea rdx, [rbx + 0xc]
sub r8d, esi
mov qword [rsp + 0x40], rdx
lea rcx, [rsp + 0x60]
shl r8, 2
add rcx, rdi
call fcn.14018ad02
mov qword [rsp + 0x28], 0xa
nop dword [rax + rax]
movsd xmm0, qword [rbp - 0x34]
lea rdx, [rsp + 0x60]
mov edi, dword [rbp - 0x2c]
lea rcx, [rsp + 0x6c]
mov r8d, 0x6c
movsd qword [rsp + 0x20], xmm0
movsd qword [rbp - 0x20], xmm0
lea r13, [0x140000000]
call fcn.14018b262
mov eax, dword [rsp + 0x78]
xor edi, eax
xor dword [rbp - 0x5c], eax
mov edx, dword [rbp - 0x20]
mov r10d, dword [rsp + 0x70]
xor edx, r10d
mov r8d, dword [rbp - 0x1c]
mov eax, edx
mov ecx, dword [rsp + 0x74]
xor r8d, ecx
xor dword [rbp - 0x60], ecx
xor dword [rbp - 0x64], r10d
movsd xmm0, qword [rsp + 0x20]
shr eax, 0x10
movzx ecx, al
mov eax, edx
shr rax, 0x18
mov r9d, edi
movsd qword [rsp + 0x60], xmm0
mov r15d, dword [r13 + rcx*4 + 0x1ce730]
mov r14d, r15d
xor r14d, dword [r13 + rax*4 + 0x1ce310]
mov eax, edx
shr eax, 8
movzx ecx, al
movzx eax, dl
mov r12d, dword [r13 + rcx*4 + 0x1cefc0]
xor r14d, r12d
mov r11d, dword [r13 + rax*4 + 0x1ceb80]
xor r14d, r11d
mov eax, r8d
shr rax, 0x18
mov esi, dword [r13 + rax*4 + 0x1ce310]
mov eax, r8d
shr eax, 0x10
mov edi, esi
movzx ecx, al
mov eax, r8d
shr eax, 8
xor edi, dword [r13 + rcx*4 + 0x1ce730]
movzx ecx, al
mov eax, dword [r13 + rcx*4 + 0x1cefc0]
xor edi, eax
xor r12d, eax
movzx eax, r8b
mov eax, dword [r13 + rax*4 + 0x1ceb80]
xor r11d, eax
xor edi, eax
mov eax, r9d
shr rax, 0x18
mov r10d, dword [r13 + rax*4 + 0x1ce310]
mov eax, r9d
shr eax, 0x10
xor esi, r10d
movzx ecx, al
mov eax, r9d
shr eax, 8
mov edx, dword [r13 + rcx*4 + 0x1ce730]
xor r15d, edx
movzx ecx, al
movzx eax, r9b
xor edx, dword [r13 + rcx*4 + 0x1cefc0]
mov eax, dword [r13 + rax*4 + 0x1ceb80]
xor r10d, edx
mov edx, dword [rsp + 0x6c]
xor r10d, eax
xor r11d, eax
mov r8d, edx
mov eax, edx
shr rax, 0x18
mov r9d, dword [r13 + rax*4 + 0x1ce310]
xor esi, r9d
mov eax, edx
shr edx, 8
shr eax, 0x10
movzx ecx, al
mov eax, dword [r13 + rcx*4 + 0x1ce730]
xor r15d, eax
xor r9d, eax
movzx eax, dl
mov ecx, dword [r13 + rax*4 + 0x1cefc0]
xor r12d, ecx
movzx eax, r8b
xor ecx, dword [r13 + rax*4 + 0x1ceb80]
mov eax, r11d
xor r9d, ecx
mov ecx, r15d
xor eax, r9d
shl ecx, 8
movzx r13d, al
xor ecx, r10d
and ecx, 0xff0000
mov eax, r15d
xor eax, edi
and eax, 0xff0000
or r13d, eax
mov eax, r12d
xor eax, r10d
and eax, 0xff00
or r13d, eax
mov eax, esi
xor eax, r14d
and eax, 0xff000000
or r13d, eax
mov eax, r11d
shr eax, 0x18
xor eax, r14d
mov dword [rsp + 0x60], r13d
movzx eax, al
or ecx, eax
mov eax, r12d
shl eax, 8
xor eax, r9d
and eax, 0xff00
or ecx, eax
mov eax, esi
shl eax, 8
xor eax, edi
and eax, 0xff000000
or ecx, eax
mov eax, r11d
shr eax, 0x10
xor eax, edi
mov dword [rsp + 0x64], ecx
movzx eax, al
mov ecx, r15d
shl ecx, 0x10
xor ecx, r9d
shr r15d, 8
and ecx, 0xff0000
shr r11d, 8
or ecx, eax
xor r11d, r10d
mov eax, esi
xor r15d, r14d
shl eax, 0x10
and r15d, 0xff0000
xor eax, r10d
shl esi, 0x18
and eax, 0xff000000
xor esi, r9d
or ecx, eax
and esi, 0xff000000
mov eax, r12d
shr eax, 0x10
xor eax, r14d
and eax, 0xff00
or ecx, eax
movzx eax, r11b
or eax, r15d
mov dword [rsp + 0x68], ecx
or eax, esi
shr r12d, 8
xor r12d, edi
and r12d, 0xff00
or eax, r12d
sub qword [rsp + 0x28], 1
mov dword [rsp + 0x6c], eax
jne 0x1400fed50
movsd xmm6, qword [rbp - 0x70]
mov ebx, 0xd
movaps xmm7, xmmword [rbp - 0x80]
nop word [rax + rax]
xor dword [rbp - 0x64], r13d
movups xmm3, xmmword [rbp - 0x64]
xor dword [rsp + 0x70], r13d
lea r13, [0x140000000]
mov ecx, dword [rbp - 0x2c]
mov eax, dword [rbp - 0x68]
movq r8, xmm3
movaps xmm0, xmmword [rsp + 0x70]
movups xmm5, xmmword [rbp - 0x54]
mov dword [rbp - 0x2c], eax
mov rax, r8
movaps xmm4, xmmword [rsp + 0x60]
movups xmm2, xmmword [rbp - 0x44]
shr rax, 0x10
movsd xmm1, qword [rbp - 0x34]
mov dword [rbp - 0x68], ecx
movzx ecx, al
movd eax, xmm3
movups xmmword [rbp - 0x54], xmm0
movdqa xmm0, xmm3
movaps xmmword [rsp + 0x60], xmm3
mov r12d, dword [r13 + rcx*4 + 0x1ce730]
mov r14d, r12d
mov edx, eax
shr rax, 0x18
psrldq xmm0, 8
psrldq xmm3, 8
movq r9, xmm3
movsd qword [rbp - 0x34], xmm6
xor r14d, dword [r13 + rax*4 + 0x1ce310]
mov rax, r8
shr rax, 8
movzx ecx, al
movzx eax, dl
mov rdx, r8
shr rdx, 0x20
movups xmmword [rbp - 0x64], xmm4
mov r15d, dword [r13 + rcx*4 + 0x1cefc0]
xor r14d, r15d
mov edi, dword [r13 + rax*4 + 0x1ceb80]
xor r14d, edi
mov rax, rdx
movaps xmmword [rsp + 0x70], xmm5
shr rax, 0x18
movups xmmword [rbp - 0x44], xmm7
movaps xmmword [rbp - 0x80], xmm2
mov esi, dword [r13 + rax*4 + 0x1ce310]
mov rax, r8
shr rax, 0x30
mov r11d, esi
movzx ecx, al
shr r8, 0x28
movzx eax, r8b
movsd qword [rbp - 0x70], xmm1
xor r11d, dword [r13 + rcx*4 + 0x1ce730]
mov eax, dword [r13 + rax*4 + 0x1cefc0]
xor r11d, eax
xor r15d, eax
movzx eax, dl
mov eax, dword [r13 + rax*4 + 0x1ceb80]
xor r11d, eax
xor edi, eax
movd eax, xmm0
mov r8d, eax
shr rax, 0x18
mov r10d, dword [r13 + rax*4 + 0x1ce310]
xor esi, r10d
mov rax, r9
shr rax, 0x10
movzx ecx, al
mov rax, r9
shr rax, 8
mov edx, dword [r13 + rcx*4 + 0x1ce730]
xor r12d, edx
movzx ecx, al
movzx eax, r8b
xor edx, dword [r13 + rcx*4 + 0x1cefc0]
mov eax, dword [r13 + rax*4 + 0x1ceb80]
xor r10d, edx
xor r10d, eax
xor edi, eax
mov rdx, r9
shr rdx, 0x20
mov rax, rdx
shr rax, 0x18
mov r8d, dword [r13 + rax*4 + 0x1ce310]
xor esi, r8d
mov rax, r9
shr r9, 0x28
shr rax, 0x30
movzx ecx, al
mov eax, dword [r13 + rcx*4 + 0x1ce730]
xor r12d, eax
xor r8d, eax
movzx eax, r9b
mov ecx, dword [r13 + rax*4 + 0x1cefc0]
xor r15d, ecx
movzx eax, dl
xor ecx, dword [r13 + rax*4 + 0x1ceb80]
mov eax, edi
xor r8d, ecx
mov ecx, r12d
xor eax, r8d
shl ecx, 8
movzx edx, al
xor ecx, r10d
and ecx, 0xff0000
mov eax, r12d
xor eax, r11d
and eax, 0xff0000
or edx, eax
mov eax, r15d
xor eax, r10d
and eax, 0xff00
or edx, eax
mov eax, esi
xor eax, r14d
and eax, 0xff000000
or edx, eax
mov eax, edi
shr eax, 0x18
xor eax, r14d
mov dword [rsp + 0x60], edx
movzx eax, al
or ecx, eax
mov eax, r15d
shl eax, 8
xor eax, r8d
and eax, 0xff00
or ecx, eax
mov eax, esi
shl eax, 8
xor eax, r11d
and eax, 0xff000000
or ecx, eax
mov eax, edi
shr eax, 0x10
xor eax, r11d
mov dword [rsp + 0x64], ecx
movzx eax, al
mov ecx, r12d
shl ecx, 0x10
xor ecx, r8d
shr edi, 8
and ecx, 0xff0000
shr r12d, 8
or ecx, eax
xor edi, r10d
mov eax, r15d
xor r12d, r14d
shr eax, 0x10
xor eax, r14d
and eax, 0xff00
or ecx, eax
mov eax, esi
shl eax, 0x10
xor eax, r10d
and eax, 0xff000000
or ecx, eax
movzx eax, dil
mov dword [rsp + 0x68], ecx
and r12d, 0xff0000
movaps xmm1, xmmword [rbp - 0x40]
lea rcx, [rbp - 0x68]
or eax, r12d
shr r15d, 8
xor r15d, r11d
shl esi, 0x18
xor esi, r8d
and r15d, 0xff00
or eax, r15d
and esi, 0xff000000
or eax, esi
mov r8d, 0x40
mov dword [rsp + 0x6c], eax
movd eax, xmm5
movups xmmword [rsp + 0x50], xmm1
xor eax, edx
mov dword [rsp + 0x70], eax
movq rax, xmm4
shr rax, 0x20
xor eax, edx
lea rdx, [rsp + 0x60]
mov dword [rbp - 0x60], eax
movaps xmm0, xmmword [rbp - 0x60]
movups xmmword [rbp - 0x20], xmm0
movaps xmm0, xmmword [rbp - 0x50]
movups xmmword [rsp + 0x28], xmm0
movsd xmm0, qword [rbp - 0x30]
movsd qword [rsp + 0x20], xmm0
call fcn.14018b262
movups xmm1, xmmword [rbp - 0x20]
movups xmm0, xmmword [rsp + 0x28]
movsd xmm6, qword [rsp + 0x20]
movq r8, xmm1
mov rax, r8
movaps xmmword [rsp + 0x70], xmm0
shr rax, 0x10
movdqa xmm0, xmm1
movzx ecx, al
movd eax, xmm1
psrldq xmm0, 8
movaps xmmword [rsp + 0x60], xmm1
mov r12d, dword [r13 + rcx*4 + 0x1ce730]
mov r14d, r12d
mov edx, eax
shr rax, 0x18
psrldq xmm1, 8
movq r9, xmm1
xor r14d, dword [r13 + rax*4 + 0x1ce310]
mov rax, r8
shr rax, 8
movzx ecx, al
movzx eax, dl
mov rdx, r8
shr rdx, 0x20
mov r15d, dword [r13 + rcx*4 + 0x1cefc0]
xor r14d, r15d
mov r11d, dword [r13 + rax*4 + 0x1ceb80]
xor r14d, r11d
mov rax, rdx
shr rax, 0x18
mov esi, dword [r13 + rax*4 + 0x1ce310]
mov rax, r8
shr rax, 0x30
mov edi, esi
movzx ecx, al
shr r8, 0x28
movzx eax, r8b
xor edi, dword [r13 + rcx*4 + 0x1ce730]
mov eax, dword [r13 + rax*4 + 0x1cefc0]
xor edi, eax
xor r15d, eax
movzx eax, dl
mov eax, dword [r13 + rax*4 + 0x1ceb80]
xor edi, eax
xor r11d, eax
movd eax, xmm0
mov r8d, eax
shr rax, 0x18
mov r10d, dword [r13 + rax*4 + 0x1ce310]
xor esi, r10d
mov rax, r9
shr rax, 0x10
movzx ecx, al
mov rax, r9
shr rax, 8
mov edx, dword [r13 + rcx*4 + 0x1ce730]
xor r12d, edx
movzx ecx, al
movzx eax, r8b
xor edx, dword [r13 + rcx*4 + 0x1cefc0]
mov eax, dword [r13 + rax*4 + 0x1ceb80]
xor r10d, edx
xor r10d, eax
xor r11d, eax
mov rdx, r9
shr rdx, 0x20
mov rax, rdx
shr rax, 0x18
mov r8d, dword [r13 + rax*4 + 0x1ce310]
mov rax, r9
shr rax, 0x30
xor esi, r8d
movzx ecx, al
shr r9, 0x28
mov eax, dword [r13 + rcx*4 + 0x1ce730]
xor r12d, eax
xor r8d, eax
movzx eax, r9b
mov r9d, r12d
shl r9d, 0x10
mov ecx, dword [r13 + rax*4 + 0x1cefc0]
xor r15d, ecx
movzx eax, dl
mov edx, r12d
shl edx, 8
xor edx, r10d
and edx, 0xff0000
xor ecx, dword [r13 + rax*4 + 0x1ceb80]
mov eax, r11d
xor r8d, ecx
xor eax, r8d
xor r9d, r8d
movzx r13d, al
and r9d, 0xff0000
mov eax, r12d
xor eax, edi
and eax, 0xff0000
or r13d, eax
mov eax, r15d
xor eax, r10d
and eax, 0xff00
or r13d, eax
mov eax, esi
xor eax, r14d
and eax, 0xff000000
or r13d, eax
mov eax, r11d
shr eax, 0x18
xor eax, r14d
mov dword [rsp + 0x60], r13d
movzx eax, al
or edx, eax
mov eax, r15d
shl eax, 8
xor eax, r8d
and eax, 0xff00
or edx, eax
mov eax, esi
shl eax, 8
xor eax, edi
and eax, 0xff000000
or edx, eax
mov eax, r11d
shr eax, 0x10
xor eax, edi
mov dword [rsp + 0x64], edx
movzx eax, al
or r9d, eax
mov eax, esi
shl eax, 0x10
xor eax, r10d
and eax, 0xff000000
or r9d, eax
shr r12d, 8
mov eax, r15d
shl esi, 0x18
shr eax, 0x10
xor r12d, r14d
shr r15d, 8
and r12d, 0xff0000
shr r11d, 8
xor esi, r8d
xor r11d, r10d
xor eax, r14d
and esi, 0xff000000
movzx r10d, r11b
or r10d, r12d
xor r15d, edi
or r10d, esi
and eax, 0xff00
and r15d, 0xff00
or r9d, eax
or r10d, r15d
mov dword [rsp + 0x68], r9d
mov dword [rsp + 0x6c], r10d
sub rbx, 1
je 0x1400ff59e
movups xmm7, xmmword [rsp + 0x50]
jmp 0x1400feff0
cmp r9d, 4
jae 0x1400fec97
lea ecx, [r9 + 1]
mov byte [rbp + r9 - 0x20], 0
cmp ecx, 4
jae 0x1400fec97
mov eax, ecx
nop dword [rax]
cmp rax, 0x10
jae 0x1400ff76c
mov byte [rbp + rax - 0x20], 0
inc ecx
inc rax
cmp ecx, 4
jb 0x1400ff580
jmp 0x1400fec97
mov r8, qword [rsp + 0x38]
rol edx, 0x10
mov ecx, edx
rol r9d, 0x10
shr ecx, 8
mov eax, edx
shl edx, 8
shl eax, 8
xor ecx, eax
rol r10d, 0x10
and ecx, 0xff00ff
mov eax, r9d
xor ecx, edx
shl eax, 8
mov dword [r8], ecx
mov edx, r13d
xor edx, dword [rsp + 0x70]
mov ecx, r9d
xor r13d, dword [rbp - 0x64]
shr ecx, 8
xor ecx, eax
rol edx, 0x10
and ecx, 0xff00ff
rol r13d, 0x10
shl r9d, 8
mov eax, r10d
xor ecx, r9d
shl eax, 8
mov dword [r8 + 4], ecx
mov ecx, r10d
shr ecx, 8
xor ecx, eax
shl r10d, 8
and ecx, 0xff00ff
mov eax, edx
xor ecx, r10d
shl eax, 8
mov dword [r8 + 8], ecx
mov ecx, edx
shr ecx, 8
xor ecx, eax
shl edx, 8
and ecx, 0xff00ff
mov eax, r13d
xor ecx, edx
shl eax, 8
mov edx, dword [rbp - 0x60]
mov dword [r8 + 0xc], ecx
mov ecx, r13d
shr ecx, 8
xor ecx, eax
rol edx, 0x10
and ecx, 0xff00ff
shl r13d, 8
xor ecx, r13d
mov eax, edx
mov dword [r8 + 0x10], ecx
mov ecx, edx
shr ecx, 8
shl edx, 8
shl eax, 8
xor ecx, eax
and ecx, 0xff00ff
xor ecx, edx
mov edx, dword [rbp - 0x5c]
rol edx, 0x10
mov dword [r8 + 0x14], ecx
mov eax, edx
mov ecx, edx
shl eax, 8
shr ecx, 8
shl edx, 8
xor ecx, eax
and ecx, 0xff00ff
xor ecx, edx
mov rdx, qword [rbp - 0x5c]
shr rdx, 0x20
rol edx, 0x10
mov dword [r8 + 0x18], ecx
mov ecx, edx
shr ecx, 8
mov rbx, qword [rsp + 0x48]
mov eax, edx
movaps xmm7, xmmword [rsp + 0x100]
movaps xmm6, xmmword [rsp + 0x110]
mov r15, qword [rsp + 0x120]
mov r14, qword [rsp + 0x128]
mov r13, qword [rsp + 0x130]
mov r12, qword [rsp + 0x138]
mov rdi, qword [rsp + 0x140]
mov rsi, qword [rsp + 0x168]
shl eax, 8
xor ecx, eax
shl edx, 8
mov rax, qword [rsp + 0x40]
and ecx, 0xff00ff
xor ecx, edx
mov dword [r8 + 0x1c], ecx
xor ecx, ecx
mov dword [rax], ecx
mov qword [rbx + 0x10], rcx
mov qword [rbx + 0x18], rcx
mov qword [rbx + 0x20], rcx
mov qword [rbx + 0x28], rcx
mov qword [rbx + 0x30], rcx
mov qword [rbx + 0x38], rcx
mov qword [rbx + 0x40], rcx
mov qword [rbx + 0x48], rcx
mov qword [rbx + 0x50], rcx
mov qword [rbx + 0x58], rcx
mov dword [rbx + 0x60], ecx
movups xmm0, xmmword [0x1401ceb60]
movups xmmword [rbx + 0x64], xmm0
movups xmm1, xmmword [0x1401ceb70]
movups xmmword [rbx + 0x74], xmm1
mov qword [rbx], rcx
mov dword [rbx + 8], ecx
mov qword [rbx + 0xa0], rcx
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140189f20
add rsp, 0x148
pop rbx
pop rbp
ret
call fcn.14018a350
int3