1409cec26:	48 85 c0             	test   %rax,%rax
1409cec29:	0f 84 7e 02 00 00    	je     0x1409ceead
1409cec2f:	48 8d 70 27          	lea    0x27(%rax),%rsi
1409cec33:	48 83 e6 e0          	and    $0xffffffffffffffe0,%rsi
1409cec37:	48 89 46 f8          	mov    %rax,-0x8(%rsi)
1409cec3b:	eb 0b                	jmp    0x1409cec48
1409cec3d:	49 8b cc             	mov    %r12,%rcx
1409cec40:	e8 c3 c4 44 00       	call   0x140e1b108
1409cec45:	48 8b f0             	mov    %rax,%rsi
1409cec48:	48 89 b4 24 a8 00 00 	mov    %rsi,0xa8(%rsp)
1409cec4f:	00
1409cec50:	48 8b cb             	mov    %rbx,%rcx
1409cec53:	48 2b 4c 24 28       	sub    0x28(%rsp),%rcx
1409cec58:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
1409cec5f:	66 66 66
1409cec62:	48 f7 e9             	imul   %rcx
1409cec65:	48 c1 fa 04          	sar    $0x4,%rdx
1409cec69:	48 8b c2             	mov    %rdx,%rax
1409cec6c:	48 c1 e8 3f          	shr    $0x3f,%rax
1409cec70:	48 03 d0             	add    %rax,%rdx
1409cec73:	4a 8d 04 2a          	lea    (%rdx,%r13,1),%rax
1409cec77:	48 8d 0c 80          	lea    (%rax,%rax,4),%rcx
1409cec7b:	48 8d 04 ce          	lea    (%rsi,%rcx,8),%rax
1409cec7f:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1409cec84:	48 89 84 24 98 00 00 	mov    %rax,0x98(%rsp)
1409cec8b:	00
1409cec8c:	48 8d 04 92          	lea    (%rdx,%rdx,4),%rax
1409cec90:	48 8d 04 c6          	lea    (%rsi,%rax,8),%rax
1409cec94:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
1409cec99:	4d 8b cf             	mov    %r15,%r9
1409cec9c:	4c 8b c0             	mov    %rax,%r8
1409cec9f:	49 8b d5             	mov    %r13,%rdx
1409ceca2:	48 8b cf             	mov    %rdi,%rcx
1409ceca5:	e8 b6 0f 00 00       	call   0x1409cfc60
1409cecaa:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
1409cecaf:	48 89 84 24 98 00 00 	mov    %rax,0x98(%rsp)
1409cecb6:	00
1409cecb7:	49 83 fd 01          	cmp    $0x1,%r13
1409cecbb:	75 1a                	jne    0x1409cecd7
1409cecbd:	49 3b de             	cmp    %r14,%rbx
1409cecc0:	75 15                	jne    0x1409cecd7
1409cecc2:	4d 8b cf             	mov    %r15,%r9
1409cecc5:	4c 8b c6             	mov    %rsi,%r8
1409cecc8:	49 8b d6             	mov    %r14,%rdx
1409ceccb:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
1409cecd0:	e8 6b 0e 00 00       	call   0x1409cfb40
1409cecd5:	eb 2f                	jmp    0x1409ced06
1409cecd7:	4d 8b cf             	mov    %r15,%r9
1409cecda:	4c 8b c6             	mov    %rsi,%r8
1409cecdd:	48 8b d3             	mov    %rbx,%rdx
1409cece0:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
1409cece5:	e8 f6 10 00 00       	call   0x1409cfde0
1409cecea:	48 89 b4 24 98 00 00 	mov    %rsi,0x98(%rsp)
1409cecf1:	00
1409cecf2:	4d 8b cf             	mov    %r15,%r9
1409cecf5:	4c 8b 44 24 20       	mov    0x20(%rsp),%r8
1409cecfa:	49 8b d6             	mov    %r14,%rdx
1409cecfd:	48 8b cb             	mov    %rbx,%rcx
1409ced00:	e8 db 10 00 00       	call   0x1409cfde0
1409ced05:	90                   	nop
1409ced06:	49 8b 1f             	mov    (%r15),%rbx
1409ced09:	48 85 db             	test   %rbx,%rbx
1409ced0c:	74 74                	je     0x1409ced82
1409ced0e:	49 8b 7f 08          	mov    0x8(%r15),%rdi
1409ced12:	48 3b df             	cmp    %rdi,%rbx
1409ced15:	74 11                	je     0x1409ced28
1409ced17:	48 8b cb             	mov    %rbx,%rcx
1409ced1a:	e8 61 82 07 00       	call   0x140a46f80
1409ced1f:	48 83 c3 28          	add    $0x28,%rbx
1409ced23:	48 3b df             	cmp    %rdi,%rbx
1409ced26:	75 ef                	jne    0x1409ced17
1409ced28:	4d 8b 07             	mov    (%r15),%r8
1409ced2b:	49 8b 4f 10          	mov    0x10(%r15),%rcx
1409ced2f:	49 2b c8             	sub    %r8,%rcx
1409ced32:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
1409ced39:	66 66 66
1409ced3c:	48 f7 e9             	imul   %rcx
1409ced3f:	48 c1 fa 04          	sar    $0x4,%rdx
1409ced43:	48 8b c2             	mov    %rdx,%rax
1409ced46:	48 c1 e8 3f          	shr    $0x3f,%rax
1409ced4a:	48 03 d0             	add    %rax,%rdx
1409ced4d:	48 8d 14 92          	lea    (%rdx,%rdx,4),%rdx
1409ced51:	48 c1 e2 03          	shl    $0x3,%rdx
1409ced55:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1409ced5c:	72 1c                	jb     0x1409ced7a
1409ced5e:	48 83 c2 27          	add    $0x27,%rdx
1409ced62:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
1409ced66:	4c 2b c1             	sub    %rcx,%r8
1409ced69:	49 8d 40 f8          	lea    -0x8(%r8),%rax
1409ced6d:	48 83 f8 1f          	cmp    $0x1f,%rax
1409ced71:	0f 87 36 01 00 00    	ja     0x1409ceead
1409ced77:	4c 8b c1             	mov    %rcx,%r8
1409ced7a:	49 8b c8             	mov    %r8,%rcx
1409ced7d:	e8 c2 c3 44 00       	call   0x140e1b144
1409ced82:	49 89 37             	mov    %rsi,(%r15)
1409ced85:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
1409ced8a:	48 8d 04 80          	lea    (%rax,%rax,4),%rax
1409ced8e:	48 8d 0c c6          	lea    (%rsi,%rax,8),%rcx
1409ced92:	49 89 4f 08          	mov    %rcx,0x8(%r15)
1409ced96:	49 8d 04 34          	lea    (%r12,%rsi,1),%rax
1409ced9a:	49 89 47 10          	mov    %rax,0x10(%r15)
1409ced9e:	48 83 c4 50          	add    $0x50,%rsp
1409ceda2:	41 5f                	pop    %r15
1409ceda4:	41 5e                	pop    %r14
1409ceda6:	41 5d                	pop    %r13
1409ceda8:	41 5c                	pop    %r12
1409cedaa:	5f                   	pop    %rdi
1409cedab:	5e                   	pop    %rsi
1409cedac:	5b                   	pop    %rbx
1409cedad:	c3                   	ret
1409cedae:	48 2b cb             	sub    %rbx,%rcx
1409cedb1:	48 f7 e9             	imul   %rcx
1409cedb4:	48 c1 fa 04          	sar    $0x4,%rdx
1409cedb8:	48 8b c2             	mov    %rdx,%rax
1409cedbb:	48 c1 e8 3f          	shr    $0x3f,%rax
1409cedbf:	48 03 d0             	add    %rax,%rdx
1409cedc2:	4a 8d 04 8d 00 00 00 	lea    0x0(,%r9,4),%rax
1409cedc9:	00
1409cedca:	49 03 c5             	add    %r13,%rax
1409cedcd:	4c 8d 24 c5 00 00 00 	lea    0x0(,%rax,8),%r12
1409cedd4:	00
1409cedd5:	4d 8b cf             	mov    %r15,%r9
1409cedd8:	4c 3b ea             	cmp    %rdx,%r13
1409ceddb:	49 8b d6             	mov    %r14,%rdx
1409cedde:	73 74                	jae    0x1409cee54
1409cede0:	49 8b f6             	mov    %r14,%rsi
1409cede3:	49 2b f4             	sub    %r12,%rsi
1409cede6:	4d 8b c6             	mov    %r14,%r8
1409cede9:	48 8b ce             	mov    %rsi,%rcx
1409cedec:	e8 ef 0f 00 00       	call   0x1409cfde0
1409cedf1:	49 89 47 08          	mov    %rax,0x8(%r15)
1409cedf5:	48 3b f3             	cmp    %rbx,%rsi
1409cedf8:	74 25                	je     0x1409cee1f
1409cedfa:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1409cee00:	48 83 ee 28          	sub    $0x28,%rsi
1409cee04:	49 8d 04 34          	lea    (%r12,%rsi,1),%rax
1409cee08:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
1409cee0d:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1409cee12:	48 8b ce             	mov    %rsi,%rcx
1409cee15:	e8 c6 37 00 00       	call   0x1409d25e0
1409cee1a:	48 3b f3             	cmp    %rbx,%rsi
1409cee1d:	75 e1                	jne    0x1409cee00
1409cee1f:	48 8b f3             	mov    %rbx,%rsi
1409cee22:	4d 8d 34 1c          	lea    (%r12,%rbx,1),%r14
1409cee26:	49 3b de             	cmp    %r14,%rbx
1409cee29:	74 16                	je     0x1409cee41
1409cee2b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1409cee30:	48 8b ce             	mov    %rsi,%rcx
1409cee33:	e8 48 81 07 00       	call   0x140a46f80
1409cee38:	48 83 c6 28          	add    $0x28,%rsi
1409cee3c:	49 3b f6             	cmp    %r14,%rsi
1409cee3f:	75 ef                	jne    0x1409cee30
1409cee41:	4d 8b cf             	mov    %r15,%r9
1409cee44:	4c 8b c3             	mov    %rbx,%r8
1409cee47:	49 8b d5             	mov    %r13,%rdx
1409cee4a:	48 8b cf             	mov    %rdi,%rcx
1409cee4d:	e8 0e 0e 00 00       	call   0x1409cfc60
1409cee52:	eb 43                	jmp    0x1409cee97
1409cee54:	4d 8d 04 1c          	lea    (%r12,%rbx,1),%r8
1409cee58:	4c 89 84 24 a8 00 00 	mov    %r8,0xa8(%rsp)
1409cee5f:	00
1409cee60:	48 8b cb             	mov    %rbx,%rcx
1409cee63:	e8 78 0f 00 00       	call   0x1409cfde0
1409cee68:	49 89 47 08          	mov    %rax,0x8(%r15)
1409cee6c:	48 8b f3             	mov    %rbx,%rsi
1409cee6f:	49 3b de             	cmp    %r14,%rbx
1409cee72:	74 11                	je     0x1409cee85
1409cee74:	48 8b ce             	mov    %rsi,%rcx
1409cee77:	e8 04 81 07 00       	call   0x140a46f80
1409cee7c:	48 83 c6 28          	add    $0x28,%rsi
1409cee80:	49 3b f6             	cmp    %r14,%rsi
1409cee83:	75 ef                	jne    0x1409cee74
1409cee85:	4d 8b cf             	mov    %r15,%r9
1409cee88:	4c 8b c3             	mov    %rbx,%r8
1409cee8b:	49 8b d5             	mov    %r13,%rdx
1409cee8e:	48 8b cf             	mov    %rdi,%rcx
1409cee91:	e8 ca 0d 00 00       	call   0x1409cfc60
1409cee96:	90                   	nop
1409cee97:	48 83 c4 50          	add    $0x50,%rsp
1409cee9b:	41 5f                	pop    %r15
1409cee9d:	41 5e                	pop    %r14
1409cee9f:	41 5d                	pop    %r13
1409ceea1:	41 5c                	pop    %r12
1409ceea3:	5f                   	pop    %rdi
1409ceea4:	5e                   	pop    %rsi
1409ceea5:	5b                   	pop    %rbx
1409ceea6:	c3                   	ret
1409ceea7:	e8 e4 e6 7c ff       	call   0x14019d590
1409ceeac:	cc                   	int3
1409ceead:	e8 f2 b2 45 00       	call   0x140e2a1a4
1409ceeb2:	cc                   	int3
1409ceeb3:	e8 d8 e2 7c ff       	call   0x14019d190
1409ceeb8:	cc                   	int3
1409ceeb9:	cc                   	int3
1409ceeba:	cc                   	int3
1409ceebb:	cc                   	int3
1409ceebc:	cc                   	int3
1409ceebd:	cc                   	int3
1409ceebe:	cc                   	int3
1409ceebf:	cc                   	int3
1409ceec0:	49 3b d0             	cmp    %r8,%rdx
1409ceec3:	0f 84 8b 02 00 00    	je     0x1409cf154
1409ceec9:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1409ceece:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
1409ceed3:	55                   	push   %rbp
1409ceed4:	56                   	push   %rsi
1409ceed5:	57                   	push   %rdi
1409ceed6:	41 54                	push   %r12
1409ceed8:	41 55                	push   %r13
1409ceeda:	41 56                	push   %r14
1409ceedc:	41 57                	push   %r15
1409ceede:	48 83 ec 50          	sub    $0x50,%rsp
1409ceee2:	49 8b f8             	mov    %r8,%rdi
1409ceee5:	48 8b da             	mov    %rdx,%rbx
1409ceee8:	4c 8b f9             	mov    %rcx,%r15
1409ceeeb:	45 33 f6             	xor    %r14d,%r14d
1409ceeee:	49 bc aa aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaa,%r12
1409ceef5:	aa aa 02
1409ceef8:	49 b9 b3 01 00 00 00 	movabs $0x100000001b3,%r9
1409ceeff:	01 00 00
1409cef02:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
1409cef09:	9c f2 cb
1409cef0c:	4c 8b 43 20          	mov    0x20(%rbx),%r8
1409cef10:	48 8d 53 10          	lea    0x10(%rbx),%rdx
1409cef14:	48 83 7b 28 0f       	cmpq   $0xf,0x28(%rbx)
1409cef19:	76 04                	jbe    0x1409cef1f
1409cef1b:	48 8b 53 10          	mov    0x10(%rbx),%rdx
1409cef1f:	48 8b e8             	mov    %rax,%rbp
1409cef22:	49 8b ce             	mov    %r14,%rcx
1409cef25:	4d 85 c0             	test   %r8,%r8
1409cef28:	74 19                	je     0x1409cef43
1409cef2a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1409cef30:	0f b6 04 0a          	movzbl (%rdx,%rcx,1),%eax
1409cef34:	48 33 e8             	xor    %rax,%rbp
1409cef37:	49 0f af e9          	imul   %r9,%rbp
1409cef3b:	48 ff c1             	inc    %rcx
1409cef3e:	49 3b c8             	cmp    %r8,%rcx
1409cef41:	72 ed                	jb     0x1409cef30
1409cef43:	4c 8b cd             	mov    %rbp,%r9
1409cef46:	4c 8d 43 10          	lea    0x10(%rbx),%r8
1409cef4a:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1409cef4f:	49 8b cf             	mov    %r15,%rcx
1409cef52:	e8 a9 52 84 ff       	call   0x140214200
1409cef57:	48 83 7c 24 48 00    	cmpq   $0x0,0x48(%rsp)
1409cef5d:	0f 85 ce 01 00 00    	jne    0x1409cf131
1409cef63:	4d 39 67 10          	cmp    %r12,0x10(%r15)
1409cef67:	0f 84 e8 01 00 00    	je     0x1409cf155
1409cef6d:	4d 8d 6f 08          	lea    0x8(%r15),%r13
1409cef71:	4c 89 6c 24 30       	mov    %r13,0x30(%rsp)
1409cef76:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
1409cef7b:	b9 60 00 00 00       	mov    $0x60,%ecx
1409cef80:	e8 83 c1 44 00       	call   0x140e1b108
1409cef85:	4c 8b e0             	mov    %rax,%r12
1409cef88:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
1409cef8d:	4c 8d 70 10          	lea    0x10(%rax),%r14
1409cef91:	4c 89 b4 24 98 00 00 	mov    %r14,0x98(%rsp)
1409cef98:	00
1409cef99:	48 8d 53 10          	lea    0x10(%rbx),%rdx
1409cef9d:	49 8b ce             	mov    %r14,%rcx
1409cefa0:	e8 9b 9a 7d ff       	call   0x1401a8a40
1409cefa5:	90                   	nop
1409cefa6:	49 8d 4e 20          	lea    0x20(%r14),%rcx
1409cefaa:	48 8d 53 30          	lea    0x30(%rbx),%rdx
1409cefae:	e8 2d 3a b7 ff       	call   0x1405429e0
1409cefb3:	90                   	nop
1409cefb4:	49 8b 4f 10          	mov    0x10(%r15),%rcx
1409cefb8:	48 83 c1 01          	add    $0x1,%rcx
1409cefbc:	0f 57 c0             	xorps  %xmm0,%xmm0
1409cefbf:	78 07                	js     0x1409cefc8
1409cefc1:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
1409cefc6:	eb 15                	jmp    0x1409cefdd
1409cefc8:	48 8b c1             	mov    %rcx,%rax
1409cefcb:	48 d1 e8             	shr    $1,%rax
1409cefce:	83 e1 01             	and    $0x1,%ecx
1409cefd1:	48 0b c1             	or     %rcx,%rax
1409cefd4:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
1409cefd9:	f3 0f 58 c0          	addss  %xmm0,%xmm0
1409cefdd:	49 8b 4f 38          	mov    0x38(%r15),%rcx
1409cefe1:	0f 57 c9             	xorps  %xmm1,%xmm1
1409cefe4:	48 85 c9             	test   %rcx,%rcx
1409cefe7:	78 07                	js     0x1409ceff0
1409cefe9:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
1409cefee:	eb 15                	jmp    0x1409cf005
1409ceff0:	48 8b c1             	mov    %rcx,%rax
1409ceff3:	48 d1 e8             	shr    $1,%rax
1409ceff6:	83 e1 01             	and    $0x1,%ecx
1409ceff9:	48 0b c1             	or     %rcx,%rax
1409ceffc:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
1409cf001:	f3 0f 58 c9          	addss  %xmm1,%xmm1
1409cf005:	f3 0f 5e c1          	divss  %xmm1,%xmm0
1409cf009:	41 0f 2f 07          	comiss (%r15),%xmm0
1409cf00d:	0f 86 ba 00 00 00    	jbe    0x1409cf0cd
1409cf013:	49 8b cf             	mov    %r15,%rcx
1409cf016:	e8 e5 09 9e ff       	call   0x1403afa00
1409cf01b:	49 8b 47 30          	mov    0x30(%r15),%rax
1409cf01f:	48 23 c5             	and    %rbp,%rax
1409cf022:	48 03 c0             	add    %rax,%rax
1409cf025:	49 8b 57 18          	mov    0x18(%r15),%rdx
1409cf029:	48 8b 74 c2 08       	mov    0x8(%rdx,%rax,8),%rsi
1409cf02e:	49 8b 4d 00          	mov    0x0(%r13),%rcx
1409cf032:	48 3b f1             	cmp    %rcx,%rsi
1409cf035:	75 07                	jne    0x1409cf03e
1409cf037:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1409cf03c:	eb 7b                	jmp    0x1409cf0b9
1409cf03e:	4c 8b 2c c2          	mov    (%rdx,%rax,8),%r13
1409cf042:	4d 8b 7e 10          	mov    0x10(%r14),%r15
1409cf046:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
1409cf04d:	00 00 00
1409cf050:	48 8d 56 10          	lea    0x10(%rsi),%rdx
1409cf054:	48 8b 42 10          	mov    0x10(%rdx),%rax
1409cf058:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
1409cf05d:	76 03                	jbe    0x1409cf062
1409cf05f:	48 8b 12             	mov    (%rdx),%rdx
1409cf062:	49 8b ce             	mov    %r14,%rcx
1409cf065:	49 83 7e 18 0f       	cmpq   $0xf,0x18(%r14)
1409cf06a:	76 03                	jbe    0x1409cf06f
1409cf06c:	49 8b 0e             	mov    (%r14),%rcx
1409cf06f:	4c 3b f8             	cmp    %rax,%r15
1409cf072:	75 0c                	jne    0x1409cf080
1409cf074:	4d 8b c7             	mov    %r15,%r8
1409cf077:	e8 d4 09 51 00       	call   0x140edfa50
1409cf07c:	85 c0                	test   %eax,%eax
1409cf07e:	74 0b                	je     0x1409cf08b
1409cf080:	49 3b f5             	cmp    %r13,%rsi
1409cf083:	74 22                	je     0x1409cf0a7
1409cf085:	48 8b 76 08          	mov    0x8(%rsi),%rsi
1409cf089:	eb c5                	jmp    0x1409cf050
1409cf08b:	48 8b 06             	mov    (%rsi),%rax
1409cf08e:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1409cf093:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
1409cf098:	4c 8b bc 24 90 00 00 	mov    0x90(%rsp),%r15
1409cf09f:	00
1409cf0a0:	4c 8b 6c 24 30       	mov    0x30(%rsp),%r13
1409cf0a5:	eb 1b                	jmp    0x1409cf0c2
1409cf0a7:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1409cf0ac:	4c 8b bc 24 90 00 00 	mov    0x90(%rsp),%r15
1409cf0b3:	00
1409cf0b4:	4c 8b 6c 24 30       	mov    0x30(%rsp),%r13
1409cf0b9:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
1409cf0c0:	00 00
1409cf0c2:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
1409cf0c7:	66 0f 7f 44 24 40    	movdqa %xmm0,0x40(%rsp)
1409cf0cd:	45 33 f6             	xor    %r14d,%r14d
1409cf0d0:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
1409cf0d5:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
1409cf0da:	4c 8b 42 08          	mov    0x8(%rdx),%r8
1409cf0de:	49 ff 47 10          	incq   0x10(%r15)
1409cf0e2:	49 89 14 24          	mov    %rdx,(%r12)
1409cf0e6:	4d 89 44 24 08       	mov    %r8,0x8(%r12)
1409cf0eb:	4d 89 20             	mov    %r12,(%r8)