140db1016:	4c 8b 04 c1          	mov    (%rcx,%rax,8),%r8
140db101a:	4c 3b 45 08          	cmp    0x8(%rbp),%r8
140db101e:	75 06                	jne    0x140db1026
140db1020:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
140db1024:	eb 12                	jmp    0x140db1038
140db1026:	4d 3b c7             	cmp    %r15,%r8
140db1029:	75 06                	jne    0x140db1031
140db102b:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
140db102f:	eb 0c                	jmp    0x140db103d
140db1031:	48 39 54 c1 08       	cmp    %rdx,0x8(%rcx,%rax,8)
140db1036:	75 05                	jne    0x140db103d
140db1038:	48 89 74 c1 08       	mov    %rsi,0x8(%rcx,%rax,8)
140db103d:	49 89 36             	mov    %rsi,(%r14)
140db1040:	41 c6 46 08 01       	movb   $0x1,0x8(%r14)
140db1045:	e9 94 fd ff ff       	jmp    0x140db0dde
140db104a:	48 8d 0d 4f d4 1f 00 	lea    0x1fd44f(%rip),%rcx        # 0x140fae4a0
140db1051:	e8 5e a3 04 00       	call   0x140dfb3b4
140db1056:	cc                   	int3
140db1057:	cc                   	int3
140db1058:	cc                   	int3
140db1059:	cc                   	int3
140db105a:	cc                   	int3
140db105b:	cc                   	int3
140db105c:	cc                   	int3
140db105d:	cc                   	int3
140db105e:	cc                   	int3
140db105f:	cc                   	int3
140db1060:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140db1065:	55                   	push   %rbp
140db1066:	56                   	push   %rsi
140db1067:	57                   	push   %rdi
140db1068:	41 54                	push   %r12
140db106a:	41 55                	push   %r13
140db106c:	41 56                	push   %r14
140db106e:	41 57                	push   %r15
140db1070:	48 83 ec 40          	sub    $0x40,%rsp
140db1074:	49 8b d8             	mov    %r8,%rbx
140db1077:	4c 8b fa             	mov    %rdx,%r15
140db107a:	4c 8b e9             	mov    %rcx,%r13
140db107d:	4d 8b 40 10          	mov    0x10(%r8),%r8
140db1081:	48 8b d3             	mov    %rbx,%rdx
140db1084:	48 83 7b 18 0f       	cmpq   $0xf,0x18(%rbx)
140db1089:	76 03                	jbe    0x140db108e
140db108b:	48 8b 13             	mov    (%rbx),%rdx
140db108e:	48 bf 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rdi
140db1095:	9c f2 cb
140db1098:	45 33 e4             	xor    %r12d,%r12d
140db109b:	41 8b cc             	mov    %r12d,%ecx
140db109e:	4d 85 c0             	test   %r8,%r8
140db10a1:	74 20                	je     0x140db10c3
140db10a3:	49 b9 b3 01 00 00 00 	movabs $0x100000001b3,%r9
140db10aa:	01 00 00
140db10ad:	0f 1f 00             	nopl   (%rax)
140db10b0:	0f b6 04 0a          	movzbl (%rdx,%rcx,1),%eax
140db10b4:	48 33 f8             	xor    %rax,%rdi
140db10b7:	49 0f af f9          	imul   %r9,%rdi
140db10bb:	48 ff c1             	inc    %rcx
140db10be:	49 3b c8             	cmp    %r8,%rcx
140db10c1:	72 ed                	jb     0x140db10b0
140db10c3:	4c 8b cf             	mov    %rdi,%r9
140db10c6:	4c 8b c3             	mov    %rbx,%r8
140db10c9:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140db10ce:	49 8b cd             	mov    %r13,%rcx
140db10d1:	e8 2a 31 46 ff       	call   0x140214200
140db10d6:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
140db10db:	48 85 c9             	test   %rcx,%rcx
140db10de:	74 0c                	je     0x140db10ec
140db10e0:	49 89 0f             	mov    %rcx,(%r15)
140db10e3:	45 88 67 08          	mov    %r12b,0x8(%r15)
140db10e7:	e9 15 02 00 00       	jmp    0x140db1301
140db10ec:	48 b8 92 24 49 92 24 	movabs $0x492492492492492,%rax
140db10f3:	49 92 04
140db10f6:	49 39 45 10          	cmp    %rax,0x10(%r13)
140db10fa:	0f 84 1c 02 00 00    	je     0x140db131c
140db1100:	49 8d 6d 08          	lea    0x8(%r13),%rbp
140db1104:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
140db1109:	4c 89 64 24 38       	mov    %r12,0x38(%rsp)
140db110e:	0f ae e8             	lfence
140db1111:	b9 38 00 00 00       	mov    $0x38,%ecx
140db1116:	e8 ed 9f 06 00       	call   0x140e1b108
140db111b:	48 8b f0             	mov    %rax,%rsi
140db111e:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140db1123:	48 8b d3             	mov    %rbx,%rdx
140db1126:	48 8d 48 10          	lea    0x10(%rax),%rcx
140db112a:	e8 11 79 3f ff       	call   0x1401a8a40
140db112f:	44 89 66 30          	mov    %r12d,0x30(%rsi)
140db1133:	49 8b 4d 10          	mov    0x10(%r13),%rcx
140db1137:	f3 41 0f 10 5d 00    	movss  0x0(%r13),%xmm3
140db113d:	48 83 c1 01          	add    $0x1,%rcx
140db1141:	0f 57 c0             	xorps  %xmm0,%xmm0
140db1144:	78 07                	js     0x140db114d
140db1146:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
140db114b:	eb 15                	jmp    0x140db1162
140db114d:	48 8b c1             	mov    %rcx,%rax
140db1150:	48 d1 e8             	shr    $1,%rax
140db1153:	83 e1 01             	and    $0x1,%ecx
140db1156:	48 0b c1             	or     %rcx,%rax
140db1159:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
140db115e:	f3 0f 58 c0          	addss  %xmm0,%xmm0
140db1162:	49 8b 5d 38          	mov    0x38(%r13),%rbx
140db1166:	0f 57 d2             	xorps  %xmm2,%xmm2
140db1169:	48 85 db             	test   %rbx,%rbx
140db116c:	78 07                	js     0x140db1175
140db116e:	f3 48 0f 2a d3       	cvtsi2ss %rbx,%xmm2
140db1173:	eb 18                	jmp    0x140db118d
140db1175:	48 8b cb             	mov    %rbx,%rcx
140db1178:	48 d1 e9             	shr    $1,%rcx
140db117b:	48 8b c3             	mov    %rbx,%rax
140db117e:	83 e0 01             	and    $0x1,%eax
140db1181:	48 0b c8             	or     %rax,%rcx
140db1184:	f3 48 0f 2a d1       	cvtsi2ss %rcx,%xmm2
140db1189:	f3 0f 58 d2          	addss  %xmm2,%xmm2
140db118d:	0f 28 c8             	movaps %xmm0,%xmm1
140db1190:	f3 0f 5e ca          	divss  %xmm2,%xmm1
140db1194:	0f 2f cb             	comiss %xmm3,%xmm1
140db1197:	0f 86 0c 01 00 00    	jbe    0x140db12a9
140db119d:	f3 0f 5e c3          	divss  %xmm3,%xmm0
140db11a1:	e8 7a ff 07 00       	call   0x140e31120
140db11a6:	33 c9                	xor    %ecx,%ecx
140db11a8:	f3 0f 10 0d b4 d4 1f 	movss  0x1fd4b4(%rip),%xmm1        # 0x140fae664
140db11af:	00
140db11b0:	0f 2f c1             	comiss %xmm1,%xmm0
140db11b3:	72 16                	jb     0x140db11cb
140db11b5:	f3 0f 5c c1          	subss  %xmm1,%xmm0
140db11b9:	0f 2f c1             	comiss %xmm1,%xmm0
140db11bc:	73 0d                	jae    0x140db11cb
140db11be:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140db11c5:	00 00 80
140db11c8:	48 8b c8             	mov    %rax,%rcx
140db11cb:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
140db11d0:	48 03 c1             	add    %rcx,%rax
140db11d3:	b9 08 00 00 00       	mov    $0x8,%ecx
140db11d8:	48 3b c1             	cmp    %rcx,%rax
140db11db:	48 0f 47 c8          	cmova  %rax,%rcx
140db11df:	48 3b d9             	cmp    %rcx,%rbx
140db11e2:	73 19                	jae    0x140db11fd
140db11e4:	48 81 fb 00 02 00 00 	cmp    $0x200,%rbx
140db11eb:	73 0d                	jae    0x140db11fa
140db11ed:	48 8d 1c dd 00 00 00 	lea    0x0(,%rbx,8),%rbx
140db11f4:	00
140db11f5:	48 3b d9             	cmp    %rcx,%rbx
140db11f8:	73 03                	jae    0x140db11fd
140db11fa:	48 8b d9             	mov    %rcx,%rbx
140db11fd:	48 8b d3             	mov    %rbx,%rdx
140db1200:	49 8b cd             	mov    %r13,%rcx
140db1203:	e8 c8 b5 48 ff       	call   0x14023c7d0
140db1208:	49 8b 45 30          	mov    0x30(%r13),%rax
140db120c:	48 23 c7             	and    %rdi,%rax
140db120f:	48 03 c0             	add    %rax,%rax
140db1212:	49 8b 55 18          	mov    0x18(%r13),%rdx
140db1216:	48 8b 5c c2 08       	mov    0x8(%rdx,%rax,8),%rbx
140db121b:	48 8b 4d 00          	mov    0x0(%rbp),%rcx
140db121f:	48 3b d9             	cmp    %rcx,%rbx
140db1222:	75 0c                	jne    0x140db1230
140db1224:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
140db1229:	4c 89 64 24 28       	mov    %r12,0x28(%rsp)
140db122e:	eb 6e                	jmp    0x140db129e
140db1230:	4c 8b 24 c2          	mov    (%rdx,%rax,8),%r12
140db1234:	48 8b 6e 20          	mov    0x20(%rsi),%rbp
140db1238:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140db123f:	00
140db1240:	48 8d 53 10          	lea    0x10(%rbx),%rdx
140db1244:	48 8b 42 10          	mov    0x10(%rdx),%rax
140db1248:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
140db124d:	76 03                	jbe    0x140db1252
140db124f:	48 8b 12             	mov    (%rdx),%rdx
140db1252:	48 8d 4e 10          	lea    0x10(%rsi),%rcx
140db1256:	48 83 7e 28 0f       	cmpq   $0xf,0x28(%rsi)
140db125b:	76 04                	jbe    0x140db1261
140db125d:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
140db1261:	48 3b e8             	cmp    %rax,%rbp
140db1264:	75 0c                	jne    0x140db1272
140db1266:	4c 8b c5             	mov    %rbp,%r8
140db1269:	e8 e2 e7 12 00       	call   0x140edfa50
140db126e:	85 c0                	test   %eax,%eax
140db1270:	74 0b                	je     0x140db127d
140db1272:	49 3b dc             	cmp    %r12,%rbx
140db1275:	74 15                	je     0x140db128c
140db1277:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
140db127b:	eb c3                	jmp    0x140db1240
140db127d:	48 8b 03             	mov    (%rbx),%rax
140db1280:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140db1285:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140db128a:	eb 0e                	jmp    0x140db129a
140db128c:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140db1291:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140db1298:	00 00
140db129a:	49 8d 6d 08          	lea    0x8(%r13),%rbp
140db129e:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
140db12a3:	66 0f 7f 44 24 20    	movdqa %xmm0,0x20(%rsp)
140db12a9:	48 8b 54 24 20       	mov    0x20(%rsp),%rdx
140db12ae:	4c 8b 42 08          	mov    0x8(%rdx),%r8
140db12b2:	49 ff 45 10          	incq   0x10(%r13)
140db12b6:	48 89 16             	mov    %rdx,(%rsi)
140db12b9:	4c 89 46 08          	mov    %r8,0x8(%rsi)
140db12bd:	49 89 30             	mov    %rsi,(%r8)
140db12c0:	48 89 72 08          	mov    %rsi,0x8(%rdx)
140db12c4:	49 8b 4d 18          	mov    0x18(%r13),%rcx
140db12c8:	49 8b 45 30          	mov    0x30(%r13),%rax
140db12cc:	48 23 c7             	and    %rdi,%rax
140db12cf:	48 03 c0             	add    %rax,%rax
140db12d2:	4c 8b 0c c1          	mov    (%rcx,%rax,8),%r9
140db12d6:	4c 3b 4d 00          	cmp    0x0(%rbp),%r9
140db12da:	75 06                	jne    0x140db12e2
140db12dc:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
140db12e0:	eb 12                	jmp    0x140db12f4
140db12e2:	4c 3b ca             	cmp    %rdx,%r9
140db12e5:	75 06                	jne    0x140db12ed
140db12e7:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
140db12eb:	eb 0c                	jmp    0x140db12f9
140db12ed:	4c 39 44 c1 08       	cmp    %r8,0x8(%rcx,%rax,8)
140db12f2:	75 05                	jne    0x140db12f9
140db12f4:	48 89 74 c1 08       	mov    %rsi,0x8(%rcx,%rax,8)
140db12f9:	49 89 37             	mov    %rsi,(%r15)
140db12fc:	41 c6 47 08 01       	movb   $0x1,0x8(%r15)
140db1301:	49 8b c7             	mov    %r15,%rax
140db1304:	48 8b 9c 24 98 00 00 	mov    0x98(%rsp),%rbx
140db130b:	00
140db130c:	48 83 c4 40          	add    $0x40,%rsp
140db1310:	41 5f                	pop    %r15
140db1312:	41 5e                	pop    %r14
140db1314:	41 5d                	pop    %r13
140db1316:	41 5c                	pop    %r12
140db1318:	5f                   	pop    %rdi
140db1319:	5e                   	pop    %rsi
140db131a:	5d                   	pop    %rbp
140db131b:	c3                   	ret
140db131c:	48 8d 0d 7d d1 1f 00 	lea    0x1fd17d(%rip),%rcx        # 0x140fae4a0
140db1323:	e8 8c a0 04 00       	call   0x140dfb3b4
140db1328:	cc                   	int3
140db1329:	cc                   	int3
140db132a:	cc                   	int3
140db132b:	cc                   	int3
140db132c:	cc                   	int3
140db132d:	cc                   	int3
140db132e:	cc                   	int3
140db132f:	cc                   	int3
140db1330:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140db1335:	55                   	push   %rbp
140db1336:	56                   	push   %rsi
140db1337:	57                   	push   %rdi
140db1338:	41 54                	push   %r12
140db133a:	41 55                	push   %r13
140db133c:	41 56                	push   %r14
140db133e:	41 57                	push   %r15
140db1340:	48 83 ec 40          	sub    $0x40,%rsp
140db1344:	49 8b d8             	mov    %r8,%rbx
140db1347:	4c 8b fa             	mov    %rdx,%r15
140db134a:	4c 8b e9             	mov    %rcx,%r13
140db134d:	4d 8b 40 10          	mov    0x10(%r8),%r8
140db1351:	48 8b d3             	mov    %rbx,%rdx
140db1354:	48 83 7b 18 0f       	cmpq   $0xf,0x18(%rbx)
140db1359:	76 03                	jbe    0x140db135e
140db135b:	48 8b 13             	mov    (%rbx),%rdx
140db135e:	48 bf 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rdi
140db1365:	9c f2 cb
140db1368:	45 33 e4             	xor    %r12d,%r12d
140db136b:	41 8b cc             	mov    %r12d,%ecx
140db136e:	4d 85 c0             	test   %r8,%r8
140db1371:	74 20                	je     0x140db1393
140db1373:	49 b9 b3 01 00 00 00 	movabs $0x100000001b3,%r9
140db137a:	01 00 00
140db137d:	0f 1f 00             	nopl   (%rax)
140db1380:	0f b6 04 0a          	movzbl (%rdx,%rcx,1),%eax
140db1384:	48 33 f8             	xor    %rax,%rdi
140db1387:	49 0f af f9          	imul   %r9,%rdi
140db138b:	48 ff c1             	inc    %rcx
140db138e:	49 3b c8             	cmp    %r8,%rcx
140db1391:	72 ed                	jb     0x140db1380
140db1393:	4c 8b cf             	mov    %rdi,%r9
140db1396:	4c 8b c3             	mov    %rbx,%r8
140db1399:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140db139e:	49 8b cd             	mov    %r13,%rcx
140db13a1:	e8 5a 2e 46 ff       	call   0x140214200
140db13a6:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
140db13ab:	48 85 c9             	test   %rcx,%rcx
140db13ae:	74 0c                	je     0x140db13bc
140db13b0:	49 89 0f             	mov    %rcx,(%r15)
140db13b3:	45 88 67 08          	mov    %r12b,0x8(%r15)
140db13b7:	e9 15 02 00 00       	jmp    0x140db15d1
140db13bc:	48 b8 8e e3 38 8e e3 	movabs $0x38e38e38e38e38e,%rax
140db13c3:	38 8e 03
140db13c6:	49 39 45 10          	cmp    %rax,0x10(%r13)
140db13ca:	0f 84 1c 02 00 00    	je     0x140db15ec
140db13d0:	49 8d 6d 08          	lea    0x8(%r13),%rbp
140db13d4:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
140db13d9:	4c 89 64 24 38       	mov    %r12,0x38(%rsp)
140db13de:	0f ae e8             	lfence
140db13e1:	b9 48 00 00 00       	mov    $0x48,%ecx
140db13e6:	e8 1d 9d 06 00       	call   0x140e1b108
140db13eb:	4c 8b f0             	mov    %rax,%r14
140db13ee:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140db13f3:	48 8b d3             	mov    %rbx,%rdx
140db13f6:	48 8d 48 10          	lea    0x10(%rax),%rcx
140db13fa:	e8 41 76 3f ff       	call   0x1401a8a40
140db13ff:	4d 89 66 30          	mov    %r12,0x30(%r14)
140db1403:	4d 89 66 38          	mov    %r12,0x38(%r14)
140db1407:	4d 89 66 40          	mov    %r12,0x40(%r14)
140db140b:	49 8b 4d 10          	mov    0x10(%r13),%rcx
140db140f:	f3 41 0f 10 5d 00    	movss  0x0(%r13),%xmm3
140db1415:	48 83 c1 01          	add    $0x1,%rcx
140db1419:	0f 57 c0             	xorps  %xmm0,%xmm0
140db141c:	78 07                	js     0x140db1425
140db141e:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
140db1423:	eb 15                	jmp    0x140db143a
140db1425:	48 8b c1             	mov    %rcx,%rax
140db1428:	48 d1 e8             	shr    $1,%rax
140db142b:	83 e1 01             	and    $0x1,%ecx
140db142e:	48 0b c1             	or     %rcx,%rax
140db1431:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
140db1436:	f3 0f 58 c0          	addss  %xmm0,%xmm0
140db143a:	49 8b 5d 38          	mov    0x38(%r13),%rbx
140db143e:	0f 57 d2             	xorps  %xmm2,%xmm2
140db1441:	48 85 db             	test   %rbx,%rbx
140db1444:	78 07                	js     0x140db144d
140db1446:	f3 48 0f 2a d3       	cvtsi2ss %rbx,%xmm2
140db144b:	eb 18                	jmp    0x140db1465
140db144d:	48 8b cb             	mov    %rbx,%rcx
140db1450:	48 d1 e9             	shr    $1,%rcx
140db1453:	48 8b c3             	mov    %rbx,%rax
140db1456:	83 e0 01             	and    $0x1,%eax
140db1459:	48 0b c8             	or     %rax,%rcx
140db145c:	f3 48 0f 2a d1       	cvtsi2ss %rcx,%xmm2
140db1461:	f3 0f 58 d2          	addss  %xmm2,%xmm2
140db1465:	0f 28 c8             	movaps %xmm0,%xmm1
140db1468:	f3 0f 5e ca          	divss  %xmm2,%xmm1
140db146c:	0f 2f cb             	comiss %xmm3,%xmm1
140db146f:	0f 86 04 01 00 00    	jbe    0x140db1579
140db1475:	f3 0f 5e c3          	divss  %xmm3,%xmm0
140db1479:	e8 a2 fc 07 00       	call   0x140e31120
140db147e:	33 c9                	xor    %ecx,%ecx
140db1480:	f3 0f 10 0d dc d1 1f 	movss  0x1fd1dc(%rip),%xmm1        # 0x140fae664
140db1487:	00
140db1488:	0f 2f c1             	comiss %xmm1,%xmm0
140db148b:	72 16                	jb     0x140db14a3
140db148d:	f3 0f 5c c1          	subss  %xmm1,%xmm0
140db1491:	0f 2f c1             	comiss %xmm1,%xmm0
140db1494:	73 0d                	jae    0x140db14a3
140db1496:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140db149d:	00 00 80
140db14a0:	48 8b c8             	mov    %rax,%rcx
140db14a3:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
140db14a8:	48 03 c1             	add    %rcx,%rax
140db14ab:	b9 08 00 00 00       	mov    $0x8,%ecx
140db14b0:	48 3b c1             	cmp    %rcx,%rax
140db14b3:	48 0f 47 c8          	cmova  %rax,%rcx
140db14b7:	48 3b d9             	cmp    %rcx,%rbx
140db14ba:	73 19                	jae    0x140db14d5
140db14bc:	48 81 fb 00 02 00 00 	cmp    $0x200,%rbx
140db14c3:	73 0d                	jae    0x140db14d2