1400215f3:	83 48 04 02          	orl    $0x2,0x4(%rax)
1400215f7:	41 f6 c0 01          	test   $0x1,%r8b
1400215fb:	74 0d                	je     0x14002160a
1400215fd:	48 8b 45 10          	mov    0x10(%rbp),%rax
140021601:	bf 91 00 00 c0       	mov    $0xc0000091,%edi
140021606:	83 48 04 04          	orl    $0x4,0x4(%rax)
14002160a:	41 f6 c0 04          	test   $0x4,%r8b
14002160e:	74 0d                	je     0x14002161d
140021610:	48 8b 45 10          	mov    0x10(%rbp),%rax
140021614:	bf 8e 00 00 c0       	mov    $0xc000008e,%edi
140021619:	83 48 04 08          	orl    $0x8,0x4(%rax)
14002161d:	41 f6 c0 08          	test   $0x8,%r8b
140021621:	74 0d                	je     0x140021630
140021623:	48 8b 45 10          	mov    0x10(%rbp),%rax
140021627:	bf 90 00 00 c0       	mov    $0xc0000090,%edi
14002162c:	83 48 04 10          	orl    $0x10,0x4(%rax)
140021630:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
140021634:	48 8b 03             	mov    (%rbx),%rax
140021637:	48 c1 e8 07          	shr    $0x7,%rax
14002163b:	c1 e0 04             	shl    $0x4,%eax
14002163e:	f7 d0                	not    %eax
140021640:	33 41 08             	xor    0x8(%rcx),%eax
140021643:	83 e0 10             	and    $0x10,%eax
140021646:	31 41 08             	xor    %eax,0x8(%rcx)
140021649:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
14002164d:	48 8b 03             	mov    (%rbx),%rax
140021650:	48 c1 e8 09          	shr    $0x9,%rax
140021654:	c1 e0 03             	shl    $0x3,%eax
140021657:	f7 d0                	not    %eax
140021659:	33 41 08             	xor    0x8(%rcx),%eax
14002165c:	83 e0 08             	and    $0x8,%eax
14002165f:	31 41 08             	xor    %eax,0x8(%rcx)
140021662:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
140021666:	48 8b 03             	mov    (%rbx),%rax
140021669:	48 c1 e8 0a          	shr    $0xa,%rax
14002166d:	c1 e0 02             	shl    $0x2,%eax
140021670:	f7 d0                	not    %eax
140021672:	33 41 08             	xor    0x8(%rcx),%eax
140021675:	83 e0 04             	and    $0x4,%eax
140021678:	31 41 08             	xor    %eax,0x8(%rcx)
14002167b:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
14002167f:	48 8b 03             	mov    (%rbx),%rax
140021682:	48 c1 e8 0b          	shr    $0xb,%rax
140021686:	03 c0                	add    %eax,%eax
140021688:	f7 d0                	not    %eax
14002168a:	33 41 08             	xor    0x8(%rcx),%eax
14002168d:	83 e0 02             	and    $0x2,%eax
140021690:	31 41 08             	xor    %eax,0x8(%rcx)
140021693:	8b 03                	mov    (%rbx),%eax
140021695:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
140021699:	48 c1 e8 0c          	shr    $0xc,%rax
14002169d:	f7 d0                	not    %eax
14002169f:	33 41 08             	xor    0x8(%rcx),%eax
1400216a2:	83 e0 01             	and    $0x1,%eax
1400216a5:	31 41 08             	xor    %eax,0x8(%rcx)
1400216a8:	e8 13 03 00 00       	call   0x1400219c0
1400216ad:	48 8b d0             	mov    %rax,%rdx
1400216b0:	a8 01                	test   $0x1,%al
1400216b2:	74 08                	je     0x1400216bc
1400216b4:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
1400216b8:	83 49 0c 10          	orl    $0x10,0xc(%rcx)
1400216bc:	f6 c2 04             	test   $0x4,%dl
1400216bf:	74 08                	je     0x1400216c9
1400216c1:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
1400216c5:	83 49 0c 08          	orl    $0x8,0xc(%rcx)
1400216c9:	f6 c2 08             	test   $0x8,%dl
1400216cc:	74 08                	je     0x1400216d6
1400216ce:	48 8b 45 10          	mov    0x10(%rbp),%rax
1400216d2:	83 48 0c 04          	orl    $0x4,0xc(%rax)
1400216d6:	f6 c2 10             	test   $0x10,%dl
1400216d9:	74 08                	je     0x1400216e3
1400216db:	48 8b 45 10          	mov    0x10(%rbp),%rax
1400216df:	83 48 0c 02          	orl    $0x2,0xc(%rax)
1400216e3:	f6 c2 20             	test   $0x20,%dl
1400216e6:	74 08                	je     0x1400216f0
1400216e8:	48 8b 45 10          	mov    0x10(%rbp),%rax
1400216ec:	83 48 0c 01          	orl    $0x1,0xc(%rax)
1400216f0:	8b 03                	mov    (%rbx),%eax
1400216f2:	b9 00 60 00 00       	mov    $0x6000,%ecx
1400216f7:	48 23 c1             	and    %rcx,%rax
1400216fa:	74 3e                	je     0x14002173a
1400216fc:	48 3d 00 20 00 00    	cmp    $0x2000,%rax
140021702:	74 26                	je     0x14002172a
140021704:	48 3d 00 40 00 00    	cmp    $0x4000,%rax
14002170a:	74 0e                	je     0x14002171a
14002170c:	48 3b c1             	cmp    %rcx,%rax
14002170f:	75 30                	jne    0x140021741
140021711:	48 8b 45 10          	mov    0x10(%rbp),%rax
140021715:	83 08 03             	orl    $0x3,(%rax)
140021718:	eb 27                	jmp    0x140021741
14002171a:	48 8b 45 10          	mov    0x10(%rbp),%rax
14002171e:	83 20 fe             	andl   $0xfffffffe,(%rax)
140021721:	48 8b 45 10          	mov    0x10(%rbp),%rax
140021725:	83 08 02             	orl    $0x2,(%rax)
140021728:	eb 17                	jmp    0x140021741
14002172a:	48 8b 45 10          	mov    0x10(%rbp),%rax
14002172e:	83 20 fd             	andl   $0xfffffffd,(%rax)
140021731:	48 8b 45 10          	mov    0x10(%rbp),%rax
140021735:	83 08 01             	orl    $0x1,(%rax)
140021738:	eb 07                	jmp    0x140021741
14002173a:	48 8b 45 10          	mov    0x10(%rbp),%rax
14002173e:	83 20 fc             	andl   $0xfffffffc,(%rax)
140021741:	48 8b 45 10          	mov    0x10(%rbp),%rax
140021745:	81 e6 ff 0f 00 00    	and    $0xfff,%esi
14002174b:	c1 e6 05             	shl    $0x5,%esi
14002174e:	81 20 1f 00 fe ff    	andl   $0xfffe001f,(%rax)
140021754:	48 8b 45 10          	mov    0x10(%rbp),%rax
140021758:	09 30                	or     %esi,(%rax)
14002175a:	48 8b 45 10          	mov    0x10(%rbp),%rax
14002175e:	48 8b 75 38          	mov    0x38(%rbp),%rsi
140021762:	83 48 20 01          	orl    $0x1,0x20(%rax)
140021766:	83 7d 40 00          	cmpl   $0x0,0x40(%rbp)
14002176a:	74 33                	je     0x14002179f
14002176c:	48 8b 45 10          	mov    0x10(%rbp),%rax
140021770:	ba e1 ff ff ff       	mov    $0xffffffe1,%edx
140021775:	21 50 20             	and    %edx,0x20(%rax)
140021778:	48 8b 45 30          	mov    0x30(%rbp),%rax
14002177c:	8b 08                	mov    (%rax),%ecx
14002177e:	48 8b 45 10          	mov    0x10(%rbp),%rax
140021782:	89 48 10             	mov    %ecx,0x10(%rax)
140021785:	48 8b 45 10          	mov    0x10(%rbp),%rax
140021789:	83 48 60 01          	orl    $0x1,0x60(%rax)
14002178d:	48 8b 45 10          	mov    0x10(%rbp),%rax
140021791:	21 50 60             	and    %edx,0x60(%rax)
140021794:	48 8b 45 10          	mov    0x10(%rbp),%rax
140021798:	8b 0e                	mov    (%rsi),%ecx
14002179a:	89 48 50             	mov    %ecx,0x50(%rax)
14002179d:	eb 48                	jmp    0x1400217e7
14002179f:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
1400217a3:	41 b8 e3 ff ff ff    	mov    $0xffffffe3,%r8d
1400217a9:	8b 41 20             	mov    0x20(%rcx),%eax
1400217ac:	41 23 c0             	and    %r8d,%eax
1400217af:	83 c8 02             	or     $0x2,%eax
1400217b2:	89 41 20             	mov    %eax,0x20(%rcx)
1400217b5:	48 8b 45 30          	mov    0x30(%rbp),%rax
1400217b9:	48 8b 08             	mov    (%rax),%rcx
1400217bc:	48 8b 45 10          	mov    0x10(%rbp),%rax
1400217c0:	48 89 48 10          	mov    %rcx,0x10(%rax)
1400217c4:	48 8b 45 10          	mov    0x10(%rbp),%rax
1400217c8:	83 48 60 01          	orl    $0x1,0x60(%rax)
1400217cc:	48 8b 55 10          	mov    0x10(%rbp),%rdx
1400217d0:	8b 42 60             	mov    0x60(%rdx),%eax
1400217d3:	41 23 c0             	and    %r8d,%eax
1400217d6:	83 c8 02             	or     $0x2,%eax
1400217d9:	89 42 60             	mov    %eax,0x60(%rdx)
1400217dc:	48 8b 45 10          	mov    0x10(%rbp),%rax
1400217e0:	48 8b 16             	mov    (%rsi),%rdx
1400217e3:	48 89 50 50          	mov    %rdx,0x50(%rax)
1400217e7:	e8 18 01 00 00       	call   0x140021904
1400217ec:	33 d2                	xor    %edx,%edx
1400217ee:	4c 8d 4d 10          	lea    0x10(%rbp),%r9
1400217f2:	8b cf                	mov    %edi,%ecx
1400217f4:	44 8d 42 01          	lea    0x1(%rdx),%r8d
1400217f8:	ff 15 f2 a9 00 00    	call   *0xa9f2(%rip)        # 0x14002c1f0
1400217fe:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
140021802:	8b 41 08             	mov    0x8(%rcx),%eax
140021805:	a8 10                	test   $0x10,%al
140021807:	74 08                	je     0x140021811
140021809:	48 0f ba 33 07       	btrq   $0x7,(%rbx)
14002180e:	8b 41 08             	mov    0x8(%rcx),%eax
140021811:	a8 08                	test   $0x8,%al
140021813:	74 08                	je     0x14002181d
140021815:	48 0f ba 33 09       	btrq   $0x9,(%rbx)
14002181a:	8b 41 08             	mov    0x8(%rcx),%eax
14002181d:	a8 04                	test   $0x4,%al
14002181f:	74 08                	je     0x140021829
140021821:	48 0f ba 33 0a       	btrq   $0xa,(%rbx)
140021826:	8b 41 08             	mov    0x8(%rcx),%eax
140021829:	a8 02                	test   $0x2,%al
14002182b:	74 08                	je     0x140021835
14002182d:	48 0f ba 33 0b       	btrq   $0xb,(%rbx)
140021832:	8b 41 08             	mov    0x8(%rcx),%eax
140021835:	a8 01                	test   $0x1,%al
140021837:	74 05                	je     0x14002183e
140021839:	48 0f ba 33 0c       	btrq   $0xc,(%rbx)
14002183e:	8b 01                	mov    (%rcx),%eax
140021840:	83 e0 03             	and    $0x3,%eax
140021843:	74 30                	je     0x140021875
140021845:	83 e8 01             	sub    $0x1,%eax
140021848:	74 1f                	je     0x140021869
14002184a:	83 e8 01             	sub    $0x1,%eax
14002184d:	74 0e                	je     0x14002185d
14002184f:	83 f8 01             	cmp    $0x1,%eax
140021852:	75 28                	jne    0x14002187c
140021854:	48 81 0b 00 60 00 00 	orq    $0x6000,(%rbx)
14002185b:	eb 1f                	jmp    0x14002187c
14002185d:	48 0f ba 33 0d       	btrq   $0xd,(%rbx)
140021862:	48 0f ba 2b 0e       	btsq   $0xe,(%rbx)
140021867:	eb 13                	jmp    0x14002187c
140021869:	48 0f ba 33 0e       	btrq   $0xe,(%rbx)
14002186e:	48 0f ba 2b 0d       	btsq   $0xd,(%rbx)
140021873:	eb 07                	jmp    0x14002187c
140021875:	48 81 23 ff 9f ff ff 	andq   $0xffffffffffff9fff,(%rbx)
14002187c:	83 7d 40 00          	cmpl   $0x0,0x40(%rbp)
140021880:	74 07                	je     0x140021889
140021882:	8b 41 50             	mov    0x50(%rcx),%eax
140021885:	89 06                	mov    %eax,(%rsi)
140021887:	eb 07                	jmp    0x140021890
140021889:	48 8b 41 50          	mov    0x50(%rcx),%rax
14002188d:	48 89 06             	mov    %rax,(%rsi)
140021890:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140021895:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14002189a:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
14002189f:	48 83 c4 20          	add    $0x20,%rsp
1400218a3:	5d                   	pop    %rbp
1400218a4:	c3                   	ret
1400218a5:	cc                   	int3
1400218a6:	cc                   	int3
1400218a7:	cc                   	int3
1400218a8:	48 83 ec 48          	sub    $0x48,%rsp
1400218ac:	48 8b 44 24 78       	mov    0x78(%rsp),%rax
1400218b1:	c7 44 24 30 01 00 00 	movl   $0x1,0x30(%rsp)
1400218b8:	00
1400218b9:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1400218be:	48 8b 44 24 70       	mov    0x70(%rsp),%rax
1400218c3:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1400218c8:	e8 cb fc ff ff       	call   0x140021598
1400218cd:	48 83 c4 48          	add    $0x48,%rsp
1400218d1:	c3                   	ret
1400218d2:	cc                   	int3
1400218d3:	cc                   	int3
1400218d4:	48 83 ec 28          	sub    $0x28,%rsp
1400218d8:	83 f9 01             	cmp    $0x1,%ecx
1400218db:	74 15                	je     0x1400218f2
1400218dd:	8d 41 fe             	lea    -0x2(%rcx),%eax
1400218e0:	83 f8 01             	cmp    $0x1,%eax
1400218e3:	77 18                	ja     0x1400218fd
1400218e5:	e8 02 31 ff ff       	call   0x1400149ec
1400218ea:	c7 00 22 00 00 00    	movl   $0x22,(%rax)
1400218f0:	eb 0b                	jmp    0x1400218fd
1400218f2:	e8 f5 30 ff ff       	call   0x1400149ec
1400218f7:	c7 00 21 00 00 00    	movl   $0x21,(%rax)
1400218fd:	48 83 c4 28          	add    $0x28,%rsp
140021901:	c3                   	ret
140021902:	cc                   	int3
140021903:	cc                   	int3
140021904:	40 53                	rex push %rbx
140021906:	48 83 ec 20          	sub    $0x20,%rsp
14002190a:	e8 a1 78 00 00       	call   0x1400291b0
14002190f:	8b d8                	mov    %eax,%ebx
140021911:	83 e3 3f             	and    $0x3f,%ebx
140021914:	e8 b1 78 00 00       	call   0x1400291ca
140021919:	8b c3                	mov    %ebx,%eax
14002191b:	48 83 c4 20          	add    $0x20,%rsp
14002191f:	5b                   	pop    %rbx
140021920:	c3                   	ret
140021921:	cc                   	int3
140021922:	cc                   	int3
140021923:	cc                   	int3
140021924:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140021929:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14002192e:	57                   	push   %rdi
14002192f:	48 83 ec 20          	sub    $0x20,%rsp
140021933:	48 8b da             	mov    %rdx,%rbx
140021936:	48 8b f9             	mov    %rcx,%rdi
140021939:	e8 72 78 00 00       	call   0x1400291b0
14002193e:	8b f0                	mov    %eax,%esi
140021940:	89 44 24 38          	mov    %eax,0x38(%rsp)
140021944:	8b cb                	mov    %ebx,%ecx
140021946:	f7 d1                	not    %ecx
140021948:	81 c9 7f 80 ff ff    	or     $0xffff807f,%ecx
14002194e:	23 c8                	and    %eax,%ecx
140021950:	23 fb                	and    %ebx,%edi
140021952:	0b cf                	or     %edi,%ecx
140021954:	89 4c 24 30          	mov    %ecx,0x30(%rsp)
140021958:	80 3d 25 2c 02 00 00 	cmpb   $0x0,0x22c25(%rip)        # 0x140044584
14002195f:	74 25                	je     0x140021986
140021961:	f6 c1 40             	test   $0x40,%cl
140021964:	74 20                	je     0x140021986
140021966:	e8 55 78 00 00       	call   0x1400291c0
14002196b:	eb 21                	jmp    0x14002198e
14002196d:	c6 05 10 2c 02 00 00 	movb   $0x0,0x22c10(%rip)        # 0x140044584
140021974:	8b 4c 24 30          	mov    0x30(%rsp),%ecx
140021978:	83 e1 bf             	and    $0xffffffbf,%ecx
14002197b:	e8 40 78 00 00       	call   0x1400291c0
140021980:	8b 74 24 38          	mov    0x38(%rsp),%esi
140021984:	eb 08                	jmp    0x14002198e
140021986:	83 e1 bf             	and    $0xffffffbf,%ecx
140021989:	e8 32 78 00 00       	call   0x1400291c0
14002198e:	8b c6                	mov    %esi,%eax
140021990:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140021995:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14002199a:	48 83 c4 20          	add    $0x20,%rsp
14002199e:	5f                   	pop    %rdi
14002199f:	c3                   	ret
1400219a0:	40 53                	rex push %rbx
1400219a2:	48 83 ec 20          	sub    $0x20,%rsp
1400219a6:	48 8b d9             	mov    %rcx,%rbx
1400219a9:	e8 02 78 00 00       	call   0x1400291b0
1400219ae:	83 e3 3f             	and    $0x3f,%ebx
1400219b1:	0b c3                	or     %ebx,%eax
1400219b3:	8b c8                	mov    %eax,%ecx
1400219b5:	48 83 c4 20          	add    $0x20,%rsp
1400219b9:	5b                   	pop    %rbx
1400219ba:	e9 01 78 00 00       	jmp    0x1400291c0
1400219bf:	cc                   	int3
1400219c0:	48 83 ec 28          	sub    $0x28,%rsp
1400219c4:	e8 e7 77 00 00       	call   0x1400291b0
1400219c9:	83 e0 3f             	and    $0x3f,%eax
1400219cc:	48 83 c4 28          	add    $0x28,%rsp
1400219d0:	c3                   	ret
1400219d1:	cc                   	int3
1400219d2:	cc                   	int3
1400219d3:	cc                   	int3
1400219d4:	cc                   	int3
1400219d5:	cc                   	int3
1400219d6:	cc                   	int3
1400219d7:	cc                   	int3
1400219d8:	cc                   	int3
1400219d9:	cc                   	int3
1400219da:	cc                   	int3
1400219db:	cc                   	int3
1400219dc:	cc                   	int3
1400219dd:	cc                   	int3
1400219de:	cc                   	int3
1400219df:	cc                   	int3
1400219e0:	40 53                	rex push %rbx
1400219e2:	48 83 ec 10          	sub    $0x10,%rsp
1400219e6:	45 33 c0             	xor    %r8d,%r8d
1400219e9:	33 c9                	xor    %ecx,%ecx
1400219eb:	44 89 05 ee 56 02 00 	mov    %r8d,0x256ee(%rip)        # 0x1400470e0
1400219f2:	45 8d 48 01          	lea    0x1(%r8),%r9d
1400219f6:	41 8b c1             	mov    %r9d,%eax
1400219f9:	0f a2                	cpuid
1400219fb:	89 04 24             	mov    %eax,(%rsp)
1400219fe:	b8 00 10 00 18       	mov    $0x18001000,%eax
140021a03:	89 4c 24 08          	mov    %ecx,0x8(%rsp)
140021a07:	23 c8                	and    %eax,%ecx
140021a09:	89 5c 24 04          	mov    %ebx,0x4(%rsp)
140021a0d:	89 54 24 0c          	mov    %edx,0xc(%rsp)
140021a11:	3b c8                	cmp    %eax,%ecx
140021a13:	75 2c                	jne    0x140021a41
140021a15:	33 c9                	xor    %ecx,%ecx
140021a17:	0f 01 d0             	xgetbv
140021a1a:	48 c1 e2 20          	shl    $0x20,%rdx
140021a1e:	48 0b d0             	or     %rax,%rdx
140021a21:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140021a26:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
140021a2b:	44 8b 05 ae 56 02 00 	mov    0x256ae(%rip),%r8d        # 0x1400470e0
140021a32:	24 06                	and    $0x6,%al
140021a34:	3c 06                	cmp    $0x6,%al
140021a36:	45 0f 44 c1          	cmove  %r9d,%r8d
140021a3a:	44 89 05 9f 56 02 00 	mov    %r8d,0x2569f(%rip)        # 0x1400470e0
140021a41:	44 89 05 9c 56 02 00 	mov    %r8d,0x2569c(%rip)        # 0x1400470e4
140021a48:	33 c0                	xor    %eax,%eax
140021a4a:	48 83 c4 10          	add    $0x10,%rsp
140021a4e:	5b                   	pop    %rbx
140021a4f:	c3                   	ret
140021a50:	48 83 ec 78          	sub    $0x78,%rsp
140021a54:	b8 02 00 00 00       	mov    $0x2,%eax