Function at 0x180157270
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, 0x210
mov rax, qword [0x180e681c0]
xor rax, rsp
mov qword [rsp + 0x200], rax
mov ebx, 4
lea rsi, [0x180e778a4]
mov r15d, ebx
lea rdi, [rsp + 0x10]
mov r13, rcx
lea r12, [0x180000000]
nop
movzx edx, byte [rsi]
xor r11d, r11d
mov r9d, edx
mov eax, edx
and eax, 1
shr r9d, 1
dec r9d
or eax, 2
mov ecx, r9d
lea r8d, [r11 + 1]
shl eax, cl
mov r10d, ebx
sub r10d, eax
test r9d, r9d
je 0x180157331
mov ebp, edx
mov r14d, eax
mov eax, r8d
mov edx, r10d
sub rax, rbp
shr r10d, 1
add rax, r14
and edx, 1
add r8d, r8d
or r8d, edx
mov ecx, dword [r13 + rax*4 + 0x28b4c]
mov eax, edx
sub ecx, edx
neg eax
xor rcx, rax
shr rcx, 2
and ecx, 0x1ff
add r11d, dword [r12 + rcx*4 + 0xe770a0]
sub r9d, 1
jne 0x1801572f0
mov dword [rdi], r11d
inc ebx
add rdi, 4
inc r15
inc rsi
cmp ebx, 0x80
jb 0x1801572c0
lea rdi, [rsp]
mov ebp, 4
sub rdi, r13
lea r11, [r13 + 0x32ebc]
sub rdi, 0x332bc
lea rsi, [r13 + 0x332c4]
lea r14, [0x180e778a1]
nop dword [rax]
nop dword [rax + rax]
mov eax, dword [r13 + 0x33b00]
xor r10d, r10d
test eax, eax
je 0x1801573e9
nop
mov eax, r10d
or eax, 0x40
xor r9d, r9d
nop dword [rax]
mov ecx, eax
mov edx, eax
shr rcx, 1
and edx, 1
shr eax, 1
mov r8d, dword [r11 + rcx*4 - 0xa76c]
mov ecx, edx
sub r8d, edx
neg ecx
xor r8, rcx
shr r8, 2
and r8d, 0x1ff
add r9d, dword [r12 + r8*4 + 0xe770a0]
cmp eax, 1
jne 0x1801573a0
mov dword [r11 + r10*4], r9d
inc r10d
mov eax, dword [r13 + 0x33b00]
cmp r10d, eax
jb 0x180157390
mov edx, 0xe
cmp eax, edx
jbe 0x180157420
mov eax, edx
lea rcx, [r11 + rax*4]
mov eax, edx
shr eax, 1
inc edx
shl eax, 6
sub eax, 0x140
add dword [rcx], eax
cmp edx, dword [r13 + 0x33b00]
jb 0x1801573f2
nop dword [rax]
nop word [rax + rax]
mov eax, dword [r11]
lea rdx, [rsi + 0xc]
mov dword [rsi - 8], eax
mov r9d, 6
mov eax, dword [r11 + 4]
mov ebx, 4
mov dword [rsi - 4], eax
mov r10d, r9d
mov eax, dword [r11 + 8]
mov dword [rsi], eax
mov eax, dword [r11 + 0xc]
mov dword [rsi + 4], eax
nop dword [rax]
lea eax, [r9 - 2]
cmp eax, 0x800
jae 0x180157466
movzx eax, byte [r10 + r12 + 0xe7789e]
jmp 0x180157494
cmp eax, 0x200000
mov rax, rbx
jae 0x180157483
shr rax, 0xa
movzx eax, byte [rax + r12 + 0xe778a0]
add rax, 0x14
jmp 0x180157494
shr rax, 0x14
movzx eax, byte [rax + r12 + 0xe778a0]
add rax, 0x28
mov eax, dword [r11 + rax*4]
lea rcx, [r12 + 0xe778a0]
add eax, dword [rdi + rdx - 4]
lea r8d, [r9 - 1]
add rcx, r10
mov dword [rdx - 4], eax
cmp r8d, 0x800
jae 0x1801574bd
movzx eax, byte [rcx - 1]
jmp 0x1801574f0
mov rax, rcx
sub rax, r14
cmp r8d, 0x200000
jae 0x1801574df
shr rax, 0xa
movzx eax, byte [rax + r12 + 0xe778a0]
add rax, 0x14
jmp 0x1801574f0
shr rax, 0x14
movzx eax, byte [rax + r12 + 0xe778a0]
add rax, 0x28
mov eax, dword [r11 + rax*4]
add eax, dword [rdi + rdx]
mov dword [rdx], eax
cmp r9d, 0x800
jae 0x180157507
movzx eax, byte [rcx]
jmp 0x180157537
mov rax, r10
cmp r9d, 0x200000
jae 0x180157526
shr rax, 0xa
movzx eax, byte [rax + r12 + 0xe778a0]
add rax, 0x14
jmp 0x180157537
shr rax, 0x14
movzx eax, byte [rax + r12 + 0xe778a0]
add rax, 0x28
mov eax, dword [r11 + rax*4]
lea r8d, [r9 + 1]
add eax, dword [rdi + rdx + 4]
mov dword [rdx + 4], eax
cmp r8d, 0x800
jae 0x180157555
movzx eax, byte [rcx + 1]
jmp 0x180157586
lea rax, [rbx + 3]
cmp r8d, 0x200000
jae 0x180157575
shr rax, 0xa
movzx eax, byte [rax + r12 + 0xe778a0]
add rax, 0x14
jmp 0x180157586
shr rax, 0x14
movzx eax, byte [rax + r12 + 0xe778a0]
add rax, 0x28
mov eax, dword [r11 + rax*4]
add r9d, 4
add eax, dword [rdi + rdx + 8]
add rbx, 4
mov dword [rdx + 8], eax
add r10, 4
add rdx, 0x10
lea eax, [r9 - 2]
cmp eax, 0x80
jb 0x180157450
add r11, 0x100
add rsi, 0x200
sub rdi, 0x200
sub rbp, 1
jne 0x180157380
mov dword [r13 + 0x33b20], ebp
mov rcx, qword [rsp + 0x200]
xor rcx, rsp
call fcn.18024b290
lea r11, [rsp + 0x210]
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