Function at 0x140143b88
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf78
movaps xmmword [rsp + 0xf60], xmm15
movaps xmmword [rsp + 0xf50], xmm14
movaps xmmword [rsp + 0xf40], xmm13
movaps xmmword [rsp + 0xf30], xmm12
movaps xmmword [rsp + 0xf20], xmm11
movaps xmmword [rsp + 0xf10], xmm10
movaps xmmword [rsp + 0xf00], xmm9
movaps xmmword [rsp + 0xef0], xmm8
movaps xmmword [rsp + 0xee0], xmm7
movaps xmmword [rsp + 0xed0], xmm6
mov qword [rsp + 0x218], rcx
mov rax, qword [rdx + 0x3e0]
test rax, rax
je 0x140146d36
movaps xmm7, xmm3
movaps xmm8, xmm2
mov r12, rdx
mov rbx, qword [rsp + 0xff0]
mov rcx, qword [rdx + 0x3d8]
mov rdx, rax
shl rdx, 6
lea rax, [rdx + rax*4]
movss xmm0, dword [rcx + rax - 0x1c]
movss xmm1, dword [rcx + rax - 0x18]
mulss xmm0, xmm0
movss xmm2, dword [rcx + rax - 0x14]
mulss xmm2, xmm2
addss xmm2, xmm0
sqrtss xmm2, xmm2
mulss xmm1, xmm1
movss xmm0, dword [rcx + rax - 0x10]
mulss xmm0, xmm0
addss xmm0, xmm1
sqrtss xmm0, xmm0
addss xmm0, xmm2
movss xmm14, dword [0x1402ec970]
mulss xmm0, xmm14
movss xmm15, dword [0x1402ec974]
divss xmm0, xmm15
addss xmm0, xmm14
call fcn.1402e5b90
movaps xmm9, xmm0
mulss xmm9, xmm15
minss xmm9, dword [0x1402ec978]
mulss xmm9, dword [r12 + 0x46c]
movss xmm6, dword [rbx + 0x114]
mulss xmm6, xmm9
movzx edi, word [rbx + 0xc8]
movss xmm13, dword [rbx + 0xc0]
mulss xmm13, xmm9
movss xmm10, dword [rbx + 0xc4]
mulss xmm10, xmm9
lea rsi, [rsp + 0xe00]
mov r8d, 0xc0
mov rcx, rsi
mov qword [rsp + 0x278], rbx
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov word [rsi + 0xc8], di
movss dword [rsi + 0xc0], xmm13
movss dword [rsi + 0xc4], xmm10
mov rdi, qword [r12 + 0x418]
cmp qword [rdi + 0x10], 0
jne 0x140146d4e
mov rax, qword [rsp + 0xfe8]
mov rcx, qword [rsp + 0xfe0]
mov qword [rdi + 0x10], 0xffffffffffffffff
lea r9, [rdi + 0x18]
mulss xmm7, xmm9
mulss xmm8, xmm9
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rsi
mov dword [rsp + 0x38], 0
lea rcx, [rsp + 0x310]
movaps xmm1, xmm8
movaps xmm2, xmm7
call fcn.140091952
movabs rcx, 0x8000000000000019
mov rax, qword [rsp + 0x310]
cmp rax, rcx
jne 0x140143ed4
movss xmm8, dword [0x1402ec97c]
divss xmm8, xmm9
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x240], rax
mov rax, qword [rsp + 0x320]
mov rsi, qword [rsp + 0x328]
mov rcx, qword [rsp + 0x330]
mov qword [rsp + 0x2d8], rcx
movss xmm9, dword [rsp + 0x338]
movss xmm10, dword [rsp + 0x33c]
movss xmm11, dword [rsp + 0x340]
movd xmm12, dword [rsp + 0x344]
inc qword [rdi + 0x10]
mov rdi, rax
mov rax, rsi
shl rax, 4
mov qword [rsp + 0x2d0], rax
lea rax, [rax + rax*4]
lea rcx, [rdi + rax]
mov qword [rsp + 0x258], rcx
mov rcx, rdi
mov qword [rsp + 0xe8], rdi
mov qword [rsp + 0x270], rsi
test rax, rax
je 0x140143f1a
add rax, 0xffffffffffffffb0
cmp byte [rcx + 0x48], 0
lea rcx, [rcx + 0x50]
je 0x140143e35
ucomiss xmm13, dword [0x1402ec980]
jbe 0x1401443c9
mov rsi, qword [r12 + 0x428]
test rsi, rsi
jne 0x140143ea7
xorps xmm0, xmm0
lea rcx, [rsp + 0x310]
movaps xmmword [rcx], xmm0
movups xmm1, xmmword [str.PQ__]
movups xmmword [rcx + 0x28], xmm1
movups xmm1, xmmword [0x1403b5170]
movups xmmword [rcx + 0x38], xmm1
mov qword [rcx + 0x10], 8
movups xmmword [rcx + 0x18], xmm0
call fcn.1401472db
mov rsi, rax
mov qword [r12 + 0x428], rax
movd dword [rsp + 0x164], xmm12
movss dword [rsp + 0x168], xmm11
movss dword [rsp + 0x16c], xmm10
movss dword [rsp + 0x170], xmm9
jmp 0x1401443f9
movdqu xmm0, xmmword [rsp + 0x318]
movups xmm1, xmmword [rsp + 0x328]
movups xmm2, xmmword [rsp + 0x338]
mov rcx, qword [rsp + 0x348]
mov rdx, qword [rsp + 0x218]
movdqu xmmword [rdx + 8], xmm0
movups xmmword [rdx + 0x18], xmm1
movups xmmword [rdx + 0x28], xmm2
mov qword [rdx], rax
mov qword [rdx + 0x38], rcx
inc qword [rdi + 0x10]
jmp 0x140146c56
ucomiss xmm13, dword [0x1402ec980]
jbe 0x1401443c9
mov rax, qword [rsp + 0xff0]
mov al, byte [rax + 0x11c]
mov byte [rsp + 0x250], al
mov r14, qword [r12 + 0x418]
inc qword [r14]
je 0x140146ed3
cmp qword [r14 + 0x10], 0
mov qword [rsp + 0xa0], r14
jne 0x140146e99
mov qword [r14 + 0x10], 0xffffffffffffffff
call fcn.140234fc0
test rax, rax
je 0x140146ea7
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
lea r8, [rcx + 1]
mov qword [rax], r8
movups xmm0, xmmword [0x1403b5170]
movaps xmmword [rsp + 0x100], xmm0
movups xmm0, xmmword [str.PQ__]
movaps xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], rdx
test rsi, rsi
je 0x1401465a3
add qword [rsp + 0x278], 0xd0
xorps xmm0, xmm0
maxss xmm0, xmm13
movss xmm1, dword [0x1402ec98c]
minss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [rsp + 0xb0], eax
movabs rax, 0x8000000000000019
add rax, 0xfffffffffffffff6
mov qword [rsp + 0x158], rax
pcmpeqd xmm6, xmm6
movaps xmm7, xmmword [0x1402eca20]
mov rbx, rdi
mov rax, qword [rbx]
cmp qword [r14 + 0x38], rax
jbe 0x1401465c1
mov rsi, qword [r14 + 0x30]
lea rax, [rax + rax*2]
shl rax, 5
cmp byte [rsi + rax + 0x58], 2
je 0x1401465c1
mov rcx, qword [rbx + 8]
add rsi, rax
cmp qword [rsi], rcx
jne 0x1401465c1
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x310], rax
lea rcx, [rsp + 0x310]
call fcn.140133f11
lea rax, [rbx + 0x50]
mov qword [rsp + 0x58], rax
lea rax, [rsi + 8]
mov qword [rsp + 0x90], rax
mov r15, qword [rbx]
mov rdi, qword [rbx + 8]
mov rcx, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x118]
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x148], rdx
mov r8, r15
mov r9, rdi
call fcn.14014a4cc
mov r13, rax
mov r14, rax
shr r14, 0x39
mov rbp, qword [rsp + 0xf0]
mov rax, qword [rsp + 0xf8]
mov rcx, rax
and rcx, r13
movd xmm0, r14d
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
xor edx, edx
movdqu xmm1, xmmword [rbp + rcx]
movdqa xmm2, xmm1
pcmpeqb xmm2, xmm0
pmovmskb r8d, xmm2
test r8w, r8w
je 0x140144125
mov r9d, r8d
lea r8d, [r9 - 1]
and r8d, r9d
bsf r9d, r9d
add r9, rcx
and r9, rax
neg r9
imul r9, r9, 0xaf0
cmp qword [rbp + r9 - 0xaf0], r15
jne 0x1401440eb
cmp qword [rbp + r9 - 0xae8], rdi
jne 0x1401440eb
jmp 0x140144147
pcmpeqb xmm1, xmm6
pmovmskb r8d, xmm1
test r8d, r8d
jne 0x1401442c4
add rcx, rdx
add rcx, 0x10
add rdx, 0x10
and rcx, rax
jmp 0x1401440d8
add rbp, r9
add rbp, 0xfffffffffffff520
movzx edi, word [rsi + 0x5c]
movzx r9d, word [rbx + 0x20]
mov eax, dword [rsp + 0xb0]
mov word [rsp + 0x20], ax
lea rcx, [rsp + 0x310]
mov rdx, qword [rsp + 0x90]
mov r8, rbp
call fcn.14008ea7c
cmp dword [rsp + 0x310], 0xb
mov r14, qword [rsp + 0xa0]
je 0x1401442a1
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x1b0], rax
movups xmm0, xmmword [rsp + 0x310]
movups xmm1, xmmword [rsp + 0x320]
movaps xmmword [rsp + 0x1a0], xmm1
movaps xmmword [rsp + 0x190], xmm0
mov sil, 1
mov rcx, r12
call fcn.14013511d
movss xmm2, dword [rbx + 0x18]
movss xmm3, dword [rbx + 0x1c]
subss xmm2, dword [rbx + 0x3c]
addss xmm3, dword [rbx + 0x40]
mulss xmm2, xmm8
mulss xmm3, xmm8
mov rcx, qword [r12 + 0x3d8]
mov rdx, qword [r12 + 0x3e0]
call fcn.14013adf4
movzx eax, di
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
movaps xmm3, xmm13
divss xmm3, xmm0
movaps xmm2, xmm3
mulss xmm2, xmm8
xorps xmm3, xmm7
mulss xmm3, xmm8
mov rcx, qword [r12 + 0x3d8]
mov rdx, qword [r12 + 0x3e0]
call fcn.14014882f
cmp dword [rsp + 0x190], 0xa
jne 0x140146dbe
mov rdx, qword [rsp + 0x198]
mov rsi, qword [rsp + 0x1a0]
mov byte [rsp + 0x20], 0
mov rcx, r12
mov r8, qword [rsp + 0x278]
mov r9b, byte [rsp + 0x250]
call fcn.14013557e
dec qword [rsi]
mov rdx, qword [r12 + 0x3e0]
cmp rdx, 1
jbe 0x140144292
dec rdx
mov qword [r12 + 0x3e0], rdx
jmp 0x1401442a1
mov rcx, qword [r12 + 0x3d8]
xor esi, esi
call fcn.140135447
mov rax, qword [rsp + 0x58]
mov rbx, rax
cmp rax, qword [rsp + 0x258]
mov rdi, qword [rsp + 0xe8]
jne 0x14014400b
jmp 0x1401465a3
cmp qword [rsp + 0x100], 0
jne 0x1401442ec
lea rcx, [rsp + 0xf0]
mov rdx, qword [rsp + 0x150]
mov r8, qword [rsp + 0x148]
call fcn.14014a653
lea rcx, [rsp + 0x320]
mov rdx, qword [rsp + 0x90]
call fcn.14008e153
mov qword [rsp + 0x310], r15
mov qword [rsp + 0x318], rdi
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf8]
and r13, rcx
movdqu xmm0, xmmword [rax + r13]
pmovmskb edx, xmm0
test edx, edx
jne 0x140144350
mov r8d, 0x10
add r13, r8
and r13, rcx
movdqu xmm0, xmmword [rax + r13]
pmovmskb edx, xmm0
add r8, 0x10
test edx, edx
je 0x140144338
bsf edx, edx
add rdx, r13
and rdx, rcx
mov r8b, byte [rax + rdx]
test r8b, r8b
js 0x140144371
movdqa xmm0, xmmword [rax]
pmovmskb edx, xmm0
bsf edx, edx
mov r8b, byte [rax + rdx]
lea r9, [rdx - 0x10]
and r9, rcx
mov byte [rax + rdx], r14b
mov byte [r9 + rax + 0x10], r14b
neg rdx
imul rcx, rdx, 0xaf0
lea rbp, [rax + rcx]
and r8b, 1
movzx edx, r8b
sub qword [rsp + 0x100], rdx
add rcx, rax
add rcx, 0xfffffffffffff510
mov r8d, 0xaf0
lea rdx, [rsp + 0x310]
call sub.msvcrt.dll_memcpy
inc qword [rsp + 0x108]
jmp 0x14014414a
movd dword [rsp + 0x164], xmm12
movss dword [rsp + 0x168], xmm11
movss dword [rsp + 0x16c], xmm10
movss dword [rsp + 0x170], xmm9
mov rsi, qword [r12 + 0x420]
inc qword [rsi]
je 0x140146ed3
movups xmm0, xmmword [0x1403b5170]
movaps xmmword [rsp + 0x290], xmm0
movups xmm1, xmmword [str.PQ__]
movaps xmmword [rsp + 0x280], xmm1
movaps xmmword [rsp + 0x2b0], xmm0
movaps xmmword [rsp + 0x2a0], xmm1
movups xmm0, xmmword [r12 + 0x380]
movaps xmmword [rsp + 0x2f0], xmm0
mov rax, qword [r12 + 0x390]
mov qword [rsp + 0x300], rax
cmp qword [rsp + 0x270], 0
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x158], r12
je 0x140145eac
lea rax, [rsi + 0x38]
mov qword [rsp + 0x2c8], rax
movss xmm9, dword [0x1402ec984]
movaps xmm0, xmm13
mulss xmm0, xmm9
call fcn.1402e5b90
cvttss2si rax, xmm0
xor edi, edi
xorps xmm7, xmm7
ucomiss xmm0, xmm7
cmovb eax, edi
movss xmm10, dword [0x1402ec988]
ucomiss xmm0, xmm10
mov ebx, 0xffffffff
cmova eax, ebx
mov qword [rsp + 0x250], rax
mulss xmm6, xmm9
movaps xmm0, xmm6
call fcn.1402e5b90
cvttss2si rax, xmm0
ucomiss xmm0, xmm7
cmovb eax, edi
ucomiss xmm0, xmm10
cmova eax, ebx
mov qword [rsp + 0x2e8], rax
xorps xmm0, xmm0
maxss xmm0, xmm13
movss xmm1, dword [0x1402ec98c]
minss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [rsp + 0x264], eax
lea rax, [rsi + 0x18]
mov qword [rsp + 0x2c0], rax
lea rax, [r12 + 0x398]
mov qword [rsp + 0x2e0], rax
mov rdi, qword [rsi + 0x30]
movss xmm11, dword [0x1402ec990]
movabs rax, 0x8000000000000019
lea rax, [rax - 0x1a]
mov qword [rsp + 0xa0], rax
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_text.rs
mov qword [rsp + 0x268], rax
pcmpeqd xmm12, xmm12
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0x200], rax
mov rbx, qword [rsp + 0xe8]
movss xmm6, dword [rbx + 0x18]
movaps xmm0, xmm6
call fcn.1402e5b90
subss xmm6, xmm0
divss xmm6, xmm15
addss xmm6, xmm14
movaps xmm0, xmm6
call fcn.1402e5b90
mulss xmm0, xmm15
mulss xmm0, xmm9
mov eax, dword [rbx + 0x20]
xorps xmm1, xmm1
maxss xmm1, xmm0
movaps xmm0, xmm11
minss xmm0, xmm1
cvttss2si ecx, xmm0
mov qword [rsp + 0x58], rbx
movdqu xmm0, xmmword [rbx]
mov dword [rsp + 0x230], eax
movdqu xmmword [rsp + 0x220], xmm0
mov rax, qword [rsp + 0x250]
mov dword [rsp + 0x234], eax
mov rax, qword [rsp + 0x2e8]
mov dword [rsp + 0x238], eax
mov byte [rsp + 0x23d], 0
mov byte [rsp + 0x23c], cl
cmp rdi, qword [rsp + 0xa0]
jae 0x140146cee
lea rax, [rdi + 1]
mov qword [rsi + 0x30], rax
cmp qword [rsi + 0x50], 0
je 0x1401446db
lea rcx, [rsp + 0x220]
call fcn.140147bdc
mov rcx, qword [rsp + 0x90]
mov rbx, qword [rcx + 0x38]
mov r14, qword [rcx + 0x40]
mov r15, r14
and r15, rax
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm6, xmm0, 0
lea r13, [rbx - 0x40]
xor ebp, ebp
movdqu xmm7, xmmword [rbx + r15]
movdqa xmm0, xmm7
pcmpeqb xmm0, xmm6
pmovmskb ecx, xmm0
test cx, cx
je 0x1401446a9
lea r12d, [rcx - 1]
and r12d, ecx
bsf eax, ecx
add rax, r15
and rax, r14
shl rax, 6
mov rdx, r13
sub rdx, rax
lea rcx, [rsp + 0x220]
call fcn.140147cbc
mov ecx, r12d
test al, al
je 0x140144674
jmp 0x1401446ce
pcmpeqb xmm7, xmm12
pmovmskb eax, xmm7
test eax, eax
mov r12, qword [rsp + 0x158]
jne 0x1401446db
add r15, rbp
add r15, 0x10
add rbp, 0x10
and r15, r14
jmp 0x140144662
mov rcx, qword [rsp + 0x90]
jmp 0x140145960
mov rbp, qword [rsp + 0x90]
mov qword [rbp + 0x30], rdi
mov rcx, qword [r12 + 0x418]
inc qword [rcx]
je 0x140146ed3
cmp qword [rcx + 0x10], 0
lea rsi, [rsp + 0x310]
mov r14, qword [rsp + 0xa8]
mov r15, qword [rsp + 0x58]
jne 0x140146d11
mov qword [rcx + 0x10], 0xffffffffffffffff
mov rax, qword [r15]
mov qword [rsp + 0xb0], rcx
cmp qword [rcx + 0x38], rax
jbe 0x140146020
mov rcx, qword [rsp + 0xb0]
mov rbx, qword [rcx + 0x30]
lea rax, [rax + rax*2]
shl rax, 5
cmp byte [rbx + rax + 0x58], 2
je 0x140146020
mov rcx, qword [r15 + 8]
add rbx, rax
cmp qword [rbx], rcx
jne 0x140146020
movabs rax, 0x8000000000000019
add rax, 0xfffffffffffffff6
mov qword [rsp + 0x310], rax
mov rcx, rsi
call fcn.140133f11
lea rdi, [rbx + 8]
mov rcx, rsi
mov rdx, rdi
call fcn.14008e153
movzx eax, word [rbx + 0x5c]
mov dword [rsp + 0xbc], eax
movzx r9d, word [r15 + 0x20]
mov eax, dword [rsp + 0x264]
mov word [rsp + 0x20], ax
lea rcx, [rsp + 0x1d0]
mov rdx, rdi
mov r8, rsi
call fcn.14008ea7c
mov rcx, rsi
call fcn.14014874d
movups xmm0, xmmword [rsp + 0x1d0]
movupd xmm1, xmmword [rsp + 0x1e0]
movaps xmmword [rsp + 0xc0], xmm0
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0xe0], rax
movapd xmmword [rsp + 0xd0], xmm1
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x248], rax
movss xmm0, dword [r15 + 0x24]
movss xmm6, dword [r15 + 0x28]
call fcn.1402e4c40
cvttss2si r15, xmm0
xorps xmm7, xmm7
ucomiss xmm0, xmm7
mov edi, 0
cmovb r15d, edi
movss xmm10, dword [0x1402ec988]
ucomiss xmm0, xmm10
mov r14d, 0xffffffff
cmova r15d, r14d
movaps xmm0, xmm6
call fcn.1402e4c40
cvttss2si rbx, xmm0
ucomiss xmm0, xmm7
cmovb ebx, edi
ucomiss xmm0, xmm10
cmova ebx, r14d
cmp qword [rbp + 0x10], 0
jne 0x140146d25
mov rsi, r15
lea r14d, [r15 + 4]
lea r13d, [rbx + 4]
mov qword [rbp + 0x10], 0xffffffffffffffff
mov rax, qword [rbp + 0x28]
test rax, rax
je 0x1401448d6
mov rdi, qword [rbp + 0x20]
imul rbp, rax, 0x38
xor r15d, r15d
lea rcx, [rsp + 0x310]
mov rdx, rdi
mov r8, r14
mov r9, r13
call fcn.14008ddec
cmp qword [rsp + 0x310], 0
jne 0x140144ae4
add rdi, 0x38
inc r15
add rbp, 0xffffffffffffffc8
jne 0x140144893
mov rbp, qword [rsp + 0x90]
mov rax, qword [rbp + 0x10]
inc rax
jmp 0x1401448d8
xor eax, eax
mov qword [rbp + 0x10], rax
mov al, byte [0x1403f9274]
mov ecx, 0x18
mov edx, 8
call fcn.140061500
test rax, rax
je 0x140146d6b
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov ecx, 0x200
mov qword [rax + 0x10], rcx
mov qword [rsp + 0x108], rcx
mov qword [rsp + 0x110], rcx
mov ecx, 1
mov qword [rsp + 0xf0], rcx
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0x100], rcx
lea rcx, [rsp + 0x60]
lea rdx, [rsp + 0xf0]
mov r8, r14
mov r9, r13
call fcn.14008ddec
movabs rax, 0x8000000000000019
lea rdi, [rax - 8]
mov qword [rsp + 0x310], rdi
cmp qword [rsp + 0x60], 0
je 0x140146aae
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x208], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x210], rax
lea rcx, [rsp + 0x310]
call fcn.140133f11
movups xmm0, xmmword [rsp + 0x108]
mov dword [rsp + 0x1a0], 0
movups xmmword [rsp + 0x190], xmm0
mov byte [rsp + 0x1a4], 1
lea rcx, [rsp + 0x310]
mov rdx, qword [rsp + 0x2e0]
mov r8, r12
lea r9, [rsp + 0x190]
call fcn.14009741f
mov rdi, qword [rsp + 0x310]
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x188], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x180], rax
movabs rax, 0x8000000000000019
cmp rdi, rax
jne 0x140146ac8
cmp qword [rbp + 0x10], 0
jne 0x140146d7f
mov qword [rbp + 0x10], 0xffffffffffffffff
mov r15, qword [rsp + 0xf0]
mov rdi, qword [rsp + 0xf8]
lea rcx, [rsp + 0x100]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x320], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x310], xmm0
mov rdx, qword [rbp + 0x28]
cmp rdx, qword [rbp + 0x18]
jne 0x140144a72
mov rcx, qword [rsp + 0x2c0]
call fcn.14018f214
mov rdx, qword [rbp + 0x28]
mov rax, qword [rbp + 0x20]
imul rcx, rdx, 0x38
mov qword [rax + rcx], r15
mov qword [rax + rcx + 8], rdi
movaps xmm0, xmmword [rsp + 0x310]
movups xmmword [rax + rcx + 0x10], xmm0
mov rdx, qword [rsp + 0x320]
mov qword [rax + rcx + 0x20], rdx
mov rdx, qword [rsp + 0x188]
mov qword [rax + rcx + 0x28], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rax + rcx + 0x30], rdx
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x1f8], rax
inc rax
mov qword [rbp + 0x28], rax
mov rax, qword [rbp + 0x10]
inc rax
mov qword [rbp + 0x10], rax
cmp rax, qword [rsp + 0xa0]
jb 0x140144b30
jmp 0x140146d90
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x208], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x210], rax
mov rax, qword [rdi + 0x28]
mov qword [rsp + 0x188], rax
mov rax, qword [rdi + 0x30]
mov qword [rsp + 0x180], rax
mov rbp, qword [rsp + 0x90]
inc qword [rbp + 0x10]
mov qword [rsp + 0x1f8], r15
movabs r15, 0x3e0000003e000000
movabs rax, 0x8000000000000019
add rax, 0xfffffffffffffff1
mov qword [rsp + 0x310], rax
lea rcx, [rsp + 0x310]
call fcn.140133f11
mov rcx, r12
call fcn.14013511d
mov rcx, qword [r12 + 0x3d8]
mov rdx, qword [r12 + 0x3e0]
call fcn.140135447
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0x40]
call fcn.1402e49c0
add esi, 2
cvttss2si ecx, xmm0
ucomiss xmm0, dword [0x1402ec994]
mov eax, 0x7fffffff
cmova ecx, eax
lea eax, [rbx + 2]
mov qword [rsp + 0x98], rax
ucomiss xmm0, xmm0
mov eax, 0
cmovp ecx, eax
mov dword [rsp + 0x174], ecx
mov rax, qword [rsp + 0x208]
lea eax, [rax + 1]
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0x210]
lea ecx, [rax + 1]
mov rax, qword [rsp + 0xc0]
mov ecx, ecx
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0xa8], rsi
mov ecx, esi
mov qword [rsp + 0x148], rcx
cmp rax, 0xa
je 0x140144cb6
cmp eax, 0xb
je 0x140145741
mov edx, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe4]
cmp ecx, dword [rsp + 0x98]
mov r8, qword [rsp + 0xa8]
jne case.default.0x140144c4b
cmp edx, r8d
jne case.default.0x140144c4b
lea rcx, [0x1402eca40]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rbx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov rcx, rdi
xor edx, edx
call fcn.14017ecbb
mov r14, rax
mov r13, rdx
mov rcx, rdx
mov rdx, rbx
mov r8, rdi
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], rdi
mov rax, qword [rsp + 0xa8]
mov dword [rsp + 0x80], eax
mov rcx, qword [rsp + 0x98]
mov dword [rsp + 0x84], ecx
mov qword [rsp + 0x60], 0
jmp 0x1401451c1
movaps xmm6, xmm0
mov rax, qword [rsp + 0x58]
movss xmm7, dword [rax + 0x18]
movaps xmm0, xmm7
call fcn.1402e5b90
subss xmm7, xmm0
divss xmm7, xmm15
addss xmm7, xmm14
movaps xmm0, xmm7
call fcn.1402e5b90
mov rcx, qword [rsp + 0x210]
test rcx, rcx
js 0x140144cf5
cvtsi2ss xmm1, rcx
jmp 0x140144d0a
mov rax, rcx
shr rax, 1
and ecx, 1
or rcx, rax
cvtsi2ss xmm1, rcx
addss xmm1, xmm1
movss xmm3, dword [0x1402ec998]
subss xmm3, xmm1
subss xmm3, xmm6
addss xmm3, dword [0x1402ec99c]
mov rcx, qword [rsp + 0x208]
test rcx, rcx
js 0x140144d36
cvtsi2ss xmm2, rcx
jmp 0x140144d4b
mov rax, rcx
shr rax, 1
and ecx, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
mulss xmm0, xmm15
mov rax, qword [rsp + 0x58]
subss xmm2, dword [rax + 0x3c]
addss xmm2, dword [0x1402ec9a0]
addss xmm2, xmm0
mov rcx, qword [r12 + 0x3d8]
mov rdx, qword [r12 + 0x3e0]
call fcn.14013adf4
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x318], rax
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x320], rax
mov qword [rsp + 0x310], 1
mov rcx, r12
lea rdx, [rsp + 0x310]
call fcn.14013537e
add ebx, dword [rsp + 0x210]
mov eax, 0x1fc
sub eax, ebx
mov dword [rsp + 0x370], 1
mov rcx, qword [rsp + 0x208]
mov dword [rsp + 0x374], ecx
mov dword [rsp + 0x378], eax
mov dword [rsp + 0x37c], r14d
mov dword [rsp + 0x380], r13d
movaps xmm0, xmmword [0x1402ec9b0]
movups xmmword [rsp + 0x384], xmm0
xor eax, eax
mov qword [rsp + 0x358], rax
mov qword [rsp + 0x360], 8
mov qword [rsp + 0x368], rax
mov qword [rsp + 0x310], rax
mov qword [rsp + 0x328], rax
mov qword [rsp + 0x340], rax
mov byte [rsp + 0x50c], 1
mov dword [rsp + 0x508], 0x7070101
mov rcx, r12
lea rdx, [rsp + 0x310]
call fcn.1401354ae
mov rax, qword [r12 + 0x3e0]
test rax, rax
je 0x140146da1
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [rsp + 0xbc]
movaps xmm6, xmm13
divss xmm6, xmm0
mov rcx, qword [r12 + 0x3d8]
mov rdx, rax
shl rdx, 6
lea rax, [rdx + rax*4]
mov dword [rcx + rax - 0x20], 0x1010606
movaps xmm0, xmmword [0x1402ec9c0]
movups xmmword [rsp + 0xf0], xmm0
movaps xmm0, xmmword [0x1402ec9d0]
movups xmmword [rsp + 0x100], xmm0
movaps xmm0, xmmword [0x1402ec9e0]
movups xmmword [rsp + 0x110], xmm0
movaps xmm0, xmmword [0x1402ec9f0]
movups xmmword [rsp + 0x120], xmm0
mov r14, qword [rsp + 0xc8]
xor edi, edi
lea rsi, [rsp + 0x310]
mov rcx, r12
call fcn.14013511d
movss xmm2, dword [rsp + rdi*8 + 0xf0]
movss xmm3, dword [rsp + rdi*8 + 0xf4]
mov rcx, qword [r12 + 0x3d8]
mov rdx, qword [r12 + 0x3e0]
call fcn.14013adf4
mov rcx, qword [r12 + 0x3d8]
mov rdx, qword [r12 + 0x3e0]
movaps xmm2, xmm6
movaps xmm3, xmm6
call fcn.14014882f
mov qword [rsp + 0x318], r15
mov dword [rsp + 0x320], 0x3f800000
movabs rax, 0x3e00000000000002
mov qword [rsp + 0x310], rax
mov byte [rsp + 0x20], 0
mov rcx, r12
mov rdx, r14
mov r8, rsi
xor r9d, r9d
call fcn.14013557e
mov rcx, rsi
call fcn.14009a349
mov rdx, qword [r12 + 0x3e0]
cmp rdx, 1
jbe 0x140144f94
dec rdx
mov qword [r12 + 0x3e0], rdx
jmp 0x140144fa1
mov rcx, qword [r12 + 0x3d8]
call fcn.140135447
inc rdi
cmp rdi, 8
jne 0x140144eec
jmp 0x140145741
movss dword [rsp + 0xbc], xmm13
mov eax, edx
cvtsi2sd xmm7, rax
mov eax, ecx
cvtsi2sd xmm10, rax
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rsp + 0x148]
divsd xmm0, xmm7
mov eax, dword [rsp + 0x98]
cvtsi2sd xmm1, rax
divsd xmm1, xmm10
movapd xmm6, xmm0
cmpunordsd xmm6, xmm0
movapd xmm2, xmm6
andpd xmm2, xmm1
minsd xmm1, xmm0
andnpd xmm6, xmm1
orpd xmm6, xmm2
movapd xmm0, xmm6
mulsd xmm0, xmm7
call fcn.1402e48a0
cvttsd2si rax, xmm0
mov rcx, rax
sar rcx, 0x3f
movapd xmm1, xmm0
movsd xmm15, qword [0x1402eca00]
subsd xmm1, xmm15
cvttsd2si r14, xmm1
and r14, rcx
or r14, rax
xorps xmm13, xmm13
ucomisd xmm0, xmm13
mov esi, 0
cmovb r14, rsi
movsd xmm11, qword [0x1402eca08]
ucomisd xmm0, xmm11
mov rdi, 0xffffffffffffffff
cmova r14, rdi
cmp r14, 1
adc r14, 0
mulsd xmm6, xmm10
movapd xmm0, xmm6
call fcn.1402e48a0
cvttsd2si rax, xmm0
mov rcx, rax
sar rcx, 0x3f
movapd xmm1, xmm0
subsd xmm1, xmm15
cvttsd2si r9, xmm1
and r9, rcx
or r9, rax
ucomisd xmm0, xmm13
cmovb r9, rsi
ucomisd xmm0, xmm11
cmova r9, rdi
cmp r9, 1
adc r9, 0
mov rax, r14
shr rax, 0x20
je 0x140145124
movsd xmm6, qword [0x1402eca10]
movapd xmm0, xmm6
divsd xmm0, xmm7
mulsd xmm0, xmm10
call fcn.1402e48a0
xorpd xmm1, xmm1
maxsd xmm1, xmm0
movapd xmm0, xmm6
minsd xmm0, xmm1
cvttsd2si r9, xmm0
cmp r9d, 2
mov eax, 1
cmovb r9d, eax
mov r14d, 0xffffffff
movss xmm15, dword [0x1402ec974]
movss xmm13, dword [rsp + 0xbc]
movss xmm11, dword [0x1402ec990]
jmp 0x14014518b
mov rax, r9
shr rax, 0x20
movss xmm15, dword [0x1402ec974]
movss xmm11, dword [0x1402ec990]
je 0x140145181
movsd xmm6, qword [0x1402eca10]
movapd xmm0, xmm6
divsd xmm0, xmm10
mulsd xmm0, xmm7
call fcn.1402e48a0
xorpd xmm1, xmm1
maxsd xmm1, xmm0
movapd xmm0, xmm6
minsd xmm0, xmm1
cvttsd2si r14, xmm0
cmp r14d, 2
mov eax, 1
cmovb r14d, eax
mov r9d, 0xffffffff
movss xmm13, dword [rsp + 0xbc]
lea rcx, [rsp + 0x60]
lea rdx, [rsp + 0xc0]
mov r8d, r14d
call fcn.140172036
mov rax, qword [rsp + 0x60]
cmp rax, 3
je 0x1401451fe
cmp rax, 2
je 0x1401451f2
test rax, rax
jne 0x140145715
mov eax, dword [rsp + 0x80]
test eax, eax
je 0x140146e15
mov ecx, eax
mov edx, dword [rsp + 0x84]
movupd xmm0, xmmword [rsp + 0x70]
mov qword [rsp + 0x198], 2
movupd xmmword [rsp + 0x1a0], xmm0
jmp 0x140145448
mov ecx, dword [rsp + 0x80]
jmp 0x140145348
mov eax, dword [rsp + 0x80]
jmp 0x14014540d
mov rbx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov rcx, rdi
xor edx, edx
call fcn.14008821a
mov r14, rax
mov r13, rdx
lea r8, [rdi + rdi]
mov rcx, rdx
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], rdi
mov rax, qword [rsp + 0xa8]
mov dword [rsp + 0x80], eax
mov rax, qword [rsp + 0x98]
mov dword [rsp + 0x84], eax
mov qword [rsp + 0x60], 4
jmp 0x140145715
mov rbx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov rcx, rdi
xor edx, edx
call fcn.14016cf3d
mov r14, rax
mov r13, rdx
lea r8, [rdi*4]
mov rcx, rdx
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], rdi
mov rax, qword [rsp + 0xa8]
mov dword [rsp + 0x80], eax
mov rax, qword [rsp + 0x98]
mov dword [rsp + 0x84], eax
mov qword [rsp + 0x60], 9
jmp 0x140145715
mov rbx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov rcx, rdi
xor edx, edx
call fcn.14017ecbb
mov r14, rax
mov r13, rdx
mov rcx, rdx
mov rdx, rbx
mov r8, rdi
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], rdi
mov rax, qword [rsp + 0xa8]
mov dword [rsp + 0x80], eax
mov rcx, qword [rsp + 0x98]
mov dword [rsp + 0x84], ecx
mov qword [rsp + 0x60], 2
mov ecx, eax
test ecx, ecx
je 0x140146e15
movabs rax, 0xaaaaaaaaaaaaaaab
mul qword [rsp + 0x78]
mov eax, ecx
mov r8d, dword [rsp + 0x84]
shr rdx, 1
mov r9, qword [rsp + 0x70]
mov qword [rsp + 0x198], 0
mov qword [rsp + 0x1a0], r9
mov qword [rsp + 0x1a8], rdx
mov qword [rsp + 0x1b0], rax
mov dword [rsp + 0x1b8], ecx
mov dword [rsp + 0x1bc], r8d
jmp 0x14014545e
mov rbx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov rcx, rdi
xor edx, edx
call fcn.14017ecbb
mov r14, rax
mov r13, rdx
mov rcx, rdx
mov rdx, rbx
mov r8, rdi
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], rdi
mov rax, qword [rsp + 0xa8]
mov dword [rsp + 0x80], eax
mov rcx, qword [rsp + 0x98]
mov dword [rsp + 0x84], ecx
mov qword [rsp + 0x60], 3
test eax, eax
je 0x140146e15
mov ecx, eax
mov edx, dword [rsp + 0x84]
mov r8, qword [rsp + 0x70]
mov r9, qword [rsp + 0x78]
shr r9, 2
mov qword [rsp + 0x198], 1
mov qword [rsp + 0x1a0], r8
mov qword [rsp + 0x1a8], r9
mov qword [rsp + 0x1b0], rcx
mov dword [rsp + 0x1b8], eax
mov dword [rsp + 0x1bc], edx
movabs rax, 0x8000000000000019
mov qword [rsp + 0x190], rax
mov eax, dword [rsp + 0x200]
mov rdx, qword [r12 + 0x3b0]
mov r8, qword [r12 + 0x3b8]
mov r9, qword [r12 + 0x348]
mov cl, byte [r12 + 0x37a]
mov r10, qword [rsp + 0x178]
mov qword [rsp + 0x48], r10
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x198]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], cl
lea rcx, [rsp + 0xf0]
call fcn.140138ad7
movabs rax, 0x8000000000000019
cmp qword [rsp + 0xf0], rax
jne 0x140146e32
lea rcx, [rsp + 0x60]
call fcn.140104f1a
jmp 0x140145741
mov rbx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov rcx, rdi
xor edx, edx
call fcn.14008821a
mov r14, rax
mov r13, rdx
lea r8, [rdi + rdi]
mov rcx, rdx
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], rdi
mov rax, qword [rsp + 0xa8]
mov dword [rsp + 0x80], eax
mov rax, qword [rsp + 0x98]
mov dword [rsp + 0x84], eax
mov qword [rsp + 0x60], 7
jmp 0x140145715
mov rbx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov rcx, rdi
xor edx, edx
call fcn.14017ecbb
mov r14, rax
mov r13, rdx
mov rcx, rdx
mov rdx, rbx
mov r8, rdi
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], rdi
mov rax, qword [rsp + 0xa8]
mov dword [rsp + 0x80], eax
mov rax, qword [rsp + 0x98]
mov dword [rsp + 0x84], eax
mov qword [rsp + 0x60], 1
jmp 0x140145715
mov rbx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov rcx, rdi
xor edx, edx
call fcn.14008821a
mov r14, rax
mov r13, rdx
lea r8, [rdi + rdi]
mov rcx, rdx
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], rdi
mov rax, qword [rsp + 0xa8]
mov dword [rsp + 0x80], eax
mov rax, qword [rsp + 0x98]
mov dword [rsp + 0x84], eax
mov qword [rsp + 0x60], 5
jmp 0x140145715
mov rbx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov rcx, rdi
xor edx, edx
call fcn.14008821a
mov r14, rax
mov r13, rdx
lea r8, [rdi + rdi]
mov rcx, rdx
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], rdi
mov rax, qword [rsp + 0xa8]
mov dword [rsp + 0x80], eax
mov rax, qword [rsp + 0x98]
mov dword [rsp + 0x84], eax
mov qword [rsp + 0x60], 6
jmp 0x140145715
mov rbx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov rcx, rdi
xor edx, edx
call fcn.14016cf3d
mov r14, rax
mov r13, rdx
lea r8, [rdi*4]
mov rcx, rdx
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], rdi
mov rax, qword [rsp + 0xa8]
mov dword [rsp + 0x80], eax
mov rax, qword [rsp + 0x98]
mov dword [rsp + 0x84], eax
mov qword [rsp + 0x60], 8
movabs rax, 0x8000000000000019
dec rax
mov qword [rsp + 0x190], rax
lea rcx, [rsp + 0x60]
call fcn.140104f1a
lea rcx, [rsp + 0x190]
call fcn.140133f11
mov rdx, qword [r12 + 0x3e0]
cmp rdx, 1
jbe 0x14014575c
dec rdx
mov qword [r12 + 0x3e0], rdx
jmp 0x140145769
mov rcx, qword [r12 + 0x3d8]
call fcn.140135447
xor edi, edi
cmp dword [rsp + 0x248], 0xa
setb bl
mov rax, qword [rsp + 0xc0]
cmp rax, 0xb
je 0x1401457a3
cmp eax, 0xa
jne 0x140145796
mov rax, qword [rsp + 0xd0]
dec qword [rax]
jmp 0x1401457a3
lea rcx, [rsp + 0xc0]
call fcn.140104f1a
mov rcx, qword [rsp + 0xb0]
inc qword [rcx + 0x10]
call fcn.140133d62
cmp qword [rbp + 0x30], 0
jne 0x140146d5a
mov qword [rbp + 0x30], 0xffffffffffffffff
lea rcx, [rsp + 0x220]
call fcn.140147bdc
mov rsi, rax
cmp qword [rbp + 0x48], 0
jne 0x1401457eb
mov rcx, qword [rsp + 0x2c8]
call fcn.140148260
mov rax, qword [rsp + 0x150]
movabs rcx, 0xffffff0000000000
and rax, rcx
add rax, qword [rsp + 0x178]
mov dil, bl
shl rdi, 0x20
or rdi, rax
mov qword [rsp + 0x150], rdi
mov rax, qword [rsp + 0x98]
shl rax, 0x20
add qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x200]
shl rax, 0x20
mov ecx, dword [rsp + 0x174]
or rcx, rax
mov qword [rsp + 0xb0], rcx
mov r14, qword [rbp + 0x38]
mov r15, qword [rbp + 0x40]
mov rbp, r15
and rbp, rsi
shr rsi, 0x39
mov qword [rsp + 0x178], rsi
movd xmm0, esi
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm6, xmm0, 0
lea r13, [r14 - 0x40]
xor esi, esi
xor edi, edi
movdqu xmm7, xmmword [r14 + rbp]
movdqa xmm0, xmm7
pcmpeqb xmm0, xmm6
pmovmskb ecx, xmm0
test cx, cx
je 0x1401458c8
lea ebx, [rcx - 1]
and ebx, ecx
bsf r12d, ecx
add r12, rbp
and r12, r15
mov rax, r12
shl rax, 6
mov rdx, r13
sub rdx, rax
lea rcx, [rsp + 0x220]
call fcn.140147cbc
mov ecx, ebx
test al, al
je 0x140145892
jmp 0x140145914
cmp rdi, 1
mov edi, 1
je 0x1401458f0
pmovmskb eax, xmm7
xor edi, edi
test eax, eax
setne dil
bsf eax, eax
add rax, rbp
and rax, r15
mov qword [rsp + 0x248], rax
pcmpeqb xmm7, xmm12
pmovmskb eax, xmm7
test eax, eax
jne 0x140145e2f
add rbp, rsi
add rbp, 0x10
add rsi, 0x10
and rbp, r15
jmp 0x140145880
neg r12
shl r12, 6
add r14, r12
mov rax, r14
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x1f8]
mov qword [rax - 0x20], rdx
mov rdx, qword [rsp + 0x148]
mov qword [rax - 0x18], rdx
mov rdx, qword [rsp + 0xb0]
mov qword [rax - 0x10], rdx
mov rdx, qword [rsp + 0x150]
mov qword [rax - 8], rdx
mov rdi, qword [rcx + 0x30]
inc rdi
mov qword [rcx + 0x30], rdi
cmp rdi, qword [rsp + 0xa0]
jae 0x140146cdf
inc rdi
mov qword [rcx + 0x30], rdi
cmp qword [rcx + 0x50], 0
je 0x140146cc2
mov rax, qword [rsp + 0x58]
add rax, 0x50
mov qword [rsp + 0xb0], rax
lea rcx, [rsp + 0x220]
call fcn.140147bdc
mov rcx, qword [rsp + 0x90]
mov r14, qword [rcx + 0x38]
mov rbx, qword [rcx + 0x40]
mov r15, rbx
and r15, rax
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm6, xmm0, 0
lea r13, [r14 - 0x40]
xor ebp, ebp
movdqu xmm7, xmmword [r14 + r15]
movdqa xmm0, xmm7
pcmpeqb xmm0, xmm6
pmovmskb ecx, xmm0
test cx, cx
je 0x140145a1c
lea esi, [rcx - 1]
and esi, ecx
bsf r12d, ecx
add r12, r15
and r12, rbx
mov rax, r12
shl rax, 6
mov rdx, r13
sub rdx, rax
lea rcx, [rsp + 0x220]
call fcn.140147cbc
mov ecx, esi
test al, al
je 0x1401459e6
jmp 0x140145a3d
pcmpeqb xmm7, xmm12
pmovmskb eax, xmm7
test eax, eax
jne 0x140146cc2
add r15, rbp
add r15, 0x10
add rbp, 0x10
and r15, rbx
jmp 0x1401459d4
mov rsi, qword [rsp + 0x90]
mov rax, qword [rsi + 0x10]
cmp rax, qword [rsp + 0xa0]
jae 0x140146d00
neg r12
shl r12, 6
add r14, r12
inc rax
mov qword [rsi + 0x10], rax
mov r13, qword [r14 - 0x20]
cmp r13, qword [rsi + 0x28]
mov r12, qword [rsp + 0x158]
jae 0x140145d20
mov rax, qword [rsi + 0x20]
imul rcx, r13, 0x38
mov rdx, qword [rax + rcx + 0x18]
test rdx, rdx
js 0x140145a9a
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
jmp 0x140145ab2
mov r8, rdx
shr r8, 1
and edx, 1
or rdx, r8
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
addss xmm0, xmm0
movabs r9, 0x100000001b3
mov rdx, qword [rax + rcx + 0x20]
pcmpeqd xmm3, xmm3
test rdx, rdx
js 0x140145ad1
cvtsi2ss xmm1, rdx
jmp 0x140145ae6
mov r8, rdx
shr r8, 1
and edx, 1
or rdx, r8
cvtsi2ss xmm1, rdx
addss xmm1, xmm1
movaps xmm12, xmm11
movaps xmm14, xmm9
mov rdx, qword [rax + rcx + 0x28]
mov qword [rsp + 0x148], rdx
mov rax, qword [rax + rcx + 0x30]
mov qword [rsp + 0x178], rax
mov al, byte [r14 - 4]
mov qword [rsp + 0x310], r13
movabs r15, 0xcbf29ce484222325
xor ecx, ecx
movzx edx, byte [rsp + rcx + 0x310]
inc rcx
xor r15, rdx
imul r15, r9
cmp rcx, 8
jne 0x140145b20
mov rbx, r15
shr rbx, 0x39
test al, al
movss xmm10, dword [0x1402ec97c]
movaps xmm11, xmm10
divss xmm11, xmm0
divss xmm10, xmm1
lea rdi, [rsp + 0x2a0]
lea rcx, [rsp + 0x280]
cmove rdi, rcx
lea rcx, [rsp + 0x2a8]
lea rdx, [rsp + 0x288]
cmove rcx, rdx
mov rcx, qword [rcx]
mov rdx, rcx
and rdx, r15
mov rbp, qword [rdi]
movd xmm0, ebx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
lea r8, [rbp - 0x30]
xor r9d, r9d
movdqu xmm1, xmmword [rbp + rdx]
movdqa xmm2, xmm1
pcmpeqb xmm2, xmm0
pmovmskb r10d, xmm2
test r10w, r10w
je 0x140145be5
lea esi, [r10 - 1]
and esi, r10d
bsf r10d, r10d
add r10, rdx
and r10, rcx
neg r10
lea r11, [r10 + r10*2]
shl r11, 4
mov r10d, esi
cmp qword [r8 + r11], r13
jne 0x140145bb8
jmp 0x140145c07
pcmpeqb xmm1, xmm3
pmovmskb r10d, xmm1
test r10d, r10d
jne 0x140145d4c
add rdx, r9
add rdx, 0x10
add r9, 0x10
and rdx, rcx
jmp 0x140145ba5
add rbp, r11
mov rsi, qword [rsp + 0x58]
movd xmm0, dword [rsi + 0x18]
movss xmm7, dword [rsi + 0x1c]
call fcn.1402e5b90
movdqa xmm6, xmm0
addss xmm7, dword [rsi + 0x40]
movaps xmm0, xmm7
call fcn.1402e49c0
cvtsi2ss xmm9, dword [r14 - 0x10]
movaps xmm7, xmm0
mov r15d, dword [r14 - 0x18]
mov edi, dword [r14 - 0x14]
mov r13d, dword [r14 - 0xc]
mov ebx, dword [r14 - 8]
mov rdx, qword [rbp - 0x18]
cmp rdx, qword [rbp - 0x28]
jne 0x140145c5f
lea rcx, [rbp - 0x28]
call fcn.14008cdf9
mov rdx, qword [rbp - 0x18]
movss xmm0, dword [0x1402eca18]
addss xmm6, xmm0
subss xmm7, xmm9
addss xmm7, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, r15
addss xmm0, xmm6
xorps xmm1, xmm1
cvtsi2ss xmm1, rdi
xorps xmm2, xmm2
cvtsi2ss xmm2, r13
mulss xmm2, xmm11
cvtsi2ss xmm3, rbx
lea eax, [r13 + r15]
cvtsi2ss xmm4, rax
mulss xmm4, xmm11
lea eax, [rbx + rdi]
cvtsi2ss xmm5, rax
addss xmm1, xmm7
mulss xmm3, xmm10
mulss xmm5, xmm10
mov rax, qword [rbp - 0x20]
shl rdx, 5
movss dword [rax + rdx], xmm6
movss dword [rax + rdx + 4], xmm7
movss dword [rax + rdx + 8], xmm2
movss dword [rax + rdx + 0xc], xmm3
movss dword [rax + rdx + 0x10], xmm0
movss dword [rax + rdx + 0x14], xmm1
movss dword [rax + rdx + 0x18], xmm4
movss dword [rax + rdx + 0x1c], xmm5
inc qword [rbp - 0x18]
mov rsi, qword [rsp + 0x90]
mov rax, qword [rsi + 0x10]
mov rdi, qword [rsi + 0x30]
movaps xmm9, xmm14
movss xmm14, dword [0x1402ec970]
movaps xmm11, xmm12
pcmpeqd xmm12, xmm12
dec rdi
mov qword [rsi + 0x30], rdi
dec rax
mov qword [rsi + 0x10], rax
mov rax, qword [rsp + 0xb0]
mov rbx, rax
cmp rax, qword [rsp + 0x258]
jne 0x140144579
jmp 0x140145eac
test al, al
lea rax, [rsp + 0x2a0]
lea rcx, [rsp + 0x280]
cmove rax, rcx
cmp qword [rax + 0x10], 0
jne 0x140145d71
mov rcx, rdi
call fcn.140147cfd
mov rax, qword [rdi]
mov rcx, qword [rdi + 8]
and r15, rcx
movdqu xmm0, xmmword [rax + r15]
pmovmskb edx, xmm0
test edx, edx
jne 0x140145da7
mov r8d, 0x10
add r15, r8
and r15, rcx
movdqu xmm0, xmmword [rax + r15]
pmovmskb edx, xmm0
add r8, 0x10
test edx, edx
je 0x140145d8f
bsf edx, edx
add rdx, r15
and rdx, rcx
mov r8b, byte [rax + rdx]
test r8b, r8b
js 0x140145dc8
movdqa xmm0, xmmword [rax]
pmovmskb edx, xmm0
bsf edx, edx
mov r8b, byte [rax + rdx]
lea r9, [rdx - 0x10]
and r9, rcx
mov byte [rax + rdx], bl
mov byte [r9 + rax + 0x10], bl
neg rdx
lea rcx, [rdx + rdx*2]
shl rcx, 4
lea rbp, [rax + rcx]
and r8b, 1
movzx edx, r8b
sub qword [rdi + 0x10], rdx
mov qword [rax + rcx - 0x30], r13
xor edx, edx
mov qword [rax + rcx - 0x28], rdx
mov qword [rax + rcx - 0x20], 4
mov qword [rax + rcx - 0x18], rdx
mov rdx, qword [rsp + 0x148]
mov qword [rax + rcx - 0x10], rdx
mov rdx, qword [rsp + 0x178]
mov qword [rax + rcx - 8], rdx
inc qword [rdi + 0x18]
jmp 0x140145c0a
mov rdx, qword [rsp + 0x248]
mov al, byte [r14 + rdx]
test al, al
js 0x140145e4f
movdqa xmm0, xmmword [r14]
pmovmskb eax, xmm0
bsf edx, eax
mov al, byte [r14 + rdx]
and al, 1
movzx eax, al
mov rcx, qword [rsp + 0x90]
sub qword [rcx + 0x48], rax
lea rax, [rdx - 0x10]
and rax, r15
mov r8, qword [rsp + 0x178]
mov byte [r14 + rdx], r8b
mov byte [rax + r14 + 0x10], r8b
inc qword [rcx + 0x50]
shl rdx, 6
mov rax, r14
sub rax, rdx
neg rdx
movdqu xmm0, xmmword [rsp + 0x220]
movupd xmm1, xmmword [rsp + 0x230]
movdqu xmmword [r14 + rdx - 0x40], xmm0
movupd xmmword [rax - 0x30], xmm1
jmp 0x140145929
lea rdx, [rsp + 0x2f0]
mov rcx, r12
call fcn.14013537e
lea r10, [rsp + 0x280]
mov rax, qword [r10]
mov rcx, qword [r10 + 8]
lea r11, [rcx + rax]
inc r11
movdqa xmm0, xmmword [rax]
pmovmskb r9d, xmm0
mov edx, r9d
not edx
lea r8, [rax + 0x10]
mov rcx, qword [r10 + 0x18]
movaps xmm0, xmmword [r10 + 0x10]
movups xmmword [rsp + 0x128], xmm0
movdqa xmm0, xmmword [r10]
movdqu xmmword [rsp + 0x118], xmm0
movups xmm6, xmmword [0x1403b5170]
movaps xmmword [r10 + 0x10], xmm6
movups xmm7, xmmword [str.PQ__]
movaps xmmword [r10], xmm7
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], r8
mov qword [rsp + 0x100], r11
mov word [rsp + 0x108], dx
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x138], r10
test rcx, rcx
je 0x140145fc8
cmp r9w, 0xffff
jne 0x140145f83
movdqa xmm0, xmmword [r8]
pmovmskb edx, xmm0
add rax, 0xfffffffffffffd00
add r8, 0x10
cmp edx, 0xffff
je 0x140145f56
not edx
mov qword [rsp + 0xf8], r8
mov qword [rsp + 0xf0], rax
lea r8d, [rdx - 1]
and r8d, edx
mov word [rsp + 0x108], r8w
bsf edx, edx
neg rdx
lea rdx, [rdx + rdx*2]
shl rdx, 4
dec rcx
mov qword [rsp + 0x110], rcx
mov rdi, qword [rax + rdx - 0x28]
movabs r8, 0x8000000000000019
add r8, 0xffffffffffffffe7
cmp rdi, r8
jne 0x14014604a
xor eax, eax
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], 8
mov qword [rsp + 0xd0], rax
lea rcx, [rsp + 0xf0]
call fcn.14012ffb1
movss xmm9, dword [rsp + 0x170]
movss xmm10, dword [rsp + 0x16c]
movss xmm11, dword [rsp + 0x168]
movd xmm12, dword [rsp + 0x164]
jmp 0x140146280
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x188], rax
movabs rdi, 0x8000000000000019
add rdi, 0xfffffffffffffff6
mov rax, 0xffffffffffffffff
jmp 0x140146b9c
mov qword [rsp + 0x58], r8
add rax, rdx
mov rsi, qword [rax - 0x20]
mov rdx, qword [rax - 8]
mov qword [rsp + 0x320], rdx
movups xmm0, xmmword [rax - 0x18]
movaps xmmword [rsp + 0x310], xmm0
inc rcx
mov rax, 0xffffffffffffffff
cmovne rax, rcx
cmp rax, 5
mov ecx, 4
cmovae rcx, rax
call fcn.140130053
lea r8, [rsp + 0x310]
mov rcx, qword [r8 + 0x10]
mov qword [rsp + 0x70], rcx
movaps xmm0, xmmword [r8]
movaps xmmword [rsp + 0x60], xmm0
mov qword [rdx], rdi
mov qword [rdx + 8], rsi
movdqa xmm0, xmmword [rsp + 0x60]
movdqu xmmword [rdx + 0x10], xmm0
mov rcx, qword [rsp + 0x70]
mov qword [rdx + 0x20], rcx
mov qword [rsp + 0x1d0], rax
mov qword [rsp + 0x1d8], rdx
mov qword [rsp + 0x1e0], 1
lea rsi, [rsp + 0xf0]
mov ecx, 0xa
mov rdi, r8
rep movsq qword [rdi], qword [rsi]
mov r14, qword [r8 + 0x20]
test r14, r14
movss xmm9, dword [rsp + 0x170]
movss xmm10, dword [rsp + 0x16c]
movss xmm11, dword [rsp + 0x168]
movd xmm12, dword [rsp + 0x164]
je 0x140146251
movzx edi, word [rsp + 0x328]
mov r15, qword [rsp + 0x310]
mov rbp, qword [rsp + 0x318]
mov esi, 1
mov r8, qword [rsp + 0x58]
test di, di
jne 0x14014617c
movdqa xmm0, xmmword [rbp]
pmovmskb edi, xmm0
add r15, 0xfffffffffffffd00
add rbp, 0x10
cmp edi, 0xffff
je 0x14014614e
not edi
mov qword [rsp + 0x318], rbp
mov qword [rsp + 0x310], r15
mov eax, edi
lea edi, [rax - 1]
and edi, eax
mov word [rsp + 0x328], di
dec r14
test r15, r15
je 0x140146249
bsf eax, eax
neg rax
lea rax, [rax + rax*2]
shl rax, 4
add rax, r15
mov rbx, qword [rax - 0x28]
cmp rbx, r8
je 0x140146249
mov r13, qword [rax - 0x20]
mov rcx, qword [rax - 8]
mov qword [rsp + 0x1a0], rcx
movups xmm0, xmmword [rax - 0x18]
movaps xmmword [rsp + 0x190], xmm0
cmp rsi, qword [rsp + 0x1d0]
jne 0x140146209
mov r8, r14
inc r8
mov rax, 0xffffffffffffffff
cmove r8, rax
lea rcx, [rsp + 0x1d0]
mov rdx, rsi
call fcn.14013012a
mov rdx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0x58]
lea rax, [rsi + rsi*4]
mov qword [rdx + rax*8], rbx
mov qword [rdx + rax*8 + 8], r13
movdqa xmm0, xmmword [rsp + 0x190]
movdqu xmmword [rdx + rax*8 + 0x10], xmm0
mov rcx, qword [rsp + 0x1a0]
mov qword [rdx + rax*8 + 0x20], rcx
inc rsi
mov qword [rsp + 0x1e0], rsi
test r14, r14
jne 0x140146149
xor r14d, r14d
mov qword [rsp + 0x330], r14
lea rcx, [rsp + 0x310]
call fcn.14012ffb1
movdqu xmm0, xmmword [rsp + 0x1d0]
movdqa xmmword [rsp + 0xc0], xmm0
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0xd0], rax
lea r10, [rsp + 0x2a0]
mov rax, qword [r10]
mov rcx, qword [r10 + 8]
lea r11, [rcx + rax]
inc r11
movdqa xmm0, xmmword [rax]
pmovmskb r9d, xmm0
mov edx, r9d
not edx
lea r8, [rax + 0x10]
mov rcx, qword [r10 + 0x18]
movaps xmm0, xmmword [r10 + 0x10]
movups xmmword [rsp + 0x128], xmm0
movdqa xmm0, xmmword [r10]
movdqu xmmword [rsp + 0x118], xmm0
movaps xmmword [r10 + 0x10], xmm6
movaps xmmword [r10], xmm7
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], r8
mov qword [rsp + 0x100], r11
mov word [rsp + 0x108], dx
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x138], r10
test rcx, rcx
je 0x14014637a
cmp r9w, 0xffff
jne 0x140146339
movdqa xmm0, xmmword [r8]
pmovmskb edx, xmm0
add rax, 0xfffffffffffffd00
add r8, 0x10
cmp edx, 0xffff
je 0x14014630c
not edx
mov qword [rsp + 0xf8], r8
mov qword [rsp + 0xf0], rax
lea r8d, [rdx - 1]
and r8d, edx
mov word [rsp + 0x108], r8w
bsf edx, edx
neg rdx
lea rdx, [rdx + rdx*2]
shl rdx, 4
dec rcx
mov qword [rsp + 0x110], rcx
mov rdi, qword [rax + rdx - 0x28]
movabs r8, 0x8000000000000019
add r8, 0xffffffffffffffe7
cmp rdi, r8
jne 0x140146396
lea rcx, [rsp + 0xf0]
call fcn.14012ffb1
mov ebp, 8
xor r13d, r13d
xor esi, esi
jmp 0x140146610
mov qword [rsp + 0xa0], r8
add rax, rdx
mov rsi, qword [rax - 0x20]
mov rdx, qword [rax - 8]
mov qword [rsp + 0x320], rdx
movdqu xmm0, xmmword [rax - 0x18]
movdqa xmmword [rsp + 0x310], xmm0
inc rcx
mov rax, 0xffffffffffffffff
cmovne rax, rcx
cmp rax, 5
mov ecx, 4
cmovae rcx, rax
call fcn.140130053
mov r13, rax
mov rbp, rdx
lea rax, [rsp + 0x310]
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x70], rcx
movaps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x60], xmm0
mov qword [rdx], rdi
mov qword [rdx + 8], rsi
movdqa xmm0, xmmword [rsp + 0x60]
movdqu xmmword [rdx + 0x10], xmm0
mov rcx, qword [rsp + 0x70]
mov qword [rdx + 0x20], rcx
mov qword [rsp + 0x1d0], r13
mov qword [rsp + 0x1d8], rdx
mov qword [rsp + 0x1e0], 1
lea rsi, [rsp + 0xf0]
mov ecx, 0xa
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
mov r14, qword [rax + 0x20]
test r14, r14
je 0x1401465fe
movzx ebx, word [rsp + 0x328]
mov r15, qword [rsp + 0x310]
mov rdi, qword [rsp + 0x318]
mov esi, 1
mov rdx, qword [rsp + 0xa0]
test bx, bx
jne 0x1401464ac
movdqa xmm0, xmmword [rdi]
pmovmskb ebx, xmm0
add r15, 0xfffffffffffffd00
add rdi, 0x10
cmp ebx, 0xffff
je 0x14014647f
not ebx
mov qword [rsp + 0x318], rdi
mov qword [rsp + 0x310], r15
mov eax, ebx
lea ebx, [rax - 1]
and ebx, eax
mov word [rsp + 0x328], bx
dec r14
test r15, r15
je 0x140146589
bsf eax, eax
neg rax
lea rax, [rax + rax*2]
shl rax, 4
add rax, r15
mov r13, qword [rax - 0x28]
cmp r13, rdx
je 0x140146589
mov r8, qword [rax - 0x20]
mov rcx, qword [rax - 8]
mov qword [rsp + 0x1a0], rcx
movdqu xmm0, xmmword [rax - 0x18]
movdqa xmmword [rsp + 0x190], xmm0
cmp rsi, qword [rsp + 0x1d0]
jne 0x140146548
mov qword [rsp + 0x58], r8
mov r8, r14
inc r8
mov rax, 0xffffffffffffffff
cmove r8, rax
lea rcx, [rsp + 0x1d0]
mov rdx, rsi
call fcn.14013012a
mov rbp, qword [rsp + 0x1d8]
mov rdx, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x58]
lea rax, [rsi + rsi*4]
mov qword [rbp + rax*8], r13
mov qword [rbp + rax*8 + 8], r8
movdqa xmm0, xmmword [rsp + 0x190]
movdqu xmmword [rbp + rax*8 + 0x10], xmm0
mov rcx, qword [rsp + 0x1a0]
mov qword [rbp + rax*8 + 0x20], rcx
inc rsi
mov qword [rsp + 0x1e0], rsi
test r14, r14
jne 0x14014647a
xor r14d, r14d
mov qword [rsp + 0x330], r14
mov r13, qword [rsp + 0x1d0]
mov rbp, qword [rsp + 0x1d8]
jmp 0x140146603
lea rcx, [rsp + 0xf0]
call fcn.14014a408
inc qword [r14 + 0x10]
mov rcx, r14
call fcn.140133d62
jmp 0x1401469e0
mov rsi, qword [rsp + 0x318]
lea rcx, [rsp + 0xf0]
call fcn.14014a408
inc qword [r14 + 0x10]
mov rcx, r14
call fcn.140133d62
mov rax, qword [rsp + 0x218]
mov qword [rax + 8], rsi
mov rcx, qword [rsp + 0x158]
mov qword [rax], rcx
jmp 0x140146c3a
mov esi, 1
lea rcx, [rsp + 0x310]
call fcn.14012ffb1
mov rdi, qword [rsp + 0xc0]
mov r14, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xd0]
lea rcx, [rsp + 0x2a0]
call fcn.140147afa
lea rcx, [rsp + 0x280]
call fcn.140147afa
mov qword [rsp + 0xf0], rdi
mov qword [rsp + 0xf8], r14
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0x108], r13
mov qword [rsp + 0x110], rbp
mov qword [rsp + 0x118], rsi
mov rax, qword [r12 + 0x3e0]
test rax, rax
je 0x140146ddb
mov rcx, qword [r12 + 0x3d8]
mov rdx, rax
shl rdx, 6
lea rax, [rdx + rax*4]
mov rdx, qword [rcx + rax - 0xc]
mov qword [rsp + 0xd0], rdx
movdqu xmm0, xmmword [rcx + rax - 0x1c]
movdqa xmmword [rsp + 0xc0], xmm0
movss dword [rsp + 0x220], xmm8
mov rdx, qword [rsp + 0xff0]
add rdx, 0xd0
lea rcx, [rsp + 0x310]
call fcn.1401371e5
mov rax, qword [r12 + 0x3e0]
test rax, rax
je 0x140146df8
mov rcx, qword [r12 + 0x3d8]
mov rdx, rax
shl rdx, 6
lea rax, [rdx + rax*4]
movss xmm1, dword [rcx + rax - 4]
lea rcx, [rsp + 0x310]
call fcn.14009b722
lea rax, [rbx + rbx*4]
lea rax, [r14 + rax*8]
mov qword [rsp + 0x190], r14
mov qword [rsp + 0x198], rdi
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x1a8], rax
test rbx, rbx
je 0x14014685a
add r14, 0x28
movabs rax, 0x8000000000000019
add rax, 0xffffffffffffffe7
mov qword [rsp + 0xa0], rax
lea r15, [rsp + 0xc0]
mov rbp, qword [r14 - 0x28]
cmp rbp, qword [rsp + 0xa0]
je 0x140146842
lea r13, [r14 - 0x28]
mov rsi, qword [r13 + 8]
mov rax, qword [r13 + 0x10]
mov r12, qword [r13 + 0x18]
mov rdi, qword [r13 + 0x20]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x1d0]
mov rdx, r15
lea r8, [rsp + 0x220]
mov r9, rsi
call fcn.1401473c0
mov rbx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0x1e0]
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x60], 1
lea rax, [rsp + 0x60]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x310]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x158]
mov rdx, rbx
mov rdi, r15
mov r9, r15
call fcn.1401478b2
cmp qword [rsp + 0x1d0], 0
je 0x140146811
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, rbx
call fcn.1402e3f64
test rbp, rbp
je 0x140146827
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, rsi
call fcn.1402e3f64
add r14, 0x28
add r13, 0x28
cmp r13, qword [rsp + 0x58]
mov r15, rdi
jne 0x14014675f
mov r14, qword [rsp + 0x58]
mov r13, qword [rsp + 0x108]
mov rbp, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x118]
lea rdi, [rsp + 0x190]
mov qword [rdi + 0x10], r14
mov rcx, rdi
call fcn.140147373
lea rax, [rsi + rsi*4]
lea rax, [rax*8]
add rax, rbp
mov qword [rdi], rbp
mov qword [rdi + 8], r13
mov qword [rsp + 0x58], rax
mov qword [rdi + 0x18], rax
test rsi, rsi
je 0x1401469ad
add rbp, 0x28
movabs rax, 0x8000000000000019
add rax, 0xffffffffffffffe7
mov qword [rsp + 0xa0], rax
lea r15, [rsp + 0xc0]
mov rdi, qword [rsp + 0xe8]
mov r14, qword [rbp - 0x28]
cmp r14, qword [rsp + 0xa0]
je 0x1401469b5
lea r13, [rbp - 0x28]
mov rsi, qword [r13 + 8]
mov rax, qword [r13 + 0x10]
mov r12, qword [r13 + 0x18]
mov rdi, qword [r13 + 0x20]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x1d0]
mov rdx, r15
lea r8, [rsp + 0x220]
mov r9, rsi
call fcn.1401473c0
mov rbx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0x1e0]
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x60], 2
lea rax, [rsp + 0x60]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x310]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x158]
mov rdx, rbx
mov r12, r15
mov r9, r15
call fcn.1401478b2
cmp qword [rsp + 0x1d0], 0
mov rdi, qword [rsp + 0xe8]
je 0x14014697a
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, rbx
call fcn.1402e3f64
test r14, r14
je 0x140146990
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, rsi
call fcn.1402e3f64
add rbp, 0x28
add r13, 0x28
cmp r13, qword [rsp + 0x58]
mov r15, r12
jne 0x1401468c0
mov rbp, qword [rsp + 0x58]
jmp 0x1401469b5
mov rdi, qword [rsp + 0xe8]
lea rcx, [rsp + 0x190]
mov qword [rcx + 0x10], rbp
call fcn.140147373
lea rcx, [rsp + 0x310]
call fcn.14009a349
mov rcx, qword [rsp + 0x90]
call fcn.140137002
mulss xmm9, xmm8
mulss xmm10, xmm8
mulss xmm11, xmm8
mulss xmm12, xmm8
mov rdx, qword [rsp + 0x270]
test rdx, rdx
je 0x140146a5c
mov rax, qword [rsp + 0x2d0]
lea rax, [rax + rax*4]
xor ecx, ecx
movss xmm0, dword [rdi + rcx + 0x18]
mulss xmm0, xmm8
movss dword [rdi + rcx + 0x18], xmm0
movss xmm0, dword [rdi + rcx + 0x1c]
mulss xmm0, xmm8
movss dword [rdi + rcx + 0x1c], xmm0
movss xmm0, dword [rdi + rcx + 0x24]
mulss xmm0, xmm8
movss dword [rdi + rcx + 0x24], xmm0
movss xmm0, dword [rdi + rcx + 0x28]
mulss xmm0, xmm8
movss dword [rdi + rcx + 0x28], xmm0
add rcx, 0x50
cmp rax, rcx
jne 0x140146a0f
mov rax, qword [rsp + 0x240]
mov rcx, qword [rsp + 0x218]
mov qword [rcx + 8], rax
mov qword [rcx + 0x10], rdi
mov qword [rcx + 0x18], rdx
mov rax, qword [rsp + 0x2d8]
mov qword [rcx + 0x20], rax
movss dword [rcx + 0x28], xmm9
movss dword [rcx + 0x2c], xmm10
movss dword [rcx + 0x30], xmm11
movss dword [rcx + 0x34], xmm12
movabs rax, 0x8000000000000019
mov qword [rcx], rax
jmp 0x140146c56
mov rax, qword [rsp + 0x208]
mov qword [rsp + 0x150], rax
mov r12, qword [rsp + 0x210]
jmp 0x140146b00
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x1f8], rax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x150], rax
mov r12, qword [rsp + 0x338]
mov rbx, qword [rsp + 0x340]
mov rsi, qword [rsp + 0x348]
cmp qword [rsp + 0xf0], 0
je 0x140146b21
mov r8, qword [rsp + 0xf8]
mov rcx, qword [0x1403f9220]
xor edx, edx
call fcn.1402e3f64
mov rax, qword [rsp + 0x180]
shr rax, 0x20
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x1f8]
shr rax, 0x20
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0xc0]
cmp rax, 0xb
je 0x140146b76
cmp eax, 0xa
jne 0x140146b69
mov rax, qword [rsp + 0xd0]
dec qword [rax]
jmp 0x140146b76
lea rcx, [rsp + 0xc0]
call fcn.140104f1a
mov rax, qword [rsp + 0xb0]
mov rax, qword [rax + 0x10]
mov rcx, qword [rsp + 0x180]
mov r14d, ecx
mov rcx, qword [rsp + 0x1f8]
mov dword [rsp + 0x174], ecx
inc rax
mov rcx, qword [rsp + 0xb0]
mov qword [rcx + 0x10], rax
call fcn.140133d62
mov rax, qword [rsp + 0x98]
shl rax, 0x20
mov r14d, r14d
or r14, rax
mov rax, qword [rsp + 0x200]
shl rax, 0x20
mov r15d, dword [rsp + 0x174]
or r15, rax
lea rcx, [rsp + 0x2a0]
call fcn.140147afa
lea rcx, [rsp + 0x280]
call fcn.140147afa
mov rax, qword [rsp + 0x218]
mov rcx, qword [rsp + 0x188]
mov qword [rax + 8], rcx
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r15
mov rcx, qword [rsp + 0x150]
mov qword [rax + 0x20], rcx
mov qword [rax + 0x28], r12
mov qword [rax + 0x30], rbx
mov qword [rax], rdi
mov qword [rax + 0x38], rsi
mov rcx, rbp
mov rdi, qword [rsp + 0xe8]
call fcn.140137002
cmp qword [rsp + 0x240], 0
je 0x140146c56
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, rdi
call fcn.1402e3f64
movaps xmm6, xmmword [rsp + 0xed0]
movaps xmm7, xmmword [rsp + 0xee0]
movaps xmm8, xmmword [rsp + 0xef0]
movaps xmm9, xmmword [rsp + 0xf00]
movaps xmm10, xmmword [rsp + 0xf10]
movaps xmm11, xmmword [rsp + 0xf20]
movaps xmm12, xmmword [rsp + 0xf30]
movaps xmm13, xmmword [rsp + 0xf40]
movaps xmm14, xmmword [rsp + 0xf50]
movaps xmm15, xmmword [rsp + 0xf60]
add rsp, 0xf78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_text.rs
mov edx, 0x2b
call fcn.14007aaa0
jmp 0x140146ed3
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_text.rs
mov qword [rsp + 0x268], rax
mov rcx, qword [rsp + 0x268]
call fcn.14007ed30
jmp 0x140146ed3
lea rcx, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_text.rs
call fcn.14007ed30
jmp 0x140146ed3
mov rsi, rcx
lea rcx, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_text.rs
call fcn.14007ecd0
jmp 0x140146ed3
lea rcx, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_text.rs
call fcn.14007ecd0
jmp 0x140146ed3
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_lib.rs
mov edx, 0x2b
call fcn.14007aaa0
lea rcx, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_lib.rs
call fcn.14007ecd0
lea rcx, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_text.rs
call fcn.14007ecd0
jmp 0x140146ed3
mov ecx, 8
mov edx, 0x18
call fcn.140077010
jmp 0x140146ed3
lea rcx, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_text.rs
call fcn.14007ecd0
jmp 0x140146ed3
lea rcx, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_text.rs
call fcn.14007ed30
jmp 0x140146ed3
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_lib.rs
mov edx, 0x2b
call fcn.14007aaa0
jmp 0x140146ed3
lea rcx, str.internal_error:_entered_unreachable_codefatal_runtime_error:_thread_local_panicked_on_drop_n
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_text.rs
mov edx, 0x28
call fcn.14007aaa0
jmp 0x140146ed3
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_lib.rs
mov edx, 0x2b
call fcn.14007aaa0
jmp 0x140146ed3
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_lib.rs
mov edx, 0x2b
call fcn.14007aaa0
jmp 0x140146ed3
lea rcx, str.assertion_failed:_stride___0_home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_imgref_1.10.1_src_lib.rs
lea r8, [0x14034f530]
mov edx, 0x1c
call fcn.14007aaa0
jmp 0x140146ed3
movupd xmm0, xmmword [rsp + 0xf0]
movupd xmm1, xmmword [rsp + 0x100]
movupd xmm2, xmmword [rsp + 0x110]
movups xmm3, xmmword [rsp + 0x120]
lea r8, [rsp + 0x310]
movaps xmmword [r8 + 0x30], xmm3
movapd xmmword [r8 + 0x20], xmm2
movapd xmmword [r8 + 0x10], xmm1
movapd xmmword [r8], xmm0
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_text.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, fcn.140133f11
mov edx, 0x2b
call fcn.14007f9a0
jmp 0x140146ed3
lea rcx, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_femtovg_0.8.2_src_text.rs
call fcn.14007ecd0
jmp 0x140146ed3
lea rax, str.J__
mov qword [rsp + 0x20], rax
lea rcx, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_threadlocal.rs
lea r9, [0x14034ec80]
lea r8, [rsp + 0x310]
mov edx, 0x46
call fcn.14007f9a0
ud2