Function at 0x180403df0
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
sub rsp, 0x2b0
mov rax, qword [0x1805770f0]
xor rax, rsp
mov qword [rsp + 0x2a0], rax
mov rbx, rdx
mov r8, rcx
mov edx, 0x10
lea rcx, [rsp + 0x20]
call fcn.180407240
lea rax, [rsp + 0x90]
mov r10d, 0x40
nop dword [rax]
mov rdx, qword [rax - 0x68]
mov r8, qword [rax]
lea rax, [rax + 8]
mov r9, rdx
mov rcx, rdx
ror r9, 8
shr rdx, 7
ror rcx, 1
xor r9, rcx
mov rcx, r8
xor r9, rdx
rol rcx, 3
mov rdx, r8
shr r8, 6
ror rdx, 0x13
xor rdx, rcx
xor rdx, r8
add r9, rdx
add r9, qword [rax - 0x78]
add r9, qword [rax - 0x30]
mov qword [rax + 8], r9
sub r10, 1
jne 0x180403e40
mov r13, qword [rbx + 0x10]
lea r12, [0x18054fc90]
mov r8, qword [rbx]
mov r10, r13
mov r9, qword [rbx + 8]
xor r15d, r15d
mov r11, qword [rbx + 0x18]
mov rdi, qword [rbx + 0x20]
mov rsi, qword [rbx + 0x28]
mov rbp, qword [rbx + 0x30]
mov r14, qword [rbx + 0x38]
nop dword [rax + rax]
mov rdx, rdi
mov rax, rdi
ror rax, 0x12
mov rcx, r8
rol rdx, 0x17
xor rdx, rax
rol rcx, 0x1e
mov rax, rdi
ror rax, 0xe
xor rdx, rax
mov rax, rbp
xor rax, rsi
and rax, rdi
xor rax, rbp
add rdx, rax
mov rax, r8
add rdx, qword [r15 + r12]
add rdx, qword [rsp + r15 + 0x20]
ror rax, 0x1c
add rdx, r14
xor rcx, rax
add r11, rdx
mov r14, r10
mov rax, r8
rol rax, 0x19
or r14, r9
xor rcx, rax
and r14, r8
mov rax, r10
and rax, r9
or r14, rax
lea rax, [rdx + rcx]
mov rdx, r11
add r14, rax
rol rdx, 0x17
mov rax, r11
mov rcx, r14
ror rax, 0x12
xor rdx, rax
rol rcx, 0x1e
mov rax, r11
ror rax, 0xe
xor rdx, rax
mov rax, rsi
xor rax, rdi
and rax, r11
xor rax, rsi
add rdx, rax
mov rax, r14
add rdx, qword [rsp + r15 + 0x28]
add rdx, qword [r15 + r12 + 8]
ror rax, 0x1c
add rdx, rbp
xor rcx, rax
add r10, rdx
mov rax, r14
mov rbp, r9
rol rax, 0x19
or rbp, r8
xor rcx, rax
and rbp, r14
mov rax, r9
and rax, r8
or rbp, rax
lea rax, [rdx + rcx]
mov rdx, r10
add rbp, rax
rol rdx, 0x17
mov rax, r10
ror rax, 0x12
xor rdx, rax
mov rax, r10
ror rax, 0xe
xor rdx, rax
mov rax, rdi
xor rax, r11
and rax, r10
xor rax, rdi
add rdx, rax
add rdx, qword [rsp + r15 + 0x30]
add rdx, qword [r15 + r12 + 0x10]
add rdx, rsi
mov rcx, rbp
add r9, rdx
rol rcx, 0x1e
mov rsi, r14
mov rax, rbp
ror rax, 0x1c
or rsi, r8
xor rcx, rax
and rsi, rbp
mov rax, rbp
rol rax, 0x19
xor rcx, rax
mov rax, r14
and rax, r8
or rsi, rax
lea rax, [rdx + rcx]
mov rdx, r9
add rsi, rax
rol rdx, 0x17
mov rax, r9
mov rcx, rsi
ror rax, 0x12
xor rdx, rax
rol rcx, 0x1e
mov rax, r9
ror rax, 0xe
xor rdx, rax
mov rax, r11
xor rax, r10
and rax, r9
xor rax, r11
add rdx, rax
mov rax, rsi
add rdx, qword [rsp + r15 + 0x38]
add rdx, qword [r15 + r12 + 0x18]
ror rax, 0x1c
add rdx, rdi
xor rcx, rax
add r8, rdx
mov rdi, r14
mov rax, rsi
rol rax, 0x19
or rdi, rbp
xor rcx, rax
and rdi, rsi
mov rax, r14
and rax, rbp
or rdi, rax
lea rax, [rdx + rcx]
mov rdx, r8
add rdi, rax
rol rdx, 0x17
mov rax, r8
mov rcx, rdi
ror rax, 0x12
xor rdx, rax
rol rcx, 0x1e
mov rax, r8
ror rax, 0xe
xor rdx, rax
mov rax, r10
xor rax, r9
and rax, r8
xor rax, r10
add rdx, rax
mov rax, rdi
add rdx, qword [rsp + r15 + 0x40]
add rdx, qword [r15 + r12 + 0x20]
ror rax, 0x1c
add rdx, r11
xor rcx, rax
mov r11, rbp
or r11, rsi
mov rax, rdi
rol rax, 0x19
and r11, rdi
xor rcx, rax
add r14, rdx
mov rax, rbp
and rax, rsi
or r11, rax
lea rax, [rdx + rcx]
add r11, rax
mov rdx, r14
rol rdx, 0x17
mov rax, r14
ror rax, 0x12
mov rcx, r11
xor rdx, rax
rol rcx, 0x1e
mov rax, r14
ror rax, 0xe
xor rdx, rax
mov rax, r9
xor rax, r8
and rax, r14
xor rax, r9
add rdx, rax
mov rax, r11
add rdx, qword [rsp + r15 + 0x48]
add rdx, qword [r15 + r12 + 0x28]
ror rax, 0x1c
add rdx, r10
xor rcx, rax
add rbp, rdx
mov r10, rsi
mov rax, r11
rol rax, 0x19
or r10, rdi
xor rcx, rax
and r10, r11
mov rax, rsi
and rax, rdi
or r10, rax
lea rax, [rdx + rcx]
mov rdx, rbp
add r10, rax
rol rdx, 0x17
mov rax, rbp
mov rcx, r10
ror rax, 0x12
xor rdx, rax
rol rcx, 0x1e
mov rax, rbp
ror rax, 0xe
xor rdx, rax
mov rax, r14
xor rax, r8
and rax, rbp
xor rax, r8
add rdx, rax
mov rax, r10
add rdx, qword [rsp + r15 + 0x50]
add rdx, qword [r15 + r12 + 0x30]
ror rax, 0x1c
add rdx, r9
xor rcx, rax
add rsi, rdx
mov rax, r10
mov r9, rdi
rol rax, 0x19
or r9, r11
xor rcx, rax
and r9, r10
mov rax, rdi
and rax, r11
or r9, rax
lea rax, [rdx + rcx]
mov rdx, rsi
add r9, rax
rol rdx, 0x17
mov rax, rsi
ror rax, 0x12
xor rdx, rax
mov rax, rsi
ror rax, 0xe
xor rdx, rax
mov rax, r14
xor rax, rbp
and rax, rsi
xor rax, r14
add rdx, rax
mov rcx, r9
add rdx, qword [rsp + r15 + 0x58]
mov rax, r9
add rdx, qword [r15 + r12 + 0x38]
add r15, 0x40
add rdx, r8
ror rax, 0x1c
rol rcx, 0x1e
mov r8, r11
xor rcx, rax
or r8, r10
and r8, r9
mov rax, r9
rol rax, 0x19
add rdi, rdx
xor rcx, rax
mov rax, r11
and rax, r10
or r8, rax
lea rax, [rdx + rcx]
add r8, rax
cmp r15, 0x280
jl 0x180403ec0
add qword [rbx], r8
lea rax, [r10 + r13]
add qword [rbx + 8], r9
add qword [rbx + 0x18], r11
add qword [rbx + 0x20], rdi
add qword [rbx + 0x28], rsi
add qword [rbx + 0x30], rbp
add qword [rbx + 0x38], r14
mov qword [rbx + 0x10], rax
mov rcx, qword [rsp + 0x2a0]
xor rcx, rsp
call fcn.1803d0210
mov rbx, qword [rsp + 0x300]
add rsp, 0x2b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret