18004e4cf:	33 ed                	xor    %ebp,%ebp
18004e4d1:	41 85 cd             	test   %ecx,%r13d
18004e4d4:	0f 86 c0 01 00 00    	jbe    0x18004e69a
18004e4da:	44 8b 4c ee 08       	mov    0x8(%rsi,%rbp,8),%r9d
18004e4df:	83 e1 07             	and    $0x7,%ecx
18004e4e2:	44 8b 44 ee 04       	mov    0x4(%rsi,%rbp,8),%r8d
18004e4e7:	8b d1                	mov    %ecx,%edx
18004e4e9:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
18004e4ee:	e8 d9 01 00 00       	call   0x18004e6cc
18004e4f3:	84 c0                	test   %al,%al
18004e4f5:	0f 84 c9 01 00 00    	je     0x18004e6c4
18004e4fb:	8b 0e                	mov    (%rsi),%ecx
18004e4fd:	ff c5                	inc    %ebp
18004e4ff:	8b c1                	mov    %ecx,%eax
18004e501:	c1 e8 03             	shr    $0x3,%eax
18004e504:	3b e8                	cmp    %eax,%ebp
18004e506:	72 d2                	jb     0x18004e4da
18004e508:	e9 8d 01 00 00       	jmp    0x18004e69a
18004e50d:	49 3b ff             	cmp    %r15,%rdi
18004e510:	0f 82 ae 01 00 00    	jb     0x18004e6c4
18004e516:	33 db                	xor    %ebx,%ebx
18004e518:	41 85 cd             	test   %ecx,%r13d
18004e51b:	76 2e                	jbe    0x18004e54b
18004e51d:	44 8b 46 04          	mov    0x4(%rsi),%r8d
18004e521:	83 e1 07             	and    $0x7,%ecx
18004e524:	8b d1                	mov    %ecx,%edx
18004e526:	44 03 c3             	add    %ebx,%r8d
18004e529:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
18004e52e:	45 33 c9             	xor    %r9d,%r9d
18004e531:	e8 96 01 00 00       	call   0x18004e6cc
18004e536:	84 c0                	test   %al,%al
18004e538:	0f 84 86 01 00 00    	je     0x18004e6c4
18004e53e:	8b 0e                	mov    (%rsi),%ecx
18004e540:	ff c3                	inc    %ebx
18004e542:	8b c1                	mov    %ecx,%eax
18004e544:	c1 e8 03             	shr    $0x3,%eax
18004e547:	3b d8                	cmp    %eax,%ebx
18004e549:	72 d2                	jb     0x18004e51d
18004e54b:	49 8b df             	mov    %r15,%rbx
18004e54e:	e9 47 01 00 00       	jmp    0x18004e69a
18004e553:	48 83 ff 04          	cmp    $0x4,%rdi
18004e557:	0f 82 67 01 00 00    	jb     0x18004e6c4
18004e55d:	48 8b c1             	mov    %rcx,%rax
18004e560:	49 8b df             	mov    %r15,%rbx
18004e563:	48 c1 e8 03          	shr    $0x3,%rax
18004e567:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
18004e56e:	00
18004e56f:	49 3b c7             	cmp    %r15,%rax
18004e572:	48 0f 43 d8          	cmovae %rax,%rbx
18004e576:	48 3b fb             	cmp    %rbx,%rdi
18004e579:	0f 82 45 01 00 00    	jb     0x18004e6c4
18004e57f:	33 ed                	xor    %ebp,%ebp
18004e581:	41 85 cd             	test   %ecx,%r13d
18004e584:	0f 86 10 01 00 00    	jbe    0x18004e69a
18004e58a:	44 8b 44 ae 04       	mov    0x4(%rsi,%rbp,4),%r8d
18004e58f:	83 e1 07             	and    $0x7,%ecx
18004e592:	8b d1                	mov    %ecx,%edx
18004e594:	45 33 c9             	xor    %r9d,%r9d
18004e597:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
18004e59c:	e8 2b 01 00 00       	call   0x18004e6cc
18004e5a1:	84 c0                	test   %al,%al
18004e5a3:	0f 84 1b 01 00 00    	je     0x18004e6c4
18004e5a9:	8b 0e                	mov    (%rsi),%ecx
18004e5ab:	ff c5                	inc    %ebp
18004e5ad:	8b c1                	mov    %ecx,%eax
18004e5af:	c1 e8 03             	shr    $0x3,%eax
18004e5b2:	3b e8                	cmp    %eax,%ebp
18004e5b4:	72 d4                	jb     0x18004e58a
18004e5b6:	e9 df 00 00 00       	jmp    0x18004e69a
18004e5bb:	49 3b ff             	cmp    %r15,%rdi
18004e5be:	0f 82 00 01 00 00    	jb     0x18004e6c4
18004e5c4:	33 db                	xor    %ebx,%ebx
18004e5c6:	41 85 cd             	test   %ecx,%r13d
18004e5c9:	76 80                	jbe    0x18004e54b
18004e5cb:	44 8b 46 04          	mov    0x4(%rsi),%r8d
18004e5cf:	83 e1 07             	and    $0x7,%ecx
18004e5d2:	8b d1                	mov    %ecx,%edx
18004e5d4:	44 03 c3             	add    %ebx,%r8d
18004e5d7:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
18004e5dc:	45 33 c9             	xor    %r9d,%r9d
18004e5df:	e8 e8 00 00 00       	call   0x18004e6cc
18004e5e4:	84 c0                	test   %al,%al
18004e5e6:	0f 84 d8 00 00 00    	je     0x18004e6c4
18004e5ec:	8b 0e                	mov    (%rsi),%ecx
18004e5ee:	ff c3                	inc    %ebx
18004e5f0:	8b c1                	mov    %ecx,%eax
18004e5f2:	c1 e8 03             	shr    $0x3,%eax
18004e5f5:	3b d8                	cmp    %eax,%ebx
18004e5f7:	72 d2                	jb     0x18004e5cb
18004e5f9:	e9 4d ff ff ff       	jmp    0x18004e54b
18004e5fe:	48 83 ff 04          	cmp    $0x4,%rdi
18004e602:	0f 82 bc 00 00 00    	jb     0x18004e6c4
18004e608:	48 8b c1             	mov    %rcx,%rax
18004e60b:	49 8b df             	mov    %r15,%rbx
18004e60e:	48 c1 e8 03          	shr    $0x3,%rax
18004e612:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
18004e619:	00
18004e61a:	49 3b c7             	cmp    %r15,%rax
18004e61d:	48 0f 43 d8          	cmovae %rax,%rbx
18004e621:	48 3b fb             	cmp    %rbx,%rdi
18004e624:	0f 82 9a 00 00 00    	jb     0x18004e6c4
18004e62a:	33 ed                	xor    %ebp,%ebp
18004e62c:	41 85 cd             	test   %ecx,%r13d
18004e62f:	76 69                	jbe    0x18004e69a
18004e631:	44 8b 44 ae 04       	mov    0x4(%rsi,%rbp,4),%r8d
18004e636:	83 e1 07             	and    $0x7,%ecx
18004e639:	8b d1                	mov    %ecx,%edx
18004e63b:	45 33 c9             	xor    %r9d,%r9d
18004e63e:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
18004e643:	e8 84 00 00 00       	call   0x18004e6cc
18004e648:	84 c0                	test   %al,%al
18004e64a:	74 78                	je     0x18004e6c4
18004e64c:	8b 0e                	mov    (%rsi),%ecx
18004e64e:	ff c5                	inc    %ebp
18004e650:	8b c1                	mov    %ecx,%eax
18004e652:	c1 e8 03             	shr    $0x3,%eax
18004e655:	3b e8                	cmp    %eax,%ebp
18004e657:	72 d8                	jb     0x18004e631
18004e659:	eb 3f                	jmp    0x18004e69a
18004e65b:	49 3b ff             	cmp    %r15,%rdi
18004e65e:	72 64                	jb     0x18004e6c4
18004e660:	33 db                	xor    %ebx,%ebx
18004e662:	41 85 cd             	test   %ecx,%r13d
18004e665:	76 2a                	jbe    0x18004e691
18004e667:	44 8b 46 04          	mov    0x4(%rsi),%r8d
18004e66b:	83 e1 07             	and    $0x7,%ecx
18004e66e:	8b d1                	mov    %ecx,%edx
18004e670:	44 03 c3             	add    %ebx,%r8d
18004e673:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
18004e678:	45 33 c9             	xor    %r9d,%r9d
18004e67b:	e8 4c 00 00 00       	call   0x18004e6cc
18004e680:	84 c0                	test   %al,%al
18004e682:	74 40                	je     0x18004e6c4
18004e684:	8b 0e                	mov    (%rsi),%ecx
18004e686:	ff c3                	inc    %ebx
18004e688:	8b c1                	mov    %ecx,%eax
18004e68a:	c1 e8 03             	shr    $0x3,%eax
18004e68d:	3b d8                	cmp    %eax,%ebx
18004e68f:	72 d6                	jb     0x18004e667
18004e691:	49 8b df             	mov    %r15,%rbx
18004e694:	b1 01                	mov    $0x1,%cl
18004e696:	84 c9                	test   %cl,%cl
18004e698:	74 2a                	je     0x18004e6c4
18004e69a:	48 2b fb             	sub    %rbx,%rdi
18004e69d:	48 03 f3             	add    %rbx,%rsi
18004e6a0:	48 83 ff 04          	cmp    $0x4,%rdi
18004e6a4:	0f 87 7a fd ff ff    	ja     0x18004e424
18004e6aa:	33 c0                	xor    %eax,%eax
18004e6ac:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
18004e6b1:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
18004e6b6:	48 83 c4 20          	add    $0x20,%rsp
18004e6ba:	41 5f                	pop    %r15
18004e6bc:	41 5e                	pop    %r14
18004e6be:	41 5d                	pop    %r13
18004e6c0:	5f                   	pop    %rdi
18004e6c1:	5e                   	pop    %rsi
18004e6c2:	c3                   	ret
18004e6c3:	cc                   	int3
18004e6c4:	b8 24 00 00 c0       	mov    $0xc0000024,%eax
18004e6c9:	eb e1                	jmp    0x18004e6ac
18004e6cb:	cc                   	int3
18004e6cc:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18004e6d1:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18004e6d6:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
18004e6db:	41 56                	push   %r14
18004e6dd:	48 83 ec 30          	sub    $0x30,%rsp
18004e6e1:	41 8b f8             	mov    %r8d,%edi
18004e6e4:	85 d2                	test   %edx,%edx
18004e6e6:	0f 84 8b 00 00 00    	je     0x18004e777
18004e6ec:	0f 8e c7 00 00 00    	jle    0x18004e7b9
18004e6f2:	83 fa 04             	cmp    $0x4,%edx
18004e6f5:	0f 8e c2 00 00 00    	jle    0x18004e7bd
18004e6fb:	83 fa 05             	cmp    $0x5,%edx
18004e6fe:	0f 85 b5 00 00 00    	jne    0x18004e7b9
18004e704:	4c 8b 31             	mov    (%rcx),%r14
18004e707:	41 b8 00 10 00 00    	mov    $0x1000,%r8d
18004e70d:	41 8b e9             	mov    %r9d,%ebp
18004e710:	48 c1 e5 0c          	shl    $0xc,%rbp
18004e714:	48 8b d5             	mov    %rbp,%rdx
18004e717:	49 8b 4e 20          	mov    0x20(%r14),%rcx
18004e71b:	e8 04 f1 ff ff       	call   0x18004d824
18004e720:	48 8d 48 18          	lea    0x18(%rax),%rcx
18004e724:	48 f7 d8             	neg    %rax
18004e727:	48 1b d2             	sbb    %rdx,%rdx
18004e72a:	48 23 d1             	and    %rcx,%rdx
18004e72d:	0f 84 86 00 00 00    	je     0x18004e7b9
18004e733:	8b 5a 08             	mov    0x8(%rdx),%ebx
18004e736:	41 b8 00 10 00 00    	mov    $0x1000,%r8d
18004e73c:	8b 02                	mov    (%rdx),%eax
18004e73e:	8b d7                	mov    %edi,%edx
18004e740:	49 8b 4e 18          	mov    0x18(%r14),%rcx
18004e744:	48 2b d8             	sub    %rax,%rbx
18004e747:	48 c1 e3 0c          	shl    $0xc,%rbx
18004e74b:	48 03 dd             	add    %rbp,%rbx
18004e74e:	48 c1 e2 0c          	shl    $0xc,%rdx
18004e752:	48 c1 eb 0c          	shr    $0xc,%rbx
18004e756:	e8 c9 f0 ff ff       	call   0x18004d824
18004e75b:	48 8d 48 18          	lea    0x18(%rax),%rcx
18004e75f:	48 f7 d8             	neg    %rax
18004e762:	48 1b d2             	sbb    %rdx,%rdx
18004e765:	48 23 d1             	and    %rcx,%rdx
18004e768:	74 26                	je     0x18004e790
18004e76a:	39 3a                	cmp    %edi,(%rdx)
18004e76c:	75 4b                	jne    0x18004e7b9
18004e76e:	83 7a 04 01          	cmpl   $0x1,0x4(%rdx)
18004e772:	75 45                	jne    0x18004e7b9
18004e774:	89 5a 08             	mov    %ebx,0x8(%rdx)
18004e777:	b0 01                	mov    $0x1,%al
18004e779:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18004e77e:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
18004e783:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
18004e788:	48 83 c4 30          	add    $0x30,%rsp
18004e78c:	41 5e                	pop    %r14
18004e78e:	c3                   	ret
18004e78f:	cc                   	int3
18004e790:	49 8b 4e 18          	mov    0x18(%r14),%rcx
18004e794:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
18004e799:	89 7c 24 20          	mov    %edi,0x20(%rsp)
18004e79d:	c7 44 24 24 01 00 00 	movl   $0x1,0x24(%rsp)
18004e7a4:	00
18004e7a5:	89 5c 24 28          	mov    %ebx,0x28(%rsp)
18004e7a9:	e8 7a ed ff ff       	call   0x18004d528
18004e7ae:	33 c9                	xor    %ecx,%ecx
18004e7b0:	85 c0                	test   %eax,%eax
18004e7b2:	0f 48 c8             	cmovs  %eax,%ecx
18004e7b5:	85 c9                	test   %ecx,%ecx
18004e7b7:	79 be                	jns    0x18004e777
18004e7b9:	32 c0                	xor    %al,%al
18004e7bb:	eb bc                	jmp    0x18004e779
18004e7bd:	48 8b 01             	mov    (%rcx),%rax
18004e7c0:	48 8b d7             	mov    %rdi,%rdx
18004e7c3:	48 c1 e2 0c          	shl    $0xc,%rdx
18004e7c7:	41 b8 00 10 00 00    	mov    $0x1000,%r8d
18004e7cd:	48 8b 68 18          	mov    0x18(%rax),%rbp
18004e7d1:	48 8b cd             	mov    %rbp,%rcx
18004e7d4:	e8 4b f0 ff ff       	call   0x18004d824
18004e7d9:	48 8b d8             	mov    %rax,%rbx
18004e7dc:	48 85 c0             	test   %rax,%rax
18004e7df:	74 96                	je     0x18004e777
18004e7e1:	39 78 18             	cmp    %edi,0x18(%rax)
18004e7e4:	75 d3                	jne    0x18004e7b9
18004e7e6:	83 78 1c 01          	cmpl   $0x1,0x1c(%rax)
18004e7ea:	75 cd                	jne    0x18004e7b9
18004e7ec:	48 8b d0             	mov    %rax,%rdx
18004e7ef:	48 8b cd             	mov    %rbp,%rcx
18004e7f2:	e8 b1 3f fe ff       	call   0x1800327a8
18004e7f7:	48 8b cb             	mov    %rbx,%rcx
18004e7fa:	e8 fd b7 04 00       	call   0x180099ffc
18004e7ff:	e9 73 ff ff ff       	jmp    0x18004e777
18004e804:	40 53                	rex push %rbx
18004e806:	48 83 ec 30          	sub    $0x30,%rsp
18004e80a:	80 ba 98 00 00 00 03 	cmpb   $0x3,0x98(%rdx)
18004e811:	48 8b da             	mov    %rdx,%rbx
18004e814:	74 0c                	je     0x18004e822
18004e816:	c7 82 a0 00 00 00 10 	movl   $0xc0000010,0xa0(%rdx)
18004e81d:	00 00 c0
18004e820:	eb 48                	jmp    0x18004e86a
18004e822:	48 8b 42 68          	mov    0x68(%rdx),%rax
18004e826:	44 8b 8a 80 00 00 00 	mov    0x80(%rdx),%r9d
18004e82d:	4c 8b 42 78          	mov    0x78(%rdx),%r8
18004e831:	8b 51 0c             	mov    0xc(%rcx),%edx
18004e834:	48 8b 49 20          	mov    0x20(%rcx),%rcx
18004e838:	48 83 64 24 28 00    	andq   $0x0,0x28(%rsp)
18004e83e:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18004e843:	e8 94 ee ff ff       	call   0x18004d6dc
18004e848:	33 c9                	xor    %ecx,%ecx
18004e84a:	ba 24 00 00 c0       	mov    $0xc0000024,%edx
18004e84f:	85 c0                	test   %eax,%eax
18004e851:	0f 48 ca             	cmovs  %edx,%ecx
18004e854:	89 8b a0 00 00 00    	mov    %ecx,0xa0(%rbx)
18004e85a:	8b 83 a0 00 00 00    	mov    0xa0(%rbx),%eax
18004e860:	85 c0                	test   %eax,%eax
18004e862:	79 06                	jns    0x18004e86a
18004e864:	8b 83 a0 00 00 00    	mov    0xa0(%rbx),%eax
18004e86a:	48 83 c4 30          	add    $0x30,%rsp
18004e86e:	5b                   	pop    %rbx
18004e86f:	c3                   	ret
18004e870:	cc                   	int3
18004e871:	cc                   	int3
18004e872:	cc                   	int3
18004e873:	cc                   	int3
18004e874:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
18004e879:	44 88 44 24 18       	mov    %r8b,0x18(%rsp)
18004e87e:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
18004e883:	55                   	push   %rbp
18004e884:	56                   	push   %rsi
18004e885:	57                   	push   %rdi
18004e886:	41 54                	push   %r12
18004e888:	41 55                	push   %r13
18004e88a:	41 56                	push   %r14
18004e88c:	41 57                	push   %r15
18004e88e:	48 83 ec 20          	sub    $0x20,%rsp
18004e892:	4c 8b a4 24 90 00 00 	mov    0x90(%rsp),%r12
18004e899:	00
18004e89a:	33 db                	xor    %ebx,%ebx
18004e89c:	33 f6                	xor    %esi,%esi
18004e89e:	41 8b e9             	mov    %r9d,%ebp
18004e8a1:	44 8a ea             	mov    %dl,%r13b
18004e8a4:	49 21 1c 24          	and    %rbx,(%r12)
18004e8a8:	45 85 c9             	test   %r9d,%r9d
18004e8ab:	0f 84 da 01 00 00    	je     0x18004ea8b
18004e8b1:	48 8b bc 24 80 00 00 	mov    0x80(%rsp),%rdi
18004e8b8:	00
18004e8b9:	48 81 ff 00 20 00 00 	cmp    $0x2000,%rdi
18004e8c0:	0f 8e c5 01 00 00    	jle    0x18004ea8b
18004e8c6:	48 8b c7             	mov    %rdi,%rax
18004e8c9:	44 8b c5             	mov    %ebp,%r8d
18004e8cc:	48 99                	cqto
18004e8ce:	48 f7 fd             	idiv   %rbp
18004e8d1:	48 85 d2             	test   %rdx,%rdx
18004e8d4:	0f 85 aa 01 00 00    	jne    0x18004ea84
18004e8da:	48 8b 84 24 88 00 00 	mov    0x88(%rsp),%rax
18004e8e1:	00
18004e8e2:	48 99                	cqto
18004e8e4:	49 f7 f8             	idiv   %r8
18004e8e7:	48 85 d2             	test   %rdx,%rdx
18004e8ea:	0f 85 94 01 00 00    	jne    0x18004ea84
18004e8f0:	48 8b 84 24 88 00 00 	mov    0x88(%rsp),%rax
18004e8f7:	00
18004e8f8:	b9 70 2e 00 00       	mov    $0x2e70,%ecx
18004e8fd:	48 99                	cqto
18004e8ff:	49 f7 f8             	idiv   %r8
18004e902:	4c 8b f8             	mov    %rax,%r15
18004e905:	48 8d 87 00 f0 ff ff 	lea    -0x1000(%rdi),%rax
18004e90c:	48 99                	cqto
18004e90e:	49 f7 f8             	idiv   %r8
18004e911:	4d 8d 34 07          	lea    (%r15,%rax,1),%r14
18004e915:	e8 fa 7f ff ff       	call   0x180046914
18004e91a:	48 8b d8             	mov    %rax,%rbx
18004e91d:	48 85 c0             	test   %rax,%rax
18004e920:	75 0a                	jne    0x18004e92c
18004e922:	bf 9a 00 00 c0       	mov    $0xc000009a,%edi
18004e927:	e9 91 01 00 00       	jmp    0x18004eabd
18004e92c:	89 a8 48 0e 00 00    	mov    %ebp,0xe48(%rax)
18004e932:	33 d2                	xor    %edx,%edx
18004e934:	c7 80 40 0e 00 00 01 	movl   $0x1,0xe40(%rax)
18004e93b:	00 00 00
18004e93e:	4c 89 78 08          	mov    %r15,0x8(%rax)
18004e942:	4c 89 70 10          	mov    %r14,0x10(%rax)
18004e946:	b8 00 10 00 00       	mov    $0x1000,%eax
18004e94b:	f7 f5                	div    %ebp
18004e94d:	33 ed                	xor    %ebp,%ebp
18004e94f:	89 83 4c 0e 00 00    	mov    %eax,0xe4c(%rbx)
18004e955:	41 8b c6             	mov    %r14d,%eax
18004e958:	41 2b c7             	sub    %r15d,%eax
18004e95b:	48 89 ab 50 0e 00 00 	mov    %rbp,0xe50(%rbx)
18004e962:	89 83 58 0e 00 00    	mov    %eax,0xe58(%rbx)
18004e968:	48 8b 05 e1 02 10 00 	mov    0x1002e1(%rip),%rax        # 0x18014ec50
18004e96f:	48 89 83 60 0e 00 00 	mov    %rax,0xe60(%rbx)
18004e976:	89 ab 5c 0e 00 00    	mov    %ebp,0xe5c(%rbx)