140804e87:	0f 86 85 07 00 00    	jbe    0x140805612
140804e8d:	8d 42 fe             	lea    -0x2(%rdx),%eax
140804e90:	83 f8 02             	cmp    $0x2,%eax
140804e93:	0f 86 b2 07 00 00    	jbe    0x14080564b
140804e99:	49 8b 08             	mov    (%r8),%rcx
140804e9c:	83 79 18 0f          	cmpl   $0xf,0x18(%rcx)
140804ea0:	0f 85 bb 01 00 00    	jne    0x140805061
140804ea6:	48 8b 43 20          	mov    0x20(%rbx),%rax
140804eaa:	83 78 18 0f          	cmpl   $0xf,0x18(%rax)
140804eae:	0f 85 ad 01 00 00    	jne    0x140805061
140804eb4:	e8 87 56 f4 ff       	call   0x14074a540
140804eb9:	48 8b f8             	mov    %rax,%rdi
140804ebc:	48 8b 4b 20          	mov    0x20(%rbx),%rcx
140804ec0:	e8 7b 56 f4 ff       	call   0x14074a540
140804ec5:	4c 8b e0             	mov    %rax,%r12
140804ec8:	49 8b 4d 00          	mov    0x0(%r13),%rcx
140804ecc:	48 8b 53 20          	mov    0x20(%rbx),%rdx
140804ed0:	48 3b ca             	cmp    %rdx,%rcx
140804ed3:	0f 84 58 01 00 00    	je     0x140805031
140804ed9:	41 b1 01             	mov    $0x1,%r9b
140804edc:	45 33 c0             	xor    %r8d,%r8d
140804edf:	e8 1c e7 f4 ff       	call   0x140753600
140804ee4:	84 c0                	test   %al,%al
140804ee6:	0f 85 45 01 00 00    	jne    0x140805031
140804eec:	49 8b d4             	mov    %r12,%rdx
140804eef:	48 8b cf             	mov    %rdi,%rcx
140804ef2:	e8 e9 e5 f4 ff       	call   0x1407534e0
140804ef7:	84 c0                	test   %al,%al
140804ef9:	0f 84 ed 00 00 00    	je     0x140804fec
140804eff:	48 8b df             	mov    %rdi,%rbx
140804f02:	48 89 5d d7          	mov    %rbx,-0x29(%rbp)
140804f06:	48 85 ff             	test   %rdi,%rdi
140804f09:	74 1c                	je     0x140804f27
140804f0b:	8b 47 10             	mov    0x10(%rdi),%eax
140804f0e:	ff c0                	inc    %eax
140804f10:	89 47 10             	mov    %eax,0x10(%rdi)
140804f13:	83 f8 01             	cmp    $0x1,%eax
140804f16:	0f 8e 7d 09 00 00    	jle    0x140805899
140804f1c:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140804f21:	0f 84 7a 09 00 00    	je     0x1408058a1
140804f27:	b9 58 00 00 00       	mov    $0x58,%ecx
140804f2c:	e8 d7 61 61 00       	call   0x140e1b108
140804f31:	4c 8b c8             	mov    %rax,%r9
140804f34:	48 89 45 df          	mov    %rax,-0x21(%rbp)
140804f38:	48 85 c0             	test   %rax,%rax
140804f3b:	74 45                	je     0x140804f82
140804f3d:	49 8b de             	mov    %r14,%rbx
140804f40:	48 89 5d d7          	mov    %rbx,-0x29(%rbp)
140804f44:	48 89 7d c7          	mov    %rdi,-0x39(%rbp)
140804f48:	48 8b 0e             	mov    (%rsi),%rcx
140804f4b:	48 89 4d cf          	mov    %rcx,-0x31(%rbp)
140804f4f:	48 85 c9             	test   %rcx,%rcx
140804f52:	74 1c                	je     0x140804f70
140804f54:	8b 41 10             	mov    0x10(%rcx),%eax
140804f57:	ff c0                	inc    %eax
140804f59:	89 41 10             	mov    %eax,0x10(%rcx)
140804f5c:	83 f8 01             	cmp    $0x1,%eax
140804f5f:	0f 8e 47 09 00 00    	jle    0x1408058ac
140804f65:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140804f6a:	0f 84 44 09 00 00    	je     0x1408058b4
140804f70:	4c 8d 45 c7          	lea    -0x39(%rbp),%r8
140804f74:	48 8d 55 cf          	lea    -0x31(%rbp),%rdx
140804f78:	49 8b c9             	mov    %r9,%rcx
140804f7b:	e8 80 df fe ff       	call   0x1407f2f00
140804f80:	eb 06                	jmp    0x140804f88
140804f82:	49 8b c6             	mov    %r14,%rax
140804f85:	4c 8b f7             	mov    %rdi,%r14
140804f88:	48 89 45 c7          	mov    %rax,-0x39(%rbp)
140804f8c:	48 8d 55 c7          	lea    -0x39(%rbp),%rdx
140804f90:	49 8b cf             	mov    %r15,%rcx
140804f93:	e8 78 ad 99 ff       	call   0x14019fd10
140804f98:	90                   	nop
140804f99:	4d 85 f6             	test   %r14,%r14
140804f9c:	74 27                	je     0x140804fc5
140804f9e:	8b 43 10             	mov    0x10(%rbx),%eax
140804fa1:	ff c8                	dec    %eax
140804fa3:	89 43 10             	mov    %eax,0x10(%rbx)
140804fa6:	85 c0                	test   %eax,%eax
140804fa8:	7f 1b                	jg     0x140804fc5
140804faa:	0f 88 0f 09 00 00    	js     0x1408058bf
140804fb0:	48 8b 03             	mov    (%rbx),%rax
140804fb3:	ba 01 00 00 00       	mov    $0x1,%edx
140804fb8:	48 8b cb             	mov    %rbx,%rcx
140804fbb:	48 8b 00             	mov    (%rax),%rax
140804fbe:	ff 15 5c ea 77 00    	call   *0x77ea5c(%rip)        # 0x140f83a20
140804fc4:	90                   	nop
140804fc5:	48 8b 0e             	mov    (%rsi),%rcx
140804fc8:	48 85 c9             	test   %rcx,%rcx
140804fcb:	0f 84 a2 07 00 00    	je     0x140805773
140804fd1:	8b 41 10             	mov    0x10(%rcx),%eax
140804fd4:	ff c8                	dec    %eax
140804fd6:	89 41 10             	mov    %eax,0x10(%rcx)
140804fd9:	85 c0                	test   %eax,%eax
140804fdb:	0f 8f 92 07 00 00    	jg     0x140805773
140804fe1:	0f 88 d4 07 00 00    	js     0x1408057bb
140804fe7:	e9 75 07 00 00       	jmp    0x140805761
140804fec:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
140804ff1:	45 33 c9             	xor    %r9d,%r9d
140804ff4:	4c 8b 06             	mov    (%rsi),%r8
140804ff7:	48 8d 15 aa 82 83 00 	lea    0x8382aa(%rip),%rdx        # 0x14103d2a8
140804ffe:	49 8b 4d 00          	mov    0x0(%r13),%rcx
140805002:	e8 b9 52 f8 ff       	call   0x14078a2c0
140805007:	4d 89 37             	mov    %r14,(%r15)
14080500a:	48 8b 0e             	mov    (%rsi),%rcx
14080500d:	48 85 c9             	test   %rcx,%rcx
140805010:	0f 84 5d 07 00 00    	je     0x140805773
140805016:	8b 41 10             	mov    0x10(%rcx),%eax
140805019:	ff c8                	dec    %eax
14080501b:	89 41 10             	mov    %eax,0x10(%rcx)
14080501e:	85 c0                	test   %eax,%eax
140805020:	0f 8f 4d 07 00 00    	jg     0x140805773
140805026:	0f 88 9a 07 00 00    	js     0x1408057c6
14080502c:	e9 30 07 00 00       	jmp    0x140805761
140805031:	48 8b 06             	mov    (%rsi),%rax
140805034:	4c 89 36             	mov    %r14,(%rsi)
140805037:	49 89 07             	mov    %rax,(%r15)
14080503a:	48 8b 0e             	mov    (%rsi),%rcx
14080503d:	48 85 c9             	test   %rcx,%rcx
140805040:	0f 84 2d 07 00 00    	je     0x140805773
140805046:	8b 41 10             	mov    0x10(%rcx),%eax
140805049:	ff c8                	dec    %eax
14080504b:	89 41 10             	mov    %eax,0x10(%rcx)
14080504e:	85 c0                	test   %eax,%eax
140805050:	0f 8f 1d 07 00 00    	jg     0x140805773
140805056:	0f 88 75 07 00 00    	js     0x1408057d1
14080505c:	e9 00 07 00 00       	jmp    0x140805761
140805061:	48 8b 53 20          	mov    0x20(%rbx),%rdx
140805065:	48 3b ca             	cmp    %rdx,%rcx
140805068:	0f 84 74 05 00 00    	je     0x1408055e2
14080506e:	41 b1 01             	mov    $0x1,%r9b
140805071:	45 33 c0             	xor    %r8d,%r8d
140805074:	e8 87 e5 f4 ff       	call   0x140753600
140805079:	84 c0                	test   %al,%al
14080507b:	0f 85 61 05 00 00    	jne    0x1408055e2
140805081:	49 8b 45 00          	mov    0x0(%r13),%rax
140805085:	83 78 18 0e          	cmpl   $0xe,0x18(%rax)
140805089:	0f 85 d3 03 00 00    	jne    0x140805462
14080508f:	48 8b 4b 20          	mov    0x20(%rbx),%rcx
140805093:	83 79 18 0e          	cmpl   $0xe,0x18(%rcx)
140805097:	0f 85 c5 03 00 00    	jne    0x140805462
14080509d:	e8 4e 55 f4 ff       	call   0x14074a5f0
1408050a2:	48 8b c8             	mov    %rax,%rcx
1408050a5:	e8 46 9a f4 ff       	call   0x14074eaf0
1408050aa:	84 c0                	test   %al,%al
1408050ac:	0f 84 b0 03 00 00    	je     0x140805462
1408050b2:	48 8b 1e             	mov    (%rsi),%rbx
1408050b5:	83 7b 18 24          	cmpl   $0x24,0x18(%rbx)
1408050b9:	0f 85 a6 02 00 00    	jne    0x140805365
1408050bf:	48 85 db             	test   %rbx,%rbx
1408050c2:	74 1c                	je     0x1408050e0
1408050c4:	8b 43 10             	mov    0x10(%rbx),%eax
1408050c7:	ff c0                	inc    %eax
1408050c9:	89 43 10             	mov    %eax,0x10(%rbx)
1408050cc:	83 f8 01             	cmp    $0x1,%eax
1408050cf:	0f 8e f5 07 00 00    	jle    0x1408058ca
1408050d5:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1408050da:	0f 84 f2 07 00 00    	je     0x1408058d2
1408050e0:	48 85 db             	test   %rbx,%rbx
1408050e3:	74 27                	je     0x14080510c
1408050e5:	8b 43 10             	mov    0x10(%rbx),%eax
1408050e8:	ff c8                	dec    %eax
1408050ea:	89 43 10             	mov    %eax,0x10(%rbx)
1408050ed:	85 c0                	test   %eax,%eax
1408050ef:	7f 1b                	jg     0x14080510c
1408050f1:	0f 88 e6 07 00 00    	js     0x1408058dd
1408050f7:	48 8b 03             	mov    (%rbx),%rax
1408050fa:	ba 01 00 00 00       	mov    $0x1,%edx
1408050ff:	48 8b cb             	mov    %rbx,%rcx
140805102:	48 8b 00             	mov    (%rax),%rax
140805105:	ff 15 15 e9 77 00    	call   *0x77e915(%rip)        # 0x140f83a20
14080510b:	90                   	nop
14080510c:	48 8b 4b 40          	mov    0x40(%rbx),%rcx
140805110:	48 85 c9             	test   %rcx,%rcx
140805113:	74 3d                	je     0x140805152
140805115:	ba 01 00 00 00       	mov    $0x1,%edx
14080511a:	e8 c1 1d 03 00       	call   0x140836ee0
14080511f:	48 8b 38             	mov    (%rax),%rdi
140805122:	48 85 ff             	test   %rdi,%rdi
140805125:	74 1c                	je     0x140805143
140805127:	8b 47 10             	mov    0x10(%rdi),%eax
14080512a:	ff c0                	inc    %eax
14080512c:	89 47 10             	mov    %eax,0x10(%rdi)
14080512f:	83 f8 01             	cmp    $0x1,%eax
140805132:	0f 8e b0 07 00 00    	jle    0x1408058e8
140805138:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
14080513d:	0f 84 ad 07 00 00    	je     0x1408058f0
140805143:	41 bc 02 00 00 00    	mov    $0x2,%r12d
140805149:	48 8b df             	mov    %rdi,%rbx
14080514c:	48 8b 4d df          	mov    -0x21(%rbp),%rcx
140805150:	eb 10                	jmp    0x140805162
140805152:	49 8b ce             	mov    %r14,%rcx
140805155:	41 bc 04 00 00 00    	mov    $0x4,%r12d
14080515b:	49 8b de             	mov    %r14,%rbx
14080515e:	48 8b 7d df          	mov    -0x21(%rbp),%rdi
140805162:	48 89 5d df          	mov    %rbx,-0x21(%rbp)
140805166:	48 85 db             	test   %rbx,%rbx
140805169:	74 1c                	je     0x140805187
14080516b:	8b 43 10             	mov    0x10(%rbx),%eax
14080516e:	ff c0                	inc    %eax
140805170:	89 43 10             	mov    %eax,0x10(%rbx)
140805173:	83 f8 01             	cmp    $0x1,%eax
140805176:	0f 8e 7f 07 00 00    	jle    0x1408058fb
14080517c:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140805181:	0f 84 7c 07 00 00    	je     0x140805903
140805187:	41 f6 c4 04          	test   $0x4,%r12b
14080518b:	74 2d                	je     0x1408051ba
14080518d:	41 83 e4 fb          	and    $0xfffffffb,%r12d
140805191:	48 85 c9             	test   %rcx,%rcx
140805194:	74 24                	je     0x1408051ba
140805196:	8b 41 10             	mov    0x10(%rcx),%eax
140805199:	ff c8                	dec    %eax
14080519b:	89 41 10             	mov    %eax,0x10(%rcx)
14080519e:	85 c0                	test   %eax,%eax
1408051a0:	7f 18                	jg     0x1408051ba
1408051a2:	0f 88 66 07 00 00    	js     0x14080590e
1408051a8:	48 8b 01             	mov    (%rcx),%rax
1408051ab:	ba 01 00 00 00       	mov    $0x1,%edx
1408051b0:	48 8b 00             	mov    (%rax),%rax
1408051b3:	ff 15 67 e8 77 00    	call   *0x77e867(%rip)        # 0x140f83a20
1408051b9:	90                   	nop
1408051ba:	41 f6 c4 02          	test   $0x2,%r12b
1408051be:	74 2c                	je     0x1408051ec
1408051c0:	48 85 ff             	test   %rdi,%rdi
1408051c3:	74 27                	je     0x1408051ec
1408051c5:	8b 47 10             	mov    0x10(%rdi),%eax
1408051c8:	ff c8                	dec    %eax
1408051ca:	89 47 10             	mov    %eax,0x10(%rdi)
1408051cd:	85 c0                	test   %eax,%eax
1408051cf:	7f 1b                	jg     0x1408051ec
1408051d1:	0f 88 42 07 00 00    	js     0x140805919
1408051d7:	48 8b 07             	mov    (%rdi),%rax
1408051da:	ba 01 00 00 00       	mov    $0x1,%edx
1408051df:	48 8b cf             	mov    %rdi,%rcx
1408051e2:	48 8b 00             	mov    (%rax),%rax
1408051e5:	ff 15 35 e8 77 00    	call   *0x77e835(%rip)        # 0x140f83a20
1408051eb:	90                   	nop
1408051ec:	48 85 db             	test   %rbx,%rbx
1408051ef:	0f 84 44 01 00 00    	je     0x140805339
1408051f5:	0f 57 c0             	xorps  %xmm0,%xmm0
1408051f8:	0f 11 45 ff          	movups %xmm0,-0x1(%rbp)
1408051fc:	4c 89 75 0f          	mov    %r14,0xf(%rbp)
140805200:	48 c7 45 17 0f 00 00 	movq   $0xf,0x17(%rbp)
140805207:	00
140805208:	c6 45 ff 00          	movb   $0x0,-0x1(%rbp)
14080520c:	48 8d 45 ff          	lea    -0x1(%rbp),%rax
140805210:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140805215:	45 33 c9             	xor    %r9d,%r9d
140805218:	45 33 c0             	xor    %r8d,%r8d
14080521b:	49 8b d5             	mov    %r13,%rdx
14080521e:	48 8b cb             	mov    %rbx,%rcx
140805221:	e8 ba 1e 03 00       	call   0x1408370e0
140805226:	84 c0                	test   %al,%al
140805228:	0f 85 cf 00 00 00    	jne    0x1408052fd
14080522e:	48 83 7d 0f 00       	cmpq   $0x0,0xf(%rbp)
140805233:	74 22                	je     0x140805257
140805235:	48 8d 55 ff          	lea    -0x1(%rbp),%rdx
140805239:	48 83 7d 17 0f       	cmpq   $0xf,0x17(%rbp)
14080523e:	48 0f 47 55 ff       	cmova  -0x1(%rbp),%rdx
140805243:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
140805248:	45 33 c9             	xor    %r9d,%r9d
14080524b:	4c 8b 06             	mov    (%rsi),%r8
14080524e:	49 8b 4d 00          	mov    0x0(%r13),%rcx
140805252:	e8 69 50 f8 ff       	call   0x14078a2c0
140805257:	4d 89 37             	mov    %r14,(%r15)
14080525a:	48 8b 55 17          	mov    0x17(%rbp),%rdx
14080525e:	48 83 fa 0f          	cmp    $0xf,%rdx
140805262:	76 31                	jbe    0x140805295
140805264:	48 ff c2             	inc    %rdx
140805267:	48 8b 4d ff          	mov    -0x1(%rbp),%rcx
14080526b:	48 8b c1             	mov    %rcx,%rax
14080526e:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140805275:	72 19                	jb     0x140805290
140805277:	48 83 c2 27          	add    $0x27,%rdx
14080527b:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14080527f:	48 2b c1             	sub    %rcx,%rax
140805282:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140805286:	48 83 f8 1f          	cmp    $0x1f,%rax
14080528a:	0f 87 aa 06 00 00    	ja     0x14080593a
140805290:	e8 af 5e 61 00       	call   0x140e1b144
140805295:	4c 89 75 0f          	mov    %r14,0xf(%rbp)
140805299:	48 c7 45 17 0f 00 00 	movq   $0xf,0x17(%rbp)
1408052a0:	00
1408052a1:	c6 45 ff 00          	movb   $0x0,-0x1(%rbp)
1408052a5:	8b 43 10             	mov    0x10(%rbx),%eax
1408052a8:	ff c8                	dec    %eax
1408052aa:	89 43 10             	mov    %eax,0x10(%rbx)
1408052ad:	85 c0                	test   %eax,%eax
1408052af:	7f 1b                	jg     0x1408052cc
1408052b1:	0f 88 6d 06 00 00    	js     0x140805924
1408052b7:	48 8b 03             	mov    (%rbx),%rax
1408052ba:	ba 01 00 00 00       	mov    $0x1,%edx
1408052bf:	48 8b cb             	mov    %rbx,%rcx
1408052c2:	48 8b 00             	mov    (%rax),%rax
1408052c5:	ff 15 55 e7 77 00    	call   *0x77e755(%rip)        # 0x140f83a20
1408052cb:	90                   	nop
1408052cc:	48 8b 0e             	mov    (%rsi),%rcx
1408052cf:	48 85 c9             	test   %rcx,%rcx
1408052d2:	74 24                	je     0x1408052f8
1408052d4:	8b 41 10             	mov    0x10(%rcx),%eax
1408052d7:	ff c8                	dec    %eax
1408052d9:	89 41 10             	mov    %eax,0x10(%rcx)
1408052dc:	85 c0                	test   %eax,%eax
1408052de:	7f 18                	jg     0x1408052f8
1408052e0:	0f 88 49 06 00 00    	js     0x14080592f
1408052e6:	48 8b 01             	mov    (%rcx),%rax
1408052e9:	ba 01 00 00 00       	mov    $0x1,%edx
1408052ee:	48 8b 00             	mov    (%rax),%rax
1408052f1:	ff 15 29 e7 77 00    	call   *0x77e729(%rip)        # 0x140f83a20
1408052f7:	90                   	nop
1408052f8:	e9 76 04 00 00       	jmp    0x140805773
1408052fd:	48 8b 55 17          	mov    0x17(%rbp),%rdx
140805301:	48 83 fa 0f          	cmp    $0xf,%rdx
140805305:	76 32                	jbe    0x140805339
140805307:	48 ff c2             	inc    %rdx
14080530a:	48 8b 4d ff          	mov    -0x1(%rbp),%rcx
14080530e:	48 8b c1             	mov    %rcx,%rax
140805311:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140805318:	72 19                	jb     0x140805333
14080531a:	48 83 c2 27          	add    $0x27,%rdx
14080531e:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
140805322:	48 2b c1             	sub    %rcx,%rax
140805325:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140805329:	48 83 f8 1f          	cmp    $0x1f,%rax
14080532d:	0f 87 07 06 00 00    	ja     0x14080593a
140805333:	e8 0c 5e 61 00       	call   0x140e1b144
140805338:	90                   	nop
140805339:	48 85 db             	test   %rbx,%rbx
14080533c:	74 27                	je     0x140805365
14080533e:	8b 43 10             	mov    0x10(%rbx),%eax
140805341:	ff c8                	dec    %eax
140805343:	89 43 10             	mov    %eax,0x10(%rbx)
140805346:	85 c0                	test   %eax,%eax
140805348:	7f 1b                	jg     0x140805365
14080534a:	0f 88 f0 05 00 00    	js     0x140805940
140805350:	48 8b 03             	mov    (%rbx),%rax
140805353:	ba 01 00 00 00       	mov    $0x1,%edx
140805358:	48 8b cb             	mov    %rbx,%rcx
14080535b:	48 8b 00             	mov    (%rax),%rax
14080535e:	ff 15 bc e6 77 00    	call   *0x77e6bc(%rip)        # 0x140f83a20
140805364:	90                   	nop
140805365:	49 8b 4d 00          	mov    0x0(%r13),%rcx
140805369:	e8 82 52 f4 ff       	call   0x14074a5f0
14080536e:	48 8b f8             	mov    %rax,%rdi
140805371:	48 8b d8             	mov    %rax,%rbx
140805374:	48 89 45 d7          	mov    %rax,-0x29(%rbp)
140805378:	48 85 c0             	test   %rax,%rax
14080537b:	74 1d                	je     0x14080539a
14080537d:	8b 48 10             	mov    0x10(%rax),%ecx
140805380:	ff c1                	inc    %ecx
140805382:	89 48 10             	mov    %ecx,0x10(%rax)