140e77105:	0f 87 43 05 00 00    	ja     0x140e7764e
140e7710b:	0f 84 3a 04 00 00    	je     0x140e7754b
140e77111:	49 8b 7e 08          	mov    0x8(%r14),%rdi
140e77115:	44 0f b7 c6          	movzwl %si,%r8d
140e77119:	48 8d 94 24 80 00 00 	lea    0x80(%rsp),%rdx
140e77120:	00
140e77121:	49 8b ce             	mov    %r14,%rcx
140e77124:	e8 37 76 01 00       	call   0x140e8e760
140e77129:	0f b7 30             	movzwl (%rax),%esi
140e7712c:	48 8b 07             	mov    (%rdi),%rax
140e7712f:	48 8d 94 24 88 00 00 	lea    0x88(%rsp),%rdx
140e77136:	00
140e77137:	48 8b cf             	mov    %rdi,%rcx
140e7713a:	48 8b 40 10          	mov    0x10(%rax),%rax
140e7713e:	ff 15 dc c8 10 00    	call   *0x10c8dc(%rip)        # 0x140f83a20
140e77144:	0f b7 10             	movzwl (%rax),%edx
140e77147:	03 d6                	add    %esi,%edx
140e77149:	81 fa ff ff 00 00    	cmp    $0xffff,%edx
140e7714f:	0f 87 f4 04 00 00    	ja     0x140e77649
140e77155:	41 b0 01             	mov    $0x1,%r8b
140e77158:	48 8b cf             	mov    %rdi,%rcx
140e7715b:	e8 20 9f af ff       	call   0x140971080
140e77160:	44 0f b7 e8          	movzwl %ax,%r13d
140e77164:	49 8b 7e 08          	mov    0x8(%r14),%rdi
140e77168:	41 b8 02 00 00 00    	mov    $0x2,%r8d
140e7716e:	48 8d 94 24 8a 00 00 	lea    0x8a(%rsp),%rdx
140e77175:	00
140e77176:	49 8b ce             	mov    %r14,%rcx
140e77179:	e8 e2 75 01 00       	call   0x140e8e760
140e7717e:	0f b7 30             	movzwl (%rax),%esi
140e77181:	48 8b 07             	mov    (%rdi),%rax
140e77184:	48 8d 94 24 84 00 00 	lea    0x84(%rsp),%rdx
140e7718b:	00
140e7718c:	48 8b cf             	mov    %rdi,%rcx
140e7718f:	48 8b 40 10          	mov    0x10(%rax),%rax
140e77193:	ff 15 87 c8 10 00    	call   *0x10c887(%rip)        # 0x140f83a20
140e77199:	0f b7 10             	movzwl (%rax),%edx
140e7719c:	03 d6                	add    %esi,%edx
140e7719e:	81 fa ff ff 00 00    	cmp    $0xffff,%edx
140e771a4:	0f 87 9a 04 00 00    	ja     0x140e77644
140e771aa:	41 b0 01             	mov    $0x1,%r8b
140e771ad:	48 8b cf             	mov    %rdi,%rcx
140e771b0:	e8 cb 9e af ff       	call   0x140971080
140e771b5:	0f b7 f8             	movzwl %ax,%edi
140e771b8:	0f 57 c0             	xorps  %xmm0,%xmm0
140e771bb:	f3 0f 7f 44 24 60    	movdqu %xmm0,0x60(%rsp)
140e771c1:	49 8b 4f 08          	mov    0x8(%r15),%rcx
140e771c5:	48 85 c9             	test   %rcx,%rcx
140e771c8:	74 04                	je     0x140e771ce
140e771ca:	f0 ff 41 08          	lock incl 0x8(%rcx)
140e771ce:	49 8b 07             	mov    (%r15),%rax
140e771d1:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
140e771d6:	49 8b 47 08          	mov    0x8(%r15),%rax
140e771da:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
140e771df:	66 89 7c 24 20       	mov    %di,0x20(%rsp)
140e771e4:	45 0f b7 cd          	movzwl %r13w,%r9d
140e771e8:	4d 8b c6             	mov    %r14,%r8
140e771eb:	48 8d 54 24 60       	lea    0x60(%rsp),%rdx
140e771f0:	48 8b 8c 24 90 00 00 	mov    0x90(%rsp),%rcx
140e771f7:	00
140e771f8:	e8 f3 0d 00 00       	call   0x140e77ff0
140e771fd:	84 c0                	test   %al,%al
140e771ff:	75 10                	jne    0x140e77211
140e77201:	8b d7                	mov    %edi,%edx
140e77203:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140e77209:	49 8b ce             	mov    %r14,%rcx
140e7720c:	e8 1f 7d 01 00       	call   0x140e8ef30
140e77211:	48 8b bc 24 f0 00 00 	mov    0xf0(%rsp),%rdi
140e77218:	00
140e77219:	48 85 ff             	test   %rdi,%rdi
140e7721c:	0f 84 1d 01 00 00    	je     0x140e7733f
140e77222:	4c 8b b4 24 f8 00 00 	mov    0xf8(%rsp),%r14
140e77229:	00
140e7722a:	49 3b fe             	cmp    %r14,%rdi
140e7722d:	73 2c                	jae    0x140e7725b
140e7722f:	48 8d 47 01          	lea    0x1(%rdi),%rax
140e77233:	48 89 84 24 f0 00 00 	mov    %rax,0xf0(%rsp)
140e7723a:	00
140e7723b:	48 8d 84 24 e0 00 00 	lea    0xe0(%rsp),%rax
140e77242:	00
140e77243:	49 83 fe 0f          	cmp    $0xf,%r14
140e77247:	48 0f 47 84 24 e0 00 	cmova  0xe0(%rsp),%rax
140e7724e:	00 00
140e77250:	66 c7 04 38 2c 00    	movw   $0x2c,(%rax,%rdi,1)
140e77256:	e9 e4 00 00 00       	jmp    0x140e7733f
140e7725b:	48 ba ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rdx
140e77262:	ff ff 7f
140e77265:	48 8b c2             	mov    %rdx,%rax
140e77268:	48 2b c7             	sub    %rdi,%rax
140e7726b:	48 83 f8 01          	cmp    $0x1,%rax
140e7726f:	0f 82 be 03 00 00    	jb     0x140e77633
140e77275:	4c 8d 67 01          	lea    0x1(%rdi),%r12
140e77279:	49 8b f4             	mov    %r12,%rsi
140e7727c:	48 83 ce 0f          	or     $0xf,%rsi
140e77280:	48 3b f2             	cmp    %rdx,%rsi
140e77283:	76 05                	jbe    0x140e7728a
140e77285:	48 8b f2             	mov    %rdx,%rsi
140e77288:	eb 21                	jmp    0x140e772ab
140e7728a:	49 8b ce             	mov    %r14,%rcx
140e7728d:	48 d1 e9             	shr    $1,%rcx
140e77290:	48 8b c2             	mov    %rdx,%rax
140e77293:	48 2b c1             	sub    %rcx,%rax
140e77296:	4c 3b f0             	cmp    %rax,%r14
140e77299:	76 05                	jbe    0x140e772a0
140e7729b:	48 8b f2             	mov    %rdx,%rsi
140e7729e:	eb 0b                	jmp    0x140e772ab
140e772a0:	4a 8d 04 31          	lea    (%rcx,%r14,1),%rax
140e772a4:	48 3b f0             	cmp    %rax,%rsi
140e772a7:	48 0f 42 f0          	cmovb  %rax,%rsi
140e772ab:	48 8d 4e 01          	lea    0x1(%rsi),%rcx
140e772af:	e8 7c fa 31 ff       	call   0x140196d30
140e772b4:	4c 8b f8             	mov    %rax,%r15
140e772b7:	4c 89 a4 24 f0 00 00 	mov    %r12,0xf0(%rsp)
140e772be:	00
140e772bf:	48 89 b4 24 f8 00 00 	mov    %rsi,0xf8(%rsp)
140e772c6:	00
140e772c7:	4c 8b c7             	mov    %rdi,%r8
140e772ca:	48 8b c8             	mov    %rax,%rcx
140e772cd:	49 83 fe 0f          	cmp    $0xf,%r14
140e772d1:	76 4d                	jbe    0x140e77320
140e772d3:	48 8b b4 24 e0 00 00 	mov    0xe0(%rsp),%rsi
140e772da:	00
140e772db:	48 8b d6             	mov    %rsi,%rdx
140e772de:	e8 2d 7d 06 00       	call   0x140edf010
140e772e3:	66 41 c7 04 3f 2c 00 	movw   $0x2c,(%r15,%rdi,1)
140e772ea:	49 8d 56 01          	lea    0x1(%r14),%rdx
140e772ee:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140e772f5:	72 1c                	jb     0x140e77313
140e772f7:	48 83 c2 27          	add    $0x27,%rdx
140e772fb:	48 8b 4e f8          	mov    -0x8(%rsi),%rcx
140e772ff:	48 2b f1             	sub    %rcx,%rsi
140e77302:	48 8d 46 f8          	lea    -0x8(%rsi),%rax
140e77306:	48 83 f8 1f          	cmp    $0x1f,%rax
140e7730a:	0f 87 2e 03 00 00    	ja     0x140e7763e
140e77310:	48 8b f1             	mov    %rcx,%rsi
140e77313:	0f ae e8             	lfence
140e77316:	48 8b ce             	mov    %rsi,%rcx
140e77319:	e8 26 3e fa ff       	call   0x140e1b144
140e7731e:	eb 14                	jmp    0x140e77334
140e77320:	48 8d 94 24 e0 00 00 	lea    0xe0(%rsp),%rdx
140e77327:	00
140e77328:	e8 e3 7c 06 00       	call   0x140edf010
140e7732d:	66 41 c7 04 3f 2c 00 	movw   $0x2c,(%r15,%rdi,1)
140e77334:	45 33 e4             	xor    %r12d,%r12d
140e77337:	4c 89 bc 24 e0 00 00 	mov    %r15,0xe0(%rsp)
140e7733e:	00
140e7733f:	45 8b c5             	mov    %r13d,%r8d
140e77342:	48 8d b4 24 15 01 00 	lea    0x115(%rsp),%rsi
140e77349:	00
140e7734a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140e77350:	48 ff ce             	dec    %rsi
140e77353:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
140e77358:	41 f7 e0             	mul    %r8d
140e7735b:	c1 ea 03             	shr    $0x3,%edx
140e7735e:	0f b6 c2             	movzbl %dl,%eax
140e77361:	c0 e0 02             	shl    $0x2,%al
140e77364:	8d 0c 10             	lea    (%rax,%rdx,1),%ecx
140e77367:	02 c9                	add    %cl,%cl
140e77369:	44 2a c1             	sub    %cl,%r8b
140e7736c:	41 80 c0 30          	add    $0x30,%r8b
140e77370:	44 88 06             	mov    %r8b,(%rsi)
140e77373:	44 8b c2             	mov    %edx,%r8d
140e77376:	85 d2                	test   %edx,%edx
140e77378:	75 d6                	jne    0x140e77350
140e7737a:	0f 57 c0             	xorps  %xmm0,%xmm0
140e7737d:	0f 11 44 24 60       	movups %xmm0,0x60(%rsp)
140e77382:	4c 89 64 24 70       	mov    %r12,0x70(%rsp)
140e77387:	4c 89 64 24 78       	mov    %r12,0x78(%rsp)
140e7738c:	48 8d 84 24 15 01 00 	lea    0x115(%rsp),%rax
140e77393:	00
140e77394:	48 3b f0             	cmp    %rax,%rsi
140e77397:	75 1b                	jne    0x140e773b4
140e77399:	4d 8b fc             	mov    %r12,%r15
140e7739c:	4c 89 64 24 70       	mov    %r12,0x70(%rsp)
140e773a1:	be 0f 00 00 00       	mov    $0xf,%esi
140e773a6:	48 89 74 24 78       	mov    %rsi,0x78(%rsp)
140e773ab:	88 54 24 60          	mov    %dl,0x60(%rsp)
140e773af:	e9 a5 00 00 00       	jmp    0x140e77459
140e773b4:	48 8d bc 24 15 01 00 	lea    0x115(%rsp),%rdi
140e773bb:	00
140e773bc:	48 2b fe             	sub    %rsi,%rdi
140e773bf:	49 bd ff ff ff ff ff 	movabs $0x7fffffffffffffff,%r13
140e773c6:	ff ff 7f
140e773c9:	49 3b fd             	cmp    %r13,%rdi
140e773cc:	0f 87 67 02 00 00    	ja     0x140e77639
140e773d2:	48 83 ff 0f          	cmp    $0xf,%rdi
140e773d6:	77 28                	ja     0x140e77400
140e773d8:	48 89 7c 24 70       	mov    %rdi,0x70(%rsp)
140e773dd:	48 c7 44 24 78 0f 00 	movq   $0xf,0x78(%rsp)
140e773e4:	00 00
140e773e6:	0f ae e8             	lfence
140e773e9:	4c 8b c7             	mov    %rdi,%r8
140e773ec:	48 8b d6             	mov    %rsi,%rdx
140e773ef:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
140e773f4:	e8 17 7c 06 00       	call   0x140edf010
140e773f9:	c6 44 3c 60 00       	movb   $0x0,0x60(%rsp,%rdi,1)
140e773fe:	eb 4f                	jmp    0x140e7744f
140e77400:	4c 8b f7             	mov    %rdi,%r14
140e77403:	49 83 ce 0f          	or     $0xf,%r14
140e77407:	4d 3b f5             	cmp    %r13,%r14
140e7740a:	76 05                	jbe    0x140e77411
140e7740c:	4d 8b f5             	mov    %r13,%r14
140e7740f:	eb 0d                	jmp    0x140e7741e
140e77411:	49 83 fe 16          	cmp    $0x16,%r14
140e77415:	b8 16 00 00 00       	mov    $0x16,%eax
140e7741a:	4c 0f 42 f0          	cmovb  %rax,%r14
140e7741e:	49 8d 4e 01          	lea    0x1(%r14),%rcx
140e77422:	e8 09 f9 31 ff       	call   0x140196d30
140e77427:	4c 8b f8             	mov    %rax,%r15
140e7742a:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
140e7742f:	48 89 7c 24 70       	mov    %rdi,0x70(%rsp)
140e77434:	4c 89 74 24 78       	mov    %r14,0x78(%rsp)
140e77439:	0f ae e8             	lfence
140e7743c:	4c 8b c7             	mov    %rdi,%r8
140e7743f:	48 8b d6             	mov    %rsi,%rdx
140e77442:	48 8b c8             	mov    %rax,%rcx
140e77445:	e8 c6 7b 06 00       	call   0x140edf010
140e7744a:	41 c6 04 3f 00       	movb   $0x0,(%r15,%rdi,1)
140e7744f:	4c 8b 7c 24 70       	mov    0x70(%rsp),%r15
140e77454:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
140e77459:	83 4c 24 50 03       	orl    $0x3,0x50(%rsp)
140e7745e:	4c 8d 4c 24 60       	lea    0x60(%rsp),%r9
140e77463:	4c 8b 74 24 60       	mov    0x60(%rsp),%r14
140e77468:	48 83 fe 0f          	cmp    $0xf,%rsi
140e7746c:	4d 0f 47 ce          	cmova  %r14,%r9
140e77470:	48 8b 8c 24 f0 00 00 	mov    0xf0(%rsp),%rcx
140e77477:	00
140e77478:	48 8b 94 24 f8 00 00 	mov    0xf8(%rsp),%rdx
140e7747f:	00
140e77480:	48 8b c2             	mov    %rdx,%rax
140e77483:	48 2b c1             	sub    %rcx,%rax
140e77486:	4c 3b f8             	cmp    %rax,%r15
140e77489:	77 39                	ja     0x140e774c4
140e7748b:	4a 8d 04 39          	lea    (%rcx,%r15,1),%rax
140e7748f:	48 89 84 24 f0 00 00 	mov    %rax,0xf0(%rsp)
140e77496:	00
140e77497:	48 8d bc 24 e0 00 00 	lea    0xe0(%rsp),%rdi
140e7749e:	00
140e7749f:	48 83 fa 0f          	cmp    $0xf,%rdx
140e774a3:	48 0f 47 bc 24 e0 00 	cmova  0xe0(%rsp),%rdi
140e774aa:	00 00
140e774ac:	48 03 f9             	add    %rcx,%rdi
140e774af:	4d 8b c7             	mov    %r15,%r8
140e774b2:	49 8b d1             	mov    %r9,%rdx
140e774b5:	48 8b cf             	mov    %rdi,%rcx
140e774b8:	e8 53 7b 06 00       	call   0x140edf010
140e774bd:	42 c6 04 3f 00       	movb   $0x0,(%rdi,%r15,1)
140e774c2:	eb 28                	jmp    0x140e774ec
140e774c4:	0f ae e8             	lfence
140e774c7:	48 8b 54 24 70       	mov    0x70(%rsp),%rdx
140e774cc:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140e774d1:	44 0f b6 c3          	movzbl %bl,%r8d
140e774d5:	48 8d 8c 24 e0 00 00 	lea    0xe0(%rsp),%rcx
140e774dc:	00
140e774dd:	e8 9e 11 33 ff       	call   0x1401a8680
140e774e2:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
140e774e7:	4c 8b 74 24 60       	mov    0x60(%rsp),%r14
140e774ec:	48 83 fe 0f          	cmp    $0xf,%rsi
140e774f0:	76 31                	jbe    0x140e77523
140e774f2:	48 8d 56 01          	lea    0x1(%rsi),%rdx
140e774f6:	49 8b c6             	mov    %r14,%rax
140e774f9:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140e77500:	72 19                	jb     0x140e7751b
140e77502:	48 83 c2 27          	add    $0x27,%rdx
140e77506:	4d 8b 76 f8          	mov    -0x8(%r14),%r14
140e7750a:	49 2b c6             	sub    %r14,%rax
140e7750d:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140e77511:	48 83 f8 1f          	cmp    $0x1f,%rax
140e77515:	0f 87 23 01 00 00    	ja     0x140e7763e
140e7751b:	49 8b ce             	mov    %r14,%rcx
140e7751e:	e8 21 3c fa ff       	call   0x140e1b144
140e77523:	4c 89 64 24 70       	mov    %r12,0x70(%rsp)
140e77528:	48 c7 44 24 78 0f 00 	movq   $0xf,0x78(%rsp)
140e7752f:	00 00
140e77531:	c6 44 24 60 00       	movb   $0x0,0x60(%rsp)
140e77536:	4c 8b b4 24 98 00 00 	mov    0x98(%rsp),%r14
140e7753d:	00
140e7753e:	4c 8b bc 24 a0 00 00 	mov    0xa0(%rsp),%r15
140e77545:	00
140e77546:	e9 a7 fb ff ff       	jmp    0x140e770f2
140e7754b:	eb 0b                	jmp    0x140e77558
140e7754d:	45 33 e4             	xor    %r12d,%r12d
140e77550:	4c 8b bc 24 b0 00 00 	mov    0xb0(%rsp),%r15
140e77557:	00
140e77558:	4c 8d 84 24 e0 00 00 	lea    0xe0(%rsp),%r8
140e7755f:	00
140e77560:	ba 0f 00 00 00       	mov    $0xf,%edx
140e77565:	49 8b 0f             	mov    (%r15),%rcx
140e77568:	e8 73 7d ff ff       	call   0x140e6f2e0
140e7756d:	90                   	nop
140e7756e:	48 8b 94 24 f8 00 00 	mov    0xf8(%rsp),%rdx
140e77575:	00
140e77576:	48 83 fa 0f          	cmp    $0xf,%rdx
140e7757a:	76 35                	jbe    0x140e775b1
140e7757c:	48 ff c2             	inc    %rdx
140e7757f:	48 8b 8c 24 e0 00 00 	mov    0xe0(%rsp),%rcx
140e77586:	00
140e77587:	48 8b c1             	mov    %rcx,%rax
140e7758a:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140e77591:	72 19                	jb     0x140e775ac
140e77593:	48 83 c2 27          	add    $0x27,%rdx
140e77597:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
140e7759b:	48 2b c1             	sub    %rcx,%rax
140e7759e:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140e775a2:	48 83 f8 1f          	cmp    $0x1f,%rax
140e775a6:	0f 87 a8 00 00 00    	ja     0x140e77654
140e775ac:	e8 93 3b fa ff       	call   0x140e1b144
140e775b1:	4c 89 a4 24 f0 00 00 	mov    %r12,0xf0(%rsp)
140e775b8:	00
140e775b9:	48 c7 84 24 f8 00 00 	movq   $0xf,0xf8(%rsp)
140e775c0:	00 0f 00 00 00
140e775c5:	c6 84 24 e0 00 00 00 	movb   $0x0,0xe0(%rsp)
140e775cc:	00
140e775cd:	49 8b 5f 08          	mov    0x8(%r15),%rbx
140e775d1:	48 85 db             	test   %rbx,%rbx
140e775d4:	74 3a                	je     0x140e77610
140e775d6:	bf ff ff ff ff       	mov    $0xffffffff,%edi
140e775db:	8b c7                	mov    %edi,%eax
140e775dd:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140e775e2:	83 f8 01             	cmp    $0x1,%eax
140e775e5:	75 29                	jne    0x140e77610
140e775e7:	48 8b 03             	mov    (%rbx),%rax
140e775ea:	48 8b cb             	mov    %rbx,%rcx
140e775ed:	48 8b 00             	mov    (%rax),%rax
140e775f0:	ff 15 2a c4 10 00    	call   *0x10c42a(%rip)        # 0x140f83a20
140e775f6:	f0 0f c1 7b 0c       	lock xadd %edi,0xc(%rbx)
140e775fb:	83 ff 01             	cmp    $0x1,%edi
140e775fe:	75 10                	jne    0x140e77610
140e77600:	48 8b 03             	mov    (%rbx),%rax
140e77603:	48 8b cb             	mov    %rbx,%rcx
140e77606:	48 8b 40 08          	mov    0x8(%rax),%rax
140e7760a:	ff 15 10 c4 10 00    	call   *0x10c410(%rip)        # 0x140f83a20
140e77610:	48 8b 8c 24 18 01 00 	mov    0x118(%rsp),%rcx
140e77617:	00
140e77618:	48 33 cc             	xor    %rsp,%rcx
140e7761b:	e8 e0 3e fa ff       	call   0x140e1b500
140e77620:	48 81 c4 20 01 00 00 	add    $0x120,%rsp
140e77627:	41 5f                	pop    %r15
140e77629:	41 5e                	pop    %r14
140e7762b:	41 5d                	pop    %r13
140e7762d:	41 5c                	pop    %r12
140e7762f:	5f                   	pop    %rdi
140e77630:	5e                   	pop    %rsi
140e77631:	5b                   	pop    %rbx
140e77632:	c3                   	ret
140e77633:	e8 38 5f 32 ff       	call   0x14019d570
140e77638:	90                   	nop
140e77639:	e8 32 5f 32 ff       	call   0x14019d570
140e7763e:	e8 61 2b fb ff       	call   0x140e2a1a4
140e77643:	cc                   	int3