14080909c:	4c 0f af e1          	imul   %rcx,%r12
1408090a0:	41 0f b6 40 02       	movzbl 0x2(%r8),%eax
1408090a5:	4c 33 e0             	xor    %rax,%r12
1408090a8:	4c 0f af e1          	imul   %rcx,%r12
1408090ac:	41 0f b6 40 03       	movzbl 0x3(%r8),%eax
1408090b1:	4c 33 e0             	xor    %rax,%r12
1408090b4:	4c 0f af e1          	imul   %rcx,%r12
1408090b8:	41 0f b6 40 04       	movzbl 0x4(%r8),%eax
1408090bd:	4c 33 e0             	xor    %rax,%r12
1408090c0:	4c 0f af e1          	imul   %rcx,%r12
1408090c4:	41 0f b6 40 05       	movzbl 0x5(%r8),%eax
1408090c9:	4c 33 e0             	xor    %rax,%r12
1408090cc:	4c 0f af e1          	imul   %rcx,%r12
1408090d0:	41 0f b6 40 06       	movzbl 0x6(%r8),%eax
1408090d5:	4c 33 e0             	xor    %rax,%r12
1408090d8:	4c 0f af e1          	imul   %rcx,%r12
1408090dc:	41 0f b6 40 07       	movzbl 0x7(%r8),%eax
1408090e1:	4c 33 e0             	xor    %rax,%r12
1408090e4:	4c 0f af e1          	imul   %rcx,%r12
1408090e8:	49 8b cc             	mov    %r12,%rcx
1408090eb:	48 23 4e 30          	and    0x30(%rsi),%rcx
1408090ef:	48 03 c9             	add    %rcx,%rcx
1408090f2:	48 8b 56 18          	mov    0x18(%rsi),%rdx
1408090f6:	48 8b 5c ca 08       	mov    0x8(%rdx,%rcx,8),%rbx
1408090fb:	48 8d 46 08          	lea    0x8(%rsi),%rax
1408090ff:	4c 8b 38             	mov    (%rax),%r15
140809102:	49 3b df             	cmp    %r15,%rbx
140809105:	75 08                	jne    0x14080910f
140809107:	49 8b df             	mov    %r15,%rbx
14080910a:	49 8b ef             	mov    %r15,%rbp
14080910d:	eb 52                	jmp    0x140809161
14080910f:	48 8b 0c ca          	mov    (%rdx,%rcx,8),%rcx
140809113:	49 8b 00             	mov    (%r8),%rax
140809116:	48 3b 43 10          	cmp    0x10(%rbx),%rax
14080911a:	74 13                	je     0x14080912f
14080911c:	0f 1f 40 00          	nopl   0x0(%rax)
140809120:	48 3b d9             	cmp    %rcx,%rbx
140809123:	74 32                	je     0x140809157
140809125:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
140809129:	48 3b 43 10          	cmp    0x10(%rbx),%rax
14080912d:	75 f1                	jne    0x140809120
14080912f:	49 89 1e             	mov    %rbx,(%r14)
140809132:	41 c6 46 08 00       	movb   $0x0,0x8(%r14)
140809137:	49 8b c6             	mov    %r14,%rax
14080913a:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14080913f:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140809144:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140809149:	48 83 c4 30          	add    $0x30,%rsp
14080914d:	41 5f                	pop    %r15
14080914f:	41 5e                	pop    %r14
140809151:	41 5d                	pop    %r13
140809153:	41 5c                	pop    %r12
140809155:	5f                   	pop    %rdi
140809156:	c3                   	ret
140809157:	4c 8b fb             	mov    %rbx,%r15
14080915a:	48 8b eb             	mov    %rbx,%rbp
14080915d:	48 8d 46 08          	lea    0x8(%rsi),%rax
140809161:	48 b9 92 24 49 92 24 	movabs $0x492492492492492,%rcx
140809168:	49 92 04
14080916b:	48 39 4e 10          	cmp    %rcx,0x10(%rsi)
14080916f:	0f 84 4f 01 00 00    	je     0x1408092c4
140809175:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14080917a:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140809181:	00 00
140809183:	b9 38 00 00 00       	mov    $0x38,%ecx
140809188:	e8 7b 1f 61 00       	call   0x140e1b108
14080918d:	48 8b f8             	mov    %rax,%rdi
140809190:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140809195:	49 8b 4d 00          	mov    0x0(%r13),%rcx
140809199:	48 89 48 10          	mov    %rcx,0x10(%rax)
14080919d:	0f 57 c0             	xorps  %xmm0,%xmm0
1408091a0:	0f 11 40 18          	movups %xmm0,0x18(%rax)
1408091a4:	45 33 ed             	xor    %r13d,%r13d
1408091a7:	4c 89 68 28          	mov    %r13,0x28(%rax)
1408091ab:	48 c7 40 30 0f 00 00 	movq   $0xf,0x30(%rax)
1408091b2:	00
1408091b3:	44 88 68 18          	mov    %r13b,0x18(%rax)
1408091b7:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
1408091bb:	48 83 c1 01          	add    $0x1,%rcx
1408091bf:	0f 57 c0             	xorps  %xmm0,%xmm0
1408091c2:	78 07                	js     0x1408091cb
1408091c4:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
1408091c9:	eb 15                	jmp    0x1408091e0
1408091cb:	48 8b c1             	mov    %rcx,%rax
1408091ce:	48 d1 e8             	shr    $1,%rax
1408091d1:	83 e1 01             	and    $0x1,%ecx
1408091d4:	48 0b c1             	or     %rcx,%rax
1408091d7:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
1408091dc:	f3 0f 58 c0          	addss  %xmm0,%xmm0
1408091e0:	48 8b 4e 38          	mov    0x38(%rsi),%rcx
1408091e4:	0f 57 c9             	xorps  %xmm1,%xmm1
1408091e7:	48 85 c9             	test   %rcx,%rcx
1408091ea:	78 07                	js     0x1408091f3
1408091ec:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
1408091f1:	eb 15                	jmp    0x140809208
1408091f3:	48 8b c1             	mov    %rcx,%rax
1408091f6:	48 d1 e8             	shr    $1,%rax
1408091f9:	83 e1 01             	and    $0x1,%ecx
1408091fc:	48 0b c1             	or     %rcx,%rax
1408091ff:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
140809204:	f3 0f 58 c9          	addss  %xmm1,%xmm1
140809208:	f3 0f 5e c1          	divss  %xmm1,%xmm0
14080920c:	0f 2f 06             	comiss (%rsi),%xmm0
14080920f:	76 54                	jbe    0x140809265
140809211:	48 8b ce             	mov    %rsi,%rcx
140809214:	e8 87 4e e7 ff       	call   0x14067e0a0
140809219:	48 8b 4e 30          	mov    0x30(%rsi),%rcx
14080921d:	49 23 cc             	and    %r12,%rcx
140809220:	48 03 c9             	add    %rcx,%rcx
140809223:	48 8b 56 18          	mov    0x18(%rsi),%rdx
140809227:	48 8b 44 ca 08       	mov    0x8(%rdx,%rcx,8),%rax
14080922c:	48 8b 5e 08          	mov    0x8(%rsi),%rbx
140809230:	48 3b c3             	cmp    %rbx,%rax
140809233:	74 23                	je     0x140809258
140809235:	48 8b 14 ca          	mov    (%rdx,%rcx,8),%rdx
140809239:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
14080923d:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140809241:	74 12                	je     0x140809255
140809243:	48 8b d8             	mov    %rax,%rbx
140809246:	48 3b c2             	cmp    %rdx,%rax
140809249:	74 4e                	je     0x140809299
14080924b:	48 8b 40 08          	mov    0x8(%rax),%rax
14080924f:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140809253:	75 ee                	jne    0x140809243
140809255:	48 8b 18             	mov    (%rax),%rbx
140809258:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14080925d:	48 8b eb             	mov    %rbx,%rbp
140809260:	4c 8b 7c 24 20       	mov    0x20(%rsp),%r15
140809265:	48 8b 53 08          	mov    0x8(%rbx),%rdx
140809269:	48 ff 46 10          	incq   0x10(%rsi)
14080926d:	4c 89 3f             	mov    %r15,(%rdi)
140809270:	48 89 57 08          	mov    %rdx,0x8(%rdi)
140809274:	48 89 3a             	mov    %rdi,(%rdx)
140809277:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
14080927b:	48 8b 4e 18          	mov    0x18(%rsi),%rcx
14080927f:	48 8b 46 30          	mov    0x30(%rsi),%rax
140809283:	49 23 c4             	and    %r12,%rax
140809286:	48 03 c0             	add    %rax,%rax
140809289:	4c 8b 04 c1          	mov    (%rcx,%rax,8),%r8
14080928d:	4c 3b 46 08          	cmp    0x8(%rsi),%r8
140809291:	75 0d                	jne    0x1408092a0
140809293:	48 89 3c c1          	mov    %rdi,(%rcx,%rax,8)
140809297:	eb 19                	jmp    0x1408092b2
140809299:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14080929e:	eb bd                	jmp    0x14080925d
1408092a0:	4c 3b c5             	cmp    %rbp,%r8
1408092a3:	75 06                	jne    0x1408092ab
1408092a5:	48 89 3c c1          	mov    %rdi,(%rcx,%rax,8)
1408092a9:	eb 0c                	jmp    0x1408092b7
1408092ab:	48 39 54 c1 08       	cmp    %rdx,0x8(%rcx,%rax,8)
1408092b0:	75 05                	jne    0x1408092b7
1408092b2:	48 89 7c c1 08       	mov    %rdi,0x8(%rcx,%rax,8)
1408092b7:	49 89 3e             	mov    %rdi,(%r14)
1408092ba:	41 c6 46 08 01       	movb   $0x1,0x8(%r14)
1408092bf:	e9 73 fe ff ff       	jmp    0x140809137
1408092c4:	48 8d 0d d5 51 7a 00 	lea    0x7a51d5(%rip),%rcx        # 0x140fae4a0
1408092cb:	e8 e4 20 5f 00       	call   0x140dfb3b4
1408092d0:	cc                   	int3
1408092d1:	cc                   	int3
1408092d2:	cc                   	int3
1408092d3:	cc                   	int3
1408092d4:	cc                   	int3
1408092d5:	cc                   	int3
1408092d6:	cc                   	int3
1408092d7:	cc                   	int3
1408092d8:	cc                   	int3
1408092d9:	cc                   	int3
1408092da:	cc                   	int3
1408092db:	cc                   	int3
1408092dc:	cc                   	int3
1408092dd:	cc                   	int3
1408092de:	cc                   	int3
1408092df:	cc                   	int3
1408092e0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1408092e5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1408092ea:	57                   	push   %rdi
1408092eb:	48 83 ec 40          	sub    $0x40,%rsp
1408092ef:	49 8b f8             	mov    %r8,%rdi
1408092f2:	48 8b f2             	mov    %rdx,%rsi
1408092f5:	48 8b d9             	mov    %rcx,%rbx
1408092f8:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
1408092fd:	4c 89 44 24 28       	mov    %r8,0x28(%rsp)
140809302:	4c 89 4c 24 30       	mov    %r9,0x30(%rsp)
140809307:	48 85 d2             	test   %rdx,%rdx
14080930a:	74 22                	je     0x14080932e
14080930c:	0f 1f 40 00          	nopl   0x0(%rax)
140809310:	48 8b d3             	mov    %rbx,%rdx
140809313:	48 8b cf             	mov    %rdi,%rcx
140809316:	e8 25 03 00 00       	call   0x140809640
14080931b:	48 83 c7 30          	add    $0x30,%rdi
14080931f:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
140809324:	48 83 c3 30          	add    $0x30,%rbx
140809328:	48 83 ee 01          	sub    $0x1,%rsi
14080932c:	75 e2                	jne    0x140809310
14080932e:	48 8b c7             	mov    %rdi,%rax
140809331:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140809336:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
14080933b:	48 83 c4 40          	add    $0x40,%rsp
14080933f:	5f                   	pop    %rdi
140809340:	c3                   	ret
140809341:	cc                   	int3
140809342:	cc                   	int3
140809343:	cc                   	int3
140809344:	cc                   	int3
140809345:	cc                   	int3
140809346:	cc                   	int3
140809347:	cc                   	int3
140809348:	cc                   	int3
140809349:	cc                   	int3
14080934a:	cc                   	int3
14080934b:	cc                   	int3
14080934c:	cc                   	int3
14080934d:	cc                   	int3
14080934e:	cc                   	int3
14080934f:	cc                   	int3
140809350:	4d 8b c8             	mov    %r8,%r9
140809353:	48 3b ca             	cmp    %rdx,%rcx
140809356:	0f 84 7d 00 00 00    	je     0x1408093d9
14080935c:	4d 8b d1             	mov    %r9,%r10
14080935f:	4c 8d 41 08          	lea    0x8(%rcx),%r8
140809363:	4c 2b d1             	sub    %rcx,%r10
140809366:	45 33 db             	xor    %r11d,%r11d
140809369:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140809370:	49 8b 40 f8          	mov    -0x8(%r8),%rax
140809374:	0f 57 c0             	xorps  %xmm0,%xmm0
140809377:	4d 89 58 f8          	mov    %r11,-0x8(%r8)
14080937b:	4d 8d 40 30          	lea    0x30(%r8),%r8
14080937f:	49 89 01             	mov    %rax,(%r9)
140809382:	49 83 c1 30          	add    $0x30,%r9
140809386:	43 0f 11 44 02 d0    	movups %xmm0,-0x30(%r10,%r8,1)
14080938c:	4f 89 5c 02 e0       	mov    %r11,-0x20(%r10,%r8,1)
140809391:	4f 89 5c 02 e8       	mov    %r11,-0x18(%r10,%r8,1)
140809396:	41 0f 10 40 d0       	movups -0x30(%r8),%xmm0
14080939b:	43 0f 11 44 02 d0    	movups %xmm0,-0x30(%r10,%r8,1)
1408093a1:	41 0f 10 48 e0       	movups -0x20(%r8),%xmm1
1408093a6:	43 0f 11 4c 02 e0    	movups %xmm1,-0x20(%r10,%r8,1)
1408093ac:	4d 89 58 e0          	mov    %r11,-0x20(%r8)
1408093b0:	49 c7 40 e8 0f 00 00 	movq   $0xf,-0x18(%r8)
1408093b7:	00
1408093b8:	45 88 58 d0          	mov    %r11b,-0x30(%r8)
1408093bc:	41 0f b6 48 f0       	movzbl -0x10(%r8),%ecx
1408093c1:	43 88 4c 02 f0       	mov    %cl,-0x10(%r10,%r8,1)
1408093c6:	41 0f b6 48 f1       	movzbl -0xf(%r8),%ecx
1408093cb:	43 88 4c 02 f1       	mov    %cl,-0xf(%r10,%r8,1)
1408093d0:	49 8d 48 f8          	lea    -0x8(%r8),%rcx
1408093d4:	48 3b ca             	cmp    %rdx,%rcx
1408093d7:	75 97                	jne    0x140809370
1408093d9:	49 8b c1             	mov    %r9,%rax
1408093dc:	c3                   	ret
1408093dd:	cc                   	int3
1408093de:	cc                   	int3
1408093df:	cc                   	int3
1408093e0:	4c 8b 49 08          	mov    0x8(%rcx),%r9
1408093e4:	4c 3b 49 10          	cmp    0x10(%rcx),%r9
1408093e8:	74 1a                	je     0x140809404
1408093ea:	48 8b 02             	mov    (%rdx),%rax
1408093ed:	48 c7 02 00 00 00 00 	movq   $0x0,(%rdx)
1408093f4:	49 89 01             	mov    %rax,(%r9)
1408093f7:	48 8b 41 08          	mov    0x8(%rcx),%rax
1408093fb:	48 8d 50 08          	lea    0x8(%rax),%rdx
1408093ff:	48 89 51 08          	mov    %rdx,0x8(%rcx)
140809403:	c3                   	ret
140809404:	4c 8b c2             	mov    %rdx,%r8
140809407:	49 8b d1             	mov    %r9,%rdx
14080940a:	e9 51 f4 ff ff       	jmp    0x140808860
14080940f:	cc                   	int3
140809410:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140809415:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14080941a:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14080941f:	57                   	push   %rdi
140809420:	48 83 ec 30          	sub    $0x30,%rsp
140809424:	48 8b f2             	mov    %rdx,%rsi
140809427:	48 8b f9             	mov    %rcx,%rdi
14080942a:	b9 50 00 00 00       	mov    $0x50,%ecx
14080942f:	e8 d4 1c 61 00       	call   0x140e1b108
140809434:	48 8b d8             	mov    %rax,%rbx
140809437:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
14080943c:	48 85 c0             	test   %rax,%rax
14080943f:	74 2c                	je     0x14080946d
140809441:	0f 57 c0             	xorps  %xmm0,%xmm0
140809444:	0f 11 00             	movups %xmm0,(%rax)
140809447:	c7 40 08 01 00 00 00 	movl   $0x1,0x8(%rax)
14080944e:	c7 40 0c 01 00 00 00 	movl   $0x1,0xc(%rax)
140809455:	48 8d 05 cc 42 83 00 	lea    0x8342cc(%rip),%rax        # 0x14103d728
14080945c:	48 89 03             	mov    %rax,(%rbx)
14080945f:	48 8d 4b 10          	lea    0x10(%rbx),%rcx
140809463:	48 8b d6             	mov    %rsi,%rdx
140809466:	e8 95 09 00 00       	call   0x140809e00
14080946b:	eb 02                	jmp    0x14080946f
14080946d:	33 db                	xor    %ebx,%ebx
14080946f:	48 c7 47 08 00 00 00 	movq   $0x0,0x8(%rdi)
140809476:	00
140809477:	48 8d 43 10          	lea    0x10(%rbx),%rax
14080947b:	48 89 07             	mov    %rax,(%rdi)
14080947e:	48 89 5f 08          	mov    %rbx,0x8(%rdi)
140809482:	48 8b c7             	mov    %rdi,%rax
140809485:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
14080948a:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14080948f:	48 83 c4 30          	add    $0x30,%rsp
140809493:	5f                   	pop    %rdi
140809494:	c3                   	ret
140809495:	cc                   	int3
140809496:	cc                   	int3
140809497:	cc                   	int3
140809498:	cc                   	int3
140809499:	cc                   	int3
14080949a:	cc                   	int3
14080949b:	cc                   	int3
14080949c:	cc                   	int3
14080949d:	cc                   	int3
14080949e:	cc                   	int3
14080949f:	cc                   	int3
1408094a0:	40 53                	rex push %rbx
1408094a2:	55                   	push   %rbp
1408094a3:	56                   	push   %rsi
1408094a4:	57                   	push   %rdi
1408094a5:	48 81 ec a8 00 00 00 	sub    $0xa8,%rsp
1408094ac:	48 8b 05 4d fa ba 00 	mov    0xbafa4d(%rip),%rax        # 0x1413b8f00
1408094b3:	48 33 c4             	xor    %rsp,%rax
1408094b6:	48 89 84 24 98 00 00 	mov    %rax,0x98(%rsp)
1408094bd:	00
1408094be:	49 8b f9             	mov    %r9,%rdi
1408094c1:	49 8b e8             	mov    %r8,%rbp
1408094c4:	48 8b f1             	mov    %rcx,%rsi
1408094c7:	48 89 4c 24 48       	mov    %rcx,0x48(%rsp)
1408094cc:	33 c0                	xor    %eax,%eax
1408094ce:	89 44 24 40          	mov    %eax,0x40(%rsp)
1408094d2:	0f 57 c0             	xorps  %xmm0,%xmm0
1408094d5:	0f 11 01             	movups %xmm0,(%rcx)
1408094d8:	48 89 41 10          	mov    %rax,0x10(%rcx)
1408094dc:	48 c7 41 18 0f 00 00 	movq   $0xf,0x18(%rcx)
1408094e3:	00
1408094e4:	88 01                	mov    %al,(%rcx)
1408094e6:	c7 44 24 40 01 00 00 	movl   $0x1,0x40(%rsp)
1408094ed:	00
1408094ee:	0f 11 44 24 58       	movups %xmm0,0x58(%rsp)
1408094f3:	0f 57 c9             	xorps  %xmm1,%xmm1
1408094f6:	f3 0f 7f 4c 24 68    	movdqu %xmm1,0x68(%rsp)
1408094fc:	48 c7 c3 ff ff ff ff 	mov    $0xffffffffffffffff,%rbx
140809503:	4c 8b c3             	mov    %rbx,%r8
140809506:	49 ff c0             	inc    %r8
140809509:	42 80 3c 02 00       	cmpb   $0x0,(%rdx,%r8,1)
14080950e:	75 f6                	jne    0x140809506
140809510:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
140809515:	e8 e6 d8 98 ff       	call   0x140196e00
14080951a:	90                   	nop
14080951b:	0f 57 c0             	xorps  %xmm0,%xmm0
14080951e:	0f 11 44 24 78       	movups %xmm0,0x78(%rsp)
140809523:	0f 57 c9             	xorps  %xmm1,%xmm1
140809526:	f3 0f 7f 8c 24 88 00 	movdqu %xmm1,0x88(%rsp)