14005d4b0:	41 57                	push   %r15
14005d4b2:	41 56                	push   %r14
14005d4b4:	56                   	push   %rsi
14005d4b5:	57                   	push   %rdi
14005d4b6:	55                   	push   %rbp
14005d4b7:	53                   	push   %rbx
14005d4b8:	48 83 ec 58          	sub    $0x58,%rsp
14005d4bc:	48 8b 05 7d 3b 0a 00 	mov    0xa3b7d(%rip),%rax        # 0x140101040
14005d4c3:	48 31 e0             	xor    %rsp,%rax
14005d4c6:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
14005d4cb:	48 85 d2             	test   %rdx,%rdx
14005d4ce:	0f 88 e1 00 00 00    	js     0x14005d5b5
14005d4d4:	48 89 cb             	mov    %rcx,%rbx
14005d4d7:	0f 94 c0             	sete   %al
14005d4da:	48 85 c9             	test   %rcx,%rcx
14005d4dd:	0f 95 c1             	setne  %cl
14005d4e0:	08 c1                	or     %al,%cl
14005d4e2:	0f 84 cd 00 00 00    	je     0x14005d5b5
14005d4e8:	4c 89 c6             	mov    %r8,%rsi
14005d4eb:	48 89 d7             	mov    %rdx,%rdi
14005d4ee:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
14005d4f3:	48 89 19             	mov    %rbx,(%rcx)
14005d4f6:	48 89 51 08          	mov    %rdx,0x8(%rcx)
14005d4fa:	e8 b1 e0 fc ff       	call   0x14002b5b0
14005d4ff:	84 c0                	test   %al,%al
14005d501:	0f 84 1c 02 00 00    	je     0x14005d723
14005d507:	4c 0f be 4e 17       	movsbq 0x17(%rsi),%r9
14005d50c:	4d 85 c9             	test   %r9,%r9
14005d50f:	0f 88 d1 02 00 00    	js     0x14005d7e6
14005d515:	48 89 f0             	mov    %rsi,%rax
14005d518:	48 83 ff 0a          	cmp    $0xa,%rdi
14005d51c:	76 36                	jbe    0x14005d554
14005d51e:	ba 0a 00 00 00       	mov    $0xa,%edx
14005d523:	49 89 f8             	mov    %rdi,%r8
14005d526:	49 29 d0             	sub    %rdx,%r8
14005d529:	45 31 f6             	xor    %r14d,%r14d
14005d52c:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
14005d531:	4c 89 4c 24 28       	mov    %r9,0x28(%rsp)
14005d536:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
14005d53b:	48 89 f1             	mov    %rsi,%rcx
14005d53e:	e8 4d fc fb ff       	call   0x14001d190
14005d543:	4c 89 76 08          	mov    %r14,0x8(%rsi)
14005d547:	8a 4e 17             	mov    0x17(%rsi),%cl
14005d54a:	48 89 f0             	mov    %rsi,%rax
14005d54d:	84 c9                	test   %cl,%cl
14005d54f:	79 03                	jns    0x14005d554
14005d551:	48 8b 06             	mov    (%rsi),%rax
14005d554:	48 85 ff             	test   %rdi,%rdi
14005d557:	74 1a                	je     0x14005d573
14005d559:	31 c9                	xor    %ecx,%ecx
14005d55b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14005d560:	0f be 14 0b          	movsbl (%rbx,%rcx,1),%edx
14005d564:	66 89 10             	mov    %dx,(%rax)
14005d567:	48 83 c0 02          	add    $0x2,%rax
14005d56b:	48 ff c1             	inc    %rcx
14005d56e:	48 39 cf             	cmp    %rcx,%rdi
14005d571:	75 ed                	jne    0x14005d560
14005d573:	66 c7 00 00 00       	movw   $0x0,(%rax)
14005d578:	80 7e 17 00          	cmpb   $0x0,0x17(%rsi)
14005d57c:	79 1e                	jns    0x14005d59c
14005d57e:	48 89 7e 08          	mov    %rdi,0x8(%rsi)
14005d582:	40 b5 01             	mov    $0x1,%bpl
14005d585:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
14005d58a:	48 31 e1             	xor    %rsp,%rcx
14005d58d:	48 3b 0d ac 3a 0a 00 	cmp    0xa3aac(%rip),%rcx        # 0x140101040
14005d594:	74 10                	je     0x14005d5a6
14005d596:	e8 35 1d 01 00       	call   0x14006f2d0
14005d59b:	cc                   	int3
14005d59c:	40 80 e7 7f          	and    $0x7f,%dil
14005d5a0:	40 88 7e 17          	mov    %dil,0x17(%rsi)
14005d5a4:	eb dc                	jmp    0x14005d582
14005d5a6:	89 e8                	mov    %ebp,%eax
14005d5a8:	48 83 c4 58          	add    $0x58,%rsp
14005d5ac:	5b                   	pop    %rbx
14005d5ad:	5d                   	pop    %rbp
14005d5ae:	5f                   	pop    %rdi
14005d5af:	5e                   	pop    %rsi
14005d5b0:	41 5e                	pop    %r14
14005d5b2:	41 5f                	pop    %r15
14005d5b4:	c3                   	ret
14005d5b5:	0f 0b                	ud2
14005d5b7:	41 80 fa f4          	cmp    $0xf4,%r10b
14005d5bb:	0f 87 8e 00 00 00    	ja     0x14005d64f
14005d5c1:	45 8d ba 10 ff ff ff 	lea    -0xf0(%r10),%r15d
14005d5c8:	44 0f b6 14 13       	movzbl (%rbx,%rdx,1),%r10d
14005d5cd:	45 89 d6             	mov    %r10d,%r14d
14005d5d0:	41 c1 ee 04          	shr    $0x4,%r14d
14005d5d4:	47 0f be 34 06       	movsbl (%r14,%r8,1),%r14d
14005d5d9:	45 0f a3 fe          	bt     %r15d,%r14d
14005d5dd:	73 70                	jae    0x14005d64f
14005d5df:	49 83 c3 02          	add    $0x2,%r11
14005d5e3:	49 39 fb             	cmp    %rdi,%r11
14005d5e6:	0f 84 a8 00 00 00    	je     0x14005d694
14005d5ec:	46 8a 34 1b          	mov    (%rbx,%r11,1),%r14b
14005d5f0:	41 80 c6 80          	add    $0x80,%r14b
14005d5f4:	41 80 fe 3f          	cmp    $0x3f,%r14b
14005d5f8:	0f 87 99 00 00 00    	ja     0x14005d697
14005d5fe:	41 c1 e7 06          	shl    $0x6,%r15d
14005d602:	41 83 e2 3f          	and    $0x3f,%r10d
14005d606:	45 09 fa             	or     %r15d,%r10d
14005d609:	4c 89 da             	mov    %r11,%rdx
14005d60c:	eb 7a                	jmp    0x14005d688
14005d60e:	41 c1 e2 06          	shl    $0x6,%r10d
14005d612:	45 0f b6 f6          	movzbl %r14b,%r14d
14005d616:	45 09 d6             	or     %r10d,%r14d
14005d619:	eb 22                	jmp    0x14005d63d
14005d61b:	41 c1 e6 06          	shl    $0x6,%r14d
14005d61f:	45 09 d6             	or     %r10d,%r14d
14005d622:	48 ff c2             	inc    %rdx
14005d625:	49 89 d3             	mov    %rdx,%r11
14005d628:	45 89 f2             	mov    %r14d,%r10d
14005d62b:	e9 98 00 00 00       	jmp    0x14005d6c8
14005d630:	41 80 fa c2          	cmp    $0xc2,%r10b
14005d634:	72 19                	jb     0x14005d64f
14005d636:	41 83 e2 1f          	and    $0x1f,%r10d
14005d63a:	45 89 d6             	mov    %r10d,%r14d
14005d63d:	44 0f b6 14 13       	movzbl (%rbx,%rdx,1),%r10d
14005d642:	41 81 f2 80 00 00 00 	xor    $0x80,%r10d
14005d649:	41 80 fa 3f          	cmp    $0x3f,%r10b
14005d64d:	76 cc                	jbe    0x14005d61b
14005d64f:	49 89 d3             	mov    %rdx,%r11
14005d652:	eb 43                	jmp    0x14005d697
14005d654:	48 39 fa             	cmp    %rdi,%rdx
14005d657:	74 3b                	je     0x14005d694
14005d659:	41 80 fa e0          	cmp    $0xe0,%r10b
14005d65d:	72 d1                	jb     0x14005d630
14005d65f:	41 80 fa ef          	cmp    $0xef,%r10b
14005d663:	0f 87 4e ff ff ff    	ja     0x14005d5b7
14005d669:	41 83 e2 0f          	and    $0xf,%r10d
14005d66d:	45 0f b6 1c 0a       	movzbl (%r10,%rcx,1),%r11d
14005d672:	44 0f b6 34 13       	movzbl (%rbx,%rdx,1),%r14d
14005d677:	45 89 f7             	mov    %r14d,%r15d
14005d67a:	41 c1 ef 05          	shr    $0x5,%r15d
14005d67e:	45 0f a3 fb          	bt     %r15d,%r11d
14005d682:	73 cb                	jae    0x14005d64f
14005d684:	41 80 e6 3f          	and    $0x3f,%r14b
14005d688:	48 ff c2             	inc    %rdx
14005d68b:	48 39 fa             	cmp    %rdi,%rdx
14005d68e:	0f 85 7a ff ff ff    	jne    0x14005d60e
14005d694:	49 89 fb             	mov    %rdi,%r11
14005d697:	41 ba ff ff ff ff    	mov    $0xffffffff,%r10d
14005d69d:	eb 29                	jmp    0x14005d6c8
14005d69f:	49 8d 51 01          	lea    0x1(%r9),%rdx
14005d6a3:	44 20 f5             	and    %r14b,%bpl
14005d6a6:	66 46 89 14 48       	mov    %r10w,(%rax,%r9,2)
14005d6ab:	49 89 d1             	mov    %rdx,%r9
14005d6ae:	49 39 fb             	cmp    %rdi,%r11
14005d6b1:	0f 83 a9 00 00 00    	jae    0x14005d760
14005d6b7:	49 8d 53 01          	lea    0x1(%r11),%rdx
14005d6bb:	46 0f b6 14 1b       	movzbl (%rbx,%r11,1),%r10d
14005d6c0:	45 84 d2             	test   %r10b,%r10b
14005d6c3:	78 8f                	js     0x14005d654
14005d6c5:	49 89 d3             	mov    %rdx,%r11
14005d6c8:	41 81 fa 00 d8 00 00 	cmp    $0xd800,%r10d
14005d6cf:	0f 92 c2             	setb   %dl
14005d6d2:	45 8d b2 00 20 ff ff 	lea    -0xe000(%r10),%r14d
14005d6d9:	41 81 fe 00 20 10 00 	cmp    $0x102000,%r14d
14005d6e0:	41 0f 92 c6          	setb   %r14b
14005d6e4:	41 08 d6             	or     %dl,%r14b
14005d6e7:	75 06                	jne    0x14005d6ef
14005d6e9:	41 ba fd ff 00 00    	mov    $0xfffd,%r10d
14005d6ef:	41 81 fa ff ff 00 00 	cmp    $0xffff,%r10d
14005d6f6:	76 a7                	jbe    0x14005d69f
14005d6f8:	45 89 d7             	mov    %r10d,%r15d
14005d6fb:	41 c1 ef 0a          	shr    $0xa,%r15d
14005d6ff:	41 81 c7 c0 d7 ff ff 	add    $0xffffd7c0,%r15d
14005d706:	41 81 e2 ff 03 00 00 	and    $0x3ff,%r10d
14005d70d:	41 81 ca 00 dc 00 00 	or     $0xdc00,%r10d
14005d714:	49 8d 51 02          	lea    0x2(%r9),%rdx
14005d718:	66 46 89 54 48 02    	mov    %r10w,0x2(%rax,%r9,2)
14005d71e:	45 89 fa             	mov    %r15d,%r10d
14005d721:	eb 80                	jmp    0x14005d6a3
14005d723:	48 89 f1             	mov    %rsi,%rcx
14005d726:	48 89 fa             	mov    %rdi,%rdx
14005d729:	45 31 c0             	xor    %r8d,%r8d
14005d72c:	e8 ef a5 fc ff       	call   0x140027d20
14005d731:	80 7e 17 00          	cmpb   $0x0,0x17(%rsi)
14005d735:	48 89 f0             	mov    %rsi,%rax
14005d738:	79 03                	jns    0x14005d73d
14005d73a:	48 8b 06             	mov    (%rsi),%rax
14005d73d:	40 b5 01             	mov    $0x1,%bpl
14005d740:	48 85 ff             	test   %rdi,%rdi
14005d743:	74 19                	je     0x14005d75e
14005d745:	45 31 db             	xor    %r11d,%r11d
14005d748:	48 8d 0d 55 fa 08 00 	lea    0x8fa55(%rip),%rcx        # 0x1400ed1a4
14005d74f:	4c 8d 05 5f fa 08 00 	lea    0x8fa5f(%rip),%r8        # 0x1400ed1b5
14005d756:	45 31 c9             	xor    %r9d,%r9d
14005d759:	e9 59 ff ff ff       	jmp    0x14005d6b7
14005d75e:	31 d2                	xor    %edx,%edx
14005d760:	48 89 f1             	mov    %rsi,%rcx
14005d763:	45 31 c0             	xor    %r8d,%r8d
14005d766:	e8 b5 a5 fc ff       	call   0x140027d20
14005d76b:	8a 46 17             	mov    0x17(%rsi),%al
14005d76e:	84 c0                	test   %al,%al
14005d770:	78 3b                	js     0x14005d7ad
14005d772:	89 c1                	mov    %eax,%ecx
14005d774:	80 c9 03             	or     $0x3,%cl
14005d777:	80 f9 0b             	cmp    $0xb,%cl
14005d77a:	0f b6 c9             	movzbl %cl,%ecx
14005d77d:	ba 0c 00 00 00       	mov    $0xc,%edx
14005d782:	0f 45 d1             	cmovne %ecx,%edx
14005d785:	3c 0b                	cmp    $0xb,%al
14005d787:	b8 0a 00 00 00       	mov    $0xa,%eax
14005d78c:	0f 43 c2             	cmovae %edx,%eax
14005d78f:	0f b6 d0             	movzbl %al,%edx
14005d792:	b8 0a 00 00 00       	mov    $0xa,%eax
14005d797:	48 39 c2             	cmp    %rax,%rdx
14005d79a:	0f 84 e5 fd ff ff    	je     0x14005d585
14005d7a0:	48 89 f1             	mov    %rsi,%rcx
14005d7a3:	e8 f8 3e fc ff       	call   0x1400216a0
14005d7a8:	e9 d8 fd ff ff       	jmp    0x14005d585
14005d7ad:	48 8b 46 08          	mov    0x8(%rsi),%rax
14005d7b1:	48 89 c1             	mov    %rax,%rcx
14005d7b4:	48 83 c9 03          	or     $0x3,%rcx
14005d7b8:	48 83 f9 0b          	cmp    $0xb,%rcx
14005d7bc:	41 b8 0c 00 00 00    	mov    $0xc,%r8d
14005d7c2:	4c 0f 45 c1          	cmovne %rcx,%r8
14005d7c6:	48 83 f8 0b          	cmp    $0xb,%rax
14005d7ca:	ba 0a 00 00 00       	mov    $0xa,%edx
14005d7cf:	49 0f 43 d0          	cmovae %r8,%rdx
14005d7d3:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
14005d7da:	ff ff 7f
14005d7dd:	48 23 46 10          	and    0x10(%rsi),%rax
14005d7e1:	48 ff c8             	dec    %rax
14005d7e4:	eb b1                	jmp    0x14005d797
14005d7e6:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
14005d7ea:	48 89 ca             	mov    %rcx,%rdx
14005d7ed:	48 0f ba f2 3f       	btr    $0x3f,%rdx
14005d7f2:	48 ff ca             	dec    %rdx
14005d7f5:	48 39 fa             	cmp    %rdi,%rdx
14005d7f8:	73 09                	jae    0x14005d803
14005d7fa:	4c 8b 4e 08          	mov    0x8(%rsi),%r9
14005d7fe:	e9 20 fd ff ff       	jmp    0x14005d523
14005d803:	48 c1 e9 38          	shr    $0x38,%rcx
14005d807:	e9 3e fd ff ff       	jmp    0x14005d54a
14005d80c:	cc                   	int3
14005d80d:	cc                   	int3
14005d80e:	cc                   	int3
14005d80f:	cc                   	int3
14005d810:	41 57                	push   %r15
14005d812:	41 56                	push   %r14
14005d814:	41 55                	push   %r13
14005d816:	41 54                	push   %r12
14005d818:	56                   	push   %rsi
14005d819:	57                   	push   %rdi
14005d81a:	55                   	push   %rbp
14005d81b:	53                   	push   %rbx
14005d81c:	48 83 ec 38          	sub    $0x38,%rsp
14005d820:	48 8b 05 19 38 0a 00 	mov    0xa3819(%rip),%rax        # 0x140101040
14005d827:	48 31 e0             	xor    %rsp,%rax
14005d82a:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
14005d82f:	4c 8b 7a 08          	mov    0x8(%rdx),%r15
14005d833:	4d 85 ff             	test   %r15,%r15
14005d836:	0f 88 62 04 00 00    	js     0x14005dc9e
14005d83c:	48 89 ce             	mov    %rcx,%rsi
14005d83f:	4c 8b 22             	mov    (%rdx),%r12
14005d842:	0f 94 c0             	sete   %al
14005d845:	4d 85 e4             	test   %r12,%r12
14005d848:	0f 95 c1             	setne  %cl
14005d84b:	08 c1                	or     %al,%cl
14005d84d:	0f 84 4b 04 00 00    	je     0x14005dc9e
14005d853:	0f 57 c0             	xorps  %xmm0,%xmm0
14005d856:	0f 11 06             	movups %xmm0,(%rsi)
14005d859:	48 c7 46 10 00 00 00 	movq   $0x0,0x10(%rsi)
14005d860:	00
14005d861:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14005d866:	4c 89 21             	mov    %r12,(%rcx)
14005d869:	4c 89 79 08          	mov    %r15,0x8(%rcx)
14005d86d:	e8 ce 0b 00 00       	call   0x14005e440
14005d872:	84 c0                	test   %al,%al
14005d874:	0f 84 09 01 00 00    	je     0x14005d983
14005d87a:	80 7e 17 00          	cmpb   $0x0,0x17(%rsi)
14005d87e:	0f 88 a4 03 00 00    	js     0x14005dc28
14005d884:	48 89 f7             	mov    %rsi,%rdi
14005d887:	49 83 ff 17          	cmp    $0x17,%r15
14005d88b:	73 60                	jae    0x14005d8ed
14005d88d:	4d 85 ff             	test   %r15,%r15
14005d890:	74 19                	je     0x14005d8ab
14005d892:	4b 8d 04 3f          	lea    (%r15,%r15,1),%rax
14005d896:	31 c9                	xor    %ecx,%ecx
14005d898:	41 0f b6 14 0c       	movzbl (%r12,%rcx,1),%edx
14005d89d:	88 17                	mov    %dl,(%rdi)
14005d89f:	48 ff c7             	inc    %rdi
14005d8a2:	48 83 c1 02          	add    $0x2,%rcx
14005d8a6:	48 39 c8             	cmp    %rcx,%rax
14005d8a9:	75 ed                	jne    0x14005d898
14005d8ab:	c6 07 00             	movb   $0x0,(%rdi)
14005d8ae:	80 7e 17 00          	cmpb   $0x0,0x17(%rsi)
14005d8b2:	78 1f                	js     0x14005d8d3
14005d8b4:	41 80 e7 7f          	and    $0x7f,%r15b
14005d8b8:	44 88 7e 17          	mov    %r15b,0x17(%rsi)
14005d8bc:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
14005d8c1:	48 31 e1             	xor    %rsp,%rcx
14005d8c4:	48 3b 0d 75 37 0a 00 	cmp    0xa3775(%rip),%rcx        # 0x140101040
14005d8cb:	74 0c                	je     0x14005d8d9
14005d8cd:	e8 fe 19 01 00       	call   0x14006f2d0
14005d8d2:	cc                   	int3
14005d8d3:	4c 89 7e 08          	mov    %r15,0x8(%rsi)
14005d8d7:	eb e3                	jmp    0x14005d8bc
14005d8d9:	48 89 f0             	mov    %rsi,%rax
14005d8dc:	48 83 c4 38          	add    $0x38,%rsp
14005d8e0:	5b                   	pop    %rbx
14005d8e1:	5d                   	pop    %rbp
14005d8e2:	5f                   	pop    %rdi
14005d8e3:	5e                   	pop    %rsi
14005d8e4:	41 5c                	pop    %r12
14005d8e6:	41 5d                	pop    %r13
14005d8e8:	41 5e                	pop    %r14
14005d8ea:	41 5f                	pop    %r15
14005d8ec:	c3                   	ret
14005d8ed:	48 b8 f7 ff ff ff ff 	movabs $0x7ffffffffffffff7,%rax
14005d8f4:	ff ff 7f
14005d8f7:	49 8d 0c 07          	lea    (%r15,%rax,1),%rcx
14005d8fb:	48 83 c1 11          	add    $0x11,%rcx
14005d8ff:	48 83 c0 27          	add    $0x27,%rax
14005d903:	41 bd 16 00 00 00    	mov    $0x16,%r13d
14005d909:	49 89 f6             	mov    %rsi,%r14
14005d90c:	48 39 c1             	cmp    %rax,%rcx
14005d90f:	0f 82 8b 03 00 00    	jb     0x14005dca0
14005d915:	4a 8d 04 6d 00 00 00 	lea    0x0(,%r13,2),%rax
14005d91c:	00
14005d91d:	49 39 c7             	cmp    %rax,%r15
14005d920:	49 0f 47 c7          	cmova  %r15,%rax
14005d924:	48 89 c1             	mov    %rax,%rcx
14005d927:	48 83 c9 07          	or     $0x7,%rcx
14005d92b:	48 8d 51 01          	lea    0x1(%rcx),%rdx
14005d92f:	48 83 f9 17          	cmp    $0x17,%rcx
14005d933:	b9 19 00 00 00       	mov    $0x19,%ecx
14005d938:	48 0f 45 ca          	cmovne %rdx,%rcx
14005d93c:	48 83 f8 17          	cmp    $0x17,%rax
14005d940:	bb 17 00 00 00       	mov    $0x17,%ebx
14005d945:	48 0f 43 d9          	cmovae %rcx,%rbx
14005d949:	48 89 d9             	mov    %rbx,%rcx
14005d94c:	e8 43 05 01 00       	call   0x14006de94
14005d951:	48 89 c7             	mov    %rax,%rdi
14005d954:	49 83 fd 16          	cmp    $0x16,%r13
14005d958:	0f 85 2b 03 00 00    	jne    0x14005dc89
14005d95e:	48 89 3e             	mov    %rdi,(%rsi)
14005d961:	48 b8 f7 ff ff ff ff 	movabs $0x7ffffffffffffff7,%rax
14005d968:	ff ff 7f
14005d96b:	48 83 c0 09          	add    $0x9,%rax
14005d96f:	48 09 d8             	or     %rbx,%rax
14005d972:	48 89 46 10          	mov    %rax,0x10(%rsi)
14005d976:	48 c7 46 08 00 00 00 	movq   $0x0,0x8(%rsi)
14005d97d:	00
14005d97e:	e9 0f ff ff ff       	jmp    0x14005d892
14005d983:	4b 8d 14 7f          	lea    (%r15,%r15,2),%rdx
14005d987:	31 ff                	xor    %edi,%edi
14005d989:	48 89 f1             	mov    %rsi,%rcx
14005d98c:	45 31 c0             	xor    %r8d,%r8d