14091977a:	0f 84 5b 01 00 00    	je     0x1409198db
140919780:	a8 08                	test   $0x8,%al
140919782:	74 63                	je     0x1409197e7
140919784:	48 63 8f 90 00 00 00 	movslq 0x90(%rdi),%rcx
14091978b:	8b 55 38             	mov    0x38(%rbp),%edx
14091978e:	44 8b 45 3c          	mov    0x3c(%rbp),%r8d
140919792:	39 8f 94 00 00 00    	cmp    %ecx,0x94(%rdi)
140919798:	7f 1a                	jg     0x1409197b4
14091979a:	44 8b ca             	mov    %edx,%r9d
14091979d:	44 89 54 24 20       	mov    %r10d,0x20(%rsp)
1409197a2:	ba 09 00 00 00       	mov    $0x9,%edx
1409197a7:	48 8b cf             	mov    %rdi,%rcx
1409197aa:	e8 f1 35 f9 ff       	call   0x1408acda0
1409197af:	e9 1f 01 00 00       	jmp    0x1409198d3
1409197b4:	8d 41 01             	lea    0x1(%rcx),%eax
1409197b7:	89 87 90 00 00 00    	mov    %eax,0x90(%rdi)
1409197bd:	48 8d 0c 49          	lea    (%rcx,%rcx,2),%rcx
1409197c1:	48 8b 87 88 00 00 00 	mov    0x88(%rdi),%rax
1409197c8:	c7 04 c8 09 00 00 00 	movl   $0x9,(%rax,%rcx,8)
1409197cf:	44 89 44 c8 04       	mov    %r8d,0x4(%rax,%rcx,8)
1409197d4:	89 54 c8 08          	mov    %edx,0x8(%rax,%rcx,8)
1409197d8:	44 89 54 c8 0c       	mov    %r10d,0xc(%rax,%rcx,8)
1409197dd:	4c 89 54 c8 10       	mov    %r10,0x10(%rax,%rcx,8)
1409197e2:	e9 ec 00 00 00       	jmp    0x1409198d3
1409197e7:	48 63 9f 90 00 00 00 	movslq 0x90(%rdi),%rbx
1409197ee:	39 9f 94 00 00 00    	cmp    %ebx,0x94(%rdi)
1409197f4:	7f 1f                	jg     0x140919815
1409197f6:	45 33 c9             	xor    %r9d,%r9d
1409197f9:	44 89 54 24 20       	mov    %r10d,0x20(%rsp)
1409197fe:	45 33 c0             	xor    %r8d,%r8d
140919801:	ba 0e 00 00 00       	mov    $0xe,%edx
140919806:	48 8b cf             	mov    %rdi,%rcx
140919809:	e8 92 35 f9 ff       	call   0x1408acda0
14091980e:	8b d8                	mov    %eax,%ebx
140919810:	45 33 d2             	xor    %r10d,%r10d
140919813:	eb 2a                	jmp    0x14091983f
140919815:	48 8d 0c 5b          	lea    (%rbx,%rbx,2),%rcx
140919819:	8d 43 01             	lea    0x1(%rbx),%eax
14091981c:	89 87 90 00 00 00    	mov    %eax,0x90(%rdi)
140919822:	48 8b 87 88 00 00 00 	mov    0x88(%rdi),%rax
140919829:	48 c7 04 c8 0e 00 00 	movq   $0xe,(%rax,%rcx,8)
140919830:	00
140919831:	48 c7 44 c8 08 00 00 	movq   $0x0,0x8(%rax,%rcx,8)
140919838:	00 00
14091983a:	4c 89 54 c8 10       	mov    %r10,0x10(%rax,%rcx,8)
14091983f:	48 63 8f 90 00 00 00 	movslq 0x90(%rdi),%rcx
140919846:	8b 55 38             	mov    0x38(%rbp),%edx
140919849:	44 8b 45 3c          	mov    0x3c(%rbp),%r8d
14091984d:	39 8f 94 00 00 00    	cmp    %ecx,0x94(%rdi)
140919853:	7f 17                	jg     0x14091986c
140919855:	44 8b ca             	mov    %edx,%r9d
140919858:	44 89 54 24 20       	mov    %r10d,0x20(%rsp)
14091985d:	ba 09 00 00 00       	mov    $0x9,%edx
140919862:	48 8b cf             	mov    %rdi,%rcx
140919865:	e8 36 35 f9 ff       	call   0x1408acda0
14091986a:	eb 2e                	jmp    0x14091989a
14091986c:	8d 41 01             	lea    0x1(%rcx),%eax
14091986f:	89 87 90 00 00 00    	mov    %eax,0x90(%rdi)
140919875:	48 8d 0c 49          	lea    (%rcx,%rcx,2),%rcx
140919879:	48 8b 87 88 00 00 00 	mov    0x88(%rdi),%rax
140919880:	c7 04 c8 09 00 00 00 	movl   $0x9,(%rax,%rcx,8)
140919887:	44 89 44 c8 04       	mov    %r8d,0x4(%rax,%rcx,8)
14091988c:	89 54 c8 08          	mov    %edx,0x8(%rax,%rcx,8)
140919890:	44 89 54 c8 0c       	mov    %r10d,0xc(%rax,%rcx,8)
140919895:	4c 89 54 c8 10       	mov    %r10,0x10(%rax,%rcx,8)
14091989a:	8b 97 90 00 00 00    	mov    0x90(%rdi),%edx
1409198a0:	85 db                	test   %ebx,%ebx
1409198a2:	79 03                	jns    0x1409198a7
1409198a4:	8d 5a ff             	lea    -0x1(%rdx),%ebx
1409198a7:	48 8b 07             	mov    (%rdi),%rax
1409198aa:	80 78 67 00          	cmpb   $0x0,0x67(%rax)
1409198ae:	74 09                	je     0x1409198b9
1409198b0:	48 8d 05 a1 a5 b1 00 	lea    0xb1a5a1(%rip),%rax        # 0x141433e58
1409198b7:	eb 12                	jmp    0x1409198cb
1409198b9:	48 63 c3             	movslq %ebx,%rax
1409198bc:	48 8d 0c 40          	lea    (%rax,%rax,2),%rcx
1409198c0:	48 8b 87 88 00 00 00 	mov    0x88(%rdi),%rax
1409198c7:	48 8d 04 c8          	lea    (%rax,%rcx,8),%rax
1409198cb:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1409198d0:	89 50 08             	mov    %edx,0x8(%rax)
1409198d3:	4c 8b 84 24 08 01 00 	mov    0x108(%rsp),%r8
1409198da:	00
1409198db:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
1409198e0:	41 f7 c7 00 40 40 00 	test   $0x404000,%r15d
1409198e7:	0f 84 98 00 00 00    	je     0x140919985
1409198ed:	48 8d 56 c0          	lea    -0x40(%rsi),%rdx
1409198f1:	4c 8b cd             	mov    %rbp,%r9
1409198f4:	41 0f ba e7 0e       	bt     $0xe,%r15d
1409198f9:	73 25                	jae    0x140919920
1409198fb:	0f b6 06             	movzbl (%rsi),%eax
1409198fe:	48 6b c8 68          	imul   $0x68,%rax,%rcx
140919902:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140919907:	49 8b d4             	mov    %r12,%rdx
14091990a:	48 83 c1 08          	add    $0x8,%rcx
14091990e:	4c 03 c1             	add    %rcx,%r8
140919911:	49 8b cd             	mov    %r13,%rcx
140919914:	e8 27 26 f8 ff       	call   0x14089bf40
140919919:	4c 8b 7c 24 48       	mov    0x48(%rsp),%r15
14091991e:	eb 13                	jmp    0x140919933
140919920:	4c 8b 7c 24 48       	mov    0x48(%rsp),%r15
140919925:	4c 8b c2             	mov    %rdx,%r8
140919928:	49 8b cf             	mov    %r15,%rcx
14091992b:	41 8b d6             	mov    %r14d,%edx
14091992e:	e8 3d a4 fb ff       	call   0x1408d3d70
140919933:	80 7b 67 00          	cmpb   $0x0,0x67(%rbx)
140919937:	74 51                	je     0x14091998a
140919939:	4c 8b a4 24 00 01 00 	mov    0x100(%rsp),%r12
140919940:	00
140919941:	49 8b cf             	mov    %r15,%rcx
140919944:	e8 c7 b9 01 00       	call   0x140935310
140919949:	41 8b 47 40          	mov    0x40(%r15),%eax
14091994d:	49 8b d7             	mov    %r15,%rdx
140919950:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
140919955:	41 89 84 24 c8 00 00 	mov    %eax,0xc8(%r12)
14091995c:	00
14091995d:	e8 4e 65 01 00       	call   0x14092feb0
140919962:	33 c0                	xor    %eax,%eax
140919964:	48 8b b4 24 10 01 00 	mov    0x110(%rsp),%rsi
14091996b:	00
14091996c:	4c 8b bc 24 c0 00 00 	mov    0xc0(%rsp),%r15
140919973:	00
140919974:	48 81 c4 c8 00 00 00 	add    $0xc8,%rsp
14091997b:	41 5e                	pop    %r14
14091997d:	41 5d                	pop    %r13
14091997f:	41 5c                	pop    %r12
140919981:	5f                   	pop    %rdi
140919982:	5d                   	pop    %rbp
140919983:	5b                   	pop    %rbx
140919984:	c3                   	ret
140919985:	4c 8b 7c 24 48       	mov    0x48(%rsp),%r15
14091998a:	44 0f b7 8c 24 30 01 	movzwl 0x130(%rsp),%r9d
140919991:	00 00
140919993:	48 8d 5e c0          	lea    -0x40(%rsi),%rbx
140919997:	48 8b 94 24 08 01 00 	mov    0x108(%rsp),%rdx
14091999e:	00
14091999f:	4c 8b c3             	mov    %rbx,%r8
1409199a2:	49 8b cd             	mov    %r13,%rcx
1409199a5:	e8 76 40 00 00       	call   0x14091da20
1409199aa:	8b 87 90 00 00 00    	mov    0x90(%rdi),%eax
1409199b0:	45 8b ce             	mov    %r14d,%r9d
1409199b3:	4d 8b c7             	mov    %r15,%r8
1409199b6:	48 89 6c 24 28       	mov    %rbp,0x28(%rsp)
1409199bb:	48 8b d7             	mov    %rdi,%rdx
1409199be:	89 46 e0             	mov    %eax,-0x20(%rsi)
1409199c1:	49 8b cd             	mov    %r13,%rcx
1409199c4:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1409199c9:	e8 42 01 00 00       	call   0x140919b10
1409199ce:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1409199d3:	41 ff c6             	inc    %r14d
1409199d6:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
1409199db:	41 ba 00 00 00 00    	mov    $0x0,%r10d
1409199e1:	8b 46 d8             	mov    -0x28(%rsi),%eax
1409199e4:	48 83 c6 70          	add    $0x70,%rsi
1409199e8:	41 89 47 38          	mov    %eax,0x38(%r15)
1409199ec:	44 3b 74 24 30       	cmp    0x30(%rsp),%r14d
1409199f1:	0f 8c 59 fd ff ff    	jl     0x140919750
1409199f7:	8b 87 90 00 00 00    	mov    0x90(%rdi),%eax
1409199fd:	41 89 47 58          	mov    %eax,0x58(%r15)
140919a01:	49 8b c7             	mov    %r15,%rax
140919a04:	e9 5b ff ff ff       	jmp    0x140919964
140919a09:	cc                   	int3
140919a0a:	cc                   	int3
140919a0b:	cc                   	int3
140919a0c:	cc                   	int3
140919a0d:	cc                   	int3
140919a0e:	cc                   	int3
140919a0f:	cc                   	int3
140919a10:	40 57                	rex push %rdi
140919a12:	48 83 ec 20          	sub    $0x20,%rsp
140919a16:	48 8b 01             	mov    (%rcx),%rax
140919a19:	48 8b 10             	mov    (%rax),%rdx
140919a1c:	8b 41 14             	mov    0x14(%rcx),%eax
140919a1f:	48 8b 3a             	mov    (%rdx),%rdi
140919a22:	85 c0                	test   %eax,%eax
140919a24:	0f 8e d7 00 00 00    	jle    0x140919b01
140919a2a:	48 89 6c 24 38       	mov    %rbp,0x38(%rsp)
140919a2f:	ff c8                	dec    %eax
140919a31:	48 89 74 24 40       	mov    %rsi,0x40(%rsp)
140919a36:	48 8b 71 20          	mov    0x20(%rcx),%rsi
140919a3a:	48 63 c8             	movslq %eax,%rcx
140919a3d:	48 6b e9 38          	imul   $0x38,%rcx,%rbp
140919a41:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
140919a46:	48 03 ee             	add    %rsi,%rbp
140919a49:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140919a50:	f6 46 12 01          	testb  $0x1,0x12(%rsi)
140919a54:	74 10                	je     0x140919a66
140919a56:	48 8b 16             	mov    (%rsi),%rdx
140919a59:	48 85 d2             	test   %rdx,%rdx
140919a5c:	74 08                	je     0x140919a66
140919a5e:	48 8b cf             	mov    %rdi,%rcx
140919a61:	e8 aa 4d fc ff       	call   0x1408de810
140919a66:	0f b7 46 12          	movzwl 0x12(%rsi),%eax
140919a6a:	a8 30                	test   $0x30,%al
140919a6c:	74 76                	je     0x140919ae4
140919a6e:	48 8b 5e 20          	mov    0x20(%rsi),%rbx
140919a72:	48 8b cb             	mov    %rbx,%rcx
140919a75:	e8 96 ff ff ff       	call   0x140919a10
140919a7a:	48 85 db             	test   %rbx,%rbx
140919a7d:	74 65                	je     0x140919ae4
140919a7f:	48 85 ff             	test   %rdi,%rdi
140919a82:	74 58                	je     0x140919adc
140919a84:	48 83 bf 00 03 00 00 	cmpq   $0x0,0x300(%rdi)
140919a8b:	00
140919a8c:	74 0d                	je     0x140919a9b
140919a8e:	48 8b d3             	mov    %rbx,%rdx
140919a91:	48 8b cf             	mov    %rdi,%rcx
140919a94:	e8 a7 9e f9 ff       	call   0x1408b3940
140919a99:	eb 49                	jmp    0x140919ae4
140919a9b:	48 3b 9f f0 01 00 00 	cmp    0x1f0(%rdi),%rbx
140919aa2:	73 38                	jae    0x140919adc
140919aa4:	48 3b 9f e0 01 00 00 	cmp    0x1e0(%rdi),%rbx
140919aab:	72 13                	jb     0x140919ac0
140919aad:	48 8b 87 d8 01 00 00 	mov    0x1d8(%rdi),%rax
140919ab4:	48 89 03             	mov    %rax,(%rbx)
140919ab7:	48 89 9f d8 01 00 00 	mov    %rbx,0x1d8(%rdi)
140919abe:	eb 24                	jmp    0x140919ae4
140919ac0:	48 3b 9f e8 01 00 00 	cmp    0x1e8(%rdi),%rbx
140919ac7:	72 13                	jb     0x140919adc
140919ac9:	48 8b 87 c8 01 00 00 	mov    0x1c8(%rdi),%rax
140919ad0:	48 89 03             	mov    %rax,(%rbx)
140919ad3:	48 89 9f c8 01 00 00 	mov    %rbx,0x1c8(%rdi)
140919ada:	eb 08                	jmp    0x140919ae4
140919adc:	48 8b cb             	mov    %rbx,%rcx
140919adf:	e8 6c 20 f7 ff       	call   0x14088bb50
140919ae4:	48 3b f5             	cmp    %rbp,%rsi
140919ae7:	74 09                	je     0x140919af2
140919ae9:	48 83 c6 38          	add    $0x38,%rsi
140919aed:	e9 5e ff ff ff       	jmp    0x140919a50
140919af2:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140919af7:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140919afc:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140919b01:	48 83 c4 20          	add    $0x20,%rsp
140919b05:	5f                   	pop    %rdi
140919b06:	c3                   	ret
140919b07:	cc                   	int3
140919b08:	cc                   	int3
140919b09:	cc                   	int3
140919b0a:	cc                   	int3
140919b0b:	cc                   	int3
140919b0c:	cc                   	int3
140919b0d:	cc                   	int3
140919b0e:	cc                   	int3
140919b0f:	cc                   	int3
140919b10:	44 89 4c 24 20       	mov    %r9d,0x20(%rsp)
140919b15:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140919b1a:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140919b1f:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140919b24:	55                   	push   %rbp
140919b25:	53                   	push   %rbx
140919b26:	56                   	push   %rsi
140919b27:	57                   	push   %rdi
140919b28:	41 54                	push   %r12
140919b2a:	41 55                	push   %r13
140919b2c:	41 56                	push   %r14
140919b2e:	41 57                	push   %r15
140919b30:	48 8d 6c 24 98       	lea    -0x68(%rsp),%rbp
140919b35:	48 81 ec 68 01 00 00 	sub    $0x168,%rsp
140919b3c:	4c 8b 39             	mov    (%rcx),%r15
140919b3f:	49 8d 80 80 00 00 00 	lea    0x80(%r8),%rax
140919b46:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
140919b4a:	48 8b d9             	mov    %rcx,%rbx
140919b4d:	48 8b 85 d0 00 00 00 	mov    0xd0(%rbp),%rax
140919b54:	4c 8b f2             	mov    %rdx,%r14
140919b57:	33 ff                	xor    %edi,%edi
140919b59:	4c 89 7d 98          	mov    %r15,-0x68(%rbp)
140919b5d:	45 8b e1             	mov    %r9d,%r12d
140919b60:	48 89 7d e0          	mov    %rdi,-0x20(%rbp)
140919b64:	48 89 7c 24 60       	mov    %rdi,0x60(%rsp)
140919b69:	4c 8b 58 60          	mov    0x60(%rax),%r11
140919b6d:	0f b6 40 40          	movzbl 0x40(%rax),%eax
140919b71:	48 6b c8 68          	imul   $0x68,%rax,%rcx
140919b75:	49 8b 40 08          	mov    0x8(%r8),%rax
140919b79:	48 83 c0 08          	add    $0x8,%rax
140919b7d:	4c 89 5c 24 50       	mov    %r11,0x50(%rsp)
140919b82:	48 03 c1             	add    %rcx,%rax
140919b85:	49 8d 88 68 02 00 00 	lea    0x268(%r8),%rcx
140919b8c:	48 89 45 b8          	mov    %rax,-0x48(%rbp)
140919b90:	8b 40 44             	mov    0x44(%rax),%eax
140919b93:	8b d0                	mov    %eax,%edx
140919b95:	89 44 24 44          	mov    %eax,0x44(%rsp)
140919b99:	e8 52 46 00 00       	call   0x14091e1f0
140919b9e:	4c 8b 95 d0 00 00 00 	mov    0xd0(%rbp),%r10
140919ba5:	48 f7 d0             	not    %rax
140919ba8:	48 23 85 d8 00 00 00 	and    0xd8(%rbp),%rax
140919baf:	41 8b cc             	mov    %r12d,%ecx
140919bb2:	4c 8b 85 c0 00 00 00 	mov    0xc0(%rbp),%r8
140919bb9:	49 89 42 68          	mov    %rax,0x68(%r10)
140919bbd:	44 8b 6b 44          	mov    0x44(%rbx),%r13d
140919bc1:	49 8b 70 78          	mov    0x78(%r8),%rsi
140919bc5:	41 ff cd             	dec    %r13d
140919bc8:	44 89 6b 44          	mov    %r13d,0x44(%rbx)
140919bcc:	48 d3 ee             	shr    %cl,%rsi
140919bcf:	83 e6 01             	and    $0x1,%esi
140919bd2:	45 89 6a 10          	mov    %r13d,0x10(%r10)
140919bd6:	45 89 6a 0c          	mov    %r13d,0xc(%r10)
140919bda:	8b 43 44             	mov    0x44(%rbx),%eax
140919bdd:	ff c8                	dec    %eax
140919bdf:	48 89 74 24 78       	mov    %rsi,0x78(%rsp)
140919be4:	89 43 44             	mov    %eax,0x44(%rbx)
140919be7:	89 45 b0             	mov    %eax,-0x50(%rbp)
140919bea:	41 89 42 18          	mov    %eax,0x18(%r10)
140919bee:	41 38 7a 40          	cmp    %dil,0x40(%r10)
140919bf2:	76 3b                	jbe    0x140919c2f
140919bf4:	48 8b 45 b8          	mov    -0x48(%rbp),%rax
140919bf8:	f6 40 3c 08          	testb  $0x8,0x3c(%rax)
140919bfc:	74 31                	je     0x140919c2f
140919bfe:	44 8b 4b 38          	mov    0x38(%rbx),%r9d
140919c02:	45 33 c0             	xor    %r8d,%r8d
140919c05:	41 ff c1             	inc    %r9d
140919c08:	ba 47 00 00 00       	mov    $0x47,%edx
140919c0d:	44 89 4b 38          	mov    %r9d,0x38(%rbx)
140919c11:	49 8b ce             	mov    %r14,%rcx
140919c14:	45 89 0a             	mov    %r9d,(%r10)
140919c17:	e8 24 d0 fe ff       	call   0x140906c40
140919c1c:	4c 8b 5c 24 50       	mov    0x50(%rsp),%r11
140919c21:	4c 8b 95 d0 00 00 00 	mov    0xd0(%rbp),%r10
140919c28:	4c 8b 85 c0 00 00 00 	mov    0xc0(%rbp),%r8
140919c2f:	41 8b d4             	mov    %r12d,%edx
140919c32:	45 85 e4             	test   %r12d,%r12d
140919c35:	7e 29                	jle    0x140919c60
140919c37:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140919c3e:	00 00
140919c40:	8b c2                	mov    %edx,%eax
140919c42:	48 6b c8 70          	imul   $0x70,%rax,%rcx
140919c46:	42 39 bc 01 70 03 00 	cmp    %edi,0x370(%rcx,%r8,1)
140919c4d:	00
140919c4e:	75 10                	jne    0x140919c60
140919c50:	4a 39 bc 01 a8 03 00 	cmp    %rdi,0x3a8(%rcx,%r8,1)
140919c57:	00
140919c58:	75 06                	jne    0x140919c60
140919c5a:	ff ca                	dec    %edx
140919c5c:	85 d2                	test   %edx,%edx
140919c5e:	7f e0                	jg     0x140919c40
140919c60:	48 63 c2             	movslq %edx,%rax
140919c63:	48 6b c8 70          	imul   $0x70,%rax,%rcx
140919c67:	48 8b 45 b8          	mov    -0x48(%rbp),%rax
140919c6b:	46 8b 8c 01 7c 03 00 	mov    0x37c(%rcx,%r8,1),%r9d
140919c72:	00
140919c73:	44 8b 40 40          	mov    0x40(%rax),%r8d
140919c77:	41 f6 c0 20          	test   $0x20,%r8b
140919c7b:	0f 84 de 00 00 00    	je     0x140919d5f
140919c81:	49 63 8e 90 00 00 00 	movslq 0x90(%r14),%rcx
140919c88:	8b 58 34             	mov    0x34(%rax),%ebx
140919c8b:	8b 50 30             	mov    0x30(%rax),%edx
140919c8e:	41 39 8e 94 00 00 00 	cmp    %ecx,0x94(%r14)
140919c95:	7f 19                	jg     0x140919cb0
140919c97:	89 54 24 20          	mov    %edx,0x20(%rsp)
140919c9b:	45 33 c9             	xor    %r9d,%r9d
140919c9e:	ba 0a 00 00 00       	mov    $0xa,%edx
140919ca3:	44 8b c3             	mov    %ebx,%r8d