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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb0]
sub rsp, 0x1b0
mov rax, qword [0x1800f2210]
xor rax, rsp
mov qword [rbp + 0xa0], rax
xor r14d, r14d
mov dword [rsp + 0x58], r14d
call fcn.1800181a0
mov rbx, rax
mov qword [rbp - 0x20], rax
mov rcx, rax
call fcn.180018040
mov rsi, rax
mov qword [rbp - 0x28], rax
xor edi, edi
mov dword [rsp + 0x58], edi
mov rcx, rbx
call fcn.180017ee0
test rax, rax
je 0x18001cfcc
xor ebx, ebx
mov qword [rbp - 0x78], rbx
nop dword [rax + rax]
mov rax, qword [rsi + rbx*8]
mov r13, qword [rax]
mov qword [rbp - 0x30], r13
xor r12d, r12d
mov rcx, r13
call fcn.180017cc0
test rax, rax
je 0x18001cfaa
xor esi, esi
mov rdx, qword [r13]
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x70], rsi
mov qword [rbp + 0x78], rsi
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x18001c7b0
lea rcx, [rbp + 0x60]
call fcn.18004a340
nop
mov byte [rsp + 0x50], 0x73
mov al, 0x5d
mov cl, 0x17
mov dl, 0x1f
movzx r8d, dl
xor r9d, r9d
xor al, 0x73
mov byte [rsp + 0x51], al
xor cl, 0x73
mov byte [rsp + 0x52], cl
xor dl, 0x73
mov byte [rsp + 0x53], dl
xor r8b, 0x73
mov byte [rsp + 0x54], r8b
mov byte [rsp + 0x55], r9b
lea rax, [rsp + 0x51]
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rax + rdx], r9b
jne 0x18001c804
lea rcx, [rbp + 0x60]
cmp qword [rbp + 0x78], 0x10
setae sil
mov rdi, qword [rbp + 0x60]
cmovae rcx, rdi
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x51]
mov rbx, qword [rbp + 0x70]
mov rdx, rbx
call fcn.180049e80
cmp rbx, rax
jb 0x18001d008
mov rcx, rbx
sub rcx, rax
mov edx, 4
cmp rcx, rdx
cmovb rdx, rcx
lea rcx, [rbp + 0x60]
test sil, sil
cmovne rcx, rdi
add rcx, rax
sub rbx, rdx
mov r8, rbx
sub r8, rax
inc r8
add rdx, rcx
call fcn.18009a850
mov qword [rbp + 0x70], rbx
movsxd rdx, r12d
mov rcx, r13
call fcn.180017df0
mov r15, rax
mov rdi, qword [rax + 0x10]
mov rbx, qword [rax + 0x18]
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
xor eax, eax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rax
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rbx + r8], al
jne 0x18001c8b0
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.18004a340
cmp qword [rsp + 0x70], 0
sete sil
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18001c90d
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c908
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001d038
call fcn.180098550
xor edx, edx
test sil, sil
je 0x18001ca68
mov byte [rsp + 0x40], 0x3f
mov al, 5
movzx ecx, al
xor al, 0x3f
mov byte [rsp + 0x41], al
xor cl, 0x3f
mov byte [rsp + 0x42], cl
mov byte [rsp + 0x43], dl
lea rax, [rsp + 0x41]
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp byte [rax + rcx], dl
jne 0x18001c940
movabs rax, 0x7fffffffffffffff
mov rdx, qword [rbp + 0x70]
sub rax, rdx
cmp rax, rcx
jb 0x18001d014
lea r9, [rbp + 0x60]
cmp qword [rbp + 0x78], 0x10
cmovae r9, qword [rbp + 0x60]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x41]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 8]
call fcn.18004c030
or r14d, 0x40
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rdi + r8], 0
jne 0x18001c9a0
mov rdx, rdi
lea rcx, [rbp + 8]
call fcn.180041380
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x60], xmm1
xor esi, esi
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], sil
or r14d, 0x10
mov rdx, qword [rbp + 0x78]
cmp rdx, 0x10
jb 0x18001ca1d
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001ca10
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001d00e
call fcn.180098550
movups xmm0, xmmword [rbp - 0x70]
movups xmm1, xmmword [rbp - 0x60]
movups xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x70], xmm1
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x18001cd0f
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001cd0a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001d002
jmp 0x18001cd0a
mov byte [rsp + 0x48], 0x39
mov al, 3
movzx ecx, al
xor al, 0x39
mov byte [rsp + 0x49], al
xor cl, 0x39
mov byte [rsp + 0x4a], cl
mov byte [rsp + 0x4b], dl
mov byte [rsp + 0x44], 0x17
mov al, 0x2d
movzx ecx, al
xor al, 0x17
mov byte [rsp + 0x45], al
xor cl, 0x17
mov byte [rsp + 0x46], cl
mov byte [rsp + 0x47], dl
lea rax, [rsp + 0x45]
mov rcx, 0xffffffffffffffff
nop word [rax + rax]
inc rcx
cmp byte [rax + rcx], dl
jne 0x18001cab0
movabs rax, 0x7fffffffffffffff
mov rdx, qword [rbp + 0x70]
sub rax, rdx
cmp rax, rcx
jb 0x18001cffc
lea r9, [rbp + 0x60]
cmp qword [rbp + 0x78], 0x10
cmovae r9, qword [rbp + 0x60]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x45]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0x28]
call fcn.18004c030
or r14d, 0x20
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x18001cb10
mov rdx, rbx
lea rcx, [rbp + 0x28]
call fcn.180041380
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
xor esi, esi
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], rsi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x70], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], sil
lea rax, [rsp + 0x49]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x18001cb66
lea rdx, [rsp + 0x49]
lea rcx, [rsp + 0x60]
call fcn.180041380
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x38], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x40], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdi + r8], 0
jne 0x18001cbb3
mov rdx, rdi
lea rcx, [rbp - 0x50]
call fcn.180041380
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x70], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r14d, 0x8c
mov rdx, qword [rbp + 0x78]
cmp rdx, 0x10
jb 0x18001cc31
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001cc24
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001d01a
call fcn.180098550
movups xmm0, xmmword [rbp - 0x60]
movups xmm1, xmmword [rbp - 0x70]
movups xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x70], xmm1
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x18001cc74
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001cc6f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001d020
call fcn.180098550
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x38], 0xf
mov byte [rbp - 0x50], 0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18001ccc1
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001ccbc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001d026
call fcn.180098550
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], 0
mov rdx, qword [rbp + 0x40]
cmp rdx, 0x10
jb 0x18001cd0f
inc rdx
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001cd0a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001d02c
call fcn.180098550
mov qword [rbp + 0x58], rsi
lea rdx, [rbp + 0x58]
mov rcx, r15
call fcn.180017bc0
mov rdi, rax
test rax, rax
je 0x18001cf4c
nop dword [rax + rax]
mov rcx, rdi
call fcn.1800178f0
mov rbx, rax
mov byte [rsp + 0x4c], 0x3a
xor cl, cl
xor dl, dl
xor eax, eax
xor cl, 0x3a
mov byte [rsp + 0x4d], cl
xor dl, 0x3a
mov byte [rsp + 0x4e], dl
mov byte [rsp + 0x4f], al
lea rax, [rsp + 0x4d]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x18001cd64
movabs rax, 0x7fffffffffffffff
mov rdx, qword [rbp + 0x70]
sub rax, rdx
cmp rax, rcx
jb 0x18001d03e
lea r9, [rbp + 0x60]
cmp qword [rbp + 0x78], 0x10
cmovae r9, qword [rbp + 0x60]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x4d]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp - 0x18]
call fcn.18004c030
nop
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x18001cdc0
mov rdx, rbx
lea rcx, [rbp - 0x18]
call fcn.180041380
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp + 0x80], xmm0
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp + 0x90], xmm0
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r14d, 3
mov rdx, qword [rbp]
cmp rdx, 0x10
jb 0x18001ce41
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001ce3c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001d032
call fcn.180098550
mov qword [rbp - 8], rsi
mov qword [rbp], 0xf
mov byte [rbp - 0x18], 0
mov rcx, rdi
call fcn.1800179c0
mov r10d, eax
lea rdx, [rbp + 0x80]
movups xmm0, xmmword [rbp - 0x60]
psrldq xmm0, 8
movq rdi, xmm0
cmp rdi, 0x10
setae sil
mov rbx, qword [rbp - 0x70]
cmovae rdx, rbx
mov rcx, 0xffffffffffffffff
nop dword [rax + rax]
inc rcx
cmp byte [rdx + rcx], 0
jne 0x18001ce90
lea r8, [rbp + 0x80]
test sil, sil
cmovne r8, rbx
mov eax, 0xffffffff
test ecx, ecx
je 0x18001cee2
mov r9d, ecx
lea r13, [0x1800da4b0]
nop word [rax + rax]
movsx edx, byte [r8]
mov ecx, eax
xor rdx, rcx
movzx ecx, dl
shr eax, 8
xor eax, dword [r13 + rcx*4]
lea r8, [r8 + 1]
sub r9, 1
jne 0x18001cec0
mov r13, qword [rbp - 0x30]
not eax
mov dword [rbp - 0x80], eax
mov dword [rbp - 0x7c], r10d
lea r8, [rbp - 0x80]
lea rdx, [rbp + 0x48]
call fcn.180045e70
nop
test sil, sil
je 0x18001cf2f
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x18001cf27
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001d038
mov rcx, rbx
call fcn.180098550
lea rdx, [rbp + 0x58]
mov rcx, r15
call fcn.180017bc0
mov rdi, rax
test rax, rax
mov esi, 0
jne 0x18001cd30
mov rdx, qword [rbp + 0x78]
cmp rdx, 0x10
jb 0x18001cf87
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001cf82
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001d044
call fcn.180098550
inc r12d
mov rcx, r13
call fcn.180017cc0
movsxd rcx, r12d
cmp rcx, rax
jb 0x18001c791
mov rbx, qword [rbp - 0x78]
mov edi, dword [rsp + 0x58]
mov rsi, qword [rbp - 0x28]
inc edi
mov dword [rsp + 0x58], edi
inc rbx
mov qword [rbp - 0x78], rbx
mov rcx, qword [rbp - 0x20]
call fcn.180017ee0
movsxd rcx, edi
cmp rcx, rax
jb 0x18001c770
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.180098530
lea r11, [rsp + 0x1b0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.180002150
nop
call fcn.1800a41bc
int3
call fcn.180044a30
nop
call fcn.1800a41bc
nop
call fcn.180002150
nop
call fcn.1800a41bc
nop
call fcn.1800a41bc
nop
call fcn.1800a41bc
nop
call fcn.1800a41bc
nop
call fcn.1800a41bc
nop
call fcn.1800a41bc
int3
call fcn.180002150
nop
call fcn.1800a41bc
int3