180024e60:	41 56                	push   %r14
180024e62:	41 57                	push   %r15
180024e64:	48 83 ec 30          	sub    $0x30,%rsp
180024e68:	4c 8d 2d 31 02 18 00 	lea    0x180231(%rip),%r13        # 0x1801a50a0
180024e6f:	33 ff                	xor    %edi,%edi
180024e71:	4c 89 2d 30 02 18 00 	mov    %r13,0x180230(%rip)        # 0x1801a50a8
180024e78:	4c 89 2d 21 02 18 00 	mov    %r13,0x180221(%rip)        # 0x1801a50a0
180024e7f:	8d 6f 01             	lea    0x1(%rdi),%ebp
180024e82:	8b cd                	mov    %ebp,%ecx
180024e84:	e8 2b fd ff ff       	call   0x180024bb4
180024e89:	84 c0                	test   %al,%al
180024e8b:	0f 84 c1 01 00 00    	je     0x180025052
180024e91:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
180024e96:	33 d2                	xor    %edx,%edx
180024e98:	8b cd                	mov    %ebp,%ecx
180024e9a:	e8 01 ed 10 00       	call   0x180133ba0
180024e9f:	f7 44 24 2c 00 10 00 	testl  $0x1000,0x2c(%rsp)
180024ea6:	00
180024ea7:	0f 84 a5 01 00 00    	je     0x180025052
180024ead:	b9 ff 02 00 00       	mov    $0x2ff,%ecx
180024eb2:	0f 32                	rdmsr
180024eb4:	48 c1 e2 20          	shl    $0x20,%rdx
180024eb8:	48 0b c2             	or     %rdx,%rax
180024ebb:	48 8b d8             	mov    %rax,%rbx
180024ebe:	48 0f ba e0 0b       	bt     $0xb,%rax
180024ec3:	0f 83 89 01 00 00    	jae    0x180025052
180024ec9:	be 08 00 00 80       	mov    $0x80000008,%esi
180024ece:	8b ce                	mov    %esi,%ecx
180024ed0:	e8 df fc ff ff       	call   0x180024bb4
180024ed5:	84 c0                	test   %al,%al
180024ed7:	75 05                	jne    0x180024ede
180024ed9:	8d 4f 24             	lea    0x24(%rdi),%ecx
180024edc:	eb 13                	jmp    0x180024ef1
180024ede:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
180024ee3:	33 d2                	xor    %edx,%edx
180024ee5:	8b ce                	mov    %esi,%ecx
180024ee7:	e8 b4 ec 10 00       	call   0x180133ba0
180024eec:	0f b6 4c 24 20       	movzbl 0x20(%rsp),%ecx
180024ef1:	48 8b f5             	mov    %rbp,%rsi
180024ef4:	48 d3 e6             	shl    %cl,%rsi
180024ef7:	b9 28 00 00 00       	mov    $0x28,%ecx
180024efc:	48 8d 46 ff          	lea    -0x1(%rsi),%rax
180024f00:	48 25 00 f0 ff ff    	and    $0xfffffffffffff000,%rax
180024f06:	48 89 05 8b 01 18 00 	mov    %rax,0x18018b(%rip)        # 0x1801a5098
180024f0d:	e8 3e 4f 07 00       	call   0x180099e50
180024f12:	48 85 c0             	test   %rax,%rax
180024f15:	75 0a                	jne    0x180024f21
180024f17:	b8 9a 00 00 c0       	mov    $0xc000009a,%eax
180024f1c:	e9 33 01 00 00       	jmp    0x180025054
180024f21:	48 21 78 10          	and    %rdi,0x10(%rax)
180024f25:	48 89 70 18          	mov    %rsi,0x18(%rax)
180024f29:	c6 40 20 07          	movb   $0x7,0x20(%rax)
180024f2d:	48 8b 0d 74 01 18 00 	mov    0x180174(%rip),%rcx        # 0x1801a50a8
180024f34:	4c 39 29             	cmp    %r13,(%rcx)
180024f37:	0f 85 0e 01 00 00    	jne    0x18002504b
180024f3d:	48 89 48 08          	mov    %rcx,0x8(%rax)
180024f41:	4c 89 28             	mov    %r13,(%rax)
180024f44:	48 89 01             	mov    %rax,(%rcx)
180024f47:	b9 fe 00 00 00       	mov    $0xfe,%ecx
180024f4c:	48 89 05 55 01 18 00 	mov    %rax,0x180155(%rip)        # 0x1801a50a8
180024f53:	0f 32                	rdmsr
180024f55:	48 c1 e2 20          	shl    $0x20,%rdx
180024f59:	48 0b c2             	or     %rdx,%rax
180024f5c:	48 0f ba e0 08       	bt     $0x8,%rax
180024f61:	73 0c                	jae    0x180024f6f
180024f63:	48 0f ba e3 0a       	bt     $0xa,%rbx
180024f68:	73 05                	jae    0x180024f6f
180024f6a:	40 8a f5             	mov    %bpl,%sil
180024f6d:	eb 03                	jmp    0x180024f72
180024f6f:	40 32 f6             	xor    %sil,%sil
180024f72:	0f b6 d0             	movzbl %al,%edx
180024f75:	84 c0                	test   %al,%al
180024f77:	74 11                	je     0x180024f8a
180024f79:	44 8a c6             	mov    %sil,%r8b
180024f7c:	49 8b cd             	mov    %r13,%rcx
180024f7f:	e8 f0 00 00 00       	call   0x180025074
180024f84:	8b f8                	mov    %eax,%edi
180024f86:	85 c0                	test   %eax,%eax
180024f88:	78 76                	js     0x180025000
180024f8a:	40 84 f6             	test   %sil,%sil
180024f8d:	74 63                	je     0x180024ff2
180024f8f:	48 8d 3d a2 68 12 00 	lea    0x1268a2(%rip),%rdi        # 0x18014b838
180024f96:	8b 4f f8             	mov    -0x8(%rdi),%ecx
180024f99:	0f 32                	rdmsr
180024f9b:	4c 8b 77 08          	mov    0x8(%rdi),%r14
180024f9f:	be 07 00 00 00       	mov    $0x7,%esi
180024fa4:	4c 8b 27             	mov    (%rdi),%r12
180024fa7:	48 c1 e2 20          	shl    $0x20,%rdx
180024fab:	48 0b c2             	or     %rdx,%rax
180024fae:	8d 6e 31             	lea    0x31(%rsi),%ebp
180024fb1:	4c 8b f8             	mov    %rax,%r15
180024fb4:	8b cd                	mov    %ebp,%ecx
180024fb6:	48 63 d6             	movslq %esi,%rdx
180024fb9:	49 0f af d6          	imul   %r14,%rdx
180024fbd:	4d 8b cf             	mov    %r15,%r9
180024fc0:	4d 8b c6             	mov    %r14,%r8
180024fc3:	49 d3 e9             	shr    %cl,%r9
180024fc6:	49 03 d4             	add    %r12,%rdx
180024fc9:	49 8b cd             	mov    %r13,%rcx
180024fcc:	e8 8b 01 00 00       	call   0x18002515c
180024fd1:	85 c0                	test   %eax,%eax
180024fd3:	78 17                	js     0x180024fec
180024fd5:	ff ce                	dec    %esi
180024fd7:	83 ed 08             	sub    $0x8,%ebp
180024fda:	79 d8                	jns    0x180024fb4
180024fdc:	48 83 ef 18          	sub    $0x18,%rdi
180024fe0:	48 8d 0d 61 67 12 00 	lea    0x126761(%rip),%rcx        # 0x18014b748
180024fe7:	48 3b f9             	cmp    %rcx,%rdi
180024fea:	7d aa                	jge    0x180024f96
180024fec:	8b f8                	mov    %eax,%edi
180024fee:	85 c0                	test   %eax,%eax
180024ff0:	78 0e                	js     0x180025000
180024ff2:	8a d3                	mov    %bl,%dl
180024ff4:	49 8b cd             	mov    %r13,%rcx
180024ff7:	e8 00 03 00 00       	call   0x1800252fc
180024ffc:	85 ff                	test   %edi,%edi
180024ffe:	79 47                	jns    0x180025047
180025000:	48 8b 05 99 00 18 00 	mov    0x180099(%rip),%rax        # 0x1801a50a0
180025007:	49 3b c5             	cmp    %r13,%rax
18002500a:	74 3b                	je     0x180025047
18002500c:	48 8b 10             	mov    (%rax),%rdx
18002500f:	48 39 42 08          	cmp    %rax,0x8(%rdx)
180025013:	75 36                	jne    0x18002504b
180025015:	48 8b 48 08          	mov    0x8(%rax),%rcx
180025019:	48 39 01             	cmp    %rax,(%rcx)
18002501c:	75 2d                	jne    0x18002504b
18002501e:	48 89 11             	mov    %rdx,(%rcx)
180025021:	48 89 4a 08          	mov    %rcx,0x8(%rdx)
180025025:	48 8b c8             	mov    %rax,%rcx
180025028:	e8 cf 4f 07 00       	call   0x180099ffc
18002502d:	48 8b 05 6c 00 18 00 	mov    0x18006c(%rip),%rax        # 0x1801a50a0
180025034:	49 3b c5             	cmp    %r13,%rax
180025037:	75 d3                	jne    0x18002500c
180025039:	4c 89 2d 68 00 18 00 	mov    %r13,0x180068(%rip)        # 0x1801a50a8
180025040:	4c 89 2d 59 00 18 00 	mov    %r13,0x180059(%rip)        # 0x1801a50a0
180025047:	8b c7                	mov    %edi,%eax
180025049:	eb 09                	jmp    0x180025054
18002504b:	b9 03 00 00 00       	mov    $0x3,%ecx
180025050:	cd 29                	int    $0x29
180025052:	33 c0                	xor    %eax,%eax
180025054:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
180025059:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
18002505e:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
180025063:	48 83 c4 30          	add    $0x30,%rsp
180025067:	41 5f                	pop    %r15
180025069:	41 5e                	pop    %r14
18002506b:	41 5d                	pop    %r13
18002506d:	41 5c                	pop    %r12
18002506f:	5f                   	pop    %rdi
180025070:	c3                   	ret
180025071:	cc                   	int3
180025072:	cc                   	int3
180025073:	cc                   	int3
180025074:	48 8b c4             	mov    %rsp,%rax
180025077:	48 89 58 08          	mov    %rbx,0x8(%rax)
18002507b:	48 89 68 10          	mov    %rbp,0x10(%rax)
18002507f:	48 89 70 18          	mov    %rsi,0x18(%rax)
180025083:	48 89 78 20          	mov    %rdi,0x20(%rax)
180025087:	41 56                	push   %r14
180025089:	48 83 ec 20          	sub    $0x20,%rsp
18002508d:	45 33 c9             	xor    %r9d,%r9d
180025090:	33 ff                	xor    %edi,%edi
180025092:	45 8a f0             	mov    %r8b,%r14b
180025095:	8b f2                	mov    %edx,%esi
180025097:	48 8b e9             	mov    %rcx,%rbp
18002509a:	85 d2                	test   %edx,%edx
18002509c:	0f 84 99 00 00 00    	je     0x18002513b
1800250a2:	4c 8b 15 ef ff 17 00 	mov    0x17ffef(%rip),%r10        # 0x1801a5098
1800250a9:	bb 00 02 00 00       	mov    $0x200,%ebx
1800250ae:	8d 4b 01             	lea    0x1(%rbx),%ecx
1800250b1:	0f 32                	rdmsr
1800250b3:	48 c1 e2 20          	shl    $0x20,%rdx
1800250b7:	49 8b ca             	mov    %r10,%rcx
1800250ba:	48 0b c2             	or     %rdx,%rax
1800250bd:	48 23 c8             	and    %rax,%rcx
1800250c0:	48 0f ba e0 0b       	bt     $0xb,%rax
1800250c5:	73 67                	jae    0x18002512e
1800250c7:	48 85 c9             	test   %rcx,%rcx
1800250ca:	74 62                	je     0x18002512e
1800250cc:	0f bc c1             	bsf    %ecx,%eax
1800250cf:	75 0a                	jne    0x1800250db
1800250d1:	48 c1 e9 20          	shr    $0x20,%rcx
1800250d5:	0f bc c1             	bsf    %ecx,%eax
1800250d8:	83 c0 20             	add    $0x20,%eax
1800250db:	8b c8                	mov    %eax,%ecx
1800250dd:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1800250e3:	49 d3 e0             	shl    %cl,%r8
1800250e6:	8b cb                	mov    %ebx,%ecx
1800250e8:	0f 32                	rdmsr
1800250ea:	48 c1 e2 20          	shl    $0x20,%rdx
1800250ee:	48 0b c2             	or     %rdx,%rax
1800250f1:	4c 23 d0             	and    %rax,%r10
1800250f4:	45 84 f6             	test   %r14b,%r14b
1800250f7:	74 19                	je     0x180025112
1800250f9:	49 81 fa 00 00 10 00 	cmp    $0x100000,%r10
180025100:	73 10                	jae    0x180025112
180025102:	49 81 c2 00 00 f0 ff 	add    $0xfffffffffff00000,%r10
180025109:	4d 03 c2             	add    %r10,%r8
18002510c:	41 ba 00 00 10 00    	mov    $0x100000,%r10d
180025112:	44 8a c8             	mov    %al,%r9b
180025115:	49 8b d2             	mov    %r10,%rdx
180025118:	48 8b cd             	mov    %rbp,%rcx
18002511b:	e8 3c 00 00 00       	call   0x18002515c
180025120:	44 8b c8             	mov    %eax,%r9d
180025123:	85 c0                	test   %eax,%eax
180025125:	78 14                	js     0x18002513b
180025127:	4c 8b 15 6a ff 17 00 	mov    0x17ff6a(%rip),%r10        # 0x1801a5098
18002512e:	ff c7                	inc    %edi
180025130:	83 c3 02             	add    $0x2,%ebx
180025133:	3b fe                	cmp    %esi,%edi
180025135:	0f 82 73 ff ff ff    	jb     0x1800250ae
18002513b:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180025140:	41 8b c1             	mov    %r9d,%eax
180025143:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
180025148:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18002514d:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
180025152:	48 83 c4 20          	add    $0x20,%rsp
180025156:	41 5e                	pop    %r14
180025158:	c3                   	ret
180025159:	cc                   	int3
18002515a:	cc                   	int3
18002515b:	cc                   	int3
18002515c:	48 8b c4             	mov    %rsp,%rax
18002515f:	48 89 58 08          	mov    %rbx,0x8(%rax)
180025163:	48 89 68 10          	mov    %rbp,0x10(%rax)
180025167:	48 89 70 18          	mov    %rsi,0x18(%rax)
18002516b:	48 89 78 20          	mov    %rdi,0x20(%rax)
18002516f:	41 54                	push   %r12
180025171:	41 56                	push   %r14
180025173:	41 57                	push   %r15
180025175:	48 83 ec 20          	sub    $0x20,%rsp
180025179:	48 8b 39             	mov    (%rcx),%rdi
18002517c:	45 8a e1             	mov    %r9b,%r12b
18002517f:	49 8b f0             	mov    %r8,%rsi
180025182:	4c 8b f2             	mov    %rdx,%r14
180025185:	4c 8b f9             	mov    %rcx,%r15
180025188:	48 3b f9             	cmp    %rcx,%rdi
18002518b:	0f 84 e3 00 00 00    	je     0x180025274
180025191:	4c 8d 05 98 65 12 00 	lea    0x126598(%rip),%r8        # 0x18014b730
180025198:	48 8b 57 10          	mov    0x10(%rdi),%rdx
18002519c:	49 8d 04 36          	lea    (%r14,%rsi,1),%rax
1800251a0:	48 8b df             	mov    %rdi,%rbx
1800251a3:	48 3b c2             	cmp    %rdx,%rax
1800251a6:	0f 86 2c 01 00 00    	jbe    0x1800252d8
1800251ac:	48 85 f6             	test   %rsi,%rsi
1800251af:	0f 84 23 01 00 00    	je     0x1800252d8
1800251b5:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
1800251b9:	48 03 ca             	add    %rdx,%rcx
1800251bc:	4c 3b f1             	cmp    %rcx,%r14
1800251bf:	0f 83 a3 00 00 00    	jae    0x180025268
1800251c5:	49 3b d6             	cmp    %r14,%rdx
1800251c8:	73 5b                	jae    0x180025225
1800251ca:	b9 28 00 00 00       	mov    $0x28,%ecx
1800251cf:	e8 7c 4c 07 00       	call   0x180099e50
1800251d4:	48 8b d8             	mov    %rax,%rbx
1800251d7:	48 85 c0             	test   %rax,%rax
1800251da:	0f 84 b2 00 00 00    	je     0x180025292
1800251e0:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
1800251e4:	49 8b d6             	mov    %r14,%rdx
1800251e7:	48 2b 57 10          	sub    0x10(%rdi),%rdx
1800251eb:	48 89 57 18          	mov    %rdx,0x18(%rdi)
1800251ef:	48 2b ca             	sub    %rdx,%rcx
1800251f2:	48 89 48 18          	mov    %rcx,0x18(%rax)
1800251f6:	4c 89 70 10          	mov    %r14,0x10(%rax)
1800251fa:	8a 4f 20             	mov    0x20(%rdi),%cl
1800251fd:	88 48 20             	mov    %cl,0x20(%rax)
180025200:	48 8b 07             	mov    (%rdi),%rax
180025203:	48 39 78 08          	cmp    %rdi,0x8(%rax)
180025207:	0f 85 b6 00 00 00    	jne    0x1800252c3
18002520d:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
180025211:	4c 8d 05 18 65 12 00 	lea    0x126518(%rip),%r8        # 0x18014b730
180025218:	48 89 03             	mov    %rax,(%rbx)
18002521b:	48 89 58 08          	mov    %rbx,0x8(%rax)
18002521f:	48 89 1f             	mov    %rbx,(%rdi)
180025222:	48 8b fb             	mov    %rbx,%rdi
180025225:	4c 39 73 10          	cmp    %r14,0x10(%rbx)
180025229:	75 40                	jne    0x18002526b
18002522b:	40 8a 6b 20          	mov    0x20(%rbx),%bpl
18002522f:	41 3a ec             	cmp    %r12b,%bpl
180025232:	74 22                	je     0x180025256
180025234:	33 c0                	xor    %eax,%eax
180025236:	49 8b c8             	mov    %r8,%rcx
180025239:	40 3a 29             	cmp    (%rcx),%bpl
18002523c:	74 14                	je     0x180025252
18002523e:	44 3a 21             	cmp    (%rcx),%r12b
180025241:	74 0f                	je     0x180025252
180025243:	ff c0                	inc    %eax
180025245:	48 ff c1             	inc    %rcx
180025248:	83 f8 06             	cmp    $0x6,%eax
18002524b:	72 ec                	jb     0x180025239
18002524d:	40 b5 07             	mov    $0x7,%bpl
180025250:	eb 04                	jmp    0x180025256
180025252:	42 8a 2c 00          	mov    (%rax,%r8,1),%bpl
180025256:	48 39 73 18          	cmp    %rsi,0x18(%rbx)
18002525a:	77 24                	ja     0x180025280
18002525c:	48 2b 73 18          	sub    0x18(%rbx),%rsi
180025260:	4c 03 73 18          	add    0x18(%rbx),%r14
180025264:	40 88 6b 20          	mov    %bpl,0x20(%rbx)
180025268:	48 8b 3f             	mov    (%rdi),%rdi
18002526b:	49 3b ff             	cmp    %r15,%rdi
18002526e:	0f 85 24 ff ff ff    	jne    0x180025198
180025274:	48 85 f6             	test   %rsi,%rsi
180025277:	74 5f                	je     0x1800252d8
180025279:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18002527e:	eb 5a                	jmp    0x1800252da
180025280:	b9 28 00 00 00       	mov    $0x28,%ecx
180025285:	e8 c6 4b 07 00       	call   0x180099e50
18002528a:	48 8b c8             	mov    %rax,%rcx
18002528d:	48 85 c0             	test   %rax,%rax
180025290:	75 07                	jne    0x180025299
180025292:	b8 9a 00 00 c0       	mov    $0xc000009a,%eax
180025297:	eb 41                	jmp    0x1800252da
180025299:	49 8d 04 36          	lea    (%r14,%rsi,1),%rax
18002529d:	48 89 41 10          	mov    %rax,0x10(%rcx)
1800252a1:	48 8b 43 18          	mov    0x18(%rbx),%rax
1800252a5:	48 2b c6             	sub    %rsi,%rax
1800252a8:	48 89 41 18          	mov    %rax,0x18(%rcx)
1800252ac:	8a 43 20             	mov    0x20(%rbx),%al
1800252af:	88 41 20             	mov    %al,0x20(%rcx)
1800252b2:	48 89 73 18          	mov    %rsi,0x18(%rbx)
1800252b6:	40 88 6b 20          	mov    %bpl,0x20(%rbx)
1800252ba:	48 8b 03             	mov    (%rbx),%rax
1800252bd:	48 39 58 08          	cmp    %rbx,0x8(%rax)
1800252c1:	74 07                	je     0x1800252ca
1800252c3:	b9 03 00 00 00       	mov    $0x3,%ecx
1800252c8:	cd 29                	int    $0x29
1800252ca:	48 89 01             	mov    %rax,(%rcx)
1800252cd:	48 89 59 08          	mov    %rbx,0x8(%rcx)
1800252d1:	48 89 48 08          	mov    %rcx,0x8(%rax)
1800252d5:	48 89 0b             	mov    %rcx,(%rbx)
1800252d8:	33 c0                	xor    %eax,%eax
1800252da:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1800252df:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1800252e4:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1800252e9:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
1800252ee:	48 83 c4 20          	add    $0x20,%rsp
1800252f2:	41 5f                	pop    %r15
1800252f4:	41 5e                	pop    %r14
1800252f6:	41 5c                	pop    %r12
1800252f8:	c3                   	ret
1800252f9:	cc                   	int3
1800252fa:	cc                   	int3
1800252fb:	cc                   	int3
1800252fc:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180025301:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
180025306:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18002530b:	57                   	push   %rdi
18002530c:	48 83 ec 20          	sub    $0x20,%rsp
180025310:	48 8b 19             	mov    (%rcx),%rbx
180025313:	40 8a ea             	mov    %dl,%bpl