0000000140001000 <.text>:
140001000:	8b 01                	mov    (%rcx),%eax
140001002:	4c 8d 04 02          	lea    (%rdx,%rax,1),%r8
140001006:	f0 44 0f b1 01       	lock cmpxchg %r8d,(%rcx)
14000100b:	75 f5                	jne    0x140001002
14000100d:	44 89 c0             	mov    %r8d,%eax
140001010:	48 98                	cltq
140001012:	f3 c3                	repz ret
140001014:	90                   	nop
140001015:	90                   	nop
140001016:	90                   	nop
140001017:	90                   	nop
140001018:	90                   	nop
140001019:	90                   	nop
14000101a:	90                   	nop
14000101b:	90                   	nop
14000101c:	90                   	nop
14000101d:	90                   	nop
14000101e:	90                   	nop
14000101f:	90                   	nop
140001020:	0f 31                	rdtsc
140001022:	48 c1 e2 20          	shl    $0x20,%rdx
140001026:	48 09 d0             	or     %rdx,%rax
140001029:	f3 c3                	repz ret
14000102b:	90                   	nop
14000102c:	90                   	nop
14000102d:	90                   	nop
14000102e:	90                   	nop
14000102f:	90                   	nop
140001030:	48 89 7c 24 08       	mov    %rdi,0x8(%rsp)
140001035:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14000103a:	48 89 e0             	mov    %rsp,%rax
14000103d:	48 89 cf             	mov    %rcx,%rdi
140001040:	49 89 d8             	mov    %rbx,%r8
140001043:	31 c0                	xor    %eax,%eax
140001045:	48 89 47 08          	mov    %rax,0x8(%rdi)
140001049:	0f a2                	cpuid
14000104b:	41 89 c3             	mov    %eax,%r11d
14000104e:	31 c0                	xor    %eax,%eax
140001050:	81 fb 47 65 6e 75    	cmp    $0x756e6547,%ebx
140001056:	0f 95 c0             	setne  %al
140001059:	41 89 c1             	mov    %eax,%r9d
14000105c:	81 fa 69 6e 65 49    	cmp    $0x49656e69,%edx
140001062:	0f 95 c0             	setne  %al
140001065:	41 09 c1             	or     %eax,%r9d
140001068:	81 f9 6e 74 65 6c    	cmp    $0x6c65746e,%ecx
14000106e:	0f 95 c0             	setne  %al
140001071:	41 09 c1             	or     %eax,%r9d
140001074:	0f 84 87 00 00 00    	je     0x140001101
14000107a:	81 fb 41 75 74 68    	cmp    $0x68747541,%ebx
140001080:	0f 95 c0             	setne  %al
140001083:	41 89 c2             	mov    %eax,%r10d
140001086:	81 fa 65 6e 74 69    	cmp    $0x69746e65,%edx
14000108c:	0f 95 c0             	setne  %al
14000108f:	41 09 c2             	or     %eax,%r10d
140001092:	81 f9 63 41 4d 44    	cmp    $0x444d4163,%ecx
140001098:	0f 95 c0             	setne  %al
14000109b:	41 09 c2             	or     %eax,%r10d
14000109e:	75 61                	jne    0x140001101
1400010a0:	b8 00 00 00 80       	mov    $0x80000000,%eax
1400010a5:	0f a2                	cpuid
1400010a7:	3d 01 00 00 80       	cmp    $0x80000001,%eax
1400010ac:	72 53                	jb     0x140001101
1400010ae:	41 89 c2             	mov    %eax,%r10d
1400010b1:	b8 01 00 00 80       	mov    $0x80000001,%eax
1400010b6:	0f a2                	cpuid
1400010b8:	41 09 c9             	or     %ecx,%r9d
1400010bb:	41 81 e1 01 08 00 00 	and    $0x801,%r9d
1400010c2:	41 81 fa 08 00 00 80 	cmp    $0x80000008,%r10d
1400010c9:	72 36                	jb     0x140001101
1400010cb:	b8 08 00 00 80       	mov    $0x80000008,%eax
1400010d0:	0f a2                	cpuid
1400010d2:	4c 0f b6 d1          	movzbq %cl,%r10
1400010d6:	49 ff c2             	inc    %r10
1400010d9:	b8 01 00 00 00       	mov    $0x1,%eax
1400010de:	0f a2                	cpuid
1400010e0:	0f ba e2 1c          	bt     $0x1c,%edx
1400010e4:	0f 83 ac 00 00 00    	jae    0x140001196
1400010ea:	c1 eb 10             	shr    $0x10,%ebx
1400010ed:	44 38 d3             	cmp    %r10b,%bl
1400010f0:	0f 87 a0 00 00 00    	ja     0x140001196
1400010f6:	81 e2 ff ff ff ef    	and    $0xefffffff,%edx
1400010fc:	e9 95 00 00 00       	jmp    0x140001196
140001101:	41 83 fb 04          	cmp    $0x4,%r11d
140001105:	41 ba ff ff ff ff    	mov    $0xffffffff,%r10d
14000110b:	72 1a                	jb     0x140001127
14000110d:	b8 04 00 00 00       	mov    $0x4,%eax
140001112:	b9 00 00 00 00       	mov    $0x0,%ecx
140001117:	0f a2                	cpuid
140001119:	41 89 c2             	mov    %eax,%r10d
14000111c:	41 c1 ea 0e          	shr    $0xe,%r10d
140001120:	41 81 e2 ff 0f 00 00 	and    $0xfff,%r10d
140001127:	b8 01 00 00 00       	mov    $0x1,%eax
14000112c:	0f a2                	cpuid
14000112e:	66 0f 6e c0          	movd   %eax,%xmm0
140001132:	81 e2 ff ff ef bf    	and    $0xbfefffff,%edx
140001138:	41 83 f9 00          	cmp    $0x0,%r9d
14000113c:	75 32                	jne    0x140001170
14000113e:	81 ca 00 00 00 40    	or     $0x40000000,%edx
140001144:	80 e4 0f             	and    $0xf,%ah
140001147:	80 fc 0f             	cmp    $0xf,%ah
14000114a:	75 06                	jne    0x140001152
14000114c:	81 ca 00 00 10 00    	or     $0x100000,%edx
140001152:	80 fc 06             	cmp    $0x6,%ah
140001155:	75 19                	jne    0x140001170
140001157:	25 f0 0f ff 0f       	and    $0xfff0ff0,%eax
14000115c:	3d 70 06 05 00       	cmp    $0x50670,%eax
140001161:	74 07                	je     0x14000116a
140001163:	3d 50 06 08 00       	cmp    $0x80650,%eax
140001168:	75 06                	jne    0x140001170
14000116a:	81 e1 ff ff ff fb    	and    $0xfbffffff,%ecx
140001170:	0f ba e2 1c          	bt     $0x1c,%edx
140001174:	73 20                	jae    0x140001196
140001176:	81 e2 ff ff ff ef    	and    $0xefffffff,%edx
14000117c:	41 83 fa 00          	cmp    $0x0,%r10d
140001180:	74 14                	je     0x140001196
140001182:	81 ca 00 00 00 10    	or     $0x10000000,%edx
140001188:	c1 eb 10             	shr    $0x10,%ebx
14000118b:	80 fb 01             	cmp    $0x1,%bl
14000118e:	77 06                	ja     0x140001196
140001190:	81 e2 ff ff ff ef    	and    $0xefffffff,%edx
140001196:	41 81 e1 00 08 00 00 	and    $0x800,%r9d
14000119d:	81 e1 ff f7 ff ff    	and    $0xfffff7ff,%ecx
1400011a3:	41 09 c9             	or     %ecx,%r9d
1400011a6:	41 89 d2             	mov    %edx,%r10d
1400011a9:	41 83 fb 07          	cmp    $0x7,%r11d
1400011ad:	72 32                	jb     0x1400011e1
1400011af:	b8 07 00 00 00       	mov    $0x7,%eax
1400011b4:	31 c9                	xor    %ecx,%ecx
1400011b6:	0f a2                	cpuid
1400011b8:	41 0f ba e1 1a       	bt     $0x1a,%r9d
1400011bd:	72 06                	jb     0x1400011c5
1400011bf:	81 e3 ff ff f7 ff    	and    $0xfff7ffff,%ebx
1400011c5:	66 0f 7e c0          	movd   %xmm0,%eax
1400011c9:	25 f0 0f ff 0f       	and    $0xfff0ff0,%eax
1400011ce:	3d 50 06 05 00       	cmp    $0x50650,%eax
1400011d3:	75 06                	jne    0x1400011db
1400011d5:	81 e3 ff ff fe ff    	and    $0xfffeffff,%ebx
1400011db:	89 5f 08             	mov    %ebx,0x8(%rdi)
1400011de:	89 4f 0c             	mov    %ecx,0xc(%rdi)
1400011e1:	41 0f ba e1 1b       	bt     $0x1b,%r9d
1400011e6:	73 20                	jae    0x140001208
1400011e8:	31 c9                	xor    %ecx,%ecx
1400011ea:	0f 01 d0             	xgetbv
1400011ed:	25 e6 00 00 00       	and    $0xe6,%eax
1400011f2:	3d e6 00 00 00       	cmp    $0xe6,%eax
1400011f7:	74 1f                	je     0x140001218
1400011f9:	81 67 08 ff ff de 3f 	andl   $0x3fdeffff,0x8(%rdi)
140001200:	83 e0 06             	and    $0x6,%eax
140001203:	83 f8 06             	cmp    $0x6,%eax
140001206:	74 10                	je     0x140001218
140001208:	b8 ff e7 ff ef       	mov    $0xefffe7ff,%eax
14000120d:	41 21 c1             	and    %eax,%r9d
140001210:	b8 df ff de 3f       	mov    $0x3fdeffdf,%eax
140001215:	21 47 08             	and    %eax,0x8(%rdi)
140001218:	49 c1 e1 20          	shl    $0x20,%r9
14000121c:	44 89 d0             	mov    %r10d,%eax
14000121f:	4c 89 c3             	mov    %r8,%rbx
140001222:	4c 09 c8             	or     %r9,%rax
140001225:	48 8b 7c 24 08       	mov    0x8(%rsp),%rdi
14000122a:	48 8b 74 24 10       	mov    0x10(%rsp),%rsi
14000122f:	f3 c3                	repz ret
140001231:	90                   	nop
140001232:	90                   	nop
140001233:	90                   	nop
140001234:	90                   	nop
140001235:	90                   	nop
140001236:	90                   	nop
140001237:	90                   	nop
140001238:	90                   	nop
140001239:	90                   	nop
14000123a:	90                   	nop
14000123b:	90                   	nop
14000123c:	90                   	nop
14000123d:	90                   	nop
14000123e:	90                   	nop
14000123f:	90                   	nop
140001240:	48 31 c0             	xor    %rax,%rax
140001243:	48 83 fa 0f          	cmp    $0xf,%rdx
140001247:	73 17                	jae    0x140001260
140001249:	48 83 fa 00          	cmp    $0x0,%rdx
14000124d:	74 0c                	je     0x14000125b
14000124f:	88 01                	mov    %al,(%rcx)
140001251:	48 83 ea 01          	sub    $0x1,%rdx
140001255:	48 8d 49 01          	lea    0x1(%rcx),%rcx
140001259:	75 f4                	jne    0x14000124f
14000125b:	f3 c3                	repz ret
14000125d:	90                   	nop
14000125e:	90                   	nop
14000125f:	90                   	nop
140001260:	48 f7 c1 07 00 00 00 	test   $0x7,%rcx
140001267:	74 0c                	je     0x140001275
140001269:	88 01                	mov    %al,(%rcx)
14000126b:	48 8d 52 ff          	lea    -0x1(%rdx),%rdx
14000126f:	48 8d 49 01          	lea    0x1(%rcx),%rcx
140001273:	eb eb                	jmp    0x140001260
140001275:	48 89 01             	mov    %rax,(%rcx)
140001278:	48 8d 52 f8          	lea    -0x8(%rdx),%rdx
14000127c:	48 f7 c2 f8 ff ff ff 	test   $0xfffffffffffffff8,%rdx
140001283:	48 8d 49 08          	lea    0x8(%rcx),%rcx
140001287:	75 ec                	jne    0x140001275
140001289:	48 83 fa 00          	cmp    $0x0,%rdx
14000128d:	75 c0                	jne    0x14000124f
14000128f:	f3 c3                	repz ret
140001291:	90                   	nop
140001292:	90                   	nop
140001293:	90                   	nop
140001294:	90                   	nop
140001295:	90                   	nop
140001296:	90                   	nop
140001297:	90                   	nop
140001298:	90                   	nop
140001299:	90                   	nop
14000129a:	90                   	nop
14000129b:	90                   	nop
14000129c:	90                   	nop
14000129d:	90                   	nop
14000129e:	90                   	nop
14000129f:	90                   	nop
1400012a0:	48 31 c0             	xor    %rax,%rax
1400012a3:	4d 31 d2             	xor    %r10,%r10
1400012a6:	49 83 f8 00          	cmp    $0x0,%r8
1400012aa:	74 41                	je     0x1400012ed
1400012ac:	49 83 f8 10          	cmp    $0x10,%r8
1400012b0:	75 1e                	jne    0x1400012d0
1400012b2:	4c 8b 11             	mov    (%rcx),%r10
1400012b5:	4c 8b 59 08          	mov    0x8(%rcx),%r11
1400012b9:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1400012bf:	4c 33 12             	xor    (%rdx),%r10
1400012c2:	4c 33 5a 08          	xor    0x8(%rdx),%r11
1400012c6:	4d 09 da             	or     %r11,%r10
1400012c9:	49 0f 45 c0          	cmovne %r8,%rax
1400012cd:	f3 c3                	repz ret
1400012cf:	90                   	nop
1400012d0:	44 8a 11             	mov    (%rcx),%r10b
1400012d3:	48 8d 49 01          	lea    0x1(%rcx),%rcx
1400012d7:	44 32 12             	xor    (%rdx),%r10b
1400012da:	48 8d 52 01          	lea    0x1(%rdx),%rdx
1400012de:	44 08 d0             	or     %r10b,%al
1400012e1:	49 ff c8             	dec    %r8
1400012e4:	75 ea                	jne    0x1400012d0
1400012e6:	48 f7 d8             	neg    %rax
1400012e9:	48 c1 e8 3f          	shr    $0x3f,%rax
1400012ed:	f3 c3                	repz ret
1400012ef:	90                   	nop
1400012f0:	66 0f ef c0          	pxor   %xmm0,%xmm0
1400012f4:	66 0f ef c9          	pxor   %xmm1,%xmm1
1400012f8:	66 0f ef d2          	pxor   %xmm2,%xmm2
1400012fc:	66 0f ef db          	pxor   %xmm3,%xmm3
140001300:	66 0f ef e4          	pxor   %xmm4,%xmm4
140001304:	66 0f ef ed          	pxor   %xmm5,%xmm5
140001308:	48 31 c9             	xor    %rcx,%rcx
14000130b:	48 31 d2             	xor    %rdx,%rdx
14000130e:	4d 31 c0             	xor    %r8,%r8
140001311:	4d 31 c9             	xor    %r9,%r9
140001314:	4d 31 d2             	xor    %r10,%r10
140001317:	4d 31 db             	xor    %r11,%r11
14000131a:	48 8d 44 24 08       	lea    0x8(%rsp),%rax
14000131f:	f3 c3                	repz ret
140001321:	90                   	nop
140001322:	90                   	nop
140001323:	90                   	nop
140001324:	90                   	nop
140001325:	90                   	nop
140001326:	90                   	nop
140001327:	90                   	nop
140001328:	90                   	nop
140001329:	90                   	nop
14000132a:	90                   	nop
14000132b:	90                   	nop
14000132c:	90                   	nop
14000132d:	90                   	nop
14000132e:	90                   	nop
14000132f:	90                   	nop
140001330:	49 89 ca             	mov    %rcx,%r10
140001333:	48 89 d1             	mov    %rdx,%rcx
140001336:	49 89 d3             	mov    %rdx,%r11
140001339:	0f 31                	rdtsc
14000133b:	41 89 c0             	mov    %eax,%r8d
14000133e:	41 b9 00 00 00 00    	mov    $0x0,%r9d
140001344:	41 0f ae 3a          	clflush (%r10)
140001348:	f0 45 01 0a          	lock add %r9d,(%r10)
14000134c:	eb 02                	jmp    0x140001350
14000134e:	90                   	nop
14000134f:	90                   	nop
140001350:	0f 31                	rdtsc
140001352:	89 c2                	mov    %eax,%edx
140001354:	44 29 c0             	sub    %r8d,%eax
140001357:	41 89 d0             	mov    %edx,%r8d
14000135a:	41 89 c1             	mov    %eax,%r9d
14000135d:	41 0f ae 3a          	clflush (%r10)
140001361:	f0 41 01 02          	lock add %eax,(%r10)
140001365:	4d 8d 52 04          	lea    0x4(%r10),%r10
140001369:	48 83 e9 01          	sub    $0x1,%rcx
14000136d:	75 e1                	jne    0x140001350
14000136f:	4c 89 d8             	mov    %r11,%rax
140001372:	f3 c3                	repz ret
140001374:	90                   	nop
140001375:	90                   	nop
140001376:	90                   	nop
140001377:	90                   	nop
140001378:	90                   	nop
140001379:	90                   	nop
14000137a:	90                   	nop
14000137b:	90                   	nop
14000137c:	90                   	nop
14000137d:	90                   	nop
14000137e:	90                   	nop
14000137f:	90                   	nop
140001380:	49 89 ca             	mov    %rcx,%r10
140001383:	48 89 d1             	mov    %rdx,%rcx
140001386:	4d 89 c3             	mov    %r8,%r11
140001389:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14000138e:	0f 31                	rdtsc
140001390:	41 89 c0             	mov    %eax,%r8d
140001393:	41 b9 00 00 00 00    	mov    $0x0,%r9d
140001399:	41 0f ae 3a          	clflush (%r10)
14000139d:	f0 45 01 0a          	lock add %r9d,(%r10)
1400013a1:	0f 31                	rdtsc
1400013a3:	89 c2                	mov    %eax,%edx
1400013a5:	44 29 c0             	sub    %r8d,%eax
1400013a8:	41 89 d0             	mov    %edx,%r8d
1400013ab:	41 89 c1             	mov    %eax,%r9d
1400013ae:	41 0f ae 3a          	clflush (%r10)
1400013b2:	f0 41 01 02          	lock add %eax,(%r10)
1400013b6:	49 83 eb 01          	sub    $0x1,%r11
1400013ba:	74 21                	je     0x1400013dd
1400013bc:	0f 31                	rdtsc
1400013be:	89 c2                	mov    %eax,%edx
1400013c0:	44 29 c0             	sub    %r8d,%eax
1400013c3:	41 89 d0             	mov    %edx,%r8d
1400013c6:	44 39 c8             	cmp    %r9d,%eax
1400013c9:	41 89 c1             	mov    %eax,%r9d
1400013cc:	ba 00 00 00 00       	mov    $0x0,%edx
1400013d1:	0f 95 c2             	setne  %dl
1400013d4:	48 29 d1             	sub    %rdx,%rcx
1400013d7:	4d 8d 14 92          	lea    (%r10,%rdx,4),%r10
1400013db:	75 d1                	jne    0x1400013ae
1400013dd:	48 8b 44 24 08       	mov    0x8(%rsp),%rax
1400013e2:	48 29 c8             	sub    %rcx,%rax
1400013e5:	f3 c3                	repz ret
1400013e7:	90                   	nop
1400013e8:	90                   	nop
1400013e9:	90                   	nop
1400013ea:	90                   	nop
1400013eb:	90                   	nop
1400013ec:	90                   	nop
1400013ed:	90                   	nop
1400013ee:	90                   	nop
1400013ef:	90                   	nop