1402774ba:	48 8b 19             	mov    (%rcx),%rbx
1402774bd:	48 8b f1             	mov    %rcx,%rsi
1402774c0:	48 85 db             	test   %rbx,%rbx
1402774c3:	0f 84 87 00 00 00    	je     0x140277550
1402774c9:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
1402774ce:	48 8b 79 08          	mov    0x8(%rcx),%rdi
1402774d2:	48 3b df             	cmp    %rdi,%rbx
1402774d5:	74 11                	je     0x1402774e8
1402774d7:	48 8b cb             	mov    %rbx,%rcx
1402774da:	e8 41 a2 fa ff       	call   0x140221720
1402774df:	48 83 c3 30          	add    $0x30,%rbx
1402774e3:	48 3b df             	cmp    %rdi,%rbx
1402774e6:	75 ef                	jne    0x1402774d7
1402774e8:	4c 8b 06             	mov    (%rsi),%r8
1402774eb:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
1402774f2:	aa aa 2a
1402774f5:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
1402774f9:	48 8b 7c 24 38       	mov    0x38(%rsp),%rdi
1402774fe:	49 2b c8             	sub    %r8,%rcx
140277501:	48 f7 e9             	imul   %rcx
140277504:	48 c1 fa 03          	sar    $0x3,%rdx
140277508:	48 8b c2             	mov    %rdx,%rax
14027750b:	48 c1 e8 3f          	shr    $0x3f,%rax
14027750f:	48 03 d0             	add    %rax,%rdx
140277512:	48 8d 14 52          	lea    (%rdx,%rdx,2),%rdx
140277516:	48 c1 e2 04          	shl    $0x4,%rdx
14027751a:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140277521:	72 18                	jb     0x14027753b
140277523:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
140277527:	48 83 c2 27          	add    $0x27,%rdx
14027752b:	4c 2b c1             	sub    %rcx,%r8
14027752e:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140277532:	48 83 f8 1f          	cmp    $0x1f,%rax
140277536:	77 23                	ja     0x14027755b
140277538:	4c 8b c1             	mov    %rcx,%r8
14027753b:	49 8b c8             	mov    %r8,%rcx
14027753e:	e8 01 3c ba 00       	call   0x140e1b144
140277543:	33 c0                	xor    %eax,%eax
140277545:	48 89 06             	mov    %rax,(%rsi)
140277548:	48 89 46 08          	mov    %rax,0x8(%rsi)
14027754c:	48 89 46 10          	mov    %rax,0x10(%rsi)
140277550:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140277555:	48 83 c4 20          	add    $0x20,%rsp
140277559:	5e                   	pop    %rsi
14027755a:	c3                   	ret
14027755b:	e8 44 2c bb 00       	call   0x140e2a1a4
140277560:	cc                   	int3
140277561:	cc                   	int3
140277562:	cc                   	int3
140277563:	cc                   	int3
140277564:	cc                   	int3
140277565:	cc                   	int3
140277566:	cc                   	int3
140277567:	cc                   	int3
140277568:	cc                   	int3
140277569:	cc                   	int3
14027756a:	cc                   	int3
14027756b:	cc                   	int3
14027756c:	cc                   	int3
14027756d:	cc                   	int3
14027756e:	cc                   	int3
14027756f:	cc                   	int3
140277570:	48 83 ec 28          	sub    $0x28,%rsp
140277574:	48 8d 0d 05 73 d6 00 	lea    0xd67305(%rip),%rcx        # 0x140fde880
14027757b:	e8 34 3e b8 00       	call   0x140dfb3b4
140277580:	cc                   	int3
140277581:	cc                   	int3
140277582:	cc                   	int3
140277583:	cc                   	int3
140277584:	cc                   	int3
140277585:	cc                   	int3
140277586:	cc                   	int3
140277587:	cc                   	int3
140277588:	cc                   	int3
140277589:	cc                   	int3
14027758a:	cc                   	int3
14027758b:	cc                   	int3
14027758c:	cc                   	int3
14027758d:	cc                   	int3
14027758e:	cc                   	int3
14027758f:	cc                   	int3
140277590:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140277595:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14027759a:	55                   	push   %rbp
14027759b:	57                   	push   %rdi
14027759c:	41 54                	push   %r12
14027759e:	41 56                	push   %r14
1402775a0:	41 57                	push   %r15
1402775a2:	48 8b ec             	mov    %rsp,%rbp
1402775a5:	48 83 ec 40          	sub    $0x40,%rsp
1402775a9:	4d 8b f0             	mov    %r8,%r14
1402775ac:	4c 8b f9             	mov    %rcx,%r15
1402775af:	45 33 e4             	xor    %r12d,%r12d
1402775b2:	48 8b 3a             	mov    (%rdx),%rdi
1402775b5:	48 85 ff             	test   %rdi,%rdi
1402775b8:	74 1c                	je     0x1402775d6
1402775ba:	8b 47 10             	mov    0x10(%rdi),%eax
1402775bd:	ff c0                	inc    %eax
1402775bf:	89 47 10             	mov    %eax,0x10(%rdi)
1402775c2:	83 f8 01             	cmp    $0x1,%eax
1402775c5:	0f 8e 53 02 00 00    	jle    0x14027781e
1402775cb:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1402775d0:	0f 84 50 02 00 00    	je     0x140277826
1402775d6:	48 89 7d 38          	mov    %rdi,0x38(%rbp)
1402775da:	48 8b cf             	mov    %rdi,%rcx
1402775dd:	e8 6e 6b 40 00       	call   0x14067e150
1402775e2:	48 8b f0             	mov    %rax,%rsi
1402775e5:	48 85 ff             	test   %rdi,%rdi
1402775e8:	74 27                	je     0x140277611
1402775ea:	8b 4f 10             	mov    0x10(%rdi),%ecx
1402775ed:	ff c9                	dec    %ecx
1402775ef:	89 4f 10             	mov    %ecx,0x10(%rdi)
1402775f2:	85 c9                	test   %ecx,%ecx
1402775f4:	7f 1b                	jg     0x140277611
1402775f6:	0f 88 35 02 00 00    	js     0x140277831
1402775fc:	48 8b 07             	mov    (%rdi),%rax
1402775ff:	ba 01 00 00 00       	mov    $0x1,%edx
140277604:	48 8b cf             	mov    %rdi,%rcx
140277607:	48 8b 00             	mov    (%rax),%rax
14027760a:	ff 15 10 c4 d0 00    	call   *0xd0c410(%rip)        # 0x140f83a20
140277610:	90                   	nop
140277611:	48 b8 f3 d1 75 17 19 	movabs $0x81988191775d1f3,%rax
140277618:	88 19 08
14027761b:	48 3b f0             	cmp    %rax,%rsi
14027761e:	0f 84 37 01 00 00    	je     0x14027775b
140277624:	48 b8 5a 1c 4e 21 70 	movabs $0x31c5f470214e1c5a,%rax
14027762b:	f4 c5 31
14027762e:	48 3b f0             	cmp    %rax,%rsi
140277631:	0f 84 a3 00 00 00    	je     0x1402776da
140277637:	48 b8 d4 21 b6 e2 18 	movabs $0x470bb118e2b621d4,%rax
14027763e:	b1 0b 47
140277641:	48 3b f0             	cmp    %rax,%rsi
140277644:	0f 85 99 01 00 00    	jne    0x1402777e3
14027764a:	4c 8b 05 17 48 1a 01 	mov    0x11a4817(%rip),%r8        # 0x14141be68
140277651:	45 8b 40 0c          	mov    0xc(%r8),%r8d
140277655:	49 8b d7             	mov    %r15,%rdx
140277658:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
14027765c:	e8 3f b5 0f 00       	call   0x140372ba0
140277661:	48 8b 18             	mov    (%rax),%rbx
140277664:	4c 89 20             	mov    %r12,(%rax)
140277667:	48 89 5d f0          	mov    %rbx,-0x10(%rbp)
14027766b:	49 8b 0e             	mov    (%r14),%rcx
14027766e:	48 89 4d 38          	mov    %rcx,0x38(%rbp)
140277672:	48 85 c9             	test   %rcx,%rcx
140277675:	74 1c                	je     0x140277693
140277677:	8b 41 10             	mov    0x10(%rcx),%eax
14027767a:	ff c0                	inc    %eax
14027767c:	89 41 10             	mov    %eax,0x10(%rcx)
14027767f:	83 f8 01             	cmp    $0x1,%eax
140277682:	0f 8e b4 01 00 00    	jle    0x14027783c
140277688:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
14027768d:	0f 84 b1 01 00 00    	je     0x140277844
140277693:	48 8d 55 38          	lea    0x38(%rbp),%rdx
140277697:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
14027769b:	e8 70 86 f2 ff       	call   0x14019fd10
1402776a0:	48 8b 0d c1 47 1a 01 	mov    0x11a47c1(%rip),%rcx        # 0x14141be68
1402776a7:	4c 8b c0             	mov    %rax,%r8
1402776aa:	8b 51 2c             	mov    0x2c(%rcx),%edx
1402776ad:	48 8b cb             	mov    %rbx,%rcx
1402776b0:	e8 4b d4 4b 00       	call   0x140734b00
1402776b5:	90                   	nop
1402776b6:	48 85 db             	test   %rbx,%rbx
1402776b9:	0f 84 24 01 00 00    	je     0x1402777e3
1402776bf:	8b 43 10             	mov    0x10(%rbx),%eax
1402776c2:	ff c8                	dec    %eax
1402776c4:	89 43 10             	mov    %eax,0x10(%rbx)
1402776c7:	85 c0                	test   %eax,%eax
1402776c9:	0f 8f 14 01 00 00    	jg     0x1402777e3
1402776cf:	0f 88 33 01 00 00    	js     0x140277808
1402776d5:	e9 f4 00 00 00       	jmp    0x1402777ce
1402776da:	4c 8b 05 87 47 1a 01 	mov    0x11a4787(%rip),%r8        # 0x14141be68
1402776e1:	45 8b 40 0c          	mov    0xc(%r8),%r8d
1402776e5:	49 8b d7             	mov    %r15,%rdx
1402776e8:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
1402776ec:	e8 af b4 0f 00       	call   0x140372ba0
1402776f1:	48 8b 18             	mov    (%rax),%rbx
1402776f4:	4c 89 20             	mov    %r12,(%rax)
1402776f7:	48 89 5d f0          	mov    %rbx,-0x10(%rbp)
1402776fb:	49 8b 0e             	mov    (%r14),%rcx
1402776fe:	48 85 c9             	test   %rcx,%rcx
140277701:	74 1c                	je     0x14027771f
140277703:	8b 41 10             	mov    0x10(%rcx),%eax
140277706:	ff c0                	inc    %eax
140277708:	89 41 10             	mov    %eax,0x10(%rcx)
14027770b:	83 f8 01             	cmp    $0x1,%eax
14027770e:	0f 8e 3b 01 00 00    	jle    0x14027784f
140277714:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140277719:	0f 84 38 01 00 00    	je     0x140277857
14027771f:	48 89 4d 38          	mov    %rcx,0x38(%rbp)
140277723:	48 8b 05 3e 47 1a 01 	mov    0x11a473e(%rip),%rax        # 0x14141be68
14027772a:	4c 8d 45 38          	lea    0x38(%rbp),%r8
14027772e:	8b 50 30             	mov    0x30(%rax),%edx
140277731:	48 8b cb             	mov    %rbx,%rcx
140277734:	e8 c7 d3 4b 00       	call   0x140734b00
140277739:	90                   	nop
14027773a:	48 85 db             	test   %rbx,%rbx
14027773d:	0f 84 a0 00 00 00    	je     0x1402777e3
140277743:	8b 43 10             	mov    0x10(%rbx),%eax
140277746:	ff c8                	dec    %eax
140277748:	89 43 10             	mov    %eax,0x10(%rbx)
14027774b:	85 c0                	test   %eax,%eax
14027774d:	0f 8f 90 00 00 00    	jg     0x1402777e3
140277753:	0f 88 ba 00 00 00    	js     0x140277813
140277759:	eb 73                	jmp    0x1402777ce
14027775b:	4c 8b 05 06 47 1a 01 	mov    0x11a4706(%rip),%r8        # 0x14141be68
140277762:	45 8b 40 0c          	mov    0xc(%r8),%r8d
140277766:	49 8b d7             	mov    %r15,%rdx
140277769:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
14027776d:	e8 2e b4 0f 00       	call   0x140372ba0
140277772:	48 8b 18             	mov    (%rax),%rbx
140277775:	4c 89 20             	mov    %r12,(%rax)
140277778:	48 89 5d f0          	mov    %rbx,-0x10(%rbp)
14027777c:	49 8b 0e             	mov    (%r14),%rcx
14027777f:	48 85 c9             	test   %rcx,%rcx
140277782:	74 1c                	je     0x1402777a0
140277784:	8b 41 10             	mov    0x10(%rcx),%eax
140277787:	ff c0                	inc    %eax
140277789:	89 41 10             	mov    %eax,0x10(%rcx)
14027778c:	83 f8 01             	cmp    $0x1,%eax
14027778f:	0f 8e cd 00 00 00    	jle    0x140277862
140277795:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
14027779a:	0f 84 ca 00 00 00    	je     0x14027786a
1402777a0:	48 89 4d 38          	mov    %rcx,0x38(%rbp)
1402777a4:	48 8b 05 bd 46 1a 01 	mov    0x11a46bd(%rip),%rax        # 0x14141be68
1402777ab:	4c 8d 45 38          	lea    0x38(%rbp),%r8
1402777af:	8b 50 28             	mov    0x28(%rax),%edx
1402777b2:	48 8b cb             	mov    %rbx,%rcx
1402777b5:	e8 46 d3 4b 00       	call   0x140734b00
1402777ba:	90                   	nop
1402777bb:	48 85 db             	test   %rbx,%rbx
1402777be:	74 23                	je     0x1402777e3
1402777c0:	8b 43 10             	mov    0x10(%rbx),%eax
1402777c3:	ff c8                	dec    %eax
1402777c5:	89 43 10             	mov    %eax,0x10(%rbx)
1402777c8:	85 c0                	test   %eax,%eax
1402777ca:	7f 17                	jg     0x1402777e3
1402777cc:	78 2f                	js     0x1402777fd
1402777ce:	48 8b 03             	mov    (%rbx),%rax
1402777d1:	ba 01 00 00 00       	mov    $0x1,%edx
1402777d6:	48 8b cb             	mov    %rbx,%rcx
1402777d9:	48 8b 00             	mov    (%rax),%rax
1402777dc:	ff 15 3e c2 d0 00    	call   *0xd0c23e(%rip)        # 0x140f83a20
1402777e2:	90                   	nop
1402777e3:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
1402777e8:	48 8b b4 24 80 00 00 	mov    0x80(%rsp),%rsi
1402777ef:	00
1402777f0:	48 83 c4 40          	add    $0x40,%rsp
1402777f4:	41 5f                	pop    %r15
1402777f6:	41 5e                	pop    %r14
1402777f8:	41 5c                	pop    %r12
1402777fa:	5f                   	pop    %rdi
1402777fb:	5d                   	pop    %rbp
1402777fc:	c3                   	ret
1402777fd:	b9 02 00 00 00       	mov    $0x2,%ecx
140277802:	e8 f9 2e 51 00       	call   0x14078a700
140277807:	90                   	nop
140277808:	b9 02 00 00 00       	mov    $0x2,%ecx
14027780d:	e8 ee 2e 51 00       	call   0x14078a700
140277812:	90                   	nop
140277813:	b9 02 00 00 00       	mov    $0x2,%ecx
140277818:	e8 e3 2e 51 00       	call   0x14078a700
14027781d:	90                   	nop
14027781e:	33 c9                	xor    %ecx,%ecx
140277820:	e8 db 2e 51 00       	call   0x14078a700
140277825:	cc                   	int3
140277826:	b9 01 00 00 00       	mov    $0x1,%ecx
14027782b:	e8 d0 2e 51 00       	call   0x14078a700
140277830:	90                   	nop
140277831:	b9 02 00 00 00       	mov    $0x2,%ecx
140277836:	e8 c5 2e 51 00       	call   0x14078a700
14027783b:	90                   	nop
14027783c:	33 c9                	xor    %ecx,%ecx
14027783e:	e8 bd 2e 51 00       	call   0x14078a700
140277843:	cc                   	int3
140277844:	b9 01 00 00 00       	mov    $0x1,%ecx
140277849:	e8 b2 2e 51 00       	call   0x14078a700
14027784e:	90                   	nop
14027784f:	33 c9                	xor    %ecx,%ecx
140277851:	e8 aa 2e 51 00       	call   0x14078a700
140277856:	cc                   	int3
140277857:	b9 01 00 00 00       	mov    $0x1,%ecx
14027785c:	e8 9f 2e 51 00       	call   0x14078a700
140277861:	90                   	nop
140277862:	33 c9                	xor    %ecx,%ecx
140277864:	e8 97 2e 51 00       	call   0x14078a700
140277869:	cc                   	int3
14027786a:	b9 01 00 00 00       	mov    $0x1,%ecx
14027786f:	e8 8c 2e 51 00       	call   0x14078a700
140277874:	cc                   	int3
140277875:	cc                   	int3
140277876:	cc                   	int3
140277877:	cc                   	int3
140277878:	cc                   	int3
140277879:	cc                   	int3
14027787a:	cc                   	int3
14027787b:	cc                   	int3
14027787c:	cc                   	int3
14027787d:	cc                   	int3
14027787e:	cc                   	int3
14027787f:	cc                   	int3
140277880:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140277885:	55                   	push   %rbp
140277886:	56                   	push   %rsi
140277887:	57                   	push   %rdi
140277888:	41 54                	push   %r12
14027788a:	41 55                	push   %r13
14027788c:	41 56                	push   %r14
14027788e:	41 57                	push   %r15
140277890:	48 8d ac 24 e0 fe ff 	lea    -0x120(%rsp),%rbp
140277897:	ff
140277898:	48 81 ec 20 02 00 00 	sub    $0x220,%rsp
14027789f:	48 8b 05 5a 16 14 01 	mov    0x114165a(%rip),%rax        # 0x1413b8f00
1402778a6:	48 33 c4             	xor    %rsp,%rax
1402778a9:	48 89 85 18 01 00 00 	mov    %rax,0x118(%rbp)
1402778b0:	4d 8b f1             	mov    %r9,%r14
1402778b3:	4c 8b ea             	mov    %rdx,%r13
1402778b6:	48 89 55 40          	mov    %rdx,0x40(%rbp)
1402778ba:	4c 8b f9             	mov    %rcx,%r15
1402778bd:	48 89 4d b0          	mov    %rcx,-0x50(%rbp)
1402778c1:	45 33 e4             	xor    %r12d,%r12d
1402778c4:	44 38 25 41 a7 1a 01 	cmp    %r12b,0x11aa741(%rip)        # 0x14142200c
1402778cb:	75 79                	jne    0x140277946
1402778cd:	48 8d 1d 1c a9 d5 00 	lea    0xd5a91c(%rip),%rbx        # 0x140fd21f0
1402778d4:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
1402778d9:	48 c7 44 24 48 10 00 	movq   $0x10,0x48(%rsp)
1402778e0:	00 00
1402778e2:	0f 28 44 24 40       	movaps 0x40(%rsp),%xmm0
1402778e7:	66 0f 7f 44 24 70    	movdqa %xmm0,0x70(%rsp)
1402778ed:	48 8d 54 24 70       	lea    0x70(%rsp),%rdx
1402778f2:	48 8b 0d 67 b5 1b 01 	mov    0x11bb567(%rip),%rcx        # 0x141432e60
1402778f9:	e8 52 c8 59 00       	call   0x140814150
1402778fe:	48 85 c0             	test   %rax,%rax
140277901:	74 3c                	je     0x14027793f
140277903:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
140277908:	48 c7 44 24 48 10 00 	movq   $0x10,0x48(%rsp)
14027790f:	00 00
140277911:	0f 28 44 24 40       	movaps 0x40(%rsp),%xmm0
140277916:	66 0f 7f 44 24 70    	movdqa %xmm0,0x70(%rsp)
14027791c:	45 33 c9             	xor    %r9d,%r9d
14027791f:	4c 8d 44 24 70       	lea    0x70(%rsp),%r8
140277924:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
140277929:	48 8b 0d 30 b5 1b 01 	mov    0x11bb530(%rip),%rcx        # 0x141432e60
140277930:	e8 bb cc 59 00       	call   0x1408145f0
140277935:	48 8b 08             	mov    (%rax),%rcx
140277938:	48 89 0d 11 40 1a 01 	mov    %rcx,0x11a4011(%rip)        # 0x14141b950
14027793f:	c6 05 c6 a6 1a 01 01 	movb   $0x1,0x11aa6c6(%rip)        # 0x14142200c
140277946:	44 38 25 c0 a6 1a 01 	cmp    %r12b,0x11aa6c0(%rip)        # 0x14142200d
14027794d:	75 79                	jne    0x1402779c8
14027794f:	48 8d 1d b2 a8 d5 00 	lea    0xd5a8b2(%rip),%rbx        # 0x140fd2208
140277956:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)