40383a:	89 c5                	mov    %eax,%ebp
40383c:	31 ce                	xor    %ecx,%esi
40383e:	66 0f 6f 54 24 50    	movdqa 0x50(%esp),%xmm2
403844:	c1 c0 05             	rol    $0x5,%eax
403847:	01 f7                	add    %esi,%edi
403849:	31 dd                	xor    %ebx,%ebp
40384b:	31 cb                	xor    %ecx,%ebx
40384d:	01 c7                	add    %eax,%edi
40384f:	66 0f 70 df ee       	pshufd $0xee,%xmm7,%xmm3
403854:	03 54 24 0c          	add    0xc(%esp),%edx
403858:	21 dd                	and    %ebx,%ebp
40385a:	31 cb                	xor    %ecx,%ebx
40385c:	c1 c8 07             	ror    $0x7,%eax
40385f:	89 fe                	mov    %edi,%esi
403861:	31 dd                	xor    %ebx,%ebp
403863:	c1 c7 05             	rol    $0x5,%edi
403866:	01 ea                	add    %ebp,%edx
403868:	31 c6                	xor    %eax,%esi
40386a:	31 d8                	xor    %ebx,%eax
40386c:	01 fa                	add    %edi,%edx
40386e:	03 4c 24 10          	add    0x10(%esp),%ecx
403872:	66 0f ef cd          	pxor   %xmm5,%xmm1
403876:	66 0f 6c d8          	punpcklqdq %xmm0,%xmm3
40387a:	21 c6                	and    %eax,%esi
40387c:	31 d8                	xor    %ebx,%eax
40387e:	c1 cf 07             	ror    $0x7,%edi
403881:	66 0f ef ca          	pxor   %xmm2,%xmm1
403885:	66 0f 7f 6c 24 50    	movdqa %xmm5,0x50(%esp)
40388b:	89 d5                	mov    %edx,%ebp
40388d:	31 c6                	xor    %eax,%esi
40388f:	c1 c2 05             	rol    $0x5,%edx
403892:	66 0f 6f ec          	movdqa %xmm4,%xmm5
403896:	01 f1                	add    %esi,%ecx
403898:	66 0f fe e0          	paddd  %xmm0,%xmm4
40389c:	31 fd                	xor    %edi,%ebp
40389e:	66 0f ef cb          	pxor   %xmm3,%xmm1
4038a2:	31 c7                	xor    %eax,%edi
4038a4:	01 d1                	add    %edx,%ecx
4038a6:	03 5c 24 14          	add    0x14(%esp),%ebx
4038aa:	21 fd                	and    %edi,%ebp
4038ac:	66 0f 6f d9          	movdqa %xmm1,%xmm3
4038b0:	66 0f 7f 24 24       	movdqa %xmm4,(%esp)
4038b5:	31 c7                	xor    %eax,%edi
4038b7:	c1 ca 07             	ror    $0x7,%edx
4038ba:	89 ce                	mov    %ecx,%esi
4038bc:	31 fd                	xor    %edi,%ebp
4038be:	c1 c1 05             	rol    $0x5,%ecx
4038c1:	66 0f 72 f1 02       	pslld  $0x2,%xmm1
4038c6:	01 eb                	add    %ebp,%ebx
4038c8:	31 d6                	xor    %edx,%esi
4038ca:	66 0f 72 d3 1e       	psrld  $0x1e,%xmm3
4038cf:	31 fa                	xor    %edi,%edx
4038d1:	01 cb                	add    %ecx,%ebx
4038d3:	03 44 24 18          	add    0x18(%esp),%eax
4038d7:	21 d6                	and    %edx,%esi
4038d9:	31 fa                	xor    %edi,%edx
4038db:	c1 c9 07             	ror    $0x7,%ecx
4038de:	66 0f eb cb          	por    %xmm3,%xmm1
4038e2:	89 dd                	mov    %ebx,%ebp
4038e4:	31 d6                	xor    %edx,%esi
4038e6:	66 0f 6f 5c 24 60    	movdqa 0x60(%esp),%xmm3
4038ec:	c1 c3 05             	rol    $0x5,%ebx
4038ef:	01 f0                	add    %esi,%eax
4038f1:	31 cd                	xor    %ecx,%ebp
4038f3:	31 d1                	xor    %edx,%ecx
4038f5:	01 d8                	add    %ebx,%eax
4038f7:	66 0f 70 e0 ee       	pshufd $0xee,%xmm0,%xmm4
4038fc:	03 7c 24 1c          	add    0x1c(%esp),%edi
403900:	21 cd                	and    %ecx,%ebp
403902:	31 d1                	xor    %edx,%ecx
403904:	c1 cb 07             	ror    $0x7,%ebx
403907:	89 c6                	mov    %eax,%esi
403909:	31 cd                	xor    %ecx,%ebp
40390b:	c1 c0 05             	rol    $0x5,%eax
40390e:	01 ef                	add    %ebp,%edi
403910:	31 de                	xor    %ebx,%esi
403912:	31 cb                	xor    %ecx,%ebx
403914:	01 c7                	add    %eax,%edi
403916:	03 54 24 20          	add    0x20(%esp),%edx
40391a:	66 0f ef d6          	pxor   %xmm6,%xmm2
40391e:	66 0f 6c e1          	punpcklqdq %xmm1,%xmm4
403922:	21 de                	and    %ebx,%esi
403924:	31 cb                	xor    %ecx,%ebx
403926:	c1 c8 07             	ror    $0x7,%eax
403929:	66 0f ef d3          	pxor   %xmm3,%xmm2
40392d:	66 0f 7f 74 24 60    	movdqa %xmm6,0x60(%esp)
403933:	89 fd                	mov    %edi,%ebp
403935:	31 de                	xor    %ebx,%esi
403937:	c1 c7 05             	rol    $0x5,%edi
40393a:	66 0f 6f f5          	movdqa %xmm5,%xmm6
40393e:	01 f2                	add    %esi,%edx
403940:	66 0f fe e9          	paddd  %xmm1,%xmm5
403944:	31 c5                	xor    %eax,%ebp
403946:	66 0f ef d4          	pxor   %xmm4,%xmm2
40394a:	31 d8                	xor    %ebx,%eax
40394c:	01 fa                	add    %edi,%edx
40394e:	03 4c 24 24          	add    0x24(%esp),%ecx
403952:	21 c5                	and    %eax,%ebp
403954:	66 0f 6f e2          	movdqa %xmm2,%xmm4
403958:	66 0f 7f 6c 24 10    	movdqa %xmm5,0x10(%esp)
40395e:	31 d8                	xor    %ebx,%eax
403960:	c1 cf 07             	ror    $0x7,%edi
403963:	89 d6                	mov    %edx,%esi
403965:	31 c5                	xor    %eax,%ebp
403967:	c1 c2 05             	rol    $0x5,%edx
40396a:	66 0f 72 f2 02       	pslld  $0x2,%xmm2
40396f:	01 e9                	add    %ebp,%ecx
403971:	31 fe                	xor    %edi,%esi
403973:	66 0f 72 d4 1e       	psrld  $0x1e,%xmm4
403978:	31 c7                	xor    %eax,%edi
40397a:	01 d1                	add    %edx,%ecx
40397c:	03 5c 24 28          	add    0x28(%esp),%ebx
403980:	21 fe                	and    %edi,%esi
403982:	31 c7                	xor    %eax,%edi
403984:	c1 ca 07             	ror    $0x7,%edx
403987:	66 0f eb d4          	por    %xmm4,%xmm2
40398b:	89 cd                	mov    %ecx,%ebp
40398d:	31 fe                	xor    %edi,%esi
40398f:	66 0f 6f 64 24 40    	movdqa 0x40(%esp),%xmm4
403995:	c1 c1 05             	rol    $0x5,%ecx
403998:	01 f3                	add    %esi,%ebx
40399a:	31 d5                	xor    %edx,%ebp
40399c:	31 fa                	xor    %edi,%edx
40399e:	01 cb                	add    %ecx,%ebx
4039a0:	66 0f 70 e9 ee       	pshufd $0xee,%xmm1,%xmm5
4039a5:	03 44 24 2c          	add    0x2c(%esp),%eax
4039a9:	21 d5                	and    %edx,%ebp
4039ab:	31 fa                	xor    %edi,%edx
4039ad:	c1 c9 07             	ror    $0x7,%ecx
4039b0:	89 de                	mov    %ebx,%esi
4039b2:	31 d5                	xor    %edx,%ebp
4039b4:	c1 c3 05             	rol    $0x5,%ebx
4039b7:	01 e8                	add    %ebp,%eax
4039b9:	31 d6                	xor    %edx,%esi
4039bb:	01 d8                	add    %ebx,%eax
4039bd:	03 7c 24 30          	add    0x30(%esp),%edi
4039c1:	66 0f ef df          	pxor   %xmm7,%xmm3
4039c5:	66 0f 6c ea          	punpcklqdq %xmm2,%xmm5
4039c9:	31 ce                	xor    %ecx,%esi
4039cb:	89 c5                	mov    %eax,%ebp
4039cd:	c1 c0 05             	rol    $0x5,%eax
4039d0:	66 0f ef dc          	pxor   %xmm4,%xmm3
4039d4:	66 0f 7f 7c 24 40    	movdqa %xmm7,0x40(%esp)
4039da:	01 f7                	add    %esi,%edi
4039dc:	31 cd                	xor    %ecx,%ebp
4039de:	66 0f 6f fe          	movdqa %xmm6,%xmm7
4039e2:	c1 cb 07             	ror    $0x7,%ebx
4039e5:	66 0f fe f2          	paddd  %xmm2,%xmm6
4039e9:	01 c7                	add    %eax,%edi
4039eb:	66 0f ef dd          	pxor   %xmm5,%xmm3
4039ef:	03 54 24 34          	add    0x34(%esp),%edx
4039f3:	31 dd                	xor    %ebx,%ebp
4039f5:	89 fe                	mov    %edi,%esi
4039f7:	c1 c7 05             	rol    $0x5,%edi
4039fa:	66 0f 6f eb          	movdqa %xmm3,%xmm5
4039fe:	66 0f 7f 74 24 20    	movdqa %xmm6,0x20(%esp)
403a04:	01 ea                	add    %ebp,%edx
403a06:	31 de                	xor    %ebx,%esi
403a08:	c1 c8 07             	ror    $0x7,%eax
403a0b:	01 fa                	add    %edi,%edx
403a0d:	66 0f 72 f3 02       	pslld  $0x2,%xmm3
403a12:	03 4c 24 38          	add    0x38(%esp),%ecx
403a16:	31 c6                	xor    %eax,%esi
403a18:	66 0f 72 d5 1e       	psrld  $0x1e,%xmm5
403a1d:	89 d5                	mov    %edx,%ebp
403a1f:	c1 c2 05             	rol    $0x5,%edx
403a22:	01 f1                	add    %esi,%ecx
403a24:	31 c5                	xor    %eax,%ebp
403a26:	c1 cf 07             	ror    $0x7,%edi
403a29:	01 d1                	add    %edx,%ecx
403a2b:	66 0f eb dd          	por    %xmm5,%xmm3
403a2f:	03 5c 24 3c          	add    0x3c(%esp),%ebx
403a33:	31 fd                	xor    %edi,%ebp
403a35:	89 ce                	mov    %ecx,%esi
403a37:	c1 c1 05             	rol    $0x5,%ecx
403a3a:	01 eb                	add    %ebp,%ebx
403a3c:	31 fe                	xor    %edi,%esi
403a3e:	c1 ca 07             	ror    $0x7,%edx
403a41:	01 cb                	add    %ecx,%ebx
403a43:	03 04 24             	add    (%esp),%eax
403a46:	31 d6                	xor    %edx,%esi
403a48:	89 dd                	mov    %ebx,%ebp
403a4a:	c1 c3 05             	rol    $0x5,%ebx
403a4d:	01 f0                	add    %esi,%eax
403a4f:	31 d5                	xor    %edx,%ebp
403a51:	c1 c9 07             	ror    $0x7,%ecx
403a54:	66 0f fe fb          	paddd  %xmm3,%xmm7
403a58:	01 d8                	add    %ebx,%eax
403a5a:	03 7c 24 04          	add    0x4(%esp),%edi
403a5e:	31 cd                	xor    %ecx,%ebp
403a60:	89 c6                	mov    %eax,%esi
403a62:	66 0f 7f 7c 24 30    	movdqa %xmm7,0x30(%esp)
403a68:	c1 c0 05             	rol    $0x5,%eax
403a6b:	01 ef                	add    %ebp,%edi
403a6d:	31 ce                	xor    %ecx,%esi
403a6f:	c1 cb 07             	ror    $0x7,%ebx
403a72:	01 c7                	add    %eax,%edi
403a74:	03 54 24 08          	add    0x8(%esp),%edx
403a78:	31 de                	xor    %ebx,%esi
403a7a:	89 fd                	mov    %edi,%ebp
403a7c:	c1 c7 05             	rol    $0x5,%edi
403a7f:	01 f2                	add    %esi,%edx
403a81:	31 dd                	xor    %ebx,%ebp
403a83:	c1 c8 07             	ror    $0x7,%eax
403a86:	01 fa                	add    %edi,%edx
403a88:	03 4c 24 0c          	add    0xc(%esp),%ecx
403a8c:	31 c5                	xor    %eax,%ebp
403a8e:	89 d6                	mov    %edx,%esi
403a90:	c1 c2 05             	rol    $0x5,%edx
403a93:	01 e9                	add    %ebp,%ecx
403a95:	31 c6                	xor    %eax,%esi
403a97:	c1 cf 07             	ror    $0x7,%edi
403a9a:	01 d1                	add    %edx,%ecx
403a9c:	8b ac 24 c4 00 00 00 	mov    0xc4(%esp),%ebp
403aa3:	3b ac 24 c8 00 00 00 	cmp    0xc8(%esp),%ebp
403aaa:	0f 84 a0 01 00 00    	je     0x403c50
403ab0:	66 0f 6f bc 24 a0 00 	movdqa 0xa0(%esp),%xmm7
403ab7:	00 00
403ab9:	66 0f 6f b4 24 b0 00 	movdqa 0xb0(%esp),%xmm6
403ac0:	00 00
403ac2:	f3 0f 6f 45 00       	movdqu 0x0(%ebp),%xmm0
403ac7:	f3 0f 6f 4d 10       	movdqu 0x10(%ebp),%xmm1
403acc:	f3 0f 6f 55 20       	movdqu 0x20(%ebp),%xmm2
403ad1:	f3 0f 6f 5d 30       	movdqu 0x30(%ebp),%xmm3
403ad6:	83 c5 40             	add    $0x40,%ebp
403ad9:	66 0f 38 00 c6       	pshufb %xmm6,%xmm0
403ade:	89 ac 24 c4 00 00 00 	mov    %ebp,0xc4(%esp)
403ae5:	66 0f 7f 7c 24 60    	movdqa %xmm7,0x60(%esp)
403aeb:	03 5c 24 10          	add    0x10(%esp),%ebx
403aef:	31 fe                	xor    %edi,%esi
403af1:	89 cd                	mov    %ecx,%ebp
403af3:	c1 c1 05             	rol    $0x5,%ecx
403af6:	01 f3                	add    %esi,%ebx
403af8:	31 fd                	xor    %edi,%ebp
403afa:	c1 ca 07             	ror    $0x7,%edx
403afd:	66 0f 38 00 ce       	pshufb %xmm6,%xmm1
403b02:	01 cb                	add    %ecx,%ebx
403b04:	03 44 24 14          	add    0x14(%esp),%eax
403b08:	31 d5                	xor    %edx,%ebp
403b0a:	89 de                	mov    %ebx,%esi
403b0c:	66 0f fe c7          	paddd  %xmm7,%xmm0
403b10:	c1 c3 05             	rol    $0x5,%ebx
403b13:	01 e8                	add    %ebp,%eax
403b15:	31 d6                	xor    %edx,%esi
403b17:	c1 c9 07             	ror    $0x7,%ecx
403b1a:	66 0f 7f 04 24       	movdqa %xmm0,(%esp)
403b1f:	01 d8                	add    %ebx,%eax
403b21:	03 7c 24 18          	add    0x18(%esp),%edi
403b25:	31 ce                	xor    %ecx,%esi
403b27:	89 c5                	mov    %eax,%ebp
403b29:	66 0f fa c7          	psubd  %xmm7,%xmm0
403b2d:	c1 c0 05             	rol    $0x5,%eax
403b30:	01 f7                	add    %esi,%edi
403b32:	31 cd                	xor    %ecx,%ebp
403b34:	c1 cb 07             	ror    $0x7,%ebx
403b37:	01 c7                	add    %eax,%edi
403b39:	03 54 24 1c          	add    0x1c(%esp),%edx
403b3d:	31 dd                	xor    %ebx,%ebp
403b3f:	89 fe                	mov    %edi,%esi
403b41:	c1 c7 05             	rol    $0x5,%edi
403b44:	01 ea                	add    %ebp,%edx
403b46:	31 de                	xor    %ebx,%esi
403b48:	c1 c8 07             	ror    $0x7,%eax
403b4b:	01 fa                	add    %edi,%edx
403b4d:	03 4c 24 20          	add    0x20(%esp),%ecx
403b51:	31 c6                	xor    %eax,%esi
403b53:	89 d5                	mov    %edx,%ebp
403b55:	c1 c2 05             	rol    $0x5,%edx
403b58:	01 f1                	add    %esi,%ecx
403b5a:	31 c5                	xor    %eax,%ebp
403b5c:	c1 cf 07             	ror    $0x7,%edi
403b5f:	66 0f 38 00 d6       	pshufb %xmm6,%xmm2
403b64:	01 d1                	add    %edx,%ecx
403b66:	03 5c 24 24          	add    0x24(%esp),%ebx
403b6a:	31 fd                	xor    %edi,%ebp
403b6c:	89 ce                	mov    %ecx,%esi
403b6e:	66 0f fe cf          	paddd  %xmm7,%xmm1
403b72:	c1 c1 05             	rol    $0x5,%ecx
403b75:	01 eb                	add    %ebp,%ebx
403b77:	31 fe                	xor    %edi,%esi
403b79:	c1 ca 07             	ror    $0x7,%edx
403b7c:	66 0f 7f 4c 24 10    	movdqa %xmm1,0x10(%esp)
403b82:	01 cb                	add    %ecx,%ebx
403b84:	03 44 24 28          	add    0x28(%esp),%eax
403b88:	31 d6                	xor    %edx,%esi
403b8a:	89 dd                	mov    %ebx,%ebp
403b8c:	66 0f fa cf          	psubd  %xmm7,%xmm1
403b90:	c1 c3 05             	rol    $0x5,%ebx
403b93:	01 f0                	add    %esi,%eax
403b95:	31 d5                	xor    %edx,%ebp
403b97:	c1 c9 07             	ror    $0x7,%ecx
403b9a:	01 d8                	add    %ebx,%eax
403b9c:	03 7c 24 2c          	add    0x2c(%esp),%edi
403ba0:	31 cd                	xor    %ecx,%ebp
403ba2:	89 c6                	mov    %eax,%esi
403ba4:	c1 c0 05             	rol    $0x5,%eax
403ba7:	01 ef                	add    %ebp,%edi
403ba9:	31 ce                	xor    %ecx,%esi
403bab:	c1 cb 07             	ror    $0x7,%ebx
403bae:	01 c7                	add    %eax,%edi
403bb0:	03 54 24 30          	add    0x30(%esp),%edx
403bb4:	31 de                	xor    %ebx,%esi
403bb6:	89 fd                	mov    %edi,%ebp
403bb8:	c1 c7 05             	rol    $0x5,%edi
403bbb:	01 f2                	add    %esi,%edx
403bbd:	31 dd                	xor    %ebx,%ebp
403bbf:	c1 c8 07             	ror    $0x7,%eax
403bc2:	66 0f 38 00 de       	pshufb %xmm6,%xmm3
403bc7:	01 fa                	add    %edi,%edx
403bc9:	03 4c 24 34          	add    0x34(%esp),%ecx
403bcd:	31 c5                	xor    %eax,%ebp
403bcf:	89 d6                	mov    %edx,%esi
403bd1:	66 0f fe d7          	paddd  %xmm7,%xmm2
403bd5:	c1 c2 05             	rol    $0x5,%edx
403bd8:	01 e9                	add    %ebp,%ecx
403bda:	31 c6                	xor    %eax,%esi
403bdc:	c1 cf 07             	ror    $0x7,%edi
403bdf:	66 0f 7f 54 24 20    	movdqa %xmm2,0x20(%esp)
403be5:	01 d1                	add    %edx,%ecx
403be7:	03 5c 24 38          	add    0x38(%esp),%ebx
403beb:	31 fe                	xor    %edi,%esi
403bed:	89 cd                	mov    %ecx,%ebp
403bef:	66 0f fa d7          	psubd  %xmm7,%xmm2
403bf3:	c1 c1 05             	rol    $0x5,%ecx
403bf6:	01 f3                	add    %esi,%ebx
403bf8:	31 fd                	xor    %edi,%ebp
403bfa:	c1 ca 07             	ror    $0x7,%edx
403bfd:	01 cb                	add    %ecx,%ebx
403bff:	03 44 24 3c          	add    0x3c(%esp),%eax
403c03:	31 d5                	xor    %edx,%ebp
403c05:	89 de                	mov    %ebx,%esi
403c07:	c1 c3 05             	rol    $0x5,%ebx
403c0a:	01 e8                	add    %ebp,%eax
403c0c:	c1 c9 07             	ror    $0x7,%ecx
403c0f:	01 d8                	add    %ebx,%eax
403c11:	8b ac 24 c0 00 00 00 	mov    0xc0(%esp),%ebp
403c18:	03 45 00             	add    0x0(%ebp),%eax
403c1b:	03 75 04             	add    0x4(%ebp),%esi
403c1e:	03 4d 08             	add    0x8(%ebp),%ecx
403c21:	89 45 00             	mov    %eax,0x0(%ebp)
403c24:	03 55 0c             	add    0xc(%ebp),%edx
403c27:	89 75 04             	mov    %esi,0x4(%ebp)
403c2a:	03 7d 10             	add    0x10(%ebp),%edi
403c2d:	89 4d 08             	mov    %ecx,0x8(%ebp)
403c30:	89 cb                	mov    %ecx,%ebx
403c32:	89 55 0c             	mov    %edx,0xc(%ebp)
403c35:	31 d3                	xor    %edx,%ebx
403c37:	89 7d 10             	mov    %edi,0x10(%ebp)
403c3a:	89 f5                	mov    %esi,%ebp
403c3c:	66 0f 70 e0 ee       	pshufd $0xee,%xmm0,%xmm4