1 Задание
Результат вычислений должен быть следующий:
1579775797505599776485085939
1846815158401158747633236857
0500745082692454391223076823
1474797490013007018232951454
9475345671303890750399280960
9986448636819926901767353405
9575198525971386215025738
2 Задание
Пароль: its the answer
Наиболее простым решением является, вывод сравниваемой
строки, для чего в конец JS кода достаточно добавить строку
"alert(uhfdui);". Сделать это можно с помощью того же блокнота.
3 Задание
Скрытое сообщение: "You found it"
Для решения достаточно открыть файл в hex-редакторе
и обратить внимание на отличные от "00", "01" байты.
4 задание
Расшифрованное сообщение: nice logic, you have decrypted it
Реверсируем алфавит и получаем.
ABCDEFGHIJKLMNOPQRSTUVWXYZ
zyxwvutsrqponmlkji..
5 Задание
Программа находится в памяти и отслеживает запуск ScanDisk'а,
по классу 'ScanDskWDlgClass', после чего производит описанные
действа.
.DATA
hwnd dd 0
sdstr db 'ScanDskWDlgClass',0
mess db 'HardDisk not found!',0
m1 db 'SCANDISK ERROR',0
.CODE
start:
l1:
push 0
push offset sdstr
call FindWindowA
mov [hwnd],eax
or eax.eax
jz l1
push 0
push offset m1
push offset mess
push 0
call MessageBoxA
push [hwnd]
call CloseWindow
jmp l1
end start
6 Задание
Суммируется значение всех ASCII символов введенного пароля. Полученное
значение сдвигается влево на 4 бита (операция rol), после чего xor'ится со вторым
символом пароля. Результат сравнивается с 4E55h и длинна введенного пароля
с 12. При совпадении условий пароль успешно принимается и выводится сообщение
"Access granted!".