1400b7592:	c0 e8 02             	shr    $0x2,%al
1400b7595:	0c f0                	or     $0xf0,%al
1400b7597:	49 8b 3a             	mov    (%r10),%rdi
1400b759a:	4c 8d 77 01          	lea    0x1(%rdi),%r14
1400b759e:	4d 89 32             	mov    %r14,(%r10)
1400b75a1:	88 07                	mov    %al,(%rdi)
1400b75a3:	c1 e3 04             	shl    $0x4,%ebx
1400b75a6:	83 e3 30             	and    $0x30,%ebx
1400b75a9:	44 89 c8             	mov    %r9d,%eax
1400b75ac:	c1 e8 02             	shr    $0x2,%eax
1400b75af:	83 e0 0f             	and    $0xf,%eax
1400b75b2:	09 d8                	or     %ebx,%eax
1400b75b4:	0c 80                	or     $0x80,%al
1400b75b6:	49 8b 3a             	mov    (%r10),%rdi
1400b75b9:	48 8d 5f 01          	lea    0x1(%rdi),%rbx
1400b75bd:	49 89 1a             	mov    %rbx,(%r10)
1400b75c0:	88 07                	mov    %al,(%rdi)
1400b75c2:	41 c1 e1 04          	shl    $0x4,%r9d
1400b75c6:	41 83 e1 30          	and    $0x30,%r9d
1400b75ca:	89 f0                	mov    %esi,%eax
1400b75cc:	c1 e8 06             	shr    $0x6,%eax
1400b75cf:	83 e0 0f             	and    $0xf,%eax
1400b75d2:	44 09 c8             	or     %r9d,%eax
1400b75d5:	0c 80                	or     $0x80,%al
1400b75d7:	4d 8b 0a             	mov    (%r10),%r9
1400b75da:	49 8d 79 01          	lea    0x1(%r9),%rdi
1400b75de:	49 89 3a             	mov    %rdi,(%r10)
1400b75e1:	41 88 01             	mov    %al,(%r9)
1400b75e4:	40 80 e6 3f          	and    $0x3f,%sil
1400b75e8:	40 80 ce 80          	or     $0x80,%sil
1400b75ec:	49 8b 02             	mov    (%r10),%rax
1400b75ef:	4c 8d 48 01          	lea    0x1(%rax),%r9
1400b75f3:	4d 89 0a             	mov    %r9,(%r10)
1400b75f6:	40 88 30             	mov    %sil,(%rax)
1400b75f9:	e9 84 fe ff ff       	jmp    0x1400b7482
1400b75fe:	cc                   	int3
1400b75ff:	cc                   	int3
1400b7600:	41 56                	push   %r14
1400b7602:	56                   	push   %rsi
1400b7603:	57                   	push   %rdi
1400b7604:	53                   	push   %rbx
1400b7605:	48 83 ec 58          	sub    $0x58,%rsp
1400b7609:	4c 89 ca             	mov    %r9,%rdx
1400b760c:	4c 89 c1             	mov    %r8,%rcx
1400b760f:	48 8b bc 24 b8 00 00 	mov    0xb8(%rsp),%rdi
1400b7616:	00
1400b7617:	48 8b 9c 24 a0 00 00 	mov    0xa0(%rsp),%rbx
1400b761e:	00
1400b761f:	48 8b 84 24 b0 00 00 	mov    0xb0(%rsp),%rax
1400b7626:	00
1400b7627:	4c 8b 8c 24 a8 00 00 	mov    0xa8(%rsp),%r9
1400b762e:	00
1400b762f:	4c 8b 05 0a 9a 04 00 	mov    0x49a0a(%rip),%r8        # 0x140101040
1400b7636:	49 31 e0             	xor    %rsp,%r8
1400b7639:	4c 89 44 24 50       	mov    %r8,0x50(%rsp)
1400b763e:	48 8d 74 24 48       	lea    0x48(%rsp),%rsi
1400b7643:	48 89 0e             	mov    %rcx,(%rsi)
1400b7646:	4c 8d 74 24 40       	lea    0x40(%rsp),%r14
1400b764b:	4d 89 0e             	mov    %r9,(%r14)
1400b764e:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
1400b7653:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1400b7658:	c7 44 24 38 00 00 00 	movl   $0x0,0x38(%rsp)
1400b765f:	00
1400b7660:	c7 44 24 30 ff ff 10 	movl   $0x10ffff,0x30(%rsp)
1400b7667:	00
1400b7668:	49 89 f0             	mov    %rsi,%r8
1400b766b:	e8 30 00 00 00       	call   0x1400b76a0
1400b7670:	48 8b 0e             	mov    (%rsi),%rcx
1400b7673:	48 89 0b             	mov    %rcx,(%rbx)
1400b7676:	49 8b 0e             	mov    (%r14),%rcx
1400b7679:	48 89 0f             	mov    %rcx,(%rdi)
1400b767c:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
1400b7681:	48 31 e1             	xor    %rsp,%rcx
1400b7684:	48 3b 0d b5 99 04 00 	cmp    0x499b5(%rip),%rcx        # 0x140101040
1400b768b:	74 06                	je     0x1400b7693
1400b768d:	e8 3e 7c fb ff       	call   0x14006f2d0
1400b7692:	cc                   	int3
1400b7693:	48 83 c4 58          	add    $0x58,%rsp
1400b7697:	5b                   	pop    %rbx
1400b7698:	5f                   	pop    %rdi
1400b7699:	5e                   	pop    %rsi
1400b769a:	41 5e                	pop    %r14
1400b769c:	c3                   	ret
1400b769d:	cc                   	int3
1400b769e:	cc                   	int3
1400b769f:	cc                   	int3
1400b76a0:	41 57                	push   %r15
1400b76a2:	41 56                	push   %r14
1400b76a4:	41 54                	push   %r12
1400b76a6:	56                   	push   %rsi
1400b76a7:	57                   	push   %rdi
1400b76a8:	55                   	push   %rbp
1400b76a9:	53                   	push   %rbx
1400b76aa:	4c 8b 54 24 68       	mov    0x68(%rsp),%r10
1400b76af:	49 89 08             	mov    %rcx,(%r8)
1400b76b2:	4d 89 0a             	mov    %r9,(%r10)
1400b76b5:	8a 44 24 78          	mov    0x78(%rsp),%al
1400b76b9:	c0 e8 02             	shr    $0x2,%al
1400b76bc:	49 8b 30             	mov    (%r8),%rsi
1400b76bf:	48 89 d1             	mov    %rdx,%rcx
1400b76c2:	48 29 f1             	sub    %rsi,%rcx
1400b76c5:	48 83 f9 03          	cmp    $0x3,%rcx
1400b76c9:	0f 9d c1             	setge  %cl
1400b76cc:	20 c1                	and    %al,%cl
1400b76ce:	80 f9 01             	cmp    $0x1,%cl
1400b76d1:	75 18                	jne    0x1400b76eb
1400b76d3:	80 3e ef             	cmpb   $0xef,(%rsi)
1400b76d6:	75 13                	jne    0x1400b76eb
1400b76d8:	80 7e 01 bb          	cmpb   $0xbb,0x1(%rsi)
1400b76dc:	75 0d                	jne    0x1400b76eb
1400b76de:	80 7e 02 bf          	cmpb   $0xbf,0x2(%rsi)
1400b76e2:	75 07                	jne    0x1400b76eb
1400b76e4:	48 83 c6 03          	add    $0x3,%rsi
1400b76e8:	49 89 30             	mov    %rsi,(%r8)
1400b76eb:	48 39 d6             	cmp    %rdx,%rsi
1400b76ee:	73 15                	jae    0x1400b7705
1400b76f0:	8b 4c 24 70          	mov    0x70(%rsp),%ecx
1400b76f4:	4c 8b 4c 24 60       	mov    0x60(%rsp),%r9
1400b76f9:	4d 8b 1a             	mov    (%r10),%r11
1400b76fc:	eb 6a                	jmp    0x1400b7768
1400b76fe:	b8 02 00 00 00       	mov    $0x2,%eax
1400b7703:	eb 02                	jmp    0x1400b7707
1400b7705:	31 c0                	xor    %eax,%eax
1400b7707:	5b                   	pop    %rbx
1400b7708:	5d                   	pop    %rbp
1400b7709:	5f                   	pop    %rdi
1400b770a:	5e                   	pop    %rsi
1400b770b:	41 5c                	pop    %r12
1400b770d:	41 5e                	pop    %r14
1400b770f:	41 5f                	pop    %r15
1400b7711:	c3                   	ret
1400b7712:	48 89 d3             	mov    %rdx,%rbx
1400b7715:	48 29 f3             	sub    %rsi,%rbx
1400b7718:	48 83 fb 02          	cmp    $0x2,%rbx
1400b771c:	7c e9                	jl     0x1400b7707
1400b771e:	0f b6 5e 01          	movzbl 0x1(%rsi),%ebx
1400b7722:	89 d8                	mov    %ebx,%eax
1400b7724:	83 e0 c0             	and    $0xffffffc0,%eax
1400b7727:	3d 80 00 00 00       	cmp    $0x80,%eax
1400b772c:	75 d0                	jne    0x1400b76fe
1400b772e:	83 e7 1f             	and    $0x1f,%edi
1400b7731:	c1 e7 06             	shl    $0x6,%edi
1400b7734:	83 e3 3f             	and    $0x3f,%ebx
1400b7737:	09 fb                	or     %edi,%ebx
1400b7739:	b8 02 00 00 00       	mov    $0x2,%eax
1400b773e:	39 cb                	cmp    %ecx,%ebx
1400b7740:	77 c5                	ja     0x1400b7707
1400b7742:	66 41 89 1b          	mov    %bx,(%r11)
1400b7746:	48 83 c6 02          	add    $0x2,%rsi
1400b774a:	eb 07                	jmp    0x1400b7753
1400b774c:	66 41 89 3b          	mov    %di,(%r11)
1400b7750:	48 ff c6             	inc    %rsi
1400b7753:	49 89 30             	mov    %rsi,(%r8)
1400b7756:	4d 8b 1a             	mov    (%r10),%r11
1400b7759:	49 83 c3 02          	add    $0x2,%r11
1400b775d:	4d 89 1a             	mov    %r11,(%r10)
1400b7760:	49 8b 30             	mov    (%r8),%rsi
1400b7763:	48 39 d6             	cmp    %rdx,%rsi
1400b7766:	73 9d                	jae    0x1400b7705
1400b7768:	b8 01 00 00 00       	mov    $0x1,%eax
1400b776d:	4d 39 cb             	cmp    %r9,%r11
1400b7770:	73 95                	jae    0x1400b7707
1400b7772:	0f b6 3e             	movzbl (%rsi),%edi
1400b7775:	39 f9                	cmp    %edi,%ecx
1400b7777:	72 85                	jb     0x1400b76fe
1400b7779:	40 84 ff             	test   %dil,%dil
1400b777c:	79 ce                	jns    0x1400b774c
1400b777e:	40 80 ff c2          	cmp    $0xc2,%dil
1400b7782:	0f 82 76 ff ff ff    	jb     0x1400b76fe
1400b7788:	40 80 ff df          	cmp    $0xdf,%dil
1400b778c:	76 84                	jbe    0x1400b7712
1400b778e:	40 80 ff ef          	cmp    $0xef,%dil
1400b7792:	76 48                	jbe    0x1400b77dc
1400b7794:	40 80 ff f4          	cmp    $0xf4,%dil
1400b7798:	0f 87 60 ff ff ff    	ja     0x1400b76fe
1400b779e:	49 89 d7             	mov    %rdx,%r15
1400b77a1:	49 29 f7             	sub    %rsi,%r15
1400b77a4:	49 83 ff 02          	cmp    $0x2,%r15
1400b77a8:	0f 8c 59 ff ff ff    	jl     0x1400b7707
1400b77ae:	0f b6 5e 01          	movzbl 0x1(%rsi),%ebx
1400b77b2:	81 ff f4 00 00 00    	cmp    $0xf4,%edi
1400b77b8:	0f 84 be 00 00 00    	je     0x1400b787c
1400b77be:	81 ff f0 00 00 00    	cmp    $0xf0,%edi
1400b77c4:	0f 85 aa 00 00 00    	jne    0x1400b7874
1400b77ca:	8d 6b 70             	lea    0x70(%rbx),%ebp
1400b77cd:	40 80 fd 30          	cmp    $0x30,%bpl
1400b77d1:	0f 82 b4 00 00 00    	jb     0x1400b788b
1400b77d7:	e9 22 ff ff ff       	jmp    0x1400b76fe
1400b77dc:	49 89 d6             	mov    %rdx,%r14
1400b77df:	49 29 f6             	sub    %rsi,%r14
1400b77e2:	49 83 fe 02          	cmp    $0x2,%r14
1400b77e6:	0f 8c 1b ff ff ff    	jl     0x1400b7707
1400b77ec:	0f b6 5e 01          	movzbl 0x1(%rsi),%ebx
1400b77f0:	40 80 ff ed          	cmp    $0xed,%dil
1400b77f4:	74 24                	je     0x1400b781a
1400b77f6:	0f b7 ef             	movzwl %di,%ebp
1400b77f9:	81 fd e0 00 00 00    	cmp    $0xe0,%ebp
1400b77ff:	75 11                	jne    0x1400b7812
1400b7801:	89 dd                	mov    %ebx,%ebp
1400b7803:	40 80 e5 e0          	and    $0xe0,%bpl
1400b7807:	40 80 fd a0          	cmp    $0xa0,%bpl
1400b780b:	74 1c                	je     0x1400b7829
1400b780d:	e9 ec fe ff ff       	jmp    0x1400b76fe
1400b7812:	89 dd                	mov    %ebx,%ebp
1400b7814:	40 80 e5 c0          	and    $0xc0,%bpl
1400b7818:	eb 06                	jmp    0x1400b7820
1400b781a:	89 dd                	mov    %ebx,%ebp
1400b781c:	40 80 e5 e0          	and    $0xe0,%bpl
1400b7820:	40 f6 dd             	neg    %bpl
1400b7823:	0f 81 d5 fe ff ff    	jno    0x1400b76fe
1400b7829:	49 83 fe 02          	cmp    $0x2,%r14
1400b782d:	0f 84 d4 fe ff ff    	je     0x1400b7707
1400b7833:	0f b6 6e 02          	movzbl 0x2(%rsi),%ebp
1400b7837:	89 e8                	mov    %ebp,%eax
1400b7839:	83 e0 c0             	and    $0xffffffc0,%eax
1400b783c:	3d 80 00 00 00       	cmp    $0x80,%eax
1400b7841:	0f 85 b7 fe ff ff    	jne    0x1400b76fe
1400b7847:	c1 e7 0c             	shl    $0xc,%edi
1400b784a:	83 e3 3f             	and    $0x3f,%ebx
1400b784d:	c1 e3 06             	shl    $0x6,%ebx
1400b7850:	09 fb                	or     %edi,%ebx
1400b7852:	83 e5 3f             	and    $0x3f,%ebp
1400b7855:	09 dd                	or     %ebx,%ebp
1400b7857:	0f b7 fd             	movzwl %bp,%edi
1400b785a:	b8 02 00 00 00       	mov    $0x2,%eax
1400b785f:	39 cf                	cmp    %ecx,%edi
1400b7861:	0f 87 a0 fe ff ff    	ja     0x1400b7707
1400b7867:	66 41 89 2b          	mov    %bp,(%r11)
1400b786b:	48 83 c6 03          	add    $0x3,%rsi
1400b786f:	e9 df fe ff ff       	jmp    0x1400b7753
1400b7874:	89 dd                	mov    %ebx,%ebp
1400b7876:	40 80 e5 c0          	and    $0xc0,%bpl
1400b787a:	eb 06                	jmp    0x1400b7882
1400b787c:	89 dd                	mov    %ebx,%ebp
1400b787e:	40 80 e5 f0          	and    $0xf0,%bpl
1400b7882:	40 f6 dd             	neg    %bpl
1400b7885:	0f 81 73 fe ff ff    	jno    0x1400b76fe
1400b788b:	49 83 ff 02          	cmp    $0x2,%r15
1400b788f:	0f 84 72 fe ff ff    	je     0x1400b7707
1400b7895:	44 0f b6 76 02       	movzbl 0x2(%rsi),%r14d
1400b789a:	44 89 f5             	mov    %r14d,%ebp
1400b789d:	83 e5 c0             	and    $0xffffffc0,%ebp
1400b78a0:	81 fd 80 00 00 00    	cmp    $0x80,%ebp
1400b78a6:	0f 85 52 fe ff ff    	jne    0x1400b76fe
1400b78ac:	49 83 ff 03          	cmp    $0x3,%r15
1400b78b0:	0f 84 51 fe ff ff    	je     0x1400b7707
1400b78b6:	0f b6 76 03          	movzbl 0x3(%rsi),%esi
1400b78ba:	89 f5                	mov    %esi,%ebp
1400b78bc:	83 e5 c0             	and    $0xffffffc0,%ebp
1400b78bf:	81 fd 80 00 00 00    	cmp    $0x80,%ebp
1400b78c5:	0f 85 33 fe ff ff    	jne    0x1400b76fe
1400b78cb:	4d 89 cf             	mov    %r9,%r15
1400b78ce:	4d 29 df             	sub    %r11,%r15
1400b78d1:	49 83 ff 03          	cmp    $0x3,%r15
1400b78d5:	0f 8c 2c fe ff ff    	jl     0x1400b7707
1400b78db:	83 e7 07             	and    $0x7,%edi
1400b78de:	89 f8                	mov    %edi,%eax
1400b78e0:	c1 e0 12             	shl    $0x12,%eax
1400b78e3:	89 dd                	mov    %ebx,%ebp
1400b78e5:	83 e5 3f             	and    $0x3f,%ebp
1400b78e8:	c1 e5 0c             	shl    $0xc,%ebp
1400b78eb:	09 c5                	or     %eax,%ebp
1400b78ed:	45 89 f7             	mov    %r14d,%r15d
1400b78f0:	41 c1 e7 06          	shl    $0x6,%r15d
1400b78f4:	45 89 fc             	mov    %r15d,%r12d
1400b78f7:	41 81 e4 c0 0f 00 00 	and    $0xfc0,%r12d
1400b78fe:	41 09 ec             	or     %ebp,%r12d
1400b7901:	83 e6 3f             	and    $0x3f,%esi
1400b7904:	41 09 f4             	or     %esi,%r12d
1400b7907:	b8 02 00 00 00       	mov    $0x2,%eax
1400b790c:	41 39 cc             	cmp    %ecx,%r12d
1400b790f:	0f 87 f2 fd ff ff    	ja     0x1400b7707
1400b7915:	c1 e7 08             	shl    $0x8,%edi
1400b7918:	c1 e3 02             	shl    $0x2,%ebx
1400b791b:	89 d8                	mov    %ebx,%eax
1400b791d:	25 c0 00 00 00       	and    $0xc0,%eax
1400b7922:	09 f8                	or     %edi,%eax
1400b7924:	83 e3 3c             	and    $0x3c,%ebx
1400b7927:	09 c3                	or     %eax,%ebx
1400b7929:	41 c1 ee 04          	shr    $0x4,%r14d
1400b792d:	41 83 e6 03          	and    $0x3,%r14d
1400b7931:	41 8d 04 1e          	lea    (%r14,%rbx,1),%eax
1400b7935:	05 c0 3f 00 00       	add    $0x3fc0,%eax
1400b793a:	0d 00 d8 00 00       	or     $0xd800,%eax
1400b793f:	66 41 89 03          	mov    %ax,(%r11)
1400b7943:	41 81 e7 c0 03 00 00 	and    $0x3c0,%r15d
1400b794a:	42 8d 04 3e          	lea    (%rsi,%r15,1),%eax
1400b794e:	05 00 dc 00 00       	add    $0xdc00,%eax
1400b7953:	49 8d 73 02          	lea    0x2(%r11),%rsi
1400b7957:	49 89 32             	mov    %rsi,(%r10)
1400b795a:	66 41 89 43 02       	mov    %ax,0x2(%r11)
1400b795f:	49 8b 30             	mov    (%r8),%rsi
1400b7962:	48 83 c6 04          	add    $0x4,%rsi
1400b7966:	e9 e8 fd ff ff       	jmp    0x1400b7753
1400b796b:	cc                   	int3
1400b796c:	cc                   	int3
1400b796d:	cc                   	int3
1400b796e:	cc                   	int3
1400b796f:	cc                   	int3
1400b7970:	48 83 ec 28          	sub    $0x28,%rsp
1400b7974:	4c 89 ca             	mov    %r9,%rdx
1400b7977:	4c 89 c1             	mov    %r8,%rcx
1400b797a:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
1400b797f:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
1400b7986:	00
1400b7987:	41 b9 ff ff 10 00    	mov    $0x10ffff,%r9d
1400b798d:	e8 0e 00 00 00       	call   0x1400b79a0
1400b7992:	90                   	nop
1400b7993:	48 83 c4 28          	add    $0x28,%rsp
1400b7997:	c3                   	ret
1400b7998:	cc                   	int3
1400b7999:	cc                   	int3
1400b799a:	cc                   	int3
1400b799b:	cc                   	int3
1400b799c:	cc                   	int3
1400b799d:	cc                   	int3
1400b799e:	cc                   	int3
1400b799f:	cc                   	int3
1400b79a0:	56                   	push   %rsi
1400b79a1:	57                   	push   %rdi
1400b79a2:	55                   	push   %rbp
1400b79a3:	53                   	push   %rbx
1400b79a4:	f6 44 24 48 04       	testb  $0x4,0x48(%rsp)
1400b79a9:	0f 94 c0             	sete   %al
1400b79ac:	49 89 d2             	mov    %rdx,%r10
1400b79af:	49 29 ca             	sub    %rcx,%r10
1400b79b2:	49 83 fa 03          	cmp    $0x3,%r10
1400b79b6:	41 0f 9c c2          	setl   %r10b
1400b79ba:	41 08 c2             	or     %al,%r10b
1400b79bd:	48 89 c8             	mov    %rcx,%rax
1400b79c0:	75 21                	jne    0x1400b79e3
1400b79c2:	80 39 ef             	cmpb   $0xef,(%rcx)
1400b79c5:	48 89 c8             	mov    %rcx,%rax
1400b79c8:	75 19                	jne    0x1400b79e3
1400b79ca:	80 79 01 bb          	cmpb   $0xbb,0x1(%rcx)
1400b79ce:	48 89 c8             	mov    %rcx,%rax
1400b79d1:	75 10                	jne    0x1400b79e3
1400b79d3:	31 c0                	xor    %eax,%eax
1400b79d5:	80 79 02 bf          	cmpb   $0xbf,0x2(%rcx)
1400b79d9:	0f 94 c0             	sete   %al
1400b79dc:	48 8d 04 40          	lea    (%rax,%rax,2),%rax
1400b79e0:	48 01 c8             	add    %rcx,%rax
1400b79e3:	48 39 d0             	cmp    %rdx,%rax
1400b79e6:	41 0f 93 c2          	setae  %r10b
1400b79ea:	4d 85 c0             	test   %r8,%r8
1400b79ed:	41 0f 94 c3          	sete   %r11b
1400b79f1:	45 08 d3             	or     %r10b,%r11b
1400b79f4:	75 40                	jne    0x1400b7a36
1400b79f6:	45 31 d2             	xor    %r10d,%r10d
1400b79f9:	eb 52                	jmp    0x1400b7a4d