1400ce6af:	32 c9                	xor    %cl,%cl
1400ce6b1:	f6 c3 02             	test   $0x2,%bl
1400ce6b4:	74 09                	je     0x1400ce6bf
1400ce6b6:	f6 02 02             	testb  $0x2,(%rdx)
1400ce6b9:	74 04                	je     0x1400ce6bf
1400ce6bb:	b0 01                	mov    $0x1,%al
1400ce6bd:	eb 02                	jmp    0x1400ce6c1
1400ce6bf:	32 c0                	xor    %al,%al
1400ce6c1:	84 c9                	test   %cl,%cl
1400ce6c3:	0f 85 c7 00 00 00    	jne    0x1400ce790
1400ce6c9:	84 c0                	test   %al,%al
1400ce6cb:	0f 85 bf 00 00 00    	jne    0x1400ce790
1400ce6d1:	4d 8b 48 08          	mov    0x8(%r8),%r9
1400ce6d5:	4d 03 08             	add    (%r8),%r9
1400ce6d8:	f6 02 02             	testb  $0x2,(%rdx)
1400ce6db:	49 8b 43 38          	mov    0x38(%r11),%rax
1400ce6df:	4c 8b 00             	mov    (%rax),%r8
1400ce6e2:	74 04                	je     0x1400ce6e8
1400ce6e4:	33 c9                	xor    %ecx,%ecx
1400ce6e6:	eb 16                	jmp    0x1400ce6fe
1400ce6e8:	49 8b 43 40          	mov    0x40(%r11),%rax
1400ce6ec:	48 8b 08             	mov    (%rax),%rcx
1400ce6ef:	48 85 c9             	test   %rcx,%rcx
1400ce6f2:	74 0a                	je     0x1400ce6fe
1400ce6f4:	49 39 4b 68          	cmp    %rcx,0x68(%r11)
1400ce6f8:	73 04                	jae    0x1400ce6fe
1400ce6fa:	49 89 4b 68          	mov    %rcx,0x68(%r11)
1400ce6fe:	4d 8b 73 18          	mov    0x18(%r11),%r14
1400ce702:	49 8b 53 68          	mov    0x68(%r11),%rdx
1400ce706:	48 8b c2             	mov    %rdx,%rax
1400ce709:	49 8b 36             	mov    (%r14),%rsi
1400ce70c:	48 2b c6             	sub    %rsi,%rax
1400ce70f:	48 d1 f8             	sar    $1,%rax
1400ce712:	4c 3b c8             	cmp    %rax,%r9
1400ce715:	77 79                	ja     0x1400ce790
1400ce717:	4d 85 c9             	test   %r9,%r9
1400ce71a:	74 14                	je     0x1400ce730
1400ce71c:	f6 c3 01             	test   $0x1,%bl
1400ce71f:	74 05                	je     0x1400ce726
1400ce721:	4d 85 c0             	test   %r8,%r8
1400ce724:	74 6a                	je     0x1400ce790
1400ce726:	f6 c3 02             	test   $0x2,%bl
1400ce729:	74 05                	je     0x1400ce730
1400ce72b:	48 85 c9             	test   %rcx,%rcx
1400ce72e:	74 60                	je     0x1400ce790
1400ce730:	4a 8d 3c 4e          	lea    (%rsi,%r9,2),%rdi
1400ce734:	f6 c3 01             	test   $0x1,%bl
1400ce737:	74 1b                	je     0x1400ce754
1400ce739:	4d 85 c0             	test   %r8,%r8
1400ce73c:	74 16                	je     0x1400ce754
1400ce73e:	49 89 36             	mov    %rsi,(%r14)
1400ce741:	48 2b d7             	sub    %rdi,%rdx
1400ce744:	49 8b 43 38          	mov    0x38(%r11),%rax
1400ce748:	48 d1 fa             	sar    $1,%rdx
1400ce74b:	48 89 38             	mov    %rdi,(%rax)
1400ce74e:	49 8b 43 50          	mov    0x50(%r11),%rax
1400ce752:	89 10                	mov    %edx,(%rax)
1400ce754:	f6 c3 02             	test   $0x2,%bl
1400ce757:	74 32                	je     0x1400ce78b
1400ce759:	48 85 c9             	test   %rcx,%rcx
1400ce75c:	74 2d                	je     0x1400ce78b
1400ce75e:	49 8b 43 58          	mov    0x58(%r11),%rax
1400ce762:	48 63 10             	movslq (%rax),%rdx
1400ce765:	49 8b 43 40          	mov    0x40(%r11),%rax
1400ce769:	48 8b 08             	mov    (%rax),%rcx
1400ce76c:	49 8b 43 20          	mov    0x20(%r11),%rax
1400ce770:	4c 8d 04 51          	lea    (%rcx,%rdx,2),%r8
1400ce774:	48 89 30             	mov    %rsi,(%rax)
1400ce777:	4c 2b c7             	sub    %rdi,%r8
1400ce77a:	49 8b 43 40          	mov    0x40(%r11),%rax
1400ce77e:	49 d1 f8             	sar    $1,%r8
1400ce781:	48 89 38             	mov    %rdi,(%rax)
1400ce784:	49 8b 43 58          	mov    0x58(%r11),%rax
1400ce788:	44 89 00             	mov    %r8d,(%rax)
1400ce78b:	4d 89 0a             	mov    %r9,(%r10)
1400ce78e:	eb 04                	jmp    0x1400ce794
1400ce790:	49 83 0a ff          	orq    $0xffffffffffffffff,(%r10)
1400ce794:	49 83 62 08 00       	andq   $0x0,0x8(%r10)
1400ce799:	33 c0                	xor    %eax,%eax
1400ce79b:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
1400ce7a0:	48 8b 74 24 10       	mov    0x10(%rsp),%rsi
1400ce7a5:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
1400ce7aa:	4c 8b 74 24 20       	mov    0x20(%rsp),%r14
1400ce7af:	49 89 42 10          	mov    %rax,0x10(%r10)
1400ce7b3:	49 8b c2             	mov    %r10,%rax
1400ce7b6:	c3                   	ret
1400ce7b7:	90                   	nop
1400ce7b8:	90                   	nop
1400ce7b9:	90                   	nop
1400ce7ba:	90                   	nop
1400ce7bb:	90                   	nop
1400ce7bc:	90                   	nop
1400ce7bd:	90                   	nop
1400ce7be:	90                   	nop
1400ce7bf:	90                   	nop
1400ce7c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400ce7c5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1400ce7ca:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
1400ce7cf:	8b 5c 24 28          	mov    0x28(%rsp),%ebx
1400ce7d3:	4c 8b d2             	mov    %rdx,%r10
1400ce7d6:	48 8d 51 70          	lea    0x70(%rcx),%rdx
1400ce7da:	49 8b f0             	mov    %r8,%rsi
1400ce7dd:	4c 8b d9             	mov    %rcx,%r11
1400ce7e0:	f6 c3 01             	test   $0x1,%bl
1400ce7e3:	74 09                	je     0x1400ce7ee
1400ce7e5:	f6 02 04             	testb  $0x4,(%rdx)
1400ce7e8:	74 04                	je     0x1400ce7ee
1400ce7ea:	b1 01                	mov    $0x1,%cl
1400ce7ec:	eb 02                	jmp    0x1400ce7f0
1400ce7ee:	32 c9                	xor    %cl,%cl
1400ce7f0:	f6 c3 02             	test   $0x2,%bl
1400ce7f3:	74 09                	je     0x1400ce7fe
1400ce7f5:	f6 02 02             	testb  $0x2,(%rdx)
1400ce7f8:	74 04                	je     0x1400ce7fe
1400ce7fa:	b0 01                	mov    $0x1,%al
1400ce7fc:	eb 02                	jmp    0x1400ce800
1400ce7fe:	32 c0                	xor    %al,%al
1400ce800:	84 c9                	test   %cl,%cl
1400ce802:	0f 85 30 01 00 00    	jne    0x1400ce938
1400ce808:	84 c0                	test   %al,%al
1400ce80a:	0f 85 28 01 00 00    	jne    0x1400ce938
1400ce810:	f6 02 02             	testb  $0x2,(%rdx)
1400ce813:	49 8b 43 38          	mov    0x38(%r11),%rax
1400ce817:	4c 8b 00             	mov    (%rax),%r8
1400ce81a:	74 04                	je     0x1400ce820
1400ce81c:	33 d2                	xor    %edx,%edx
1400ce81e:	eb 16                	jmp    0x1400ce836
1400ce820:	49 8b 43 40          	mov    0x40(%r11),%rax
1400ce824:	48 8b 10             	mov    (%rax),%rdx
1400ce827:	48 85 d2             	test   %rdx,%rdx
1400ce82a:	74 0a                	je     0x1400ce836
1400ce82c:	49 39 53 68          	cmp    %rdx,0x68(%r11)
1400ce830:	73 04                	jae    0x1400ce836
1400ce832:	49 89 53 68          	mov    %rdx,0x68(%r11)
1400ce836:	49 8b 43 18          	mov    0x18(%r11),%rax
1400ce83a:	49 8b 4b 68          	mov    0x68(%r11),%rcx
1400ce83e:	48 8b 38             	mov    (%rax),%rdi
1400ce841:	48 2b cf             	sub    %rdi,%rcx
1400ce844:	48 d1 f9             	sar    $1,%rcx
1400ce847:	45 85 c9             	test   %r9d,%r9d
1400ce84a:	74 5c                	je     0x1400ce8a8
1400ce84c:	41 83 e9 01          	sub    $0x1,%r9d
1400ce850:	74 0f                	je     0x1400ce861
1400ce852:	41 83 f9 01          	cmp    $0x1,%r9d
1400ce856:	0f 85 dc 00 00 00    	jne    0x1400ce938
1400ce85c:	48 8b c1             	mov    %rcx,%rax
1400ce85f:	eb 49                	jmp    0x1400ce8aa
1400ce861:	8b c3                	mov    %ebx,%eax
1400ce863:	83 e0 03             	and    $0x3,%eax
1400ce866:	3c 03                	cmp    $0x3,%al
1400ce868:	0f 84 ca 00 00 00    	je     0x1400ce938
1400ce86e:	f6 c3 01             	test   $0x1,%bl
1400ce871:	74 19                	je     0x1400ce88c
1400ce873:	4d 85 c0             	test   %r8,%r8
1400ce876:	75 09                	jne    0x1400ce881
1400ce878:	48 85 ff             	test   %rdi,%rdi
1400ce87b:	0f 85 b7 00 00 00    	jne    0x1400ce938
1400ce881:	49 8b c0             	mov    %r8,%rax
1400ce884:	48 2b c7             	sub    %rdi,%rax
1400ce887:	48 d1 f8             	sar    $1,%rax
1400ce88a:	eb 1e                	jmp    0x1400ce8aa
1400ce88c:	f6 c3 02             	test   $0x2,%bl
1400ce88f:	0f 84 a3 00 00 00    	je     0x1400ce938
1400ce895:	48 85 d2             	test   %rdx,%rdx
1400ce898:	75 09                	jne    0x1400ce8a3
1400ce89a:	48 85 ff             	test   %rdi,%rdi
1400ce89d:	0f 85 95 00 00 00    	jne    0x1400ce938
1400ce8a3:	48 8b c2             	mov    %rdx,%rax
1400ce8a6:	eb dc                	jmp    0x1400ce884
1400ce8a8:	33 c0                	xor    %eax,%eax
1400ce8aa:	4c 8d 0c 30          	lea    (%rax,%rsi,1),%r9
1400ce8ae:	4c 3b c9             	cmp    %rcx,%r9
1400ce8b1:	0f 87 81 00 00 00    	ja     0x1400ce938
1400ce8b7:	4d 85 c9             	test   %r9,%r9
1400ce8ba:	74 14                	je     0x1400ce8d0
1400ce8bc:	f6 c3 01             	test   $0x1,%bl
1400ce8bf:	74 05                	je     0x1400ce8c6
1400ce8c1:	4d 85 c0             	test   %r8,%r8
1400ce8c4:	74 72                	je     0x1400ce938
1400ce8c6:	f6 c3 02             	test   $0x2,%bl
1400ce8c9:	74 05                	je     0x1400ce8d0
1400ce8cb:	48 85 d2             	test   %rdx,%rdx
1400ce8ce:	74 68                	je     0x1400ce938
1400ce8d0:	4a 8d 34 4f          	lea    (%rdi,%r9,2),%rsi
1400ce8d4:	f6 c3 01             	test   $0x1,%bl
1400ce8d7:	74 23                	je     0x1400ce8fc
1400ce8d9:	4d 85 c0             	test   %r8,%r8
1400ce8dc:	74 1e                	je     0x1400ce8fc
1400ce8de:	49 8b 43 18          	mov    0x18(%r11),%rax
1400ce8e2:	49 8b 4b 68          	mov    0x68(%r11),%rcx
1400ce8e6:	48 2b ce             	sub    %rsi,%rcx
1400ce8e9:	48 d1 f9             	sar    $1,%rcx
1400ce8ec:	48 89 38             	mov    %rdi,(%rax)
1400ce8ef:	49 8b 43 38          	mov    0x38(%r11),%rax
1400ce8f3:	48 89 30             	mov    %rsi,(%rax)
1400ce8f6:	49 8b 43 50          	mov    0x50(%r11),%rax
1400ce8fa:	89 08                	mov    %ecx,(%rax)
1400ce8fc:	f6 c3 02             	test   $0x2,%bl
1400ce8ff:	74 32                	je     0x1400ce933
1400ce901:	48 85 d2             	test   %rdx,%rdx
1400ce904:	74 2d                	je     0x1400ce933
1400ce906:	49 8b 43 58          	mov    0x58(%r11),%rax
1400ce90a:	48 63 10             	movslq (%rax),%rdx
1400ce90d:	49 8b 43 40          	mov    0x40(%r11),%rax
1400ce911:	48 8b 08             	mov    (%rax),%rcx
1400ce914:	49 8b 43 20          	mov    0x20(%r11),%rax
1400ce918:	4c 8d 04 51          	lea    (%rcx,%rdx,2),%r8
1400ce91c:	48 89 38             	mov    %rdi,(%rax)
1400ce91f:	4c 2b c6             	sub    %rsi,%r8
1400ce922:	49 8b 43 40          	mov    0x40(%r11),%rax
1400ce926:	49 d1 f8             	sar    $1,%r8
1400ce929:	48 89 30             	mov    %rsi,(%rax)
1400ce92c:	49 8b 43 58          	mov    0x58(%r11),%rax
1400ce930:	44 89 00             	mov    %r8d,(%rax)
1400ce933:	4d 89 0a             	mov    %r9,(%r10)
1400ce936:	eb 04                	jmp    0x1400ce93c
1400ce938:	49 83 0a ff          	orq    $0xffffffffffffffff,(%r10)
1400ce93c:	49 83 62 08 00       	andq   $0x0,0x8(%r10)
1400ce941:	33 c0                	xor    %eax,%eax
1400ce943:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
1400ce948:	48 8b 74 24 10       	mov    0x10(%rsp),%rsi
1400ce94d:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
1400ce952:	49 89 42 10          	mov    %rax,0x10(%r10)
1400ce956:	49 8b c2             	mov    %r10,%rax
1400ce959:	c3                   	ret
1400ce95a:	90                   	nop
1400ce95b:	90                   	nop
1400ce95c:	90                   	nop
1400ce95d:	90                   	nop
1400ce95e:	90                   	nop
1400ce95f:	90                   	nop
1400ce960:	4c 8b 51 38          	mov    0x38(%rcx),%r10
1400ce964:	4c 8b c1             	mov    %rcx,%r8
1400ce967:	4d 8b 0a             	mov    (%r10),%r9
1400ce96a:	4d 85 c9             	test   %r9,%r9
1400ce96d:	74 57                	je     0x1400ce9c6
1400ce96f:	48 8b 51 50          	mov    0x50(%rcx),%rdx
1400ce973:	48 63 0a             	movslq (%rdx),%rcx
1400ce976:	49 8d 14 49          	lea    (%r9,%rcx,2),%rdx
1400ce97a:	4c 3b ca             	cmp    %rdx,%r9
1400ce97d:	73 05                	jae    0x1400ce984
1400ce97f:	41 0f b7 01          	movzwl (%r9),%eax
1400ce983:	c3                   	ret
1400ce984:	49 8b 40 40          	mov    0x40(%r8),%rax
1400ce988:	48 83 38 00          	cmpq   $0x0,(%rax)
1400ce98c:	74 38                	je     0x1400ce9c6
1400ce98e:	41 f6 40 70 04       	testb  $0x4,0x70(%r8)
1400ce993:	75 31                	jne    0x1400ce9c6
1400ce995:	49 8b 50 68          	mov    0x68(%r8),%rdx
1400ce999:	48 3b 10             	cmp    (%rax),%rdx
1400ce99c:	48 0f 42 10          	cmovb  (%rax),%rdx
1400ce9a0:	49 3b d1             	cmp    %r9,%rdx
1400ce9a3:	76 21                	jbe    0x1400ce9c6
1400ce9a5:	49 89 50 68          	mov    %rdx,0x68(%r8)
1400ce9a9:	49 8b 0a             	mov    (%r10),%rcx
1400ce9ac:	49 89 0a             	mov    %rcx,(%r10)
1400ce9af:	48 2b d1             	sub    %rcx,%rdx
1400ce9b2:	49 8b 40 50          	mov    0x50(%r8),%rax
1400ce9b6:	48 d1 fa             	sar    $1,%rdx
1400ce9b9:	89 10                	mov    %edx,(%rax)
1400ce9bb:	49 8b 40 38          	mov    0x38(%r8),%rax
1400ce9bf:	48 8b 00             	mov    (%rax),%rax
1400ce9c2:	0f b7 00             	movzwl (%rax),%eax
1400ce9c5:	c3                   	ret
1400ce9c6:	b8 ff ff 00 00       	mov    $0xffff,%eax
1400ce9cb:	c3                   	ret
1400ce9cc:	90                   	nop
1400ce9cd:	90                   	nop
1400ce9ce:	90                   	nop
1400ce9cf:	90                   	nop
1400ce9d0:	48 8b 41 38          	mov    0x38(%rcx),%rax
1400ce9d4:	45 33 d2             	xor    %r10d,%r10d
1400ce9d7:	41 b9 ff ff 00 00    	mov    $0xffff,%r9d
1400ce9dd:	4c 8b 00             	mov    (%rax),%r8
1400ce9e0:	4d 85 c0             	test   %r8,%r8
1400ce9e3:	74 43                	je     0x1400cea28
1400ce9e5:	48 8b 41 18          	mov    0x18(%rcx),%rax
1400ce9e9:	4c 3b 00             	cmp    (%rax),%r8
1400ce9ec:	76 3a                	jbe    0x1400cea28
1400ce9ee:	66 44 3b ca          	cmp    %dx,%r9w
1400ce9f2:	74 0d                	je     0x1400cea01
1400ce9f4:	66 41 3b 50 fe       	cmp    -0x2(%r8),%dx
1400ce9f9:	74 06                	je     0x1400cea01
1400ce9fb:	f6 41 70 02          	testb  $0x2,0x70(%rcx)
1400ce9ff:	75 27                	jne    0x1400cea28
1400cea01:	48 8b 41 50          	mov    0x50(%rcx),%rax
1400cea05:	ff 00                	incl   (%rax)
1400cea07:	48 8b 41 38          	mov    0x38(%rcx),%rax
1400cea0b:	48 83 00 fe          	addq   $0xfffffffffffffffe,(%rax)
1400cea0f:	66 44 3b ca          	cmp    %dx,%r9w
1400cea13:	74 0a                	je     0x1400cea1f
1400cea15:	48 8b 41 38          	mov    0x38(%rcx),%rax
1400cea19:	48 8b 08             	mov    (%rax),%rcx
1400cea1c:	66 89 11             	mov    %dx,(%rcx)
1400cea1f:	66 41 0f 44 d2       	cmove  %r10w,%dx
1400cea24:	0f b7 c2             	movzwl %dx,%eax
1400cea27:	c3                   	ret
1400cea28:	41 0f b7 c1          	movzwl %r9w,%eax
1400cea2c:	c3                   	ret
1400cea2d:	90                   	nop
1400cea2e:	90                   	nop
1400cea2f:	90                   	nop
1400cea30:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1400cea35:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1400cea3a:	56                   	push   %rsi
1400cea3b:	57                   	push   %rdi
1400cea3c:	41 54                	push   %r12
1400cea3e:	41 56                	push   %r14
1400cea40:	41 57                	push   %r15
1400cea42:	48 83 ec 20          	sub    $0x20,%rsp
1400cea46:	f6 41 70 02          	testb  $0x2,0x70(%rcx)
1400cea4a:	44 0f b7 f2          	movzwl %dx,%r14d
1400cea4e:	48 8b d9             	mov    %rcx,%rbx
1400cea51:	41 ba ff ff 00 00    	mov    $0xffff,%r10d
1400cea57:	0f 85 86 01 00 00    	jne    0x1400cebe3
1400cea5d:	33 ed                	xor    %ebp,%ebp
1400cea5f:	66 44 3b d2          	cmp    %dx,%r10w
1400cea63:	75 08                	jne    0x1400cea6d
1400cea65:	0f b7 c5             	movzwl %bp,%eax
1400cea68:	e9 7a 01 00 00       	jmp    0x1400cebe7
1400cea6d:	48 8b 41 40          	mov    0x40(%rcx),%rax
1400cea71:	48 8b 51 58          	mov    0x58(%rcx),%rdx
1400cea75:	4c 8b 00             	mov    (%rax),%r8
1400cea78:	4c 63 0a             	movslq (%rdx),%r9
1400cea7b:	4b 8d 0c 48          	lea    (%r8,%r9,2),%rcx
1400cea7f:	4d 85 c0             	test   %r8,%r8
1400cea82:	74 2e                	je     0x1400ceab2
1400cea84:	4c 3b c1             	cmp    %rcx,%r8
1400cea87:	73 29                	jae    0x1400ceab2
1400cea89:	41 8d 41 ff          	lea    -0x1(%r9),%eax
1400cea8d:	89 02                	mov    %eax,(%rdx)
1400cea8f:	48 8b 4b 40          	mov    0x40(%rbx),%rcx
1400cea93:	48 8b 11             	mov    (%rcx),%rdx
1400cea96:	48 8d 42 02          	lea    0x2(%rdx),%rax
1400cea9a:	48 89 01             	mov    %rax,(%rcx)
1400cea9d:	49 8d 40 02          	lea    0x2(%r8),%rax
1400ceaa1:	66 44 89 32          	mov    %r14w,(%rdx)
1400ceaa5:	48 89 43 68          	mov    %rax,0x68(%rbx)
1400ceaa9:	41 0f b7 c6          	movzwl %r14w,%eax
1400ceaad:	e9 35 01 00 00       	jmp    0x1400cebe7
1400ceab2:	48 8b 43 18          	mov    0x18(%rbx),%rax
1400ceab6:	48 8b fd             	mov    %rbp,%rdi
1400ceab9:	48 8b 30             	mov    (%rax),%rsi
1400ceabc:	4d 85 c0             	test   %r8,%r8
1400ceabf:	74 09                	je     0x1400ceaca
1400ceac1:	48 8b f9             	mov    %rcx,%rdi
1400ceac4:	48 2b fe             	sub    %rsi,%rdi
1400ceac7:	48 d1 ff             	sar    $1,%rdi
1400ceaca:	41 bf 20 00 00 00    	mov    $0x20,%r15d
1400cead0:	49 3b ff             	cmp    %r15,%rdi