140a78f35:	48 85 ff             	test   %rdi,%rdi
140a78f38:	74 35                	je     0x140a78f6f
140a78f3a:	8b c5                	mov    %ebp,%eax
140a78f3c:	f0 0f c1 47 08       	lock xadd %eax,0x8(%rdi)
140a78f41:	03 c5                	add    %ebp,%eax
140a78f43:	75 2a                	jne    0x140a78f6f
140a78f45:	48 8b 07             	mov    (%rdi),%rax
140a78f48:	48 8b cf             	mov    %rdi,%rcx
140a78f4b:	48 8b 00             	mov    (%rax),%rax
140a78f4e:	ff 15 e4 3c 09 00    	call   *0x93ce4(%rip)        # 0x140b0cc38
140a78f54:	8b c5                	mov    %ebp,%eax
140a78f56:	f0 0f c1 47 0c       	lock xadd %eax,0xc(%rdi)
140a78f5b:	03 c5                	add    %ebp,%eax
140a78f5d:	75 10                	jne    0x140a78f6f
140a78f5f:	48 8b 07             	mov    (%rdi),%rax
140a78f62:	48 8b cf             	mov    %rdi,%rcx
140a78f65:	48 8b 40 08          	mov    0x8(%rax),%rax
140a78f69:	ff 15 c9 3c 09 00    	call   *0x93cc9(%rip)        # 0x140b0cc38
140a78f6f:	48 8b 7c 24 28       	mov    0x28(%rsp),%rdi
140a78f74:	48 85 ff             	test   %rdi,%rdi
140a78f77:	74 36                	je     0x140a78faf
140a78f79:	8b c5                	mov    %ebp,%eax
140a78f7b:	f0 0f c1 47 08       	lock xadd %eax,0x8(%rdi)
140a78f80:	03 c5                	add    %ebp,%eax
140a78f82:	75 2b                	jne    0x140a78faf
140a78f84:	48 8b 07             	mov    (%rdi),%rax
140a78f87:	48 8b cf             	mov    %rdi,%rcx
140a78f8a:	48 8b 00             	mov    (%rax),%rax
140a78f8d:	ff 15 a5 3c 09 00    	call   *0x93ca5(%rip)        # 0x140b0cc38
140a78f93:	8b c5                	mov    %ebp,%eax
140a78f95:	f0 0f c1 47 0c       	lock xadd %eax,0xc(%rdi)
140a78f9a:	03 c5                	add    %ebp,%eax
140a78f9c:	75 11                	jne    0x140a78faf
140a78f9e:	48 8b 07             	mov    (%rdi),%rax
140a78fa1:	48 8b cf             	mov    %rdi,%rcx
140a78fa4:	48 8b 40 08          	mov    0x8(%rax),%rax
140a78fa8:	ff 15 8a 3c 09 00    	call   *0x93c8a(%rip)        # 0x140b0cc38
140a78fae:	90                   	nop
140a78faf:	48 8b c3             	mov    %rbx,%rax
140a78fb2:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
140a78fb7:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
140a78fbc:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140a78fc1:	48 83 c4 30          	add    $0x30,%rsp
140a78fc5:	41 5f                	pop    %r15
140a78fc7:	41 5e                	pop    %r14
140a78fc9:	5f                   	pop    %rdi
140a78fca:	c3                   	ret
140a78fcb:	90                   	nop
140a78fcc:	90                   	nop
140a78fcd:	90                   	nop
140a78fce:	90                   	nop
140a78fcf:	90                   	nop
140a78fd0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140a78fd5:	57                   	push   %rdi
140a78fd6:	48 83 ec 20          	sub    $0x20,%rsp
140a78fda:	8b da                	mov    %edx,%ebx
140a78fdc:	48 8b f9             	mov    %rcx,%rdi
140a78fdf:	e8 1c 00 00 00       	call   0x140a79000
140a78fe4:	f6 c3 01             	test   $0x1,%bl
140a78fe7:	74 08                	je     0x140a78ff1
140a78fe9:	48 8b cf             	mov    %rdi,%rcx
140a78fec:	e8 e3 65 07 00       	call   0x140aef5d4
140a78ff1:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140a78ff6:	48 8b c7             	mov    %rdi,%rax
140a78ff9:	48 83 c4 20          	add    $0x20,%rsp
140a78ffd:	5f                   	pop    %rdi
140a78ffe:	c3                   	ret
140a78fff:	90                   	nop
140a79000:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140a79005:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140a7900a:	57                   	push   %rdi
140a7900b:	48 83 ec 20          	sub    $0x20,%rsp
140a7900f:	48 8b 59 70          	mov    0x70(%rcx),%rbx
140a79013:	83 ce ff             	or     $0xffffffff,%esi
140a79016:	48 8b f9             	mov    %rcx,%rdi
140a79019:	48 85 db             	test   %rbx,%rbx
140a7901c:	74 35                	je     0x140a79053
140a7901e:	8b c6                	mov    %esi,%eax
140a79020:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140a79025:	03 c6                	add    %esi,%eax
140a79027:	75 2a                	jne    0x140a79053
140a79029:	48 8b 03             	mov    (%rbx),%rax
140a7902c:	48 8b cb             	mov    %rbx,%rcx
140a7902f:	48 8b 00             	mov    (%rax),%rax
140a79032:	ff 15 00 3c 09 00    	call   *0x93c00(%rip)        # 0x140b0cc38
140a79038:	8b c6                	mov    %esi,%eax
140a7903a:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
140a7903f:	03 c6                	add    %esi,%eax
140a79041:	75 10                	jne    0x140a79053
140a79043:	48 8b 03             	mov    (%rbx),%rax
140a79046:	48 8b cb             	mov    %rbx,%rcx
140a79049:	48 8b 40 08          	mov    0x8(%rax),%rax
140a7904d:	ff 15 e5 3b 09 00    	call   *0x93be5(%rip)        # 0x140b0cc38
140a79053:	48 8b 5f 50          	mov    0x50(%rdi),%rbx
140a79057:	48 85 db             	test   %rbx,%rbx
140a7905a:	74 35                	je     0x140a79091
140a7905c:	8b c6                	mov    %esi,%eax
140a7905e:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140a79063:	03 c6                	add    %esi,%eax
140a79065:	75 2a                	jne    0x140a79091
140a79067:	48 8b 03             	mov    (%rbx),%rax
140a7906a:	48 8b cb             	mov    %rbx,%rcx
140a7906d:	48 8b 00             	mov    (%rax),%rax
140a79070:	ff 15 c2 3b 09 00    	call   *0x93bc2(%rip)        # 0x140b0cc38
140a79076:	8b c6                	mov    %esi,%eax
140a79078:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
140a7907d:	03 c6                	add    %esi,%eax
140a7907f:	75 10                	jne    0x140a79091
140a79081:	48 8b 03             	mov    (%rbx),%rax
140a79084:	48 8b cb             	mov    %rbx,%rcx
140a79087:	48 8b 40 08          	mov    0x8(%rax),%rax
140a7908b:	ff 15 a7 3b 09 00    	call   *0x93ba7(%rip)        # 0x140b0cc38
140a79091:	48 8b 5f 30          	mov    0x30(%rdi),%rbx
140a79095:	48 85 db             	test   %rbx,%rbx
140a79098:	74 35                	je     0x140a790cf
140a7909a:	8b c6                	mov    %esi,%eax
140a7909c:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140a790a1:	03 c6                	add    %esi,%eax
140a790a3:	75 2a                	jne    0x140a790cf
140a790a5:	48 8b 03             	mov    (%rbx),%rax
140a790a8:	48 8b cb             	mov    %rbx,%rcx
140a790ab:	48 8b 00             	mov    (%rax),%rax
140a790ae:	ff 15 84 3b 09 00    	call   *0x93b84(%rip)        # 0x140b0cc38
140a790b4:	8b c6                	mov    %esi,%eax
140a790b6:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
140a790bb:	03 c6                	add    %esi,%eax
140a790bd:	75 10                	jne    0x140a790cf
140a790bf:	48 8b 03             	mov    (%rbx),%rax
140a790c2:	48 8b cb             	mov    %rbx,%rcx
140a790c5:	48 8b 40 08          	mov    0x8(%rax),%rax
140a790c9:	ff 15 69 3b 09 00    	call   *0x93b69(%rip)        # 0x140b0cc38
140a790cf:	48 8b 5f 20          	mov    0x20(%rdi),%rbx
140a790d3:	48 85 db             	test   %rbx,%rbx
140a790d6:	74 35                	je     0x140a7910d
140a790d8:	8b c6                	mov    %esi,%eax
140a790da:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140a790df:	03 c6                	add    %esi,%eax
140a790e1:	75 2a                	jne    0x140a7910d
140a790e3:	48 8b 03             	mov    (%rbx),%rax
140a790e6:	48 8b cb             	mov    %rbx,%rcx
140a790e9:	48 8b 00             	mov    (%rax),%rax
140a790ec:	ff 15 46 3b 09 00    	call   *0x93b46(%rip)        # 0x140b0cc38
140a790f2:	8b c6                	mov    %esi,%eax
140a790f4:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
140a790f9:	03 c6                	add    %esi,%eax
140a790fb:	75 10                	jne    0x140a7910d
140a790fd:	48 8b 03             	mov    (%rbx),%rax
140a79100:	48 8b cb             	mov    %rbx,%rcx
140a79103:	48 8b 40 08          	mov    0x8(%rax),%rax
140a79107:	ff 15 2b 3b 09 00    	call   *0x93b2b(%rip)        # 0x140b0cc38
140a7910d:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140a79111:	48 85 c9             	test   %rcx,%rcx
140a79114:	74 18                	je     0x140a7912e
140a79116:	8b c6                	mov    %esi,%eax
140a79118:	f0 0f c1 41 0c       	lock xadd %eax,0xc(%rcx)
140a7911d:	03 c6                	add    %esi,%eax
140a7911f:	75 0d                	jne    0x140a7912e
140a79121:	48 8b 01             	mov    (%rcx),%rax
140a79124:	48 8b 40 08          	mov    0x8(%rax),%rax
140a79128:	ff 15 0a 3b 09 00    	call   *0x93b0a(%rip)        # 0x140b0cc38
140a7912e:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140a79133:	48 8d 05 b6 1f 0a 00 	lea    0xa1fb6(%rip),%rax        # 0x140b1b0f0
140a7913a:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140a7913f:	48 89 07             	mov    %rax,(%rdi)
140a79142:	48 83 c4 20          	add    $0x20,%rsp
140a79146:	5f                   	pop    %rdi
140a79147:	c3                   	ret
140a79148:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140a7914d:	57                   	push   %rdi
140a7914e:	48 83 ec 60          	sub    $0x60,%rsp
140a79152:	48 8b 05 e7 5e 24 00 	mov    0x245ee7(%rip),%rax        # 0x140cbf040
140a79159:	48 33 c4             	xor    %rsp,%rax
140a7915c:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
140a79161:	48 8b d9             	mov    %rcx,%rbx
140a79164:	48 8b fa             	mov    %rdx,%rdi
140a79167:	48 8b 49 18          	mov    0x18(%rcx),%rcx
140a7916b:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
140a79170:	48 8b 01             	mov    (%rcx),%rax
140a79173:	48 8b 80 a0 00 00 00 	mov    0xa0(%rax),%rax
140a7917a:	ff 15 b8 3a 09 00    	call   *0x93ab8(%rip)        # 0x140b0cc38
140a79180:	48 8b c8             	mov    %rax,%rcx
140a79183:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140a79188:	e8 c3 31 e9 ff       	call   0x14090c350
140a7918d:	4c 8b c0             	mov    %rax,%r8
140a79190:	48 8d 53 38          	lea    0x38(%rbx),%rdx
140a79194:	48 8b cf             	mov    %rdi,%rcx
140a79197:	e8 f8 32 e9 ff       	call   0x14090c494
140a7919c:	48 8b c7             	mov    %rdi,%rax
140a7919f:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
140a791a4:	48 33 cc             	xor    %rsp,%rcx
140a791a7:	e8 34 64 07 00       	call   0x140aef5e0
140a791ac:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
140a791b3:	00
140a791b4:	48 83 c4 60          	add    $0x60,%rsp
140a791b8:	5f                   	pop    %rdi
140a791b9:	c3                   	ret
140a791ba:	90                   	nop
140a791bb:	90                   	nop
140a791bc:	90                   	nop
140a791bd:	90                   	nop
140a791be:	90                   	nop
140a791bf:	90                   	nop
140a791c0:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140a791c5:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140a791ca:	53                   	push   %rbx
140a791cb:	56                   	push   %rsi
140a791cc:	57                   	push   %rdi
140a791cd:	41 56                	push   %r14
140a791cf:	41 57                	push   %r15
140a791d1:	48 83 ec 60          	sub    $0x60,%rsp
140a791d5:	48 8b f2             	mov    %rdx,%rsi
140a791d8:	4c 8b f1             	mov    %rcx,%r14
140a791db:	4c 8d 79 18          	lea    0x18(%rcx),%r15
140a791df:	4c 89 bc 24 a8 00 00 	mov    %r15,0xa8(%rsp)
140a791e6:	00
140a791e7:	49 8b 0f             	mov    (%r15),%rcx
140a791ea:	48 8b 01             	mov    (%rcx),%rax
140a791ed:	48 8b 80 88 00 00 00 	mov    0x88(%rax),%rax
140a791f4:	ff 15 3e 3a 09 00    	call   *0x93a3e(%rip)        # 0x140b0cc38
140a791fa:	48 8b 06             	mov    (%rsi),%rax
140a791fd:	48 63 48 04          	movslq 0x4(%rax),%rcx
140a79201:	48 03 ce             	add    %rsi,%rcx
140a79204:	48 8b 01             	mov    (%rcx),%rax
140a79207:	48 8b 40 18          	mov    0x18(%rax),%rax
140a7920b:	ff 15 27 3a 09 00    	call   *0x93a27(%rip)        # 0x140b0cc38
140a79211:	4c 8b c0             	mov    %rax,%r8
140a79214:	49 8b 0f             	mov    (%r15),%rcx
140a79217:	48 8b 11             	mov    (%rcx),%rdx
140a7921a:	48 8b 82 a8 00 00 00 	mov    0xa8(%rdx),%rax
140a79221:	49 8b d0             	mov    %r8,%rdx
140a79224:	ff 15 0e 3a 09 00    	call   *0x93a0e(%rip)        # 0x140b0cc38
140a7922a:	48 8d 54 24 48       	lea    0x48(%rsp),%rdx
140a7922f:	49 8b ce             	mov    %r14,%rcx
140a79232:	e8 11 ff ff ff       	call   0x140a79148
140a79237:	0f 10 00             	movups (%rax),%xmm0
140a7923a:	f3 41 0f 7f 46 58    	movdqu %xmm0,0x58(%r14)
140a79240:	48 8b 06             	mov    (%rsi),%rax
140a79243:	48 63 48 04          	movslq 0x4(%rax),%rcx
140a79247:	48 03 ce             	add    %rsi,%rcx
140a7924a:	48 8b 01             	mov    (%rcx),%rax
140a7924d:	49 8d 56 68          	lea    0x68(%r14),%rdx
140a79251:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140a79256:	48 8b 40 68          	mov    0x68(%rax),%rax
140a7925a:	ff 15 d8 39 09 00    	call   *0x939d8(%rip)        # 0x140b0cc38
140a79260:	84 c0                	test   %al,%al
140a79262:	0f 84 d2 01 00 00    	je     0x140a7943a
140a79268:	48 8b 06             	mov    (%rsi),%rax
140a7926b:	48 63 48 04          	movslq 0x4(%rax),%rcx
140a7926f:	48 03 ce             	add    %rsi,%rcx
140a79272:	48 8b 01             	mov    (%rcx),%rax
140a79275:	48 8b 40 08          	mov    0x8(%rax),%rax
140a79279:	ff 15 b9 39 09 00    	call   *0x939b9(%rip)        # 0x140b0cc38
140a7927f:	45 33 c0             	xor    %r8d,%r8d
140a79282:	49 8d 56 58          	lea    0x58(%r14),%rdx
140a79286:	48 8b c8             	mov    %rax,%rcx
140a79289:	e8 be 28 e9 ff       	call   0x14090bb4c
140a7928e:	84 c0                	test   %al,%al
140a79290:	0f 84 a4 01 00 00    	je     0x140a7943a
140a79296:	33 ff                	xor    %edi,%edi
140a79298:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140a7929d:	40 88 7c 24 40       	mov    %dil,0x40(%rsp)
140a792a2:	33 c0                	xor    %eax,%eax
140a792a4:	41 38 46 78          	cmp    %al,0x78(%r14)
140a792a8:	74 34                	je     0x140a792de
140a792aa:	48 8b 06             	mov    (%rsi),%rax
140a792ad:	48 63 58 08          	movslq 0x8(%rax),%rbx
140a792b1:	48 03 de             	add    %rsi,%rbx
140a792b4:	48 8b 03             	mov    (%rbx),%rax
140a792b7:	33 d2                	xor    %edx,%edx
140a792b9:	48 8b cb             	mov    %rbx,%rcx
140a792bc:	48 8b 80 88 00 00 00 	mov    0x88(%rax),%rax
140a792c3:	ff 15 6f 39 09 00    	call   *0x9396f(%rip)        # 0x140b0cc38
140a792c9:	f6 d8                	neg    %al
140a792cb:	48 1b ff             	sbb    %rdi,%rdi
140a792ce:	48 23 fb             	and    %rbx,%rdi
140a792d1:	48 8b c7             	mov    %rdi,%rax
140a792d4:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140a792d9:	c6 44 24 40 00       	movb   $0x0,0x40(%rsp)
140a792de:	41 80 7e 78 00       	cmpb   $0x0,0x78(%r14)
140a792e3:	74 09                	je     0x140a792ee
140a792e5:	48 85 c0             	test   %rax,%rax
140a792e8:	0f 84 2f 01 00 00    	je     0x140a7941d
140a792ee:	48 8b 06             	mov    (%rsi),%rax
140a792f1:	48 63 48 08          	movslq 0x8(%rax),%rcx
140a792f5:	48 03 ce             	add    %rsi,%rcx
140a792f8:	48 8b 01             	mov    (%rcx),%rax
140a792fb:	48 8d 94 24 a0 00 00 	lea    0xa0(%rsp),%rdx
140a79302:	00
140a79303:	48 8b 40 08          	mov    0x8(%rax),%rax
140a79307:	ff 15 2b 39 09 00    	call   *0x9392b(%rip)        # 0x140b0cc38
140a7930d:	48 8b 06             	mov    (%rsi),%rax
140a79310:	48 63 48 08          	movslq 0x8(%rax),%rcx
140a79314:	48 03 ce             	add    %rsi,%rcx
140a79317:	48 8b 01             	mov    (%rcx),%rax
140a7931a:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
140a7931f:	48 8b 40 10          	mov    0x10(%rax),%rax
140a79323:	ff 15 0f 39 09 00    	call   *0x9390f(%rip)        # 0x140b0cc38
140a79329:	48 8b 8c 24 a0 00 00 	mov    0xa0(%rsp),%rcx
140a79330:	00
140a79331:	48 3b 08             	cmp    (%rax),%rcx
140a79334:	0f 84 e3 00 00 00    	je     0x140a7941d
140a7933a:	48 8b 09             	mov    (%rcx),%rcx
140a7933d:	48 8b 01             	mov    (%rcx),%rax
140a79340:	48 8b 54 24 20       	mov    0x20(%rsp),%rdx
140a79345:	48 8b 40 68          	mov    0x68(%rax),%rax
140a79349:	ff 15 e9 38 09 00    	call   *0x938e9(%rip)        # 0x140b0cc38
140a7934f:	84 c0                	test   %al,%al
140a79351:	0f 84 b8 00 00 00    	je     0x140a7940f
140a79357:	49 8b 56 10          	mov    0x10(%r14),%rdx
140a7935b:	48 85 d2             	test   %rdx,%rdx
140a7935e:	0f 84 f5 00 00 00    	je     0x140a79459
140a79364:	8b 42 08             	mov    0x8(%rdx),%eax
140a79367:	eb 0a                	jmp    0x140a79373
140a79369:	8d 48 01             	lea    0x1(%rax),%ecx
140a7936c:	f0 0f b1 4a 08       	lock cmpxchg %ecx,0x8(%rdx)
140a79371:	74 0a                	je     0x140a7937d
140a79373:	85 c0                	test   %eax,%eax
140a79375:	0f 84 de 00 00 00    	je     0x140a79459
140a7937b:	eb ec                	jmp    0x140a79369
140a7937d:	49 8b 46 08          	mov    0x8(%r14),%rax
140a79381:	49 8b 4e 10          	mov    0x10(%r14),%rcx
140a79385:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140a7938a:	48 89 4c 24 50       	mov    %rcx,0x50(%rsp)
140a7938f:	48 8b 84 24 a0 00 00 	mov    0xa0(%rsp),%rax
140a79396:	00
140a79397:	48 8b 08             	mov    (%rax),%rcx
140a7939a:	48 8b 01             	mov    (%rcx),%rax
140a7939d:	48 8d 54 24 48       	lea    0x48(%rsp),%rdx
140a793a2:	48 8b 40 50          	mov    0x50(%rax),%rax
140a793a6:	ff 15 8c 38 09 00    	call   *0x9388c(%rip)        # 0x140b0cc38
140a793ac:	90                   	nop
140a793ad:	eb 18                	jmp    0x140a793c7
140a793af:	4c 8b bc 24 a8 00 00 	mov    0xa8(%rsp),%r15
140a793b6:	00
140a793b7:	48 8b b4 24 98 00 00 	mov    0x98(%rsp),%rsi
140a793be:	00
140a793bf:	4c 8b b4 24 90 00 00 	mov    0x90(%rsp),%r14
140a793c6:	00
140a793c7:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140a793cc:	48 85 db             	test   %rbx,%rbx
140a793cf:	74 39                	je     0x140a7940a
140a793d1:	83 c8 ff             	or     $0xffffffff,%eax
140a793d4:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140a793d9:	83 f8 01             	cmp    $0x1,%eax
140a793dc:	75 2c                	jne    0x140a7940a
140a793de:	48 8b 03             	mov    (%rbx),%rax
140a793e1:	48 8b cb             	mov    %rbx,%rcx
140a793e4:	48 8b 00             	mov    (%rax),%rax
140a793e7:	ff 15 4b 38 09 00    	call   *0x9384b(%rip)        # 0x140b0cc38
140a793ed:	83 c8 ff             	or     $0xffffffff,%eax