Function at 0x180027860
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
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x180]
sub rsp, 0x280
mov rax, qword [0x1801ae098]
xor rax, rsp
mov qword [rbp + 0x178], rax
mov ebx, ecx
mov dword [rbp + 0x110], ecx
xor r12d, r12d
mov r13d, r12d
mov dword [rbp - 0x20], r12d
lea rcx, [rbp - 0x18]
call fcn.180057720
mov edx, ebx
mov rcx, rax
call fcn.18005a990
test al, al
je 0x1800278d5
lea rdx, [rbp + 0x110]
call fcn.180057620
mov rax, qword [rax]
jmp 0x180028768
call fcn.180026ae0
mov rdi, rax
mov qword [rbp - 0x18], rax
mov rcx, rax
call fcn.180026980
mov rsi, rax
mov qword [rbp + 0x18], rax
mov ebx, r12d
mov dword [rbp - 0x44], ebx
mov rcx, rdi
call fcn.180026820
test rax, rax
je 0x180028766
mov rdi, r12
mov qword [rbp + 0x10], r12
nop
mov rax, qword [rsi + rdi*8]
mov r15, qword [rax]
mov qword [rbp + 0x20], r15
mov r14d, r12d
mov dword [rbp - 0x48], r12d
mov rcx, r15
call fcn.180026560
test rax, rax
je 0x180028745
mov rdx, qword [r15]
xorps xmm0, xmm0
movups xmmword [rbp + 0x118], xmm0
mov qword [rbp + 0x128], r12
mov qword [rbp + 0x130], r12
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x180027955
lea rcx, [rbp + 0x118]
call fcn.180005880
nop
mov byte [rsp + 0x5c], 0xd
mov al, 0x23
mov cl, 0x69
mov dl, 0x61
movzx r8d, dl
xor r9d, r9d
xor al, 0xd
mov byte [rsp + 0x5d], al
xor cl, 0xd
mov byte [rsp + 0x5e], cl
xor dl, 0xd
mov byte [rsp + 0x5f], dl
xor r8b, 0xd
mov byte [rsp + 0x60], r8b
mov byte [rsp + 0x61], r9b
lea rax, [rsp + 0x5d]
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp byte [rax + rdx], r9b
jne 0x1800279b0
lea rcx, [rbp + 0x118]
cmp qword [rbp + 0x130], 0x10
setae sil
mov rdi, qword [rbp + 0x118]
cmovae rcx, rdi
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x5d]
mov rbx, qword [rbp + 0x128]
mov rdx, rbx
call fcn.180009ed0
cmp rbx, rax
jb 0x1800287db
mov rcx, rbx
sub rcx, rax
mov edx, 4
cmp rcx, rdx
cmovb rdx, rcx
lea rcx, [rbp + 0x118]
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.180124170
mov qword [rbp + 0x128], rbx
movsxd rdx, r14d
mov rcx, r15
call fcn.180026690
mov r15, rax
mov qword [rbp + 8], rax
test rax, rax
jne 0x180027a53
jmp 0x18002870f
mov rsi, qword [rax + 0x10]
mov rdi, qword [rax + 0x18]
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x50], r12
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdi + r8], 0
jne 0x180027a71
mov rdx, rdi
lea rcx, [rbp - 0x68]
call fcn.180005880
cmp qword [rbp - 0x58], 0
sete bl
lea rcx, [rbp - 0x68]
call fcn.180005690
xor edx, edx
test bl, bl
je 0x180027ba2
mov byte [rsp + 0x50], 0x1a
mov al, 0x20
movzx ecx, al
xor al, 0x1a
mov byte [rsp + 0x51], al
xor cl, 0x1a
mov byte [rsp + 0x52], cl
mov byte [rsp + 0x53], dl
lea r8, [rsp + 0x51]
lea rdx, [rbp + 0x118]
lea rcx, [rbp + 0x88]
call fcn.18005a540
nop
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rsi + r8], 0
jne 0x180027ae0
mov rdx, rsi
mov rcx, rax
call fcn.180008760
movups xmm0, xmmword [rax]
movups xmmword [rbp - 8], xmm0
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x40], xmm1
movups xmmword [rbp - 0x78], xmm1
xor edi, edi
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], dil
bts r13d, 9
mov rdx, qword [rbp + 0x130]
cmp rdx, 0x10
jb 0x180027b6c
inc rdx
mov rcx, qword [rbp + 0x118]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180027b5f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800287e1
call fcn.1800b7e4c
movups xmm0, xmmword [rbp - 8]
movups xmm1, xmmword [rbp - 0x40]
movups xmmword [rbp + 0x118], xmm0
movups xmmword [rbp + 0x128], xmm1
mov qword [rbp - 0x78], rdi
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], dil
lea rcx, [rsp + 0x78]
call fcn.180005690
nop
lea rcx, [rbp + 0x88]
jmp 0x180027d6f
mov byte [rsp + 0x48], 0x56
mov al, 0x6c
movzx ecx, al
xor al, 0x56
mov byte [rsp + 0x49], al
xor cl, 0x56
mov byte [rsp + 0x4a], cl
mov byte [rsp + 0x4b], dl
mov byte [rsp + 0x54], 0x17
mov al, 0x2d
movzx ecx, al
xor al, 0x17
mov byte [rsp + 0x55], al
xor cl, 0x17
mov byte [rsp + 0x56], cl
mov byte [rsp + 0x57], dl
lea r8, [rsp + 0x55]
lea rdx, [rbp + 0x118]
lea rcx, [rbp + 0x28]
call fcn.18005a540
nop
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdi + r8], 0
jne 0x180027bf5
mov rdx, rdi
mov rcx, rax
call fcn.180008760
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
xor edi, edi
mov qword [rbp - 0x58], rdi
mov qword [rbp - 0x50], rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x58], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], dil
bts r13d, 0xa
lea rax, [rsp + 0x49]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180027c50
lea rdx, [rsp + 0x49]
lea rcx, [rbp - 0x68]
call fcn.180008760
xorps xmm0, xmm0
movups xmmword [rbp + 0x48], xmm0
mov qword [rbp + 0x58], rdi
mov qword [rbp + 0x60], rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x48], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x58], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rsi + r8], 0
jne 0x180027ca0
mov rdx, rsi
lea rcx, [rbp + 0x48]
call fcn.180008760
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 8], xmm1
movups xmmword [rbp - 0x78], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r13d, 0x1800
mov rdx, qword [rbp + 0x130]
cmp rdx, 0x10
jb 0x180027d2d
inc rdx
mov rcx, qword [rbp + 0x118]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180027d20
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800287e7
call fcn.1800b7e4c
movups xmm0, xmmword [rbp - 0x40]
movups xmm1, xmmword [rbp - 8]
movups xmmword [rbp + 0x118], xmm0
movups xmmword [rbp + 0x128], xmm1
mov qword [rbp - 0x78], rdi
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], 0
lea rcx, [rsp + 0x78]
call fcn.180005690
nop
lea rcx, [rbp + 0x48]
call fcn.180005690
nop
lea rcx, [rbp - 0x68]
call fcn.180005690
nop
lea rcx, [rbp + 0x28]
call fcn.180005690
mov qword [rbp + 0xc8], rdi
lea rdx, [rbp + 0xc8]
mov rcx, r15
call fcn.180026350
mov r12, rax
test rax, rax
je 0x18002870c
mov rcx, r12
call fcn.180025ff0
mov rbx, rax
mov byte [rsp + 0x58], 0x4f
mov cl, 0x75
movzx edx, cl
xor eax, eax
xor cl, 0x4f
mov byte [rsp + 0x59], cl
xor dl, 0x4f
mov byte [rsp + 0x5a], dl
mov byte [rsp + 0x5b], al
lea r8, [rsp + 0x59]
lea rdx, [rbp + 0x118]
lea rcx, [rbp + 0xa8]
call fcn.18005a540
nop
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rbx + r8], 0
jne 0x180027de0
mov rdx, rbx
mov rcx, rax
call fcn.180008760
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xd0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xe0], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r13d, 0x40
lea rcx, [rbp + 0xa8]
call fcn.180005690
mov rcx, r12
call fcn.180025c90
test eax, eax
je 0x180028450
mov byte [rsp + 0x4c], 0x29
mov al, 1
xor ecx, ecx
xor al, 0x29
mov byte [rsp + 0x4d], al
mov byte [rsp + 0x4e], cl
lea r8, [rsp + 0x4d]
lea rdx, [rbp + 0xd0]
lea rcx, [rbp + 0x28]
call fcn.18005a540
mov rbx, rax
lea rax, [rbp + 0xd0]
cmp rax, rbx
je 0x180027ed5
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x180027eb1
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180027eac
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800287ed
call fcn.1800b7e4c
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0xd0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0xe0], xmm1
mov qword [rbx + 0x10], rdi
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
lea rcx, [rbp + 0x28]
call fcn.180005690
mov r14d, edi
mov rcx, r12
call fcn.180025c90
test eax, eax
je 0x1800281c4
mov edx, r14d
mov rcx, r12
call fcn.180025ef0
mov rcx, rax
call fcn.180025bd0
xorps xmm0, xmm0
movups xmmword [rbp + 0xf0], xmm0
mov qword [rbp + 0x100], rdi
mov qword [rbp + 0x108], rdi
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x180027f23
mov rdx, rax
lea rcx, [rbp + 0xf0]
call fcn.180005880
nop
mov byte [rsp + 0x40], 0x3b
mov al, 0x15
xor ecx, ecx
xor al, 0x3b
mov byte [rsp + 0x41], al
mov byte [rsp + 0x42], cl
lea rax, [rsp + 0x41]
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp byte [rax + rdx], cl
jne 0x180027f60
lea rcx, [rbp + 0xf0]
cmp qword [rbp + 0x108], 0x10
setae sil
mov rdi, qword [rbp + 0xf0]
cmovae rcx, rdi
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x41]
mov rbx, qword [rbp + 0x100]
mov rdx, rbx
call fcn.180009ed0
lea rcx, [rax + 1]
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
xor eax, eax
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rax
cmp rbx, rcx
jb 0x180028805
sub rbx, rcx
mov r8, 0xffffffffffffffff
cmp rbx, r8
cmovb r8, rbx
lea rdx, [rbp + 0xf0]
test sil, sil
cmovne rdx, rdi
add rdx, rcx
lea rcx, [rbp - 0x40]
call fcn.180005880
mov rdx, qword [rbp + 0x108]
cmp rdx, 0x10
jb 0x180028029
inc rdx
mov rcx, qword [rbp + 0xf0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028024
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800287f3
call fcn.1800b7e4c
movups xmm0, xmmword [rbp - 0x40]
movups xmmword [rbp + 0xf0], xmm0
movups xmm1, xmmword [rbp - 0x30]
movups xmmword [rbp + 0x100], xmm1
xor edi, edi
mov qword [rbp - 0x30], rdi
mov qword [rbp - 0x28], 0xf
mov byte [rbp - 0x40], dil
lea rcx, [rbp - 0x40]
call fcn.180005690
mov byte [rsp + 0x44], 0xf
mov al, 0x23
xor ecx, ecx
xor al, 0xf
mov byte [rsp + 0x45], al
mov byte [rsp + 0x46], cl
movabs rax, 0x7fffffffffffffff
mov rcx, qword [rbp + 0xe0]
sub rax, rcx
mov rdx, qword [rbp + 0x100]
cmp rax, rdx
jb 0x1800287ff
lea r9, [rbp + 0xd0]
cmp qword [rbp + 0xe8], 0x10
cmovae r9, qword [rbp + 0xd0]
lea rax, [rbp + 0xf0]
cmp qword [rbp + 0x108], 0x10
cmovae rax, qword [rbp + 0xf0]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x68]
call fcn.180018300
nop
lea rax, [rsp + 0x45]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800280e4
lea rdx, [rsp + 0x45]
lea rcx, [rbp + 0x68]
call fcn.180008760
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 8], xmm1
movups xmmword [rbp - 0x78], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r13d, 0x23
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x180028170
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028163
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800287f9
call fcn.1800b7e4c
movups xmm0, xmmword [rbp - 0x40]
movups xmm1, xmmword [rbp - 8]
movups xmmword [rbp + 0xd0], xmm0
movups xmmword [rbp + 0xe0], xmm1
mov qword [rbp - 0x78], rdi
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], 0
lea rcx, [rsp + 0x78]
call fcn.180005690
nop
lea rcx, [rbp + 0x68]
call fcn.180005690
nop
lea rcx, [rbp + 0xf0]
call fcn.180005690
inc r14d
mov rcx, r12
call fcn.180025c90
cmp r14d, eax
jb 0x180027ef1
mov rcx, r12
call fcn.180025dc0
mov rcx, rax
call fcn.180025bd0
xorps xmm0, xmm0
movups xmmword [rbp + 0x138], xmm0
mov qword [rbp + 0x148], rdi
mov qword [rbp + 0x150], rdi
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800281f3
mov rdx, rax
lea rcx, [rbp + 0x138]
call fcn.180005880
nop
mov rax, qword [rbp + 0xe0]
lea r8, [rax - 1]
xorps xmm0, xmm0
movups xmmword [rbp + 0xf0], xmm0
mov qword [rbp + 0x100], rdi
mov qword [rbp + 0x108], rdi
cmp rax, r8
cmovb r8, rax
lea rdx, [rbp + 0xd0]
cmp qword [rbp + 0xe8], 0x10
cmovae rdx, qword [rbp + 0xd0]
lea rcx, [rbp + 0xf0]
call fcn.180005880
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x18002829b
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028296
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002880b
call fcn.1800b7e4c
movups xmm0, xmmword [rbp + 0xf0]
movups xmmword [rbp + 0xd0], xmm0
movups xmm1, xmmword [rbp + 0x100]
movups xmmword [rbp + 0xe0], xmm1
mov qword [rbp + 0x100], rdi
mov qword [rbp + 0x108], 0xf
mov byte [rbp + 0xf0], 0
lea rcx, [rbp + 0xf0]
call fcn.180005690
lea rcx, [rbp + 0x138]
cmp qword [rbp + 0x150], 0x10
setae sil
mov rdi, qword [rbp + 0x138]
cmovae rcx, rdi
mov qword [rsp + 0x20], 1
lea r9, [0x1801871c8]
mov rbx, qword [rbp + 0x148]
mov rdx, rbx
call fcn.180009ed0
lea rcx, [rax + 1]
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xor eax, eax
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x70], rax
cmp rbx, rcx
jb 0x180028817
sub rbx, rcx
mov r8, 0xffffffffffffffff
cmp rbx, r8
cmovb r8, rbx
lea rdx, [rbp + 0x138]
test sil, sil
cmovne rdx, rdi
add rdx, rcx
lea rcx, [rsp + 0x78]
call fcn.180005880
nop
mov byte [rsp + 0x64], 0x74
mov al, 0x5d
mov cl, 0x4e
mov dl, 0x54
xor r8d, r8d
xor al, 0x74
mov byte [rsp + 0x65], al
xor cl, 0x74
mov byte [rsp + 0x66], cl
xor dl, 0x74
mov byte [rsp + 0x67], dl
mov byte [rsp + 0x68], r8b
lea r8, [rsp + 0x65]
lea rdx, [rbp + 0xd0]
lea rcx, [rbp + 0x28]
call fcn.18005a540
nop
lea r9, [rsp + 0x78]
mov r8, rax
lea rcx, [rbp - 0x68]
call fcn.18000ad30
or r13d, 0x1c
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x1800283f8
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800283f3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180028811
call fcn.1800b7e4c
movups xmm0, xmmword [rbp - 0x68]
movups xmmword [rbp + 0xd0], xmm0
movups xmm1, xmmword [rbp - 0x58]
movups xmmword [rbp + 0xe0], xmm1
xor edi, edi
mov qword [rbp - 0x58], rdi
mov qword [rbp - 0x50], 0xf
mov byte [rbp - 0x68], dil
lea rcx, [rbp - 0x68]
call fcn.180005690
nop
lea rcx, [rbp + 0x28]
call fcn.180005690
nop
lea rcx, [rsp + 0x78]
call fcn.180005690
nop
lea rcx, [rbp + 0x138]
call fcn.180005690
jmp 0x18002865b
mov rcx, r12
call fcn.180025dc0
mov rcx, rax
call fcn.180025bd0
xorps xmm0, xmm0
movups xmmword [rbp + 0x158], xmm0
mov qword [rbp + 0x168], rdi
mov qword [rbp + 0x170], rdi
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x180028480
mov rdx, rax
lea rcx, [rbp + 0x158]
call fcn.180005880
nop
lea rbx, [rbp + 0x158]
cmp qword [rbp + 0x170], 0x10
setae r15b
mov r14, qword [rbp + 0x158]
cmovae rbx, r14
mov rsi, qword [rbp + 0x168]
cmp rsi, 1
jb 0x180028513
lea rdi, [rbx + rsi]
mov r8, rsi
mov edx, 0x2e
mov rcx, rbx
call fcn.180124800
test rax, rax
je 0x180028511
nop
cmp byte [rax], 0x2e
jne 0x1800284e9
xor ecx, ecx
jmp 0x1800284ee
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x180028798
inc rax
mov r8, rdi
sub r8, rax
mov edx, 0x2e
mov rcx, rax
call fcn.180124800
test rax, rax
jne 0x1800284e0
xor edi, edi
mov rax, 0xffffffffffffffff
lea rcx, [rax + 1]
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], rdi
mov qword [rbp - 0x70], rdi
cmp rsi, rcx
jb 0x1800287d5
sub rsi, rcx
mov r8, 0xffffffffffffffff
cmp rsi, r8
cmovb r8, rsi
lea rdx, [rbp + 0x158]
test r15b, r15b
cmovne rdx, r14
add rdx, rcx
lea rcx, [rsp + 0x78]
call fcn.180005880
nop
mov byte [rsp + 0x6c], 0x4f
mov al, 0x67
mov cl, 0x66
mov dl, 0x75
mov r8b, 0x6f
xor r9d, r9d
xor al, 0x4f
mov byte [rsp + 0x6d], al
xor cl, 0x4f
mov byte [rsp + 0x6e], cl
xor dl, 0x4f
mov byte [rsp + 0x6f], dl
xor r8b, 0x4f
mov byte [rsp + 0x70], r8b
mov byte [rsp + 0x71], r9b
lea r8, [rsp + 0x6d]
lea rdx, [rbp + 0xd0]
lea rcx, [rbp + 0x28]
call fcn.18005a540
nop
lea r9, [rsp + 0x78]
mov r8, rax
lea rcx, [rbp - 0x68]
call fcn.18000ad30
or r13d, 0x180
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x180028606
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028601
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002881d
call fcn.1800b7e4c
movups xmm0, xmmword [rbp - 0x68]
movups xmmword [rbp + 0xd0], xmm0
movups xmm1, xmmword [rbp - 0x58]
movups xmmword [rbp + 0xe0], xmm1
mov qword [rbp - 0x58], rdi
mov qword [rbp - 0x50], 0xf
mov byte [rbp - 0x68], 0
lea rcx, [rbp - 0x68]
call fcn.180005690
nop
lea rcx, [rbp + 0x28]
call fcn.180005690
nop
lea rcx, [rsp + 0x78]
call fcn.180005690
nop
lea rcx, [rbp + 0x158]
call fcn.180005690
mov r15, qword [rbp + 8]
lea rcx, [rbp + 0xd0]
cmp qword [rbp + 0xe8], 0x10
setae r9b
mov rdx, qword [rbp + 0xd0]
cmovae rcx, rdx
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x180028680
lea r8, [rbp + 0xd0]
test r9b, r9b
cmovne r8, rdx
mov edx, 0xffffffff
test eax, eax
je 0x1800286d1
mov r9d, eax
lea r15, [0x1801880e0]
nop word [rax + rax]
movsx ecx, byte [r8]
mov eax, edx
xor rcx, rax
movzx eax, cl
shr edx, 8
xor edx, dword [r15 + rax*4]
lea r8, [r8 + 1]
sub r9, 1
jne 0x1800286b0
mov r15, qword [rbp + 8]
not edx
mov eax, dword [rbp + 0x110]
cmp edx, eax
je 0x1800287a2
lea rcx, [rbp + 0xd0]
call fcn.180005690
lea rdx, [rbp + 0xc8]
mov rcx, r15
call fcn.180026350
mov r12, rax
test rax, rax
jne 0x180027d96
mov r14d, dword [rbp - 0x48]
xor r12d, r12d
lea rcx, [rbp + 0x118]
call fcn.180005690
inc r14d
mov dword [rbp - 0x48], r14d
mov r15, qword [rbp + 0x20]
mov rcx, r15
call fcn.180026560
movsxd rcx, r14d
cmp rcx, rax
jb 0x180027933
mov ebx, dword [rbp - 0x44]
mov rdi, qword [rbp + 0x10]
mov rsi, qword [rbp + 0x18]
inc ebx
mov dword [rbp - 0x44], ebx
inc rdi
mov qword [rbp + 0x10], rdi
mov rcx, qword [rbp - 0x18]
call fcn.180026820
movsxd rcx, ebx
cmp rcx, rax
jb 0x180027910
xor eax, eax
mov rcx, qword [rbp + 0x178]
xor rcx, rsp
call fcn.1800b7df0
lea r11, [rsp + 0x280]
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
sub rax, rbx
xor edi, edi
jmp 0x18002851a
mov dword [rbp - 0x18], eax
mov qword [rbp - 0x10], r12
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x40]
call fcn.18005aa00
nop
lea rcx, [rbp + 0xd0]
call fcn.180005690
nop
lea rcx, [rbp + 0x118]
call fcn.180005690
mov rax, r12
jmp 0x180028768
call fcn.180009c30
nop
call fcn.180009c30
nop
call fcn.180128ba4
nop
call fcn.180128ba4
nop
call fcn.180128ba4
nop
call fcn.180128ba4
nop
call fcn.180128ba4
nop
call fcn.180004fc0
int3
call fcn.180009c30
nop
call fcn.180128ba4
nop
call fcn.180128ba4
nop
call fcn.180009c30
nop
call fcn.180128ba4
int3