Объяснить принцип работы декомпилированного кода - C#
Формулировка задачи:
Здравствуйте! Есть код который я получил с помощью ILSpy :
Явно этот код написан на C++/CLI.
Но вот как понять что тут происходит? Кто может объяснить как тут происходит декодирование?
В папке с приложением лежать файлы *.odb, чтение строк происходит с них. Может кто знает как можно расшифровать текст в .odb файле, имея вот такой (для меня трудно понятный) код.
Или может кто знает как правильно декомпилировать MC++ код?
Спасибо!
Листинг программы
- private unsafe void DecodeStr(sbyte* si, sbyte* so, int Len, byte Key)
- {
- for (int i = 0; i < Len; i++)
- {
- *(byte*)(so + (IntPtr)i / sizeof(sbyte)) = (byte)((int)(*(sbyte*)(si + (IntPtr)i / sizeof(sbyte))) ^ (int)Key + i);
- }
- *(byte*)(so + (IntPtr)Len / sizeof(sbyte)) = 0;
- }
Решение задачи: «Объяснить принцип работы декомпилированного кода»
textual
Листинг программы
- private unsafe void DecodeStr(sbyte* si, sbyte* so, int Len, byte Key) {
- // этот код наверняка не будет компилироваться из-за приведений типов
- for (int i = 0; i < Len; i++) {
- *(so + i) = *(si + i) ^ Key;
- }
- *(so + Len) = 0;
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д