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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov dword [rax + 0x10], edx
mov qword [rax + 8], rcx
push rbp
push rsi
push r15
sub rsp, 0x90
mov esi, edx
mov r15, r8
mov rdx, rcx
lea ebp, [rsi + 0x220]
mov dword [rsp + 0x40], ebp
cmp esi, ebp
jae 0x18005e747
mov rcx, qword [rsp + 0x48]
mov qword [rax + 0x18], rbx
mov ebx, dword [rsp + 0xb8]
mov qword [rax - 0x20], rdi
mov edi, dword [rsp + 0xb8]
mov qword [rax - 0x28], r12
mov r12, qword [rsp + 0x60]
mov qword [rax - 0x30], r13
lea r13, [0x1800a6b00]
mov qword [rax - 0x38], r14
mov r14d, dword [rsp + 0xb8]
lea r10, [0x180079420]
movabs r8, 0xaaaaaaaaaaaaaaab
cmp esi, 0xf0
ja 0x18005e499
je 0x18005e716
mov eax, esi
sub eax, 0x36
je 0x18005e491
sub eax, 0x44
je 0x18005e487
sub eax, 0x32
je 0x18005e433
cmp eax, 0x12
jne 0x18005e704
not dword [r15]
jmp 0x18005e704
mov qword [rsp + 0x28], rdx
lea rax, [rsp + 0xb8]
mov edx, 0x20
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
mov qword [rsp + 0x48], 0
mov r8, r15
mov qword [rsp + 0x50], r10
lea rcx, [rsp + 0x48]
mov byte [rsp + 0xb8], 0
call fcn.180070780
mov r9, qword [rsp + 0xc8]
mov rcx, rax
mov qword [rsp + 0x48], rax
jmp 0x18005e6fc
mov qword [rsp + 0x58], rdx
jmp 0x18005e704
xor r12d, r12d
jmp 0x18005e704
mov eax, esi
sub eax, 0x102
je 0x18005e6e5
sub eax, 0x44
je 0x18005e4b9
cmp eax, 0x44
je 0x18005e716
jmp 0x18005e704
mov rcx, qword [rsp + 0x60]
cmp r12, rcx
jae 0x18005e68f
mov rbp, qword [rsp + 0x58]
sub rcx, r12
dec rcx
add rbp, 8
add rbp, r12
mov rax, r8
mul rcx
mov r13, rdx
shr r13, 3
inc r13
mov qword [rsp + 0x50], r13
lea rax, [r13*2]
add rax, r13
lea r12, [r12 + rax*4]
nop dword [rax]
mov esi, 0x12c
lea r13, [0x1800a6b00]
nop dword [rax]
mov eax, esi
sub eax, 0x12b
je 0x18005e5a1
cmp eax, 1
jne 0x18005e657
xor edi, edi
lea rdx, [rbp - 8]
mov qword [rsp + 0x30], rdi
xor r9d, r9d
mov qword [rsp + 0x28], rdi
xor r8d, r8d
xor ecx, ecx
mov dword [rsp + 0x20], 0xd3
call fcn.180036d80
mov r14d, dword [r15]
lea rdx, [rbp - 4]
mov qword [rsp + 0x30], rdi
xor r9d, r9d
mov qword [rsp + 0x28], rdi
xor r8d, r8d
xor ecx, ecx
mov dword [rsp + 0x20], 0xd3
xor r14d, eax
call fcn.180036d80
mov qword [rsp + 0x30], rdi
xor r9d, r9d
mov qword [rsp + 0x28], rdi
xor r8d, r8d
mov rdx, rbp
mov dword [rsp + 0x20], 0xd3
xor ecx, ecx
mov rbx, rax
call fcn.180036d80
mov rdi, rax
jmp 0x18005e657
mov eax, r14d
shr rax, 0x10
movzx edx, al
mov eax, r14d
shr rax, 8
movzx ecx, al
mov r9d, dword [r13 + rdx*4 + 0x2400]
mov eax, ebx
shr rax, 0x10
xor r9d, dword [r13 + rcx*4 + 0x2800]
movzx ecx, al
mov eax, ebx
shr rax, 8
xor r9d, dword [r13 + rcx*4 + 0x1400]
movzx ecx, al
mov eax, edi
shr rax, 0x10
xor r9d, dword [r13 + rcx*4 + 0x1800]
movzx ecx, al
mov eax, edi
shr rax, 8
xor r9d, dword [r13 + rcx*4 + 0x400]
movzx ecx, al
mov eax, r14d
shr rax, 0x18
xor r9d, dword [r13 + rcx*4 + 0x800]
xor r9d, dword [r13 + rax*4 + 0x2000]
mov eax, ebx
shr rax, 0x18
xor r9d, dword [r13 + rax*4 + 0x1000]
mov eax, edi
shr rax, 0x18
xor r9d, dword [r13 + rax*4]
movzx eax, r14b
xor r9d, dword [r13 + rax*4 + 0x2c00]
movzx eax, bl
xor r9d, dword [r13 + rax*4 + 0x1c00]
movzx eax, dil
xor r9d, dword [r13 + rax*4 + 0xc00]
mov dword [r15], r9d
dec esi
cmp esi, 0x12a
ja 0x18005e510
add rbp, 0xc
sub qword [rsp + 0x50], 1
jne 0x18005e500
mov esi, dword [rsp + 0xb8]
lea r13, [0x1800a6b00]
mov r9, qword [rsp + 0xc8]
mov ebp, dword [rsp + 0x40]
cmp r12, qword [r9]
jae 0x18005e6d5
nop dword [rax]
nop dword [rax + rax]
mov edx, dword [r15]
mov rax, qword [rsp + 0x58]
movzx eax, byte [r12 + rax]
inc r12
xor rax, rdx
shr edx, 8
movzx ecx, al
mov eax, dword [r13 + rcx*4]
xor eax, edx
mov dword [r15], eax
cmp r12, qword [r9]
jb 0x18005e6a0
not eax
mov dword [rsp + 0x48], eax
mov rcx, qword [rsp + 0x48]
jmp 0x18005e6fc
mov eax, dword [r15]
not eax
mov dword [rsp + 0x48], eax
mov rcx, qword [rsp + 0x48]
jmp 0x18005e6fc
mov rax, r8
mul qword [r9]
shr rdx, 3
lea rax, [rdx + rdx*2]
shl rax, 2
mov qword [rsp + 0x60], rax
mov rdx, qword [rsp + 0xb0]
add esi, 0x44
mov dword [rsp + 0xb8], esi
cmp esi, ebp
jb 0x18005e3ee
mov r13, qword [rsp + 0x78]
mov rax, rcx
mov r12, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x88]
mov rbx, qword [rsp + 0xc0]
mov r14, qword [rsp + 0x70]
add rsp, 0x90
pop r15
pop rsi
pop rbp
ret
mov rax, qword [rsp + 0x48]
add rsp, 0x90
pop r15
pop rsi
pop rbp
ret