407566:	66 0f 38 00 c7       	pshufb %xmm7,%xmm0
40756b:	89 7c 24 64          	mov    %edi,0x64(%esp)
40756f:	66 0f 38 00 cf       	pshufb %xmm7,%xmm1
407574:	66 0f 6f 65 00       	movdqa 0x0(%ebp),%xmm4
407579:	66 0f 38 00 d7       	pshufb %xmm7,%xmm2
40757e:	66 0f 6f 6d 10       	movdqa 0x10(%ebp),%xmm5
407583:	66 0f fe e0          	paddd  %xmm0,%xmm4
407587:	66 0f 38 00 df       	pshufb %xmm7,%xmm3
40758c:	66 0f 6f 75 20       	movdqa 0x20(%ebp),%xmm6
407591:	66 0f fe e9          	paddd  %xmm1,%xmm5
407595:	66 0f 6f 7d 30       	movdqa 0x30(%ebp),%xmm7
40759a:	66 0f 7f 64 24 20    	movdqa %xmm4,0x20(%esp)
4075a0:	66 0f fe f2          	paddd  %xmm2,%xmm6
4075a4:	66 0f 7f 6c 24 30    	movdqa %xmm5,0x30(%esp)
4075aa:	66 0f fe fb          	paddd  %xmm3,%xmm7
4075ae:	66 0f 7f 74 24 40    	movdqa %xmm6,0x40(%esp)
4075b4:	66 0f 7f 7c 24 50    	movdqa %xmm7,0x50(%esp)
4075ba:	e9 01 00 00 00       	jmp    0x4075c0
4075bf:	90                   	nop
4075c0:	83 c5 40             	add    $0x40,%ebp
4075c3:	89 d1                	mov    %edx,%ecx
4075c5:	66 0f 6f e1          	movdqa %xmm1,%xmm4
4075c9:	c1 ca 0e             	ror    $0xe,%edx
4075cc:	8b 74 24 14          	mov    0x14(%esp),%esi
4075d0:	66 0f 6f fb          	movdqa %xmm3,%xmm7
4075d4:	31 ca                	xor    %ecx,%edx
4075d6:	8b 7c 24 18          	mov    0x18(%esp),%edi
4075da:	66 0f 3a 0f e0 04    	palignr $0x4,%xmm0,%xmm4
4075e0:	31 fe                	xor    %edi,%esi
4075e2:	c1 ca 05             	ror    $0x5,%edx
4075e5:	21 ce                	and    %ecx,%esi
4075e7:	66 0f 3a 0f fa 04    	palignr $0x4,%xmm2,%xmm7
4075ed:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4075f1:	31 ca                	xor    %ecx,%edx
4075f3:	31 f7                	xor    %esi,%edi
4075f5:	66 0f 6f ec          	movdqa %xmm4,%xmm5
4075f9:	c1 ca 06             	ror    $0x6,%edx
4075fc:	89 c1                	mov    %eax,%ecx
4075fe:	66 0f 6f f4          	movdqa %xmm4,%xmm6
407602:	01 fa                	add    %edi,%edx
407604:	8b 7c 24 04          	mov    0x4(%esp),%edi
407608:	66 0f 72 d4 03       	psrld  $0x3,%xmm4
40760d:	89 c6                	mov    %eax,%esi
40760f:	c1 c9 09             	ror    $0x9,%ecx
407612:	66 0f fe c7          	paddd  %xmm7,%xmm0
407616:	89 04 24             	mov    %eax,(%esp)
407619:	31 c1                	xor    %eax,%ecx
40761b:	66 0f 72 d6 07       	psrld  $0x7,%xmm6
407620:	31 f8                	xor    %edi,%eax
407622:	03 54 24 1c          	add    0x1c(%esp),%edx
407626:	c1 c9 0b             	ror    $0xb,%ecx
407629:	21 c3                	and    %eax,%ebx
40762b:	66 0f 70 fb fa       	pshufd $0xfa,%xmm3,%xmm7
407630:	31 f1                	xor    %esi,%ecx
407632:	03 54 24 20          	add    0x20(%esp),%edx
407636:	66 0f 72 f5 0e       	pslld  $0xe,%xmm5
40763b:	31 fb                	xor    %edi,%ebx
40763d:	c1 c9 02             	ror    $0x2,%ecx
407640:	66 0f ef e6          	pxor   %xmm6,%xmm4
407644:	01 d3                	add    %edx,%ebx
407646:	03 54 24 0c          	add    0xc(%esp),%edx
40764a:	66 0f 72 d6 0b       	psrld  $0xb,%xmm6
40764f:	01 cb                	add    %ecx,%ebx
407651:	89 d1                	mov    %edx,%ecx
407653:	c1 ca 0e             	ror    $0xe,%edx
407656:	66 0f ef e5          	pxor   %xmm5,%xmm4
40765a:	8b 74 24 10          	mov    0x10(%esp),%esi
40765e:	31 ca                	xor    %ecx,%edx
407660:	66 0f 72 f5 0b       	pslld  $0xb,%xmm5
407665:	8b 7c 24 14          	mov    0x14(%esp),%edi
407669:	31 fe                	xor    %edi,%esi
40766b:	c1 ca 05             	ror    $0x5,%edx
40766e:	66 0f ef e6          	pxor   %xmm6,%xmm4
407672:	21 ce                	and    %ecx,%esi
407674:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
407678:	66 0f 6f f7          	movdqa %xmm7,%xmm6
40767c:	31 ca                	xor    %ecx,%edx
40767e:	31 f7                	xor    %esi,%edi
407680:	c1 ca 06             	ror    $0x6,%edx
407683:	66 0f ef e5          	pxor   %xmm5,%xmm4
407687:	89 d9                	mov    %ebx,%ecx
407689:	01 fa                	add    %edi,%edx
40768b:	66 0f 72 d7 0a       	psrld  $0xa,%xmm7
407690:	8b 3c 24             	mov    (%esp),%edi
407693:	89 de                	mov    %ebx,%esi
407695:	c1 c9 09             	ror    $0x9,%ecx
407698:	66 0f fe c4          	paddd  %xmm4,%xmm0
40769c:	89 5c 24 1c          	mov    %ebx,0x1c(%esp)
4076a0:	31 d9                	xor    %ebx,%ecx
4076a2:	66 0f 73 d6 11       	psrlq  $0x11,%xmm6
4076a7:	31 fb                	xor    %edi,%ebx
4076a9:	03 54 24 18          	add    0x18(%esp),%edx
4076ad:	c1 c9 0b             	ror    $0xb,%ecx
4076b0:	66 0f ef fe          	pxor   %xmm6,%xmm7
4076b4:	21 d8                	and    %ebx,%eax
4076b6:	31 f1                	xor    %esi,%ecx
4076b8:	66 0f 73 d6 02       	psrlq  $0x2,%xmm6
4076bd:	03 54 24 24          	add    0x24(%esp),%edx
4076c1:	31 f8                	xor    %edi,%eax
4076c3:	c1 c9 02             	ror    $0x2,%ecx
4076c6:	66 0f ef fe          	pxor   %xmm6,%xmm7
4076ca:	01 d0                	add    %edx,%eax
4076cc:	03 54 24 08          	add    0x8(%esp),%edx
4076d0:	66 0f 70 ff 80       	pshufd $0x80,%xmm7,%xmm7
4076d5:	01 c8                	add    %ecx,%eax
4076d7:	89 d1                	mov    %edx,%ecx
4076d9:	c1 ca 0e             	ror    $0xe,%edx
4076dc:	8b 74 24 0c          	mov    0xc(%esp),%esi
4076e0:	31 ca                	xor    %ecx,%edx
4076e2:	8b 7c 24 10          	mov    0x10(%esp),%edi
4076e6:	31 fe                	xor    %edi,%esi
4076e8:	c1 ca 05             	ror    $0x5,%edx
4076eb:	21 ce                	and    %ecx,%esi
4076ed:	66 0f 73 df 08       	psrldq $0x8,%xmm7
4076f2:	89 4c 24 08          	mov    %ecx,0x8(%esp)
4076f6:	31 ca                	xor    %ecx,%edx
4076f8:	31 f7                	xor    %esi,%edi
4076fa:	66 0f fe c7          	paddd  %xmm7,%xmm0
4076fe:	c1 ca 06             	ror    $0x6,%edx
407701:	89 c1                	mov    %eax,%ecx
407703:	01 fa                	add    %edi,%edx
407705:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
407709:	89 c6                	mov    %eax,%esi
40770b:	c1 c9 09             	ror    $0x9,%ecx
40770e:	89 44 24 18          	mov    %eax,0x18(%esp)
407712:	66 0f 70 f8 50       	pshufd $0x50,%xmm0,%xmm7
407717:	31 c1                	xor    %eax,%ecx
407719:	31 f8                	xor    %edi,%eax
40771b:	03 54 24 14          	add    0x14(%esp),%edx
40771f:	66 0f 6f f7          	movdqa %xmm7,%xmm6
407723:	c1 c9 0b             	ror    $0xb,%ecx
407726:	66 0f 72 d7 0a       	psrld  $0xa,%xmm7
40772b:	21 c3                	and    %eax,%ebx
40772d:	66 0f 73 d6 11       	psrlq  $0x11,%xmm6
407732:	31 f1                	xor    %esi,%ecx
407734:	03 54 24 28          	add    0x28(%esp),%edx
407738:	31 fb                	xor    %edi,%ebx
40773a:	c1 c9 02             	ror    $0x2,%ecx
40773d:	66 0f ef fe          	pxor   %xmm6,%xmm7
407741:	01 d3                	add    %edx,%ebx
407743:	03 54 24 04          	add    0x4(%esp),%edx
407747:	66 0f 73 d6 02       	psrlq  $0x2,%xmm6
40774c:	01 cb                	add    %ecx,%ebx
40774e:	89 d1                	mov    %edx,%ecx
407750:	c1 ca 0e             	ror    $0xe,%edx
407753:	66 0f ef fe          	pxor   %xmm6,%xmm7
407757:	8b 74 24 08          	mov    0x8(%esp),%esi
40775b:	31 ca                	xor    %ecx,%edx
40775d:	8b 7c 24 0c          	mov    0xc(%esp),%edi
407761:	66 0f 70 ff 08       	pshufd $0x8,%xmm7,%xmm7
407766:	31 fe                	xor    %edi,%esi
407768:	c1 ca 05             	ror    $0x5,%edx
40776b:	66 0f 6f 75 00       	movdqa 0x0(%ebp),%xmm6
407770:	21 ce                	and    %ecx,%esi
407772:	89 4c 24 04          	mov    %ecx,0x4(%esp)
407776:	66 0f 73 ff 08       	pslldq $0x8,%xmm7
40777b:	31 ca                	xor    %ecx,%edx
40777d:	31 f7                	xor    %esi,%edi
40777f:	c1 ca 06             	ror    $0x6,%edx
407782:	89 d9                	mov    %ebx,%ecx
407784:	01 fa                	add    %edi,%edx
407786:	8b 7c 24 18          	mov    0x18(%esp),%edi
40778a:	89 de                	mov    %ebx,%esi
40778c:	c1 c9 09             	ror    $0x9,%ecx
40778f:	66 0f fe c7          	paddd  %xmm7,%xmm0
407793:	89 5c 24 14          	mov    %ebx,0x14(%esp)
407797:	31 d9                	xor    %ebx,%ecx
407799:	31 fb                	xor    %edi,%ebx
40779b:	03 54 24 10          	add    0x10(%esp),%edx
40779f:	66 0f fe f0          	paddd  %xmm0,%xmm6
4077a3:	c1 c9 0b             	ror    $0xb,%ecx
4077a6:	21 d8                	and    %ebx,%eax
4077a8:	31 f1                	xor    %esi,%ecx
4077aa:	03 54 24 2c          	add    0x2c(%esp),%edx
4077ae:	31 f8                	xor    %edi,%eax
4077b0:	c1 c9 02             	ror    $0x2,%ecx
4077b3:	01 d0                	add    %edx,%eax
4077b5:	03 14 24             	add    (%esp),%edx
4077b8:	01 c8                	add    %ecx,%eax
4077ba:	66 0f 7f 74 24 20    	movdqa %xmm6,0x20(%esp)
4077c0:	89 d1                	mov    %edx,%ecx
4077c2:	66 0f 6f e2          	movdqa %xmm2,%xmm4
4077c6:	c1 ca 0e             	ror    $0xe,%edx
4077c9:	8b 74 24 04          	mov    0x4(%esp),%esi
4077cd:	66 0f 6f f8          	movdqa %xmm0,%xmm7
4077d1:	31 ca                	xor    %ecx,%edx
4077d3:	8b 7c 24 08          	mov    0x8(%esp),%edi
4077d7:	66 0f 3a 0f e1 04    	palignr $0x4,%xmm1,%xmm4
4077dd:	31 fe                	xor    %edi,%esi
4077df:	c1 ca 05             	ror    $0x5,%edx
4077e2:	21 ce                	and    %ecx,%esi
4077e4:	66 0f 3a 0f fb 04    	palignr $0x4,%xmm3,%xmm7
4077ea:	89 0c 24             	mov    %ecx,(%esp)
4077ed:	31 ca                	xor    %ecx,%edx
4077ef:	31 f7                	xor    %esi,%edi
4077f1:	66 0f 6f ec          	movdqa %xmm4,%xmm5
4077f5:	c1 ca 06             	ror    $0x6,%edx
4077f8:	89 c1                	mov    %eax,%ecx
4077fa:	66 0f 6f f4          	movdqa %xmm4,%xmm6
4077fe:	01 fa                	add    %edi,%edx
407800:	8b 7c 24 14          	mov    0x14(%esp),%edi
407804:	66 0f 72 d4 03       	psrld  $0x3,%xmm4
407809:	89 c6                	mov    %eax,%esi
40780b:	c1 c9 09             	ror    $0x9,%ecx
40780e:	66 0f fe cf          	paddd  %xmm7,%xmm1
407812:	89 44 24 10          	mov    %eax,0x10(%esp)
407816:	31 c1                	xor    %eax,%ecx
407818:	66 0f 72 d6 07       	psrld  $0x7,%xmm6
40781d:	31 f8                	xor    %edi,%eax
40781f:	03 54 24 0c          	add    0xc(%esp),%edx
407823:	c1 c9 0b             	ror    $0xb,%ecx
407826:	21 c3                	and    %eax,%ebx
407828:	66 0f 70 f8 fa       	pshufd $0xfa,%xmm0,%xmm7
40782d:	31 f1                	xor    %esi,%ecx
40782f:	03 54 24 30          	add    0x30(%esp),%edx
407833:	66 0f 72 f5 0e       	pslld  $0xe,%xmm5
407838:	31 fb                	xor    %edi,%ebx
40783a:	c1 c9 02             	ror    $0x2,%ecx
40783d:	66 0f ef e6          	pxor   %xmm6,%xmm4
407841:	01 d3                	add    %edx,%ebx
407843:	03 54 24 1c          	add    0x1c(%esp),%edx
407847:	66 0f 72 d6 0b       	psrld  $0xb,%xmm6
40784c:	01 cb                	add    %ecx,%ebx
40784e:	89 d1                	mov    %edx,%ecx
407850:	c1 ca 0e             	ror    $0xe,%edx
407853:	66 0f ef e5          	pxor   %xmm5,%xmm4
407857:	8b 34 24             	mov    (%esp),%esi
40785a:	31 ca                	xor    %ecx,%edx
40785c:	66 0f 72 f5 0b       	pslld  $0xb,%xmm5
407861:	8b 7c 24 04          	mov    0x4(%esp),%edi
407865:	31 fe                	xor    %edi,%esi
407867:	c1 ca 05             	ror    $0x5,%edx
40786a:	66 0f ef e6          	pxor   %xmm6,%xmm4
40786e:	21 ce                	and    %ecx,%esi
407870:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
407874:	66 0f 6f f7          	movdqa %xmm7,%xmm6
407878:	31 ca                	xor    %ecx,%edx
40787a:	31 f7                	xor    %esi,%edi
40787c:	c1 ca 06             	ror    $0x6,%edx
40787f:	66 0f ef e5          	pxor   %xmm5,%xmm4
407883:	89 d9                	mov    %ebx,%ecx
407885:	01 fa                	add    %edi,%edx
407887:	66 0f 72 d7 0a       	psrld  $0xa,%xmm7
40788c:	8b 7c 24 10          	mov    0x10(%esp),%edi
407890:	89 de                	mov    %ebx,%esi
407892:	c1 c9 09             	ror    $0x9,%ecx
407895:	66 0f fe cc          	paddd  %xmm4,%xmm1
407899:	89 5c 24 0c          	mov    %ebx,0xc(%esp)
40789d:	31 d9                	xor    %ebx,%ecx
40789f:	66 0f 73 d6 11       	psrlq  $0x11,%xmm6
4078a4:	31 fb                	xor    %edi,%ebx
4078a6:	03 54 24 08          	add    0x8(%esp),%edx
4078aa:	c1 c9 0b             	ror    $0xb,%ecx
4078ad:	66 0f ef fe          	pxor   %xmm6,%xmm7
4078b1:	21 d8                	and    %ebx,%eax
4078b3:	31 f1                	xor    %esi,%ecx
4078b5:	66 0f 73 d6 02       	psrlq  $0x2,%xmm6
4078ba:	03 54 24 34          	add    0x34(%esp),%edx
4078be:	31 f8                	xor    %edi,%eax
4078c0:	c1 c9 02             	ror    $0x2,%ecx
4078c3:	66 0f ef fe          	pxor   %xmm6,%xmm7
4078c7:	01 d0                	add    %edx,%eax
4078c9:	03 54 24 18          	add    0x18(%esp),%edx
4078cd:	66 0f 70 ff 80       	pshufd $0x80,%xmm7,%xmm7
4078d2:	01 c8                	add    %ecx,%eax
4078d4:	89 d1                	mov    %edx,%ecx
4078d6:	c1 ca 0e             	ror    $0xe,%edx
4078d9:	8b 74 24 1c          	mov    0x1c(%esp),%esi
4078dd:	31 ca                	xor    %ecx,%edx
4078df:	8b 3c 24             	mov    (%esp),%edi
4078e2:	31 fe                	xor    %edi,%esi
4078e4:	c1 ca 05             	ror    $0x5,%edx
4078e7:	21 ce                	and    %ecx,%esi
4078e9:	66 0f 73 df 08       	psrldq $0x8,%xmm7
4078ee:	89 4c 24 18          	mov    %ecx,0x18(%esp)
4078f2:	31 ca                	xor    %ecx,%edx
4078f4:	31 f7                	xor    %esi,%edi
4078f6:	66 0f fe cf          	paddd  %xmm7,%xmm1
4078fa:	c1 ca 06             	ror    $0x6,%edx
4078fd:	89 c1                	mov    %eax,%ecx
4078ff:	01 fa                	add    %edi,%edx
407901:	8b 7c 24 0c          	mov    0xc(%esp),%edi
407905:	89 c6                	mov    %eax,%esi
407907:	c1 c9 09             	ror    $0x9,%ecx
40790a:	89 44 24 08          	mov    %eax,0x8(%esp)
40790e:	66 0f 70 f9 50       	pshufd $0x50,%xmm1,%xmm7
407913:	31 c1                	xor    %eax,%ecx
407915:	31 f8                	xor    %edi,%eax
407917:	03 54 24 04          	add    0x4(%esp),%edx
40791b:	66 0f 6f f7          	movdqa %xmm7,%xmm6
40791f:	c1 c9 0b             	ror    $0xb,%ecx
407922:	66 0f 72 d7 0a       	psrld  $0xa,%xmm7
407927:	21 c3                	and    %eax,%ebx
407929:	66 0f 73 d6 11       	psrlq  $0x11,%xmm6
40792e:	31 f1                	xor    %esi,%ecx
407930:	03 54 24 38          	add    0x38(%esp),%edx
407934:	31 fb                	xor    %edi,%ebx
407936:	c1 c9 02             	ror    $0x2,%ecx
407939:	66 0f ef fe          	pxor   %xmm6,%xmm7
40793d:	01 d3                	add    %edx,%ebx
40793f:	03 54 24 14          	add    0x14(%esp),%edx
407943:	66 0f 73 d6 02       	psrlq  $0x2,%xmm6
407948:	01 cb                	add    %ecx,%ebx
40794a:	89 d1                	mov    %edx,%ecx
40794c:	c1 ca 0e             	ror    $0xe,%edx
40794f:	66 0f ef fe          	pxor   %xmm6,%xmm7
407953:	8b 74 24 18          	mov    0x18(%esp),%esi
407957:	31 ca                	xor    %ecx,%edx
407959:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
40795d:	66 0f 70 ff 08       	pshufd $0x8,%xmm7,%xmm7
407962:	31 fe                	xor    %edi,%esi
407964:	c1 ca 05             	ror    $0x5,%edx
407967:	66 0f 6f 75 10       	movdqa 0x10(%ebp),%xmm6
40796c:	21 ce                	and    %ecx,%esi
40796e:	89 4c 24 14          	mov    %ecx,0x14(%esp)
407972:	66 0f 73 ff 08       	pslldq $0x8,%xmm7
407977:	31 ca                	xor    %ecx,%edx
407979:	31 f7                	xor    %esi,%edi
40797b:	c1 ca 06             	ror    $0x6,%edx
40797e:	89 d9                	mov    %ebx,%ecx
407980:	01 fa                	add    %edi,%edx
407982:	8b 7c 24 08          	mov    0x8(%esp),%edi
407986:	89 de                	mov    %ebx,%esi
407988:	c1 c9 09             	ror    $0x9,%ecx
40798b:	66 0f fe cf          	paddd  %xmm7,%xmm1
40798f:	89 5c 24 04          	mov    %ebx,0x4(%esp)
407993:	31 d9                	xor    %ebx,%ecx
407995:	31 fb                	xor    %edi,%ebx
407997:	03 14 24             	add    (%esp),%edx
40799a:	66 0f fe f1          	paddd  %xmm1,%xmm6
40799e:	c1 c9 0b             	ror    $0xb,%ecx
4079a1:	21 d8                	and    %ebx,%eax
4079a3:	31 f1                	xor    %esi,%ecx
4079a5:	03 54 24 3c          	add    0x3c(%esp),%edx
4079a9:	31 f8                	xor    %edi,%eax
4079ab:	c1 c9 02             	ror    $0x2,%ecx
4079ae:	01 d0                	add    %edx,%eax
4079b0:	03 54 24 10          	add    0x10(%esp),%edx
4079b4:	01 c8                	add    %ecx,%eax
4079b6:	66 0f 7f 74 24 30    	movdqa %xmm6,0x30(%esp)
4079bc:	89 d1                	mov    %edx,%ecx
4079be:	66 0f 6f e3          	movdqa %xmm3,%xmm4
4079c2:	c1 ca 0e             	ror    $0xe,%edx
4079c5:	8b 74 24 14          	mov    0x14(%esp),%esi
4079c9:	66 0f 6f f9          	movdqa %xmm1,%xmm7
4079cd:	31 ca                	xor    %ecx,%edx
4079cf:	8b 7c 24 18          	mov    0x18(%esp),%edi
4079d3:	66 0f 3a 0f e2 04    	palignr $0x4,%xmm2,%xmm4
4079d9:	31 fe                	xor    %edi,%esi
4079db:	c1 ca 05             	ror    $0x5,%edx