140640500:	bf 05 00 00 00       	mov    $0x5,%edi
140640505:	4c 8b 6d e8          	mov    -0x18(%rbp),%r13
140640509:	eb 10                	jmp    0x14064051b
14064050b:	48 89 75 c8          	mov    %rsi,-0x38(%rbp)
14064050f:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140640513:	bf 02 00 00 00       	mov    $0x2,%edi
140640518:	4c 8b ee             	mov    %rsi,%r13
14064051b:	4c 89 6d d8          	mov    %r13,-0x28(%rbp)
14064051f:	48 8b 41 08          	mov    0x8(%rcx),%rax
140640523:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
140640527:	48 89 31             	mov    %rsi,(%rcx)
14064052a:	48 89 71 08          	mov    %rsi,0x8(%rcx)
14064052e:	41 be ff ff ff ff    	mov    $0xffffffff,%r14d
140640534:	40 f6 c7 02          	test   $0x2,%dil
140640538:	74 4a                	je     0x140640584
14064053a:	83 e7 fd             	and    $0xfffffffd,%edi
14064053d:	48 8b 4d c8          	mov    -0x38(%rbp),%rcx
140640541:	48 85 c9             	test   %rcx,%rcx
140640544:	74 3e                	je     0x140640584
140640546:	41 8b c6             	mov    %r14d,%eax
140640549:	f0 0f c1 41 08       	lock xadd %eax,0x8(%rcx)
14064054e:	83 f8 01             	cmp    $0x1,%eax
140640551:	75 31                	jne    0x140640584
140640553:	48 8b 5d c8          	mov    -0x38(%rbp),%rbx
140640557:	48 8b 03             	mov    (%rbx),%rax
14064055a:	48 8b cb             	mov    %rbx,%rcx
14064055d:	48 8b 00             	mov    (%rax),%rax
140640560:	ff 15 ba 34 94 00    	call   *0x9434ba(%rip)        # 0x140f83a20
140640566:	41 8b c6             	mov    %r14d,%eax
140640569:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
14064056e:	83 f8 01             	cmp    $0x1,%eax
140640571:	75 11                	jne    0x140640584
140640573:	48 8b 4d c8          	mov    -0x38(%rbp),%rcx
140640577:	48 8b 01             	mov    (%rcx),%rax
14064057a:	48 8b 40 08          	mov    0x8(%rax),%rax
14064057e:	ff 15 9c 34 94 00    	call   *0x94349c(%rip)        # 0x140f83a20
140640584:	40 f6 c7 01          	test   $0x1,%dil
140640588:	74 42                	je     0x1406405cc
14064058a:	48 8b 5d f0          	mov    -0x10(%rbp),%rbx
14064058e:	48 85 db             	test   %rbx,%rbx
140640591:	74 39                	je     0x1406405cc
140640593:	41 8b c6             	mov    %r14d,%eax
140640596:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
14064059b:	83 f8 01             	cmp    $0x1,%eax
14064059e:	75 2c                	jne    0x1406405cc
1406405a0:	48 8b 03             	mov    (%rbx),%rax
1406405a3:	48 8b cb             	mov    %rbx,%rcx
1406405a6:	48 8b 00             	mov    (%rax),%rax
1406405a9:	ff 15 71 34 94 00    	call   *0x943471(%rip)        # 0x140f83a20
1406405af:	41 8b c6             	mov    %r14d,%eax
1406405b2:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
1406405b7:	83 f8 01             	cmp    $0x1,%eax
1406405ba:	75 10                	jne    0x1406405cc
1406405bc:	48 8b 03             	mov    (%rbx),%rax
1406405bf:	48 8b cb             	mov    %rbx,%rcx
1406405c2:	48 8b 40 08          	mov    0x8(%rax),%rax
1406405c6:	ff 15 54 34 94 00    	call   *0x943454(%rip)        # 0x140f83a20
1406405cc:	4d 8b bc 24 c8 00 00 	mov    0xc8(%r12),%r15
1406405d3:	00
1406405d4:	0f 57 c0             	xorps  %xmm0,%xmm0
1406405d7:	f3 0f 7f 45 c0       	movdqu %xmm0,-0x40(%rbp)
1406405dc:	48 89 75 d0          	mov    %rsi,-0x30(%rbp)
1406405e0:	49 8b 47 60          	mov    0x60(%r15),%rax
1406405e4:	49 2b 47 58          	sub    0x58(%r15),%rax
1406405e8:	48 c1 f8 03          	sar    $0x3,%rax
1406405ec:	48 8b de             	mov    %rsi,%rbx
1406405ef:	48 85 c0             	test   %rax,%rax
1406405f2:	0f 84 b7 00 00 00    	je     0x1406406af
1406405f8:	48 b9 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%rcx
1406405ff:	ff ff 1f
140640602:	48 3b c1             	cmp    %rcx,%rax
140640605:	0f 87 bf 02 00 00    	ja     0x1406408ca
14064060b:	48 8d 34 c5 00 00 00 	lea    0x0(,%rax,8),%rsi
140640612:	00
140640613:	48 85 f6             	test   %rsi,%rsi
140640616:	74 3d                	je     0x140640655
140640618:	48 81 fe 00 10 00 00 	cmp    $0x1000,%rsi
14064061f:	72 29                	jb     0x14064064a
140640621:	48 8d 4e 27          	lea    0x27(%rsi),%rcx
140640625:	48 3b ce             	cmp    %rsi,%rcx
140640628:	0f 86 a2 02 00 00    	jbe    0x1406408d0
14064062e:	e8 d5 aa 7d 00       	call   0x140e1b108
140640633:	48 85 c0             	test   %rax,%rax
140640636:	0f 84 9a 02 00 00    	je     0x1406408d6
14064063c:	48 8d 58 27          	lea    0x27(%rax),%rbx
140640640:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
140640644:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
140640648:	eb 0b                	jmp    0x140640655
14064064a:	48 8b ce             	mov    %rsi,%rcx
14064064d:	e8 b6 aa 7d 00       	call   0x140e1b108
140640652:	48 8b d8             	mov    %rax,%rbx
140640655:	48 8b fb             	mov    %rbx,%rdi
140640658:	48 89 5d c0          	mov    %rbx,-0x40(%rbp)
14064065c:	48 89 5d c8          	mov    %rbx,-0x38(%rbp)
140640660:	48 8d 0c 33          	lea    (%rbx,%rsi,1),%rcx
140640664:	48 89 4d d0          	mov    %rcx,-0x30(%rbp)
140640668:	4d 8b 47 60          	mov    0x60(%r15),%r8
14064066c:	49 8b 57 58          	mov    0x58(%r15),%rdx
140640670:	49 3b d0             	cmp    %r8,%rdx
140640673:	74 34                	je     0x1406406a9
140640675:	48 8b 0a             	mov    (%rdx),%rcx
140640678:	48 89 0b             	mov    %rcx,(%rbx)
14064067b:	48 85 c9             	test   %rcx,%rcx
14064067e:	74 1c                	je     0x14064069c
140640680:	8b 41 10             	mov    0x10(%rcx),%eax
140640683:	ff c0                	inc    %eax
140640685:	89 41 10             	mov    %eax,0x10(%rcx)
140640688:	83 f8 01             	cmp    $0x1,%eax
14064068b:	0f 8e 56 02 00 00    	jle    0x1406408e7
140640691:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140640696:	0f 84 40 02 00 00    	je     0x1406408dc
14064069c:	48 83 c3 08          	add    $0x8,%rbx
1406406a0:	48 83 c2 08          	add    $0x8,%rdx
1406406a4:	49 3b d0             	cmp    %r8,%rdx
1406406a7:	75 cc                	jne    0x140640675
1406406a9:	48 89 5d c8          	mov    %rbx,-0x38(%rbp)
1406406ad:	eb 04                	jmp    0x1406406b3
1406406af:	48 8b 7d c0          	mov    -0x40(%rbp),%rdi
1406406b3:	49 8b 84 24 b0 00 00 	mov    0xb0(%r12),%rax
1406406ba:	00
1406406bb:	48 8b 48 40          	mov    0x40(%rax),%rcx
1406406bf:	48 8b 41 40          	mov    0x40(%rcx),%rax
1406406c3:	8b 70 78             	mov    0x78(%rax),%esi
1406406c6:	49 8b 8c 24 c8 00 00 	mov    0xc8(%r12),%rcx
1406406cd:	00
1406406ce:	48 89 4d 30          	mov    %rcx,0x30(%rbp)
1406406d2:	48 85 c9             	test   %rcx,%rcx
1406406d5:	74 1c                	je     0x1406406f3
1406406d7:	8b 41 10             	mov    0x10(%rcx),%eax
1406406da:	ff c0                	inc    %eax
1406406dc:	89 41 10             	mov    %eax,0x10(%rcx)
1406406df:	83 f8 01             	cmp    $0x1,%eax
1406406e2:	0f 8e 07 02 00 00    	jle    0x1406408ef
1406406e8:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406406ed:	0f 84 04 02 00 00    	je     0x1406408f7
1406406f3:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
1406406f7:	e8 84 ce 12 00       	call   0x14076d580
1406406fc:	48 3b fb             	cmp    %rbx,%rdi
1406406ff:	0f 84 15 01 00 00    	je     0x14064081a
140640705:	49 be b3 01 00 00 00 	movabs $0x100000001b3,%r14
14064070c:	01 00 00
14064070f:	49 bf 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%r15
140640716:	9c f2 cb
140640719:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140640720:	83 ee 01             	sub    $0x1,%esi
140640723:	0f 88 eb 00 00 00    	js     0x140640814
140640729:	48 8b 17             	mov    (%rdi),%rdx
14064072c:	4d 85 ed             	test   %r13,%r13
14064072f:	0f 84 d2 00 00 00    	je     0x140640807
140640735:	48 8b c2             	mov    %rdx,%rax
140640738:	48 c1 e8 08          	shr    $0x8,%rax
14064073c:	44 0f b6 c0          	movzbl %al,%r8d
140640740:	0f b6 c2             	movzbl %dl,%eax
140640743:	49 33 c7             	xor    %r15,%rax
140640746:	49 0f af c6          	imul   %r14,%rax
14064074a:	4c 33 c0             	xor    %rax,%r8
14064074d:	4d 0f af c6          	imul   %r14,%r8
140640751:	48 8b c2             	mov    %rdx,%rax
140640754:	48 c1 e8 10          	shr    $0x10,%rax
140640758:	0f b6 c8             	movzbl %al,%ecx
14064075b:	4c 33 c1             	xor    %rcx,%r8
14064075e:	4d 0f af c6          	imul   %r14,%r8
140640762:	48 8b c2             	mov    %rdx,%rax
140640765:	48 c1 e8 18          	shr    $0x18,%rax
140640769:	0f b6 c8             	movzbl %al,%ecx
14064076c:	4c 33 c1             	xor    %rcx,%r8
14064076f:	4d 0f af c6          	imul   %r14,%r8
140640773:	48 8b c2             	mov    %rdx,%rax
140640776:	48 c1 e8 20          	shr    $0x20,%rax
14064077a:	0f b6 c8             	movzbl %al,%ecx
14064077d:	4c 33 c1             	xor    %rcx,%r8
140640780:	4d 0f af c6          	imul   %r14,%r8
140640784:	48 8b c2             	mov    %rdx,%rax
140640787:	48 c1 e8 28          	shr    $0x28,%rax
14064078b:	0f b6 c8             	movzbl %al,%ecx
14064078e:	4c 33 c1             	xor    %rcx,%r8
140640791:	4d 0f af c6          	imul   %r14,%r8
140640795:	48 8b c2             	mov    %rdx,%rax
140640798:	48 c1 e8 30          	shr    $0x30,%rax
14064079c:	0f b6 c8             	movzbl %al,%ecx
14064079f:	4c 33 c1             	xor    %rcx,%r8
1406407a2:	4d 0f af c6          	imul   %r14,%r8
1406407a6:	48 8b c2             	mov    %rdx,%rax
1406407a9:	48 c1 e8 38          	shr    $0x38,%rax
1406407ad:	4c 33 c0             	xor    %rax,%r8
1406407b0:	4d 0f af c6          	imul   %r14,%r8
1406407b4:	49 8b 4d 30          	mov    0x30(%r13),%rcx
1406407b8:	49 23 c8             	and    %r8,%rcx
1406407bb:	48 c1 e1 04          	shl    $0x4,%rcx
1406407bf:	49 03 4d 18          	add    0x18(%r13),%rcx
1406407c3:	48 8b 41 08          	mov    0x8(%rcx),%rax
1406407c7:	4d 8b 45 08          	mov    0x8(%r13),%r8
1406407cb:	49 3b c0             	cmp    %r8,%rax
1406407ce:	74 21                	je     0x1406407f1
1406407d0:	48 8b 09             	mov    (%rcx),%rcx
1406407d3:	48 3b 50 10          	cmp    0x10(%rax),%rdx
1406407d7:	74 1a                	je     0x1406407f3
1406407d9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
1406407e0:	48 3b c1             	cmp    %rcx,%rax
1406407e3:	74 0c                	je     0x1406407f1
1406407e5:	48 8b 40 08          	mov    0x8(%rax),%rax
1406407e9:	48 3b 50 10          	cmp    0x10(%rax),%rdx
1406407ed:	75 f1                	jne    0x1406407e0
1406407ef:	eb 02                	jmp    0x1406407f3
1406407f1:	33 c0                	xor    %eax,%eax
1406407f3:	48 85 c0             	test   %rax,%rax
1406407f6:	49 0f 44 c0          	cmove  %r8,%rax
1406407fa:	49 3b c0             	cmp    %r8,%rax
1406407fd:	74 08                	je     0x140640807
1406407ff:	49 8b cc             	mov    %r12,%rcx
140640802:	e8 39 45 fd ff       	call   0x140614d40
140640807:	48 83 c7 08          	add    $0x8,%rdi
14064080b:	48 3b fb             	cmp    %rbx,%rdi
14064080e:	0f 85 0c ff ff ff    	jne    0x140640720
140640814:	41 be ff ff ff ff    	mov    $0xffffffff,%r14d
14064081a:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
14064081e:	e8 8d cb 12 00       	call   0x14076d3b0
140640823:	90                   	nop
140640824:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
140640828:	48 85 c9             	test   %rcx,%rcx
14064082b:	74 24                	je     0x140640851
14064082d:	8b 41 10             	mov    0x10(%rcx),%eax
140640830:	ff c8                	dec    %eax
140640832:	89 41 10             	mov    %eax,0x10(%rcx)
140640835:	85 c0                	test   %eax,%eax
140640837:	7f 18                	jg     0x140640851
140640839:	0f 88 80 00 00 00    	js     0x1406408bf
14064083f:	48 8b 01             	mov    (%rcx),%rax
140640842:	ba 01 00 00 00       	mov    $0x1,%edx
140640847:	48 8b 00             	mov    (%rax),%rax
14064084a:	ff 15 d0 31 94 00    	call   *0x9431d0(%rip)        # 0x140f83a20
140640850:	90                   	nop
140640851:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140640855:	e8 d6 1a 01 00       	call   0x140652330
14064085a:	90                   	nop
14064085b:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
14064085f:	48 85 c9             	test   %rcx,%rcx
140640862:	74 3d                	je     0x1406408a1
140640864:	41 8b c6             	mov    %r14d,%eax
140640867:	f0 0f c1 41 08       	lock xadd %eax,0x8(%rcx)
14064086c:	83 f8 01             	cmp    $0x1,%eax
14064086f:	75 30                	jne    0x1406408a1
140640871:	48 8b 5d e0          	mov    -0x20(%rbp),%rbx
140640875:	48 8b 03             	mov    (%rbx),%rax
140640878:	48 8b cb             	mov    %rbx,%rcx
14064087b:	48 8b 00             	mov    (%rax),%rax
14064087e:	ff 15 9c 31 94 00    	call   *0x94319c(%rip)        # 0x140f83a20
140640884:	f0 44 0f c1 73 0c    	lock xadd %r14d,0xc(%rbx)
14064088a:	41 83 fe 01          	cmp    $0x1,%r14d
14064088e:	75 11                	jne    0x1406408a1
140640890:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
140640894:	48 8b 01             	mov    (%rcx),%rax
140640897:	48 8b 40 08          	mov    0x8(%rax),%rax
14064089b:	ff 15 7f 31 94 00    	call   *0x94317f(%rip)        # 0x140f83a20
1406408a1:	4c 8d 5c 24 60       	lea    0x60(%rsp),%r11
1406408a6:	49 8b 5b 38          	mov    0x38(%r11),%rbx
1406408aa:	49 8b 73 40          	mov    0x40(%r11),%rsi
1406408ae:	49 8b 7b 48          	mov    0x48(%r11),%rdi
1406408b2:	49 8b e3             	mov    %r11,%rsp
1406408b5:	41 5f                	pop    %r15
1406408b7:	41 5e                	pop    %r14
1406408b9:	41 5d                	pop    %r13
1406408bb:	41 5c                	pop    %r12
1406408bd:	5d                   	pop    %rbp
1406408be:	c3                   	ret
1406408bf:	b9 02 00 00 00       	mov    $0x2,%ecx
1406408c4:	e8 37 9e 14 00       	call   0x14078a700
1406408c9:	90                   	nop
1406408ca:	e8 c1 cc b5 ff       	call   0x14019d590
1406408cf:	cc                   	int3
1406408d0:	e8 bb c8 b5 ff       	call   0x14019d190
1406408d5:	cc                   	int3
1406408d6:	e8 c9 98 7e 00       	call   0x140e2a1a4
1406408db:	90                   	nop
1406408dc:	b9 01 00 00 00       	mov    $0x1,%ecx
1406408e1:	e8 1a 9e 14 00       	call   0x14078a700
1406408e6:	cc                   	int3
1406408e7:	33 c9                	xor    %ecx,%ecx
1406408e9:	e8 12 9e 14 00       	call   0x14078a700
1406408ee:	90                   	nop
1406408ef:	33 c9                	xor    %ecx,%ecx
1406408f1:	e8 0a 9e 14 00       	call   0x14078a700
1406408f6:	cc                   	int3
1406408f7:	b9 01 00 00 00       	mov    $0x1,%ecx
1406408fc:	e8 ff 9d 14 00       	call   0x14078a700
140640901:	cc                   	int3
140640902:	cc                   	int3
140640903:	cc                   	int3
140640904:	cc                   	int3
140640905:	cc                   	int3
140640906:	cc                   	int3
140640907:	cc                   	int3
140640908:	cc                   	int3
140640909:	cc                   	int3
14064090a:	cc                   	int3
14064090b:	cc                   	int3
14064090c:	cc                   	int3
14064090d:	cc                   	int3
14064090e:	cc                   	int3
14064090f:	cc                   	int3
140640910:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140640915:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14064091a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14064091f:	57                   	push   %rdi
140640920:	41 54                	push   %r12
140640922:	41 55                	push   %r13
140640924:	41 56                	push   %r14
140640926:	41 57                	push   %r15
140640928:	48 83 ec 40          	sub    $0x40,%rsp
14064092c:	4c 8b e9             	mov    %rcx,%r13
14064092f:	48 8b b9 b8 00 00 00 	mov    0xb8(%rcx),%rdi
140640936:	48 8b 7f 30          	mov    0x30(%rdi),%rdi
14064093a:	48 8b 1f             	mov    (%rdi),%rbx
14064093d:	48 3b df             	cmp    %rdi,%rbx
140640940:	0f 84 01 01 00 00    	je     0x140640a47
140640946:	45 33 e4             	xor    %r12d,%r12d
140640949:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140640950:	4c 8b 73 10          	mov    0x10(%rbx),%r14
140640954:	49 8b d6             	mov    %r14,%rdx
140640957:	48 89 54 24 70       	mov    %rdx,0x70(%rsp)
14064095c:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
140640961:	4d 85 f6             	test   %r14,%r14
140640964:	74 23                	je     0x140640989
140640966:	41 8b 46 10          	mov    0x10(%r14),%eax
14064096a:	ff c0                	inc    %eax
14064096c:	41 89 46 10          	mov    %eax,0x10(%r14)
140640970:	83 f8 01             	cmp    $0x1,%eax
140640973:	0f 8e 0a 01 00 00    	jle    0x140640a83
140640979:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
14064097e:	0f 84 f4 00 00 00    	je     0x140640a78
140640984:	48 8b 54 24 70       	mov    0x70(%rsp),%rdx
140640989:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
14064098e:	49 8b cd             	mov    %r13,%rcx
140640991:	e8 da 3b fd ff       	call   0x140614570
140640996:	44 8b f8             	mov    %eax,%r15d
140640999:	89 44 24 28          	mov    %eax,0x28(%rsp)
14064099d:	49 8d ad 98 02 00 00 	lea    0x298(%r13),%rbp
1406409a4:	48 8b 75 08          	mov    0x8(%rbp),%rsi
1406409a8:	48 2b 75 00          	sub    0x0(%rbp),%rsi
1406409ac:	48 c1 fe 04          	sar    $0x4,%rsi
1406409b0:	49 8d 8d b0 02 00 00 	lea    0x2b0(%r13),%rcx
1406409b7:	4c 8d 44 24 70       	lea    0x70(%rsp),%r8
1406409bc:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1406409c1:	e8 2a 36 fd ff       	call   0x140613ff0
1406409c6:	48 8b 08             	mov    (%rax),%rcx
1406409c9:	89 71 18             	mov    %esi,0x18(%rcx)
1406409cc:	48 8b 55 08          	mov    0x8(%rbp),%rdx
1406409d0:	48 3b 55 10          	cmp    0x10(%rbp),%rdx
1406409d4:	74 2d                	je     0x140640a03
1406409d6:	4c 89 32             	mov    %r14,(%rdx)