14029b5ba:	48 89 6c 24 40       	mov    %rbp,0x40(%rsp)
14029b5bf:	8b 6e 08             	mov    0x8(%rsi),%ebp
14029b5c2:	83 ed 01             	sub    $0x1,%ebp
14029b5c5:	0f 88 66 02 00 00    	js     0x14029b831
14029b5cb:	4c 89 64 24 48       	mov    %r12,0x48(%rsp)
14029b5d0:	49 bc 00 00 00 00 00 	movabs $0x8000000000000000,%r12
14029b5d7:	00 00 80
14029b5da:	4c 89 7c 24 50       	mov    %r15,0x50(%rsp)
14029b5df:	44 8b fd             	mov    %ebp,%r15d
14029b5e2:	48 63 c5             	movslq %ebp,%rax
14029b5e5:	41 c1 e7 06          	shl    $0x6,%r15d
14029b5e9:	4c 8d 0c c5 00 00 00 	lea    0x0(,%rax,8),%r9
14029b5f0:	00
14029b5f1:	48 8b 06             	mov    (%rsi),%rax
14029b5f4:	49 83 3c 01 00       	cmpq   $0x0,(%r9,%rax,1)
14029b5f9:	0f 84 17 02 00 00    	je     0x14029b816
14029b5ff:	49 8b d4             	mov    %r12,%rdx
14029b602:	41 b8 3f 00 00 00    	mov    $0x3f,%r8d
14029b608:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14029b60f:	00
14029b610:	48 8b 06             	mov    (%rsi),%rax
14029b613:	47 8d 14 07          	lea    (%r15,%r8,1),%r10d
14029b617:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b61b:	74 10                	je     0x14029b62d
14029b61d:	3b df                	cmp    %edi,%ebx
14029b61f:	7d 0a                	jge    0x14029b62b
14029b621:	48 63 c3             	movslq %ebx,%rax
14029b624:	45 89 14 86          	mov    %r10d,(%r14,%rax,4)
14029b628:	48 8b 06             	mov    (%rsi),%rax
14029b62b:	ff c3                	inc    %ebx
14029b62d:	48 d1 ea             	shr    $1,%rdx
14029b630:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b634:	74 17                	je     0x14029b64d
14029b636:	3b df                	cmp    %edi,%ebx
14029b638:	7d 11                	jge    0x14029b64b
14029b63a:	48 63 c3             	movslq %ebx,%rax
14029b63d:	41 8d 48 ff          	lea    -0x1(%r8),%ecx
14029b641:	41 03 cf             	add    %r15d,%ecx
14029b644:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b648:	48 8b 06             	mov    (%rsi),%rax
14029b64b:	ff c3                	inc    %ebx
14029b64d:	48 d1 ea             	shr    $1,%rdx
14029b650:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b654:	74 17                	je     0x14029b66d
14029b656:	3b df                	cmp    %edi,%ebx
14029b658:	7d 11                	jge    0x14029b66b
14029b65a:	48 63 c3             	movslq %ebx,%rax
14029b65d:	41 8d 48 fe          	lea    -0x2(%r8),%ecx
14029b661:	41 03 cf             	add    %r15d,%ecx
14029b664:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b668:	48 8b 06             	mov    (%rsi),%rax
14029b66b:	ff c3                	inc    %ebx
14029b66d:	48 d1 ea             	shr    $1,%rdx
14029b670:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b674:	74 17                	je     0x14029b68d
14029b676:	3b df                	cmp    %edi,%ebx
14029b678:	7d 11                	jge    0x14029b68b
14029b67a:	48 63 c3             	movslq %ebx,%rax
14029b67d:	41 8d 48 fd          	lea    -0x3(%r8),%ecx
14029b681:	41 03 cf             	add    %r15d,%ecx
14029b684:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b688:	48 8b 06             	mov    (%rsi),%rax
14029b68b:	ff c3                	inc    %ebx
14029b68d:	48 d1 ea             	shr    $1,%rdx
14029b690:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b694:	74 14                	je     0x14029b6aa
14029b696:	3b df                	cmp    %edi,%ebx
14029b698:	7d 0e                	jge    0x14029b6a8
14029b69a:	48 63 c3             	movslq %ebx,%rax
14029b69d:	41 8d 4a fc          	lea    -0x4(%r10),%ecx
14029b6a1:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b6a5:	48 8b 06             	mov    (%rsi),%rax
14029b6a8:	ff c3                	inc    %ebx
14029b6aa:	48 d1 ea             	shr    $1,%rdx
14029b6ad:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b6b1:	74 21                	je     0x14029b6d4
14029b6b3:	3b df                	cmp    %edi,%ebx
14029b6b5:	7d 15                	jge    0x14029b6cc
14029b6b7:	48 63 c3             	movslq %ebx,%rax
14029b6ba:	41 8d 4a fb          	lea    -0x5(%r10),%ecx
14029b6be:	45 8b da             	mov    %r10d,%r11d
14029b6c1:	ff c3                	inc    %ebx
14029b6c3:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b6c7:	48 8b 06             	mov    (%rsi),%rax
14029b6ca:	eb 0c                	jmp    0x14029b6d8
14029b6cc:	47 8d 1c 07          	lea    (%r15,%r8,1),%r11d
14029b6d0:	ff c3                	inc    %ebx
14029b6d2:	eb 04                	jmp    0x14029b6d8
14029b6d4:	47 8d 1c 07          	lea    (%r15,%r8,1),%r11d
14029b6d8:	48 d1 ea             	shr    $1,%rdx
14029b6db:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b6df:	74 14                	je     0x14029b6f5
14029b6e1:	3b df                	cmp    %edi,%ebx
14029b6e3:	7d 0e                	jge    0x14029b6f3
14029b6e5:	48 63 c3             	movslq %ebx,%rax
14029b6e8:	41 8d 4a fa          	lea    -0x6(%r10),%ecx
14029b6ec:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b6f0:	48 8b 06             	mov    (%rsi),%rax
14029b6f3:	ff c3                	inc    %ebx
14029b6f5:	48 d1 ea             	shr    $1,%rdx
14029b6f8:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b6fc:	74 17                	je     0x14029b715
14029b6fe:	3b df                	cmp    %edi,%ebx
14029b700:	7d 11                	jge    0x14029b713
14029b702:	48 63 c3             	movslq %ebx,%rax
14029b705:	41 8d 48 f9          	lea    -0x7(%r8),%ecx
14029b709:	41 03 cf             	add    %r15d,%ecx
14029b70c:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b710:	48 8b 06             	mov    (%rsi),%rax
14029b713:	ff c3                	inc    %ebx
14029b715:	48 d1 ea             	shr    $1,%rdx
14029b718:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b71c:	74 17                	je     0x14029b735
14029b71e:	3b df                	cmp    %edi,%ebx
14029b720:	7d 11                	jge    0x14029b733
14029b722:	48 63 c3             	movslq %ebx,%rax
14029b725:	41 8d 48 f8          	lea    -0x8(%r8),%ecx
14029b729:	41 03 cf             	add    %r15d,%ecx
14029b72c:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b730:	48 8b 06             	mov    (%rsi),%rax
14029b733:	ff c3                	inc    %ebx
14029b735:	48 d1 ea             	shr    $1,%rdx
14029b738:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b73c:	74 14                	je     0x14029b752
14029b73e:	3b df                	cmp    %edi,%ebx
14029b740:	7d 0e                	jge    0x14029b750
14029b742:	48 63 c3             	movslq %ebx,%rax
14029b745:	41 8d 4b f7          	lea    -0x9(%r11),%ecx
14029b749:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b74d:	48 8b 06             	mov    (%rsi),%rax
14029b750:	ff c3                	inc    %ebx
14029b752:	48 d1 ea             	shr    $1,%rdx
14029b755:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b759:	74 14                	je     0x14029b76f
14029b75b:	3b df                	cmp    %edi,%ebx
14029b75d:	7d 0e                	jge    0x14029b76d
14029b75f:	48 63 c3             	movslq %ebx,%rax
14029b762:	41 8d 4b f6          	lea    -0xa(%r11),%ecx
14029b766:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b76a:	48 8b 06             	mov    (%rsi),%rax
14029b76d:	ff c3                	inc    %ebx
14029b76f:	48 d1 ea             	shr    $1,%rdx
14029b772:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b776:	74 14                	je     0x14029b78c
14029b778:	3b df                	cmp    %edi,%ebx
14029b77a:	7d 0e                	jge    0x14029b78a
14029b77c:	48 63 c3             	movslq %ebx,%rax
14029b77f:	41 8d 4b f5          	lea    -0xb(%r11),%ecx
14029b783:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b787:	48 8b 06             	mov    (%rsi),%rax
14029b78a:	ff c3                	inc    %ebx
14029b78c:	48 d1 ea             	shr    $1,%rdx
14029b78f:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b793:	74 17                	je     0x14029b7ac
14029b795:	3b df                	cmp    %edi,%ebx
14029b797:	7d 11                	jge    0x14029b7aa
14029b799:	48 63 c3             	movslq %ebx,%rax
14029b79c:	41 8d 48 f4          	lea    -0xc(%r8),%ecx
14029b7a0:	41 03 cf             	add    %r15d,%ecx
14029b7a3:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b7a7:	48 8b 06             	mov    (%rsi),%rax
14029b7aa:	ff c3                	inc    %ebx
14029b7ac:	48 d1 ea             	shr    $1,%rdx
14029b7af:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b7b3:	74 17                	je     0x14029b7cc
14029b7b5:	3b df                	cmp    %edi,%ebx
14029b7b7:	7d 11                	jge    0x14029b7ca
14029b7b9:	48 63 c3             	movslq %ebx,%rax
14029b7bc:	41 8d 48 f3          	lea    -0xd(%r8),%ecx
14029b7c0:	41 03 cf             	add    %r15d,%ecx
14029b7c3:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b7c7:	48 8b 06             	mov    (%rsi),%rax
14029b7ca:	ff c3                	inc    %ebx
14029b7cc:	48 d1 ea             	shr    $1,%rdx
14029b7cf:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b7d3:	74 17                	je     0x14029b7ec
14029b7d5:	3b df                	cmp    %edi,%ebx
14029b7d7:	7d 11                	jge    0x14029b7ea
14029b7d9:	48 63 c3             	movslq %ebx,%rax
14029b7dc:	41 8d 48 f2          	lea    -0xe(%r8),%ecx
14029b7e0:	41 03 cf             	add    %r15d,%ecx
14029b7e3:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b7e7:	48 8b 06             	mov    (%rsi),%rax
14029b7ea:	ff c3                	inc    %ebx
14029b7ec:	48 d1 ea             	shr    $1,%rdx
14029b7ef:	4a 85 14 08          	test   %rdx,(%rax,%r9,1)
14029b7f3:	74 14                	je     0x14029b809
14029b7f5:	3b df                	cmp    %edi,%ebx
14029b7f7:	7d 0e                	jge    0x14029b807
14029b7f9:	48 63 c3             	movslq %ebx,%rax
14029b7fc:	41 8d 48 f1          	lea    -0xf(%r8),%ecx
14029b800:	41 03 cf             	add    %r15d,%ecx
14029b803:	41 89 0c 86          	mov    %ecx,(%r14,%rax,4)
14029b807:	ff c3                	inc    %ebx
14029b809:	48 d1 ea             	shr    $1,%rdx
14029b80c:	41 83 e8 10          	sub    $0x10,%r8d
14029b810:	0f 89 fa fd ff ff    	jns    0x14029b610
14029b816:	41 83 ef 40          	sub    $0x40,%r15d
14029b81a:	49 83 e9 08          	sub    $0x8,%r9
14029b81e:	83 ed 01             	sub    $0x1,%ebp
14029b821:	0f 89 ca fd ff ff    	jns    0x14029b5f1
14029b827:	4c 8b 7c 24 50       	mov    0x50(%rsp),%r15
14029b82c:	4c 8b 64 24 48       	mov    0x48(%rsp),%r12
14029b831:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
14029b836:	3b df                	cmp    %edi,%ebx
14029b838:	7d 0d                	jge    0x14029b847
14029b83a:	48 63 c3             	movslq %ebx,%rax
14029b83d:	ff c3                	inc    %ebx
14029b83f:	41 c7 04 86 ff ff ff 	movl   $0xffffffff,(%r14,%rax,4)
14029b846:	ff
14029b847:	8b c3                	mov    %ebx,%eax
14029b849:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
14029b84e:	48 83 c4 20          	add    $0x20,%rsp
14029b852:	41 5e                	pop    %r14
14029b854:	5f                   	pop    %rdi
14029b855:	5e                   	pop    %rsi
14029b856:	c3                   	ret
14029b857:	cc                   	int3
14029b858:	cc                   	int3
14029b859:	cc                   	int3
14029b85a:	cc                   	int3
14029b85b:	cc                   	int3
14029b85c:	cc                   	int3
14029b85d:	cc                   	int3
14029b85e:	cc                   	int3
14029b85f:	cc                   	int3
14029b860:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14029b865:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14029b86a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14029b86f:	57                   	push   %rdi
14029b870:	41 54                	push   %r12
14029b872:	41 55                	push   %r13
14029b874:	41 56                	push   %r14
14029b876:	41 57                	push   %r15
14029b878:	b8 20 00 00 00       	mov    $0x20,%eax
14029b87d:	e8 ae 52 01 00       	call   0x1402b0b30
14029b882:	48 2b e0             	sub    %rax,%rsp
14029b885:	48 8b d9             	mov    %rcx,%rbx
14029b888:	8d 68 de             	lea    -0x22(%rax),%ebp
14029b88b:	33 f6                	xor    %esi,%esi
14029b88d:	49 8b c8             	mov    %r8,%rcx
14029b890:	44 8b fe             	mov    %esi,%r15d
14029b893:	4d 8b e8             	mov    %r8,%r13
14029b896:	4c 8b e2             	mov    %rdx,%r12
14029b899:	e8 d2 f7 eb ff       	call   0x14015b070
14029b89e:	49 8b cd             	mov    %r13,%rcx
14029b8a1:	e8 fa f4 eb ff       	call   0x14015ada0
14029b8a6:	49 8b cd             	mov    %r13,%rcx
14029b8a9:	48 8b f8             	mov    %rax,%rdi
14029b8ac:	e8 ef f4 eb ff       	call   0x14015ada0
14029b8b1:	4c 8b f0             	mov    %rax,%r14
14029b8b4:	48 85 c0             	test   %rax,%rax
14029b8b7:	0f 84 f6 01 00 00    	je     0x14029bab3
14029b8bd:	48 8b d3             	mov    %rbx,%rdx
14029b8c0:	48 8b cf             	mov    %rdi,%rcx
14029b8c3:	e8 08 53 e5 ff       	call   0x1400f0bd0
14029b8c8:	48 85 c0             	test   %rax,%rax
14029b8cb:	41 0f 94 c7          	sete   %r15b
14029b8cf:	48 85 c0             	test   %rax,%rax
14029b8d2:	0f 84 db 01 00 00    	je     0x14029bab3
14029b8d8:	49 8b d4             	mov    %r12,%rdx
14029b8db:	49 8b ce             	mov    %r14,%rcx
14029b8de:	e8 ed 52 e5 ff       	call   0x1400f0bd0
14029b8e3:	48 85 c0             	test   %rax,%rax
14029b8e6:	44 8b fe             	mov    %esi,%r15d
14029b8e9:	41 0f 94 c7          	sete   %r15b
14029b8ed:	48 85 c0             	test   %rax,%rax
14029b8f0:	0f 84 bd 01 00 00    	je     0x14029bab3
14029b8f6:	49 8b ce             	mov    %r14,%rcx
14029b8f9:	e8 92 55 e5 ff       	call   0x1400f0e90
14029b8fe:	48 8b cf             	mov    %rdi,%rcx
14029b901:	85 c0                	test   %eax,%eax
14029b903:	74 0f                	je     0x14029b914
14029b905:	8d 55 03             	lea    0x3(%rbp),%edx
14029b908:	e8 83 4c e5 ff       	call   0x1400f0590
14029b90d:	8b e8                	mov    %eax,%ebp
14029b90f:	e9 9f 01 00 00       	jmp    0x14029bab3
14029b914:	e8 07 55 e5 ff       	call   0x1400f0e20
14029b919:	85 c0                	test   %eax,%eax
14029b91b:	75 10                	jne    0x14029b92d
14029b91d:	49 8b ce             	mov    %r14,%rcx
14029b920:	e8 fb 54 e5 ff       	call   0x1400f0e20
14029b925:	85 c0                	test   %eax,%eax
14029b927:	0f 84 84 01 00 00    	je     0x14029bab1
14029b92d:	33 d2                	xor    %edx,%edx
14029b92f:	49 8b ce             	mov    %r14,%rcx
14029b932:	8b de                	mov    %esi,%ebx
14029b934:	e8 a7 54 e5 ff       	call   0x1400f0de0
14029b939:	85 c0                	test   %eax,%eax
14029b93b:	75 13                	jne    0x14029b950
14029b93d:	0f 1f 00             	nopl   (%rax)
14029b940:	ff c3                	inc    %ebx
14029b942:	49 8b ce             	mov    %r14,%rcx
14029b945:	8b d3                	mov    %ebx,%edx
14029b947:	e8 94 54 e5 ff       	call   0x1400f0de0
14029b94c:	85 c0                	test   %eax,%eax
14029b94e:	74 f0                	je     0x14029b940
14029b950:	44 8b c3             	mov    %ebx,%r8d
14029b953:	49 8b d6             	mov    %r14,%rdx
14029b956:	49 8b ce             	mov    %r14,%rcx
14029b959:	e8 72 a1 e9 ff       	call   0x140135ad0
14029b95e:	85 c0                	test   %eax,%eax
14029b960:	44 8b fe             	mov    %esi,%r15d
14029b963:	41 0f 94 c7          	sete   %r15b
14029b967:	85 c0                	test   %eax,%eax
14029b969:	0f 84 44 01 00 00    	je     0x14029bab3
14029b96f:	4c 8d 25 ea bf 0f 00 	lea    0xfbfea(%rip),%r12        # 0x140397960
14029b976:	f6 c3 01             	test   $0x1,%bl
14029b979:	74 20                	je     0x14029b99b
14029b97b:	39 77 08             	cmp    %esi,0x8(%rdi)
14029b97e:	75 0c                	jne    0x14029b98c
14029b980:	48 8b ee             	mov    %rsi,%rbp
14029b983:	83 e5 07             	and    $0x7,%ebp
14029b986:	41 8b 2c ac          	mov    (%r12,%rbp,4),%ebp
14029b98a:	eb 14                	jmp    0x14029b9a0
14029b98c:	48 8b 07             	mov    (%rdi),%rax
14029b98f:	48 8b 28             	mov    (%rax),%rbp
14029b992:	83 e5 07             	and    $0x7,%ebp
14029b995:	41 8b 2c ac          	mov    (%r12,%rbp,4),%ebp
14029b999:	eb 05                	jmp    0x14029b9a0
14029b99b:	bd 01 00 00 00       	mov    $0x1,%ebp
14029b9a0:	41 39 76 10          	cmp    %esi,0x10(%r14)
14029b9a4:	74 0b                	je     0x14029b9b1
14029b9a6:	41 89 76 10          	mov    %esi,0x10(%r14)
14029b9aa:	39 77 10             	cmp    %esi,0x10(%rdi)
14029b9ad:	74 02                	je     0x14029b9b1
14029b9af:	f7 dd                	neg    %ebp
14029b9b1:	48 8b cf             	mov    %rdi,%rcx
14029b9b4:	e8 d7 54 e5 ff       	call   0x1400f0e90
14029b9b9:	85 c0                	test   %eax,%eax
14029b9bb:	0f 85 e3 00 00 00    	jne    0x14029baa4
14029b9c1:	33 d2                	xor    %edx,%edx
14029b9c3:	48 8b cf             	mov    %rdi,%rcx
14029b9c6:	8b de                	mov    %esi,%ebx
14029b9c8:	e8 13 54 e5 ff       	call   0x1400f0de0
14029b9cd:	85 c0                	test   %eax,%eax
14029b9cf:	75 10                	jne    0x14029b9e1
14029b9d1:	ff c3                	inc    %ebx
14029b9d3:	48 8b cf             	mov    %rdi,%rcx
14029b9d6:	8b d3                	mov    %ebx,%edx
14029b9d8:	e8 03 54 e5 ff       	call   0x1400f0de0
14029b9dd:	85 c0                	test   %eax,%eax
14029b9df:	74 f0                	je     0x14029b9d1
14029b9e1:	44 8b c3             	mov    %ebx,%r8d
14029b9e4:	48 8b d7             	mov    %rdi,%rdx
14029b9e7:	48 8b cf             	mov    %rdi,%rcx
14029b9ea:	e8 e1 a0 e9 ff       	call   0x140135ad0
14029b9ef:	85 c0                	test   %eax,%eax
14029b9f1:	44 8b fe             	mov    %esi,%r15d
14029b9f4:	41 0f 94 c7          	sete   %r15b