1402895b4:	49 8b d7             	mov    %r15,%rdx
1402895b7:	49 8b ca             	mov    %r10,%rcx
1402895ba:	e8 e1 02 00 00       	call   0x1402898a0
1402895bf:	44 8b cf             	mov    %edi,%r9d
1402895c2:	85 c0                	test   %eax,%eax
1402895c4:	78 4b                	js     0x140289611
1402895c6:	3b d8                	cmp    %eax,%ebx
1402895c8:	7f 47                	jg     0x140289611
1402895ca:	2b c3                	sub    %ebx,%eax
1402895cc:	03 f0                	add    %eax,%esi
1402895ce:	41 8b c1             	mov    %r9d,%eax
1402895d1:	39 7c 24 20          	cmp    %edi,0x20(%rsp)
1402895d5:	75 0d                	jne    0x1402895e4
1402895d7:	85 c0                	test   %eax,%eax
1402895d9:	75 04                	jne    0x1402895df
1402895db:	85 db                	test   %ebx,%ebx
1402895dd:	75 05                	jne    0x1402895e4
1402895df:	bf 01 00 00 00       	mov    $0x1,%edi
1402895e4:	48 8b 6c 24 78       	mov    0x78(%rsp),%rbp
1402895e9:	48 8b 84 24 80 00 00 	mov    0x80(%rsp),%rax
1402895f0:	00
1402895f1:	89 30                	mov    %esi,(%rax)
1402895f3:	48 8b 44 24 70       	mov    0x70(%rsp),%rax
1402895f8:	44 89 08             	mov    %r9d,(%rax)
1402895fb:	8b c7                	mov    %edi,%eax
1402895fd:	48 83 c4 30          	add    $0x30,%rsp
140289601:	41 5f                	pop    %r15
140289603:	41 5e                	pop    %r14
140289605:	41 5d                	pop    %r13
140289607:	41 5c                	pop    %r12
140289609:	5f                   	pop    %rdi
14028960a:	5e                   	pop    %rsi
14028960b:	5b                   	pop    %rbx
14028960c:	c3                   	ret
14028960d:	85 d2                	test   %edx,%edx
14028960f:	74 ce                	je     0x1402895df
140289611:	bf ff ff ff ff       	mov    $0xffffffff,%edi
140289616:	eb cc                	jmp    0x1402895e4
140289618:	cc                   	int3
140289619:	cc                   	int3
14028961a:	cc                   	int3
14028961b:	cc                   	int3
14028961c:	cc                   	int3
14028961d:	cc                   	int3
14028961e:	cc                   	int3
14028961f:	cc                   	int3
140289620:	b8 28 00 00 00       	mov    $0x28,%eax
140289625:	e8 b6 0f 07 00       	call   0x1402fa5e0
14028962a:	48 2b e0             	sub    %rax,%rsp
14028962d:	44 8d 40 5e          	lea    0x5e(%rax),%r8d
140289631:	48 8d 15 b8 10 10 00 	lea    0x1010b8(%rip),%rdx        # 0x14038a6f0
140289638:	48 83 c4 28          	add    $0x28,%rsp
14028963c:	e9 cf fc f9 ff       	jmp    0x140229310
140289641:	cc                   	int3
140289642:	cc                   	int3
140289643:	cc                   	int3
140289644:	cc                   	int3
140289645:	cc                   	int3
140289646:	cc                   	int3
140289647:	cc                   	int3
140289648:	cc                   	int3
140289649:	cc                   	int3
14028964a:	cc                   	int3
14028964b:	cc                   	int3
14028964c:	cc                   	int3
14028964d:	cc                   	int3
14028964e:	cc                   	int3
14028964f:	cc                   	int3
140289650:	b8 28 00 00 00       	mov    $0x28,%eax
140289655:	e8 86 0f 07 00       	call   0x1402fa5e0
14028965a:	48 2b e0             	sub    %rax,%rsp
14028965d:	44 8d 40 59          	lea    0x59(%rax),%r8d
140289661:	48 8d 15 88 10 10 00 	lea    0x101088(%rip),%rdx        # 0x14038a6f0
140289668:	8d 48 38             	lea    0x38(%rax),%ecx
14028966b:	48 83 c4 28          	add    $0x28,%rsp
14028966f:	e9 cc ff f9 ff       	jmp    0x140229640
140289674:	cc                   	int3
140289675:	cc                   	int3
140289676:	cc                   	int3
140289677:	cc                   	int3
140289678:	cc                   	int3
140289679:	cc                   	int3
14028967a:	cc                   	int3
14028967b:	cc                   	int3
14028967c:	cc                   	int3
14028967d:	cc                   	int3
14028967e:	cc                   	int3
14028967f:	cc                   	int3
140289680:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140289685:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14028968a:	57                   	push   %rdi
14028968b:	b8 20 00 00 00       	mov    $0x20,%eax
140289690:	e8 4b 0f 07 00       	call   0x1402fa5e0
140289695:	48 2b e0             	sub    %rax,%rsp
140289698:	44 8b 09             	mov    (%rcx),%r9d
14028969b:	49 8b f0             	mov    %r8,%rsi
14028969e:	48 8b fa             	mov    %rdx,%rdi
1402896a1:	48 8b d9             	mov    %rcx,%rbx
1402896a4:	45 85 c9             	test   %r9d,%r9d
1402896a7:	74 35                	je     0x1402896de
1402896a9:	4c 8d 41 08          	lea    0x8(%rcx),%r8
1402896ad:	e8 5e 03 00 00       	call   0x140289a10
1402896b2:	f6 43 5c 01          	testb  $0x1,0x5c(%rbx)
1402896b6:	75 08                	jne    0x1402896c0
1402896b8:	8b c8                	mov    %eax,%ecx
1402896ba:	ff c0                	inc    %eax
1402896bc:	c6 04 39 0a          	movb   $0xa,(%rcx,%rdi,1)
1402896c0:	8b c8                	mov    %eax,%ecx
1402896c2:	c6 04 39 00          	movb   $0x0,(%rcx,%rdi,1)
1402896c6:	c7 03 00 00 00 00    	movl   $0x0,(%rbx)
1402896cc:	89 06                	mov    %eax,(%rsi)
1402896ce:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1402896d3:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1402896d8:	48 83 c4 20          	add    $0x20,%rsp
1402896dc:	5f                   	pop    %rdi
1402896dd:	c3                   	ret
1402896de:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1402896e3:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1402896e8:	41 c7 00 00 00 00 00 	movl   $0x0,(%r8)
1402896ef:	48 83 c4 20          	add    $0x20,%rsp
1402896f3:	5f                   	pop    %rdi
1402896f4:	c3                   	ret
1402896f5:	cc                   	int3
1402896f6:	cc                   	int3
1402896f7:	cc                   	int3
1402896f8:	cc                   	int3
1402896f9:	cc                   	int3
1402896fa:	cc                   	int3
1402896fb:	cc                   	int3
1402896fc:	cc                   	int3
1402896fd:	cc                   	int3
1402896fe:	cc                   	int3
1402896ff:	cc                   	int3
140289700:	33 c0                	xor    %eax,%eax
140289702:	c7 41 04 30 00 00 00 	movl   $0x30,0x4(%rcx)
140289709:	89 01                	mov    %eax,(%rcx)
14028970b:	48 89 41 58          	mov    %rax,0x58(%rcx)
14028970f:	c3                   	ret
140289710:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140289715:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14028971a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14028971f:	57                   	push   %rdi
140289720:	41 54                	push   %r12
140289722:	41 56                	push   %r14
140289724:	b8 20 00 00 00       	mov    $0x20,%eax
140289729:	e8 b2 0e 07 00       	call   0x1402fa5e0
14028972e:	48 2b e0             	sub    %rax,%rsp
140289731:	48 63 6c 24 60       	movslq 0x60(%rsp),%rbp
140289736:	33 ff                	xor    %edi,%edi
140289738:	41 89 38             	mov    %edi,(%r8)
14028973b:	4d 8b f1             	mov    %r9,%r14
14028973e:	4d 8b e0             	mov    %r8,%r12
140289741:	48 8b da             	mov    %rdx,%rbx
140289744:	48 8b f1             	mov    %rcx,%rsi
140289747:	85 ed                	test   %ebp,%ebp
140289749:	7f 07                	jg     0x140289752
14028974b:	33 c0                	xor    %eax,%eax
14028974d:	e9 29 01 00 00       	jmp    0x14028987b
140289752:	83 79 04 50          	cmpl   $0x50,0x4(%rcx)
140289756:	4c 89 7c 24 40       	mov    %r15,0x40(%rsp)
14028975b:	7e 19                	jle    0x140289776
14028975d:	41 b8 ab 00 00 00    	mov    $0xab,%r8d
140289763:	48 8d 15 86 0f 10 00 	lea    0x100f86(%rip),%rdx        # 0x14038a6f0
14028976a:	48 8d 0d 97 0f 10 00 	lea    0x100f97(%rip),%rcx        # 0x14038a708
140289771:	e8 9a 7b fd ff       	call   0x140261310
140289776:	48 63 06             	movslq (%rsi),%rax
140289779:	44 8b 7e 04          	mov    0x4(%rsi),%r15d
14028977d:	44 2b f8             	sub    %eax,%r15d
140289780:	44 3b fd             	cmp    %ebp,%r15d
140289783:	7e 19                	jle    0x14028979e
140289785:	48 8d 4e 08          	lea    0x8(%rsi),%rcx
140289789:	4c 8b c5             	mov    %rbp,%r8
14028978c:	48 03 c8             	add    %rax,%rcx
14028978f:	49 8b d6             	mov    %r14,%rdx
140289792:	e8 91 32 07 00       	call   0x1402fca28
140289797:	01 2e                	add    %ebp,(%rsi)
140289799:	e9 d3 00 00 00       	jmp    0x140289871
14028979e:	85 c0                	test   %eax,%eax
1402897a0:	74 51                	je     0x1402897f3
1402897a2:	49 63 ff             	movslq %r15d,%rdi
1402897a5:	48 8d 4e 08          	lea    0x8(%rsi),%rcx
1402897a9:	48 03 c8             	add    %rax,%rcx
1402897ac:	4c 8b c7             	mov    %rdi,%r8
1402897af:	49 8b d6             	mov    %r14,%rdx
1402897b2:	e8 71 32 07 00       	call   0x1402fca28
1402897b7:	44 8b 4e 04          	mov    0x4(%rsi),%r9d
1402897bb:	41 2b ef             	sub    %r15d,%ebp
1402897be:	4c 8d 7e 08          	lea    0x8(%rsi),%r15
1402897c2:	48 8b d3             	mov    %rbx,%rdx
1402897c5:	4d 8b c7             	mov    %r15,%r8
1402897c8:	48 8b ce             	mov    %rsi,%rcx
1402897cb:	4c 03 f7             	add    %rdi,%r14
1402897ce:	e8 3d 02 00 00       	call   0x140289a10
1402897d3:	48 63 f8             	movslq %eax,%rdi
1402897d6:	48 03 df             	add    %rdi,%rbx
1402897d9:	c7 06 00 00 00 00    	movl   $0x0,(%rsi)
1402897df:	f6 46 5c 01          	testb  $0x1,0x5c(%rsi)
1402897e3:	75 09                	jne    0x1402897ee
1402897e5:	c6 03 0a             	movb   $0xa,(%rbx)
1402897e8:	48 ff c3             	inc    %rbx
1402897eb:	48 ff c7             	inc    %rdi
1402897ee:	c6 03 00             	movb   $0x0,(%rbx)
1402897f1:	eb 04                	jmp    0x1402897f7
1402897f3:	4c 8d 7e 08          	lea    0x8(%rsi),%r15
1402897f7:	8b 46 04             	mov    0x4(%rsi),%eax
1402897fa:	3b e8                	cmp    %eax,%ebp
1402897fc:	7c 46                	jl     0x140289844
1402897fe:	66 90                	xchg   %ax,%ax
140289800:	48 81 ff ff ff ff 7f 	cmp    $0x7fffffff,%rdi
140289807:	77 44                	ja     0x14028984d
140289809:	44 8b c8             	mov    %eax,%r9d
14028980c:	4d 8b c6             	mov    %r14,%r8
14028980f:	48 8b d3             	mov    %rbx,%rdx
140289812:	48 8b ce             	mov    %rsi,%rcx
140289815:	e8 f6 01 00 00       	call   0x140289a10
14028981a:	48 63 56 04          	movslq 0x4(%rsi),%rdx
14028981e:	48 98                	cltq
140289820:	4c 03 f2             	add    %rdx,%r14
140289823:	2b ea                	sub    %edx,%ebp
140289825:	48 03 d8             	add    %rax,%rbx
140289828:	48 03 f8             	add    %rax,%rdi
14028982b:	f6 46 5c 01          	testb  $0x1,0x5c(%rsi)
14028982f:	75 09                	jne    0x14028983a
140289831:	c6 03 0a             	movb   $0xa,(%rbx)
140289834:	48 ff c3             	inc    %rbx
140289837:	48 ff c7             	inc    %rdi
14028983a:	c6 03 00             	movb   $0x0,(%rbx)
14028983d:	8b 46 04             	mov    0x4(%rsi),%eax
140289840:	3b e8                	cmp    %eax,%ebp
140289842:	7d bc                	jge    0x140289800
140289844:	48 81 ff ff ff ff 7f 	cmp    $0x7fffffff,%rdi
14028984b:	76 0c                	jbe    0x140289859
14028984d:	41 c7 04 24 00 00 00 	movl   $0x0,(%r12)
140289854:	00
140289855:	33 c0                	xor    %eax,%eax
140289857:	eb 1d                	jmp    0x140289876
140289859:	85 ed                	test   %ebp,%ebp
14028985b:	74 0e                	je     0x14028986b
14028985d:	4c 63 c5             	movslq %ebp,%r8
140289860:	49 8b d6             	mov    %r14,%rdx
140289863:	49 8b cf             	mov    %r15,%rcx
140289866:	e8 bd 31 07 00       	call   0x1402fca28
14028986b:	89 2e                	mov    %ebp,(%rsi)
14028986d:	41 89 3c 24          	mov    %edi,(%r12)
140289871:	b8 01 00 00 00       	mov    $0x1,%eax
140289876:	4c 8b 7c 24 40       	mov    0x40(%rsp),%r15
14028987b:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140289880:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
140289885:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
14028988a:	48 83 c4 20          	add    $0x20,%rsp
14028988e:	41 5e                	pop    %r14
140289890:	41 5c                	pop    %r12
140289892:	5f                   	pop    %rdi
140289893:	c3                   	ret
140289894:	cc                   	int3
140289895:	cc                   	int3
140289896:	cc                   	int3
140289897:	cc                   	int3
140289898:	cc                   	int3
140289899:	cc                   	int3
14028989a:	cc                   	int3
14028989b:	cc                   	int3
14028989c:	cc                   	int3
14028989d:	cc                   	int3
14028989e:	cc                   	int3
14028989f:	cc                   	int3
1402898a0:	40 56                	rex push %rsi
1402898a2:	41 57                	push   %r15
1402898a4:	45 33 ff             	xor    %r15d,%r15d
1402898a7:	48 8b f2             	mov    %rdx,%rsi
1402898aa:	48 85 c9             	test   %rcx,%rcx
1402898ad:	74 0d                	je     0x1402898bc
1402898af:	f6 41 5c 02          	testb  $0x2,0x5c(%rcx)
1402898b3:	4c 8d 15 b6 0d 10 00 	lea    0x100db6(%rip),%r10        # 0x14038a670
1402898ba:	75 07                	jne    0x1402898c3
1402898bc:	4c 8d 15 2d 0d 10 00 	lea    0x100d2d(%rip),%r10        # 0x14038a5f0
1402898c3:	45 85 c9             	test   %r9d,%r9d
1402898c6:	7e 1a                	jle    0x1402898e2
1402898c8:	41 0f b6 00          	movzbl (%r8),%eax
1402898cc:	84 c0                	test   %al,%al
1402898ce:	78 12                	js     0x1402898e2
1402898d0:	42 80 3c 10 e0       	cmpb   $0xe0,(%rax,%r10,1)
1402898d5:	75 0b                	jne    0x1402898e2
1402898d7:	49 ff c0             	inc    %r8
1402898da:	41 ff c9             	dec    %r9d
1402898dd:	45 85 c9             	test   %r9d,%r9d
1402898e0:	7f e6                	jg     0x1402898c8
1402898e2:	49 63 d1             	movslq %r9d,%rdx
1402898e5:	48 83 fa 03          	cmp    $0x3,%rdx
1402898e9:	7e 28                	jle    0x140289913
1402898eb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1402898f0:	41 0f b6 44 10 ff    	movzbl -0x1(%r8,%rdx,1),%eax
1402898f6:	84 c0                	test   %al,%al
1402898f8:	78 19                	js     0x140289913
1402898fa:	42 0f b6 0c 10       	movzbl (%rax,%r10,1),%ecx
1402898ff:	80 c9 13             	or     $0x13,%cl
140289902:	80 f9 f3             	cmp    $0xf3,%cl
140289905:	75 0c                	jne    0x140289913
140289907:	41 ff c9             	dec    %r9d
14028990a:	48 ff ca             	dec    %rdx
14028990d:	48 83 fa 03          	cmp    $0x3,%rdx
140289911:	7f dd                	jg     0x1402898f0
140289913:	41 8b c1             	mov    %r9d,%eax
140289916:	25 03 00 00 80       	and    $0x80000003,%eax
14028991b:	7d 07                	jge    0x140289924
14028991d:	ff c8                	dec    %eax
14028991f:	83 c8 fc             	or     $0xfffffffc,%eax
140289922:	ff c0                	inc    %eax
140289924:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140289929:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
14028992e:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
140289933:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140289938:	85 c0                	test   %eax,%eax
14028993a:	0f 85 b3 00 00 00    	jne    0x1402899f3
140289940:	45 8b f7             	mov    %r15d,%r14d
140289943:	45 85 c9             	test   %r9d,%r9d
140289946:	0f 8e a2 00 00 00    	jle    0x1402899ee
14028994c:	0f 1f 40 00          	nopl   0x0(%rax)
140289950:	41 0f b6 00          	movzbl (%r8),%eax
140289954:	41 b3 ff             	mov    $0xff,%r11b
140289957:	84 c0                	test   %al,%al
140289959:	78 05                	js     0x140289960
14028995b:	46 0f b6 1c 10       	movzbl (%rax,%r10,1),%r11d
140289960:	41 0f b6 40 01       	movzbl 0x1(%r8),%eax
140289965:	b1 ff                	mov    $0xff,%cl
140289967:	41 0f b6 d3          	movzbl %r11b,%edx
14028996b:	84 c0                	test   %al,%al
14028996d:	78 05                	js     0x140289974
14028996f:	42 0f b6 0c 10       	movzbl (%rax,%r10,1),%ecx
140289974:	41 0f b6 40 02       	movzbl 0x2(%r8),%eax
140289979:	0f b6 e9             	movzbl %cl,%ebp
14028997c:	84 c0                	test   %al,%al
14028997e:	79 04                	jns    0x140289984
140289980:	b0 ff                	mov    $0xff,%al
140289982:	eb 05                	jmp    0x140289989
140289984:	42 0f b6 04 10       	movzbl (%rax,%r10,1),%eax
140289989:	0f b6 f8             	movzbl %al,%edi
14028998c:	b3 ff                	mov    $0xff,%bl
14028998e:	41 0f b6 40 03       	movzbl 0x3(%r8),%eax
140289993:	84 c0                	test   %al,%al
140289995:	78 05                	js     0x14028999c
140289997:	42 0f b6 1c 10       	movzbl (%rax,%r10,1),%ebx
14028999c:	0f b6 c9             	movzbl %cl,%ecx
14028999f:	49 83 c0 04          	add    $0x4,%r8
1402899a3:	41 0f b6 c3          	movzbl %r11b,%eax
1402899a7:	0b c8                	or     %eax,%ecx
1402899a9:	84 c9                	test   %cl,%cl
1402899ab:	78 46                	js     0x1402899f3
1402899ad:	0f b6 cb             	movzbl %bl,%ecx
1402899b0:	8b c1                	mov    %ecx,%eax