18009e6ff:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
18009e703:	40 32 f6             	xor    %sil,%sil
18009e706:	8b 55 38             	mov    0x38(%rbp),%edx
18009e709:	4c 8b f1             	mov    %rcx,%r14
18009e70c:	49 c1 ee 0c          	shr    $0xc,%r14
18009e710:	48 03 d1             	add    %rcx,%rdx
18009e713:	48 3b d1             	cmp    %rcx,%rdx
18009e716:	0f 82 d6 00 00 00    	jb     0x18009e7f2
18009e71c:	48 8d ba ff 0f 00 00 	lea    0xfff(%rdx),%rdi
18009e723:	48 81 e7 00 f0 ff ff 	and    $0xfffffffffffff000,%rdi
18009e72a:	48 3b fa             	cmp    %rdx,%rdi
18009e72d:	0f 82 bf 00 00 00    	jb     0x18009e7f2
18009e733:	48 c1 ef 0c          	shr    $0xc,%rdi
18009e737:	83 65 38 00          	andl   $0x0,0x38(%rbp)
18009e73b:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
18009e73f:	48 8d 4d 38          	lea    0x38(%rbp),%rcx
18009e743:	e8 d8 00 00 00       	call   0x18009e820
18009e748:	8b d8                	mov    %eax,%ebx
18009e74a:	85 c0                	test   %eax,%eax
18009e74c:	75 6b                	jne    0x18009e7b9
18009e74e:	4c 8b 45 f0          	mov    -0x10(%rbp),%r8
18009e752:	4d 85 c0             	test   %r8,%r8
18009e755:	74 55                	je     0x18009e7ac
18009e757:	8b 55 fc             	mov    -0x4(%rbp),%edx
18009e75a:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
18009e75e:	40 84 f6             	test   %sil,%sil
18009e761:	75 1c                	jne    0x18009e77f
18009e763:	4c 3b f1             	cmp    %rcx,%r14
18009e766:	75 17                	jne    0x18009e77f
18009e768:	4a 8d 04 01          	lea    (%rcx,%r8,1),%rax
18009e76c:	48 3b f8             	cmp    %rax,%rdi
18009e76f:	75 0e                	jne    0x18009e77f
18009e771:	81 fa 01 00 00 f0    	cmp    $0xf0000001,%edx
18009e777:	40 0f b6 f6          	movzbl %sil,%esi
18009e77b:	41 0f 45 f4          	cmovne %r12d,%esi
18009e77f:	44 8b 4d f8          	mov    -0x8(%rbp),%r9d
18009e783:	89 54 24 20          	mov    %edx,0x20(%rsp)
18009e787:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
18009e78b:	e8 f0 d9 ff ff       	call   0x18009c180
18009e790:	48 85 c0             	test   %rax,%rax
18009e793:	74 1f                	je     0x18009e7b4
18009e795:	41 b8 02 00 00 00    	mov    $0x2,%r8d
18009e79b:	48 8b d0             	mov    %rax,%rdx
18009e79e:	49 8b cf             	mov    %r15,%rcx
18009e7a1:	e8 ca db ff ff       	call   0x18009c370
18009e7a6:	8b d8                	mov    %eax,%ebx
18009e7a8:	85 c0                	test   %eax,%eax
18009e7aa:	78 4b                	js     0x18009e7f7
18009e7ac:	83 7d 38 00          	cmpl   $0x0,0x38(%rbp)
18009e7b0:	74 07                	je     0x18009e7b9
18009e7b2:	eb 87                	jmp    0x18009e73b
18009e7b4:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
18009e7b9:	85 db                	test   %ebx,%ebx
18009e7bb:	78 3a                	js     0x18009e7f7
18009e7bd:	40 84 f6             	test   %sil,%sil
18009e7c0:	75 35                	jne    0x18009e7f7
18009e7c2:	49 2b fe             	sub    %r14,%rdi
18009e7c5:	c7 44 24 20 03 00 00 	movl   $0xf0000003,0x20(%rsp)
18009e7cc:	f0
18009e7cd:	4c 8b c7             	mov    %rdi,%r8
18009e7d0:	45 33 c9             	xor    %r9d,%r9d
18009e7d3:	33 d2                	xor    %edx,%edx
18009e7d5:	49 8b ce             	mov    %r14,%rcx
18009e7d8:	e8 a3 d9 ff ff       	call   0x18009c180
18009e7dd:	41 b8 02 00 00 00    	mov    $0x2,%r8d
18009e7e3:	48 8b d0             	mov    %rax,%rdx
18009e7e6:	49 8b cf             	mov    %r15,%rcx
18009e7e9:	e8 82 db ff ff       	call   0x18009c370
18009e7ee:	8b d8                	mov    %eax,%ebx
18009e7f0:	eb 05                	jmp    0x18009e7f7
18009e7f2:	bb 95 00 00 c0       	mov    $0xc0000095,%ebx
18009e7f7:	e8 a0 da ff ff       	call   0x18009c29c
18009e7fc:	ff 0d 7a 44 10 00    	decl   0x10447a(%rip)        # 0x1801a2c7c
18009e802:	4c 8d 5c 24 60       	lea    0x60(%rsp),%r11
18009e807:	49 8b 73 48          	mov    0x48(%r11),%rsi
18009e80b:	8b c3                	mov    %ebx,%eax
18009e80d:	49 8b 5b 40          	mov    0x40(%r11),%rbx
18009e811:	49 8b e3             	mov    %r11,%rsp
18009e814:	41 5f                	pop    %r15
18009e816:	41 5e                	pop    %r14
18009e818:	41 5c                	pop    %r12
18009e81a:	5f                   	pop    %rdi
18009e81b:	5d                   	pop    %rbp
18009e81c:	c3                   	ret
18009e81d:	cc                   	int3
18009e81e:	cc                   	int3
18009e81f:	cc                   	int3
18009e820:	40 53                	rex push %rbx
18009e822:	48 83 ec 40          	sub    $0x40,%rsp
18009e826:	48 8b da             	mov    %rdx,%rbx
18009e829:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
18009e82e:	e8 49 79 f8 ff       	call   0x18002617c
18009e833:	45 33 c9             	xor    %r9d,%r9d
18009e836:	85 c0                	test   %eax,%eax
18009e838:	0f 88 d7 00 00 00    	js     0x18009e915
18009e83e:	8b 54 24 30          	mov    0x30(%rsp),%edx
18009e842:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
18009e847:	83 fa 01             	cmp    $0x1,%edx
18009e84a:	75 5f                	jne    0x18009e8ab
18009e84c:	4c 8d 81 ff 0f 00 00 	lea    0xfff(%rcx),%r8
18009e853:	49 81 e0 00 f0 ff ff 	and    $0xfffffffffffff000,%r8
18009e85a:	4c 3b c1             	cmp    %rcx,%r8
18009e85d:	72 6a                	jb     0x18009e8c9
18009e85f:	49 c1 e8 0c          	shr    $0xc,%r8
18009e863:	48 03 4c 24 28       	add    0x28(%rsp),%rcx
18009e868:	48 8b c1             	mov    %rcx,%rax
18009e86b:	4c 89 0b             	mov    %r9,(%rbx)
18009e86e:	4c 89 4b 08          	mov    %r9,0x8(%rbx)
18009e872:	4c 89 4b 18          	mov    %r9,0x18(%rbx)
18009e876:	48 c1 e8 0c          	shr    $0xc,%rax
18009e87a:	49 2b c0             	sub    %r8,%rax
18009e87d:	44 89 4b 28          	mov    %r9d,0x28(%rbx)
18009e881:	4c 89 43 10          	mov    %r8,0x10(%rbx)
18009e885:	48 89 43 20          	mov    %rax,0x20(%rbx)
18009e889:	83 ea 01             	sub    $0x1,%edx
18009e88c:	74 5d                	je     0x18009e8eb
18009e88e:	83 ea 01             	sub    $0x1,%edx
18009e891:	74 0f                	je     0x18009e8a2
18009e893:	83 ea 01             	sub    $0x1,%edx
18009e896:	74 4a                	je     0x18009e8e2
18009e898:	83 ea 01             	sub    $0x1,%edx
18009e89b:	74 3c                	je     0x18009e8d9
18009e89d:	83 fa 03             	cmp    $0x3,%edx
18009e8a0:	74 2e                	je     0x18009e8d0
18009e8a2:	c7 43 2c 03 00 00 f0 	movl   $0xf0000003,0x2c(%rbx)
18009e8a9:	eb 67                	jmp    0x18009e912
18009e8ab:	4c 8b c1             	mov    %rcx,%r8
18009e8ae:	48 03 4c 24 28       	add    0x28(%rsp),%rcx
18009e8b3:	49 c1 e8 0c          	shr    $0xc,%r8
18009e8b7:	48 8d 81 ff 0f 00 00 	lea    0xfff(%rcx),%rax
18009e8be:	48 25 00 f0 ff ff    	and    $0xfffffffffffff000,%rax
18009e8c4:	48 3b c1             	cmp    %rcx,%rax
18009e8c7:	73 a2                	jae    0x18009e86b
18009e8c9:	b8 95 00 00 c0       	mov    $0xc0000095,%eax
18009e8ce:	eb 45                	jmp    0x18009e915
18009e8d0:	c7 43 2c 07 00 00 f0 	movl   $0xf0000007,0x2c(%rbx)
18009e8d7:	eb 39                	jmp    0x18009e912
18009e8d9:	c7 43 2c 09 00 00 f0 	movl   $0xf0000009,0x2c(%rbx)
18009e8e0:	eb 30                	jmp    0x18009e912
18009e8e2:	c7 43 2c 08 00 00 f0 	movl   $0xf0000008,0x2c(%rbx)
18009e8e9:	eb 27                	jmp    0x18009e912
18009e8eb:	f6 44 24 34 08       	testb  $0x8,0x34(%rsp)
18009e8f0:	74 09                	je     0x18009e8fb
18009e8f2:	c7 43 2c 0d 00 00 f0 	movl   $0xf000000d,0x2c(%rbx)
18009e8f9:	eb 17                	jmp    0x18009e912
18009e8fb:	48 81 f9 00 00 10 00 	cmp    $0x100000,%rcx
18009e902:	77 07                	ja     0x18009e90b
18009e904:	c7 43 28 00 00 08 00 	movl   $0x80000,0x28(%rbx)
18009e90b:	c7 43 2c 01 00 00 f0 	movl   $0xf0000001,0x2c(%rbx)
18009e912:	41 8b c1             	mov    %r9d,%eax
18009e915:	48 83 c4 40          	add    $0x40,%rsp
18009e919:	5b                   	pop    %rbx
18009e91a:	c3                   	ret
18009e91b:	cc                   	int3
18009e91c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18009e921:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18009e926:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18009e92b:	57                   	push   %rdi
18009e92c:	48 83 ec 30          	sub    $0x30,%rsp
18009e930:	80 79 03 1f          	cmpb   $0x1f,0x3(%rcx)
18009e934:	41 8b f9             	mov    %r9d,%edi
18009e937:	41 8b f0             	mov    %r8d,%esi
18009e93a:	48 8b ea             	mov    %rdx,%rbp
18009e93d:	48 8b d9             	mov    %rcx,%rbx
18009e940:	77 38                	ja     0x18009e97a
18009e942:	80 79 04 07          	cmpb   $0x7,0x4(%rcx)
18009e946:	77 32                	ja     0x18009e97a
18009e948:	e8 e3 01 00 00       	call   0x18009eb30
18009e94d:	85 c0                	test   %eax,%eax
18009e94f:	78 2e                	js     0x18009e97f
18009e951:	48 83 3d 47 6b 0f 00 	cmpq   $0x0,0xf6b47(%rip)        # 0x1801954a0
18009e958:	00
18009e959:	75 07                	jne    0x18009e962
18009e95b:	b8 bb 00 00 c0       	mov    $0xc00000bb,%eax
18009e960:	eb 1d                	jmp    0x18009e97f
18009e962:	44 8b cf             	mov    %edi,%r9d
18009e965:	c6 44 24 20 01       	movb   $0x1,0x20(%rsp)
18009e96a:	44 8b c6             	mov    %esi,%r8d
18009e96d:	48 8b d5             	mov    %rbp,%rdx
18009e970:	48 8b cb             	mov    %rbx,%rcx
18009e973:	e8 b4 00 00 00       	call   0x18009ea2c
18009e978:	eb 05                	jmp    0x18009e97f
18009e97a:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18009e97f:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18009e984:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
18009e989:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18009e98e:	48 83 c4 30          	add    $0x30,%rsp
18009e992:	5f                   	pop    %rdi
18009e993:	c3                   	ret
18009e994:	cc                   	int3
18009e995:	cc                   	int3
18009e996:	cc                   	int3
18009e997:	cc                   	int3
18009e998:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18009e99d:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18009e9a2:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18009e9a7:	57                   	push   %rdi
18009e9a8:	48 83 ec 30          	sub    $0x30,%rsp
18009e9ac:	80 79 04 07          	cmpb   $0x7,0x4(%rcx)
18009e9b0:	41 8b f9             	mov    %r9d,%edi
18009e9b3:	41 8b f0             	mov    %r8d,%esi
18009e9b6:	48 8b ea             	mov    %rdx,%rbp
18009e9b9:	48 8b d9             	mov    %rcx,%rbx
18009e9bc:	76 07                	jbe    0x18009e9c5
18009e9be:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18009e9c3:	eb 30                	jmp    0x18009e9f5
18009e9c5:	e8 66 01 00 00       	call   0x18009eb30
18009e9ca:	85 c0                	test   %eax,%eax
18009e9cc:	78 27                	js     0x18009e9f5
18009e9ce:	48 83 3d ca 6a 0f 00 	cmpq   $0x0,0xf6aca(%rip)        # 0x1801954a0
18009e9d5:	00
18009e9d6:	75 07                	jne    0x18009e9df
18009e9d8:	b8 bb 00 00 c0       	mov    $0xc00000bb,%eax
18009e9dd:	eb 16                	jmp    0x18009e9f5
18009e9df:	44 8b cf             	mov    %edi,%r9d
18009e9e2:	c6 44 24 20 00       	movb   $0x0,0x20(%rsp)
18009e9e7:	44 8b c6             	mov    %esi,%r8d
18009e9ea:	48 8b d5             	mov    %rbp,%rdx
18009e9ed:	48 8b cb             	mov    %rbx,%rcx
18009e9f0:	e8 37 00 00 00       	call   0x18009ea2c
18009e9f5:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18009e9fa:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
18009e9ff:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18009ea04:	48 83 c4 30          	add    $0x30,%rsp
18009ea08:	5f                   	pop    %rdi
18009ea09:	c3                   	ret
18009ea0a:	cc                   	int3
18009ea0b:	cc                   	int3
18009ea0c:	39 11                	cmp    %edx,(%rcx)
18009ea0e:	75 16                	jne    0x18009ea26
18009ea10:	45 84 c0             	test   %r8b,%r8b
18009ea13:	74 0d                	je     0x18009ea22
18009ea15:	48 8b 41 10          	mov    0x10(%rcx),%rax
18009ea19:	41 0f b6 d1          	movzbl %r9b,%edx
18009ea1d:	0f a3 10             	bt     %edx,(%rax)
18009ea20:	73 04                	jae    0x18009ea26
18009ea22:	b0 01                	mov    $0x1,%al
18009ea24:	c3                   	ret
18009ea25:	cc                   	int3
18009ea26:	32 c0                	xor    %al,%al
18009ea28:	c3                   	ret
18009ea29:	cc                   	int3
18009ea2a:	cc                   	int3
18009ea2b:	cc                   	int3
18009ea2c:	4c 8b dc             	mov    %rsp,%r11
18009ea2f:	49 89 5b 10          	mov    %rbx,0x10(%r11)
18009ea33:	49 89 6b 18          	mov    %rbp,0x18(%r11)
18009ea37:	49 89 73 20          	mov    %rsi,0x20(%r11)
18009ea3b:	57                   	push   %rdi
18009ea3c:	41 54                	push   %r12
18009ea3e:	41 55                	push   %r13
18009ea40:	41 56                	push   %r14
18009ea42:	41 57                	push   %r15
18009ea44:	48 83 ec 40          	sub    $0x40,%rsp
18009ea48:	49 83 63 d0 00       	andq   $0x0,-0x30(%r11)
18009ea4d:	41 8b f9             	mov    %r9d,%edi
18009ea50:	0f b6 41 02          	movzbl 0x2(%rcx),%eax
18009ea54:	4c 8d 0d b1 ff ff ff 	lea    -0x4f(%rip),%r9        # 0x18009ea0c
18009ea5b:	44 0f b7 11          	movzwl (%rcx),%r10d
18009ea5f:	41 8b f0             	mov    %r8d,%esi
18009ea62:	49 89 43 c8          	mov    %rax,-0x38(%r11)
18009ea66:	4d 8d 43 08          	lea    0x8(%r11),%r8
18009ea6a:	48 8b ea             	mov    %rdx,%rbp
18009ea6d:	4c 8b f1             	mov    %rcx,%r14
18009ea70:	8b 15 a2 e1 0f 00    	mov    0xfe1a2(%rip),%edx        # 0x18019cc18
18009ea76:	41 bd 01 00 00 00    	mov    $0x1,%r13d
18009ea7c:	48 8b 0d 1d 6a 0f 00 	mov    0xf6a1d(%rip),%rcx        # 0x1801954a0
18009ea83:	4d 89 6b c0          	mov    %r13,-0x40(%r11)
18009ea87:	4d 89 53 b8          	mov    %r10,-0x48(%r11)
18009ea8b:	e8 b8 1c ff ff       	call   0x180090748
18009ea90:	4c 8b f8             	mov    %rax,%r15
18009ea93:	48 85 c0             	test   %rax,%rax
18009ea96:	75 07                	jne    0x18009ea9f
18009ea98:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18009ea9d:	eb 72                	jmp    0x18009eb11
18009ea9f:	85 ff                	test   %edi,%edi
18009eaa1:	74 6c                	je     0x18009eb0f
18009eaa3:	44 8a a4 24 90 00 00 	mov    0x90(%rsp),%r12b
18009eaaa:	00
18009eaab:	44 8b c6             	mov    %esi,%r8d
18009eaae:	44 88 64 24 28       	mov    %r12b,0x28(%rsp)
18009eab3:	41 83 e0 03          	and    $0x3,%r8d
18009eab7:	b9 04 00 00 00       	mov    $0x4,%ecx
18009eabc:	41 2b c8             	sub    %r8d,%ecx
18009eabf:	41 8b c0             	mov    %r8d,%eax
18009eac2:	ba 04 00 00 00       	mov    $0x4,%edx
18009eac7:	8b df                	mov    %edi,%ebx
18009eac9:	48 2b d0             	sub    %rax,%rdx
18009eacc:	44 8b ce             	mov    %esi,%r9d
18009eacf:	8b c7                	mov    %edi,%eax
18009ead1:	48 3b d0             	cmp    %rax,%rdx
18009ead4:	b8 02 00 00 00       	mov    $0x2,%eax
18009ead9:	49 8b d6             	mov    %r14,%rdx
18009eadc:	0f 42 d9             	cmovb  %ecx,%ebx
18009eadf:	49 8b 4f 40          	mov    0x40(%r15),%rcx
18009eae3:	45 3b c5             	cmp    %r13d,%r8d
18009eae6:	4c 8b c5             	mov    %rbp,%r8
18009eae9:	41 0f 44 dd          	cmove  %r13d,%ebx
18009eaed:	83 fb 03             	cmp    $0x3,%ebx
18009eaf0:	0f 44 d8             	cmove  %eax,%ebx
18009eaf3:	49 8b 47 38          	mov    0x38(%r15),%rax
18009eaf7:	89 5c 24 20          	mov    %ebx,0x20(%rsp)
18009eafb:	ff d0                	call   *%rax
18009eafd:	0f 1f 00             	nopl   (%rax)
18009eb00:	85 c0                	test   %eax,%eax
18009eb02:	78 0d                	js     0x18009eb11
18009eb04:	8b c3                	mov    %ebx,%eax
18009eb06:	03 f3                	add    %ebx,%esi
18009eb08:	48 03 e8             	add    %rax,%rbp
18009eb0b:	2b fb                	sub    %ebx,%edi
18009eb0d:	75 9c                	jne    0x18009eaab
18009eb0f:	33 c0                	xor    %eax,%eax
18009eb11:	4c 8d 5c 24 40       	lea    0x40(%rsp),%r11
18009eb16:	49 8b 5b 38          	mov    0x38(%r11),%rbx
18009eb1a:	49 8b 6b 40          	mov    0x40(%r11),%rbp
18009eb1e:	49 8b 73 48          	mov    0x48(%r11),%rsi
18009eb22:	49 8b e3             	mov    %r11,%rsp
18009eb25:	41 5f                	pop    %r15
18009eb27:	41 5e                	pop    %r14
18009eb29:	41 5d                	pop    %r13
18009eb2b:	41 5c                	pop    %r12
18009eb2d:	5f                   	pop    %rdi
18009eb2e:	c3                   	ret
18009eb2f:	cc                   	int3
18009eb30:	40 53                	rex push %rbx
18009eb32:	55                   	push   %rbp
18009eb33:	56                   	push   %rsi
18009eb34:	48 83 ec 30          	sub    $0x30,%rsp
18009eb38:	80 79 04 00          	cmpb   $0x0,0x4(%rcx)
18009eb3c:	48 8b d9             	mov    %rcx,%rbx
18009eb3f:	be 01 00 00 00       	mov    $0x1,%esi
18009eb44:	bd fd ff 00 00       	mov    $0xfffd,%ebp
18009eb49:	0f 84 88 00 00 00    	je     0x18009ebd7
18009eb4f:	48 83 3d 49 69 0f 00 	cmpq   $0x0,0xf6949(%rip)        # 0x1801954a0
18009eb56:	00
18009eb57:	8b 01                	mov    (%rcx),%eax
18009eb59:	89 44 24 60          	mov    %eax,0x60(%rsp)
18009eb5d:	0f b7 41 04          	movzwl 0x4(%rcx),%eax
18009eb61:	66 89 44 24 64       	mov    %ax,0x64(%rsp)
18009eb66:	c6 44 24 64 00       	movb   $0x0,0x64(%rsp)
18009eb6b:	75 0a                	jne    0x18009eb77
18009eb6d:	b8 bb 00 00 c0       	mov    $0xc00000bb,%eax
18009eb72:	e9 9f 00 00 00       	jmp    0x18009ec16
18009eb77:	41 b9 02 00 00 00    	mov    $0x2,%r9d
18009eb7d:	40 88 74 24 20       	mov    %sil,0x20(%rsp)
18009eb82:	45 33 c0             	xor    %r8d,%r8d
18009eb85:	48 8d 54 24 58       	lea    0x58(%rsp),%rdx
18009eb8a:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
18009eb8f:	e8 98 fe ff ff       	call   0x18009ea2c
18009eb94:	85 c0                	test   %eax,%eax