[code]// created by mego // copyright © 2018 - 2019 tq digital // xmego - project // xmego - 01285338963 // 01068255178 using system; using system.io; using system.text; using xmego.network.cryptography; namespace xmego.network.authpackets // غير اسم البروجيكت { public class authentication : Interfaces.ipacket { public string username; public string password; public string server; public string mac; public authentication() { } public void deserialize(byte[] buffer) { if (buffer.length == 312) { ushort length = bitconverter.touint16(buffer, 0); if (length == 312) { ushort type = bitconverter.touint16(buffer, 2); byte[] temp = new byte[16]; if (type == 1542) { memorystream ms = new memorystream(buffer); binaryreader br = new binaryreader(ms); br.readuint16(); br.readuint16(); username = encoding.default.getstring(br.readbytes(32)); username = username.replace("\0", ""); br.readbytes(37); byte[] passwordarray = br.readbytes(32); password = encoding.default.getstring(passwordarray); xmegoantihacklor.packets.cryptography.loaderencryption.decrypt(passwordarray); password = encoding.default.getstring(passwordarray); password = password.replace("\0", ""); br.readbytes(31); server = encoding.default.getstring(br.readbytes(16)); server = server.replace("\0", ""); mac = encoding.default.getstring(br.readbytes(16)); mac = mac.replace("\0", ""); br.close(); ms.close(); } } } } public void deserialize2(byte[] buffer) { if (buffer.length == 312) { ushort length = bitconverter.touint16(buffer, 0); if (length == 312) { ushort type = bitconverter.touint16(buffer, 2); byte[] temp = new byte[16]; if (type == 1542) { memorystream ms = new memorystream(buffer); binaryreader br = new binaryreader(ms); br.readuint16(); br.readuint16(); username = encoding.default.getstring(br.readbytes(32)); username = username.replace("\0", ""); br.readbytes(36); var passwordarray = br.readbytes(32); xmegoantihacklorx2.network.cryptography.loaderencryption.decrypt(passwordarray, 32); password = encoding.default.getstring(passwordarray); password = password.replace("\0", ""); br.readbytes(32); server = encoding.default.getstring(br.readbytes(16)); server = server.replace("\0", ""); mac = encoding.default.getstring(br.readbytes(16)); mac = mac.replace("\0", ""); br.close(); ms.close(); } } } } public byte[] toarray() { throw new notimplementedexception(); } public void send(client.gamestate client) { throw new notimplementedexception(); } } }
[code]// created by mego // copyright © 2018 - 2019 tq digital // xmego - project // xmego - 01285338963 // 01068255178 using system; using system.collections.generic; using system.linq; using system.text; namespace xmegoantihacklor.packets.cryptography// متغيرش اسم البروجيكت { public class loaderencryption { private static byte[] key = { 4 , 5 , 1 , 3 , 66 , 7 , 77 , 44 , 100 , 228 , 21 , 254 , 234 , 212 , 114 , 141 , 214 , 12 , 55 , 99 , 100 , 7 , 98 , 187 , 190 , 77 , 65 , 55 , 44 , 43 , 21 , 99 }; // idb private static byte[] key2 = { 6, 4, 1, 7, 2, 33, 77, 66, 65, 44, 21, 254, 43, 212, 90, 44, 214, 12, 56, 99, 67, 7, 87, 99, 0, 77, 43, 11, 44, 22, 21, 99 }; // idb public static void encrypt(byte[] arr) { int length = key.length; for (int i = 0; i < arr.length; i++) { arr[i] ^= key[i % length]; arr[i] ^= key[(i + 1) % length]; } } public static void decrypt(byte[] arr) { var len = encoding.default.getstring(arr).replace("\0", "").length; for (int i = 0; i < len; ++i) { arr[i] ^= key2[88 * i & 0x1f]; arr[i] ^= key[32 * i & 0x1c]; } } } } namespace xmegoantihacklorx2.network.cryptography//متغيرش اسم البروجيكت { public class loaderencryption { private static byte[] key = { 12, 12, 215, 10, 20, 11, 60, 193, 11, 96, 53, 157, 71, 37, 150, 225, 86, 224, 178, 184, 230, 147, 79, 194, 160, 0, 99, 239, 218, 134, 179, 13, 247, 155, 237, 245, 165, 245, 128, 144 }; public static void encrypt(byte[] arr) { int length = key.length; for (int i = 0; i < arr.length; i++) { arr[i] ^= key[i % length]; arr[i] ^= key[(i + 1) % length]; } } public static void decrypt(byte[] arr, int size) { int length = key.length; for (int i = 0; i < size; i++) { arr[i] ^= key[(i + 1) % length]; arr[i] ^= key[i % length]; } } } }
gamecryptographykey = "xmegoantihackxxx";