Function at 0x1400960d0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xd8
lea rsi, [rcx + 0x380]
lea rax, [rsp + 0x30]
mov qword [rbp + 0x6f], rax
mov eax, dword [0x140135124]
mov dword [rbp + 0x67], eax
xor r14d, r14d
mov edi, dword [0x140152090]
cmp byte [0x140135127], r14b
je 0x1400961cd
mov ecx, r14d
cmp edi, 2
jl 0x140096192
movdqa xmm3, xmmword [0x140138f00]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x140138ff0]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x140138ff0]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 1
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [str.7777]
psubd xmm3, xmm0
andps xmm3, xmmword [0x140138fb0]
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmmword [0x140139010]
movd xmm0, eax
xorps xmm3, xmm0
movd dword [rbp + 0x67], xmm3
jmp 0x1400961cd
lea r8, [rbp + 0x67]
nop word [rax + rax]
mov eax, 0x29e4129f
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul edx, eax, 0x37
movzx eax, cl
sub al, dl
add al, 0x35
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 4
jl 0x1400961a0
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rbp - 0x79], r14
mov qword [rbp - 0x71], r14
lea rax, [rbp + 0x67]
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], r14b
jne 0x1400961f0
lea rdx, [rbp + 0x67]
lea rcx, [rsp + 0x30]
call fcn.140079f10
lea r13, [rsp + 0x30]
lea rax, [rbp - 0x69]
mov qword [rbp + 0x77], rax
mov eax, dword [0x1401353a4]
mov dword [rbp + 0x67], eax
cmp byte [0x1401353a7], 0
je 0x1400962e2
mov r8d, r14d
cmp edi, 2
jl 0x1400962a4
movdqa xmm3, xmmword [0x140138f00]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x140138ff0]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x140138ff0]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 1
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [str.7777]
psubd xmm3, xmm0
andps xmm3, xmmword [0x140138fb0]
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmmword [0x140139010]
movd xmm0, eax
xorps xmm3, xmm0
movd dword [rbp + 0x67], xmm3
jmp 0x1400962e2
lea r9, [rbp + 0x67]
nop dword [rax + rax]
mov eax, 0x29e4129f
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x1400962b0
xorps xmm0, xmm0
movups xmmword [rbp - 0x69], xmm0
mov qword [rbp - 0x59], r14
mov qword [rbp - 0x51], r14
lea rax, [rbp + 0x67]
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140096300
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x69]
call fcn.140079f10
lea r12, [rbp - 0x69]
lea rax, [rbp - 0x49]
mov qword [rbp + 0x7f], rax
movzx eax, word [0x140138060]
mov word [rbp + 0x67], ax
cmp byte [0x140138061], 0
je 0x14009633f
mov byte [rbp + 0x67], 0x38
xor byte [rbp + 0x68], 0x36
xorps xmm0, xmm0
movups xmmword [rbp - 0x49], xmm0
mov qword [rbp - 0x39], r14
mov qword [rbp - 0x31], r14
lea rax, [rbp + 0x67]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x140096355
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x49]
call fcn.140079f10
lea r15, [rbp - 0x49]
mov eax, dword [0x1401350d4]
mov dword [rbp + 0x67], eax
cmp byte [0x1401350d7], 0
je 0x140096442
mov r8d, r14d
cmp edi, 2
jl 0x140096400
movdqa xmm3, xmmword [0x140138f00]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x140138ff0]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x140138ff0]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 1
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [str.7777]
psubd xmm3, xmm0
andps xmm3, xmmword [0x140138fb0]
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmmword [0x140139010]
movd xmm0, eax
xorps xmm3, xmm0
movd dword [rbp + 0x67], xmm3
jmp 0x140096442
lea r9, [rbp + 0x67]
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x29e4129f
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140096410
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], r14
mov qword [rbp - 0x11], r14
lea rax, [rbp + 0x67]
inc rbx
cmp byte [rax + rbx], 0
jne 0x140096455
mov r8, rbx
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x29]
call fcn.140079f10
nop
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r12
mov r9, r15
lea r8, [rbp - 0x29]
lea rdx, [rbp - 9]
call fcn.140095630
mov r8d, 0xc8
mov rdx, rax
mov rcx, rsi
call fcn.140091c20
add rsp, 0xd8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret