140807d3f:	48 85 c9             	test   %rcx,%rcx
140807d42:	74 24                	je     0x140807d68
140807d44:	8b 41 10             	mov    0x10(%rcx),%eax
140807d47:	ff c8                	dec    %eax
140807d49:	89 41 10             	mov    %eax,0x10(%rcx)
140807d4c:	85 c0                	test   %eax,%eax
140807d4e:	7f 18                	jg     0x140807d68
140807d50:	0f 88 d3 00 00 00    	js     0x140807e29
140807d56:	48 8b 01             	mov    (%rcx),%rax
140807d59:	ba 01 00 00 00       	mov    $0x1,%edx
140807d5e:	48 8b 00             	mov    (%rax),%rax
140807d61:	ff 15 b9 bc 77 00    	call   *0x77bcb9(%rip)        # 0x140f83a20
140807d67:	90                   	nop
140807d68:	48 8b 0b             	mov    (%rbx),%rcx
140807d6b:	48 85 c9             	test   %rcx,%rcx
140807d6e:	74 7f                	je     0x140807def
140807d70:	8b 41 10             	mov    0x10(%rcx),%eax
140807d73:	ff c8                	dec    %eax
140807d75:	89 41 10             	mov    %eax,0x10(%rcx)
140807d78:	85 c0                	test   %eax,%eax
140807d7a:	7f 73                	jg     0x140807def
140807d7c:	0f 88 91 00 00 00    	js     0x140807e13
140807d82:	eb 59                	jmp    0x140807ddd
140807d84:	4c 8d 4c 24 78       	lea    0x78(%rsp),%r9
140807d89:	48 8b d7             	mov    %rdi,%rdx
140807d8c:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140807d91:	e8 da 4f fe ff       	call   0x1407ecd70
140807d96:	48 8b 08             	mov    (%rax),%rcx
140807d99:	48 89 30             	mov    %rsi,(%rax)
140807d9c:	49 89 0e             	mov    %rcx,(%r14)
140807d9f:	48 8b 0f             	mov    (%rdi),%rcx
140807da2:	48 85 c9             	test   %rcx,%rcx
140807da5:	74 20                	je     0x140807dc7
140807da7:	8b 41 10             	mov    0x10(%rcx),%eax
140807daa:	ff c8                	dec    %eax
140807dac:	89 41 10             	mov    %eax,0x10(%rcx)
140807daf:	85 c0                	test   %eax,%eax
140807db1:	7f 14                	jg     0x140807dc7
140807db3:	78 7f                	js     0x140807e34
140807db5:	48 8b 01             	mov    (%rcx),%rax
140807db8:	ba 01 00 00 00       	mov    $0x1,%edx
140807dbd:	48 8b 00             	mov    (%rax),%rax
140807dc0:	ff 15 5a bc 77 00    	call   *0x77bc5a(%rip)        # 0x140f83a20
140807dc6:	90                   	nop
140807dc7:	48 8b 0b             	mov    (%rbx),%rcx
140807dca:	48 85 c9             	test   %rcx,%rcx
140807dcd:	74 20                	je     0x140807def
140807dcf:	8b 41 10             	mov    0x10(%rcx),%eax
140807dd2:	ff c8                	dec    %eax
140807dd4:	89 41 10             	mov    %eax,0x10(%rcx)
140807dd7:	85 c0                	test   %eax,%eax
140807dd9:	7f 14                	jg     0x140807def
140807ddb:	78 20                	js     0x140807dfd
140807ddd:	48 8b 01             	mov    (%rcx),%rax
140807de0:	ba 01 00 00 00       	mov    $0x1,%edx
140807de5:	48 8b 00             	mov    (%rax),%rax
140807de8:	ff 15 32 bc 77 00    	call   *0x77bc32(%rip)        # 0x140f83a20
140807dee:	90                   	nop
140807def:	49 8b c6             	mov    %r14,%rax
140807df2:	48 83 c4 30          	add    $0x30,%rsp
140807df6:	41 5e                	pop    %r14
140807df8:	5f                   	pop    %rdi
140807df9:	5e                   	pop    %rsi
140807dfa:	5d                   	pop    %rbp
140807dfb:	5b                   	pop    %rbx
140807dfc:	c3                   	ret
140807dfd:	b9 02 00 00 00       	mov    $0x2,%ecx
140807e02:	e8 f9 28 f8 ff       	call   0x14078a700
140807e07:	90                   	nop
140807e08:	b9 02 00 00 00       	mov    $0x2,%ecx
140807e0d:	e8 ee 28 f8 ff       	call   0x14078a700
140807e12:	90                   	nop
140807e13:	b9 02 00 00 00       	mov    $0x2,%ecx
140807e18:	e8 e3 28 f8 ff       	call   0x14078a700
140807e1d:	90                   	nop
140807e1e:	b9 02 00 00 00       	mov    $0x2,%ecx
140807e23:	e8 d8 28 f8 ff       	call   0x14078a700
140807e28:	90                   	nop
140807e29:	b9 02 00 00 00       	mov    $0x2,%ecx
140807e2e:	e8 cd 28 f8 ff       	call   0x14078a700
140807e33:	90                   	nop
140807e34:	b9 02 00 00 00       	mov    $0x2,%ecx
140807e39:	e8 c2 28 f8 ff       	call   0x14078a700
140807e3e:	cc                   	int3
140807e3f:	cc                   	int3
140807e40:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140807e45:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140807e4a:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140807e4f:	55                   	push   %rbp
140807e50:	56                   	push   %rsi
140807e51:	57                   	push   %rdi
140807e52:	41 54                	push   %r12
140807e54:	41 55                	push   %r13
140807e56:	41 56                	push   %r14
140807e58:	41 57                	push   %r15
140807e5a:	48 83 ec 40          	sub    $0x40,%rsp
140807e5e:	41 8b e9             	mov    %r9d,%ebp
140807e61:	41 8b f0             	mov    %r8d,%esi
140807e64:	4c 8b e9             	mov    %rcx,%r13
140807e67:	45 33 e4             	xor    %r12d,%r12d
140807e6a:	44 89 64 24 20       	mov    %r12d,0x20(%rsp)
140807e6f:	48 8b 42 30          	mov    0x30(%rdx),%rax
140807e73:	4c 8b 70 08          	mov    0x8(%rax),%r14
140807e77:	4c 2b 30             	sub    (%rax),%r14
140807e7a:	49 c1 fe 04          	sar    $0x4,%r14
140807e7e:	48 8b 7a 18          	mov    0x18(%rdx),%rdi
140807e82:	48 85 ff             	test   %rdi,%rdi
140807e85:	74 1c                	je     0x140807ea3
140807e87:	8b 47 10             	mov    0x10(%rdi),%eax
140807e8a:	ff c0                	inc    %eax
140807e8c:	89 47 10             	mov    %eax,0x10(%rdi)
140807e8f:	83 f8 01             	cmp    $0x1,%eax
140807e92:	0f 8e 5a 01 00 00    	jle    0x140807ff2
140807e98:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140807e9d:	0f 84 57 01 00 00    	je     0x140807ffa
140807ea3:	48 8b df             	mov    %rdi,%rbx
140807ea6:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
140807eab:	c7 44 24 20 02 00 00 	movl   $0x2,0x20(%rsp)
140807eb2:	00
140807eb3:	b9 50 00 00 00       	mov    $0x50,%ecx
140807eb8:	e8 4b 32 61 00       	call   0x140e1b108
140807ebd:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140807ec2:	48 85 c0             	test   %rax,%rax
140807ec5:	74 22                	je     0x140807ee9
140807ec7:	49 8b dc             	mov    %r12,%rbx
140807eca:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
140807ecf:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
140807ed4:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
140807ed9:	48 8b c8             	mov    %rax,%rcx
140807edc:	e8 4f a9 f2 ff       	call   0x140732830
140807ee1:	49 8b fc             	mov    %r12,%rdi
140807ee4:	49 8b cc             	mov    %r12,%rcx
140807ee7:	eb 06                	jmp    0x140807eef
140807ee9:	49 8b c4             	mov    %r12,%rax
140807eec:	48 8b cf             	mov    %rdi,%rcx
140807eef:	49 89 45 00          	mov    %rax,0x0(%r13)
140807ef3:	41 bf 07 00 00 00    	mov    $0x7,%r15d
140807ef9:	44 89 7c 24 20       	mov    %r15d,0x20(%rsp)
140807efe:	48 85 ff             	test   %rdi,%rdi
140807f01:	74 27                	je     0x140807f2a
140807f03:	8b 41 10             	mov    0x10(%rcx),%eax
140807f06:	ff c8                	dec    %eax
140807f08:	89 41 10             	mov    %eax,0x10(%rcx)
140807f0b:	85 c0                	test   %eax,%eax
140807f0d:	7f 1b                	jg     0x140807f2a
140807f0f:	0f 88 d2 00 00 00    	js     0x140807fe7
140807f15:	48 8b 03             	mov    (%rbx),%rax
140807f18:	ba 01 00 00 00       	mov    $0x1,%edx
140807f1d:	48 8b cb             	mov    %rbx,%rcx
140807f20:	48 8b 00             	mov    (%rax),%rax
140807f23:	ff 15 f7 ba 77 00    	call   *0x77baf7(%rip)        # 0x140f83a20
140807f29:	90                   	nop
140807f2a:	8b c6                	mov    %esi,%eax
140807f2c:	f7 d8                	neg    %eax
140807f2e:	0f 48 c6             	cmovs  %esi,%eax
140807f31:	41 3b c6             	cmp    %r14d,%eax
140807f34:	7e 0d                	jle    0x140807f43
140807f36:	41 8b c4             	mov    %r12d,%eax
140807f39:	85 f6                	test   %esi,%esi
140807f3b:	41 0f 4f c6          	cmovg  %r14d,%eax
140807f3f:	8b f0                	mov    %eax,%esi
140807f41:	eb 07                	jmp    0x140807f4a
140807f43:	85 f6                	test   %esi,%esi
140807f45:	79 03                	jns    0x140807f4a
140807f47:	41 03 f6             	add    %r14d,%esi
140807f4a:	48 63 fe             	movslq %esi,%rdi
140807f4d:	8b c5                	mov    %ebp,%eax
140807f4f:	f7 d8                	neg    %eax
140807f51:	0f 48 c5             	cmovs  %ebp,%eax
140807f54:	41 3b c6             	cmp    %r14d,%eax
140807f57:	7e 0b                	jle    0x140807f64
140807f59:	85 ed                	test   %ebp,%ebp
140807f5b:	45 0f 4f e6          	cmovg  %r14d,%r12d
140807f5f:	41 8b ec             	mov    %r12d,%ebp
140807f62:	eb 07                	jmp    0x140807f6b
140807f64:	85 ed                	test   %ebp,%ebp
140807f66:	79 03                	jns    0x140807f6b
140807f68:	41 03 ee             	add    %r14d,%ebp
140807f6b:	48 63 ed             	movslq %ebp,%rbp
140807f6e:	48 8b d5             	mov    %rbp,%rdx
140807f71:	48 2b d7             	sub    %rdi,%rdx
140807f74:	78 56                	js     0x140807fcc
140807f76:	49 8b 4d 00          	mov    0x0(%r13),%rcx
140807f7a:	e8 81 92 f3 ff       	call   0x140741200
140807f7f:	48 3b fd             	cmp    %rbp,%rdi
140807f82:	7d 48                	jge    0x140807fcc
140807f84:	4c 8b b4 24 88 00 00 	mov    0x88(%rsp),%r14
140807f8b:	00
140807f8c:	0f 1f 40 00          	nopl   0x0(%rax)
140807f90:	49 8b 5d 00          	mov    0x0(%r13),%rbx
140807f94:	44 8b c7             	mov    %edi,%r8d
140807f97:	48 8d 94 24 88 00 00 	lea    0x88(%rsp),%rdx
140807f9e:	00
140807f9f:	49 8b ce             	mov    %r14,%rcx
140807fa2:	e8 09 d8 f2 ff       	call   0x1407357b0
140807fa7:	41 83 cf 08          	or     $0x8,%r15d
140807fab:	44 89 7c 24 20       	mov    %r15d,0x20(%rsp)
140807fb0:	8b d7                	mov    %edi,%edx
140807fb2:	2b d6                	sub    %esi,%edx
140807fb4:	4c 8d 84 24 88 00 00 	lea    0x88(%rsp),%r8
140807fbb:	00
140807fbc:	48 8b cb             	mov    %rbx,%rcx
140807fbf:	e8 3c d4 f2 ff       	call   0x140735400
140807fc4:	48 ff c7             	inc    %rdi
140807fc7:	48 3b fd             	cmp    %rbp,%rdi
140807fca:	7c c4                	jl     0x140807f90
140807fcc:	49 8b c5             	mov    %r13,%rax
140807fcf:	48 8b 9c 24 90 00 00 	mov    0x90(%rsp),%rbx
140807fd6:	00
140807fd7:	48 83 c4 40          	add    $0x40,%rsp
140807fdb:	41 5f                	pop    %r15
140807fdd:	41 5e                	pop    %r14
140807fdf:	41 5d                	pop    %r13
140807fe1:	41 5c                	pop    %r12
140807fe3:	5f                   	pop    %rdi
140807fe4:	5e                   	pop    %rsi
140807fe5:	5d                   	pop    %rbp
140807fe6:	c3                   	ret
140807fe7:	b9 02 00 00 00       	mov    $0x2,%ecx
140807fec:	e8 0f 27 f8 ff       	call   0x14078a700
140807ff1:	90                   	nop
140807ff2:	33 c9                	xor    %ecx,%ecx
140807ff4:	e8 07 27 f8 ff       	call   0x14078a700
140807ff9:	cc                   	int3
140807ffa:	b9 01 00 00 00       	mov    $0x1,%ecx
140807fff:	e8 fc 26 f8 ff       	call   0x14078a700
140808004:	cc                   	int3
140808005:	cc                   	int3
140808006:	cc                   	int3
140808007:	cc                   	int3
140808008:	cc                   	int3
140808009:	cc                   	int3
14080800a:	cc                   	int3
14080800b:	cc                   	int3
14080800c:	cc                   	int3
14080800d:	cc                   	int3
14080800e:	cc                   	int3
14080800f:	cc                   	int3
140808010:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140808015:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14080801a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14080801f:	57                   	push   %rdi
140808020:	48 83 ec 30          	sub    $0x30,%rsp
140808024:	48 8b e9             	mov    %rcx,%rbp
140808027:	49 8b f8             	mov    %r8,%rdi
14080802a:	49 8b 48 20          	mov    0x20(%r8),%rcx
14080802e:	48 8b f2             	mov    %rdx,%rsi
140808031:	48 8b 09             	mov    (%rcx),%rcx
140808034:	e8 97 fe f2 ff       	call   0x140737ed0
140808039:	48 8b 4f 20          	mov    0x20(%rdi),%rcx
14080803d:	48 8b d8             	mov    %rax,%rbx
140808040:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140808044:	e8 87 fe f2 ff       	call   0x140737ed0
140808049:	44 8b c8             	mov    %eax,%r9d
14080804c:	44 8b c3             	mov    %ebx,%r8d
14080804f:	48 8b d6             	mov    %rsi,%rdx
140808052:	48 8b cd             	mov    %rbp,%rcx
140808055:	e8 e6 fd ff ff       	call   0x140807e40
14080805a:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14080805f:	48 8b c5             	mov    %rbp,%rax
140808062:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140808067:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14080806c:	48 83 c4 30          	add    $0x30,%rsp
140808070:	5f                   	pop    %rdi
140808071:	c3                   	ret
140808072:	cc                   	int3
140808073:	cc                   	int3
140808074:	cc                   	int3
140808075:	cc                   	int3
140808076:	cc                   	int3
140808077:	cc                   	int3
140808078:	cc                   	int3
140808079:	cc                   	int3
14080807a:	cc                   	int3
14080807b:	cc                   	int3
14080807c:	cc                   	int3
14080807d:	cc                   	int3
14080807e:	cc                   	int3
14080807f:	cc                   	int3
140808080:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140808085:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14080808a:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14080808f:	57                   	push   %rdi
140808090:	48 83 ec 40          	sub    $0x40,%rsp
140808094:	4c 8b d2             	mov    %rdx,%r10
140808097:	48 8b f1             	mov    %rcx,%rsi
14080809a:	33 db                	xor    %ebx,%ebx
14080809c:	4c 63 4a 08          	movslq 0x8(%rdx),%r9
1408080a0:	49 8b 50 20          	mov    0x20(%r8),%rdx
1408080a4:	48 8b 0a             	mov    (%rdx),%rcx
1408080a7:	49 8b 40 28          	mov    0x28(%r8),%rax
1408080ab:	48 2b c2             	sub    %rdx,%rax
1408080ae:	48 c1 f8 03          	sar    $0x3,%rax
1408080b2:	83 f8 01             	cmp    $0x1,%eax
1408080b5:	75 14                	jne    0x1408080cb
1408080b7:	48 8b 49 20          	mov    0x20(%rcx),%rcx
1408080bb:	48 85 c9             	test   %rcx,%rcx
1408080be:	79 03                	jns    0x1408080c3
1408080c0:	49 03 c9             	add    %r9,%rcx
1408080c3:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1408080c9:	eb 53                	jmp    0x14080811e
1408080cb:	8b 49 20             	mov    0x20(%rcx),%ecx
1408080ce:	8b c1                	mov    %ecx,%eax
1408080d0:	f7 d8                	neg    %eax
1408080d2:	0f 48 c1             	cmovs  %ecx,%eax
1408080d5:	41 3b c1             	cmp    %r9d,%eax
1408080d8:	7e 0c                	jle    0x1408080e6
1408080da:	8b c3                	mov    %ebx,%eax
1408080dc:	85 c9                	test   %ecx,%ecx
1408080de:	41 0f 4f c1          	cmovg  %r9d,%eax
1408080e2:	8b c8                	mov    %eax,%ecx
1408080e4:	eb 07                	jmp    0x1408080ed
1408080e6:	85 c9                	test   %ecx,%ecx
1408080e8:	79 03                	jns    0x1408080ed
1408080ea:	41 03 c9             	add    %r9d,%ecx
1408080ed:	4c 63 d9             	movslq %ecx,%r11
1408080f0:	48 8b 42 08          	mov    0x8(%rdx),%rax
1408080f4:	8b 50 20             	mov    0x20(%rax),%edx
1408080f7:	8b c2                	mov    %edx,%eax
1408080f9:	f7 d8                	neg    %eax
1408080fb:	0f 48 c2             	cmovs  %edx,%eax
1408080fe:	41 3b c1             	cmp    %r9d,%eax
140808101:	7e 0c                	jle    0x14080810f
140808103:	8b c3                	mov    %ebx,%eax
140808105:	85 d2                	test   %edx,%edx
140808107:	41 0f 4f c1          	cmovg  %r9d,%eax
14080810b:	8b d0                	mov    %eax,%edx
14080810d:	eb 07                	jmp    0x140808116
14080810f:	85 d2                	test   %edx,%edx
140808111:	79 03                	jns    0x140808116
140808113:	41 03 d1             	add    %r9d,%edx
140808116:	4c 63 c2             	movslq %edx,%r8
140808119:	4d 2b c3             	sub    %r11,%r8
14080811c:	78 12                	js     0x140808130
14080811e:	8b d1                	mov    %ecx,%edx
140808120:	49 8b ca             	mov    %r10,%rcx
140808123:	e8 f8 c8 f1 ff       	call   0x140724a20
140808128:	48 8b f8             	mov    %rax,%rdi
14080812b:	48 85 c0             	test   %rax,%rax
14080812e:	75 45                	jne    0x140808175
140808130:	b9 10 00 00 00       	mov    $0x10,%ecx
140808135:	e8 ce 2f 61 00       	call   0x140e1b108
14080813a:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
14080813f:	48 85 c0             	test   %rax,%rax
140808142:	74 2e                	je     0x140808172
140808144:	48 8d 0d 41 b6 79 00 	lea    0x79b641(%rip),%rcx        # 0x140fa378c
14080814b:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
140808150:	48 89 5c 24 38       	mov    %rbx,0x38(%rsp)
140808155:	0f 28 44 24 30       	movaps 0x30(%rsp),%xmm0
14080815a:	66 0f 7f 44 24 30    	movdqa %xmm0,0x30(%rsp)