А не правильнее будет так: SReg1 = ((((SReg1 & (1 << 31)) ^ (SReg1 & (1 << 6)) ^ (SReg1 & (1 << 4)) ^ (SReg1 & (1 << 2)) ^ (SReg1 & (1 << 1)) ^...
Может попробовать сохранять FS, или использовать другой сегментный регистр?
#pragma pack(1)
По умолчанию поля структуры выровнены по границе 4 байт. 4*3=12. Так что всё правильно...
А новая винда - это случайно не XP 64?
В GDTR.BASE должен быть адрес Null а не hCode А после MOV CR0,EAX у тебя идет jmp far 8:offset ?
http://pari.math.u-bordeaux.fr/
Во-первых хотелось бы узнать версию твоей винды. 1. На wasm.ru и codeproject есть рабочие примеры. 2. Возможно не запущен драйвер...
Если алгоритм стойкий - то ни на сколько. Только вот зачем в зашифрованом файле хранить имя оригинала? А где у тебя проверка правильности...
У Iczelion'а были примеры использования Debug API
EvilsInterrupt http://www.rsasecurity.com/rsalabs/node.asp?id=2124
Существует такая вещь как PKCS#5 v2 - отличный способ генерации ключей на основе пароля.
Это компилируется в MASM7 но выдаёт ошибку в MASM8 movd mm(0),eax Может есть какая-нибудь опция для совместимости? -Zm не помогает.
Имена участников (разделяйте запятой).