140186f59:	48 63 c8             	movslq %eax,%rcx
140186f5c:	4c 23 d1             	and    %rcx,%r10
140186f5f:	49 63 c3             	movslq %r11d,%rax
140186f62:	4a 8b 14 10          	mov    (%rax,%r10,1),%rdx
140186f66:	48 8b 43 10          	mov    0x10(%rbx),%rax
140186f6a:	8b 48 08             	mov    0x8(%rax),%ecx
140186f6d:	48 8b 43 08          	mov    0x8(%rbx),%rax
140186f71:	f6 44 01 03 0f       	testb  $0xf,0x3(%rcx,%rax,1)
140186f76:	74 0b                	je     0x140186f83
140186f78:	0f b6 44 01 03       	movzbl 0x3(%rcx,%rax,1),%eax
140186f7d:	83 e0 f0             	and    $0xfffffff0,%eax
140186f80:	4c 03 c8             	add    %rax,%r9
140186f83:	4c 33 ca             	xor    %rdx,%r9
140186f86:	49 8b c9             	mov    %r9,%rcx
140186f89:	5b                   	pop    %rbx
140186f8a:	e9 41 f3 ff ff       	jmp    0x1401862d0
140186f8f:	cc                   	int3
140186f90:	48 8b c4             	mov    %rsp,%rax
140186f93:	48 89 58 08          	mov    %rbx,0x8(%rax)
140186f97:	48 89 68 10          	mov    %rbp,0x10(%rax)
140186f9b:	48 89 70 18          	mov    %rsi,0x18(%rax)
140186f9f:	48 89 78 20          	mov    %rdi,0x20(%rax)
140186fa3:	41 56                	push   %r14
140186fa5:	48 83 ec 20          	sub    $0x20,%rsp
140186fa9:	49 8b 59 38          	mov    0x38(%r9),%rbx
140186fad:	48 8b f2             	mov    %rdx,%rsi
140186fb0:	4d 8b f0             	mov    %r8,%r14
140186fb3:	48 8b e9             	mov    %rcx,%rbp
140186fb6:	49 8b d1             	mov    %r9,%rdx
140186fb9:	48 8b ce             	mov    %rsi,%rcx
140186fbc:	49 8b f9             	mov    %r9,%rdi
140186fbf:	4c 8d 43 04          	lea    0x4(%rbx),%r8
140186fc3:	e8 6c ff ff ff       	call   0x140186f34
140186fc8:	8b 45 04             	mov    0x4(%rbp),%eax
140186fcb:	24 66                	and    $0x66,%al
140186fcd:	f6 d8                	neg    %al
140186fcf:	b8 01 00 00 00       	mov    $0x1,%eax
140186fd4:	45 1b c0             	sbb    %r8d,%r8d
140186fd7:	41 f7 d8             	neg    %r8d
140186fda:	44 03 c0             	add    %eax,%r8d
140186fdd:	44 85 43 04          	test   %r8d,0x4(%rbx)
140186fe1:	74 11                	je     0x140186ff4
140186fe3:	4c 8b cf             	mov    %rdi,%r9
140186fe6:	4d 8b c6             	mov    %r14,%r8
140186fe9:	48 8b d6             	mov    %rsi,%rdx
140186fec:	48 8b cd             	mov    %rbp,%rcx
140186fef:	e8 9c 0e 00 00       	call   0x140187e90
140186ff4:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140186ff9:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140186ffe:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140187003:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
140187008:	48 83 c4 20          	add    $0x20,%rsp
14018700c:	41 5e                	pop    %r14
14018700e:	c3                   	ret
14018700f:	cc                   	int3
140187010:	cc                   	int3
140187011:	cc                   	int3
140187012:	cc                   	int3
140187013:	cc                   	int3
140187014:	cc                   	int3
140187015:	cc                   	int3
140187016:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14018701d:	00 00 00
140187020:	48 83 ec 10          	sub    $0x10,%rsp
140187024:	4c 89 14 24          	mov    %r10,(%rsp)
140187028:	4c 89 5c 24 08       	mov    %r11,0x8(%rsp)
14018702d:	4d 33 db             	xor    %r11,%r11
140187030:	4c 8d 54 24 18       	lea    0x18(%rsp),%r10
140187035:	4c 2b d0             	sub    %rax,%r10
140187038:	4d 0f 42 d3          	cmovb  %r11,%r10
14018703c:	65 4c 8b 1c 25 10 00 	mov    %gs:0x10,%r11
140187043:	00 00
140187045:	4d 3b d3             	cmp    %r11,%r10
140187048:	73 16                	jae    0x140187060
14018704a:	66 41 81 e2 00 f0    	and    $0xf000,%r10w
140187050:	4d 8d 9b 00 f0 ff ff 	lea    -0x1000(%r11),%r11
140187057:	41 c6 03 00          	movb   $0x0,(%r11)
14018705b:	4d 3b d3             	cmp    %r11,%r10
14018705e:	75 f0                	jne    0x140187050
140187060:	4c 8b 14 24          	mov    (%rsp),%r10
140187064:	4c 8b 5c 24 08       	mov    0x8(%rsp),%r11
140187069:	48 83 c4 10          	add    $0x10,%rsp
14018706d:	c3                   	ret
14018706e:	cc                   	int3
14018706f:	cc                   	int3
140187070:	48 83 ec 48          	sub    $0x48,%rsp
140187074:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140187079:	e8 7e 09 fe ff       	call   0x1401679fc
14018707e:	48 8d 15 3b 1c 12 00 	lea    0x121c3b(%rip),%rdx        # 0x1402a8cc0
140187085:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14018708a:	e8 29 1c 00 00       	call   0x140188cb8
14018708f:	cc                   	int3
140187090:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140187095:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14018709a:	57                   	push   %rdi
14018709b:	48 83 ec 10          	sub    $0x10,%rsp
14018709f:	33 c0                	xor    %eax,%eax
1401870a1:	33 c9                	xor    %ecx,%ecx
1401870a3:	0f a2                	cpuid
1401870a5:	44 8b c1             	mov    %ecx,%r8d
1401870a8:	45 33 db             	xor    %r11d,%r11d
1401870ab:	44 8b cb             	mov    %ebx,%r9d
1401870ae:	41 81 f0 6e 74 65 6c 	xor    $0x6c65746e,%r8d
1401870b5:	41 81 f1 47 65 6e 75 	xor    $0x756e6547,%r9d
1401870bc:	44 8b d2             	mov    %edx,%r10d
1401870bf:	8b f0                	mov    %eax,%esi
1401870c1:	33 c9                	xor    %ecx,%ecx
1401870c3:	41 8d 43 01          	lea    0x1(%r11),%eax
1401870c7:	45 0b c8             	or     %r8d,%r9d
1401870ca:	0f a2                	cpuid
1401870cc:	41 81 f2 69 6e 65 49 	xor    $0x49656e69,%r10d
1401870d3:	89 04 24             	mov    %eax,(%rsp)
1401870d6:	45 0b ca             	or     %r10d,%r9d
1401870d9:	89 5c 24 04          	mov    %ebx,0x4(%rsp)
1401870dd:	8b f9                	mov    %ecx,%edi
1401870df:	89 4c 24 08          	mov    %ecx,0x8(%rsp)
1401870e3:	89 54 24 0c          	mov    %edx,0xc(%rsp)
1401870e7:	75 50                	jne    0x140187139
1401870e9:	48 83 0d 97 41 12 00 	orq    $0xffffffffffffffff,0x124197(%rip)        # 0x1402ab288
1401870f0:	ff
1401870f1:	25 f0 3f ff 0f       	and    $0xfff3ff0,%eax
1401870f6:	3d c0 06 01 00       	cmp    $0x106c0,%eax
1401870fb:	74 28                	je     0x140187125
1401870fd:	3d 60 06 02 00       	cmp    $0x20660,%eax
140187102:	74 21                	je     0x140187125
140187104:	3d 70 06 02 00       	cmp    $0x20670,%eax
140187109:	74 1a                	je     0x140187125
14018710b:	05 b0 f9 fc ff       	add    $0xfffcf9b0,%eax
140187110:	83 f8 20             	cmp    $0x20,%eax
140187113:	77 24                	ja     0x140187139
140187115:	48 b9 01 00 01 00 01 	movabs $0x100010001,%rcx
14018711c:	00 00 00
14018711f:	48 0f a3 c1          	bt     %rax,%rcx
140187123:	73 14                	jae    0x140187139
140187125:	44 8b 05 4c 60 19 00 	mov    0x19604c(%rip),%r8d        # 0x14031d178
14018712c:	41 83 c8 01          	or     $0x1,%r8d
140187130:	44 89 05 41 60 19 00 	mov    %r8d,0x196041(%rip)        # 0x14031d178
140187137:	eb 07                	jmp    0x140187140
140187139:	44 8b 05 38 60 19 00 	mov    0x196038(%rip),%r8d        # 0x14031d178
140187140:	b8 07 00 00 00       	mov    $0x7,%eax
140187145:	44 8d 48 fb          	lea    -0x5(%rax),%r9d
140187149:	3b f0                	cmp    %eax,%esi
14018714b:	7c 26                	jl     0x140187173
14018714d:	33 c9                	xor    %ecx,%ecx
14018714f:	0f a2                	cpuid
140187151:	89 04 24             	mov    %eax,(%rsp)
140187154:	44 8b db             	mov    %ebx,%r11d
140187157:	89 5c 24 04          	mov    %ebx,0x4(%rsp)
14018715b:	89 4c 24 08          	mov    %ecx,0x8(%rsp)
14018715f:	89 54 24 0c          	mov    %edx,0xc(%rsp)
140187163:	0f ba e3 09          	bt     $0x9,%ebx
140187167:	73 0a                	jae    0x140187173
140187169:	45 0b c1             	or     %r9d,%r8d
14018716c:	44 89 05 05 60 19 00 	mov    %r8d,0x196005(%rip)        # 0x14031d178
140187173:	c7 05 03 41 12 00 01 	movl   $0x1,0x124103(%rip)        # 0x1402ab280
14018717a:	00 00 00
14018717d:	44 89 0d 00 41 12 00 	mov    %r9d,0x124100(%rip)        # 0x1402ab284
140187184:	0f ba e7 14          	bt     $0x14,%edi
140187188:	0f 83 91 00 00 00    	jae    0x14018721f
14018718e:	44 89 0d eb 40 12 00 	mov    %r9d,0x1240eb(%rip)        # 0x1402ab280
140187195:	bb 06 00 00 00       	mov    $0x6,%ebx
14018719a:	89 1d e4 40 12 00    	mov    %ebx,0x1240e4(%rip)        # 0x1402ab284
1401871a0:	0f ba e7 1b          	bt     $0x1b,%edi
1401871a4:	73 79                	jae    0x14018721f
1401871a6:	0f ba e7 1c          	bt     $0x1c,%edi
1401871aa:	73 73                	jae    0x14018721f
1401871ac:	33 c9                	xor    %ecx,%ecx
1401871ae:	0f 01 d0             	xgetbv
1401871b1:	48 c1 e2 20          	shl    $0x20,%rdx
1401871b5:	48 0b d0             	or     %rax,%rdx
1401871b8:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
1401871bd:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
1401871c2:	22 c3                	and    %bl,%al
1401871c4:	3a c3                	cmp    %bl,%al
1401871c6:	75 57                	jne    0x14018721f
1401871c8:	8b 05 b6 40 12 00    	mov    0x1240b6(%rip),%eax        # 0x1402ab284
1401871ce:	83 c8 08             	or     $0x8,%eax
1401871d1:	c7 05 a5 40 12 00 03 	movl   $0x3,0x1240a5(%rip)        # 0x1402ab280
1401871d8:	00 00 00
1401871db:	89 05 a3 40 12 00    	mov    %eax,0x1240a3(%rip)        # 0x1402ab284
1401871e1:	41 f6 c3 20          	test   $0x20,%r11b
1401871e5:	74 38                	je     0x14018721f
1401871e7:	83 c8 20             	or     $0x20,%eax
1401871ea:	c7 05 8c 40 12 00 05 	movl   $0x5,0x12408c(%rip)        # 0x1402ab280
1401871f1:	00 00 00
1401871f4:	89 05 8a 40 12 00    	mov    %eax,0x12408a(%rip)        # 0x1402ab284
1401871fa:	b8 00 00 03 d0       	mov    $0xd0030000,%eax
1401871ff:	44 23 d8             	and    %eax,%r11d
140187202:	44 3b d8             	cmp    %eax,%r11d
140187205:	75 18                	jne    0x14018721f
140187207:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
14018720c:	24 e0                	and    $0xe0,%al
14018720e:	3c e0                	cmp    $0xe0,%al
140187210:	75 0d                	jne    0x14018721f
140187212:	83 0d 6b 40 12 00 40 	orl    $0x40,0x12406b(%rip)        # 0x1402ab284
140187219:	89 1d 61 40 12 00    	mov    %ebx,0x124061(%rip)        # 0x1402ab280
14018721f:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
140187224:	33 c0                	xor    %eax,%eax
140187226:	48 8b 74 24 30       	mov    0x30(%rsp),%rsi
14018722b:	48 83 c4 10          	add    $0x10,%rsp
14018722f:	5f                   	pop    %rdi
140187230:	c3                   	ret
140187231:	cc                   	int3
140187232:	cc                   	int3
140187233:	cc                   	int3
140187234:	33 c0                	xor    %eax,%eax
140187236:	39 05 84 bd 19 00    	cmp    %eax,0x19bd84(%rip)        # 0x140322fc0
14018723c:	0f 95 c0             	setne  %al
14018723f:	c3                   	ret
140187240:	83 25 35 5f 19 00 00 	andl   $0x0,0x195f35(%rip)        # 0x14031d17c
140187247:	c3                   	ret
140187248:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14018724d:	55                   	push   %rbp
14018724e:	48 8d ac 24 40 fb ff 	lea    -0x4c0(%rsp),%rbp
140187255:	ff
140187256:	48 81 ec c0 05 00 00 	sub    $0x5c0,%rsp
14018725d:	8b d9                	mov    %ecx,%ebx
14018725f:	b9 17 00 00 00       	mov    $0x17,%ecx
140187264:	ff 15 fe 70 07 00    	call   *0x770fe(%rip)        # 0x1401fe368
14018726a:	85 c0                	test   %eax,%eax
14018726c:	74 04                	je     0x140187272
14018726e:	8b cb                	mov    %ebx,%ecx
140187270:	cd 29                	int    $0x29
140187272:	b9 03 00 00 00       	mov    $0x3,%ecx
140187277:	e8 c4 ff ff ff       	call   0x140187240
14018727c:	33 d2                	xor    %edx,%edx
14018727e:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
140187282:	41 b8 d0 04 00 00    	mov    $0x4d0,%r8d
140187288:	e8 e3 17 00 00       	call   0x140188a70
14018728d:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
140187291:	ff 15 e1 6f 07 00    	call   *0x76fe1(%rip)        # 0x1401fe278
140187297:	48 8b 9d e8 00 00 00 	mov    0xe8(%rbp),%rbx
14018729e:	48 8d 95 d8 04 00 00 	lea    0x4d8(%rbp),%rdx
1401872a5:	48 8b cb             	mov    %rbx,%rcx
1401872a8:	45 33 c0             	xor    %r8d,%r8d
1401872ab:	ff 15 bf 6f 07 00    	call   *0x76fbf(%rip)        # 0x1401fe270
1401872b1:	48 85 c0             	test   %rax,%rax
1401872b4:	74 3c                	je     0x1401872f2
1401872b6:	48 83 64 24 38 00    	andq   $0x0,0x38(%rsp)
1401872bc:	48 8d 8d e0 04 00 00 	lea    0x4e0(%rbp),%rcx
1401872c3:	48 8b 95 d8 04 00 00 	mov    0x4d8(%rbp),%rdx
1401872ca:	4c 8b c8             	mov    %rax,%r9
1401872cd:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
1401872d2:	4c 8b c3             	mov    %rbx,%r8
1401872d5:	48 8d 8d e8 04 00 00 	lea    0x4e8(%rbp),%rcx
1401872dc:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
1401872e1:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
1401872e5:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1401872ea:	33 c9                	xor    %ecx,%ecx
1401872ec:	ff 15 76 6f 07 00    	call   *0x76f76(%rip)        # 0x1401fe268
1401872f2:	48 8b 85 c8 04 00 00 	mov    0x4c8(%rbp),%rax
1401872f9:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
1401872fe:	48 89 85 e8 00 00 00 	mov    %rax,0xe8(%rbp)
140187305:	33 d2                	xor    %edx,%edx
140187307:	48 8d 85 c8 04 00 00 	lea    0x4c8(%rbp),%rax
14018730e:	41 b8 98 00 00 00    	mov    $0x98,%r8d
140187314:	48 83 c0 08          	add    $0x8,%rax
140187318:	48 89 85 88 00 00 00 	mov    %rax,0x88(%rbp)
14018731f:	e8 4c 17 00 00       	call   0x140188a70
140187324:	48 8b 85 c8 04 00 00 	mov    0x4c8(%rbp),%rax
14018732b:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
140187330:	c7 44 24 50 15 00 00 	movl   $0x40000015,0x50(%rsp)
140187337:	40
140187338:	c7 44 24 54 01 00 00 	movl   $0x1,0x54(%rsp)
14018733f:	00
140187340:	ff 15 0a 6f 07 00    	call   *0x76f0a(%rip)        # 0x1401fe250
140187346:	83 f8 01             	cmp    $0x1,%eax
140187349:	48 8d 44 24 50       	lea    0x50(%rsp),%rax
14018734e:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140187353:	48 8d 45 f0          	lea    -0x10(%rbp),%rax
140187357:	0f 94 c3             	sete   %bl
14018735a:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
14018735f:	33 c9                	xor    %ecx,%ecx
140187361:	ff 15 f1 6e 07 00    	call   *0x76ef1(%rip)        # 0x1401fe258
140187367:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
14018736c:	ff 15 ee 6e 07 00    	call   *0x76eee(%rip)        # 0x1401fe260
140187372:	85 c0                	test   %eax,%eax
140187374:	75 0c                	jne    0x140187382
140187376:	84 db                	test   %bl,%bl
140187378:	75 08                	jne    0x140187382
14018737a:	8d 48 03             	lea    0x3(%rax),%ecx
14018737d:	e8 be fe ff ff       	call   0x140187240
140187382:	48 8b 9c 24 d0 05 00 	mov    0x5d0(%rsp),%rbx
140187389:	00
14018738a:	48 81 c4 c0 05 00 00 	add    $0x5c0,%rsp
140187391:	5d                   	pop    %rbp
140187392:	c3                   	ret
140187393:	cc                   	int3
140187394:	48 81 ec 98 00 00 00 	sub    $0x98,%rsp
14018739b:	33 d2                	xor    %edx,%edx
14018739d:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1401873a2:	44 8d 42 68          	lea    0x68(%rdx),%r8d
1401873a6:	e8 c5 16 00 00       	call   0x140188a70
1401873ab:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1401873b0:	ff 15 92 6e 07 00    	call   *0x76e92(%rip)        # 0x1401fe248
1401873b6:	f6 44 24 5c 01       	testb  $0x1,0x5c(%rsp)
1401873bb:	b8 0a 00 00 00       	mov    $0xa,%eax
1401873c0:	66 0f 45 44 24 60    	cmovne 0x60(%rsp),%ax
1401873c6:	48 81 c4 98 00 00 00 	add    $0x98,%rsp
1401873cd:	c3                   	ret
1401873ce:	cc                   	int3
1401873cf:	cc                   	int3
1401873d0:	e9 0b f5 f3 ff       	jmp    0x1400c68e0
1401873d5:	cc                   	int3
1401873d6:	cc                   	int3
1401873d7:	cc                   	int3
1401873d8:	48 83 ec 28          	sub    $0x28,%rsp
1401873dc:	33 c9                	xor    %ecx,%ecx
1401873de:	ff 15 fc 6c 07 00    	call   *0x76cfc(%rip)        # 0x1401fe0e0
1401873e4:	48 85 c0             	test   %rax,%rax
1401873e7:	74 3a                	je     0x140187423
1401873e9:	b9 4d 5a 00 00       	mov    $0x5a4d,%ecx
1401873ee:	66 39 08             	cmp    %cx,(%rax)
1401873f1:	75 30                	jne    0x140187423
1401873f3:	48 63 48 3c          	movslq 0x3c(%rax),%rcx
1401873f7:	48 03 c8             	add    %rax,%rcx
1401873fa:	81 39 50 45 00 00    	cmpl   $0x4550,(%rcx)
140187400:	75 21                	jne    0x140187423
140187402:	b8 0b 02 00 00       	mov    $0x20b,%eax
140187407:	66 39 41 18          	cmp    %ax,0x18(%rcx)
14018740b:	75 16                	jne    0x140187423
14018740d:	83 b9 84 00 00 00 0e 	cmpl   $0xe,0x84(%rcx)
140187414:	76 0d                	jbe    0x140187423
140187416:	83 b9 f8 00 00 00 00 	cmpl   $0x0,0xf8(%rcx)
14018741d:	74 04                	je     0x140187423
14018741f:	b0 01                	mov    $0x1,%al
140187421:	eb 02                	jmp    0x140187425
140187423:	32 c0                	xor    %al,%al
140187425:	48 83 c4 28          	add    $0x28,%rsp
140187429:	c3                   	ret
14018742a:	cc                   	int3
14018742b:	cc                   	int3
14018742c:	48 8d 0d 09 00 00 00 	lea    0x9(%rip),%rcx        # 0x14018743c
140187433:	48 ff 25 1e 6e 07 00 	rex.W jmp *0x76e1e(%rip)        # 0x1401fe258
14018743a:	cc                   	int3
14018743b:	cc                   	int3
14018743c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140187441:	57                   	push   %rdi
140187442:	48 83 ec 20          	sub    $0x20,%rsp
140187446:	48 8b 19             	mov    (%rcx),%rbx
140187449:	48 8b f9             	mov    %rcx,%rdi
14018744c:	81 3b 63 73 6d e0    	cmpl   $0xe06d7363,(%rbx)
140187452:	75 1c                	jne    0x140187470
140187454:	83 7b 18 04          	cmpl   $0x4,0x18(%rbx)
140187458:	75 16                	jne    0x140187470
14018745a:	8b 53 20             	mov    0x20(%rbx),%edx
14018745d:	8d 82 e0 fa 6c e6    	lea    -0x19930520(%rdx),%eax
140187463:	83 f8 02             	cmp    $0x2,%eax
140187466:	76 15                	jbe    0x14018747d
140187468:	81 fa 00 40 99 01    	cmp    $0x1994000,%edx