14000a674:	8b 4c 24 30          	mov    0x30(%rsp),%ecx
14000a678:	81 f9 ff ff 00 00    	cmp    $0xffff,%ecx
14000a67e:	76 05                	jbe    0x14000a685
14000a680:	b9 fd ff 00 00       	mov    $0xfffd,%ecx
14000a685:	48 85 db             	test   %rbx,%rbx
14000a688:	74 03                	je     0x14000a68d
14000a68a:	66 89 0b             	mov    %cx,(%rbx)
14000a68d:	48 83 c4 40          	add    $0x40,%rsp
14000a691:	5b                   	pop    %rbx
14000a692:	c3                   	ret
14000a693:	90                   	nop
14000a694:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14000a699:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14000a69e:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14000a6a3:	57                   	push   %rdi
14000a6a4:	41 54                	push   %r12
14000a6a6:	41 55                	push   %r13
14000a6a8:	41 56                	push   %r14
14000a6aa:	41 57                	push   %r15
14000a6ac:	48 83 ec 30          	sub    $0x30,%rsp
14000a6b0:	48 8b 3a             	mov    (%rdx),%rdi
14000a6b3:	45 33 ed             	xor    %r13d,%r13d
14000a6b6:	4d 8b e1             	mov    %r9,%r12
14000a6b9:	49 8b f0             	mov    %r8,%rsi
14000a6bc:	4c 8b f2             	mov    %rdx,%r14
14000a6bf:	48 8b e9             	mov    %rcx,%rbp
14000a6c2:	48 85 c9             	test   %rcx,%rcx
14000a6c5:	0f 84 eb 00 00 00    	je     0x14000a7b6
14000a6cb:	48 8b d9             	mov    %rcx,%rbx
14000a6ce:	4d 85 c0             	test   %r8,%r8
14000a6d1:	0f 84 b3 00 00 00    	je     0x14000a78a
14000a6d7:	4c 8b bc 24 80 00 00 	mov    0x80(%rsp),%r15
14000a6de:	00
14000a6df:	44 38 2f             	cmp    %r13b,(%rdi)
14000a6e2:	75 08                	jne    0x14000a6ec
14000a6e4:	41 b8 01 00 00 00    	mov    $0x1,%r8d
14000a6ea:	eb 1d                	jmp    0x14000a709
14000a6ec:	44 38 6f 01          	cmp    %r13b,0x1(%rdi)
14000a6f0:	75 08                	jne    0x14000a6fa
14000a6f2:	41 b8 02 00 00 00    	mov    $0x2,%r8d
14000a6f8:	eb 0f                	jmp    0x14000a709
14000a6fa:	8a 47 02             	mov    0x2(%rdi),%al
14000a6fd:	f6 d8                	neg    %al
14000a6ff:	4d 1b c0             	sbb    %r8,%r8
14000a702:	49 f7 d8             	neg    %r8
14000a705:	49 83 c0 03          	add    $0x3,%r8
14000a709:	4d 8b cc             	mov    %r12,%r9
14000a70c:	44 89 6c 24 60       	mov    %r13d,0x60(%rsp)
14000a711:	48 8b d7             	mov    %rdi,%rdx
14000a714:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
14000a719:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
14000a71e:	e8 69 fd ff ff       	call   0x14000a48c
14000a723:	48 8b d0             	mov    %rax,%rdx
14000a726:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
14000a72a:	74 78                	je     0x14000a7a4
14000a72c:	48 85 c0             	test   %rax,%rax
14000a72f:	74 6a                	je     0x14000a79b
14000a731:	8b 4c 24 60          	mov    0x60(%rsp),%ecx
14000a735:	81 f9 ff ff 00 00    	cmp    $0xffff,%ecx
14000a73b:	76 39                	jbe    0x14000a776
14000a73d:	48 83 fe 01          	cmp    $0x1,%rsi
14000a741:	76 47                	jbe    0x14000a78a
14000a743:	81 c1 00 00 ff ff    	add    $0xffff0000,%ecx
14000a749:	41 b8 00 d8 00 00    	mov    $0xd800,%r8d
14000a74f:	8b c1                	mov    %ecx,%eax
14000a751:	89 4c 24 60          	mov    %ecx,0x60(%rsp)
14000a755:	c1 e8 0a             	shr    $0xa,%eax
14000a758:	48 ff ce             	dec    %rsi
14000a75b:	66 41 0b c0          	or     %r8w,%ax
14000a75f:	66 89 03             	mov    %ax,(%rbx)
14000a762:	b8 ff 03 00 00       	mov    $0x3ff,%eax
14000a767:	66 23 c8             	and    %ax,%cx
14000a76a:	48 83 c3 02          	add    $0x2,%rbx
14000a76e:	b8 00 dc 00 00       	mov    $0xdc00,%eax
14000a773:	66 0b c8             	or     %ax,%cx
14000a776:	66 89 0b             	mov    %cx,(%rbx)
14000a779:	48 03 fa             	add    %rdx,%rdi
14000a77c:	48 83 c3 02          	add    $0x2,%rbx
14000a780:	48 83 ee 01          	sub    $0x1,%rsi
14000a784:	0f 85 55 ff ff ff    	jne    0x14000a6df
14000a78a:	48 2b dd             	sub    %rbp,%rbx
14000a78d:	49 89 3e             	mov    %rdi,(%r14)
14000a790:	48 d1 fb             	sar    $1,%rbx
14000a793:	48 8b c3             	mov    %rbx,%rax
14000a796:	e9 91 00 00 00       	jmp    0x14000a82c
14000a79b:	49 8b fd             	mov    %r13,%rdi
14000a79e:	66 44 89 2b          	mov    %r13w,(%rbx)
14000a7a2:	eb e6                	jmp    0x14000a78a
14000a7a4:	49 89 3e             	mov    %rdi,(%r14)
14000a7a7:	41 c6 47 30 01       	movb   $0x1,0x30(%r15)
14000a7ac:	41 c7 47 2c 2a 00 00 	movl   $0x2a,0x2c(%r15)
14000a7b3:	00
14000a7b4:	eb 72                	jmp    0x14000a828
14000a7b6:	48 8b b4 24 80 00 00 	mov    0x80(%rsp),%rsi
14000a7bd:	00
14000a7be:	49 8b dd             	mov    %r13,%rbx
14000a7c1:	44 38 2f             	cmp    %r13b,(%rdi)
14000a7c4:	75 08                	jne    0x14000a7ce
14000a7c6:	41 b8 01 00 00 00    	mov    $0x1,%r8d
14000a7cc:	eb 1d                	jmp    0x14000a7eb
14000a7ce:	44 38 6f 01          	cmp    %r13b,0x1(%rdi)
14000a7d2:	75 08                	jne    0x14000a7dc
14000a7d4:	41 b8 02 00 00 00    	mov    $0x2,%r8d
14000a7da:	eb 0f                	jmp    0x14000a7eb
14000a7dc:	8a 47 02             	mov    0x2(%rdi),%al
14000a7df:	f6 d8                	neg    %al
14000a7e1:	4d 1b c0             	sbb    %r8,%r8
14000a7e4:	49 f7 d8             	neg    %r8
14000a7e7:	49 83 c0 03          	add    $0x3,%r8
14000a7eb:	4d 8b cc             	mov    %r12,%r9
14000a7ee:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14000a7f3:	48 8b d7             	mov    %rdi,%rdx
14000a7f6:	33 c9                	xor    %ecx,%ecx
14000a7f8:	e8 8f fc ff ff       	call   0x14000a48c
14000a7fd:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
14000a801:	74 1a                	je     0x14000a81d
14000a803:	48 85 c0             	test   %rax,%rax
14000a806:	74 8b                	je     0x14000a793
14000a808:	48 8d 4b 01          	lea    0x1(%rbx),%rcx
14000a80c:	48 03 f8             	add    %rax,%rdi
14000a80f:	48 83 f8 04          	cmp    $0x4,%rax
14000a813:	48 0f 45 cb          	cmovne %rbx,%rcx
14000a817:	48 8d 59 01          	lea    0x1(%rcx),%rbx
14000a81b:	eb a4                	jmp    0x14000a7c1
14000a81d:	c6 46 30 01          	movb   $0x1,0x30(%rsi)
14000a821:	c7 46 2c 2a 00 00 00 	movl   $0x2a,0x2c(%rsi)
14000a828:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
14000a82c:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
14000a831:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
14000a836:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
14000a83b:	48 83 c4 30          	add    $0x30,%rsp
14000a83f:	41 5f                	pop    %r15
14000a841:	41 5e                	pop    %r14
14000a843:	41 5d                	pop    %r13
14000a845:	41 5c                	pop    %r12
14000a847:	5f                   	pop    %rdi
14000a848:	c3                   	ret
14000a849:	90                   	nop
14000a84a:	90                   	nop
14000a84b:	90                   	nop
14000a84c:	48 83 ec 28          	sub    $0x28,%rsp
14000a850:	48 85 c9             	test   %rcx,%rcx
14000a853:	75 15                	jne    0x14000a86a
14000a855:	e8 ce be ff ff       	call   0x140006728
14000a85a:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
14000a860:	e8 cf bb ff ff       	call   0x140006434
14000a865:	83 c8 ff             	or     $0xffffffff,%eax
14000a868:	eb 03                	jmp    0x14000a86d
14000a86a:	8b 41 18             	mov    0x18(%rcx),%eax
14000a86d:	48 83 c4 28          	add    $0x28,%rsp
14000a871:	c3                   	ret
14000a872:	90                   	nop
14000a873:	90                   	nop
14000a874:	90                   	nop
14000a875:	90                   	nop
14000a876:	90                   	nop
14000a877:	90                   	nop
14000a878:	90                   	nop
14000a879:	90                   	nop
14000a87a:	90                   	nop
14000a87b:	90                   	nop
14000a87c:	90                   	nop
14000a87d:	90                   	nop
14000a87e:	90                   	nop
14000a87f:	90                   	nop
14000a880:	41 54                	push   %r12
14000a882:	41 55                	push   %r13
14000a884:	41 56                	push   %r14
14000a886:	41 57                	push   %r15
14000a888:	48 81 ec 48 04 00 00 	sub    $0x448,%rsp
14000a88f:	48 8b 05 aa a7 00 00 	mov    0xa7aa(%rip),%rax        # 0x140015040
14000a896:	48 33 c4             	xor    %rsp,%rax
14000a899:	48 89 84 24 10 04 00 	mov    %rax,0x410(%rsp)
14000a8a0:	00
14000a8a1:	4d 8b e1             	mov    %r9,%r12
14000a8a4:	4d 8b f0             	mov    %r8,%r14
14000a8a7:	4c 8b fa             	mov    %rdx,%r15
14000a8aa:	4c 8b e9             	mov    %rcx,%r13
14000a8ad:	48 85 c9             	test   %rcx,%rcx
14000a8b0:	75 1a                	jne    0x14000a8cc
14000a8b2:	48 85 d2             	test   %rdx,%rdx
14000a8b5:	74 15                	je     0x14000a8cc
14000a8b7:	e8 6c be ff ff       	call   0x140006728
14000a8bc:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
14000a8c2:	e8 6d bb ff ff       	call   0x140006434
14000a8c7:	e9 2c 03 00 00       	jmp    0x14000abf8
14000a8cc:	4d 85 f6             	test   %r14,%r14
14000a8cf:	74 e6                	je     0x14000a8b7
14000a8d1:	4d 85 e4             	test   %r12,%r12
14000a8d4:	74 e1                	je     0x14000a8b7
14000a8d6:	49 8b cc             	mov    %r12,%rcx
14000a8d9:	e8 2e 19 00 00       	call   0x14000c20c
14000a8de:	33 d2                	xor    %edx,%edx
14000a8e0:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14000a8e5:	41 b8 f0 01 00 00    	mov    $0x1f0,%r8d
14000a8eb:	e8 90 24 00 00       	call   0x14000cd80
14000a8f0:	33 d2                	xor    %edx,%edx
14000a8f2:	48 8d 8c 24 20 02 00 	lea    0x220(%rsp),%rcx
14000a8f9:	00
14000a8fa:	41 b8 f0 01 00 00    	mov    $0x1f0,%r8d
14000a900:	e8 7b 24 00 00       	call   0x14000cd80
14000a905:	49 83 ff 02          	cmp    $0x2,%r15
14000a909:	0f 82 e9 02 00 00    	jb     0x14000abf8
14000a90f:	49 ff cf             	dec    %r15
14000a912:	48 89 9c 24 40 04 00 	mov    %rbx,0x440(%rsp)
14000a919:	00
14000a91a:	4d 0f af fe          	imul   %r14,%r15
14000a91e:	48 89 ac 24 38 04 00 	mov    %rbp,0x438(%rsp)
14000a925:	00
14000a926:	4d 03 fd             	add    %r13,%r15
14000a929:	48 89 b4 24 30 04 00 	mov    %rsi,0x430(%rsp)
14000a930:	00
14000a931:	33 c9                	xor    %ecx,%ecx
14000a933:	48 89 bc 24 28 04 00 	mov    %rdi,0x428(%rsp)
14000a93a:	00
14000a93b:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14000a940:	33 d2                	xor    %edx,%edx
14000a942:	49 8b c7             	mov    %r15,%rax
14000a945:	49 2b c5             	sub    %r13,%rax
14000a948:	49 f7 f6             	div    %r14
14000a94b:	48 8d 58 01          	lea    0x1(%rax),%rbx
14000a94f:	48 83 fb 08          	cmp    $0x8,%rbx
14000a953:	0f 87 8b 00 00 00    	ja     0x14000a9e4
14000a959:	4d 3b fd             	cmp    %r13,%r15
14000a95c:	76 65                	jbe    0x14000a9c3
14000a95e:	4b 8d 34 2e          	lea    (%r14,%r13,1),%rsi
14000a962:	49 8b dd             	mov    %r13,%rbx
14000a965:	48 8b fe             	mov    %rsi,%rdi
14000a968:	49 3b f7             	cmp    %r15,%rsi
14000a96b:	77 20                	ja     0x14000a98d
14000a96d:	0f 1f 00             	nopl   (%rax)
14000a970:	48 8b d3             	mov    %rbx,%rdx
14000a973:	48 8b cf             	mov    %rdi,%rcx
14000a976:	41 ff d4             	call   *%r12
14000a979:	85 c0                	test   %eax,%eax
14000a97b:	48 8b cf             	mov    %rdi,%rcx
14000a97e:	48 0f 4e cb          	cmovle %rbx,%rcx
14000a982:	49 03 fe             	add    %r14,%rdi
14000a985:	48 8b d9             	mov    %rcx,%rbx
14000a988:	49 3b ff             	cmp    %r15,%rdi
14000a98b:	76 e3                	jbe    0x14000a970
14000a98d:	4d 8b c6             	mov    %r14,%r8
14000a990:	49 8b d7             	mov    %r15,%rdx
14000a993:	49 3b df             	cmp    %r15,%rbx
14000a996:	74 1e                	je     0x14000a9b6
14000a998:	49 2b df             	sub    %r15,%rbx
14000a99b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14000a9a0:	0f b6 02             	movzbl (%rdx),%eax
14000a9a3:	0f b6 0c 13          	movzbl (%rbx,%rdx,1),%ecx
14000a9a7:	88 04 13             	mov    %al,(%rbx,%rdx,1)
14000a9aa:	88 0a                	mov    %cl,(%rdx)
14000a9ac:	48 8d 52 01          	lea    0x1(%rdx),%rdx
14000a9b0:	49 83 e8 01          	sub    $0x1,%r8
14000a9b4:	75 ea                	jne    0x14000a9a0
14000a9b6:	4d 2b fe             	sub    %r14,%r15
14000a9b9:	4d 3b fd             	cmp    %r13,%r15
14000a9bc:	77 a4                	ja     0x14000a962
14000a9be:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
14000a9c3:	48 83 e9 01          	sub    $0x1,%rcx
14000a9c7:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14000a9cc:	0f 88 06 02 00 00    	js     0x14000abd8
14000a9d2:	4c 8b 6c cc 30       	mov    0x30(%rsp,%rcx,8),%r13
14000a9d7:	4c 8b bc cc 20 02 00 	mov    0x220(%rsp,%rcx,8),%r15
14000a9de:	00
14000a9df:	e9 5c ff ff ff       	jmp    0x14000a940
14000a9e4:	48 d1 eb             	shr    $1,%rbx
14000a9e7:	49 8b cd             	mov    %r13,%rcx
14000a9ea:	49 0f af de          	imul   %r14,%rbx
14000a9ee:	4a 8d 3c 2b          	lea    (%rbx,%r13,1),%rdi
14000a9f2:	48 8b d7             	mov    %rdi,%rdx
14000a9f5:	41 ff d4             	call   *%r12
14000a9f8:	85 c0                	test   %eax,%eax
14000a9fa:	7e 2f                	jle    0x14000aa2b
14000a9fc:	4d 8b ce             	mov    %r14,%r9
14000a9ff:	4c 8b c7             	mov    %rdi,%r8
14000aa02:	4c 3b ef             	cmp    %rdi,%r13
14000aa05:	74 24                	je     0x14000aa2b
14000aa07:	66 0f 1f 04 00       	nopw   (%rax,%rax,1)
14000aa0c:	0f 1f 40 00          	nopl   0x0(%rax)
14000aa10:	41 0f b6 00          	movzbl (%r8),%eax
14000aa14:	49 8b d0             	mov    %r8,%rdx
14000aa17:	48 2b d3             	sub    %rbx,%rdx
14000aa1a:	0f b6 0a             	movzbl (%rdx),%ecx
14000aa1d:	88 02                	mov    %al,(%rdx)
14000aa1f:	41 88 08             	mov    %cl,(%r8)
14000aa22:	49 ff c0             	inc    %r8
14000aa25:	49 83 e9 01          	sub    $0x1,%r9
14000aa29:	75 e5                	jne    0x14000aa10
14000aa2b:	49 8b d7             	mov    %r15,%rdx
14000aa2e:	49 8b cd             	mov    %r13,%rcx
14000aa31:	41 ff d4             	call   *%r12
14000aa34:	85 c0                	test   %eax,%eax
14000aa36:	7e 30                	jle    0x14000aa68
14000aa38:	4d 8b c6             	mov    %r14,%r8
14000aa3b:	49 8b d7             	mov    %r15,%rdx
14000aa3e:	4d 3b ef             	cmp    %r15,%r13
14000aa41:	74 25                	je     0x14000aa68
14000aa43:	4d 8b cd             	mov    %r13,%r9
14000aa46:	4d 2b cf             	sub    %r15,%r9
14000aa49:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
14000aa50:	0f b6 02             	movzbl (%rdx),%eax
14000aa53:	41 0f b6 0c 11       	movzbl (%r9,%rdx,1),%ecx
14000aa58:	41 88 04 11          	mov    %al,(%r9,%rdx,1)
14000aa5c:	88 0a                	mov    %cl,(%rdx)
14000aa5e:	48 8d 52 01          	lea    0x1(%rdx),%rdx
14000aa62:	49 83 e8 01          	sub    $0x1,%r8
14000aa66:	75 e8                	jne    0x14000aa50
14000aa68:	49 8b d7             	mov    %r15,%rdx
14000aa6b:	48 8b cf             	mov    %rdi,%rcx
14000aa6e:	41 ff d4             	call   *%r12
14000aa71:	85 c0                	test   %eax,%eax
14000aa73:	7e 33                	jle    0x14000aaa8
14000aa75:	4d 8b c6             	mov    %r14,%r8
14000aa78:	49 8b d7             	mov    %r15,%rdx
14000aa7b:	49 3b ff             	cmp    %r15,%rdi
14000aa7e:	74 28                	je     0x14000aaa8
14000aa80:	4c 8b cf             	mov    %rdi,%r9
14000aa83:	4d 2b cf             	sub    %r15,%r9
14000aa86:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14000aa8d:	00 00 00
14000aa90:	0f b6 02             	movzbl (%rdx),%eax
14000aa93:	41 0f b6 0c 11       	movzbl (%r9,%rdx,1),%ecx
14000aa98:	41 88 04 11          	mov    %al,(%r9,%rdx,1)
14000aa9c:	88 0a                	mov    %cl,(%rdx)
14000aa9e:	48 8d 52 01          	lea    0x1(%rdx),%rdx
14000aaa2:	49 83 e8 01          	sub    $0x1,%r8
14000aaa6:	75 e8                	jne    0x14000aa90
14000aaa8:	49 8b dd             	mov    %r13,%rbx
14000aaab:	49 8b f7             	mov    %r15,%rsi
14000aaae:	66 90                	xchg   %ax,%ax
14000aab0:	48 3b fb             	cmp    %rbx,%rdi
14000aab3:	76 17                	jbe    0x14000aacc
14000aab5:	49 03 de             	add    %r14,%rbx
14000aab8:	48 3b df             	cmp    %rdi,%rbx
14000aabb:	73 0f                	jae    0x14000aacc
14000aabd:	48 8b d7             	mov    %rdi,%rdx
14000aac0:	48 8b cb             	mov    %rbx,%rcx
14000aac3:	41 ff d4             	call   *%r12
14000aac6:	85 c0                	test   %eax,%eax
14000aac8:	7e eb                	jle    0x14000aab5
14000aaca:	eb 15                	jmp    0x14000aae1
14000aacc:	49 03 de             	add    %r14,%rbx
14000aacf:	49 3b df             	cmp    %r15,%rbx
14000aad2:	77 0d                	ja     0x14000aae1
14000aad4:	48 8b d7             	mov    %rdi,%rdx
14000aad7:	48 8b cb             	mov    %rbx,%rcx
14000aada:	41 ff d4             	call   *%r12
14000aadd:	85 c0                	test   %eax,%eax
14000aadf:	7e eb                	jle    0x14000aacc
14000aae1:	48 8b ee             	mov    %rsi,%rbp