Function at 0x140001fe4
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x450]
sub rsp, 0x550
mov rax, qword [0x14002a020]
xor rax, rsp
mov qword [rbp + 0x440], rax
mov r14, rcx
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x80], rcx
xor r13d, r13d
lea rcx, [rbp - 0x68]
call fcn.140001a9c
nop
mov rdi, qword [rbp - 0x58]
mov qword [rsp + 0x68], rdi
lea rcx, [rdi + 1]
call fcn.1400030fc
mov r15, rax
mov qword [rsp + 0x78], rax
lea rdx, [rbp - 0x68]
cmp qword [rbp - 0x50], 0x10
cmovae rdx, qword [rbp - 0x68]
lea rbx, [rdi + 1]
mov r8, rbx
mov rcx, rax
call fcn.140004c10
mov rcx, rbx
call fcn.1400030fc
mov rsi, rax
mov qword [rbp - 0x80], rax
lea rdx, [rbp - 0x68]
cmp qword [rbp - 0x50], 0x10
cmovae rdx, qword [rbp - 0x68]
mov r8, rbx
mov rcx, rax
call fcn.140004c10
lea rax, vtable.AES.0
mov qword [rbp - 0x40], rax
mov byte [rbp - 0x38], r13b
mov qword [rbp + 0x38c], r13
mov dword [rbp + 0x394], r13d
lea rcx, [rbp - 0x40]
call fcn.140001514
cmp byte [rbp - 0x38], r13b
je 0x14000249e
test rdi, rdi
je 0x14000249e
movsxd r9, dword [rbp + 0x390]
xor edx, edx
mov rax, rdi
div r9
test rdx, rdx
jne 0x14000249e
mov r12d, r13d
mov dword [rsp + 0x34], r13d
mov qword [rsp + 0x50], r15
mov rbx, rsi
mov qword [rsp + 0x70], rbx
test rax, rax
je 0x140002499
lea r8, [0x140000000]
mov r10, r15
cmp byte [rbp - 0x38], r13b
je 0x140002419
cmp r9d, 0x10
jne 0x14000212f
mov r8, rbx
mov rdx, r15
lea rcx, [rbp - 0x40]
call fcn.1400010f8
mov r9d, dword [rbp + 0x390]
jmp 0x140002419
mov eax, r9d
cdq
and edx, 3
add eax, edx
sar eax, 2
movsxd rcx, eax
mov rax, r13
cmp ecx, 6
setne al
inc rax
cmp ecx, 4
cmove rax, r13
shl rax, 5
mov r12d, dword [rax + r8 + 0x25fec]
mov dword [rsp + 0x40], r12d
mov esi, dword [rax + r8 + 0x25ff4]
mov dword [rsp + 0x44], esi
mov edx, dword [rax + r8 + 0x25ffc]
mov dword [rsp + 0x30], edx
lea r11, [rbp + 0x418]
mov r14, rcx
test ecx, ecx
jle 0x1400021d8
movzx r8d, byte [r10]
movzx eax, byte [r10 + 1]
movzx ecx, byte [r10 + 2]
mov rdx, r11
shl r8d, 8
or r8d, eax
shl r8d, 8
or r8d, ecx
shl r8d, 8
movzx eax, byte [r10 + 3]
or r8d, eax
mov dword [r11], r8d
lea r10, [r10 + 4]
add r11, 4
xor r8d, dword [rbp + r13*4 + 0x1ac]
mov dword [rdx], r8d
inc r13
cmp r13, r14
jl 0x140002188
mov r9d, dword [rbp + 0x390]
mov r13d, 1
mov eax, dword [rbp + 0x394]
cmp eax, r13d
jle 0x140002323
mov edi, r14d
lea eax, [r14*4]
cdqe
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x48], 0xfffffffffffffdb4
mov r15d, dword [rsp + 0x30]
mov rbx, rax
and qword [rsp + 0x58], 0
test r14, r14
jle 0x1400022df
mov r10d, esi
sub r10d, r12d
mov r11d, r15d
sub r11d, r12d
mov rsi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x58]
mov r15d, r12d
lea r12, [0x140000000]
lea eax, [r10 + r15]
cdq
idiv edi
movsxd rax, edx
mov ecx, dword [rbp + rax*4 + 0x418]
sar rcx, 8
movzx r8d, cl
lea eax, [r11 + r15]
cdq
idiv edi
movsxd rax, edx
movzx ecx, byte [rbp + rax*4 + 0x418]
mov r9d, dword [r12 + r8*4 + 0x246d0]
xor r9d, dword [r12 + rcx*4 + 0x257d0]
mov eax, r15d
cdq
idiv edi
movsxd rax, edx
mov ecx, dword [rbp + rax*4 + 0x418]
sar rcx, 0x10
movzx eax, cl
xor r9d, dword [r12 + rax*4 + 0x236d0]
movzx eax, byte [rbp + rbx*4 + 0x41b]
xor r9d, dword [r12 + rax*4 + 0x25be0]
lea rax, [rsi + rbx*4]
xor r9d, dword [rbp + rax + 0x418]
mov dword [rbp + rbx*4 + 0x3f8], r9d
inc r15d
inc rbx
cmp rbx, r14
jl 0x14000223f
mov r12d, dword [rsp + 0x40]
mov esi, dword [rsp + 0x44]
mov r15d, dword [rsp + 0x30]
mov rbx, qword [rsp + 0x60]
mov r8, rbx
lea rdx, [rbp + 0x3f8]
lea rcx, [rbp + 0x418]
call fcn.140004c10
inc r13d
add qword [rsp + 0x48], 0x20
mov eax, dword [rbp + 0x394]
cmp r13d, eax
jl 0x140002210
mov r9d, dword [rbp + 0x390]
mov rdi, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x70]
mov r15, qword [rsp + 0x50]
xor r13d, r13d
mov qword [rsp + 0x58], r13
test r14, r14
jle 0x140002414
movsxd r11, eax
mov rdi, rbx
shl r11, 5
sub r12d, esi
mov r13d, dword [rsp + 0x30]
sub r13d, esi
mov r10d, r14d
mov r15, qword [rsp + 0x58]
lea r9, [0x140000000]
lea rax, [r11 + r15*4]
mov r8d, dword [rbp + rax + 0x1ac]
movzx ecx, byte [rbp + r15*4 + 0x41b]
mov eax, r8d
sar eax, 0x18
xor al, byte [rcx + r9 + 0x235d0]
mov byte [rdi], al
lea eax, [rsi + r12]
cdq
idiv r10d
movsxd rax, edx
mov ecx, dword [rbp + rax*4 + 0x418]
sar rcx, 0x10
movzx edx, cl
mov eax, r8d
sar eax, 0x10
xor al, byte [rdx + r9 + 0x235d0]
mov byte [rdi + 1], al
mov eax, esi
cdq
idiv r10d
movsxd rax, edx
mov ecx, dword [rbp + rax*4 + 0x418]
sar rcx, 8
movzx edx, cl
mov eax, r8d
sar eax, 8
xor al, byte [rdx + r9 + 0x235d0]
mov byte [rdi + 2], al
lea eax, [rsi + r13]
cdq
idiv r10d
movsxd rax, edx
movzx ecx, byte [rbp + rax*4 + 0x418]
xor r8b, byte [rcx + r9 + 0x235d0]
mov byte [rdi + 3], r8b
lea rdi, [rdi + 4]
inc esi
inc r15
cmp r15, r14
jl 0x140002358
mov r9d, dword [rbp + 0x390]
mov rdi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x50]
xor r13d, r13d
mov r12d, dword [rsp + 0x34]
mov rcx, rbx
cmp byte [rbp - 0x38], r13b
je 0x140002442
test r9d, r9d
jle 0x140002442
lea rdx, [rbp + 0x3b8]
sub rdx, rbx
mov r8d, r9d
mov al, byte [rdx + rcx]
xor byte [rcx], al
inc rcx
sub r8, 1
jne 0x140002434
movsxd r8, r9d
mov rdx, r15
lea rcx, [rbp + 0x3b8]
call fcn.140004c10
movsxd r9, dword [rbp + 0x390]
add r15, r9
mov qword [rsp + 0x50], r15
add rbx, r9
mov qword [rsp + 0x70], rbx
inc r12d
mov dword [rsp + 0x34], r12d
xor edx, edx
mov rax, rdi
div r9
mov rcx, rax
movsxd rax, r12d
cmp rax, rcx
lea r8, [0x140000000]
jb 0x140002101
mov rsi, qword [rbp - 0x80]
mov r14, qword [rbp - 0x70]
mov r15, qword [rsp + 0x78]
movsx r9, byte [rsi + rdi - 1]
lea edx, [rdi - 1]
mov r8, rdi
sub r8, r9
movsxd rax, edx
cmp rax, r8
jb 0x1400024dd
lea rcx, [rax + rsi]
cmp byte [rcx], r9b
jne 0x1400024d0
mov byte [rcx], r13b
dec edx
dec rcx
movsxd rax, edx
cmp rax, r8
jae 0x1400024b9
jmp 0x1400024dd
mov r8, rdi
xor edx, edx
mov rcx, rsi
call fcn.1400052b0
xorps xmm0, xmm0
movups xmmword [r14], xmm0
mov qword [r14 + 0x10], r13
mov qword [r14 + 0x18], r13
or r8, 0xffffffffffffffff
inc r8
cmp byte [rsi + r8], r13b
jne 0x1400024f0
mov rdx, rsi
mov rcx, r14
call fcn.140001db0
mov rcx, r15
call fcn.140002ba0
mov rcx, rsi
call fcn.140002ba0
nop
mov rdx, qword [rbp - 0x50]
cmp rdx, 0x10
jb 0x14000254c
inc rdx
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002547
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002579
call fcn.140002ba0
mov rax, r14
mov rcx, qword [rbp + 0x440]
xor rcx, rsp
call fcn.140002b80
mov rbx, qword [rsp + 0x5a0]
add rsp, 0x550
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400094c4
int3