fffff8000027286f:	4c 0f bd c8          	bsr    %rax,%r9
fffff80000272873:	74 3e                	je     0xfffff800002728b3
fffff80000272875:	33 d2                	xor    %edx,%edx
fffff80000272877:	b9 3f 00 00 00       	mov    $0x3f,%ecx
fffff8000027287c:	41 2b c9             	sub    %r9d,%ecx
fffff8000027287f:	48 d3 e0             	shl    %cl,%rax
fffff80000272882:	48 8b ce             	mov    %rsi,%rcx
fffff80000272885:	48 2b 4b 10          	sub    0x10(%rbx),%rcx
fffff80000272889:	48 f7 f1             	div    %rcx
fffff8000027288c:	41 8d 49 01          	lea    0x1(%r9),%ecx
fffff80000272890:	48 ba aa f1 d2 4d 62 	movabs $0x195810624dd2f1aa,%rdx
fffff80000272897:	10 58 19
fffff8000027289a:	48 d3 e0             	shl    %cl,%rax
fffff8000027289d:	48 b9 12 58 39 b4 c8 	movabs $0xffbe76c8b4395812,%rcx
fffff800002728a4:	76 be ff
fffff800002728a7:	48 03 c8             	add    %rax,%rcx
fffff800002728aa:	48 3b ca             	cmp    %rdx,%rcx
fffff800002728ad:	77 04                	ja     0xfffff800002728b3
fffff800002728af:	48 89 43 28          	mov    %rax,0x28(%rbx)
fffff800002728b3:	48 89 73 10          	mov    %rsi,0x10(%rbx)
fffff800002728b7:	49 8b c0             	mov    %r8,%rax
fffff800002728ba:	4c 89 43 18          	mov    %r8,0x18(%rbx)
fffff800002728be:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
fffff800002728c3:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
fffff800002728c8:	48 83 c4 20          	add    $0x20,%rsp
fffff800002728cc:	5f                   	pop    %rdi
fffff800002728cd:	c3                   	ret
fffff800002728ce:	cc                   	int3
fffff800002728cf:	cc                   	int3
fffff800002728d0:	cc                   	int3
fffff800002728d1:	cc                   	int3
fffff800002728d2:	cc                   	int3
fffff800002728d3:	cc                   	int3
fffff800002728d4:	cc                   	int3
fffff800002728d5:	cc                   	int3
fffff800002728d6:	cc                   	int3
fffff800002728d7:	cc                   	int3
fffff800002728d8:	cc                   	int3
fffff800002728d9:	cc                   	int3
fffff800002728da:	cc                   	int3
fffff800002728db:	cc                   	int3
fffff800002728dc:	cc                   	int3
fffff800002728dd:	cc                   	int3
fffff800002728de:	cc                   	int3
fffff800002728df:	cc                   	int3
fffff800002728e0:	48 c7 05 ed bc 57 00 	movq   $0x0,0x57bced(%rip)        # 0xfffff800007ee5d8
fffff800002728e7:	00 00 00 00
fffff800002728eb:	33 c0                	xor    %eax,%eax
fffff800002728ed:	c3                   	ret
fffff800002728ee:	cc                   	int3
fffff800002728ef:	cc                   	int3
fffff800002728f0:	cc                   	int3
fffff800002728f1:	cc                   	int3
fffff800002728f2:	cc                   	int3
fffff800002728f3:	cc                   	int3
fffff800002728f4:	cc                   	int3
fffff800002728f5:	cc                   	int3
fffff800002728f6:	cc                   	int3
fffff800002728f7:	cc                   	int3
fffff800002728f8:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
fffff800002728fd:	55                   	push   %rbp
fffff800002728fe:	48 8b ec             	mov    %rsp,%rbp
fffff80000272901:	48 83 ec 40          	sub    $0x40,%rsp
fffff80000272905:	48 8b 05 dc ec 38 00 	mov    0x38ecdc(%rip),%rax        # 0xfffff800006015e8
fffff8000027290c:	48 33 c4             	xor    %rsp,%rax
fffff8000027290f:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
fffff80000272913:	4c 8b d1             	mov    %rcx,%r10
fffff80000272916:	33 c0                	xor    %eax,%eax
fffff80000272918:	33 c9                	xor    %ecx,%ecx
fffff8000027291a:	45 33 c9             	xor    %r9d,%r9d
fffff8000027291d:	0f a2                	cpuid
fffff8000027291f:	0f 57 c0             	xorps  %xmm0,%xmm0
fffff80000272922:	45 8a c1             	mov    %r9b,%r8b
fffff80000272925:	0f 11 45 e0          	movups %xmm0,-0x20(%rbp)
fffff80000272929:	89 5d e4             	mov    %ebx,-0x1c(%rbp)
fffff8000027292c:	89 4d e8             	mov    %ecx,-0x18(%rbp)
fffff8000027292f:	89 55 ec             	mov    %edx,-0x14(%rbp)
fffff80000272932:	83 f8 06             	cmp    $0x6,%eax
fffff80000272935:	72 1c                	jb     0xfffff80000272953
fffff80000272937:	33 c9                	xor    %ecx,%ecx
fffff80000272939:	41 8d 41 06          	lea    0x6(%r9),%eax
fffff8000027293d:	0f a2                	cpuid
fffff8000027293f:	44 8b c0             	mov    %eax,%r8d
fffff80000272942:	89 5d e4             	mov    %ebx,-0x1c(%rbp)
fffff80000272945:	41 c1 e8 02          	shr    $0x2,%r8d
fffff80000272949:	41 80 e0 01          	and    $0x1,%r8b
fffff8000027294d:	89 4d e8             	mov    %ecx,-0x18(%rbp)
fffff80000272950:	89 55 ec             	mov    %edx,-0x14(%rbp)
fffff80000272953:	83 3d 3a 8d 53 00 01 	cmpl   $0x1,0x538d3a(%rip)        # 0xfffff800007ab694
fffff8000027295a:	75 05                	jne    0xfffff80000272961
fffff8000027295c:	45 8a c8             	mov    %r8b,%r9b
fffff8000027295f:	eb 2c                	jmp    0xfffff8000027298d
fffff80000272961:	33 c9                	xor    %ecx,%ecx
fffff80000272963:	b8 01 00 00 00       	mov    $0x1,%eax
fffff80000272968:	0f a2                	cpuid
fffff8000027296a:	89 4d e8             	mov    %ecx,-0x18(%rbp)
fffff8000027296d:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
fffff80000272971:	89 45 e0             	mov    %eax,-0x20(%rbp)
fffff80000272974:	89 5d e4             	mov    %ebx,-0x1c(%rbp)
fffff80000272977:	89 55 ec             	mov    %edx,-0x14(%rbp)
fffff8000027297a:	e8 c1 29 ff ff       	call   0xfffff80000265340
fffff8000027297f:	41 0f b6 c8          	movzbl %r8b,%ecx
fffff80000272983:	83 f8 15             	cmp    $0x15,%eax
fffff80000272986:	41 b0 01             	mov    $0x1,%r8b
fffff80000272989:	44 0f 43 c9          	cmovae %ecx,%r9d
fffff8000027298d:	45 88 0a             	mov    %r9b,(%r10)
fffff80000272990:	41 8a c0             	mov    %r8b,%al
fffff80000272993:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
fffff80000272997:	48 33 cc             	xor    %rsp,%rcx
fffff8000027299a:	e8 d1 8b fc ff       	call   0xfffff8000023b570
fffff8000027299f:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
fffff800002729a4:	48 83 c4 40          	add    $0x40,%rsp
fffff800002729a8:	5d                   	pop    %rbp
fffff800002729a9:	c3                   	ret
fffff800002729aa:	cc                   	int3
fffff800002729ab:	cc                   	int3
fffff800002729ac:	cc                   	int3
fffff800002729ad:	cc                   	int3
fffff800002729ae:	cc                   	int3
fffff800002729af:	cc                   	int3
fffff800002729b0:	cc                   	int3
fffff800002729b1:	cc                   	int3
fffff800002729b2:	cc                   	int3
fffff800002729b3:	cc                   	int3
fffff800002729b4:	48 83 ec 28          	sub    $0x28,%rsp
fffff800002729b8:	48 8b 05 31 56 4b 00 	mov    0x4b5631(%rip),%rax        # 0xfffff80000727ff0
fffff800002729bf:	8b d1                	mov    %ecx,%edx
fffff800002729c1:	b9 e0 03 00 00       	mov    $0x3e0,%ecx
fffff800002729c6:	e8 b5 a4 fc ff       	call   0xfffff8000023ce80
fffff800002729cb:	48 83 c4 28          	add    $0x28,%rsp
fffff800002729cf:	c3                   	ret
fffff800002729d0:	cc                   	int3
fffff800002729d1:	cc                   	int3
fffff800002729d2:	cc                   	int3
fffff800002729d3:	cc                   	int3
fffff800002729d4:	cc                   	int3
fffff800002729d5:	cc                   	int3
fffff800002729d6:	cc                   	int3
fffff800002729d7:	cc                   	int3
fffff800002729d8:	cc                   	int3
fffff800002729d9:	cc                   	int3
fffff800002729da:	cc                   	int3
fffff800002729db:	cc                   	int3
fffff800002729dc:	cc                   	int3
fffff800002729dd:	cc                   	int3
fffff800002729de:	cc                   	int3
fffff800002729df:	cc                   	int3
fffff800002729e0:	49 8b d0             	mov    %r8,%rdx
fffff800002729e3:	49 8b c0             	mov    %r8,%rax
fffff800002729e6:	48 c1 ea 20          	shr    $0x20,%rdx
fffff800002729ea:	b9 b1 00 00 40       	mov    $0x400000b1,%ecx
fffff800002729ef:	0f 30                	wrmsr
fffff800002729f1:	33 c0                	xor    %eax,%eax
fffff800002729f3:	c3                   	ret
fffff800002729f4:	cc                   	int3
fffff800002729f5:	cc                   	int3
fffff800002729f6:	cc                   	int3
fffff800002729f7:	cc                   	int3
fffff800002729f8:	cc                   	int3
fffff800002729f9:	cc                   	int3
fffff800002729fa:	cc                   	int3
fffff800002729fb:	cc                   	int3
fffff800002729fc:	cc                   	int3
fffff800002729fd:	cc                   	int3
fffff800002729fe:	cc                   	int3
fffff800002729ff:	cc                   	int3
fffff80000272a00:	b8 f8 1f 00 00       	mov    $0x1ff8,%eax
fffff80000272a05:	33 d2                	xor    %edx,%edx
fffff80000272a07:	b9 b0 00 00 40       	mov    $0x400000b0,%ecx
fffff80000272a0c:	0f 30                	wrmsr
fffff80000272a0e:	33 c0                	xor    %eax,%eax
fffff80000272a10:	c3                   	ret
fffff80000272a11:	cc                   	int3
fffff80000272a12:	cc                   	int3
fffff80000272a13:	cc                   	int3
fffff80000272a14:	cc                   	int3
fffff80000272a15:	cc                   	int3
fffff80000272a16:	cc                   	int3
fffff80000272a17:	cc                   	int3
fffff80000272a18:	33 c0                	xor    %eax,%eax
fffff80000272a1a:	66 85 c9             	test   %cx,%cx
fffff80000272a1d:	74 1f                	je     0xfffff80000272a3e
fffff80000272a1f:	b8 00 f0 00 00       	mov    $0xf000,%eax
fffff80000272a24:	66 85 c8             	test   %cx,%ax
fffff80000272a27:	75 10                	jne    0xfffff80000272a39
fffff80000272a29:	66 83 f9 05          	cmp    $0x5,%cx
fffff80000272a2d:	74 0a                	je     0xfffff80000272a39
fffff80000272a2f:	0f b7 c1             	movzwl %cx,%eax
fffff80000272a32:	0d 00 00 35 c0       	or     $0xc0350000,%eax
fffff80000272a37:	c3                   	ret
fffff80000272a38:	cc                   	int3
fffff80000272a39:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
fffff80000272a3e:	c3                   	ret
fffff80000272a3f:	cc                   	int3
fffff80000272a40:	cc                   	int3
fffff80000272a41:	cc                   	int3
fffff80000272a42:	cc                   	int3
fffff80000272a43:	cc                   	int3
fffff80000272a44:	cc                   	int3
fffff80000272a45:	cc                   	int3
fffff80000272a46:	cc                   	int3
fffff80000272a47:	cc                   	int3
fffff80000272a48:	cc                   	int3
fffff80000272a49:	cc                   	int3
fffff80000272a4a:	cc                   	int3
fffff80000272a4b:	cc                   	int3
fffff80000272a4c:	cc                   	int3
fffff80000272a4d:	cc                   	int3
fffff80000272a4e:	cc                   	int3
fffff80000272a4f:	cc                   	int3
fffff80000272a50:	48 83 ec 28          	sub    $0x28,%rsp
fffff80000272a54:	41 b8 00 04 00 00    	mov    $0x400,%r8d
fffff80000272a5a:	41 3b d0             	cmp    %r8d,%edx
fffff80000272a5d:	74 09                	je     0xfffff80000272a68
fffff80000272a5f:	48 8b 05 b2 55 4b 00 	mov    0x4b55b2(%rip),%rax        # 0xfffff80000728018
fffff80000272a66:	eb 0a                	jmp    0xfffff80000272a72
fffff80000272a68:	48 8b 05 a1 55 4b 00 	mov    0x4b55a1(%rip),%rax        # 0xfffff80000728010
fffff80000272a6f:	41 8b d0             	mov    %r8d,%edx
fffff80000272a72:	e8 09 a4 fc ff       	call   0xfffff8000023ce80
fffff80000272a77:	48 83 c4 28          	add    $0x28,%rsp
fffff80000272a7b:	c3                   	ret
fffff80000272a7c:	cc                   	int3
fffff80000272a7d:	cc                   	int3
fffff80000272a7e:	cc                   	int3
fffff80000272a7f:	cc                   	int3
fffff80000272a80:	cc                   	int3
fffff80000272a81:	cc                   	int3
fffff80000272a82:	cc                   	int3
fffff80000272a83:	cc                   	int3
fffff80000272a84:	cc                   	int3
fffff80000272a85:	cc                   	int3
fffff80000272a86:	cc                   	int3
fffff80000272a87:	cc                   	int3
fffff80000272a88:	cc                   	int3
fffff80000272a89:	cc                   	int3
fffff80000272a8a:	cc                   	int3
fffff80000272a8b:	cc                   	int3
fffff80000272a8c:	cc                   	int3
fffff80000272a8d:	cc                   	int3
fffff80000272a8e:	cc                   	int3
fffff80000272a8f:	cc                   	int3
fffff80000272a90:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
fffff80000272a95:	55                   	push   %rbp
fffff80000272a96:	56                   	push   %rsi
fffff80000272a97:	57                   	push   %rdi
fffff80000272a98:	48 83 ec 20          	sub    $0x20,%rsp
fffff80000272a9c:	8b 05 8a 54 4b 00    	mov    0x4b548a(%rip),%eax        # 0xfffff80000727f2c
fffff80000272aa2:	8b f2                	mov    %edx,%esi
fffff80000272aa4:	48 8b f9             	mov    %rcx,%rdi
fffff80000272aa7:	a8 04                	test   $0x4,%al
fffff80000272aa9:	74 05                	je     0xfffff80000272ab0
fffff80000272aab:	e8 60 9c fc ff       	call   0xfffff8000023c710
fffff80000272ab0:	33 db                	xor    %ebx,%ebx
fffff80000272ab2:	8d 6b 01             	lea    0x1(%rbx),%ebp
fffff80000272ab5:	48 8b 07             	mov    (%rdi),%rax
fffff80000272ab8:	44 0f b7 c8          	movzwl %ax,%r9d
fffff80000272abc:	41 8b c9             	mov    %r9d,%ecx
fffff80000272abf:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
fffff80000272ac4:	c1 e1 06             	shl    $0x6,%ecx
fffff80000272ac7:	3b d9                	cmp    %ecx,%ebx
fffff80000272ac9:	0f 83 92 00 00 00    	jae    0xfffff80000272b61
fffff80000272acf:	8b d3                	mov    %ebx,%edx
fffff80000272ad1:	48 c1 e8 20          	shr    $0x20,%rax
fffff80000272ad5:	83 e3 3f             	and    $0x3f,%ebx
fffff80000272ad8:	c1 ea 06             	shr    $0x6,%edx
fffff80000272adb:	49 83 c8 ff          	or     $0xffffffffffffffff,%r8
fffff80000272adf:	89 5c 24 40          	mov    %ebx,0x40(%rsp)
fffff80000272ae3:	8b cb                	mov    %ebx,%ecx
fffff80000272ae5:	49 d3 e0             	shl    %cl,%r8
fffff80000272ae8:	3b d0                	cmp    %eax,%edx
fffff80000272aea:	73 29                	jae    0xfffff80000272b15
fffff80000272aec:	8b ca                	mov    %edx,%ecx
fffff80000272aee:	48 ff c1             	inc    %rcx
fffff80000272af1:	48 8d 0c cf          	lea    (%rdi,%rcx,8),%rcx
fffff80000272af5:	4c 23 01             	and    (%rcx),%r8
fffff80000272af8:	49 0f bc c0          	bsf    %r8,%rax
fffff80000272afc:	75 5a                	jne    0xfffff80000272b58
fffff80000272afe:	83 64 24 40 00       	andl   $0x0,0x40(%rsp)
fffff80000272b03:	49 83 c8 ff          	or     $0xffffffffffffffff,%r8
fffff80000272b07:	03 d5                	add    %ebp,%edx
fffff80000272b09:	48 83 c1 08          	add    $0x8,%rcx
fffff80000272b0d:	3b 54 24 54          	cmp    0x54(%rsp),%edx
fffff80000272b11:	72 e2                	jb     0xfffff80000272af5
fffff80000272b13:	33 c9                	xor    %ecx,%ecx
fffff80000272b15:	41 3b d1             	cmp    %r9d,%edx
fffff80000272b18:	73 47                	jae    0xfffff80000272b61
fffff80000272b1a:	66 39 6c 24 52       	cmp    %bp,0x52(%rsp)
fffff80000272b1f:	75 40                	jne    0xfffff80000272b61
fffff80000272b21:	8b da                	mov    %edx,%ebx
fffff80000272b23:	c1 e3 06             	shl    $0x6,%ebx
fffff80000272b26:	03 d9                	add    %ecx,%ebx
fffff80000272b28:	48 8d 0d 91 8b 53 00 	lea    0x538b91(%rip),%rcx        # 0xfffff800007ab6c0
fffff80000272b2f:	8b 14 99             	mov    (%rcx,%rbx,4),%edx
fffff80000272b32:	8b c2                	mov    %edx,%eax
fffff80000272b34:	8b 0d f2 53 4b 00    	mov    0x4b53f2(%rip),%ecx        # 0xfffff80000727f2c
fffff80000272b3a:	c1 e0 18             	shl    $0x18,%eax
fffff80000272b3d:	80 e1 04             	and    $0x4,%cl
fffff80000272b40:	8b ce                	mov    %esi,%ecx
fffff80000272b42:	0f 44 d0             	cmove  %eax,%edx
fffff80000272b45:	48 8b 05 b4 54 4b 00 	mov    0x4b54b4(%rip),%rax        # 0xfffff80000728000
fffff80000272b4c:	e8 2f a3 fc ff       	call   0xfffff8000023ce80
fffff80000272b51:	03 dd                	add    %ebp,%ebx
fffff80000272b53:	e9 5d ff ff ff       	jmp    0xfffff80000272ab5
fffff80000272b58:	8b da                	mov    %edx,%ebx
fffff80000272b5a:	c1 e3 06             	shl    $0x6,%ebx
fffff80000272b5d:	03 d8                	add    %eax,%ebx
fffff80000272b5f:	eb c7                	jmp    0xfffff80000272b28
fffff80000272b61:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
fffff80000272b66:	48 83 c4 20          	add    $0x20,%rsp
fffff80000272b6a:	5f                   	pop    %rdi
fffff80000272b6b:	5e                   	pop    %rsi
fffff80000272b6c:	5d                   	pop    %rbp
fffff80000272b6d:	c3                   	ret
fffff80000272b6e:	cc                   	int3
fffff80000272b6f:	cc                   	int3
fffff80000272b70:	cc                   	int3
fffff80000272b71:	cc                   	int3
fffff80000272b72:	cc                   	int3
fffff80000272b73:	cc                   	int3
fffff80000272b74:	cc                   	int3
fffff80000272b75:	cc                   	int3
fffff80000272b76:	cc                   	int3
fffff80000272b77:	cc                   	int3
fffff80000272b78:	cc                   	int3
fffff80000272b79:	cc                   	int3
fffff80000272b7a:	cc                   	int3
fffff80000272b7b:	cc                   	int3
fffff80000272b7c:	cc                   	int3
fffff80000272b7d:	cc                   	int3
fffff80000272b7e:	cc                   	int3
fffff80000272b7f:	cc                   	int3
fffff80000272b80:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
fffff80000272b85:	57                   	push   %rdi
fffff80000272b86:	48 83 ec 20          	sub    $0x20,%rsp
fffff80000272b8a:	8b da                	mov    %edx,%ebx
fffff80000272b8c:	8b f9                	mov    %ecx,%edi
fffff80000272b8e:	e8 7d 9b fc ff       	call   0xfffff8000023c710
fffff80000272b93:	8b d3                	mov    %ebx,%edx
fffff80000272b95:	b9 30 08 00 00       	mov    $0x830,%ecx
fffff80000272b9a:	48 c1 e2 20          	shl    $0x20,%rdx
fffff80000272b9e:	48 0b d7             	or     %rdi,%rdx
fffff80000272ba1:	48 8b c2             	mov    %rdx,%rax
fffff80000272ba4:	48 c1 ea 20          	shr    $0x20,%rdx
fffff80000272ba8:	0f 30                	wrmsr
fffff80000272baa:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
fffff80000272baf:	48 83 c4 20          	add    $0x20,%rsp
fffff80000272bb3:	5f                   	pop    %rdi
fffff80000272bb4:	c3                   	ret
fffff80000272bb5:	cc                   	int3
fffff80000272bb6:	cc                   	int3