14059a582:	e8 89 60 c3 ff       	call   0x1401d0610
14059a587:	ba 01 00 00 00       	mov    $0x1,%edx
14059a58c:	eb 08                	jmp    0x14059a596
14059a58e:	b8 ff 00 00 00       	mov    $0xff,%eax
14059a593:	0f 4d c2             	cmovge %edx,%eax
14059a596:	84 c0                	test   %al,%al
14059a598:	4c 0f 48 f7          	cmovs  %rdi,%r14
14059a59c:	4c 8b ef             	mov    %rdi,%r13
14059a59f:	48 8b 3f             	mov    (%rdi),%rdi
14059a5a2:	80 7f 19 00          	cmpb   $0x0,0x19(%rdi)
14059a5a6:	74 98                	je     0x14059a540
14059a5a8:	41 80 7e 19 00       	cmpb   $0x0,0x19(%r14)
14059a5ad:	75 03                	jne    0x14059a5b2
14059a5af:	49 8b 36             	mov    (%r14),%rsi
14059a5b2:	80 7e 19 00          	cmpb   $0x0,0x19(%rsi)
14059a5b6:	75 3f                	jne    0x14059a5f7
14059a5b8:	8b 7b 10             	mov    0x10(%rbx),%edi
14059a5bb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14059a5c0:	3b 7e 20             	cmp    0x20(%rsi),%edi
14059a5c3:	75 14                	jne    0x14059a5d9
14059a5c5:	48 8d 56 28          	lea    0x28(%rsi),%rdx
14059a5c9:	48 8d 4b 18          	lea    0x18(%rbx),%rcx
14059a5cd:	e8 3e 60 c3 ff       	call   0x1401d0610
14059a5d2:	ba 01 00 00 00       	mov    $0x1,%edx
14059a5d7:	eb 08                	jmp    0x14059a5e1
14059a5d9:	b8 ff 00 00 00       	mov    $0xff,%eax
14059a5de:	0f 4d c2             	cmovge %edx,%eax
14059a5e1:	84 c0                	test   %al,%al
14059a5e3:	79 08                	jns    0x14059a5ed
14059a5e5:	4c 8b f6             	mov    %rsi,%r14
14059a5e8:	48 8b 36             	mov    (%rsi),%rsi
14059a5eb:	eb 04                	jmp    0x14059a5f1
14059a5ed:	48 8b 76 10          	mov    0x10(%rsi),%rsi
14059a5f1:	80 7e 19 00          	cmpb   $0x0,0x19(%rsi)
14059a5f5:	74 c9                	je     0x14059a5c0
14059a5f7:	4c 89 6c 24 30       	mov    %r13,0x30(%rsp)
14059a5fc:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
14059a601:	0f 28 44 24 30       	movaps 0x30(%rsp),%xmm0
14059a606:	66 0f 7f 44 24 40    	movdqa %xmm0,0x40(%rsp)
14059a60c:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
14059a611:	49 8d 4c 24 58       	lea    0x58(%r12),%rcx
14059a616:	e8 a5 3b 00 00       	call   0x14059e1c0
14059a61b:	48 8b 1b             	mov    (%rbx),%rbx
14059a61e:	48 8b 7c 24 20       	mov    0x20(%rsp),%rdi
14059a623:	48 3b df             	cmp    %rdi,%rbx
14059a626:	ba 01 00 00 00       	mov    $0x1,%edx
14059a62b:	0f 85 ef fe ff ff    	jne    0x14059a520
14059a631:	45 33 f6             	xor    %r14d,%r14d
14059a634:	48 8b 47 08          	mov    0x8(%rdi),%rax
14059a638:	4c 89 30             	mov    %r14,(%rax)
14059a63b:	48 8b 3f             	mov    (%rdi),%rdi
14059a63e:	48 85 ff             	test   %rdi,%rdi
14059a641:	74 21                	je     0x14059a664
14059a643:	48 8b 1f             	mov    (%rdi),%rbx
14059a646:	48 8d 4f 10          	lea    0x10(%rdi),%rcx
14059a64a:	e8 d1 70 c8 ff       	call   0x140221720
14059a64f:	ba 38 00 00 00       	mov    $0x38,%edx
14059a654:	48 8b cf             	mov    %rdi,%rcx
14059a657:	e8 e8 0a 88 00       	call   0x140e1b144
14059a65c:	48 8b fb             	mov    %rbx,%rdi
14059a65f:	48 85 db             	test   %rbx,%rbx
14059a662:	75 df                	jne    0x14059a643
14059a664:	ba 38 00 00 00       	mov    $0x38,%edx
14059a669:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
14059a66e:	e8 d1 0a 88 00       	call   0x140e1b144
14059a673:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
14059a678:	49 8b 5b 30          	mov    0x30(%r11),%rbx
14059a67c:	49 8b 6b 38          	mov    0x38(%r11),%rbp
14059a680:	49 8b 73 40          	mov    0x40(%r11),%rsi
14059a684:	49 8b e3             	mov    %r11,%rsp
14059a687:	41 5f                	pop    %r15
14059a689:	41 5e                	pop    %r14
14059a68b:	41 5d                	pop    %r13
14059a68d:	41 5c                	pop    %r12
14059a68f:	5f                   	pop    %rdi
14059a690:	c3                   	ret
14059a691:	48 8d 0d 10 85 a1 00 	lea    0xa18510(%rip),%rcx        # 0x140fb2ba8
14059a698:	e8 17 0d 86 00       	call   0x140dfb3b4
14059a69d:	cc                   	int3
14059a69e:	e8 01 fb 88 00       	call   0x140e2a1a4
14059a6a3:	cc                   	int3
14059a6a4:	cc                   	int3
14059a6a5:	cc                   	int3
14059a6a6:	cc                   	int3
14059a6a7:	cc                   	int3
14059a6a8:	cc                   	int3
14059a6a9:	cc                   	int3
14059a6aa:	cc                   	int3
14059a6ab:	cc                   	int3
14059a6ac:	cc                   	int3
14059a6ad:	cc                   	int3
14059a6ae:	cc                   	int3
14059a6af:	cc                   	int3
14059a6b0:	41 56                	push   %r14
14059a6b2:	41 57                	push   %r15
14059a6b4:	48 83 ec 28          	sub    $0x28,%rsp
14059a6b8:	48 8b 81 88 00 00 00 	mov    0x88(%rcx),%rax
14059a6bf:	4d 8b f0             	mov    %r8,%r14
14059a6c2:	4c 8b 81 80 00 00 00 	mov    0x80(%rcx),%r8
14059a6c9:	44 8b 4a 20          	mov    0x20(%rdx),%r9d
14059a6cd:	49 2b c0             	sub    %r8,%rax
14059a6d0:	48 c1 f8 03          	sar    $0x3,%rax
14059a6d4:	4c 3b c8             	cmp    %rax,%r9
14059a6d7:	0f 83 e1 00 00 00    	jae    0x14059a7be
14059a6dd:	4f 8b 3c c8          	mov    (%r8,%r9,8),%r15
14059a6e1:	4d 85 ff             	test   %r15,%r15
14059a6e4:	0f 84 d4 00 00 00    	je     0x14059a7be
14059a6ea:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
14059a6ef:	48 89 7c 24 58       	mov    %rdi,0x58(%rsp)
14059a6f4:	49 8b 7f 48          	mov    0x48(%r15),%rdi
14059a6f8:	48 8b 1f             	mov    (%rdi),%rbx
14059a6fb:	48 3b df             	cmp    %rdi,%rbx
14059a6fe:	0f 84 a5 00 00 00    	je     0x14059a7a9
14059a704:	48 89 6c 24 48       	mov    %rbp,0x48(%rsp)
14059a709:	49 8b 6e 18          	mov    0x18(%r14),%rbp
14059a70d:	48 89 74 24 50       	mov    %rsi,0x50(%rsp)
14059a712:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
14059a717:	4d 8b 66 10          	mov    0x10(%r14),%r12
14059a71b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14059a720:	48 8b 73 10          	mov    0x10(%rbx),%rsi
14059a724:	49 8b d6             	mov    %r14,%rdx
14059a727:	48 8d 4e 08          	lea    0x8(%rsi),%rcx
14059a72b:	48 83 fd 0f          	cmp    $0xf,%rbp
14059a72f:	76 03                	jbe    0x14059a734
14059a731:	49 8b 16             	mov    (%r14),%rdx
14059a734:	48 83 79 18 0f       	cmpq   $0xf,0x18(%rcx)
14059a739:	4c 8b 41 10          	mov    0x10(%rcx),%r8
14059a73d:	76 03                	jbe    0x14059a742
14059a73f:	48 8b 09             	mov    (%rcx),%rcx
14059a742:	4d 3b c4             	cmp    %r12,%r8
14059a745:	75 09                	jne    0x14059a750
14059a747:	e8 04 53 94 00       	call   0x140edfa50
14059a74c:	85 c0                	test   %eax,%eax
14059a74e:	74 0a                	je     0x14059a75a
14059a750:	48 8b 1b             	mov    (%rbx),%rbx
14059a753:	48 3b df             	cmp    %rdi,%rbx
14059a756:	75 c8                	jne    0x14059a720
14059a758:	eb 40                	jmp    0x14059a79a
14059a75a:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
14059a75e:	48 8b 03             	mov    (%rbx),%rax
14059a761:	48 89 01             	mov    %rax,(%rcx)
14059a764:	48 8b cb             	mov    %rbx,%rcx
14059a767:	48 8b 13             	mov    (%rbx),%rdx
14059a76a:	48 8b 43 08          	mov    0x8(%rbx),%rax
14059a76e:	48 89 42 08          	mov    %rax,0x8(%rdx)
14059a772:	ba 18 00 00 00       	mov    $0x18,%edx
14059a777:	49 ff 4f 50          	decq   0x50(%r15)
14059a77b:	e8 c4 09 88 00       	call   0x140e1b144
14059a780:	48 85 f6             	test   %rsi,%rsi
14059a783:	74 15                	je     0x14059a79a
14059a785:	48 8b ce             	mov    %rsi,%rcx
14059a788:	e8 33 c5 ff ff       	call   0x140596cc0
14059a78d:	ba 08 01 00 00       	mov    $0x108,%edx
14059a792:	48 8b ce             	mov    %rsi,%rcx
14059a795:	e8 aa 09 88 00       	call   0x140e1b144
14059a79a:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14059a79f:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
14059a7a4:	4c 8b 64 24 20       	mov    0x20(%rsp),%r12
14059a7a9:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
14059a7ae:	b0 01                	mov    $0x1,%al
14059a7b0:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14059a7b5:	48 83 c4 28          	add    $0x28,%rsp
14059a7b9:	41 5f                	pop    %r15
14059a7bb:	41 5e                	pop    %r14
14059a7bd:	c3                   	ret
14059a7be:	32 c0                	xor    %al,%al
14059a7c0:	48 83 c4 28          	add    $0x28,%rsp
14059a7c4:	41 5f                	pop    %r15
14059a7c6:	41 5e                	pop    %r14
14059a7c8:	c3                   	ret
14059a7c9:	cc                   	int3
14059a7ca:	cc                   	int3
14059a7cb:	cc                   	int3
14059a7cc:	cc                   	int3
14059a7cd:	cc                   	int3
14059a7ce:	cc                   	int3
14059a7cf:	cc                   	int3
14059a7d0:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14059a7d5:	57                   	push   %rdi
14059a7d6:	48 83 ec 50          	sub    $0x50,%rsp
14059a7da:	48 8b 05 1f e7 e1 00 	mov    0xe1e71f(%rip),%rax        # 0x1413b8f00
14059a7e1:	48 33 c4             	xor    %rsp,%rax
14059a7e4:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
14059a7e9:	48 8b d9             	mov    %rcx,%rbx
14059a7ec:	48 8b fa             	mov    %rdx,%rdi
14059a7ef:	49 8b 48 20          	mov    0x20(%r8),%rcx
14059a7f3:	e8 98 6f 18 00       	call   0x140721790
14059a7f8:	0f 57 c0             	xorps  %xmm0,%xmm0
14059a7fb:	0f 57 c9             	xorps  %xmm1,%xmm1
14059a7fe:	0f 11 44 24 20       	movups %xmm0,0x20(%rsp)
14059a803:	49 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%r8
14059a80a:	f3 0f 7f 4c 24 30    	movdqu %xmm1,0x30(%rsp)
14059a810:	49 ff c0             	inc    %r8
14059a813:	42 80 3c 00 00       	cmpb   $0x0,(%rax,%r8,1)
14059a818:	75 f6                	jne    0x14059a810
14059a81a:	48 8b d0             	mov    %rax,%rdx
14059a81d:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14059a822:	e8 d9 c5 bf ff       	call   0x140196e00
14059a827:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
14059a82c:	48 8b d7             	mov    %rdi,%rdx
14059a82f:	48 8b cb             	mov    %rbx,%rcx
14059a832:	e8 79 fe ff ff       	call   0x14059a6b0
14059a837:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx
14059a83c:	0f b6 d8             	movzbl %al,%ebx
14059a83f:	48 83 fa 0f          	cmp    $0xf,%rdx
14059a843:	76 2e                	jbe    0x14059a873
14059a845:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
14059a84a:	48 ff c2             	inc    %rdx
14059a84d:	48 8b c1             	mov    %rcx,%rax
14059a850:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14059a857:	72 15                	jb     0x14059a86e
14059a859:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14059a85d:	48 83 c2 27          	add    $0x27,%rdx
14059a861:	48 2b c1             	sub    %rcx,%rax
14059a864:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
14059a868:	48 83 f8 1f          	cmp    $0x1f,%rax
14059a86c:	77 20                	ja     0x14059a88e
14059a86e:	e8 d1 08 88 00       	call   0x140e1b144
14059a873:	0f b6 c3             	movzbl %bl,%eax
14059a876:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
14059a87b:	48 33 cc             	xor    %rsp,%rcx
14059a87e:	e8 7d 0c 88 00       	call   0x140e1b500
14059a883:	48 8b 5c 24 78       	mov    0x78(%rsp),%rbx
14059a888:	48 83 c4 50          	add    $0x50,%rsp
14059a88c:	5f                   	pop    %rdi
14059a88d:	c3                   	ret
14059a88e:	e8 11 f9 88 00       	call   0x140e2a1a4
14059a893:	cc                   	int3
14059a894:	cc                   	int3
14059a895:	cc                   	int3
14059a896:	cc                   	int3
14059a897:	cc                   	int3
14059a898:	cc                   	int3
14059a899:	cc                   	int3
14059a89a:	cc                   	int3
14059a89b:	cc                   	int3
14059a89c:	cc                   	int3
14059a89d:	cc                   	int3
14059a89e:	cc                   	int3
14059a89f:	cc                   	int3
14059a8a0:	4c 8b dc             	mov    %rsp,%r11
14059a8a3:	55                   	push   %rbp
14059a8a4:	41 56                	push   %r14
14059a8a6:	41 57                	push   %r15
14059a8a8:	48 83 ec 60          	sub    $0x60,%rsp
14059a8ac:	48 8b 05 4d e6 e1 00 	mov    0xe1e64d(%rip),%rax        # 0x1413b8f00
14059a8b3:	48 33 c4             	xor    %rsp,%rax
14059a8b6:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
14059a8bb:	4c 8b 81 80 00 00 00 	mov    0x80(%rcx),%r8
14059a8c2:	4c 8b f9             	mov    %rcx,%r15
14059a8c5:	48 8b 81 88 00 00 00 	mov    0x88(%rcx),%rax
14059a8cc:	49 2b c0             	sub    %r8,%rax
14059a8cf:	44 8b ca             	mov    %edx,%r9d
14059a8d2:	48 c1 f8 03          	sar    $0x3,%rax
14059a8d6:	4c 3b c8             	cmp    %rax,%r9
14059a8d9:	0f 83 d7 01 00 00    	jae    0x14059aab6
14059a8df:	4e 8d 34 cd 00 00 00 	lea    0x0(,%r9,8),%r14
14059a8e6:	00
14059a8e7:	4b 8b 2c 06          	mov    (%r14,%r8,1),%rbp
14059a8eb:	48 85 ed             	test   %rbp,%rbp
14059a8ee:	0f 84 c2 01 00 00    	je     0x14059aab6
14059a8f4:	49 89 5b 18          	mov    %rbx,0x18(%r11)
14059a8f8:	49 89 73 20          	mov    %rsi,0x20(%r11)
14059a8fc:	49 89 7b e0          	mov    %rdi,-0x20(%r11)
14059a900:	48 8b 7d 58          	mov    0x58(%rbp),%rdi
14059a904:	4d 89 63 d8          	mov    %r12,-0x28(%r11)
14059a908:	45 33 e4             	xor    %r12d,%r12d
14059a90b:	48 8b 1f             	mov    (%rdi),%rbx
14059a90e:	48 3b df             	cmp    %rdi,%rbx
14059a911:	0f 84 e5 00 00 00    	je     0x14059a9fc
14059a917:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14059a91e:	00 00
14059a920:	48 8b 7b 48          	mov    0x48(%rbx),%rdi
14059a924:	48 8b 4f 28          	mov    0x28(%rdi),%rcx
14059a928:	e8 b3 9a ff ff       	call   0x1405943e0
14059a92d:	48 8b 4f 28          	mov    0x28(%rdi),%rcx
14059a931:	48 85 c9             	test   %rcx,%rcx
14059a934:	74 11                	je     0x14059a947
14059a936:	48 8b 01             	mov    (%rcx),%rax
14059a939:	ba 01 00 00 00       	mov    $0x1,%edx
14059a93e:	48 8b 00             	mov    (%rax),%rax
14059a941:	ff 15 d9 90 9e 00    	call   *0x9e90d9(%rip)        # 0x140f83a20
14059a947:	48 8b 57 58          	mov    0x58(%rdi),%rdx
14059a94b:	48 83 fa 0f          	cmp    $0xf,%rdx
14059a94f:	76 31                	jbe    0x14059a982
14059a951:	48 8b 4f 40          	mov    0x40(%rdi),%rcx
14059a955:	48 ff c2             	inc    %rdx
14059a958:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14059a95f:	72 1c                	jb     0x14059a97d
14059a961:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
14059a965:	48 83 c2 27          	add    $0x27,%rdx
14059a969:	49 2b c8             	sub    %r8,%rcx
14059a96c:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14059a970:	48 83 f8 1f          	cmp    $0x1f,%rax
14059a974:	0f 87 40 01 00 00    	ja     0x14059aaba
14059a97a:	49 8b c8             	mov    %r8,%rcx
14059a97d:	e8 c2 07 88 00       	call   0x140e1b144
14059a982:	ba 60 00 00 00       	mov    $0x60,%edx
14059a987:	4c 89 67 50          	mov    %r12,0x50(%rdi)
14059a98b:	48 8b cf             	mov    %rdi,%rcx
14059a98e:	48 c7 47 58 0f 00 00 	movq   $0xf,0x58(%rdi)
14059a995:	00
14059a996:	44 88 67 40          	mov    %r12b,0x40(%rdi)
14059a99a:	e8 a5 07 88 00       	call   0x140e1b144
14059a99f:	48 8b 43 10          	mov    0x10(%rbx),%rax
14059a9a3:	44 38 60 19          	cmp    %r12b,0x19(%rax)
14059a9a7:	74 22                	je     0x14059a9cb
14059a9a9:	48 8b 43 08          	mov    0x8(%rbx),%rax
14059a9ad:	44 38 60 19          	cmp    %r12b,0x19(%rax)
14059a9b1:	75 13                	jne    0x14059a9c6
14059a9b3:	48 3b 58 10          	cmp    0x10(%rax),%rbx
14059a9b7:	75 0d                	jne    0x14059a9c6
14059a9b9:	48 8b d8             	mov    %rax,%rbx
14059a9bc:	48 8b 40 08          	mov    0x8(%rax),%rax
14059a9c0:	44 38 60 19          	cmp    %r12b,0x19(%rax)
14059a9c4:	74 ed                	je     0x14059a9b3
14059a9c6:	48 8b d8             	mov    %rax,%rbx
14059a9c9:	eb 24                	jmp    0x14059a9ef
14059a9cb:	48 8b 08             	mov    (%rax),%rcx
14059a9ce:	48 8b d8             	mov    %rax,%rbx
14059a9d1:	44 38 61 19          	cmp    %r12b,0x19(%rcx)
14059a9d5:	75 18                	jne    0x14059a9ef
14059a9d7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14059a9de:	00 00
14059a9e0:	48 8b 01             	mov    (%rcx),%rax
14059a9e3:	48 8b d9             	mov    %rcx,%rbx
14059a9e6:	48 8b c8             	mov    %rax,%rcx
14059a9e9:	44 38 60 19          	cmp    %r12b,0x19(%rax)
14059a9ed:	74 f1                	je     0x14059a9e0
14059a9ef:	48 8b 7d 58          	mov    0x58(%rbp),%rdi
14059a9f3:	48 3b df             	cmp    %rdi,%rbx
14059a9f6:	0f 85 24 ff ff ff    	jne    0x14059a920
14059a9fc:	4c 8b 47 08          	mov    0x8(%rdi),%r8
14059aa00:	48 8d 55 58          	lea    0x58(%rbp),%rdx
14059aa04:	48 8d 4d 58          	lea    0x58(%rbp),%rcx
14059aa08:	e8 33 6b df ff       	call   0x140391540
14059aa0d:	48 89 7f 08          	mov    %rdi,0x8(%rdi)
14059aa11:	48 8d 55 10          	lea    0x10(%rbp),%rdx
14059aa15:	48 89 3f             	mov    %rdi,(%rdi)
14059aa18:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14059aa1d:	48 89 7f 10          	mov    %rdi,0x10(%rdi)
14059aa21:	4c 89 65 60          	mov    %r12,0x60(%rbp)
14059aa25:	e8 16 e0 c0 ff       	call   0x1401a8a40
14059aa2a:	48 8b cd             	mov    %rbp,%rcx
14059aa2d:	e8 ce c6 ff ff       	call   0x140597100
14059aa32:	ba 70 00 00 00       	mov    $0x70,%edx
14059aa37:	48 8b cd             	mov    %rbp,%rcx
14059aa3a:	e8 05 07 88 00       	call   0x140e1b144
14059aa3f:	49 8b 87 80 00 00 00 	mov    0x80(%r15),%rax
14059aa46:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx