409289:	c5 fa 6f 57 20       	vmovdqu 0x20(%edi),%xmm2
40928e:	c5 fa 6f 5f 30       	vmovdqu 0x30(%edi),%xmm3
409293:	83 c7 40             	add    $0x40,%edi
409296:	c4 e2 79 00 c7       	vpshufb %xmm7,%xmm0,%xmm0
40929b:	89 7c 24 64          	mov    %edi,0x64(%esp)
40929f:	c4 e2 71 00 cf       	vpshufb %xmm7,%xmm1,%xmm1
4092a4:	c4 e2 69 00 d7       	vpshufb %xmm7,%xmm2,%xmm2
4092a9:	c5 f9 fe 65 00       	vpaddd 0x0(%ebp),%xmm0,%xmm4
4092ae:	c4 e2 61 00 df       	vpshufb %xmm7,%xmm3,%xmm3
4092b3:	c5 f1 fe 6d 10       	vpaddd 0x10(%ebp),%xmm1,%xmm5
4092b8:	c5 e9 fe 75 20       	vpaddd 0x20(%ebp),%xmm2,%xmm6
4092bd:	c5 e1 fe 7d 30       	vpaddd 0x30(%ebp),%xmm3,%xmm7
4092c2:	c5 f9 7f 64 24 20    	vmovdqa %xmm4,0x20(%esp)
4092c8:	c5 f9 7f 6c 24 30    	vmovdqa %xmm5,0x30(%esp)
4092ce:	c5 f9 7f 74 24 40    	vmovdqa %xmm6,0x40(%esp)
4092d4:	c5 f9 7f 7c 24 50    	vmovdqa %xmm7,0x50(%esp)
4092da:	e9 01 00 00 00       	jmp    0x4092e0
4092df:	90                   	nop
4092e0:	83 c5 40             	add    $0x40,%ebp
4092e3:	c4 e3 71 0f e0 04    	vpalignr $0x4,%xmm0,%xmm1,%xmm4
4092e9:	c4 e3 7b f0 ca 06    	rorx   $0x6,%edx,%ecx
4092ef:	c4 e3 7b f0 f2 0b    	rorx   $0xb,%edx,%esi
4092f5:	89 54 24 10          	mov    %edx,0x10(%esp)
4092f9:	c4 e3 61 0f fa 04    	vpalignr $0x4,%xmm2,%xmm3,%xmm7
4092ff:	c4 e3 7b f0 fa 19    	rorx   $0x19,%edx,%edi
409305:	31 f1                	xor    %esi,%ecx
409307:	c4 e2 68 f2 74 24 18 	andn   0x18(%esp),%edx,%esi
40930e:	c5 c9 72 d4 07       	vpsrld $0x7,%xmm4,%xmm6
409313:	31 f9                	xor    %edi,%ecx
409315:	23 54 24 14          	and    0x14(%esp),%edx
409319:	89 04 24             	mov    %eax,(%esp)
40931c:	c5 f9 fe c7          	vpaddd %xmm7,%xmm0,%xmm0
409320:	09 f2                	or     %esi,%edx
409322:	c4 e3 7b f0 f8 02    	rorx   $0x2,%eax,%edi
409328:	c4 e3 7b f0 f0 0d    	rorx   $0xd,%eax,%esi
40932e:	c5 c1 72 d4 03       	vpsrld $0x3,%xmm4,%xmm7
409333:	8d 14 0a             	lea    (%edx,%ecx,1),%edx
409336:	c4 e3 7b f0 c8 16    	rorx   $0x16,%eax,%ecx
40933c:	31 fe                	xor    %edi,%esi
40933e:	c5 d1 72 f4 0e       	vpslld $0xe,%xmm4,%xmm5
409343:	8b 7c 24 04          	mov    0x4(%esp),%edi
409347:	31 f1                	xor    %esi,%ecx
409349:	31 f8                	xor    %edi,%eax
40934b:	c5 c1 ef e6          	vpxor  %xmm6,%xmm7,%xmm4
40934f:	03 54 24 1c          	add    0x1c(%esp),%edx
409353:	21 c3                	and    %eax,%ebx
409355:	03 54 24 20          	add    0x20(%esp),%edx
409359:	c5 f9 70 fb fa       	vpshufd $0xfa,%xmm3,%xmm7
40935e:	31 fb                	xor    %edi,%ebx
409360:	01 d1                	add    %edx,%ecx
409362:	03 54 24 0c          	add    0xc(%esp),%edx
409366:	c5 c9 72 d6 0b       	vpsrld $0xb,%xmm6,%xmm6
40936b:	8d 1c 0b             	lea    (%ebx,%ecx,1),%ebx
40936e:	c4 e3 7b f0 ca 06    	rorx   $0x6,%edx,%ecx
409374:	c4 e3 7b f0 f2 0b    	rorx   $0xb,%edx,%esi
40937a:	c5 d9 ef e5          	vpxor  %xmm5,%xmm4,%xmm4
40937e:	89 54 24 0c          	mov    %edx,0xc(%esp)
409382:	c4 e3 7b f0 fa 19    	rorx   $0x19,%edx,%edi
409388:	31 f1                	xor    %esi,%ecx
40938a:	c5 d1 72 f5 0b       	vpslld $0xb,%xmm5,%xmm5
40938f:	c4 e2 68 f2 74 24 14 	andn   0x14(%esp),%edx,%esi
409396:	31 f9                	xor    %edi,%ecx
409398:	23 54 24 10          	and    0x10(%esp),%edx
40939c:	c5 d9 ef e6          	vpxor  %xmm6,%xmm4,%xmm4
4093a0:	89 5c 24 1c          	mov    %ebx,0x1c(%esp)
4093a4:	09 f2                	or     %esi,%edx
4093a6:	c4 e3 7b f0 fb 02    	rorx   $0x2,%ebx,%edi
4093ac:	c4 e3 7b f0 f3 0d    	rorx   $0xd,%ebx,%esi
4093b2:	c5 c9 72 d7 0a       	vpsrld $0xa,%xmm7,%xmm6
4093b7:	8d 14 0a             	lea    (%edx,%ecx,1),%edx
4093ba:	c4 e3 7b f0 cb 16    	rorx   $0x16,%ebx,%ecx
4093c0:	31 fe                	xor    %edi,%esi
4093c2:	c5 d9 ef e5          	vpxor  %xmm5,%xmm4,%xmm4
4093c6:	8b 3c 24             	mov    (%esp),%edi
4093c9:	31 f1                	xor    %esi,%ecx
4093cb:	31 fb                	xor    %edi,%ebx
4093cd:	c5 d1 73 d7 11       	vpsrlq $0x11,%xmm7,%xmm5
4093d2:	03 54 24 18          	add    0x18(%esp),%edx
4093d6:	21 d8                	and    %ebx,%eax
4093d8:	03 54 24 24          	add    0x24(%esp),%edx
4093dc:	c5 f9 fe c4          	vpaddd %xmm4,%xmm0,%xmm0
4093e0:	31 f8                	xor    %edi,%eax
4093e2:	01 d1                	add    %edx,%ecx
4093e4:	03 54 24 08          	add    0x8(%esp),%edx
4093e8:	c5 c9 ef f5          	vpxor  %xmm5,%xmm6,%xmm6
4093ec:	8d 04 08             	lea    (%eax,%ecx,1),%eax
4093ef:	c4 e3 7b f0 ca 06    	rorx   $0x6,%edx,%ecx
4093f5:	c4 e3 7b f0 f2 0b    	rorx   $0xb,%edx,%esi
4093fb:	c5 c1 73 d7 13       	vpsrlq $0x13,%xmm7,%xmm7
409400:	89 54 24 08          	mov    %edx,0x8(%esp)
409404:	c4 e3 7b f0 fa 19    	rorx   $0x19,%edx,%edi
40940a:	31 f1                	xor    %esi,%ecx
40940c:	c5 c9 ef f7          	vpxor  %xmm7,%xmm6,%xmm6
409410:	c4 e2 68 f2 74 24 10 	andn   0x10(%esp),%edx,%esi
409417:	31 f9                	xor    %edi,%ecx
409419:	23 54 24 0c          	and    0xc(%esp),%edx
40941d:	c5 f9 70 fe 84       	vpshufd $0x84,%xmm6,%xmm7
409422:	89 44 24 18          	mov    %eax,0x18(%esp)
409426:	09 f2                	or     %esi,%edx
409428:	c4 e3 7b f0 f8 02    	rorx   $0x2,%eax,%edi
40942e:	c4 e3 7b f0 f0 0d    	rorx   $0xd,%eax,%esi
409434:	c5 c1 73 df 08       	vpsrldq $0x8,%xmm7,%xmm7
409439:	8d 14 0a             	lea    (%edx,%ecx,1),%edx
40943c:	c4 e3 7b f0 c8 16    	rorx   $0x16,%eax,%ecx
409442:	31 fe                	xor    %edi,%esi
409444:	c5 f9 fe c7          	vpaddd %xmm7,%xmm0,%xmm0
409448:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
40944c:	31 f1                	xor    %esi,%ecx
40944e:	31 f8                	xor    %edi,%eax
409450:	c5 f9 70 f8 50       	vpshufd $0x50,%xmm0,%xmm7
409455:	03 54 24 14          	add    0x14(%esp),%edx
409459:	21 c3                	and    %eax,%ebx
40945b:	03 54 24 28          	add    0x28(%esp),%edx
40945f:	c5 c9 72 d7 0a       	vpsrld $0xa,%xmm7,%xmm6
409464:	31 fb                	xor    %edi,%ebx
409466:	01 d1                	add    %edx,%ecx
409468:	03 54 24 04          	add    0x4(%esp),%edx
40946c:	c5 d1 73 d7 11       	vpsrlq $0x11,%xmm7,%xmm5
409471:	8d 1c 0b             	lea    (%ebx,%ecx,1),%ebx
409474:	c4 e3 7b f0 ca 06    	rorx   $0x6,%edx,%ecx
40947a:	c4 e3 7b f0 f2 0b    	rorx   $0xb,%edx,%esi
409480:	c5 c9 ef f5          	vpxor  %xmm5,%xmm6,%xmm6
409484:	89 54 24 04          	mov    %edx,0x4(%esp)
409488:	c4 e3 7b f0 fa 19    	rorx   $0x19,%edx,%edi
40948e:	31 f1                	xor    %esi,%ecx
409490:	c5 c1 73 d7 13       	vpsrlq $0x13,%xmm7,%xmm7
409495:	c4 e2 68 f2 74 24 0c 	andn   0xc(%esp),%edx,%esi
40949c:	31 f9                	xor    %edi,%ecx
40949e:	23 54 24 08          	and    0x8(%esp),%edx
4094a2:	c5 c9 ef f7          	vpxor  %xmm7,%xmm6,%xmm6
4094a6:	89 5c 24 14          	mov    %ebx,0x14(%esp)
4094aa:	09 f2                	or     %esi,%edx
4094ac:	c4 e3 7b f0 fb 02    	rorx   $0x2,%ebx,%edi
4094b2:	c4 e3 7b f0 f3 0d    	rorx   $0xd,%ebx,%esi
4094b8:	c5 f9 70 fe e8       	vpshufd $0xe8,%xmm6,%xmm7
4094bd:	8d 14 0a             	lea    (%edx,%ecx,1),%edx
4094c0:	c4 e3 7b f0 cb 16    	rorx   $0x16,%ebx,%ecx
4094c6:	31 fe                	xor    %edi,%esi
4094c8:	c5 c1 73 ff 08       	vpslldq $0x8,%xmm7,%xmm7
4094cd:	8b 7c 24 18          	mov    0x18(%esp),%edi
4094d1:	31 f1                	xor    %esi,%ecx
4094d3:	31 fb                	xor    %edi,%ebx
4094d5:	c5 f9 fe c7          	vpaddd %xmm7,%xmm0,%xmm0
4094d9:	03 54 24 10          	add    0x10(%esp),%edx
4094dd:	21 d8                	and    %ebx,%eax
4094df:	03 54 24 2c          	add    0x2c(%esp),%edx
4094e3:	c5 f9 fe 75 00       	vpaddd 0x0(%ebp),%xmm0,%xmm6
4094e8:	31 f8                	xor    %edi,%eax
4094ea:	01 d1                	add    %edx,%ecx
4094ec:	03 14 24             	add    (%esp),%edx
4094ef:	8d 04 08             	lea    (%eax,%ecx,1),%eax
4094f2:	c5 f9 7f 74 24 20    	vmovdqa %xmm6,0x20(%esp)
4094f8:	c4 e3 69 0f e1 04    	vpalignr $0x4,%xmm1,%xmm2,%xmm4
4094fe:	c4 e3 7b f0 ca 06    	rorx   $0x6,%edx,%ecx
409504:	c4 e3 7b f0 f2 0b    	rorx   $0xb,%edx,%esi
40950a:	89 14 24             	mov    %edx,(%esp)
40950d:	c4 e3 79 0f fb 04    	vpalignr $0x4,%xmm3,%xmm0,%xmm7
409513:	c4 e3 7b f0 fa 19    	rorx   $0x19,%edx,%edi
409519:	31 f1                	xor    %esi,%ecx
40951b:	c4 e2 68 f2 74 24 08 	andn   0x8(%esp),%edx,%esi
409522:	c5 c9 72 d4 07       	vpsrld $0x7,%xmm4,%xmm6
409527:	31 f9                	xor    %edi,%ecx
409529:	23 54 24 04          	and    0x4(%esp),%edx
40952d:	89 44 24 10          	mov    %eax,0x10(%esp)
409531:	c5 f1 fe cf          	vpaddd %xmm7,%xmm1,%xmm1
409535:	09 f2                	or     %esi,%edx
409537:	c4 e3 7b f0 f8 02    	rorx   $0x2,%eax,%edi
40953d:	c4 e3 7b f0 f0 0d    	rorx   $0xd,%eax,%esi
409543:	c5 c1 72 d4 03       	vpsrld $0x3,%xmm4,%xmm7
409548:	8d 14 0a             	lea    (%edx,%ecx,1),%edx
40954b:	c4 e3 7b f0 c8 16    	rorx   $0x16,%eax,%ecx
409551:	31 fe                	xor    %edi,%esi
409553:	c5 d1 72 f4 0e       	vpslld $0xe,%xmm4,%xmm5
409558:	8b 7c 24 14          	mov    0x14(%esp),%edi
40955c:	31 f1                	xor    %esi,%ecx
40955e:	31 f8                	xor    %edi,%eax
409560:	c5 c1 ef e6          	vpxor  %xmm6,%xmm7,%xmm4
409564:	03 54 24 0c          	add    0xc(%esp),%edx
409568:	21 c3                	and    %eax,%ebx
40956a:	03 54 24 30          	add    0x30(%esp),%edx
40956e:	c5 f9 70 f8 fa       	vpshufd $0xfa,%xmm0,%xmm7
409573:	31 fb                	xor    %edi,%ebx
409575:	01 d1                	add    %edx,%ecx
409577:	03 54 24 1c          	add    0x1c(%esp),%edx
40957b:	c5 c9 72 d6 0b       	vpsrld $0xb,%xmm6,%xmm6
409580:	8d 1c 0b             	lea    (%ebx,%ecx,1),%ebx
409583:	c4 e3 7b f0 ca 06    	rorx   $0x6,%edx,%ecx
409589:	c4 e3 7b f0 f2 0b    	rorx   $0xb,%edx,%esi
40958f:	c5 d9 ef e5          	vpxor  %xmm5,%xmm4,%xmm4
409593:	89 54 24 1c          	mov    %edx,0x1c(%esp)
409597:	c4 e3 7b f0 fa 19    	rorx   $0x19,%edx,%edi
40959d:	31 f1                	xor    %esi,%ecx
40959f:	c5 d1 72 f5 0b       	vpslld $0xb,%xmm5,%xmm5
4095a4:	c4 e2 68 f2 74 24 04 	andn   0x4(%esp),%edx,%esi
4095ab:	31 f9                	xor    %edi,%ecx
4095ad:	23 14 24             	and    (%esp),%edx
4095b0:	c5 d9 ef e6          	vpxor  %xmm6,%xmm4,%xmm4
4095b4:	89 5c 24 0c          	mov    %ebx,0xc(%esp)
4095b8:	09 f2                	or     %esi,%edx
4095ba:	c4 e3 7b f0 fb 02    	rorx   $0x2,%ebx,%edi
4095c0:	c4 e3 7b f0 f3 0d    	rorx   $0xd,%ebx,%esi
4095c6:	c5 c9 72 d7 0a       	vpsrld $0xa,%xmm7,%xmm6
4095cb:	8d 14 0a             	lea    (%edx,%ecx,1),%edx
4095ce:	c4 e3 7b f0 cb 16    	rorx   $0x16,%ebx,%ecx
4095d4:	31 fe                	xor    %edi,%esi
4095d6:	c5 d9 ef e5          	vpxor  %xmm5,%xmm4,%xmm4
4095da:	8b 7c 24 10          	mov    0x10(%esp),%edi
4095de:	31 f1                	xor    %esi,%ecx
4095e0:	31 fb                	xor    %edi,%ebx
4095e2:	c5 d1 73 d7 11       	vpsrlq $0x11,%xmm7,%xmm5
4095e7:	03 54 24 08          	add    0x8(%esp),%edx
4095eb:	21 d8                	and    %ebx,%eax
4095ed:	03 54 24 34          	add    0x34(%esp),%edx
4095f1:	c5 f1 fe cc          	vpaddd %xmm4,%xmm1,%xmm1
4095f5:	31 f8                	xor    %edi,%eax
4095f7:	01 d1                	add    %edx,%ecx
4095f9:	03 54 24 18          	add    0x18(%esp),%edx
4095fd:	c5 c9 ef f5          	vpxor  %xmm5,%xmm6,%xmm6
409601:	8d 04 08             	lea    (%eax,%ecx,1),%eax
409604:	c4 e3 7b f0 ca 06    	rorx   $0x6,%edx,%ecx
40960a:	c4 e3 7b f0 f2 0b    	rorx   $0xb,%edx,%esi
409610:	c5 c1 73 d7 13       	vpsrlq $0x13,%xmm7,%xmm7
409615:	89 54 24 18          	mov    %edx,0x18(%esp)
409619:	c4 e3 7b f0 fa 19    	rorx   $0x19,%edx,%edi
40961f:	31 f1                	xor    %esi,%ecx
409621:	c5 c9 ef f7          	vpxor  %xmm7,%xmm6,%xmm6
409625:	c4 e2 68 f2 34 24    	andn   (%esp),%edx,%esi
40962b:	31 f9                	xor    %edi,%ecx
40962d:	23 54 24 1c          	and    0x1c(%esp),%edx
409631:	c5 f9 70 fe 84       	vpshufd $0x84,%xmm6,%xmm7
409636:	89 44 24 08          	mov    %eax,0x8(%esp)
40963a:	09 f2                	or     %esi,%edx
40963c:	c4 e3 7b f0 f8 02    	rorx   $0x2,%eax,%edi
409642:	c4 e3 7b f0 f0 0d    	rorx   $0xd,%eax,%esi
409648:	c5 c1 73 df 08       	vpsrldq $0x8,%xmm7,%xmm7
40964d:	8d 14 0a             	lea    (%edx,%ecx,1),%edx
409650:	c4 e3 7b f0 c8 16    	rorx   $0x16,%eax,%ecx
409656:	31 fe                	xor    %edi,%esi
409658:	c5 f1 fe cf          	vpaddd %xmm7,%xmm1,%xmm1
40965c:	8b 7c 24 0c          	mov    0xc(%esp),%edi
409660:	31 f1                	xor    %esi,%ecx
409662:	31 f8                	xor    %edi,%eax
409664:	c5 f9 70 f9 50       	vpshufd $0x50,%xmm1,%xmm7
409669:	03 54 24 04          	add    0x4(%esp),%edx
40966d:	21 c3                	and    %eax,%ebx
40966f:	03 54 24 38          	add    0x38(%esp),%edx
409673:	c5 c9 72 d7 0a       	vpsrld $0xa,%xmm7,%xmm6
409678:	31 fb                	xor    %edi,%ebx
40967a:	01 d1                	add    %edx,%ecx
40967c:	03 54 24 14          	add    0x14(%esp),%edx
409680:	c5 d1 73 d7 11       	vpsrlq $0x11,%xmm7,%xmm5
409685:	8d 1c 0b             	lea    (%ebx,%ecx,1),%ebx
409688:	c4 e3 7b f0 ca 06    	rorx   $0x6,%edx,%ecx
40968e:	c4 e3 7b f0 f2 0b    	rorx   $0xb,%edx,%esi
409694:	c5 c9 ef f5          	vpxor  %xmm5,%xmm6,%xmm6
409698:	89 54 24 14          	mov    %edx,0x14(%esp)
40969c:	c4 e3 7b f0 fa 19    	rorx   $0x19,%edx,%edi
4096a2:	31 f1                	xor    %esi,%ecx
4096a4:	c5 c1 73 d7 13       	vpsrlq $0x13,%xmm7,%xmm7
4096a9:	c4 e2 68 f2 74 24 1c 	andn   0x1c(%esp),%edx,%esi
4096b0:	31 f9                	xor    %edi,%ecx
4096b2:	23 54 24 18          	and    0x18(%esp),%edx
4096b6:	c5 c9 ef f7          	vpxor  %xmm7,%xmm6,%xmm6
4096ba:	89 5c 24 04          	mov    %ebx,0x4(%esp)
4096be:	09 f2                	or     %esi,%edx
4096c0:	c4 e3 7b f0 fb 02    	rorx   $0x2,%ebx,%edi
4096c6:	c4 e3 7b f0 f3 0d    	rorx   $0xd,%ebx,%esi
4096cc:	c5 f9 70 fe e8       	vpshufd $0xe8,%xmm6,%xmm7
4096d1:	8d 14 0a             	lea    (%edx,%ecx,1),%edx
4096d4:	c4 e3 7b f0 cb 16    	rorx   $0x16,%ebx,%ecx
4096da:	31 fe                	xor    %edi,%esi
4096dc:	c5 c1 73 ff 08       	vpslldq $0x8,%xmm7,%xmm7
4096e1:	8b 7c 24 08          	mov    0x8(%esp),%edi
4096e5:	31 f1                	xor    %esi,%ecx
4096e7:	31 fb                	xor    %edi,%ebx
4096e9:	c5 f1 fe cf          	vpaddd %xmm7,%xmm1,%xmm1
4096ed:	03 14 24             	add    (%esp),%edx
4096f0:	21 d8                	and    %ebx,%eax
4096f2:	03 54 24 3c          	add    0x3c(%esp),%edx
4096f6:	c5 f1 fe 75 10       	vpaddd 0x10(%ebp),%xmm1,%xmm6
4096fb:	31 f8                	xor    %edi,%eax
4096fd:	01 d1                	add    %edx,%ecx
4096ff:	03 54 24 10          	add    0x10(%esp),%edx
409703:	8d 04 08             	lea    (%eax,%ecx,1),%eax
409706:	c5 f9 7f 74 24 30    	vmovdqa %xmm6,0x30(%esp)
40970c:	c4 e3 61 0f e2 04    	vpalignr $0x4,%xmm2,%xmm3,%xmm4
409712:	c4 e3 7b f0 ca 06    	rorx   $0x6,%edx,%ecx
409718:	c4 e3 7b f0 f2 0b    	rorx   $0xb,%edx,%esi
40971e:	89 54 24 10          	mov    %edx,0x10(%esp)
409722:	c4 e3 71 0f f8 04    	vpalignr $0x4,%xmm0,%xmm1,%xmm7
409728:	c4 e3 7b f0 fa 19    	rorx   $0x19,%edx,%edi
40972e:	31 f1                	xor    %esi,%ecx
409730:	c4 e2 68 f2 74 24 18 	andn   0x18(%esp),%edx,%esi
409737:	c5 c9 72 d4 07       	vpsrld $0x7,%xmm4,%xmm6
40973c:	31 f9                	xor    %edi,%ecx
40973e:	23 54 24 14          	and    0x14(%esp),%edx
409742:	89 04 24             	mov    %eax,(%esp)
409745:	c5 e9 fe d7          	vpaddd %xmm7,%xmm2,%xmm2
409749:	09 f2                	or     %esi,%edx
40974b:	c4 e3 7b f0 f8 02    	rorx   $0x2,%eax,%edi
409751:	c4 e3 7b f0 f0 0d    	rorx   $0xd,%eax,%esi
409757:	c5 c1 72 d4 03       	vpsrld $0x3,%xmm4,%xmm7
40975c:	8d 14 0a             	lea    (%edx,%ecx,1),%edx
40975f:	c4 e3 7b f0 c8 16    	rorx   $0x16,%eax,%ecx
409765:	31 fe                	xor    %edi,%esi
409767:	c5 d1 72 f4 0e       	vpslld $0xe,%xmm4,%xmm5
40976c:	8b 7c 24 04          	mov    0x4(%esp),%edi
409770:	31 f1                	xor    %esi,%ecx
409772:	31 f8                	xor    %edi,%eax
409774:	c5 c1 ef e6          	vpxor  %xmm6,%xmm7,%xmm4
409778:	03 54 24 1c          	add    0x1c(%esp),%edx
40977c:	21 c3                	and    %eax,%ebx
40977e:	03 54 24 40          	add    0x40(%esp),%edx
409782:	c5 f9 70 f9 fa       	vpshufd $0xfa,%xmm1,%xmm7
409787:	31 fb                	xor    %edi,%ebx
409789:	01 d1                	add    %edx,%ecx
40978b:	03 54 24 0c          	add    0xc(%esp),%edx
40978f:	c5 c9 72 d6 0b       	vpsrld $0xb,%xmm6,%xmm6
409794:	8d 1c 0b             	lea    (%ebx,%ecx,1),%ebx
409797:	c4 e3 7b f0 ca 06    	rorx   $0x6,%edx,%ecx
40979d:	c4 e3 7b f0 f2 0b    	rorx   $0xb,%edx,%esi
4097a3:	c5 d9 ef e5          	vpxor  %xmm5,%xmm4,%xmm4
4097a7:	89 54 24 0c          	mov    %edx,0xc(%esp)
4097ab:	c4 e3 7b f0 fa 19    	rorx   $0x19,%edx,%edi
4097b1:	31 f1                	xor    %esi,%ecx
4097b3:	c5 d1 72 f5 0b       	vpslld $0xb,%xmm5,%xmm5
4097b8:	c4 e2 68 f2 74 24 14 	andn   0x14(%esp),%edx,%esi
4097bf:	31 f9                	xor    %edi,%ecx
4097c1:	23 54 24 10          	and    0x10(%esp),%edx
4097c5:	c5 d9 ef e6          	vpxor  %xmm6,%xmm4,%xmm4
4097c9:	89 5c 24 1c          	mov    %ebx,0x1c(%esp)
4097cd:	09 f2                	or     %esi,%edx
4097cf:	c4 e3 7b f0 fb 02    	rorx   $0x2,%ebx,%edi
4097d5:	c4 e3 7b f0 f3 0d    	rorx   $0xd,%ebx,%esi
4097db:	c5 c9 72 d7 0a       	vpsrld $0xa,%xmm7,%xmm6
4097e0:	8d 14 0a             	lea    (%edx,%ecx,1),%edx
4097e3:	c4 e3 7b f0 cb 16    	rorx   $0x16,%ebx,%ecx
4097e9:	31 fe                	xor    %edi,%esi
4097eb:	c5 d9 ef e5          	vpxor  %xmm5,%xmm4,%xmm4
4097ef:	8b 3c 24             	mov    (%esp),%edi
4097f2:	31 f1                	xor    %esi,%ecx
4097f4:	31 fb                	xor    %edi,%ebx
4097f6:	c5 d1 73 d7 11       	vpsrlq $0x11,%xmm7,%xmm5
4097fb:	03 54 24 18          	add    0x18(%esp),%edx
4097ff:	21 d8                	and    %ebx,%eax
409801:	03 54 24 44          	add    0x44(%esp),%edx
409805:	c5 e9 fe d4          	vpaddd %xmm4,%xmm2,%xmm2
409809:	31 f8                	xor    %edi,%eax
40980b:	01 d1                	add    %edx,%ecx
40980d:	03 54 24 08          	add    0x8(%esp),%edx