140d694c3:	85 d2                	test   %edx,%edx
140d694c5:	0f 8e 2e 04 00 00    	jle    0x140d698f9
140d694cb:	45 85 c9             	test   %r9d,%r9d
140d694ce:	0f 8e 25 04 00 00    	jle    0x140d698f9
140d694d4:	41 3b df             	cmp    %r15d,%ebx
140d694d7:	0f 8f fc 03 00 00    	jg     0x140d698d9
140d694dd:	41 83 ff 0b          	cmp    $0xb,%r15d
140d694e1:	0f 8c f2 03 00 00    	jl     0x140d698d9
140d694e7:	4c 89 b4 24 90 00 00 	mov    %r14,0x90(%rsp)
140d694ee:	00
140d694ef:	44 8d 40 fe          	lea    -0x2(%rax),%r8d
140d694f3:	4d 63 f7             	movslq %r15d,%r14
140d694f6:	48 8d 15 b3 9d 41 00 	lea    0x419db3(%rip),%rdx        # 0x1411832b0
140d694fd:	49 8b ce             	mov    %r14,%rcx
140d69500:	4c 89 74 24 40       	mov    %r14,0x40(%rsp)
140d69505:	e8 a6 84 f5 ff       	call   0x140cc19b0
140d6950a:	4c 8b d0             	mov    %rax,%r10
140d6950d:	48 85 c0             	test   %rax,%rax
140d69510:	75 3d                	jne    0x140d6954f
140d69512:	4c 8d 0d 97 9d 41 00 	lea    0x419d97(%rip),%r9        # 0x1411832b0
140d69519:	c7 44 24 20 50 00 00 	movl   $0x50,0x20(%rsp)
140d69520:	00
140d69521:	8d 55 72             	lea    0x72(%rbp),%edx
140d69524:	8d 4d 04             	lea    0x4(%rbp),%ecx
140d69527:	44 8d 45 41          	lea    0x41(%rbp),%r8d
140d6952b:	e8 50 77 f6 ff       	call   0x140cd0c80
140d69530:	8d 45 ff             	lea    -0x1(%rbp),%eax
140d69533:	4c 8b b4 24 90 00 00 	mov    0x90(%rsp),%r14
140d6953a:	00
140d6953b:	48 8b 9c 24 98 00 00 	mov    0x98(%rsp),%rbx
140d69542:	00
140d69543:	48 83 c4 50          	add    $0x50,%rsp
140d69547:	41 5f                	pop    %r15
140d69549:	41 5d                	pop    %r13
140d6954b:	5f                   	pop    %rdi
140d6954c:	5e                   	pop    %rsi
140d6954d:	5d                   	pop    %rbp
140d6954e:	c3                   	ret
140d6954f:	48 03 fb             	add    %rbx,%rdi
140d69552:	4c 89 a4 24 80 00 00 	mov    %r12,0x80(%rsp)
140d69559:	00
140d6955a:	4d 03 d6             	add    %r14,%r10
140d6955d:	49 8b d7             	mov    %r15,%rdx
140d69560:	8b c3                	mov    %ebx,%eax
140d69562:	8d 4b ff             	lea    -0x1(%rbx),%ecx
140d69565:	f7 d0                	not    %eax
140d69567:	c1 e9 1f             	shr    $0x1f,%ecx
140d6956a:	c1 e8 1f             	shr    $0x1f,%eax
140d6956d:	4d 8b c2             	mov    %r10,%r8
140d69570:	23 c8                	and    %eax,%ecx
140d69572:	49 ff ca             	dec    %r10
140d69575:	ff c9                	dec    %ecx
140d69577:	8b c1                	mov    %ecx,%eax
140d69579:	83 e0 01             	and    $0x1,%eax
140d6957c:	2b d8                	sub    %eax,%ebx
140d6957e:	8b c1                	mov    %ecx,%eax
140d69580:	83 e0 01             	and    $0x1,%eax
140d69583:	48 2b f8             	sub    %rax,%rdi
140d69586:	0f b6 07             	movzbl (%rdi),%eax
140d69589:	22 c1                	and    %cl,%al
140d6958b:	41 88 02             	mov    %al,(%r10)
140d6958e:	48 83 ea 01          	sub    $0x1,%rdx
140d69592:	75 cc                	jne    0x140d69560
140d69594:	45 0f b6 30          	movzbl (%r8),%r14d
140d69598:	44 8d 5a 02          	lea    0x2(%rdx),%r11d
140d6959c:	0f b6 c0             	movzbl %al,%eax
140d6959f:	49 8d 5a 02          	lea    0x2(%r10),%rbx
140d695a3:	41 83 f6 02          	xor    $0x2,%r14d
140d695a7:	ff c8                	dec    %eax
140d695a9:	41 ff ce             	dec    %r14d
140d695ac:	c1 e8 1f             	shr    $0x1f,%eax
140d695af:	f7 d8                	neg    %eax
140d695b1:	41 c1 ee 1f          	shr    $0x1f,%r14d
140d695b5:	41 f7 de             	neg    %r14d
140d695b8:	44 8b cd             	mov    %ebp,%r9d
140d695bb:	44 23 f0             	and    %eax,%r14d
140d695be:	8b fd                	mov    %ebp,%edi
140d695c0:	44 89 74 24 30       	mov    %r14d,0x30(%rsp)
140d695c5:	45 8b e6             	mov    %r14d,%r12d
140d695c8:	41 f7 d4             	not    %r12d
140d695cb:	41 b8 ff ff ff ff    	mov    $0xffffffff,%r8d
140d695d1:	44 89 64 24 34       	mov    %r12d,0x34(%rsp)
140d695d6:	8b 44 24 30          	mov    0x30(%rsp),%eax
140d695da:	8b 44 24 34          	mov    0x34(%rsp),%eax
140d695de:	83 e0 6b             	and    $0x6b,%eax
140d695e1:	89 44 24 38          	mov    %eax,0x38(%rsp)
140d695e5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
140d695ec:	00 00 00 00
140d695f0:	0f b6 13             	movzbl (%rbx),%edx
140d695f3:	48 8d 5b 01          	lea    0x1(%rbx),%rbx
140d695f7:	ff ca                	dec    %edx
140d695f9:	c1 ea 1f             	shr    $0x1f,%edx
140d695fc:	f7 da                	neg    %edx
140d695fe:	44 23 c2             	and    %edx,%r8d
140d69601:	44 0b ca             	or     %edx,%r9d
140d69604:	44 89 44 24 34       	mov    %r8d,0x34(%rsp)
140d69609:	41 f7 d0             	not    %r8d
140d6960c:	44 89 44 24 30       	mov    %r8d,0x30(%rsp)
140d69611:	45 8b c1             	mov    %r9d,%r8d
140d69614:	8b 4c 24 34          	mov    0x34(%rsp),%ecx
140d69618:	41 f7 d0             	not    %r8d
140d6961b:	8b 44 24 30          	mov    0x30(%rsp),%eax
140d6961f:	41 23 cb             	and    %r11d,%ecx
140d69622:	44 23 e8             	and    %eax,%r13d
140d69625:	41 ff c3             	inc    %r11d
140d69628:	44 0b e9             	or     %ecx,%r13d
140d6962b:	41 8b c0             	mov    %r8d,%eax
140d6962e:	0f b6 4b ff          	movzbl -0x1(%rbx),%ecx
140d69632:	83 e0 01             	and    $0x1,%eax
140d69635:	83 f1 03             	xor    $0x3,%ecx
140d69638:	03 c7                	add    %edi,%eax
140d6963a:	ff c9                	dec    %ecx
140d6963c:	c1 e9 1f             	shr    $0x1f,%ecx
140d6963f:	f7 d9                	neg    %ecx
140d69641:	41 0b c9             	or     %r9d,%ecx
140d69644:	8b f9                	mov    %ecx,%edi
140d69646:	23 f8                	and    %eax,%edi
140d69648:	45 3b df             	cmp    %r15d,%r11d
140d6964b:	7c a3                	jl     0x140d695f0
140d6964d:	44 8b 8c 24 88 00 00 	mov    0x88(%rsp),%r9d
140d69654:	00
140d69655:	41 8d 45 f6          	lea    -0xa(%r13),%eax
140d69659:	41 0b c5             	or     %r13d,%eax
140d6965c:	41 bb 01 00 00 00    	mov    $0x1,%r11d
140d69662:	41 33 c5             	xor    %r13d,%eax
140d69665:	c1 e8 1f             	shr    $0x1f,%eax
140d69668:	ff c8                	dec    %eax
140d6966a:	44 23 f0             	and    %eax,%r14d
140d6966d:	41 8b c6             	mov    %r14d,%eax
140d69670:	41 8b ce             	mov    %r14d,%ecx
140d69673:	41 0b c4             	or     %r12d,%eax
140d69676:	f7 d1                	not    %ecx
140d69678:	89 44 24 34          	mov    %eax,0x34(%rsp)
140d6967c:	45 8b e7             	mov    %r15d,%r12d
140d6967f:	f7 d0                	not    %eax
140d69681:	45 2b e5             	sub    %r13d,%r12d
140d69684:	89 44 24 30          	mov    %eax,0x30(%rsp)
140d69688:	41 ff cc             	dec    %r12d
140d6968b:	8b 44 24 34          	mov    0x34(%rsp),%eax
140d6968f:	23 44 24 38          	and    0x38(%rsp),%eax
140d69693:	8b 54 24 30          	mov    0x30(%rsp),%edx
140d69697:	83 e2 71             	and    $0x71,%edx
140d6969a:	0b d0                	or     %eax,%edx
140d6969c:	8d 47 f8             	lea    -0x8(%rdi),%eax
140d6969f:	0b c7                	or     %edi,%eax
140d696a1:	33 c7                	xor    %edi,%eax
140d696a3:	c1 e8 1f             	shr    $0x1f,%eax
140d696a6:	ff c8                	dec    %eax
140d696a8:	44 23 f0             	and    %eax,%r14d
140d696ab:	41 8b c6             	mov    %r14d,%eax
140d696ae:	0b c1                	or     %ecx,%eax
140d696b0:	41 8b c9             	mov    %r9d,%ecx
140d696b3:	89 44 24 38          	mov    %eax,0x38(%rsp)
140d696b7:	41 2b cc             	sub    %r12d,%ecx
140d696ba:	41 33 cc             	xor    %r12d,%ecx
140d696bd:	f7 d0                	not    %eax
140d696bf:	89 44 24 34          	mov    %eax,0x34(%rsp)
140d696c3:	8b 44 24 38          	mov    0x38(%rsp),%eax
140d696c7:	44 8b 44 24 34       	mov    0x34(%rsp),%r8d
140d696cc:	23 c2                	and    %edx,%eax
140d696ce:	41 83 e0 73          	and    $0x73,%r8d
140d696d2:	41 8b d6             	mov    %r14d,%edx
140d696d5:	44 0b c0             	or     %eax,%r8d
140d696d8:	f7 d2                	not    %edx
140d696da:	41 8b c4             	mov    %r12d,%eax
140d696dd:	41 33 c1             	xor    %r9d,%eax
140d696e0:	0b c8                	or     %eax,%ecx
140d696e2:	41 33 c9             	xor    %r9d,%ecx
140d696e5:	c1 e9 1f             	shr    $0x1f,%ecx
140d696e8:	ff c9                	dec    %ecx
140d696ea:	44 23 f1             	and    %ecx,%r14d
140d696ed:	41 8b c6             	mov    %r14d,%eax
140d696f0:	0b c2                	or     %edx,%eax
140d696f2:	41 8d 57 f5          	lea    -0xb(%r15),%edx
140d696f6:	89 84 24 88 00 00 00 	mov    %eax,0x88(%rsp)
140d696fd:	8b ca                	mov    %edx,%ecx
140d696ff:	41 2b c9             	sub    %r9d,%ecx
140d69702:	f7 d0                	not    %eax
140d69704:	89 44 24 38          	mov    %eax,0x38(%rsp)
140d69708:	41 33 c9             	xor    %r9d,%ecx
140d6970b:	8b 84 24 88 00 00 00 	mov    0x88(%rsp),%eax
140d69712:	8b 7c 24 38          	mov    0x38(%rsp),%edi
140d69716:	41 23 c0             	and    %r8d,%eax
140d69719:	83 e7 6d             	and    $0x6d,%edi
140d6971c:	0b f8                	or     %eax,%edi
140d6971e:	8b c2                	mov    %edx,%eax
140d69720:	41 33 c1             	xor    %r9d,%eax
140d69723:	89 7c 24 30          	mov    %edi,0x30(%rsp)
140d69727:	0b c8                	or     %eax,%ecx
140d69729:	33 ca                	xor    %edx,%ecx
140d6972b:	c1 e9 1f             	shr    $0x1f,%ecx
140d6972e:	f7 d9                	neg    %ecx
140d69730:	89 8c 24 88 00 00 00 	mov    %ecx,0x88(%rsp)
140d69737:	f7 d1                	not    %ecx
140d69739:	89 4c 24 38          	mov    %ecx,0x38(%rsp)
140d6973d:	8b 84 24 88 00 00 00 	mov    0x88(%rsp),%eax
140d69744:	8b 4c 24 38          	mov    0x38(%rsp),%ecx
140d69748:	23 c2                	and    %edx,%eax
140d6974a:	41 23 c9             	and    %r9d,%ecx
140d6974d:	0b c8                	or     %eax,%ecx
140d6974f:	89 4c 24 34          	mov    %ecx,0x34(%rsp)
140d69753:	41 3b d3             	cmp    %r11d,%edx
140d69756:	0f 8e 98 00 00 00    	jle    0x140d697f4
140d6975c:	45 8b ef             	mov    %r15d,%r13d
140d6975f:	45 2b ec             	sub    %r12d,%r13d
140d69762:	41 83 c5 f5          	add    $0xfffffff5,%r13d
140d69766:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
140d6976d:	00 00 00
140d69770:	41 8b c5             	mov    %r13d,%eax
140d69773:	41 23 c3             	and    %r11d,%eax
140d69776:	8d 48 ff             	lea    -0x1(%rax),%ecx
140d69779:	f7 d0                	not    %eax
140d6977b:	c1 e8 1f             	shr    $0x1f,%eax
140d6977e:	c1 e9 1f             	shr    $0x1f,%ecx
140d69781:	23 c8                	and    %eax,%ecx
140d69783:	41 8b c7             	mov    %r15d,%eax
140d69786:	41 2b c3             	sub    %r11d,%eax
140d69789:	ff c9                	dec    %ecx
140d6978b:	4c 63 c0             	movslq %eax,%r8
140d6978e:	49 83 f8 0b          	cmp    $0xb,%r8
140d69792:	7e 50                	jle    0x140d697e4
140d69794:	0f b6 d9             	movzbl %cl,%ebx
140d69797:	49 8d 42 0b          	lea    0xb(%r10),%rax
140d6979b:	44 8b cb             	mov    %ebx,%r9d
140d6979e:	49 63 fb             	movslq %r11d,%rdi
140d697a1:	41 f7 d1             	not    %r9d
140d697a4:	49 83 c0 f5          	add    $0xfffffffffffffff5,%r8
140d697a8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140d697af:	00
140d697b0:	89 9c 24 88 00 00 00 	mov    %ebx,0x88(%rsp)
140d697b7:	48 8d 40 01          	lea    0x1(%rax),%rax
140d697bb:	44 89 4c 24 38       	mov    %r9d,0x38(%rsp)
140d697c0:	8b 8c 24 88 00 00 00 	mov    0x88(%rsp),%ecx
140d697c7:	0f b6 54 07 ff       	movzbl -0x1(%rdi,%rax,1),%edx
140d697cc:	22 d1                	and    %cl,%dl
140d697ce:	8b 4c 24 38          	mov    0x38(%rsp),%ecx
140d697d2:	22 48 ff             	and    -0x1(%rax),%cl
140d697d5:	0a ca                	or     %dl,%cl
140d697d7:	88 48 ff             	mov    %cl,-0x1(%rax)
140d697da:	49 83 e8 01          	sub    $0x1,%r8
140d697de:	75 d0                	jne    0x140d697b0
140d697e0:	41 8d 57 f5          	lea    -0xb(%r15),%edx
140d697e4:	45 03 db             	add    %r11d,%r11d
140d697e7:	44 3b da             	cmp    %edx,%r11d
140d697ea:	7c 84                	jl     0x140d69770
140d697ec:	8b 4c 24 34          	mov    0x34(%rsp),%ecx
140d697f0:	8b 7c 24 30          	mov    0x30(%rsp),%edi
140d697f4:	4c 63 d9             	movslq %ecx,%r11
140d697f7:	85 c9                	test   %ecx,%ecx
140d697f9:	7e 6d                	jle    0x140d69868
140d697fb:	45 8b cc             	mov    %r12d,%r9d
140d697fe:	49 8b da             	mov    %r10,%rbx
140d69801:	41 c1 e9 1f          	shr    $0x1f,%r9d
140d69805:	48 2b de             	sub    %rsi,%rbx
140d69808:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140d6980f:	00
140d69810:	8b d5                	mov    %ebp,%edx
140d69812:	48 8d 76 01          	lea    0x1(%rsi),%rsi
140d69816:	41 2b d4             	sub    %r12d,%edx
140d69819:	8b cd                	mov    %ebp,%ecx
140d6981b:	c1 e9 1f             	shr    $0x1f,%ecx
140d6981e:	41 0f b6 c1          	movzbl %r9b,%eax
140d69822:	32 c1                	xor    %cl,%al
140d69824:	c1 ea 1f             	shr    $0x1f,%edx
140d69827:	41 32 d1             	xor    %r9b,%dl
140d6982a:	ff c5                	inc    %ebp
140d6982c:	0a d0                	or     %al,%dl
140d6982e:	41 0f b6 c6          	movzbl %r14b,%eax
140d69832:	32 d1                	xor    %cl,%dl
140d69834:	f6 da                	neg    %dl
140d69836:	0f b6 ca             	movzbl %dl,%ecx
140d69839:	23 c8                	and    %eax,%ecx
140d6983b:	89 8c 24 88 00 00 00 	mov    %ecx,0x88(%rsp)
140d69842:	f7 d1                	not    %ecx
140d69844:	89 4c 24 38          	mov    %ecx,0x38(%rsp)
140d69848:	8b 84 24 88 00 00 00 	mov    0x88(%rsp),%eax
140d6984f:	0f b6 4c 1e 0a       	movzbl 0xa(%rsi,%rbx,1),%ecx
140d69854:	22 c8                	and    %al,%cl
140d69856:	8b 44 24 38          	mov    0x38(%rsp),%eax
140d6985a:	22 46 ff             	and    -0x1(%rsi),%al
140d6985d:	0a c1                	or     %cl,%al
140d6985f:	88 46 ff             	mov    %al,-0x1(%rsi)
140d69862:	49 83 eb 01          	sub    $0x1,%r11
140d69866:	75 a8                	jne    0x140d69810
140d69868:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
140d6986d:	4c 8d 05 3c 9a 41 00 	lea    0x419a3c(%rip),%r8        # 0x1411832b0
140d69874:	41 b9 a5 00 00 00    	mov    $0xa5,%r9d
140d6987a:	49 8b ca             	mov    %r10,%rcx
140d6987d:	e8 ae 82 f5 ff       	call   0x140cc1b30
140d69882:	ba 72 00 00 00       	mov    $0x72,%edx
140d69887:	c7 44 24 20 a6 00 00 	movl   $0xa6,0x20(%rsp)
140d6988e:	00
140d6988f:	4c 8d 0d 1a 9a 41 00 	lea    0x419a1a(%rip),%r9        # 0x1411832b0
140d69896:	44 8b c7             	mov    %edi,%r8d
140d69899:	8d 4a 92             	lea    -0x6e(%rdx),%ecx
140d6989c:	e8 df 73 f6 ff       	call   0x140cd0c80
140d698a1:	41 8b ce             	mov    %r14d,%ecx
140d698a4:	83 e1 01             	and    $0x1,%ecx
140d698a7:	e8 c4 76 f6 ff       	call   0x140cd0f70
140d698ac:	44 89 b4 24 88 00 00 	mov    %r14d,0x88(%rsp)
140d698b3:	00
140d698b4:	41 f7 d6             	not    %r14d
140d698b7:	44 89 74 24 38       	mov    %r14d,0x38(%rsp)
140d698bc:	8b 8c 24 88 00 00 00 	mov    0x88(%rsp),%ecx
140d698c3:	8b 44 24 38          	mov    0x38(%rsp),%eax
140d698c7:	41 23 cc             	and    %r12d,%ecx
140d698ca:	4c 8b a4 24 80 00 00 	mov    0x80(%rsp),%r12
140d698d1:	00
140d698d2:	0b c1                	or     %ecx,%eax
140d698d4:	e9 5a fc ff ff       	jmp    0x140d69533
140d698d9:	ba 72 00 00 00       	mov    $0x72,%edx
140d698de:	c7 44 24 20 4a 00 00 	movl   $0x4a,0x20(%rsp)
140d698e5:	00
140d698e6:	4c 8d 0d c3 99 41 00 	lea    0x4199c3(%rip),%r9        # 0x1411832b0
140d698ed:	8d 4a 92             	lea    -0x6e(%rdx),%ecx
140d698f0:	44 8d 42 fd          	lea    -0x3(%rdx),%r8d
140d698f4:	e8 87 73 f6 ff       	call   0x140cd0c80
140d698f9:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140d698fe:	e9 38 fc ff ff       	jmp    0x140d6953b
140d69903:	cc                   	int3
140d69904:	cc                   	int3
140d69905:	cc                   	int3
140d69906:	cc                   	int3
140d69907:	cc                   	int3
140d69908:	cc                   	int3
140d69909:	cc                   	int3
140d6990a:	cc                   	int3
140d6990b:	cc                   	int3
140d6990c:	cc                   	int3
140d6990d:	cc                   	int3
140d6990e:	cc                   	int3
140d6990f:	cc                   	int3
140d69910:	b8 38 00 00 00       	mov    $0x38,%eax
140d69915:	e8 86 1b 0b 00       	call   0x140e1b4a0
140d6991a:	48 2b e0             	sub    %rax,%rsp
140d6991d:	49 8b c0             	mov    %r8,%rax
140d69920:	44 3b ca             	cmp    %edx,%r9d
140d69923:	7e 27                	jle    0x140d6994c
140d69925:	ba 6b 00 00 00       	mov    $0x6b,%edx
140d6992a:	c7 44 24 20 12 00 00 	movl   $0x12,0x20(%rsp)
140d69931:	00
140d69932:	4c 8d 0d 8f 99 41 00 	lea    0x41998f(%rip),%r9        # 0x1411832c8
140d69939:	8d 4a 99             	lea    -0x67(%rdx),%ecx
140d6993c:	44 8d 42 03          	lea    0x3(%rdx),%r8d
140d69940:	e8 3b 73 f6 ff       	call   0x140cd0c80
140d69945:	33 c0                	xor    %eax,%eax
140d69947:	48 83 c4 38          	add    $0x38,%rsp
140d6994b:	c3                   	ret
140d6994c:	7d 27                	jge    0x140d69975
140d6994e:	ba 6b 00 00 00       	mov    $0x6b,%edx