140e375f7:	48 8b cb             	mov    %rbx,%rcx
140e375fa:	e8 7d 36 00 00       	call   0x140e3ac7c
140e375ff:	84 c0                	test   %al,%al
140e37601:	0f 84 6c ff ff ff    	je     0x140e37573
140e37607:	48 8b cb             	mov    %rbx,%rcx
140e3760a:	e8 0d 37 00 00       	call   0x140e3ad1c
140e3760f:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140e37613:	8a 01                	mov    (%rcx),%al
140e37615:	3c 77                	cmp    $0x77,%al
140e37617:	75 0a                	jne    0x140e37623
140e37619:	48 8d 41 01          	lea    0x1(%rcx),%rax
140e3761d:	48 89 43 08          	mov    %rax,0x8(%rbx)
140e37621:	eb 06                	jmp    0x140e37629
140e37623:	2c 43                	sub    $0x43,%al
140e37625:	a8 ef                	test   $0xef,%al
140e37627:	75 04                	jne    0x140e3762d
140e37629:	40 88 7b 2c          	mov    %dil,0x2c(%rbx)
140e3762d:	48 8b cb             	mov    %rbx,%rcx
140e37630:	e8 7f 34 00 00       	call   0x140e3aab4
140e37635:	84 c0                	test   %al,%al
140e37637:	0f 84 36 ff ff ff    	je     0x140e37573
140e3763d:	48 63 43 30          	movslq 0x30(%rbx),%rax
140e37641:	48 8d 0c 40          	lea    (%rax,%rax,2),%rcx
140e37645:	48 63 43 28          	movslq 0x28(%rbx),%rax
140e37649:	48 8d 14 88          	lea    (%rax,%rcx,4),%rdx
140e3764d:	48 8d 05 3c bb 3a 00 	lea    0x3abb3c(%rip),%rax        # 0x1411e3190
140e37654:	40 38 34 02          	cmp    %sil,(%rdx,%rax,1)
140e37658:	0f 85 5e ff ff ff    	jne    0x140e375bc
140e3765e:	48 c7 43 10 16 00 00 	movq   $0x16,0x10(%rbx)
140e37665:	00
140e37666:	66 89 73 18          	mov    %si,0x18(%rbx)
140e3766a:	40 88 73 1a          	mov    %sil,0x1a(%rbx)
140e3766e:	48 89 73 20          	mov    %rsi,0x20(%rbx)
140e37672:	89 73 28             	mov    %esi,0x28(%rbx)
140e37675:	40 88 73 2c          	mov    %sil,0x2c(%rbx)
140e37679:	89 73 30             	mov    %esi,0x30(%rbx)
140e3767c:	e9 f2 fe ff ff       	jmp    0x140e37573
140e37681:	c7 43 14 03 00 00 00 	movl   $0x3,0x14(%rbx)
140e37688:	bf 01 00 00 00       	mov    $0x1,%edi
140e3768d:	8a 01                	mov    (%rcx),%al
140e3768f:	88 43 18             	mov    %al,0x18(%rbx)
140e37692:	48 8b c6             	mov    %rsi,%rax
140e37695:	38 11                	cmp    %dl,(%rcx)
140e37697:	0f 94 c0             	sete   %al
140e3769a:	48 03 c7             	add    %rdi,%rax
140e3769d:	48 03 c1             	add    %rcx,%rax
140e376a0:	48 89 43 08          	mov    %rax,0x8(%rbx)
140e376a4:	e8 97 69 01 00       	call   0x140e4e040
140e376a9:	0f b6 4b 18          	movzbl 0x18(%rbx),%ecx
140e376ad:	66 39 34 48          	cmp    %si,(%rax,%rcx,2)
140e376b1:	0f 8d 05 ff ff ff    	jge    0x140e375bc
140e376b7:	48 8b 43 08          	mov    0x8(%rbx),%rax
140e376bb:	8a 08                	mov    (%rax),%cl
140e376bd:	84 c9                	test   %cl,%cl
140e376bf:	75 26                	jne    0x140e376e7
140e376c1:	48 c7 43 10 2a 00 00 	movq   $0x2a,0x10(%rbx)
140e376c8:	00
140e376c9:	40 8a fe             	mov    %sil,%dil
140e376cc:	66 89 73 18          	mov    %si,0x18(%rbx)
140e376d0:	40 88 73 1a          	mov    %sil,0x1a(%rbx)
140e376d4:	48 89 73 20          	mov    %rsi,0x20(%rbx)
140e376d8:	89 73 28             	mov    %esi,0x28(%rbx)
140e376db:	40 88 73 2c          	mov    %sil,0x2c(%rbx)
140e376df:	89 73 30             	mov    %esi,0x30(%rbx)
140e376e2:	e9 d5 fe ff ff       	jmp    0x140e375bc
140e376e7:	48 ff c0             	inc    %rax
140e376ea:	88 4b 19             	mov    %cl,0x19(%rbx)
140e376ed:	48 89 43 08          	mov    %rax,0x8(%rbx)
140e376f1:	e9 c6 fe ff ff       	jmp    0x140e375bc
140e376f6:	cc                   	int3
140e376f7:	cc                   	int3
140e376f8:	48 83 ec 38          	sub    $0x38,%rsp
140e376fc:	80 79 08 00          	cmpb   $0x0,0x8(%rcx)
140e37700:	74 08                	je     0x140e3770a
140e37702:	48 8b 01             	mov    (%rcx),%rax
140e37705:	48 83 c4 38          	add    $0x38,%rsp
140e37709:	c3                   	ret
140e3770a:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
140e37710:	4c 8d 05 09 b9 3a 00 	lea    0x3ab909(%rip),%r8        # 0x1411e3020
140e37717:	41 b9 db 01 00 00    	mov    $0x1db,%r9d
140e3771d:	48 8d 15 6c b9 3a 00 	lea    0x3ab96c(%rip),%rdx        # 0x1411e3090
140e37724:	48 8d 0d c5 b9 3a 00 	lea    0x3ab9c5(%rip),%rcx        # 0x1411e30f0
140e3772b:	e8 a4 2a ff ff       	call   0x140e2a1d4
140e37730:	cc                   	int3
140e37731:	cc                   	int3
140e37732:	cc                   	int3
140e37733:	cc                   	int3
140e37734:	48 83 ec 38          	sub    $0x38,%rsp
140e37738:	80 79 08 00          	cmpb   $0x0,0x8(%rcx)
140e3773c:	75 08                	jne    0x140e37746
140e3773e:	48 8b 01             	mov    (%rcx),%rax
140e37741:	48 83 c4 38          	add    $0x38,%rsp
140e37745:	c3                   	ret
140e37746:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
140e3774c:	4c 8d 05 cd b8 3a 00 	lea    0x3ab8cd(%rip),%r8        # 0x1411e3020
140e37753:	41 b9 e1 01 00 00    	mov    $0x1e1,%r9d
140e37759:	48 8d 15 b0 b9 3a 00 	lea    0x3ab9b0(%rip),%rdx        # 0x1411e3110
140e37760:	48 8d 0d 09 ba 3a 00 	lea    0x3aba09(%rip),%rcx        # 0x1411e3170
140e37767:	e8 68 2a ff ff       	call   0x140e2a1d4
140e3776c:	cc                   	int3
140e3776d:	cc                   	int3
140e3776e:	cc                   	int3
140e3776f:	cc                   	int3
140e37770:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140e37775:	89 54 24 10          	mov    %edx,0x10(%rsp)
140e37779:	55                   	push   %rbp
140e3777a:	56                   	push   %rsi
140e3777b:	57                   	push   %rdi
140e3777c:	41 54                	push   %r12
140e3777e:	41 55                	push   %r13
140e37780:	41 56                	push   %r14
140e37782:	41 57                	push   %r15
140e37784:	48 83 ec 30          	sub    $0x30,%rsp
140e37788:	83 64 24 70 00       	andl   $0x0,0x70(%rsp)
140e3778d:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140e37792:	41 0f b6 f0          	movzbl %r8b,%esi
140e37796:	45 8a d9             	mov    %r9b,%r11b
140e37799:	44 8b fa             	mov    %edx,%r15d
140e3779c:	48 8b d9             	mov    %rcx,%rbx
140e3779f:	48 3b c8             	cmp    %rax,%rcx
140e377a2:	76 17                	jbe    0x140e377bb
140e377a4:	48 8b c1             	mov    %rcx,%rax
140e377a7:	48 c1 e8 20          	shr    $0x20,%rax
140e377ab:	0f bd c8             	bsr    %eax,%ecx
140e377ae:	74 04                	je     0x140e377b4
140e377b0:	ff c1                	inc    %ecx
140e377b2:	eb 02                	jmp    0x140e377b6
140e377b4:	33 c9                	xor    %ecx,%ecx
140e377b6:	83 c1 20             	add    $0x20,%ecx
140e377b9:	eb 0b                	jmp    0x140e377c6
140e377bb:	0f bd cb             	bsr    %ebx,%ecx
140e377be:	74 04                	je     0x140e377c4
140e377c0:	ff c1                	inc    %ecx
140e377c2:	eb 02                	jmp    0x140e377c6
140e377c4:	33 c9                	xor    %ecx,%ecx
140e377c6:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
140e377cd:	00
140e377ce:	41 8b ff             	mov    %r15d,%edi
140e377d1:	41 8a 52 08          	mov    0x8(%r10),%dl
140e377d5:	8a c2                	mov    %dl,%al
140e377d7:	f6 d8                	neg    %al
140e377d9:	8a c2                	mov    %dl,%al
140e377db:	1b ed                	sbb    %ebp,%ebp
140e377dd:	83 e5 1d             	and    $0x1d,%ebp
140e377e0:	83 c5 18             	add    $0x18,%ebp
140e377e3:	2b e9                	sub    %ecx,%ebp
140e377e5:	2b fd                	sub    %ebp,%edi
140e377e7:	f6 d8                	neg    %al
140e377e9:	45 1b c0             	sbb    %r8d,%r8d
140e377ec:	41 81 e0 80 03 00 00 	and    $0x380,%r8d
140e377f3:	41 83 c0 7f          	add    $0x7f,%r8d
140e377f7:	41 3b f8             	cmp    %r8d,%edi
140e377fa:	0f 8f 6a 02 00 00    	jg     0x140e37a6a
140e37800:	8a c2                	mov    %dl,%al
140e37802:	49 bc 00 00 80 ff ff 	movabs $0xfffffff800000,%r12
140e37809:	ff 0f 00
140e3780c:	f6 d8                	neg    %al
140e3780e:	1b c9                	sbb    %ecx,%ecx
140e37810:	81 e1 80 fc ff ff    	and    $0xfffffc80,%ecx
140e37816:	83 c1 82             	add    $0xffffff82,%ecx
140e37819:	3b f9                	cmp    %ecx,%edi
140e3781b:	0f 8d 51 01 00 00    	jge    0x140e37972
140e37821:	45 8d 4f ff          	lea    -0x1(%r15),%r9d
140e37825:	41 8b f8             	mov    %r8d,%edi
140e37828:	45 03 c8             	add    %r8d,%r9d
140e3782b:	f7 df                	neg    %edi
140e3782d:	44 89 4c 24 70       	mov    %r9d,0x70(%rsp)
140e37832:	45 85 c9             	test   %r9d,%r9d
140e37835:	0f 89 2f 01 00 00    	jns    0x140e3796a
140e3783b:	45 8b e9             	mov    %r9d,%r13d
140e3783e:	41 be 01 00 00 00    	mov    $0x1,%r14d
140e37844:	41 f7 dd             	neg    %r13d
140e37847:	41 83 fd 40          	cmp    $0x40,%r13d
140e3784b:	72 07                	jb     0x140e37854
140e3784d:	33 db                	xor    %ebx,%ebx
140e3784f:	e9 bf 00 00 00       	jmp    0x140e37913
140e37854:	41 8b cd             	mov    %r13d,%ecx
140e37857:	49 8b c6             	mov    %r14,%rax
140e3785a:	48 d3 e0             	shl    %cl,%rax
140e3785d:	41 8d 4d ff          	lea    -0x1(%r13),%ecx
140e37861:	48 23 c3             	and    %rbx,%rax
140e37864:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140e37869:	49 8b c6             	mov    %r14,%rax
140e3786c:	48 d3 e0             	shl    %cl,%rax
140e3786f:	4c 8b e0             	mov    %rax,%r12
140e37872:	4c 23 e3             	and    %rbx,%r12
140e37875:	45 84 db             	test   %r11b,%r11b
140e37878:	74 0d                	je     0x140e37887
140e3787a:	48 ff c8             	dec    %rax
140e3787d:	48 85 c3             	test   %rax,%rbx
140e37880:	75 05                	jne    0x140e37887
140e37882:	45 32 ff             	xor    %r15b,%r15b
140e37885:	eb 03                	jmp    0x140e3788a
140e37887:	45 8a fe             	mov    %r14b,%r15b
140e3788a:	4d 85 e4             	test   %r12,%r12
140e3788d:	75 05                	jne    0x140e37894
140e3788f:	45 84 ff             	test   %r15b,%r15b
140e37892:	74 62                	je     0x140e378f6
140e37894:	e8 6f 0a 02 00       	call   0x140e58308
140e37899:	85 c0                	test   %eax,%eax
140e3789b:	74 28                	je     0x140e378c5
140e3789d:	3d 00 01 00 00       	cmp    $0x100,%eax
140e378a2:	74 1c                	je     0x140e378c0
140e378a4:	44 8b 4c 24 70       	mov    0x70(%rsp),%r9d
140e378a9:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
140e378b0:	00
140e378b1:	3d 00 02 00 00       	cmp    $0x200,%eax
140e378b6:	75 3e                	jne    0x140e378f6
140e378b8:	40 8a c6             	mov    %sil,%al
140e378bb:	41 32 c6             	xor    %r14b,%al
140e378be:	eb 38                	jmp    0x140e378f8
140e378c0:	40 8a c6             	mov    %sil,%al
140e378c3:	eb 15                	jmp    0x140e378da
140e378c5:	4d 85 e4             	test   %r12,%r12
140e378c8:	74 1f                	je     0x140e378e9
140e378ca:	45 84 ff             	test   %r15b,%r15b
140e378cd:	75 08                	jne    0x140e378d7
140e378cf:	48 83 7c 24 20 00    	cmpq   $0x0,0x20(%rsp)
140e378d5:	74 12                	je     0x140e378e9
140e378d7:	41 8a c6             	mov    %r14b,%al
140e378da:	44 8b 4c 24 70       	mov    0x70(%rsp),%r9d
140e378df:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
140e378e6:	00
140e378e7:	eb 0f                	jmp    0x140e378f8
140e378e9:	44 8b 4c 24 70       	mov    0x70(%rsp),%r9d
140e378ee:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
140e378f5:	00
140e378f6:	32 c0                	xor    %al,%al
140e378f8:	44 8b 7c 24 78       	mov    0x78(%rsp),%r15d
140e378fd:	41 8b cd             	mov    %r13d,%ecx
140e37900:	48 d3 eb             	shr    %cl,%rbx
140e37903:	49 bc 00 00 80 ff ff 	movabs $0xfffffff800000,%r12
140e3790a:	ff 0f 00
140e3790d:	0f b6 c0             	movzbl %al,%eax
140e37910:	48 03 d8             	add    %rax,%rbx
140e37913:	41 8a 52 08          	mov    0x8(%r10),%dl
140e37917:	48 85 db             	test   %rbx,%rbx
140e3791a:	75 24                	jne    0x140e37940
140e3791c:	49 8b 0a             	mov    (%r10),%rcx
140e3791f:	84 d2                	test   %dl,%dl
140e37921:	74 0c                	je     0x140e3792f
140e37923:	48 8b c6             	mov    %rsi,%rax
140e37926:	48 c1 e0 3f          	shl    $0x3f,%rax
140e3792a:	48 89 01             	mov    %rax,(%rcx)
140e3792d:	eb 07                	jmp    0x140e37936
140e3792f:	8b c6                	mov    %esi,%eax
140e37931:	c1 e0 1f             	shl    $0x1f,%eax
140e37934:	89 01                	mov    %eax,(%rcx)
140e37936:	b8 02 00 00 00       	mov    $0x2,%eax
140e3793b:	e9 c4 01 00 00       	jmp    0x140e37b04
140e37940:	8a c2                	mov    %dl,%al
140e37942:	f6 d8                	neg    %al
140e37944:	48 1b c9             	sbb    %rcx,%rcx
140e37947:	49 23 cc             	and    %r12,%rcx
140e3794a:	48 81 c1 ff ff 7f 00 	add    $0x7fffff,%rcx
140e37951:	48 3b d9             	cmp    %rcx,%rbx
140e37954:	0f 86 4b 01 00 00    	jbe    0x140e37aa5
140e3795a:	41 8b ff             	mov    %r15d,%edi
140e3795d:	41 2b f9             	sub    %r9d,%edi
140e37960:	2b fd                	sub    %ebp,%edi
140e37962:	41 2b fe             	sub    %r14d,%edi
140e37965:	e9 3b 01 00 00       	jmp    0x140e37aa5
140e3796a:	41 8b c9             	mov    %r9d,%ecx
140e3796d:	e9 30 01 00 00       	jmp    0x140e37aa2
140e37972:	85 ed                	test   %ebp,%ebp
140e37974:	0f 89 24 01 00 00    	jns    0x140e37a9e
140e3797a:	f7 dd                	neg    %ebp
140e3797c:	83 fd 40             	cmp    $0x40,%ebp
140e3797f:	72 07                	jb     0x140e37988
140e37981:	33 db                	xor    %ebx,%ebx
140e37983:	e9 a6 00 00 00       	jmp    0x140e37a2e
140e37988:	41 be 01 00 00 00    	mov    $0x1,%r14d
140e3798e:	8b cd                	mov    %ebp,%ecx
140e37990:	45 8b ee             	mov    %r14d,%r13d
140e37993:	41 8b c6             	mov    %r14d,%eax
140e37996:	49 d3 e5             	shl    %cl,%r13
140e37999:	8d 4d ff             	lea    -0x1(%rbp),%ecx
140e3799c:	48 d3 e0             	shl    %cl,%rax
140e3799f:	4c 23 eb             	and    %rbx,%r13
140e379a2:	4c 8b e0             	mov    %rax,%r12
140e379a5:	4c 23 e3             	and    %rbx,%r12
140e379a8:	45 84 db             	test   %r11b,%r11b
140e379ab:	74 0d                	je     0x140e379ba
140e379ad:	48 ff c8             	dec    %rax
140e379b0:	48 85 c3             	test   %rax,%rbx
140e379b3:	75 05                	jne    0x140e379ba
140e379b5:	45 32 ff             	xor    %r15b,%r15b
140e379b8:	eb 03                	jmp    0x140e379bd
140e379ba:	45 8a fe             	mov    %r14b,%r15b
140e379bd:	4d 85 e4             	test   %r12,%r12
140e379c0:	75 05                	jne    0x140e379c7
140e379c2:	45 84 ff             	test   %r15b,%r15b
140e379c5:	74 50                	je     0x140e37a17
140e379c7:	e8 3c 09 02 00       	call   0x140e58308
140e379cc:	85 c0                	test   %eax,%eax
140e379ce:	74 23                	je     0x140e379f3
140e379d0:	3d 00 01 00 00       	cmp    $0x100,%eax
140e379d5:	74 17                	je     0x140e379ee
140e379d7:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
140e379de:	00
140e379df:	3d 00 02 00 00       	cmp    $0x200,%eax
140e379e4:	75 31                	jne    0x140e37a17
140e379e6:	40 8a c6             	mov    %sil,%al
140e379e9:	41 32 c6             	xor    %r14b,%al
140e379ec:	eb 2b                	jmp    0x140e37a19
140e379ee:	40 8a c6             	mov    %sil,%al
140e379f1:	eb 12                	jmp    0x140e37a05
140e379f3:	4d 85 e4             	test   %r12,%r12
140e379f6:	74 17                	je     0x140e37a0f
140e379f8:	45 84 ff             	test   %r15b,%r15b
140e379fb:	75 05                	jne    0x140e37a02
140e379fd:	4d 85 ed             	test   %r13,%r13
140e37a00:	74 0d                	je     0x140e37a0f
140e37a02:	41 8a c6             	mov    %r14b,%al
140e37a05:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
140e37a0c:	00
140e37a0d:	eb 0a                	jmp    0x140e37a19
140e37a0f:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
140e37a16:	00
140e37a17:	32 c0                	xor    %al,%al
140e37a19:	8b cd                	mov    %ebp,%ecx
140e37a1b:	0f b6 c0             	movzbl %al,%eax
140e37a1e:	48 d3 eb             	shr    %cl,%rbx
140e37a21:	49 bc 00 00 80 ff ff 	movabs $0xfffffff800000,%r12
140e37a28:	ff 0f 00
140e37a2b:	48 03 d8             	add    %rax,%rbx
140e37a2e:	41 8a 52 08          	mov    0x8(%r10),%dl
140e37a32:	8a c2                	mov    %dl,%al
140e37a34:	f6 d8                	neg    %al
140e37a36:	48 b8 00 00 00 ff ff 	movabs $0x1fffffff000000,%rax
140e37a3d:	ff 1f 00
140e37a40:	48 1b c9             	sbb    %rcx,%rcx
140e37a43:	48 23 c8             	and    %rax,%rcx
140e37a46:	48 81 c1 ff ff ff 00 	add    $0xffffff,%rcx
140e37a4d:	48 3b d9             	cmp    %rcx,%rbx
140e37a50:	76 53                	jbe    0x140e37aa5
140e37a52:	48 d1 eb             	shr    $1,%rbx
140e37a55:	8a c2                	mov    %dl,%al
140e37a57:	ff c7                	inc    %edi
140e37a59:	f6 d8                	neg    %al
140e37a5b:	1b c9                	sbb    %ecx,%ecx
140e37a5d:	81 e1 80 03 00 00    	and    $0x380,%ecx
140e37a63:	83 c1 7f             	add    $0x7f,%ecx
140e37a66:	3b f9                	cmp    %ecx,%edi
140e37a68:	7e 3b                	jle    0x140e37aa5
140e37a6a:	4d 8b 02             	mov    (%r10),%r8
140e37a6d:	84 d2                	test   %dl,%dl
140e37a6f:	74 19                	je     0x140e37a8a
140e37a71:	48 8b c6             	mov    %rsi,%rax
140e37a74:	48 b9 00 00 00 00 00 	movabs $0x7ff0000000000000,%rcx