Function at 0x1801e9da0
Capabilities:
Encode data using xor
Hash data with crc32

Disassembly:
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x18
cmp qword [rsp + 0x20], 0
jne 0x1801e9dc2
xor eax, eax
jmp 0x1801ea010
mov rax, qword [rsp + 0x20]
mov qword [rsp], rax
mov eax, dword [rsp + 0x30]
xor eax, 0xffffffff
mov dword [rsp + 0x30], eax
cmp qword [rsp + 0x28], 8
jb 0x1801e9fb5
mov rax, qword [rsp]
movzx eax, byte [rax]
mov ecx, dword [rsp + 0x30]
xor ecx, eax
mov eax, ecx
and eax, 0xff
cdqe
lea rcx, [0x18039a6a0]
mov edx, dword [rsp + 0x30]
shr edx, 8
mov eax, dword [rcx + rax*4]
xor eax, edx
mov dword [rsp + 0x30], eax
mov rax, qword [rsp]
inc rax
mov qword [rsp], rax
mov rax, qword [rsp]
movzx eax, byte [rax]
mov ecx, dword [rsp + 0x30]
xor ecx, eax
mov eax, ecx
and eax, 0xff
cdqe
lea rcx, [0x18039a6a0]
mov edx, dword [rsp + 0x30]
shr edx, 8
mov eax, dword [rcx + rax*4]
xor eax, edx
mov dword [rsp + 0x30], eax
mov rax, qword [rsp]
inc rax
mov qword [rsp], rax
mov rax, qword [rsp]
movzx eax, byte [rax]
mov ecx, dword [rsp + 0x30]
xor ecx, eax
mov eax, ecx
and eax, 0xff
cdqe
lea rcx, [0x18039a6a0]
mov edx, dword [rsp + 0x30]
shr edx, 8
mov eax, dword [rcx + rax*4]
xor eax, edx
mov dword [rsp + 0x30], eax
mov rax, qword [rsp]
inc rax
mov qword [rsp], rax
mov rax, qword [rsp]
movzx eax, byte [rax]
mov ecx, dword [rsp + 0x30]
xor ecx, eax
mov eax, ecx
and eax, 0xff
cdqe
lea rcx, [0x18039a6a0]
mov edx, dword [rsp + 0x30]
shr edx, 8
mov eax, dword [rcx + rax*4]
xor eax, edx
mov dword [rsp + 0x30], eax
mov rax, qword [rsp]
inc rax
mov qword [rsp], rax
mov rax, qword [rsp]
movzx eax, byte [rax]
mov ecx, dword [rsp + 0x30]
xor ecx, eax
mov eax, ecx
and eax, 0xff
cdqe
lea rcx, [0x18039a6a0]
mov edx, dword [rsp + 0x30]
shr edx, 8
mov eax, dword [rcx + rax*4]
xor eax, edx
mov dword [rsp + 0x30], eax
mov rax, qword [rsp]
inc rax
mov qword [rsp], rax
mov rax, qword [rsp]
movzx eax, byte [rax]
mov ecx, dword [rsp + 0x30]
xor ecx, eax
mov eax, ecx
and eax, 0xff
cdqe
lea rcx, [0x18039a6a0]
mov edx, dword [rsp + 0x30]
shr edx, 8
mov eax, dword [rcx + rax*4]
xor eax, edx
mov dword [rsp + 0x30], eax
mov rax, qword [rsp]
inc rax
mov qword [rsp], rax
mov rax, qword [rsp]
movzx eax, byte [rax]
mov ecx, dword [rsp + 0x30]
xor ecx, eax
mov eax, ecx
and eax, 0xff
cdqe
lea rcx, [0x18039a6a0]
mov edx, dword [rsp + 0x30]
shr edx, 8
mov eax, dword [rcx + rax*4]
xor eax, edx
mov dword [rsp + 0x30], eax
mov rax, qword [rsp]
inc rax
mov qword [rsp], rax
mov rax, qword [rsp]
movzx eax, byte [rax]
mov ecx, dword [rsp + 0x30]
xor ecx, eax
mov eax, ecx
and eax, 0xff
cdqe
lea rcx, [0x18039a6a0]
mov edx, dword [rsp + 0x30]
shr edx, 8
mov eax, dword [rcx + rax*4]
xor eax, edx
mov dword [rsp + 0x30], eax
mov rax, qword [rsp]
inc rax
mov qword [rsp], rax
mov rax, qword [rsp + 0x28]
sub rax, 8
mov qword [rsp + 0x28], rax
jmp 0x1801e9dd6
cmp qword [rsp + 0x28], 0
je 0x1801ea00a
mov rax, qword [rsp]
movzx eax, byte [rax]
mov ecx, dword [rsp + 0x30]
xor ecx, eax
mov eax, ecx
and eax, 0xff
cdqe
lea rcx, [0x18039a6a0]
mov edx, dword [rsp + 0x30]
shr edx, 8
mov eax, dword [rcx + rax*4]
xor eax, edx
mov dword [rsp + 0x30], eax
mov rax, qword [rsp]
inc rax
mov qword [rsp], rax
mov rax, qword [rsp + 0x28]
dec rax
mov qword [rsp + 0x28], rax
cmp qword [rsp + 0x28], 0
jne 0x1801e9fbd
mov eax, dword [rsp + 0x30]
not eax
add rsp, 0x18
ret