Function at 0x180001e20
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x48
mov r9, qword [rcx + 0x10]
xor r12d, r12d
mov r14, rcx
mov qword [rsp + 0x28], r12
mov r8d, r12d
lea rax, [r9 + 2]
nop dword [rax + rax]
movzx ecx, byte [rax - 1]
lea rax, [rax + 4]
movzx edx, byte [r9 + r8]
mov byte [rsp + r8 + 0x31], cl
movzx ecx, byte [rax - 4]
mov byte [rsp + r8 + 0x32], cl
movzx ecx, byte [rax - 3]
mov byte [rsp + r8 + 0x33], cl
mov byte [rsp + r8 + 0x30], dl
add r8, 4
cmp r8, 0x10
jl 0x180001e50
nop dword [rax]
nop word [rax + rax]
movzx edx, byte [rsp + r12 + 0x30]
mov r8d, 1
mov rcx, r14
call fcn.180001bd0
mov r8d, 1
mov byte [rsp + 0x23], al
movzx edx, al
mov rcx, r14
movzx r15d, al
call fcn.180001bd0
mov r8d, 1
movzx edx, al
mov rcx, r14
movzx ebx, al
call fcn.180001bd0
mov byte [rsp + 0x98], al
mov r8d, 1
xor al, bl
mov rcx, r14
movzx ebx, byte [rsp + r12 + 0x34]
xor r15b, al
movzx edx, bl
mov byte [rsp + 0x22], al
call fcn.180001bd0
mov r8d, 1
movzx edx, al
mov rcx, r14
movzx r12d, al
call fcn.180001bd0
mov r8d, 1
movzx edx, al
mov rcx, r14
movzx esi, al
call fcn.180001bd0
mov r13, qword [rsp + 0x28]
movzx edi, al
xor dil, r12b
mov byte [rsp + 0xa0], al
mov r8d, 1
mov rcx, r14
xor dil, bl
movzx ebp, byte [rsp + r13 + 0x38]
movzx edx, bpl
call fcn.180001bd0
mov r8d, 1
mov byte [rsp + 0x20], al
movzx edx, al
mov rcx, r14
call fcn.180001bd0
mov r8d, 1
movzx edx, al
mov rcx, r14
movzx ebx, al
call fcn.180001bd0
mov rcx, qword [rsp + 0x90]
movzx r14d, al
xor r14b, bl
mov byte [rsp + 0xa8], al
movzx ebx, r14b
mov r8d, 1
xor bl, bpl
movzx ebp, byte [rsp + r13 + 0x3c]
movzx edx, bpl
call fcn.180001bd0
mov rcx, qword [rsp + 0x90]
mov r8d, 1
movzx edx, al
movzx r13d, al
call fcn.180001bd0
mov rcx, qword [rsp + 0x90]
mov r8d, 1
movzx edx, al
mov byte [rsp + 0x21], al
call fcn.180001bd0
movzx edx, al
movzx r9d, al
mov rax, qword [rsp + 0x90]
xor dl, bpl
xor dl, bl
xor dl, dil
xor dl, r15b
mov rcx, qword [rax + 0x10]
mov rax, qword [rsp + 0x28]
movzx r15d, byte [rsp + 0xa0]
movzx edi, byte [rsp + 0xa8]
movzx r10d, r15b
movzx ebx, byte [rsp + 0x20]
xor r10b, sil
movzx r8d, byte [rsp + 0x98]
xor r8b, byte [rsp + rax + 0x30]
movzx r11d, byte [rsp + 0x21]
mov byte [rax + rcx], dl
xor r11b, r9b
movzx ecx, r11b
movzx eax, dil
xor al, bl
xor cl, bpl
xor r11b, r13b
xor bl, r14b
mov r14, qword [rsp + 0x90]
movzx edx, r10b
xor dl, r12b
mov r12, qword [rsp + 0x28]
movzx esi, byte [rsp + r12 + 0x38]
xor al, sil
xor dil, sil
xor cl, al
mov rax, qword [rsp + 0x90]
xor cl, dl
movzx edx, byte [rsp + r12 + 0x34]
xor cl, r8b
xor r15b, dl
movzx r8d, byte [rsp + r12 + 0x30]
xor r10b, dl
mov rax, qword [rax + 0x10]
xor r11b, r10b
mov byte [rax + r12 + 4], cl
movzx ecx, r13b
movzx eax, byte [rsp + 0x22]
xor cl, r9b
xor al, r8b
xor cl, bpl
xor cl, bl
xor cl, al
mov rax, qword [r14 + 0x10]
xor cl, r15b
mov byte [rax + r12 + 8], cl
movzx eax, byte [rsp + 0x23]
xor al, byte [rsp + 0x98]
xor al, r8b
xor r11b, al
mov rax, qword [r14 + 0x10]
xor r11b, dil
mov byte [rax + r12 + 0xc], r11b
inc r12
mov qword [rsp + 0x28], r12
cmp r12, 4
jl 0x180001e90
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret