140023fac:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
140023fb0:	48 85 c9             	test   %rcx,%rcx
140023fb3:	74 21                	je     0x140023fd6
140023fb5:	80 7d d8 00          	cmpb   $0x0,-0x28(%rbp)
140023fb9:	74 13                	je     0x140023fce
140023fbb:	e8 d3 f3 fd ff       	call   0x140003393
140023fc0:	ba 18 00 00 00       	mov    $0x18,%edx
140023fc5:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
140023fc9:	e8 e6 32 01 00       	call   0x1400372b4
140023fce:	4c 89 6d d0          	mov    %r13,-0x30(%rbp)
140023fd2:	c6 45 d8 00          	movb   $0x0,-0x28(%rbp)
140023fd6:	4c 89 75 e0          	mov    %r14,-0x20(%rbp)
140023fda:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
140023fde:	48 85 c9             	test   %rcx,%rcx
140023fe1:	74 21                	je     0x140024004
140023fe3:	80 7d f0 00          	cmpb   $0x0,-0x10(%rbp)
140023fe7:	74 13                	je     0x140023ffc
140023fe9:	e8 a5 f3 fd ff       	call   0x140003393
140023fee:	ba 18 00 00 00       	mov    $0x18,%edx
140023ff3:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
140023ff7:	e8 b8 32 01 00       	call   0x1400372b4
140023ffc:	4c 89 6d e8          	mov    %r13,-0x18(%rbp)
140024000:	c6 45 f0 00          	movb   $0x0,-0x10(%rbp)
140024004:	83 e7 f7             	and    $0xfffffff7,%edi
140024007:	89 7d b0             	mov    %edi,-0x50(%rbp)
14002400a:	48 85 db             	test   %rbx,%rbx
14002400d:	74 15                	je     0x140024024
14002400f:	48 8b 43 08          	mov    0x8(%rbx),%rax
140024013:	48 63 48 04          	movslq 0x4(%rax),%rcx
140024017:	48 83 c1 08          	add    $0x8,%rcx
14002401b:	48 03 cb             	add    %rbx,%rcx
14002401e:	48 8b 01             	mov    (%rcx),%rax
140024021:	ff 50 08             	call   *0x8(%rax)
140024024:	8b c6                	mov    %esi,%eax
140024026:	eb 02                	jmp    0x14002402a
140024028:	33 c0                	xor    %eax,%eax
14002402a:	4c 8d 9c 24 80 00 00 	lea    0x80(%rsp),%r11
140024031:	00
140024032:	49 8b 5b 38          	mov    0x38(%r11),%rbx
140024036:	49 8b 73 40          	mov    0x40(%r11),%rsi
14002403a:	49 8b 7b 48          	mov    0x48(%r11),%rdi
14002403e:	49 8b e3             	mov    %r11,%rsp
140024041:	41 5f                	pop    %r15
140024043:	41 5e                	pop    %r14
140024045:	41 5d                	pop    %r13
140024047:	41 5c                	pop    %r12
140024049:	5d                   	pop    %rbp
14002404a:	c3                   	ret
14002404b:	cc                   	int3
14002404c:	cc                   	int3
14002404d:	cc                   	int3
14002404e:	cc                   	int3
14002404f:	cc                   	int3
140024050:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140024055:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14002405a:	56                   	push   %rsi
14002405b:	57                   	push   %rdi
14002405c:	41 54                	push   %r12
14002405e:	41 56                	push   %r14
140024060:	41 57                	push   %r15
140024062:	48 83 ec 70          	sub    $0x70,%rsp
140024066:	45 8b f9             	mov    %r9d,%r15d
140024069:	4d 8b e0             	mov    %r8,%r12
14002406c:	48 8b ea             	mov    %rdx,%rbp
14002406f:	48 8b f1             	mov    %rcx,%rsi
140024072:	c7 44 24 30 00 00 00 	movl   $0x0,0x30(%rsp)
140024079:	00
14002407a:	e8 e1 d4 fd ff       	call   0x140001560
14002407f:	48 85 f6             	test   %rsi,%rsi
140024082:	0f 84 bb 00 00 00    	je     0x140024143
140024088:	48 85 ed             	test   %rbp,%rbp
14002408b:	0f 84 b2 00 00 00    	je     0x140024143
140024091:	48 8b 84 24 c0 00 00 	mov    0xc0(%rsp),%rax
140024098:	00
140024099:	48 85 c0             	test   %rax,%rax
14002409c:	0f 84 a1 00 00 00    	je     0x140024143
1400240a2:	0f 10 00             	movups (%rax),%xmm0
1400240a5:	0f 11 44 24 48       	movups %xmm0,0x48(%rsp)
1400240aa:	0f 10 48 10          	movups 0x10(%rax),%xmm1
1400240ae:	0f 11 4c 24 58       	movups %xmm1,0x58(%rsp)
1400240b3:	48 8b 76 f0          	mov    -0x10(%rsi),%rsi
1400240b7:	48 89 74 24 38       	mov    %rsi,0x38(%rsp)
1400240bc:	48 85 f6             	test   %rsi,%rsi
1400240bf:	74 14                	je     0x1400240d5
1400240c1:	48 8b 46 08          	mov    0x8(%rsi),%rax
1400240c5:	48 63 48 04          	movslq 0x4(%rax),%rcx
1400240c9:	48 83 c1 08          	add    $0x8,%rcx
1400240cd:	48 03 ce             	add    %rsi,%rcx
1400240d0:	48 8b 01             	mov    (%rcx),%rax
1400240d3:	ff 10                	call   *(%rax)
1400240d5:	bf 10 00 00 00       	mov    $0x10,%edi
1400240da:	89 7c 24 30          	mov    %edi,0x30(%rsp)
1400240de:	48 8b 06             	mov    (%rsi),%rax
1400240e1:	48 8b 58 48          	mov    0x48(%rax),%rbx
1400240e5:	48 8d 84 24 a0 00 00 	lea    0xa0(%rsp),%rax
1400240ec:	00
1400240ed:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
1400240f2:	48 8b d5             	mov    %rbp,%rdx
1400240f5:	48 8d 8c 24 a0 00 00 	lea    0xa0(%rsp),%rcx
1400240fc:	00
1400240fd:	e8 de 09 fe ff       	call   0x140004ae0
140024102:	90                   	nop
140024103:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140024108:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14002410d:	45 8b cf             	mov    %r15d,%r9d
140024110:	4d 8b c4             	mov    %r12,%r8
140024113:	48 8b d0             	mov    %rax,%rdx
140024116:	48 8b ce             	mov    %rsi,%rcx
140024119:	ff d3                	call   *%rbx
14002411b:	0f b6 d8             	movzbl %al,%ebx
14002411e:	83 e7 ef             	and    $0xffffffef,%edi
140024121:	89 7c 24 30          	mov    %edi,0x30(%rsp)
140024125:	48 85 f6             	test   %rsi,%rsi
140024128:	74 15                	je     0x14002413f
14002412a:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
14002412e:	48 63 49 04          	movslq 0x4(%rcx),%rcx
140024132:	48 83 c1 08          	add    $0x8,%rcx
140024136:	48 03 ce             	add    %rsi,%rcx
140024139:	48 8b 11             	mov    (%rcx),%rdx
14002413c:	ff 52 08             	call   *0x8(%rdx)
14002413f:	8b c3                	mov    %ebx,%eax
140024141:	eb 02                	jmp    0x140024145
140024143:	33 c0                	xor    %eax,%eax
140024145:	4c 8d 5c 24 70       	lea    0x70(%rsp),%r11
14002414a:	49 8b 5b 38          	mov    0x38(%r11),%rbx
14002414e:	49 8b 6b 40          	mov    0x40(%r11),%rbp
140024152:	49 8b e3             	mov    %r11,%rsp
140024155:	41 5f                	pop    %r15
140024157:	41 5e                	pop    %r14
140024159:	41 5c                	pop    %r12
14002415b:	5f                   	pop    %rdi
14002415c:	5e                   	pop    %rsi
14002415d:	c3                   	ret
14002415e:	cc                   	int3
14002415f:	cc                   	int3
140024160:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140024165:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14002416a:	56                   	push   %rsi
14002416b:	57                   	push   %rdi
14002416c:	41 56                	push   %r14
14002416e:	48 83 ec 50          	sub    $0x50,%rsp
140024172:	49 8b d8             	mov    %r8,%rbx
140024175:	48 8b ea             	mov    %rdx,%rbp
140024178:	48 8b f1             	mov    %rcx,%rsi
14002417b:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
140024182:	00
140024183:	e8 d8 d3 fd ff       	call   0x140001560
140024188:	48 85 f6             	test   %rsi,%rsi
14002418b:	0f 84 44 01 00 00    	je     0x1400242d5
140024191:	48 85 ed             	test   %rbp,%rbp
140024194:	0f 84 3b 01 00 00    	je     0x1400242d5
14002419a:	0f 57 c0             	xorps  %xmm0,%xmm0
14002419d:	f3 0f 7f 44 24 30    	movdqu %xmm0,0x30(%rsp)
1400241a3:	48 c7 44 24 40 00 00 	movq   $0x0,0x40(%rsp)
1400241aa:	00 00
1400241ac:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1400241b1:	48 8b cb             	mov    %rbx,%rcx
1400241b4:	e8 17 80 fe ff       	call   0x14000c1d0
1400241b9:	90                   	nop
1400241ba:	48 8b 76 f0          	mov    -0x10(%rsi),%rsi
1400241be:	48 89 b4 24 88 00 00 	mov    %rsi,0x88(%rsp)
1400241c5:	00
1400241c6:	48 85 f6             	test   %rsi,%rsi
1400241c9:	74 14                	je     0x1400241df
1400241cb:	48 8b 46 08          	mov    0x8(%rsi),%rax
1400241cf:	48 63 48 04          	movslq 0x4(%rax),%rcx
1400241d3:	48 83 c1 08          	add    $0x8,%rcx
1400241d7:	48 03 ce             	add    %rsi,%rcx
1400241da:	48 8b 01             	mov    (%rcx),%rax
1400241dd:	ff 10                	call   *(%rax)
1400241df:	bf 08 00 00 00       	mov    $0x8,%edi
1400241e4:	89 7c 24 20          	mov    %edi,0x20(%rsp)
1400241e8:	48 8b 06             	mov    (%rsi),%rax
1400241eb:	48 8b 58 10          	mov    0x10(%rax),%rbx
1400241ef:	48 8d 44 24 70       	lea    0x70(%rsp),%rax
1400241f4:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1400241f9:	48 8b d5             	mov    %rbp,%rdx
1400241fc:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
140024201:	e8 da 08 fe ff       	call   0x140004ae0
140024206:	90                   	nop
140024207:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
14002420c:	48 8b d0             	mov    %rax,%rdx
14002420f:	48 8b ce             	mov    %rsi,%rcx
140024212:	ff d3                	call   *%rbx
140024214:	83 e7 f7             	and    $0xfffffff7,%edi
140024217:	89 7c 24 20          	mov    %edi,0x20(%rsp)
14002421b:	48 85 f6             	test   %rsi,%rsi
14002421e:	74 16                	je     0x140024236
140024220:	48 8b 46 08          	mov    0x8(%rsi),%rax
140024224:	48 63 48 04          	movslq 0x4(%rax),%rcx
140024228:	48 83 c1 08          	add    $0x8,%rcx
14002422c:	48 03 ce             	add    %rsi,%rcx
14002422f:	48 8b 01             	mov    (%rcx),%rax
140024232:	ff 50 08             	call   *0x8(%rax)
140024235:	90                   	nop
140024236:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14002423b:	48 85 db             	test   %rbx,%rbx
14002423e:	0f 84 91 00 00 00    	je     0x1400242d5
140024244:	48 8b 7c 24 38       	mov    0x38(%rsp),%rdi
140024249:	48 3b df             	cmp    %rdi,%rbx
14002424c:	74 1a                	je     0x140024268
14002424e:	66 90                	xchg   %ax,%ax
140024250:	48 8b 03             	mov    (%rbx),%rax
140024253:	33 d2                	xor    %edx,%edx
140024255:	48 8b cb             	mov    %rbx,%rcx
140024258:	ff 10                	call   *(%rax)
14002425a:	48 83 c3 18          	add    $0x18,%rbx
14002425e:	48 3b df             	cmp    %rdi,%rbx
140024261:	75 ed                	jne    0x140024250
140024263:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140024268:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
14002426d:	48 2b cb             	sub    %rbx,%rcx
140024270:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
140024277:	aa aa 2a
14002427a:	48 f7 e9             	imul   %rcx
14002427d:	48 c1 fa 02          	sar    $0x2,%rdx
140024281:	48 8b c2             	mov    %rdx,%rax
140024284:	48 c1 e8 3f          	shr    $0x3f,%rax
140024288:	48 03 d0             	add    %rax,%rdx
14002428b:	48 8d 14 52          	lea    (%rdx,%rdx,2),%rdx
14002428f:	48 c1 e2 03          	shl    $0x3,%rdx
140024293:	48 8b c3             	mov    %rbx,%rax
140024296:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14002429d:	72 1c                	jb     0x1400242bb
14002429f:	48 83 c2 27          	add    $0x27,%rdx
1400242a3:	48 8b 5b f8          	mov    -0x8(%rbx),%rbx
1400242a7:	48 2b c3             	sub    %rbx,%rax
1400242aa:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
1400242ae:	48 83 f8 1f          	cmp    $0x1f,%rax
1400242b2:	76 07                	jbe    0x1400242bb
1400242b4:	ff 15 fe 6e 01 00    	call   *0x16efe(%rip)        # 0x14003b1b8
1400242ba:	cc                   	int3
1400242bb:	48 8b cb             	mov    %rbx,%rcx
1400242be:	e8 f1 2f 01 00       	call   0x1400372b4
1400242c3:	0f 57 c0             	xorps  %xmm0,%xmm0
1400242c6:	f3 0f 7f 44 24 30    	movdqu %xmm0,0x30(%rsp)
1400242cc:	48 c7 44 24 40 00 00 	movq   $0x0,0x40(%rsp)
1400242d3:	00 00
1400242d5:	48 8b 5c 24 78       	mov    0x78(%rsp),%rbx
1400242da:	48 8b ac 24 80 00 00 	mov    0x80(%rsp),%rbp
1400242e1:	00
1400242e2:	48 83 c4 50          	add    $0x50,%rsp
1400242e6:	41 5e                	pop    %r14
1400242e8:	5f                   	pop    %rdi
1400242e9:	5e                   	pop    %rsi
1400242ea:	c3                   	ret
1400242eb:	cc                   	int3
1400242ec:	cc                   	int3
1400242ed:	cc                   	int3
1400242ee:	cc                   	int3
1400242ef:	cc                   	int3
1400242f0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1400242f5:	55                   	push   %rbp
1400242f6:	56                   	push   %rsi
1400242f7:	57                   	push   %rdi
1400242f8:	41 56                	push   %r14
1400242fa:	41 57                	push   %r15
1400242fc:	48 83 ec 30          	sub    $0x30,%rsp
140024300:	45 8b f8             	mov    %r8d,%r15d
140024303:	48 8b ea             	mov    %rdx,%rbp
140024306:	48 8b f1             	mov    %rcx,%rsi
140024309:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
140024310:	00
140024311:	e8 4a d2 fd ff       	call   0x140001560
140024316:	48 85 f6             	test   %rsi,%rsi
140024319:	74 7f                	je     0x14002439a
14002431b:	48 85 ed             	test   %rbp,%rbp
14002431e:	74 7a                	je     0x14002439a
140024320:	48 8b 76 f0          	mov    -0x10(%rsi),%rsi
140024324:	48 89 74 24 78       	mov    %rsi,0x78(%rsp)
140024329:	48 85 f6             	test   %rsi,%rsi
14002432c:	74 14                	je     0x140024342
14002432e:	48 8b 46 08          	mov    0x8(%rsi),%rax
140024332:	48 63 48 04          	movslq 0x4(%rax),%rcx
140024336:	48 83 c1 08          	add    $0x8,%rcx
14002433a:	48 03 ce             	add    %rsi,%rcx
14002433d:	48 8b 01             	mov    (%rcx),%rax
140024340:	ff 10                	call   *(%rax)
140024342:	bf 08 00 00 00       	mov    $0x8,%edi
140024347:	89 7c 24 20          	mov    %edi,0x20(%rsp)
14002434b:	48 8b 06             	mov    (%rsi),%rax
14002434e:	48 8b 58 18          	mov    0x18(%rax),%rbx
140024352:	48 8d 44 24 60       	lea    0x60(%rsp),%rax
140024357:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14002435c:	48 8b d5             	mov    %rbp,%rdx
14002435f:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
140024364:	e8 77 07 fe ff       	call   0x140004ae0
140024369:	90                   	nop
14002436a:	45 85 ff             	test   %r15d,%r15d
14002436d:	41 0f 95 c0          	setne  %r8b
140024371:	48 8b d0             	mov    %rax,%rdx
140024374:	48 8b ce             	mov    %rsi,%rcx
140024377:	ff d3                	call   *%rbx
140024379:	83 e7 f7             	and    $0xfffffff7,%edi
14002437c:	89 7c 24 20          	mov    %edi,0x20(%rsp)
140024380:	48 85 f6             	test   %rsi,%rsi
140024383:	74 15                	je     0x14002439a
140024385:	48 8b 46 08          	mov    0x8(%rsi),%rax
140024389:	48 63 48 04          	movslq 0x4(%rax),%rcx
14002438d:	48 83 c1 08          	add    $0x8,%rcx
140024391:	48 03 ce             	add    %rsi,%rcx
140024394:	48 8b 01             	mov    (%rcx),%rax
140024397:	ff 50 08             	call   *0x8(%rax)
14002439a:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
14002439f:	48 83 c4 30          	add    $0x30,%rsp
1400243a3:	41 5f                	pop    %r15
1400243a5:	41 5e                	pop    %r14
1400243a7:	5f                   	pop    %rdi
1400243a8:	5e                   	pop    %rsi
1400243a9:	5d                   	pop    %rbp
1400243aa:	c3                   	ret
1400243ab:	cc                   	int3
1400243ac:	cc                   	int3
1400243ad:	cc                   	int3
1400243ae:	cc                   	int3
1400243af:	cc                   	int3
1400243b0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1400243b5:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1400243ba:	56                   	push   %rsi
1400243bb:	57                   	push   %rdi
1400243bc:	41 56                	push   %r14
1400243be:	48 83 ec 40          	sub    $0x40,%rsp
1400243c2:	0f 29 74 24 30       	movaps %xmm6,0x30(%rsp)
1400243c7:	0f 28 f2             	movaps %xmm2,%xmm6
1400243ca:	48 8b ea             	mov    %rdx,%rbp
1400243cd:	48 8b f1             	mov    %rcx,%rsi
1400243d0:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
1400243d7:	00
1400243d8:	e8 83 d1 fd ff       	call   0x140001560
1400243dd:	48 85 f6             	test   %rsi,%rsi
1400243e0:	74 7b                	je     0x14002445d
1400243e2:	48 85 ed             	test   %rbp,%rbp
1400243e5:	74 76                	je     0x14002445d
1400243e7:	48 8b 76 f0          	mov    -0x10(%rsi),%rsi
1400243eb:	48 89 74 24 78       	mov    %rsi,0x78(%rsp)
1400243f0:	48 85 f6             	test   %rsi,%rsi
1400243f3:	74 14                	je     0x140024409
1400243f5:	48 8b 46 08          	mov    0x8(%rsi),%rax
1400243f9:	48 63 48 04          	movslq 0x4(%rax),%rcx
1400243fd:	48 83 c1 08          	add    $0x8,%rcx
140024401:	48 03 ce             	add    %rsi,%rcx
140024404:	48 8b 01             	mov    (%rcx),%rax
140024407:	ff 10                	call   *(%rax)
140024409:	bf 08 00 00 00       	mov    $0x8,%edi
14002440e:	89 7c 24 20          	mov    %edi,0x20(%rsp)
140024412:	48 8b 06             	mov    (%rsi),%rax
140024415:	48 8b 58 40          	mov    0x40(%rax),%rbx
140024419:	48 8d 44 24 60       	lea    0x60(%rsp),%rax
14002441e:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140024423:	48 8b d5             	mov    %rbp,%rdx