Function at 0x18002b080
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
mov byte [rsp + 0x10], dl
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x30
mov r13d, dword [rbp + 0x60]
mov r14, rcx
movzx edi, r8b
mov ecx, 0x10624dd3
movzx esi, r9w
mov r9d, 0x51eb851f
mov r10d, r13d
mov r11d, 0xcccccccd
mov eax, 0xd1b71759
mul r13d
mov ebx, edx
shr ebx, 0xd
imul eax, ebx, 0x2710
sub r10d, eax
mov eax, ecx
mul r10d
mov eax, ecx
mov ecx, r13d
mov r8d, edx
shr r8d, 6
movzx r12d, r8b
mov r8d, 0x66666667
mul r13d
shr edx, 6
imul eax, edx, 0x3e8
sub ecx, eax
mov eax, r9d
mul ecx
mov eax, r9d
mov ecx, r13d
mov r10d, edx
shr r10d, 5
mov dword [rbp + 0x50], r10d
movzx r10d, r10b
mul r13d
shr edx, 5
imul eax, edx, 0x64
sub ecx, eax
mov eax, r11d
mul ecx
mov eax, r11d
movzx r11d, bl
mov r9d, edx
inc r11d
add r11d, r12d
shr r9d, 3
movzx r15d, r9b
mul r13d
shr edx, 3
mov al, dl
shl al, 2
add dl, al
mov eax, r8d
add dl, dl
sub r13b, dl
imul r11d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub r11d, eax
mov eax, r8d
movzx ecx, r11b
inc ecx
add r10d, ecx
imul r10d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub r10d, eax
mov eax, 0x66666667
movzx r8d, r10b
inc r8d
add r8d, r15d
imul r8d
sar edx, 2
movzx ecx, bl
mov eax, edx
lea r9, [0x18010d7a0]
shr eax, 0x1f
mov qword [rbp - 0x10], rcx
mov ebx, edi
add edx, eax
and ebx, 0xf
or rbx, 0xc0
lea eax, [rdx + rdx*4]
add eax, eax
shl rbx, 0xc
sub r8d, eax
mov eax, esi
and eax, 0xfff
or rbx, rax
movzx eax, byte [rcx + r9]
shl rbx, 4
or rbx, rax
movzx eax, r11b
movzx ecx, byte [rax + r9]
shl rbx, 4
movzx eax, r10b
or rbx, rcx
movzx ecx, byte [rax + r9]
mov eax, 0x66666667
shl rbx, 4
or rbx, rcx
movzx ecx, r8b
movzx edx, byte [rcx + r9]
shl rbx, 4
or rbx, rdx
movzx edx, r8b
movzx r8d, r13b
inc edx
shl rbx, 4
add r8d, edx
imul r8d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
mov edx, 5
add eax, eax
sub r8d, eax
movzx eax, r8b
movzx ecx, byte [rax + r9]
or rbx, rcx
lea rcx, [rbp + 0x40]
mov rax, rbx
bswap rax
shr rax, 0x18
mov qword [rbp + 0x40], rax
call fcn.18002b034
shl rbx, 0x10
mov qword [rbp + 0x40], rbx
mov cl, al
movzx edx, ax
shl cl, 4
shr rbx, 0x10
and bl, 0xf
or bl, cl
mov byte [rbp + 0x40], bl
mov rcx, qword [rbp + 0x40]
shr rcx, 0x14
xor cl, al
and cl, 0xf
xor cl, al
mov byte [rbp + 0x41], cl
mov cl, al
mov rax, qword [rbp + 0x40]
shr rax, 0x18
shr cl, 4
xor cl, al
movzx eax, dx
and cl, 0xf
shr ax, 4
xor cl, al
mov byte [rbp + 0x42], cl
movzx ecx, dx
mov rax, qword [rbp + 0x40]
shr cx, 8
shr dx, 8
shr rax, 0x1c
mov r10b, 1
xor cl, al
mov r9b, r10b
and cl, 0xf
xor cl, dl
xor r8b, r8b
mov byte [rbp + 0x43], cl
mov rdx, qword [rbp + 0x40]
mov cl, r8b
mov rax, rdx
shr rax, cl
add cl, r10b
and al, r10b
xor r9b, al
cmp cl, 0x38
jb 0x18002b2de
movabs rax, 0xff00000000000000
or rdx, rax
movzx eax, r9b
add rdx, rdx
or rdx, rax
mov qword [rbp + 0x40], rdx
mov eax, dword [rbp + 0x40]
shr rdx, 0x20
mov dword [r14 + 4], edx
mov dword [r14 + 8], eax
cmp byte [rbp + 0x48], r8b
je 0x18002b398
shl r15d, 4
movzx eax, r13b
shl r12d, 4
movsxd rdx, r15d
mov cl, r10b
or rdx, rax
movsxd rax, r12d
shl rdx, 9
or rdx, rax
movzx eax, byte [rbp + 0x50]
or rdx, rax
movabs rax, 0x712000000
shl rdx, 9
or rdx, qword [rbp - 0x10]
shl rdx, 0x25
or rdx, rax
mov rax, rdx
shr rax, cl
add cl, r10b
and al, r10b
xor r8b, al
cmp cl, 0x40
jb 0x18002b361
movzx eax, r8b
mov dword [r14], 0x907f0082
or rdx, rax
mov qword [rbp + 0x40], rdx
mov eax, dword [rbp + 0x40]
shr rdx, 0x20
mov dword [r14 + 0x10], eax
mov dword [r14 + 0xc], edx
jmp 0x18002b39f
mov dword [r14], 0x907f0042
mov rbx, qword [rsp + 0x88]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret