14049c3d9:	48 89 7c 24 58       	mov    %rdi,0x58(%rsp)
14049c3de:	75 09                	jne    0x14049c3e9
14049c3e0:	66 89 01             	mov    %ax,(%rcx)
14049c3e3:	0f b7 42 02          	movzwl 0x2(%rdx),%eax
14049c3e7:	eb 0f                	jmp    0x14049c3f8
14049c3e9:	66 c1 c8 08          	ror    $0x8,%ax
14049c3ed:	66 89 01             	mov    %ax,(%rcx)
14049c3f0:	0f b7 42 02          	movzwl 0x2(%rdx),%eax
14049c3f4:	66 c1 c8 08          	ror    $0x8,%ax
14049c3f8:	66 89 41 02          	mov    %ax,0x2(%rcx)
14049c3fc:	48 8b 0d fd d1 f8 00 	mov    0xf8d1fd(%rip),%rcx        # 0x141429600
14049c403:	49 8b 79 08          	mov    0x8(%r9),%rdi
14049c407:	48 85 c9             	test   %rcx,%rcx
14049c40a:	74 25                	je     0x14049c431
14049c40c:	e8 1f 91 37 00       	call   0x140815530
14049c411:	84 c0                	test   %al,%al
14049c413:	74 1c                	je     0x14049c431
14049c415:	48 8b 47 20          	mov    0x20(%rdi),%rax
14049c419:	45 33 c0             	xor    %r8d,%r8d
14049c41c:	44 39 43 04          	cmp    %r8d,0x4(%rbx)
14049c420:	41 0f 94 c0          	sete   %r8b
14049c424:	48 8b 48 38          	mov    0x38(%rax),%rcx
14049c428:	48 8b 51 28          	mov    0x28(%rcx),%rdx
14049c42c:	e8 9f 2c 00 00       	call   0x14049f0d0
14049c431:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
14049c436:	b8 04 00 00 00       	mov    $0x4,%eax
14049c43b:	c7 43 08 01 00 00 00 	movl   $0x1,0x8(%rbx)
14049c442:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
14049c447:	48 33 cc             	xor    %rsp,%rcx
14049c44a:	e8 b1 f0 97 00       	call   0x140e1b500
14049c44f:	48 83 c4 60          	add    $0x60,%rsp
14049c453:	5b                   	pop    %rbx
14049c454:	c3                   	ret
14049c455:	44 2b c2             	sub    %edx,%r8d
14049c458:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14049c45d:	45 8b c8             	mov    %r8d,%r9d
14049c460:	48 8d 15 c1 18 b6 00 	lea    0xb618c1(%rip),%rdx        # 0x140ffdd28
14049c467:	41 b8 04 00 00 00    	mov    $0x4,%r8d
14049c46d:	e8 7e cc d0 ff       	call   0x1401a90f0
14049c472:	48 8d 15 57 45 f0 00 	lea    0xf04557(%rip),%rdx        # 0x1413a09d0
14049c479:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14049c47e:	e8 95 03 98 00       	call   0x140e1c818
14049c483:	cc                   	int3
14049c484:	cc                   	int3
14049c485:	cc                   	int3
14049c486:	cc                   	int3
14049c487:	cc                   	int3
14049c488:	cc                   	int3
14049c489:	cc                   	int3
14049c48a:	cc                   	int3
14049c48b:	cc                   	int3
14049c48c:	cc                   	int3
14049c48d:	cc                   	int3
14049c48e:	cc                   	int3
14049c48f:	cc                   	int3
14049c490:	40 53                	rex push %rbx
14049c492:	55                   	push   %rbp
14049c493:	56                   	push   %rsi
14049c494:	57                   	push   %rdi
14049c495:	41 55                	push   %r13
14049c497:	41 56                	push   %r14
14049c499:	41 57                	push   %r15
14049c49b:	48 83 ec 60          	sub    $0x60,%rsp
14049c49f:	48 8b 05 5a ca f1 00 	mov    0xf1ca5a(%rip),%rax        # 0x1413b8f00
14049c4a6:	48 33 c4             	xor    %rsp,%rax
14049c4a9:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
14049c4ae:	4d 8b e9             	mov    %r9,%r13
14049c4b1:	49 8b d8             	mov    %r8,%rbx
14049c4b4:	48 8b fa             	mov    %rdx,%rdi
14049c4b7:	48 8b f1             	mov    %rcx,%rsi
14049c4ba:	45 33 f6             	xor    %r14d,%r14d
14049c4bd:	48 83 c2 02          	add    $0x2,%rdx
14049c4c1:	49 3b d0             	cmp    %r8,%rdx
14049c4c4:	0f 87 26 01 00 00    	ja     0x14049c5f0
14049c4ca:	48 3b d7             	cmp    %rdi,%rdx
14049c4cd:	0f 82 1d 01 00 00    	jb     0x14049c5f0
14049c4d3:	0f b7 07             	movzwl (%rdi),%eax
14049c4d6:	83 bc 24 c0 00 00 00 	cmpl   $0x1,0xc0(%rsp)
14049c4dd:	01
14049c4de:	74 04                	je     0x14049c4e4
14049c4e0:	66 c1 c8 08          	ror    $0x8,%ax
14049c4e4:	66 89 01             	mov    %ax,(%rcx)
14049c4e7:	48 8d 6f 08          	lea    0x8(%rdi),%rbp
14049c4eb:	48 3b eb             	cmp    %rbx,%rbp
14049c4ee:	0f 87 ce 00 00 00    	ja     0x14049c5c2
14049c4f4:	48 3b ea             	cmp    %rdx,%rbp
14049c4f7:	0f 82 c5 00 00 00    	jb     0x14049c5c2
14049c4fd:	48 83 c1 08          	add    $0x8,%rcx
14049c501:	41 b8 06 00 00 00    	mov    $0x6,%r8d
14049c507:	e8 54 1e d1 ff       	call   0x1401ae360
14049c50c:	2b dd                	sub    %ebp,%ebx
14049c50e:	44 8b c3             	mov    %ebx,%r8d
14049c511:	0f 88 07 01 00 00    	js     0x14049c61e
14049c517:	48 8b d5             	mov    %rbp,%rdx
14049c51a:	48 8d 4e 18          	lea    0x18(%rsi),%rcx
14049c51e:	e8 3d 1e d1 ff       	call   0x1401ae360
14049c523:	48 63 db             	movslq %ebx,%rbx
14049c526:	48 03 dd             	add    %rbp,%rbx
14049c529:	2b df                	sub    %edi,%ebx
14049c52b:	49 8b 45 00          	mov    0x0(%r13),%rax
14049c52f:	c7 40 0c 01 00 00 00 	movl   $0x1,0xc(%rax)
14049c536:	c6 46 28 01          	movb   $0x1,0x28(%rsi)
14049c53a:	4d 8b 6d 08          	mov    0x8(%r13),%r13
14049c53e:	48 8b 0d eb d0 f8 00 	mov    0xf8d0eb(%rip),%rcx        # 0x141429630
14049c545:	48 85 c9             	test   %rcx,%rcx
14049c548:	74 53                	je     0x14049c59d
14049c54a:	e8 e1 8f 37 00       	call   0x140815530
14049c54f:	84 c0                	test   %al,%al
14049c551:	74 4a                	je     0x14049c59d
14049c553:	48 8b 7e 18          	mov    0x18(%rsi),%rdi
14049c557:	8b 6e 20             	mov    0x20(%rsi),%ebp
14049c55a:	b9 28 00 00 00       	mov    $0x28,%ecx
14049c55f:	e8 a4 eb 97 00       	call   0x140e1b108
14049c564:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14049c569:	48 85 c0             	test   %rax,%rax
14049c56c:	74 10                	je     0x14049c57e
14049c56e:	4c 8b c7             	mov    %rdi,%r8
14049c571:	8b d5                	mov    %ebp,%edx
14049c573:	48 8b c8             	mov    %rax,%rcx
14049c576:	e8 75 56 29 00       	call   0x140731bf0
14049c57b:	4c 8b f0             	mov    %rax,%r14
14049c57e:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
14049c583:	49 8b 4d 20          	mov    0x20(%r13),%rcx
14049c587:	48 8b 49 38          	mov    0x38(%rcx),%rcx
14049c58b:	44 0f b7 06          	movzwl (%rsi),%r8d
14049c58f:	4c 8d 4c 24 20       	lea    0x20(%rsp),%r9
14049c594:	48 8b 51 28          	mov    0x28(%rcx),%rdx
14049c598:	e8 73 2c 00 00       	call   0x14049f210
14049c59d:	c7 46 2c 01 00 00 00 	movl   $0x1,0x2c(%rsi)
14049c5a4:	8b c3                	mov    %ebx,%eax
14049c5a6:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
14049c5ab:	48 33 cc             	xor    %rsp,%rcx
14049c5ae:	e8 4d ef 97 00       	call   0x140e1b500
14049c5b3:	48 83 c4 60          	add    $0x60,%rsp
14049c5b7:	41 5f                	pop    %r15
14049c5b9:	41 5e                	pop    %r14
14049c5bb:	41 5d                	pop    %r13
14049c5bd:	5f                   	pop    %rdi
14049c5be:	5e                   	pop    %rsi
14049c5bf:	5d                   	pop    %rbp
14049c5c0:	5b                   	pop    %rbx
14049c5c1:	c3                   	ret
14049c5c2:	2b df                	sub    %edi,%ebx
14049c5c4:	44 8b cb             	mov    %ebx,%r9d
14049c5c7:	41 b8 08 00 00 00    	mov    $0x8,%r8d
14049c5cd:	48 8d 15 fc 16 b6 00 	lea    0xb616fc(%rip),%rdx        # 0x140ffdcd0
14049c5d4:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14049c5d9:	e8 12 cb d0 ff       	call   0x1401a90f0
14049c5de:	48 8d 15 eb 43 f0 00 	lea    0xf043eb(%rip),%rdx        # 0x1413a09d0
14049c5e5:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14049c5ea:	e8 29 02 98 00       	call   0x140e1c818
14049c5ef:	cc                   	int3
14049c5f0:	2b df                	sub    %edi,%ebx
14049c5f2:	44 8b cb             	mov    %ebx,%r9d
14049c5f5:	41 b8 02 00 00 00    	mov    $0x2,%r8d
14049c5fb:	48 8d 15 be 16 b6 00 	lea    0xb616be(%rip),%rdx        # 0x140ffdcc0
14049c602:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14049c607:	e8 e4 ca d0 ff       	call   0x1401a90f0
14049c60c:	48 8d 15 bd 43 f0 00 	lea    0xf043bd(%rip),%rdx        # 0x1413a09d0
14049c613:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14049c618:	e8 fb 01 98 00       	call   0x140e1c818
14049c61d:	cc                   	int3
14049c61e:	48 8d 15 c3 16 b6 00 	lea    0xb616c3(%rip),%rdx        # 0x140ffdce8
14049c625:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14049c62a:	e8 c1 c9 d0 ff       	call   0x1401a8ff0
14049c62f:	48 8d 15 5a 44 f0 00 	lea    0xf0445a(%rip),%rdx        # 0x1413a0a90
14049c636:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14049c63b:	e8 d8 01 98 00       	call   0x140e1c818
14049c640:	cc                   	int3
14049c641:	cc                   	int3
14049c642:	cc                   	int3
14049c643:	cc                   	int3
14049c644:	cc                   	int3
14049c645:	cc                   	int3
14049c646:	cc                   	int3
14049c647:	cc                   	int3
14049c648:	cc                   	int3
14049c649:	cc                   	int3
14049c64a:	cc                   	int3
14049c64b:	cc                   	int3
14049c64c:	cc                   	int3
14049c64d:	cc                   	int3
14049c64e:	cc                   	int3
14049c64f:	cc                   	int3
14049c650:	40 53                	rex push %rbx
14049c652:	55                   	push   %rbp
14049c653:	56                   	push   %rsi
14049c654:	57                   	push   %rdi
14049c655:	41 54                	push   %r12
14049c657:	41 55                	push   %r13
14049c659:	41 56                	push   %r14
14049c65b:	41 57                	push   %r15
14049c65d:	48 81 ec 88 00 00 00 	sub    $0x88,%rsp
14049c664:	48 8b 05 95 c8 f1 00 	mov    0xf1c895(%rip),%rax        # 0x1413b8f00
14049c66b:	48 33 c4             	xor    %rsp,%rax
14049c66e:	48 89 44 24 78       	mov    %rax,0x78(%rsp)
14049c673:	4c 89 4c 24 28       	mov    %r9,0x28(%rsp)
14049c678:	49 8b e8             	mov    %r8,%rbp
14049c67b:	4c 8b fa             	mov    %rdx,%r15
14049c67e:	4c 8b e1             	mov    %rcx,%r12
14049c681:	48 8d 72 20          	lea    0x20(%rdx),%rsi
14049c685:	49 3b f0             	cmp    %r8,%rsi
14049c688:	0f 87 d7 01 00 00    	ja     0x14049c865
14049c68e:	48 8d 42 09          	lea    0x9(%rdx),%rax
14049c692:	48 3b f0             	cmp    %rax,%rsi
14049c695:	0f 82 ca 01 00 00    	jb     0x14049c865
14049c69b:	8b 02                	mov    (%rdx),%eax
14049c69d:	83 bc 24 f0 00 00 00 	cmpl   $0x1,0xf0(%rsp)
14049c6a4:	01
14049c6a5:	75 07                	jne    0x14049c6ae
14049c6a7:	89 01                	mov    %eax,(%rcx)
14049c6a9:	8b 42 04             	mov    0x4(%rdx),%eax
14049c6ac:	eb 09                	jmp    0x14049c6b7
14049c6ae:	0f c8                	bswap  %eax
14049c6b0:	89 01                	mov    %eax,(%rcx)
14049c6b2:	8b 42 04             	mov    0x4(%rdx),%eax
14049c6b5:	0f c8                	bswap  %eax
14049c6b7:	89 41 04             	mov    %eax,0x4(%rcx)
14049c6ba:	0f b6 42 08          	movzbl 0x8(%rdx),%eax
14049c6be:	88 41 08             	mov    %al,0x8(%rcx)
14049c6c1:	33 ff                	xor    %edi,%edi
14049c6c3:	48 89 79 18          	mov    %rdi,0x18(%rcx)
14049c6c7:	b9 18 00 00 00       	mov    $0x18,%ecx
14049c6cc:	e8 37 ea 97 00       	call   0x140e1b108
14049c6d1:	48 85 c0             	test   %rax,%rax
14049c6d4:	74 0d                	je     0x14049c6e3
14049c6d6:	48 89 38             	mov    %rdi,(%rax)
14049c6d9:	48 89 78 08          	mov    %rdi,0x8(%rax)
14049c6dd:	48 89 78 10          	mov    %rdi,0x10(%rax)
14049c6e1:	eb 03                	jmp    0x14049c6e6
14049c6e3:	48 8b c7             	mov    %rdi,%rax
14049c6e6:	49 89 44 24 10       	mov    %rax,0x10(%r12)
14049c6eb:	48 3b f5             	cmp    %rbp,%rsi
14049c6ee:	0f 83 d9 00 00 00    	jae    0x14049c7cd
14049c6f4:	b9 20 00 00 00       	mov    $0x20,%ecx
14049c6f9:	e8 0a ea 97 00       	call   0x140e1b108
14049c6fe:	48 8b d8             	mov    %rax,%rbx
14049c701:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
14049c706:	48 85 c0             	test   %rax,%rax
14049c709:	74 0f                	je     0x14049c71a
14049c70b:	48 89 38             	mov    %rdi,(%rax)
14049c70e:	89 78 08             	mov    %edi,0x8(%rax)
14049c711:	48 89 78 10          	mov    %rdi,0x10(%rax)
14049c715:	89 78 18             	mov    %edi,0x18(%rax)
14049c718:	eb 03                	jmp    0x14049c71d
14049c71a:	48 8b df             	mov    %rdi,%rbx
14049c71d:	49 89 5c 24 18       	mov    %rbx,0x18(%r12)
14049c722:	48 8b 05 37 e7 f0 00 	mov    0xf0e737(%rip),%rax        # 0x1413aae60
14049c729:	44 8b c5             	mov    %ebp,%r8d
14049c72c:	44 2b c6             	sub    %esi,%r8d
14049c72f:	48 8b d6             	mov    %rsi,%rdx
14049c732:	48 8b 48 28          	mov    0x28(%rax),%rcx
14049c736:	e8 55 f8 2d 00       	call   0x14077bf90
14049c73b:	48 63 f8             	movslq %eax,%rdi
14049c73e:	85 c0                	test   %eax,%eax
14049c740:	0f 88 cc 00 00 00    	js     0x14049c812
14049c746:	89 7b 08             	mov    %edi,0x8(%rbx)
14049c749:	8d 4f 01             	lea    0x1(%rdi),%ecx
14049c74c:	48 63 c9             	movslq %ecx,%rcx
14049c74f:	e8 c8 ee 97 00       	call   0x140e1b61c
14049c754:	48 89 03             	mov    %rax,(%rbx)
14049c757:	4c 8b c7             	mov    %rdi,%r8
14049c75a:	48 8b d6             	mov    %rsi,%rdx
14049c75d:	48 8b c8             	mov    %rax,%rcx
14049c760:	e8 ab 28 a4 00       	call   0x140edf010
14049c765:	48 8b 03             	mov    (%rbx),%rax
14049c768:	c6 04 07 00          	movb   $0x0,(%rdi,%rax,1)
14049c76c:	48 03 fe             	add    %rsi,%rdi
14049c76f:	44 8b ed             	mov    %ebp,%r13d
14049c772:	44 2b ef             	sub    %edi,%r13d
14049c775:	45 8b c5             	mov    %r13d,%r8d
14049c778:	0f 88 16 01 00 00    	js     0x14049c894
14049c77e:	48 8d 4b 10          	lea    0x10(%rbx),%rcx
14049c782:	48 8b d7             	mov    %rdi,%rdx
14049c785:	e8 d6 1b d1 ff       	call   0x1401ae360
14049c78a:	2b fe                	sub    %esi,%edi
14049c78c:	41 03 fd             	add    %r13d,%edi
14049c78f:	49 8b 4c 24 10       	mov    0x10(%r12),%rcx
14049c794:	48 8b 51 08          	mov    0x8(%rcx),%rdx
14049c798:	48 3b 51 10          	cmp    0x10(%rcx),%rdx
14049c79c:	74 0f                	je     0x14049c7ad
14049c79e:	49 8b 44 24 18       	mov    0x18(%r12),%rax
14049c7a3:	48 89 02             	mov    %rax,(%rdx)
14049c7a6:	48 83 41 08 08       	addq   $0x8,0x8(%rcx)
14049c7ab:	eb 0a                	jmp    0x14049c7b7
14049c7ad:	4d 8d 44 24 18       	lea    0x18(%r12),%r8
14049c7b2:	e8 09 e8 ed ff       	call   0x14037afc0
14049c7b7:	48 63 c7             	movslq %edi,%rax
14049c7ba:	48 03 f0             	add    %rax,%rsi
14049c7bd:	33 ff                	xor    %edi,%edi
14049c7bf:	49 89 7c 24 18       	mov    %rdi,0x18(%r12)
14049c7c4:	48 3b f5             	cmp    %rbp,%rsi
14049c7c7:	0f 82 27 ff ff ff    	jb     0x14049c6f4
14049c7cd:	49 89 7c 24 18       	mov    %rdi,0x18(%r12)
14049c7d2:	41 0f b6 4c 24 03    	movzbl 0x3(%r12),%ecx
14049c7d8:	80 e1 01             	and    $0x1,%cl
14049c7db:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
14049c7e0:	48 8b 00             	mov    (%rax),%rax
14049c7e3:	88 48 20             	mov    %cl,0x20(%rax)
14049c7e6:	41 c6 44 24 20 01    	movb   $0x1,0x20(%r12)
14049c7ec:	41 2b f7             	sub    %r15d,%esi
14049c7ef:	8b c6                	mov    %esi,%eax
14049c7f1:	48 8b 4c 24 78       	mov    0x78(%rsp),%rcx
14049c7f6:	48 33 cc             	xor    %rsp,%rcx
14049c7f9:	e8 02 ed 97 00       	call   0x140e1b500
14049c7fe:	48 81 c4 88 00 00 00 	add    $0x88,%rsp
14049c805:	41 5f                	pop    %r15
14049c807:	41 5e                	pop    %r14
14049c809:	41 5d                	pop    %r13
14049c80b:	41 5c                	pop    %r12
14049c80d:	5f                   	pop    %rdi
14049c80e:	5e                   	pop    %rsi
14049c80f:	5d                   	pop    %rbp
14049c810:	5b                   	pop    %rbx
14049c811:	c3                   	ret
14049c812:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14049c817:	e8 94 a6 cf ff       	call   0x140196eb0
14049c81c:	4c 8b c8             	mov    %rax,%r9
14049c81f:	4c 8b c5             	mov    %rbp,%r8
14049c822:	48 8b d6             	mov    %rsi,%rdx
14049c825:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
14049c82a:	e8 f1 d3 f5 ff       	call   0x1403f9c20
14049c82f:	90                   	nop
14049c830:	48 8b c8             	mov    %rax,%rcx
14049c833:	e8 98 31 d0 ff       	call   0x14019f9d0
14049c838:	4c 8b c8             	mov    %rax,%r9
14049c83b:	4c 8d 05 e6 09 b6 00 	lea    0xb609e6(%rip),%r8        # 0x140ffd228
14049c842:	48 8d 15 07 10 b6 00 	lea    0xb61007(%rip),%rdx        # 0x140ffd850
14049c849:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14049c84e:	e8 1d d4 f5 ff       	call   0x1403f9c70
14049c853:	48 8d 15 96 52 f0 00 	lea    0xf05296(%rip),%rdx        # 0x1413a1af0
14049c85a:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14049c85f:	e8 b4 ff 97 00       	call   0x140e1c818
14049c864:	90                   	nop
14049c865:	41 2b ef             	sub    %r15d,%ebp
14049c868:	44 8b cd             	mov    %ebp,%r9d
14049c86b:	41 b8 20 00 00 00    	mov    $0x20,%r8d
14049c871:	48 8d 15 58 10 b6 00 	lea    0xb61058(%rip),%rdx        # 0x140ffd8d0
14049c878:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14049c87d:	e8 6e c8 d0 ff       	call   0x1401a90f0
14049c882:	48 8d 15 47 41 f0 00 	lea    0xf04147(%rip),%rdx        # 0x1413a09d0
14049c889:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14049c88e:	e8 85 ff 97 00       	call   0x140e1c818
14049c893:	cc                   	int3
14049c894:	48 8d 15 f5 0f b6 00 	lea    0xb60ff5(%rip),%rdx        # 0x140ffd890
14049c89b:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14049c8a0:	e8 4b c7 d0 ff       	call   0x1401a8ff0
14049c8a5:	48 8d 15 e4 41 f0 00 	lea    0xf041e4(%rip),%rdx        # 0x1413a0a90
14049c8ac:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14049c8b1:	e8 62 ff 97 00       	call   0x140e1c818