140e217fe:	48 8b c2             	mov    %rdx,%rax
140e21801:	44 8b c1             	mov    %ecx,%r8d
140e21804:	38 0a                	cmp    %cl,(%rdx)
140e21806:	74 17                	je     0x140e2181f
140e21808:	48 ff c0             	inc    %rax
140e2180b:	41 ff c0             	inc    %r8d
140e2180e:	38 08                	cmp    %cl,(%rax)
140e21810:	75 f6                	jne    0x140e21808
140e21812:	45 85 c0             	test   %r8d,%r8d
140e21815:	74 08                	je     0x140e2181f
140e21817:	48 8b cb             	mov    %rbx,%rcx
140e2181a:	e8 21 01 00 00       	call   0x140e21940
140e2181f:	48 8b c3             	mov    %rbx,%rax
140e21822:	48 83 c4 20          	add    $0x20,%rsp
140e21826:	5b                   	pop    %rbx
140e21827:	c3                   	ret
140e21828:	40 53                	rex push %rbx
140e2182a:	48 83 ec 20          	sub    $0x20,%rsp
140e2182e:	48 8b d9             	mov    %rcx,%rbx
140e21831:	33 c9                	xor    %ecx,%ecx
140e21833:	48 89 0b             	mov    %rcx,(%rbx)
140e21836:	89 4b 08             	mov    %ecx,0x8(%rbx)
140e21839:	48 85 d2             	test   %rdx,%rdx
140e2183c:	74 21                	je     0x140e2185f
140e2183e:	48 8b c2             	mov    %rdx,%rax
140e21841:	44 8b c1             	mov    %ecx,%r8d
140e21844:	38 0a                	cmp    %cl,(%rdx)
140e21846:	74 17                	je     0x140e2185f
140e21848:	48 ff c0             	inc    %rax
140e2184b:	41 ff c0             	inc    %r8d
140e2184e:	38 08                	cmp    %cl,(%rax)
140e21850:	75 f6                	jne    0x140e21848
140e21852:	45 85 c0             	test   %r8d,%r8d
140e21855:	74 08                	je     0x140e2185f
140e21857:	48 8b cb             	mov    %rbx,%rcx
140e2185a:	e8 79 01 00 00       	call   0x140e219d8
140e2185f:	48 8b c3             	mov    %rbx,%rax
140e21862:	48 83 c4 20          	add    $0x20,%rsp
140e21866:	5b                   	pop    %rbx
140e21867:	c3                   	ret
140e21868:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140e2186d:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140e21872:	57                   	push   %rdi
140e21873:	48 83 ec 20          	sub    $0x20,%rsp
140e21877:	48 8d 05 6a 06 3c 00 	lea    0x3c066a(%rip),%rax        # 0x1411e1ee8
140e2187e:	41 8b f8             	mov    %r8d,%edi
140e21881:	48 89 01             	mov    %rax,(%rcx)
140e21884:	48 8b f2             	mov    %rdx,%rsi
140e21887:	48 8b d9             	mov    %rcx,%rbx
140e2188a:	49 63 d0             	movslq %r8d,%rdx
140e2188d:	48 8d 0d dc da 67 00 	lea    0x67dadc(%rip),%rcx        # 0x14149f370
140e21894:	e8 73 45 00 00       	call   0x140e25e0c
140e21899:	48 89 43 08          	mov    %rax,0x8(%rbx)
140e2189d:	4c 8b c8             	mov    %rax,%r9
140e218a0:	89 7b 10             	mov    %edi,0x10(%rbx)
140e218a3:	48 85 c0             	test   %rax,%rax
140e218a6:	74 1b                	je     0x140e218c3
140e218a8:	85 ff                	test   %edi,%edi
140e218aa:	74 1b                	je     0x140e218c7
140e218ac:	48 2b f0             	sub    %rax,%rsi
140e218af:	8b cf                	mov    %edi,%ecx
140e218b1:	41 8a 04 31          	mov    (%r9,%rsi,1),%al
140e218b5:	41 88 01             	mov    %al,(%r9)
140e218b8:	49 ff c1             	inc    %r9
140e218bb:	48 83 e9 01          	sub    $0x1,%rcx
140e218bf:	75 f0                	jne    0x140e218b1
140e218c1:	eb 04                	jmp    0x140e218c7
140e218c3:	83 63 10 00          	andl   $0x0,0x10(%rbx)
140e218c7:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140e218cc:	48 8b c3             	mov    %rbx,%rax
140e218cf:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140e218d4:	48 83 c4 20          	add    $0x20,%rsp
140e218d8:	5f                   	pop    %rdi
140e218d9:	c3                   	ret
140e218da:	cc                   	int3
140e218db:	cc                   	int3
140e218dc:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140e218e1:	57                   	push   %rdi
140e218e2:	48 83 ec 20          	sub    $0x20,%rsp
140e218e6:	48 8b fa             	mov    %rdx,%rdi
140e218e9:	48 8b d9             	mov    %rcx,%rbx
140e218ec:	48 85 d2             	test   %rdx,%rdx
140e218ef:	74 3e                	je     0x140e2192f
140e218f1:	ba 20 00 00 00       	mov    $0x20,%edx
140e218f6:	48 8d 0d 73 da 67 00 	lea    0x67da73(%rip),%rcx        # 0x14149f370
140e218fd:	e8 0a 45 00 00       	call   0x140e25e0c
140e21902:	48 85 c0             	test   %rax,%rax
140e21905:	74 1e                	je     0x140e21925
140e21907:	48 8b 13             	mov    (%rbx),%rdx
140e2190a:	48 8d 0d 4f 06 3c 00 	lea    0x3c064f(%rip),%rcx        # 0x1411e1f60
140e21911:	83 48 18 ff          	orl    $0xffffffff,0x18(%rax)
140e21915:	48 89 08             	mov    %rcx,(%rax)
140e21918:	48 89 50 08          	mov    %rdx,0x8(%rax)
140e2191c:	48 89 78 10          	mov    %rdi,0x10(%rax)
140e21920:	48 89 03             	mov    %rax,(%rbx)
140e21923:	eb 0e                	jmp    0x140e21933
140e21925:	48 83 23 00          	andq   $0x0,(%rbx)
140e21929:	c6 43 08 03          	movb   $0x3,0x8(%rbx)
140e2192d:	eb 04                	jmp    0x140e21933
140e2192f:	c6 41 08 03          	movb   $0x3,0x8(%rcx)
140e21933:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140e21938:	48 83 c4 20          	add    $0x20,%rsp
140e2193c:	5f                   	pop    %rdi
140e2193d:	c3                   	ret
140e2193e:	cc                   	int3
140e2193f:	cc                   	int3
140e21940:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140e21945:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140e2194a:	57                   	push   %rdi
140e2194b:	48 83 ec 20          	sub    $0x20,%rsp
140e2194f:	41 8b f8             	mov    %r8d,%edi
140e21952:	48 8b f2             	mov    %rdx,%rsi
140e21955:	48 8b d9             	mov    %rcx,%rbx
140e21958:	48 85 d2             	test   %rdx,%rdx
140e2195b:	74 64                	je     0x140e219c1
140e2195d:	45 85 c0             	test   %r8d,%r8d
140e21960:	7e 5f                	jle    0x140e219c1
140e21962:	48 8d 0d 07 da 67 00 	lea    0x67da07(%rip),%rcx        # 0x14149f370
140e21969:	41 83 f8 01          	cmp    $0x1,%r8d
140e2196d:	74 32                	je     0x140e219a1
140e2196f:	ba 18 00 00 00       	mov    $0x18,%edx
140e21974:	e8 93 44 00 00       	call   0x140e25e0c
140e21979:	48 85 c0             	test   %rax,%rax
140e2197c:	74 13                	je     0x140e21991
140e2197e:	48 8d 0d 63 05 3c 00 	lea    0x3c0563(%rip),%rcx        # 0x1411e1ee8
140e21985:	48 89 70 08          	mov    %rsi,0x8(%rax)
140e21989:	48 89 08             	mov    %rcx,(%rax)
140e2198c:	89 78 10             	mov    %edi,0x10(%rax)
140e2198f:	eb 02                	jmp    0x140e21993
140e21991:	33 c0                	xor    %eax,%eax
140e21993:	48 89 03             	mov    %rax,(%rbx)
140e21996:	48 85 c0             	test   %rax,%rax
140e21999:	75 2a                	jne    0x140e219c5
140e2199b:	c6 43 08 03          	movb   $0x3,0x8(%rbx)
140e2199f:	eb 24                	jmp    0x140e219c5
140e219a1:	ba 10 00 00 00       	mov    $0x10,%edx
140e219a6:	e8 61 44 00 00       	call   0x140e25e0c
140e219ab:	48 85 c0             	test   %rax,%rax
140e219ae:	74 e1                	je     0x140e21991
140e219b0:	8a 0e                	mov    (%rsi),%cl
140e219b2:	48 8d 15 07 05 3c 00 	lea    0x3c0507(%rip),%rdx        # 0x1411e1ec0
140e219b9:	48 89 10             	mov    %rdx,(%rax)
140e219bc:	88 48 08             	mov    %cl,0x8(%rax)
140e219bf:	eb d2                	jmp    0x140e21993
140e219c1:	c6 41 08 02          	movb   $0x2,0x8(%rcx)
140e219c5:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140e219ca:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140e219cf:	48 83 c4 20          	add    $0x20,%rsp
140e219d3:	5f                   	pop    %rdi
140e219d4:	c3                   	ret
140e219d5:	cc                   	int3
140e219d6:	cc                   	int3
140e219d7:	cc                   	int3
140e219d8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140e219dd:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140e219e2:	57                   	push   %rdi
140e219e3:	48 83 ec 20          	sub    $0x20,%rsp
140e219e7:	41 8b f8             	mov    %r8d,%edi
140e219ea:	48 8b f2             	mov    %rdx,%rsi
140e219ed:	48 8b d9             	mov    %rcx,%rbx
140e219f0:	48 85 d2             	test   %rdx,%rdx
140e219f3:	74 64                	je     0x140e21a59
140e219f5:	45 85 c0             	test   %r8d,%r8d
140e219f8:	7e 5f                	jle    0x140e21a59
140e219fa:	48 8d 0d 6f d9 67 00 	lea    0x67d96f(%rip),%rcx        # 0x14149f370
140e21a01:	41 83 f8 01          	cmp    $0x1,%r8d
140e21a05:	74 32                	je     0x140e21a39
140e21a07:	ba 18 00 00 00       	mov    $0x18,%edx
140e21a0c:	e8 fb 43 00 00       	call   0x140e25e0c
140e21a11:	48 85 c0             	test   %rax,%rax
140e21a14:	74 13                	je     0x140e21a29
140e21a16:	45 33 c9             	xor    %r9d,%r9d
140e21a19:	44 8b c7             	mov    %edi,%r8d
140e21a1c:	48 8b d6             	mov    %rsi,%rdx
140e21a1f:	48 8b c8             	mov    %rax,%rcx
140e21a22:	e8 41 fe ff ff       	call   0x140e21868
140e21a27:	eb 02                	jmp    0x140e21a2b
140e21a29:	33 c0                	xor    %eax,%eax
140e21a2b:	48 89 03             	mov    %rax,(%rbx)
140e21a2e:	48 85 c0             	test   %rax,%rax
140e21a31:	75 2a                	jne    0x140e21a5d
140e21a33:	c6 43 08 03          	movb   $0x3,0x8(%rbx)
140e21a37:	eb 24                	jmp    0x140e21a5d
140e21a39:	ba 10 00 00 00       	mov    $0x10,%edx
140e21a3e:	e8 c9 43 00 00       	call   0x140e25e0c
140e21a43:	48 85 c0             	test   %rax,%rax
140e21a46:	74 e1                	je     0x140e21a29
140e21a48:	8a 0e                	mov    (%rsi),%cl
140e21a4a:	48 8d 15 6f 04 3c 00 	lea    0x3c046f(%rip),%rdx        # 0x1411e1ec0
140e21a51:	48 89 10             	mov    %rdx,(%rax)
140e21a54:	88 48 08             	mov    %cl,0x8(%rax)
140e21a57:	eb d2                	jmp    0x140e21a2b
140e21a59:	c6 41 08 02          	movb   $0x2,0x8(%rcx)
140e21a5d:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140e21a62:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140e21a67:	48 83 c4 20          	add    $0x20,%rsp
140e21a6b:	5f                   	pop    %rdi
140e21a6c:	c3                   	ret
140e21a6d:	cc                   	int3
140e21a6e:	cc                   	int3
140e21a6f:	cc                   	int3
140e21a70:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140e21a75:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140e21a7a:	57                   	push   %rdi
140e21a7b:	48 83 ec 20          	sub    $0x20,%rsp
140e21a7f:	48 83 21 00          	andq   $0x0,(%rcx)
140e21a83:	48 8b fa             	mov    %rdx,%rdi
140e21a86:	83 61 08 00          	andl   $0x0,0x8(%rcx)
140e21a8a:	41 8a f0             	mov    %r8b,%sil
140e21a8d:	48 8b 12             	mov    (%rdx),%rdx
140e21a90:	48 8b d9             	mov    %rcx,%rbx
140e21a93:	8a 02                	mov    (%rdx),%al
140e21a95:	84 c0                	test   %al,%al
140e21a97:	74 71                	je     0x140e21b0a
140e21a99:	45 33 c0             	xor    %r8d,%r8d
140e21a9c:	48 8b ca             	mov    %rdx,%rcx
140e21a9f:	eb 2c                	jmp    0x140e21acd
140e21aa1:	0f b6 c0             	movzbl %al,%eax
140e21aa4:	4c 8d 0d d5 04 3c 00 	lea    0x3c04d5(%rip),%r9        # 0x1411e1f80
140e21aab:	42 80 3c 08 00       	cmpb   $0x0,(%rax,%r9,1)
140e21ab0:	75 0c                	jne    0x140e21abe
140e21ab2:	f7 05 9c d8 67 00 00 	testl  $0x10000,0x67d89c(%rip)        # 0x14149f358
140e21ab9:	00 01 00
140e21abc:	74 3a                	je     0x140e21af8
140e21abe:	41 ff c0             	inc    %r8d
140e21ac1:	48 ff c1             	inc    %rcx
140e21ac4:	48 89 0f             	mov    %rcx,(%rdi)
140e21ac7:	8a 01                	mov    (%rcx),%al
140e21ac9:	84 c0                	test   %al,%al
140e21acb:	74 05                	je     0x140e21ad2
140e21acd:	40 3a c6             	cmp    %sil,%al
140e21ad0:	75 cf                	jne    0x140e21aa1
140e21ad2:	48 8b cb             	mov    %rbx,%rcx
140e21ad5:	e8 66 fe ff ff       	call   0x140e21940
140e21ada:	48 8b 07             	mov    (%rdi),%rax
140e21add:	8a 08                	mov    (%rax),%cl
140e21adf:	84 c9                	test   %cl,%cl
140e21ae1:	74 1b                	je     0x140e21afe
140e21ae3:	48 ff c0             	inc    %rax
140e21ae6:	48 89 07             	mov    %rax,(%rdi)
140e21ae9:	40 3a ce             	cmp    %sil,%cl
140e21aec:	74 20                	je     0x140e21b0e
140e21aee:	48 83 23 00          	andq   $0x0,(%rbx)
140e21af2:	c6 43 08 03          	movb   $0x3,0x8(%rbx)
140e21af6:	eb 16                	jmp    0x140e21b0e
140e21af8:	c6 43 08 02          	movb   $0x2,0x8(%rbx)
140e21afc:	eb 10                	jmp    0x140e21b0e
140e21afe:	80 7b 08 00          	cmpb   $0x0,0x8(%rbx)
140e21b02:	75 0a                	jne    0x140e21b0e
140e21b04:	c6 43 08 01          	movb   $0x1,0x8(%rbx)
140e21b08:	eb 04                	jmp    0x140e21b0e
140e21b0a:	c6 41 08 01          	movb   $0x1,0x8(%rcx)
140e21b0e:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140e21b13:	48 8b c3             	mov    %rbx,%rax
140e21b16:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140e21b1b:	48 83 c4 20          	add    $0x20,%rsp
140e21b1f:	5f                   	pop    %rdi
140e21b20:	c3                   	ret
140e21b21:	cc                   	int3
140e21b22:	cc                   	int3
140e21b23:	cc                   	int3
140e21b24:	40 53                	rex push %rbx
140e21b26:	48 83 ec 20          	sub    $0x20,%rsp
140e21b2a:	48 83 21 00          	andq   $0x0,(%rcx)
140e21b2e:	48 8b d9             	mov    %rcx,%rbx
140e21b31:	83 61 08 00          	andl   $0x0,0x8(%rcx)
140e21b35:	44 8b 42 08          	mov    0x8(%rdx),%r8d
140e21b39:	45 85 c0             	test   %r8d,%r8d
140e21b3c:	7e 08                	jle    0x140e21b46
140e21b3e:	48 8b 12             	mov    (%rdx),%rdx
140e21b41:	e8 fa fd ff ff       	call   0x140e21940
140e21b46:	48 8b c3             	mov    %rbx,%rax
140e21b49:	48 83 c4 20          	add    $0x20,%rsp
140e21b4d:	5b                   	pop    %rbx
140e21b4e:	c3                   	ret
140e21b4f:	cc                   	int3
140e21b50:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140e21b55:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140e21b5a:	57                   	push   %rdi
140e21b5b:	48 83 ec 20          	sub    $0x20,%rsp
140e21b5f:	33 db                	xor    %ebx,%ebx
140e21b61:	48 8b f2             	mov    %rdx,%rsi
140e21b64:	89 59 08             	mov    %ebx,0x8(%rcx)
140e21b67:	48 8b f9             	mov    %rcx,%rdi
140e21b6a:	48 85 d2             	test   %rdx,%rdx
140e21b6d:	74 46                	je     0x140e21bb5
140e21b6f:	8d 53 10             	lea    0x10(%rbx),%edx
140e21b72:	48 8d 0d f7 d7 67 00 	lea    0x67d7f7(%rip),%rcx        # 0x14149f370
140e21b79:	e8 8e 42 00 00       	call   0x140e25e0c
140e21b7e:	4c 8b c0             	mov    %rax,%r8
140e21b81:	48 85 c0             	test   %rax,%rax
140e21b84:	74 1d                	je     0x140e21ba3
140e21b86:	48 8d 05 83 03 3c 00 	lea    0x3c0383(%rip),%rax        # 0x1411e1f10
140e21b8d:	49 89 00             	mov    %rax,(%r8)
140e21b90:	8a 4e 08             	mov    0x8(%rsi),%cl
140e21b93:	80 e9 02             	sub    $0x2,%cl
140e21b96:	80 f9 01             	cmp    $0x1,%cl
140e21b99:	48 0f 46 f3          	cmovbe %rbx,%rsi
140e21b9d:	49 89 70 08          	mov    %rsi,0x8(%r8)
140e21ba1:	eb 03                	jmp    0x140e21ba6
140e21ba3:	4c 8b c3             	mov    %rbx,%r8
140e21ba6:	49 8b c0             	mov    %r8,%rax
140e21ba9:	48 f7 d8             	neg    %rax
140e21bac:	1a db                	sbb    %bl,%bl
140e21bae:	f6 d3                	not    %bl
140e21bb0:	80 e3 03             	and    $0x3,%bl
140e21bb3:	eb 03                	jmp    0x140e21bb8
140e21bb5:	4c 8b c3             	mov    %rbx,%r8
140e21bb8:	4c 89 07             	mov    %r8,(%rdi)
140e21bbb:	48 8b c7             	mov    %rdi,%rax
140e21bbe:	88 5f 08             	mov    %bl,0x8(%rdi)
140e21bc1:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140e21bc6:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140e21bcb:	48 83 c4 20          	add    $0x20,%rsp
140e21bcf:	5f                   	pop    %rdi
140e21bd0:	c3                   	ret
140e21bd1:	cc                   	int3
140e21bd2:	cc                   	int3
140e21bd3:	cc                   	int3
140e21bd4:	40 53                	rex push %rbx
140e21bd6:	48 83 ec 40          	sub    $0x40,%rsp
140e21bda:	48 8b 05 1f 73 59 00 	mov    0x59731f(%rip),%rax        # 0x1413b8f00
140e21be1:	48 33 c4             	xor    %rsp,%rax
140e21be4:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140e21be9:	45 33 db             	xor    %r11d,%r11d
140e21bec:	4c 8d 4c 24 35       	lea    0x35(%rsp),%r9
140e21bf1:	4c 8b d2             	mov    %rdx,%r10
140e21bf4:	4c 89 19             	mov    %r11,(%rcx)
140e21bf7:	49 c1 ea 3f          	shr    $0x3f,%r10
140e21bfb:	4c 8b c2             	mov    %rdx,%r8
140e21bfe:	49 f7 d8             	neg    %r8
140e21c01:	44 89 59 08          	mov    %r11d,0x8(%rcx)
140e21c05:	48 8b d9             	mov    %rcx,%rbx
140e21c08:	44 88 5c 24 35       	mov    %r11b,0x35(%rsp)
140e21c0d:	4c 0f 48 c2          	cmovs  %rdx,%r8
140e21c11:	49 ff c9             	dec    %r9
140e21c14:	48 b8 cd cc cc cc cc 	movabs $0xcccccccccccccccd,%rax
140e21c1b:	cc cc cc
140e21c1e:	49 f7 e0             	mul    %r8
140e21c21:	48 c1 ea 03          	shr    $0x3,%rdx
140e21c25:	8a c2                	mov    %dl,%al
140e21c27:	c0 e0 02             	shl    $0x2,%al
140e21c2a:	8d 0c 10             	lea    (%rax,%rdx,1),%ecx
140e21c2d:	02 c9                	add    %cl,%cl
140e21c2f:	44 2a c1             	sub    %cl,%r8b
140e21c32:	41 80 c0 30          	add    $0x30,%r8b
140e21c36:	45 88 01             	mov    %r8b,(%r9)
140e21c39:	4c 8b c2             	mov    %rdx,%r8
140e21c3c:	48 85 d2             	test   %rdx,%rdx
140e21c3f:	75 d0                	jne    0x140e21c11