- Видео 52
- Просмотров 113 877
First Steps
США
Добавлен 24 янв 2023
Канал о программировании : Просто о сложном.
Как сделать первый правильный шаг, начиная изучение нового языка или направления в программировании.
Ассемблер, Си, С++, Python и все, все, все ...
"Даже путь в тысячу ли начинается с первого шага"
Лао Дзы
"Сделай первый шаг и ты поймешь, что не все так страшно"
Сенека
"Секрет неуклонного движения вперед в том, чтобы сделать первый шаг. Секрет первого шага в том, чтобы разбить сложные, кажущиеся неодолимыми задачи на простые и осуществимые и начать с самой первой. Секрет успеха - в постоянстве цели"
Марк Твен
"Сделай шаг, и дорога появится сама собой"
Стив Джобс
Как сделать первый правильный шаг, начиная изучение нового языка или направления в программировании.
Ассемблер, Си, С++, Python и все, все, все ...
"Даже путь в тысячу ли начинается с первого шага"
Лао Дзы
"Сделай первый шаг и ты поймешь, что не все так страшно"
Сенека
"Секрет неуклонного движения вперед в том, чтобы сделать первый шаг. Секрет первого шага в том, чтобы разбить сложные, кажущиеся неодолимыми задачи на простые и осуществимые и начать с самой первой. Секрет успеха - в постоянстве цели"
Марк Твен
"Сделай шаг, и дорога появится сама собой"
Стив Джобс
Ассемблер и Си для Хакера #32 Библиотека Си в Ассемблере
Функции стандартной библиотеки Си очень эффективны и популярны. Что нужно сделать, чтобы стандартная библиотека Си в Ассемблере работала как часы?
Четыре способа решения вопроса. Подробные разъяснения и работающие исходники!
00:00 Чистый код
00:57 Библиотека Си в Ассемблере
01:34 Библиотеки Си в Windows
05:20 Терминальная программа
06:10 Функции Си в Ассемблере способ № 1
11:44 Функции Си в Ассемблере способ № 2
13:15 Как сделать lib из dll
21:20 Си в Ассемблере способы № 3 и № 4
Скачиваем необходимый софт по ссылке: assembler-code.com/programmnoe-obespechenie.
Telegram: "Ассемблер и Си": t.me/assembler_and_c (группа , чат)
Telegram: t.me/firststepsforward (канал с видео)
Эксклюзивная инфа: boosty....
Четыре способа решения вопроса. Подробные разъяснения и работающие исходники!
00:00 Чистый код
00:57 Библиотека Си в Ассемблере
01:34 Библиотеки Си в Windows
05:20 Терминальная программа
06:10 Функции Си в Ассемблере способ № 1
11:44 Функции Си в Ассемблере способ № 2
13:15 Как сделать lib из dll
21:20 Си в Ассемблере способы № 3 и № 4
Скачиваем необходимый софт по ссылке: assembler-code.com/programmnoe-obespechenie.
Telegram: "Ассемблер и Си": t.me/assembler_and_c (группа , чат)
Telegram: t.me/firststepsforward (канал с видео)
Эксклюзивная инфа: boosty....
Просмотров: 909
Видео
x64Dbg UPX Reverse Engineering
Просмотров 1,3 тыс.День назад
Перед ревёрсингом упакованный файл распаковывают... Что такое пакер, как он работает, какой алгоритм реверсирования этой зверушки? Reverse Engineering UPX, x64Dbg - это три варианта ручной распаковки пакера UPX, используя x64Dbg и плюс ещё один - без него. Теория и практика - коротко и ясно! Скачиваем необходимый софт по ссылке: assembler-code.com/programmnoe-obespechenie. Telegram "Ассемблер и...
Ассемблер и Си для Хакера #31. Shellcode
Просмотров 1,4 тыс.14 дней назад
Простое и понятное объяснение, что такое Shellcode ( Шелл-код ) и как его используют хакеры. Вся теория подкреплена работающим исходным кодом крошечной программы на masm32. Программа выдаёт себя за блокнот Windows и снимает в текстовый файл обобщённую информацию о системе. Рекомендуется программистам, хакерам и специалистам по компьютерной безопасности. 00:00 Программа с шелл-кодом на masm32 01...
Ассемблер и Си для Хакера #30 Обфускация кода и данных в программе
Просмотров 1,7 тыс.21 день назад
Обфускация кода и данных в программе необходимы для защиты от взлома, а также используется для противодействия авирям. В ролике "разжёван" один интересный приём обфускации кода и данных под кодовым названием IP Fuscation. Как всегда - рабочий код на masm32, и рабочая программа с исходниками. 00:00 Что такое обфускация 02:25 Запутывание кода - теория 03:46 Объяснение IP обфускации 07:10 Реализац...
Ассемблер и Python - Дао общих интересов
Просмотров 1,4 тыс.Месяц назад
Возможности и практическое применение Python совместно с другими языками программирования - это Дао Python . Ассемблер и Python - самые не совместимые на первый взгляд вещи. Но так ли это? Открываем новую рубрику для хакеров. Теперь к Ассемблеру, C и C добавляется Python. Решаем общие задачи, объединив усилия. Скачиваем необходимый софт по ссылке: assembler-code.com/programmnoe-obespechenie. Te...
Техника взлома и отладки программ: стек вызовов и точка останова на память
Просмотров 1,1 тыс.Месяц назад
Программа защищена парольной защитой. Все строки в коде зашифрованы! Вместо пароля в программе - хэш сумма! Никаких зацепок и вызовов MessageBox! А результат - нулевой... Как это возможно и что делать?!.. Как всегда - теория, практика, понятные объяснения без воды, исходный код! Видео полезно для пентестеров, специалистов по компьютерной безопасности, белых хакеров и всех, кто желает повысить с...
Ассемблер и Си для Хакера #29. Так прячутся трояны
Просмотров 4 тыс.Месяц назад
Так прячутся трояны и другие вирусы и зловреды от беспечных пользователей. Так реализуется скрытая установка программ. Так программы маскируются под другие программы. Разбор хакерской технологии " Программа в Программе ". После просмотра Вы никогда не будете запускать скаченные с торрентов фильмы и архивы с расширение *.exe. Просто необходимо посмотреть всем, кто интересуется компьютерной безоп...
Практика взлома : проект с защитой паролем на чистом c++
Просмотров 3,5 тыс.Месяц назад
Написан проект с защитой паролем на чистом c . Строки зашифрованы . Среда разработки - Microsoft Visual Studio , MFC . В рамках проекта скомпилированы две программы : с оптимизацией кода и без оптимизации кода. В видео с подробностями описан взлом защиты при помощи отладчика x64Dbg и навыков ассемблера. Скачиваем необходимый софт по ссылке: assembler-code.com/programmnoe-obespechenie. Telegram ...
Техника взлома и отладки программ : функции и перекрёстные ссылки xrefs
Просмотров 2,1 тыс.Месяц назад
Реверс-инжиниринг на практике. Хакерская техника взлома и отладки программ с использованием точек останова на функции Win32 Api. Что такое функция-обёртка. Как использовать перекрёстные ссылки xRefs при отладке . Как определять место вызова функции в основном коде по данным в стеке. Как работать с графом , другими фишками отладчика x64Dbg. Полный хакерский разбор с подробными разъяснениями смыс...
x64Dbg Точка останова
Просмотров 7502 месяца назад
x64Dbg Точка останова - полный обзор всех возможных бряков в лучшем на сегодняшний день отладчике. Где и что найти, куда нажать, на что обратить внимание чтобы уверенно себя чувствовать. Можно использовать видео как мануал к отладчику x64Dbg . Telegram "Ассемблер и Си": t.me/assembler_and_c Эксклюзивная инфа: boosty.to/firststeps Поддержать канал: boosty.to/firststeps/donate 00:00 Точка останов...
Ассемблер и Си для Хакера #28. Анти отладка программ - шифрование строк
Просмотров 1,9 тыс.2 месяца назад
Как помешать хакеру взломать программу. Реализуем анти отладку программ путём шифрование строк. Полный хакерский разбор с применением x64Dbg . Исходный код улучшенной парольной зашиты программы. Скачиваем необходимый софт по ссылке: assembler-code.com/programmnoe-obespechenie. Telegram "Ассемблер и Си": t.me/assembler_and_c Эксклюзивная инфа: boosty.to/firststeps Поддержать канал: boosty.to/fir...
Программная защита паролем
Просмотров 22 тыс.2 месяца назад
Программная защита паролем - анализ с помощью отладчика x64Dbg. Полный хакерский разбор простого способа защиты программы. Реверс-инжиниринг на практике. Пентест парольных защит трёх программ на языке C , C , ассемблер . Исходный код парольной зашиты. Скачиваем необходимый софт по ссылке: assembler-code.com/programmnoe-obespechenie. Telegram "Ассемблер и Си": t.me/assembler_and_c Эксклюзивная и...
Ассемблер и Си для Хакера #27. Хэш
Просмотров 1,3 тыс.2 месяца назад
Хэш - это иностранное слово, по русски - контрольная сумма. Мы напишем программу на ассемблере, считающую Хэш md5, crc32 и простую контрольную сумму для Windows... Исходники для md5 стандартные, написаны с использованием Win32 Api (CryptoAPI и CNG API). Изменив в коде всего лишь один член функции (!) вы сможете легко использовать в своих программах наряду с MD5 большинство современных алгоритмо...
Ассемблер и Си для Хакера #26. Шифр Вернама
Просмотров 6253 месяца назад
Шифр Вернама . Криптор абсолютной стойкости . Программа и исходники . Размер исполняемого файла - 5 килобайт , включая бэкенд и фронтенд . Никаких установок программы и дополнительных библиотек . Запустил - и пользуйся . Криптование , исходники , разбор кода на MASM32 . Не всё так сложно, ребята, не всё так сложно ... Дополнительно : разбор шифрований XOR , ROL , ROR . Теория плюс исходники . В...
Ассемблер и Си для Хакера #25. Литература по Ассемблеру
Просмотров 1 тыс.3 месяца назад
Актуальная литература по ассемблеру для Windows и DOS плюс алгоритм обучения ассемблеру с нуля по книгам. Необходимый софт для практикующих по ссылке: assembler-code.com/programmnoe-obespechenie. Telegram "Ассемблер и Си": t.me/assembler_and_c Эксклюзивная инфа: boosty.to/firststeps Поддержать канал: boosty.to/firststeps/donate 00:00 Ассемблер для Windows и DOS 01:27 Книги 1 и 2 - ассемблер д...
Ассемблер и Си для Хакера #24. Кейлоггер
Просмотров 4893 месяца назад
Ассемблер и Си для Хакера #24. Кейлоггер
Ассемблер и Си для Хакера #23 Перехват клавиш WH_KEYBOARD_LL WH_KEYBOARD
Просмотров 4924 месяца назад
Ассемблер и Си для Хакера #23 Перехват клавиш WH_KEYBOARD_LL WH_KEYBOARD
Ассемблер и Си для Хакера #22 Ассемблерный код в проекте Microsoft Visual Studio C++
Просмотров 4124 месяца назад
Ассемблер и Си для Хакера #22 Ассемблерный код в проекте Microsoft Visual Studio C
Ассемблер и Си для Хакера #21 Ассемблерный код в проекте Pelles C
Просмотров 2,8 тыс.4 месяца назад
Ассемблер и Си для Хакера #21 Ассемблерный код в проекте Pelles C
Ассемблер и Си для Хакера #20 Библиотеки *.dll и *.lib
Просмотров 1,4 тыс.4 месяца назад
Ассемблер и Си для Хакера #20 Библиотеки *.dll и *.lib
Ассемблер и Си для Хакера #19. Соглашения о вызове функций
Просмотров 8594 месяца назад
Ассемблер и Си для Хакера #19. Соглашения о вызове функций
Ассемблер и Си для Хакера #18. Регистр ebp и кадр стека
Просмотров 7165 месяцев назад
Ассемблер и Си для Хакера #18. Регистр ebp и кадр стека
Ассемблер и Си для Хакера #17. Стек без push и pop
Просмотров 7565 месяцев назад
Ассемблер и Си для Хакера #17. Стек без push и pop
Ассемблер и Си для Хакера #16. Дизассемблированный код : вызов функций
Просмотров 8556 месяцев назад
Ассемблер и Си для Хакера #16. Дизассемблированный код : вызов функций
Ассемблер и Си для Хакера #15. Запутанные скобки и адреса
Просмотров 8416 месяцев назад
Ассемблер и Си для Хакера #15. Запутанные скобки и адреса
Ассемблер и Си для Хакера #14. Адреса и указатели
Просмотров 8276 месяцев назад
Ассемблер и Си для Хакера #14. Адреса и указатели
Не прекращай свои труды).
Рад стараться!
Спасибо, отладка для меня "черный ящик". Похоже придется постигать .)
Благодарю!
ну вот, все видео просмотрены и изучены) (
Благодарю! Всё только начинается!
С новым годом автора и зрителей!
Огромный респект и благодарности! Вас также с Наступающим!
Ты как всегда). Втыкаешь факел знаний в немытую черную дыру невежества)))). Но блин конкретно этот код не работает у меня, почему - не знаю :(
Что конкретно не работает? Зайдите на Телеграм канал. Задайте вопрос, осветите проблему. Отвечу или я или участники чата. Поверьте, всё будет доведено до конца! Всё будет работать! С Наступающим!
У меня вопрос к плейлисту Вирусология, он будет в дальнейшем пополняться публикациями новых видео или это частный случай и системности не стоит ожидать в этом плейлисте ?
Будет пополняться. Эта тематика очень связана с тематикой остальных плейлистов. Например, ещё не освящено ничего из работы с процессами и потоками, автозагрузке, внедрением в чужой процесс, структурами PE файлов. Нужно понимание всех составляющих узлов и механизмов, чтобы собрать единый организм. Эти механизмы работают зачастую в обычных приложениях. Вирус только частный способ реализации... Так что пока изучайте атом в мирных целях :).
в этой программе, получается, необязательно сохранять начальную директорию и в конце возвращаться к ней? ведь в коде не используются файлы без полного пути
Здравствуйте! В коде используются файлы без полного пути. Это файлы: - systeminfo (systeminfo.exe) - cmd (cmd.exe) Если что-то запускается без полного пути из запущенного терминала - это не значит, что также будет запускаться через ShellExecute. Директорию нужно восстанавливать - может так случиться, что от этого будет зависеть работа приложения пользователя. Полные пути не желательно использовать - это упрощает ревёрсинг и детект различными антималварезными прогами. Спасибо за интерес, с Наступающими!
@@firststepsforward да, systeminfo и cmd записаны без полного пути, но перед запуском cmd мы переходим в системную директорию, а для systeminfo нам не нужно возвращаться в первоначальную директорию с помощью SetCurrentDirectory. хочу сказать, что мы не используем ни один файл без полного пути, который находится в первоначальной директории
@@firststepsforward "Директорию нужно восстанавливать - может так случиться, что от этого будет зависеть работа приложения пользователя." - согласен, в более сложной реализации обязательно
Это не боевая прога, реально код может быть запущен из другого процесса, предварительно не известного. Поэтому считайте, что первоначальная директория - как кот Шрёдингера - и есть и нет, и тут и там. Для стабильной работы лучше делать так. Будет надёжнее.
@@firststepsforward хорошо. с наступающим!
Привет
:) С наступающим!
@@firststepsforward С наступающим 2025 годом!!! 👍👍
Спасибо.
Спасибо.
Спасибо
Спасибо.
Спасибо за вашу работу.
Благодарю, заходите в Телегу - там появляется интересная литература и ссылки!
Очень ценный материал. Спасибо.
:) Удачи !
Спасибо.
Благодарю! С наступающим Рождеством и Новым Годом!
Ура, новое видео🎉
:) С наступающими праздниками, удачи!
Отличный канал.
Благодарю! С Наступающим!
Спасибо)! Ты как всегда жжешь глаголом сумерки незнания).
Благодарю за постоянную поддержку!
Хотел бы посмотреть как ломают игры
Ваше пожелание будет рассмотрено :) Благодарю за интерес к каналу!
@@firststepsforward Только не надо на старых играх без защиты, их итак легко взломать с помощью cheat engine. Можно взять современные, которые пользуются спросом
@@Вырфырчик :).
Спасибо, как всегда - очень круто). Не бросай пожалуйста. Не всегда есть время смотреть и пробовать то что ты делаешь в своих видео, но я стараюсь.)
Благодарю! Буду стараться!
крутая, большая и интересная тема!!!!Всё чётко и понятно!
Благодарю!
Распаковка - это хорошая нужная тема! А как восстановить ресурсы если они тоже упакованы??? Конкретно x64.
Ресурсы иногда пакуются вместе с кодом, иногда не пакуются, а иногда пакуются отдельно. Есть отдельные утилиты, которыми их можно извлекать. Смотря какие ресурсы, опять таки и смотря какие упаковщики. Для маскировку под другие программы, я в видосах часто упоминаю ResourceHacker, которым пользуюсь для извлечения иконок. Часто достаточно этого. А вообще - ресурсы отдельная тема. Есть ряд простых и очень эффективных прикладных способов их использования в нетрадиционных целях. Придёт время - доберёмся и до них:). Благодарю за интерес!
Скачивать exe с неизвестного сайта от анонимного автора в серии видео Ассемблер и Си для ХАКЕРА (!), устанавливать от имени администратора запароленный exe, содержащий WinSpy, Spy++ - звучит как анекдот. Возможно пароль установлен для дальнейших уроков дизасемблирования, в результате которых найдется пасхалка, например в виде имени автора, пусть будет Сергей Валериевич Л, но за видеоуроки - спасибо
Сапсибо! Я уже неоднократно пояснял: можно скачать обыкновенный архив, а не самораспаковывающийся exe-шник. Внутри подробная инструкция по ручной настройке. Мне кажется, что я экономлю время пользоватилям - ничего искать не нужно. В RadAsm-e много темплейтов: как макросов, так и блоков кода. Время от времени я увеличиваю их количество, добавляю утилиты. Pelles C тоже можно скачать отдельными официальными установщиками. Я веду канал и мне не нужно ради своего же интереса за кем-то шпионить. Есть целые операционки целевые (Kali Linux) - многие пользуются и вроде никто не в обиде! Кстати, Spy++ - официальная утилита Microsoft, входящая в состав MS VS... Как-то так...
Спасибо за видео. Получается, что в конечном итоге после блока от любого распаковщика мы по OEP получаем распакованную программу, которую остается только сохранить, когда мы на нее уже попадаем при исполнении?
Да, совершенно верно! После этого нужно подправить таблицы импорта и внести отдельные корректировки, что и делает Scylla. Нужно учитывать, однако, что может быть использована дополнительно любая другая защита, как и в любом файл (вне зависимости упакован он или нет). Это может быть шифрование или иная обфускация кода и данных (смотрите видео по теме). Также, как к любому другому файлу может быть добавлена защита от отладки. Это направление также обязательно рассмотрим в будущих роликах. Благодарю за интерес!
спасибо за ещё одно прекрасное видео по реверсу
Пожалуйста!
Добрый день 👋
Благодарю!
Автор, как вы относитесь к C++? Часто пишут что ужасный язык, что нет единого Си++ а есть множество различных "наречий", бесконечные слои абстракций и профи в Си например избегают Си++ как огня. Но ведь не все же так просто, верно?
C является процедурным языком программирования, что означает, что он фокусируется на выполнении последовательности шагов или процедур (функций). В отличие от этого, C++ является объектно-ориентированным языком, что позволяет использовать концепции, такие как классы и объекты, для организации кода и управления данными. Язык - это не цель, а средство достижения конкретного результата. Любой язык состоит из грамматики (синтаксиса) - правил языка и совокупности возможностей, которые обычно привязывают к каким-то библиотекам или даже фрэймворкам. Функциональность библиотек определяет зачастую выбор языка, "любовь-нелюбовь" к нему. С - язык операционок, линукса и хакеров :). На С++ легче игры писать. Если хотите более подробно можете глянуть здесь: assembler-code.com . Поиск на сайте по тегу "Уровень абстракции" . Спасибо!
@@firststepsforward статью читал, спасибо! Даже заучивал три прошлые статьи до нее. Я имел ввиду - для реверса софта, написанного на С++, надо ли знать С++, или все сводится к ассемблеру единому? С++ для реверса не особо нужен, нужен только ассемблер и Си? Например многий софт для заработка в инете написан на си++ , но с другой стороны все равно все сводится к работе с ассемблером, любой язык. А с третьей стороны и браузеры пишут на с++, и нода, и т.д. Вот и непонятки у меня.
Нужно, конечно! Это всё-таки компилируемый язык. У него свои "картинки" - блоки, патерны дизассемблерные, отличимые от С и Ассемблера. Нужно, особенно для Windows! И вообще, объектно-ориентированный язык знать нужно. Да и С++ - это считайте логическое дополнение Си. Причём неплохо было бы познакомиться и посмотреть на дизассемблированный код как MS VC, так и Embarcadero (Borland) С++ Builder. Delphi уже не актуален для новых разработок, но старые поддерживаются - это тоже компилируемый язык, а значит тоже неплохо в общем пробежаться беглым взглядом. Но Вы не беспокойтесь и не перенапрягайтесь - поглощайте информацию и не отвлекайтесь на всё сразу. С Си плавно переходите на С++... Придет время, не будет необходимости вообще задаваться вопросом - учить или нет новый язык. Всё станет похожим и сольётся в что-то одно :). Но "любимчики", конечно останутся. Если субъективно, то мне чистый Си больше нравится, чем плюсы.
@@firststepsforward спасибо за такой развернутый ответ и за то что потратил свое время!!
@@Fillmore634b Вам всегда пожалуйста!
отличный материал! спасибо за работу. в универе в лабе как раз одно из заданий - точку входа в запакованном файле найти, так что видео очень кстати!
Очень рад!
ты так выразительно рассказываешь, я аж прослезился. видос очень годний, лайкос!
Огромное человеческое спасибо!
Вы бы попробовали крякнуть Redshift рендер для 3D дизайнеров. За много лет никто не может его взломать. Может быть Вам было бы это интересно.
Мы с Вами на RUclips канале. Что Вам сказать с учётом того, что я планирую развивать канал дальше?:) Я работаю только со своими программами. Сам написал - сам отлаживаю и проверяю на уязвимость. Благодарю за интерес к ассемблеру!
попробуйте написать об этом автору на бусти в личке :)
@@firststepsforward а если бы вам заплатили? Ну или просто что бы посмотреть свои возможности, аля "могу ли?"
@@Poezd2077 Для начала мне интересно, могу ли я по тематике "Ассемблер" конкурентов на RUclips обогнать:). А потом, вы ведь меня даже не знаете. Как пел когда-то В. Высоцкий: "Я себе уже всё доказал..."
@firststepsforward понял, спасибо за ответ!
Может сделаешь подборку книг по дизассемблированию? Было бы очень полезно
Уже далал :). ruclips.net/video/oGARPKA0L5o/видео.html
Это не совсем то. Я имел в виду реверс инжиниринг. Книги на подобии Криса Касперского "искусство дизассемблирования".
А то сам Крис, как по мне, немного устарел, а другие хорошие книги на эту тему преимущественно на английском
Мне известна только одна: Денис Юричев Reverse Engineering для начинающих. Кое что - в журнале "Хакер" можно найти. На этом всё из современной литературы заканчивается :) . Может ещё что-то у англоговорящих будет. Найдёте - подскажите :). Я, однако, у них ничего на уровне книги Дениса Юричева не встречал. Я серьёзно - современной литературы по этой тематике практически нет. Крис Касперский актуален как никогда! Как-то так...
Понял, спасибо огромное за ответ
Ещё доступ к системе можно получить через специальные таблицы. Правда я тут мало понял, т.к. не приводятся подробной инфы по полям этой таблицы.
Да, многое чего можно. Буду переодически выкладывать информацию. Благодарю!
Спасибо за видео. Было очень познавательно
Пожалуйста!
Спасибо за видео. Очень понятно
Рад стараться!
Спасибо за видео! Продолжаем погружение!
Только вперёд! :)
Спасибо за видео. Было интересно!
Комменты очень кстати:)
Спасибо за видео
Пожалуйста!
Круто. А можно гайд по ассесблер на винде?
Благодарю! Плейлист Ассемблер и Си для Хакера и есть ассемблер для Windows. Материал идёт в порядке усложнения. Параллельно можно почитывать одну из перечисленных в ролике Ассемблер и Си для Хакера #25. Литература по Ассемблеру книг.
очень познавательно, спасибо
Пожалуйста!
спаспибо, снимайте ещё!
Пожалуйста! Рад стараться! :)
Топ видео
Благодарю!
слишком много пафоса)
Не смотрите видео :). За комментарий - благодарю!
Спасибо за видео! Коммент в поддержку автора!
Благодарю!
Спасибо за видео. Было очень полезно
Спасибо!
я в шоке, не нашел ни одного видео на тему шеллкода, и тут попались вы, спасибо!
Благодарю!
А у меня при запуске мелкой программы происходит ошибка при запуске приложения(0xc0000018), из-за чего может такое возникнуть? Пишу на Винде 7
Если вы про SmallestProg.tpl, то поиграйтесь с настройками Linker: ALIGN:16. Увеличивайте значение, но чтобы было кратно 4-м. Размер будет немного больше, но надёжность вырастет.
Спасибо за контент. Коммент в поддержку
Благодарю!
Поддерживаю❤
Ура! :)
invoke, как я понял, это инструкция ассемблеру, что бы он понял, что мы используем "функции" в ассемблере? Ну, функций в ассемблере нет, есть только метки как я понял(как start метка), к которой мы переходим с помощью invoke, так ведь?
invoke - это директива masm и masm32. Используется совместно с оператором addr. Также для совместимости это всё и в тех же целях используется в fasm. Очень подробно о функциях и процедурах в видео: 17. Стек без push и pop 18. Регистр ebp и кадр стека 19. Соглашения о вызове функций При стандартном подходе в языках высокого уровня понятие функция и процедура различаются тем, что функция может возвращать значение, а процедура значения не возвращает. На практике - эти понятия используются как полные синонимы. Когда говорят: "В ассемблере всё, что имеет имя - это метка", то ошибаются. Это не совсем так. Это делают для того, чтобы упростить понимание указателя (или адреса памяти) - очень важного понятия. Нужно понимать, что если рассматривать ассемблер как чистый машинный код (как мы это видим в отладчике и дизассемблере), то тогда - это только регистры, код (комманды ассеблера), данные (байты, биты, слова ...), и указатели на код и данные. В таком случае не будет даже меток. А если мы рассматриваем какой-нибудь конкретный ассемблер в качестве языка программирования (masm, masm32, fasm и т.д.), то это полноценный язык со своими особенностями и синтаксисом. Есть в ассемблерах и функции и структуры и объединения и строки - всё, что есть в Си (ну почти всё) будет и в ЯЗЫКЕ ассемблера. Часто это выражено в виде макросов, часто встроено в ассемблер в виде директив. Реально ассемблер очень похож на Си, а где-то даже проще и понятнее. Страуструп называл Си "Ассемблером для ленивых". Теперь fasm или masm32 можно назвать "Си для ленивых" :)
the best videos i have seen about programming for a hacker 🥲
Thank you!