140966fd8:	e8 f7 85 18 00       	call   0x140aef5d4
140966fdd:	48 8b c3             	mov    %rbx,%rax
140966fe0:	48 83 c4 20          	add    $0x20,%rsp
140966fe4:	5b                   	pop    %rbx
140966fe5:	c3                   	ret
140966fe6:	90                   	nop
140966fe7:	90                   	nop
140966fe8:	48 8b c4             	mov    %rsp,%rax
140966feb:	48 89 58 20          	mov    %rbx,0x20(%rax)
140966fef:	4c 89 40 18          	mov    %r8,0x18(%rax)
140966ff3:	48 89 50 10          	mov    %rdx,0x10(%rax)
140966ff7:	48 89 48 08          	mov    %rcx,0x8(%rax)
140966ffb:	55                   	push   %rbp
140966ffc:	56                   	push   %rsi
140966ffd:	57                   	push   %rdi
140966ffe:	48 83 ec 30          	sub    $0x30,%rsp
140967002:	49 8b f0             	mov    %r8,%rsi
140967005:	48 8b da             	mov    %rdx,%rbx
140967008:	48 8b f9             	mov    %rcx,%rdi
14096700b:	48 8d 05 16 60 1c 00 	lea    0x1c6016(%rip),%rax        # 0x140b2d028
140967012:	48 89 01             	mov    %rax,(%rcx)
140967015:	48 83 61 08 00       	andq   $0x0,0x8(%rcx)
14096701a:	48 83 61 10 00       	andq   $0x0,0x10(%rcx)
14096701f:	48 8b 42 08          	mov    0x8(%rdx),%rax
140967023:	48 85 c0             	test   %rax,%rax
140967026:	74 04                	je     0x14096702c
140967028:	f0 ff 40 08          	lock incl 0x8(%rax)
14096702c:	48 8b 02             	mov    (%rdx),%rax
14096702f:	48 89 41 08          	mov    %rax,0x8(%rcx)
140967033:	48 8b 42 08          	mov    0x8(%rdx),%rax
140967037:	48 89 41 10          	mov    %rax,0x10(%rcx)
14096703b:	48 83 61 18 00       	andq   $0x0,0x18(%rcx)
140967040:	48 83 61 20 00       	andq   $0x0,0x20(%rcx)
140967045:	49 8b 40 08          	mov    0x8(%r8),%rax
140967049:	48 85 c0             	test   %rax,%rax
14096704c:	74 04                	je     0x140967052
14096704e:	f0 ff 40 08          	lock incl 0x8(%rax)
140967052:	49 8b 00             	mov    (%r8),%rax
140967055:	48 89 41 18          	mov    %rax,0x18(%rcx)
140967059:	49 8b 40 08          	mov    0x8(%r8),%rax
14096705d:	48 89 41 20          	mov    %rax,0x20(%rcx)
140967061:	83 61 30 00          	andl   $0x0,0x30(%rcx)
140967065:	83 61 38 00          	andl   $0x0,0x38(%rcx)
140967069:	48 8b 49 08          	mov    0x8(%rcx),%rcx
14096706d:	48 8b 01             	mov    (%rcx),%rax
140967070:	48 8b 40 28          	mov    0x28(%rax),%rax
140967074:	ff 15 be 5b 1a 00    	call   *0x1a5bbe(%rip)        # 0x140b0cc38
14096707a:	89 47 2c             	mov    %eax,0x2c(%rdi)
14096707d:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
140967081:	48 85 c9             	test   %rcx,%rcx
140967084:	74 0f                	je     0x140967095
140967086:	48 8b 01             	mov    (%rcx),%rax
140967089:	48 8b 40 28          	mov    0x28(%rax),%rax
14096708d:	ff 15 a5 5b 1a 00    	call   *0x1a5ba5(%rip)        # 0x140b0cc38
140967093:	eb 02                	jmp    0x140967097
140967095:	33 c0                	xor    %eax,%eax
140967097:	89 47 28             	mov    %eax,0x28(%rdi)
14096709a:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
14096709e:	48 8b 01             	mov    (%rcx),%rax
1409670a1:	45 33 c9             	xor    %r9d,%r9d
1409670a4:	45 33 c0             	xor    %r8d,%r8d
1409670a7:	33 d2                	xor    %edx,%edx
1409670a9:	48 8b 40 10          	mov    0x10(%rax),%rax
1409670ad:	ff 15 85 5b 1a 00    	call   *0x1a5b85(%rip)        # 0x140b0cc38
1409670b3:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
1409670b7:	48 85 c9             	test   %rcx,%rcx
1409670ba:	74 16                	je     0x1409670d2
1409670bc:	48 8b 01             	mov    (%rcx),%rax
1409670bf:	45 33 c9             	xor    %r9d,%r9d
1409670c2:	45 33 c0             	xor    %r8d,%r8d
1409670c5:	33 d2                	xor    %edx,%edx
1409670c7:	48 8b 40 10          	mov    0x10(%rax),%rax
1409670cb:	ff 15 67 5b 1a 00    	call   *0x1a5b67(%rip)        # 0x140b0cc38
1409670d1:	90                   	nop
1409670d2:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
1409670d6:	83 cd ff             	or     $0xffffffff,%ebp
1409670d9:	48 85 db             	test   %rbx,%rbx
1409670dc:	74 36                	je     0x140967114
1409670de:	8b c5                	mov    %ebp,%eax
1409670e0:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
1409670e5:	03 c5                	add    %ebp,%eax
1409670e7:	75 2b                	jne    0x140967114
1409670e9:	48 8b 03             	mov    (%rbx),%rax
1409670ec:	48 8b cb             	mov    %rbx,%rcx
1409670ef:	48 8b 00             	mov    (%rax),%rax
1409670f2:	ff 15 40 5b 1a 00    	call   *0x1a5b40(%rip)        # 0x140b0cc38
1409670f8:	8b c5                	mov    %ebp,%eax
1409670fa:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
1409670ff:	03 c5                	add    %ebp,%eax
140967101:	75 11                	jne    0x140967114
140967103:	48 8b 03             	mov    (%rbx),%rax
140967106:	48 8b cb             	mov    %rbx,%rcx
140967109:	48 8b 40 08          	mov    0x8(%rax),%rax
14096710d:	ff 15 25 5b 1a 00    	call   *0x1a5b25(%rip)        # 0x140b0cc38
140967113:	90                   	nop
140967114:	48 8b 5e 08          	mov    0x8(%rsi),%rbx
140967118:	48 85 db             	test   %rbx,%rbx
14096711b:	74 35                	je     0x140967152
14096711d:	8b c5                	mov    %ebp,%eax
14096711f:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140967124:	03 c5                	add    %ebp,%eax
140967126:	75 2a                	jne    0x140967152
140967128:	48 8b 03             	mov    (%rbx),%rax
14096712b:	48 8b cb             	mov    %rbx,%rcx
14096712e:	48 8b 00             	mov    (%rax),%rax
140967131:	ff 15 01 5b 1a 00    	call   *0x1a5b01(%rip)        # 0x140b0cc38
140967137:	8b c5                	mov    %ebp,%eax
140967139:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
14096713e:	03 c5                	add    %ebp,%eax
140967140:	75 10                	jne    0x140967152
140967142:	48 8b 03             	mov    (%rbx),%rax
140967145:	48 8b cb             	mov    %rbx,%rcx
140967148:	48 8b 40 08          	mov    0x8(%rax),%rax
14096714c:	ff 15 e6 5a 1a 00    	call   *0x1a5ae6(%rip)        # 0x140b0cc38
140967152:	48 8b c7             	mov    %rdi,%rax
140967155:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
14096715a:	48 83 c4 30          	add    $0x30,%rsp
14096715e:	5f                   	pop    %rdi
14096715f:	5e                   	pop    %rsi
140967160:	5d                   	pop    %rbp
140967161:	c3                   	ret
140967162:	90                   	nop
140967163:	90                   	nop
140967164:	90                   	nop
140967165:	90                   	nop
140967166:	90                   	nop
140967167:	90                   	nop
140967168:	90                   	nop
140967169:	90                   	nop
14096716a:	90                   	nop
14096716b:	90                   	nop
14096716c:	90                   	nop
14096716d:	90                   	nop
14096716e:	90                   	nop
14096716f:	90                   	nop
140967170:	83 61 38 00          	andl   $0x0,0x38(%rcx)
140967174:	c3                   	ret
140967175:	90                   	nop
140967176:	90                   	nop
140967177:	90                   	nop
140967178:	90                   	nop
140967179:	90                   	nop
14096717a:	90                   	nop
14096717b:	90                   	nop
14096717c:	90                   	nop
14096717d:	90                   	nop
14096717e:	90                   	nop
14096717f:	90                   	nop
140967180:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140967185:	57                   	push   %rdi
140967186:	48 83 ec 20          	sub    $0x20,%rsp
14096718a:	48 8b d9             	mov    %rcx,%rbx
14096718d:	33 ff                	xor    %edi,%edi
14096718f:	8b 49 38             	mov    0x38(%rcx),%ecx
140967192:	85 c9                	test   %ecx,%ecx
140967194:	75 19                	jne    0x1409671af
140967196:	48 8b 03             	mov    (%rbx),%rax
140967199:	48 8b cb             	mov    %rbx,%rcx
14096719c:	c7 43 38 07 00 00 00 	movl   $0x7,0x38(%rbx)
1409671a3:	48 8b 40 18          	mov    0x18(%rax),%rax
1409671a7:	ff 15 8b 5a 1a 00    	call   *0x1a5a8b(%rip)        # 0x140b0cc38
1409671ad:	eb 05                	jmp    0x1409671b4
1409671af:	ff c9                	dec    %ecx
1409671b1:	89 4b 38             	mov    %ecx,0x38(%rbx)
1409671b4:	8b 4b 38             	mov    0x38(%rbx),%ecx
1409671b7:	ba 01 00 00 00       	mov    $0x1,%edx
1409671bc:	d3 e2                	shl    %cl,%edx
1409671be:	84 53 34             	test   %dl,0x34(%rbx)
1409671c1:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1409671c6:	40 0f 95 c7          	setne  %dil
1409671ca:	0f b7 c7             	movzwl %di,%eax
1409671cd:	48 83 c4 20          	add    $0x20,%rsp
1409671d1:	5f                   	pop    %rdi
1409671d2:	c3                   	ret
1409671d3:	90                   	nop
1409671d4:	90                   	nop
1409671d5:	90                   	nop
1409671d6:	90                   	nop
1409671d7:	90                   	nop
1409671d8:	90                   	nop
1409671d9:	90                   	nop
1409671da:	90                   	nop
1409671db:	90                   	nop
1409671dc:	90                   	nop
1409671dd:	90                   	nop
1409671de:	90                   	nop
1409671df:	90                   	nop
1409671e0:	40 53                	rex push %rbx
1409671e2:	48 83 ec 20          	sub    $0x20,%rsp
1409671e6:	8b 41 28             	mov    0x28(%rcx),%eax
1409671e9:	48 8b d9             	mov    %rcx,%rbx
1409671ec:	c6 41 34 00          	movb   $0x0,0x34(%rcx)
1409671f0:	39 41 30             	cmp    %eax,0x30(%rcx)
1409671f3:	73 06                	jae    0x1409671fb
1409671f5:	48 8b 49 18          	mov    0x18(%rcx),%rcx
1409671f9:	eb 04                	jmp    0x1409671ff
1409671fb:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1409671ff:	48 8b 01             	mov    (%rcx),%rax
140967202:	48 8b 40 18          	mov    0x18(%rax),%rax
140967206:	ff 15 2c 5a 1a 00    	call   *0x1a5a2c(%rip)        # 0x140b0cc38
14096720c:	88 43 34             	mov    %al,0x34(%rbx)
14096720f:	ff 43 30             	incl   0x30(%rbx)
140967212:	48 83 c4 20          	add    $0x20,%rsp
140967216:	5b                   	pop    %rbx
140967217:	c3                   	ret
140967218:	90                   	nop
140967219:	90                   	nop
14096721a:	90                   	nop
14096721b:	90                   	nop
14096721c:	90                   	nop
14096721d:	90                   	nop
14096721e:	90                   	nop
14096721f:	90                   	nop
140967220:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140967225:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14096722a:	57                   	push   %rdi
14096722b:	48 83 ec 20          	sub    $0x20,%rsp
14096722f:	33 db                	xor    %ebx,%ebx
140967231:	48 8b f1             	mov    %rcx,%rsi
140967234:	8d 7b 04             	lea    0x4(%rbx),%edi
140967237:	48 8b 16             	mov    (%rsi),%rdx
14096723a:	48 8b ce             	mov    %rsi,%rcx
14096723d:	ff cf                	dec    %edi
14096723f:	48 8b 42 18          	mov    0x18(%rdx),%rax
140967243:	ff 15 ef 59 1a 00    	call   *0x1a59ef(%rip)        # 0x140b0cc38
140967249:	c1 e3 08             	shl    $0x8,%ebx
14096724c:	0f b6 c8             	movzbl %al,%ecx
14096724f:	03 cb                	add    %ebx,%ecx
140967251:	8b d9                	mov    %ecx,%ebx
140967253:	85 ff                	test   %edi,%edi
140967255:	7f e0                	jg     0x140967237
140967257:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14096725c:	8b c1                	mov    %ecx,%eax
14096725e:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140967263:	48 83 c4 20          	add    $0x20,%rsp
140967267:	5f                   	pop    %rdi
140967268:	c3                   	ret
140967269:	90                   	nop
14096726a:	90                   	nop
14096726b:	90                   	nop
14096726c:	90                   	nop
14096726d:	90                   	nop
14096726e:	90                   	nop
14096726f:	90                   	nop
140967270:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140967275:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14096727a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14096727f:	57                   	push   %rdi
140967280:	48 83 ec 20          	sub    $0x20,%rsp
140967284:	33 ed                	xor    %ebp,%ebp
140967286:	48 8b f1             	mov    %rcx,%rsi
140967289:	0f b7 dd             	movzwl %bp,%ebx
14096728c:	8d 7d 02             	lea    0x2(%rbp),%edi
14096728f:	48 8b 06             	mov    (%rsi),%rax
140967292:	48 8b ce             	mov    %rsi,%rcx
140967295:	ff cf                	dec    %edi
140967297:	48 8b 40 18          	mov    0x18(%rax),%rax
14096729b:	ff 15 97 59 1a 00    	call   *0x1a5997(%rip)        # 0x140b0cc38
1409672a1:	0f b6 d0             	movzbl %al,%edx
1409672a4:	b8 00 01 00 00       	mov    $0x100,%eax
1409672a9:	0f b7 cb             	movzwl %bx,%ecx
1409672ac:	0f af c8             	imul   %eax,%ecx
1409672af:	66 03 d1             	add    %cx,%dx
1409672b2:	0f b7 da             	movzwl %dx,%ebx
1409672b5:	85 ff                	test   %edi,%edi
1409672b7:	7f d6                	jg     0x14096728f
1409672b9:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1409672be:	0f b7 c2             	movzwl %dx,%eax
1409672c1:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
1409672c6:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1409672cb:	48 83 c4 20          	add    $0x20,%rsp
1409672cf:	5f                   	pop    %rdi
1409672d0:	c3                   	ret
1409672d1:	90                   	nop
1409672d2:	90                   	nop
1409672d3:	90                   	nop
1409672d4:	90                   	nop
1409672d5:	90                   	nop
1409672d6:	90                   	nop
1409672d7:	90                   	nop
1409672d8:	90                   	nop
1409672d9:	90                   	nop
1409672da:	90                   	nop
1409672db:	90                   	nop
1409672dc:	90                   	nop
1409672dd:	90                   	nop
1409672de:	90                   	nop
1409672df:	90                   	nop
1409672e0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1409672e5:	57                   	push   %rdi
1409672e6:	48 83 ec 30          	sub    $0x30,%rsp
1409672ea:	45 33 c9             	xor    %r9d,%r9d
1409672ed:	45 33 c0             	xor    %r8d,%r8d
1409672f0:	8b fa                	mov    %edx,%edi
1409672f2:	48 8b d9             	mov    %rcx,%rbx
1409672f5:	3b 51 28             	cmp    0x28(%rcx),%edx
1409672f8:	73 1f                	jae    0x140967319
1409672fa:	48 8b 49 18          	mov    0x18(%rcx),%rcx
1409672fe:	48 8b 01             	mov    (%rcx),%rax
140967301:	48 8b 40 10          	mov    0x10(%rax),%rax
140967305:	ff 15 2d 59 1a 00    	call   *0x1a592d(%rip)        # 0x140b0cc38
14096730b:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
14096730f:	45 33 c9             	xor    %r9d,%r9d
140967312:	45 33 c0             	xor    %r8d,%r8d
140967315:	33 d2                	xor    %edx,%edx
140967317:	eb 07                	jmp    0x140967320
140967319:	48 8b 49 08          	mov    0x8(%rcx),%rcx
14096731d:	2b 53 28             	sub    0x28(%rbx),%edx
140967320:	48 8b 01             	mov    (%rcx),%rax
140967323:	48 8b 40 10          	mov    0x10(%rax),%rax
140967327:	ff 15 0b 59 1a 00    	call   *0x1a590b(%rip)        # 0x140b0cc38
14096732d:	83 63 38 00          	andl   $0x0,0x38(%rbx)
140967331:	89 7b 30             	mov    %edi,0x30(%rbx)
140967334:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140967339:	48 83 c4 30          	add    $0x30,%rsp
14096733d:	5f                   	pop    %rdi
14096733e:	c3                   	ret
14096733f:	90                   	nop
140967340:	8b 41 2c             	mov    0x2c(%rcx),%eax
140967343:	03 41 28             	add    0x28(%rcx),%eax
140967346:	39 41 30             	cmp    %eax,0x30(%rcx)
140967349:	0f 93 c0             	setae  %al
14096734c:	c3                   	ret
14096734d:	90                   	nop
14096734e:	90                   	nop
14096734f:	90                   	nop
140967350:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140967355:	57                   	push   %rdi
140967356:	48 83 ec 20          	sub    $0x20,%rsp
14096735a:	8b da                	mov    %edx,%ebx
14096735c:	48 8b f9             	mov    %rcx,%rdi
14096735f:	e8 1c 00 00 00       	call   0x140967380
140967364:	f6 c3 01             	test   $0x1,%bl
140967367:	74 08                	je     0x140967371
140967369:	48 8b cf             	mov    %rdi,%rcx
14096736c:	e8 63 82 18 00       	call   0x140aef5d4
140967371:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140967376:	48 8b c7             	mov    %rdi,%rax
140967379:	48 83 c4 20          	add    $0x20,%rsp
14096737d:	5f                   	pop    %rdi
14096737e:	c3                   	ret
14096737f:	90                   	nop
140967380:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140967385:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14096738a:	57                   	push   %rdi
14096738b:	48 83 ec 20          	sub    $0x20,%rsp
14096738f:	48 8b 59 20          	mov    0x20(%rcx),%rbx
140967393:	83 ce ff             	or     $0xffffffff,%esi
140967396:	48 8b f9             	mov    %rcx,%rdi
140967399:	48 85 db             	test   %rbx,%rbx