140ae7263:	f2 0f 10 45 f0       	movsd  -0x10(%rbp),%xmm0
140ae7268:	f2 0f 11 02          	movsd  %xmm0,(%rdx)
140ae726c:	89 42 08             	mov    %eax,0x8(%rdx)
140ae726f:	48 83 47 08 0c       	addq   $0xc,0x8(%rdi)
140ae7274:	eb 0c                	jmp    0x140ae7282
140ae7276:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
140ae727a:	48 8b cf             	mov    %rdi,%rcx
140ae727d:	e8 36 22 59 ff       	call   0x1400794b8
140ae7282:	83 fe 01             	cmp    $0x1,%esi
140ae7285:	75 05                	jne    0x140ae728c
140ae7287:	44 3b f6             	cmp    %esi,%r14d
140ae728a:	74 4d                	je     0x140ae72d9
140ae728c:	ff c6                	inc    %esi
140ae728e:	d1 ee                	shr    $1,%esi
140ae7290:	41 ff c6             	inc    %r14d
140ae7293:	41 d1 ee             	shr    $1,%r14d
140ae7296:	89 75 f0             	mov    %esi,-0x10(%rbp)
140ae7299:	44 89 75 f4          	mov    %r14d,-0xc(%rbp)
140ae729d:	44 89 7d f8          	mov    %r15d,-0x8(%rbp)
140ae72a1:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140ae72a5:	48 3b 57 10          	cmp    0x10(%rdi),%rdx
140ae72a9:	74 14                	je     0x140ae72bf
140ae72ab:	f2 0f 10 45 f0       	movsd  -0x10(%rbp),%xmm0
140ae72b0:	f2 0f 11 02          	movsd  %xmm0,(%rdx)
140ae72b4:	44 89 7a 08          	mov    %r15d,0x8(%rdx)
140ae72b8:	48 83 47 08 0c       	addq   $0xc,0x8(%rdi)
140ae72bd:	eb 0c                	jmp    0x140ae72cb
140ae72bf:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
140ae72c3:	48 8b cf             	mov    %rdi,%rcx
140ae72c6:	e8 ed 21 59 ff       	call   0x1400794b8
140ae72cb:	41 8b c6             	mov    %r14d,%eax
140ae72ce:	0f af c6             	imul   %esi,%eax
140ae72d1:	44 03 f8             	add    %eax,%r15d
140ae72d4:	41 ff c4             	inc    %r12d
140ae72d7:	eb a9                	jmp    0x140ae7282
140ae72d9:	44 89 7b 44          	mov    %r15d,0x44(%rbx)
140ae72dd:	44 89 63 48          	mov    %r12d,0x48(%rbx)
140ae72e1:	44 01 7b 38          	add    %r15d,0x38(%rbx)
140ae72e5:	8b 53 38             	mov    0x38(%rbx),%edx
140ae72e8:	83 65 48 00          	andl   $0x0,0x48(%rbp)
140ae72ec:	4c 8d 45 48          	lea    0x48(%rbp),%r8
140ae72f0:	48 8b cb             	mov    %rbx,%rcx
140ae72f3:	e8 b4 b9 62 ff       	call   0x140112cac
140ae72f8:	8b 53 38             	mov    0x38(%rbx),%edx
140ae72fb:	45 33 c0             	xor    %r8d,%r8d
140ae72fe:	48 8d 4b 18          	lea    0x18(%rbx),%rcx
140ae7302:	e8 55 b3 62 ff       	call   0x14011265c
140ae7307:	90                   	nop
140ae7308:	48 8b c3             	mov    %rbx,%rax
140ae730b:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
140ae7312:	00
140ae7313:	48 83 c4 30          	add    $0x30,%rsp
140ae7317:	41 5f                	pop    %r15
140ae7319:	41 5e                	pop    %r14
140ae731b:	41 5d                	pop    %r13
140ae731d:	41 5c                	pop    %r12
140ae731f:	5f                   	pop    %rdi
140ae7320:	5e                   	pop    %rsi
140ae7321:	5d                   	pop    %rbp
140ae7322:	c3                   	ret
140ae7323:	90                   	nop
140ae7324:	40 53                	rex push %rbx
140ae7326:	48 83 ec 70          	sub    $0x70,%rsp
140ae732a:	48 8b 05 0f 7d 1d 00 	mov    0x1d7d0f(%rip),%rax        # 0x140cbf040
140ae7331:	48 33 c4             	xor    %rsp,%rax
140ae7334:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
140ae7339:	48 8b 41 58          	mov    0x58(%rcx),%rax
140ae733d:	48 bb ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rbx
140ae7344:	aa aa aa
140ae7347:	45 8b d1             	mov    %r9d,%r10d
140ae734a:	44 8b da             	mov    %edx,%r11d
140ae734d:	4c 8b 49 50          	mov    0x50(%rcx),%r9
140ae7351:	49 2b c1             	sub    %r9,%rax
140ae7354:	48 c1 f8 02          	sar    $0x2,%rax
140ae7358:	48 0f af c3          	imul   %rbx,%rax
140ae735c:	4c 3b d0             	cmp    %rax,%r10
140ae735f:	73 47                	jae    0x140ae73a8
140ae7361:	4b 8d 14 52          	lea    (%r10,%r10,2),%rdx
140ae7365:	41 8b 04 91          	mov    (%r9,%rdx,4),%eax
140ae7369:	44 3b d8             	cmp    %eax,%r11d
140ae736c:	73 41                	jae    0x140ae73af
140ae736e:	48 8b 49 58          	mov    0x58(%rcx),%rcx
140ae7372:	49 2b c9             	sub    %r9,%rcx
140ae7375:	48 c1 f9 02          	sar    $0x2,%rcx
140ae7379:	48 0f af cb          	imul   %rbx,%rcx
140ae737d:	4c 3b d1             	cmp    %rcx,%r10
140ae7380:	73 26                	jae    0x140ae73a8
140ae7382:	45 3b 44 91 04       	cmp    0x4(%r9,%rdx,4),%r8d
140ae7387:	73 26                	jae    0x140ae73af
140ae7389:	41 0f af c0          	imul   %r8d,%eax
140ae738d:	41 03 44 91 08       	add    0x8(%r9,%rdx,4),%eax
140ae7392:	41 03 c3             	add    %r11d,%eax
140ae7395:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
140ae739a:	48 33 cc             	xor    %rsp,%rcx
140ae739d:	e8 3e 82 00 00       	call   0x140aef5e0
140ae73a2:	48 83 c4 70          	add    $0x70,%rsp
140ae73a6:	5b                   	pop    %rbx
140ae73a7:	c3                   	ret
140ae73a8:	ff 15 ea 55 02 00    	call   *0x255ea(%rip)        # 0x140b0c998
140ae73ae:	cc                   	int3
140ae73af:	48 8d 15 c2 9a 0c 00 	lea    0xc9ac2(%rip),%rdx        # 0x140bb0e78
140ae73b6:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140ae73bb:	e8 0c 05 e8 ff       	call   0x1409678cc
140ae73c0:	48 8d 15 19 fa 14 00 	lea    0x14fa19(%rip),%rdx        # 0x140c36de0
140ae73c7:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140ae73cc:	e8 ad 90 00 00       	call   0x140af047e
140ae73d1:	cc                   	int3
140ae73d2:	90                   	nop
140ae73d3:	90                   	nop
140ae73d4:	48 8b c4             	mov    %rsp,%rax
140ae73d7:	48 89 58 08          	mov    %rbx,0x8(%rax)
140ae73db:	48 89 70 10          	mov    %rsi,0x10(%rax)
140ae73df:	48 89 78 18          	mov    %rdi,0x18(%rax)
140ae73e3:	4c 89 60 20          	mov    %r12,0x20(%rax)
140ae73e7:	55                   	push   %rbp
140ae73e8:	41 56                	push   %r14
140ae73ea:	41 57                	push   %r15
140ae73ec:	48 8b ec             	mov    %rsp,%rbp
140ae73ef:	48 83 ec 40          	sub    $0x40,%rsp
140ae73f3:	45 8b e1             	mov    %r9d,%r12d
140ae73f6:	45 8b f8             	mov    %r8d,%r15d
140ae73f9:	48 8b fa             	mov    %rdx,%rdi
140ae73fc:	45 8b c4             	mov    %r12d,%r8d
140ae73ff:	41 8b d7             	mov    %r15d,%edx
140ae7402:	45 33 c9             	xor    %r9d,%r9d
140ae7405:	48 8b d9             	mov    %rcx,%rbx
140ae7408:	e8 17 ff ff ff       	call   0x140ae7324
140ae740d:	44 8b d0             	mov    %eax,%r10d
140ae7410:	4c 3b 53 30          	cmp    0x30(%rbx),%r10
140ae7414:	0f 83 8d 01 00 00    	jae    0x140ae75a7
140ae741a:	48 8b 53 18          	mov    0x18(%rbx),%rdx
140ae741e:	41 8b ca             	mov    %r10d,%ecx
140ae7421:	83 e1 1f             	and    $0x1f,%ecx
140ae7424:	b8 01 00 00 00       	mov    $0x1,%eax
140ae7429:	d3 e0                	shl    %cl,%eax
140ae742b:	45 8b c2             	mov    %r10d,%r8d
140ae742e:	48 8b 0b             	mov    (%rbx),%rcx
140ae7431:	49 c1 e8 05          	shr    $0x5,%r8
140ae7435:	42 85 04 82          	test   %eax,(%rdx,%r8,4)
140ae7439:	48 8b 43 08          	mov    0x8(%rbx),%rax
140ae743d:	0f 95 c2             	setne  %dl
140ae7440:	48 2b c1             	sub    %rcx,%rax
140ae7443:	48 c1 f8 02          	sar    $0x2,%rax
140ae7447:	4c 3b d0             	cmp    %rax,%r10
140ae744a:	0f 83 57 01 00 00    	jae    0x140ae75a7
140ae7450:	42 8b 04 91          	mov    (%rcx,%r10,4),%eax
140ae7454:	33 f6                	xor    %esi,%esi
140ae7456:	88 55 f0             	mov    %dl,-0x10(%rbp)
140ae7459:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140ae745d:	44 89 7d e0          	mov    %r15d,-0x20(%rbp)
140ae7461:	44 89 65 e4          	mov    %r12d,-0x1c(%rbp)
140ae7465:	44 89 55 e8          	mov    %r10d,-0x18(%rbp)
140ae7469:	89 75 ec             	mov    %esi,-0x14(%rbp)
140ae746c:	89 45 f4             	mov    %eax,-0xc(%rbp)
140ae746f:	48 3b 57 10          	cmp    0x10(%rdi),%rdx
140ae7473:	74 18                	je     0x140ae748d
140ae7475:	0f 10 45 e0          	movups -0x20(%rbp),%xmm0
140ae7479:	f2 0f 10 4d f0       	movsd  -0x10(%rbp),%xmm1
140ae747e:	0f 11 02             	movups %xmm0,(%rdx)
140ae7481:	f2 0f 11 4a 10       	movsd  %xmm1,0x10(%rdx)
140ae7486:	48 83 47 08 18       	addq   $0x18,0x8(%rdi)
140ae748b:	eb 0c                	jmp    0x140ae7499
140ae748d:	4c 8d 45 e0          	lea    -0x20(%rbp),%r8
140ae7491:	48 8b cf             	mov    %rdi,%rcx
140ae7494:	e8 3f 02 00 00       	call   0x140ae76d8
140ae7499:	41 be 01 00 00 00    	mov    $0x1,%r14d
140ae749f:	44 39 73 48          	cmp    %r14d,0x48(%rbx)
140ae74a3:	0f 82 d4 00 00 00    	jb     0x140ae757d
140ae74a9:	41 d1 ef             	shr    $1,%r15d
140ae74ac:	45 8b ce             	mov    %r14d,%r9d
140ae74af:	41 d1 ec             	shr    $1,%r12d
140ae74b2:	41 8b d7             	mov    %r15d,%edx
140ae74b5:	45 8b c4             	mov    %r12d,%r8d
140ae74b8:	48 8b cb             	mov    %rbx,%rcx
140ae74bb:	e8 64 fe ff ff       	call   0x140ae7324
140ae74c0:	44 8b d8             	mov    %eax,%r11d
140ae74c3:	44 8b d0             	mov    %eax,%r10d
140ae74c6:	4c 3b 5b 30          	cmp    0x30(%rbx),%r11
140ae74ca:	0f 83 d7 00 00 00    	jae    0x140ae75a7
140ae74d0:	4c 8b 43 18          	mov    0x18(%rbx),%r8
140ae74d4:	41 8a ca             	mov    %r10b,%cl
140ae74d7:	80 e1 1f             	and    $0x1f,%cl
140ae74da:	45 8b ca             	mov    %r10d,%r9d
140ae74dd:	49 c1 e9 05          	shr    $0x5,%r9
140ae74e1:	0f b6 d1             	movzbl %cl,%edx
140ae74e4:	43 8b 0c 88          	mov    (%r8,%r9,4),%ecx
140ae74e8:	0f a3 d1             	bt     %edx,%ecx
140ae74eb:	72 79                	jb     0x140ae7566
140ae74ed:	4c 3b 53 30          	cmp    0x30(%rbx),%r10
140ae74f1:	0f 83 b0 00 00 00    	jae    0x140ae75a7
140ae74f7:	48 8b 0b             	mov    (%rbx),%rcx
140ae74fa:	48 8b 43 08          	mov    0x8(%rbx),%rax
140ae74fe:	48 2b c1             	sub    %rcx,%rax
140ae7501:	48 c1 f8 02          	sar    $0x2,%rax
140ae7505:	4c 3b d0             	cmp    %rax,%r10
140ae7508:	0f 83 99 00 00 00    	jae    0x140ae75a7
140ae750e:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140ae7512:	42 8b 04 99          	mov    (%rcx,%r11,4),%eax
140ae7516:	44 89 7d e0          	mov    %r15d,-0x20(%rbp)
140ae751a:	44 89 65 e4          	mov    %r12d,-0x1c(%rbp)
140ae751e:	44 89 5d e8          	mov    %r11d,-0x18(%rbp)
140ae7522:	44 89 75 ec          	mov    %r14d,-0x14(%rbp)
140ae7526:	40 88 75 f0          	mov    %sil,-0x10(%rbp)
140ae752a:	89 45 f4             	mov    %eax,-0xc(%rbp)
140ae752d:	48 3b 57 10          	cmp    0x10(%rdi),%rdx
140ae7531:	74 18                	je     0x140ae754b
140ae7533:	0f 10 45 e0          	movups -0x20(%rbp),%xmm0
140ae7537:	f2 0f 10 4d f0       	movsd  -0x10(%rbp),%xmm1
140ae753c:	0f 11 02             	movups %xmm0,(%rdx)
140ae753f:	f2 0f 11 4a 10       	movsd  %xmm1,0x10(%rdx)
140ae7544:	48 83 47 08 18       	addq   $0x18,0x8(%rdi)
140ae7549:	eb 0c                	jmp    0x140ae7557
140ae754b:	4c 8d 45 e0          	lea    -0x20(%rbp),%r8
140ae754f:	48 8b cf             	mov    %rdi,%rcx
140ae7552:	e8 81 01 00 00       	call   0x140ae76d8
140ae7557:	41 ff c6             	inc    %r14d
140ae755a:	44 3b 73 48          	cmp    0x48(%rbx),%r14d
140ae755e:	0f 86 45 ff ff ff    	jbe    0x140ae74a9
140ae7564:	eb 17                	jmp    0x140ae757d
140ae7566:	48 8b 33             	mov    (%rbx),%rsi
140ae7569:	48 8b 43 08          	mov    0x8(%rbx),%rax
140ae756d:	48 2b c6             	sub    %rsi,%rax
140ae7570:	48 c1 f8 02          	sar    $0x2,%rax
140ae7574:	4c 3b d0             	cmp    %rax,%r10
140ae7577:	73 2e                	jae    0x140ae75a7
140ae7579:	42 8b 34 9e          	mov    (%rsi,%r11,4),%esi
140ae757d:	48 8b 47 08          	mov    0x8(%rdi),%rax
140ae7581:	39 70 fc             	cmp    %esi,-0x4(%rax)
140ae7584:	73 03                	jae    0x140ae7589
140ae7586:	89 70 fc             	mov    %esi,-0x4(%rax)
140ae7589:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140ae758e:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140ae7593:	48 8b 7c 24 70       	mov    0x70(%rsp),%rdi
140ae7598:	4c 8b 64 24 78       	mov    0x78(%rsp),%r12
140ae759d:	48 83 c4 40          	add    $0x40,%rsp
140ae75a1:	41 5f                	pop    %r15
140ae75a3:	41 5e                	pop    %r14
140ae75a5:	5d                   	pop    %rbp
140ae75a6:	c3                   	ret
140ae75a7:	ff 15 eb 53 02 00    	call   *0x253eb(%rip)        # 0x140b0c998
140ae75ad:	cc                   	int3
140ae75ae:	90                   	nop
140ae75af:	90                   	nop
140ae75b0:	48 83 ec 28          	sub    $0x28,%rsp
140ae75b4:	48 8b 02             	mov    (%rdx),%rax
140ae75b7:	4c 8b c2             	mov    %rdx,%r8
140ae75ba:	4c 8b c9             	mov    %rcx,%r9
140ae75bd:	48 3b 42 08          	cmp    0x8(%rdx),%rax
140ae75c1:	74 55                	je     0x140ae7618
140ae75c3:	4d 8b 11             	mov    (%r9),%r10
140ae75c6:	49 8b 49 08          	mov    0x8(%r9),%rcx
140ae75ca:	8b 50 08             	mov    0x8(%rax),%edx
140ae75cd:	49 2b ca             	sub    %r10,%rcx
140ae75d0:	44 8b 58 14          	mov    0x14(%rax),%r11d
140ae75d4:	48 c1 f9 02          	sar    $0x2,%rcx
140ae75d8:	48 3b d1             	cmp    %rcx,%rdx
140ae75db:	73 40                	jae    0x140ae761d
140ae75dd:	45 89 1c 92          	mov    %r11d,(%r10,%rdx,4)
140ae75e1:	8b 50 08             	mov    0x8(%rax),%edx
140ae75e4:	49 3b 51 30          	cmp    0x30(%r9),%rdx
140ae75e8:	73 33                	jae    0x140ae761d
140ae75ea:	4d 8b 59 18          	mov    0x18(%r9),%r11
140ae75ee:	44 8b d2             	mov    %edx,%r10d
140ae75f1:	49 c1 ea 05          	shr    $0x5,%r10
140ae75f5:	83 e2 1f             	and    $0x1f,%edx
140ae75f8:	80 78 10 00          	cmpb   $0x0,0x10(%rax)
140ae75fc:	43 8b 0c 93          	mov    (%r11,%r10,4),%ecx
140ae7600:	74 05                	je     0x140ae7607
140ae7602:	0f ab d1             	bts    %edx,%ecx
140ae7605:	eb 03                	jmp    0x140ae760a
140ae7607:	0f b3 d1             	btr    %edx,%ecx
140ae760a:	48 83 c0 18          	add    $0x18,%rax
140ae760e:	43 89 0c 93          	mov    %ecx,(%r11,%r10,4)
140ae7612:	49 3b 40 08          	cmp    0x8(%r8),%rax
140ae7616:	75 ab                	jne    0x140ae75c3
140ae7618:	48 83 c4 28          	add    $0x28,%rsp
140ae761c:	c3                   	ret
140ae761d:	ff 15 75 53 02 00    	call   *0x25375(%rip)        # 0x140b0c998
140ae7623:	cc                   	int3
140ae7624:	40 53                	rex push %rbx
140ae7626:	48 83 ec 70          	sub    $0x70,%rsp
140ae762a:	48 8b 05 0f 7a 1d 00 	mov    0x1d7a0f(%rip),%rax        # 0x140cbf040
140ae7631:	48 33 c4             	xor    %rsp,%rax
140ae7634:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
140ae7639:	8b 41 3c             	mov    0x3c(%rcx),%eax
140ae763c:	49 8b d9             	mov    %r9,%rbx
140ae763f:	4c 8b d1             	mov    %rcx,%r10
140ae7642:	3b d0                	cmp    %eax,%edx
140ae7644:	73 6e                	jae    0x140ae76b4
140ae7646:	44 3b 41 40          	cmp    0x40(%rcx),%r8d
140ae764a:	73 68                	jae    0x140ae76b4
140ae764c:	41 0f af c0          	imul   %r8d,%eax
140ae7650:	45 32 db             	xor    %r11b,%r11b
140ae7653:	44 8d 0c 02          	lea    (%rdx,%rax,1),%r9d
140ae7657:	4c 3b 49 30          	cmp    0x30(%rcx),%r9
140ae765b:	73 50                	jae    0x140ae76ad
140ae765d:	48 8b 51 18          	mov    0x18(%rcx),%rdx
140ae7661:	45 8b c1             	mov    %r9d,%r8d
140ae7664:	41 8b c9             	mov    %r9d,%ecx
140ae7667:	49 c1 e8 05          	shr    $0x5,%r8
140ae766b:	83 e1 1f             	and    $0x1f,%ecx
140ae766e:	b8 01 00 00 00       	mov    $0x1,%eax
140ae7673:	d3 e0                	shl    %cl,%eax
140ae7675:	42 85 04 82          	test   %eax,(%rdx,%r8,4)
140ae7679:	74 1c                	je     0x140ae7697
140ae767b:	49 8b 0a             	mov    (%r10),%rcx
140ae767e:	49 8b 42 08          	mov    0x8(%r10),%rax
140ae7682:	48 2b c1             	sub    %rcx,%rax
140ae7685:	48 c1 f8 02          	sar    $0x2,%rax
140ae7689:	4c 3b c8             	cmp    %rax,%r9
140ae768c:	73 1f                	jae    0x140ae76ad
140ae768e:	42 8b 04 89          	mov    (%rcx,%r9,4),%eax
140ae7692:	41 b3 01             	mov    $0x1,%r11b
140ae7695:	89 03                	mov    %eax,(%rbx)
140ae7697:	41 8a c3             	mov    %r11b,%al
140ae769a:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
140ae769f:	48 33 cc             	xor    %rsp,%rcx
140ae76a2:	e8 39 7f 00 00       	call   0x140aef5e0
140ae76a7:	48 83 c4 70          	add    $0x70,%rsp
140ae76ab:	5b                   	pop    %rbx
140ae76ac:	c3                   	ret
140ae76ad:	ff 15 e5 52 02 00    	call   *0x252e5(%rip)        # 0x140b0c998
140ae76b3:	cc                   	int3
140ae76b4:	48 8d 15 e5 97 0c 00 	lea    0xc97e5(%rip),%rdx        # 0x140bb0ea0
140ae76bb:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140ae76c0:	e8 07 02 e8 ff       	call   0x1409678cc
140ae76c5:	48 8d 15 14 f7 14 00 	lea    0x14f714(%rip),%rdx        # 0x140c36de0
140ae76cc:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140ae76d1:	e8 a8 8d 00 00       	call   0x140af047e
140ae76d6:	cc                   	int3
140ae76d7:	90                   	nop
140ae76d8:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140ae76dd:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140ae76e2:	57                   	push   %rdi
140ae76e3:	41 54                	push   %r12
140ae76e5:	41 55                	push   %r13
140ae76e7:	41 56                	push   %r14
140ae76e9:	41 57                	push   %r15
140ae76eb:	48 83 ec 20          	sub    $0x20,%rsp
140ae76ef:	4d 8b e8             	mov    %r8,%r13
140ae76f2:	4c 8b e2             	mov    %rdx,%r12
140ae76f5:	48 8b f9             	mov    %rcx,%rdi
140ae76f8:	4c 8b ca             	mov    %rdx,%r9
140ae76fb:	4c 2b 09             	sub    (%rcx),%r9
140ae76fe:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
140ae7705:	aa aa 2a
140ae7708:	49 f7 e9             	imul   %r9
140ae770b:	4c 8b fa             	mov    %rdx,%r15
140ae770e:	49 c1 ff 02          	sar    $0x2,%r15
140ae7712:	49 8b c7             	mov    %r15,%rax