}
+ for(int a=0;a<h2;a+=4) {
+
+ myrand=xorshift32(myrand);
+ uint mm=myrand;
+
+ X[a]=X[a]^(mm&255);
+ mm>>=8;
+ X[a+1]=X[a+1]^(mm&255);
+ mm>>=8;
+ X[a+2]=X[a+2]^(mm&255);
+ mm>>=8;
+ X[a+3]=X[a+3]^(mm&255);
+ }
+
+
+
+
+
for(int a=0;a<h2;a+=4) {
X[a]=Sbox1[X[a]];
X[a+1]=Sbox1[X[a+1]];
}
for(int a=0;a<h2;a+=4) {
- fX[a]=X[a]^RM1[a];
- fX[a+1]=X[a+1]^RM1[a+1];
- fX[a+2]=X[a+2]^RM1[a+2];
- fX[a+3]=X[a+3]^RM1[a+3];
+ X[a]=X[a]^RM1[a];
+ X[a+1]=X[a+1]^RM1[a+1];
+ X[a+2]=X[a+2]^RM1[a+2];
+ X[a+3]=X[a+3]^RM1[a+3];
}
for(int a=0;a<h2;a+=4) {
+ fX[a]=X[a]^seq_in[ind2+a];
+ fX[a+1]=X[a+1]^seq_in[ind2+a+1];
+ fX[a+2]=X[a+2]^seq_in[ind2+a+2];
+ fX[a+3]=X[a+3]^seq_in[ind2+a+3];
- myrand=xorshift32(myrand);
- uint mm=myrand;
-
- fX[a]=fX[a]^seq_in[ind2+a]^(mm&255);
- mm>>=8;
- fX[a+1]=fX[a+1]^seq_in[ind2+a+1]^(mm&255);
- mm>>=8;
- fX[a+2]=fX[a+2]^seq_in[ind2+a+2]^(mm&255);
- mm>>=8;
- fX[a+3]=fX[a+3]^seq_in[ind2+a+3]^(mm&255);
}