140615494:	e8 47 10 c0 ff       	call   0x1402164e0
140615499:	49 8d 47 ff          	lea    -0x1(%r15),%rax
14061549d:	4c 89 7e 38          	mov    %r15,0x38(%rsi)
1406154a1:	48 89 46 30          	mov    %rax,0x30(%rsi)
1406154a5:	48 8b 46 08          	mov    0x8(%rsi),%rax
1406154a9:	48 8b 00             	mov    (%rax),%rax
1406154ac:	48 8b c8             	mov    %rax,%rcx
1406154af:	48 3b c3             	cmp    %rbx,%rax
1406154b2:	0f 84 2c 01 00 00    	je     0x1406155e4
1406154b8:	48 89 6c 24 50       	mov    %rbp,0x50(%rsp)
1406154bd:	48 bf b3 01 00 00 00 	movabs $0x100000001b3,%rdi
1406154c4:	01 00 00
1406154c7:	48 bd 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rbp
1406154ce:	9c f2 cb
1406154d1:	0f 1f 40 00          	nopl   0x0(%rax)
1406154d5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
1406154dc:	00 00 00 00
1406154e0:	0f b6 50 11          	movzbl 0x11(%rax),%edx
1406154e4:	44 0f b6 48 10       	movzbl 0x10(%rax),%r9d
1406154e9:	4c 8b 5e 30          	mov    0x30(%rsi),%r11
1406154ed:	4c 33 cd             	xor    %rbp,%r9
1406154f0:	48 8b 09             	mov    (%rcx),%rcx
1406154f3:	4c 0f af cf          	imul   %rdi,%r9
1406154f7:	4c 33 ca             	xor    %rdx,%r9
1406154fa:	0f b6 50 12          	movzbl 0x12(%rax),%edx
1406154fe:	4c 0f af cf          	imul   %rdi,%r9
140615502:	4c 33 ca             	xor    %rdx,%r9
140615505:	0f b6 50 13          	movzbl 0x13(%rax),%edx
140615509:	4c 0f af cf          	imul   %rdi,%r9
14061550d:	4c 33 ca             	xor    %rdx,%r9
140615510:	0f b6 50 14          	movzbl 0x14(%rax),%edx
140615514:	4c 0f af cf          	imul   %rdi,%r9
140615518:	4c 33 ca             	xor    %rdx,%r9
14061551b:	0f b6 50 15          	movzbl 0x15(%rax),%edx
14061551f:	4c 0f af cf          	imul   %rdi,%r9
140615523:	4c 33 ca             	xor    %rdx,%r9
140615526:	0f b6 50 16          	movzbl 0x16(%rax),%edx
14061552a:	4c 0f af cf          	imul   %rdi,%r9
14061552e:	4c 33 ca             	xor    %rdx,%r9
140615531:	0f b6 50 17          	movzbl 0x17(%rax),%edx
140615535:	4c 0f af cf          	imul   %rdi,%r9
140615539:	4c 33 ca             	xor    %rdx,%r9
14061553c:	4c 0f af cf          	imul   %rdi,%r9
140615540:	4d 23 d9             	and    %r9,%r11
140615543:	49 c1 e3 04          	shl    $0x4,%r11
140615547:	4c 03 5e 18          	add    0x18(%rsi),%r11
14061554b:	4d 8b 0b             	mov    (%r11),%r9
14061554e:	4c 3b cb             	cmp    %rbx,%r9
140615551:	75 09                	jne    0x14061555c
140615553:	49 89 03             	mov    %rax,(%r11)
140615556:	49 89 43 08          	mov    %rax,0x8(%r11)
14061555a:	eb 77                	jmp    0x1406155d3
14061555c:	49 8b 53 08          	mov    0x8(%r11),%rdx
140615560:	4c 8b 40 10          	mov    0x10(%rax),%r8
140615564:	4c 3b 42 10          	cmp    0x10(%rdx),%r8
140615568:	75 2f                	jne    0x140615599
14061556a:	4c 8b 12             	mov    (%rdx),%r10
14061556d:	4c 3b d0             	cmp    %rax,%r10
140615570:	74 21                	je     0x140615593
140615572:	4c 8b 48 08          	mov    0x8(%rax),%r9
140615576:	49 89 09             	mov    %rcx,(%r9)
140615579:	4c 8b 41 08          	mov    0x8(%rcx),%r8
14061557d:	4d 89 10             	mov    %r10,(%r8)
140615580:	49 8b 52 08          	mov    0x8(%r10),%rdx
140615584:	48 89 02             	mov    %rax,(%rdx)
140615587:	4d 89 42 08          	mov    %r8,0x8(%r10)
14061558b:	4c 89 49 08          	mov    %r9,0x8(%rcx)
14061558f:	48 89 50 08          	mov    %rdx,0x8(%rax)
140615593:	49 89 43 08          	mov    %rax,0x8(%r11)
140615597:	eb 3a                	jmp    0x1406155d3
140615599:	4c 3b ca             	cmp    %rdx,%r9
14061559c:	74 11                	je     0x1406155af
14061559e:	66 90                	xchg   %ax,%ax
1406155a0:	48 8b 52 08          	mov    0x8(%rdx),%rdx
1406155a4:	4c 3b 42 10          	cmp    0x10(%rdx),%r8
1406155a8:	74 51                	je     0x1406155fb
1406155aa:	4c 3b ca             	cmp    %rdx,%r9
1406155ad:	75 f1                	jne    0x1406155a0
1406155af:	4c 8b 50 08          	mov    0x8(%rax),%r10
1406155b3:	49 89 0a             	mov    %rcx,(%r10)
1406155b6:	4c 8b 49 08          	mov    0x8(%rcx),%r9
1406155ba:	49 89 11             	mov    %rdx,(%r9)
1406155bd:	4c 8b 42 08          	mov    0x8(%rdx),%r8
1406155c1:	49 89 00             	mov    %rax,(%r8)
1406155c4:	4c 89 4a 08          	mov    %r9,0x8(%rdx)
1406155c8:	4c 89 51 08          	mov    %r10,0x8(%rcx)
1406155cc:	4c 89 40 08          	mov    %r8,0x8(%rax)
1406155d0:	49 89 03             	mov    %rax,(%r11)
1406155d3:	48 8b c1             	mov    %rcx,%rax
1406155d6:	48 3b cb             	cmp    %rbx,%rcx
1406155d9:	0f 85 01 ff ff ff    	jne    0x1406154e0
1406155df:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
1406155e4:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
1406155e9:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1406155ee:	4c 8b 74 24 20       	mov    0x20(%rsp),%r14
1406155f3:	48 83 c4 28          	add    $0x28,%rsp
1406155f7:	41 5f                	pop    %r15
1406155f9:	5e                   	pop    %rsi
1406155fa:	c3                   	ret
1406155fb:	4c 8b 12             	mov    (%rdx),%r10
1406155fe:	4c 8b 48 08          	mov    0x8(%rax),%r9
140615602:	49 89 09             	mov    %rcx,(%r9)
140615605:	4c 8b 41 08          	mov    0x8(%rcx),%r8
140615609:	4d 89 10             	mov    %r10,(%r8)
14061560c:	49 8b 52 08          	mov    0x8(%r10),%rdx
140615610:	48 89 02             	mov    %rax,(%rdx)
140615613:	4d 89 42 08          	mov    %r8,0x8(%r10)
140615617:	4c 89 49 08          	mov    %r9,0x8(%rcx)
14061561b:	48 89 50 08          	mov    %rdx,0x8(%rax)
14061561f:	eb b2                	jmp    0x1406155d3
140615621:	e8 6a 7b b8 ff       	call   0x14019d190
140615626:	cc                   	int3
140615627:	48 8d 0d c2 8e 99 00 	lea    0x998ec2(%rip),%rcx        # 0x140fae4f0
14061562e:	e8 81 5d 7e 00       	call   0x140dfb3b4
140615633:	cc                   	int3
140615634:	e8 6b 4b 81 00       	call   0x140e2a1a4
140615639:	cc                   	int3
14061563a:	cc                   	int3
14061563b:	cc                   	int3
14061563c:	cc                   	int3
14061563d:	cc                   	int3
14061563e:	cc                   	int3
14061563f:	cc                   	int3
140615640:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140615645:	57                   	push   %rdi
140615646:	48 83 ec 20          	sub    $0x20,%rsp
14061564a:	48 8b 51 10          	mov    0x10(%rcx),%rdx
14061564e:	48 8b f9             	mov    %rcx,%rdi
140615651:	48 83 c2 01          	add    $0x1,%rdx
140615655:	48 8b 59 38          	mov    0x38(%rcx),%rbx
140615659:	0f 57 c0             	xorps  %xmm0,%xmm0
14061565c:	78 07                	js     0x140615665
14061565e:	f3 48 0f 2a c2       	cvtsi2ss %rdx,%xmm0
140615663:	eb 15                	jmp    0x14061567a
140615665:	48 8b c2             	mov    %rdx,%rax
140615668:	83 e2 01             	and    $0x1,%edx
14061566b:	48 d1 e8             	shr    $1,%rax
14061566e:	48 0b c2             	or     %rdx,%rax
140615671:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
140615676:	f3 0f 58 c0          	addss  %xmm0,%xmm0
14061567a:	f3 0f 5e 01          	divss  (%rcx),%xmm0
14061567e:	e8 9d ba 81 00       	call   0x140e31120
140615683:	f3 0f 10 0d d9 8f 99 	movss  0x998fd9(%rip),%xmm1        # 0x140fae664
14061568a:	00
14061568b:	33 c9                	xor    %ecx,%ecx
14061568d:	0f 2f c1             	comiss %xmm1,%xmm0
140615690:	72 16                	jb     0x1406156a8
140615692:	f3 0f 5c c1          	subss  %xmm1,%xmm0
140615696:	0f 2f c1             	comiss %xmm1,%xmm0
140615699:	73 0d                	jae    0x1406156a8
14061569b:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
1406156a2:	00 00 80
1406156a5:	48 8b c8             	mov    %rax,%rcx
1406156a8:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
1406156ad:	48 03 c1             	add    %rcx,%rax
1406156b0:	b9 08 00 00 00       	mov    $0x8,%ecx
1406156b5:	48 3b c1             	cmp    %rcx,%rax
1406156b8:	48 0f 47 c8          	cmova  %rax,%rcx
1406156bc:	48 3b d9             	cmp    %rcx,%rbx
1406156bf:	73 19                	jae    0x1406156da
1406156c1:	48 81 fb 00 02 00 00 	cmp    $0x200,%rbx
1406156c8:	73 0d                	jae    0x1406156d7
1406156ca:	48 8d 1c dd 00 00 00 	lea    0x0(,%rbx,8),%rbx
1406156d1:	00
1406156d2:	48 3b d9             	cmp    %rcx,%rbx
1406156d5:	73 03                	jae    0x1406156da
1406156d7:	48 8b d9             	mov    %rcx,%rbx
1406156da:	48 8b d3             	mov    %rbx,%rdx
1406156dd:	48 8b cf             	mov    %rdi,%rcx
1406156e0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1406156e5:	48 83 c4 20          	add    $0x20,%rsp
1406156e9:	5f                   	pop    %rdi
1406156ea:	e9 61 fc ff ff       	jmp    0x140615350
1406156ef:	cc                   	int3
1406156f0:	83 79 18 0d          	cmpl   $0xd,0x18(%rcx)
1406156f4:	0f 94 c0             	sete   %al
1406156f7:	c3                   	ret
1406156f8:	cc                   	int3
1406156f9:	cc                   	int3
1406156fa:	cc                   	int3
1406156fb:	cc                   	int3
1406156fc:	cc                   	int3
1406156fd:	cc                   	int3
1406156fe:	cc                   	int3
1406156ff:	cc                   	int3
140615700:	48 83 ec 28          	sub    $0x28,%rsp
140615704:	4c 8b ca             	mov    %rdx,%r9
140615707:	4c 8d 05 a2 2d 9c 00 	lea    0x9c2da2(%rip),%r8        # 0x140fd84b0
14061570e:	48 8b d1             	mov    %rcx,%rdx
140615711:	48 8b 0d e0 bd e1 00 	mov    0xe1bde0(%rip),%rcx        # 0x1414314f8
140615718:	e8 d3 ee 17 00       	call   0x1407945f0
14061571d:	cc                   	int3
14061571e:	cc                   	int3
14061571f:	cc                   	int3
140615720:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140615725:	57                   	push   %rdi
140615726:	48 83 ec 60          	sub    $0x60,%rsp
14061572a:	48 8b 05 cf 37 da 00 	mov    0xda37cf(%rip),%rax        # 0x1413b8f00
140615731:	48 33 c4             	xor    %rsp,%rax
140615734:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
140615739:	48 8b da             	mov    %rdx,%rbx
14061573c:	48 8b f9             	mov    %rcx,%rdi
14061573f:	49 8b d0             	mov    %r8,%rdx
140615742:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140615747:	e8 74 f5 20 00       	call   0x140824cc0
14061574c:	90                   	nop
14061574d:	48 8b c8             	mov    %rax,%rcx
140615750:	e8 7b a2 b8 ff       	call   0x14019f9d0
140615755:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14061575a:	4c 8b cb             	mov    %rbx,%r9
14061575d:	4c 8d 05 b4 30 a0 00 	lea    0xa030b4(%rip),%r8        # 0x141018818
140615764:	48 8b d7             	mov    %rdi,%rdx
140615767:	48 8b 0d 8a bd e1 00 	mov    0xe1bd8a(%rip),%rcx        # 0x1414314f8
14061576e:	e8 7d ee 17 00       	call   0x1407945f0
140615773:	cc                   	int3
140615774:	cc                   	int3
140615775:	cc                   	int3
140615776:	cc                   	int3
140615777:	cc                   	int3
140615778:	cc                   	int3
140615779:	cc                   	int3
14061577a:	cc                   	int3
14061577b:	cc                   	int3
14061577c:	cc                   	int3
14061577d:	cc                   	int3
14061577e:	cc                   	int3
14061577f:	cc                   	int3
140615780:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140615785:	57                   	push   %rdi
140615786:	48 83 ec 70          	sub    $0x70,%rsp
14061578a:	48 8b fa             	mov    %rdx,%rdi
14061578d:	48 8b d9             	mov    %rcx,%rbx
140615790:	45 33 c0             	xor    %r8d,%r8d
140615793:	33 d2                	xor    %edx,%edx
140615795:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14061579a:	e8 01 e0 20 00       	call   0x1408237a0
14061579f:	90                   	nop
1406157a0:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1406157a5:	48 8b cb             	mov    %rbx,%rcx
1406157a8:	e8 43 48 17 00       	call   0x140789ff0
1406157ad:	4c 8b cf             	mov    %rdi,%r9
1406157b0:	4c 8b 44 24 28       	mov    0x28(%rsp),%r8
1406157b5:	48 8d 15 1c a1 9a 00 	lea    0x9aa11c(%rip),%rdx        # 0x140fbf8d8
1406157bc:	48 8b 0d 35 bd e1 00 	mov    0xe1bd35(%rip),%rcx        # 0x1414314f8
1406157c3:	e8 38 f0 17 00       	call   0x140794800
1406157c8:	90                   	nop
1406157c9:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1406157ce:	e8 cd e0 20 00       	call   0x1408238a0
1406157d3:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
1406157da:	00
1406157db:	48 83 c4 70          	add    $0x70,%rsp
1406157df:	5f                   	pop    %rdi
1406157e0:	c3                   	ret
1406157e1:	cc                   	int3
1406157e2:	cc                   	int3
1406157e3:	cc                   	int3
1406157e4:	cc                   	int3
1406157e5:	cc                   	int3
1406157e6:	cc                   	int3
1406157e7:	cc                   	int3
1406157e8:	cc                   	int3
1406157e9:	cc                   	int3
1406157ea:	cc                   	int3
1406157eb:	cc                   	int3
1406157ec:	cc                   	int3
1406157ed:	cc                   	int3
1406157ee:	cc                   	int3
1406157ef:	cc                   	int3
1406157f0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1406157f5:	57                   	push   %rdi
1406157f6:	48 83 ec 30          	sub    $0x30,%rsp
1406157fa:	48 8b c2             	mov    %rdx,%rax
1406157fd:	ff ca                	dec    %edx
1406157ff:	48 85 c0             	test   %rax,%rax
140615802:	0f 44 d0             	cmove  %eax,%edx
140615805:	48 8b 49 20          	mov    0x20(%rcx),%rcx
140615809:	e8 12 f2 10 00       	call   0x140724a20
14061580e:	48 8b d8             	mov    %rax,%rbx
140615811:	b9 28 00 00 00       	mov    $0x28,%ecx
140615816:	e8 ed 58 80 00       	call   0x140e1b108
14061581b:	48 8b f8             	mov    %rax,%rdi
14061581e:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140615823:	48 85 c0             	test   %rax,%rax
140615826:	74 54                	je     0x14061587c
140615828:	48 85 db             	test   %rbx,%rbx
14061582b:	75 43                	jne    0x140615870
14061582d:	b9 10 00 00 00       	mov    $0x10,%ecx
140615832:	e8 d1 58 80 00       	call   0x140e1b108
140615837:	48 8b c8             	mov    %rax,%rcx
14061583a:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
14061583f:	48 85 c0             	test   %rax,%rax
140615842:	74 29                	je     0x14061586d
140615844:	48 8d 05 41 df 98 00 	lea    0x98df41(%rip),%rax        # 0x140fa378c
14061584b:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140615850:	33 c0                	xor    %eax,%eax
140615852:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140615857:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
14061585c:	66 0f 7f 44 24 20    	movdqa %xmm0,0x20(%rsp)
140615862:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140615867:	e8 84 bb 10 00       	call   0x1407213f0
14061586c:	90                   	nop
14061586d:	48 8b d8             	mov    %rax,%rbx
140615870:	48 8b d3             	mov    %rbx,%rdx
140615873:	48 8b cf             	mov    %rdi,%rcx
140615876:	e8 e5 c3 11 00       	call   0x140731c60
14061587b:	90                   	nop
14061587c:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140615881:	48 83 c4 30          	add    $0x30,%rsp
140615885:	5f                   	pop    %rdi
140615886:	c3                   	ret
140615887:	cc                   	int3
140615888:	cc                   	int3
140615889:	cc                   	int3
14061588a:	cc                   	int3
14061588b:	cc                   	int3
14061588c:	cc                   	int3
14061588d:	cc                   	int3
14061588e:	cc                   	int3
14061588f:	cc                   	int3
140615890:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140615895:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
14061589a:	56                   	push   %rsi
14061589b:	57                   	push   %rdi
14061589c:	41 56                	push   %r14
14061589e:	48 83 ec 20          	sub    $0x20,%rsp
1406158a2:	48 8b 41 20          	mov    0x20(%rcx),%rax
1406158a6:	48 8b 18             	mov    (%rax),%rbx
1406158a9:	48 63 68 08          	movslq 0x8(%rax),%rbp
1406158ad:	8d 45 01             	lea    0x1(%rbp),%eax
1406158b0:	48 63 c8             	movslq %eax,%rcx
1406158b3:	e8 64 5d 80 00       	call   0x140e1b61c
1406158b8:	4c 8b f0             	mov    %rax,%r14
1406158bb:	48 8b f8             	mov    %rax,%rdi
1406158be:	48 8b f5             	mov    %rbp,%rsi
1406158c1:	85 ed                	test   %ebp,%ebp
1406158c3:	7e 30                	jle    0x1406158f5
1406158c5:	0f b6 0b             	movzbl (%rbx),%ecx
1406158c8:	80 f9 80             	cmp    $0x80,%cl
1406158cb:	73 13                	jae    0x1406158e0
1406158cd:	e8 7e e4 81 00       	call   0x140e33d50
1406158d2:	85 c0                	test   %eax,%eax
1406158d4:	74 0a                	je     0x1406158e0
1406158d6:	0f b6 0b             	movzbl (%rbx),%ecx
1406158d9:	e8 de aa 82 00       	call   0x140e403bc
1406158de:	eb 03                	jmp    0x1406158e3
1406158e0:	0f b6 03             	movzbl (%rbx),%eax
1406158e3:	48 8d 4f 01          	lea    0x1(%rdi),%rcx
1406158e7:	88 07                	mov    %al,(%rdi)
1406158e9:	48 ff c3             	inc    %rbx
1406158ec:	48 8b f9             	mov    %rcx,%rdi