public void start(Archive streamLoader, IBaseClient client1) { String[] strings = { "model_version", "anim_version", "midi_version", "map_version" }; for (int i = 0; i < 4; i++) { byte[] abyte0 = streamLoader.decompressFile(strings[i]); int j = abyte0.Length / 2; Default317Buffer stream = new Default317Buffer(abyte0); versions[i] = new int[j]; filePriorities[i] = new byte[j]; for (int l = 0; l < j; l++) { versions[i][l] = stream.getUnsignedLEShort(); } } String[] strings2 = { "model_crc", "anim_crc", "midi_crc", "map_crc" }; for (int k = 0; k < 4; k++) { byte[] abyte1 = streamLoader.decompressFile(strings2[k]); int i1 = abyte1.Length / 4; Default317Buffer stream_1 = new Default317Buffer(abyte1); crcs[k] = new int[i1]; for (int l1 = 0; l1 < i1; l1++) { crcs[k][l1] = stream_1.getInt(); } } byte[] abyte2 = streamLoader.decompressFile("model_index"); int j1 = versions[0].Length; modelIndices = new byte[j1]; for (int k1 = 0; k1 < j1; k1++) { if (k1 < abyte2.Length) { modelIndices[k1] = abyte2[k1]; } else { modelIndices[k1] = 0; } } abyte2 = streamLoader.decompressFile("map_index"); Default317Buffer stream2 = new Default317Buffer(abyte2); j1 = abyte2.Length / 7; mapIndices1 = new int[j1]; mapIndices2 = new int[j1]; mapIndices3 = new int[j1]; mapIndices4 = new int[j1]; for (int i2 = 0; i2 < j1; i2++) { mapIndices1[i2] = stream2.getUnsignedLEShort(); mapIndices2[i2] = stream2.getUnsignedLEShort(); mapIndices3[i2] = stream2.getUnsignedLEShort(); mapIndices4[i2] = stream2.getUnsignedByte(); } abyte2 = streamLoader.decompressFile("anim_index"); stream2 = new Default317Buffer(abyte2); j1 = abyte2.Length / 2; frames = new int[j1]; for (int j2 = 0; j2 < j1; j2++) { frames[j2] = stream2.getUnsignedLEShort(); } abyte2 = streamLoader.decompressFile("midi_index"); stream2 = new Default317Buffer(abyte2); j1 = abyte2.Length; musicPriorities = new int[j1]; for (int k2 = 0; k2 < j1; k2++) { musicPriorities[k2] = stream2.getUnsignedByte(); } clientInstance = client1; running = true; clientInstance.startRunnable(this, 2); }