469217:	c3                   	ret
469218:	8b ff                	mov    %edi,%edi
46921a:	55                   	push   %ebp
46921b:	8b ec                	mov    %esp,%ebp
46921d:	8b 4d 08             	mov    0x8(%ebp),%ecx
469220:	57                   	push   %edi
469221:	f6 c1 01             	test   $0x1,%cl
469224:	74 23                	je     0x469249
469226:	8b 45 0c             	mov    0xc(%ebp),%eax
469229:	8d 14 41             	lea    (%ecx,%eax,2),%edx
46922c:	8b c1                	mov    %ecx,%eax
46922e:	3b ca                	cmp    %edx,%ecx
469230:	74 0e                	je     0x469240
469232:	33 ff                	xor    %edi,%edi
469234:	66 39 38             	cmp    %di,(%eax)
469237:	74 07                	je     0x469240
469239:	83 c0 02             	add    $0x2,%eax
46923c:	3b c2                	cmp    %edx,%eax
46923e:	75 f4                	jne    0x469234
469240:	2b c1                	sub    %ecx,%eax
469242:	d1 f8                	sar    $1,%eax
469244:	e9 87 00 00 00       	jmp    0x4692d0
469249:	56                   	push   %esi
46924a:	8b f1                	mov    %ecx,%esi
46924c:	83 e6 1f             	and    $0x1f,%esi
46924f:	6a 20                	push   $0x20
469251:	58                   	pop    %eax
469252:	2b c6                	sub    %esi,%eax
469254:	f7 de                	neg    %esi
469256:	1b f6                	sbb    %esi,%esi
469258:	23 f0                	and    %eax,%esi
46925a:	8b 45 0c             	mov    0xc(%ebp),%eax
46925d:	d1 ee                	shr    $1,%esi
46925f:	3b c6                	cmp    %esi,%eax
469261:	73 02                	jae    0x469265
469263:	8b f0                	mov    %eax,%esi
469265:	8d 14 71             	lea    (%ecx,%esi,2),%edx
469268:	33 ff                	xor    %edi,%edi
46926a:	8b c1                	mov    %ecx,%eax
46926c:	3b ca                	cmp    %edx,%ecx
46926e:	74 0c                	je     0x46927c
469270:	66 39 38             	cmp    %di,(%eax)
469273:	74 07                	je     0x46927c
469275:	83 c0 02             	add    $0x2,%eax
469278:	3b c2                	cmp    %edx,%eax
46927a:	75 f4                	jne    0x469270
46927c:	2b c1                	sub    %ecx,%eax
46927e:	d1 f8                	sar    $1,%eax
469280:	3b c6                	cmp    %esi,%eax
469282:	75 4b                	jne    0x4692cf
469284:	8d 14 41             	lea    (%ecx,%eax,2),%edx
469287:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46928a:	2b ce                	sub    %esi,%ecx
46928c:	8b c1                	mov    %ecx,%eax
46928e:	83 e0 1f             	and    $0x1f,%eax
469291:	2b c8                	sub    %eax,%ecx
469293:	c5 f4 57 c9          	vxorps %ymm1,%ymm1,%ymm1
469297:	8d 0c 4a             	lea    (%edx,%ecx,2),%ecx
46929a:	eb 0f                	jmp    0x4692ab
46929c:	c5 f5 75 02          	vpcmpeqw (%edx),%ymm1,%ymm0
4692a0:	c5 fd d7 c0          	vpmovmskb %ymm0,%eax
4692a4:	85 c0                	test   %eax,%eax
4692a6:	75 07                	jne    0x4692af
4692a8:	83 c2 20             	add    $0x20,%edx
4692ab:	3b d1                	cmp    %ecx,%edx
4692ad:	75 ed                	jne    0x46929c
4692af:	8b 45 08             	mov    0x8(%ebp),%eax
4692b2:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4692b5:	8d 0c 48             	lea    (%eax,%ecx,2),%ecx
4692b8:	eb 08                	jmp    0x4692c2
4692ba:	66 39 3a             	cmp    %di,(%edx)
4692bd:	74 07                	je     0x4692c6
4692bf:	83 c2 02             	add    $0x2,%edx
4692c2:	3b d1                	cmp    %ecx,%edx
4692c4:	75 f4                	jne    0x4692ba
4692c6:	2b d0                	sub    %eax,%edx
4692c8:	d1 fa                	sar    $1,%edx
4692ca:	c5 f8 77             	vzeroupper
4692cd:	8b c2                	mov    %edx,%eax
4692cf:	5e                   	pop    %esi
4692d0:	5f                   	pop    %edi
4692d1:	5d                   	pop    %ebp
4692d2:	c3                   	ret
4692d3:	8b ff                	mov    %edi,%edi
4692d5:	55                   	push   %ebp
4692d6:	8b ec                	mov    %esp,%ebp
4692d8:	56                   	push   %esi
4692d9:	8b 75 08             	mov    0x8(%ebp),%esi
4692dc:	8b d6                	mov    %esi,%edx
4692de:	57                   	push   %edi
4692df:	8b 7d 0c             	mov    0xc(%ebp),%edi
4692e2:	83 e2 0f             	and    $0xf,%edx
4692e5:	6a 10                	push   $0x10
4692e7:	58                   	pop    %eax
4692e8:	2b c2                	sub    %edx,%eax
4692ea:	f7 da                	neg    %edx
4692ec:	1b d2                	sbb    %edx,%edx
4692ee:	23 d0                	and    %eax,%edx
4692f0:	3b fa                	cmp    %edx,%edi
4692f2:	73 02                	jae    0x4692f6
4692f4:	8b d7                	mov    %edi,%edx
4692f6:	8d 0c 32             	lea    (%edx,%esi,1),%ecx
4692f9:	8b c6                	mov    %esi,%eax
4692fb:	3b f1                	cmp    %ecx,%esi
4692fd:	74 0a                	je     0x469309
4692ff:	80 38 00             	cmpb   $0x0,(%eax)
469302:	74 05                	je     0x469309
469304:	40                   	inc    %eax
469305:	3b c1                	cmp    %ecx,%eax
469307:	75 f6                	jne    0x4692ff
469309:	2b c6                	sub    %esi,%eax
46930b:	3b c2                	cmp    %edx,%eax
46930d:	75 3f                	jne    0x46934e
46930f:	2b fa                	sub    %edx,%edi
469311:	8d 0c 30             	lea    (%eax,%esi,1),%ecx
469314:	8b c7                	mov    %edi,%eax
469316:	66 0f ef c9          	pxor   %xmm1,%xmm1
46931a:	83 e0 0f             	and    $0xf,%eax
46931d:	2b f8                	sub    %eax,%edi
46931f:	03 f9                	add    %ecx,%edi
469321:	eb 12                	jmp    0x469335
469323:	0f 28 c1             	movaps %xmm1,%xmm0
469326:	66 0f 74 01          	pcmpeqb (%ecx),%xmm0
46932a:	66 0f d7 c0          	pmovmskb %xmm0,%eax
46932e:	85 c0                	test   %eax,%eax
469330:	75 07                	jne    0x469339
469332:	83 c1 10             	add    $0x10,%ecx
469335:	3b cf                	cmp    %edi,%ecx
469337:	75 ea                	jne    0x469323
469339:	8b 45 0c             	mov    0xc(%ebp),%eax
46933c:	03 c6                	add    %esi,%eax
46933e:	eb 06                	jmp    0x469346
469340:	80 39 00             	cmpb   $0x0,(%ecx)
469343:	74 05                	je     0x46934a
469345:	41                   	inc    %ecx
469346:	3b c8                	cmp    %eax,%ecx
469348:	75 f6                	jne    0x469340
46934a:	2b ce                	sub    %esi,%ecx
46934c:	8b c1                	mov    %ecx,%eax
46934e:	5f                   	pop    %edi
46934f:	5e                   	pop    %esi
469350:	5d                   	pop    %ebp
469351:	c3                   	ret
469352:	8b ff                	mov    %edi,%edi
469354:	55                   	push   %ebp
469355:	8b ec                	mov    %esp,%ebp
469357:	8b 4d 08             	mov    0x8(%ebp),%ecx
46935a:	57                   	push   %edi
46935b:	f6 c1 01             	test   $0x1,%cl
46935e:	74 23                	je     0x469383
469360:	8b 45 0c             	mov    0xc(%ebp),%eax
469363:	8d 14 41             	lea    (%ecx,%eax,2),%edx
469366:	8b c1                	mov    %ecx,%eax
469368:	3b ca                	cmp    %edx,%ecx
46936a:	74 0e                	je     0x46937a
46936c:	33 ff                	xor    %edi,%edi
46936e:	66 39 38             	cmp    %di,(%eax)
469371:	74 07                	je     0x46937a
469373:	83 c0 02             	add    $0x2,%eax
469376:	3b c2                	cmp    %edx,%eax
469378:	75 f4                	jne    0x46936e
46937a:	2b c1                	sub    %ecx,%eax
46937c:	d1 f8                	sar    $1,%eax
46937e:	e9 87 00 00 00       	jmp    0x46940a
469383:	56                   	push   %esi
469384:	8b f1                	mov    %ecx,%esi
469386:	83 e6 0f             	and    $0xf,%esi
469389:	6a 10                	push   $0x10
46938b:	58                   	pop    %eax
46938c:	2b c6                	sub    %esi,%eax
46938e:	f7 de                	neg    %esi
469390:	1b f6                	sbb    %esi,%esi
469392:	23 f0                	and    %eax,%esi
469394:	8b 45 0c             	mov    0xc(%ebp),%eax
469397:	d1 ee                	shr    $1,%esi
469399:	3b c6                	cmp    %esi,%eax
46939b:	73 02                	jae    0x46939f
46939d:	8b f0                	mov    %eax,%esi
46939f:	8d 14 71             	lea    (%ecx,%esi,2),%edx
4693a2:	33 ff                	xor    %edi,%edi
4693a4:	8b c1                	mov    %ecx,%eax
4693a6:	3b ca                	cmp    %edx,%ecx
4693a8:	74 0c                	je     0x4693b6
4693aa:	66 39 38             	cmp    %di,(%eax)
4693ad:	74 07                	je     0x4693b6
4693af:	83 c0 02             	add    $0x2,%eax
4693b2:	3b c2                	cmp    %edx,%eax
4693b4:	75 f4                	jne    0x4693aa
4693b6:	2b c1                	sub    %ecx,%eax
4693b8:	d1 f8                	sar    $1,%eax
4693ba:	3b c6                	cmp    %esi,%eax
4693bc:	75 4b                	jne    0x469409
4693be:	8d 14 41             	lea    (%ecx,%eax,2),%edx
4693c1:	66 0f ef c9          	pxor   %xmm1,%xmm1
4693c5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4693c8:	2b ce                	sub    %esi,%ecx
4693ca:	8b c1                	mov    %ecx,%eax
4693cc:	83 e0 0f             	and    $0xf,%eax
4693cf:	2b c8                	sub    %eax,%ecx
4693d1:	8d 0c 4a             	lea    (%edx,%ecx,2),%ecx
4693d4:	eb 12                	jmp    0x4693e8
4693d6:	0f 28 c1             	movaps %xmm1,%xmm0
4693d9:	66 0f 75 02          	pcmpeqw (%edx),%xmm0
4693dd:	66 0f d7 c0          	pmovmskb %xmm0,%eax
4693e1:	85 c0                	test   %eax,%eax
4693e3:	75 07                	jne    0x4693ec
4693e5:	83 c2 10             	add    $0x10,%edx
4693e8:	3b d1                	cmp    %ecx,%edx
4693ea:	75 ea                	jne    0x4693d6
4693ec:	8b 45 08             	mov    0x8(%ebp),%eax
4693ef:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4693f2:	8d 0c 48             	lea    (%eax,%ecx,2),%ecx
4693f5:	eb 08                	jmp    0x4693ff
4693f7:	66 39 3a             	cmp    %di,(%edx)
4693fa:	74 07                	je     0x469403
4693fc:	83 c2 02             	add    $0x2,%edx
4693ff:	3b d1                	cmp    %ecx,%edx
469401:	75 f4                	jne    0x4693f7
469403:	2b d0                	sub    %eax,%edx
469405:	d1 fa                	sar    $1,%edx
469407:	8b c2                	mov    %edx,%eax
469409:	5e                   	pop    %esi
46940a:	5f                   	pop    %edi
46940b:	5d                   	pop    %ebp
46940c:	c3                   	ret
46940d:	32 c0                	xor    %al,%al
46940f:	c3                   	ret
469410:	8b ff                	mov    %edi,%edi
469412:	55                   	push   %ebp
469413:	8b ec                	mov    %esp,%ebp
469415:	8b 4d 08             	mov    0x8(%ebp),%ecx
469418:	33 c0                	xor    %eax,%eax
46941a:	3b 4d 0c             	cmp    0xc(%ebp),%ecx
46941d:	0f 94 c0             	sete   %al
469420:	5d                   	pop    %ebp
469421:	c3                   	ret
469422:	c5 f8 77             	vzeroupper
469425:	c3                   	ret
469426:	c3                   	ret
469427:	c5 fd 74 c1          	vpcmpeqb %ymm1,%ymm0,%ymm0
46942b:	c3                   	ret
46942c:	c5 fd 75 c1          	vpcmpeqw %ymm1,%ymm0,%ymm0
469430:	c3                   	ret
469431:	66 0f 74 c1          	pcmpeqb %xmm1,%xmm0
469435:	c3                   	ret
469436:	66 0f 75 c1          	pcmpeqw %xmm1,%xmm0
46943a:	c3                   	ret
46943b:	c5 fd d7 c0          	vpmovmskb %ymm0,%eax
46943f:	c3                   	ret
469440:	66 0f d7 c0          	pmovmskb %xmm0,%eax
469444:	c3                   	ret
469445:	c5 fc 57 c0          	vxorps %ymm0,%ymm0,%ymm0
469449:	c3                   	ret
46944a:	66 0f ef c0          	pxor   %xmm0,%xmm0
46944e:	c3                   	ret
46944f:	8b ff                	mov    %edi,%edi
469451:	55                   	push   %ebp
469452:	8b ec                	mov    %esp,%ebp
469454:	a1 dc af 4b 00       	mov    0x4bafdc,%eax
469459:	56                   	push   %esi
46945a:	57                   	push   %edi
46945b:	83 f8 05             	cmp    $0x5,%eax
46945e:	7c 7c                	jl     0x4694dc
469460:	8b 75 08             	mov    0x8(%ebp),%esi
469463:	8b d6                	mov    %esi,%edx
469465:	83 e2 1f             	and    $0x1f,%edx
469468:	6a 20                	push   $0x20
46946a:	58                   	pop    %eax
46946b:	2b c2                	sub    %edx,%eax
46946d:	f7 da                	neg    %edx
46946f:	1b d2                	sbb    %edx,%edx
469471:	23 d0                	and    %eax,%edx
469473:	8b 45 0c             	mov    0xc(%ebp),%eax
469476:	3b c2                	cmp    %edx,%eax
469478:	73 02                	jae    0x46947c
46947a:	8b d0                	mov    %eax,%edx
46947c:	8d 3c 32             	lea    (%edx,%esi,1),%edi
46947f:	8b ce                	mov    %esi,%ecx
469481:	3b f7                	cmp    %edi,%esi
469483:	74 0a                	je     0x46948f
469485:	80 39 00             	cmpb   $0x0,(%ecx)
469488:	74 05                	je     0x46948f
46948a:	41                   	inc    %ecx
46948b:	3b cf                	cmp    %edi,%ecx
46948d:	75 f6                	jne    0x469485
46948f:	2b ce                	sub    %esi,%ecx
469491:	3b ca                	cmp    %edx,%ecx
469493:	0f 85 d7 00 00 00    	jne    0x469570
469499:	8b f8                	mov    %eax,%edi
46949b:	03 ce                	add    %esi,%ecx
46949d:	2b fa                	sub    %edx,%edi
46949f:	8b c7                	mov    %edi,%eax
4694a1:	83 e0 1f             	and    $0x1f,%eax
4694a4:	2b f8                	sub    %eax,%edi
4694a6:	c5 f4 57 c9          	vxorps %ymm1,%ymm1,%ymm1
4694aa:	03 f9                	add    %ecx,%edi
4694ac:	eb 0f                	jmp    0x4694bd
4694ae:	c5 f5 74 01          	vpcmpeqb (%ecx),%ymm1,%ymm0
4694b2:	c5 fd d7 c0          	vpmovmskb %ymm0,%eax
4694b6:	85 c0                	test   %eax,%eax
4694b8:	75 07                	jne    0x4694c1
4694ba:	83 c1 20             	add    $0x20,%ecx
4694bd:	3b cf                	cmp    %edi,%ecx
4694bf:	75 ed                	jne    0x4694ae
4694c1:	8b 45 0c             	mov    0xc(%ebp),%eax
4694c4:	03 c6                	add    %esi,%eax
4694c6:	eb 06                	jmp    0x4694ce
4694c8:	80 39 00             	cmpb   $0x0,(%ecx)
4694cb:	74 05                	je     0x4694d2
4694cd:	41                   	inc    %ecx
4694ce:	3b c8                	cmp    %eax,%ecx
4694d0:	75 f6                	jne    0x4694c8
4694d2:	2b ce                	sub    %esi,%ecx
4694d4:	c5 f8 77             	vzeroupper
4694d7:	e9 94 00 00 00       	jmp    0x469570
4694dc:	83 f8 01             	cmp    $0x1,%eax
4694df:	7c 75                	jl     0x469556
4694e1:	8b 75 08             	mov    0x8(%ebp),%esi
4694e4:	8b d6                	mov    %esi,%edx
4694e6:	83 e2 0f             	and    $0xf,%edx
4694e9:	6a 10                	push   $0x10
4694eb:	58                   	pop    %eax
4694ec:	2b c2                	sub    %edx,%eax
4694ee:	f7 da                	neg    %edx
4694f0:	1b d2                	sbb    %edx,%edx
4694f2:	23 d0                	and    %eax,%edx
4694f4:	8b 45 0c             	mov    0xc(%ebp),%eax
4694f7:	3b c2                	cmp    %edx,%eax
4694f9:	73 02                	jae    0x4694fd
4694fb:	8b d0                	mov    %eax,%edx
4694fd:	8d 3c 32             	lea    (%edx,%esi,1),%edi
469500:	8b ce                	mov    %esi,%ecx
469502:	3b f7                	cmp    %edi,%esi
469504:	74 0a                	je     0x469510
469506:	80 39 00             	cmpb   $0x0,(%ecx)
469509:	74 05                	je     0x469510
46950b:	41                   	inc    %ecx
46950c:	3b cf                	cmp    %edi,%ecx
46950e:	75 f6                	jne    0x469506
469510:	2b ce                	sub    %esi,%ecx
469512:	3b ca                	cmp    %edx,%ecx
469514:	75 5a                	jne    0x469570
469516:	8b f8                	mov    %eax,%edi
469518:	03 ce                	add    %esi,%ecx
46951a:	2b fa                	sub    %edx,%edi
46951c:	66 0f ef c9          	pxor   %xmm1,%xmm1
469520:	8b c7                	mov    %edi,%eax
469522:	83 e0 0f             	and    $0xf,%eax
469525:	2b f8                	sub    %eax,%edi
469527:	03 f9                	add    %ecx,%edi