1407e1dc1:	48 8b c3             	mov    %rbx,%rax
1407e1dc4:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1407e1dc9:	48 83 c4 40          	add    $0x40,%rsp
1407e1dcd:	5f                   	pop    %rdi
1407e1dce:	c3                   	ret
1407e1dcf:	48 8b 09             	mov    (%rcx),%rcx
1407e1dd2:	e8 49 2b f5 ff       	call   0x140734920
1407e1dd7:	48 8b 0f             	mov    (%rdi),%rcx
1407e1dda:	48 8b 51 08          	mov    0x8(%rcx),%rdx
1407e1dde:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
1407e1de5:	00
1407e1de6:	45 33 c9             	xor    %r9d,%r9d
1407e1de9:	4c 8b 42 20          	mov    0x20(%rdx),%r8
1407e1ded:	48 8b d0             	mov    %rax,%rdx
1407e1df0:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
1407e1df5:	e8 86 02 fe ff       	call   0x1407c2080
1407e1dfa:	48 8b 08             	mov    (%rax),%rcx
1407e1dfd:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
1407e1e04:	48 89 0b             	mov    %rcx,(%rbx)
1407e1e07:	48 8b 08             	mov    (%rax),%rcx
1407e1e0a:	48 85 c9             	test   %rcx,%rcx
1407e1e0d:	74 20                	je     0x1407e1e2f
1407e1e0f:	8b 41 10             	mov    0x10(%rcx),%eax
1407e1e12:	ff c8                	dec    %eax
1407e1e14:	89 41 10             	mov    %eax,0x10(%rcx)
1407e1e17:	85 c0                	test   %eax,%eax
1407e1e19:	7f 14                	jg     0x1407e1e2f
1407e1e1b:	78 20                	js     0x1407e1e3d
1407e1e1d:	48 8b 01             	mov    (%rcx),%rax
1407e1e20:	ba 01 00 00 00       	mov    $0x1,%edx
1407e1e25:	48 8b 00             	mov    (%rax),%rax
1407e1e28:	ff 15 f2 1b 7a 00    	call   *0x7a1bf2(%rip)        # 0x140f83a20
1407e1e2e:	90                   	nop
1407e1e2f:	48 8b c3             	mov    %rbx,%rax
1407e1e32:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1407e1e37:	48 83 c4 40          	add    $0x40,%rsp
1407e1e3b:	5f                   	pop    %rdi
1407e1e3c:	c3                   	ret
1407e1e3d:	b9 02 00 00 00       	mov    $0x2,%ecx
1407e1e42:	e8 b9 88 fa ff       	call   0x14078a700
1407e1e47:	cc                   	int3
1407e1e48:	cc                   	int3
1407e1e49:	cc                   	int3
1407e1e4a:	cc                   	int3
1407e1e4b:	cc                   	int3
1407e1e4c:	cc                   	int3
1407e1e4d:	cc                   	int3
1407e1e4e:	cc                   	int3
1407e1e4f:	cc                   	int3
1407e1e50:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1407e1e55:	57                   	push   %rdi
1407e1e56:	48 83 ec 40          	sub    $0x40,%rsp
1407e1e5a:	49 8b f8             	mov    %r8,%rdi
1407e1e5d:	48 8b d9             	mov    %rcx,%rbx
1407e1e60:	49 8b 08             	mov    (%r8),%rcx
1407e1e63:	49 8b 40 08          	mov    0x8(%r8),%rax
1407e1e67:	48 2b c1             	sub    %rcx,%rax
1407e1e6a:	48 83 e0 f8          	and    $0xfffffffffffffff8,%rax
1407e1e6e:	48 83 f8 20          	cmp    $0x20,%rax
1407e1e72:	74 2b                	je     0x1407e1e9f
1407e1e74:	48 8d 15 75 36 85 00 	lea    0x853675(%rip),%rdx        # 0x1410354f0
1407e1e7b:	48 8b 0d 76 f6 c4 00 	mov    0xc4f676(%rip),%rcx        # 0x1414314f8
1407e1e82:	e8 39 17 fb ff       	call   0x1407935c0
1407e1e87:	33 d2                	xor    %edx,%edx
1407e1e89:	48 8b cb             	mov    %rbx,%rcx
1407e1e8c:	e8 1f cb a2 ff       	call   0x14020e9b0
1407e1e91:	48 8b c3             	mov    %rbx,%rax
1407e1e94:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1407e1e99:	48 83 c4 40          	add    $0x40,%rsp
1407e1e9d:	5f                   	pop    %rdi
1407e1e9e:	c3                   	ret
1407e1e9f:	48 8b 09             	mov    (%rcx),%rcx
1407e1ea2:	e8 79 2a f5 ff       	call   0x140734920
1407e1ea7:	48 8b 17             	mov    (%rdi),%rdx
1407e1eaa:	48 8b 4a 08          	mov    0x8(%rdx),%rcx
1407e1eae:	4c 8b 41 20          	mov    0x20(%rcx),%r8
1407e1eb2:	48 8b 4a 10          	mov    0x10(%rdx),%rcx
1407e1eb6:	45 33 c9             	xor    %r9d,%r9d
1407e1eb9:	4c 39 49 20          	cmp    %r9,0x20(%rcx)
1407e1ebd:	41 0f 95 c1          	setne  %r9b
1407e1ec1:	48 8b 4a 18          	mov    0x18(%rdx),%rcx
1407e1ec5:	48 8b 51 20          	mov    0x20(%rcx),%rdx
1407e1ec9:	89 54 24 20          	mov    %edx,0x20(%rsp)
1407e1ecd:	48 8b d0             	mov    %rax,%rdx
1407e1ed0:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
1407e1ed5:	e8 a6 01 fe ff       	call   0x1407c2080
1407e1eda:	48 8b 08             	mov    (%rax),%rcx
1407e1edd:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
1407e1ee4:	48 89 0b             	mov    %rcx,(%rbx)
1407e1ee7:	48 8b 08             	mov    (%rax),%rcx
1407e1eea:	48 85 c9             	test   %rcx,%rcx
1407e1eed:	74 20                	je     0x1407e1f0f
1407e1eef:	8b 41 10             	mov    0x10(%rcx),%eax
1407e1ef2:	ff c8                	dec    %eax
1407e1ef4:	89 41 10             	mov    %eax,0x10(%rcx)
1407e1ef7:	85 c0                	test   %eax,%eax
1407e1ef9:	7f 14                	jg     0x1407e1f0f
1407e1efb:	78 20                	js     0x1407e1f1d
1407e1efd:	48 8b 01             	mov    (%rcx),%rax
1407e1f00:	ba 01 00 00 00       	mov    $0x1,%edx
1407e1f05:	48 8b 00             	mov    (%rax),%rax
1407e1f08:	ff 15 12 1b 7a 00    	call   *0x7a1b12(%rip)        # 0x140f83a20
1407e1f0e:	90                   	nop
1407e1f0f:	48 8b c3             	mov    %rbx,%rax
1407e1f12:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1407e1f17:	48 83 c4 40          	add    $0x40,%rsp
1407e1f1b:	5f                   	pop    %rdi
1407e1f1c:	c3                   	ret
1407e1f1d:	b9 02 00 00 00       	mov    $0x2,%ecx
1407e1f22:	e8 d9 87 fa ff       	call   0x14078a700
1407e1f27:	cc                   	int3
1407e1f28:	cc                   	int3
1407e1f29:	cc                   	int3
1407e1f2a:	cc                   	int3
1407e1f2b:	cc                   	int3
1407e1f2c:	cc                   	int3
1407e1f2d:	cc                   	int3
1407e1f2e:	cc                   	int3
1407e1f2f:	cc                   	int3
1407e1f30:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1407e1f35:	57                   	push   %rdi
1407e1f36:	48 83 ec 40          	sub    $0x40,%rsp
1407e1f3a:	0f 29 74 24 30       	movaps %xmm6,0x30(%rsp)
1407e1f3f:	48 8b d9             	mov    %rcx,%rbx
1407e1f42:	33 ff                	xor    %edi,%edi
1407e1f44:	49 8b 08             	mov    (%r8),%rcx
1407e1f47:	49 8b 40 08          	mov    0x8(%r8),%rax
1407e1f4b:	48 2b c1             	sub    %rcx,%rax
1407e1f4e:	48 83 e0 f8          	and    $0xfffffffffffffff8,%rax
1407e1f52:	48 83 f8 08          	cmp    $0x8,%rax
1407e1f56:	74 30                	je     0x1407e1f88
1407e1f58:	48 8d 15 e1 bd 84 00 	lea    0x84bde1(%rip),%rdx        # 0x14102dd40
1407e1f5f:	48 8b 0d 92 f5 c4 00 	mov    0xc4f592(%rip),%rcx        # 0x1414314f8
1407e1f66:	e8 55 16 fb ff       	call   0x1407935c0
1407e1f6b:	33 d2                	xor    %edx,%edx
1407e1f6d:	48 8b cb             	mov    %rbx,%rcx
1407e1f70:	e8 3b ca a2 ff       	call   0x14020e9b0
1407e1f75:	48 8b c3             	mov    %rbx,%rax
1407e1f78:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1407e1f7d:	0f 28 74 24 30       	movaps 0x30(%rsp),%xmm6
1407e1f82:	48 83 c4 40          	add    $0x40,%rsp
1407e1f86:	5f                   	pop    %rdi
1407e1f87:	c3                   	ret
1407e1f88:	48 8b 01             	mov    (%rcx),%rax
1407e1f8b:	f2 0f 10 48 20       	movsd  0x20(%rax),%xmm1
1407e1f90:	0f 57 c0             	xorps  %xmm0,%xmm0
1407e1f93:	66 0f 2f c1          	comisd %xmm1,%xmm0
1407e1f97:	76 50                	jbe    0x1407e1fe9
1407e1f99:	48 8d 15 c8 bd 84 00 	lea    0x84bdc8(%rip),%rdx        # 0x14102dd68
1407e1fa0:	48 8b 0d 51 f5 c4 00 	mov    0xc4f551(%rip),%rcx        # 0x1414314f8
1407e1fa7:	e8 14 16 fb ff       	call   0x1407935c0
1407e1fac:	b9 28 00 00 00       	mov    $0x28,%ecx
1407e1fb1:	e8 52 91 63 00       	call   0x140e1b108
1407e1fb6:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
1407e1fbb:	48 85 c0             	test   %rax,%rax
1407e1fbe:	74 13                	je     0x1407e1fd3
1407e1fc0:	f2 0f 10 0d f0 01 7d 	movsd  0x7d01f0(%rip),%xmm1        # 0x140fb21b8
1407e1fc7:	00
1407e1fc8:	48 8b c8             	mov    %rax,%rcx
1407e1fcb:	e8 00 3b a7 ff       	call   0x140255ad0
1407e1fd0:	48 8b f8             	mov    %rax,%rdi
1407e1fd3:	48 89 3b             	mov    %rdi,(%rbx)
1407e1fd6:	48 8b c3             	mov    %rbx,%rax
1407e1fd9:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1407e1fde:	0f 28 74 24 30       	movaps 0x30(%rsp),%xmm6
1407e1fe3:	48 83 c4 40          	add    $0x40,%rsp
1407e1fe7:	5f                   	pop    %rdi
1407e1fe8:	c3                   	ret
1407e1fe9:	66 0f 2e c1          	ucomisd %xmm1,%xmm0
1407e1fed:	77 06                	ja     0x1407e1ff5
1407e1fef:	66 0f 51 f1          	sqrtpd %xmm1,%xmm6
1407e1ff3:	eb 0b                	jmp    0x1407e2000
1407e1ff5:	0f 28 c1             	movaps %xmm1,%xmm0
1407e1ff8:	e8 bf f1 65 00       	call   0x140e411bc
1407e1ffd:	0f 28 f0             	movaps %xmm0,%xmm6
1407e2000:	b9 28 00 00 00       	mov    $0x28,%ecx
1407e2005:	e8 fe 90 63 00       	call   0x140e1b108
1407e200a:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
1407e200f:	48 85 c0             	test   %rax,%rax
1407e2012:	74 0e                	je     0x1407e2022
1407e2014:	0f 28 ce             	movaps %xmm6,%xmm1
1407e2017:	48 8b c8             	mov    %rax,%rcx
1407e201a:	e8 b1 3a a7 ff       	call   0x140255ad0
1407e201f:	48 8b f8             	mov    %rax,%rdi
1407e2022:	48 89 3b             	mov    %rdi,(%rbx)
1407e2025:	48 8b c3             	mov    %rbx,%rax
1407e2028:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1407e202d:	0f 28 74 24 30       	movaps 0x30(%rsp),%xmm6
1407e2032:	48 83 c4 40          	add    $0x40,%rsp
1407e2036:	5f                   	pop    %rdi
1407e2037:	c3                   	ret
1407e2038:	cc                   	int3
1407e2039:	cc                   	int3
1407e203a:	cc                   	int3
1407e203b:	cc                   	int3
1407e203c:	cc                   	int3
1407e203d:	cc                   	int3
1407e203e:	cc                   	int3
1407e203f:	cc                   	int3
1407e2040:	40 53                	rex push %rbx
1407e2042:	48 83 ec 30          	sub    $0x30,%rsp
1407e2046:	49 8b 40 08          	mov    0x8(%r8),%rax
1407e204a:	48 8b d9             	mov    %rcx,%rbx
1407e204d:	49 8b 08             	mov    (%r8),%rcx
1407e2050:	48 2b c1             	sub    %rcx,%rax
1407e2053:	48 83 e0 f8          	and    $0xfffffffffffffff8,%rax
1407e2057:	48 83 f8 08          	cmp    $0x8,%rax
1407e205b:	74 26                	je     0x1407e2083
1407e205d:	48 8b 0d 94 f4 c4 00 	mov    0xc4f494(%rip),%rcx        # 0x1414314f8
1407e2064:	48 8d 15 8d b3 84 00 	lea    0x84b38d(%rip),%rdx        # 0x14102d3f8
1407e206b:	e8 50 15 fb ff       	call   0x1407935c0
1407e2070:	33 d2                	xor    %edx,%edx
1407e2072:	48 8b cb             	mov    %rbx,%rcx
1407e2075:	e8 36 c9 a2 ff       	call   0x14020e9b0
1407e207a:	48 8b c3             	mov    %rbx,%rax
1407e207d:	48 83 c4 30          	add    $0x30,%rsp
1407e2081:	5b                   	pop    %rbx
1407e2082:	c3                   	ret
1407e2083:	48 8b 09             	mov    (%rcx),%rcx
1407e2086:	8b 49 20             	mov    0x20(%rcx),%ecx
1407e2089:	e8 32 81 08 00       	call   0x14086a1c0
1407e208e:	33 d2                	xor    %edx,%edx
1407e2090:	48 8b cb             	mov    %rbx,%rcx
1407e2093:	e8 18 c9 a2 ff       	call   0x14020e9b0
1407e2098:	48 8b c3             	mov    %rbx,%rax
1407e209b:	48 83 c4 30          	add    $0x30,%rsp
1407e209f:	5b                   	pop    %rbx
1407e20a0:	c3                   	ret
1407e20a1:	cc                   	int3
1407e20a2:	cc                   	int3
1407e20a3:	cc                   	int3
1407e20a4:	cc                   	int3
1407e20a5:	cc                   	int3
1407e20a6:	cc                   	int3
1407e20a7:	cc                   	int3
1407e20a8:	cc                   	int3
1407e20a9:	cc                   	int3
1407e20aa:	cc                   	int3
1407e20ab:	cc                   	int3
1407e20ac:	cc                   	int3
1407e20ad:	cc                   	int3
1407e20ae:	cc                   	int3
1407e20af:	cc                   	int3
1407e20b0:	40 53                	rex push %rbx
1407e20b2:	48 83 ec 30          	sub    $0x30,%rsp
1407e20b6:	49 8b 40 08          	mov    0x8(%r8),%rax
1407e20ba:	48 8b d9             	mov    %rcx,%rbx
1407e20bd:	49 2b 00             	sub    (%r8),%rax
1407e20c0:	48 a9 f8 ff ff ff    	test   $0xfffffffffffffff8,%rax
1407e20c6:	74 26                	je     0x1407e20ee
1407e20c8:	48 8b 0d 29 f4 c4 00 	mov    0xc4f429(%rip),%rcx        # 0x1414314f8
1407e20cf:	48 8d 15 4a 1c 85 00 	lea    0x851c4a(%rip),%rdx        # 0x141033d20
1407e20d6:	e8 e5 14 fb ff       	call   0x1407935c0
1407e20db:	33 d2                	xor    %edx,%edx
1407e20dd:	48 8b cb             	mov    %rbx,%rcx
1407e20e0:	e8 cb c8 a2 ff       	call   0x14020e9b0
1407e20e5:	48 8b c3             	mov    %rbx,%rax
1407e20e8:	48 83 c4 30          	add    $0x30,%rsp
1407e20ec:	5b                   	pop    %rbx
1407e20ed:	c3                   	ret
1407e20ee:	48 8d 0d 4b a5 c4 00 	lea    0xc4a54b(%rip),%rcx        # 0x14142c640
1407e20f5:	e8 c6 74 dc ff       	call   0x1405a95c0
1407e20fa:	33 d2                	xor    %edx,%edx
1407e20fc:	48 8b cb             	mov    %rbx,%rcx
1407e20ff:	e8 ac c8 a2 ff       	call   0x14020e9b0
1407e2104:	48 8b c3             	mov    %rbx,%rax
1407e2107:	48 83 c4 30          	add    $0x30,%rsp
1407e210b:	5b                   	pop    %rbx
1407e210c:	c3                   	ret
1407e210d:	cc                   	int3
1407e210e:	cc                   	int3
1407e210f:	cc                   	int3
1407e2110:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1407e2115:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1407e211a:	57                   	push   %rdi
1407e211b:	48 81 ec 90 00 00 00 	sub    $0x90,%rsp
1407e2122:	48 8b 05 d7 6d bd 00 	mov    0xbd6dd7(%rip),%rax        # 0x1413b8f00
1407e2129:	48 33 c4             	xor    %rsp,%rax
1407e212c:	48 89 84 24 80 00 00 	mov    %rax,0x80(%rsp)
1407e2133:	00
1407e2134:	49 8b f8             	mov    %r8,%rdi
1407e2137:	48 8b f1             	mov    %rcx,%rsi
1407e213a:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
1407e213f:	49 8b 00             	mov    (%r8),%rax
1407e2142:	49 8b 48 08          	mov    0x8(%r8),%rcx
1407e2146:	48 2b c8             	sub    %rax,%rcx
1407e2149:	48 83 e1 f8          	and    $0xfffffffffffffff8,%rcx
1407e214d:	48 83 f9 10          	cmp    $0x10,%rcx
1407e2151:	74 22                	je     0x1407e2175
1407e2153:	48 8d 15 46 39 85 00 	lea    0x853946(%rip),%rdx        # 0x141035aa0
1407e215a:	48 8b 0d 97 f3 c4 00 	mov    0xc4f397(%rip),%rcx        # 0x1414314f8
1407e2161:	e8 5a 14 fb ff       	call   0x1407935c0
1407e2166:	33 d2                	xor    %edx,%edx
1407e2168:	48 8b ce             	mov    %rsi,%rcx
1407e216b:	e8 40 c8 a2 ff       	call   0x14020e9b0
1407e2170:	e9 38 01 00 00       	jmp    0x1407e22ad
1407e2175:	48 8b 08             	mov    (%rax),%rcx
1407e2178:	e8 a3 27 f5 ff       	call   0x140734920
1407e217d:	48 8b d8             	mov    %rax,%rbx
1407e2180:	48 8b 0f             	mov    (%rdi),%rcx
1407e2183:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1407e2187:	e8 94 27 f5 ff       	call   0x140734920
1407e218c:	48 8b f8             	mov    %rax,%rdi
1407e218f:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1407e2194:	48 8b cb             	mov    %rbx,%rcx
1407e2197:	e8 04 0d f6 ff       	call   0x140742ea0
1407e219c:	90                   	nop
1407e219d:	48 8d 54 24 60       	lea    0x60(%rsp),%rdx
1407e21a2:	48 8b cf             	mov    %rdi,%rcx
1407e21a5:	e8 f6 0c f6 ff       	call   0x140742ea0
1407e21aa:	48 8b 50 10          	mov    0x10(%rax),%rdx
1407e21ae:	48 83 78 18 0f       	cmpq   $0xf,0x18(%rax)
1407e21b3:	76 03                	jbe    0x1407e21b8
1407e21b5:	48 8b 00             	mov    (%rax),%rax
1407e21b8:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
1407e21bd:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
1407e21c2:	48 83 fb 0f          	cmp    $0xf,%rbx
1407e21c6:	48 0f 47 4c 24 40    	cmova  0x40(%rsp),%rcx
1407e21cc:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
1407e21d1:	4c 8b c8             	mov    %rax,%r9
1407e21d4:	45 33 c0             	xor    %r8d,%r8d
1407e21d7:	48 8b 54 24 50       	mov    0x50(%rsp),%rdx
1407e21dc:	e8 4f 61 bb ff       	call   0x140398330
1407e21e1:	48 8b 0d 90 0c c5 00 	mov    0xc50c90(%rip),%rcx        # 0x141432e78
1407e21e8:	48 85 c0             	test   %rax,%rax
1407e21eb:	75 06                	jne    0x1407e21f3
1407e21ed:	48 83 c1 58          	add    $0x58,%rcx
1407e21f1:	eb 04                	jmp    0x1407e21f7
1407e21f3:	48 83 c1 60          	add    $0x60,%rcx
1407e21f7:	48 8b 09             	mov    (%rcx),%rcx
1407e21fa:	48 85 c9             	test   %rcx,%rcx
1407e21fd:	74 21                	je     0x1407e2220
1407e21ff:	8b 41 10             	mov    0x10(%rcx),%eax
1407e2202:	ff c0                	inc    %eax
1407e2204:	89 41 10             	mov    %eax,0x10(%rcx)
1407e2207:	83 f8 01             	cmp    $0x1,%eax
1407e220a:	0f 8e cb 00 00 00    	jle    0x1407e22db
1407e2210:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1407e2215:	0f 84 c8 00 00 00    	je     0x1407e22e3
1407e221b:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
1407e2220:	48 89 0e             	mov    %rcx,(%rsi)
1407e2223:	48 8b 54 24 78       	mov    0x78(%rsp),%rdx
1407e2228:	48 83 fa 0f          	cmp    $0xf,%rdx
1407e222c:	76 37                	jbe    0x1407e2265
1407e222e:	48 ff c2             	inc    %rdx
1407e2231:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
1407e2236:	48 8b c1             	mov    %rcx,%rax
1407e2239:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1407e2240:	72 19                	jb     0x1407e225b
1407e2242:	48 83 c2 27          	add    $0x27,%rdx