Function at 0x18001b210
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 - 0x140]
sub rsp, 0x240
mov rax, qword [0x1800f2210]
xor rax, rsp
mov qword [rbp + 0x130], rax
xor r12d, r12d
mov r13d, r12d
mov dword [rsp + 0x74], r12d
call fcn.1800181a0
mov rdi, rax
mov qword [rbp + 0x20], rax
mov rcx, rax
call fcn.180018040
mov rsi, rax
mov qword [rbp + 0x18], rax
mov ebx, r12d
mov dword [rsp + 0x74], ebx
mov rcx, rdi
call fcn.180017ee0
test rax, rax
je 0x18001c348
mov edi, r12d
mov qword [rbp - 0x18], r12
nop dword [rax]
mov rax, qword [rsi + rdi*8]
mov r14, qword [rax]
mov qword [rbp + 0x10], r14
mov r15d, r12d
mov dword [rbp - 0x58], r12d
mov rcx, r14
call fcn.180017cc0
test rax, rax
je 0x18001c326
mov rdx, qword [r14]
xorps xmm0, xmm0
movups xmmword [rbp + 0xd0], xmm0
mov qword [rbp + 0xe0], r12
mov qword [rbp + 0xe8], r12
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x18001b2d5
lea rcx, [rbp + 0xd0]
call fcn.18004a340
nop
mov byte [rsp + 0x64], 0xc
mov al, 0x22
mov cl, 0x68
mov dl, 0x60
movzx r8d, dl
xor r9d, r9d
xor al, 0xc
mov byte [rsp + 0x65], al
xor cl, 0xc
mov byte [rsp + 0x66], cl
xor dl, 0xc
mov byte [rsp + 0x67], dl
xor r8b, 0xc
mov byte [rsp + 0x68], r8b
mov byte [rsp + 0x69], r9b
lea rax, [rsp + 0x65]
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp byte [rax + rdx], r9b
jne 0x18001b330
lea rcx, [rbp + 0xd0]
cmp qword [rbp + 0xe8], 0x10
setae sil
mov rdi, qword [rbp + 0xd0]
cmovae rcx, rdi
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x65]
mov rbx, qword [rbp + 0xe0]
mov rdx, rbx
call fcn.180049e80
cmp rbx, rax
jb 0x18001c62f
mov rcx, rbx
sub rcx, rax
mov edx, 4
cmp rcx, rdx
cmovb rdx, rcx
lea rcx, [rbp + 0xd0]
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 + 0xe0], rbx
movsxd rdx, r15d
mov rcx, r14
call fcn.180017df0
mov r14, rax
mov qword [rbp - 0x40], rax
test rax, rax
jne 0x18001b418
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x18001c2fb
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b40e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c6dd
call fcn.180098550
jmp 0x18001c2fb
mov rdi, qword [rax + 0x10]
mov rbx, qword [rax + 0x18]
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], r12
mov qword [rbp + 0xa8], r12
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rbx + r8], 0
jne 0x18001b440
mov rdx, rbx
lea rcx, [rbp + 0x90]
call fcn.18004a340
cmp qword [rbp + 0xa0], 0
sete sil
mov rdx, qword [rbp + 0xa8]
cmp rdx, 0x10
jb 0x18001b4a6
inc rdx
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b4a1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c6c5
call fcn.180098550
xor edx, edx
test sil, sil
je 0x18001b615
mov byte [rsp + 0x4c], 0x2a
mov al, 0x10
movzx ecx, al
xor al, 0x2a
mov byte [rsp + 0x4d], al
xor cl, 0x2a
mov byte [rsp + 0x4e], cl
mov byte [rsp + 0x4f], dl
lea rax, [rsp + 0x4d]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], dl
jne 0x18001b4d8
movabs rsi, 0x7fffffffffffffff
mov rax, rsi
mov rdx, qword [rbp + 0xe0]
sub rax, rdx
cmp rax, rcx
jb 0x18001c63b
lea r9, [rbp + 0xd0]
cmp qword [rbp + 0xe8], 0x10
cmovae r9, qword [rbp + 0xd0]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x4d]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0x58]
call fcn.18004c030
bts r13d, 0x11
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdi + r8], 0
jne 0x18001b540
mov rdx, rdi
lea rcx, [rbp + 0x58]
call fcn.180041380
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x78], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts r13d, 0xf
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x18001b5c4
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b5b6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c635
call fcn.180098550
movups xmm0, xmmword [rbp - 0x50]
movups xmm1, xmmword [rsp + 0x78]
movups xmmword [rbp + 0xd0], xmm0
movups xmmword [rbp + 0xe0], xmm1
mov rdx, qword [rbp + 0x70]
cmp rdx, 0x10
jb 0x18001b8e4
inc rdx
mov rcx, qword [rbp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b8df
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c629
jmp 0x18001b8df
mov byte [rsp + 0x54], 0x78
mov al, 0x42
movzx ecx, al
xor al, 0x78
mov byte [rsp + 0x55], al
xor cl, 0x78
mov byte [rsp + 0x56], cl
mov byte [rsp + 0x57], dl
mov byte [rsp + 0x50], 0x79
mov al, 0x43
movzx ecx, al
xor al, 0x79
mov byte [rsp + 0x51], al
xor cl, 0x79
mov byte [rsp + 0x52], cl
mov byte [rsp + 0x53], dl
lea rax, [rsp + 0x51]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], dl
jne 0x18001b657
movabs rsi, 0x7fffffffffffffff
mov rax, rsi
mov rdx, qword [rbp + 0xe0]
sub rax, rdx
cmp rax, rcx
jb 0x18001c623
lea r9, [rbp + 0xd0]
cmp qword [rbp + 0xe8], 0x10
cmovae r9, qword [rbp + 0xd0]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x51]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp - 0x10]
call fcn.18004c030
bts r13d, 0x12
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rbx + r8], 0
jne 0x18001b6c0
mov rdx, rbx
lea rcx, [rbp - 0x10]
call fcn.180041380
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], r12
mov qword [rbp + 0xa8], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x90], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xa0], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rax, [rsp + 0x55]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x18001b720
lea rdx, [rsp + 0x55]
lea rcx, [rbp + 0x90]
call fcn.180041380
xorps xmm0, xmm0
movups xmmword [rbp - 0x78], xmm0
mov qword [rbp - 0x68], r12
mov qword [rbp - 0x60], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x68], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rdi + r8], 0
jne 0x18001b770
mov rdx, rdi
lea rcx, [rbp - 0x78]
call fcn.180041380
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x78], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r13d, 0x16000
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x18001b7f6
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b7e8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c641
call fcn.180098550
movups xmm0, xmmword [rbp - 0x50]
movups xmm1, xmmword [rsp + 0x78]
movups xmmword [rbp + 0xd0], xmm0
movups xmmword [rbp + 0xe0], xmm1
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x18001b83f
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b83a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c647
call fcn.180098550
mov qword [rbp - 0x68], r12
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], 0
mov rdx, qword [rbp + 0xa8]
cmp rdx, 0x10
jb 0x18001b890
inc rdx
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b88b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c64d
call fcn.180098550
mov qword [rbp + 0xa0], r12
mov qword [rbp + 0xa8], 0xf
mov byte [rbp + 0x90], 0
mov rdx, qword [rbp + 8]
cmp rdx, 0x10
jb 0x18001b8e4
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b8df
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c653
call fcn.180098550
mov qword [rbp + 0x88], r12
lea rdx, [rbp + 0x88]
mov rcx, r14
call fcn.180017ab0
mov r12, rax
test rax, rax
je 0x18001c2b7
mov rcx, r12
call fcn.180017810
mov rbx, rax
mov byte [rsp + 0x58], 0x17
mov cl, 0x2d
movzx edx, cl
xor eax, eax
xor cl, 0x17
mov byte [rsp + 0x59], cl
xor dl, 0x17
mov byte [rsp + 0x5a], dl
mov byte [rsp + 0x5b], al
lea rax, [rsp + 0x59]
mov rcx, 0xffffffffffffffff
nop dword [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x18001b940
mov rax, rsi
mov rdx, qword [rbp + 0xe0]
sub rax, rdx
cmp rax, rcx
jb 0x18001c6d7
lea r9, [rbp + 0xd0]
cmp qword [rbp + 0xe8], 0x10
cmovae r9, qword [rbp + 0xd0]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x59]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0x28]
call fcn.18004c030
nop
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x18001b9a0
mov rdx, rbx
lea rcx, [rbp + 0x28]
call fcn.180041380
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xb0], xmm0
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rbp + 0xc0], xmm0
xor r15d, r15d
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], r15b
mov rdx, qword [rbp + 0x40]
cmp rdx, 0x10
jb 0x18001ba1d
inc rdx
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001ba18
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c659
call fcn.180098550
mov qword [rbp + 0x38], r15
mov qword [rbp + 0x40], 0xf
mov byte [rbp + 0x28], 0
mov rcx, r12
call fcn.1800174b0
test eax, eax
je 0x18001c380
mov byte [rsp + 0x40], 0x16
mov al, 0x3e
xor ecx, ecx
xor al, 0x16
mov byte [rsp + 0x41], al
mov byte [rsp + 0x42], cl
lea rax, [rsp + 0x41]
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x18001ba60
mov rax, rsi
mov rdx, qword [rsp + 0x78]
sub rax, rdx
cmp rax, rcx
jb 0x18001c6a7
lea r9, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 0x10
cmovae r9, qword [rbp + 0xb0]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x41]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp - 0x38]
call fcn.18004c030
or r13d, 0x380
mov rdx, qword [rbp + 0xc8]
cmp rdx, 0x10
jb 0x18001baf9
inc rdx
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001baf4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c695
call fcn.180098550
movups xmm0, xmmword [rbp - 0x38]
movups xmmword [rbp + 0xb0], xmm0
movups xmm0, xmmword [rbp - 0x28]
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rbp + 0xc0], xmm0
mov r14d, r15d
mov rcx, r12
call fcn.1800174b0
test eax, eax
je 0x18001be44
nop word [rax + rax]
mov edx, r14d
mov rcx, r12
call fcn.180017710
mov rcx, rax
call fcn.1800173f0
xorps xmm0, xmm0
movups xmmword [rbp + 0xf0], xmm0
mov qword [rbp + 0x100], r15
mov qword [rbp + 0x108], r15
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x18001bb62
mov rdx, rax
lea rcx, [rbp + 0xf0]
call fcn.18004a340
nop
mov byte [rsp + 0x44], 0x61
mov al, 0x4f
xor ecx, ecx
xor al, 0x61
mov byte [rsp + 0x45], al
mov byte [rsp + 0x46], cl
lea rax, [rsp + 0x45]
mov rdx, 0xffffffffffffffff
nop dword [rax + rax]
inc rdx
cmp byte [rax + rdx], cl
jne 0x18001bba0
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 + 0x45]
mov rbx, qword [rbp + 0x100]
mov rdx, rbx
call fcn.180049e80
lea rcx, [rax + 1]
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], r15
mov qword [rbp + 0xa8], r15
cmp rbx, rcx
jb 0x18001c67d
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 + 0x90]
call fcn.18004a340
mov rdx, qword [rbp + 0x108]
cmp rdx, 0x10
jb 0x18001bc73
inc rdx
mov rcx, qword [rbp + 0xf0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001bc6e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c65f
call fcn.180098550
movups xmm1, xmmword [rbp + 0x90]
movups xmmword [rbp + 0xf0], xmm1
movups xmm0, xmmword [rbp + 0xa0]
movups xmmword [rbp + 0x100], xmm0
mov byte [rsp + 0x48], 0x71
mov al, 0x5d
xor ecx, ecx
xor al, 0x71
mov byte [rsp + 0x49], al
mov byte [rsp + 0x4a], cl
movabs rsi, 0x7fffffffffffffff
mov r8, qword [rsp + 0x78]
sub rsi, r8
movq r10, xmm0
cmp rsi, r10
jb 0x18001c677
lea r9, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 0x10
cmovae r9, qword [rbp + 0xb0]
lea rdx, [rbp + 0xf0]
movq rcx, xmm1
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0x10
cmovae rdx, rcx
mov qword [rsp + 0x30], r10
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r8
lea rcx, [rbp - 0x38]
call fcn.18004c030
nop
lea rax, [rsp + 0x49]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18001bd20
lea rdx, [rsp + 0x49]
lea rcx, [rbp - 0x38]
call fcn.180041380
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x78], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r13d, 0x70
mov rdx, qword [rbp + 0xc8]
cmp rdx, 0x10
jb 0x18001bda5
inc rdx
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001bd97
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c665
call fcn.180098550
movups xmm0, xmmword [rbp - 0x50]
movups xmm1, xmmword [rsp + 0x78]
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm1
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x18001bdef
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001bde9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c66b
call fcn.180098550
nop
mov rdx, qword [rbp + 0x108]
cmp rdx, 0x10
jb 0x18001be30
inc rdx
mov rcx, qword [rbp + 0xf0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001be2b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c671
call fcn.180098550
inc r14d
mov rcx, r12
call fcn.1800174b0
cmp r14d, eax
jb 0x18001bb30
mov rcx, r12
call fcn.1800175e0
mov rcx, rax
call fcn.1800173f0
xorps xmm0, xmm0
movups xmmword [rbp + 0x110], xmm0
mov qword [rbp + 0x120], r15
mov qword [rbp + 0x128], r15
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x18001be73
mov rdx, rax
lea rcx, [rbp + 0x110]
call fcn.18004a340
nop
mov rax, qword [rbp + 0xc0]
lea r8, [rax - 1]
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], r15
mov qword [rbp + 0xa8], r15
cmp rax, r8
cmovb r8, rax
lea rdx, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 0x10
cmovae rdx, qword [rbp + 0xb0]
lea rcx, [rbp + 0x90]
call fcn.18004a340
mov rdx, qword [rbp + 0xc8]
cmp rdx, 0x10
jb 0x18001bf1b
inc rdx
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001bf16
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c68f
call fcn.180098550
movups xmm0, xmmword [rbp + 0x90]
movups xmmword [rbp + 0xb0], xmm0
movups xmm0, xmmword [rbp + 0xa0]
movups xmmword [rbp + 0xc0], xmm0
lea rbx, [rbp + 0x110]
cmp qword [rbp + 0x128], 0x10
setae r15b
mov r14, qword [rbp + 0x110]
cmovae rbx, r14
mov rsi, qword [rbp + 0x120]
cmp rsi, 1
jb 0x18001bfb1
lea rdi, [rbx + rsi]
mov r8, rsi
mov edx, 0x2e
mov rcx, rbx
call fcn.18009b350
test rax, rax
je 0x18001bfb1
nop dword [rax + rax]
cmp byte [rax], 0x2e
jne 0x18001bf89
xor ecx, ecx
jmp 0x18001bf8e
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x18001c378
inc rax
mov r8, rdi
sub r8, rax
mov edx, 0x2e
mov rcx, rax
call fcn.18009b350
test rax, rax
jne 0x18001bf80
mov rax, 0xffffffffffffffff
lea rcx, [rax + 1]
xorps xmm0, xmm0
movups xmmword [rbp - 0x78], xmm0
xor eax, eax
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x60], rax
cmp rsi, rcx
jb 0x18001c6a1
sub rsi, rcx
mov r8, 0xffffffffffffffff
cmp rsi, r8
cmovb r8, rsi
lea rdx, [rbp + 0x110]
test r15b, r15b
cmovne rdx, r14
add rdx, rcx
lea rcx, [rbp - 0x78]
call fcn.18004a340
nop
mov byte [rsp + 0x5c], 0x21
mov al, 8
mov cl, 0x1b
mov dl, 1
xor r8d, r8d
xor al, 0x21
mov byte [rsp + 0x5d], al
xor cl, 0x21
mov byte [rsp + 0x5e], cl
xor dl, 0x21
mov byte [rsp + 0x5f], dl
mov byte [rsp + 0x60], r8b
lea rax, [rsp + 0x5d]
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rax + rdx], r8b
jne 0x18001c035
movabs rax, 0x7fffffffffffffff
sub rax, qword [rbp + 0xa0]
cmp rax, rdx
jb 0x18001c69b
lea r9, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 0x10
cmovae r9, qword [rbp + 0xb0]
mov qword [rsp + 0x30], rdx
lea rax, [rsp + 0x5d]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0xc0]
mov qword [rsp + 0x20], rax
lea rcx, [rbp - 0x38]
call fcn.18004c030
nop
lea r9, [rbp - 0x78]
lea r8, [rbp - 0x38]
lea rcx, [rbp - 0x10]
call fcn.18004be40
or r13d, 0xf
mov rdx, qword [rbp + 0xc8]
cmp rdx, 0x10
jb 0x18001c0ea
inc rdx
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c0e5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c683
call fcn.180098550
movups xmm0, xmmword [rbp - 0x10]
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp + 0xb0], xmm0
movups xmm0, xmmword [rbp]
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rbp + 0xc0], xmm0
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x18001c145
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c13f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c689
call fcn.180098550
nop
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x18001c181
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c17b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c68f
call fcn.180098550
nop
mov rdx, qword [rbp + 0x128]
cmp rdx, 0x10
jb 0x18001c1c2
inc rdx
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c1bd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c695
call fcn.180098550
mov r14, qword [rbp - 0x40]
lea rcx, [rbp + 0xb0]
movups xmm0, xmmword [rsp + 0x78]
psrldq xmm0, 8
movq rdi, xmm0
cmp rdi, 0x10
setae sil
mov rbx, qword [rbp - 0x50]
cmovae rcx, rbx
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x18001c1f3
lea r8, [rbp + 0xb0]
test sil, sil
cmovne r8, rbx
mov edx, 0xffffffff
test eax, eax
je 0x18001c241
mov r9d, eax
lea r14, [0x1800da4b0]
nop dword [rax]
movsx ecx, byte [r8]
mov eax, edx
xor rcx, rax
movzx eax, cl
shr edx, 8
xor edx, dword [r14 + rax*4]
lea r8, [r8 + 1]
sub r9, 1
jne 0x18001c220
mov r14, qword [rbp - 0x40]
not edx
mov dword [rbp + 0x48], edx
mov qword [rbp + 0x50], r12
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x78]
call fcn.180045d60
nop
test sil, sil
je 0x18001c28e
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x18001c286
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c6c5
mov rcx, rbx
call fcn.180098550
lea rdx, [rbp + 0x88]
mov rcx, r14
call fcn.180017ab0
mov r12, rax
test rax, rax
movabs rsi, 0x7fffffffffffffff
jne 0x18001b906
mov r15d, dword [rbp - 0x58]
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x18001c2f8
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c2f3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c6dd
call fcn.180098550
xor r12d, r12d
inc r15d
mov dword [rbp - 0x58], r15d
mov r14, qword [rbp + 0x10]
mov rcx, r14
call fcn.180017cc0
movsxd rcx, r15d
cmp rcx, rax
jb 0x18001b2b3
mov ebx, dword [rsp + 0x74]
mov rdi, qword [rbp - 0x18]
mov rsi, qword [rbp + 0x18]
inc ebx
mov dword [rsp + 0x74], ebx
inc rdi
mov qword [rbp - 0x18], rdi
mov rcx, qword [rbp + 0x20]
call fcn.180017ee0
movsxd rcx, ebx
cmp rcx, rax
jb 0x18001b290
mov rcx, qword [rbp + 0x130]
xor rcx, rsp
call fcn.180098530
lea r11, [rsp + 0x240]
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
sub rax, rbx
jmp 0x18001bfb8
mov rcx, r12
call fcn.1800175e0
mov rcx, rax
call fcn.1800173f0
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], r15
mov qword [rbp + 0xa8], r15
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x18001c3b0
mov rdx, rax
lea rcx, [rbp + 0x90]
call fcn.18004a340
nop
lea rcx, [rbp + 0x90]
cmp qword [rbp + 0xa8], 0x10
setae sil
mov rdi, qword [rbp + 0x90]
cmovae rcx, rdi
mov qword [rsp + 0x20], 1
lea r9, [0x1800d9ba0]
mov rbx, qword [rbp + 0xa0]
mov rdx, rbx
call fcn.180049e80
lea rcx, [rax + 1]
xorps xmm0, xmm0
movups xmmword [rbp - 0x78], xmm0
mov qword [rbp - 0x68], r15
mov qword [rbp - 0x60], r15
cmp rbx, rcx
jb 0x18001c6d1
sub rbx, rcx
mov r8, 0xffffffffffffffff
cmp rbx, r8
cmovb r8, rbx
lea rdx, [rbp + 0x90]
test sil, sil
cmovne rdx, rdi
add rdx, rcx
lea rcx, [rbp - 0x78]
call fcn.18004a340
nop
mov byte [rsp + 0x6c], 0x3d
mov al, 0x15
mov cl, 0x14
mov dl, 7
mov r8b, 0x1d
xor r9d, r9d
xor al, 0x3d
mov byte [rsp + 0x6d], al
xor cl, 0x3d
mov byte [rsp + 0x6e], cl
xor dl, 0x3d
mov byte [rsp + 0x6f], dl
xor r8b, 0x3d
mov byte [rsp + 0x70], r8b
mov byte [rsp + 0x71], r9b
lea rax, [rsp + 0x6d]
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp byte [rax + rcx], r9b
jne 0x18001c490
movabs rax, 0x7fffffffffffffff
mov rdx, qword [rsp + 0x78]
sub rax, rdx
cmp rax, rcx
jb 0x18001c6cb
lea r9, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 0x10
cmovae r9, qword [rbp + 0xb0]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x6d]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp - 0x38]
call fcn.18004c030
nop
lea r9, [rbp - 0x78]
lea r8, [rbp - 0x38]
lea rcx, [rbp - 0x10]
call fcn.18004be40
or r13d, 0x1d80
mov rdx, qword [rbp + 0xc8]
cmp rdx, 0x10
jb 0x18001c542
inc rdx
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c53d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c6ad
call fcn.180098550
movups xmm0, xmmword [rbp - 0x10]
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp + 0xb0], xmm0
movups xmm0, xmmword [rbp]
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rbp + 0xc0], xmm0
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x18001c59d
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c597
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c6b3
call fcn.180098550
nop
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x18001c5d9
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c5d3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c6b9
call fcn.180098550
nop
mov rdx, qword [rbp + 0xa8]
cmp rdx, 0x10
jb 0x18001c1c6
inc rdx
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c619
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001c6bf
call fcn.180098550
jmp 0x18001c1c6
call fcn.180002150
int3
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
nop
call fcn.1800a41bc
nop
call fcn.1800a41bc
nop
call fcn.1800a41bc
nop
call fcn.180002150
int3
call fcn.180044a30
nop
call fcn.1800a41bc
nop
call fcn.1800a41bc
nop
call fcn.1800a41bc
nop
call fcn.1800a41bc
nop
call fcn.180002150
nop
call fcn.180044a30
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.180002150
nop
call fcn.180044a30
nop
call fcn.180002150
nop
call fcn.1800a41bc
int3