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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
mov dword [rsp + 8], ecx
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov rax, qword [0x1800cc020]
xor rax, rsp
mov qword [rbp + 0x28], rax
mov ebx, ecx
xor r13d, r13d
mov r14d, r13d
mov dword [rsp + 0x38], r13d
mov dword [rsp + 0x40], r13d
lea rcx, [rsp + 0x68]
call fcn.180065980
mov rdx, qword [rax]
mov rcx, qword [rdx + 8]
cmp byte [rcx + 0x19], r13b
jne 0x180045f27
nop
cmp dword [rcx + 0x20], ebx
jae 0x180045f1b
mov rcx, qword [rcx + 0x10]
jmp 0x180045f21
mov rdx, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], r13b
je 0x180045f10
cmp byte [rdx + 0x19], r13b
jne 0x180045f76
cmp ebx, dword [rdx + 0x20]
jb 0x180045f76
mov rdx, rax
mov rcx, rax
call fcn.18006b510
lea rdx, [rbp + 0x60]
call fcn.180065880
mov rax, qword [rax]
mov rcx, qword [rbp + 0x28]
xor rcx, rsp
call fcn.1800710d0
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov rdx, rax
mov rcx, rax
call fcn.18006b510
call fcn.180045e30
mov rsi, rax
mov qword [rsp + 0x68], rax
mov rcx, rax
call fcn.180045d70
mov rbx, rax
mov qword [rbp - 0x80], rax
mov edi, r13d
mov dword [rsp + 0x40], r13d
mov rcx, rsi
call fcn.180045cb0
test rax, rax
je 0x180045f49
mov rax, qword [rbx]
mov r12, qword [rax]
mov qword [rsp + 0x78], r12
mov r15d, r13d
mov dword [rsp + 0x3c], r13d
mov rcx, r12
call fcn.180045b80
test rax, rax
je 0x180046634
nop word [rax + rax]
mov rdx, qword [r12]
xorps xmm0, xmm0
movups xmmword [rbp + 8], xmm0
mov qword [rbp + 0x18], r13
mov qword [rbp + 0x20], r13
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x180046000
lea rcx, [rbp + 8]
call fcn.180036e70
nop
mov byte [rsp + 0x30], 0x3b
mov r8b, 0x15
mov al, 0x5f
mov cl, 0x57
movzx edx, cl
xor r9d, r9d
xor r8b, 0x3b
mov byte [rsp + 0x31], r8b
xor al, 0x3b
mov byte [rsp + 0x32], al
xor cl, 0x3b
mov byte [rsp + 0x33], cl
xor dl, 0x3b
mov byte [rsp + 0x34], dl
mov byte [rsp + 0x35], r9b
lea rax, [rsp + 0x31]
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rax + rdi], r9b
jne 0x180046054
lea rsi, [rbp + 8]
cmp qword [rbp + 0x20], 0x10
setae cl
mov byte [rsp + 0x20], cl
mov r13, qword [rbp + 8]
cmovae rsi, r13
mov r12, qword [rbp + 0x18]
cmp rdi, r12
ja 0x1800460f4
mov rax, r12
sub rax, rdi
test rdi, rdi
jne 0x18004608d
xor ebx, ebx
jmp 0x1800460fb
lea r14, [rax + rsi]
movsx r15d, r8b
lea r8, [r14 + 1]
sub r8, rsi
mov edx, r15d
mov rcx, rsi
call fcn.1800752e0
mov rbx, rax
test rax, rax
je 0x1800460e5
nop
mov r8, rdi
lea rdx, [rsp + 0x31]
mov rcx, rbx
call fcn.180075380
test eax, eax
je 0x1800462da
inc rbx
lea r8, [r14 + 1]
sub r8, rbx
mov edx, r15d
mov rcx, rbx
call fcn.1800752e0
mov rbx, rax
test rax, rax
jne 0x1800460b0
movzx ecx, byte [rsp + 0x20]
mov r14d, dword [rsp + 0x38]
mov r15d, dword [rsp + 0x3c]
mov rbx, 0xffffffffffffffff
cmp r12, rbx
jb 0x1800466be
mov rax, r12
sub rax, rbx
mov edx, 4
cmp rax, rdx
cmovb rdx, rax
lea rax, [rbp + 8]
test cl, cl
cmovne rax, r13
lea rcx, [rax + rbx]
sub r12, rdx
mov r8, r12
sub r8, rbx
inc r8
add rdx, rcx
call fcn.180074700
mov qword [rbp + 0x18], r12
movsxd rdx, r15d
mov r12, qword [rsp + 0x78]
mov rcx, r12
call fcn.180045c20
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 0x180046173
mov rdx, rbx
lea rcx, [rsp + 0x48]
call fcn.180036e70
cmp qword [rsp + 0x58], r13
sete sil
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x1800461cf
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800461ca
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800466c4
call fcn.1800717d8
xor edx, edx
test sil, sil
je 0x1800462f1
mov byte [rsp + 0x28], 0x4a
mov al, 0x70
movzx ecx, al
xor al, 0x4a
mov byte [rsp + 0x29], al
xor cl, 0x4a
mov byte [rsp + 0x2a], cl
mov byte [rsp + 0x2b], dl
lea r8, [rsp + 0x29]
lea rdx, [rbp + 8]
lea rcx, [rbp - 0x38]
call fcn.180067ee0
nop
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rdi + r8], 0
jne 0x180046210
mov rdx, rdi
mov rcx, rax
call fcn.180036f70
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x48], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x58], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r14d, 1
mov dword [rsp + 0x38], r14d
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x18004628f
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180046282
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800466ca
call fcn.1800717d8
movups xmm0, xmmword [rbp - 0x48]
movups xmm1, xmmword [rbp - 0x58]
movups xmmword [rbp + 8], xmm0
movups xmmword [rbp + 0x18], xmm1
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x18004654e
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180046549
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800466b8
jmp 0x180046549
sub rbx, rsi
movzx ecx, byte [rsp + 0x20]
mov r14d, dword [rsp + 0x38]
mov r15d, dword [rsp + 0x3c]
jmp 0x1800460fb
mov byte [rsp + 0x24], 0x2e
mov al, 0x14
movzx ecx, al
xor al, 0x2e
mov byte [rsp + 0x25], al
xor cl, 0x2e
mov byte [rsp + 0x26], cl
mov byte [rsp + 0x27], dl
mov byte [rsp + 0x2c], 0x74
mov al, 0x4e
movzx ecx, al
xor al, 0x74
mov byte [rsp + 0x2d], al
xor cl, 0x74
mov byte [rsp + 0x2e], cl
mov byte [rsp + 0x2f], dl
lea r8, [rsp + 0x2d]
lea rdx, [rbp + 8]
lea rcx, [rbp - 0x18]
call fcn.180067ee0
nop
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rbx + r8], 0
jne 0x180046341
mov rdx, rbx
mov rcx, rax
call fcn.180036f70
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 + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r14d, 2
lea rax, [rsp + 0x25]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1800463a0
lea rdx, [rsp + 0x25]
lea rcx, [rsp + 0x48]
call fcn.180036f70
xorps xmm0, xmm0
movups xmmword [rbp - 0x78], xmm0
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x68], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdi + r8], 0
jne 0x1800463f0
mov rdx, rdi
lea rcx, [rbp - 0x78]
call fcn.180036f70
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x58], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x48], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r14d, 0xc
mov dword [rsp + 0x38], r14d
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x180046470
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180046463
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800466d0
call fcn.1800717d8
movups xmm0, xmmword [rbp - 0x58]
movups xmm1, xmmword [rbp - 0x48]
movups xmmword [rbp + 8], xmm0
movups xmmword [rbp + 0x18], xmm1
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x1800464b3
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800464ae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800466d6
call fcn.1800717d8
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], 0
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x180046500
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800464fb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800466dc
call fcn.1800717d8
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], 0xf
mov byte [rsp + 0x48], 0
mov rdx, qword [rbp]
cmp rdx, 0x10
jb 0x18004654e
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180046549
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800466e2
call fcn.1800717d8
lea rcx, [rbp + 8]
mov r11, qword [rbp + 0x20]
cmp r11, 0x10
setae dl
mov r10, qword [rbp + 8]
cmovae rcx, r10
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x180046570
lea r8, [rbp + 8]
test dl, dl
cmovne r8, r10
mov edx, 0xffffffff
test eax, eax
je 0x1800465c2
mov r9d, eax
lea r12, [0x1800b90c0]
nop word [rax + rax]
movsx ecx, byte [r8]
mov eax, edx
xor rcx, rax
movzx eax, cl
shr edx, 8
xor edx, dword [r12 + rax*4]
lea r8, [r8 + 1]
sub r9, 1
jne 0x1800465a0
mov r12, qword [rsp + 0x78]
not edx
mov eax, dword [rbp + 0x60]
cmp eax, edx
je 0x18004665b
cmp r11, 0x10
jb 0x180046606
lea rdx, [r11 + 1]
mov rax, r10
cmp rdx, 0x1000
jb 0x1800465fe
add rdx, 0x27
mov r10, qword [r10 - 8]
sub rax, r10
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800466b2
mov rcx, r10
call fcn.1800717d8
mov r15d, dword [rsp + 0x3c]
inc r15d
mov dword [rsp + 0x3c], r15d
mov rcx, r12
call fcn.180045b80
movsxd rcx, r15d
cmp rcx, rax
jb 0x180045fe0
mov rbx, qword [rbp - 0x80]
mov edi, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
inc edi
mov dword [rsp + 0x40], edi
add rbx, 8
mov qword [rbp - 0x80], rbx
mov rcx, rsi
call fcn.180045cb0
movsxd rcx, edi
cmp rcx, rax
jae 0x180045f49
jmp 0x180045fb2
mov dword [rsp + 0x68], eax
mov qword [rsp + 0x70], r15
lea r8, [rsp + 0x68]
lea rdx, [rbp - 0x58]
call fcn.1800689a0
nop
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x1800466aa
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800466a5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800466b2
call fcn.1800717d8
mov rax, r15
jmp 0x180045f49
call fcn.180085d3c
nop
call fcn.180085d3c
int3
call fcn.180067ca0
int3
call fcn.180085d3c
nop
call fcn.180085d3c
nop
call fcn.180085d3c
nop
call fcn.180085d3c
nop
call fcn.180085d3c
nop
call fcn.180085d3c
int3