Function at 0x14004c8f0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x290
mov rax, qword [0x14009e018]
xor rax, rsp
mov qword [rsp + 0x280], rax
xor edi, edi
lea rbx, [rsp]
mov r9d, edi
lea rax, [rdx + 2]
sub rbx, rdx
mov r11, rdx
mov r10, rcx
nop word [rax + rax]
movzx ecx, byte [rax - 1]
lea r8d, [r9*8]
movsxd rdx, r8d
lea rax, [rax + 8]
inc r9d
movzx r8d, byte [rdx + r11]
shl r8, 8
or r8, rcx
movzx ecx, byte [rax - 8]
shl r8, 8
or r8, rcx
movzx ecx, byte [rax - 7]
shl r8, 8
or r8, rcx
movzx ecx, byte [rax - 6]
shl r8, 8
or r8, rcx
movzx ecx, byte [rax - 5]
shl r8, 8
or r8, rcx
movzx ecx, byte [rax - 4]
shl r8, 8
or r8, rcx
movzx ecx, byte [rax - 3]
shl r8, 8
or r8, rcx
mov qword [rbx + rax - 0xa], r8
cmp r9d, 0x10
jl 0x14004c940
movsxd rax, r9d
cmp rax, 0x50
jge 0x14004ca1f
mov r11d, 0x50
lea r9, [rsp + rax*8 - 0x10]
sub r11, rax
nop word [rax + rax]
mov rcx, qword [r9 - 0x68]
mov rdx, qword [r9]
lea r9, [r9 + 8]
mov r8, rcx
mov rax, rcx
ror r8, 8
shr rcx, 7
ror rax, 1
xor r8, rax
mov rax, rdx
xor r8, rcx
rol rax, 3
mov rcx, rdx
shr rdx, 6
ror rcx, 0x13
xor rcx, rax
xor rcx, rdx
add r8, rcx
add r8, qword [r9 - 0x78]
add r8, qword [r9 - 0x30]
mov qword [r9 + 8], r8
sub r11, 1
jne 0x14004c9d0
mov r13, qword [r10 + 0x18]
lea r12, [0x14006b7b0]
mov r8, qword [r10 + 0x10]
mov r9, r13
mov r11, qword [r10 + 0x20]
mov rbx, qword [r10 + 0x28]
mov rsi, qword [r10 + 0x30]
mov r14, qword [r10 + 0x38]
mov rbp, qword [r10 + 0x40]
mov r15, qword [r10 + 0x48]
nop dword [rax]
movsxd rax, edi
mov rdx, rsi
rol rdx, 0x17
inc edi
lea rcx, [rax*8]
mov rax, rsi
ror rax, 0x12
xor rdx, rax
mov rax, rsi
ror rax, 0xe
xor rdx, rax
mov rax, rbp
xor rax, r14
and rax, rsi
xor rax, rbp
add rdx, rax
mov rax, r8
add rdx, qword [rcx + r12]
add rdx, qword [rsp + rcx]
mov rcx, r8
ror rax, 0x1c
add rdx, r15
add rbx, rdx
rol rcx, 0x1e
xor rcx, rax
mov r15, r9
or r15, r8
mov rax, r8
rol rax, 0x19
and r15, r11
xor rcx, rax
mov rax, r9
and rax, r8
or r15, rax
lea rax, [rdx + rcx]
mov rdx, rbx
add r15, rax
rol rdx, 0x17
movsxd rax, edi
inc edi
lea rcx, [rax*8]
mov rax, rbx
ror rax, 0x12
xor rdx, rax
mov rax, rbx
ror rax, 0xe
xor rdx, rax
mov rax, r14
xor rax, rsi
and rax, rbx
xor rax, r14
add rdx, rax
mov rax, r15
add rdx, qword [rcx + r12]
add rdx, qword [rsp + rcx]
mov rcx, r15
ror rax, 0x1c
add rdx, rbp
add r11, rdx
rol rcx, 0x1e
xor rcx, rax
mov rbp, r15
or rbp, r8
mov rax, r15
rol rax, 0x19
and rbp, r9
xor rcx, rax
mov rax, r15
and rax, r8
or rbp, rax
lea rax, [rdx + rcx]
mov rdx, r11
add rbp, rax
rol rdx, 0x17
movsxd rax, edi
lea rcx, [rax*8]
mov rax, r11
ror rax, 0x12
xor rdx, rax
mov rax, r11
ror rax, 0xe
xor rdx, rax
inc edi
mov rax, rsi
xor rax, rbx
and rax, r11
xor rax, rsi
add rdx, rax
mov rax, rbp
add rdx, qword [rcx + r12]
add rdx, qword [rsp + rcx]
mov rcx, rbp
ror rax, 0x1c
add rdx, r14
add r9, rdx
rol rcx, 0x1e
xor rcx, rax
mov r14, r15
or r14, rbp
mov rax, rbp
rol rax, 0x19
and r14, r8
xor rcx, rax
mov rax, r15
and rax, rbp
or r14, rax
lea rax, [rdx + rcx]
mov rdx, r9
add r14, rax
rol rdx, 0x17
movsxd rax, edi
inc edi
lea rcx, [rax*8]
mov rax, r9
ror rax, 0x12
xor rdx, rax
mov rax, r9
ror rax, 0xe
xor rdx, rax
mov rax, rbx
xor rax, r11
and rax, r9
xor rax, rbx
add rdx, rax
mov rax, r14
add rdx, qword [rcx + r12]
add rdx, qword [rsp + rcx]
mov rcx, r14
ror rax, 0x1c
add rdx, rsi
add r8, rdx
rol rcx, 0x1e
xor rcx, rax
mov rsi, rbp
or rsi, r14
mov rax, r14
rol rax, 0x19
and rsi, r15
xor rcx, rax
mov rax, rbp
and rax, r14
or rsi, rax
lea rax, [rdx + rcx]
mov rdx, r8
add rsi, rax
rol rdx, 0x17
movsxd rax, edi
lea rcx, [rax*8]
mov rax, r8
ror rax, 0x12
xor rdx, rax
mov rax, r8
ror rax, 0xe
xor rdx, rax
mov rax, r11
xor rax, r9
and rax, r8
xor rax, r11
add rdx, rax
add rdx, qword [rcx + r12]
add rdx, qword [rsp + rcx]
add rdx, rbx
add r15, rdx
inc edi
mov rbx, r14
mov rcx, rsi
rol rcx, 0x1e
or rbx, rsi
and rbx, rbp
mov rax, rsi
ror rax, 0x1c
xor rcx, rax
mov rax, rsi
rol rax, 0x19
xor rcx, rax
mov rax, r14
and rax, rsi
or rbx, rax
lea rax, [rdx + rcx]
mov rdx, r15
add rbx, rax
rol rdx, 0x17
movsxd rax, edi
inc edi
lea rcx, [rax*8]
mov rax, r15
ror rax, 0x12
xor rdx, rax
mov rax, r15
ror rax, 0xe
xor rdx, rax
mov rax, r9
xor rax, r8
and rax, r15
xor rax, r9
add rdx, rax
mov rax, rbx
add rdx, qword [rcx + r12]
add rdx, qword [rsp + rcx]
mov rcx, rbx
ror rax, 0x1c
add rdx, r11
add rbp, rdx
rol rcx, 0x1e
xor rcx, rax
mov r11, rsi
or r11, rbx
mov rax, rbx
rol rax, 0x19
and r11, r14
xor rcx, rax
mov rax, rsi
and rax, rbx
or r11, rax
lea rax, [rdx + rcx]
mov rdx, rbp
add r11, rax
rol rdx, 0x17
movsxd rax, edi
lea rcx, [rax*8]
mov rax, rbp
ror rax, 0x12
xor rdx, rax
mov rax, rbp
ror rax, 0xe
xor rdx, rax
mov rax, r15
xor rax, r8
and rax, rbp
xor rax, r8
add rdx, rax
mov rax, r11
add rdx, qword [rcx + r12]
add rdx, qword [rsp + rcx]
mov rcx, r11
ror rax, 0x1c
add rdx, r9
rol rcx, 0x1e
add r14, rdx
xor rcx, rax
mov rax, r11
rol rax, 0x19
xor rcx, rax
inc edi
mov r9, rbx
or r9, r11
mov rax, rbx
and rax, r11
and r9, rsi
or r9, rax
lea rax, [rdx + rcx]
add r9, rax
mov rdx, r14
rol rdx, 0x17
movsxd rax, edi
inc edi
lea rcx, [rax*8]
mov rax, r14
ror rax, 0x12
xor rdx, rax
mov rax, r14
ror rax, 0xe
xor rdx, rax
mov rax, r15
xor rax, rbp
and rax, r14
xor rax, r15
add rdx, rax
mov rax, r9
add rdx, qword [rcx + r12]
add rdx, qword [rsp + rcx]
mov rcx, r9
add rdx, r8
ror rax, 0x1c
rol rcx, 0x1e
mov r8, r11
xor rcx, rax
or r8, r9
and r8, rbx
mov rax, r9
rol rax, 0x19
add rsi, rdx
xor rcx, rax
mov rax, r11
and rax, r9
or r8, rax
lea rax, [rdx + rcx]
add r8, rax
cmp edi, 0x50
jl 0x14004ca50
add qword [r10 + 0x10], r8
lea rax, [r9 + r13]
add qword [r10 + 0x20], r11
add qword [r10 + 0x28], rbx
add qword [r10 + 0x30], rsi
add qword [r10 + 0x38], r14
add qword [r10 + 0x40], rbp
add qword [r10 + 0x48], r15
mov qword [r10 + 0x18], rax
xor eax, eax
mov rcx, qword [rsp + 0x280]
xor rcx, rsp
call fcn.140051aa0
lea r11, [rsp + 0x290]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret