140004298:	48 83 c3 08          	add    $0x8,%rbx
14000429c:	48 3b df             	cmp    %rdi,%rbx
14000429f:	72 e9                	jb     0x14000428a
1400042a1:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400042a6:	48 83 c4 20          	add    $0x20,%rsp
1400042aa:	5f                   	pop    %rdi
1400042ab:	c3                   	ret
1400042ac:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1400042b1:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1400042b6:	57                   	push   %rdi
1400042b7:	48 83 ec 10          	sub    $0x10,%rsp
1400042bb:	33 c0                	xor    %eax,%eax
1400042bd:	33 c9                	xor    %ecx,%ecx
1400042bf:	0f a2                	cpuid
1400042c1:	44 8b c1             	mov    %ecx,%r8d
1400042c4:	45 33 db             	xor    %r11d,%r11d
1400042c7:	44 8b cb             	mov    %ebx,%r9d
1400042ca:	41 81 f0 6e 74 65 6c 	xor    $0x6c65746e,%r8d
1400042d1:	41 81 f1 47 65 6e 75 	xor    $0x756e6547,%r9d
1400042d8:	44 8b d2             	mov    %edx,%r10d
1400042db:	8b f0                	mov    %eax,%esi
1400042dd:	33 c9                	xor    %ecx,%ecx
1400042df:	41 8d 43 01          	lea    0x1(%r11),%eax
1400042e3:	45 0b c8             	or     %r8d,%r9d
1400042e6:	0f a2                	cpuid
1400042e8:	41 81 f2 69 6e 65 49 	xor    $0x49656e69,%r10d
1400042ef:	89 04 24             	mov    %eax,(%rsp)
1400042f2:	45 0b ca             	or     %r10d,%r9d
1400042f5:	89 5c 24 04          	mov    %ebx,0x4(%rsp)
1400042f9:	8b f9                	mov    %ecx,%edi
1400042fb:	89 4c 24 08          	mov    %ecx,0x8(%rsp)
1400042ff:	89 54 24 0c          	mov    %edx,0xc(%rsp)
140004303:	75 50                	jne    0x140004355
140004305:	48 83 0d 13 3d 00 00 	orq    $0xffffffffffffffff,0x3d13(%rip)        # 0x140008020
14000430c:	ff
14000430d:	25 f0 3f ff 0f       	and    $0xfff3ff0,%eax
140004312:	3d c0 06 01 00       	cmp    $0x106c0,%eax
140004317:	74 28                	je     0x140004341
140004319:	3d 60 06 02 00       	cmp    $0x20660,%eax
14000431e:	74 21                	je     0x140004341
140004320:	3d 70 06 02 00       	cmp    $0x20670,%eax
140004325:	74 1a                	je     0x140004341
140004327:	05 b0 f9 fc ff       	add    $0xfffcf9b0,%eax
14000432c:	83 f8 20             	cmp    $0x20,%eax
14000432f:	77 24                	ja     0x140004355
140004331:	48 b9 01 00 01 00 01 	movabs $0x100010001,%rcx
140004338:	00 00 00
14000433b:	48 0f a3 c1          	bt     %rax,%rcx
14000433f:	73 14                	jae    0x140004355
140004341:	44 8b 05 50 46 00 00 	mov    0x4650(%rip),%r8d        # 0x140008998
140004348:	41 83 c8 01          	or     $0x1,%r8d
14000434c:	44 89 05 45 46 00 00 	mov    %r8d,0x4645(%rip)        # 0x140008998
140004353:	eb 07                	jmp    0x14000435c
140004355:	44 8b 05 3c 46 00 00 	mov    0x463c(%rip),%r8d        # 0x140008998
14000435c:	b8 07 00 00 00       	mov    $0x7,%eax
140004361:	44 8d 48 fb          	lea    -0x5(%rax),%r9d
140004365:	3b f0                	cmp    %eax,%esi
140004367:	7c 26                	jl     0x14000438f
140004369:	33 c9                	xor    %ecx,%ecx
14000436b:	0f a2                	cpuid
14000436d:	89 04 24             	mov    %eax,(%rsp)
140004370:	44 8b db             	mov    %ebx,%r11d
140004373:	89 5c 24 04          	mov    %ebx,0x4(%rsp)
140004377:	89 4c 24 08          	mov    %ecx,0x8(%rsp)
14000437b:	89 54 24 0c          	mov    %edx,0xc(%rsp)
14000437f:	0f ba e3 09          	bt     $0x9,%ebx
140004383:	73 0a                	jae    0x14000438f
140004385:	45 0b c1             	or     %r9d,%r8d
140004388:	44 89 05 09 46 00 00 	mov    %r8d,0x4609(%rip)        # 0x140008998
14000438f:	c7 05 7f 3c 00 00 01 	movl   $0x1,0x3c7f(%rip)        # 0x140008018
140004396:	00 00 00
140004399:	44 89 0d 7c 3c 00 00 	mov    %r9d,0x3c7c(%rip)        # 0x14000801c
1400043a0:	0f ba e7 14          	bt     $0x14,%edi
1400043a4:	0f 83 91 00 00 00    	jae    0x14000443b
1400043aa:	44 89 0d 67 3c 00 00 	mov    %r9d,0x3c67(%rip)        # 0x140008018
1400043b1:	bb 06 00 00 00       	mov    $0x6,%ebx
1400043b6:	89 1d 60 3c 00 00    	mov    %ebx,0x3c60(%rip)        # 0x14000801c
1400043bc:	0f ba e7 1b          	bt     $0x1b,%edi
1400043c0:	73 79                	jae    0x14000443b
1400043c2:	0f ba e7 1c          	bt     $0x1c,%edi
1400043c6:	73 73                	jae    0x14000443b
1400043c8:	33 c9                	xor    %ecx,%ecx
1400043ca:	0f 01 d0             	xgetbv
1400043cd:	48 c1 e2 20          	shl    $0x20,%rdx
1400043d1:	48 0b d0             	or     %rax,%rdx
1400043d4:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
1400043d9:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
1400043de:	22 c3                	and    %bl,%al
1400043e0:	3a c3                	cmp    %bl,%al
1400043e2:	75 57                	jne    0x14000443b
1400043e4:	8b 05 32 3c 00 00    	mov    0x3c32(%rip),%eax        # 0x14000801c
1400043ea:	83 c8 08             	or     $0x8,%eax
1400043ed:	c7 05 21 3c 00 00 03 	movl   $0x3,0x3c21(%rip)        # 0x140008018
1400043f4:	00 00 00
1400043f7:	89 05 1f 3c 00 00    	mov    %eax,0x3c1f(%rip)        # 0x14000801c
1400043fd:	41 f6 c3 20          	test   $0x20,%r11b
140004401:	74 38                	je     0x14000443b
140004403:	83 c8 20             	or     $0x20,%eax
140004406:	c7 05 08 3c 00 00 05 	movl   $0x5,0x3c08(%rip)        # 0x140008018
14000440d:	00 00 00
140004410:	89 05 06 3c 00 00    	mov    %eax,0x3c06(%rip)        # 0x14000801c
140004416:	b8 00 00 03 d0       	mov    $0xd0030000,%eax
14000441b:	44 23 d8             	and    %eax,%r11d
14000441e:	44 3b d8             	cmp    %eax,%r11d
140004421:	75 18                	jne    0x14000443b
140004423:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
140004428:	24 e0                	and    $0xe0,%al
14000442a:	3c e0                	cmp    $0xe0,%al
14000442c:	75 0d                	jne    0x14000443b
14000442e:	83 0d e7 3b 00 00 40 	orl    $0x40,0x3be7(%rip)        # 0x14000801c
140004435:	89 1d dd 3b 00 00    	mov    %ebx,0x3bdd(%rip)        # 0x140008018
14000443b:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
140004440:	33 c0                	xor    %eax,%eax
140004442:	48 8b 74 24 30       	mov    0x30(%rsp),%rsi
140004447:	48 83 c4 10          	add    $0x10,%rsp
14000444b:	5f                   	pop    %rdi
14000444c:	c3                   	ret
14000444d:	cc                   	int3
14000444e:	cc                   	int3
14000444f:	cc                   	int3
140004450:	33 c0                	xor    %eax,%eax
140004452:	39 05 d8 3b 00 00    	cmp    %eax,0x3bd8(%rip)        # 0x140008030
140004458:	0f 95 c0             	setne  %al
14000445b:	c3                   	ret
14000445c:	cc                   	int3
14000445d:	cc                   	int3
14000445e:	cc                   	int3
14000445f:	cc                   	int3
140004460:	ff 25 72 0e 00 00    	jmp    *0xe72(%rip)        # 0x1400052d8
140004466:	ff 25 44 0e 00 00    	jmp    *0xe44(%rip)        # 0x1400052b0
14000446c:	ff 25 36 0e 00 00    	jmp    *0xe36(%rip)        # 0x1400052a8
140004472:	ff 25 28 0e 00 00    	jmp    *0xe28(%rip)        # 0x1400052a0
140004478:	ff 25 1a 0e 00 00    	jmp    *0xe1a(%rip)        # 0x140005298
14000447e:	ff 25 0c 0e 00 00    	jmp    *0xe0c(%rip)        # 0x140005290
140004484:	ff 25 36 0e 00 00    	jmp    *0xe36(%rip)        # 0x1400052c0
14000448a:	ff 25 28 0e 00 00    	jmp    *0xe28(%rip)        # 0x1400052b8
140004490:	ff 25 ea 0d 00 00    	jmp    *0xdea(%rip)        # 0x140005280
140004496:	ff 25 ec 0d 00 00    	jmp    *0xdec(%rip)        # 0x140005288
14000449c:	ff 25 1e 0f 00 00    	jmp    *0xf1e(%rip)        # 0x1400053c0
1400044a2:	ff 25 60 0e 00 00    	jmp    *0xe60(%rip)        # 0x140005308
1400044a8:	ff 25 52 0e 00 00    	jmp    *0xe52(%rip)        # 0x140005300
1400044ae:	ff 25 b4 0e 00 00    	jmp    *0xeb4(%rip)        # 0x140005368
1400044b4:	ff 25 8e 0e 00 00    	jmp    *0xe8e(%rip)        # 0x140005348
1400044ba:	ff 25 70 0e 00 00    	jmp    *0xe70(%rip)        # 0x140005330
1400044c0:	ff 25 ea 0e 00 00    	jmp    *0xeea(%rip)        # 0x1400053b0
1400044c6:	ff 25 d4 0e 00 00    	jmp    *0xed4(%rip)        # 0x1400053a0
1400044cc:	ff 25 b6 0e 00 00    	jmp    *0xeb6(%rip)        # 0x140005388
1400044d2:	ff 25 a8 0e 00 00    	jmp    *0xea8(%rip)        # 0x140005380
1400044d8:	ff 25 7a 0e 00 00    	jmp    *0xe7a(%rip)        # 0x140005358
1400044de:	ff 25 6c 0e 00 00    	jmp    *0xe6c(%rip)        # 0x140005350
1400044e4:	ff 25 06 0f 00 00    	jmp    *0xf06(%rip)        # 0x1400053f0
1400044ea:	ff 25 50 0e 00 00    	jmp    *0xe50(%rip)        # 0x140005340
1400044f0:	ff 25 b2 0e 00 00    	jmp    *0xeb2(%rip)        # 0x1400053a8
1400044f6:	ff 25 94 0e 00 00    	jmp    *0xe94(%rip)        # 0x140005390
1400044fc:	ff 25 1e 0e 00 00    	jmp    *0xe1e(%rip)        # 0x140005320
140004502:	ff 25 08 0e 00 00    	jmp    *0xe08(%rip)        # 0x140005310
140004508:	ff 25 d2 0e 00 00    	jmp    *0xed2(%rip)        # 0x1400053e0
14000450e:	ff 25 e4 0d 00 00    	jmp    *0xde4(%rip)        # 0x1400052f8
140004514:	ff 25 46 0e 00 00    	jmp    *0xe46(%rip)        # 0x140005360
14000451a:	ff 25 78 0e 00 00    	jmp    *0xe78(%rip)        # 0x140005398
140004520:	ff 25 4a 0e 00 00    	jmp    *0xe4a(%rip)        # 0x140005370
140004526:	ff 25 4c 0e 00 00    	jmp    *0xe4c(%rip)        # 0x140005378
14000452c:	48 83 ec 28          	sub    $0x28,%rsp
140004530:	4d 8b 41 38          	mov    0x38(%r9),%r8
140004534:	48 8b ca             	mov    %rdx,%rcx
140004537:	49 8b d1             	mov    %r9,%rdx
14000453a:	e8 0d 00 00 00       	call   0x14000454c
14000453f:	b8 01 00 00 00       	mov    $0x1,%eax
140004544:	48 83 c4 28          	add    $0x28,%rsp
140004548:	c3                   	ret
140004549:	cc                   	int3
14000454a:	cc                   	int3
14000454b:	cc                   	int3
14000454c:	40 53                	rex push %rbx
14000454e:	45 8b 18             	mov    (%r8),%r11d
140004551:	48 8b da             	mov    %rdx,%rbx
140004554:	41 83 e3 f8          	and    $0xfffffff8,%r11d
140004558:	4c 8b c9             	mov    %rcx,%r9
14000455b:	41 f6 00 04          	testb  $0x4,(%r8)
14000455f:	4c 8b d1             	mov    %rcx,%r10
140004562:	74 13                	je     0x140004577
140004564:	41 8b 40 08          	mov    0x8(%r8),%eax
140004568:	4d 63 50 04          	movslq 0x4(%r8),%r10
14000456c:	f7 d8                	neg    %eax
14000456e:	4c 03 d1             	add    %rcx,%r10
140004571:	48 63 c8             	movslq %eax,%rcx
140004574:	4c 23 d1             	and    %rcx,%r10
140004577:	49 63 c3             	movslq %r11d,%rax
14000457a:	4a 8b 14 10          	mov    (%rax,%r10,1),%rdx
14000457e:	48 8b 43 10          	mov    0x10(%rbx),%rax
140004582:	8b 48 08             	mov    0x8(%rax),%ecx
140004585:	48 8b 43 08          	mov    0x8(%rbx),%rax
140004589:	f6 44 01 03 0f       	testb  $0xf,0x3(%rcx,%rax,1)
14000458e:	74 0b                	je     0x14000459b
140004590:	0f b6 44 01 03       	movzbl 0x3(%rcx,%rax,1),%eax
140004595:	83 e0 f0             	and    $0xfffffff0,%eax
140004598:	4c 03 c8             	add    %rax,%r9
14000459b:	4c 33 ca             	xor    %rdx,%r9
14000459e:	49 8b c9             	mov    %r9,%rcx
1400045a1:	5b                   	pop    %rbx
1400045a2:	e9 b9 f0 ff ff       	jmp    0x140003660
1400045a7:	cc                   	int3
1400045a8:	48 8b c4             	mov    %rsp,%rax
1400045ab:	48 89 58 08          	mov    %rbx,0x8(%rax)
1400045af:	48 89 68 10          	mov    %rbp,0x10(%rax)
1400045b3:	48 89 70 18          	mov    %rsi,0x18(%rax)
1400045b7:	48 89 78 20          	mov    %rdi,0x20(%rax)
1400045bb:	41 56                	push   %r14
1400045bd:	48 83 ec 20          	sub    $0x20,%rsp
1400045c1:	49 8b 59 38          	mov    0x38(%r9),%rbx
1400045c5:	48 8b f2             	mov    %rdx,%rsi
1400045c8:	4d 8b f0             	mov    %r8,%r14
1400045cb:	48 8b e9             	mov    %rcx,%rbp
1400045ce:	49 8b d1             	mov    %r9,%rdx
1400045d1:	48 8b ce             	mov    %rsi,%rcx
1400045d4:	49 8b f9             	mov    %r9,%rdi
1400045d7:	4c 8d 43 04          	lea    0x4(%rbx),%r8
1400045db:	e8 6c ff ff ff       	call   0x14000454c
1400045e0:	8b 45 04             	mov    0x4(%rbp),%eax
1400045e3:	24 66                	and    $0x66,%al
1400045e5:	f6 d8                	neg    %al
1400045e7:	b8 01 00 00 00       	mov    $0x1,%eax
1400045ec:	45 1b c0             	sbb    %r8d,%r8d
1400045ef:	41 f7 d8             	neg    %r8d
1400045f2:	44 03 c0             	add    %eax,%r8d
1400045f5:	44 85 43 04          	test   %r8d,0x4(%rbx)
1400045f9:	74 11                	je     0x14000460c
1400045fb:	4c 8b cf             	mov    %rdi,%r9
1400045fe:	4d 8b c6             	mov    %r14,%r8
140004601:	48 8b d6             	mov    %rsi,%rdx
140004604:	48 8b cd             	mov    %rbp,%rcx
140004607:	e8 54 fe ff ff       	call   0x140004460
14000460c:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140004611:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140004616:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14000461b:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
140004620:	48 83 c4 20          	add    $0x20,%rsp
140004624:	41 5e                	pop    %r14
140004626:	c3                   	ret
140004627:	cc                   	int3
140004628:	cc                   	int3
140004629:	cc                   	int3
14000462a:	cc                   	int3
14000462b:	cc                   	int3
14000462c:	cc                   	int3
14000462d:	cc                   	int3
14000462e:	cc                   	int3
14000462f:	cc                   	int3
140004630:	cc                   	int3
140004631:	cc                   	int3
140004632:	cc                   	int3
140004633:	cc                   	int3
140004634:	cc                   	int3
140004635:	cc                   	int3
140004636:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14000463d:	00 00 00
140004640:	48 83 ec 10          	sub    $0x10,%rsp
140004644:	4c 89 14 24          	mov    %r10,(%rsp)
140004648:	4c 89 5c 24 08       	mov    %r11,0x8(%rsp)
14000464d:	4d 33 db             	xor    %r11,%r11
140004650:	4c 8d 54 24 18       	lea    0x18(%rsp),%r10
140004655:	4c 2b d0             	sub    %rax,%r10
140004658:	4d 0f 42 d3          	cmovb  %r11,%r10
14000465c:	65 4c 8b 1c 25 10 00 	mov    %gs:0x10,%r11
140004663:	00 00
140004665:	4d 3b d3             	cmp    %r11,%r10
140004668:	73 16                	jae    0x140004680
14000466a:	66 41 81 e2 00 f0    	and    $0xf000,%r10w
140004670:	4d 8d 9b 00 f0 ff ff 	lea    -0x1000(%r11),%r11
140004677:	41 c6 03 00          	movb   $0x0,(%r11)
14000467b:	4d 3b d3             	cmp    %r11,%r10
14000467e:	75 f0                	jne    0x140004670
140004680:	4c 8b 14 24          	mov    (%rsp),%r10
140004684:	4c 8b 5c 24 08       	mov    0x8(%rsp),%r11
140004689:	48 83 c4 10          	add    $0x10,%rsp
14000468d:	c3                   	ret
14000468e:	ff 25 34 0c 00 00    	jmp    *0xc34(%rip)        # 0x1400052c8
140004694:	cc                   	int3
140004695:	cc                   	int3
140004696:	cc                   	int3
140004697:	cc                   	int3
140004698:	cc                   	int3
140004699:	cc                   	int3
14000469a:	cc                   	int3
14000469b:	cc                   	int3
14000469c:	cc                   	int3
14000469d:	cc                   	int3
14000469e:	cc                   	int3
14000469f:	cc                   	int3
1400046a0:	cc                   	int3
1400046a1:	cc                   	int3
1400046a2:	cc                   	int3
1400046a3:	cc                   	int3
1400046a4:	cc                   	int3
1400046a5:	cc                   	int3
1400046a6:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
1400046ad:	00 00 00
1400046b0:	ff e0                	jmp    *%rax
1400046b2:	cc                   	int3
1400046b3:	cc                   	int3
1400046b4:	cc                   	int3
1400046b5:	cc                   	int3
1400046b6:	cc                   	int3
1400046b7:	cc                   	int3
1400046b8:	cc                   	int3
1400046b9:	cc                   	int3
1400046ba:	cc                   	int3
1400046bb:	cc                   	int3
1400046bc:	cc                   	int3
1400046bd:	cc                   	int3
1400046be:	cc                   	int3
1400046bf:	cc                   	int3
1400046c0:	cc                   	int3
1400046c1:	cc                   	int3
1400046c2:	cc                   	int3
1400046c3:	cc                   	int3
1400046c4:	cc                   	int3
1400046c5:	cc                   	int3
1400046c6:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
1400046cd:	00 00 00
1400046d0:	ff 25 5a 0d 00 00    	jmp    *0xd5a(%rip)        # 0x140005430
1400046d6:	cc                   	int3
1400046d7:	cc                   	int3
1400046d8:	cc                   	int3
1400046d9:	cc                   	int3
1400046da:	cc                   	int3
1400046db:	cc                   	int3
1400046dc:	cc                   	int3
1400046dd:	cc                   	int3
1400046de:	cc                   	int3
1400046df:	cc                   	int3
1400046e0:	48 8d 8a 20 00 00 00 	lea    0x20(%rdx),%rcx
1400046e7:	e9 b4 ca ff ff       	jmp    0x1400011a0
1400046ec:	cc                   	int3
1400046ed:	cc                   	int3
1400046ee:	cc                   	int3
1400046ef:	cc                   	int3
1400046f0:	48 8d 8a 20 00 00 00 	lea    0x20(%rdx),%rcx
1400046f7:	e9 24 ef ff ff       	jmp    0x140003620
1400046fc:	48 8d 8a 20 00 00 00 	lea    0x20(%rdx),%rcx
140004703:	e9 d8 ee ff ff       	jmp    0x1400035e0
140004708:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14000470d:	55                   	push   %rbp
14000470e:	48 83 ec 20          	sub    $0x20,%rsp
140004712:	48 8b ea             	mov    %rdx,%rbp
140004715:	48 8b 55 50          	mov    0x50(%rbp),%rdx
140004719:	48 8b 02             	mov    (%rdx),%rax
14000471c:	48 63 48 04          	movslq 0x4(%rax),%rcx
140004720:	48 03 ca             	add    %rdx,%rcx
140004723:	41 b0 01             	mov    $0x1,%r8b