1407ed741:	84 c0                	test   %al,%al
1407ed743:	0f 85 22 01 00 00    	jne    0x1407ed86b
1407ed749:	48 8d 15 a8 eb 84 00 	lea    0x84eba8(%rip),%rdx        # 0x14103c2f8
1407ed750:	e9 73 01 00 00       	jmp    0x1407ed8c8
1407ed755:	83 fb 08             	cmp    $0x8,%ebx
1407ed758:	75 49                	jne    0x1407ed7a3
1407ed75a:	3b f3                	cmp    %ebx,%esi
1407ed75c:	74 0c                	je     0x1407ed76a
1407ed75e:	48 8d 15 bb eb 84 00 	lea    0x84ebbb(%rip),%rdx        # 0x14103c320
1407ed765:	e9 5e 01 00 00       	jmp    0x1407ed8c8
1407ed76a:	49 8b 0f             	mov    (%r15),%rcx
1407ed76d:	48 89 4d e0          	mov    %rcx,-0x20(%rbp)
1407ed771:	48 85 c9             	test   %rcx,%rcx
1407ed774:	74 1c                	je     0x1407ed792
1407ed776:	8b 41 10             	mov    0x10(%rcx),%eax
1407ed779:	ff c0                	inc    %eax
1407ed77b:	89 41 10             	mov    %eax,0x10(%rcx)
1407ed77e:	83 f8 01             	cmp    $0x1,%eax
1407ed781:	0f 8e f5 01 00 00    	jle    0x1407ed97c
1407ed787:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1407ed78c:	0f 84 f2 01 00 00    	je     0x1407ed984
1407ed792:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
1407ed796:	48 8b cf             	mov    %rdi,%rcx
1407ed799:	e8 a2 4e 01 00       	call   0x140802640
1407ed79e:	e9 40 01 00 00       	jmp    0x1407ed8e3
1407ed7a3:	83 fb 13             	cmp    $0x13,%ebx
1407ed7a6:	0f 85 15 01 00 00    	jne    0x1407ed8c1
1407ed7ac:	49 8b 0f             	mov    (%r15),%rcx
1407ed7af:	49 8b 54 24 20       	mov    0x20(%r12),%rdx
1407ed7b4:	48 3b ca             	cmp    %rdx,%rcx
1407ed7b7:	0f 84 ae 00 00 00    	je     0x1407ed86b
1407ed7bd:	41 b1 01             	mov    $0x1,%r9b
1407ed7c0:	45 33 c0             	xor    %r8d,%r8d
1407ed7c3:	e8 38 5e f6 ff       	call   0x140753600
1407ed7c8:	84 c0                	test   %al,%al
1407ed7ca:	0f 85 9b 00 00 00    	jne    0x1407ed86b
1407ed7d0:	c6 47 48 01          	movb   $0x1,0x48(%rdi)
1407ed7d4:	49 8b 0f             	mov    (%r15),%rcx
1407ed7d7:	e8 04 cf f5 ff       	call   0x14074a6e0
1407ed7dc:	48 8b c8             	mov    %rax,%rcx
1407ed7df:	e8 bc 26 f6 ff       	call   0x14074fea0
1407ed7e4:	48 8b 08             	mov    (%rax),%rcx
1407ed7e7:	44 8b 69 18          	mov    0x18(%rcx),%r13d
1407ed7eb:	41 8d 45 fe          	lea    -0x2(%r13),%eax
1407ed7ef:	83 f8 02             	cmp    $0x2,%eax
1407ed7f2:	0f 87 95 00 00 00    	ja     0x1407ed88d
1407ed7f8:	8d 46 fe             	lea    -0x2(%rsi),%eax
1407ed7fb:	83 f8 02             	cmp    $0x2,%eax
1407ed7fe:	0f 87 80 00 00 00    	ja     0x1407ed884
1407ed804:	41 3b f5             	cmp    %r13d,%esi
1407ed807:	74 62                	je     0x1407ed86b
1407ed809:	b9 40 00 00 00       	mov    $0x40,%ecx
1407ed80e:	e8 f5 d8 62 00       	call   0x140e1b108
1407ed813:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
1407ed817:	48 85 c0             	test   %rax,%rax
1407ed81a:	74 1e                	je     0x1407ed83a
1407ed81c:	48 8b 4f 40          	mov    0x40(%rdi),%rcx
1407ed820:	4c 89 77 40          	mov    %r14,0x40(%rdi)
1407ed824:	48 89 4d e0          	mov    %rcx,-0x20(%rbp)
1407ed828:	45 8b c5             	mov    %r13d,%r8d
1407ed82b:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
1407ed82f:	48 8b c8             	mov    %rax,%rcx
1407ed832:	e8 79 01 00 00       	call   0x1407ed9b0
1407ed837:	4c 8b f0             	mov    %rax,%r14
1407ed83a:	48 8b 4f 40          	mov    0x40(%rdi),%rcx
1407ed83e:	4c 89 77 40          	mov    %r14,0x40(%rdi)
1407ed842:	48 85 c9             	test   %rcx,%rcx
1407ed845:	74 24                	je     0x1407ed86b
1407ed847:	8b 41 10             	mov    0x10(%rcx),%eax
1407ed84a:	ff c8                	dec    %eax
1407ed84c:	89 41 10             	mov    %eax,0x10(%rcx)
1407ed84f:	85 c0                	test   %eax,%eax
1407ed851:	7f 18                	jg     0x1407ed86b
1407ed853:	0f 88 36 01 00 00    	js     0x1407ed98f
1407ed859:	48 8b 01             	mov    (%rcx),%rax
1407ed85c:	ba 01 00 00 00       	mov    $0x1,%edx
1407ed861:	48 8b 00             	mov    (%rax),%rax
1407ed864:	ff 15 b6 61 79 00    	call   *0x7961b6(%rip)        # 0x140f83a20
1407ed86a:	90                   	nop
1407ed86b:	49 8b d7             	mov    %r15,%rdx
1407ed86e:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
1407ed872:	e8 59 25 9b ff       	call   0x14019fdd0
1407ed877:	48 8b d0             	mov    %rax,%rdx
1407ed87a:	48 8b cf             	mov    %rdi,%rcx
1407ed87d:	e8 be 4d 01 00       	call   0x140802640
1407ed882:	eb 5f                	jmp    0x1407ed8e3
1407ed884:	48 8d 15 c5 ea 84 00 	lea    0x84eac5(%rip),%rdx        # 0x14103c350
1407ed88b:	eb 3b                	jmp    0x1407ed8c8
1407ed88d:	44 3b ee             	cmp    %esi,%r13d
1407ed890:	74 d9                	je     0x1407ed86b
1407ed892:	41 83 fd 0d          	cmp    $0xd,%r13d
1407ed896:	74 d3                	je     0x1407ed86b
1407ed898:	8b ce                	mov    %esi,%ecx
1407ed89a:	e8 61 64 f6 ff       	call   0x140753d00
1407ed89f:	48 8b d8             	mov    %rax,%rbx
1407ed8a2:	41 8b cd             	mov    %r13d,%ecx
1407ed8a5:	e8 56 64 f6 ff       	call   0x140753d00
1407ed8aa:	4c 8b c3             	mov    %rbx,%r8
1407ed8ad:	48 8b d0             	mov    %rax,%rdx
1407ed8b0:	48 8d 0d c9 ea 84 00 	lea    0x84eac9(%rip),%rcx        # 0x14103c380
1407ed8b7:	e8 54 a0 07 00       	call   0x140867910
1407ed8bc:	48 8b d0             	mov    %rax,%rdx
1407ed8bf:	eb 07                	jmp    0x1407ed8c8
1407ed8c1:	48 8d 15 e0 ea 84 00 	lea    0x84eae0(%rip),%rdx        # 0x14103c3a8
1407ed8c8:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
1407ed8cd:	45 33 c9             	xor    %r9d,%r9d
1407ed8d0:	45 33 c0             	xor    %r8d,%r8d
1407ed8d3:	48 8b cf             	mov    %rdi,%rcx
1407ed8d6:	e8 e5 c9 f9 ff       	call   0x14078a2c0
1407ed8db:	48 8b cf             	mov    %rdi,%rcx
1407ed8de:	e8 dd 48 01 00       	call   0x1408021c0
1407ed8e3:	48 8b 5d 58          	mov    0x58(%rbp),%rbx
1407ed8e7:	48 8b 4d 50          	mov    0x50(%rbp),%rcx
1407ed8eb:	48 8b 09             	mov    (%rcx),%rcx
1407ed8ee:	48 85 c9             	test   %rcx,%rcx
1407ed8f1:	74 24                	je     0x1407ed917
1407ed8f3:	8b 41 10             	mov    0x10(%rcx),%eax
1407ed8f6:	ff c8                	dec    %eax
1407ed8f8:	89 41 10             	mov    %eax,0x10(%rcx)
1407ed8fb:	85 c0                	test   %eax,%eax
1407ed8fd:	7f 18                	jg     0x1407ed917
1407ed8ff:	0f 88 95 00 00 00    	js     0x1407ed99a
1407ed905:	48 8b 01             	mov    (%rcx),%rax
1407ed908:	ba 01 00 00 00       	mov    $0x1,%edx
1407ed90d:	48 8b 00             	mov    (%rax),%rax
1407ed910:	ff 15 0a 61 79 00    	call   *0x79610a(%rip)        # 0x140f83a20
1407ed916:	90                   	nop
1407ed917:	48 8b 0b             	mov    (%rbx),%rcx
1407ed91a:	48 85 c9             	test   %rcx,%rcx
1407ed91d:	74 20                	je     0x1407ed93f
1407ed91f:	8b 41 10             	mov    0x10(%rcx),%eax
1407ed922:	ff c8                	dec    %eax
1407ed924:	89 41 10             	mov    %eax,0x10(%rcx)
1407ed927:	85 c0                	test   %eax,%eax
1407ed929:	7f 14                	jg     0x1407ed93f
1407ed92b:	78 26                	js     0x1407ed953
1407ed92d:	48 8b 01             	mov    (%rcx),%rax
1407ed930:	ba 01 00 00 00       	mov    $0x1,%edx
1407ed935:	48 8b 00             	mov    (%rax),%rax
1407ed938:	ff 15 e2 60 79 00    	call   *0x7960e2(%rip)        # 0x140f83a20
1407ed93e:	90                   	nop
1407ed93f:	48 8b c7             	mov    %rdi,%rax
1407ed942:	48 83 c4 58          	add    $0x58,%rsp
1407ed946:	41 5f                	pop    %r15
1407ed948:	41 5e                	pop    %r14
1407ed94a:	41 5d                	pop    %r13
1407ed94c:	41 5c                	pop    %r12
1407ed94e:	5f                   	pop    %rdi
1407ed94f:	5e                   	pop    %rsi
1407ed950:	5b                   	pop    %rbx
1407ed951:	5d                   	pop    %rbp
1407ed952:	c3                   	ret
1407ed953:	b9 02 00 00 00       	mov    $0x2,%ecx
1407ed958:	e8 a3 cd f9 ff       	call   0x14078a700
1407ed95d:	90                   	nop
1407ed95e:	b9 02 00 00 00       	mov    $0x2,%ecx
1407ed963:	e8 98 cd f9 ff       	call   0x14078a700
1407ed968:	90                   	nop
1407ed969:	33 c9                	xor    %ecx,%ecx
1407ed96b:	e8 90 cd f9 ff       	call   0x14078a700
1407ed970:	cc                   	int3
1407ed971:	b9 01 00 00 00       	mov    $0x1,%ecx
1407ed976:	e8 85 cd f9 ff       	call   0x14078a700
1407ed97b:	90                   	nop
1407ed97c:	33 c9                	xor    %ecx,%ecx
1407ed97e:	e8 7d cd f9 ff       	call   0x14078a700
1407ed983:	cc                   	int3
1407ed984:	b9 01 00 00 00       	mov    $0x1,%ecx
1407ed989:	e8 72 cd f9 ff       	call   0x14078a700
1407ed98e:	90                   	nop
1407ed98f:	b9 02 00 00 00       	mov    $0x2,%ecx
1407ed994:	e8 67 cd f9 ff       	call   0x14078a700
1407ed999:	90                   	nop
1407ed99a:	b9 02 00 00 00       	mov    $0x2,%ecx
1407ed99f:	e8 5c cd f9 ff       	call   0x14078a700
1407ed9a4:	cc                   	int3
1407ed9a5:	cc                   	int3
1407ed9a6:	cc                   	int3
1407ed9a7:	cc                   	int3
1407ed9a8:	cc                   	int3
1407ed9a9:	cc                   	int3
1407ed9aa:	cc                   	int3
1407ed9ab:	cc                   	int3
1407ed9ac:	cc                   	int3
1407ed9ad:	cc                   	int3
1407ed9ae:	cc                   	int3
1407ed9af:	cc                   	int3
1407ed9b0:	4c 8b dc             	mov    %rsp,%r11
1407ed9b3:	49 89 5b 18          	mov    %rbx,0x18(%r11)
1407ed9b7:	49 89 53 10          	mov    %rdx,0x10(%r11)
1407ed9bb:	49 89 4b 08          	mov    %rcx,0x8(%r11)
1407ed9bf:	55                   	push   %rbp
1407ed9c0:	56                   	push   %rsi
1407ed9c1:	57                   	push   %rdi
1407ed9c2:	41 56                	push   %r14
1407ed9c4:	41 57                	push   %r15
1407ed9c6:	48 83 ec 40          	sub    $0x40,%rsp
1407ed9ca:	41 8b f0             	mov    %r8d,%esi
1407ed9cd:	4c 8b f2             	mov    %rdx,%r14
1407ed9d0:	48 8b d9             	mov    %rcx,%rbx
1407ed9d3:	48 8b 02             	mov    (%rdx),%rax
1407ed9d6:	45 33 ff             	xor    %r15d,%r15d
1407ed9d9:	4c 89 3a             	mov    %r15,(%rdx)
1407ed9dc:	49 89 43 20          	mov    %rax,0x20(%r11)
1407ed9e0:	4d 8d 43 20          	lea    0x20(%r11),%r8
1407ed9e4:	ba 2e 00 00 00       	mov    $0x2e,%edx
1407ed9e9:	e8 02 8e 00 00       	call   0x1407f67f0
1407ed9ee:	90                   	nop
1407ed9ef:	48 8d 05 a2 d1 84 00 	lea    0x84d1a2(%rip),%rax        # 0x14103ab98
1407ed9f6:	48 89 03             	mov    %rax,(%rbx)
1407ed9f9:	48 8b 43 20          	mov    0x20(%rbx),%rax
1407ed9fd:	48 85 c0             	test   %rax,%rax
1407eda00:	74 0a                	je     0x1407eda0c
1407eda02:	83 78 18 16          	cmpl   $0x16,0x18(%rax)
1407eda06:	0f 84 f4 00 00 00    	je     0x1407edb00
1407eda0c:	48 8b 43 38          	mov    0x38(%rbx),%rax
1407eda10:	48 8b 48 20          	mov    0x20(%rax),%rcx
1407eda14:	8b 79 18             	mov    0x18(%rcx),%edi
1407eda17:	8b ef                	mov    %edi,%ebp
1407eda19:	8b ce                	mov    %esi,%ecx
1407eda1b:	e8 a0 24 f6 ff       	call   0x14074fec0
1407eda20:	83 ff 13             	cmp    $0x13,%edi
1407eda23:	75 42                	jne    0x1407eda67
1407eda25:	48 8b d0             	mov    %rax,%rdx
1407eda28:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
1407eda2d:	e8 de 79 cb ff       	call   0x1404a5410
1407eda32:	48 8b 08             	mov    (%rax),%rcx
1407eda35:	4c 89 38             	mov    %r15,(%rax)
1407eda38:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
1407eda3d:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1407eda42:	48 8b cb             	mov    %rbx,%rcx
1407eda45:	e8 f6 4b 01 00       	call   0x140802640
1407eda4a:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
1407eda4e:	48 8b 49 20          	mov    0x20(%rcx),%rcx
1407eda52:	e8 89 cc f5 ff       	call   0x14074a6e0
1407eda57:	48 8b c8             	mov    %rax,%rcx
1407eda5a:	e8 41 24 f6 ff       	call   0x14074fea0
1407eda5f:	48 8b 08             	mov    (%rax),%rcx
1407eda62:	8b 69 18             	mov    0x18(%rcx),%ebp
1407eda65:	eb 36                	jmp    0x1407eda9d
1407eda67:	48 8b 08             	mov    (%rax),%rcx
1407eda6a:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
1407eda6f:	48 85 c9             	test   %rcx,%rcx
1407eda72:	74 1c                	je     0x1407eda90
1407eda74:	8b 41 10             	mov    0x10(%rcx),%eax
1407eda77:	ff c0                	inc    %eax
1407eda79:	89 41 10             	mov    %eax,0x10(%rcx)
1407eda7c:	83 f8 01             	cmp    $0x1,%eax
1407eda7f:	0f 8e c5 00 00 00    	jle    0x1407edb4a
1407eda85:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1407eda8a:	0f 84 c2 00 00 00    	je     0x1407edb52
1407eda90:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1407eda95:	48 8b cb             	mov    %rbx,%rcx
1407eda98:	e8 a3 4b 01 00       	call   0x140802640
1407eda9d:	41 8b cf             	mov    %r15d,%ecx
1407edaa0:	83 ff 09             	cmp    $0x9,%edi
1407edaa3:	0f 94 c1             	sete   %cl
1407edaa6:	41 8b c7             	mov    %r15d,%eax
1407edaa9:	83 fe 09             	cmp    $0x9,%esi
1407edaac:	0f 94 c0             	sete   %al
1407edaaf:	3b c8                	cmp    %eax,%ecx
1407edab1:	74 09                	je     0x1407edabc
1407edab3:	48 8d 15 fe ec 84 00 	lea    0x84ecfe(%rip),%rdx        # 0x14103c7b8
1407edaba:	eb 28                	jmp    0x1407edae4
1407edabc:	8d 46 ff             	lea    -0x1(%rsi),%eax
1407edabf:	83 f8 05             	cmp    $0x5,%eax
1407edac2:	76 09                	jbe    0x1407edacd
1407edac4:	48 8d 15 dd f2 84 00 	lea    0x84f2dd(%rip),%rdx        # 0x14103cda8
1407edacb:	eb 17                	jmp    0x1407edae4
1407edacd:	8d 47 ff             	lea    -0x1(%rdi),%eax
1407edad0:	83 f8 03             	cmp    $0x3,%eax
1407edad3:	76 2b                	jbe    0x1407edb00
1407edad5:	8d 45 ff             	lea    -0x1(%rbp),%eax
1407edad8:	83 f8 03             	cmp    $0x3,%eax
1407edadb:	76 23                	jbe    0x1407edb00
1407edadd:	48 8d 15 d4 f2 84 00 	lea    0x84f2d4(%rip),%rdx        # 0x14103cdb8
1407edae4:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
1407edae9:	45 33 c9             	xor    %r9d,%r9d
1407edaec:	45 33 c0             	xor    %r8d,%r8d
1407edaef:	48 8b cb             	mov    %rbx,%rcx
1407edaf2:	e8 c9 c7 f9 ff       	call   0x14078a2c0
1407edaf7:	48 8b cb             	mov    %rbx,%rcx
1407edafa:	e8 c1 46 01 00       	call   0x1408021c0
1407edaff:	90                   	nop
1407edb00:	49 8b 0e             	mov    (%r14),%rcx
1407edb03:	48 85 c9             	test   %rcx,%rcx
1407edb06:	74 20                	je     0x1407edb28
1407edb08:	8b 41 10             	mov    0x10(%rcx),%eax
1407edb0b:	ff c8                	dec    %eax
1407edb0d:	89 41 10             	mov    %eax,0x10(%rcx)
1407edb10:	85 c0                	test   %eax,%eax
1407edb12:	7f 14                	jg     0x1407edb28
1407edb14:	78 29                	js     0x1407edb3f
1407edb16:	48 8b 01             	mov    (%rcx),%rax
1407edb19:	ba 01 00 00 00       	mov    $0x1,%edx
1407edb1e:	48 8b 00             	mov    (%rax),%rax
1407edb21:	ff 15 f9 5e 79 00    	call   *0x795ef9(%rip)        # 0x140f83a20
1407edb27:	90                   	nop
1407edb28:	48 8b c3             	mov    %rbx,%rax
1407edb2b:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
1407edb32:	00
1407edb33:	48 83 c4 40          	add    $0x40,%rsp
1407edb37:	41 5f                	pop    %r15
1407edb39:	41 5e                	pop    %r14
1407edb3b:	5f                   	pop    %rdi
1407edb3c:	5e                   	pop    %rsi
1407edb3d:	5d                   	pop    %rbp
1407edb3e:	c3                   	ret
1407edb3f:	b9 02 00 00 00       	mov    $0x2,%ecx
1407edb44:	e8 b7 cb f9 ff       	call   0x14078a700
1407edb49:	90                   	nop
1407edb4a:	33 c9                	xor    %ecx,%ecx
1407edb4c:	e8 af cb f9 ff       	call   0x14078a700
1407edb51:	cc                   	int3
1407edb52:	b9 01 00 00 00       	mov    $0x1,%ecx
1407edb57:	e8 a4 cb f9 ff       	call   0x14078a700
1407edb5c:	cc                   	int3
1407edb5d:	cc                   	int3
1407edb5e:	cc                   	int3
1407edb5f:	cc                   	int3
1407edb60:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
1407edb65:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1407edb6a:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
1407edb6f:	55                   	push   %rbp
1407edb70:	53                   	push   %rbx
1407edb71:	56                   	push   %rsi
1407edb72:	57                   	push   %rdi
1407edb73:	41 54                	push   %r12
1407edb75:	41 56                	push   %r14
1407edb77:	41 57                	push   %r15
1407edb79:	48 8b ec             	mov    %rsp,%rbp
1407edb7c:	48 83 ec 40          	sub    $0x40,%rsp
1407edb80:	45 0f b6 f1          	movzbl %r9b,%r14d
1407edb84:	4d 8b f8             	mov    %r8,%r15
1407edb87:	48 8b f2             	mov    %rdx,%rsi
1407edb8a:	48 8b f9             	mov    %rcx,%rdi
1407edb8d:	45 33 e4             	xor    %r12d,%r12d
1407edb90:	44 89 65 58          	mov    %r12d,0x58(%rbp)
1407edb94:	48 8d 45 e0          	lea    -0x20(%rbp),%rax
1407edb98:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
1407edb9c:	49 8b 00             	mov    (%r8),%rax
1407edb9f:	4d 89 20             	mov    %r12,(%r8)
1407edba2:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
1407edba6:	45 84 c9             	test   %r9b,%r9b
1407edba9:	74 15                	je     0x1407edbc0
1407edbab:	48 8b 02             	mov    (%rdx),%rax
1407edbae:	4c 89 22             	mov    %r12,(%rdx)
1407edbb1:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
1407edbb5:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
1407edbb9:	bb 01 00 00 00       	mov    $0x1,%ebx