140b3d3eb:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
140b3d3ef:	4c 2b c1             	sub    %rcx,%r8
140b3d3f2:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140b3d3f6:	48 83 f8 1f          	cmp    $0x1f,%rax
140b3d3fa:	77 31                	ja     0x140b3d42d
140b3d3fc:	4c 8b c1             	mov    %rcx,%r8
140b3d3ff:	49 8b c8             	mov    %r8,%rcx
140b3d402:	e8 3d dd 2d 00       	call   0x140e1b144
140b3d407:	48 89 2f             	mov    %rbp,(%rdi)
140b3d40a:	48 89 6f 08          	mov    %rbp,0x8(%rdi)
140b3d40e:	48 89 6f 10          	mov    %rbp,0x10(%rdi)
140b3d412:	49 8b c6             	mov    %r14,%rax
140b3d415:	4c 8d 9c 24 90 00 00 	lea    0x90(%rsp),%r11
140b3d41c:	00
140b3d41d:	49 8b 5b 30          	mov    0x30(%r11),%rbx
140b3d421:	49 8b 6b 38          	mov    0x38(%r11),%rbp
140b3d425:	49 8b e3             	mov    %r11,%rsp
140b3d428:	41 5e                	pop    %r14
140b3d42a:	5f                   	pop    %rdi
140b3d42b:	5e                   	pop    %rsi
140b3d42c:	c3                   	ret
140b3d42d:	e8 72 cd 2e 00       	call   0x140e2a1a4
140b3d432:	cc                   	int3
140b3d433:	cc                   	int3
140b3d434:	cc                   	int3
140b3d435:	cc                   	int3
140b3d436:	cc                   	int3
140b3d437:	cc                   	int3
140b3d438:	cc                   	int3
140b3d439:	cc                   	int3
140b3d43a:	cc                   	int3
140b3d43b:	cc                   	int3
140b3d43c:	cc                   	int3
140b3d43d:	cc                   	int3
140b3d43e:	cc                   	int3
140b3d43f:	cc                   	int3
140b3d440:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140b3d445:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140b3d44a:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140b3d44f:	56                   	push   %rsi
140b3d450:	57                   	push   %rdi
140b3d451:	41 56                	push   %r14
140b3d453:	48 81 ec a0 00 00 00 	sub    $0xa0,%rsp
140b3d45a:	48 8b fa             	mov    %rdx,%rdi
140b3d45d:	4c 8b f1             	mov    %rcx,%r14
140b3d460:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140b3d465:	e8 26 2e 00 00       	call   0x140b40290
140b3d46a:	48 8b f0             	mov    %rax,%rsi
140b3d46d:	48 89 84 24 d0 00 00 	mov    %rax,0xd0(%rsp)
140b3d474:	00
140b3d475:	48 8d 05 bc 86 54 00 	lea    0x5486bc(%rip),%rax        # 0x141085b38
140b3d47c:	49 89 06             	mov    %rax,(%r14)
140b3d47f:	48 8b d6             	mov    %rsi,%rdx
140b3d482:	48 8d 8c 24 c0 00 00 	lea    0xc0(%rsp),%rcx
140b3d489:	00
140b3d48a:	e8 f1 0e 00 00       	call   0x140b3e380
140b3d48f:	48 8b 08             	mov    (%rax),%rcx
140b3d492:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
140b3d499:	49 89 4e 08          	mov    %rcx,0x8(%r14)
140b3d49d:	48 8b 08             	mov    (%rax),%rcx
140b3d4a0:	48 85 c9             	test   %rcx,%rcx
140b3d4a3:	74 1a                	je     0x140b3d4bf
140b3d4a5:	48 83 69 08 01       	subq   $0x1,0x8(%rcx)
140b3d4aa:	75 13                	jne    0x140b3d4bf
140b3d4ac:	48 8b 01             	mov    (%rcx),%rax
140b3d4af:	ba 01 00 00 00       	mov    $0x1,%edx
140b3d4b4:	48 8b 40 28          	mov    0x28(%rax),%rax
140b3d4b8:	ff 15 62 65 44 00    	call   *0x446562(%rip)        # 0x140f83a20
140b3d4be:	90                   	nop
140b3d4bf:	48 8b 4e 68          	mov    0x68(%rsi),%rcx
140b3d4c3:	48 85 c9             	test   %rcx,%rcx
140b3d4c6:	74 10                	je     0x140b3d4d8
140b3d4c8:	48 83 29 01          	subq   $0x1,(%rcx)
140b3d4cc:	75 0a                	jne    0x140b3d4d8
140b3d4ce:	ba 18 00 00 00       	mov    $0x18,%edx
140b3d4d3:	e8 6c dc 2d 00       	call   0x140e1b144
140b3d4d8:	48 8d 4e 50          	lea    0x50(%rsi),%rcx
140b3d4dc:	e8 7f ae 65 ff       	call   0x140198360
140b3d4e1:	80 7e 48 00          	cmpb   $0x0,0x48(%rsi)
140b3d4e5:	74 09                	je     0x140b3d4f0
140b3d4e7:	48 8d 4e 18          	lea    0x18(%rsi),%rcx
140b3d4eb:	e8 10 00 66 ff       	call   0x14019d500
140b3d4f0:	48 8b ce             	mov    %rsi,%rcx
140b3d4f3:	e8 a8 65 85 ff       	call   0x140393aa0
140b3d4f8:	48 8d 05 49 86 54 00 	lea    0x548649(%rip),%rax        # 0x141085b48
140b3d4ff:	49 89 06             	mov    %rax,(%r14)
140b3d502:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
140b3d506:	48 85 c9             	test   %rcx,%rcx
140b3d509:	74 10                	je     0x140b3d51b
140b3d50b:	48 83 29 01          	subq   $0x1,(%rcx)
140b3d50f:	75 0a                	jne    0x140b3d51b
140b3d511:	ba 18 00 00 00       	mov    $0x18,%edx
140b3d516:	e8 29 dc 2d 00       	call   0x140e1b144
140b3d51b:	48 8d 4f 50          	lea    0x50(%rdi),%rcx
140b3d51f:	e8 3c ae 65 ff       	call   0x140198360
140b3d524:	80 7f 48 00          	cmpb   $0x0,0x48(%rdi)
140b3d528:	74 09                	je     0x140b3d533
140b3d52a:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
140b3d52e:	e8 cd ff 65 ff       	call   0x14019d500
140b3d533:	48 8b cf             	mov    %rdi,%rcx
140b3d536:	e8 65 65 85 ff       	call   0x140393aa0
140b3d53b:	49 8b c6             	mov    %r14,%rax
140b3d53e:	48 8b 9c 24 d8 00 00 	mov    0xd8(%rsp),%rbx
140b3d545:	00
140b3d546:	48 81 c4 a0 00 00 00 	add    $0xa0,%rsp
140b3d54d:	41 5e                	pop    %r14
140b3d54f:	5f                   	pop    %rdi
140b3d550:	5e                   	pop    %rsi
140b3d551:	c3                   	ret
140b3d552:	cc                   	int3
140b3d553:	cc                   	int3
140b3d554:	cc                   	int3
140b3d555:	cc                   	int3
140b3d556:	cc                   	int3
140b3d557:	cc                   	int3
140b3d558:	cc                   	int3
140b3d559:	cc                   	int3
140b3d55a:	cc                   	int3
140b3d55b:	cc                   	int3
140b3d55c:	cc                   	int3
140b3d55d:	cc                   	int3
140b3d55e:	cc                   	int3
140b3d55f:	cc                   	int3
140b3d560:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140b3d565:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140b3d56a:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140b3d56f:	56                   	push   %rsi
140b3d570:	57                   	push   %rdi
140b3d571:	41 56                	push   %r14
140b3d573:	48 81 ec a0 00 00 00 	sub    $0xa0,%rsp
140b3d57a:	48 8b fa             	mov    %rdx,%rdi
140b3d57d:	4c 8b f1             	mov    %rcx,%r14
140b3d580:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140b3d585:	e8 06 2d 00 00       	call   0x140b40290
140b3d58a:	48 8b f0             	mov    %rax,%rsi
140b3d58d:	48 89 84 24 d0 00 00 	mov    %rax,0xd0(%rsp)
140b3d594:	00
140b3d595:	48 8d 05 9c 85 54 00 	lea    0x54859c(%rip),%rax        # 0x141085b38
140b3d59c:	49 89 06             	mov    %rax,(%r14)
140b3d59f:	48 8b d6             	mov    %rsi,%rdx
140b3d5a2:	48 8d 8c 24 c0 00 00 	lea    0xc0(%rsp),%rcx
140b3d5a9:	00
140b3d5aa:	e8 01 0f 00 00       	call   0x140b3e4b0
140b3d5af:	48 8b 08             	mov    (%rax),%rcx
140b3d5b2:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
140b3d5b9:	49 89 4e 08          	mov    %rcx,0x8(%r14)
140b3d5bd:	48 8b 08             	mov    (%rax),%rcx
140b3d5c0:	48 85 c9             	test   %rcx,%rcx
140b3d5c3:	74 1a                	je     0x140b3d5df
140b3d5c5:	48 83 69 08 01       	subq   $0x1,0x8(%rcx)
140b3d5ca:	75 13                	jne    0x140b3d5df
140b3d5cc:	48 8b 01             	mov    (%rcx),%rax
140b3d5cf:	ba 01 00 00 00       	mov    $0x1,%edx
140b3d5d4:	48 8b 40 28          	mov    0x28(%rax),%rax
140b3d5d8:	ff 15 42 64 44 00    	call   *0x446442(%rip)        # 0x140f83a20
140b3d5de:	90                   	nop
140b3d5df:	48 8b 4e 68          	mov    0x68(%rsi),%rcx
140b3d5e3:	48 85 c9             	test   %rcx,%rcx
140b3d5e6:	74 10                	je     0x140b3d5f8
140b3d5e8:	48 83 29 01          	subq   $0x1,(%rcx)
140b3d5ec:	75 0a                	jne    0x140b3d5f8
140b3d5ee:	ba 18 00 00 00       	mov    $0x18,%edx
140b3d5f3:	e8 4c db 2d 00       	call   0x140e1b144
140b3d5f8:	48 8d 4e 50          	lea    0x50(%rsi),%rcx
140b3d5fc:	e8 5f ad 65 ff       	call   0x140198360
140b3d601:	80 7e 48 00          	cmpb   $0x0,0x48(%rsi)
140b3d605:	74 09                	je     0x140b3d610
140b3d607:	48 8d 4e 18          	lea    0x18(%rsi),%rcx
140b3d60b:	e8 f0 fe 65 ff       	call   0x14019d500
140b3d610:	48 8b ce             	mov    %rsi,%rcx
140b3d613:	e8 88 64 85 ff       	call   0x140393aa0
140b3d618:	48 8d 05 29 85 54 00 	lea    0x548529(%rip),%rax        # 0x141085b48
140b3d61f:	49 89 06             	mov    %rax,(%r14)
140b3d622:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
140b3d626:	48 85 c9             	test   %rcx,%rcx
140b3d629:	74 10                	je     0x140b3d63b
140b3d62b:	48 83 29 01          	subq   $0x1,(%rcx)
140b3d62f:	75 0a                	jne    0x140b3d63b
140b3d631:	ba 18 00 00 00       	mov    $0x18,%edx
140b3d636:	e8 09 db 2d 00       	call   0x140e1b144
140b3d63b:	48 8d 4f 50          	lea    0x50(%rdi),%rcx
140b3d63f:	e8 1c ad 65 ff       	call   0x140198360
140b3d644:	80 7f 48 00          	cmpb   $0x0,0x48(%rdi)
140b3d648:	74 09                	je     0x140b3d653
140b3d64a:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
140b3d64e:	e8 ad fe 65 ff       	call   0x14019d500
140b3d653:	48 8b cf             	mov    %rdi,%rcx
140b3d656:	e8 45 64 85 ff       	call   0x140393aa0
140b3d65b:	49 8b c6             	mov    %r14,%rax
140b3d65e:	48 8b 9c 24 d8 00 00 	mov    0xd8(%rsp),%rbx
140b3d665:	00
140b3d666:	48 81 c4 a0 00 00 00 	add    $0xa0,%rsp
140b3d66d:	41 5e                	pop    %r14
140b3d66f:	5f                   	pop    %rdi
140b3d670:	5e                   	pop    %rsi
140b3d671:	c3                   	ret
140b3d672:	cc                   	int3
140b3d673:	cc                   	int3
140b3d674:	cc                   	int3
140b3d675:	cc                   	int3
140b3d676:	cc                   	int3
140b3d677:	cc                   	int3
140b3d678:	cc                   	int3
140b3d679:	cc                   	int3
140b3d67a:	cc                   	int3
140b3d67b:	cc                   	int3
140b3d67c:	cc                   	int3
140b3d67d:	cc                   	int3
140b3d67e:	cc                   	int3
140b3d67f:	cc                   	int3
140b3d680:	48 83 ec 28          	sub    $0x28,%rsp
140b3d684:	48 8b 02             	mov    (%rdx),%rax
140b3d687:	48 b9 49 92 24 49 92 	movabs $0x249249249249249,%rcx
140b3d68e:	24 49 02
140b3d691:	48 3b c1             	cmp    %rcx,%rax
140b3d694:	77 4c                	ja     0x140b3d6e2
140b3d696:	48 6b c8 70          	imul   $0x70,%rax,%rcx
140b3d69a:	48 85 c9             	test   %rcx,%rcx
140b3d69d:	75 07                	jne    0x140b3d6a6
140b3d69f:	33 c0                	xor    %eax,%eax
140b3d6a1:	48 83 c4 28          	add    $0x28,%rsp
140b3d6a5:	c3                   	ret
140b3d6a6:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
140b3d6ad:	72 2a                	jb     0x140b3d6d9
140b3d6af:	48 8d 41 27          	lea    0x27(%rcx),%rax
140b3d6b3:	48 3b c1             	cmp    %rcx,%rax
140b3d6b6:	76 2a                	jbe    0x140b3d6e2
140b3d6b8:	48 8b c8             	mov    %rax,%rcx
140b3d6bb:	e8 48 da 2d 00       	call   0x140e1b108
140b3d6c0:	48 8b c8             	mov    %rax,%rcx
140b3d6c3:	48 85 c0             	test   %rax,%rax
140b3d6c6:	74 20                	je     0x140b3d6e8
140b3d6c8:	48 83 c0 27          	add    $0x27,%rax
140b3d6cc:	48 83 e0 e0          	and    $0xffffffffffffffe0,%rax
140b3d6d0:	48 89 48 f8          	mov    %rcx,-0x8(%rax)
140b3d6d4:	48 83 c4 28          	add    $0x28,%rsp
140b3d6d8:	c3                   	ret
140b3d6d9:	48 83 c4 28          	add    $0x28,%rsp
140b3d6dd:	e9 26 da 2d 00       	jmp    0x140e1b108
140b3d6e2:	e8 a9 fa 65 ff       	call   0x14019d190
140b3d6e7:	cc                   	int3
140b3d6e8:	e8 b7 ca 2e 00       	call   0x140e2a1a4
140b3d6ed:	cc                   	int3
140b3d6ee:	cc                   	int3
140b3d6ef:	cc                   	int3
140b3d6f0:	48 3b ca             	cmp    %rdx,%rcx
140b3d6f3:	74 61                	je     0x140b3d756
140b3d6f5:	57                   	push   %rdi
140b3d6f6:	48 83 ec 20          	sub    $0x20,%rsp
140b3d6fa:	48 89 5c 24 38       	mov    %rbx,0x38(%rsp)
140b3d6ff:	48 8b fa             	mov    %rdx,%rdi
140b3d702:	48 8d 59 48          	lea    0x48(%rcx),%rbx
140b3d706:	48 8b 4b 20          	mov    0x20(%rbx),%rcx
140b3d70a:	48 85 c9             	test   %rcx,%rcx
140b3d70d:	74 10                	je     0x140b3d71f
140b3d70f:	48 83 29 01          	subq   $0x1,(%rcx)
140b3d713:	75 0a                	jne    0x140b3d71f
140b3d715:	ba 18 00 00 00       	mov    $0x18,%edx
140b3d71a:	e8 25 da 2d 00       	call   0x140e1b144
140b3d71f:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140b3d723:	e8 38 ac 65 ff       	call   0x140198360
140b3d728:	80 3b 00             	cmpb   $0x0,(%rbx)
140b3d72b:	74 09                	je     0x140b3d736
140b3d72d:	48 8d 4b d0          	lea    -0x30(%rbx),%rcx
140b3d731:	e8 ca fd 65 ff       	call   0x14019d500
140b3d736:	48 8d 4b b8          	lea    -0x48(%rbx),%rcx
140b3d73a:	e8 61 63 85 ff       	call   0x140393aa0
140b3d73f:	48 83 c3 70          	add    $0x70,%rbx
140b3d743:	48 8d 43 b8          	lea    -0x48(%rbx),%rax
140b3d747:	48 3b c7             	cmp    %rdi,%rax
140b3d74a:	75 ba                	jne    0x140b3d706
140b3d74c:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140b3d751:	48 83 c4 20          	add    $0x20,%rsp
140b3d755:	5f                   	pop    %rdi
140b3d756:	c3                   	ret
140b3d757:	cc                   	int3
140b3d758:	cc                   	int3
140b3d759:	cc                   	int3
140b3d75a:	cc                   	int3
140b3d75b:	cc                   	int3
140b3d75c:	cc                   	int3
140b3d75d:	cc                   	int3
140b3d75e:	cc                   	int3
140b3d75f:	cc                   	int3
140b3d760:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140b3d765:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140b3d76a:	53                   	push   %rbx
140b3d76b:	56                   	push   %rsi
140b3d76c:	57                   	push   %rdi
140b3d76d:	41 54                	push   %r12
140b3d76f:	41 55                	push   %r13
140b3d771:	41 56                	push   %r14
140b3d773:	41 57                	push   %r15
140b3d775:	48 81 ec b0 00 00 00 	sub    $0xb0,%rsp
140b3d77c:	4c 8b e2             	mov    %rdx,%r12
140b3d77f:	48 8b f1             	mov    %rcx,%rsi
140b3d782:	4c 8b 11             	mov    (%rcx),%r10
140b3d785:	4c 8b ca             	mov    %rdx,%r9
140b3d788:	4d 2b ca             	sub    %r10,%r9
140b3d78b:	49 bb 67 66 66 66 66 	movabs $0x6666666666666667,%r11
140b3d792:	66 66 66
140b3d795:	49 8b c3             	mov    %r11,%rax
140b3d798:	49 f7 e9             	imul   %r9
140b3d79b:	4c 8b f2             	mov    %rdx,%r14
140b3d79e:	49 c1 fe 04          	sar    $0x4,%r14
140b3d7a2:	49 8b c6             	mov    %r14,%rax
140b3d7a5:	48 c1 e8 3f          	shr    $0x3f,%rax
140b3d7a9:	4c 03 f0             	add    %rax,%r14
140b3d7ac:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140b3d7b0:	49 2b ca             	sub    %r10,%rcx
140b3d7b3:	49 8b c3             	mov    %r11,%rax
140b3d7b6:	48 f7 e9             	imul   %rcx
140b3d7b9:	48 c1 fa 04          	sar    $0x4,%rdx
140b3d7bd:	48 8b c2             	mov    %rdx,%rax
140b3d7c0:	48 c1 e8 3f          	shr    $0x3f,%rax
140b3d7c4:	48 03 d0             	add    %rax,%rdx
140b3d7c7:	49 b9 66 66 66 66 66 	movabs $0x666666666666666,%r9
140b3d7ce:	66 66 06
140b3d7d1:	49 3b d1             	cmp    %r9,%rdx
140b3d7d4:	0f 84 55 01 00 00    	je     0x140b3d92f
140b3d7da:	4c 8d 6a 01          	lea    0x1(%rdx),%r13
140b3d7de:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
140b3d7e2:	49 2b ca             	sub    %r10,%rcx
140b3d7e5:	49 8b c3             	mov    %r11,%rax
140b3d7e8:	48 f7 e9             	imul   %rcx
140b3d7eb:	48 c1 fa 04          	sar    $0x4,%rdx
140b3d7ef:	48 8b c2             	mov    %rdx,%rax
140b3d7f2:	48 c1 e8 3f          	shr    $0x3f,%rax
140b3d7f6:	48 03 d0             	add    %rax,%rdx
140b3d7f9:	48 8b ca             	mov    %rdx,%rcx
140b3d7fc:	48 d1 e9             	shr    $1,%rcx
140b3d7ff:	49 8b c1             	mov    %r9,%rax
140b3d802:	48 2b c1             	sub    %rcx,%rax
140b3d805:	48 3b d0             	cmp    %rax,%rdx
140b3d808:	0f 87 1b 01 00 00    	ja     0x140b3d929
140b3d80e:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
140b3d812:	49 8b fd             	mov    %r13,%rdi
140b3d815:	49 3b c5             	cmp    %r13,%rax
140b3d818:	48 0f 43 f8          	cmovae %rax,%rdi
140b3d81c:	49 3b f9             	cmp    %r9,%rdi
140b3d81f:	0f 87 04 01 00 00    	ja     0x140b3d929
140b3d825:	48 8d 0c bf          	lea    (%rdi,%rdi,4),%rcx
140b3d829:	48 c1 e1 03          	shl    $0x3,%rcx
140b3d82d:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140b3d832:	48 85 c9             	test   %rcx,%rcx
140b3d835:	75 09                	jne    0x140b3d840
140b3d837:	33 db                	xor    %ebx,%ebx
140b3d839:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140b3d83e:	eb 45                	jmp    0x140b3d885
140b3d840:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx