1400168dc:	4c 8b c8             	mov    %rax,%r9
1400168df:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
1400168e4:	4c 8b c7             	mov    %rdi,%r8
1400168e7:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
1400168ec:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
1400168f1:	33 c9                	xor    %ecx,%ecx
1400168f3:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1400168f8:	ff 15 7a 18 00 00    	call   *0x187a(%rip)        # 0x140018178
1400168fe:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
140016903:	48 83 c4 40          	add    $0x40,%rsp
140016907:	5f                   	pop    %rdi
140016908:	c3                   	ret
140016909:	cc                   	int3
14001690a:	cc                   	int3
14001690b:	cc                   	int3
14001690c:	40 53                	rex push %rbx
14001690e:	56                   	push   %rsi
14001690f:	57                   	push   %rdi
140016910:	48 83 ec 40          	sub    $0x40,%rsp
140016914:	48 8b d9             	mov    %rcx,%rbx
140016917:	ff 15 4b 18 00 00    	call   *0x184b(%rip)        # 0x140018168
14001691d:	48 8b b3 f8 00 00 00 	mov    0xf8(%rbx),%rsi
140016924:	33 ff                	xor    %edi,%edi
140016926:	45 33 c0             	xor    %r8d,%r8d
140016929:	48 8d 54 24 60       	lea    0x60(%rsp),%rdx
14001692e:	48 8b ce             	mov    %rsi,%rcx
140016931:	ff 15 39 18 00 00    	call   *0x1839(%rip)        # 0x140018170
140016937:	48 85 c0             	test   %rax,%rax
14001693a:	74 39                	je     0x140016975
14001693c:	48 83 64 24 38 00    	andq   $0x0,0x38(%rsp)
140016942:	48 8d 4c 24 68       	lea    0x68(%rsp),%rcx
140016947:	48 8b 54 24 60       	mov    0x60(%rsp),%rdx
14001694c:	4c 8b c8             	mov    %rax,%r9
14001694f:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
140016954:	4c 8b c6             	mov    %rsi,%r8
140016957:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
14001695c:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140016961:	33 c9                	xor    %ecx,%ecx
140016963:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140016968:	ff 15 0a 18 00 00    	call   *0x180a(%rip)        # 0x140018178
14001696e:	ff c7                	inc    %edi
140016970:	83 ff 02             	cmp    $0x2,%edi
140016973:	7c b1                	jl     0x140016926
140016975:	48 83 c4 40          	add    $0x40,%rsp
140016979:	5f                   	pop    %rdi
14001697a:	5e                   	pop    %rsi
14001697b:	5b                   	pop    %rbx
14001697c:	c3                   	ret
14001697d:	cc                   	int3
14001697e:	cc                   	int3
14001697f:	cc                   	int3
140016980:	40 53                	rex push %rbx
140016982:	48 83 ec 20          	sub    $0x20,%rsp
140016986:	48 8d 05 1b 30 00 00 	lea    0x301b(%rip),%rax        # 0x1400199a8
14001698d:	48 8b d9             	mov    %rcx,%rbx
140016990:	48 89 01             	mov    %rax,(%rcx)
140016993:	f6 c2 01             	test   $0x1,%dl
140016996:	74 0a                	je     0x1400169a2
140016998:	ba 18 00 00 00       	mov    $0x18,%edx
14001699d:	e8 3a fd ff ff       	call   0x1400166dc
1400169a2:	48 8b c3             	mov    %rbx,%rax
1400169a5:	48 83 c4 20          	add    $0x20,%rsp
1400169a9:	5b                   	pop    %rbx
1400169aa:	c3                   	ret
1400169ab:	cc                   	int3
1400169ac:	40 53                	rex push %rbx
1400169ae:	48 83 ec 20          	sub    $0x20,%rsp
1400169b2:	b9 01 00 00 00       	mov    $0x1,%ecx
1400169b7:	e8 d0 08 00 00       	call   0x14001728c
1400169bc:	e8 4f 07 00 00       	call   0x140017110
1400169c1:	8b c8                	mov    %eax,%ecx
1400169c3:	e8 e8 08 00 00       	call   0x1400172b0
1400169c8:	e8 67 05 00 00       	call   0x140016f34
1400169cd:	8b d8                	mov    %eax,%ebx
1400169cf:	e8 06 09 00 00       	call   0x1400172da
1400169d4:	b9 01 00 00 00       	mov    $0x1,%ecx
1400169d9:	89 18                	mov    %ebx,(%rax)
1400169db:	e8 78 fa ff ff       	call   0x140016458
1400169e0:	84 c0                	test   %al,%al
1400169e2:	74 73                	je     0x140016a57
1400169e4:	e8 83 07 00 00       	call   0x14001716c
1400169e9:	48 8d 0d b8 07 00 00 	lea    0x7b8(%rip),%rcx        # 0x1400171a8
1400169f0:	e8 13 fc ff ff       	call   0x140016608
1400169f5:	e8 ca 03 00 00       	call   0x140016dc4
1400169fa:	8b c8                	mov    %eax,%ecx
1400169fc:	e8 5b 08 00 00       	call   0x14001725c
140016a01:	85 c0                	test   %eax,%eax
140016a03:	75 52                	jne    0x140016a57
140016a05:	e8 0e 07 00 00       	call   0x140017118
140016a0a:	e8 41 07 00 00       	call   0x140017150
140016a0f:	85 c0                	test   %eax,%eax
140016a11:	74 0c                	je     0x140016a1f
140016a13:	48 8d 0d 1a 05 00 00 	lea    0x51a(%rip),%rcx        # 0x140016f34
140016a1a:	e8 73 08 00 00       	call   0x140017292
140016a1f:	e8 d4 05 00 00       	call   0x140016ff8
140016a24:	e8 cf 05 00 00       	call   0x140016ff8
140016a29:	e8 06 05 00 00       	call   0x140016f34
140016a2e:	8b c8                	mov    %eax,%ecx
140016a30:	e8 99 08 00 00       	call   0x1400172ce
140016a35:	e8 ee 06 00 00       	call   0x140017128
140016a3a:	84 c0                	test   %al,%al
140016a3c:	74 05                	je     0x140016a43
140016a3e:	e8 1f 08 00 00       	call   0x140017262
140016a43:	e8 ec 04 00 00       	call   0x140016f34
140016a48:	e8 df 04 00 00       	call   0x140016f2c
140016a4d:	85 c0                	test   %eax,%eax
140016a4f:	75 06                	jne    0x140016a57
140016a51:	48 83 c4 20          	add    $0x20,%rsp
140016a55:	5b                   	pop    %rbx
140016a56:	c3                   	ret
140016a57:	b9 07 00 00 00       	mov    $0x7,%ecx
140016a5c:	e8 7f 03 00 00       	call   0x140016de0
140016a61:	cc                   	int3
140016a62:	cc                   	int3
140016a63:	cc                   	int3
140016a64:	48 83 ec 28          	sub    $0x28,%rsp
140016a68:	e8 c7 06 00 00       	call   0x140017134
140016a6d:	33 c0                	xor    %eax,%eax
140016a6f:	48 83 c4 28          	add    $0x28,%rsp
140016a73:	c3                   	ret
140016a74:	48 83 ec 28          	sub    $0x28,%rsp
140016a78:	e8 0f 05 00 00       	call   0x140016f8c
140016a7d:	e8 b2 04 00 00       	call   0x140016f34
140016a82:	8b c8                	mov    %eax,%ecx
140016a84:	48 83 c4 28          	add    $0x28,%rsp
140016a88:	e9 47 08 00 00       	jmp    0x1400172d4
140016a8d:	cc                   	int3
140016a8e:	cc                   	int3
140016a8f:	cc                   	int3
140016a90:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140016a95:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140016a9a:	57                   	push   %rdi
140016a9b:	48 83 ec 30          	sub    $0x30,%rsp
140016a9f:	b9 01 00 00 00       	mov    $0x1,%ecx
140016aa4:	e8 63 f9 ff ff       	call   0x14001640c
140016aa9:	84 c0                	test   %al,%al
140016aab:	0f 84 36 01 00 00    	je     0x140016be7
140016ab1:	40 32 f6             	xor    %sil,%sil
140016ab4:	40 88 74 24 20       	mov    %sil,0x20(%rsp)
140016ab9:	e8 12 f9 ff ff       	call   0x1400163d0
140016abe:	8a d8                	mov    %al,%bl
140016ac0:	8b 0d ea f9 00 00    	mov    0xf9ea(%rip),%ecx        # 0x1400264b0
140016ac6:	83 f9 01             	cmp    $0x1,%ecx
140016ac9:	0f 84 23 01 00 00    	je     0x140016bf2
140016acf:	85 c9                	test   %ecx,%ecx
140016ad1:	75 4a                	jne    0x140016b1d
140016ad3:	c7 05 d3 f9 00 00 01 	movl   $0x1,0xf9d3(%rip)        # 0x1400264b0
140016ada:	00 00 00
140016add:	48 8d 15 24 1b 00 00 	lea    0x1b24(%rip),%rdx        # 0x140018608
140016ae4:	48 8d 0d 05 1b 00 00 	lea    0x1b05(%rip),%rcx        # 0x1400185f0
140016aeb:	e8 b4 07 00 00       	call   0x1400172a4
140016af0:	85 c0                	test   %eax,%eax
140016af2:	74 0a                	je     0x140016afe
140016af4:	b8 ff 00 00 00       	mov    $0xff,%eax
140016af9:	e9 d9 00 00 00       	jmp    0x140016bd7
140016afe:	48 8d 15 e3 1a 00 00 	lea    0x1ae3(%rip),%rdx        # 0x1400185e8
140016b05:	48 8d 0d b4 1a 00 00 	lea    0x1ab4(%rip),%rcx        # 0x1400185c0
140016b0c:	e8 8d 07 00 00       	call   0x14001729e
140016b11:	c7 05 95 f9 00 00 02 	movl   $0x2,0xf995(%rip)        # 0x1400264b0
140016b18:	00 00 00
140016b1b:	eb 08                	jmp    0x140016b25
140016b1d:	40 b6 01             	mov    $0x1,%sil
140016b20:	40 88 74 24 20       	mov    %sil,0x20(%rsp)
140016b25:	8a cb                	mov    %bl,%cl
140016b27:	e8 50 fa ff ff       	call   0x14001657c
140016b2c:	e8 2b 06 00 00       	call   0x14001715c
140016b31:	48 8b d8             	mov    %rax,%rbx
140016b34:	48 83 38 00          	cmpq   $0x0,(%rax)
140016b38:	74 1e                	je     0x140016b58
140016b3a:	48 8b c8             	mov    %rax,%rcx
140016b3d:	e8 a2 f9 ff ff       	call   0x1400164e4
140016b42:	84 c0                	test   %al,%al
140016b44:	74 12                	je     0x140016b58
140016b46:	45 33 c0             	xor    %r8d,%r8d
140016b49:	41 8d 50 02          	lea    0x2(%r8),%edx
140016b4d:	33 c9                	xor    %ecx,%ecx
140016b4f:	48 8b 03             	mov    (%rbx),%rax
140016b52:	ff 15 50 1a 00 00    	call   *0x1a50(%rip)        # 0x1400185a8
140016b58:	e8 07 06 00 00       	call   0x140017164
140016b5d:	48 8b d8             	mov    %rax,%rbx
140016b60:	48 83 38 00          	cmpq   $0x0,(%rax)
140016b64:	74 14                	je     0x140016b7a
140016b66:	48 8b c8             	mov    %rax,%rcx
140016b69:	e8 76 f9 ff ff       	call   0x1400164e4
140016b6e:	84 c0                	test   %al,%al
140016b70:	74 08                	je     0x140016b7a
140016b72:	48 8b 0b             	mov    (%rbx),%rcx
140016b75:	e8 4e 07 00 00       	call   0x1400172c8
140016b7a:	e8 19 07 00 00       	call   0x140017298
140016b7f:	48 8b f8             	mov    %rax,%rdi
140016b82:	e8 35 07 00 00       	call   0x1400172bc
140016b87:	48 8b 18             	mov    (%rax),%rbx
140016b8a:	e8 27 07 00 00       	call   0x1400172b6
140016b8f:	4c 8b c7             	mov    %rdi,%r8
140016b92:	48 8b d3             	mov    %rbx,%rdx
140016b95:	8b 08                	mov    (%rax),%ecx
140016b97:	e8 30 b0 ff ff       	call   0x140011bcc
140016b9c:	8b d8                	mov    %eax,%ebx
140016b9e:	e8 95 03 00 00       	call   0x140016f38
140016ba3:	84 c0                	test   %al,%al
140016ba5:	74 55                	je     0x140016bfc
140016ba7:	40 84 f6             	test   %sil,%sil
140016baa:	75 05                	jne    0x140016bb1
140016bac:	e8 c9 06 00 00       	call   0x14001727a
140016bb1:	33 d2                	xor    %edx,%edx
140016bb3:	b1 01                	mov    $0x1,%cl
140016bb5:	e8 e6 f9 ff ff       	call   0x1400165a0
140016bba:	8b c3                	mov    %ebx,%eax
140016bbc:	eb 19                	jmp    0x140016bd7
140016bbe:	8b d8                	mov    %eax,%ebx
140016bc0:	e8 73 03 00 00       	call   0x140016f38
140016bc5:	84 c0                	test   %al,%al
140016bc7:	74 3b                	je     0x140016c04
140016bc9:	80 7c 24 20 00       	cmpb   $0x0,0x20(%rsp)
140016bce:	75 05                	jne    0x140016bd5
140016bd0:	e8 ed 06 00 00       	call   0x1400172c2
140016bd5:	8b c3                	mov    %ebx,%eax
140016bd7:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140016bdc:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140016be1:	48 83 c4 30          	add    $0x30,%rsp
140016be5:	5f                   	pop    %rdi
140016be6:	c3                   	ret
140016be7:	b9 07 00 00 00       	mov    $0x7,%ecx
140016bec:	e8 ef 01 00 00       	call   0x140016de0
140016bf1:	90                   	nop
140016bf2:	b9 07 00 00 00       	mov    $0x7,%ecx
140016bf7:	e8 e4 01 00 00       	call   0x140016de0
140016bfc:	8b cb                	mov    %ebx,%ecx
140016bfe:	e8 4d 06 00 00       	call   0x140017250
140016c03:	90                   	nop
140016c04:	8b cb                	mov    %ebx,%ecx
140016c06:	e8 9f 06 00 00       	call   0x1400172aa
140016c0b:	90                   	nop
140016c0c:	48 83 ec 28          	sub    $0x28,%rsp
140016c10:	e8 4f 04 00 00       	call   0x140017064
140016c15:	48 83 c4 28          	add    $0x28,%rsp
140016c19:	e9 72 fe ff ff       	jmp    0x140016a90
140016c1e:	cc                   	int3
140016c1f:	cc                   	int3
140016c20:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140016c25:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140016c2a:	57                   	push   %rdi
140016c2b:	48 83 ec 10          	sub    $0x10,%rsp
140016c2f:	33 c0                	xor    %eax,%eax
140016c31:	33 c9                	xor    %ecx,%ecx
140016c33:	0f a2                	cpuid
140016c35:	44 8b c1             	mov    %ecx,%r8d
140016c38:	45 33 db             	xor    %r11d,%r11d
140016c3b:	44 8b cb             	mov    %ebx,%r9d
140016c3e:	41 81 f0 6e 74 65 6c 	xor    $0x6c65746e,%r8d
140016c45:	41 81 f1 47 65 6e 75 	xor    $0x756e6547,%r9d
140016c4c:	44 8b d2             	mov    %edx,%r10d
140016c4f:	8b f0                	mov    %eax,%esi
140016c51:	33 c9                	xor    %ecx,%ecx
140016c53:	41 8d 43 01          	lea    0x1(%r11),%eax
140016c57:	45 0b c8             	or     %r8d,%r9d
140016c5a:	0f a2                	cpuid
140016c5c:	41 81 f2 69 6e 65 49 	xor    $0x49656e69,%r10d
140016c63:	89 04 24             	mov    %eax,(%rsp)
140016c66:	45 0b ca             	or     %r10d,%r9d
140016c69:	89 5c 24 04          	mov    %ebx,0x4(%rsp)
140016c6d:	8b f9                	mov    %ecx,%edi
140016c6f:	89 4c 24 08          	mov    %ecx,0x8(%rsp)
140016c73:	89 54 24 0c          	mov    %edx,0xc(%rsp)
140016c77:	75 50                	jne    0x140016cc9
140016c79:	48 83 0d 4f f4 00 00 	orq    $0xffffffffffffffff,0xf44f(%rip)        # 0x1400260d0
140016c80:	ff
140016c81:	25 f0 3f ff 0f       	and    $0xfff3ff0,%eax
140016c86:	3d c0 06 01 00       	cmp    $0x106c0,%eax
140016c8b:	74 28                	je     0x140016cb5
140016c8d:	3d 60 06 02 00       	cmp    $0x20660,%eax
140016c92:	74 21                	je     0x140016cb5
140016c94:	3d 70 06 02 00       	cmp    $0x20670,%eax
140016c99:	74 1a                	je     0x140016cb5
140016c9b:	05 b0 f9 fc ff       	add    $0xfffcf9b0,%eax
140016ca0:	83 f8 20             	cmp    $0x20,%eax
140016ca3:	77 24                	ja     0x140016cc9
140016ca5:	48 b9 01 00 01 00 01 	movabs $0x100010001,%rcx
140016cac:	00 00 00
140016caf:	48 0f a3 c1          	bt     %rax,%rcx
140016cb3:	73 14                	jae    0x140016cc9
140016cb5:	44 8b 05 b4 fd 00 00 	mov    0xfdb4(%rip),%r8d        # 0x140026a70
140016cbc:	41 83 c8 01          	or     $0x1,%r8d
140016cc0:	44 89 05 a9 fd 00 00 	mov    %r8d,0xfda9(%rip)        # 0x140026a70
140016cc7:	eb 07                	jmp    0x140016cd0
140016cc9:	44 8b 05 a0 fd 00 00 	mov    0xfda0(%rip),%r8d        # 0x140026a70
140016cd0:	b8 07 00 00 00       	mov    $0x7,%eax
140016cd5:	44 8d 48 fb          	lea    -0x5(%rax),%r9d
140016cd9:	3b f0                	cmp    %eax,%esi
140016cdb:	7c 26                	jl     0x140016d03
140016cdd:	33 c9                	xor    %ecx,%ecx
140016cdf:	0f a2                	cpuid
140016ce1:	89 04 24             	mov    %eax,(%rsp)
140016ce4:	44 8b db             	mov    %ebx,%r11d
140016ce7:	89 5c 24 04          	mov    %ebx,0x4(%rsp)
140016ceb:	89 4c 24 08          	mov    %ecx,0x8(%rsp)
140016cef:	89 54 24 0c          	mov    %edx,0xc(%rsp)
140016cf3:	0f ba e3 09          	bt     $0x9,%ebx
140016cf7:	73 0a                	jae    0x140016d03
140016cf9:	45 0b c1             	or     %r9d,%r8d
140016cfc:	44 89 05 6d fd 00 00 	mov    %r8d,0xfd6d(%rip)        # 0x140026a70
140016d03:	c7 05 bb f3 00 00 01 	movl   $0x1,0xf3bb(%rip)        # 0x1400260c8
140016d0a:	00 00 00
140016d0d:	44 89 0d b8 f3 00 00 	mov    %r9d,0xf3b8(%rip)        # 0x1400260cc
140016d14:	0f ba e7 14          	bt     $0x14,%edi
140016d18:	0f 83 91 00 00 00    	jae    0x140016daf
140016d1e:	44 89 0d a3 f3 00 00 	mov    %r9d,0xf3a3(%rip)        # 0x1400260c8
140016d25:	bb 06 00 00 00       	mov    $0x6,%ebx
140016d2a:	89 1d 9c f3 00 00    	mov    %ebx,0xf39c(%rip)        # 0x1400260cc
140016d30:	0f ba e7 1b          	bt     $0x1b,%edi
140016d34:	73 79                	jae    0x140016daf
140016d36:	0f ba e7 1c          	bt     $0x1c,%edi
140016d3a:	73 73                	jae    0x140016daf
140016d3c:	33 c9                	xor    %ecx,%ecx
140016d3e:	0f 01 d0             	xgetbv
140016d41:	48 c1 e2 20          	shl    $0x20,%rdx
140016d45:	48 0b d0             	or     %rax,%rdx
140016d48:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140016d4d:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
140016d52:	22 c3                	and    %bl,%al
140016d54:	3a c3                	cmp    %bl,%al
140016d56:	75 57                	jne    0x140016daf
140016d58:	8b 05 6e f3 00 00    	mov    0xf36e(%rip),%eax        # 0x1400260cc
140016d5e:	83 c8 08             	or     $0x8,%eax
140016d61:	c7 05 5d f3 00 00 03 	movl   $0x3,0xf35d(%rip)        # 0x1400260c8
140016d68:	00 00 00
140016d6b:	89 05 5b f3 00 00    	mov    %eax,0xf35b(%rip)        # 0x1400260cc
140016d71:	41 f6 c3 20          	test   $0x20,%r11b
140016d75:	74 38                	je     0x140016daf
140016d77:	83 c8 20             	or     $0x20,%eax
140016d7a:	c7 05 44 f3 00 00 05 	movl   $0x5,0xf344(%rip)        # 0x1400260c8
140016d81:	00 00 00
140016d84:	89 05 42 f3 00 00    	mov    %eax,0xf342(%rip)        # 0x1400260cc
140016d8a:	b8 00 00 03 d0       	mov    $0xd0030000,%eax
140016d8f:	44 23 d8             	and    %eax,%r11d
140016d92:	44 3b d8             	cmp    %eax,%r11d
140016d95:	75 18                	jne    0x140016daf
140016d97:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
140016d9c:	24 e0                	and    $0xe0,%al
140016d9e:	3c e0                	cmp    $0xe0,%al
140016da0:	75 0d                	jne    0x140016daf
140016da2:	83 0d 23 f3 00 00 40 	orl    $0x40,0xf323(%rip)        # 0x1400260cc
140016da9:	89 1d 19 f3 00 00    	mov    %ebx,0xf319(%rip)        # 0x1400260c8
140016daf:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
140016db4:	33 c0                	xor    %eax,%eax
140016db6:	48 8b 74 24 30       	mov    0x30(%rsp),%rsi
140016dbb:	48 83 c4 10          	add    $0x10,%rsp
140016dbf:	5f                   	pop    %rdi
140016dc0:	c3                   	ret
140016dc1:	cc                   	int3