Function at 0x18008f670
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x518]
sub rsp, 0x5f0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x180407040]
xor rax, rsp
mov qword [rbp + 0x440], rax
mov r15, rcx
mov qword [rbp + 0xc8], rcx
cmp byte [rcx + 8], 0
je 0x1800927fa
cmp byte [0x1804210fa], 0
jne 0x1800927fa
lea rdx, [rbp + 0x368]
mov rcx, qword [0x180422b00]
call fcn.18006dcf0
mov rbx, qword [rax + 8]
cmp byte [rbp + 0x378], 0
je 0x18008f75c
cmp qword [0x180420930], 0
je 0x18008f75c
mov rdx, qword [rbp + 0x370]
test rdx, rdx
je 0x18008f75c
mov rcx, qword [rbp + 0x368]
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
mov qword [rbp + 0x370], 0
test rbx, rbx
jne 0x1800927fa
mov rax, qword [0x180420950]
movss xmm13, dword [rax + 0x10]
movss xmm14, dword [rax + 0x14]
xorps xmm0, xmm0
movups xmmword [rbp + 0x380], xmm0
xorps xmm10, xmm10
xorps xmm3, xmm3
mov r8d, dword [0x180422b0c]
mov edx, dword [0x180422b08]
lea rcx, [rbp + 0x380]
call fcn.18008ab40
mov r13, qword [rbp + 0x388]
mov qword [rbp + 0xd8], r13
movsxd rcx, dword [rbp + 0x384]
mov dword [rsp + 0x60], ecx
mov eax, dword [rbp + 0x380]
mov dword [rsp + 0x5c], eax
test eax, eax
jle 0x18008f7f3
mov rsi, rcx
shl rsi, 3
mov edi, eax
mov r8, rsi
mov rdx, qword [0x180422b10]
mov rdx, qword [rbx + rdx]
mov rcx, qword [rbx + r13]
call sub.VCRUNTIME140.dll_memcpy
lea rbx, [rbx + 8]
sub rdi, 1
jne 0x18008f7d2
xorps xmm0, xmm0
movups xmmword [rbp + 0x390], xmm0
movaps xmm3, xmm10
mov r8d, dword [0x180422b1c]
mov edx, dword [0x180422b18]
lea rcx, [rbp + 0x390]
call fcn.18008ab40
mov r12, qword [rbp + 0x398]
mov qword [rbp + 0xd0], r12
movsxd rax, dword [rbp + 0x394]
mov dword [rbp - 0x70], eax
mov r14d, dword [rbp + 0x390]
mov dword [rsp + 0x58], r14d
test r14d, r14d
jle 0x18008f871
mov rsi, rax
shl rsi, 3
xor ebx, ebx
mov edi, r14d
nop
mov r8, rsi
mov rdx, qword [0x180422b20]
mov rdx, qword [rbx + rdx]
mov rcx, qword [r12 + rbx]
call sub.VCRUNTIME140.dll_memcpy
lea rbx, [rbx + 8]
sub rdi, 1
jne 0x18008f850
movups xmm6, xmmword [0x18041f700]
movsd xmm7, qword [0x18041f710]
mov rcx, qword [0x180420d10]
cmp rcx, 5
jb 0x18008f8b2
lea rax, [rcx - 1]
mov rcx, rax
mov qword [0x180420d10], rax
test rax, rax
jne 0x18008f8ab
xor edi, edi
mov qword [0x180420d08], rdi
jmp 0x18008f8b4
inc qword [0x180420d08]
xor edi, edi
lea rax, [rcx + 1]
mov rbx, qword [0x180420d00]
cmp rbx, rax
ja 0x18008f8de
lea rcx, [0x180420cf0]
call fcn.180093050
mov rcx, qword [0x180420d10]
mov rbx, qword [0x180420d00]
dec rbx
mov rax, rbx
and rax, qword [0x180420d08]
mov qword [0x180420d08], rax
add rax, rcx
and rbx, rax
mov rax, qword [0x180420cf8]
cmp qword [rax + rbx*8], 0
jne 0x18008f922
mov ecx, 0x18
call fcn.1800ad3c8
mov rcx, qword [0x180420cf8]
mov qword [rcx + rbx*8], rax
mov rax, qword [0x180420cf8]
mov rax, qword [rax + rbx*8]
movups xmmword [rax], xmm6
movsd qword [rax + 0x10], xmm7
mov r8, qword [0x180420d10]
inc r8
mov qword [0x180420d10], r8
movaps xmm1, xmm10
movaps xmm2, xmm10
movaps xmm3, xmm10
mov rdx, qword [0x180420d08]
lea r9, [rdx + r8]
cmp rdx, r9
je 0x18008f990
mov r10, qword [0x180420d00]
dec r10
mov r11, qword [0x180420cf8]
nop dword [rax]
mov rax, rdx
and rax, r10
mov rcx, qword [r11 + rax*8]
addsd xmm1, qword [rcx]
addsd xmm2, qword [rcx + 8]
addsd xmm3, qword [rcx + 0x10]
inc rdx
cmp rdx, r9
jne 0x18008f970
xorps xmm0, xmm0
test r8, r8
js 0x18008f99f
cvtsi2sd xmm0, r8
jmp 0x18008f9b5
mov rax, r8
shr rax, 1
and r8d, 1
or rax, r8
cvtsi2sd xmm0, rax
addsd xmm0, xmm0
divsd xmm1, xmm0
movsd qword [rbp + 0xb0], xmm1
divsd xmm2, xmm0
movsd qword [rbp + 0xb8], xmm2
divsd xmm3, xmm0
movsd qword [rbp + 0xf0], xmm3
mov rcx, qword [0x180422b00]
add rcx, 0x70
lea rdx, [rbp + 0x3a0]
call fcn.18008d890
nop
mov rsi, qword [rbp + 0x3a0]
mov qword [rbp + 0xe0], rsi
mov qword [rsp + 0x50], rsi
mov rbx, qword [rbp + 0x3a8]
mov qword [rbp + 0x1e0], rbx
cmp rsi, rbx
je 0x180092795
movabs r14, 0x100000001b3
movsd xmm15, qword [0x1803f4e28]
nop
cmp qword [rsi + 0x10], 0
je 0x18009264e
mov rax, qword [0x180422b00]
mov rdx, qword [rsi + 0x10]
mov r8, qword [rax + 0x28]
cmp rdx, r8
je 0x18009264e
test rdx, rdx
je 0x18008fa7b
test r8, r8
je 0x18008fa7b
mov rcx, qword [rsi + 8]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
call r9
cmp al, 1
sete al
test al, al
jne 0x18009264e
mov rcx, rsi
call fcn.18006ef20
cmp eax, 0xa
jl 0x18009264e
lea rdx, [rbp + 0x340]
mov rcx, rsi
call fcn.18006e660
movzx ecx, sil
movabs rax, 0xcbf29ce484222325
xor rcx, rax
imul rcx, r14
movzx eax, byte [rsp + 0x51]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rsp + 0x52]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rsp + 0x53]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rsp + 0x54]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rsp + 0x55]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rsp + 0x56]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rsp + 0x57]
xor rcx, rax
imul rcx, r14
and rcx, qword [0x180421060]
add rcx, rcx
mov rdx, qword [0x180421048]
mov rax, qword [rdx + rcx*8 + 8]
mov r8, qword [0x180421038]
cmp rax, r8
je 0x18008fb41
mov rdx, qword [rdx + rcx*8]
cmp rsi, qword [rax + 0x10]
je 0x18008fb44
cmp rax, rdx
je 0x18008fb41
mov rax, qword [rax + 8]
cmp rsi, qword [rax + 0x10]
jne 0x18008fb30
jmp 0x18008fb44
mov rax, rdi
movsd xmm6, qword [rbp + 0x350]
movups xmm7, xmmword [rbp + 0x340]
test rax, rax
je 0x18008fb61
cmp rax, r8
jne 0x18008fcef
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], rdi
mov qword [rbp - 0x80], rdi
mov qword [rbp - 0x78], rdi
lea rax, [rbp + 0x360]
mov qword [rbp + 0x200], rax
mov ecx, 0x10
call fcn.1800ad3c8
mov qword [rbp + 0x1f8], rax
lea rcx, [rsp + 0x68]
mov qword [rax], rcx
mov qword [rax + 8], rdi
mov qword [rsp + 0x68], rax
mov edi, 5
lea rax, [rsp + 0x68]
mov qword [rsp + 0x50], rax
mov rcx, qword [rbp - 0x78]
nop word [rax + rax]
lea rax, [rcx + 1]
mov rbx, qword [rsp + 0x78]
cmp rbx, rax
ja 0x18008fbe1
lea rcx, [rsp + 0x68]
call fcn.180093050
mov rcx, qword [rbp - 0x78]
mov rbx, qword [rsp + 0x78]
dec rbx
mov rax, qword [rbp - 0x80]
and rax, rbx
mov qword [rbp - 0x80], rax
add rax, rcx
and rbx, rax
mov rax, qword [rsp + 0x70]
cmp qword [rax + rbx*8], 0
jne 0x18008fc19
mov ecx, 0x18
call fcn.1800ad3c8
mov rcx, qword [rsp + 0x70]
mov qword [rcx + rbx*8], rax
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + rbx*8]
movups xmmword [rax], xmm7
movsd qword [rax + 0x10], xmm6
mov rcx, qword [rbp - 0x78]
inc rcx
mov qword [rbp - 0x78], rcx
sub rdi, 1
jne 0x18008fbc0
mov qword [rbp + 0x1f8], rdi
mov qword [rbp + 0x1f0], rsi
lea r8, [rbp + 0x1f0]
lea rdx, [rbp + 0x2d0]
call fcn.180092c50
mov rbx, qword [rax]
add rbx, 0x18
lea rax, [rsp + 0x68]
cmp rbx, rax
je 0x18008fcd1
mov rcx, rbx
call fcn.180092b80
mov rcx, qword [rbx]
mov rax, qword [rsp + 0x68]
mov qword [rbx], rax
mov qword [rsp + 0x68], rcx
mov rax, qword [rbx]
test rax, rax
je 0x18008fc90
mov qword [rax], rbx
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x18008fc9d
lea rax, [rsp + 0x68]
mov qword [rcx], rax
mov rax, qword [rsp + 0x70]
mov qword [rbx + 8], rax
mov rax, qword [rsp + 0x78]
mov qword [rbx + 0x10], rax
mov rax, qword [rbp - 0x80]
mov qword [rbx + 0x18], rax
mov rax, qword [rbp - 0x78]
mov qword [rbx + 0x20], rax
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x78], rdi
mov qword [rbp - 0x80], rdi
mov qword [rbp - 0x78], rdi
lea rcx, [rsp + 0x68]
call fcn.180092b80
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x68], rdi
mov edx, 0x10
call fcn.1800ad85c
mov qword [rsp + 0x50], rsi
lea r8, [rsp + 0x50]
lea rdx, [rbp + 0x310]
call fcn.180092c50
mov rbx, qword [rax]
mov rcx, qword [rbx + 0x38]
cmp rcx, 5
jb 0x18008fd2c
lea rax, [rcx - 1]
mov rcx, rax
mov qword [rbx + 0x38], rax
test rax, rax
jne 0x18008fd28
mov qword [rbx + 0x30], rdi
jmp 0x18008fd2c
inc qword [rbx + 0x30]
lea rax, [rcx + 1]
cmp qword [rbx + 0x28], rax
ja 0x18008fd3f
lea rcx, [rbx + 0x18]
call fcn.180093050
mov rdx, qword [rbx + 0x28]
dec rdx
mov rcx, rdx
and rcx, qword [rbx + 0x30]
mov qword [rbx + 0x30], rcx
mov rdi, qword [rbx + 0x38]
add rdi, rcx
and rdi, rdx
mov rax, qword [rbx + 0x20]
cmp qword [rax + rdi*8], 0
jne 0x18008fd78
mov ecx, 0x18
call fcn.1800ad3c8
mov rcx, qword [rbx + 0x20]
mov qword [rcx + rdi*8], rax
mov rax, qword [rbx + 0x20]
mov rcx, qword [rax + rdi*8]
movups xmmword [rcx], xmm7
movsd qword [rcx + 0x10], xmm6
mov r8, qword [rbx + 0x38]
inc r8
mov qword [rbx + 0x38], r8
movaps xmm6, xmm10
movaps xmm8, xmm10
movaps xmm7, xmm10
mov rdx, qword [rbx + 0x30]
lea r9, [rdx + r8]
cmp rdx, r9
je 0x18008fde1
mov r10, qword [rbx + 0x28]
dec r10
mov r11, qword [rbx + 0x20]
nop word [rax + rax]
mov rax, rdx
and rax, r10
mov rcx, qword [r11 + rax*8]
addsd xmm6, qword [rcx]
addsd xmm8, qword [rcx + 8]
addsd xmm7, qword [rcx + 0x10]
inc rdx
cmp rdx, r9
jne 0x18008fdc0
xorps xmm0, xmm0
test r8, r8
js 0x18008fdf0
cvtsi2sd xmm0, r8
jmp 0x18008fe06
mov rax, r8
shr rax, 1
and r8d, 1
or rax, r8
cvtsi2sd xmm0, rax
addsd xmm0, xmm0
divsd xmm6, xmm0
divsd xmm8, xmm0
divsd xmm7, xmm0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x368], xmm0
mov qword [rbp + 0x378], rax
lea rdx, [rbp + 0x368]
mov rcx, rsi
call fcn.18006eff0
nop
mov r14, qword [rbp + 0x370]
xor ebx, ebx
test r14, r14
je 0x180090440
xorps xmm0, xmm0
movups xmmword [rbp + 0x340], xmm0
mov qword [rbp + 0x350], rbx
mov qword [rbp + 0x358], rbx
lea r8d, [rbx + 4]
lea rdx, str.minX
lea rcx, [rbp + 0x340]
call fcn.180003f70
nop
lea rdx, [rbp + 0x340]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rsi, qword [rbp + 0x368]
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
nop
mov rdx, qword [rbp + 0x358]
cmp rdx, 0x10
jb 0x18008feea
inc rdx
mov rcx, qword [rbp + 0x340]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008fee5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800926a9
call fcn.1800ad85c
mov qword [rbp + 0x350], rbx
mov qword [rbp + 0x358], 0xf
mov byte [rbp + 0x340], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x320], xmm0
mov qword [rbp + 0x330], rbx
mov qword [rbp + 0x338], rbx
mov r8d, 4
lea rdx, str.maxX
lea rcx, [rbp + 0x320]
call fcn.180003f70
nop
lea rdx, [rbp + 0x320]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
nop
mov rdx, qword [rbp + 0x338]
cmp rdx, 0x10
jb 0x18008ffa0
inc rdx
mov rcx, qword [rbp + 0x320]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008ff9b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800926b0
call fcn.1800ad85c
mov qword [rbp + 0x330], rbx
mov qword [rbp + 0x338], 0xf
mov byte [rbp + 0x320], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minX
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180090048
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180090043
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800926b7
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rbp + 0x340], xmm0
mov qword [rbp + 0x350], rbx
mov qword [rbp + 0x358], rbx
mov r8d, 4
lea rdx, str.minY
lea rcx, [rbp + 0x340]
call fcn.180003f70
nop
lea rdx, [rbp + 0x340]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
nop
mov rdx, qword [rbp + 0x358]
cmp rdx, 0x10
jb 0x1800900e5
inc rdx
mov rcx, qword [rbp + 0x340]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800900e0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800926be
call fcn.1800ad85c
mov qword [rbp + 0x350], rbx
mov qword [rbp + 0x358], 0xf
mov byte [rbp + 0x340], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x320], xmm0
mov qword [rbp + 0x330], rbx
mov qword [rbp + 0x338], rbx
mov r8d, 4
lea rdx, str.maxY
lea rcx, [rbp + 0x320]
call fcn.180003f70
nop
lea rdx, [rbp + 0x320]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
nop
mov rdx, qword [rbp + 0x338]
cmp rdx, 0x10
jb 0x18009019b
inc rdx
mov rcx, qword [rbp + 0x320]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180090196
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800926c5
call fcn.1800ad85c
mov qword [rbp + 0x330], rbx
mov qword [rbp + 0x338], 0xf
mov byte [rbp + 0x320], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minY
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180090243
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18009023e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800926cc
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rbp + 0x340], xmm0
mov qword [rbp + 0x350], rbx
mov qword [rbp + 0x358], rbx
mov r8d, 4
lea rdx, str.minZ
lea rcx, [rbp + 0x340]
call fcn.180003f70
nop
lea rdx, [rbp + 0x340]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
nop
mov rdx, qword [rbp + 0x358]
cmp rdx, 0x10
jb 0x1800902e0
inc rdx
mov rcx, qword [rbp + 0x340]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800902db
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800926d3
call fcn.1800ad85c
mov qword [rbp + 0x350], rbx
mov qword [rbp + 0x358], 0xf
mov byte [rbp + 0x340], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x320], xmm0
mov qword [rbp + 0x330], rbx
mov qword [rbp + 0x338], rbx
mov r8d, 4
lea rdx, str.maxZ
lea rcx, [rbp + 0x320]
call fcn.180003f70
nop
lea rdx, [rbp + 0x320]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
nop
mov rdx, qword [rbp + 0x338]
cmp rdx, 0x10
jb 0x180090396
inc rdx
mov rcx, qword [rbp + 0x320]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180090391
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800926da
call fcn.1800ad85c
mov qword [rbp + 0x330], rbx
mov qword [rbp + 0x338], 0xf
mov byte [rbp + 0x320], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minZ
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180090447
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180090439
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800926e1
call fcn.1800ad85c
jmp 0x180090447
mov rsi, qword [rbp + 0x368]
cmp byte [r15 + 0x30], 0
je 0x180090655
xorps xmm0, xmm0
movups xmmword [rbp + 0x320], xmm0
lea rax, [rbp + 0x78]
mov qword [rsp + 0x50], rax
movaps xmm3, xmm10
mov r8d, dword [rbp - 0x70]
mov edx, dword [rsp + 0x58]
lea rcx, [rbp + 0x78]
call fcn.18008ab40
mov edi, ebx
cmp dword [rbp + 0x78], 0
jle 0x1800904ab
movsxd r8, dword [rbp + 0x7c]
shl r8, 3
mov rdx, qword [rbx + r12]
mov rcx, qword [rbp + 0x80]
mov rcx, qword [rcx + rbx]
call sub.VCRUNTIME140.dll_memcpy
inc edi
lea rbx, [rbx + 8]
cmp edi, dword [rbp + 0x78]
jl 0x180090482
xor ebx, ebx
movaps xmm3, xmm10
mov r8d, dword [rsp + 0x60]
mov edx, dword [rsp + 0x5c]
lea rcx, [rbp + 0x58]
call fcn.18008ab40
mov edi, ebx
cmp dword [rbp + 0x58], 0
jle 0x1800904f6
nop dword [rax]
movsxd r8, dword [rbp + 0x5c]
shl r8, 3
mov rdx, qword [rbx + r13]
mov rcx, qword [rbp + 0x60]
mov rcx, qword [rcx + rbx]
call sub.VCRUNTIME140.dll_memcpy
inc edi
lea rbx, [rbx + 8]
cmp edi, dword [rbp + 0x58]
jl 0x1800904d0
xor ebx, ebx
subsd xmm7, qword [rbp + 0xf0]
subsd xmm8, qword [rbp + 0xb8]
subsd xmm6, qword [rbp + 0xb0]
movsd qword [rbp + 0x340], xmm6
movsd qword [rbp + 0x348], xmm8
movsd qword [rbp + 0x350], xmm7
cvttss2si eax, xmm14
cvttss2si r9d, xmm13
lea rcx, [rbp + 0x320]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], eax
lea r8, [rbp + 0x78]
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0x340]
call fcn.18008a720
movups xmm7, xmmword [rbp + 0x320]
movsd xmm1, qword [0x1803f4e78]
comisd xmm1, xmm7
ja 0x1800907f0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm13
comisd xmm7, xmm0
ja 0x1800907f0
movaps xmm6, xmm7
unpckhpd xmm6, xmm7
comisd xmm1, xmm6
ja 0x1800907f0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm14
comisd xmm6, xmm0
ja 0x1800907f0
mov ecx, dword [r15 + 0x48]
test ecx, ecx
je 0x180090783
sub ecx, 1
movzx r9d, byte [r15 + 0x31]
movss xmm0, dword [r15 + 0x2c]
movss xmm3, dword [r15 + 0x28]
movss xmm2, dword [r15 + 0x24]
movss xmm1, dword [r15 + 0x20]
movss dword [rsp + 0x20], xmm0
je 0x180090713
cmp ecx, 1
je 0x1800906ae
lea rcx, [rbp + 0x2e0]
call fcn.1800331f0
mov rcx, rax
call fcn.180009cf0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm6
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm7
movss dword [rbp + 0xc0], xmm0
movss dword [rbp + 0xc4], xmm1
movaps xmm2, xmm14
mulss xmm2, dword [0x1803f4dfc]
movaps xmm0, xmm13
mulss xmm0, dword [0x1803f4dfc]
movss dword [rbp + 0xe8], xmm0
movss dword [rbp + 0xec], xmm2
mov r8d, eax
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0xe8]
call fcn.180074cd0
cmp byte [r15 + 0x44], 0
je 0x1800925f1
lea rax, [rbp + 0x3c0]
mov ecx, 8
nop dword [rax]
mov qword [rax], rbx
mov qword [rax + 8], rbx
lea rax, [rax + 0x10]
sub rcx, 1
jne 0x180090670
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x320], xmm0
mov qword [rbp + 0x330], rax
test r14, r14
jne 0x18009081f
movaps xmm8, xmm10
movaps xmm7, xmm10
movaps xmm6, xmm10
jmp 0x1800909d0
lea rcx, [rbp + 0x2f0]
call fcn.1800331f0
mov rcx, rax
call fcn.180009cf0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm6
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm7
movss dword [rbp + 0xf8], xmm0
movss dword [rbp + 0xfc], xmm1
movaps xmm1, xmm13
mulss xmm1, dword [0x1803f4dfc]
movss dword [rbp + 0x100], xmm1
movss dword [rbp + 0x104], xmm14
mov r8d, eax
lea rdx, [rbp + 0xf8]
lea rcx, [rbp + 0x100]
jmp 0x180090650
lea rcx, [rbp + 0x300]
call fcn.1800331f0
mov rcx, rax
call fcn.180009cf0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm6
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm7
movss dword [rbp + 0x108], xmm0
movss dword [rbp + 0x10c], xmm1
movaps xmm2, xmm14
mulss xmm2, dword [0x1803f4dfc]
movaps xmm0, xmm13
mulss xmm0, dword [0x1803f4dfc]
movss dword [rbp + 0x98], xmm0
movss dword [rbp + 0x9c], xmm2
mov r8d, eax
lea rdx, [rbp + 0x108]
lea rcx, [rbp + 0x98]
jmp 0x180090650
movups xmm0, xmmword [r15 + 0x20]
movups xmmword [rbp + 0x110], xmm0
lea rcx, [rbp + 0x110]
call fcn.180009cf0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm6
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm7
movss dword [rbp + 0xa0], xmm0
movss dword [rbp + 0xa4], xmm1
movaps xmm1, xmm13
mulss xmm1, dword [0x1803f4dfc]
movss dword [rbp + 0xa8], xmm1
mov dword [rbp + 0xac], 0
mov r9b, 1
mov r8d, eax
lea rdx, [rbp + 0xa0]
lea rcx, [rbp + 0xa8]
jmp 0x180090650
cmp byte [rbp + 0x378], 0
je 0x180092621
cmp qword [0x180420930], 0
je 0x180092621
test r14, r14
je 0x180092621
mov rax, qword [rsi]
mov rcx, rsi
jmp 0x180092613
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minX
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1800908ae
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800908a9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800926e8
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minY
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm7, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x18009093f
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18009093a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800926ef
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minZ
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1800909d0
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800909cb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800926f6
call fcn.1800ad85c
movsd qword [rbp + 0x210], xmm8
movsd qword [rbp + 0x218], xmm7
movsd qword [rbp + 0x220], xmm6
test r14, r14
jne 0x1800909ff
movaps xmm8, xmm10
movaps xmm7, xmm10
movaps xmm6, xmm10
jmp 0x180090bb3
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.maxX
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180090a91
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180090a8c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800926fd
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minY
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm7, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180090b22
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180090b1d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180092704
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minZ
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180090bb3
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180090bae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18009270b
call fcn.1800ad85c
movsd qword [rbp + 0x228], xmm8
movsd qword [rbp + 0x230], xmm7
movsd qword [rbp + 0x238], xmm6
test r14, r14
jne 0x180090be2
movaps xmm8, xmm10
movaps xmm7, xmm10
movaps xmm6, xmm10
jmp 0x180090d96
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minX
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180090c74
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180090c6f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180092712
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.maxY
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm7, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180090d05
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180090d00
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180092719
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minZ
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180090d96
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180090d91
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180092720
call fcn.1800ad85c
movsd qword [rbp + 0x240], xmm8
movsd qword [rbp + 0x248], xmm7
movsd qword [rbp + 0x250], xmm6
test r14, r14
jne 0x180090dc5
movaps xmm8, xmm10
movaps xmm7, xmm10
movaps xmm6, xmm10
jmp 0x180090f79
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.maxX
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180090e57
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180090e52
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180092727
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.maxY
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm7, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180090ee8
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180090ee3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18009272e
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minZ
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180090f79
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180090f74
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180092735
call fcn.1800ad85c
movsd qword [rbp + 0x258], xmm8
movsd qword [rbp + 0x260], xmm7
movsd qword [rbp + 0x268], xmm6
test r14, r14
jne 0x180090fa8
movaps xmm8, xmm10
movaps xmm7, xmm10
movaps xmm6, xmm10
jmp 0x18009115c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minX
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x18009103a
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180091035
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18009273c
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minY
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm7, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1800910cb
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800910c6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180092743
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.maxZ
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x18009115c
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180091157
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18009274a
call fcn.1800ad85c
movsd qword [rbp + 0x270], xmm8
movsd qword [rbp + 0x278], xmm7
movsd qword [rbp + 0x280], xmm6
test r14, r14
jne 0x18009118b
movaps xmm8, xmm10
movaps xmm7, xmm10
movaps xmm6, xmm10
jmp 0x18009133f
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.maxX
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x18009121d
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180091218
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180092751
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minY
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm7, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1800912ae
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800912a9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180092758
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.maxZ
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x18009133f
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18009133a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18009275f
call fcn.1800ad85c
movsd qword [rbp + 0x288], xmm8
movsd qword [rbp + 0x290], xmm7
movsd qword [rbp + 0x298], xmm6
test r14, r14
jne 0x18009136e
movaps xmm8, xmm10
movaps xmm7, xmm10
movaps xmm6, xmm10
jmp 0x180091522
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.minX
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180091400
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800913fb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180092766
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.maxY
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm7, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180091491
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18009148c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18009276d
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.maxZ
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180091522
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18009151d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180092774
call fcn.1800ad85c
movsd qword [rbp + 0x2a0], xmm8
movsd qword [rbp + 0x2a8], xmm7
movsd qword [rbp + 0x2b0], xmm6
test r14, r14
jne 0x180091551
movaps xmm8, xmm10
movaps xmm7, xmm10
movaps xmm6, xmm10
jmp 0x180091705
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.maxX
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1800915e3
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800915de
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18009277b
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.maxY
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm7, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180091674
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18009166f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180092782
call fcn.1800ad85c
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 4
lea rdx, str.maxZ
lea rcx, [rsp + 0x30]
call fcn.180003f70
nop
lea rdx, [rsp + 0x30]
lea rcx, [0x1804213e8]
call fcn.18007bba0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, rsi
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180091705
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180091700
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180092789
call fcn.1800ad85c
movsd qword [rbp + 0x2b8], xmm8
movsd qword [rbp + 0x2c0], xmm7
movsd qword [rbp + 0x2c8], xmm6
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x320], xmm0
mov qword [rbp + 0x330], rbx
mov edx, 8
call fcn.180093230
mov qword [rbp + 0x320], rax
mov qword [rbp + 0x328], rax
lea rbx, [rax + 0xc0]
mov qword [rbp + 0x330], rbx
mov r8d, 0xc0
lea rdx, [rbp + 0x210]
mov rcx, rax
call sub.VCRUNTIME140.dll_memmove
mov qword [rbp + 0x328], rbx
cvttss2si r12d, xmm14
cvttss2si r13d, xmm13
xor esi, esi
lea r14, [rbp + 0x3c0]
lea r15d, [rsi + 8]
movsd xmm12, qword [rbp + 0xb0]
movsd xmm11, qword [rbp + 0xb8]
movsd xmm9, qword [rbp + 0xf0]
nop dword [rax]
nop dword [rax + rax]
lea rax, [rbp + 0x88]
mov qword [rbp + 0x1e8], rax
movaps xmm3, xmm10
mov r8d, dword [rbp - 0x70]
mov edx, dword [rsp + 0x58]
lea rcx, [rbp + 0x88]
call fcn.18008ab40
xor edi, edi
cmp dword [rbp + 0x88], edi
jle 0x180091822
xor ebx, ebx
mov r12, qword [rbp + 0xd0]
nop dword [rax]
movsxd r8, dword [rbp + 0x8c]
shl r8, 3
mov rdx, qword [rbx + r12]
mov rcx, qword [rbp + 0x90]
mov rcx, qword [rcx + rbx]
call sub.VCRUNTIME140.dll_memcpy
inc edi
lea rbx, [rbx + 8]
cmp edi, dword [rbp + 0x88]
jl 0x1800917f0
cvttss2si r12d, xmm14
movaps xmm3, xmm10
mov r8d, dword [rsp + 0x60]
mov edx, dword [rsp + 0x5c]
lea rcx, [rbp + 0x68]
call fcn.18008ab40
xor edi, edi
cmp dword [rbp + 0x68], edi
jle 0x180091879
xor ebx, ebx
mov r13, qword [rbp + 0xd8]
nop dword [rax + rax]
movsxd r8, dword [rbp + 0x6c]
shl r8, 3
mov rdx, qword [rbx + r13]
mov rcx, qword [rbp + 0x70]
mov rcx, qword [rcx + rbx]
call sub.VCRUNTIME140.dll_memcpy
inc edi
lea rbx, [rbx + 8]
cmp edi, dword [rbp + 0x68]
jl 0x180091850
cvttss2si r13d, xmm13
mov rax, qword [rbp + 0x320]
movsd xmm2, qword [rsi + rax + 0x10]
subsd xmm2, xmm9
movsd xmm1, qword [rsi + rax + 8]
subsd xmm1, xmm11
movsd xmm0, qword [rsi + rax]
subsd xmm0, xmm12
movsd qword [rbp + 0x340], xmm0
movsd qword [rbp + 0x348], xmm1
movsd qword [rbp + 0x350], xmm2
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], r12d
mov r9d, r13d
lea r8, [rbp + 0x88]
lea rdx, [rbp + 0x68]
lea rcx, [rbp + 0x340]
call fcn.18008a720
add r14, 0x10
add rsi, 0x18
sub r15, 1
jne 0x1800917b0
xorps xmm9, xmm9
movss xmm11, dword [0x1803f4f18]
movss xmm12, dword [0x1803f4e5c]
xor ecx, ecx
lea rax, [rbp + 0x3c8]
nop dword [rax]
movsd xmm1, qword [rax - 8]
comisd xmm15, xmm1
ja 0x18009266e
xorps xmm0, xmm0
cvtss2sd xmm0, xmm13
comisd xmm1, xmm0
ja 0x18009266e
movsd xmm1, qword [rax]
comisd xmm15, xmm1
ja 0x18009266e
xorps xmm0, xmm0
cvtss2sd xmm0, xmm14
comisd xmm1, xmm0
ja 0x18009266e
inc ecx
add rax, 0x10
cmp ecx, 8
jl 0x180091910
mov r15, qword [rbp + 0xc8]
movups xmm0, xmmword [r15 + 0x34]
movups xmmword [rbp + 0x120], xmm0
lea rcx, [rbp + 0x120]
call fcn.180009cf0
mov ebx, eax
movsd xmm3, qword [rbp + 0x3d8]
cvtpd2ps xmm3, xmm3
movsd xmm2, qword [rbp + 0x3d0]
cvtpd2ps xmm2, xmm2
movss dword [rbp + 0x44], xmm2
movss dword [rbp + 0x48], xmm3
movsd xmm1, qword [rbp + 0x3c8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x3c0]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x6c], xmm0
movss dword [rbp - 0x68], xmm1
ucomiss xmm0, xmm9
jp 0x1800919d7
jne 0x1800919d7
ucomiss xmm1, xmm9
jp 0x1800919d7
je 0x180091a6f
ucomiss xmm2, xmm9
jp 0x1800919eb
jne 0x1800919eb
ucomiss xmm3, xmm9
jp 0x1800919eb
je 0x180091a6f
cmp byte [r15 + 0x45], 0
je 0x180091a32
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm11
mov r9d, 0xff000000
lea r8, [rbp + 0x44]
lea rdx, [rbp - 0x6c]
mov rcx, rax
call fcn.18003dfe0
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm12
mov r9d, ebx
lea r8, [rbp + 0x44]
lea rdx, [rbp - 0x6c]
mov rcx, rax
call fcn.18003dfe0
movups xmm0, xmmword [r15 + 0x34]
movups xmmword [rbp + 0x130], xmm0
lea rcx, [rbp + 0x130]
call fcn.180009cf0
mov ebx, eax
movsd xmm3, qword [rbp + 0x3f8]
cvtpd2ps xmm3, xmm3
movsd xmm2, qword [rbp + 0x3f0]
cvtpd2ps xmm2, xmm2
movss dword [rbp - 0x64], xmm2
movss dword [rbp - 0x60], xmm3
movsd xmm1, qword [rbp + 0x3d8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x3d0]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x5c], xmm0
movss dword [rbp - 0x58], xmm1
ucomiss xmm0, xmm9
jp 0x180091ae1
jne 0x180091ae1
ucomiss xmm1, xmm9
jp 0x180091ae1
je 0x180091b79
ucomiss xmm2, xmm9
jp 0x180091af5
jne 0x180091af5
ucomiss xmm3, xmm9
jp 0x180091af5
je 0x180091b79
cmp byte [r15 + 0x45], 0
je 0x180091b3c
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm11
mov r9d, 0xff000000
lea r8, [rbp - 0x64]
lea rdx, [rbp - 0x5c]
mov rcx, rax
call fcn.18003dfe0
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm12
mov r9d, ebx
lea r8, [rbp - 0x64]
lea rdx, [rbp - 0x5c]
mov rcx, rax
call fcn.18003dfe0
movups xmm0, xmmword [r15 + 0x34]
movups xmmword [rbp + 0x140], xmm0
lea rcx, [rbp + 0x140]
call fcn.180009cf0
mov ebx, eax
movsd xmm3, qword [rbp + 0x3e8]
cvtpd2ps xmm3, xmm3
movsd xmm2, qword [rbp + 0x3e0]
cvtpd2ps xmm2, xmm2
movss dword [rbp - 0x1c], xmm2
movss dword [rbp - 0x18], xmm3
movsd xmm1, qword [rbp + 0x3f8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x3f0]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x4c], xmm0
movss dword [rbp - 0x48], xmm1
ucomiss xmm0, xmm9
jp 0x180091beb
jne 0x180091beb
ucomiss xmm1, xmm9
jp 0x180091beb
je 0x180091c83
ucomiss xmm2, xmm9
jp 0x180091bff
jne 0x180091bff
ucomiss xmm3, xmm9
jp 0x180091bff
je 0x180091c83
cmp byte [r15 + 0x45], 0
je 0x180091c46
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm11
mov r9d, 0xff000000
lea r8, [rbp - 0x1c]
lea rdx, [rbp - 0x4c]
mov rcx, rax
call fcn.18003dfe0
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm12
mov r9d, ebx
lea r8, [rbp - 0x1c]
lea rdx, [rbp - 0x4c]
mov rcx, rax
call fcn.18003dfe0
movups xmm0, xmmword [r15 + 0x34]
movups xmmword [rbp + 0x150], xmm0
lea rcx, [rbp + 0x150]
call fcn.180009cf0
mov ebx, eax
movsd xmm3, qword [rbp + 0x3c8]
cvtpd2ps xmm3, xmm3
movsd xmm2, qword [rbp + 0x3c0]
cvtpd2ps xmm2, xmm2
movss dword [rbp - 0x44], xmm2
movss dword [rbp - 0x40], xmm3
movsd xmm1, qword [rbp + 0x3e8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x3e0]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x3c], xmm0
movss dword [rbp - 0x38], xmm1
ucomiss xmm0, xmm9
jp 0x180091cf5
jne 0x180091cf5
ucomiss xmm1, xmm9
jp 0x180091cf5
je 0x180091d8d
ucomiss xmm2, xmm9
jp 0x180091d09
jne 0x180091d09
ucomiss xmm3, xmm9
jp 0x180091d09
je 0x180091d8d
cmp byte [r15 + 0x45], 0
je 0x180091d50
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm11
mov r9d, 0xff000000
lea r8, [rbp - 0x44]
lea rdx, [rbp - 0x3c]
mov rcx, rax
call fcn.18003dfe0
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm12
mov r9d, ebx
lea r8, [rbp - 0x44]
lea rdx, [rbp - 0x3c]
mov rcx, rax
call fcn.18003dfe0
movups xmm0, xmmword [r15 + 0x34]
movups xmmword [rbp + 0x160], xmm0
lea rcx, [rbp + 0x160]
call fcn.180009cf0
mov ebx, eax
movsd xmm3, qword [rbp + 0x418]
cvtpd2ps xmm3, xmm3
movsd xmm2, qword [rbp + 0x410]
cvtpd2ps xmm2, xmm2
movss dword [rbp - 0x34], xmm2
movss dword [rbp - 0x30], xmm3
movsd xmm1, qword [rbp + 0x408]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x400]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x2c], xmm0
movss dword [rbp - 0x28], xmm1
ucomiss xmm0, xmm9
jp 0x180091dff
jne 0x180091dff
ucomiss xmm1, xmm9
jp 0x180091dff
je 0x180091e97
ucomiss xmm2, xmm9
jp 0x180091e13
jne 0x180091e13
ucomiss xmm3, xmm9
jp 0x180091e13
je 0x180091e97
cmp byte [r15 + 0x45], 0
je 0x180091e5a
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm11
mov r9d, 0xff000000
lea r8, [rbp - 0x34]
lea rdx, [rbp - 0x2c]
mov rcx, rax
call fcn.18003dfe0
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm12
mov r9d, ebx
lea r8, [rbp - 0x34]
lea rdx, [rbp - 0x2c]
mov rcx, rax
call fcn.18003dfe0
movups xmm0, xmmword [r15 + 0x34]
movups xmmword [rbp + 0x170], xmm0
lea rcx, [rbp + 0x170]
call fcn.180009cf0
mov ebx, eax
movsd xmm3, qword [rbp + 0x438]
cvtpd2ps xmm3, xmm3
movsd xmm2, qword [rbp + 0x430]
cvtpd2ps xmm2, xmm2
movss dword [rbp - 0x24], xmm2
movss dword [rbp - 0x20], xmm3
movsd xmm1, qword [rbp + 0x418]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x410]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x4c], xmm0
movss dword [rbp + 0x50], xmm1
ucomiss xmm0, xmm9
jp 0x180091f09
jne 0x180091f09
ucomiss xmm1, xmm9
jp 0x180091f09
je 0x180091fa1
ucomiss xmm2, xmm9
jp 0x180091f1d
jne 0x180091f1d
ucomiss xmm3, xmm9
jp 0x180091f1d
je 0x180091fa1
cmp byte [r15 + 0x45], 0
je 0x180091f64
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm11
mov r9d, 0xff000000
lea r8, [rbp - 0x24]
lea rdx, [rbp + 0x4c]
mov rcx, rax
call fcn.18003dfe0
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm12
mov r9d, ebx
lea r8, [rbp - 0x24]
lea rdx, [rbp + 0x4c]
mov rcx, rax
call fcn.18003dfe0
movups xmm0, xmmword [r15 + 0x34]
movups xmmword [rbp + 0x180], xmm0
lea rcx, [rbp + 0x180]
call fcn.180009cf0
mov ebx, eax
movsd xmm3, qword [rbp + 0x428]
cvtpd2ps xmm3, xmm3
movsd xmm2, qword [rbp + 0x420]
cvtpd2ps xmm2, xmm2
movss dword [rbp - 0x14], xmm2
movss dword [rbp - 0x10], xmm3
movsd xmm1, qword [rbp + 0x438]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x430]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0xc], xmm0
movss dword [rbp - 8], xmm1
ucomiss xmm0, xmm9
jp 0x180092013
jne 0x180092013
ucomiss xmm1, xmm9
jp 0x180092013
je 0x1800920ab
ucomiss xmm2, xmm9
jp 0x180092027
jne 0x180092027
ucomiss xmm3, xmm9
jp 0x180092027
je 0x1800920ab
cmp byte [r15 + 0x45], 0
je 0x18009206e
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm11
mov r9d, 0xff000000
lea r8, [rbp - 0x14]
lea rdx, [rbp - 0xc]
mov rcx, rax
call fcn.18003dfe0
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm12
mov r9d, ebx
lea r8, [rbp - 0x14]
lea rdx, [rbp - 0xc]
mov rcx, rax
call fcn.18003dfe0
movups xmm0, xmmword [r15 + 0x34]
movups xmmword [rbp + 0x190], xmm0
lea rcx, [rbp + 0x190]
call fcn.180009cf0
mov ebx, eax
movsd xmm3, qword [rbp + 0x408]
cvtpd2ps xmm3, xmm3
movsd xmm2, qword [rbp + 0x400]
cvtpd2ps xmm2, xmm2
movss dword [rbp - 0x54], xmm2
movss dword [rbp - 0x50], xmm3
movsd xmm1, qword [rbp + 0x428]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x420]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 4], xmm0
movss dword [rbp], xmm1
ucomiss xmm0, xmm9
jp 0x18009211d
jne 0x18009211d
ucomiss xmm1, xmm9
jp 0x18009211d
je 0x1800921b5
ucomiss xmm2, xmm9
jp 0x180092131
jne 0x180092131
ucomiss xmm3, xmm9
jp 0x180092131
je 0x1800921b5
cmp byte [r15 + 0x45], 0
je 0x180092178
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm11
mov r9d, 0xff000000
lea r8, [rbp - 0x54]
lea rdx, [rbp - 4]
mov rcx, rax
call fcn.18003dfe0
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm12
mov r9d, ebx
lea r8, [rbp - 0x54]
lea rdx, [rbp - 4]
mov rcx, rax
call fcn.18003dfe0
movups xmm0, xmmword [r15 + 0x34]
movups xmmword [rbp + 0x1a0], xmm0
lea rcx, [rbp + 0x1a0]
call fcn.180009cf0
mov ebx, eax
movsd xmm3, qword [rbp + 0x408]
cvtpd2ps xmm3, xmm3
movsd xmm2, qword [rbp + 0x400]
cvtpd2ps xmm2, xmm2
movss dword [rbp + 4], xmm2
movss dword [rbp + 8], xmm3
movsd xmm1, qword [rbp + 0x3c8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x3c0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xc], xmm0
movss dword [rbp + 0x10], xmm1
ucomiss xmm0, xmm9
jp 0x180092227
jne 0x180092227
ucomiss xmm1, xmm9
jp 0x180092227
je 0x1800922bf
ucomiss xmm2, xmm9
jp 0x18009223b
jne 0x18009223b
ucomiss xmm3, xmm9
jp 0x18009223b
je 0x1800922bf
cmp byte [r15 + 0x45], 0
je 0x180092282
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm11
mov r9d, 0xff000000
lea r8, [rbp + 4]
lea rdx, [rbp + 0xc]
mov rcx, rax
call fcn.18003dfe0
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm12
mov r9d, ebx
lea r8, [rbp + 4]
lea rdx, [rbp + 0xc]
mov rcx, rax
call fcn.18003dfe0
movups xmm0, xmmword [r15 + 0x34]
movups xmmword [rbp + 0x1b0], xmm0
lea rcx, [rbp + 0x1b0]
call fcn.180009cf0
mov ebx, eax
movsd xmm3, qword [rbp + 0x418]
cvtpd2ps xmm3, xmm3
movsd xmm2, qword [rbp + 0x410]
cvtpd2ps xmm2, xmm2
movss dword [rbp + 0x14], xmm2
movss dword [rbp + 0x18], xmm3
movsd xmm1, qword [rbp + 0x3d8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x3d0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1c], xmm0
movss dword [rbp + 0x20], xmm1
ucomiss xmm0, xmm9
jp 0x180092331
jne 0x180092331
ucomiss xmm1, xmm9
jp 0x180092331
je 0x1800923c9
ucomiss xmm2, xmm9
jp 0x180092345
jne 0x180092345
ucomiss xmm3, xmm9
jp 0x180092345
je 0x1800923c9
cmp byte [r15 + 0x45], 0
je 0x18009238c
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm11
mov r9d, 0xff000000
lea r8, [rbp + 0x14]
lea rdx, [rbp + 0x1c]
mov rcx, rax
call fcn.18003dfe0
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm12
mov r9d, ebx
lea r8, [rbp + 0x14]
lea rdx, [rbp + 0x1c]
mov rcx, rax
call fcn.18003dfe0
movups xmm0, xmmword [r15 + 0x34]
movups xmmword [rbp + 0x1c0], xmm0
lea rcx, [rbp + 0x1c0]
call fcn.180009cf0
mov ebx, eax
movsd xmm3, qword [rbp + 0x428]
cvtpd2ps xmm3, xmm3
movsd xmm2, qword [rbp + 0x420]
cvtpd2ps xmm2, xmm2
movss dword [rbp + 0x24], xmm2
movss dword [rbp + 0x28], xmm3
movsd xmm1, qword [rbp + 0x3e8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x3e0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x2c], xmm0
movss dword [rbp + 0x30], xmm1
ucomiss xmm0, xmm9
jp 0x18009243b
jne 0x18009243b
ucomiss xmm1, xmm9
jp 0x18009243b
je 0x1800924d3
ucomiss xmm2, xmm9
jp 0x18009244f
jne 0x18009244f
ucomiss xmm3, xmm9
jp 0x18009244f
je 0x1800924d3
cmp byte [r15 + 0x45], 0
je 0x180092496
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm11
mov r9d, 0xff000000
lea r8, [rbp + 0x24]
lea rdx, [rbp + 0x2c]
mov rcx, rax
call fcn.18003dfe0
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm12
mov r9d, ebx
lea r8, [rbp + 0x24]
lea rdx, [rbp + 0x2c]
mov rcx, rax
call fcn.18003dfe0
movups xmm0, xmmword [r15 + 0x34]
movups xmmword [rbp + 0x1d0], xmm0
lea rcx, [rbp + 0x1d0]
call fcn.180009cf0
mov ebx, eax
movsd xmm3, qword [rbp + 0x438]
cvtpd2ps xmm3, xmm3
movsd xmm2, qword [rbp + 0x430]
cvtpd2ps xmm2, xmm2
movss dword [rbp + 0x34], xmm2
movss dword [rbp + 0x38], xmm3
movsd xmm1, qword [rbp + 0x3f8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x3f0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x3c], xmm0
movss dword [rbp + 0x40], xmm1
ucomiss xmm0, xmm9
jp 0x180092545
jne 0x180092545
ucomiss xmm1, xmm9
jp 0x180092545
je 0x1800925de
ucomiss xmm2, xmm9
jp 0x180092559
jne 0x180092559
ucomiss xmm3, xmm9
jp 0x180092559
je 0x1800925de
cmp byte [r15 + 0x45], 0
je 0x1800925a0
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm11
mov r9d, 0xff000000
lea r8, [rbp + 0x34]
lea rdx, [rbp + 0x3c]
mov rcx, rax
call fcn.18003dfe0
mov rax, qword [0x180420950]
mov rcx, qword [rax + 0x4180]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx + 0x40]
call fcn.18000ecc0
movss dword [rsp + 0x20], xmm12
mov r9d, ebx
lea r8, [rbp + 0x34]
lea rdx, [rbp + 0x3c]
mov rcx, rax
call fcn.18003dfe0
nop
lea rcx, [rbp + 0x320]
call fcn.180092aa0
mov r14, qword [rbp + 0x370]
cmp byte [rbp + 0x378], 0
je 0x180092621
cmp qword [0x180420930], 0
je 0x180092621
test r14, r14
je 0x180092621
mov rcx, qword [rbp + 0x368]
mov rax, qword [rcx]
mov rdx, r14
mov r8, qword [rax + 0xb0]
call r8
nop
mov r15, qword [rbp + 0xc8]
mov r12, qword [rbp + 0xd0]
mov r13, qword [rbp + 0xd8]
mov rsi, qword [rbp + 0xe0]
mov rbx, qword [rbp + 0x1e0]
movabs r14, 0x100000001b3
add rsi, 0x20
mov qword [rbp + 0xe0], rsi
mov qword [rsp + 0x50], rsi
cmp rsi, rbx
je 0x180092790
xor edi, edi
jmp 0x18008fa30
lea rcx, [rbp + 0x320]
call fcn.180092aa0
nop
cmp byte [rbp + 0x378], 0
je 0x180092621
cmp qword [0x180420930], 0
je 0x180092621
mov rdx, qword [rbp + 0x370]
test rdx, rdx
je 0x180092621
mov rcx, qword [rbp + 0x368]
mov rax, qword [rcx]
jmp 0x180092616
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov r14d, dword [rsp + 0x58]
lea rcx, [rbp + 0x3a0]
call fcn.18008d820
nop
test r12, r12
je 0x1800927cd
test r14d, r14d
jle 0x1800927c4
mov rbx, r12
mov edi, r14d
mov rcx, qword [rbx]
call fcn.1800ad85c
lea rbx, [rbx + 8]
sub rdi, 1
jne 0x1800927b2
mov rcx, r12
call fcn.1800ad85c
nop
test r13, r13
je 0x1800927fa
mov eax, dword [rsp + 0x5c]
test eax, eax
jle 0x1800927f2
mov rbx, r13
mov edi, eax
nop
mov rcx, qword [rbx]
call fcn.1800ad85c
lea rbx, [rbx + 8]
sub rdi, 1
jne 0x1800927e0
mov rcx, r13
call fcn.1800ad85c
mov rcx, qword [rbp + 0x440]
xor rcx, rsp
call fcn.1800ad110
lea r11, [rsp + 0x5f0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret