Function at 0x180006b30
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rdi, rcx
movzx ecx, byte [rcx + 0x1d]
mov rbx, rdx
call fcn.180006f00
movzx ecx, byte [rdi + 0x1e]
xor al, byte [rdi]
xor al, byte [rbx]
mov byte [rdi], al
call fcn.180006f00
movzx ecx, byte [rdi + 0x1f]
xor byte [rdi + 1], al
call fcn.180006f00
movzx ecx, byte [rdi + 0x1c]
xor byte [rdi + 2], al
call fcn.180006f00
mov r10d, 3
xor byte [rdi + 3], al
movzx edx, byte [rbx]
mov al, 0x1b
movzx ecx, dl
add dl, dl
shr cl, 7
imul cl
lea rcx, [rdi + 5]
xor al, dl
mov edx, r10d
mov byte [rbx], al
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx - 5]
add rcx, 4
xor byte [rcx - 5], al
movzx eax, byte [rcx - 8]
xor byte [rcx - 4], al
movzx eax, byte [rcx - 7]
xor byte [rcx - 3], al
movzx eax, byte [rcx - 6]
xor byte [rcx - 2], al
dec rdx
jne 0x180006ba0
movzx r9d, byte [rdi + 0xc]
mov r8d, 0xff
test r9b, r9b
je 0x180006c15
mov al, 1
cmp al, r9b
je 0x180006bed
movzx ecx, al
add al, al
test cl, cl
jns 0x180006be7
xor al, 0x1b
xor al, cl
inc dl
jne 0x180006bd7
mov eax, r8d
sub al, dl
mov dl, 1
je 0x180006c15
nop word [rax + rax]
movzx ecx, dl
add al, r8b
add dl, dl
test cl, cl
jns 0x180006c0f
xor dl, 0x1b
xor dl, cl
test al, al
jne 0x180006c00
movzx r9d, byte [rdi + 0xd]
movzx ecx, dl
rol cl, 1
xor dl, cl
rol cl, 1
xor dl, cl
rol cl, 1
movzx eax, cl
rol al, 1
xor al, byte [rdi + 0x10]
xor al, cl
xor al, dl
xor dl, dl
xor al, 0x63
mov byte [rdi + 0x10], al
test r9b, r9b
je 0x180006c75
mov al, 1
cmp al, r9b
je 0x180006c57
movzx ecx, al
add al, al
test cl, cl
jns 0x180006c51
xor al, 0x1b
xor al, cl
inc dl
jne 0x180006c41
mov eax, r8d
sub al, dl
mov dl, 1
je 0x180006c75
movzx ecx, dl
add al, r8b
add dl, dl
test cl, cl
jns 0x180006c6f
xor dl, 0x1b
xor dl, cl
test al, al
jne 0x180006c60
movzx r9d, byte [rdi + 0xe]
movzx ecx, dl
rol cl, 1
xor dl, cl
rol cl, 1
xor dl, cl
rol cl, 1
movzx eax, cl
rol al, 1
xor al, byte [rdi + 0x11]
xor al, cl
xor al, dl
xor dl, dl
xor al, 0x63
mov byte [rdi + 0x11], al
test r9b, r9b
je 0x180006cd5
mov al, 1
cmp al, r9b
je 0x180006cb7
movzx ecx, al
add al, al
test cl, cl
jns 0x180006cb1
xor al, 0x1b
xor al, cl
inc dl
jne 0x180006ca1
mov eax, r8d
sub al, dl
mov dl, 1
je 0x180006cd5
movzx ecx, dl
add al, r8b
add dl, dl
test cl, cl
jns 0x180006ccf
xor dl, 0x1b
xor dl, cl
test al, al
jne 0x180006cc0
movzx r9d, byte [rdi + 0xf]
movzx ecx, dl
rol cl, 1
xor dl, cl
rol cl, 1
xor dl, cl
rol cl, 1
movzx eax, cl
rol al, 1
xor al, byte [rdi + 0x12]
xor al, cl
xor al, dl
xor dl, dl
xor al, 0x63
mov byte [rdi + 0x12], al
test r9b, r9b
je 0x180006d37
mov al, 1
cmp al, r9b
je 0x180006d17
movzx ecx, al
add al, al
test cl, cl
jns 0x180006d11
xor al, 0x1b
xor al, cl
inc dl
jne 0x180006d01
sub r8b, dl
mov dl, 1
je 0x180006d37
nop
movzx eax, dl
add r8b, 0xff
add dl, dl
test al, al
jns 0x180006d30
xor dl, 0x1b
xor dl, al
test r8b, r8b
jne 0x180006d20
movzx ecx, dl
rol cl, 1
xor dl, cl
rol cl, 1
xor dl, cl
rol cl, 1
movzx eax, cl
rol al, 1
xor al, byte [rdi + 0x13]
xor al, cl
xor al, dl
xor al, 0x63
mov byte [rdi + 0x13], al
lea rax, [rdi + 0x15]
nop dword [rax]
movzx ecx, byte [rax - 5]
lea rax, [rax + 4]
xor byte [rax - 5], cl
movzx ecx, byte [rax - 8]
xor byte [rax - 4], cl
movzx ecx, byte [rax - 7]
xor byte [rax - 3], cl
movzx ecx, byte [rax - 6]
xor byte [rax - 2], cl
dec r10
jne 0x180006d60
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret