180070720:	48 03 d8             	add    %rax,%rbx
180070723:	48 3b d8             	cmp    %rax,%rbx
180070726:	0f 85 ae fe ff ff    	jne    0x1800705da
18007072c:	b8 02 01 00 c0       	mov    $0xc0000102,%eax
180070731:	e9 27 02 00 00       	jmp    0x18007095d
180070736:	4c 89 07             	mov    %r8,(%rdi)
180070739:	8b c3                	mov    %ebx,%eax
18007073b:	2b c6                	sub    %esi,%eax
18007073d:	89 47 08             	mov    %eax,0x8(%rdi)
180070740:	8b 03                	mov    (%rbx),%eax
180070742:	89 47 0c             	mov    %eax,0xc(%rdi)
180070745:	44 89 57 18          	mov    %r10d,0x18(%rdi)
180070749:	44 38 53 08          	cmp    %r10b,0x8(%rbx)
18007074d:	75 30                	jne    0x18007077f
18007074f:	0f b7 4b 14          	movzwl 0x14(%rbx),%ecx
180070753:	8b 53 10             	mov    0x10(%rbx),%edx
180070756:	03 d1                	add    %ecx,%edx
180070758:	3b d1                	cmp    %ecx,%edx
18007075a:	72 1a                	jb     0x180070776
18007075c:	8b c2                	mov    %edx,%eax
18007075e:	48 03 c3             	add    %rbx,%rax
180070761:	49 3b c4             	cmp    %r12,%rax
180070764:	77 10                	ja     0x180070776
180070766:	c7 47 18 00 00 00 80 	movl   $0x80000000,0x18(%rdi)
18007076d:	8b 43 10             	mov    0x10(%rbx),%eax
180070770:	48 89 47 10          	mov    %rax,0x10(%rdi)
180070774:	eb 5a                	jmp    0x1800707d0
180070776:	48 8d 0d 33 ee 0d 00 	lea    0xdee33(%rip),%rcx        # 0x18014f5b0
18007077d:	eb 79                	jmp    0x1800707f8
18007077f:	48 85 c9             	test   %rcx,%rcx
180070782:	75 4c                	jne    0x1800707d0
180070784:	48 8b 43 30          	mov    0x30(%rbx),%rax
180070788:	48 89 47 10          	mov    %rax,0x10(%rdi)
18007078c:	0f b7 43 0c          	movzwl 0xc(%rbx),%eax
180070790:	0f b6 c8             	movzbl %al,%ecx
180070793:	84 c0                	test   %al,%al
180070795:	74 39                	je     0x1800707d0
180070797:	89 4f 18             	mov    %ecx,0x18(%rdi)
18007079a:	41 0f be 45 0a       	movsbl 0xa(%r13),%eax
18007079f:	3c 80                	cmp    $0x80,%al
1800707a1:	77 05                	ja     0x1800707a8
1800707a3:	0f b6 d0             	movzbl %al,%edx
1800707a6:	eb 0b                	jmp    0x1800707b3
1800707a8:	8b c8                	mov    %eax,%ecx
1800707aa:	ba 01 00 00 00       	mov    $0x1,%edx
1800707af:	f7 d9                	neg    %ecx
1800707b1:	d3 e2                	shl    %cl,%edx
1800707b3:	41 0f b7 45 08       	movzwl 0x8(%r13),%eax
1800707b8:	0f af c2             	imul   %edx,%eax
1800707bb:	44 38 53 22          	cmp    %r10b,0x22(%rbx)
1800707bf:	76 0c                	jbe    0x1800707cd
1800707c1:	0f b6 4b 22          	movzbl 0x22(%rbx),%ecx
1800707c5:	03 c0                	add    %eax,%eax
1800707c7:	48 83 e9 01          	sub    $0x1,%rcx
1800707cb:	75 f8                	jne    0x1800707c5
1800707cd:	89 47 1c             	mov    %eax,0x1c(%rdi)
1800707d0:	33 c0                	xor    %eax,%eax
1800707d2:	e9 86 01 00 00       	jmp    0x18007095d
1800707d7:	48 8d 0d 12 ed 0d 00 	lea    0xded12(%rip),%rcx        # 0x18014f4f0
1800707de:	eb 18                	jmp    0x1800707f8
1800707e0:	48 8b d6             	mov    %rsi,%rdx
1800707e3:	48 8d 0d 76 ec 0d 00 	lea    0xdec76(%rip),%rcx        # 0x18014f460
1800707ea:	e8 f9 fc 01 00       	call   0x1800904e8
1800707ef:	eb 12                	jmp    0x180070803
1800707f1:	48 8d 0d d8 eb 0d 00 	lea    0xdebd8(%rip),%rcx        # 0x18014f3d0
1800707f8:	4c 8b c6             	mov    %rsi,%r8
1800707fb:	48 8b d3             	mov    %rbx,%rdx
1800707fe:	e8 e5 fc 01 00       	call   0x1800904e8
180070803:	45 33 d2             	xor    %r10d,%r10d
180070806:	83 7d cb 20          	cmpl   $0x20,-0x35(%rbp)
18007080a:	0f 85 48 01 00 00    	jne    0x180070958
180070810:	41 8b da             	mov    %r10d,%ebx
180070813:	41 8a f2             	mov    %r10b,%sil
180070816:	4c 39 55 cf          	cmp    %r10,-0x31(%rbp)
18007081a:	0f 86 38 01 00 00    	jbe    0x180070958
180070820:	4c 8b 75 77          	mov    0x77(%rbp),%r14
180070824:	49 8b c2             	mov    %r10,%rax
180070827:	48 8d 4d 9f          	lea    -0x61(%rbp),%rcx
18007082b:	c6 44 24 28 01       	movb   $0x1,0x28(%rsp)
180070830:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
180070835:	48 8d 55 bf          	lea    -0x41(%rbp),%rdx
180070839:	49 8b cd             	mov    %r13,%rcx
18007083c:	41 b9 1c 00 00 00    	mov    $0x1c,%r9d
180070842:	4c 8b c0             	mov    %rax,%r8
180070845:	e8 32 01 00 00       	call   0x18007097c
18007084a:	33 d2                	xor    %edx,%edx
18007084c:	85 c0                	test   %eax,%eax
18007084e:	0f 88 09 01 00 00    	js     0x18007095d
180070854:	44 0f b7 45 a3       	movzwl -0x5d(%rbp),%r8d
180070859:	66 45 85 c0          	test   %r8w,%r8w
18007085d:	0f 84 c9 fe ff ff    	je     0x18007072c
180070863:	44 3b 7d 9f          	cmp    -0x61(%rbp),%r15d
180070867:	0f 82 c7 00 00 00    	jb     0x180070934
18007086d:	0f 85 af 00 00 00    	jne    0x180070922
180070873:	41 81 ff 80 00 00 00 	cmp    $0x80,%r15d
18007087a:	0f 85 85 00 00 00    	jne    0x180070905
180070880:	4c 8b 65 6f          	mov    0x6f(%rbp),%r12
180070884:	0f b6 45 a5          	movzbl -0x5b(%rbp),%eax
180070888:	41 0f b7 0c 24       	movzwl (%r12),%ecx
18007088d:	66 d1 e9             	shr    $1,%cx
180070890:	66 3b c8             	cmp    %ax,%cx
180070893:	0f 85 89 00 00 00    	jne    0x180070922
180070899:	66 41 39 14 24       	cmp    %dx,(%r12)
18007089e:	76 65                	jbe    0x180070905
1800708a0:	44 0f b6 55 a6       	movzbl -0x5a(%rbp),%r10d
1800708a5:	41 80 fa 1a          	cmp    $0x1a,%r10b
1800708a9:	0f 82 7d fe ff ff    	jb     0x18007072c
1800708af:	0f b6 4d a5          	movzbl -0x5b(%rbp),%ecx
1800708b3:	49 8d 14 4a          	lea    (%r10,%rcx,2),%rdx
1800708b7:	49 3b d0             	cmp    %r8,%rdx
1800708ba:	0f 87 6c fe ff ff    	ja     0x18007072c
1800708c0:	45 0f b7 0c 24       	movzwl (%r12),%r9d
1800708c5:	48 8d 45 df          	lea    -0x21(%rbp),%rax
1800708c9:	46 8d 04 13          	lea    (%rbx,%r10,1),%r8d
1800708cd:	c6 44 24 28 01       	movb   $0x1,0x28(%rsp)
1800708d2:	48 8d 55 bf          	lea    -0x41(%rbp),%rdx
1800708d6:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1800708db:	49 8b cd             	mov    %r13,%rcx
1800708de:	e8 99 00 00 00       	call   0x18007097c
1800708e3:	85 c0                	test   %eax,%eax
1800708e5:	78 76                	js     0x18007095d
1800708e7:	44 0f b6 45 a5       	movzbl -0x5b(%rbp),%r8d
1800708ec:	48 8d 55 df          	lea    -0x21(%rbp),%rdx
1800708f0:	49 8b 4c 24 08       	mov    0x8(%r12),%rcx
1800708f5:	e8 42 a5 0b 00       	call   0x18012ae3c
1800708fa:	44 0f b7 45 a3       	movzwl -0x5d(%rbp),%r8d
1800708ff:	33 d2                	xor    %edx,%edx
180070901:	85 c0                	test   %eax,%eax
180070903:	75 1d                	jne    0x180070922
180070905:	40 b6 01             	mov    $0x1,%sil
180070908:	4c 3b 75 a7          	cmp    -0x59(%rbp),%r14
18007090c:	7c 2b                	jl     0x180070939
18007090e:	48 8b 45 af          	mov    -0x51(%rbp),%rax
180070912:	48 89 45 4f          	mov    %rax,0x4f(%rbp)
180070916:	66 89 55 55          	mov    %dx,0x55(%rbp)
18007091a:	48 8b 45 4f          	mov    0x4f(%rbp),%rax
18007091e:	48 89 45 4f          	mov    %rax,0x4f(%rbp)
180070922:	41 0f b7 c0          	movzwl %r8w,%eax
180070926:	03 d8                	add    %eax,%ebx
180070928:	8b c3                	mov    %ebx,%eax
18007092a:	48 3b 45 cf          	cmp    -0x31(%rbp),%rax
18007092e:	0f 82 f3 fe ff ff    	jb     0x180070827
180070934:	40 84 f6             	test   %sil,%sil
180070937:	74 1f                	je     0x180070958
180070939:	4c 8b 4d 6f          	mov    0x6f(%rbp),%r9
18007093d:	45 8b c7             	mov    %r15d,%r8d
180070940:	48 8b 55 4f          	mov    0x4f(%rbp),%rdx
180070944:	49 8b cd             	mov    %r13,%rcx
180070947:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
18007094c:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
180070951:	e8 be fb ff ff       	call   0x180070514
180070956:	eb 05                	jmp    0x18007095d
180070958:	b8 25 02 00 c0       	mov    $0xc0000225,%eax
18007095d:	48 8b 9c 24 f8 00 00 	mov    0xf8(%rsp),%rbx
180070964:	00
180070965:	48 81 c4 a0 00 00 00 	add    $0xa0,%rsp
18007096c:	41 5f                	pop    %r15
18007096e:	41 5e                	pop    %r14
180070970:	41 5d                	pop    %r13
180070972:	41 5c                	pop    %r12
180070974:	5f                   	pop    %rdi
180070975:	5e                   	pop    %rsi
180070976:	5d                   	pop    %rbp
180070977:	c3                   	ret
180070978:	cc                   	int3
180070979:	cc                   	int3
18007097a:	cc                   	int3
18007097b:	cc                   	int3
18007097c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180070981:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
180070986:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
18007098b:	57                   	push   %rdi
18007098c:	41 54                	push   %r12
18007098e:	41 55                	push   %r13
180070990:	41 56                	push   %r14
180070992:	41 57                	push   %r15
180070994:	48 81 ec 60 01 00 00 	sub    $0x160,%rsp
18007099b:	45 8b e1             	mov    %r9d,%r12d
18007099e:	45 33 ff             	xor    %r15d,%r15d
1800709a1:	49 8b e8             	mov    %r8,%rbp
1800709a4:	48 8b da             	mov    %rdx,%rbx
1800709a7:	4c 8b f1             	mov    %rcx,%r14
1800709aa:	4b 8d 3c 04          	lea    (%r12,%r8,1),%rdi
1800709ae:	48 39 7a 10          	cmp    %rdi,0x10(%rdx)
1800709b2:	7d 0a                	jge    0x1800709be
1800709b4:	b8 11 00 00 c0       	mov    $0xc0000011,%eax
1800709b9:	e9 f1 00 00 00       	jmp    0x180070aaf
1800709be:	48 8b 12             	mov    (%rdx),%rdx
1800709c1:	4c 8d 84 24 98 01 00 	lea    0x198(%rsp),%r8
1800709c8:	00
1800709c9:	e8 16 09 00 00       	call   0x1800712e4
1800709ce:	85 c0                	test   %eax,%eax
1800709d0:	0f 88 d9 00 00 00    	js     0x180070aaf
1800709d6:	8b 43 18             	mov    0x18(%rbx),%eax
1800709d9:	40 8a b4 24 b8 01 00 	mov    0x1b8(%rsp),%sil
1800709e0:	00
1800709e1:	0f ba e0 1e          	bt     $0x1e,%eax
1800709e5:	73 31                	jae    0x180070a18
1800709e7:	40 84 f6             	test   %sil,%sil
1800709ea:	74 2c                	je     0x180070a18
1800709ec:	41 8b 0e             	mov    (%r14),%ecx
1800709ef:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1800709f4:	e8 2f 63 fb ff       	call   0x180026d28
1800709f9:	44 8b 7c 24 50       	mov    0x50(%rsp),%r15d
1800709fe:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
180070a03:	41 8b 0e             	mov    (%r14),%ecx
180070a06:	41 8b c7             	mov    %r15d,%eax
180070a09:	83 c8 01             	or     $0x1,%eax
180070a0c:	89 44 24 50          	mov    %eax,0x50(%rsp)
180070a10:	e8 7b 63 fb ff       	call   0x180026d90
180070a15:	8b 43 18             	mov    0x18(%rbx),%eax
180070a18:	85 c0                	test   %eax,%eax
180070a1a:	79 42                	jns    0x180070a5e
180070a1c:	40 84 f6             	test   %sil,%sil
180070a1f:	75 07                	jne    0x180070a28
180070a21:	bf 02 00 00 c0       	mov    $0xc0000002,%edi
180070a26:	eb 65                	jmp    0x180070a8d
180070a28:	48 39 7b 10          	cmp    %rdi,0x10(%rbx)
180070a2c:	73 07                	jae    0x180070a35
180070a2e:	bf 0d 00 00 c0       	mov    $0xc000000d,%edi
180070a33:	eb 58                	jmp    0x180070a8d
180070a35:	8b 43 08             	mov    0x8(%rbx),%eax
180070a38:	4d 8b c4             	mov    %r12,%r8
180070a3b:	48 03 84 24 98 01 00 	add    0x198(%rsp),%rax
180070a42:	00
180070a43:	48 8b 8c 24 b0 01 00 	mov    0x1b0(%rsp),%rcx
180070a4a:	00
180070a4b:	0f b7 50 14          	movzwl 0x14(%rax),%edx
180070a4f:	48 03 d0             	add    %rax,%rdx
180070a52:	48 03 d5             	add    %rbp,%rdx
180070a55:	e8 66 4f 0c 00       	call   0x1801359c0
180070a5a:	33 ff                	xor    %edi,%edi
180070a5c:	eb 2f                	jmp    0x180070a8d
180070a5e:	48 8b 84 24 b0 01 00 	mov    0x1b0(%rsp),%rax
180070a65:	00
180070a66:	4c 8b cd             	mov    %rbp,%r9
180070a69:	4c 8b 84 24 98 01 00 	mov    0x198(%rsp),%r8
180070a70:	00
180070a71:	48 8b d3             	mov    %rbx,%rdx
180070a74:	40 88 74 24 30       	mov    %sil,0x30(%rsp)
180070a79:	49 8b ce             	mov    %r14,%rcx
180070a7c:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180070a81:	44 89 64 24 20       	mov    %r12d,0x20(%rsp)
180070a86:	e8 49 00 00 00       	call   0x180070ad4
180070a8b:	8b f8                	mov    %eax,%edi
180070a8d:	f7 43 18 00 00 00 40 	testl  $0x40000000,0x18(%rbx)
180070a94:	74 17                	je     0x180070aad
180070a96:	40 84 f6             	test   %sil,%sil
180070a99:	74 12                	je     0x180070aad
180070a9b:	41 8b 0e             	mov    (%r14),%ecx
180070a9e:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
180070aa3:	44 89 7c 24 50       	mov    %r15d,0x50(%rsp)
180070aa8:	e8 e3 62 fb ff       	call   0x180026d90
180070aad:	8b c7                	mov    %edi,%eax
180070aaf:	4c 8d 9c 24 60 01 00 	lea    0x160(%rsp),%r11
180070ab6:	00
180070ab7:	49 8b 5b 30          	mov    0x30(%r11),%rbx
180070abb:	49 8b 6b 40          	mov    0x40(%r11),%rbp
180070abf:	49 8b 73 48          	mov    0x48(%r11),%rsi
180070ac3:	49 8b e3             	mov    %r11,%rsp
180070ac6:	41 5f                	pop    %r15
180070ac8:	41 5e                	pop    %r14
180070aca:	41 5d                	pop    %r13
180070acc:	41 5c                	pop    %r12
180070ace:	5f                   	pop    %rdi
180070acf:	c3                   	ret
180070ad0:	cc                   	int3
180070ad1:	cc                   	int3
180070ad2:	cc                   	int3
180070ad3:	cc                   	int3
180070ad4:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
180070ad9:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
180070ade:	55                   	push   %rbp
180070adf:	53                   	push   %rbx
180070ae0:	56                   	push   %rsi
180070ae1:	57                   	push   %rdi
180070ae2:	41 54                	push   %r12
180070ae4:	41 55                	push   %r13
180070ae6:	41 56                	push   %r14
180070ae8:	48 8b ec             	mov    %rsp,%rbp
180070aeb:	48 83 ec 60          	sub    $0x60,%rsp
180070aef:	80 7a 18 00          	cmpb   $0x0,0x18(%rdx)
180070af3:	4c 8b e2             	mov    %rdx,%r12
180070af6:	48 8b f1             	mov    %rcx,%rsi
180070af9:	74 21                	je     0x180070b1c
180070afb:	8a 45 70             	mov    0x70(%rbp),%al
180070afe:	88 44 24 30          	mov    %al,0x30(%rsp)
180070b02:	48 8b 45 68          	mov    0x68(%rbp),%rax
180070b06:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180070b0b:	8b 45 60             	mov    0x60(%rbp),%eax
180070b0e:	89 44 24 20          	mov    %eax,0x20(%rsp)
180070b12:	e8 41 01 00 00       	call   0x180070c58
180070b17:	e9 29 01 00 00       	jmp    0x180070c45
180070b1c:	45 33 f6             	xor    %r14d,%r14d
180070b1f:	44 39 75 60          	cmp    %r14d,0x60(%rbp)
180070b23:	0f 86 1a 01 00 00    	jbe    0x180070c43
180070b29:	83 7e 78 10          	cmpl   $0x10,0x78(%rsi)
180070b2d:	0f 8f 07 01 00 00    	jg     0x180070c3a
180070b33:	48 8d 45 e8          	lea    -0x18(%rbp),%rax
180070b37:	45 8b ee             	mov    %r14d,%r13d
180070b3a:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
180070b3f:	4d 03 cd             	add    %r13,%r9
180070b42:	48 8d 45 48          	lea    0x48(%rbp),%rax
180070b46:	49 8b d4             	mov    %r12,%rdx
180070b49:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180070b4e:	48 8b ce             	mov    %rsi,%rcx
180070b51:	48 8d 45 f0          	lea    -0x10(%rbp),%rax
180070b55:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180070b5a:	e8 0d 03 00 00       	call   0x180070e6c
180070b5f:	8b d8                	mov    %eax,%ebx
180070b61:	33 c0                	xor    %eax,%eax
180070b63:	85 db                	test   %ebx,%ebx
180070b65:	0f 88 d4 00 00 00    	js     0x180070c3f
180070b6b:	8b 7d 60             	mov    0x60(%rbp),%edi
180070b6e:	41 2b fe             	sub    %r14d,%edi
180070b71:	48 39 7d e8          	cmp    %rdi,-0x18(%rbp)
180070b75:	0f 4c 7d e8          	cmovl  -0x18(%rbp),%edi
180070b79:	38 45 70             	cmp    %al,0x70(%rbp)
180070b7c:	75 4c                	jne    0x180070bca
180070b7e:	38 45 48             	cmp    %al,0x48(%rbp)
180070b81:	0f 85 ac 00 00 00    	jne    0x180070c33
180070b87:	85 ff                	test   %edi,%edi
180070b89:	0f 84 ab 00 00 00    	je     0x180070c3a
180070b8f:	44 8b 4e 64          	mov    0x64(%rsi),%r9d
180070b93:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
180070b97:	49 ff c9             	dec    %r9
180070b9a:	4c 03 ca             	add    %rdx,%r9
180070b9d:	8b cf                	mov    %edi,%ecx
180070b9f:	4c 03 c9             	add    %rcx,%r9
180070ba2:	8b 4e 68             	mov    0x68(%rsi),%ecx
180070ba5:	49 d3 e9             	shr    %cl,%r9
180070ba8:	4c 3b 4e 70          	cmp    0x70(%rsi),%r9
180070bac:	77 7e                	ja     0x180070c2c
180070bae:	4c 8b 4d 68          	mov    0x68(%rbp),%r9
180070bb2:	48 8d 45 e0          	lea    -0x20(%rbp),%rax
180070bb6:	8b 0e                	mov    (%rsi),%ecx
180070bb8:	4d 03 cd             	add    %r13,%r9
180070bbb:	44 8b c7             	mov    %edi,%r8d
180070bbe:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180070bc3:	e8 20 64 fb ff       	call   0x180026fe8
180070bc8:	eb 45                	jmp    0x180070c0f
180070bca:	38 45 48             	cmp    %al,0x48(%rbp)
180070bcd:	74 16                	je     0x180070be5
180070bcf:	48 8b 4d 68          	mov    0x68(%rbp),%rcx
180070bd3:	33 d2                	xor    %edx,%edx
180070bd5:	49 03 cd             	add    %r13,%rcx
180070bd8:	44 8b c7             	mov    %edi,%r8d
180070bdb:	e8 a0 50 0c 00       	call   0x180135c80
180070be0:	89 7d e0             	mov    %edi,-0x20(%rbp)
180070be3:	eb 2c                	jmp    0x180070c11