private int processBlock192or256(byte[] input, int inOff, byte[] output, int outOff)
{
for (int i = 0; i < 4; i++)
{
this.state[i] = CamelliaEngine.bytes2uint(input, inOff + i * 4);
this.state[i] ^= this.kw[i];
}
CamelliaEngine.camelliaF2(this.state, this.subkey, 0);
CamelliaEngine.camelliaF2(this.state, this.subkey, 4);
CamelliaEngine.camelliaF2(this.state, this.subkey, 8);
CamelliaEngine.camelliaFLs(this.state, this.ke, 0);
CamelliaEngine.camelliaF2(this.state, this.subkey, 12);
CamelliaEngine.camelliaF2(this.state, this.subkey, 16);
CamelliaEngine.camelliaF2(this.state, this.subkey, 20);
CamelliaEngine.camelliaFLs(this.state, this.ke, 4);
CamelliaEngine.camelliaF2(this.state, this.subkey, 24);
CamelliaEngine.camelliaF2(this.state, this.subkey, 28);
CamelliaEngine.camelliaF2(this.state, this.subkey, 32);
CamelliaEngine.camelliaFLs(this.state, this.ke, 8);
CamelliaEngine.camelliaF2(this.state, this.subkey, 36);
CamelliaEngine.camelliaF2(this.state, this.subkey, 40);
CamelliaEngine.camelliaF2(this.state, this.subkey, 44);
this.state[2] ^= this.kw[4];
this.state[3] ^= this.kw[5];
this.state[0] ^= this.kw[6];
this.state[1] ^= this.kw[7];
CamelliaEngine.uint2bytes(this.state[2], output, outOff);
CamelliaEngine.uint2bytes(this.state[3], output, outOff + 4);
CamelliaEngine.uint2bytes(this.state[0], output, outOff + 8);
CamelliaEngine.uint2bytes(this.state[1], output, outOff + 12);
return(16);
}