Function at 0x140035680
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x238]
sub rsp, 0x310
mov rax, qword [0x140230040]
xor rax, rsp
mov qword [rbp + 0x200], rax
lea r12, [rcx + 0x10]
mov qword [rsp + 0x20], rcx
mov rsi, rdx
mov qword [rsp + 0x28], r12
mov ebx, 0x40
lea rcx, [rbp + 0x1c0]
mov r8d, ebx
mov rdx, r12
call fcn.14013a522
xor edx, edx
lea rdi, [rsp + 0x40]
lea eax, [rdx*8]
inc edx
movsxd rcx, eax
mov rax, qword [rcx + rsi]
bswap rax
mov qword [rdi], rax
lea rdi, [rdi + 8]
cmp edx, 0x10
jl 0x1400356e6
lea r8, [rbp - 0x50]
mov rcx, qword [r8 - 0x68]
mov rdx, qword [r8]
mov rdi, rcx
mov rax, rcx
ror rdi, 8
shr rcx, 7
lea r8, [r8 + 8]
ror rax, 1
xor rdi, rax
mov rax, rdx
xor rdi, rcx
ror rax, 0x13
mov rcx, rdx
shr rdx, 6
ror rcx, 0x3d
xor rcx, rax
xor rcx, rdx
add rdi, rcx
add rdi, qword [r8 - 0x78]
add rdi, qword [r8 - 0x30]
mov qword [r8 + 8], rdi
sub rbx, 1
jne 0x140035709
mov rbx, qword [rbp + 0x1f8]
lea r13, [0x140180d00]
mov rsi, qword [rbp + 0x1f0]
xor r12d, r12d
mov r14, qword [rbp + 0x1e8]
mov r15, qword [rbp + 0x1e0]
mov r8, qword [rbp + 0x1d8]
mov r9, qword [rbp + 0x1d0]
mov r10, qword [rbp + 0x1c8]
mov r11, qword [rbp + 0x1c0]
movsxd rdi, r12d
mov rdx, r15
shr rdx, 0x29
mov rax, r15
shl rax, 0x17
mov rcx, r15
or rdx, rax
shl rcx, 0x2e
mov rax, r15
inc r12d
shr rax, 0x12
or rcx, rax
mov rax, r15
shr rax, 0xe
xor rdx, rcx
mov rcx, r15
shl rcx, 0x32
or rcx, rax
mov rax, r14
xor rax, rsi
xor rdx, rcx
and rax, r15
mov rcx, r11
xor rax, rsi
shr rcx, 0x22
add rdx, rax
mov rax, r11
add rdx, qword [r13 + rdi*8]
add rdx, qword [rsp + rdi*8 + 0x40]
shr rax, 0x1c
lea rdi, [rdx + rbx]
mov rdx, r11
add r8, rdi
mov qword [rsp + 0x30], rdi
shl rdx, 0x24
or rdx, rax
mov qword [rbp + 0x1d8], r8
mov rax, r11
shl rax, 0x1e
or rcx, rax
mov rax, r11
shl rax, 0x19
xor rdx, rcx
mov rcx, r11
shr rcx, 0x27
or rcx, rax
mov rax, r10
and rax, r11
xor rdx, rcx
mov rcx, r10
or rcx, r11
and rcx, r9
or rax, rcx
add rax, rdx
movsxd rdx, r12d
mov qword [rsp + 0x38], rax
lea rbx, [rax + rdi]
mov rdi, r8
ror rdi, 0x29
mov rax, r8
ror rax, 0x12
xor rdi, rax
mov qword [rbp + 0x1f8], rbx
mov rax, r8
ror rax, 0xe
xor rdi, rax
mov rax, r14
xor rax, r15
and rax, r8
xor rax, r14
add rdi, rax
mov rax, rbx
add rdi, qword [r13 + rdx*8]
add rdi, qword [rsp + rdx*8 + 0x40]
mov rdx, rbx
add rdi, rsi
ror rax, 0x22
ror rdx, 0x27
xor rdx, rax
mov qword [rsp + 0x30], rdi
mov rax, rbx
ror rax, 0x1c
add r9, rdi
xor rdx, rax
mov qword [rbp + 0x1d0], r9
inc r12d
mov rcx, rbx
or rcx, r11
mov rax, rbx
and rax, r11
and rcx, r10
or rax, rcx
add rax, rdx
movsxd rdx, r12d
mov qword [rsp + 0x38], rax
inc r12d
lea rsi, [rdi + rax]
mov rdi, r9
ror rdi, 0x29
mov rax, r9
ror rax, 0x12
mov rcx, rsi
xor rdi, rax
mov qword [rbp + 0x1f0], rsi
or rcx, rbx
mov rax, r9
ror rax, 0xe
and rcx, r11
xor rdi, rax
mov rax, r8
xor rax, r15
and rax, r9
xor rax, r15
add rdi, rax
mov rax, rsi
add rdi, qword [r13 + rdx*8]
add rdi, qword [rsp + rdx*8 + 0x40]
mov rdx, rsi
ror rax, 0x22
add rdi, r14
add r10, rdi
mov qword [rsp + 0x30], rdi
ror rdx, 0x27
xor rdx, rax
mov qword [rbp + 0x1c8], r10
mov rax, rsi
ror rax, 0x1c
xor rdx, rax
mov rax, rsi
and rax, rbx
or rax, rcx
mov rcx, rsi
add rax, rdx
movsxd rdx, r12d
mov qword [rsp + 0x38], rax
lea r14, [rdi + rax]
mov rdi, r10
ror rdi, 0x29
mov rax, r10
ror rax, 0x12
xor rdi, rax
mov qword [rbp + 0x1e8], r14
mov rax, r10
ror rax, 0xe
xor rdi, rax
mov rax, r9
xor rax, r8
and rax, r10
xor rax, r8
add rdi, rax
mov rax, r14
add rdi, qword [r13 + rdx*8]
add rdi, qword [rsp + rdx*8 + 0x40]
mov rdx, r14
ror rax, 0x22
add rdi, r15
ror rdx, 0x27
xor rdx, rax
mov qword [rsp + 0x30], rdi
mov rax, r14
ror rax, 0x1c
xor rdx, rax
add r11, rdi
or rcx, r14
and rcx, rbx
mov qword [rbp + 0x1c0], r11
inc r12d
mov rax, rsi
and rax, r14
or rax, rcx
add rax, rdx
movsxd rdx, r12d
mov qword [rsp + 0x38], rax
inc r12d
lea r15, [rdi + rax]
mov rdi, r11
ror rdi, 0x29
mov rax, r11
ror rax, 0x12
mov rcx, r15
xor rdi, rax
mov qword [rbp + 0x1e0], r15
or rcx, r14
mov rax, r11
ror rax, 0xe
and rcx, rsi
xor rdi, rax
mov rax, r9
xor rax, r10
and rax, r11
xor rax, r9
add rdi, rax
mov rax, r15
add rdi, qword [r13 + rdx*8]
add rdi, qword [rsp + rdx*8 + 0x40]
mov rdx, r15
ror rax, 0x22
add rdi, r8
add rbx, rdi
mov qword [rsp + 0x30], rdi
ror rdx, 0x27
xor rdx, rax
mov qword [rbp + 0x1f8], rbx
mov rax, r15
ror rax, 0x1c
xor rdx, rax
mov rax, r15
and rax, r14
or rax, rcx
mov rcx, r15
add rax, rdx
movsxd rdx, r12d
mov qword [rsp + 0x38], rax
lea r8, [rdi + rax]
mov rdi, rbx
ror rdi, 0x29
mov rax, rbx
ror rax, 0x12
or rcx, r8
xor rdi, rax
mov qword [rbp + 0x1d8], r8
mov rax, rbx
ror rax, 0xe
xor rdi, rax
mov rax, r10
xor rax, r11
and rax, rbx
xor rax, r10
add rdi, rax
mov rax, r8
add rdi, qword [r13 + rdx*8]
add rdi, qword [rsp + rdx*8 + 0x40]
mov rdx, r8
ror rax, 0x22
add rdi, r9
ror rdx, 0x27
xor rdx, rax
mov qword [rsp + 0x30], rdi
mov rax, r8
ror rax, 0x1c
xor rdx, rax
mov rax, r15
and rcx, r14
and rax, r8
add rsi, rdi
or rax, rcx
mov qword [rbp + 0x1f0], rsi
add rax, rdx
inc r12d
mov qword [rsp + 0x38], rax
mov rcx, r8
movsxd rdx, r12d
inc r12d
lea r9, [rdi + rax]
mov rdi, rsi
ror rdi, 0x29
or rcx, r9
and rcx, r15
mov qword [rbp + 0x1d0], r9
mov rax, rsi
ror rax, 0x12
xor rdi, rax
mov rax, rsi
ror rax, 0xe
xor rdi, rax
mov rax, rbx
xor rax, r11
and rax, rsi
xor rax, r11
add rdi, rax
mov rax, r9
add rdi, qword [r13 + rdx*8]
add rdi, qword [rsp + rdx*8 + 0x40]
mov rdx, r9
ror rax, 0x22
add rdi, r10
add r14, rdi
mov qword [rsp + 0x30], rdi
ror rdx, 0x27
xor rdx, rax
mov qword [rbp + 0x1e8], r14
mov rax, r9
ror rax, 0x1c
xor rdx, rax
mov rax, r8
and rax, r9
or rax, rcx
add rax, rdx
movsxd rdx, r12d
mov qword [rsp + 0x38], rax
lea r10, [rdi + rax]
mov rdi, r14
ror rdi, 0x29
mov rax, r14
ror rax, 0x12
mov rcx, r10
xor rdi, rax
mov qword [rbp + 0x1c8], r10
or rcx, r9
mov rax, r14
ror rax, 0xe
and rcx, r8
xor rdi, rax
mov rax, rbx
xor rax, rsi
and rax, r14
xor rax, rbx
add rdi, rax
mov rax, r10
add rdi, qword [r13 + rdx*8]
add rdi, qword [rsp + rdx*8 + 0x40]
mov rdx, r10
ror rax, 0x22
add rdi, r11
ror rdx, 0x27
xor rdx, rax
mov qword [rsp + 0x30], rdi
mov rax, r10
ror rax, 0x1c
xor rdx, rax
mov rax, r10
and rax, r9
or rax, rcx
add rax, rdx
add r15, rdi
mov qword [rsp + 0x38], rax
inc r12d
mov qword [rbp + 0x1e0], r15
lea r11, [rdi + rax]
mov qword [rbp + 0x1c0], r11
cmp r12d, 0x50
jl 0x14003579a
mov r12, qword [rsp + 0x28]
lea rcx, [rbp + 0x1b0]
sub rcx, qword [rsp + 0x20]
mov edx, 8
mov rax, qword [r12 + rcx]
add qword [r12], rax
lea r12, [r12 + 8]
sub rdx, 1
jne 0x140035c57
lea rdi, [rsp + 0x30]
xor eax, eax
mov ecx, 0x2d0
rep stosb byte [rdi], al
mov rcx, qword [rbp + 0x200]
xor rcx, rsp
call fcn.140138940
lea r11, [rsp + 0x310]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret