140288c01:	49 8d 5c 24 c8       	lea    -0x38(%r12),%rbx
140288c06:	4c 8b c7             	mov    %rdi,%r8
140288c09:	48 8b d3             	mov    %rbx,%rdx
140288c0c:	e8 2f fc ff ff       	call   0x140288840
140288c11:	84 c0                	test   %al,%al
140288c13:	75 23                	jne    0x140288c38
140288c15:	4c 8b c3             	mov    %rbx,%r8
140288c18:	48 8b d7             	mov    %rdi,%rdx
140288c1b:	e8 20 fc ff ff       	call   0x140288840
140288c20:	84 c0                	test   %al,%al
140288c22:	75 21                	jne    0x140288c45
140288c24:	48 83 ef 38          	sub    $0x38,%rdi
140288c28:	48 3b fb             	cmp    %rbx,%rdi
140288c2b:	74 0b                	je     0x140288c38
140288c2d:	48 8b d3             	mov    %rbx,%rdx
140288c30:	48 8b cf             	mov    %rdi,%rcx
140288c33:	e8 c8 56 fb ff       	call   0x14023e300
140288c38:	49 83 ec 38          	sub    $0x38,%r12
140288c3c:	48 83 eb 38          	sub    $0x38,%rbx
140288c40:	4d 3b f4             	cmp    %r12,%r14
140288c43:	72 c1                	jb     0x140288c06
140288c45:	49 8b df             	mov    %r15,%rbx
140288c48:	48 89 7d 40          	mov    %rdi,0x40(%rbp)
140288c4c:	4d 3b e6             	cmp    %r14,%r12
140288c4f:	75 23                	jne    0x140288c74
140288c51:	4d 3b fd             	cmp    %r13,%r15
140288c54:	74 61                	je     0x140288cb7
140288c56:	49 3b f7             	cmp    %r15,%rsi
140288c59:	74 0b                	je     0x140288c66
140288c5b:	48 8b d6             	mov    %rsi,%rdx
140288c5e:	48 8b cf             	mov    %rdi,%rcx
140288c61:	e8 9a 56 fb ff       	call   0x14023e300
140288c66:	48 83 c6 38          	add    $0x38,%rsi
140288c6a:	48 83 c7 38          	add    $0x38,%rdi
140288c6e:	48 8b 45 40          	mov    0x40(%rbp),%rax
140288c72:	eb 2f                	jmp    0x140288ca3
140288c74:	49 83 c4 c8          	add    $0xffffffffffffffc8,%r12
140288c78:	4d 3b fd             	cmp    %r13,%r15
140288c7b:	75 20                	jne    0x140288c9d
140288c7d:	48 83 ef 38          	sub    $0x38,%rdi
140288c81:	4c 3b e7             	cmp    %rdi,%r12
140288c84:	74 0b                	je     0x140288c91
140288c86:	48 8b d7             	mov    %rdi,%rdx
140288c89:	49 8b cc             	mov    %r12,%rcx
140288c8c:	e8 6f 56 fb ff       	call   0x14023e300
140288c91:	48 83 ee 38          	sub    $0x38,%rsi
140288c95:	48 8b c7             	mov    %rdi,%rax
140288c98:	48 8b de             	mov    %rsi,%rbx
140288c9b:	eb 0a                	jmp    0x140288ca7
140288c9d:	48 8b c3             	mov    %rbx,%rax
140288ca0:	49 8b dc             	mov    %r12,%rbx
140288ca3:	49 83 c7 38          	add    $0x38,%r15
140288ca7:	48 8b d3             	mov    %rbx,%rdx
140288caa:	48 8b c8             	mov    %rax,%rcx
140288cad:	e8 4e 56 fb ff       	call   0x14023e300
140288cb2:	e9 3d ff ff ff       	jmp    0x140288bf4
140288cb7:	48 8b 45 50          	mov    0x50(%rbp),%rax
140288cbb:	4c 8b f8             	mov    %rax,%r15
140288cbe:	49 c1 ff 02          	sar    $0x2,%r15
140288cc2:	48 d1 f8             	sar    $1,%rax
140288cc5:	4c 03 f8             	add    %rax,%r15
140288cc8:	4c 89 7d 50          	mov    %r15,0x50(%rbp)
140288ccc:	49 8b cd             	mov    %r13,%rcx
140288ccf:	48 2b ce             	sub    %rsi,%rcx
140288cd2:	48 c1 f9 03          	sar    $0x3,%rcx
140288cd6:	49 bc b7 6d db b6 6d 	movabs $0x6db6db6db6db6db7,%r12
140288cdd:	db b6 6d
140288ce0:	49 0f af cc          	imul   %r12,%rcx
140288ce4:	48 8b c7             	mov    %rdi,%rax
140288ce7:	49 2b c6             	sub    %r14,%rax
140288cea:	48 c1 f8 03          	sar    $0x3,%rax
140288cee:	49 0f af c4          	imul   %r12,%rax
140288cf2:	48 3b c1             	cmp    %rcx,%rax
140288cf5:	8a 5d 58             	mov    0x58(%rbp),%bl
140288cf8:	44 8a cb             	mov    %bl,%r9b
140288cfb:	4d 8b c7             	mov    %r15,%r8
140288cfe:	7d 10                	jge    0x140288d10
140288d00:	48 8b d7             	mov    %rdi,%rdx
140288d03:	49 8b ce             	mov    %r14,%rcx
140288d06:	e8 bd fd ff ff       	call   0x140288ac8
140288d0b:	4c 8b f6             	mov    %rsi,%r14
140288d0e:	eb 0e                	jmp    0x140288d1e
140288d10:	49 8b d5             	mov    %r13,%rdx
140288d13:	48 8b ce             	mov    %rsi,%rcx
140288d16:	e8 ad fd ff ff       	call   0x140288ac8
140288d1b:	4c 8b ef             	mov    %rdi,%r13
140288d1e:	49 8b c5             	mov    %r13,%rax
140288d21:	49 2b c6             	sub    %r14,%rax
140288d24:	48 3d 38 07 00 00    	cmp    $0x738,%rax
140288d2a:	0f 8d e1 fd ff ff    	jge    0x140288b11
140288d30:	44 8a c3             	mov    %bl,%r8b
140288d33:	49 8b d5             	mov    %r13,%rdx
140288d36:	49 8b ce             	mov    %r14,%rcx
140288d39:	e8 22 06 00 00       	call   0x140289360
140288d3e:	48 8b 9c 24 b8 00 00 	mov    0xb8(%rsp),%rbx
140288d45:	00
140288d46:	48 83 c4 70          	add    $0x70,%rsp
140288d4a:	41 5f                	pop    %r15
140288d4c:	41 5e                	pop    %r14
140288d4e:	41 5d                	pop    %r13
140288d50:	41 5c                	pop    %r12
140288d52:	5f                   	pop    %rdi
140288d53:	5e                   	pop    %rsi
140288d54:	5d                   	pop    %rbp
140288d55:	c3                   	ret
140288d56:	48 8b f7             	mov    %rdi,%rsi
140288d59:	48 d1 fe             	sar    $1,%rsi
140288d5c:	48 85 f6             	test   %rsi,%rsi
140288d5f:	7e 78                	jle    0x140288dd9
140288d61:	4c 6b fe 38          	imul   $0x38,%rsi,%r15
140288d65:	49 83 c7 24          	add    $0x24,%r15
140288d69:	4d 03 fe             	add    %r14,%r15
140288d6c:	48 ff ce             	dec    %rsi
140288d6f:	4d 8d 7f c8          	lea    -0x38(%r15),%r15
140288d73:	49 8d 57 dc          	lea    -0x24(%r15),%rdx
140288d77:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140288d7b:	e8 6c 2d d9 ff       	call   0x14001baec
140288d80:	41 0f 10 47 f4       	movups -0xc(%r15),%xmm0
140288d85:	0f 11 45 d8          	movups %xmm0,-0x28(%rbp)
140288d89:	f3 41 0f 10 47 04    	movss  0x4(%r15),%xmm0
140288d8f:	f3 0f 11 45 e8       	movss  %xmm0,-0x18(%rbp)
140288d94:	f3 41 0f 10 4f 08    	movss  0x8(%r15),%xmm1
140288d9a:	f3 0f 11 4d ec       	movss  %xmm1,-0x14(%rbp)
140288d9f:	41 8b 47 0c          	mov    0xc(%r15),%eax
140288da3:	89 45 f0             	mov    %eax,-0x10(%rbp)
140288da6:	41 8a 47 10          	mov    0x10(%r15),%al
140288daa:	88 45 f4             	mov    %al,-0xc(%rbp)
140288dad:	41 8a 47 11          	mov    0x11(%r15),%al
140288db1:	88 45 f5             	mov    %al,-0xb(%rbp)
140288db4:	88 5c 24 20          	mov    %bl,0x20(%rsp)
140288db8:	4c 8d 4d c0          	lea    -0x40(%rbp),%r9
140288dbc:	4c 8b c7             	mov    %rdi,%r8
140288dbf:	48 8b d6             	mov    %rsi,%rdx
140288dc2:	49 8b ce             	mov    %r14,%rcx
140288dc5:	e8 9e 07 00 00       	call   0x140289568
140288dca:	90                   	nop
140288dcb:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140288dcf:	e8 fc 20 d9 ff       	call   0x14001aed0
140288dd4:	48 85 f6             	test   %rsi,%rsi
140288dd7:	7f 93                	jg     0x140288d6c
140288dd9:	48 83 ff 02          	cmp    $0x2,%rdi
140288ddd:	0f 8c 5b ff ff ff    	jl     0x140288d3e
140288de3:	49 83 c5 e0          	add    $0xffffffffffffffe0,%r13
140288de7:	48 c7 c6 e8 ff ff ff 	mov    $0xffffffffffffffe8,%rsi
140288dee:	49 2b f6             	sub    %r14,%rsi
140288df1:	bf 20 00 00 00       	mov    $0x20,%edi
140288df6:	49 2b fe             	sub    %r14,%rdi
140288df9:	4a 8d 04 2f          	lea    (%rdi,%r13,1),%rax
140288dfd:	48 c1 f8 03          	sar    $0x3,%rax
140288e01:	49 0f af c4          	imul   %r12,%rax
140288e05:	48 83 f8 02          	cmp    $0x2,%rax
140288e09:	0f 8c c7 00 00 00    	jl     0x140288ed6
140288e0f:	4d 8d 7d e8          	lea    -0x18(%r13),%r15
140288e13:	49 8b d7             	mov    %r15,%rdx
140288e16:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140288e1a:	e8 cd 2c d9 ff       	call   0x14001baec
140288e1f:	41 0f 10 45 00       	movups 0x0(%r13),%xmm0
140288e24:	0f 11 45 d8          	movups %xmm0,-0x28(%rbp)
140288e28:	f3 41 0f 10 45 10    	movss  0x10(%r13),%xmm0
140288e2e:	f3 0f 11 45 e8       	movss  %xmm0,-0x18(%rbp)
140288e33:	f3 41 0f 10 45 14    	movss  0x14(%r13),%xmm0
140288e39:	f3 0f 11 45 ec       	movss  %xmm0,-0x14(%rbp)
140288e3e:	41 8b 45 18          	mov    0x18(%r13),%eax
140288e42:	89 45 f0             	mov    %eax,-0x10(%rbp)
140288e45:	41 8a 45 1c          	mov    0x1c(%r13),%al
140288e49:	88 45 f4             	mov    %al,-0xc(%rbp)
140288e4c:	41 8a 45 1d          	mov    0x1d(%r13),%al
140288e50:	88 45 f5             	mov    %al,-0xb(%rbp)
140288e53:	4d 3b fe             	cmp    %r14,%r15
140288e56:	74 16                	je     0x140288e6e
140288e58:	4d 8b 46 08          	mov    0x8(%r14),%r8
140288e5c:	4d 2b 06             	sub    (%r14),%r8
140288e5f:	49 c1 f8 04          	sar    $0x4,%r8
140288e63:	49 8b 16             	mov    (%r14),%rdx
140288e66:	49 8b cf             	mov    %r15,%rcx
140288e69:	e8 36 91 da ff       	call   0x140031fa4
140288e6e:	f2 41 0f 10 46 18    	movsd  0x18(%r14),%xmm0
140288e74:	f2 41 0f 11 45 00    	movsd  %xmm0,0x0(%r13)
140288e7a:	f2 41 0f 10 4e 20    	movsd  0x20(%r14),%xmm1
140288e80:	f2 41 0f 11 4d 08    	movsd  %xmm1,0x8(%r13)
140288e86:	41 8b 46 28          	mov    0x28(%r14),%eax
140288e8a:	41 89 45 10          	mov    %eax,0x10(%r13)
140288e8e:	41 8b 46 2c          	mov    0x2c(%r14),%eax
140288e92:	41 89 45 14          	mov    %eax,0x14(%r13)
140288e96:	41 8b 46 30          	mov    0x30(%r14),%eax
140288e9a:	41 89 45 18          	mov    %eax,0x18(%r13)
140288e9e:	41 8a 46 34          	mov    0x34(%r14),%al
140288ea2:	41 88 45 1c          	mov    %al,0x1c(%r13)
140288ea6:	41 8a 46 35          	mov    0x35(%r14),%al
140288eaa:	41 88 45 1d          	mov    %al,0x1d(%r13)
140288eae:	4e 8d 04 2e          	lea    (%rsi,%r13,1),%r8
140288eb2:	49 c1 f8 03          	sar    $0x3,%r8
140288eb6:	4d 0f af c4          	imul   %r12,%r8
140288eba:	88 5c 24 20          	mov    %bl,0x20(%rsp)
140288ebe:	4c 8d 4d c0          	lea    -0x40(%rbp),%r9
140288ec2:	33 d2                	xor    %edx,%edx
140288ec4:	49 8b ce             	mov    %r14,%rcx
140288ec7:	e8 9c 06 00 00       	call   0x140289568
140288ecc:	90                   	nop
140288ecd:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140288ed1:	e8 fa 1f d9 ff       	call   0x14001aed0
140288ed6:	49 83 ed 38          	sub    $0x38,%r13
140288eda:	4a 8d 04 2f          	lea    (%rdi,%r13,1),%rax
140288ede:	48 83 f8 70          	cmp    $0x70,%rax
140288ee2:	0f 8d 11 ff ff ff    	jge    0x140288df9
140288ee8:	e9 51 fe ff ff       	jmp    0x140288d3e
140288eed:	cc                   	int3
140288eee:	90                   	nop
140288eef:	90                   	nop
140288ef0:	40 53                	rex push %rbx
140288ef2:	56                   	push   %rsi
140288ef3:	57                   	push   %rdi
140288ef4:	41 54                	push   %r12
140288ef6:	41 55                	push   %r13
140288ef8:	41 56                	push   %r14
140288efa:	41 57                	push   %r15
140288efc:	48 83 ec 60          	sub    $0x60,%rsp
140288f00:	49 8b d8             	mov    %r8,%rbx
140288f03:	4c 8b fa             	mov    %rdx,%r15
140288f06:	4c 8b f1             	mov    %rcx,%r14
140288f09:	48 2b 11             	sub    (%rcx),%rdx
140288f0c:	48 b8 25 49 92 24 49 	movabs $0x4924924924924925,%rax
140288f13:	92 24 49
140288f16:	48 f7 ea             	imul   %rdx
140288f19:	48 8b f2             	mov    %rdx,%rsi
140288f1c:	48 c1 fe 04          	sar    $0x4,%rsi
140288f20:	48 8b c6             	mov    %rsi,%rax
140288f23:	48 c1 e8 3f          	shr    $0x3f,%rax
140288f27:	48 03 f0             	add    %rax,%rsi
140288f2a:	48 8b 41 08          	mov    0x8(%rcx),%rax
140288f2e:	48 2b 01             	sub    (%rcx),%rax
140288f31:	48 c1 f8 03          	sar    $0x3,%rax
140288f35:	48 ba b7 6d db b6 6d 	movabs $0x6db6db6db6db6db7,%rdx
140288f3c:	db b6 6d
140288f3f:	48 0f af c2          	imul   %rdx,%rax
140288f43:	49 b9 92 24 49 92 24 	movabs $0x492492492492492,%r9
140288f4a:	49 92 04
140288f4d:	49 3b c1             	cmp    %r9,%rax
140288f50:	0f 84 11 03 00 00    	je     0x140289267
140288f56:	4c 8d 40 01          	lea    0x1(%rax),%r8
140288f5a:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
140288f5f:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140288f63:	49 2b 0e             	sub    (%r14),%rcx
140288f66:	48 c1 f9 03          	sar    $0x3,%rcx
140288f6a:	48 0f af ca          	imul   %rdx,%rcx
140288f6e:	48 8b d1             	mov    %rcx,%rdx
140288f71:	48 d1 ea             	shr    $1,%rdx
140288f74:	49 8b c1             	mov    %r9,%rax
140288f77:	48 2b c2             	sub    %rdx,%rax
140288f7a:	48 3b c8             	cmp    %rax,%rcx
140288f7d:	76 05                	jbe    0x140288f84
140288f7f:	49 8b c1             	mov    %r9,%rax
140288f82:	eb 0b                	jmp    0x140288f8f
140288f84:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
140288f88:	49 3b c0             	cmp    %r8,%rax
140288f8b:	49 0f 42 c0          	cmovb  %r8,%rax
140288f8f:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140288f94:	49 3b c1             	cmp    %r9,%rax
140288f97:	0f 87 c4 02 00 00    	ja     0x140289261
140288f9d:	4c 6b e0 38          	imul   $0x38,%rax,%r12
140288fa1:	4d 85 e4             	test   %r12,%r12
140288fa4:	0f 85 fa 00 00 00    	jne    0x1402890a4
140288faa:	33 ff                	xor    %edi,%edi
140288fac:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140288fb1:	4c 6b ee 38          	imul   $0x38,%rsi,%r13
140288fb5:	4c 03 ef             	add    %rdi,%r13
140288fb8:	4c 89 ac 24 b8 00 00 	mov    %r13,0xb8(%rsp)
140288fbf:	00
140288fc0:	49 8d 75 38          	lea    0x38(%r13),%rsi
140288fc4:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
140288fc9:	48 89 b4 24 a0 00 00 	mov    %rsi,0xa0(%rsp)
140288fd0:	00
140288fd1:	48 8b d3             	mov    %rbx,%rdx
140288fd4:	49 8b cd             	mov    %r13,%rcx
140288fd7:	e8 10 2b d9 ff       	call   0x14001baec
140288fdc:	f2 0f 10 43 18       	movsd  0x18(%rbx),%xmm0
140288fe1:	f2 41 0f 11 45 18    	movsd  %xmm0,0x18(%r13)
140288fe7:	f2 0f 10 4b 20       	movsd  0x20(%rbx),%xmm1
140288fec:	f2 41 0f 11 4d 20    	movsd  %xmm1,0x20(%r13)
140288ff2:	8b 43 28             	mov    0x28(%rbx),%eax
140288ff5:	41 89 45 28          	mov    %eax,0x28(%r13)
140288ff9:	8b 43 2c             	mov    0x2c(%rbx),%eax
140288ffc:	41 89 45 2c          	mov    %eax,0x2c(%r13)
140289000:	8b 43 30             	mov    0x30(%rbx),%eax
140289003:	41 89 45 30          	mov    %eax,0x30(%r13)
140289007:	8a 43 34             	mov    0x34(%rbx),%al
14028900a:	41 88 45 34          	mov    %al,0x34(%r13)
14028900e:	8a 43 35             	mov    0x35(%rbx),%al
140289011:	41 88 45 35          	mov    %al,0x35(%r13)
140289015:	4c 89 ac 24 a0 00 00 	mov    %r13,0xa0(%rsp)
14028901c:	00
14028901d:	49 8b 46 08          	mov    0x8(%r14),%rax
140289021:	48 89 84 24 a8 00 00 	mov    %rax,0xa8(%rsp)
140289028:	00
140289029:	49 8b 1e             	mov    (%r14),%rbx
14028902c:	48 89 7c 24 40       	mov    %rdi,0x40(%rsp)
140289031:	48 89 7c 24 48       	mov    %rdi,0x48(%rsp)
140289036:	4c 89 74 24 50       	mov    %r14,0x50(%rsp)
14028903b:	4c 3b f8             	cmp    %rax,%r15
14028903e:	0f 85 b4 00 00 00    	jne    0x1402890f8
140289044:	48 8b f7             	mov    %rdi,%rsi
140289047:	48 3b d8             	cmp    %rax,%rbx
14028904a:	0f 84 a3 00 00 00    	je     0x1402890f3
140289050:	48 8b d3             	mov    %rbx,%rdx
140289053:	48 8b ce             	mov    %rsi,%rcx
140289056:	e8 91 2a d9 ff       	call   0x14001baec
14028905b:	f2 0f 10 43 18       	movsd  0x18(%rbx),%xmm0
140289060:	f2 0f 11 46 18       	movsd  %xmm0,0x18(%rsi)
140289065:	f2 0f 10 4b 20       	movsd  0x20(%rbx),%xmm1
14028906a:	f2 0f 11 4e 20       	movsd  %xmm1,0x20(%rsi)
14028906f:	8b 43 28             	mov    0x28(%rbx),%eax
140289072:	89 46 28             	mov    %eax,0x28(%rsi)
140289075:	8b 43 2c             	mov    0x2c(%rbx),%eax
140289078:	89 46 2c             	mov    %eax,0x2c(%rsi)
14028907b:	8b 43 30             	mov    0x30(%rbx),%eax
14028907e:	89 46 30             	mov    %eax,0x30(%rsi)
140289081:	8a 43 34             	mov    0x34(%rbx),%al
140289084:	88 46 34             	mov    %al,0x34(%rsi)
140289087:	8a 43 35             	mov    0x35(%rbx),%al
14028908a:	88 46 35             	mov    %al,0x35(%rsi)
14028908d:	48 83 c6 38          	add    $0x38,%rsi
140289091:	48 89 74 24 48       	mov    %rsi,0x48(%rsp)
140289096:	48 83 c3 38          	add    $0x38,%rbx
14028909a:	48 8b 84 24 a8 00 00 	mov    0xa8(%rsp),%rax
1402890a1:	00
1402890a2:	eb a3                	jmp    0x140289047
1402890a4:	49 81 fc 00 10 00 00 	cmp    $0x1000,%r12
1402890ab:	72 2a                	jb     0x1402890d7
1402890ad:	49 8d 4c 24 27       	lea    0x27(%r12),%rcx
1402890b2:	49 3b cc             	cmp    %r12,%rcx
1402890b5:	0f 86 a6 01 00 00    	jbe    0x140289261
1402890bb:	ff 15 07 38 88 00    	call   *0x883807(%rip)        # 0x140b0c8c8
1402890c1:	48 85 c0             	test   %rax,%rax
1402890c4:	74 26                	je     0x1402890ec
1402890c6:	48 8d 78 27          	lea    0x27(%rax),%rdi
1402890ca:	48 83 e7 e0          	and    $0xffffffffffffffe0,%rdi
1402890ce:	48 89 47 f8          	mov    %rax,-0x8(%rdi)
1402890d2:	e9 d5 fe ff ff       	jmp    0x140288fac
1402890d7:	49 8b cc             	mov    %r12,%rcx
1402890da:	ff 15 e8 37 88 00    	call   *0x8837e8(%rip)        # 0x140b0c8c8
1402890e0:	48 8b f8             	mov    %rax,%rdi
1402890e3:	48 85 c0             	test   %rax,%rax
1402890e6:	0f 85 c0 fe ff ff    	jne    0x140288fac
1402890ec:	ff 15 a6 33 88 00    	call   *0x8833a6(%rip)        # 0x140b0c498
1402890f2:	90                   	nop
1402890f3:	e9 d6 00 00 00       	jmp    0x1402891ce
1402890f8:	4c 8b ef             	mov    %rdi,%r13
1402890fb:	49 3b df             	cmp    %r15,%rbx
1402890fe:	74 53                	je     0x140289153
140289100:	48 8b d3             	mov    %rbx,%rdx