Function at 0x18004bb30
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 - 0x90]
sub rsp, 0x190
mov rax, qword [0x1800cb040]
xor rax, rsp
mov qword [rbp + 0x80], rax
xor r13d, r13d
mov r14d, r13d
mov dword [rsp + 0x30], r13d
call fcn.180047e60
mov rsi, rax
mov qword [rbp - 0x40], rax
mov rcx, rax
call fcn.180047da0
mov rbx, rax
mov qword [rsp + 0x78], rax
mov edi, r13d
mov dword [rsp + 0x40], r13d
mov rcx, rsi
call fcn.180047ce0
test rax, rax
je 0x18004c3b7
nop dword [rax + rax]
mov rax, qword [rbx]
mov r12, qword [rax]
mov qword [rsp + 0x68], r12
mov r15d, r13d
mov dword [rsp + 0x3c], r13d
mov rcx, r12
call fcn.180047bb0
test rax, rax
je 0x18004c394
nop dword [rax]
nop dword [rax + rax]
mov rdx, qword [r12]
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x50], r13
mov qword [rbp + 0x58], r13
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x18004bc00
lea rcx, [rbp + 0x40]
call fcn.180039750
nop
mov byte [rsp + 0x34], 0x14
mov r8b, 0x3a
mov al, 0x70
mov cl, 0x78
movzx edx, cl
xor r9d, r9d
xor r8b, 0x14
mov byte [rsp + 0x35], r8b
xor al, 0x14
mov byte [rsp + 0x36], al
xor cl, 0x14
mov byte [rsp + 0x37], cl
xor dl, 0x14
mov byte [rsp + 0x38], dl
mov byte [rsp + 0x39], r9b
lea rax, [rsp + 0x35]
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rax + rdi], r9b
jne 0x18004bc54
lea rsi, [rbp + 0x40]
mov r13, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x58]
cmp rcx, 0xf
cmova rsi, r13
mov r12, qword [rbp + 0x50]
cmp rdi, r12
ja 0x18004bcf3
mov rax, r12
sub rax, rdi
test rdi, rdi
jne 0x18004bc89
xor ebx, ebx
jmp 0x18004bcfa
lea r14, [rax + rsi]
movsx r15d, r8b
lea r8, [r14 + 1]
sub r8, rsi
mov edx, r15d
mov rcx, rsi
call fcn.1800a1a30
mov rbx, rax
test rax, rax
je 0x18004bce5
nop dword [rax + rax]
mov r8, rdi
lea rdx, [rsp + 0x35]
mov rcx, rbx
call fcn.1800a1ad0
test eax, eax
je 0x18004beda
inc rbx
lea r8, [r14 + 1]
sub r8, rbx
mov edx, r15d
mov rcx, rbx
call fcn.1800a1a30
mov rbx, rax
test rax, rax
jne 0x18004bcb0
mov rcx, qword [rbp + 0x58]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x3c]
mov rbx, 0xffffffffffffffff
cmp r12, rbx
jb 0x18004c3f3
mov rax, r12
sub rax, rbx
mov edx, 4
cmp rax, rdx
cmovb rdx, rax
lea rax, [rbp + 0x40]
cmp rcx, 0xf
cmova rax, r13
lea rcx, [rax + rbx]
sub r12, rdx
mov r8, r12
sub r8, rbx
inc r8
add rdx, rcx
call fcn.1800a0ff0
mov qword [rbp + 0x50], r12
movsxd rdx, r15d
mov r12, qword [rsp + 0x68]
mov rcx, r12
call fcn.180047c50
mov r15, rax
mov rdi, qword [rax + 0x10]
mov rbx, qword [rax + 0x18]
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
xor r13d, r13d
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rbx + r8], r13b
jne 0x18004bd74
mov rdx, rbx
lea rcx, [rsp + 0x48]
call fcn.180039750
cmp qword [rsp + 0x58], r13
sete sil
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x18004bdd0
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004bdcb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004c41d
call fcn.180070a40
xor edx, edx
test sil, sil
je 0x18004bef0
mov byte [rsp + 0x24], 0x31
mov al, 0xb
movzx ecx, al
xor al, 0x31
mov byte [rsp + 0x25], al
xor cl, 0x31
mov byte [rsp + 0x26], cl
mov byte [rsp + 0x27], dl
lea r8, [rsp + 0x25]
lea rdx, [rbp + 0x40]
lea rcx, [rbp - 0x18]
call fcn.180066640
nop
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdi + r8], 0
jne 0x18004be10
mov rdx, rdi
mov rcx, rax
call fcn.180039850
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x70], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r14d, 8
mov dword [rsp + 0x30], r14d
mov rdx, qword [rbp + 0x58]
cmp rdx, 0xf
jbe 0x18004be8f
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004be82
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004c3f9
call fcn.180070a40
movups xmm0, xmmword [rbp - 0x80]
movups xmm1, xmmword [rbp - 0x70]
movups xmmword [rbp + 0x40], xmm0
movups xmmword [rbp + 0x50], xmm1
mov rdx, qword [rbp]
cmp rdx, 0xf
jbe 0x18004c14e
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004c149
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004c3ed
jmp 0x18004c149
sub rbx, rsi
mov rcx, qword [rbp + 0x58]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x3c]
jmp 0x18004bcfa
mov byte [rsp + 0x20], 0x1a
mov al, 0x20
movzx ecx, al
xor al, 0x1a
mov byte [rsp + 0x21], al
xor cl, 0x1a
mov byte [rsp + 0x22], cl
mov byte [rsp + 0x23], dl
mov byte [rsp + 0x28], 0xe
mov al, 0x34
movzx ecx, al
xor al, 0xe
mov byte [rsp + 0x29], al
xor cl, 0xe
mov byte [rsp + 0x2a], cl
mov byte [rsp + 0x2b], dl
lea r8, [rsp + 0x29]
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 8]
call fcn.180066640
nop
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rbx + r8], 0
jne 0x18004bf40
mov rdx, rbx
mov rcx, rax
call fcn.180039850
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x48], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x58], xmm1
mov qword [rax + 0x18], 0xf
mov qword [rax + 0x10], r13
mov byte [rax], 0
or r14d, 0x10
lea rax, [rsp + 0x21]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18004bfa0
lea rdx, [rsp + 0x21]
lea rcx, [rsp + 0x48]
call fcn.180039850
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x48], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x50], xmm1
mov qword [rax + 0x18], 0xf
mov qword [rax + 0x10], r13
mov byte [rax], 0
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdi + r8], 0
jne 0x18004bff0
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180039850
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x80], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r14d, 6
mov dword [rsp + 0x30], r14d
mov rdx, qword [rbp + 0x58]
cmp rdx, 0xf
jbe 0x18004c070
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004c063
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004c3ff
call fcn.180070a40
movups xmm0, xmmword [rbp - 0x70]
movups xmm1, xmmword [rbp - 0x80]
movups xmmword [rbp + 0x40], xmm0
movups xmmword [rbp + 0x50], xmm1
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x18004c0b3
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004c0ae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004c405
call fcn.180070a40
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], 0
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x18004c100
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004c0fb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004c40b
call fcn.180070a40
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], 0xf
mov byte [rsp + 0x48], 0
mov rdx, qword [rbp + 0x20]
cmp rdx, 0xf
jbe 0x18004c14e
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004c149
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004c411
call fcn.180070a40
mov qword [rbp + 0x38], r13
lea rdx, [rbp + 0x38]
mov rcx, r15
call fcn.180047b10
mov rdi, rax
test rax, rax
je 0x18004c32b
nop word [rax + rax]
mov rcx, rdi
call fcn.180047950
mov rbx, rax
mov byte [rsp + 0x2c], 0x21
mov cl, 0x1b
movzx edx, cl
xor eax, eax
xor cl, 0x21
mov byte [rsp + 0x2d], cl
xor dl, 0x21
mov byte [rsp + 0x2e], dl
mov byte [rsp + 0x2f], al
lea r8, [rsp + 0x2d]
lea rdx, [rbp + 0x40]
lea rcx, [rbp - 0x38]
call fcn.180066640
nop
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rbx + r8], 0
jne 0x18004c1b3
mov rdx, rbx
mov rcx, rax
call fcn.180039850
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp + 0x60], xmm0
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp + 0x70], xmm0
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r14d, 1
mov dword [rsp + 0x30], r14d
mov rdx, qword [rbp - 0x20]
cmp rdx, 0xf
jbe 0x18004c232
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004c22d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004c417
call fcn.180070a40
mov qword [rbp - 0x28], r13
mov qword [rbp - 0x20], 0xf
mov byte [rbp - 0x38], 0
mov rcx, rdi
call fcn.1800479e0
mov r10d, eax
lea rdx, [rbp + 0x60]
mov rbx, qword [rbp - 0x70]
movups xmm0, xmmword [rbp - 0x80]
psrldq xmm0, 8
movq rdi, xmm0
cmp rdi, 0xf
cmova rdx, rbx
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rdx + rcx], 0
jne 0x18004c272
lea r8, [rbp + 0x60]
cmp rdi, 0xf
cmova r8, rbx
mov eax, 0xffffffff
test ecx, ecx
je 0x18004c2c2
mov r9d, ecx
lea r12, [0x1800b4d40]
nop word [rax + rax]
movsx edx, byte [r8]
mov ecx, eax
xor rdx, rcx
movzx ecx, dl
shr eax, 8
xor eax, dword [r12 + rcx*4]
lea r8, [r8 + 1]
sub r9, 1
jne 0x18004c2a0
mov r12, qword [rsp + 0x68]
not eax
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], r10d
lea r8, [rsp + 0x70]
lea rdx, [rbp + 0x28]
call fcn.180067210
nop
cmp rdi, 0xf
jbe 0x18004c313
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x18004c30b
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004c41d
mov rcx, rbx
call fcn.180070a40
lea rdx, [rbp + 0x38]
mov rcx, r15
call fcn.180047b10
mov rdi, rax
test rax, rax
jne 0x18004c170
mov rdx, qword [rbp + 0x58]
cmp rdx, 0xf
jbe 0x18004c366
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004c361
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004c3e7
call fcn.180070a40
mov r15d, dword [rsp + 0x3c]
inc r15d
mov dword [rsp + 0x3c], r15d
mov rcx, r12
call fcn.180047bb0
movsxd rcx, r15d
cmp rcx, rax
jb 0x18004bbe0
mov rbx, qword [rsp + 0x78]
mov edi, dword [rsp + 0x40]
mov rsi, qword [rbp - 0x40]
inc edi
mov dword [rsp + 0x40], edi
add rbx, 8
mov qword [rsp + 0x78], rbx
mov rcx, rsi
call fcn.180047ce0
movsxd rcx, edi
cmp rcx, rax
jb 0x18004bbb0
mov rcx, qword [rbp + 0x80]
xor rcx, rsp
call fcn.1800704c0
lea r11, [rsp + 0x190]
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.1800845ac
nop
call fcn.1800845ac
nop
call fcn.1800663b0
nop
call fcn.1800845ac
nop
call fcn.1800845ac
nop
call fcn.1800845ac
nop
call fcn.1800845ac
nop
call fcn.1800845ac
nop
call fcn.1800845ac
nop
call fcn.1800845ac
int3