1405352a4:	4d 8b e0             	mov    %r8,%r12
1405352a7:	4c 8b ca             	mov    %rdx,%r9
1405352aa:	4c 8b f1             	mov    %rcx,%r14
1405352ad:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
1405352b2:	4c 8b 11             	mov    (%rcx),%r10
1405352b5:	4d 2b ca             	sub    %r10,%r9
1405352b8:	49 bb ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%r11
1405352bf:	aa aa 2a
1405352c2:	49 8b c3             	mov    %r11,%rax
1405352c5:	49 f7 e9             	imul   %r9
1405352c8:	48 8b da             	mov    %rdx,%rbx
1405352cb:	48 c1 fb 02          	sar    $0x2,%rbx
1405352cf:	48 8b c3             	mov    %rbx,%rax
1405352d2:	48 c1 e8 3f          	shr    $0x3f,%rax
1405352d6:	48 03 d8             	add    %rax,%rbx
1405352d9:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1405352dd:	49 2b ca             	sub    %r10,%rcx
1405352e0:	49 8b c3             	mov    %r11,%rax
1405352e3:	48 f7 e9             	imul   %rcx
1405352e6:	48 c1 fa 02          	sar    $0x2,%rdx
1405352ea:	48 8b c2             	mov    %rdx,%rax
1405352ed:	48 c1 e8 3f          	shr    $0x3f,%rax
1405352f1:	48 03 d0             	add    %rax,%rdx
1405352f4:	49 b9 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%r9
1405352fb:	aa aa 0a
1405352fe:	49 3b d1             	cmp    %r9,%rdx
140535301:	0f 84 08 02 00 00    	je     0x14053550f
140535307:	4c 8d 42 01          	lea    0x1(%rdx),%r8
14053530b:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
140535310:	49 8b 4e 10          	mov    0x10(%r14),%rcx
140535314:	49 2b ca             	sub    %r10,%rcx
140535317:	49 8b c3             	mov    %r11,%rax
14053531a:	48 f7 e9             	imul   %rcx
14053531d:	48 c1 fa 02          	sar    $0x2,%rdx
140535321:	48 8b c2             	mov    %rdx,%rax
140535324:	48 c1 e8 3f          	shr    $0x3f,%rax
140535328:	48 03 d0             	add    %rax,%rdx
14053532b:	48 8b ca             	mov    %rdx,%rcx
14053532e:	48 d1 e9             	shr    $1,%rcx
140535331:	49 8b c1             	mov    %r9,%rax
140535334:	48 2b c1             	sub    %rcx,%rax
140535337:	48 3b d0             	cmp    %rax,%rdx
14053533a:	0f 87 c9 01 00 00    	ja     0x140535509
140535340:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
140535344:	49 8b c8             	mov    %r8,%rcx
140535347:	49 3b c0             	cmp    %r8,%rax
14053534a:	48 0f 43 c8          	cmovae %rax,%rcx
14053534e:	49 3b c9             	cmp    %r9,%rcx
140535351:	0f 87 b2 01 00 00    	ja     0x140535509
140535357:	4c 8d 3c 49          	lea    (%rcx,%rcx,2),%r15
14053535b:	49 c1 e7 03          	shl    $0x3,%r15
14053535f:	48 89 8c 24 b8 00 00 	mov    %rcx,0xb8(%rsp)
140535366:	00
140535367:	4d 85 ff             	test   %r15,%r15
14053536a:	75 0c                	jne    0x140535378
14053536c:	33 f6                	xor    %esi,%esi
14053536e:	48 89 8c 24 b8 00 00 	mov    %rcx,0xb8(%rsp)
140535375:	00
140535376:	eb 3d                	jmp    0x1405353b5
140535378:	49 81 ff 00 10 00 00 	cmp    $0x1000,%r15
14053537f:	72 29                	jb     0x1405353aa
140535381:	49 8d 4f 27          	lea    0x27(%r15),%rcx
140535385:	49 3b cf             	cmp    %r15,%rcx
140535388:	0f 86 7b 01 00 00    	jbe    0x140535509
14053538e:	e8 75 5d 8e 00       	call   0x140e1b108
140535393:	48 85 c0             	test   %rax,%rax
140535396:	0f 84 79 01 00 00    	je     0x140535515
14053539c:	48 8d 70 27          	lea    0x27(%rax),%rsi
1405353a0:	48 83 e6 e0          	and    $0xffffffffffffffe0,%rsi
1405353a4:	48 89 46 f8          	mov    %rax,-0x8(%rsi)
1405353a8:	eb 0b                	jmp    0x1405353b5
1405353aa:	49 8b cf             	mov    %r15,%rcx
1405353ad:	e8 56 5d 8e 00       	call   0x140e1b108
1405353b2:	48 8b f0             	mov    %rax,%rsi
1405353b5:	48 89 74 24 38       	mov    %rsi,0x38(%rsp)
1405353ba:	48 8d 04 5b          	lea    (%rbx,%rbx,2),%rax
1405353be:	4c 8d 2c c6          	lea    (%rsi,%rax,8),%r13
1405353c2:	49 8d 7d 18          	lea    0x18(%r13),%rdi
1405353c6:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
1405353cb:	48 89 bc 24 a0 00 00 	mov    %rdi,0xa0(%rsp)
1405353d2:	00
1405353d3:	49 8b d4             	mov    %r12,%rdx
1405353d6:	49 8b cd             	mov    %r13,%rcx
1405353d9:	e8 12 1b 22 00       	call   0x140756ef0
1405353de:	4c 89 ac 24 a0 00 00 	mov    %r13,0xa0(%rsp)
1405353e5:	00
1405353e6:	4d 8b 66 08          	mov    0x8(%r14),%r12
1405353ea:	49 8b 1e             	mov    (%r14),%rbx
1405353ed:	48 8b 84 24 a8 00 00 	mov    0xa8(%rsp),%rax
1405353f4:	00
1405353f5:	49 3b c4             	cmp    %r12,%rax
1405353f8:	75 37                	jne    0x140535431
1405353fa:	48 89 74 24 40       	mov    %rsi,0x40(%rsp)
1405353ff:	48 8b fe             	mov    %rsi,%rdi
140535402:	48 89 74 24 48       	mov    %rsi,0x48(%rsp)
140535407:	4c 89 74 24 50       	mov    %r14,0x50(%rsp)
14053540c:	0f 1f 40 00          	nopl   0x0(%rax)
140535410:	49 3b dc             	cmp    %r12,%rbx
140535413:	74 1a                	je     0x14053542f
140535415:	48 8b d3             	mov    %rbx,%rdx
140535418:	48 8b cf             	mov    %rdi,%rcx
14053541b:	e8 d0 1a 22 00       	call   0x140756ef0
140535420:	48 83 c7 18          	add    $0x18,%rdi
140535424:	48 89 7c 24 48       	mov    %rdi,0x48(%rsp)
140535429:	48 83 c3 18          	add    $0x18,%rbx
14053542d:	eb e1                	jmp    0x140535410
14053542f:	eb 31                	jmp    0x140535462
140535431:	4d 8b ce             	mov    %r14,%r9
140535434:	4c 8b c6             	mov    %rsi,%r8
140535437:	48 8b d0             	mov    %rax,%rdx
14053543a:	48 8b cb             	mov    %rbx,%rcx
14053543d:	e8 de 00 00 00       	call   0x140535520
140535442:	48 89 b4 24 a0 00 00 	mov    %rsi,0xa0(%rsp)
140535449:	00
14053544a:	4d 8b ce             	mov    %r14,%r9
14053544d:	4c 8b c7             	mov    %rdi,%r8
140535450:	49 8b 56 08          	mov    0x8(%r14),%rdx
140535454:	48 8b 8c 24 a8 00 00 	mov    0xa8(%rsp),%rcx
14053545b:	00
14053545c:	e8 bf 00 00 00       	call   0x140535520
140535461:	90                   	nop
140535462:	49 8b 1e             	mov    (%r14),%rbx
140535465:	48 85 db             	test   %rbx,%rbx
140535468:	74 70                	je     0x1405354da
14053546a:	49 8b 7e 08          	mov    0x8(%r14),%rdi
14053546e:	48 3b df             	cmp    %rdi,%rbx
140535471:	74 11                	je     0x140535484
140535473:	48 8b cb             	mov    %rbx,%rcx
140535476:	e8 45 1d 22 00       	call   0x1407571c0
14053547b:	48 83 c3 18          	add    $0x18,%rbx
14053547f:	48 3b df             	cmp    %rdi,%rbx
140535482:	75 ef                	jne    0x140535473
140535484:	4d 8b 06             	mov    (%r14),%r8
140535487:	49 8b 4e 10          	mov    0x10(%r14),%rcx
14053548b:	49 2b c8             	sub    %r8,%rcx
14053548e:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
140535495:	aa aa 2a
140535498:	48 f7 e9             	imul   %rcx
14053549b:	48 c1 fa 02          	sar    $0x2,%rdx
14053549f:	48 8b c2             	mov    %rdx,%rax
1405354a2:	48 c1 e8 3f          	shr    $0x3f,%rax
1405354a6:	48 03 d0             	add    %rax,%rdx
1405354a9:	48 8d 14 52          	lea    (%rdx,%rdx,2),%rdx
1405354ad:	48 c1 e2 03          	shl    $0x3,%rdx
1405354b1:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1405354b8:	72 18                	jb     0x1405354d2
1405354ba:	48 83 c2 27          	add    $0x27,%rdx
1405354be:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
1405354c2:	4c 2b c1             	sub    %rcx,%r8
1405354c5:	49 8d 40 f8          	lea    -0x8(%r8),%rax
1405354c9:	48 83 f8 1f          	cmp    $0x1f,%rax
1405354cd:	77 46                	ja     0x140535515
1405354cf:	4c 8b c1             	mov    %rcx,%r8
1405354d2:	49 8b c8             	mov    %r8,%rcx
1405354d5:	e8 6a 5c 8e 00       	call   0x140e1b144
1405354da:	49 89 36             	mov    %rsi,(%r14)
1405354dd:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
1405354e2:	48 8d 0c 40          	lea    (%rax,%rax,2),%rcx
1405354e6:	48 8d 14 ce          	lea    (%rsi,%rcx,8),%rdx
1405354ea:	49 89 56 08          	mov    %rdx,0x8(%r14)
1405354ee:	49 8d 0c 37          	lea    (%r15,%rsi,1),%rcx
1405354f2:	49 89 4e 10          	mov    %rcx,0x10(%r14)
1405354f6:	49 8b c5             	mov    %r13,%rax
1405354f9:	48 83 c4 60          	add    $0x60,%rsp
1405354fd:	41 5f                	pop    %r15
1405354ff:	41 5e                	pop    %r14
140535501:	41 5d                	pop    %r13
140535503:	41 5c                	pop    %r12
140535505:	5f                   	pop    %rdi
140535506:	5e                   	pop    %rsi
140535507:	5b                   	pop    %rbx
140535508:	c3                   	ret
140535509:	e8 82 7c c6 ff       	call   0x14019d190
14053550e:	cc                   	int3
14053550f:	e8 7c 80 c6 ff       	call   0x14019d590
140535514:	cc                   	int3
140535515:	e8 8a 4c 8f 00       	call   0x140e2a1a4
14053551a:	cc                   	int3
14053551b:	cc                   	int3
14053551c:	cc                   	int3
14053551d:	cc                   	int3
14053551e:	cc                   	int3
14053551f:	cc                   	int3
140535520:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140535525:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14053552a:	57                   	push   %rdi
14053552b:	48 83 ec 40          	sub    $0x40,%rsp
14053552f:	49 8b f8             	mov    %r8,%rdi
140535532:	48 8b f2             	mov    %rdx,%rsi
140535535:	48 8b d9             	mov    %rcx,%rbx
140535538:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
14053553d:	4c 89 44 24 28       	mov    %r8,0x28(%rsp)
140535542:	4c 89 4c 24 30       	mov    %r9,0x30(%rsp)
140535547:	48 3b ca             	cmp    %rdx,%rcx
14053554a:	74 21                	je     0x14053556d
14053554c:	0f 1f 40 00          	nopl   0x0(%rax)
140535550:	48 8b d3             	mov    %rbx,%rdx
140535553:	48 8b cf             	mov    %rdi,%rcx
140535556:	e8 95 19 22 00       	call   0x140756ef0
14053555b:	48 83 c7 18          	add    $0x18,%rdi
14053555f:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
140535564:	48 83 c3 18          	add    $0x18,%rbx
140535568:	48 3b de             	cmp    %rsi,%rbx
14053556b:	75 e3                	jne    0x140535550
14053556d:	48 8b c7             	mov    %rdi,%rax
140535570:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140535575:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
14053557a:	48 83 c4 40          	add    $0x40,%rsp
14053557e:	5f                   	pop    %rdi
14053557f:	c3                   	ret
140535580:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140535585:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14053558a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14053558f:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140535594:	57                   	push   %rdi
140535595:	48 83 ec 40          	sub    $0x40,%rsp
140535599:	48 8b fa             	mov    %rdx,%rdi
14053559c:	48 8b f1             	mov    %rcx,%rsi
14053559f:	48 8d 05 82 75 ad 00 	lea    0xad7582(%rip),%rax        # 0x14100cb28
1405355a6:	48 89 01             	mov    %rax,(%rcx)
1405355a9:	48 83 c1 08          	add    $0x8,%rcx
1405355ad:	e8 de 1b 22 00       	call   0x140757190
1405355b2:	90                   	nop
1405355b3:	33 ed                	xor    %ebp,%ebp
1405355b5:	48 89 6e 48          	mov    %rbp,0x48(%rsi)
1405355b9:	48 89 6e 50          	mov    %rbp,0x50(%rsi)
1405355bd:	b9 18 00 00 00       	mov    $0x18,%ecx
1405355c2:	e8 41 5b 8e 00       	call   0x140e1b108
1405355c7:	48 89 00             	mov    %rax,(%rax)
1405355ca:	48 89 40 08          	mov    %rax,0x8(%rax)
1405355ce:	48 89 46 48          	mov    %rax,0x48(%rsi)
1405355d2:	48 89 6e 68          	mov    %rbp,0x68(%rsi)
1405355d6:	48 89 6e 70          	mov    %rbp,0x70(%rsi)
1405355da:	b9 18 00 00 00       	mov    $0x18,%ecx
1405355df:	e8 24 5b 8e 00       	call   0x140e1b108
1405355e4:	48 89 00             	mov    %rax,(%rax)
1405355e7:	48 89 40 08          	mov    %rax,0x8(%rax)
1405355eb:	48 89 46 68          	mov    %rax,0x68(%rsi)
1405355ef:	48 89 6e 78          	mov    %rbp,0x78(%rsi)
1405355f3:	48 89 ae 80 00 00 00 	mov    %rbp,0x80(%rsi)
1405355fa:	48 89 ae 88 00 00 00 	mov    %rbp,0x88(%rsi)
140535601:	48 89 ae a0 00 00 00 	mov    %rbp,0xa0(%rsi)
140535608:	48 89 ae 98 00 00 00 	mov    %rbp,0x98(%rsi)
14053560f:	48 89 ae b0 00 00 00 	mov    %rbp,0xb0(%rsi)
140535616:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14053561b:	e8 70 1b 22 00       	call   0x140757190
140535620:	90                   	nop
140535621:	48 89 7e 28          	mov    %rdi,0x28(%rsi)
140535625:	48 8b d0             	mov    %rax,%rdx
140535628:	48 8d 4e 08          	lea    0x8(%rsi),%rcx
14053562c:	e8 4f 1c 22 00       	call   0x140757280
140535631:	8b 05 c5 6a ef 00    	mov    0xef6ac5(%rip),%eax        # 0x14142c0fc
140535637:	ff c0                	inc    %eax
140535639:	89 05 bd 6a ef 00    	mov    %eax,0xef6abd(%rip)        # 0x14142c0fc
14053563f:	89 46 20             	mov    %eax,0x20(%rsi)
140535642:	66 89 ae 90 00 00 00 	mov    %bp,0x90(%rsi)
140535649:	89 ae a8 00 00 00    	mov    %ebp,0xa8(%rsi)
14053564f:	48 89 6e 30          	mov    %rbp,0x30(%rsi)
140535653:	48 89 6e 58          	mov    %rbp,0x58(%rsi)
140535657:	48 89 6e 60          	mov    %rbp,0x60(%rsi)
14053565b:	48 89 6e 38          	mov    %rbp,0x38(%rsi)
14053565f:	48 89 6e 40          	mov    %rbp,0x40(%rsi)
140535663:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140535668:	e8 53 1b 22 00       	call   0x1407571c0
14053566d:	90                   	nop
14053566e:	48 8b c6             	mov    %rsi,%rax
140535671:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
140535676:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
14053567b:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140535680:	48 83 c4 40          	add    $0x40,%rsp
140535684:	5f                   	pop    %rdi
140535685:	c3                   	ret
140535686:	cc                   	int3
140535687:	cc                   	int3
140535688:	cc                   	int3
140535689:	cc                   	int3
14053568a:	cc                   	int3
14053568b:	cc                   	int3
14053568c:	cc                   	int3
14053568d:	cc                   	int3
14053568e:	cc                   	int3
14053568f:	cc                   	int3
140535690:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140535695:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
14053569a:	56                   	push   %rsi
14053569b:	57                   	push   %rdi
14053569c:	41 56                	push   %r14
14053569e:	48 83 ec 70          	sub    $0x70,%rsp
1405356a2:	48 8b 05 57 38 e8 00 	mov    0xe83857(%rip),%rax        # 0x1413b8f00
1405356a9:	48 33 c4             	xor    %rsp,%rax
1405356ac:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
1405356b1:	49 8b e8             	mov    %r8,%rbp
1405356b4:	48 8b fa             	mov    %rdx,%rdi
1405356b7:	48 8b d9             	mov    %rcx,%rbx
1405356ba:	48 89 4c 24 38       	mov    %rcx,0x38(%rsp)
1405356bf:	48 8d 05 62 74 ad 00 	lea    0xad7462(%rip),%rax        # 0x14100cb28
1405356c6:	48 89 01             	mov    %rax,(%rcx)
1405356c9:	48 83 c1 08          	add    $0x8,%rcx
1405356cd:	e8 be 1a 22 00       	call   0x140757190
1405356d2:	90                   	nop
1405356d3:	45 33 f6             	xor    %r14d,%r14d
1405356d6:	4c 89 73 48          	mov    %r14,0x48(%rbx)
1405356da:	4c 89 73 50          	mov    %r14,0x50(%rbx)
1405356de:	b9 18 00 00 00       	mov    $0x18,%ecx
1405356e3:	e8 20 5a 8e 00       	call   0x140e1b108
1405356e8:	48 89 00             	mov    %rax,(%rax)
1405356eb:	48 89 40 08          	mov    %rax,0x8(%rax)
1405356ef:	48 89 43 48          	mov    %rax,0x48(%rbx)
1405356f3:	4c 89 73 68          	mov    %r14,0x68(%rbx)
1405356f7:	4c 89 73 70          	mov    %r14,0x70(%rbx)
1405356fb:	b9 18 00 00 00       	mov    $0x18,%ecx
140535700:	e8 03 5a 8e 00       	call   0x140e1b108
140535705:	48 89 00             	mov    %rax,(%rax)
140535708:	48 89 40 08          	mov    %rax,0x8(%rax)
14053570c:	48 89 43 68          	mov    %rax,0x68(%rbx)
140535710:	4c 89 73 78          	mov    %r14,0x78(%rbx)
140535714:	4c 89 b3 80 00 00 00 	mov    %r14,0x80(%rbx)
14053571b:	4c 89 b3 88 00 00 00 	mov    %r14,0x88(%rbx)
140535722:	4c 89 b3 a0 00 00 00 	mov    %r14,0xa0(%rbx)
140535729:	4c 89 b3 98 00 00 00 	mov    %r14,0x98(%rbx)
140535730:	4c 89 b3 b0 00 00 00 	mov    %r14,0xb0(%rbx)
140535737:	0f 57 c0             	xorps  %xmm0,%xmm0
14053573a:	0f 11 44 24 40       	movups %xmm0,0x40(%rsp)
14053573f:	0f 57 c9             	xorps  %xmm1,%xmm1
140535742:	f3 0f 7f 4c 24 50    	movdqu %xmm1,0x50(%rsp)
140535748:	49 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%r8
14053574f:	90                   	nop
140535750:	49 ff c0             	inc    %r8
140535753:	42 80 3c 07 00       	cmpb   $0x0,(%rdi,%r8,1)
140535758:	75 f6                	jne    0x140535750
14053575a:	48 8b d7             	mov    %rdi,%rdx
14053575d:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140535762:	e8 99 16 c6 ff       	call   0x140196e00
140535767:	90                   	nop
140535768:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
14053576d:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140535772:	48 8b 0d 8f d6 ef 00 	mov    0xefd68f(%rip),%rcx        # 0x141432e08
140535779:	e8 e2 e3 ea ff       	call   0x1403e3b60
14053577e:	90                   	nop
14053577f:	48 8b 54 24 58       	mov    0x58(%rsp),%rdx
140535784:	48 83 fa 0f          	cmp    $0xf,%rdx
140535788:	76 32                	jbe    0x1405357bc
14053578a:	48 ff c2             	inc    %rdx
14053578d:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140535792:	48 8b c1             	mov    %rcx,%rax
140535795:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14053579c:	72 19                	jb     0x1405357b7
14053579e:	48 83 c2 27          	add    $0x27,%rdx
1405357a2:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
1405357a6:	48 2b c1             	sub    %rcx,%rax