140730e06:	48 8d 0d 93 d6 87 00 	lea    0x87d693(%rip),%rcx        # 0x140fae4a0
140730e0d:	e8 a2 a5 6c 00       	call   0x140dfb3b4
140730e12:	cc                   	int3
140730e13:	cc                   	int3
140730e14:	cc                   	int3
140730e15:	cc                   	int3
140730e16:	cc                   	int3
140730e17:	cc                   	int3
140730e18:	cc                   	int3
140730e19:	cc                   	int3
140730e1a:	cc                   	int3
140730e1b:	cc                   	int3
140730e1c:	cc                   	int3
140730e1d:	cc                   	int3
140730e1e:	cc                   	int3
140730e1f:	cc                   	int3
140730e20:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140730e25:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140730e2a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140730e2f:	57                   	push   %rdi
140730e30:	41 54                	push   %r12
140730e32:	41 55                	push   %r13
140730e34:	41 56                	push   %r14
140730e36:	41 57                	push   %r15
140730e38:	48 83 ec 30          	sub    $0x30,%rsp
140730e3c:	49 8b f0             	mov    %r8,%rsi
140730e3f:	4c 8b f2             	mov    %rdx,%r14
140730e42:	48 8b e9             	mov    %rcx,%rbp
140730e45:	45 0f b6 28          	movzbl (%r8),%r13d
140730e49:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
140730e50:	9c f2 cb
140730e53:	4c 33 e8             	xor    %rax,%r13
140730e56:	48 b9 b3 01 00 00 00 	movabs $0x100000001b3,%rcx
140730e5d:	01 00 00
140730e60:	4c 0f af e9          	imul   %rcx,%r13
140730e64:	41 0f b6 40 01       	movzbl 0x1(%r8),%eax
140730e69:	4c 33 e8             	xor    %rax,%r13
140730e6c:	4c 0f af e9          	imul   %rcx,%r13
140730e70:	41 0f b6 40 02       	movzbl 0x2(%r8),%eax
140730e75:	4c 33 e8             	xor    %rax,%r13
140730e78:	4c 0f af e9          	imul   %rcx,%r13
140730e7c:	41 0f b6 40 03       	movzbl 0x3(%r8),%eax
140730e81:	4c 33 e8             	xor    %rax,%r13
140730e84:	4c 0f af e9          	imul   %rcx,%r13
140730e88:	41 0f b6 40 04       	movzbl 0x4(%r8),%eax
140730e8d:	4c 33 e8             	xor    %rax,%r13
140730e90:	4c 0f af e9          	imul   %rcx,%r13
140730e94:	41 0f b6 40 05       	movzbl 0x5(%r8),%eax
140730e99:	4c 33 e8             	xor    %rax,%r13
140730e9c:	4c 0f af e9          	imul   %rcx,%r13
140730ea0:	41 0f b6 40 06       	movzbl 0x6(%r8),%eax
140730ea5:	4c 33 e8             	xor    %rax,%r13
140730ea8:	4c 0f af e9          	imul   %rcx,%r13
140730eac:	41 0f b6 40 07       	movzbl 0x7(%r8),%eax
140730eb1:	4c 33 e8             	xor    %rax,%r13
140730eb4:	4c 0f af e9          	imul   %rcx,%r13
140730eb8:	49 8b cd             	mov    %r13,%rcx
140730ebb:	48 23 4d 30          	and    0x30(%rbp),%rcx
140730ebf:	48 03 c9             	add    %rcx,%rcx
140730ec2:	48 8b 45 18          	mov    0x18(%rbp),%rax
140730ec6:	48 8b 5c c8 08       	mov    0x8(%rax,%rcx,8),%rbx
140730ecb:	48 8d 55 08          	lea    0x8(%rbp),%rdx
140730ecf:	4c 8b 22             	mov    (%rdx),%r12
140730ed2:	49 3b dc             	cmp    %r12,%rbx
140730ed5:	75 08                	jne    0x140730edf
140730ed7:	49 8b dc             	mov    %r12,%rbx
140730eda:	4d 8b fc             	mov    %r12,%r15
140730edd:	eb 4e                	jmp    0x140730f2d
140730edf:	48 8b 0c c8          	mov    (%rax,%rcx,8),%rcx
140730ee3:	49 8b 00             	mov    (%r8),%rax
140730ee6:	48 3b 43 10          	cmp    0x10(%rbx),%rax
140730eea:	74 13                	je     0x140730eff
140730eec:	0f 1f 40 00          	nopl   0x0(%rax)
140730ef0:	48 3b d9             	cmp    %rcx,%rbx
140730ef3:	74 32                	je     0x140730f27
140730ef5:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
140730ef9:	48 3b 43 10          	cmp    0x10(%rbx),%rax
140730efd:	75 f1                	jne    0x140730ef0
140730eff:	49 89 1e             	mov    %rbx,(%r14)
140730f02:	41 c6 46 08 00       	movb   $0x0,0x8(%r14)
140730f07:	49 8b c6             	mov    %r14,%rax
140730f0a:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140730f0f:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140730f14:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140730f19:	48 83 c4 30          	add    $0x30,%rsp
140730f1d:	41 5f                	pop    %r15
140730f1f:	41 5e                	pop    %r14
140730f21:	41 5d                	pop    %r13
140730f23:	41 5c                	pop    %r12
140730f25:	5f                   	pop    %rdi
140730f26:	c3                   	ret
140730f27:	4c 8b e3             	mov    %rbx,%r12
140730f2a:	4c 8b fb             	mov    %rbx,%r15
140730f2d:	48 b8 ff ff ff ff ff 	movabs $0x7ffffffffffffff,%rax
140730f34:	ff ff 07
140730f37:	48 39 45 10          	cmp    %rax,0x10(%rbp)
140730f3b:	0f 84 c9 01 00 00    	je     0x14073110a
140730f41:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140730f46:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140730f4d:	00 00
140730f4f:	b9 20 00 00 00       	mov    $0x20,%ecx
140730f54:	e8 af a1 6e 00       	call   0x140e1b108
140730f59:	48 8b f8             	mov    %rax,%rdi
140730f5c:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140730f61:	48 8b 0e             	mov    (%rsi),%rcx
140730f64:	48 89 48 10          	mov    %rcx,0x10(%rax)
140730f68:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
140730f6c:	48 89 48 18          	mov    %rcx,0x18(%rax)
140730f70:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
140730f74:	48 83 c1 01          	add    $0x1,%rcx
140730f78:	0f 57 c0             	xorps  %xmm0,%xmm0
140730f7b:	78 07                	js     0x140730f84
140730f7d:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
140730f82:	eb 15                	jmp    0x140730f99
140730f84:	48 8b c1             	mov    %rcx,%rax
140730f87:	48 d1 e8             	shr    $1,%rax
140730f8a:	83 e1 01             	and    $0x1,%ecx
140730f8d:	48 0b c1             	or     %rcx,%rax
140730f90:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
140730f95:	f3 0f 58 c0          	addss  %xmm0,%xmm0
140730f99:	48 8b 75 38          	mov    0x38(%rbp),%rsi
140730f9d:	f3 0f 10 5d 00       	movss  0x0(%rbp),%xmm3
140730fa2:	0f 57 d2             	xorps  %xmm2,%xmm2
140730fa5:	48 85 f6             	test   %rsi,%rsi
140730fa8:	78 07                	js     0x140730fb1
140730faa:	f3 48 0f 2a d6       	cvtsi2ss %rsi,%xmm2
140730faf:	eb 18                	jmp    0x140730fc9
140730fb1:	48 8b ce             	mov    %rsi,%rcx
140730fb4:	48 d1 e9             	shr    $1,%rcx
140730fb7:	48 8b c6             	mov    %rsi,%rax
140730fba:	83 e0 01             	and    $0x1,%eax
140730fbd:	48 0b c8             	or     %rax,%rcx
140730fc0:	f3 48 0f 2a d1       	cvtsi2ss %rcx,%xmm2
140730fc5:	f3 0f 58 d2          	addss  %xmm2,%xmm2
140730fc9:	0f 28 c8             	movaps %xmm0,%xmm1
140730fcc:	f3 0f 5e ca          	divss  %xmm2,%xmm1
140730fd0:	0f 2f cb             	comiss %xmm3,%xmm1
140730fd3:	0f 86 c9 00 00 00    	jbe    0x1407310a2
140730fd9:	f3 0f 5e c3          	divss  %xmm3,%xmm0
140730fdd:	e8 3e 01 70 00       	call   0x140e31120
140730fe2:	33 c9                	xor    %ecx,%ecx
140730fe4:	f3 0f 10 0d 78 d6 87 	movss  0x87d678(%rip),%xmm1        # 0x140fae664
140730feb:	00
140730fec:	0f 2f c1             	comiss %xmm1,%xmm0
140730fef:	72 16                	jb     0x140731007
140730ff1:	f3 0f 5c c1          	subss  %xmm1,%xmm0
140730ff5:	0f 2f c1             	comiss %xmm1,%xmm0
140730ff8:	73 0d                	jae    0x140731007
140730ffa:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140731001:	00 00 80
140731004:	48 8b c8             	mov    %rax,%rcx
140731007:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
14073100c:	48 03 c1             	add    %rcx,%rax
14073100f:	b9 08 00 00 00       	mov    $0x8,%ecx
140731014:	48 3b c1             	cmp    %rcx,%rax
140731017:	48 0f 47 c8          	cmova  %rax,%rcx
14073101b:	48 3b f1             	cmp    %rcx,%rsi
14073101e:	73 19                	jae    0x140731039
140731020:	48 81 fe 00 02 00 00 	cmp    $0x200,%rsi
140731027:	73 0d                	jae    0x140731036
140731029:	48 8d 34 f5 00 00 00 	lea    0x0(,%rsi,8),%rsi
140731030:	00
140731031:	48 3b f1             	cmp    %rcx,%rsi
140731034:	73 03                	jae    0x140731039
140731036:	48 8b f1             	mov    %rcx,%rsi
140731039:	48 8b d6             	mov    %rsi,%rdx
14073103c:	48 8b cd             	mov    %rbp,%rcx
14073103f:	e8 4c a6 f2 ff       	call   0x14065b690
140731044:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
140731048:	49 23 cd             	and    %r13,%rcx
14073104b:	48 03 c9             	add    %rcx,%rcx
14073104e:	48 8b 55 18          	mov    0x18(%rbp),%rdx
140731052:	48 8b 44 ca 08       	mov    0x8(%rdx,%rcx,8),%rax
140731057:	48 8b 5d 08          	mov    0x8(%rbp),%rbx
14073105b:	48 3b c3             	cmp    %rbx,%rax
14073105e:	75 0b                	jne    0x14073106b
140731060:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140731067:	00 00
140731069:	eb 2a                	jmp    0x140731095
14073106b:	48 8b 14 ca          	mov    (%rdx,%rcx,8),%rdx
14073106f:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140731073:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140731077:	74 19                	je     0x140731092
140731079:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140731080:	48 8b d8             	mov    %rax,%rbx
140731083:	48 3b c2             	cmp    %rdx,%rax
140731086:	74 4e                	je     0x1407310d6
140731088:	48 8b 40 08          	mov    0x8(%rax),%rax
14073108c:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140731090:	75 ee                	jne    0x140731080
140731092:	48 8b 18             	mov    (%rax),%rbx
140731095:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14073109a:	4c 8b fb             	mov    %rbx,%r15
14073109d:	4c 8b 64 24 20       	mov    0x20(%rsp),%r12
1407310a2:	48 8b 53 08          	mov    0x8(%rbx),%rdx
1407310a6:	48 ff 45 10          	incq   0x10(%rbp)
1407310aa:	4c 89 27             	mov    %r12,(%rdi)
1407310ad:	48 89 57 08          	mov    %rdx,0x8(%rdi)
1407310b1:	48 89 3a             	mov    %rdi,(%rdx)
1407310b4:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
1407310b8:	48 8b 4d 18          	mov    0x18(%rbp),%rcx
1407310bc:	48 8b 45 30          	mov    0x30(%rbp),%rax
1407310c0:	49 23 c5             	and    %r13,%rax
1407310c3:	48 03 c0             	add    %rax,%rax
1407310c6:	4c 8b 04 c1          	mov    (%rcx,%rax,8),%r8
1407310ca:	4c 3b 45 08          	cmp    0x8(%rbp),%r8
1407310ce:	75 16                	jne    0x1407310e6
1407310d0:	48 89 3c c1          	mov    %rdi,(%rcx,%rax,8)
1407310d4:	eb 22                	jmp    0x1407310f8
1407310d6:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1407310db:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
1407310e2:	00 00
1407310e4:	eb b4                	jmp    0x14073109a
1407310e6:	4d 3b c7             	cmp    %r15,%r8
1407310e9:	75 06                	jne    0x1407310f1
1407310eb:	48 89 3c c1          	mov    %rdi,(%rcx,%rax,8)
1407310ef:	eb 0c                	jmp    0x1407310fd
1407310f1:	48 39 54 c1 08       	cmp    %rdx,0x8(%rcx,%rax,8)
1407310f6:	75 05                	jne    0x1407310fd
1407310f8:	48 89 7c c1 08       	mov    %rdi,0x8(%rcx,%rax,8)
1407310fd:	49 89 3e             	mov    %rdi,(%r14)
140731100:	41 c6 46 08 01       	movb   $0x1,0x8(%r14)
140731105:	e9 fd fd ff ff       	jmp    0x140730f07
14073110a:	48 8d 0d 8f d3 87 00 	lea    0x87d38f(%rip),%rcx        # 0x140fae4a0
140731111:	e8 9e a2 6c 00       	call   0x140dfb3b4
140731116:	cc                   	int3
140731117:	cc                   	int3
140731118:	cc                   	int3
140731119:	cc                   	int3
14073111a:	cc                   	int3
14073111b:	cc                   	int3
14073111c:	cc                   	int3
14073111d:	cc                   	int3
14073111e:	cc                   	int3
14073111f:	cc                   	int3
140731120:	4c 8b c2             	mov    %rdx,%r8
140731123:	45 33 c9             	xor    %r9d,%r9d
140731126:	4c 2b c1             	sub    %rcx,%r8
140731129:	49 c1 f8 05          	sar    $0x5,%r8
14073112d:	e9 5e e5 ff ff       	jmp    0x14072f690
140731132:	cc                   	int3
140731133:	cc                   	int3
140731134:	cc                   	int3
140731135:	cc                   	int3
140731136:	cc                   	int3
140731137:	cc                   	int3
140731138:	cc                   	int3
140731139:	cc                   	int3
14073113a:	cc                   	int3
14073113b:	cc                   	int3
14073113c:	cc                   	int3
14073113d:	cc                   	int3
14073113e:	cc                   	int3
14073113f:	cc                   	int3
140731140:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140731145:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
14073114a:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14073114f:	56                   	push   %rsi
140731150:	57                   	push   %rdi
140731151:	41 56                	push   %r14
140731153:	48 83 ec 20          	sub    $0x20,%rsp
140731157:	8b f2                	mov    %edx,%esi
140731159:	48 8b f9             	mov    %rcx,%rdi
14073115c:	45 33 f6             	xor    %r14d,%r14d
14073115f:	44 89 31             	mov    %r14d,(%rcx)
140731162:	bb 01 00 00 00       	mov    $0x1,%ebx
140731167:	89 59 04             	mov    %ebx,0x4(%rcx)
14073116a:	89 59 08             	mov    %ebx,0x8(%rcx)
14073116d:	66 44 89 71 0c       	mov    %r14w,0xc(%rcx)
140731172:	c7 41 10 ff ff ff ff 	movl   $0xffffffff,0x10(%rcx)
140731179:	4c 89 71 14          	mov    %r14,0x14(%rcx)
14073117d:	4c 89 71 20          	mov    %r14,0x20(%rcx)
140731181:	44 89 71 28          	mov    %r14d,0x28(%rcx)
140731185:	4c 89 71 30          	mov    %r14,0x30(%rcx)
140731189:	4c 89 71 38          	mov    %r14,0x38(%rcx)
14073118d:	4c 89 71 40          	mov    %r14,0x40(%rcx)
140731191:	4c 89 71 48          	mov    %r14,0x48(%rcx)
140731195:	4c 89 71 50          	mov    %r14,0x50(%rcx)
140731199:	45 85 c0             	test   %r8d,%r8d
14073119c:	7e 66                	jle    0x140731204
14073119e:	66 41 0f 6e c0       	movd   %r8d,%xmm0
1407311a3:	f3 0f e6 c0          	cvtdq2pd %xmm0,%xmm0
1407311a7:	e8 f4 f4 70 00       	call   0x140e406a0
1407311ac:	f2 0f 2c c0          	cvttsd2si %xmm0,%eax
1407311b0:	66 89 47 02          	mov    %ax,0x2(%rdi)
1407311b4:	0f b7 c8             	movzwl %ax,%ecx
1407311b7:	d3 e3                	shl    %cl,%ebx
1407311b9:	89 5f 08             	mov    %ebx,0x8(%rdi)
1407311bc:	8d 04 0b             	lea    (%rbx,%rcx,1),%eax
1407311bf:	89 47 04             	mov    %eax,0x4(%rdi)
1407311c2:	48 63 c8             	movslq %eax,%rcx
1407311c5:	48 c1 e1 05          	shl    $0x5,%rcx
1407311c9:	e8 5e 15 70 00       	call   0x140e3272c
1407311ce:	48 89 47 40          	mov    %rax,0x40(%rdi)
1407311d2:	48 85 c0             	test   %rax,%rax
1407311d5:	74 05                	je     0x1407311dc
1407311d7:	8b 47 04             	mov    0x4(%rdi),%eax
1407311da:	eb 03                	jmp    0x1407311df
1407311dc:	41 8b c6             	mov    %r14d,%eax
1407311df:	83 e8 01             	sub    $0x1,%eax
1407311e2:	48 63 c8             	movslq %eax,%rcx
1407311e5:	78 1d                	js     0x140731204
1407311e7:	48 8b d1             	mov    %rcx,%rdx
1407311ea:	48 c1 e2 05          	shl    $0x5,%rdx
1407311ee:	66 90                	xchg   %ax,%ax
1407311f0:	48 8b 47 40          	mov    0x40(%rdi),%rax
1407311f4:	66 c7 04 02 ff ff    	movw   $0xffff,(%rdx,%rax,1)
1407311fa:	48 8d 52 e0          	lea    -0x20(%rdx),%rdx
1407311fe:	48 83 e9 01          	sub    $0x1,%rcx
140731202:	79 ec                	jns    0x1407311f0
140731204:	85 f6                	test   %esi,%esi
140731206:	0f 85 c0 00 00 00    	jne    0x1407312cc
14073120c:	b9 18 00 00 00       	mov    $0x18,%ecx
140731211:	e8 f2 9e 6e 00       	call   0x140e1b108
140731216:	48 85 c0             	test   %rax,%rax
140731219:	74 0d                	je     0x140731228
14073121b:	4c 89 30             	mov    %r14,(%rax)
14073121e:	4c 89 70 08          	mov    %r14,0x8(%rax)
140731222:	4c 89 70 10          	mov    %r14,0x10(%rax)
140731226:	eb 03                	jmp    0x14073122b
140731228:	49 8b c6             	mov    %r14,%rax
14073122b:	48 8b 77 50          	mov    0x50(%rdi),%rsi
14073122f:	48 89 47 50          	mov    %rax,0x50(%rdi)
140731233:	48 85 f6             	test   %rsi,%rsi
140731236:	0f 84 90 00 00 00    	je     0x1407312cc
14073123c:	48 8b 1e             	mov    (%rsi),%rbx
14073123f:	48 85 db             	test   %rbx,%rbx
140731242:	74 7a                	je     0x1407312be
140731244:	48 8b 6e 08          	mov    0x8(%rsi),%rbp
140731248:	48 3b dd             	cmp    %rbp,%rbx
14073124b:	74 14                	je     0x140731261
14073124d:	0f 1f 00             	nopl   (%rax)
140731250:	48 8b cb             	mov    %rbx,%rcx
140731253:	e8 38 09 07 00       	call   0x1407a1b90
140731258:	48 83 c3 38          	add    $0x38,%rbx
14073125c:	48 3b dd             	cmp    %rbp,%rbx
14073125f:	75 ef                	jne    0x140731250
140731261:	4c 8b 06             	mov    (%rsi),%r8
140731264:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
140731268:	49 2b c8             	sub    %r8,%rcx
14073126b:	48 b8 25 49 92 24 49 	movabs $0x4924924924924925,%rax
140731272:	92 24 49
140731275:	48 f7 e9             	imul   %rcx
140731278:	48 c1 fa 04          	sar    $0x4,%rdx
14073127c:	48 8b c2             	mov    %rdx,%rax
14073127f:	48 c1 e8 3f          	shr    $0x3f,%rax
140731283:	48 03 d0             	add    %rax,%rdx
140731286:	48 6b d2 38          	imul   $0x38,%rdx,%rdx
14073128a:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140731291:	72 18                	jb     0x1407312ab