1401dc592:	78 04                	js     0x1401dc598
1401dc594:	0f b6 04 0a          	movzbl (%rdx,%rcx,1),%eax
1401dc598:	0f b6 c8             	movzbl %al,%ecx
1401dc59b:	81 f9 ff 00 00 00    	cmp    $0xff,%ecx
1401dc5a1:	0f 84 10 01 00 00    	je     0x1401dc6b7
1401dc5a7:	80 fa 3d             	cmp    $0x3d,%dl
1401dc5aa:	75 04                	jne    0x1401dc5b0
1401dc5ac:	ff c3                	inc    %ebx
1401dc5ae:	eb 14                	jmp    0x1401dc5c4
1401dc5b0:	85 db                	test   %ebx,%ebx
1401dc5b2:	7e 10                	jle    0x1401dc5c4
1401dc5b4:	8b c1                	mov    %ecx,%eax
1401dc5b6:	83 c8 13             	or     $0x13,%eax
1401dc5b9:	3d f3 00 00 00       	cmp    $0xf3,%eax
1401dc5be:	0f 85 f3 00 00 00    	jne    0x1401dc6b7
1401dc5c4:	83 fb 02             	cmp    $0x2,%ebx
1401dc5c7:	0f 8f ea 00 00 00    	jg     0x1401dc6b7
1401dc5cd:	81 f9 f2 00 00 00    	cmp    $0xf2,%ecx
1401dc5d3:	74 6d                	je     0x1401dc642
1401dc5d5:	83 c9 13             	or     $0x13,%ecx
1401dc5d8:	81 f9 f3 00 00 00    	cmp    $0xf3,%ecx
1401dc5de:	74 15                	je     0x1401dc5f5
1401dc5e0:	41 83 f9 40          	cmp    $0x40,%r9d
1401dc5e4:	0f 8d cd 00 00 00    	jge    0x1401dc6b7
1401dc5ea:	41 ff c1             	inc    %r9d
1401dc5ed:	43 88 54 28 08       	mov    %dl,0x8(%r8,%r13,1)
1401dc5f2:	49 ff c0             	inc    %r8
1401dc5f5:	41 83 f9 40          	cmp    $0x40,%r9d
1401dc5f9:	75 2e                	jne    0x1401dc629
1401dc5fb:	4d 8d 45 08          	lea    0x8(%r13),%r8
1401dc5ff:	49 8b d7             	mov    %r15,%rdx
1401dc602:	49 8b cd             	mov    %r13,%rcx
1401dc605:	e8 36 03 00 00       	call   0x1401dc940
1401dc60a:	44 8b cf             	mov    %edi,%r9d
1401dc60d:	4c 8b c7             	mov    %rdi,%r8
1401dc610:	85 c0                	test   %eax,%eax
1401dc612:	0f 88 9f 00 00 00    	js     0x1401dc6b7
1401dc618:	3b d8                	cmp    %eax,%ebx
1401dc61a:	0f 8f 97 00 00 00    	jg     0x1401dc6b7
1401dc620:	2b c3                	sub    %ebx,%eax
1401dc622:	03 f0                	add    %eax,%esi
1401dc624:	48 98                	cltq
1401dc626:	4c 03 f8             	add    %rax,%r15
1401dc629:	ff c5                	inc    %ebp
1401dc62b:	41 3b ec             	cmp    %r12d,%ebp
1401dc62e:	7d 1d                	jge    0x1401dc64d
1401dc630:	48 8b 84 24 88 00 00 	mov    0x88(%rsp),%rax
1401dc637:	00
1401dc638:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
1401dc63d:	e9 3e ff ff ff       	jmp    0x1401dc580
1401dc642:	ba 01 00 00 00       	mov    $0x1,%edx
1401dc647:	89 54 24 70          	mov    %edx,0x70(%rsp)
1401dc64b:	eb 02                	jmp    0x1401dc64f
1401dc64d:	8b d7                	mov    %edi,%edx
1401dc64f:	45 85 c9             	test   %r9d,%r9d
1401dc652:	7e 24                	jle    0x1401dc678
1401dc654:	41 f6 c1 03          	test   $0x3,%r9b
1401dc658:	75 59                	jne    0x1401dc6b3
1401dc65a:	4d 8d 45 08          	lea    0x8(%r13),%r8
1401dc65e:	49 8b d7             	mov    %r15,%rdx
1401dc661:	49 8b cd             	mov    %r13,%rcx
1401dc664:	e8 d7 02 00 00       	call   0x1401dc940
1401dc669:	44 8b cf             	mov    %edi,%r9d
1401dc66c:	85 c0                	test   %eax,%eax
1401dc66e:	78 47                	js     0x1401dc6b7
1401dc670:	3b d8                	cmp    %eax,%ebx
1401dc672:	7f 43                	jg     0x1401dc6b7
1401dc674:	2b c3                	sub    %ebx,%eax
1401dc676:	03 f0                	add    %eax,%esi
1401dc678:	41 8b c1             	mov    %r9d,%eax
1401dc67b:	39 7c 24 70          	cmp    %edi,0x70(%rsp)
1401dc67f:	75 0d                	jne    0x1401dc68e
1401dc681:	85 c0                	test   %eax,%eax
1401dc683:	75 04                	jne    0x1401dc689
1401dc685:	85 db                	test   %ebx,%ebx
1401dc687:	75 05                	jne    0x1401dc68e
1401dc689:	bf 01 00 00 00       	mov    $0x1,%edi
1401dc68e:	48 8b 6c 24 78       	mov    0x78(%rsp),%rbp
1401dc693:	48 8b 84 24 80 00 00 	mov    0x80(%rsp),%rax
1401dc69a:	00
1401dc69b:	89 30                	mov    %esi,(%rax)
1401dc69d:	8b c7                	mov    %edi,%eax
1401dc69f:	45 89 4d 00          	mov    %r9d,0x0(%r13)
1401dc6a3:	48 83 c4 30          	add    $0x30,%rsp
1401dc6a7:	41 5f                	pop    %r15
1401dc6a9:	41 5e                	pop    %r14
1401dc6ab:	41 5d                	pop    %r13
1401dc6ad:	41 5c                	pop    %r12
1401dc6af:	5f                   	pop    %rdi
1401dc6b0:	5e                   	pop    %rsi
1401dc6b1:	5b                   	pop    %rbx
1401dc6b2:	c3                   	ret
1401dc6b3:	85 d2                	test   %edx,%edx
1401dc6b5:	74 d2                	je     0x1401dc689
1401dc6b7:	bf ff ff ff ff       	mov    $0xffffffff,%edi
1401dc6bc:	eb d0                	jmp    0x1401dc68e
1401dc6be:	cc                   	int3
1401dc6bf:	cc                   	int3
1401dc6c0:	b8 28 00 00 00       	mov    $0x28,%eax
1401dc6c5:	e8 66 44 0d 00       	call   0x1402b0b30
1401dc6ca:	48 2b e0             	sub    %rax,%rsp
1401dc6cd:	44 8d 40 5e          	lea    0x5e(%rax),%r8d
1401dc6d1:	48 8d 15 c8 92 15 00 	lea    0x1592c8(%rip),%rdx        # 0x1403359a0
1401dc6d8:	48 83 c4 28          	add    $0x28,%rsp
1401dc6dc:	e9 df f6 f0 ff       	jmp    0x1400ebdc0
1401dc6e1:	cc                   	int3
1401dc6e2:	cc                   	int3
1401dc6e3:	cc                   	int3
1401dc6e4:	cc                   	int3
1401dc6e5:	cc                   	int3
1401dc6e6:	cc                   	int3
1401dc6e7:	cc                   	int3
1401dc6e8:	cc                   	int3
1401dc6e9:	cc                   	int3
1401dc6ea:	cc                   	int3
1401dc6eb:	cc                   	int3
1401dc6ec:	cc                   	int3
1401dc6ed:	cc                   	int3
1401dc6ee:	cc                   	int3
1401dc6ef:	cc                   	int3
1401dc6f0:	b8 28 00 00 00       	mov    $0x28,%eax
1401dc6f5:	e8 36 44 0d 00       	call   0x1402b0b30
1401dc6fa:	48 2b e0             	sub    %rax,%rsp
1401dc6fd:	44 8d 40 59          	lea    0x59(%rax),%r8d
1401dc701:	48 8d 15 98 92 15 00 	lea    0x159298(%rip),%rdx        # 0x1403359a0
1401dc708:	8d 48 38             	lea    0x38(%rax),%ecx
1401dc70b:	48 83 c4 28          	add    $0x28,%rsp
1401dc70f:	e9 ac f9 f0 ff       	jmp    0x1400ec0c0
1401dc714:	cc                   	int3
1401dc715:	cc                   	int3
1401dc716:	cc                   	int3
1401dc717:	cc                   	int3
1401dc718:	cc                   	int3
1401dc719:	cc                   	int3
1401dc71a:	cc                   	int3
1401dc71b:	cc                   	int3
1401dc71c:	cc                   	int3
1401dc71d:	cc                   	int3
1401dc71e:	cc                   	int3
1401dc71f:	cc                   	int3
1401dc720:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401dc725:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1401dc72a:	57                   	push   %rdi
1401dc72b:	b8 20 00 00 00       	mov    $0x20,%eax
1401dc730:	e8 fb 43 0d 00       	call   0x1402b0b30
1401dc735:	48 2b e0             	sub    %rax,%rsp
1401dc738:	44 8b 09             	mov    (%rcx),%r9d
1401dc73b:	49 8b f0             	mov    %r8,%rsi
1401dc73e:	48 8b fa             	mov    %rdx,%rdi
1401dc741:	48 8b d9             	mov    %rcx,%rbx
1401dc744:	45 85 c9             	test   %r9d,%r9d
1401dc747:	74 35                	je     0x1401dc77e
1401dc749:	4c 8d 41 08          	lea    0x8(%rcx),%r8
1401dc74d:	e8 5e 03 00 00       	call   0x1401dcab0
1401dc752:	f6 43 5c 01          	testb  $0x1,0x5c(%rbx)
1401dc756:	75 08                	jne    0x1401dc760
1401dc758:	8b c8                	mov    %eax,%ecx
1401dc75a:	ff c0                	inc    %eax
1401dc75c:	c6 04 39 0a          	movb   $0xa,(%rcx,%rdi,1)
1401dc760:	8b c8                	mov    %eax,%ecx
1401dc762:	c6 04 39 00          	movb   $0x0,(%rcx,%rdi,1)
1401dc766:	c7 03 00 00 00 00    	movl   $0x0,(%rbx)
1401dc76c:	89 06                	mov    %eax,(%rsi)
1401dc76e:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401dc773:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401dc778:	48 83 c4 20          	add    $0x20,%rsp
1401dc77c:	5f                   	pop    %rdi
1401dc77d:	c3                   	ret
1401dc77e:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401dc783:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401dc788:	41 c7 00 00 00 00 00 	movl   $0x0,(%r8)
1401dc78f:	48 83 c4 20          	add    $0x20,%rsp
1401dc793:	5f                   	pop    %rdi
1401dc794:	c3                   	ret
1401dc795:	cc                   	int3
1401dc796:	cc                   	int3
1401dc797:	cc                   	int3
1401dc798:	cc                   	int3
1401dc799:	cc                   	int3
1401dc79a:	cc                   	int3
1401dc79b:	cc                   	int3
1401dc79c:	cc                   	int3
1401dc79d:	cc                   	int3
1401dc79e:	cc                   	int3
1401dc79f:	cc                   	int3
1401dc7a0:	33 c0                	xor    %eax,%eax
1401dc7a2:	c7 41 04 30 00 00 00 	movl   $0x30,0x4(%rcx)
1401dc7a9:	89 01                	mov    %eax,(%rcx)
1401dc7ab:	48 89 41 58          	mov    %rax,0x58(%rcx)
1401dc7af:	c3                   	ret
1401dc7b0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1401dc7b5:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1401dc7ba:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1401dc7bf:	57                   	push   %rdi
1401dc7c0:	41 54                	push   %r12
1401dc7c2:	41 56                	push   %r14
1401dc7c4:	b8 20 00 00 00       	mov    $0x20,%eax
1401dc7c9:	e8 62 43 0d 00       	call   0x1402b0b30
1401dc7ce:	48 2b e0             	sub    %rax,%rsp
1401dc7d1:	48 63 6c 24 60       	movslq 0x60(%rsp),%rbp
1401dc7d6:	33 ff                	xor    %edi,%edi
1401dc7d8:	41 89 38             	mov    %edi,(%r8)
1401dc7db:	4d 8b f1             	mov    %r9,%r14
1401dc7de:	4d 8b e0             	mov    %r8,%r12
1401dc7e1:	48 8b da             	mov    %rdx,%rbx
1401dc7e4:	48 8b f1             	mov    %rcx,%rsi
1401dc7e7:	85 ed                	test   %ebp,%ebp
1401dc7e9:	7f 07                	jg     0x1401dc7f2
1401dc7eb:	33 c0                	xor    %eax,%eax
1401dc7ed:	e9 2a 01 00 00       	jmp    0x1401dc91c
1401dc7f2:	8b 41 04             	mov    0x4(%rcx),%eax
1401dc7f5:	4c 89 7c 24 40       	mov    %r15,0x40(%rsp)
1401dc7fa:	83 f8 50             	cmp    $0x50,%eax
1401dc7fd:	7e 1c                	jle    0x1401dc81b
1401dc7ff:	41 b8 ab 00 00 00    	mov    $0xab,%r8d
1401dc805:	48 8d 15 94 91 15 00 	lea    0x159194(%rip),%rdx        # 0x1403359a0
1401dc80c:	48 8d 0d a5 91 15 00 	lea    0x1591a5(%rip),%rcx        # 0x1403359b8
1401dc813:	e8 d8 a9 f5 ff       	call   0x1401371f0
1401dc818:	8b 46 04             	mov    0x4(%rsi),%eax
1401dc81b:	48 63 0e             	movslq (%rsi),%rcx
1401dc81e:	44 8b f8             	mov    %eax,%r15d
1401dc821:	44 2b f9             	sub    %ecx,%r15d
1401dc824:	44 3b fd             	cmp    %ebp,%r15d
1401dc827:	7e 1c                	jle    0x1401dc845
1401dc829:	48 8b c1             	mov    %rcx,%rax
1401dc82c:	4c 8b c5             	mov    %rbp,%r8
1401dc82f:	48 8d 4e 08          	lea    0x8(%rsi),%rcx
1401dc833:	49 8b d6             	mov    %r14,%rdx
1401dc836:	48 03 c8             	add    %rax,%rcx
1401dc839:	e8 22 4b 10 00       	call   0x1402e1360
1401dc83e:	01 2e                	add    %ebp,(%rsi)
1401dc840:	e9 cd 00 00 00       	jmp    0x1401dc912
1401dc845:	85 c9                	test   %ecx,%ecx
1401dc847:	74 52                	je     0x1401dc89b
1401dc849:	48 8b c1             	mov    %rcx,%rax
1401dc84c:	49 63 ff             	movslq %r15d,%rdi
1401dc84f:	48 8d 4e 08          	lea    0x8(%rsi),%rcx
1401dc853:	4c 8b c7             	mov    %rdi,%r8
1401dc856:	48 03 c8             	add    %rax,%rcx
1401dc859:	49 8b d6             	mov    %r14,%rdx
1401dc85c:	e8 ff 4a 10 00       	call   0x1402e1360
1401dc861:	44 8b 4e 04          	mov    0x4(%rsi),%r9d
1401dc865:	4c 8d 46 08          	lea    0x8(%rsi),%r8
1401dc869:	48 8b d3             	mov    %rbx,%rdx
1401dc86c:	48 8b ce             	mov    %rsi,%rcx
1401dc86f:	4c 03 f7             	add    %rdi,%r14
1401dc872:	41 2b ef             	sub    %r15d,%ebp
1401dc875:	e8 36 02 00 00       	call   0x1401dcab0
1401dc87a:	48 63 f8             	movslq %eax,%rdi
1401dc87d:	48 03 df             	add    %rdi,%rbx
1401dc880:	c7 06 00 00 00 00    	movl   $0x0,(%rsi)
1401dc886:	f6 46 5c 01          	testb  $0x1,0x5c(%rsi)
1401dc88a:	75 09                	jne    0x1401dc895
1401dc88c:	c6 03 0a             	movb   $0xa,(%rbx)
1401dc88f:	48 ff c3             	inc    %rbx
1401dc892:	48 ff c7             	inc    %rdi
1401dc895:	c6 03 00             	movb   $0x0,(%rbx)
1401dc898:	8b 46 04             	mov    0x4(%rsi),%eax
1401dc89b:	3b e8                	cmp    %eax,%ebp
1401dc89d:	7c 45                	jl     0x1401dc8e4
1401dc89f:	90                   	nop
1401dc8a0:	48 81 ff ff ff ff 7f 	cmp    $0x7fffffff,%rdi
1401dc8a7:	77 44                	ja     0x1401dc8ed
1401dc8a9:	44 8b c8             	mov    %eax,%r9d
1401dc8ac:	4d 8b c6             	mov    %r14,%r8
1401dc8af:	48 8b d3             	mov    %rbx,%rdx
1401dc8b2:	48 8b ce             	mov    %rsi,%rcx
1401dc8b5:	e8 f6 01 00 00       	call   0x1401dcab0
1401dc8ba:	48 63 56 04          	movslq 0x4(%rsi),%rdx
1401dc8be:	48 98                	cltq
1401dc8c0:	4c 03 f2             	add    %rdx,%r14
1401dc8c3:	2b ea                	sub    %edx,%ebp
1401dc8c5:	48 03 d8             	add    %rax,%rbx
1401dc8c8:	48 03 f8             	add    %rax,%rdi
1401dc8cb:	f6 46 5c 01          	testb  $0x1,0x5c(%rsi)
1401dc8cf:	75 09                	jne    0x1401dc8da
1401dc8d1:	c6 03 0a             	movb   $0xa,(%rbx)
1401dc8d4:	48 ff c3             	inc    %rbx
1401dc8d7:	48 ff c7             	inc    %rdi
1401dc8da:	c6 03 00             	movb   $0x0,(%rbx)
1401dc8dd:	8b 46 04             	mov    0x4(%rsi),%eax
1401dc8e0:	3b e8                	cmp    %eax,%ebp
1401dc8e2:	7d bc                	jge    0x1401dc8a0
1401dc8e4:	48 81 ff ff ff ff 7f 	cmp    $0x7fffffff,%rdi
1401dc8eb:	76 0c                	jbe    0x1401dc8f9
1401dc8ed:	41 c7 04 24 00 00 00 	movl   $0x0,(%r12)
1401dc8f4:	00
1401dc8f5:	33 c0                	xor    %eax,%eax
1401dc8f7:	eb 1e                	jmp    0x1401dc917
1401dc8f9:	85 ed                	test   %ebp,%ebp
1401dc8fb:	74 0f                	je     0x1401dc90c
1401dc8fd:	4c 63 c5             	movslq %ebp,%r8
1401dc900:	48 8d 4e 08          	lea    0x8(%rsi),%rcx
1401dc904:	49 8b d6             	mov    %r14,%rdx
1401dc907:	e8 54 4a 10 00       	call   0x1402e1360
1401dc90c:	89 2e                	mov    %ebp,(%rsi)
1401dc90e:	41 89 3c 24          	mov    %edi,(%r12)
1401dc912:	b8 01 00 00 00       	mov    $0x1,%eax
1401dc917:	4c 8b 7c 24 40       	mov    0x40(%rsp),%r15
1401dc91c:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
1401dc921:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
1401dc926:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
1401dc92b:	48 83 c4 20          	add    $0x20,%rsp
1401dc92f:	41 5e                	pop    %r14
1401dc931:	41 5c                	pop    %r12
1401dc933:	5f                   	pop    %rdi
1401dc934:	c3                   	ret
1401dc935:	cc                   	int3
1401dc936:	cc                   	int3
1401dc937:	cc                   	int3
1401dc938:	cc                   	int3
1401dc939:	cc                   	int3
1401dc93a:	cc                   	int3
1401dc93b:	cc                   	int3
1401dc93c:	cc                   	int3
1401dc93d:	cc                   	int3
1401dc93e:	cc                   	int3
1401dc93f:	cc                   	int3
1401dc940:	40 56                	rex push %rsi
1401dc942:	41 57                	push   %r15
1401dc944:	45 33 ff             	xor    %r15d,%r15d
1401dc947:	48 8b f2             	mov    %rdx,%rsi
1401dc94a:	48 85 c9             	test   %rcx,%rcx
1401dc94d:	74 0d                	je     0x1401dc95c
1401dc94f:	f6 41 5c 02          	testb  $0x2,0x5c(%rcx)
1401dc953:	4c 8d 15 c6 8f 15 00 	lea    0x158fc6(%rip),%r10        # 0x140335920
1401dc95a:	75 07                	jne    0x1401dc963
1401dc95c:	4c 8d 15 3d 8f 15 00 	lea    0x158f3d(%rip),%r10        # 0x1403358a0
1401dc963:	45 85 c9             	test   %r9d,%r9d
1401dc966:	7e 1a                	jle    0x1401dc982
1401dc968:	41 0f b6 00          	movzbl (%r8),%eax
1401dc96c:	84 c0                	test   %al,%al
1401dc96e:	78 12                	js     0x1401dc982
1401dc970:	42 80 3c 10 e0       	cmpb   $0xe0,(%rax,%r10,1)
1401dc975:	75 0b                	jne    0x1401dc982
1401dc977:	49 ff c0             	inc    %r8
1401dc97a:	41 ff c9             	dec    %r9d
1401dc97d:	45 85 c9             	test   %r9d,%r9d
1401dc980:	7f e6                	jg     0x1401dc968
1401dc982:	49 63 d1             	movslq %r9d,%rdx
1401dc985:	48 83 fa 03          	cmp    $0x3,%rdx
1401dc989:	7e 28                	jle    0x1401dc9b3
1401dc98b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1401dc990:	41 0f b6 44 10 ff    	movzbl -0x1(%r8,%rdx,1),%eax
1401dc996:	84 c0                	test   %al,%al
1401dc998:	78 19                	js     0x1401dc9b3
1401dc99a:	42 0f b6 0c 10       	movzbl (%rax,%r10,1),%ecx
1401dc99f:	80 c9 13             	or     $0x13,%cl
1401dc9a2:	80 f9 f3             	cmp    $0xf3,%cl
1401dc9a5:	75 0c                	jne    0x1401dc9b3