5ba0a7:	cc                   	int3
5ba0a8:	cc                   	int3
5ba0a9:	cc                   	int3
5ba0aa:	cc                   	int3
5ba0ab:	cc                   	int3
5ba0ac:	cc                   	int3
5ba0ad:	cc                   	int3
5ba0ae:	cc                   	int3
5ba0af:	cc                   	int3
5ba0b0:	55                   	push   %ebp
5ba0b1:	8b ec                	mov    %esp,%ebp
5ba0b3:	56                   	push   %esi
5ba0b4:	8b 75 10             	mov    0x10(%ebp),%esi
5ba0b7:	85 f6                	test   %esi,%esi
5ba0b9:	7e 3e                	jle    0x5ba0f9
5ba0bb:	8b 45 08             	mov    0x8(%ebp),%eax
5ba0be:	53                   	push   %ebx
5ba0bf:	57                   	push   %edi
5ba0c0:	8b 7d 0c             	mov    0xc(%ebp),%edi
5ba0c3:	83 c0 02             	add    $0x2,%eax
5ba0c6:	0f b6 48 ff          	movzbl -0x1(%eax),%ecx
5ba0ca:	8d 40 04             	lea    0x4(%eax),%eax
5ba0cd:	8d 7f 01             	lea    0x1(%edi),%edi
5ba0d0:	8d 14 89             	lea    (%ecx,%ecx,4),%edx
5ba0d3:	0f b6 48 fa          	movzbl -0x6(%eax),%ecx
5ba0d7:	03 d1                	add    %ecx,%edx
5ba0d9:	6b da 0d             	imul   $0xd,%edx,%ebx
5ba0dc:	0f b6 50 fc          	movzbl -0x4(%eax),%edx
5ba0e0:	8b ca                	mov    %edx,%ecx
5ba0e2:	c1 e1 05             	shl    $0x5,%ecx
5ba0e5:	03 ca                	add    %edx,%ecx
5ba0e7:	03 d9                	add    %ecx,%ebx
5ba0e9:	c1 eb 07             	shr    $0x7,%ebx
5ba0ec:	80 c3 10             	add    $0x10,%bl
5ba0ef:	88 5f ff             	mov    %bl,-0x1(%edi)
5ba0f2:	83 ee 01             	sub    $0x1,%esi
5ba0f5:	75 cf                	jne    0x5ba0c6
5ba0f7:	5f                   	pop    %edi
5ba0f8:	5b                   	pop    %ebx
5ba0f9:	5e                   	pop    %esi
5ba0fa:	5d                   	pop    %ebp
5ba0fb:	c3                   	ret
5ba0fc:	cc                   	int3
5ba0fd:	cc                   	int3
5ba0fe:	cc                   	int3
5ba0ff:	cc                   	int3
5ba100:	55                   	push   %ebp
5ba101:	8b ec                	mov    %esp,%ebp
5ba103:	51                   	push   %ecx
5ba104:	53                   	push   %ebx
5ba105:	8b 5d 14             	mov    0x14(%ebp),%ebx
5ba108:	56                   	push   %esi
5ba109:	8d 73 ff             	lea    -0x1(%ebx),%esi
5ba10c:	85 f6                	test   %esi,%esi
5ba10e:	7e 4f                	jle    0x5ba15f
5ba110:	8b 45 08             	mov    0x8(%ebp),%eax
5ba113:	4e                   	dec    %esi
5ba114:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5ba117:	57                   	push   %edi
5ba118:	8b f8                	mov    %eax,%edi
5ba11a:	d1 ee                	shr    $1,%esi
5ba11c:	2b c1                	sub    %ecx,%eax
5ba11e:	46                   	inc    %esi
5ba11f:	89 45 fc             	mov    %eax,-0x4(%ebp)
5ba122:	8d 51 01             	lea    0x1(%ecx),%edx
5ba125:	8b 45 10             	mov    0x10(%ebp),%eax
5ba128:	8b 5d fc             	mov    -0x4(%ebp),%ebx
5ba12b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
5ba130:	0f b6 0f             	movzbl (%edi),%ecx
5ba133:	8d 7f 02             	lea    0x2(%edi),%edi
5ba136:	88 08                	mov    %cl,(%eax)
5ba138:	8d 52 02             	lea    0x2(%edx),%edx
5ba13b:	0f b6 4a fd          	movzbl -0x3(%edx),%ecx
5ba13f:	88 48 01             	mov    %cl,0x1(%eax)
5ba142:	0f b6 4c 13 fe       	movzbl -0x2(%ebx,%edx,1),%ecx
5ba147:	88 48 02             	mov    %cl,0x2(%eax)
5ba14a:	0f b6 4a fe          	movzbl -0x2(%edx),%ecx
5ba14e:	88 48 03             	mov    %cl,0x3(%eax)
5ba151:	83 c0 04             	add    $0x4,%eax
5ba154:	83 ee 01             	sub    $0x1,%esi
5ba157:	75 d7                	jne    0x5ba130
5ba159:	8b 5d 14             	mov    0x14(%ebp),%ebx
5ba15c:	5f                   	pop    %edi
5ba15d:	eb 03                	jmp    0x5ba162
5ba15f:	8b 45 10             	mov    0x10(%ebp),%eax
5ba162:	f6 c3 01             	test   $0x1,%bl
5ba165:	74 15                	je     0x5ba17c
5ba167:	8b 4d 08             	mov    0x8(%ebp),%ecx
5ba16a:	0f b6 4c 19 ff       	movzbl -0x1(%ecx,%ebx,1),%ecx
5ba16f:	88 08                	mov    %cl,(%eax)
5ba171:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5ba174:	0f b6 4c 19 ff       	movzbl -0x1(%ecx,%ebx,1),%ecx
5ba179:	88 48 01             	mov    %cl,0x1(%eax)
5ba17c:	5e                   	pop    %esi
5ba17d:	5b                   	pop    %ebx
5ba17e:	8b e5                	mov    %ebp,%esp
5ba180:	5d                   	pop    %ebp
5ba181:	c3                   	ret
5ba182:	cc                   	int3
5ba183:	cc                   	int3
5ba184:	cc                   	int3
5ba185:	cc                   	int3
5ba186:	cc                   	int3
5ba187:	cc                   	int3
5ba188:	cc                   	int3
5ba189:	cc                   	int3
5ba18a:	cc                   	int3
5ba18b:	cc                   	int3
5ba18c:	cc                   	int3
5ba18d:	cc                   	int3
5ba18e:	cc                   	int3
5ba18f:	cc                   	int3
5ba190:	55                   	push   %ebp
5ba191:	8b ec                	mov    %esp,%ebp
5ba193:	8b 45 08             	mov    0x8(%ebp),%eax
5ba196:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5ba199:	53                   	push   %ebx
5ba19a:	56                   	push   %esi
5ba19b:	57                   	push   %edi
5ba19c:	53                   	push   %ebx
5ba19d:	0f a2                	cpuid
5ba19f:	8b fb                	mov    %ebx,%edi
5ba1a1:	5b                   	pop    %ebx
5ba1a2:	90                   	nop
5ba1a3:	8b 75 10             	mov    0x10(%ebp),%esi
5ba1a6:	89 06                	mov    %eax,(%esi)
5ba1a8:	89 7e 04             	mov    %edi,0x4(%esi)
5ba1ab:	89 4e 08             	mov    %ecx,0x8(%esi)
5ba1ae:	5f                   	pop    %edi
5ba1af:	89 56 0c             	mov    %edx,0xc(%esi)
5ba1b2:	5e                   	pop    %esi
5ba1b3:	5b                   	pop    %ebx
5ba1b4:	5d                   	pop    %ebp
5ba1b5:	c3                   	ret
5ba1b6:	cc                   	int3
5ba1b7:	cc                   	int3
5ba1b8:	cc                   	int3
5ba1b9:	cc                   	int3
5ba1ba:	cc                   	int3
5ba1bb:	cc                   	int3
5ba1bc:	cc                   	int3
5ba1bd:	cc                   	int3
5ba1be:	cc                   	int3
5ba1bf:	cc                   	int3
5ba1c0:	55                   	push   %ebp
5ba1c1:	8b ec                	mov    %esp,%ebp
5ba1c3:	83 ec 30             	sub    $0x30,%esp
5ba1c6:	8d 45 d0             	lea    -0x30(%ebp),%eax
5ba1c9:	0f 57 c0             	xorps  %xmm0,%xmm0
5ba1cc:	50                   	push   %eax
5ba1cd:	6a 00                	push   $0x0
5ba1cf:	6a 00                	push   $0x0
5ba1d1:	0f 11 45 d0          	movups %xmm0,-0x30(%ebp)
5ba1d5:	0f 11 45 f0          	movups %xmm0,-0x10(%ebp)
5ba1d9:	0f 11 45 e0          	movups %xmm0,-0x20(%ebp)
5ba1dd:	e8 ae ff ff ff       	call   0x5ba190
5ba1e2:	8d 45 f0             	lea    -0x10(%ebp),%eax
5ba1e5:	50                   	push   %eax
5ba1e6:	6a 00                	push   $0x0
5ba1e8:	6a 01                	push   $0x1
5ba1ea:	e8 a1 ff ff ff       	call   0x5ba190
5ba1ef:	83 c4 18             	add    $0x18,%esp
5ba1f2:	83 7d d0 07          	cmpl   $0x7,-0x30(%ebp)
5ba1f6:	7c 10                	jl     0x5ba208
5ba1f8:	8d 45 e0             	lea    -0x20(%ebp),%eax
5ba1fb:	50                   	push   %eax
5ba1fc:	6a 00                	push   $0x0
5ba1fe:	6a 07                	push   $0x7
5ba200:	e8 8b ff ff ff       	call   0x5ba190
5ba205:	83 c4 0c             	add    $0xc,%esp
5ba208:	53                   	push   %ebx
5ba209:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
5ba20c:	56                   	push   %esi
5ba20d:	8b 75 fc             	mov    -0x4(%ebp),%esi
5ba210:	81 e6 00 00 00 04    	and    $0x4000000,%esi
5ba216:	81 ce 00 00 00 02    	or     $0x2000000,%esi
5ba21c:	c1 ee 09             	shr    $0x9,%esi
5ba21f:	57                   	push   %edi
5ba220:	8b 7d f8             	mov    -0x8(%ebp),%edi
5ba223:	8b c7                	mov    %edi,%eax
5ba225:	25 00 00 18 00       	and    $0x180000,%eax
5ba22a:	0b f0                	or     %eax,%esi
5ba22c:	8b c7                	mov    %edi,%eax
5ba22e:	25 00 02 00 00       	and    $0x200,%eax
5ba233:	c1 ee 09             	shr    $0x9,%esi
5ba236:	0b f0                	or     %eax,%esi
5ba238:	8b c3                	mov    %ebx,%eax
5ba23a:	25 00 02 00 00       	and    $0x200,%eax
5ba23f:	c1 ee 03             	shr    $0x3,%esi
5ba242:	c1 e0 02             	shl    $0x2,%eax
5ba245:	0b f0                	or     %eax,%esi
5ba247:	8b c7                	mov    %edi,%eax
5ba249:	25 00 00 00 1c       	and    $0x1c000000,%eax
5ba24e:	3d 00 00 00 1c       	cmp    $0x1c000000,%eax
5ba253:	75 77                	jne    0x5ba2cc
5ba255:	e8 86 00 00 00       	call   0x5ba2e0
5ba25a:	83 e0 06             	and    $0x6,%eax
5ba25d:	3c 06                	cmp    $0x6,%al
5ba25f:	75 6b                	jne    0x5ba2cc
5ba261:	8b cf                	mov    %edi,%ecx
5ba263:	8b c3                	mov    %ebx,%eax
5ba265:	81 e1 00 00 00 20    	and    $0x20000000,%ecx
5ba26b:	83 e0 20             	and    $0x20,%eax
5ba26e:	81 c9 00 00 00 02    	or     $0x2000000,%ecx
5ba274:	c1 e0 05             	shl    $0x5,%eax
5ba277:	c1 e9 10             	shr    $0x10,%ecx
5ba27a:	81 e7 00 10 00 00    	and    $0x1000,%edi
5ba280:	0b c8                	or     %eax,%ecx
5ba282:	0b cf                	or     %edi,%ecx
5ba284:	0b f1                	or     %ecx,%esi
5ba286:	e8 55 00 00 00       	call   0x5ba2e0
5ba28b:	25 e0 00 00 00       	and    $0xe0,%eax
5ba290:	3c e0                	cmp    $0xe0,%al
5ba292:	75 38                	jne    0x5ba2cc
5ba294:	8b 4d e8             	mov    -0x18(%ebp),%ecx
5ba297:	8b d1                	mov    %ecx,%edx
5ba299:	83 e2 02             	and    $0x2,%edx
5ba29c:	c1 eb 0f             	shr    $0xf,%ebx
5ba29f:	c1 e2 04             	shl    $0x4,%edx
5ba2a2:	8b c1                	mov    %ecx,%eax
5ba2a4:	83 e0 40             	and    $0x40,%eax
5ba2a7:	81 e3 00 80 01 00    	and    $0x18000,%ebx
5ba2ad:	0b d0                	or     %eax,%edx
5ba2af:	8b c1                	mov    %ecx,%eax
5ba2b1:	c1 e2 05             	shl    $0x5,%edx
5ba2b4:	25 00 10 00 00       	and    $0x1000,%eax
5ba2b9:	0b d0                	or     %eax,%edx
5ba2bb:	81 e1 00 41 00 00    	and    $0x4100,%ecx
5ba2c1:	03 d2                	add    %edx,%edx
5ba2c3:	0b d1                	or     %ecx,%edx
5ba2c5:	c1 e2 06             	shl    $0x6,%edx
5ba2c8:	0b d3                	or     %ebx,%edx
5ba2ca:	0b f2                	or     %edx,%esi
5ba2cc:	83 ce 01             	or     $0x1,%esi
5ba2cf:	5f                   	pop    %edi
5ba2d0:	8b c6                	mov    %esi,%eax
5ba2d2:	5e                   	pop    %esi
5ba2d3:	5b                   	pop    %ebx
5ba2d4:	8b e5                	mov    %ebp,%esp
5ba2d6:	5d                   	pop    %ebp
5ba2d7:	c3                   	ret
5ba2d8:	cc                   	int3
5ba2d9:	cc                   	int3
5ba2da:	cc                   	int3
5ba2db:	cc                   	int3
5ba2dc:	cc                   	int3
5ba2dd:	cc                   	int3
5ba2de:	cc                   	int3
5ba2df:	cc                   	int3
5ba2e0:	33 c9                	xor    %ecx,%ecx
5ba2e2:	0f 01 d0             	xgetbv
5ba2e5:	c3                   	ret
5ba2e6:	cc                   	int3
5ba2e7:	cc                   	int3
5ba2e8:	cc                   	int3
5ba2e9:	cc                   	int3
5ba2ea:	cc                   	int3
5ba2eb:	cc                   	int3
5ba2ec:	cc                   	int3
5ba2ed:	cc                   	int3
5ba2ee:	cc                   	int3
5ba2ef:	cc                   	int3
5ba2f0:	6a ff                	push   $0xffffffff
5ba2f2:	e8 09 00 00 00       	call   0x5ba300
5ba2f7:	83 c4 04             	add    $0x4,%esp
5ba2fa:	c3                   	ret
5ba2fb:	cc                   	int3
5ba2fc:	cc                   	int3
5ba2fd:	cc                   	int3
5ba2fe:	cc                   	int3
5ba2ff:	cc                   	int3
5ba300:	55                   	push   %ebp
5ba301:	8b ec                	mov    %esp,%ebp
5ba303:	e8 b8 fe ff ff       	call   0x5ba1c0
5ba308:	23 45 08             	and    0x8(%ebp),%eax
5ba30b:	a3 cc 6c 69 00       	mov    %eax,0x696ccc
5ba310:	5d                   	pop    %ebp
5ba311:	c3                   	ret
5ba312:	cc                   	int3
5ba313:	cc                   	int3
5ba314:	cc                   	int3
5ba315:	cc                   	int3
5ba316:	cc                   	int3
5ba317:	cc                   	int3
5ba318:	cc                   	int3
5ba319:	cc                   	int3
5ba31a:	cc                   	int3
5ba31b:	cc                   	int3
5ba31c:	cc                   	int3
5ba31d:	cc                   	int3
5ba31e:	cc                   	int3
5ba31f:	cc                   	int3
5ba320:	56                   	push   %esi
5ba321:	57                   	push   %edi
5ba322:	8b 44 24 0c          	mov    0xc(%esp),%eax
5ba326:	8b 74 24 10          	mov    0x10(%esp),%esi
5ba32a:	8b 54 24 14          	mov    0x14(%esp),%edx
5ba32e:	8b 7c 24 18          	mov    0x18(%esp),%edi
5ba332:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
5ba336:	c4 e2 7d 1a 2d c0 aa 	vbroadcastf128 0x66aac0,%ymm5
5ba33d:	66 00
5ba33f:	c4 e2 7d 1a 35 c0 a9 	vbroadcastf128 0x66a9c0,%ymm6
5ba346:	66 00
5ba348:	c4 e2 7d 1a 3d a0 a9 	vbroadcastf128 0x66a9a0,%ymm7
5ba34f:	66 00
5ba351:	2b fa                	sub    %edx,%edi
5ba353:	c5 fe 6f 00          	vmovdqu (%eax),%ymm0
5ba357:	c5 fe 6f 48 20       	vmovdqu 0x20(%eax),%ymm1
5ba35c:	c5 fe 6f 50 40       	vmovdqu 0x40(%eax),%ymm2
5ba361:	c5 fe 6f 58 60       	vmovdqu 0x60(%eax),%ymm3
5ba366:	c5 fd e0 04 30       	vpavgb (%eax,%esi,1),%ymm0,%ymm0
5ba36b:	c5 f5 e0 4c 30 20    	vpavgb 0x20(%eax,%esi,1),%ymm1,%ymm1
5ba371:	c5 ed e0 54 30 40    	vpavgb 0x40(%eax,%esi,1),%ymm2,%ymm2
5ba377:	c5 e5 e0 5c 30 60    	vpavgb 0x60(%eax,%esi,1),%ymm3,%ymm3
5ba37d:	8d 80 80 00 00 00    	lea    0x80(%eax),%eax
5ba383:	c5 fc c6 e1 88       	vshufps $0x88,%ymm1,%ymm0,%ymm4
5ba388:	c5 fc c6 c1 dd       	vshufps $0xdd,%ymm1,%ymm0,%ymm0
5ba38d:	c5 fd e0 c4          	vpavgb %ymm4,%ymm0,%ymm0
5ba391:	c5 ec c6 e3 88       	vshufps $0x88,%ymm3,%ymm2,%ymm4
5ba396:	c5 ec c6 d3 dd       	vshufps $0xdd,%ymm3,%ymm2,%ymm2
5ba39b:	c5 ed e0 d4          	vpavgb %ymm4,%ymm2,%ymm2
5ba39f:	c4 e2 7d 04 cf       	vpmaddubsw %ymm7,%ymm0,%ymm1
5ba3a4:	c4 e2 6d 04 df       	vpmaddubsw %ymm7,%ymm2,%ymm3
5ba3a9:	c4 e2 7d 04 c6       	vpmaddubsw %ymm6,%ymm0,%ymm0
5ba3ae:	c4 e2 6d 04 d6       	vpmaddubsw %ymm6,%ymm2,%ymm2
5ba3b3:	c4 e2 75 01 cb       	vphaddw %ymm3,%ymm1,%ymm1
5ba3b8:	c4 e2 7d 01 c2       	vphaddw %ymm2,%ymm0,%ymm0
5ba3bd:	c5 f5 71 e1 08       	vpsraw $0x8,%ymm1,%ymm1
5ba3c2:	c5 fd 71 e0 08       	vpsraw $0x8,%ymm0,%ymm0
5ba3c7:	c5 f5 63 c0          	vpacksswb %ymm0,%ymm1,%ymm0
5ba3cb:	c4 e3 fd 00 c0 d8    	vpermq $0xd8,%ymm0,%ymm0
5ba3d1:	c4 e2 7d 00 05 e0 a9 	vpshufb 0x66a9e0,%ymm0,%ymm0
5ba3d8:	66 00
5ba3da:	c5 fd fc c5          	vpaddb %ymm5,%ymm0,%ymm0
5ba3de:	c4 e3 7d 19 02 00    	vextractf128 $0x0,%ymm0,(%edx)
5ba3e4:	c4 e3 7d 19 04 3a 01 	vextractf128 $0x1,%ymm0,(%edx,%edi,1)
5ba3eb:	8d 52 10             	lea    0x10(%edx),%edx
5ba3ee:	83 e9 20             	sub    $0x20,%ecx
5ba3f1:	0f 8f 5c ff ff ff    	jg     0x5ba353
5ba3f7:	5f                   	pop    %edi
5ba3f8:	5e                   	pop    %esi
5ba3f9:	c5 f8 77             	vzeroupper
5ba3fc:	c3                   	ret
5ba3fd:	cc                   	int3
5ba3fe:	cc                   	int3
5ba3ff:	cc                   	int3
5ba400:	56                   	push   %esi
5ba401:	57                   	push   %edi
5ba402:	8b 44 24 0c          	mov    0xc(%esp),%eax
5ba406:	8b 74 24 10          	mov    0x10(%esp),%esi