140679117:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14067911c:	4c 8b f3             	mov    %rbx,%r14
14067911f:	4c 8b 7c 24 20       	mov    0x20(%rsp),%r15
140679124:	48 c7 44 24 38 00 00 	movq   $0x0,0x38(%rsp)
14067912b:	00 00
14067912d:	48 8b 53 08          	mov    0x8(%rbx),%rdx
140679131:	48 ff 45 10          	incq   0x10(%rbp)
140679135:	4c 89 3e             	mov    %r15,(%rsi)
140679138:	48 89 56 08          	mov    %rdx,0x8(%rsi)
14067913c:	48 89 32             	mov    %rsi,(%rdx)
14067913f:	48 89 73 08          	mov    %rsi,0x8(%rbx)
140679143:	48 8b 4d 18          	mov    0x18(%rbp),%rcx
140679147:	48 8b 45 30          	mov    0x30(%rbp),%rax
14067914b:	49 23 c4             	and    %r12,%rax
14067914e:	48 03 c0             	add    %rax,%rax
140679151:	4c 8b 04 c1          	mov    (%rcx,%rax,8),%r8
140679155:	4c 3b 45 08          	cmp    0x8(%rbp),%r8
140679159:	75 16                	jne    0x140679171
14067915b:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
14067915f:	eb 22                	jmp    0x140679183
140679161:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140679166:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14067916d:	00 00
14067916f:	eb ab                	jmp    0x14067911c
140679171:	4d 3b c6             	cmp    %r14,%r8
140679174:	75 06                	jne    0x14067917c
140679176:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
14067917a:	eb 0c                	jmp    0x140679188
14067917c:	48 39 54 c1 08       	cmp    %rdx,0x8(%rcx,%rax,8)
140679181:	75 05                	jne    0x140679188
140679183:	48 89 74 c1 08       	mov    %rsi,0x8(%rcx,%rax,8)
140679188:	4c 8d 45 08          	lea    0x8(%rbp),%r8
14067918c:	48 ba aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%rdx
140679193:	aa aa 0a
140679196:	49 b9 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%r9
14067919d:	9c f2 cb
1406791a0:	49 83 c5 08          	add    $0x8,%r13
1406791a4:	49 8d 45 fe          	lea    -0x2(%r13),%rax
1406791a8:	48 3b 84 24 90 00 00 	cmp    0x90(%rsp),%rax
1406791af:	00
1406791b0:	0f 85 60 fd ff ff    	jne    0x140678f16
1406791b6:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
1406791bb:	49 8b 5b 30          	mov    0x30(%r11),%rbx
1406791bf:	49 8b 6b 38          	mov    0x38(%r11),%rbp
1406791c3:	49 8b 73 48          	mov    0x48(%r11),%rsi
1406791c7:	0f 28 74 24 40       	movaps 0x40(%rsp),%xmm6
1406791cc:	49 8b e3             	mov    %r11,%rsp
1406791cf:	41 5f                	pop    %r15
1406791d1:	41 5e                	pop    %r14
1406791d3:	41 5d                	pop    %r13
1406791d5:	41 5c                	pop    %r12
1406791d7:	5f                   	pop    %rdi
1406791d8:	c3                   	ret
1406791d9:	48 8d 0d c0 52 93 00 	lea    0x9352c0(%rip),%rcx        # 0x140fae4a0
1406791e0:	e8 cf 21 78 00       	call   0x140dfb3b4
1406791e5:	cc                   	int3
1406791e6:	cc                   	int3
1406791e7:	cc                   	int3
1406791e8:	cc                   	int3
1406791e9:	cc                   	int3
1406791ea:	cc                   	int3
1406791eb:	cc                   	int3
1406791ec:	cc                   	int3
1406791ed:	cc                   	int3
1406791ee:	cc                   	int3
1406791ef:	cc                   	int3
1406791f0:	49 3b d0             	cmp    %r8,%rdx
1406791f3:	0f 84 30 03 00 00    	je     0x140679529
1406791f9:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1406791fe:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140679203:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140679208:	57                   	push   %rdi
140679209:	41 54                	push   %r12
14067920b:	41 55                	push   %r13
14067920d:	41 56                	push   %r14
14067920f:	41 57                	push   %r15
140679211:	48 83 ec 50          	sub    $0x50,%rsp
140679215:	0f 29 74 24 40       	movaps %xmm6,0x40(%rsp)
14067921a:	49 8b f8             	mov    %r8,%rdi
14067921d:	48 8b da             	mov    %rdx,%rbx
140679220:	4c 8b f9             	mov    %rcx,%r15
140679223:	48 8d 51 08          	lea    0x8(%rcx),%rdx
140679227:	49 ba 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%r10
14067922e:	9c f2 cb
140679231:	49 b9 b3 01 00 00 00 	movabs $0x100000001b3,%r9
140679238:	01 00 00
14067923b:	49 b8 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%r8
140679242:	aa aa 0a
140679245:	f3 0f 10 35 17 54 93 	movss  0x935417(%rip),%xmm6        # 0x140fae664
14067924c:	00
14067924d:	0f 1f 00             	nopl   (%rax)
140679250:	0f b6 4b 10          	movzbl 0x10(%rbx),%ecx
140679254:	49 33 ca             	xor    %r10,%rcx
140679257:	49 0f af c9          	imul   %r9,%rcx
14067925b:	0f b6 43 11          	movzbl 0x11(%rbx),%eax
14067925f:	48 33 c8             	xor    %rax,%rcx
140679262:	49 0f af c9          	imul   %r9,%rcx
140679266:	0f b6 43 12          	movzbl 0x12(%rbx),%eax
14067926a:	48 33 c8             	xor    %rax,%rcx
14067926d:	49 0f af c9          	imul   %r9,%rcx
140679271:	0f b6 43 13          	movzbl 0x13(%rbx),%eax
140679275:	48 33 c8             	xor    %rax,%rcx
140679278:	49 0f af c9          	imul   %r9,%rcx
14067927c:	0f b6 43 14          	movzbl 0x14(%rbx),%eax
140679280:	48 33 c8             	xor    %rax,%rcx
140679283:	49 0f af c9          	imul   %r9,%rcx
140679287:	0f b6 43 15          	movzbl 0x15(%rbx),%eax
14067928b:	48 33 c8             	xor    %rax,%rcx
14067928e:	49 0f af c9          	imul   %r9,%rcx
140679292:	0f b6 43 16          	movzbl 0x16(%rbx),%eax
140679296:	48 33 c8             	xor    %rax,%rcx
140679299:	49 0f af c9          	imul   %r9,%rcx
14067929d:	0f b6 43 17          	movzbl 0x17(%rbx),%eax
1406792a1:	48 33 c8             	xor    %rax,%rcx
1406792a4:	49 0f af c9          	imul   %r9,%rcx
1406792a8:	48 89 8c 24 88 00 00 	mov    %rcx,0x88(%rsp)
1406792af:	00
1406792b0:	49 8b 47 30          	mov    0x30(%r15),%rax
1406792b4:	48 23 c1             	and    %rcx,%rax
1406792b7:	48 03 c0             	add    %rax,%rax
1406792ba:	49 8b 4f 18          	mov    0x18(%r15),%rcx
1406792be:	48 8b 74 c1 08       	mov    0x8(%rcx,%rax,8),%rsi
1406792c3:	4c 8b 2a             	mov    (%rdx),%r13
1406792c6:	49 3b f5             	cmp    %r13,%rsi
1406792c9:	75 08                	jne    0x1406792d3
1406792cb:	49 8b f5             	mov    %r13,%rsi
1406792ce:	4d 8b e5             	mov    %r13,%r12
1406792d1:	eb 2c                	jmp    0x1406792ff
1406792d3:	48 8b 0c c1          	mov    (%rcx,%rax,8),%rcx
1406792d7:	48 8b 43 10          	mov    0x10(%rbx),%rax
1406792db:	48 3b 46 10          	cmp    0x10(%rsi),%rax
1406792df:	0f 84 16 02 00 00    	je     0x1406794fb
1406792e5:	48 3b f1             	cmp    %rcx,%rsi
1406792e8:	74 0f                	je     0x1406792f9
1406792ea:	48 8b 76 08          	mov    0x8(%rsi),%rsi
1406792ee:	48 3b 46 10          	cmp    0x10(%rsi),%rax
1406792f2:	75 f1                	jne    0x1406792e5
1406792f4:	e9 02 02 00 00       	jmp    0x1406794fb
1406792f9:	4c 8b ee             	mov    %rsi,%r13
1406792fc:	4c 8b e6             	mov    %rsi,%r12
1406792ff:	4d 39 47 10          	cmp    %r8,0x10(%r15)
140679303:	0f 84 21 02 00 00    	je     0x14067952a
140679309:	48 89 54 24 30       	mov    %rdx,0x30(%rsp)
14067930e:	48 c7 44 24 38 00 00 	movq   $0x0,0x38(%rsp)
140679315:	00 00
140679317:	b9 18 00 00 00       	mov    $0x18,%ecx
14067931c:	e8 e7 1d 7a 00       	call   0x140e1b108
140679321:	4c 8b f0             	mov    %rax,%r14
140679324:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140679329:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
14067932d:	48 89 48 10          	mov    %rcx,0x10(%rax)
140679331:	49 8b 4f 10          	mov    0x10(%r15),%rcx
140679335:	48 83 c1 01          	add    $0x1,%rcx
140679339:	0f 57 c0             	xorps  %xmm0,%xmm0
14067933c:	78 07                	js     0x140679345
14067933e:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
140679343:	eb 15                	jmp    0x14067935a
140679345:	48 8b c1             	mov    %rcx,%rax
140679348:	48 d1 e8             	shr    $1,%rax
14067934b:	83 e1 01             	and    $0x1,%ecx
14067934e:	48 0b c1             	or     %rcx,%rax
140679351:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
140679356:	f3 0f 58 c0          	addss  %xmm0,%xmm0
14067935a:	49 8b 6f 38          	mov    0x38(%r15),%rbp
14067935e:	f3 41 0f 10 1f       	movss  (%r15),%xmm3
140679363:	0f 57 d2             	xorps  %xmm2,%xmm2
140679366:	48 85 ed             	test   %rbp,%rbp
140679369:	78 07                	js     0x140679372
14067936b:	f3 48 0f 2a d5       	cvtsi2ss %rbp,%xmm2
140679370:	eb 18                	jmp    0x14067938a
140679372:	48 8b cd             	mov    %rbp,%rcx
140679375:	48 d1 e9             	shr    $1,%rcx
140679378:	48 8b c5             	mov    %rbp,%rax
14067937b:	83 e0 01             	and    $0x1,%eax
14067937e:	48 0b c8             	or     %rax,%rcx
140679381:	f3 48 0f 2a d1       	cvtsi2ss %rcx,%xmm2
140679386:	f3 0f 58 d2          	addss  %xmm2,%xmm2
14067938a:	0f 28 c8             	movaps %xmm0,%xmm1
14067938d:	f3 0f 5e ca          	divss  %xmm2,%xmm1
140679391:	0f 2f cb             	comiss %xmm3,%xmm1
140679394:	0f 86 e3 00 00 00    	jbe    0x14067947d
14067939a:	f3 0f 5e c3          	divss  %xmm3,%xmm0
14067939e:	e8 7d 7d 7b 00       	call   0x140e31120
1406793a3:	33 c9                	xor    %ecx,%ecx
1406793a5:	0f 2f c6             	comiss %xmm6,%xmm0
1406793a8:	72 16                	jb     0x1406793c0
1406793aa:	f3 0f 5c c6          	subss  %xmm6,%xmm0
1406793ae:	0f 2f c6             	comiss %xmm6,%xmm0
1406793b1:	73 0d                	jae    0x1406793c0
1406793b3:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
1406793ba:	00 00 80
1406793bd:	48 8b c8             	mov    %rax,%rcx
1406793c0:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
1406793c5:	48 03 c1             	add    %rcx,%rax
1406793c8:	b9 08 00 00 00       	mov    $0x8,%ecx
1406793cd:	48 3b c1             	cmp    %rcx,%rax
1406793d0:	48 0f 47 c8          	cmova  %rax,%rcx
1406793d4:	48 3b e9             	cmp    %rcx,%rbp
1406793d7:	73 19                	jae    0x1406793f2
1406793d9:	48 81 fd 00 02 00 00 	cmp    $0x200,%rbp
1406793e0:	73 0d                	jae    0x1406793ef
1406793e2:	48 8d 2c ed 00 00 00 	lea    0x0(,%rbp,8),%rbp
1406793e9:	00
1406793ea:	48 3b e9             	cmp    %rcx,%rbp
1406793ed:	73 03                	jae    0x1406793f2
1406793ef:	48 8b e9             	mov    %rcx,%rbp
1406793f2:	48 8b d5             	mov    %rbp,%rdx
1406793f5:	49 8b cf             	mov    %r15,%rcx
1406793f8:	e8 63 27 fe ff       	call   0x14065bb60
1406793fd:	49 8b 4f 30          	mov    0x30(%r15),%rcx
140679401:	4c 8b 84 24 88 00 00 	mov    0x88(%rsp),%r8
140679408:	00
140679409:	49 23 c8             	and    %r8,%rcx
14067940c:	48 03 c9             	add    %rcx,%rcx
14067940f:	49 8b 57 18          	mov    0x18(%r15),%rdx
140679413:	48 8b 44 ca 08       	mov    0x8(%rdx,%rcx,8),%rax
140679418:	49 8b 77 08          	mov    0x8(%r15),%rsi
14067941c:	48 3b c6             	cmp    %rsi,%rax
14067941f:	75 16                	jne    0x140679437
140679421:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140679428:	00 00
14067942a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14067942f:	4c 8b e6             	mov    %rsi,%r12
140679432:	4c 8b ee             	mov    %rsi,%r13
140679435:	eb 4e                	jmp    0x140679485
140679437:	48 8b 14 ca          	mov    (%rdx,%rcx,8),%rdx
14067943b:	49 8b 4e 10          	mov    0x10(%r14),%rcx
14067943f:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140679443:	74 12                	je     0x140679457
140679445:	48 8b f0             	mov    %rax,%rsi
140679448:	48 3b c2             	cmp    %rdx,%rax
14067944b:	74 1a                	je     0x140679467
14067944d:	48 8b 40 08          	mov    0x8(%rax),%rax
140679451:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140679455:	75 ee                	jne    0x140679445
140679457:	48 8b 30             	mov    (%rax),%rsi
14067945a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14067945f:	4c 8b e6             	mov    %rsi,%r12
140679462:	4c 8b ee             	mov    %rsi,%r13
140679465:	eb 1e                	jmp    0x140679485
140679467:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14067946c:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140679473:	00 00
140679475:	4c 8b e6             	mov    %rsi,%r12
140679478:	4c 8b e8             	mov    %rax,%r13
14067947b:	eb 08                	jmp    0x140679485
14067947d:	4c 8b 84 24 88 00 00 	mov    0x88(%rsp),%r8
140679484:	00
140679485:	48 c7 44 24 38 00 00 	movq   $0x0,0x38(%rsp)
14067948c:	00 00
14067948e:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140679492:	49 ff 47 10          	incq   0x10(%r15)
140679496:	4d 89 2e             	mov    %r13,(%r14)
140679499:	49 89 56 08          	mov    %rdx,0x8(%r14)
14067949d:	4c 89 32             	mov    %r14,(%rdx)
1406794a0:	4c 89 76 08          	mov    %r14,0x8(%rsi)
1406794a4:	49 8b 4f 18          	mov    0x18(%r15),%rcx
1406794a8:	49 8b 47 30          	mov    0x30(%r15),%rax
1406794ac:	49 23 c0             	and    %r8,%rax
1406794af:	48 03 c0             	add    %rax,%rax
1406794b2:	4c 8b 04 c1          	mov    (%rcx,%rax,8),%r8
1406794b6:	4d 3b 47 08          	cmp    0x8(%r15),%r8
1406794ba:	75 06                	jne    0x1406794c2
1406794bc:	4c 89 34 c1          	mov    %r14,(%rcx,%rax,8)
1406794c0:	eb 12                	jmp    0x1406794d4
1406794c2:	4d 3b c4             	cmp    %r12,%r8
1406794c5:	75 06                	jne    0x1406794cd
1406794c7:	4c 89 34 c1          	mov    %r14,(%rcx,%rax,8)
1406794cb:	eb 0c                	jmp    0x1406794d9
1406794cd:	48 39 54 c1 08       	cmp    %rdx,0x8(%rcx,%rax,8)
1406794d2:	75 05                	jne    0x1406794d9
1406794d4:	4c 89 74 c1 08       	mov    %r14,0x8(%rcx,%rax,8)
1406794d9:	49 8d 57 08          	lea    0x8(%r15),%rdx
1406794dd:	49 b8 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%r8
1406794e4:	aa aa 0a
1406794e7:	49 b9 b3 01 00 00 00 	movabs $0x100000001b3,%r9
1406794ee:	01 00 00
1406794f1:	49 ba 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%r10
1406794f8:	9c f2 cb
1406794fb:	48 8b 1b             	mov    (%rbx),%rbx
1406794fe:	48 3b df             	cmp    %rdi,%rbx
140679501:	0f 85 49 fd ff ff    	jne    0x140679250
140679507:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
14067950c:	49 8b 5b 30          	mov    0x30(%r11),%rbx
140679510:	49 8b 6b 40          	mov    0x40(%r11),%rbp
140679514:	49 8b 73 48          	mov    0x48(%r11),%rsi
140679518:	0f 28 74 24 40       	movaps 0x40(%rsp),%xmm6
14067951d:	49 8b e3             	mov    %r11,%rsp
140679520:	41 5f                	pop    %r15
140679522:	41 5e                	pop    %r14
140679524:	41 5d                	pop    %r13
140679526:	41 5c                	pop    %r12
140679528:	5f                   	pop    %rdi
140679529:	c3                   	ret
14067952a:	48 8d 0d 6f 4f 93 00 	lea    0x934f6f(%rip),%rcx        # 0x140fae4a0
140679531:	e8 7e 1e 78 00       	call   0x140dfb3b4
140679536:	cc                   	int3
140679537:	cc                   	int3
140679538:	cc                   	int3
140679539:	cc                   	int3
14067953a:	cc                   	int3
14067953b:	cc                   	int3
14067953c:	cc                   	int3
14067953d:	cc                   	int3
14067953e:	cc                   	int3
14067953f:	cc                   	int3
140679540:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140679545:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14067954a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14067954f:	57                   	push   %rdi
140679550:	41 54                	push   %r12
140679552:	41 55                	push   %r13
140679554:	41 56                	push   %r14
140679556:	41 57                	push   %r15
140679558:	48 83 ec 30          	sub    $0x30,%rsp
14067955c:	49 8b f0             	mov    %r8,%rsi
14067955f:	4c 8b f2             	mov    %rdx,%r14
140679562:	48 8b e9             	mov    %rcx,%rbp
140679565:	45 0f b6 28          	movzbl (%r8),%r13d
140679569:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
140679570:	9c f2 cb
140679573:	4c 33 e8             	xor    %rax,%r13
140679576:	48 b9 b3 01 00 00 00 	movabs $0x100000001b3,%rcx
14067957d:	01 00 00
140679580:	4c 0f af e9          	imul   %rcx,%r13
140679584:	41 0f b6 40 01       	movzbl 0x1(%r8),%eax
140679589:	4c 33 e8             	xor    %rax,%r13
14067958c:	4c 0f af e9          	imul   %rcx,%r13
140679590:	41 0f b6 40 02       	movzbl 0x2(%r8),%eax
140679595:	4c 33 e8             	xor    %rax,%r13
140679598:	4c 0f af e9          	imul   %rcx,%r13
14067959c:	41 0f b6 40 03       	movzbl 0x3(%r8),%eax
1406795a1:	4c 33 e8             	xor    %rax,%r13
1406795a4:	4c 0f af e9          	imul   %rcx,%r13
1406795a8:	41 0f b6 40 04       	movzbl 0x4(%r8),%eax
1406795ad:	4c 33 e8             	xor    %rax,%r13
1406795b0:	4c 0f af e9          	imul   %rcx,%r13
1406795b4:	41 0f b6 40 05       	movzbl 0x5(%r8),%eax
1406795b9:	4c 33 e8             	xor    %rax,%r13
1406795bc:	4c 0f af e9          	imul   %rcx,%r13
1406795c0:	41 0f b6 40 06       	movzbl 0x6(%r8),%eax
1406795c5:	4c 33 e8             	xor    %rax,%r13
1406795c8:	4c 0f af e9          	imul   %rcx,%r13
1406795cc:	41 0f b6 40 07       	movzbl 0x7(%r8),%eax
1406795d1:	4c 33 e8             	xor    %rax,%r13
1406795d4:	4c 0f af e9          	imul   %rcx,%r13
1406795d8:	49 8b cd             	mov    %r13,%rcx
1406795db:	48 23 4d 30          	and    0x30(%rbp),%rcx
1406795df:	48 03 c9             	add    %rcx,%rcx
1406795e2:	48 8b 45 18          	mov    0x18(%rbp),%rax