180089102:	4c 03 c0             	add    %rax,%r8
180089105:	48 8b c1             	mov    %rcx,%rax
180089108:	48 99                	cqto
18008910a:	49 f7 f8             	idiv   %r8
18008910d:	89 45 9f             	mov    %eax,-0x61(%rbp)
180089110:	eb 03                	jmp    0x180089115
180089112:	89 75 9f             	mov    %esi,-0x61(%rbp)
180089115:	44 89 6d a3          	mov    %r13d,-0x5d(%rbp)
180089119:	41 0f 10 3f          	movups (%r15),%xmm7
18008911d:	44 0f 10 07          	movups (%rdi),%xmm8
180089121:	4d 85 c9             	test   %r9,%r9
180089124:	74 0a                	je     0x180089130
180089126:	41 0f 10 31          	movups (%r9),%xmm6
18008912a:	c6 45 ae 01          	movb   $0x1,-0x52(%rbp)
18008912e:	eb 04                	jmp    0x180089134
180089130:	0f 28 75 af          	movaps -0x51(%rbp),%xmm6
180089134:	48 8d 55 5f          	lea    0x5f(%rbp),%rdx
180089138:	41 8b cd             	mov    %r13d,%ecx
18008913b:	e8 e8 01 00 00       	call   0x180089328
180089140:	89 45 77             	mov    %eax,0x77(%rbp)
180089143:	8b d8                	mov    %eax,%ebx
180089145:	85 c0                	test   %eax,%eax
180089147:	0f 88 ae 00 00 00    	js     0x1800891fb
18008914d:	48 8b 75 5f          	mov    0x5f(%rbp),%rsi
180089151:	0f 28 45 9f          	movaps -0x61(%rbp),%xmm0
180089155:	4c 8d 76 44          	lea    0x44(%rsi),%r14
180089159:	0f 11 06             	movups %xmm0,(%rsi)
18008915c:	0f 11 76 10          	movups %xmm6,0x10(%rsi)
180089160:	0f 11 7e 20          	movups %xmm7,0x20(%rsi)
180089164:	44 0f 11 46 30       	movups %xmm8,0x30(%rsi)
180089169:	44 89 56 40          	mov    %r10d,0x40(%rsi)
18008916d:	45 85 db             	test   %r11d,%r11d
180089170:	74 29                	je     0x18008919b
180089172:	49 8d 5c 24 08       	lea    0x8(%r12),%rbx
180089177:	4d 8b e3             	mov    %r11,%r12
18008917a:	44 8b 03             	mov    (%rbx),%r8d
18008917d:	49 8b ce             	mov    %r14,%rcx
180089180:	48 8b 53 f8          	mov    -0x8(%rbx),%rdx
180089184:	e8 37 c8 0a 00       	call   0x1801359c0
180089189:	8b 03                	mov    (%rbx),%eax
18008918b:	48 8d 5b 10          	lea    0x10(%rbx),%rbx
18008918f:	4c 03 f0             	add    %rax,%r14
180089192:	49 83 ec 01          	sub    $0x1,%r12
180089196:	75 e2                	jne    0x18008917a
180089198:	8b 5d 77             	mov    0x77(%rbp),%ebx
18008919b:	49 8b 07             	mov    (%r15),%rax
18008919e:	48 3b 05 33 c0 0b 00 	cmp    0xbc033(%rip),%rax        # 0x1801451d8
1800891a5:	75 54                	jne    0x1800891fb
1800891a7:	49 8b 47 08          	mov    0x8(%r15),%rax
1800891ab:	48 3b 05 2e c0 0b 00 	cmp    0xbc02e(%rip),%rax        # 0x1801451e0
1800891b2:	75 47                	jne    0x1800891fb
1800891b4:	48 b8 00 00 00 00 00 	movabs $0x80000000000,%rax
1800891bb:	08 00 00
1800891be:	48 85 47 08          	test   %rax,0x8(%rdi)
1800891c2:	74 37                	je     0x1800891fb
1800891c4:	f6 05 0d a7 11 00 01 	testb  $0x1,0x11a70d(%rip)        # 0x1801a38d8
1800891cb:	b9 02 00 00 00       	mov    $0x2,%ecx
1800891d0:	75 05                	jne    0x1800891d7
1800891d2:	38 4f 04             	cmp    %cl,0x4(%rdi)
1800891d5:	77 24                	ja     0x1800891fb
1800891d7:	8a 47 04             	mov    0x4(%rdi),%al
1800891da:	84 c0                	test   %al,%al
1800891dc:	74 08                	je     0x1800891e6
1800891de:	3a c1                	cmp    %cl,%al
1800891e0:	76 46                	jbe    0x180089228
1800891e2:	3c 03                	cmp    $0x3,%al
1800891e4:	74 05                	je     0x1800891eb
1800891e6:	b9 01 00 00 00       	mov    $0x1,%ecx
1800891eb:	45 8b cd             	mov    %r13d,%r9d
1800891ee:	4c 8b c6             	mov    %rsi,%r8
1800891f1:	ba 50 00 00 00       	mov    $0x50,%edx
1800891f6:	e8 d9 54 ff ff       	call   0x18007e6d4
1800891fb:	4c 8d 9c 24 a0 00 00 	lea    0xa0(%rsp),%r11
180089202:	00
180089203:	8b c3                	mov    %ebx,%eax
180089205:	49 8b 5b 48          	mov    0x48(%r11),%rbx
180089209:	41 0f 28 73 f0       	movaps -0x10(%r11),%xmm6
18008920e:	41 0f 28 7b e0       	movaps -0x20(%r11),%xmm7
180089213:	45 0f 28 43 d0       	movaps -0x30(%r11),%xmm8
180089218:	49 8b e3             	mov    %r11,%rsp
18008921b:	41 5f                	pop    %r15
18008921d:	41 5e                	pop    %r14
18008921f:	41 5d                	pop    %r13
180089221:	41 5c                	pop    %r12
180089223:	5f                   	pop    %rdi
180089224:	5e                   	pop    %rsi
180089225:	5d                   	pop    %rbp
180089226:	c3                   	ret
180089227:	cc                   	int3
180089228:	b9 03 00 00 00       	mov    $0x3,%ecx
18008922d:	eb bc                	jmp    0x1800891eb
18008922f:	cc                   	int3
180089230:	48 83 ec 38          	sub    $0x38,%rsp
180089234:	89 54 24 20          	mov    %edx,0x20(%rsp)
180089238:	48 8d 15 e9 be 0b 00 	lea    0xbbee9(%rip),%rdx        # 0x180145128
18008923f:	44 8b c9             	mov    %ecx,%r9d
180089242:	0f ba e1 1e          	bt     $0x1e,%ecx
180089246:	73 07                	jae    0x18008924f
180089248:	48 8d 15 b1 c3 0b 00 	lea    0xbc3b1(%rip),%rdx        # 0x180145600
18008924f:	e8 f4 bc f7 ff       	call   0x180004f48
180089254:	48 83 c4 38          	add    $0x38,%rsp
180089258:	c3                   	ret
180089259:	cc                   	int3
18008925a:	cc                   	int3
18008925b:	cc                   	int3
18008925c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180089261:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
180089266:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18008926b:	57                   	push   %rdi
18008926c:	48 83 ec 40          	sub    $0x40,%rsp
180089270:	48 8b f1             	mov    %rcx,%rsi
180089273:	49 8b f9             	mov    %r9,%rdi
180089276:	b9 10 00 00 00       	mov    $0x10,%ecx
18008927b:	49 8b e8             	mov    %r8,%rbp
18008927e:	48 8b da             	mov    %rdx,%rbx
180089281:	e8 ca 0b 01 00       	call   0x180099e50
180089286:	48 85 c0             	test   %rax,%rax
180089289:	75 07                	jne    0x180089292
18008928b:	b8 17 00 00 c0       	mov    $0xc0000017,%eax
180089290:	eb 37                	jmp    0x1800892c9
180089292:	0f 10 06             	movups (%rsi),%xmm0
180089295:	f3 0f 7f 00          	movdqu %xmm0,(%rax)
180089299:	48 89 07             	mov    %rax,(%rdi)
18008929c:	48 85 db             	test   %rbx,%rbx
18008929f:	74 26                	je     0x1800892c7
1800892a1:	49 83 c9 ff          	or     $0xffffffffffffffff,%r9
1800892a5:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
1800892aa:	48 83 64 24 28 00    	andq   $0x0,0x28(%rsp)
1800892b0:	48 8b c3             	mov    %rbx,%rax
1800892b3:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
1800892b9:	45 33 c0             	xor    %r8d,%r8d
1800892bc:	33 c9                	xor    %ecx,%ecx
1800892be:	41 8d 51 02          	lea    0x2(%r9),%edx
1800892c2:	ff d0                	call   *%rax
1800892c4:	0f 1f 00             	nopl   (%rax)
1800892c7:	33 c0                	xor    %eax,%eax
1800892c9:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1800892ce:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
1800892d3:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
1800892d8:	48 83 c4 40          	add    $0x40,%rsp
1800892dc:	5f                   	pop    %rdi
1800892dd:	c3                   	ret
1800892de:	cc                   	int3
1800892df:	cc                   	int3
1800892e0:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1800892e5:	44 8b 4c 24 28       	mov    0x28(%rsp),%r9d
1800892ea:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1800892ef:	e9 6c fd ff ff       	jmp    0x180089060
1800892f4:	48 83 ec 28          	sub    $0x28,%rsp
1800892f8:	48 85 c9             	test   %rcx,%rcx
1800892fb:	74 05                	je     0x180089302
1800892fd:	e8 fa 0c 01 00       	call   0x180099ffc
180089302:	33 c0                	xor    %eax,%eax
180089304:	48 83 c4 28          	add    $0x28,%rsp
180089308:	c3                   	ret
180089309:	cc                   	int3
18008930a:	cc                   	int3
18008930b:	cc                   	int3
18008930c:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
180089311:	48 8d 0d c0 be 0b 00 	lea    0xbbec0(%rip),%rcx        # 0x1801451d8
180089318:	44 8b 4c 24 28       	mov    0x28(%rsp),%r9d
18008931d:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180089322:	e9 39 fd ff ff       	jmp    0x180089060
180089327:	cc                   	int3
180089328:	4c 8b 0d 91 a5 11 00 	mov    0x11a591(%rip),%r9        # 0x1801a38c0
18008932f:	45 33 c0             	xor    %r8d,%r8d
180089332:	4d 85 c9             	test   %r9,%r9
180089335:	74 47                	je     0x18008937e
180089337:	44 38 05 96 a5 11 00 	cmp    %r8b,0x11a596(%rip)        # 0x1801a38d4
18008933e:	75 3e                	jne    0x18008937e
180089340:	8b 05 82 a5 11 00    	mov    0x11a582(%rip),%eax        # 0x1801a38c8
180089346:	49 83 c1 07          	add    $0x7,%r9
18008934a:	4c 03 c8             	add    %rax,%r9
18008934d:	49 83 e1 f8          	and    $0xfffffffffffffff8,%r9
180089351:	41 8b c1             	mov    %r9d,%eax
180089354:	2b 05 66 a5 11 00    	sub    0x11a566(%rip),%eax        # 0x1801a38c0
18008935a:	03 c1                	add    %ecx,%eax
18008935c:	3b 05 6a a5 11 00    	cmp    0x11a56a(%rip),%eax        # 0x1801a38cc
180089362:	76 0f                	jbe    0x180089373
180089364:	c6 05 69 a5 11 00 01 	movb   $0x1,0x11a569(%rip)        # 0x1801a38d4
18008936b:	41 b8 23 00 00 c0    	mov    $0xc0000023,%r8d
180089371:	eb 11                	jmp    0x180089384
180089373:	4c 89 0a             	mov    %r9,(%rdx)
180089376:	89 05 4c a5 11 00    	mov    %eax,0x11a54c(%rip)        # 0x1801a38c8
18008937c:	eb 0c                	jmp    0x18008938a
18008937e:	41 b8 0a 00 1a c0    	mov    $0xc01a000a,%r8d
180089384:	ff 05 46 a5 11 00    	incl   0x11a546(%rip)        # 0x1801a38d0
18008938a:	41 8b c0             	mov    %r8d,%eax
18008938d:	c3                   	ret
18008938e:	cc                   	int3
18008938f:	cc                   	int3
180089390:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180089395:	57                   	push   %rdi
180089396:	48 83 ec 20          	sub    $0x20,%rsp
18008939a:	80 3d 0f a5 11 00 00 	cmpb   $0x0,0x11a50f(%rip)        # 0x1801a38b0
1800893a1:	48 8b fa             	mov    %rdx,%rdi
1800893a4:	48 8b d9             	mov    %rcx,%rbx
1800893a7:	75 09                	jne    0x1800893b2
1800893a9:	e8 2a 00 00 00       	call   0x1800893d8
1800893ae:	85 c0                	test   %eax,%eax
1800893b0:	78 19                	js     0x1800893cb
1800893b2:	48 85 db             	test   %rbx,%rbx
1800893b5:	74 0a                	je     0x1800893c1
1800893b7:	48 8b 05 ea a4 11 00 	mov    0x11a4ea(%rip),%rax        # 0x1801a38a8
1800893be:	48 89 03             	mov    %rax,(%rbx)
1800893c1:	8b 05 ed a4 11 00    	mov    0x11a4ed(%rip),%eax        # 0x1801a38b4
1800893c7:	89 07                	mov    %eax,(%rdi)
1800893c9:	33 c0                	xor    %eax,%eax
1800893cb:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1800893d0:	48 83 c4 20          	add    $0x20,%rsp
1800893d4:	5f                   	pop    %rdi
1800893d5:	c3                   	ret
1800893d6:	cc                   	int3
1800893d7:	cc                   	int3
1800893d8:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1800893dd:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1800893e2:	56                   	push   %rsi
1800893e3:	57                   	push   %rdi
1800893e4:	41 55                	push   %r13
1800893e6:	41 56                	push   %r14
1800893e8:	41 57                	push   %r15
1800893ea:	48 83 ec 20          	sub    $0x20,%rsp
1800893ee:	80 3d bb a4 11 00 00 	cmpb   $0x0,0x11a4bb(%rip)        # 0x1801a38b0
1800893f5:	74 07                	je     0x1800893fe
1800893f7:	33 c0                	xor    %eax,%eax
1800893f9:	e9 51 02 00 00       	jmp    0x18008964f
1800893fe:	48 83 64 24 50 00    	andq   $0x0,0x50(%rsp)
180089404:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
180089409:	ba 53 52 41 54       	mov    $0x54415253,%edx
18008940e:	33 f6                	xor    %esi,%esi
180089410:	e8 03 9c 00 00       	call   0x180093018
180089415:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
18008941a:	44 8d 6e 01          	lea    0x1(%rsi),%r13d
18008941e:	85 c0                	test   %eax,%eax
180089420:	78 59                	js     0x18008947b
180089422:	44 8b 47 04          	mov    0x4(%rdi),%r8d
180089426:	48 8d 57 30          	lea    0x30(%rdi),%rdx
18008942a:	4c 03 c7             	add    %rdi,%r8
18008942d:	48 8d 42 02          	lea    0x2(%rdx),%rax
180089431:	eb 43                	jmp    0x180089476
180089433:	80 7a 01 02          	cmpb   $0x2,0x1(%rdx)
180089437:	72 42                	jb     0x18008947b
180089439:	44 0f b6 4a 01       	movzbl 0x1(%rdx),%r9d
18008943e:	4c 03 ca             	add    %rdx,%r9
180089441:	4d 3b c8             	cmp    %r8,%r9
180089444:	77 35                	ja     0x18008947b
180089446:	44 38 2a             	cmp    %r13b,(%rdx)
180089449:	75 18                	jne    0x180089463
18008944b:	44 84 6a 1c          	test   %r13b,0x1c(%rdx)
18008944f:	74 12                	je     0x180089463
180089451:	48 83 7a 10 00       	cmpq   $0x0,0x10(%rdx)
180089456:	74 0b                	je     0x180089463
180089458:	80 7a 01 28          	cmpb   $0x28,0x1(%rdx)
18008945c:	72 05                	jb     0x180089463
18008945e:	41 8a cd             	mov    %r13b,%cl
180089461:	eb 02                	jmp    0x180089465
180089463:	32 c9                	xor    %cl,%cl
180089465:	8d 46 01             	lea    0x1(%rsi),%eax
180089468:	84 c9                	test   %cl,%cl
18008946a:	49 8b d1             	mov    %r9,%rdx
18008946d:	0f 44 c6             	cmove  %esi,%eax
180089470:	8b f0                	mov    %eax,%esi
180089472:	49 8d 41 02          	lea    0x2(%r9),%rax
180089476:	49 3b c0             	cmp    %r8,%rax
180089479:	76 b8                	jbe    0x180089433
18008947b:	8b ee                	mov    %esi,%ebp
18008947d:	85 f6                	test   %esi,%esi
18008947f:	41 0f 44 ed          	cmove  %r13d,%ebp
180089483:	44 8b fd             	mov    %ebp,%r15d
180089486:	4c 8d 34 6d 00 00 00 	lea    0x0(,%rbp,2),%r14
18008948d:	00
18008948e:	4c 03 f5             	add    %rbp,%r14
180089491:	49 c1 e6 03          	shl    $0x3,%r14
180089495:	49 8b ce             	mov    %r14,%rcx
180089498:	e8 b3 09 01 00       	call   0x180099e50
18008949d:	48 8b d8             	mov    %rax,%rbx
1800894a0:	48 85 c0             	test   %rax,%rax
1800894a3:	75 0a                	jne    0x1800894af
1800894a5:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
1800894aa:	e9 91 01 00 00       	jmp    0x180089640
1800894af:	4d 8b c6             	mov    %r14,%r8
1800894b2:	33 d2                	xor    %edx,%edx
1800894b4:	48 8b cb             	mov    %rbx,%rcx
1800894b7:	e8 c4 c7 0a 00       	call   0x180135c80
1800894bc:	85 f6                	test   %esi,%esi
1800894be:	75 19                	jne    0x1800894d9
1800894c0:	83 0b ff             	orl    $0xffffffff,(%rbx)
1800894c3:	48 83 63 08 00       	andq   $0x0,0x8(%rbx)
1800894c8:	48 83 4b 10 ff       	orq    $0xffffffffffffffff,0x10(%rbx)
1800894cd:	44 89 2d e0 a3 11 00 	mov    %r13d,0x11a3e0(%rip)        # 0x1801a38b4
1800894d4:	e9 57 01 00 00       	jmp    0x180089630
1800894d9:	44 8b 57 04          	mov    0x4(%rdi),%r10d
1800894dd:	4c 8d 47 30          	lea    0x30(%rdi),%r8
1800894e1:	4c 03 d7             	add    %rdi,%r10
1800894e4:	4d 8d 48 02          	lea    0x2(%r8),%r9
1800894e8:	4d 3b ca             	cmp    %r10,%r9
1800894eb:	0f 87 ba 00 00 00    	ja     0x1800895ab
1800894f1:	48 8d 73 10          	lea    0x10(%rbx),%rsi
1800894f5:	41 0f b6 50 01       	movzbl 0x1(%r8),%edx
1800894fa:	80 fa 02             	cmp    $0x2,%dl
1800894fd:	0f 82 a8 00 00 00    	jb     0x1800895ab
180089503:	49 8d 04 10          	lea    (%r8,%rdx,1),%rax
180089507:	49 3b c2             	cmp    %r10,%rax
18008950a:	0f 87 9b 00 00 00    	ja     0x1800895ab
180089510:	45 0f b6 18          	movzbl (%r8),%r11d
180089514:	45 3b dd             	cmp    %r13d,%r11d
180089517:	75 7f                	jne    0x180089598
180089519:	45 84 68 1c          	test   %r13b,0x1c(%r8)
18008951d:	74 79                	je     0x180089598
18008951f:	49 83 78 10 00       	cmpq   $0x0,0x10(%r8)
180089524:	74 72                	je     0x180089598
180089526:	80 fa 28             	cmp    $0x28,%dl
180089529:	72 6d                	jb     0x180089598
18008952b:	44 38 6f 08          	cmp    %r13b,0x8(%rdi)
18008952f:	75 06                	jne    0x180089537
180089531:	41 0f b6 09          	movzbl (%r9),%ecx
180089535:	eb 38                	jmp    0x18008956f
180089537:	45 84 db             	test   %r11b,%r11b
18008953a:	75 24                	jne    0x180089560
18008953c:	41 0f b6 40 0a       	movzbl 0xa(%r8),%eax
180089541:	41 0f b6 48 0b       	movzbl 0xb(%r8),%ecx
180089546:	c1 e1 08             	shl    $0x8,%ecx
180089549:	03 c8                	add    %eax,%ecx
18008954b:	41 0f b6 40 09       	movzbl 0x9(%r8),%eax
180089550:	c1 e1 08             	shl    $0x8,%ecx
180089553:	03 c8                	add    %eax,%ecx
180089555:	41 0f b6 01          	movzbl (%r9),%eax
180089559:	c1 e1 08             	shl    $0x8,%ecx
18008955c:	03 c8                	add    %eax,%ecx
18008955e:	eb 0f                	jmp    0x18008956f
180089560:	41 80 fb 02          	cmp    $0x2,%r11b
180089564:	75 06                	jne    0x18008956c
180089566:	41 8b 48 04          	mov    0x4(%r8),%ecx
18008956a:	eb 03                	jmp    0x18008956f
18008956c:	41 8b 09             	mov    (%r9),%ecx
18008956f:	89 4e f0             	mov    %ecx,-0x10(%rsi)
180089572:	49 8b 40 08          	mov    0x8(%r8),%rax
180089576:	48 c1 f8 0c          	sar    $0xc,%rax
18008957a:	48 89 46 f8          	mov    %rax,-0x8(%rsi)
18008957e:	49 8b 50 10          	mov    0x10(%r8),%rdx
180089582:	48 ff ca             	dec    %rdx
180089585:	49 03 50 08          	add    0x8(%r8),%rdx
180089589:	48 c1 ea 0c          	shr    $0xc,%rdx
18008958d:	48 89 16             	mov    %rdx,(%rsi)
180089590:	48 83 c6 18          	add    $0x18,%rsi
180089594:	41 8a 50 01          	mov    0x1(%r8),%dl
180089598:	0f b6 c2             	movzbl %dl,%eax
18008959b:	4c 03 c0             	add    %rax,%r8
18008959e:	4d 8d 48 02          	lea    0x2(%r8),%r9
1800895a2:	4d 3b ca             	cmp    %r10,%r9