14001135c:	03 ce                	add    %esi,%ecx
14001135e:	48 63 d9             	movslq %ecx,%rbx
140011361:	48 3b 5f 18          	cmp    0x18(%rdi),%rbx
140011365:	76 0f                	jbe    0x140011376
140011367:	48 8b 07             	mov    (%rdi),%rax
14001136a:	48 8b d3             	mov    %rbx,%rdx
14001136d:	48 8b cf             	mov    %rdi,%rcx
140011370:	ff 10                	call   *(%rax)
140011372:	48 3b 5f 18          	cmp    0x18(%rdi),%rbx
140011376:	48 0f 47 5f 18       	cmova  0x18(%rdi),%rbx
14001137b:	48 89 5f 10          	mov    %rbx,0x10(%rdi)
14001137f:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
140011384:	48 33 cc             	xor    %rsp,%rcx
140011387:	e8 74 84 04 00       	call   0x140059800
14001138c:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
140011393:	00
140011394:	48 83 c4 50          	add    $0x50,%rsp
140011398:	41 5f                	pop    %r15
14001139a:	41 5e                	pop    %r14
14001139c:	5f                   	pop    %rdi
14001139d:	5e                   	pop    %rsi
14001139e:	5d                   	pop    %rbp
14001139f:	c3                   	ret
1400113a0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400113a5:	55                   	push   %rbp
1400113a6:	56                   	push   %rsi
1400113a7:	57                   	push   %rdi
1400113a8:	41 56                	push   %r14
1400113aa:	41 57                	push   %r15
1400113ac:	48 83 ec 50          	sub    $0x50,%rsp
1400113b0:	48 8b 05 89 6c 06 00 	mov    0x66c89(%rip),%rax        # 0x140078040
1400113b7:	48 33 c4             	xor    %rsp,%rax
1400113ba:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
1400113bf:	49 8b f9             	mov    %r9,%rdi
1400113c2:	4c 8b fa             	mov    %rdx,%r15
1400113c5:	0f 57 c0             	xorps  %xmm0,%xmm0
1400113c8:	0f 11 44 24 20       	movups %xmm0,0x20(%rsp)
1400113cd:	0f 11 44 24 30       	movups %xmm0,0x30(%rsp)
1400113d2:	4c 8d 71 08          	lea    0x8(%rcx),%r14
1400113d6:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
1400113db:	4c 89 4c 24 28       	mov    %r9,0x28(%rsp)
1400113e0:	48 8d 2d 39 ea 04 00 	lea    0x4ea39(%rip),%rbp        # 0x14005fe20
1400113e7:	48 89 6c 24 38       	mov    %rbp,0x38(%rsp)
1400113ec:	48 c7 44 24 40 40 00 	movq   $0x40,0x40(%rsp)
1400113f3:	00 00
1400113f5:	41 8b 36             	mov    (%r14),%esi
1400113f8:	2b 72 08             	sub    0x8(%rdx),%esi
1400113fb:	89 74 24 30          	mov    %esi,0x30(%rsp)
1400113ff:	85 f6                	test   %esi,%esi
140011401:	7e 44                	jle    0x140011447
140011403:	41 8b 46 08          	mov    0x8(%r14),%eax
140011407:	85 c0                	test   %eax,%eax
140011409:	75 15                	jne    0x140011420
14001140b:	4c 63 c6             	movslq %esi,%r8
14001140e:	4c 03 c5             	add    %rbp,%r8
140011411:	48 8b d5             	mov    %rbp,%rdx
140011414:	49 8b c9             	mov    %r9,%rcx
140011417:	e8 c4 81 ff ff       	call   0x1400095e0
14001141c:	33 f6                	xor    %esi,%esi
14001141e:	eb 23                	jmp    0x140011443
140011420:	83 f8 02             	cmp    $0x2,%eax
140011423:	75 22                	jne    0x140011447
140011425:	8b c6                	mov    %esi,%eax
140011427:	99                   	cltd
140011428:	2b c2                	sub    %edx,%eax
14001142a:	d1 f8                	sar    $1,%eax
14001142c:	48 63 d8             	movslq %eax,%rbx
14001142f:	83 e6 01             	and    $0x1,%esi
140011432:	4c 8d 04 2b          	lea    (%rbx,%rbp,1),%r8
140011436:	48 8b d5             	mov    %rbp,%rdx
140011439:	48 8b cf             	mov    %rdi,%rcx
14001143c:	e8 9f 81 ff ff       	call   0x1400095e0
140011441:	03 f3                	add    %ebx,%esi
140011443:	89 74 24 30          	mov    %esi,0x30(%rsp)
140011447:	49 8b 17             	mov    (%r15),%rdx
14001144a:	4d 8b 47 08          	mov    0x8(%r15),%r8
14001144e:	4c 03 c2             	add    %rdx,%r8
140011451:	48 8b cf             	mov    %rdi,%rcx
140011454:	e8 87 81 ff ff       	call   0x1400095e0
140011459:	90                   	nop
14001145a:	85 f6                	test   %esi,%esi
14001145c:	78 13                	js     0x140011471
14001145e:	4c 63 c6             	movslq %esi,%r8
140011461:	4c 03 c5             	add    %rbp,%r8
140011464:	48 8b d5             	mov    %rbp,%rdx
140011467:	48 8b cf             	mov    %rdi,%rcx
14001146a:	e8 71 81 ff ff       	call   0x1400095e0
14001146f:	eb 2d                	jmp    0x14001149e
140011471:	41 80 7e 0c 00       	cmpb   $0x0,0xc(%r14)
140011476:	74 26                	je     0x14001149e
140011478:	8b 4f 10             	mov    0x10(%rdi),%ecx
14001147b:	03 ce                	add    %esi,%ecx
14001147d:	48 63 d9             	movslq %ecx,%rbx
140011480:	48 3b 5f 18          	cmp    0x18(%rdi),%rbx
140011484:	76 0f                	jbe    0x140011495
140011486:	48 8b 07             	mov    (%rdi),%rax
140011489:	48 8b d3             	mov    %rbx,%rdx
14001148c:	48 8b cf             	mov    %rdi,%rcx
14001148f:	ff 10                	call   *(%rax)
140011491:	48 3b 5f 18          	cmp    0x18(%rdi),%rbx
140011495:	48 0f 47 5f 18       	cmova  0x18(%rdi),%rbx
14001149a:	48 89 5f 10          	mov    %rbx,0x10(%rdi)
14001149e:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
1400114a3:	48 33 cc             	xor    %rsp,%rcx
1400114a6:	e8 55 83 04 00       	call   0x140059800
1400114ab:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
1400114b2:	00
1400114b3:	48 83 c4 50          	add    $0x50,%rsp
1400114b7:	41 5f                	pop    %r15
1400114b9:	41 5e                	pop    %r14
1400114bb:	5f                   	pop    %rdi
1400114bc:	5e                   	pop    %rsi
1400114bd:	5d                   	pop    %rbp
1400114be:	c3                   	ret
1400114bf:	cc                   	int3
1400114c0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1400114c5:	57                   	push   %rdi
1400114c6:	48 83 ec 20          	sub    $0x20,%rsp
1400114ca:	48 b8 ff ff ff ff ff 	movabs $0xfffffffffffffff,%rax
1400114d1:	ff ff 0f
1400114d4:	48 8b da             	mov    %rdx,%rbx
1400114d7:	48 8b f9             	mov    %rcx,%rdi
1400114da:	48 3b d0             	cmp    %rax,%rdx
1400114dd:	77 62                	ja     0x140011541
1400114df:	48 c1 e3 04          	shl    $0x4,%rbx
1400114e3:	48 81 fb 00 10 00 00 	cmp    $0x1000,%rbx
1400114ea:	72 2b                	jb     0x140011517
1400114ec:	48 8d 4b 27          	lea    0x27(%rbx),%rcx
1400114f0:	48 3b cb             	cmp    %rbx,%rcx
1400114f3:	76 52                	jbe    0x140011547
1400114f5:	e8 46 84 04 00       	call   0x140059940
1400114fa:	48 8b c8             	mov    %rax,%rcx
1400114fd:	48 85 c0             	test   %rax,%rax
140011500:	74 0e                	je     0x140011510
140011502:	48 83 c0 27          	add    $0x27,%rax
140011506:	48 83 e0 e0          	and    $0xffffffffffffffe0,%rax
14001150a:	48 89 48 f8          	mov    %rcx,-0x8(%rax)
14001150e:	eb 18                	jmp    0x140011528
140011510:	ff 15 8a e0 04 00    	call   *0x4e08a(%rip)        # 0x14005f5a0
140011516:	cc                   	int3
140011517:	48 85 db             	test   %rbx,%rbx
14001151a:	74 0a                	je     0x140011526
14001151c:	48 8b cb             	mov    %rbx,%rcx
14001151f:	e8 1c 84 04 00       	call   0x140059940
140011524:	eb 02                	jmp    0x140011528
140011526:	33 c0                	xor    %eax,%eax
140011528:	48 89 07             	mov    %rax,(%rdi)
14001152b:	48 89 47 08          	mov    %rax,0x8(%rdi)
14001152f:	48 03 c3             	add    %rbx,%rax
140011532:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140011537:	48 89 47 10          	mov    %rax,0x10(%rdi)
14001153b:	48 83 c4 20          	add    $0x20,%rsp
14001153f:	5f                   	pop    %rdi
140011540:	c3                   	ret
140011541:	e8 4a 06 00 00       	call   0x140011b90
140011546:	cc                   	int3
140011547:	e8 c4 fd fe ff       	call   0x140001310
14001154c:	cc                   	int3
14001154d:	cc                   	int3
14001154e:	cc                   	int3
14001154f:	cc                   	int3
140011550:	40 55                	rex push %rbp
140011552:	56                   	push   %rsi
140011553:	48 83 ec 28          	sub    $0x28,%rsp
140011557:	48 bd aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaa,%rbp
14001155e:	aa aa 00
140011561:	4c 8b c2             	mov    %rdx,%r8
140011564:	48 8b f1             	mov    %rcx,%rsi
140011567:	48 3b d5             	cmp    %rbp,%rdx
14001156a:	0f 87 38 01 00 00    	ja     0x1400116a8
140011570:	4c 8b 09             	mov    (%rcx),%r9
140011573:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140011577:	49 2b c9             	sub    %r9,%rcx
14001157a:	48 89 5c 24 50       	mov    %rbx,0x50(%rsp)
14001157f:	48 89 7c 24 58       	mov    %rdi,0x58(%rsp)
140011584:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
140011589:	49 be ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%r14
140011590:	aa aa 2a
140011593:	49 8b c6             	mov    %r14,%rax
140011596:	48 f7 e9             	imul   %rcx
140011599:	48 c1 fa 06          	sar    $0x6,%rdx
14001159d:	48 8b c2             	mov    %rdx,%rax
1400115a0:	48 c1 e8 3f          	shr    $0x3f,%rax
1400115a4:	48 03 d0             	add    %rax,%rdx
1400115a7:	48 8b c5             	mov    %rbp,%rax
1400115aa:	48 8b ca             	mov    %rdx,%rcx
1400115ad:	48 d1 e9             	shr    $1,%rcx
1400115b0:	48 2b c1             	sub    %rcx,%rax
1400115b3:	48 3b d0             	cmp    %rax,%rdx
1400115b6:	76 05                	jbe    0x1400115bd
1400115b8:	48 8b fd             	mov    %rbp,%rdi
1400115bb:	eb 0b                	jmp    0x1400115c8
1400115bd:	48 8d 3c 11          	lea    (%rcx,%rdx,1),%rdi
1400115c1:	49 3b f8             	cmp    %r8,%rdi
1400115c4:	49 0f 42 f8          	cmovb  %r8,%rdi
1400115c8:	33 db                	xor    %ebx,%ebx
1400115ca:	4d 85 c9             	test   %r9,%r9
1400115cd:	74 66                	je     0x140011635
1400115cf:	48 8b 56 08          	mov    0x8(%rsi),%rdx
1400115d3:	49 8b c9             	mov    %r9,%rcx
1400115d6:	e8 f5 b4 ff ff       	call   0x14000cad0
1400115db:	4c 8b 06             	mov    (%rsi),%r8
1400115de:	49 8b c6             	mov    %r14,%rax
1400115e1:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
1400115e5:	49 2b c8             	sub    %r8,%rcx
1400115e8:	48 f7 e9             	imul   %rcx
1400115eb:	48 c1 fa 06          	sar    $0x6,%rdx
1400115ef:	48 8b c2             	mov    %rdx,%rax
1400115f2:	48 c1 e8 3f          	shr    $0x3f,%rax
1400115f6:	48 03 d0             	add    %rax,%rdx
1400115f9:	48 8d 14 52          	lea    (%rdx,%rdx,2),%rdx
1400115fd:	48 c1 e2 07          	shl    $0x7,%rdx
140011601:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140011608:	72 18                	jb     0x140011622
14001160a:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
14001160e:	48 83 c2 27          	add    $0x27,%rdx
140011612:	4c 2b c1             	sub    %rcx,%r8
140011615:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140011619:	48 83 f8 1f          	cmp    $0x1f,%rax
14001161d:	77 4d                	ja     0x14001166c
14001161f:	4c 8b c1             	mov    %rcx,%r8
140011622:	49 8b c8             	mov    %r8,%rcx
140011625:	e8 6a 86 04 00       	call   0x140059c94
14001162a:	48 89 1e             	mov    %rbx,(%rsi)
14001162d:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
140011631:	48 89 5e 10          	mov    %rbx,0x10(%rsi)
140011635:	48 3b fd             	cmp    %rbp,%rdi
140011638:	77 74                	ja     0x1400116ae
14001163a:	48 8d 3c 7f          	lea    (%rdi,%rdi,2),%rdi
14001163e:	48 c1 e7 07          	shl    $0x7,%rdi
140011642:	48 81 ff 00 10 00 00 	cmp    $0x1000,%rdi
140011649:	72 28                	jb     0x140011673
14001164b:	48 8d 4f 27          	lea    0x27(%rdi),%rcx
14001164f:	48 3b cf             	cmp    %rdi,%rcx
140011652:	76 5a                	jbe    0x1400116ae
140011654:	e8 e7 82 04 00       	call   0x140059940
140011659:	48 85 c0             	test   %rax,%rax
14001165c:	74 0e                	je     0x14001166c
14001165e:	48 8d 58 27          	lea    0x27(%rax),%rbx
140011662:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
140011666:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
14001166a:	eb 17                	jmp    0x140011683
14001166c:	ff 15 2e df 04 00    	call   *0x4df2e(%rip)        # 0x14005f5a0
140011672:	cc                   	int3
140011673:	48 85 ff             	test   %rdi,%rdi
140011676:	74 0b                	je     0x140011683
140011678:	48 8b cf             	mov    %rdi,%rcx
14001167b:	e8 c0 82 04 00       	call   0x140059940
140011680:	48 8b d8             	mov    %rax,%rbx
140011683:	4c 8b 74 24 20       	mov    0x20(%rsp),%r14
140011688:	48 8d 04 1f          	lea    (%rdi,%rbx,1),%rax
14001168c:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
140011691:	48 89 1e             	mov    %rbx,(%rsi)
140011694:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
140011698:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
14001169d:	48 89 46 10          	mov    %rax,0x10(%rsi)
1400116a1:	48 83 c4 28          	add    $0x28,%rsp
1400116a5:	5e                   	pop    %rsi
1400116a6:	5d                   	pop    %rbp
1400116a7:	c3                   	ret
1400116a8:	e8 e3 04 00 00       	call   0x140011b90
1400116ad:	cc                   	int3
1400116ae:	e8 5d fc fe ff       	call   0x140001310
1400116b3:	cc                   	int3
1400116b4:	cc                   	int3
1400116b5:	cc                   	int3
1400116b6:	cc                   	int3
1400116b7:	cc                   	int3
1400116b8:	cc                   	int3
1400116b9:	cc                   	int3
1400116ba:	cc                   	int3
1400116bb:	cc                   	int3
1400116bc:	cc                   	int3
1400116bd:	cc                   	int3
1400116be:	cc                   	int3
1400116bf:	cc                   	int3
1400116c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400116c5:	57                   	push   %rdi
1400116c6:	48 83 ec 20          	sub    $0x20,%rsp
1400116ca:	48 8b 51 10          	mov    0x10(%rcx),%rdx
1400116ce:	48 8b f9             	mov    %rcx,%rdi
1400116d1:	48 83 c2 01          	add    $0x1,%rdx
1400116d5:	48 8b 59 38          	mov    0x38(%rcx),%rbx
1400116d9:	0f 57 c0             	xorps  %xmm0,%xmm0
1400116dc:	78 07                	js     0x1400116e5
1400116de:	f3 48 0f 2a c2       	cvtsi2ss %rdx,%xmm0
1400116e3:	eb 15                	jmp    0x1400116fa
1400116e5:	48 8b c2             	mov    %rdx,%rax
1400116e8:	83 e2 01             	and    $0x1,%edx
1400116eb:	48 d1 e8             	shr    $1,%rax
1400116ee:	48 0b c2             	or     %rdx,%rax
1400116f1:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
1400116f6:	f3 0f 58 c0          	addss  %xmm0,%xmm0
1400116fa:	f3 0f 5e 01          	divss  (%rcx),%xmm0
1400116fe:	e8 e6 91 04 00       	call   0x14005a8e9
140011703:	f3 0f 10 0d e9 40 05 	movss  0x540e9(%rip),%xmm1        # 0x1400657f4
14001170a:	00
14001170b:	33 c9                	xor    %ecx,%ecx
14001170d:	0f 2f c1             	comiss %xmm1,%xmm0
140011710:	72 16                	jb     0x140011728
140011712:	f3 0f 5c c1          	subss  %xmm1,%xmm0
140011716:	0f 2f c1             	comiss %xmm1,%xmm0
140011719:	73 0d                	jae    0x140011728
14001171b:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140011722:	00 00 80
140011725:	48 8b c8             	mov    %rax,%rcx
140011728:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
14001172d:	48 03 c1             	add    %rcx,%rax
140011730:	b9 08 00 00 00       	mov    $0x8,%ecx
140011735:	48 3b c1             	cmp    %rcx,%rax
140011738:	48 0f 47 c8          	cmova  %rax,%rcx
14001173c:	48 3b d9             	cmp    %rcx,%rbx
14001173f:	73 19                	jae    0x14001175a
140011741:	48 81 fb 00 02 00 00 	cmp    $0x200,%rbx
140011748:	73 0d                	jae    0x140011757
14001174a:	48 8d 1c dd 00 00 00 	lea    0x0(,%rbx,8),%rbx
140011751:	00
140011752:	48 3b d9             	cmp    %rcx,%rbx
140011755:	73 03                	jae    0x14001175a
140011757:	48 8b d9             	mov    %rcx,%rbx
14001175a:	48 8b d3             	mov    %rbx,%rdx
14001175d:	48 8b cf             	mov    %rdi,%rcx
140011760:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140011765:	48 83 c4 20          	add    $0x20,%rsp
140011769:	5f                   	pop    %rdi
14001176a:	e9 41 04 00 00       	jmp    0x140011bb0
14001176f:	cc                   	int3
140011770:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140011775:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
14001177a:	56                   	push   %rsi
14001177b:	57                   	push   %rdi
14001177c:	41 54                	push   %r12
14001177e:	41 56                	push   %r14
140011780:	41 57                	push   %r15
140011782:	48 81 ec 10 01 00 00 	sub    $0x110,%rsp
140011789:	48 8b 05 b0 68 06 00 	mov    0x668b0(%rip),%rax        # 0x140078040
140011790:	48 33 c4             	xor    %rsp,%rax
140011793:	48 89 84 24 00 01 00 	mov    %rax,0x100(%rsp)
14001179a:	00
14001179b:	48 8b da             	mov    %rdx,%rbx
14001179e:	4c 8b f1             	mov    %rcx,%r14
1400117a1:	33 f6                	xor    %esi,%esi
1400117a3:	89 74 24 20          	mov    %esi,0x20(%rsp)
1400117a7:	48 85 c9             	test   %rcx,%rcx
1400117aa:	0f 84 76 01 00 00    	je     0x140011926
1400117b0:	48 39 31             	cmp    %rsi,(%rcx)
1400117b3:	0f 85 6d 01 00 00    	jne    0x140011926
1400117b9:	8d 4e 30             	lea    0x30(%rsi),%ecx
1400117bc:	e8 7f 81 04 00       	call   0x140059940
1400117c1:	48 8b f8             	mov    %rax,%rdi