Function at 0x14001d940
Capabilities:
Encode data using xor

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x60
call fcn.1400066ce
movdqa xmm0, xmmword [0x140020100]
mov edx, 0xffffe54c
lea rcx, [0x14001f3a0]
mov word [rsp + 0x54], dx
movaps xmmword [rsp + 0x30], xmm0
movdqa xmm0, xmmword [0x140020110]
mov dword [rsp + 0x50], 0x29f7b2f3
movaps xmmword [rsp + 0x40], xmm0
call fcn.14000788f
lea rcx, [0x14001f7a0]
mov rbp, rax
call fcn.14000788f
cmp byte [rbp], 0
mov rbx, rax
jne 0x14001d9c8
mov byte [rax + 0x26], 1
lea rsi, [rsp + 0x30]
mov rdi, rax
xor r8d, r8d
mov ecx, 0x26
mov rdx, rax
rep movsb byte [rdi], byte [rsi]
mov byte [rbp], 1
lea rcx, [0x140014d60]
call fcn.14001d7c0
cmp byte [rbx + 0x26], 0
je 0x14001da01
movabs r8, 0x93de57d4d91d391
xor eax, eax
nop word [rax + rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor byte [rbx + rax], dl
add rax, 1
cmp rax, 0x26
jne 0x14001d9e0
mov byte [rbx + 0x26], 0
mov r8, rbx
xor ecx, ecx
mov edx, 1
call qword [0x14002c4c8]
mov rbx, rax
call qword [0x14002c548]
cmp eax, 0xb7
je 0x14001df4c
call fcn.140011f60
call fcn.140011bc0
call fcn.140011df0
call fcn.140011940
lea rcx, [0x14001f2c0]
call fcn.14000788f
lea rcx, [0x14001f6c0]
mov rsi, rax
call fcn.14000788f
cmp byte [rsi], 0
mov rdi, rax
jne 0x14001da90
mov byte [rax + 0x10], 1
xor r8d, r8d
movabs rdx, 0xfbc87dca15d8a524
movabs rax, 0xa4df60db5ad5a530
mov qword [rdi + 8], rdx
lea rcx, [0x140014d50]
mov rdx, rdi
mov qword [rdi], rax
mov byte [rsi], 1
call fcn.14001d7c0
cmp byte [rdi + 0x10], 0
je 0x14001dac9
movabs r8, 0xfbad05af3bb1d545
xor eax, eax
nop word [rax + rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor byte [rdi + rax], dl
add rax, 1
cmp rax, 0x10
jne 0x14001daa8
mov byte [rdi + 0x10], 0
lea rcx, [0x14001f2a0]
mov dword [rsp + 0x30], 0x55d4a52a
mov byte [rsp + 0x34], 0xaf
call fcn.14000788f
lea rcx, [0x14001f6a0]
mov rbp, rax
call fcn.14000788f
cmp byte [rbp], 0
mov rsi, rax
jne 0x14001db1e
mov byte [rax + 5], 1
mov eax, dword [rsp + 0x30]
xor r8d, r8d
mov rdx, rsi
mov byte [rsi + 4], 0xaf
lea rcx, [0x140014d80]
mov dword [rsi], eax
mov byte [rbp], 1
call fcn.14001d7c0
cmp byte [rsi + 5], 0
je 0x14001db4e
movabs r8, 0xfbad05af3bb1d545
xor eax, eax
lea ecx, [rax*8]
mov rdx, r8
shr rdx, cl
xor byte [rsi + rax], dl
add rax, 1
cmp rax, 5
jne 0x14001db30
mov byte [rsi + 5], 0
xor r9d, r9d
mov r8, rdi
mov rdx, rsi
xor ecx, ecx
mov dword [rsp + 0x28], 0
mov rsi, qword [0x14002c878]
mov qword [rsp + 0x20], 0
call rsi
mov rax, qword [0x140020120]
lea rcx, [0x14001f300]
mov byte [rsp + 0x38], 0xa9
mov qword [rsp + 0x30], rax
call fcn.14000788f
lea rcx, [0x14001f700]
mov rdi, rax
call fcn.14000788f
cmp byte [rdi], 0
mov rbp, rax
jne 0x14001dbcd
mov byte [rax + 9], 1
mov rax, qword [rsp + 0x30]
xor r8d, r8d
mov rdx, rbp
mov byte [rbp + 8], 0xa9
lea rcx, [0x140014db0]
mov qword [rbp], rax
mov byte [rdi], 1
call fcn.14001d7c0
cmp byte [rbp + 9], 0
je 0x14001dc02
movabs r8, 0x7fcb4991c961f7a9
xor eax, eax
nop
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor byte [rbp + rax], dl
add rax, 1
cmp rax, 9
jne 0x14001dbe0
mov byte [rbp + 9], 0
lea rcx, [0x14001f2e0]
mov dword [rsp + 0x30], 0xa70487c6
mov byte [rsp + 0x34], 0x91
call fcn.14000788f
lea rcx, [0x14001f6e0]
mov r12, rax
call fcn.14000788f
cmp byte [r12], 0
mov rdi, rax
jne 0x14001dc59
mov byte [rax + 5], 1
mov eax, dword [rsp + 0x30]
xor r8d, r8d
mov rdx, rdi
mov byte [rdi + 4], 0x91
lea rcx, [0x140014d90]
mov dword [rdi], eax
mov byte [r12], 1
call fcn.14001d7c0
cmp byte [rdi + 5], 0
je 0x14001dc8e
movabs r8, 0x7fcb4991c961f7a9
xor eax, eax
nop dword [rax + rax]
lea ecx, [rax*8]
mov rdx, r8
shr rdx, cl
xor byte [rdi + rax], dl
add rax, 1
cmp rax, 5
jne 0x14001dc70
mov byte [rdi + 5], 0
xor r9d, r9d
mov r8, rbp
mov rdx, rdi
xor ecx, ecx
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
call rsi
mov ecx, 0x86a
call qword [0x14002c660]
mov rax, qword [0x140020128]
mov byte [rsp + 0x3e], 0x19
lea rcx, [0x14001f340]
mov dword [rsp + 0x38], 0x6caf3823
mov qword [rsp + 0x30], rax
mov eax, 0x60b
mov word [rsp + 0x3c], ax
call fcn.14000788f
lea rcx, [0x14001f740]
mov rdi, rax
call fcn.14000788f
cmp byte [rdi], 0
mov rbp, rax
jne 0x14001dd28
mov byte [rax + 0xf], 1
mov rax, qword [rsp + 0x30]
xor r8d, r8d
mov rdx, rbp
lea rcx, [0x140014d40]
mov qword [rbp], rax
mov rax, qword [rsp + 0x37]
mov qword [rbp + 7], rax
mov byte [rdi], 1
call fcn.14001d7c0
cmp byte [rbp + 0xf], 0
je 0x14001dd62
movabs r8, 0x8719637309815153
xor eax, eax
nop word [rax + rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor byte [rbp + rax], dl
add rax, 1
cmp rax, 0xf
jne 0x14001dd40
mov byte [rbp + 0xf], 0
lea rcx, [0x14001f320]
mov dword [rsp + 0x30], 0x67e4213c
mov byte [rsp + 0x34], 0x73
call fcn.14000788f
lea rcx, [0x14001f720]
mov r12, rax
call fcn.14000788f
cmp byte [r12], 0
mov rdi, rax
jne 0x14001ddb9
mov byte [rax + 5], 1
mov eax, dword [rsp + 0x30]
xor r8d, r8d
mov rdx, rdi
mov byte [rdi + 4], 0x73
lea rcx, [0x140014da0]
mov dword [rdi], eax
mov byte [r12], 1
call fcn.14001d7c0
cmp byte [rdi + 5], 0
je 0x14001ddee
movabs r8, 0x8719637309815153
xor eax, eax
nop dword [rax + rax]
lea ecx, [rax*8]
mov rdx, r8
shr rdx, cl
xor byte [rdi + rax], dl
add rax, 1
cmp rax, 5
jne 0x14001ddd0
mov byte [rdi + 5], 0
xor r9d, r9d
mov r8, rbp
mov rdx, rdi
xor ecx, ecx
mov dword [rsp + 0x28], 5
mov qword [rsp + 0x20], 0
call rsi
mov rax, qword [0x140020130]
lea rcx, [0x14001f380]
mov dword [rsp + 0x38], 0xdf923ff2
mov qword [rsp + 0x30], rax
call fcn.14000788f
lea rcx, [0x14001f780]
mov rdi, rax
call fcn.14000788f
cmp byte [rdi], 0
mov rbp, rax
jne 0x14001de6c
mov byte [rax + 0xc], 1
mov rax, qword [rsp + 0x30]
xor r8d, r8d
mov rdx, rbp
lea rcx, [0x140014d30]
mov qword [rbp], rax
mov eax, dword [rsp + 0x38]
mov dword [rbp + 8], eax
mov byte [rdi], 1
call fcn.14001d7c0
cmp byte [rbp + 0xc], 0
je 0x14001dea2
movabs r8, 0xe1d7bf93dff74797
xor eax, eax
nop
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor byte [rbp + rax], dl
add rax, 1
cmp rax, 0xc
jne 0x14001de80
mov byte [rbp + 0xc], 0
lea rcx, [0x14001f360]
mov dword [rsp + 0x30], 0xb19237f8
mov byte [rsp + 0x34], 0x93
call fcn.14000788f
lea rcx, [0x14001f760]
mov r12, rax
call fcn.14000788f
cmp byte [r12], 0
mov rdi, rax
jne 0x14001def9
mov byte [rax + 5], 1
mov eax, dword [rsp + 0x30]
xor r8d, r8d
mov rdx, rdi
mov byte [rdi + 4], 0x93
lea rcx, [0x140014d70]
mov dword [rdi], eax
mov byte [r12], 1
call fcn.14001d7c0
cmp byte [rdi + 5], 0
je 0x14001df2e
movabs r8, 0xe1d7bf93dff74797
xor eax, eax
nop dword [rax + rax]
lea ecx, [rax*8]
mov rdx, r8
shr rdx, cl
xor byte [rdi + rax], dl
add rax, 1
cmp rax, 5
jne 0x14001df10
mov byte [rdi + 5], 0
mov dword [rsp + 0x28], 0
xor r9d, r9d
mov r8, rbp
xor ecx, ecx
mov qword [rsp + 0x20], 0
mov rdx, rdi
call rsi
mov rcx, rbx
call qword [0x14002c4b0]
xor eax, eax
add rsp, 0x60
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret