Function at 0x14002b910
Capabilities:
Encode data using xor
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 - 0x848]
sub rsp, 0x920
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 [0x1401ef0c0]
xor rax, rsp
mov qword [rbp + 0x778], rax
mov rdx, rcx
mov qword [rbp + 0x350], rcx
mov qword [rbp + 0x6d8], rcx
xor r12d, r12d
mov rax, qword [0x140273d10]
xorps xmm13, xmm13
comiss xmm13, dword [rax + 0x2f0]
jb 0x14002ba3a
cmp byte [0x1401efd08], r12b
je 0x14002b9c8
call fcn.14002b880
mov byte [0x1401efd08], r12b
mov rcx, rdx
call fcn.140008e00
xor al, al
mov rcx, qword [rbp + 0x778]
xor rcx, rsp
call fcn.14015d760
lea r11, [rsp + 0x920]
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
mov byte [0x1401efd08], 1
cmp qword [rax + 0x260], 0
jne 0x14002ba52
mov byte [rax + 0x2eb], 0
call fcn.1400ec4d0
mov r9, rax
mov rdx, qword [0x140273d10]
movss xmm0, dword [rdx + 8]
movss dword [rbp + 0xa0], xmm0
movss xmm12, dword [0x1401cb0a4]
mov dword [rbp + 0xa4], 0x42480000
lea rcx, [rbp + 0x430]
call fcn.1400ec540
lea r8, [rbp + 0xa0]
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
mov byte [0x1402718c0], al
call fcn.1400ec4d0
mov dword [rbp + 0xb8], 0
mov dword [rbp + 0xbc], 0x41a00000
lea r8, [rbp + 0xb8]
lea rdx, [rbp + 0x438]
mov rcx, qword [0x140273d10]
call fcn.1400ec5b0
lea r8, [rcx + 8]
lea rdx, [rbp + 0x468]
mov rcx, rax
call fcn.1400ec5b0
movss xmm10, dword [0x1401cb004]
movaps xmm2, xmm10
lea rdx, [rbp + 0x440]
mov rcx, rax
call fcn.1400ec610
mov r9, qword [0x140273d10]
cmp qword [r9 + 0x260], 0
jne 0x14002bcc7
mov ebx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rbx + rcx]
cmp dword [0x140276b60], eax
jle 0x14002bb64
lea rcx, [0x140276b60]
call fcn.14015dba8
cmp dword [0x140276b60], 0xffffffff
jne 0x14002bb64
mov qword [0x140276b78], 0
lea rcx, [0x140276b60]
call fcn.14015db3c
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rbx + rcx]
cmp dword [0x140276b44], eax
jle 0x14002bba7
lea rcx, [0x140276b44]
call fcn.14015dba8
cmp dword [0x140276b44], 0xffffffff
jne 0x14002bba7
mov qword [0x140276b70], 0
lea rcx, [0x140276b44]
call fcn.14015db3c
call fcn.1400ec4d0
mov rdx, rax
lea rcx, [rbp + 0x700]
call fcn.1400ec540
lea r8, [rbp + 0x700]
lea rdx, [rbp + 0x4b0]
lea rcx, [0x140276b78]
call fcn.1400ec5e0
movss xmm3, dword [rax + 4]
movss xmm2, dword [rax]
movss dword [0x140276b70], xmm2
movss dword [0x140276b74], xmm3
mov rax, qword [0x140273d10]
cmp byte [rax + 0x2ed], 0
jne 0x14002bc92
cmp byte [rax + 0x2e8], 0
jne 0x14002bc47
call fcn.1400ec4d0
mov edx, 1
call fcn.1400ec3d0
test al, al
je 0x14002bc37
cmp byte [0x1402718c0], 0
je 0x14002bc37
mov rax, qword [0x140273d10]
mov byte [rax + 0x2e8], 1
jmp 0x14002bc92
mov rax, qword [0x140273d10]
cmp byte [rax + 0x2e8], 0
je 0x14002bc92
call fcn.1400ec4d0
mov edx, 1
call fcn.1400ec3d0
test al, al
je 0x14002bc61
call fcn.1400ec580
jmp 0x14002bc92
mov rax, qword [0x140273d10]
cmp byte [rax + 0x2e8], 0
je 0x14002bc92
call fcn.1400ec4d0
mov edx, 1
call fcn.1400ec3d0
test al, al
jne 0x14002bc92
mov rax, qword [0x140273d10]
mov byte [rax + 0x2e8], 0
call fcn.1400ec4d0
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.1400ec540
movss xmm1, dword [rsp + 0x50]
movss dword [0x140276b78], xmm1
movss xmm2, dword [rsp + 0x54]
movss dword [0x140276b7c], xmm2
mov r9, qword [0x140273d10]
mov rax, qword [0x1402718d8]
movss xmm1, dword [rax + 0x10]
movss xmm2, dword [rax + 0x14]
cvttss2si eax, xmm1
mov dword [rbp + 0x38], eax
mov dword [rbp + 0x40], 0x2d0
cvttss2si eax, dword [r9 + 8]
mov dword [rbp + 0x44], eax
lea r8, [rbp + 0x38]
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x44]
call fcn.14002a790
movd xmm0, dword [rax]
cvtdq2ps xmm0, xmm0
movss dword [r9 + 8], xmm0
cvttss2si eax, xmm2
mov dword [rbp + 0x48], eax
mov dword [rbp + 0x4c], 0x1e0
mov r9, qword [0x140273d10]
cvttss2si eax, dword [r9 + 0xc]
mov dword [rbp + 0x50], eax
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x4c]
lea rcx, [rbp + 0x50]
call fcn.14002a790
movd xmm0, dword [rax]
cvtdq2ps xmm0, xmm0
movss dword [r9 + 0xc], xmm0
mov r9, qword [0x140273d10]
subss xmm1, dword [r9 + 8]
cvttss2si eax, xmm1
mov dword [rbp + 0x54], eax
mov dword [rbp + 0x58], r12d
cvttss2si eax, dword [r9]
mov dword [rbp + 0x5c], eax
lea r8, [rbp + 0x54]
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0x5c]
call fcn.14002a790
movd xmm0, dword [rax]
cvtdq2ps xmm0, xmm0
movss dword [r9], xmm0
mov r9, qword [0x140273d10]
subss xmm2, dword [r9 + 0xc]
cvttss2si eax, xmm2
mov dword [rbp + 0x60], eax
mov dword [rbp + 0x3c], r12d
cvttss2si eax, dword [r9 + 4]
mov dword [rbp + 0x64], eax
lea r8, [rbp + 0x60]
lea rdx, [rbp + 0x3c]
lea rcx, [rbp + 0x64]
call fcn.14002a790
movd xmm0, dword [rax]
cvtdq2ps xmm0, xmm0
movss dword [r9 + 4], xmm0
xorps xmm1, xmm1
xor eax, eax
movups xmmword [rbp + 0x3f8], xmm1
movups xmmword [rbp + 0x408], xmm1
mov qword [rbp + 0x418], rax
lea rcx, [rbp + 0x3f8]
call fcn.14000cbb0
mov rdx, qword [0x140273d10]
add rdx, 0x18
mov rcx, rax
call fcn.140033cc0
lea rcx, [rbp + 0x3f8]
call fcn.140010720
mov dword [rsp + 0x20], 0xff
mov edx, 0xf
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x358]
call fcn.14000b000
mov r10, qword [0x140273d10]
movzx ecx, byte [rax + 3]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x6e0]
call fcn.14000b000
movss xmm9, dword [r10 + 0xc]
subss xmm9, xmm12
movss xmm7, dword [r10 + 8]
movss xmm8, dword [r10 + 4]
addss xmm8, xmm12
movss xmm6, dword [r10]
addss xmm6, dword [0x1401cb0d8]
mov eax, dword [rbp + 0x6e0]
mov dword [rbp + 0x6e0], eax
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 0x528]
lea rcx, [rbp + 0x6e0]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
addss xmm9, xmm8
subss xmm7, dword [0x1401cb0d8]
addss xmm7, xmm6
movss dword [rsp + 0x50], xmm7
movss dword [rsp + 0x54], xmm9
movss dword [rsp + 0x58], xmm6
movss dword [rsp + 0x5c], xmm8
mov dword [rsp + 0x28], r12d
movss dword [rsp + 0x20], xmm13
mov r9d, eax
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x58]
mov rcx, r10
call fcn.140073900
mov dword [rsp + 0x20], 0xff
mov edx, 0x17
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x35c]
call fcn.14000b000
mov r10, qword [0x140273d10]
movzx ecx, byte [rax + 3]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x6e0]
call fcn.14000b000
movss xmm7, dword [r10 + 8]
movss xmm8, dword [r10 + 4]
movss xmm6, dword [r10]
mov eax, dword [rbp + 0x6e0]
mov dword [rbp + 0x6e0], eax
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 0x4e8]
lea rcx, [rbp + 0x6e0]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movaps xmm0, xmm8
addss xmm0, xmm12
addss xmm7, xmm6
movss dword [rsp + 0x50], xmm7
movss dword [rsp + 0x54], xmm0
movss dword [rsp + 0x58], xmm6
movss dword [rsp + 0x5c], xmm8
mov dword [rsp + 0x28], r12d
movss dword [rsp + 0x20], xmm13
mov r9d, eax
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x58]
mov rcx, r10
call fcn.140073900
mov r10, qword [0x140273d10]
mov rcx, qword [0x1402723e8]
movzx eax, byte [rcx + 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x2f0]
cvttss2si eax, xmm0
movzx r9d, byte [rcx + 2]
movzx r8d, byte [rcx + 1]
movzx edx, byte [rcx]
mov dword [rsp + 0x20], eax
lea rcx, [rbp + 0x6e0]
call fcn.14000b000
movss xmm1, dword [r10 + 4]
addss xmm1, dword [0x1401cb02c]
movss xmm0, dword [r10]
addss xmm0, dword [0x1401cb080]
movss dword [rbp + 0xc0], xmm0
movss dword [rbp + 0xc4], xmm1
movabs rax, 0xd7c8110d913b6ea
mov qword [rbp + 0x1e0], rax
movabs r13, 0x4c2ed7313d22877c
mov qword [rbp + 0x1e8], r13
movabs rbx, 0xd7c8110d913b6ab
mov qword [rbp + 0x6f0], rbx
mov qword [rbp + 0x6f8], r13
movdqa xmm0, xmmword [rbp + 0x6f0]
xorps xmm0, xmmword [rbp + 0x1e0]
movdqa xmmword [rbp + 0x1e0], xmm0
lea rdx, [rbp + 0x1e0]
lea rcx, [rbp + 0x508]
call fcn.140008b20
mov dword [rsp + 0x20], 6
mov r9d, 6
mov r8d, dword [rbp + 0x6e0]
lea rdx, [rbp + 0xc0]
mov rcx, rax
call fcn.140082420
movabs r14, 0x3712ee79aa61d3fd
mov qword [rbp + 0x310], r14
movabs rsi, 0x6c03f7000d0cb75c
mov qword [rbp + 0x318], rsi
movabs rdi, 0xc87eaf2d447455f
mov qword [rbp + 0x320], rdi
movabs r15, 0xab483dd311940e3e
mov qword [rbp + 0x328], r15
mov qword [rbp + 0x720], rbx
mov qword [rbp + 0x728], r13
movabs rbx, 0xc87eaf2b533201d
mov qword [rbp + 0x730], rbx
mov qword [rbp + 0x738], r15
movdqa xmm0, xmmword [rbp + 0x310]
xorps xmm0, xmmword [rbp + 0x720]
movdqa xmmword [rbp + 0x310], xmm0
movdqa xmm1, xmmword [rbp + 0x320]
xorps xmm1, xmmword [rbp + 0x730]
movdqa xmmword [rbp + 0x320], xmm1
lea rdx, [rbp + 0x310]
lea rcx, [rbp + 0x4b8]
call fcn.140008b20
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x700]
call fcn.140082310
mov dword [rsp + 0x20], 0xff
mov edx, 0x64
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x360]
call fcn.14000b000
mov r10, qword [0x140273d10]
movzx ecx, byte [rax + 3]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x6e0]
call fcn.14000b000
movss xmm2, dword [r10 + 4]
addss xmm2, dword [0x1401cb02c]
movss xmm1, dword [r10 + 8]
addss xmm1, dword [r10]
movss xmm0, dword [rbp + 0x700]
mulss xmm0, dword [0x1401caed0]
subss xmm1, xmm0
subss xmm1, xmm10
movss dword [rbp + 0xe8], xmm1
movss dword [rbp + 0xec], xmm2
mov qword [rbp + 0x330], r14
mov qword [rbp + 0x338], rsi
mov qword [rbp + 0x340], rdi
mov qword [rbp + 0x348], r15
movabs rax, 0xd7c8110d913b6ab
mov qword [rbp + 0x720], rax
mov qword [rbp + 0x728], r13
mov qword [rbp + 0x730], rbx
mov qword [rbp + 0x738], r15
movdqa xmm0, xmmword [rbp + 0x720]
xorps xmm0, xmmword [rbp + 0x330]
movdqa xmmword [rbp + 0x330], xmm0
movdqa xmm1, xmmword [rbp + 0x340]
xorps xmm1, xmmword [rbp + 0x730]
movdqa xmmword [rbp + 0x340], xmm1
lea rdx, [rbp + 0x330]
lea rcx, [rbp + 0x538]
call fcn.140008b20
mov dword [rsp + 0x20], r12d
mov r9d, 6
mov r8d, dword [rbp + 0x6e0]
lea rdx, [rbp + 0xe8]
mov rcx, rax
call fcn.140082420
mov dword [rsp + 0x20], 0xff
mov edx, 0x13
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x364]
call fcn.14000b000
mov r10, qword [0x140273d10]
movzx ecx, byte [rax + 3]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x6e0]
call fcn.14000b000
movss xmm8, dword [r10 + 0xc]
subss xmm8, xmm12
movss xmm7, dword [r10 + 4]
addss xmm7, xmm12
movss xmm6, dword [r10]
mov eax, dword [rbp + 0x6e0]
mov dword [rbp + 0x6e0], eax
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 0x4f8]
lea rcx, [rbp + 0x6e0]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
addss xmm8, xmm7
movaps xmm0, xmm6
movss xmm10, dword [0x1401cb0d8]
addss xmm0, xmm10
movss dword [rsp + 0x50], xmm0
movss dword [rsp + 0x54], xmm8
movss dword [rsp + 0x58], xmm6
movss dword [rsp + 0x5c], xmm7
mov dword [rsp + 0x28], r12d
movss dword [rsp + 0x20], xmm13
mov r9d, eax
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x58]
mov rcx, r10
call fcn.140073900
mov r13d, r12d
mov dword [rsp + 0x40], r12d
mov r15, qword [0x140273d10]
mov rax, qword [r15 + 0x48]
sub rax, qword [r15 + 0x40]
sar rax, 6
movabs r14, 0x666666666666666
movss xmm2, dword [0x1401cb0b0]
movss xmm7, dword [0x1401caf58]
movsd xmm9, qword [0x1401caf30]
movsd xmm8, qword [0x1401caf28]
movss xmm15, dword [0x1401cb110]
test rax, rax
je 0x14002d51c
mov dword [rsp + 0x60], 0x43160000
movss xmm14, dword [0x1401cb058]
mov dword [rsp + 0x64], 0x41f00000
mov edx, r12d
lea rsi, [0x140271c18]
mov ebx, dword [rbp + 0x72c]
jmp 0x14002c469
movss xmm10, dword [0x1401cb0d8]
movd xmm11, edx
cvtdq2ps xmm11, xmm11
mulss xmm11, xmm14
addss xmm11, xmm2
addss xmm11, dword [r15 + 4]
movss xmm12, dword [r15]
addss xmm12, xmm13
movss dword [rsp + 0x68], xmm12
movss dword [rsp + 0x6c], xmm11
mov rdx, qword [0x140271bd8]
mov rax, qword [rdx + 8]
mov rcx, rdx
cmp byte [rax + 0x19], 0
jne 0x14002c4c8
nop
cmp dword [rax + 0x1c], r13d
jge 0x14002c4bc
mov rax, qword [rax + 0x10]
jmp 0x14002c4c2
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002c4b0
cmp byte [rcx + 0x19], 0
jne 0x14002c4d4
cmp r13d, dword [rcx + 0x1c]
jge 0x14002c4d7
mov rcx, rdx
cmp rcx, rdx
jne 0x14002c63b
mov dword [rsp + 0x50], r13d
mov dword [rsp + 0x54], 0
lea r8, [rsp + 0x50]
lea rdx, [rbp + 0x750]
lea rcx, [0x140271bd8]
call fcn.140036460
mov dword [rbp + 0xf0], r13d
mov dword [rbp + 0xf4], 0
mov rdi, qword [0x140271c18]
mov rdx, qword [rdi + 8]
mov ecx, r12d
mov r8, rdi
mov rax, rdx
cmp byte [rdx + 0x19], 0
jne 0x14002c553
mov rdx, rax
cmp dword [rax + 0x1c], r13d
jge 0x14002c542
mov ecx, r12d
mov rax, qword [rax + 0x10]
jmp 0x14002c54d
mov ecx, 1
mov r8, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002c530
mov qword [rbp + 0x118], rdx
mov dword [rbp + 0x120], ecx
mov dword [rbp + 0x124], ebx
cmp byte [r8 + 0x19], 0
jne 0x14002c573
cmp r13d, dword [r8 + 0x1c]
jge 0x14002c5ed
cmp qword [0x140271c20], r14
je 0x14002fa9c
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x38], r12
mov ecx, 0x28
call fcn.14015d780
mov qword [rbp - 0x38], rax
mov rcx, qword [rbp + 0xf0]
mov qword [rax + 0x1c], rcx
mov rax, qword [rbp - 0x38]
mov qword [rax], rdi
mov rax, qword [rbp - 0x38]
mov qword [rax + 8], rdi
mov rax, qword [rbp - 0x38]
mov qword [rax + 0x10], rdi
mov rax, qword [rbp - 0x38]
mov byte [rax + 0x18], 0
mov rax, qword [rbp - 0x38]
mov byte [rax + 0x19], 0
mov r8, qword [rbp - 0x38]
mov qword [rbp - 0x38], r12
movups xmm0, xmmword [rbp + 0x118]
movaps xmmword [rbp + 0x740], xmm0
lea rdx, [rbp + 0x740]
mov rcx, rsi
call fcn.140009ba0
mov dword [rsp + 0x58], r13d
mov dword [rsp + 0x5c], 0
lea r8, [rsp + 0x58]
lea rdx, [rbp + 0x3a8]
lea rcx, [0x140271c08]
call fcn.140036460
mov dword [rbp - 0x80], r13d
mov dword [rbp - 0x7c], 0
lea r8, [rbp - 0x80]
lea rdx, [rbp + 0x3c0]
lea rcx, [0x140271bb8]
call fcn.140036460
mov r15, qword [0x140273d10]
mov rax, qword [0x140272c18]
test rax, rax
jne 0x14002c66d
lea ecx, [rax + 8]
call fcn.14015d780
mov qword [rbp + 0x6f0], rax
xor ecx, ecx
mov qword [rax], rcx
mov dword [rax + 4], r12d
mov qword [0x140272c18], rax
mov r15, qword [0x140273d10]
movss xmm1, dword [rax]
comiss xmm1, xmm12
jbe 0x14002c794
movss xmm2, dword [rax + 4]
comiss xmm2, xmm11
jbe 0x14002c794
movaps xmm0, xmm12
addss xmm0, xmm10
comiss xmm0, xmm1
jbe 0x14002c794
movaps xmm0, xmm11
addss xmm0, xmm14
comiss xmm0, xmm2
jbe 0x14002c794
mov rax, qword [0x1402718d8]
movss xmm6, dword [rax + 0x18]
mulss xmm6, xmm7
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140033ba0
addss xmm6, dword [rax]
movss dword [rax], xmm6
mov dword [rbp + 0x68], 0x3f800000
mov dword [rbp + 0x6c], 0
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140033ba0
mov rcx, rax
lea r8, [rbp + 0x68]
lea rdx, [rbp + 0x6c]
call fcn.14000bf80
movss xmm6, dword [rax]
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140033ba0
movss dword [rax], xmm6
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140033ba0
movss xmm0, dword [rax]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm9
movaps xmm1, xmm0
mulsd xmm1, xmm0
mulsd xmm1, xmm0
addsd xmm1, xmm9
cvtpd2ps xmm6, xmm1
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bd8]
call fcn.140033ba0
movss dword [rax], xmm6
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bd8]
call fcn.140033ba0
movss xmm0, dword [rax]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm8
jb 0x14002c87b
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bd8]
call fcn.140033ba0
mov dword [rax], 0x3f800000
jmp 0x14002c87b
cmp r13d, dword [r15 + 0x68]
je 0x14002c88c
mov rax, qword [0x1402718d8]
movss xmm6, dword [rax + 0x18]
mulss xmm6, xmm7
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140033ba0
movss xmm0, dword [rax]
subss xmm0, xmm6
movss dword [rax], xmm0
mov dword [rbp], 0x3f800000
mov dword [rbp + 4], 0
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140033ba0
mov rcx, rax
lea r8, [rbp]
lea rdx, [rbp + 4]
call fcn.14000bf80
movss xmm6, dword [rax]
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140033ba0
movss dword [rax], xmm6
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140033ba0
movss xmm0, dword [rax]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm9
movaps xmm1, xmm0
mulsd xmm1, xmm0
mulsd xmm1, xmm0
addsd xmm1, xmm9
cvtpd2ps xmm6, xmm1
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bd8]
call fcn.140033ba0
movss dword [rax], xmm6
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bd8]
call fcn.140033ba0
movss xmm0, dword [0x1401cae94]
comiss xmm0, dword [rax]
jb 0x14002c87b
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bd8]
call fcn.140033ba0
mov dword [rax], r12d
mov r15, qword [0x140273d10]
cmp r13d, dword [r15 + 0x68]
jne 0x14002c9b2
mov rax, qword [0x1402718d8]
movss xmm6, dword [rax + 0x18]
mulss xmm6, xmm7
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bb8]
call fcn.140033ba0
addss xmm6, dword [rax]
movss dword [rax], xmm6
mov dword [rbp + 8], 0x3f800000
mov dword [rbp + 0xc], 0
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bb8]
call fcn.140033ba0
mov rcx, rax
lea r8, [rbp + 8]
lea rdx, [rbp + 0xc]
call fcn.14000bf80
movss xmm6, dword [rax]
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bb8]
call fcn.140033ba0
movss dword [rax], xmm6
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bb8]
call fcn.140033ba0
movss xmm0, dword [rax]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm9
movaps xmm1, xmm0
mulsd xmm1, xmm0
mulsd xmm1, xmm0
addsd xmm1, xmm9
cvtpd2ps xmm6, xmm1
lea rdx, [rsp + 0x40]
lea rcx, [0x140271c08]
call fcn.140033ba0
movss dword [rax], xmm6
mov rdx, qword [0x140271c08]
mov rax, qword [rdx + 8]
mov rcx, rdx
cmp byte [rax + 0x19], 0
jne 0x14002c96f
cmp dword [rax + 0x1c], r13d
jge 0x14002c963
mov rax, qword [rax + 0x10]
jmp 0x14002c969
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002c957
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r13d, dword [rcx + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [rcx + 0x20]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm8
jb 0x14002caa6
lea rdx, [rsp + 0x40]
lea rcx, [0x140271c08]
call fcn.140033ba0
mov dword [rax], 0x3f800000
jmp 0x14002ca9f
mov rax, qword [0x1402718d8]
movss xmm6, dword [rax + 0x18]
mulss xmm6, xmm7
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bb8]
call fcn.140033ba0
movss xmm0, dword [rax]
subss xmm0, xmm6
movss dword [rax], xmm0
mov dword [rbp + 0x10], 0x3f800000
mov dword [rbp + 0x14], 0
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bb8]
call fcn.140033ba0
mov rcx, rax
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x14]
call fcn.14000bf80
movss xmm6, dword [rax]
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bb8]
call fcn.140033ba0
movss dword [rax], xmm6
lea rdx, [rsp + 0x40]
lea rcx, [0x140271bb8]
call fcn.140033ba0
movss xmm0, dword [rax]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm9
movaps xmm1, xmm0
mulsd xmm1, xmm0
mulsd xmm1, xmm0
addsd xmm1, xmm9
cvtpd2ps xmm6, xmm1
lea rdx, [rsp + 0x40]
lea rcx, [0x140271c08]
call fcn.140033ba0
movss dword [rax], xmm6
lea rdx, [rsp + 0x40]
lea rcx, [0x140271c08]
call fcn.140033ba0
movss xmm0, dword [0x1401cae94]
comiss xmm0, dword [rax]
jb 0x14002ca9f
lea rdx, [rsp + 0x40]
lea rcx, [0x140271c08]
call fcn.140033ba0
mov dword [rax], r12d
mov rdx, qword [0x140271c08]
mov rcx, qword [0x1402723e8]
movzx eax, byte [rcx + 3]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm0, xmm13
cvttss2si esi, xmm0
movzx r14d, byte [rcx]
movzx r15d, byte [rcx + 1]
movzx r12d, byte [rcx + 2]
mov rax, qword [rdx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002caf8
nop dword [rax]
cmp dword [rax + 0x1c], r13d
jge 0x14002caec
mov rax, qword [rax + 0x10]
jmp 0x14002caf2
mov rdx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002cae0
cmp byte [rdx + 0x19], 0
jne 0x14002fa8f
cmp r13d, dword [rdx + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [rdx + 0x20]
mulss xmm0, dword [0x1401caea0]
mov rax, qword [0x140273d10]
mulss xmm0, dword [rax + 0x2f0]
mulss xmm1, xmm0
cvttss2si edi, xmm1
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r11, rax
movzx ecx, dil
movd xmm10, ecx
cvtdq2ps xmm10, xmm10
divss xmm10, xmm15
movd xmm9, r12d
cvtdq2ps xmm9, xmm9
divss xmm9, xmm15
movd xmm8, r15d
cvtdq2ps xmm8, xmm8
divss xmm8, xmm15
movd xmm7, r14d
cvtdq2ps xmm7, xmm7
divss xmm7, xmm15
movss dword [rbp + 0x1f0], xmm7
movss dword [rbp + 0x1f4], xmm8
movss dword [rbp + 0x1f8], xmm9
movss dword [rbp + 0x1fc], xmm10
lea rcx, [rbp + 0x1f0]
call fcn.140053cc0
mov r10d, eax
movzx ecx, sil
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
divss xmm6, xmm15
movss dword [rbp + 0x200], xmm7
movss dword [rbp + 0x204], xmm8
movss dword [rbp + 0x208], xmm9
movss dword [rbp + 0x20c], xmm6
lea rcx, [rbp + 0x200]
call fcn.140053cc0
mov r9d, eax
movss dword [rbp + 0x210], xmm7
movss dword [rbp + 0x214], xmm8
movss dword [rbp + 0x218], xmm9
movss dword [rbp + 0x21c], xmm6
lea rcx, [rbp + 0x210]
call fcn.140053cc0
mov r8d, eax
movss dword [rbp + 0x220], xmm7
movss dword [rbp + 0x224], xmm8
movss dword [rbp + 0x228], xmm9
movss dword [rbp + 0x22c], xmm10
lea rcx, [rbp + 0x220]
call fcn.140053cc0
movaps xmm13, xmm11
addss xmm13, xmm14
movaps xmm15, xmm12
addss xmm15, dword [0x1401cb0d8]
movss dword [rbp - 0x48], xmm15
movss dword [rbp - 0x44], xmm13
movss dword [rbp + 0x6e0], xmm12
movss dword [rbp + 0x6e4], xmm11
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r9d
mov dword [rsp + 0x20], r8d
mov r9d, eax
lea r8, [rbp - 0x48]
lea rdx, [rbp + 0x6e0]
mov rcx, r11
call fcn.140073ab0
mov rcx, qword [0x140271c08]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002cce8
nop dword [rax]
cmp dword [rax + 0x1c], r13d
jge 0x14002ccdc
mov rax, qword [rax + 0x10]
jmp 0x14002cce2
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002ccd0
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r13d, dword [rcx + 0x1c]
jl 0x14002fa8f
mov rax, qword [0x140273d10]
movss xmm1, dword [rax + 0x2f0]
mulss xmm1, dword [rcx + 0x20]
mov rcx, qword [0x1402723e8]
movzx eax, byte [rcx + 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si edi, xmm0
movzx r15d, byte [rcx]
movzx r14d, byte [rcx + 1]
movzx esi, byte [rcx + 2]
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r10, rax
movzx ecx, dil
movd xmm3, ecx
cvtdq2ps xmm3, xmm3
movss xmm6, dword [0x1401cb110]
divss xmm3, xmm6
movd xmm2, esi
cvtdq2ps xmm2, xmm2
divss xmm2, xmm6
movd xmm1, r14d
cvtdq2ps xmm1, xmm1
divss xmm1, xmm6
movd xmm0, r15d
cvtdq2ps xmm0, xmm0
divss xmm0, xmm6
movss dword [rbp + 0x230], xmm0
movss dword [rbp + 0x234], xmm1
movss dword [rbp + 0x238], xmm2
movss dword [rbp + 0x23c], xmm3
lea rcx, [rbp + 0x230]
call fcn.140053cc0
movaps xmm14, xmm12
addss xmm14, dword [0x1401caf40]
movss dword [rsp + 0x78], xmm14
movss dword [rsp + 0x7c], xmm13
movss dword [rsp + 0x70], xmm12
movss dword [rsp + 0x74], xmm11
mov dword [rsp + 0x28], 0
xorps xmm7, xmm7
movss dword [rsp + 0x20], xmm7
mov r9d, eax
lea r8, [rsp + 0x78]
lea rdx, [rsp + 0x70]
mov rcx, r10
call fcn.140073900
mov rcx, qword [0x1402723e8]
movzx eax, byte [rcx + 3]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm0, xmm7
cvttss2si esi, xmm0
movzx r14d, byte [rcx]
movzx r15d, byte [rcx + 1]
movzx r12d, byte [rcx + 2]
mov rcx, qword [0x140271bd8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002ce68
nop dword [rax]
cmp dword [rax + 0x1c], r13d
jge 0x14002ce5c
mov rax, qword [rax + 0x10]
jmp 0x14002ce62
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002ce50
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r13d, dword [rcx + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [rcx + 0x20]
mulss xmm0, dword [0x1401caea0]
mov rax, qword [0x140273d10]
mulss xmm0, dword [rax + 0x2f0]
mulss xmm1, xmm0
cvttss2si edi, xmm1
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r11, rax
movzx ecx, dil
movd xmm10, ecx
cvtdq2ps xmm10, xmm10
divss xmm10, xmm6
movd xmm9, r12d
cvtdq2ps xmm9, xmm9
divss xmm9, xmm6
movd xmm8, r15d
cvtdq2ps xmm8, xmm8
divss xmm8, xmm6
movd xmm7, r14d
cvtdq2ps xmm7, xmm7
divss xmm7, xmm6
movss dword [rbp + 0x1d0], xmm7
movss dword [rbp + 0x1d4], xmm8
movss dword [rbp + 0x1d8], xmm9
movss dword [rbp + 0x1dc], xmm10
lea rcx, [rbp + 0x1d0]
call fcn.140053cc0
mov r10d, eax
movzx ecx, sil
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
divss xmm6, dword [0x1401cb110]
movss dword [rbp + 0x240], xmm7
movss dword [rbp + 0x244], xmm8
movss dword [rbp + 0x248], xmm9
movss dword [rbp + 0x24c], xmm6
lea rcx, [rbp + 0x240]
call fcn.140053cc0
mov r9d, eax
movss dword [rbp + 0x250], xmm7
movss dword [rbp + 0x254], xmm8
movss dword [rbp + 0x258], xmm9
movss dword [rbp + 0x25c], xmm6
lea rcx, [rbp + 0x250]
call fcn.140053cc0
mov r8d, eax
movss dword [rbp + 0x260], xmm7
movss dword [rbp + 0x264], xmm8
movss dword [rbp + 0x268], xmm9
movss dword [rbp + 0x26c], xmm10
lea rcx, [rbp + 0x260]
call fcn.140053cc0
movss dword [rbp - 0x78], xmm15
movss dword [rbp - 0x74], xmm13
movss dword [rbp - 0x70], xmm12
movss dword [rbp - 0x6c], xmm11
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r9d
mov dword [rsp + 0x20], r8d
mov r9d, eax
lea r8, [rbp - 0x78]
lea rdx, [rbp - 0x70]
mov rcx, r11
call fcn.140073ab0
mov rcx, qword [0x140271bd8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002d038
cmp dword [rax + 0x1c], r13d
jge 0x14002d02c
mov rax, qword [rax + 0x10]
jmp 0x14002d032
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002d020
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r13d, dword [rcx + 0x1c]
jl 0x14002fa8f
mov rax, qword [0x140273d10]
movss xmm1, dword [rax + 0x2f0]
mulss xmm1, dword [rcx + 0x20]
mov rcx, qword [0x1402723e8]
movzx eax, byte [rcx + 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si edi, xmm0
movzx r15d, byte [rcx]
movzx r14d, byte [rcx + 1]
movzx esi, byte [rcx + 2]
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r10, rax
movzx ecx, dil
movd xmm3, ecx
cvtdq2ps xmm3, xmm3
movss xmm15, dword [0x1401cb110]
divss xmm3, xmm15
movd xmm2, esi
cvtdq2ps xmm2, xmm2
divss xmm2, xmm15
movd xmm1, r14d
cvtdq2ps xmm1, xmm1
divss xmm1, xmm15
movd xmm0, r15d
cvtdq2ps xmm0, xmm0
divss xmm0, xmm15
movss dword [rbp + 0x270], xmm0
movss dword [rbp + 0x274], xmm1
movss dword [rbp + 0x278], xmm2
movss dword [rbp + 0x27c], xmm3
lea rcx, [rbp + 0x270]
call fcn.140053cc0
movss dword [rbp - 0x68], xmm14
movss dword [rbp - 0x64], xmm13
movss dword [rbp - 0x60], xmm12
movss dword [rbp - 0x5c], xmm11
xor r12d, r12d
mov dword [rsp + 0x28], r12d
xorps xmm13, xmm13
movss dword [rsp + 0x20], xmm13
mov r9d, eax
lea r8, [rbp - 0x68]
lea rdx, [rbp - 0x60]
mov rcx, r10
call fcn.140073900
mov rcx, qword [0x140273d10]
movss xmm0, dword [rcx + 0x2f0]
mulss xmm0, xmm15
cvttss2si eax, xmm0
mov word [rsp + 0x48], 0x9696
mov byte [rsp + 0x4a], 0x96
mov byte [rsp + 0x4b], al
addss xmm11, dword [0x1401cb004]
addss xmm12, dword [0x1401cb01c]
movss dword [rbp + 0xa8], xmm12
movss dword [rbp + 0xac], xmm11
movsxd rdi, r13d
shl rdi, 6
mov rdx, qword [rcx + 0x40]
add rdx, 0x20
add rdx, rdi
lea rcx, [rbp + 0x558]
call fcn.140008b60
mov dword [rsp + 0x20], 1
lea r9d, [r12 + 4]
mov r8d, dword [rsp + 0x48]
lea rdx, [rbp + 0xa8]
mov rcx, rax
call fcn.140082420
mov rdx, qword [0x140271c08]
mov rax, qword [rdx + 8]
cmp byte [rax + 0x19], r12b
jne 0x14002d209
cmp dword [rax + 0x1c], r13d
jge 0x14002d1fd
mov rax, qword [rax + 0x10]
jmp 0x14002d203
mov rdx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], r12b
je 0x14002d1f1
cmp byte [rdx + 0x19], r12b
jne 0x14002fa8f
cmp r13d, dword [rdx + 0x1c]
jl 0x14002fa8f
mov rcx, qword [0x140273d10]
movss xmm0, dword [rcx + 0x2f0]
mulss xmm0, dword [rdx + 0x20]
mulss xmm0, xmm15
cvttss2si eax, xmm0
mov word [rsp + 0x4c], 0xc8c8
mov byte [rsp + 0x4e], 0xc8
mov byte [rsp + 0x4f], al
movss dword [rbp + 0xb0], xmm12
movss dword [rbp + 0xb4], xmm11
mov rdx, qword [rcx + 0x40]
add rdx, 0x20
add rdx, rdi
lea rcx, [rbp + 0x578]
call fcn.140008b60
mov dword [rsp + 0x20], 1
mov r9d, 4
mov r8d, dword [rsp + 0x4c]
lea rdx, [rbp + 0xb0]
mov rcx, rax
call fcn.140082420
mov r15, qword [0x140273d10]
cmp dword [r15 + 0x68], r13d
je 0x14002d4c0
cmp qword [r15 + 0x260], r12
jne 0x14002d3ca
call fcn.1400ec4d0
mov r9, rax
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x420]
call fcn.1400ec540
mov r8, rax
lea rdx, [rsp + 0x68]
lea rcx, [rbp + 0x428]
call fcn.1400ec540
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
test al, al
je 0x14002d4b9
call fcn.1400ec4d0
mov edx, 1
call fcn.1400ec4a0
test al, al
je 0x14002d4b9
movabs rax, 0x6c28f573bc7fd3f8
mov qword [rbp + 0x280], rax
movabs rax, 0x4c2ed7313d22a41e
mov qword [rbp + 0x288], rax
movabs rax, 0xd7c8110d913b6ab
mov qword [rbp + 0x700], rax
movabs rax, 0x4c2ed7313d22877c
mov qword [rbp + 0x708], rax
movdqa xmm0, xmmword [rbp + 0x280]
xorps xmm0, xmmword [rbp + 0x700]
movdqa xmmword [rbp + 0x280], xmm0
lea rdx, [rbp + 0x280]
lea rcx, [rbp + 0x5b8]
call fcn.140008b20
mov rdi, rax
mov edx, r13d
lea rcx, [rbp + 0x598]
call fcn.1400121a0
nop
mov rdx, rax
mov rcx, rdi
call fcn.140034440
mov rcx, rax
call fcn.140039ad0
mov rcx, qword [0x140273d10]
mov qword [rcx + 0x260], rax
lea rcx, [rbp + 0x598]
call fcn.140008e00
nop
lea rcx, [rbp + 0x5b8]
call fcn.140008e00
jmp 0x14002d4b9
movabs rax, 0x6c28f573bc7fd3f8
mov qword [rbp + 0x290], rax
movabs rax, 0x4c2ed7313d22a41e
mov qword [rbp + 0x298], rax
movabs rax, 0xd7c8110d913b6ab
mov qword [rbp + 0x710], rax
movabs rax, 0x4c2ed7313d22877c
mov qword [rbp + 0x718], rax
movdqa xmm0, xmmword [rbp + 0x290]
xorps xmm0, xmmword [rbp + 0x710]
movdqa xmmword [rbp + 0x290], xmm0
lea rdx, [rbp + 0x290]
lea rcx, [rbp + 0x6b8]
call fcn.140008b20
mov rdi, rax
mov edx, r13d
lea rcx, [rbp + 0x5d8]
call fcn.1400121a0
nop
mov rdx, rax
mov rcx, rdi
call fcn.140034440
mov rcx, rax
call fcn.140039ad0
mov rsi, rax
mov rcx, qword [0x140273d10]
mov rdi, qword [rcx + 0x260]
lea rcx, [rbp + 0x5d8]
call fcn.140008e00
nop
lea rcx, [rbp + 0x6b8]
call fcn.140008e00
cmp rdi, rsi
jne 0x14002d4b9
call fcn.1400ec4d0
mov edx, 1
call fcn.1400ec3d0
test al, al
jne 0x14002d4b9
mov rax, qword [0x140273d10]
mov dword [rax + 0x68], r13d
mov rax, qword [0x140273d10]
mov qword [rax + 0x260], r12
mov r15, qword [0x140273d10]
inc r13d
movsxd rdx, r13d
mov dword [rsp + 0x40], r13d
mov rcx, qword [r15 + 0x48]
sub rcx, qword [r15 + 0x40]
sar rcx, 6
cmp rdx, rcx
movss xmm14, dword [0x1401cb058]
movsd xmm9, qword [0x1401caf30]
movss xmm7, dword [0x1401caf58]
movsd xmm8, qword [0x1401caf28]
movss xmm2, dword [0x1401cb0b0]
lea rsi, [0x140271c18]
movabs r14, 0x666666666666666
jb 0x14002c460
mov rcx, qword [r15 + 0x58]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002d547
mov edx, dword [r15 + 0x68]
nop
cmp dword [rax + 0x20], edx
jge 0x14002d53b
mov rax, qword [rax + 0x10]
jmp 0x14002d541
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002d530
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
mov eax, dword [rcx + 0x20]
cmp dword [r15 + 0x68], eax
jl 0x14002fa8f
mov rax, qword [rcx + 0x30]
sub rax, qword [rcx + 0x28]
movss xmm1, dword [0x1401cb0dc]
movss xmm12, dword [0x1401cb08c]
movss xmm11, dword [0x1401cb0e4]
cmp rax, 0x40
jb 0x14002d682
mov dword [rsp + 0x20], 0xff
mov edx, 0x16
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x368]
call fcn.14000b000
movzx ecx, byte [rax + 3]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r15 + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x6e0]
call fcn.14000b000
movss xmm7, dword [r15 + 8]
movss xmm8, dword [r15 + 4]
addss xmm8, xmm2
movss xmm6, dword [r15]
addss xmm6, xmm1
mov eax, dword [rbp + 0x6e0]
mov dword [rbp + 0x6e0], eax
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 0x4d8]
lea rcx, [rbp + 0x6e0]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movaps xmm0, xmm8
addss xmm0, xmm12
subss xmm7, xmm11
addss xmm7, xmm6
movss dword [rsp + 0x68], xmm7
movss dword [rsp + 0x6c], xmm0
movss dword [rsp + 0x60], xmm6
movss dword [rsp + 0x64], xmm8
mov dword [rsp + 0x28], r12d
movss dword [rsp + 0x20], xmm13
mov r9d, eax
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x60]
mov rcx, r10
call fcn.140073900
mov r15, qword [0x140273d10]
movss xmm1, dword [0x1401cb0dc]
mov r8, qword [r15 + 0x58]
mov qword [rsp + 0x58], r8
mov rax, qword [r8 + 8]
cmp byte [rax + 0x19], 0
jne 0x14002d6bc
mov ecx, dword [r15 + 0x68]
nop dword [rax]
cmp dword [rax + 0x20], ecx
jge 0x14002d6ab
mov rax, qword [rax + 0x10]
jmp 0x14002d6b1
mov r8, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002d6a0
mov qword [rsp + 0x58], r8
cmp byte [r8 + 0x19], 0
jne 0x14002fa8f
mov eax, dword [r8 + 0x20]
cmp dword [r15 + 0x68], eax
jl 0x14002fa8f
xor r12d, r12d
mov dword [rsp + 0x78], r12d
mov rdx, qword [r8 + 0x30]
mov r8, qword [r8 + 0x28]
mov rax, rdx
sub rax, r8
sar rax, 6
test rax, rax
je 0x14002f54a
mov qword [rsp + 0x50], r12
mov esi, dword [rbp + 0x72c]
mov r14d, dword [rbp + 0x72c]
mov ebx, dword [rbp + 0x72c]
mov edi, dword [rbp + 0x72c]
lea r11, [0x140271be8]
sub rdx, r8
sar rdx, 6
movss xmm10, dword [r15 + 8]
subss xmm10, xmm11
xorps xmm0, xmm0
test rdx, rdx
js 0x14002d73e
cvtsi2ss xmm0, rdx
jmp 0x14002d753
mov rax, rdx
shr rax, 1
and edx, 1
or rax, rdx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm10, xmm0
movss dword [rbp - 0x80], xmm10
movd xmm11, r12d
cvtdq2ps xmm11, xmm11
mulss xmm11, xmm10
movss xmm6, dword [0x1401caf0c]
addss xmm11, xmm6
addss xmm11, xmm1
movss xmm14, dword [r15 + 4]
addss xmm14, dword [0x1401cb0b0]
movss dword [rbp - 0x48], xmm14
addss xmm11, dword [r15]
movss dword [rbp + 0x6e0], xmm11
mov r13, qword [0x140271be8]
mov r8, qword [r13 + 8]
mov rcx, r13
mov rax, r8
movzx r10d, byte [r8 + 0x19]
test r10b, r10b
jne 0x14002d7d8
nop dword [rax]
cmp dword [rax + 0x1c], r12d
jge 0x14002d7cc
mov rax, qword [rax + 0x10]
jmp 0x14002d7d2
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002d7c0
cmp byte [rcx + 0x19], 0
jne 0x14002d7e4
cmp r12d, dword [rcx + 0x1c]
jge 0x14002d7e7
mov rcx, r13
cmp rcx, r13
jne 0x14002dc46
mov dword [rbp + 0xc8], r12d
mov dword [rbp + 0xcc], 0
xor edx, edx
mov r9, r13
mov rax, r8
test r10b, r10b
jne 0x14002d835
nop
mov r8, rax
mov ecx, dword [rax + 0x1c]
cmp ecx, r12d
jge 0x14002d821
mov rax, qword [rax + 0x10]
jmp 0x14002d827
mov r9, rax
mov rax, qword [rax]
xor edx, edx
cmp ecx, r12d
setge dl
cmp byte [rax + 0x19], 0
je 0x14002d810
mov qword [rbp + 0x118], r8
mov dword [rbp + 0x120], edx
mov dword [rbp + 0x124], edi
cmp byte [r9 + 0x19], 0
jne 0x14002d859
cmp r12d, dword [r9 + 0x1c]
jge 0x14002d8f0
movabs rax, 0x666666666666666
cmp qword [0x140271bf0], rax
je 0x14002fa9c
mov qword [rbp - 0x58], r11
mov qword [rbp - 0x50], 0
mov ecx, 0x28
call fcn.14015d780
mov qword [rbp - 0x50], rax
mov rcx, qword [rbp + 0xc8]
mov qword [rax + 0x1c], rcx
mov rax, qword [rbp - 0x50]
mov qword [rax], r13
mov rax, qword [rbp - 0x50]
mov qword [rax + 8], r13
mov rax, qword [rbp - 0x50]
mov qword [rax + 0x10], r13
mov rax, qword [rbp - 0x50]
mov byte [rax + 0x18], 0
mov rax, qword [rbp - 0x50]
mov byte [rax + 0x19], 0
mov r8, qword [rbp - 0x50]
mov qword [rbp - 0x50], 0
movups xmm0, xmmword [rbp + 0x118]
movaps xmmword [rbp + 0x6f0], xmm0
lea rdx, [rbp + 0x6f0]
lea rcx, [0x140271be8]
call fcn.140009ba0
mov r15, qword [0x140273d10]
mov dword [rbp + 0xd0], r12d
mov dword [rbp + 0xd4], 0
mov rcx, qword [0x140271ba8]
mov qword [rbp + 0x6f0], rcx
mov r9, qword [rcx + 8]
xor r8d, r8d
mov r10, rcx
mov rax, r9
cmp byte [r9 + 0x19], r8b
jne 0x14002d949
mov r9, rax
mov edx, dword [rax + 0x1c]
cmp edx, r12d
jge 0x14002d933
mov rax, qword [rax + 0x10]
jmp 0x14002d939
mov r10, rax
mov rax, qword [rax]
xor r8d, r8d
cmp edx, r12d
setge r8b
cmp byte [rax + 0x19], 0
je 0x14002d922
mov qword [rbp + 0x3c0], r9
mov dword [rbp + 0x3c8], r8d
mov dword [rbp + 0x3cc], ebx
cmp byte [r10 + 0x19], 0
jne 0x14002d96e
cmp r12d, dword [r10 + 0x1c]
jge 0x14002da16
movabs rax, 0x666666666666666
cmp qword [0x140271bb0], rax
je 0x14002fa9c
lea r15, [0x140271ba8]
mov qword [rbp - 0x10], r15
mov qword [rbp - 8], 0
mov ecx, 0x28
call fcn.14015d780
mov qword [rbp - 8], rax
mov rcx, qword [rbp + 0xd0]
mov qword [rax + 0x1c], rcx
mov rax, qword [rbp - 8]
mov rcx, qword [rbp + 0x6f0]
mov qword [rax], rcx
mov rax, qword [rbp - 8]
mov qword [rax + 8], rcx
mov rax, qword [rbp - 8]
mov qword [rax + 0x10], rcx
mov rax, qword [rbp - 8]
mov byte [rax + 0x18], 0
mov rax, qword [rbp - 8]
mov byte [rax + 0x19], 0
mov r8, qword [rbp - 8]
mov qword [rbp - 8], 0
movups xmm0, xmmword [rbp + 0x3c0]
movaps xmmword [rbp + 0x6f0], xmm0
lea rdx, [rbp + 0x6f0]
mov rcx, r15
call fcn.140009ba0
mov r15, qword [0x140273d10]
mov rcx, qword [0x140271ba8]
mov dword [rbp + 0xd8], r12d
mov dword [rbp + 0xdc], 0
mov r13, qword [0x140271bc8]
mov r9, qword [r13 + 8]
xor r8d, r8d
mov r10, r13
mov rax, r9
cmp byte [r9 + 0x19], r8b
jne 0x14002da68
mov r9, rax
mov edx, dword [rax + 0x1c]
cmp edx, r12d
jge 0x14002da52
mov rax, qword [rax + 0x10]
jmp 0x14002da58
mov r10, rax
mov rax, qword [rax]
xor r8d, r8d
cmp edx, r12d
setge r8b
cmp byte [rax + 0x19], 0
je 0x14002da41
mov qword [rbp + 0x3a8], r9
mov dword [rbp + 0x3b0], r8d
mov dword [rbp + 0x3b4], r14d
cmp byte [r10 + 0x19], 0
jne 0x14002da8e
cmp r12d, dword [r10 + 0x1c]
jge 0x14002db2f
movabs rax, 0x666666666666666
cmp qword [0x140271bd0], rax
je 0x14002fa9c
lea r15, [0x140271bc8]
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], 0
mov ecx, 0x28
call fcn.14015d780
mov qword [rbp - 0x18], rax
mov rcx, qword [rbp + 0xd8]
mov qword [rax + 0x1c], rcx
mov rax, qword [rbp - 0x18]
mov qword [rax], r13
mov rax, qword [rbp - 0x18]
mov qword [rax + 8], r13
mov rax, qword [rbp - 0x18]
mov qword [rax + 0x10], r13
mov rax, qword [rbp - 0x18]
mov byte [rax + 0x18], 0
mov rax, qword [rbp - 0x18]
mov byte [rax + 0x19], 0
mov r8, qword [rbp - 0x18]
mov qword [rbp - 0x18], 0
movups xmm0, xmmword [rbp + 0x3a8]
movaps xmmword [rbp + 0x6f0], xmm0
lea rdx, [rbp + 0x6f0]
mov rcx, r15
call fcn.140009ba0
mov r15, qword [0x140273d10]
mov rcx, qword [0x140271ba8]
mov dword [rbp + 0xe0], r12d
mov dword [rbp + 0xe4], 0
mov r13, qword [0x140271bf8]
mov r9, qword [r13 + 8]
xor r8d, r8d
mov r10, r13
mov rax, r9
cmp byte [r9 + 0x19], r8b
jne 0x14002db87
nop word [rax + rax]
mov r9, rax
mov edx, dword [rax + 0x1c]
cmp edx, r12d
jge 0x14002db71
mov rax, qword [rax + 0x10]
jmp 0x14002db77
mov r10, rax
mov rax, qword [rax]
xor r8d, r8d
cmp edx, r12d
setge r8b
cmp byte [rax + 0x19], 0
je 0x14002db60
mov qword [rbp + 0x720], r9
mov dword [rbp + 0x728], r8d
mov dword [rbp + 0x72c], esi
cmp byte [r10 + 0x19], 0
jne 0x14002dbac
cmp r12d, dword [r10 + 0x1c]
jge 0x14002dc54
movabs rax, 0x666666666666666
cmp qword [0x140271c00], rax
je 0x14002fa9c
lea r15, [0x140271bf8]
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x28], 0
mov ecx, 0x28
call fcn.14015d780
mov qword [rbp - 0x28], rax
mov rcx, qword [rbp + 0xe0]
mov qword [rax + 0x1c], rcx
mov rax, qword [rbp - 0x28]
mov qword [rax], r13
mov rax, qword [rbp - 0x28]
mov qword [rax + 8], r13
mov rax, qword [rbp - 0x28]
mov qword [rax + 0x10], r13
mov rax, qword [rbp - 0x28]
mov byte [rax + 0x18], 0
mov rax, qword [rbp - 0x28]
mov byte [rax + 0x19], 0
mov r8, qword [rbp - 0x28]
mov qword [rbp - 0x28], 0
movups xmm0, xmmword [rbp + 0x720]
movaps xmmword [rbp + 0x6f0], xmm0
lea rdx, [rbp + 0x6f0]
mov rcx, r15
call fcn.140009ba0
mov r15, qword [0x140273d10]
mov r13, qword [0x140271bf8]
mov rcx, qword [0x140271ba8]
cmp qword [0x140272c18], 0
jne 0x14002dc93
mov ecx, 8
call fcn.14015d780
mov qword [rbp + 0x6f0], rax
xor ecx, ecx
mov qword [rax], rcx
mov dword [rax + 4], ecx
mov qword [0x140272c18], rax
mov r15, qword [0x140273d10]
mov rcx, qword [0x140271ba8]
mov r13, qword [0x140271bf8]
mov rax, qword [0x140272c18]
movss xmm1, dword [rax]
mov r11, qword [0x1402718d8]
comiss xmm1, xmm11
jbe 0x14002df38
movss xmm2, dword [rax + 4]
comiss xmm2, xmm14
jbe 0x14002df38
movaps xmm0, xmm11
addss xmm0, xmm10
comiss xmm0, xmm1
jbe 0x14002df38
movaps xmm0, xmm14
addss xmm0, xmm12
comiss xmm0, xmm2
jbe 0x14002df38
movss xmm0, dword [r11 + 0x18]
mulss xmm0, dword [0x1401caf58]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002dd18
nop word [rax + rax]
cmp dword [rax + 0x1c], r12d
jge 0x14002dd0c
mov rax, qword [rax + 0x10]
jmp 0x14002dd12
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002dd00
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
addss xmm0, dword [rcx + 0x20]
movss dword [rcx + 0x20], xmm0
mov dword [rbp + 0x1c], 0x3f800000
mov dword [rbp + 0x18], 0
mov r9, qword [0x140271ba8]
mov r8, qword [r9 + 8]
mov rcx, r9
mov rax, r8
movzx r10d, byte [r8 + 0x19]
test r10b, r10b
jne 0x14002dd78
nop
cmp dword [rax + 0x1c], r12d
jge 0x14002dd6c
mov rax, qword [rax + 0x10]
jmp 0x14002dd72
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002dd60
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
add rcx, 0x20
movss xmm0, dword [rcx]
comiss xmm13, xmm0
seta al
lea rdx, [rbp + 0x18]
test al, al
cmove rdx, rcx
comiss xmm0, xmm6
seta al
lea rcx, [rbp + 0x1c]
test al, al
cmove rcx, rdx
movss xmm0, dword [rcx]
test r10b, r10b
jne 0x14002ddd9
nop
cmp dword [r8 + 0x1c], r12d
jge 0x14002ddcc
mov r8, qword [r8 + 0x10]
jmp 0x14002ddd2
mov r9, r8
mov r8, qword [r8]
cmp byte [r8 + 0x19], 0
je 0x14002ddc0
cmp byte [r9 + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [r9 + 0x1c]
jl 0x14002fa8f
movss dword [r9 + 0x20], xmm0
mov rcx, qword [0x140271ba8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002de1d
cmp dword [rax + 0x1c], r12d
jge 0x14002de11
mov rax, qword [rax + 0x10]
jmp 0x14002de17
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002de05
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [rcx + 0x20]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm9
movaps xmm1, xmm0
mulsd xmm1, xmm0
mulsd xmm1, xmm0
addsd xmm1, xmm9
cvtpd2ps xmm0, xmm1
mov rcx, qword [0x140271be8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002de7b
cmp dword [rax + 0x1c], r12d
jge 0x14002de6f
mov rax, qword [rax + 0x10]
jmp 0x14002de75
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002de63
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
movss dword [rcx + 0x20], xmm0
mov rdx, qword [0x140271be8]
mov rax, qword [rdx + 8]
mov r8, rdx
mov rcx, rax
movzx r9d, byte [rax + 0x19]
test r9b, r9b
jne 0x14002dec8
nop
cmp dword [rcx + 0x1c], r12d
jge 0x14002debc
mov rcx, qword [rcx + 0x10]
jmp 0x14002dec2
mov r8, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x14002deb0
cmp byte [r8 + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [r8 + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [r8 + 0x20]
cvtps2pd xmm0, xmm0
comisd xmm0, xmmword [0x1401caf28]
jb 0x14002e1c5
test r9b, r9b
jne 0x14002df18
nop dword [rax]
cmp dword [rax + 0x1c], r12d
jge 0x14002df0c
mov rax, qword [rax + 0x10]
jmp 0x14002df12
mov rdx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002df00
cmp byte [rdx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rdx + 0x1c]
jl 0x14002fa8f
mov dword [rdx + 0x20], 0x3f800000
jmp 0x14002e1c5
mov rdx, qword [r15 + 0x70]
mov rax, qword [rdx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002df68
mov r8d, dword [r15 + 0x68]
nop word [rax + rax]
cmp dword [rax + 0x1c], r8d
jge 0x14002df5c
mov rax, qword [rax + 0x10]
jmp 0x14002df62
mov rdx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002df50
cmp byte [rdx + 0x19], 0
jne 0x14002fa8f
mov eax, dword [rdx + 0x1c]
cmp dword [r15 + 0x68], eax
jl 0x14002fa8f
cmp dword [rdx + 0x20], r12d
je 0x14002e1d3
movss xmm1, dword [r11 + 0x18]
mulss xmm1, dword [0x1401caf58]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002dfb9
cmp dword [rax + 0x1c], r12d
jge 0x14002dfad
mov rax, qword [rax + 0x10]
jmp 0x14002dfb3
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002dfa1
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [rcx + 0x20]
subss xmm0, xmm1
movss dword [rcx + 0x20], xmm0
mov dword [rbp + 0x24], 0x3f800000
mov dword [rbp + 0x20], 0
mov r9, qword [0x140271ba8]
mov r8, qword [r9 + 8]
mov rcx, r9
mov rax, r8
movzx r10d, byte [r8 + 0x19]
test r10b, r10b
jne 0x14002e01c
cmp dword [rax + 0x1c], r12d
jge 0x14002e010
mov rax, qword [rax + 0x10]
jmp 0x14002e016
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e004
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
add rcx, 0x20
movss xmm0, dword [rcx]
comiss xmm13, xmm0
seta al
lea rdx, [rbp + 0x20]
test al, al
cmove rdx, rcx
comiss xmm0, xmm6
seta al
lea rcx, [rbp + 0x24]
test al, al
cmove rcx, rdx
movss xmm0, dword [rcx]
test r10b, r10b
jne 0x14002e07b
cmp dword [r8 + 0x1c], r12d
jge 0x14002e06e
mov r8, qword [r8 + 0x10]
jmp 0x14002e074
mov r9, r8
mov r8, qword [r8]
cmp byte [r8 + 0x19], 0
je 0x14002e062
cmp byte [r9 + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [r9 + 0x1c]
jl 0x14002fa8f
movss dword [r9 + 0x20], xmm0
mov rcx, qword [0x140271ba8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002e0bf
cmp dword [rax + 0x1c], r12d
jge 0x14002e0b3
mov rax, qword [rax + 0x10]
jmp 0x14002e0b9
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e0a7
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [rcx + 0x20]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm9
movaps xmm1, xmm0
mulsd xmm1, xmm0
mulsd xmm1, xmm0
addsd xmm1, xmm9
cvtpd2ps xmm0, xmm1
mov rcx, qword [0x140271be8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002e11d
cmp dword [rax + 0x1c], r12d
jge 0x14002e111
mov rax, qword [rax + 0x10]
jmp 0x14002e117
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e105
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
movss dword [rcx + 0x20], xmm0
mov rdx, qword [0x140271be8]
mov rax, qword [rdx + 8]
mov r8, rdx
mov rcx, rax
movzx r9d, byte [rax + 0x19]
test r9b, r9b
jne 0x14002e169
cmp dword [rcx + 0x1c], r12d
jge 0x14002e15d
mov rcx, qword [rcx + 0x10]
jmp 0x14002e163
mov r8, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x14002e151
cmp byte [r8 + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [r8 + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [0x1401cae94]
comiss xmm0, dword [r8 + 0x20]
jb 0x14002e1c5
test r9b, r9b
jne 0x14002e1aa
cmp dword [rax + 0x1c], r12d
jge 0x14002e19e
mov rax, qword [rax + 0x10]
jmp 0x14002e1a4
mov rdx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e192
cmp byte [rdx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rdx + 0x1c]
jl 0x14002fa8f
mov dword [rdx + 0x20], 0
mov r15, qword [0x140273d10]
mov r13, qword [0x140271bf8]
mov rcx, qword [r15 + 0x70]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002e1fc
mov edx, dword [r15 + 0x68]
cmp dword [rax + 0x1c], edx
jge 0x14002e1f0
mov rax, qword [rax + 0x10]
jmp 0x14002e1f6
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e1e5
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
mov eax, dword [rcx + 0x1c]
cmp dword [r15 + 0x68], eax
jl 0x14002fa8f
mov rax, qword [r13 + 8]
cmp dword [rcx + 0x20], r12d
jne 0x14002e4d3
movss xmm0, dword [r11 + 0x18]
mulss xmm0, dword [0x1401caf58]
cmp byte [rax + 0x19], 0
jne 0x14002e24d
cmp dword [rax + 0x1c], r12d
jge 0x14002e241
mov rax, qword [rax + 0x10]
jmp 0x14002e247
mov r13, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e235
cmp byte [r13 + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [r13 + 0x1c]
jl 0x14002fa8f
addss xmm0, dword [r13 + 0x20]
movss dword [r13 + 0x20], xmm0
mov dword [rbp + 0x2c], 0x3f800000
mov dword [rbp + 0x28], 0
mov r9, qword [0x140271bf8]
mov r8, qword [r9 + 8]
mov rcx, r9
mov rax, r8
movzx r10d, byte [r8 + 0x19]
test r10b, r10b
jne 0x14002e2af
cmp dword [rax + 0x1c], r12d
jge 0x14002e2a3
mov rax, qword [rax + 0x10]
jmp 0x14002e2a9
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e297
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
add rcx, 0x20
movss xmm0, dword [rcx]
comiss xmm13, xmm0
seta al
lea rdx, [rbp + 0x28]
test al, al
cmove rdx, rcx
comiss xmm0, xmm6
seta al
lea rcx, [rbp + 0x2c]
test al, al
cmove rcx, rdx
movss xmm0, dword [rcx]
test r10b, r10b
jne 0x14002e30e
cmp dword [r8 + 0x1c], r12d
jge 0x14002e301
mov r8, qword [r8 + 0x10]
jmp 0x14002e307
mov r9, r8
mov r8, qword [r8]
cmp byte [r8 + 0x19], 0
je 0x14002e2f5
cmp byte [r9 + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [r9 + 0x1c]
jl 0x14002fa8f
movss dword [r9 + 0x20], xmm0
mov rcx, qword [0x140271bf8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002e358
nop word [rax + rax]
cmp dword [rax + 0x1c], r12d
jge 0x14002e34c
mov rax, qword [rax + 0x10]
jmp 0x14002e352
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e340
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [rcx + 0x20]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm9
movaps xmm1, xmm0
mulsd xmm1, xmm0
mulsd xmm1, xmm0
addsd xmm1, xmm9
cvtpd2ps xmm0, xmm1
mov rcx, qword [0x140271bc8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002e3b8
nop
cmp dword [rax + 0x1c], r12d
jge 0x14002e3ac
mov rax, qword [rax + 0x10]
jmp 0x14002e3b2
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e3a0
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
movss dword [rcx + 0x20], xmm0
mov rdx, qword [0x140271bc8]
mov rax, qword [rdx + 8]
mov r8, rdx
mov rcx, rax
movzx r9d, byte [rax + 0x19]
test r9b, r9b
jne 0x14002e408
nop dword [rax]
cmp dword [rcx + 0x1c], r12d
jge 0x14002e3fc
mov rcx, qword [rcx + 0x10]
jmp 0x14002e402
mov r8, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x14002e3f0
cmp byte [r8 + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [r8 + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [r8 + 0x20]
cvtps2pd xmm0, xmm0
comisd xmm0, xmmword [0x1401caf28]
jb 0x14002e46f
test r9b, r9b
jne 0x14002e44d
cmp dword [rax + 0x1c], r12d
jge 0x14002e441
mov rax, qword [rax + 0x10]
jmp 0x14002e447
mov rdx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e435
cmp byte [rdx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rdx + 0x1c]
jl 0x14002fa8f
mov dword [rdx + 0x20], 0x3f800000
mov rdx, qword [0x140271bc8]
movss xmm2, dword [0x1401cae94]
mov rcx, qword [0x1402723e8]
movzx eax, byte [rcx + 3]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm0, xmm13
cvttss2si r13d, xmm0
movzx eax, byte [rcx]
mov byte [rsp + 0x44], al
movzx eax, byte [rcx + 1]
mov byte [rsp + 0x46], al
movzx eax, byte [rcx + 2]
mov byte [rsp + 0x45], al
mov rax, qword [rdx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002e734
nop dword [rax + rax]
cmp dword [rax + 0x1c], r12d
jge 0x14002e724
mov rax, qword [rax + 0x10]
jmp 0x14002e72a
movss xmm1, dword [r11 + 0x18]
mulss xmm1, dword [0x1401caf58]
cmp byte [rax + 0x19], 0
jne 0x14002e4ff
cmp dword [rax + 0x1c], r12d
jge 0x14002e4f3
mov rax, qword [rax + 0x10]
jmp 0x14002e4f9
mov r13, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e4e7
cmp byte [r13 + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [r13 + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [r13 + 0x20]
subss xmm0, xmm1
movss dword [r13 + 0x20], xmm0
mov dword [rbp + 0x34], 0x3f800000
mov dword [rbp + 0x30], 0
mov r9, qword [0x140271bf8]
mov r8, qword [r9 + 8]
mov rcx, r9
mov rax, r8
movzx r10d, byte [r8 + 0x19]
test r10b, r10b
jne 0x14002e568
nop dword [rax]
cmp dword [rax + 0x1c], r12d
jge 0x14002e55c
mov rax, qword [rax + 0x10]
jmp 0x14002e562
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e550
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
add rcx, 0x20
movss xmm0, dword [rcx]
comiss xmm13, xmm0
seta al
lea rdx, [rbp + 0x30]
test al, al
cmove rdx, rcx
comiss xmm0, xmm6
seta al
lea rcx, [rbp + 0x34]
test al, al
cmove rcx, rdx
movss xmm0, dword [rcx]
test r10b, r10b
jne 0x14002e5c9
nop
cmp dword [r8 + 0x1c], r12d
jge 0x14002e5bc
mov r8, qword [r8 + 0x10]
jmp 0x14002e5c2
mov r9, r8
mov r8, qword [r8]
cmp byte [r8 + 0x19], 0
je 0x14002e5b0
cmp byte [r9 + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [r9 + 0x1c]
jl 0x14002fa8f
movss dword [r9 + 0x20], xmm0
mov rcx, qword [0x140271bf8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002e60d
cmp dword [rax + 0x1c], r12d
jge 0x14002e601
mov rax, qword [rax + 0x10]
jmp 0x14002e607
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e5f5
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [rcx + 0x20]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm9
movaps xmm1, xmm0
mulsd xmm1, xmm0
mulsd xmm1, xmm0
addsd xmm1, xmm9
cvtpd2ps xmm0, xmm1
mov rcx, qword [0x140271bc8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002e66b
cmp dword [rax + 0x1c], r12d
jge 0x14002e65f
mov rax, qword [rax + 0x10]
jmp 0x14002e665
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e653
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
movss dword [rcx + 0x20], xmm0
mov rdx, qword [0x140271bc8]
mov rax, qword [rdx + 8]
mov r8, rdx
mov rcx, rax
movzx r9d, byte [rax + 0x19]
test r9b, r9b
jne 0x14002e6b8
nop
cmp dword [rcx + 0x1c], r12d
jge 0x14002e6ac
mov rcx, qword [rcx + 0x10]
jmp 0x14002e6b2
mov r8, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x14002e6a0
cmp byte [r8 + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [r8 + 0x1c]
jl 0x14002fa8f
movss xmm2, dword [0x1401cae94]
comiss xmm2, dword [r8 + 0x20]
jb 0x14002e477
test r9b, r9b
jne 0x14002e6fd
cmp dword [rax + 0x1c], r12d
jge 0x14002e6f1
mov rax, qword [rax + 0x10]
jmp 0x14002e6f7
mov rdx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e6e5
cmp byte [rdx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rdx + 0x1c]
jl 0x14002fa8f
mov dword [rdx + 0x20], 0
mov rdx, qword [0x140271bc8]
jmp 0x14002e477
mov rdx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e4c0
cmp byte [rdx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rdx + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [rdx + 0x20]
mulss xmm0, xmm2
mov rax, qword [0x140273d10]
mulss xmm0, dword [rax + 0x2f0]
mulss xmm0, xmm1
cvttss2si r15d, xmm0
mov rax, qword [r11 + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r11, rax
movzx ecx, r13b
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
divss xmm6, xmm15
movzx ecx, byte [rsp + 0x45]
movd xmm9, ecx
cvtdq2ps xmm9, xmm9
divss xmm9, xmm15
movzx ecx, byte [rsp + 0x46]
movd xmm8, ecx
cvtdq2ps xmm8, xmm8
divss xmm8, xmm15
movzx eax, byte [rsp + 0x44]
movd xmm7, eax
cvtdq2ps xmm7, xmm7
divss xmm7, xmm15
movss dword [rbp + 0x2a0], xmm7
movss dword [rbp + 0x2a4], xmm8
movss dword [rbp + 0x2a8], xmm9
movss dword [rbp + 0x2ac], xmm6
lea rcx, [rbp + 0x2a0]
call fcn.140053cc0
mov r10d, eax
movss dword [rbp + 0x2b0], xmm7
movss dword [rbp + 0x2b4], xmm8
movss dword [rbp + 0x2b8], xmm9
movss dword [rbp + 0x2bc], xmm6
lea rcx, [rbp + 0x2b0]
call fcn.140053cc0
mov r9d, eax
movzx ecx, r15b
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
divss xmm6, xmm15
movss dword [rbp + 0x2c0], xmm7
movss dword [rbp + 0x2c4], xmm8
movss dword [rbp + 0x2c8], xmm9
movss dword [rbp + 0x2cc], xmm6
lea rcx, [rbp + 0x2c0]
call fcn.140053cc0
mov r8d, eax
movss dword [rbp + 0x2d0], xmm7
movss dword [rbp + 0x2d4], xmm8
movss dword [rbp + 0x2d8], xmm9
movss dword [rbp + 0x2dc], xmm6
lea rcx, [rbp + 0x2d0]
call fcn.140053cc0
movaps xmm12, xmm14
addss xmm12, dword [0x1401cb084]
movaps xmm13, xmm11
addss xmm13, xmm10
movss dword [rsp + 0x68], xmm13
movss dword [rsp + 0x6c], xmm12
movss dword [rsp + 0x60], xmm11
movss dword [rsp + 0x64], xmm14
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r9d
mov dword [rsp + 0x20], r8d
mov r9d, eax
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x60]
mov rcx, r11
call fcn.140073ab0
mov rcx, qword [0x140271bc8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002e91e
cmp dword [rax + 0x1c], r12d
jge 0x14002e912
mov rax, qword [rax + 0x10]
jmp 0x14002e918
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002e906
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
mov rax, qword [0x140273d10]
movss xmm1, dword [rax + 0x2f0]
mulss xmm1, dword [rcx + 0x20]
mov rcx, qword [0x1402723e8]
movzx eax, byte [rcx + 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si r15d, xmm0
movzx eax, byte [rcx]
mov byte [rsp + 0x44], al
movzx r13d, byte [rcx + 1]
movzx r12d, byte [rcx + 2]
addss xmm14, dword [0x1401cb08c]
movaps xmm10, xmm14
subss xmm10, dword [0x1401caf40]
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r10, rax
movzx ecx, r15b
movd xmm3, ecx
cvtdq2ps xmm3, xmm3
divss xmm3, xmm15
movd xmm2, r12d
cvtdq2ps xmm2, xmm2
divss xmm2, xmm15
movd xmm1, r13d
cvtdq2ps xmm1, xmm1
divss xmm1, xmm15
movzx ecx, byte [rsp + 0x44]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
divss xmm0, xmm15
movss dword [rbp + 0x2e0], xmm0
movss dword [rbp + 0x2e4], xmm1
movss dword [rbp + 0x2e8], xmm2
movss dword [rbp + 0x2ec], xmm3
lea rcx, [rbp + 0x2e0]
call fcn.140053cc0
movaps xmm11, xmm10
addss xmm11, dword [0x1401caf40]
movss dword [rbp - 0x60], xmm13
movss dword [rbp - 0x5c], xmm11
movss xmm0, dword [rbp + 0x6e0]
movss dword [rbp - 0x68], xmm0
movss dword [rbp - 0x64], xmm10
mov dword [rsp + 0x28], 0
xorps xmm6, xmm6
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp - 0x60]
lea rdx, [rbp - 0x68]
mov rcx, r10
call fcn.140073900
mov rcx, qword [0x1402723e8]
movzx eax, byte [rcx + 3]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm0, xmm6
cvttss2si r13d, xmm0
movzx eax, byte [rcx]
mov byte [rsp + 0x45], al
movzx eax, byte [rcx + 1]
mov byte [rsp + 0x46], al
movzx eax, byte [rcx + 2]
mov byte [rsp + 0x44], al
mov rcx, qword [0x140271be8]
mov rax, qword [rcx + 8]
mov r12d, dword [rsp + 0x78]
cmp byte [rax + 0x19], 0
jne 0x14002eac8
nop
cmp dword [rax + 0x1c], r12d
jge 0x14002eabc
mov rax, qword [rax + 0x10]
jmp 0x14002eac2
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002eab0
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
movss xmm0, dword [rcx + 0x20]
mulss xmm0, dword [0x1401cae94]
mov rax, qword [0x140273d10]
mulss xmm0, dword [rax + 0x2f0]
mulss xmm1, xmm0
cvttss2si r15d, xmm1
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r11, rax
movzx ecx, r13b
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
divss xmm6, xmm15
movzx ecx, byte [rsp + 0x44]
movd xmm9, ecx
cvtdq2ps xmm9, xmm9
divss xmm9, xmm15
movzx ecx, byte [rsp + 0x46]
movd xmm8, ecx
cvtdq2ps xmm8, xmm8
divss xmm8, xmm15
movzx eax, byte [rsp + 0x45]
movd xmm7, eax
cvtdq2ps xmm7, xmm7
divss xmm7, xmm15
movss dword [rbp + 0x2f0], xmm7
movss dword [rbp + 0x2f4], xmm8
movss dword [rbp + 0x2f8], xmm9
movss dword [rbp + 0x2fc], xmm6
lea rcx, [rbp + 0x2f0]
call fcn.140053cc0
mov r10d, eax
movss dword [rbp + 0x300], xmm7
movss dword [rbp + 0x304], xmm8
movss dword [rbp + 0x308], xmm9
movss dword [rbp + 0x30c], xmm6
lea rcx, [rbp + 0x300]
call fcn.140053cc0
mov r9d, eax
movzx ecx, r15b
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
divss xmm6, xmm15
movss dword [rbp + 0x130], xmm7
movss dword [rbp + 0x134], xmm8
movss dword [rbp + 0x138], xmm9
movss dword [rbp + 0x13c], xmm6
lea rcx, [rbp + 0x130]
call fcn.140053cc0
mov r8d, eax
movss dword [rbp + 0x140], xmm7
movss dword [rbp + 0x144], xmm8
movss dword [rbp + 0x148], xmm9
movss dword [rbp + 0x14c], xmm6
lea rcx, [rbp + 0x140]
call fcn.140053cc0
movss dword [rbp - 0x70], xmm13
movss dword [rbp - 0x6c], xmm12
movss xmm8, dword [rbp + 0x6e0]
movss dword [rbp - 0x78], xmm8
movss xmm9, dword [rbp - 0x48]
movss dword [rbp - 0x74], xmm9
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r9d
mov dword [rsp + 0x20], r8d
mov r9d, eax
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x78]
mov rcx, r11
call fcn.140073ab0
mov rcx, qword [0x140271be8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002ecb0
cmp dword [rax + 0x1c], r12d
jge 0x14002eca4
mov rax, qword [rax + 0x10]
jmp 0x14002ecaa
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002ec98
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
mov rax, qword [0x140273d10]
movss xmm1, dword [rax + 0x2f0]
mulss xmm1, dword [rcx + 0x20]
mulss xmm1, dword [0x1401caed4]
mov rcx, qword [0x1402723e8]
movzx eax, byte [rcx + 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si r15d, xmm0
movzx eax, byte [rcx]
mov byte [rsp + 0x44], al
movzx r13d, byte [rcx + 1]
movzx r12d, byte [rcx + 2]
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r10, rax
movzx ecx, r15b
movd xmm3, ecx
cvtdq2ps xmm3, xmm3
divss xmm3, xmm15
movd xmm2, r12d
cvtdq2ps xmm2, xmm2
divss xmm2, xmm15
movd xmm1, r13d
cvtdq2ps xmm1, xmm1
divss xmm1, xmm15
movzx ecx, byte [rsp + 0x44]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
divss xmm0, xmm15
movss dword [rbp + 0x150], xmm0
movss dword [rbp + 0x154], xmm1
movss dword [rbp + 0x158], xmm2
movss dword [rbp + 0x15c], xmm3
lea rcx, [rbp + 0x150]
call fcn.140053cc0
movss dword [rbp + 0x710], xmm13
movss dword [rbp + 0x714], xmm11
movss dword [rbp + 0x700], xmm8
movss dword [rbp + 0x704], xmm10
mov dword [rsp + 0x28], 0
xorps xmm7, xmm7
movss dword [rsp + 0x20], xmm7
mov r9d, eax
lea r8, [rbp + 0x710]
lea rdx, [rbp + 0x700]
mov rcx, r10
call fcn.140073900
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rdx + 0x28]
mov rax, qword [rdx + 0x30]
sub rax, rcx
sar rax, 6
mov r8, qword [rsp + 0x50]
cmp rax, r8
jbe 0x14002fa89
mov rax, r8
shl rax, 6
movss xmm7, dword [rbp - 0x80]
mulss xmm7, dword [0x1401caed0]
movaps xmm6, xmm9
addss xmm6, dword [0x1401cb01c]
movsxd r12, dword [rsp + 0x78]
addss xmm7, xmm8
cmp qword [rax + rcx + 0x10], 0
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
mulss xmm0, xmm15
cvttss2si eax, xmm0
jne 0x14002ef92
mov word [rsp + 0x4c], 0x9696
mov byte [rsp + 0x4e], 0x96
mov byte [rsp + 0x4f], al
movss dword [rbp + 0xf8], xmm7
movss dword [rbp + 0xfc], xmm6
mov rcx, qword [rdx + 0x28]
mov rax, qword [rdx + 0x30]
sub rax, rcx
sar rax, 6
cmp rax, r12
jbe 0x14002fa89
mov r13, r12
shl r13, 6
lea rdx, [rcx + 0x20]
add rdx, r13
lea rcx, [rbp + 0x5f8]
call fcn.140008b60
mov dword [rsp + 0x20], 1
mov r9d, 6
mov r8d, dword [rsp + 0x4c]
lea rdx, [rbp + 0xf8]
mov rcx, rax
call fcn.140082420
mov rcx, qword [0x140271bc8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002eef8
nop dword [rax + rax]
cmp dword [rax + 0x1c], r12d
jge 0x14002eeec
mov rax, qword [rax + 0x10]
jmp 0x14002eef2
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002eee0
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
mulss xmm0, dword [rcx + 0x20]
mulss xmm0, xmm15
cvttss2si eax, xmm0
mov word [rsp + 0x48], 0xc8c8
mov byte [rsp + 0x4a], 0xc8
mov byte [rsp + 0x4b], al
movss dword [rbp + 0x100], xmm7
movss dword [rbp + 0x104], xmm6
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x28]
mov rax, qword [rax + 0x30]
sub rax, rcx
sar rax, 6
cmp rax, r12
jbe 0x14002fa89
lea rdx, [rcx + 0x20]
add rdx, r13
lea rcx, [rbp + 0x618]
call fcn.140008b60
mov dword [rsp + 0x20], 1
mov r8d, dword [rsp + 0x48]
lea rdx, [rbp + 0x100]
jmp 0x14002f0be
mov word [rsp + 0x40], 0x9696
mov byte [rsp + 0x42], 0x96
mov byte [rsp + 0x43], al
movss dword [rbp + 0x108], xmm7
movss dword [rbp + 0x10c], xmm6
mov rcx, qword [rdx + 0x28]
mov rax, qword [rdx + 0x30]
sub rax, rcx
sar rax, 6
cmp rax, r12
jbe 0x14002fa89
mov r13, r12
shl r13, 6
lea rdx, [rcx + r13]
lea rcx, [rbp + 0x638]
call fcn.140008b60
mov dword [rsp + 0x20], 8
mov r9d, 6
mov r8d, dword [rsp + 0x40]
lea rdx, [rbp + 0x108]
mov rcx, rax
call fcn.140082420
mov rcx, qword [0x140271bc8]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002f02c
cmp dword [rax + 0x1c], r12d
jge 0x14002f020
mov rax, qword [rax + 0x10]
jmp 0x14002f026
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002f014
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
cmp r12d, dword [rcx + 0x1c]
jl 0x14002fa8f
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
mulss xmm0, dword [rcx + 0x20]
mulss xmm0, xmm15
cvttss2si eax, xmm0
mov word [rsp + 0x70], 0xc8c8
mov byte [rsp + 0x72], 0xc8
mov byte [rsp + 0x73], al
movss dword [rbp + 0x110], xmm7
movss dword [rbp + 0x114], xmm6
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x28]
mov rax, qword [rax + 0x30]
sub rax, rcx
sar rax, 6
cmp rax, r12
jbe 0x14002fa89
lea rdx, [rcx + r13]
lea rcx, [rbp + 0x658]
call fcn.140008b60
mov dword [rsp + 0x20], 8
mov r8d, dword [rsp + 0x70]
lea rdx, [rbp + 0x110]
mov r9d, 6
mov rcx, rax
call fcn.140082420
mov r15, qword [0x140273d10]
mov rcx, qword [r15 + 0x70]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002f0fc
mov edx, dword [r15 + 0x68]
cmp dword [rax + 0x1c], edx
jge 0x14002f0f0
mov rax, qword [rax + 0x10]
jmp 0x14002f0f6
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002f0e5
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
mov eax, dword [rcx + 0x1c]
cmp dword [r15 + 0x68], eax
jl 0x14002fa8f
cmp dword [rcx + 0x20], r12d
je 0x14002f4f2
cmp qword [r15 + 0x260], 0
jne 0x14002f272
cmp qword [0x140272c18], 0
jne 0x14002f15c
mov ecx, 8
call fcn.14015d780
mov qword [rbp + 0x6f0], rax
xor ecx, ecx
mov qword [rax], rcx
mov dword [rax + 4], ecx
mov qword [0x140272c18], rax
mov r15, qword [0x140273d10]
mov rax, qword [0x140272c18]
movss xmm1, dword [rax]
comiss xmm1, xmm8
jbe 0x14002f4f2
movss xmm0, dword [rax + 4]
comiss xmm0, xmm9
jbe 0x14002f4f2
comiss xmm13, xmm1
jbe 0x14002f4f2
comiss xmm14, xmm0
jbe 0x14002f4f2
mov ecx, 1
call fcn.14007bd70
xor r8d, r8d
xor edx, edx
mov ecx, eax
call fcn.14005ee80
test al, al
je 0x14002f4f2
movabs rax, 0x782ff573bc7fd3f8
mov qword [rbp + 0x160], rax
movabs rax, 0x4c2ed7125f43d31e
mov qword [rbp + 0x168], rax
movabs rax, 0xd7c8110d913b6ab
mov qword [rbp + 0x750], rax
movabs rax, 0x4c2ed7313d22877c
mov qword [rbp + 0x758], rax
movdqa xmm0, xmmword [rbp + 0x160]
xorps xmm0, xmmword [rbp + 0x750]
movdqa xmmword [rbp + 0x160], xmm0
lea rdx, [rbp + 0x160]
lea rcx, [rbp + 0x698]
call fcn.140008b20
mov r15, rax
mov edx, r12d
lea rcx, [rbp + 0x678]
call fcn.1400121a0
nop
mov rdx, rax
mov rcx, r15
call fcn.140034440
mov rcx, rax
call fcn.140039ad0
mov rcx, qword [0x140273d10]
mov qword [rcx + 0x260], rax
lea rcx, [rbp + 0x678]
call fcn.140008e00
nop
lea rcx, [rbp + 0x698]
call fcn.140008e00
jmp 0x14002f4eb
movabs rax, 0x782ff573bc7fd3f8
mov qword [rbp + 0x90], rax
movabs rax, 0x4c2ed7125f43d31e
mov qword [rbp + 0x98], rax
movabs rax, 0xd7c8110d913b6ab
mov qword [rbp + 0x740], rax
movabs rax, 0x4c2ed7313d22877c
mov qword [rbp + 0x748], rax
movdqa xmm0, xmmword [rbp + 0x90]
xorps xmm0, xmmword [rbp + 0x740]
movdqa xmmword [rbp + 0x90], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x3d8], xmm0
xor r15d, r15d
mov qword [rbp + 0x3e8], r15
mov qword [rbp + 0x3f0], r15
lea rax, [rbp + 0x90]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], r15b
jne 0x14002f2f6
lea rdx, [rbp + 0x90]
lea rcx, [rbp + 0x3d8]
call fcn.140009150
nop
lea r9, [rbp + 0x775]
mov r8d, r12d
test r12d, r12d
jns 0x14002f370
neg r8d
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14002f330
dec r9
mov byte [r9], 0x2d
jmp 0x14002f39a
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14002f370
xorps xmm0, xmm0
movups xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x80], r15
mov qword [rbp + 0x88], r15
lea rax, [rbp + 0x775]
cmp r9, rax
jne 0x14002f3d7
mov r8, r15
mov qword [rbp + 0x80], r15
mov eax, 0xf
mov qword [rbp + 0x88], rax
mov byte [rbp + 0x70], r8b
jmp 0x14002f3fb
lea r8, [rbp + 0x775]
sub r8, r9
mov rdx, r9
lea rcx, [rbp + 0x70]
call fcn.140009150
mov rax, qword [rbp + 0x88]
mov r8, qword [rbp + 0x80]
lea rdx, [rbp + 0x70]
cmp rax, 0xf
cmova rdx, qword [rbp + 0x70]
lea rcx, [rbp + 0x3d8]
call fcn.140035650
mov rdx, rax
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x14002f425
mov rdx, qword [rax]
movabs r13, 0xcbf29ce484222325
mov rcx, r15
test r8, r8
je 0x14002f45a
movabs rdi, 0x100000001b3
movzx eax, byte [rdx + rcx]
xor r13, rax
imul r13, rdi
inc rcx
cmp rcx, r8
jb 0x14002f441
mov edi, dword [rbp + 0x72c]
mov rax, qword [0x140273d10]
mov r15, qword [rax + 0x260]
lea rcx, [rbp + 0x70]
call fcn.140008e00
nop
lea rcx, [rbp + 0x3d8]
call fcn.140008e00
cmp r15, r13
jne 0x14002f4eb
cmp qword [0x140272c18], 0
jne 0x14002f4ad
mov ecx, 8
call fcn.14015d780
mov qword [rbp + 0x6f0], rax
xor ecx, ecx
mov qword [rax], rcx
mov dword [rax + 4], ecx
mov qword [0x140272c18], rax
mov ecx, 1
call fcn.14007bd70
mov ecx, eax
call fcn.14005ee00
test al, al
jne 0x14002f4eb
mov rdx, qword [0x140273d10]
lea rcx, [rdx + 0x70]
add rdx, 0x68
call fcn.140033ba0
mov dword [rax], r12d
mov rax, qword [0x140273d10]
mov qword [rax + 0x260], 0
mov r15, qword [0x140273d10]
inc r12d
mov dword [rsp + 0x78], r12d
inc qword [rsp + 0x50]
mov rax, qword [rsp + 0x58]
mov rdx, qword [rax + 0x30]
mov r8, qword [rax + 0x28]
mov rcx, rdx
sub rcx, r8
sar rcx, 6
movsxd rax, r12d
cmp rax, rcx
jae 0x14002f54a
movsd xmm9, qword [0x1401caf30]
xorps xmm13, xmm13
movss xmm12, dword [0x1401cb08c]
movss xmm11, dword [0x1401cb0e4]
movss xmm1, dword [0x1401cb0dc]
jmp 0x14002d716
mov rcx, qword [r15 + 0x58]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002f577
mov edx, dword [r15 + 0x68]
nop dword [rax]
cmp dword [rax + 0x20], edx
jge 0x14002f56b
mov rax, qword [rax + 0x10]
jmp 0x14002f571
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14002f560
cmp byte [rcx + 0x19], 0
jne 0x14002fa8f
mov eax, dword [rcx + 0x20]
cmp dword [r15 + 0x68], eax
jl 0x14002fa8f
mov rax, qword [rcx + 0x30]
sub rax, qword [rcx + 0x28]
movss xmm10, dword [0x1401cb0bc]
movss xmm11, dword [0x1401cafa8]
cmp rax, 0x40
jb 0x14002f709
movss xmm0, dword [r15 + 0x2f0]
mulss xmm0, xmm10
cvttss2si ebx, xmm0
movss xmm8, dword [r15 + 8]
movss xmm9, dword [r15 + 4]
addss xmm9, dword [0x1401cb0d8]
movss xmm7, dword [r15]
addss xmm7, dword [0x1401cb0e8]
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r11, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x458], xmm0
lea rcx, [rbp + 0x458]
call fcn.140053cc0
mov r10d, eax
xorps xmm0, xmm0
movups xmmword [rbp + 0x4a0], xmm0
lea rcx, [rbp + 0x4a0]
call fcn.140053cc0
mov r9d, eax
movzx ecx, bl
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
divss xmm6, xmm15
mov qword [rbp + 0x170], 0
mov dword [rbp + 0x178], 0
movss dword [rbp + 0x17c], xmm6
lea rcx, [rbp + 0x170]
call fcn.140053cc0
mov r8d, eax
mov qword [rbp + 0x180], 0
mov dword [rbp + 0x188], 0
movss dword [rbp + 0x18c], xmm6
lea rcx, [rbp + 0x180]
call fcn.140053cc0
movaps xmm0, xmm9
addss xmm0, xmm11
subss xmm8, dword [0x1401cb0ec]
addss xmm8, xmm7
movss dword [rbp + 0x700], xmm8
movss dword [rbp + 0x704], xmm0
movss dword [rbp + 0x710], xmm7
movss dword [rbp + 0x714], xmm9
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r9d
mov dword [rsp + 0x20], r8d
mov r9d, eax
lea r8, [rbp + 0x700]
lea rdx, [rbp + 0x710]
mov rcx, r11
call fcn.140073ab0
mov r15, qword [0x140273d10]
movss xmm0, dword [r15 + 0x2f0]
mulss xmm0, xmm10
cvttss2si ebx, xmm0
movss xmm9, dword [r15 + 0xc]
movss xmm12, dword [0x1401cb0a4]
subss xmm9, xmm12
movss xmm8, dword [r15 + 4]
addss xmm8, xmm12
movss xmm7, dword [r15]
addss xmm7, dword [0x1401cb0d8]
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r11, rax
movzx ecx, bl
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
divss xmm6, xmm15
mov qword [rbp + 0x190], 0
mov dword [rbp + 0x198], 0
movss dword [rbp + 0x19c], xmm6
lea rcx, [rbp + 0x190]
call fcn.140053cc0
mov r10d, eax
xorps xmm0, xmm0
movups xmmword [rbp + 0x470], xmm0
lea rcx, [rbp + 0x470]
call fcn.140053cc0
mov r9d, eax
xorps xmm0, xmm0
movups xmmword [rbp + 0x480], xmm0
lea rcx, [rbp + 0x480]
call fcn.140053cc0
mov r8d, eax
mov qword [rbp + 0x1a0], 0
mov dword [rbp + 0x1a8], 0
movss dword [rbp + 0x1ac], xmm6
lea rcx, [rbp + 0x1a0]
call fcn.140053cc0
addss xmm9, xmm8
movaps xmm0, xmm7
addss xmm0, xmm11
movss dword [rbp + 0x700], xmm0
movss dword [rbp + 0x704], xmm9
movss dword [rbp + 0x710], xmm7
movss dword [rbp + 0x714], xmm8
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r9d
mov dword [rsp + 0x20], r8d
mov r9d, eax
lea r8, [rbp + 0x700]
lea rdx, [rbp + 0x710]
mov rcx, r11
call fcn.140073ab0
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
mulss xmm0, xmm10
cvttss2si ebx, xmm0
movss xmm8, dword [rax + 8]
movss xmm9, dword [rax + 4]
addss xmm9, xmm12
movss xmm7, dword [rax]
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r11, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x490], xmm0
lea rcx, [rbp + 0x490]
call fcn.140053cc0
mov r10d, eax
xorps xmm0, xmm0
movups xmmword [rbp + 0x448], xmm0
lea rcx, [rbp + 0x448]
call fcn.140053cc0
mov r9d, eax
movzx ecx, bl
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
divss xmm6, xmm15
mov qword [rbp + 0x1c0], 0
mov dword [rbp + 0x1c8], 0
movss dword [rbp + 0x1cc], xmm6
lea rcx, [rbp + 0x1c0]
call fcn.140053cc0
mov r8d, eax
mov qword [rbp + 0x1b0], 0
mov dword [rbp + 0x1b8], 0
movss dword [rbp + 0x1bc], xmm6
lea rcx, [rbp + 0x1b0]
call fcn.140053cc0
movaps xmm1, xmm9
addss xmm1, xmm11
movaps xmm0, xmm7
addss xmm0, xmm8
movss dword [rbp + 0x700], xmm0
movss dword [rbp + 0x704], xmm1
movss dword [rbp + 0x710], xmm7
movss dword [rbp + 0x714], xmm9
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r9d
mov dword [rsp + 0x20], r8d
mov r9d, eax
lea r8, [rbp + 0x700]
lea rdx, [rbp + 0x710]
mov rcx, r11
call fcn.140073ab0
mov rax, qword [0x140273d10]
mov ecx, dword [rax + 0x68]
test ecx, ecx
jle 0x14002f9b3
cmp ecx, 3
mov eax, 0x6e
jl 0x14002f9b8
mov eax, 0x46
mov dword [rbp + 0x700], 0x43200000
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x704], xmm1
lea rcx, [rbp + 0x700]
call fcn.1400399f0
mov rsi, qword [0x140273d10]
mov rdi, qword [rsi + 0x48]
mov rbx, qword [rsi + 0x40]
cmp rbx, rdi
je 0x14002fa1a
lea rcx, [rbx + 0x20]
call fcn.140008e00
mov rcx, rbx
call fcn.140008e00
add rbx, 0x40
cmp rbx, rdi
jne 0x14002f9f1
mov rax, qword [rsi + 0x40]
mov qword [rsi + 0x48], rax
mov rsi, qword [0x140273d10]
mov r14, qword [rsi + 0x58]
mov rdi, qword [r14 + 8]
cmp byte [rdi + 0x19], 0
jne 0x14002fa63
nop dword [rax + rax]
mov r8, qword [rdi + 0x10]
lea rdx, [rsi + 0x58]
lea rcx, [rsi + 0x58]
call fcn.140010cc0
mov rbx, rdi
mov rdi, qword [rdi]
lea rcx, [rbx + 0x28]
call fcn.140010840
mov edx, 0x40
mov rcx, rbx
call fcn.14015dacc
cmp byte [rdi + 0x19], 0
je 0x14002fa30
mov qword [r14 + 8], r14
mov qword [r14], r14
mov qword [r14 + 0x10], r14
mov qword [rsi + 0x60], 0
mov rcx, qword [rbp + 0x350]
call fcn.140008e00
mov al, 1
jmp 0x14002b9d2
call fcn.1400260f0
int3
lea rcx, str.invalid_map_K__T__key
call fcn.14015c384
int3
call fcn.1400059f0
int3