14015518b:	48 8b f9             	mov    %rcx,%rdi
14015518e:	0f 57 c0             	xorps  %xmm0,%xmm0
140155191:	0f 11 01             	movups %xmm0,(%rcx)
140155194:	48 83 61 10 00       	andq   $0x0,0x10(%rcx)
140155199:	48 c7 41 18 0f 00 00 	movq   $0xf,0x18(%rcx)
1401551a0:	00
1401551a1:	c6 01 00             	movb   $0x0,(%rcx)
1401551a4:	49 8b c8             	mov    %r8,%rcx
1401551a7:	e8 54 2f ee ff       	call   0x140038100
1401551ac:	4c 8b 47 10          	mov    0x10(%rdi),%r8
1401551b0:	4c 03 c0             	add    %rax,%r8
1401551b3:	4c 3b c0             	cmp    %rax,%r8
1401551b6:	0f 82 f9 00 00 00    	jb     0x1401552b5
1401551bc:	48 8b 57 18          	mov    0x18(%rdi),%rdx
1401551c0:	49 3b d0             	cmp    %r8,%rdx
1401551c3:	49 0f 42 d0          	cmovb  %r8,%rdx
1401551c7:	48 39 57 18          	cmp    %rdx,0x18(%rdi)
1401551cb:	73 1b                	jae    0x1401551e8
1401551cd:	0f ae e8             	lfence
1401551d0:	48 8b 5f 10          	mov    0x10(%rdi),%rbx
1401551d4:	48 2b d3             	sub    %rbx,%rdx
1401551d7:	44 8a 44 24 68       	mov    0x68(%rsp),%r8b
1401551dc:	48 8b cf             	mov    %rdi,%rcx
1401551df:	e8 bc f9 ea ff       	call   0x140004ba0
1401551e4:	48 89 5f 10          	mov    %rbx,0x10(%rdi)
1401551e8:	b9 18 00 00 00       	mov    $0x18,%ecx
1401551ed:	ff 15 5d d9 0b 00    	call   *0xbd95d(%rip)        # 0x140212b50
1401551f3:	48 85 c0             	test   %rax,%rax
1401551f6:	0f 84 bf 00 00 00    	je     0x1401552bb
1401551fc:	c7 40 08 01 00 00 00 	movl   $0x1,0x8(%rax)
140155203:	48 8d 0d 1e d1 0e 00 	lea    0xed11e(%rip),%rcx        # 0x140242328
14015520a:	48 89 08             	mov    %rcx,(%rax)
14015520d:	48 89 78 10          	mov    %rdi,0x10(%rax)
140155211:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
140155216:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
14015521b:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140155220:	e8 17 2f ee ff       	call   0x14003813c
140155225:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
14015522a:	48 85 c9             	test   %rcx,%rcx
14015522d:	74 0d                	je     0x14015523c
14015522f:	48 8b 01             	mov    (%rcx),%rax
140155232:	48 8b 40 10          	mov    0x10(%rax),%rax
140155236:	ff 15 f4 db 0b 00    	call   *0xbdbf4(%rip)        # 0x140212e30
14015523c:	48 8b 5c 24 20       	mov    0x20(%rsp),%rbx
140155241:	48 8b 03             	mov    (%rbx),%rax
140155244:	4c 8b c6             	mov    %rsi,%r8
140155247:	48 8b d5             	mov    %rbp,%rdx
14015524a:	48 8b cb             	mov    %rbx,%rcx
14015524d:	48 8b 40 08          	mov    0x8(%rax),%rax
140155251:	ff 15 d9 db 0b 00    	call   *0xbdbd9(%rip)        # 0x140212e30
140155257:	84 c0                	test   %al,%al
140155259:	74 19                	je     0x140155274
14015525b:	48 8b 03             	mov    (%rbx),%rax
14015525e:	48 8b cb             	mov    %rbx,%rcx
140155261:	48 8b 40 10          	mov    0x10(%rax),%rax
140155265:	ff 15 c5 db 0b 00    	call   *0xbdbc5(%rip)        # 0x140212e30
14015526b:	84 c0                	test   %al,%al
14015526d:	74 05                	je     0x140155274
14015526f:	40 b6 01             	mov    $0x1,%sil
140155272:	eb 03                	jmp    0x140155277
140155274:	40 32 f6             	xor    %sil,%sil
140155277:	48 85 db             	test   %rbx,%rbx
14015527a:	74 14                	je     0x140155290
14015527c:	48 8b 03             	mov    (%rbx),%rax
14015527f:	ba 01 00 00 00       	mov    $0x1,%edx
140155284:	48 8b cb             	mov    %rbx,%rcx
140155287:	48 8b 00             	mov    (%rax),%rax
14015528a:	ff 15 a0 db 0b 00    	call   *0xbdba0(%rip)        # 0x140212e30
140155290:	40 84 f6             	test   %sil,%sil
140155293:	74 10                	je     0x1401552a5
140155295:	48 8b c7             	mov    %rdi,%rax
140155298:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
14015529d:	48 83 c4 30          	add    $0x30,%rsp
1401552a1:	5f                   	pop    %rdi
1401552a2:	5e                   	pop    %rsi
1401552a3:	5d                   	pop    %rbp
1401552a4:	c3                   	ret
1401552a5:	33 d2                	xor    %edx,%edx
1401552a7:	b9 12 95 59 23       	mov    $0x23599512,%ecx
1401552ac:	e8 33 60 eb ff       	call   0x14000b2e4
1401552b1:	90                   	nop
1401552b2:	eb 00                	jmp    0x1401552b4
1401552b4:	90                   	nop
1401552b5:	e8 0a 75 eb ff       	call   0x14000c7c4
1401552ba:	cc                   	int3
1401552bb:	b9 62 f4 31 01       	mov    $0x131f462,%ecx
1401552c0:	e8 b3 60 eb ff       	call   0x14000b378
1401552c5:	cc                   	int3
1401552c6:	90                   	nop
1401552c7:	90                   	nop
1401552c8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401552cd:	57                   	push   %rdi
1401552ce:	48 83 ec 20          	sub    $0x20,%rsp
1401552d2:	48 8b f9             	mov    %rcx,%rdi
1401552d5:	48 8b da             	mov    %rdx,%rbx
1401552d8:	b9 60 00 00 00       	mov    $0x60,%ecx
1401552dd:	ff 15 6d d8 0b 00    	call   *0xbd86d(%rip)        # 0x140212b50
1401552e3:	33 c9                	xor    %ecx,%ecx
1401552e5:	4c 8b c0             	mov    %rax,%r8
1401552e8:	48 85 c0             	test   %rax,%rax
1401552eb:	0f 84 a5 00 00 00    	je     0x140155396
1401552f1:	c7 40 08 01 00 00 00 	movl   $0x1,0x8(%rax)
1401552f8:	0f 57 c0             	xorps  %xmm0,%xmm0
1401552fb:	49 89 48 10          	mov    %rcx,0x10(%r8)
1401552ff:	48 8d 05 8a d1 0e 00 	lea    0xed18a(%rip),%rax        # 0x140242490
140155306:	49 89 00             	mov    %rax,(%r8)
140155309:	49 89 48 18          	mov    %rcx,0x18(%r8)
14015530d:	48 8b 03             	mov    (%rbx),%rax
140155310:	49 89 40 10          	mov    %rax,0x10(%r8)
140155314:	48 8b 43 08          	mov    0x8(%rbx),%rax
140155318:	49 89 40 18          	mov    %rax,0x18(%r8)
14015531c:	48 8b 43 10          	mov    0x10(%rbx),%rax
140155320:	48 89 4b 10          	mov    %rcx,0x10(%rbx)
140155324:	48 89 0b             	mov    %rcx,(%rbx)
140155327:	48 89 4b 08          	mov    %rcx,0x8(%rbx)
14015532b:	49 89 40 20          	mov    %rax,0x20(%r8)
14015532f:	49 89 48 28          	mov    %rcx,0x28(%r8)
140155333:	49 89 48 30          	mov    %rcx,0x30(%r8)
140155337:	48 8b 43 18          	mov    0x18(%rbx),%rax
14015533b:	49 89 40 28          	mov    %rax,0x28(%r8)
14015533f:	48 8b 43 20          	mov    0x20(%rbx),%rax
140155343:	49 89 40 30          	mov    %rax,0x30(%r8)
140155347:	48 89 4b 18          	mov    %rcx,0x18(%rbx)
14015534b:	48 89 4b 20          	mov    %rcx,0x20(%rbx)
14015534f:	48 8b 43 28          	mov    0x28(%rbx),%rax
140155353:	49 89 40 38          	mov    %rax,0x38(%r8)
140155357:	48 8b c7             	mov    %rdi,%rax
14015535a:	41 0f 11 40 40       	movups %xmm0,0x40(%r8)
14015535f:	49 89 48 50          	mov    %rcx,0x50(%r8)
140155363:	49 89 48 58          	mov    %rcx,0x58(%r8)
140155367:	0f 10 43 30          	movups 0x30(%rbx),%xmm0
14015536b:	41 0f 11 40 40       	movups %xmm0,0x40(%r8)
140155370:	0f 10 4b 40          	movups 0x40(%rbx),%xmm1
140155374:	41 0f 11 48 50       	movups %xmm1,0x50(%r8)
140155379:	48 89 4b 40          	mov    %rcx,0x40(%rbx)
14015537d:	48 c7 43 48 0f 00 00 	movq   $0xf,0x48(%rbx)
140155384:	00
140155385:	88 4b 30             	mov    %cl,0x30(%rbx)
140155388:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14015538d:	4c 89 07             	mov    %r8,(%rdi)
140155390:	48 83 c4 20          	add    $0x20,%rsp
140155394:	5f                   	pop    %rdi
140155395:	c3                   	ret
140155396:	b9 62 f4 31 01       	mov    $0x131f462,%ecx
14015539b:	e8 d8 5f eb ff       	call   0x14000b378
1401553a0:	cc                   	int3
1401553a1:	90                   	nop
1401553a2:	90                   	nop
1401553a3:	90                   	nop
1401553a4:	90                   	nop
1401553a5:	90                   	nop
1401553a6:	90                   	nop
1401553a7:	90                   	nop
1401553a8:	90                   	nop
1401553a9:	90                   	nop
1401553aa:	90                   	nop
1401553ab:	90                   	nop
1401553ac:	90                   	nop
1401553ad:	90                   	nop
1401553ae:	90                   	nop
1401553af:	90                   	nop
1401553b0:	48 8b c4             	mov    %rsp,%rax
1401553b3:	48 89 48 08          	mov    %rcx,0x8(%rax)
1401553b7:	4c 89 40 18          	mov    %r8,0x18(%rax)
1401553bb:	4c 89 48 20          	mov    %r9,0x20(%rax)
1401553bf:	48 83 ec 28          	sub    $0x28,%rsp
1401553c3:	48 85 c9             	test   %rcx,%rcx
1401553c6:	74 10                	je     0x1401553d8
1401553c8:	48 8d 48 08          	lea    0x8(%rax),%rcx
1401553cc:	e8 6b 51 ee ff       	call   0x14003a53c
1401553d1:	48 85 c0             	test   %rax,%rax
1401553d4:	74 09                	je     0x1401553df
1401553d6:	eb 02                	jmp    0x1401553da
1401553d8:	33 c0                	xor    %eax,%eax
1401553da:	48 83 c4 28          	add    $0x28,%rsp
1401553de:	c3                   	ret
1401553df:	33 d2                	xor    %edx,%edx
1401553e1:	b9 56 25 65 1f       	mov    $0x1f652556,%ecx
1401553e6:	e8 f9 5e eb ff       	call   0x14000b2e4
1401553eb:	cc                   	int3
1401553ec:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401553f1:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1401553f6:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1401553fb:	57                   	push   %rdi
1401553fc:	41 54                	push   %r12
1401553fe:	41 55                	push   %r13
140155400:	41 56                	push   %r14
140155402:	41 57                	push   %r15
140155404:	48 83 ec 30          	sub    $0x30,%rsp
140155408:	4d 8b e8             	mov    %r8,%r13
14015540b:	4c 8b f2             	mov    %rdx,%r14
14015540e:	48 8b e9             	mov    %rcx,%rbp
140155411:	48 bf 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rdi
140155418:	9c f2 cb
14015541b:	33 d2                	xor    %edx,%edx
14015541d:	42 0f b6 04 02       	movzbl (%rdx,%r8,1),%eax
140155422:	48 33 f8             	xor    %rax,%rdi
140155425:	48 b9 b3 01 00 00 00 	movabs $0x100000001b3,%rcx
14015542c:	01 00 00
14015542f:	48 0f af f9          	imul   %rcx,%rdi
140155433:	48 ff c2             	inc    %rdx
140155436:	48 83 fa 08          	cmp    $0x8,%rdx
14015543a:	72 e1                	jb     0x14015541d
14015543c:	48 8b 45 30          	mov    0x30(%rbp),%rax
140155440:	48 23 c7             	and    %rdi,%rax
140155443:	48 03 c0             	add    %rax,%rax
140155446:	48 8b 4d 18          	mov    0x18(%rbp),%rcx
14015544a:	48 8b 5c c1 08       	mov    0x8(%rcx,%rax,8),%rbx
14015544f:	48 8d 55 08          	lea    0x8(%rbp),%rdx
140155453:	4c 8b 22             	mov    (%rdx),%r12
140155456:	49 3b dc             	cmp    %r12,%rbx
140155459:	75 08                	jne    0x140155463
14015545b:	49 8b dc             	mov    %r12,%rbx
14015545e:	4d 8b fc             	mov    %r12,%r15
140155461:	eb 4a                	jmp    0x1401554ad
140155463:	48 8b 14 c1          	mov    (%rcx,%rax,8),%rdx
140155467:	49 8b 00             	mov    (%r8),%rax
14015546a:	eb 09                	jmp    0x140155475
14015546c:	48 3b da             	cmp    %rdx,%rbx
14015546f:	74 32                	je     0x1401554a3
140155471:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
140155475:	48 3b 43 10          	cmp    0x10(%rbx),%rax
140155479:	75 f1                	jne    0x14015546c
14015547b:	49 89 1e             	mov    %rbx,(%r14)
14015547e:	41 c6 46 08 00       	movb   $0x0,0x8(%r14)
140155483:	49 8b c6             	mov    %r14,%rax
140155486:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14015548b:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140155490:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140155495:	48 83 c4 30          	add    $0x30,%rsp
140155499:	41 5f                	pop    %r15
14015549b:	41 5e                	pop    %r14
14015549d:	41 5d                	pop    %r13
14015549f:	41 5c                	pop    %r12
1401554a1:	5f                   	pop    %rdi
1401554a2:	c3                   	ret
1401554a3:	4c 8b e3             	mov    %rbx,%r12
1401554a6:	4c 8b fb             	mov    %rbx,%r15
1401554a9:	48 8d 55 08          	lea    0x8(%rbp),%rdx
1401554ad:	48 b8 ff ff ff ff ff 	movabs $0x7ffffffffffffff,%rax
1401554b4:	ff ff 07
1401554b7:	48 39 45 10          	cmp    %rax,0x10(%rbp)
1401554bb:	75 0e                	jne    0x1401554cb
1401554bd:	48 8d 0d 3c 2d 0f 00 	lea    0xf2d3c(%rip),%rcx        # 0x140248200
1401554c4:	ff 15 5e d2 0b 00    	call   *0xbd25e(%rip)        # 0x140212728
1401554ca:	cc                   	int3
1401554cb:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
1401554d0:	48 83 64 24 28 00    	andq   $0x0,0x28(%rsp)
1401554d6:	0f ae e8             	lfence
1401554d9:	b9 20 00 00 00       	mov    $0x20,%ecx
1401554de:	ff 15 6c d6 0b 00    	call   *0xbd66c(%rip)        # 0x140212b50
1401554e4:	48 8b f0             	mov    %rax,%rsi
1401554e7:	48 85 c0             	test   %rax,%rax
1401554ea:	75 07                	jne    0x1401554f3
1401554ec:	ff 15 3e d6 0b 00    	call   *0xbd63e(%rip)        # 0x140212b30
1401554f2:	cc                   	int3
1401554f3:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
1401554f8:	49 8b 45 00          	mov    0x0(%r13),%rax
1401554fc:	48 89 46 10          	mov    %rax,0x10(%rsi)
140155500:	45 33 ed             	xor    %r13d,%r13d
140155503:	4c 89 6e 18          	mov    %r13,0x18(%rsi)
140155507:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
14015550b:	48 83 c1 01          	add    $0x1,%rcx
14015550f:	0f 57 c0             	xorps  %xmm0,%xmm0
140155512:	78 07                	js     0x14015551b
140155514:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
140155519:	eb 15                	jmp    0x140155530
14015551b:	48 8b c1             	mov    %rcx,%rax
14015551e:	48 d1 e8             	shr    $1,%rax
140155521:	83 e1 01             	and    $0x1,%ecx
140155524:	48 0b c1             	or     %rcx,%rax
140155527:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
14015552c:	f3 0f 58 c0          	addss  %xmm0,%xmm0
140155530:	48 8b 4d 38          	mov    0x38(%rbp),%rcx
140155534:	0f 57 c9             	xorps  %xmm1,%xmm1
140155537:	48 85 c9             	test   %rcx,%rcx
14015553a:	78 07                	js     0x140155543
14015553c:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
140155541:	eb 15                	jmp    0x140155558
140155543:	48 8b c1             	mov    %rcx,%rax
140155546:	48 d1 e8             	shr    $1,%rax
140155549:	83 e1 01             	and    $0x1,%ecx
14015554c:	48 0b c1             	or     %rcx,%rax
14015554f:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
140155554:	f3 0f 58 c9          	addss  %xmm1,%xmm1
140155558:	f3 0f 5e c1          	divss  %xmm1,%xmm0
14015555c:	0f 2f 45 00          	comiss 0x0(%rbp),%xmm0
140155560:	76 50                	jbe    0x1401555b2
140155562:	48 8b cd             	mov    %rbp,%rcx
140155565:	e8 be 80 eb ff       	call   0x14000d628
14015556a:	48 8b cf             	mov    %rdi,%rcx
14015556d:	48 23 4d 30          	and    0x30(%rbp),%rcx
140155571:	48 03 c9             	add    %rcx,%rcx
140155574:	48 8b 55 18          	mov    0x18(%rbp),%rdx
140155578:	48 8b 44 ca 08       	mov    0x8(%rdx,%rcx,8),%rax
14015557d:	48 8b 5d 08          	mov    0x8(%rbp),%rbx
140155581:	48 3b c3             	cmp    %rbx,%rax
140155584:	74 1f                	je     0x1401555a5
140155586:	4c 8b 04 ca          	mov    (%rdx,%rcx,8),%r8
14015558a:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
14015558e:	eb 0c                	jmp    0x14015559c
140155590:	48 8b d8             	mov    %rax,%rbx
140155593:	49 3b c0             	cmp    %r8,%rax
140155596:	74 4b                	je     0x1401555e3
140155598:	48 8b 40 08          	mov    0x8(%rax),%rax
14015559c:	48 3b 48 10          	cmp    0x10(%rax),%rcx
1401555a0:	75 ee                	jne    0x140155590
1401555a2:	48 8b 18             	mov    (%rax),%rbx
1401555a5:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1401555aa:	4c 8b fb             	mov    %rbx,%r15
1401555ad:	4c 8b 64 24 20       	mov    0x20(%rsp),%r12
1401555b2:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1401555b6:	48 ff 45 10          	incq   0x10(%rbp)
1401555ba:	4c 89 26             	mov    %r12,(%rsi)
1401555bd:	48 89 4e 08          	mov    %rcx,0x8(%rsi)
1401555c1:	48 89 31             	mov    %rsi,(%rcx)
1401555c4:	48 89 73 08          	mov    %rsi,0x8(%rbx)
1401555c8:	48 8b 45 18          	mov    0x18(%rbp),%rax
1401555cc:	48 23 7d 30          	and    0x30(%rbp),%rdi
1401555d0:	48 03 ff             	add    %rdi,%rdi
1401555d3:	48 8b 14 f8          	mov    (%rax,%rdi,8),%rdx
1401555d7:	48 3b 55 08          	cmp    0x8(%rbp),%rdx
1401555db:	75 0d                	jne    0x1401555ea
1401555dd:	48 89 34 f8          	mov    %rsi,(%rax,%rdi,8)
1401555e1:	eb 19                	jmp    0x1401555fc
1401555e3:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1401555e8:	eb c0                	jmp    0x1401555aa
1401555ea:	49 3b d7             	cmp    %r15,%rdx
1401555ed:	75 06                	jne    0x1401555f5
1401555ef:	48 89 34 f8          	mov    %rsi,(%rax,%rdi,8)
1401555f3:	eb 0c                	jmp    0x140155601
1401555f5:	48 39 4c f8 08       	cmp    %rcx,0x8(%rax,%rdi,8)
1401555fa:	75 05                	jne    0x140155601
1401555fc:	48 89 74 f8 08       	mov    %rsi,0x8(%rax,%rdi,8)
140155601:	49 89 36             	mov    %rsi,(%r14)
140155604:	41 c6 46 08 01       	movb   $0x1,0x8(%r14)
140155609:	e9 75 fe ff ff       	jmp    0x140155483
14015560e:	cc                   	int3
14015560f:	90                   	nop
140155610:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140155615:	57                   	push   %rdi
140155616:	48 83 ec 20          	sub    $0x20,%rsp
14015561a:	4c 8b 01             	mov    (%rcx),%r8
14015561d:	48 8b da             	mov    %rdx,%rbx
140155620:	48 8b 12             	mov    (%rdx),%rdx
140155623:	48 8b f9             	mov    %rcx,%rdi
140155626:	48 8b 52 08          	mov    0x8(%rdx),%rdx
14015562a:	e8 71 00 00 00       	call   0x1401556a0
14015562f:	4c 8b 07             	mov    (%rdi),%r8
140155632:	45 33 c9             	xor    %r9d,%r9d