14065718a:	48 8b f1             	mov    %rcx,%rsi
14065718d:	4c 8d 69 08          	lea    0x8(%rcx),%r13
140657191:	4c 8d 7a 02          	lea    0x2(%rdx),%r15
140657195:	48 ba aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%rdx
14065719c:	aa aa 0a
14065719f:	48 b9 b3 01 00 00 00 	movabs $0x100000001b3,%rcx
1406571a6:	01 00 00
1406571a9:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
1406571b0:	9c f2 cb
1406571b3:	45 0f b6 67 fe       	movzbl -0x2(%r15),%r12d
1406571b8:	4c 33 e0             	xor    %rax,%r12
1406571bb:	4c 0f af e1          	imul   %rcx,%r12
1406571bf:	41 0f b6 47 ff       	movzbl -0x1(%r15),%eax
1406571c4:	4c 33 e0             	xor    %rax,%r12
1406571c7:	4c 0f af e1          	imul   %rcx,%r12
1406571cb:	41 0f b6 07          	movzbl (%r15),%eax
1406571cf:	4c 33 e0             	xor    %rax,%r12
1406571d2:	4c 0f af e1          	imul   %rcx,%r12
1406571d6:	41 0f b6 47 01       	movzbl 0x1(%r15),%eax
1406571db:	4c 33 e0             	xor    %rax,%r12
1406571de:	4c 0f af e1          	imul   %rcx,%r12
1406571e2:	41 0f b6 47 02       	movzbl 0x2(%r15),%eax
1406571e7:	4c 33 e0             	xor    %rax,%r12
1406571ea:	4c 0f af e1          	imul   %rcx,%r12
1406571ee:	41 0f b6 47 03       	movzbl 0x3(%r15),%eax
1406571f3:	4c 33 e0             	xor    %rax,%r12
1406571f6:	4c 0f af e1          	imul   %rcx,%r12
1406571fa:	41 0f b6 47 04       	movzbl 0x4(%r15),%eax
1406571ff:	4c 33 e0             	xor    %rax,%r12
140657202:	4c 0f af e1          	imul   %rcx,%r12
140657206:	41 0f b6 47 05       	movzbl 0x5(%r15),%eax
14065720b:	4c 33 e0             	xor    %rax,%r12
14065720e:	4c 0f af e1          	imul   %rcx,%r12
140657212:	48 8b 4e 30          	mov    0x30(%rsi),%rcx
140657216:	49 23 cc             	and    %r12,%rcx
140657219:	48 03 c9             	add    %rcx,%rcx
14065721c:	48 8b 46 18          	mov    0x18(%rsi),%rax
140657220:	48 8b 5c c8 08       	mov    0x8(%rax,%rcx,8),%rbx
140657225:	4d 8b 75 00          	mov    0x0(%r13),%r14
140657229:	49 3b de             	cmp    %r14,%rbx
14065722c:	75 08                	jne    0x140657236
14065722e:	49 8b de             	mov    %r14,%rbx
140657231:	49 8b ee             	mov    %r14,%rbp
140657234:	eb 2c                	jmp    0x140657262
140657236:	48 8b 0c c8          	mov    (%rax,%rcx,8),%rcx
14065723a:	49 8b 47 fe          	mov    -0x2(%r15),%rax
14065723e:	48 3b 43 10          	cmp    0x10(%rbx),%rax
140657242:	0f 84 88 01 00 00    	je     0x1406573d0
140657248:	48 3b d9             	cmp    %rcx,%rbx
14065724b:	74 0f                	je     0x14065725c
14065724d:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
140657251:	48 3b 43 10          	cmp    0x10(%rbx),%rax
140657255:	75 f1                	jne    0x140657248
140657257:	e9 74 01 00 00       	jmp    0x1406573d0
14065725c:	4c 8b f3             	mov    %rbx,%r14
14065725f:	48 8b eb             	mov    %rbx,%rbp
140657262:	48 39 56 10          	cmp    %rdx,0x10(%rsi)
140657266:	0f 84 9a 01 00 00    	je     0x140657406
14065726c:	4c 89 6c 24 30       	mov    %r13,0x30(%rsp)
140657271:	48 c7 44 24 38 00 00 	movq   $0x0,0x38(%rsp)
140657278:	00 00
14065727a:	b9 18 00 00 00       	mov    $0x18,%ecx
14065727f:	e8 84 3e 7c 00       	call   0x140e1b108
140657284:	48 8b f8             	mov    %rax,%rdi
140657287:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14065728c:	49 8b 4f fe          	mov    -0x2(%r15),%rcx
140657290:	48 89 48 10          	mov    %rcx,0x10(%rax)
140657294:	48 8b 56 10          	mov    0x10(%rsi),%rdx
140657298:	48 83 c2 01          	add    $0x1,%rdx
14065729c:	0f 57 c0             	xorps  %xmm0,%xmm0
14065729f:	78 07                	js     0x1406572a8
1406572a1:	f3 48 0f 2a c2       	cvtsi2ss %rdx,%xmm0
1406572a6:	eb 18                	jmp    0x1406572c0
1406572a8:	48 8b ca             	mov    %rdx,%rcx
1406572ab:	48 d1 e9             	shr    $1,%rcx
1406572ae:	48 8b c2             	mov    %rdx,%rax
1406572b1:	83 e0 01             	and    $0x1,%eax
1406572b4:	48 0b c8             	or     %rax,%rcx
1406572b7:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
1406572bc:	f3 0f 58 c0          	addss  %xmm0,%xmm0
1406572c0:	48 8b 4e 38          	mov    0x38(%rsi),%rcx
1406572c4:	0f 57 c9             	xorps  %xmm1,%xmm1
1406572c7:	48 85 c9             	test   %rcx,%rcx
1406572ca:	78 07                	js     0x1406572d3
1406572cc:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
1406572d1:	eb 15                	jmp    0x1406572e8
1406572d3:	48 8b c1             	mov    %rcx,%rax
1406572d6:	48 d1 e8             	shr    $1,%rax
1406572d9:	83 e1 01             	and    $0x1,%ecx
1406572dc:	48 0b c1             	or     %rcx,%rax
1406572df:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
1406572e4:	f3 0f 58 c9          	addss  %xmm1,%xmm1
1406572e8:	f3 0f 5e c1          	divss  %xmm1,%xmm0
1406572ec:	0f 2f 06             	comiss (%rsi),%xmm0
1406572ef:	76 71                	jbe    0x140657362
1406572f1:	48 8b ce             	mov    %rsi,%rcx
1406572f4:	e8 e7 df f5 ff       	call   0x1405b52e0
1406572f9:	48 8b d0             	mov    %rax,%rdx
1406572fc:	48 8b ce             	mov    %rsi,%rcx
1406572ff:	e8 4c 4a 00 00       	call   0x14065bd50
140657304:	48 8b 4e 30          	mov    0x30(%rsi),%rcx
140657308:	49 23 cc             	and    %r12,%rcx
14065730b:	48 03 c9             	add    %rcx,%rcx
14065730e:	48 8b 56 18          	mov    0x18(%rsi),%rdx
140657312:	48 8b 44 ca 08       	mov    0x8(%rdx,%rcx,8),%rax
140657317:	49 8b 5d 00          	mov    0x0(%r13),%rbx
14065731b:	48 3b c3             	cmp    %rbx,%rax
14065731e:	75 0b                	jne    0x14065732b
140657320:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140657327:	00 00
140657329:	eb 2a                	jmp    0x140657355
14065732b:	48 8b 14 ca          	mov    (%rdx,%rcx,8),%rdx
14065732f:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140657333:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140657337:	74 19                	je     0x140657352
140657339:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140657340:	48 8b d8             	mov    %rax,%rbx
140657343:	48 3b c2             	cmp    %rdx,%rax
140657346:	74 57                	je     0x14065739f
140657348:	48 8b 40 08          	mov    0x8(%rax),%rax
14065734c:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140657350:	75 ee                	jne    0x140657340
140657352:	48 8b 18             	mov    (%rax),%rbx
140657355:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14065735a:	48 8b eb             	mov    %rbx,%rbp
14065735d:	4c 8b 74 24 20       	mov    0x20(%rsp),%r14
140657362:	48 c7 44 24 38 00 00 	movq   $0x0,0x38(%rsp)
140657369:	00 00
14065736b:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14065736f:	48 ff 46 10          	incq   0x10(%rsi)
140657373:	4c 89 37             	mov    %r14,(%rdi)
140657376:	48 89 57 08          	mov    %rdx,0x8(%rdi)
14065737a:	48 89 3a             	mov    %rdi,(%rdx)
14065737d:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
140657381:	48 8b 4e 18          	mov    0x18(%rsi),%rcx
140657385:	48 8b 46 30          	mov    0x30(%rsi),%rax
140657389:	49 23 c4             	and    %r12,%rax
14065738c:	48 03 c0             	add    %rax,%rax
14065738f:	4c 8b 04 c1          	mov    (%rcx,%rax,8),%r8
140657393:	4d 3b 45 00          	cmp    0x0(%r13),%r8
140657397:	75 16                	jne    0x1406573af
140657399:	48 89 3c c1          	mov    %rdi,(%rcx,%rax,8)
14065739d:	eb 22                	jmp    0x1406573c1
14065739f:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1406573a4:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
1406573ab:	00 00
1406573ad:	eb ab                	jmp    0x14065735a
1406573af:	4c 3b c5             	cmp    %rbp,%r8
1406573b2:	75 06                	jne    0x1406573ba
1406573b4:	48 89 3c c1          	mov    %rdi,(%rcx,%rax,8)
1406573b8:	eb 0c                	jmp    0x1406573c6
1406573ba:	48 39 54 c1 08       	cmp    %rdx,0x8(%rcx,%rax,8)
1406573bf:	75 05                	jne    0x1406573c6
1406573c1:	48 89 7c c1 08       	mov    %rdi,0x8(%rcx,%rax,8)
1406573c6:	48 ba aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%rdx
1406573cd:	aa aa 0a
1406573d0:	49 83 c7 08          	add    $0x8,%r15
1406573d4:	49 8d 47 fe          	lea    -0x2(%r15),%rax
1406573d8:	48 3b 84 24 80 00 00 	cmp    0x80(%rsp),%rax
1406573df:	00
1406573e0:	0f 85 b9 fd ff ff    	jne    0x14065719f
1406573e6:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
1406573eb:	48 8b 6c 24 78       	mov    0x78(%rsp),%rbp
1406573f0:	48 8b b4 24 88 00 00 	mov    0x88(%rsp),%rsi
1406573f7:	00
1406573f8:	48 83 c4 40          	add    $0x40,%rsp
1406573fc:	41 5f                	pop    %r15
1406573fe:	41 5e                	pop    %r14
140657400:	41 5d                	pop    %r13
140657402:	41 5c                	pop    %r12
140657404:	5f                   	pop    %rdi
140657405:	c3                   	ret
140657406:	48 8d 0d 93 70 95 00 	lea    0x957093(%rip),%rcx        # 0x140fae4a0
14065740d:	e8 a2 3f 7a 00       	call   0x140dfb3b4
140657412:	cc                   	int3
140657413:	cc                   	int3
140657414:	cc                   	int3
140657415:	cc                   	int3
140657416:	cc                   	int3
140657417:	cc                   	int3
140657418:	cc                   	int3
140657419:	cc                   	int3
14065741a:	cc                   	int3
14065741b:	cc                   	int3
14065741c:	cc                   	int3
14065741d:	cc                   	int3
14065741e:	cc                   	int3
14065741f:	cc                   	int3
140657420:	49 3b d0             	cmp    %r8,%rdx
140657423:	0f 84 88 02 00 00    	je     0x1406576b1
140657429:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14065742e:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140657433:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140657438:	57                   	push   %rdi
140657439:	41 54                	push   %r12
14065743b:	41 55                	push   %r13
14065743d:	41 56                	push   %r14
14065743f:	41 57                	push   %r15
140657441:	48 83 ec 40          	sub    $0x40,%rsp
140657445:	49 8b f8             	mov    %r8,%rdi
140657448:	48 8b da             	mov    %rdx,%rbx
14065744b:	48 8b e9             	mov    %rcx,%rbp
14065744e:	48 8d 51 08          	lea    0x8(%rcx),%rdx
140657452:	49 b8 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%r8
140657459:	aa aa 0a
14065745c:	48 b9 b3 01 00 00 00 	movabs $0x100000001b3,%rcx
140657463:	01 00 00
140657466:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
14065746d:	9c f2 cb
140657470:	44 0f b6 6b 10       	movzbl 0x10(%rbx),%r13d
140657475:	4c 33 e8             	xor    %rax,%r13
140657478:	4c 0f af e9          	imul   %rcx,%r13
14065747c:	0f b6 43 11          	movzbl 0x11(%rbx),%eax
140657480:	4c 33 e8             	xor    %rax,%r13
140657483:	4c 0f af e9          	imul   %rcx,%r13
140657487:	0f b6 43 12          	movzbl 0x12(%rbx),%eax
14065748b:	4c 33 e8             	xor    %rax,%r13
14065748e:	4c 0f af e9          	imul   %rcx,%r13
140657492:	0f b6 43 13          	movzbl 0x13(%rbx),%eax
140657496:	4c 33 e8             	xor    %rax,%r13
140657499:	4c 0f af e9          	imul   %rcx,%r13
14065749d:	0f b6 43 14          	movzbl 0x14(%rbx),%eax
1406574a1:	4c 33 e8             	xor    %rax,%r13
1406574a4:	4c 0f af e9          	imul   %rcx,%r13
1406574a8:	0f b6 43 15          	movzbl 0x15(%rbx),%eax
1406574ac:	4c 33 e8             	xor    %rax,%r13
1406574af:	4c 0f af e9          	imul   %rcx,%r13
1406574b3:	0f b6 43 16          	movzbl 0x16(%rbx),%eax
1406574b7:	4c 33 e8             	xor    %rax,%r13
1406574ba:	4c 0f af e9          	imul   %rcx,%r13
1406574be:	0f b6 43 17          	movzbl 0x17(%rbx),%eax
1406574c2:	4c 33 e8             	xor    %rax,%r13
1406574c5:	4c 0f af e9          	imul   %rcx,%r13
1406574c9:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
1406574cd:	49 23 cd             	and    %r13,%rcx
1406574d0:	48 03 c9             	add    %rcx,%rcx
1406574d3:	48 8b 45 18          	mov    0x18(%rbp),%rax
1406574d7:	48 8b 74 c8 08       	mov    0x8(%rax,%rcx,8),%rsi
1406574dc:	4c 8b 22             	mov    (%rdx),%r12
1406574df:	49 3b f4             	cmp    %r12,%rsi
1406574e2:	75 08                	jne    0x1406574ec
1406574e4:	49 8b f4             	mov    %r12,%rsi
1406574e7:	4d 8b fc             	mov    %r12,%r15
1406574ea:	eb 2e                	jmp    0x14065751a
1406574ec:	48 8b 0c c8          	mov    (%rax,%rcx,8),%rcx
1406574f0:	48 8b 43 10          	mov    0x10(%rbx),%rax
1406574f4:	48 3b 46 10          	cmp    0x10(%rsi),%rax
1406574f8:	0f 84 88 01 00 00    	je     0x140657686
1406574fe:	66 90                	xchg   %ax,%ax
140657500:	48 3b f1             	cmp    %rcx,%rsi
140657503:	74 0f                	je     0x140657514
140657505:	48 8b 76 08          	mov    0x8(%rsi),%rsi
140657509:	48 3b 46 10          	cmp    0x10(%rsi),%rax
14065750d:	75 f1                	jne    0x140657500
14065750f:	e9 72 01 00 00       	jmp    0x140657686
140657514:	4c 8b e6             	mov    %rsi,%r12
140657517:	4c 8b fe             	mov    %rsi,%r15
14065751a:	4c 39 45 10          	cmp    %r8,0x10(%rbp)
14065751e:	0f 84 8e 01 00 00    	je     0x1406576b2
140657524:	48 89 54 24 30       	mov    %rdx,0x30(%rsp)
140657529:	48 c7 44 24 38 00 00 	movq   $0x0,0x38(%rsp)
140657530:	00 00
140657532:	b9 18 00 00 00       	mov    $0x18,%ecx
140657537:	e8 cc 3b 7c 00       	call   0x140e1b108
14065753c:	4c 8b f0             	mov    %rax,%r14
14065753f:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140657544:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
140657548:	48 89 48 10          	mov    %rcx,0x10(%rax)
14065754c:	48 8b 55 10          	mov    0x10(%rbp),%rdx
140657550:	48 83 c2 01          	add    $0x1,%rdx
140657554:	0f 57 c0             	xorps  %xmm0,%xmm0
140657557:	78 07                	js     0x140657560
140657559:	f3 48 0f 2a c2       	cvtsi2ss %rdx,%xmm0
14065755e:	eb 18                	jmp    0x140657578
140657560:	48 8b ca             	mov    %rdx,%rcx
140657563:	48 d1 e9             	shr    $1,%rcx
140657566:	48 8b c2             	mov    %rdx,%rax
140657569:	83 e0 01             	and    $0x1,%eax
14065756c:	48 0b c8             	or     %rax,%rcx
14065756f:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
140657574:	f3 0f 58 c0          	addss  %xmm0,%xmm0
140657578:	48 8b 4d 38          	mov    0x38(%rbp),%rcx
14065757c:	0f 57 c9             	xorps  %xmm1,%xmm1
14065757f:	48 85 c9             	test   %rcx,%rcx
140657582:	78 07                	js     0x14065758b
140657584:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
140657589:	eb 15                	jmp    0x1406575a0
14065758b:	48 8b c1             	mov    %rcx,%rax
14065758e:	48 d1 e8             	shr    $1,%rax
140657591:	83 e1 01             	and    $0x1,%ecx
140657594:	48 0b c1             	or     %rcx,%rax
140657597:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
14065759c:	f3 0f 58 c9          	addss  %xmm1,%xmm1
1406575a0:	f3 0f 5e c1          	divss  %xmm1,%xmm0
1406575a4:	0f 2f 45 00          	comiss 0x0(%rbp),%xmm0
1406575a8:	76 6a                	jbe    0x140657614
1406575aa:	48 8b cd             	mov    %rbp,%rcx
1406575ad:	e8 2e dd f5 ff       	call   0x1405b52e0
1406575b2:	48 8b d0             	mov    %rax,%rdx
1406575b5:	48 8b cd             	mov    %rbp,%rcx
1406575b8:	e8 93 47 00 00       	call   0x14065bd50
1406575bd:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
1406575c1:	49 23 cd             	and    %r13,%rcx
1406575c4:	48 03 c9             	add    %rcx,%rcx
1406575c7:	48 8b 55 18          	mov    0x18(%rbp),%rdx
1406575cb:	48 8b 44 ca 08       	mov    0x8(%rdx,%rcx,8),%rax
1406575d0:	48 8b 75 08          	mov    0x8(%rbp),%rsi
1406575d4:	48 3b c6             	cmp    %rsi,%rax
1406575d7:	75 0b                	jne    0x1406575e4
1406575d9:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
1406575e0:	00 00
1406575e2:	eb 23                	jmp    0x140657607
1406575e4:	48 8b 14 ca          	mov    (%rdx,%rcx,8),%rdx
1406575e8:	49 8b 4e 10          	mov    0x10(%r14),%rcx
1406575ec:	48 3b 48 10          	cmp    0x10(%rax),%rcx
1406575f0:	74 12                	je     0x140657604
1406575f2:	48 8b f0             	mov    %rax,%rsi
1406575f5:	48 3b c2             	cmp    %rdx,%rax
1406575f8:	74 57                	je     0x140657651
1406575fa:	48 8b 40 08          	mov    0x8(%rax),%rax
1406575fe:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140657602:	75 ee                	jne    0x1406575f2
140657604:	48 8b 30             	mov    (%rax),%rsi
140657607:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14065760c:	4c 8b fe             	mov    %rsi,%r15
14065760f:	4c 8b 64 24 20       	mov    0x20(%rsp),%r12
140657614:	48 c7 44 24 38 00 00 	movq   $0x0,0x38(%rsp)
14065761b:	00 00
14065761d:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140657621:	48 ff 45 10          	incq   0x10(%rbp)
140657625:	4d 89 26             	mov    %r12,(%r14)
140657628:	49 89 56 08          	mov    %rdx,0x8(%r14)
14065762c:	4c 89 32             	mov    %r14,(%rdx)
14065762f:	4c 89 76 08          	mov    %r14,0x8(%rsi)
140657633:	48 8b 4d 18          	mov    0x18(%rbp),%rcx
140657637:	48 8b 45 30          	mov    0x30(%rbp),%rax
14065763b:	49 23 c5             	and    %r13,%rax
14065763e:	48 03 c0             	add    %rax,%rax
140657641:	4c 8b 04 c1          	mov    (%rcx,%rax,8),%r8
140657645:	4c 3b 45 08          	cmp    0x8(%rbp),%r8
140657649:	75 16                	jne    0x140657661
14065764b:	4c 89 34 c1          	mov    %r14,(%rcx,%rax,8)
14065764f:	eb 22                	jmp    0x140657673
140657651:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140657656:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14065765d:	00 00
14065765f:	eb ab                	jmp    0x14065760c
140657661:	4d 3b c7             	cmp    %r15,%r8
140657664:	75 06                	jne    0x14065766c
140657666:	4c 89 34 c1          	mov    %r14,(%rcx,%rax,8)