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); }