Пакет MASM64

Тема в разделе "WASM.X64", создана пользователем Mikl___, 26 ноя 2025.

  1. Research

    Research Active Member

    Публикаций:
    1
    Регистрация:
    6 янв 2024
    Сообщения:
    454
    Visual Studio - по определению доступна всем, только есть одна проблема - отсутствие реального прогресса.
    Можно не заморачиваться, никто не заставляет.

    Я в любом случае пойду по этому пути. Мне это всегда было интересно.

    Интереснее чем нейросети и написание мини игр.

    При выборе хидеров я отталкиваюсь от своих проектов которые были реализованы на другом языке. Я примерно представляю что должно получиться в итоге.

    Я буквально пару дней назад не знал что такое макросы. Когда удалось собрать минимальный хелл-ворд стало ясно что до этого происходило с масмом. (Задал правильные вопросы ллм). Что убрали из 64 по сравнению с 32. Политика фундаментального огораживания. И откуда появилась temphls.inc. И как потом все остановилось. (Нет единого стандарта).
     
    Последнее редактирование: 12 мар 2026
    GRAFik нравится это.
  2. Application

    Application Active Member

    Публикаций:
    1
    Регистрация:
    15 окт 2022
    Сообщения:
    160
    Это называется - изучение архитектуры компьютера через разработку ide (решение практической задачи). Вам может быть непонятно зачем это нужно, и какой в этом смысл. Если вы никогда ничего своего не написали :)
     
  3. Entropy

    Entropy Member

    Публикаций:
    0
    Регистрация:
    23 авг 2020
    Сообщения:
    266
    насколько я помню,что бы скачать старые версии Visual Studio нужно регистрироваться и номер мобилы нужно указывать,а вот что бы скачать WinDDK регистрироваться не надо
     
  4. Mikl___

    Mikl___ Супермодератор Команда форума

    Публикаций:
    14
    Регистрация:
    25 июн 2008
    Сообщения:
    4.222
    Research,
    WASM→ARTICLES→Макросы
     
  5. Research

    Research Active Member

    Публикаций:
    1
    Регистрация:
    6 янв 2024
    Сообщения:
    454
    Надо будет вернуться к чистому компилю/хидерам.
    Компилятор с, компилятор масма. И все необходимые файлы.

    Вместо того чтобы юзать MinGW выдернуть все из vs.

    На васме есть статьи по подключению ide
    2026-03-21_10-05-27.png
     
    Mikl___ нравится это.
  6. Mikl___

    Mikl___ Супермодератор Команда форума

    Публикаций:
    14
    Регистрация:
    25 июн 2008
    Сообщения:
    4.222
    Можно и цикл статей по поводу редактора к IDE MASM64 Где-то попадался цикл статей о редакторе на основе Scintilla, но пока не могу найти. Может быть кто-нибудь подскажет?
     
  7. GRAFik

    GRAFik Active Member

    Публикаций:
    0
    Регистрация:
    14 мар 2020
    Сообщения:
    418
    Мне кажется, что более важнее раскрыть тему MASM64/UASM64 c унификацией важных директив и макросов с примерами кода (касается только MASM, в UASM всё это есть), затем MASM32/UASM32 c унификацией важных директив и макросов, с примерами кода (касаемо MASM), и закрыть всё компилятором C/C++ на базе VS. Но сначала - на базе батников. А потом не спеша подумать про редактор для MASM/можно и для UASM. Может в такой последовательности? Но, опять же, оговорюсь, что советовать всегда проще, а там смотрите сами... Почему добавил UASM? Потому, что это способ выйти за пределы Windows. Да и, вроде как, UASM - это улучшенный MASM...
     
    Mikl___ нравится это.
  8. Mikl___

    Mikl___ Супермодератор Команда форума

    Публикаций:
    14
    Регистрация:
    25 июн 2008
    Сообщения:
    4.222
    GRAFik,
    нас не очень много, но всё же с созданием пакета MASM64 один человек вряд ли справится. Здесь пока идет обсуждение. Я создал отдельную тему "Пакет MASM64. Готовые наработки" куда будем выкладывать батники, примеры и т.д. :yes3:
     
    Research нравится это.
  9. Research

    Research Active Member

    Публикаций:
    1
    Регистрация:
    6 янв 2024
    Сообщения:
    454
    Обзор направлений, от батона до индия:
    Фундаментальный уровень: архитектура x86/x64

    ├── 1. Система команд и процессор
    │ ├── 1.1. Наборы инструкций
    │ │ ├── Базовые инструкции (mov, add, jmp…)
    │ │ ├── Расширения (MMX, SSE, AVX) → поддержка в компиляторах/ассемблерах
    │ │ └── Специфические инструкции (rdtsc, sysenter, int3) → антиотладка/трассировка
    │ │
    │ ├── 1.2. Режимы работы процессора
    │ │ ├── Реальный режим (16-бит) – legacy, DOS
    │ │ ├── Защищённый режим (32-бит) – основа Windows NT
    │ │ └── Длинный режим (64-бит) – x64, особенности (выравнивание стека, соглашения вызова)
    │ │
    │ └── 1.3. Прерывания и исключения
    │ ├── IDT (Interrupt Descriptor Table) – обработка прерываний (int 1, int 3, int 2e)
    │ └── SEH (Structured Exception Handling) – перехват исключений в коде

    ├── 2. Операционная система Windows NT
    │ ├── 2.1. Ядро и режимы
    │ │ ├── Kernel-mode (ring0) – драйверы, системные службы
    │ │ ├── User-mode (ring3) – приложения, API
    │ │ └── IRQL (Interrupt Request Level) – иерархия приоритетов, ограничения на вызовы API
    │ │
    │ ├── 2.2. Структуры ядра
    │ │ ├── EPROCESS, ETHREAD – управление процессами/потоками
    │ │ ├── PEB (Process Environment Block) – информация о процессе (user-mode)
    │ │ ├── SSDT (System Service Descriptor Table) – таблица системных вызовов
    │ │ └── Объекты ядра (объекты синхронизации, файловые объекты)
    │ │
    │ ├── 2.3. Системные вызовы и API
    │ │ ├── Native API (ntdll.dll) – интерфейс к ядру
    │ │ ├── Win32 API (kernel32, user32, gdi32) – высокоуровневые обёртки
    │ │ └── COM (Component Object Model) – межпроцессное взаимодействие, автоматизация
    │ │
    │ └── 2.4. Менеджер памяти и ввод-вывод
    │ ├── Виртуальная память (VirtualAlloc, MDL, страничный файл)
    │ ├── Работа с дисками (CreateFile, ReadFile, IRP)
    │ └── Файловые системы (NTFS, FAT) – атрибуты, права доступа

    ├── 3. Инструменты разработки и анализа
    │ ├── 3.1. Ассемблеры
    │ │ ├── MASM (Microsoft Macro Assembler) – коммерческий, стандарт для Windows
    │ │ ├── FASM (Flat Assembler) – портативный, мощный макроязык, популярен в сообществе
    │ │ ├── NASM / YASM – кроссплатформенные, синтаксис Intel/AT&T
    │ │ ├── TASM (Turbo Assembler) – устаревший, режим совместимости с MASM
    │ │ └── UASM – форк MASM, продолжение разработки
    │ │
    │ ├── 3.2. Отладчики и дизассемблеры
    │ │ ├── IDA Pro – статический анализ, декомпиляция, поддержка множества архитектур
    │ │ ├── Ghidra – открытый фреймворк от NSA, конкурент IDA
    │ │ ├── OllyDbg / x64dbg – user-mode отладчики, динамический анализ
    │ │ ├── WinDbg – отладка ядра, анализ дампов
    │ │ └── Radare2 / Cutter – консольный/графический фреймворк
    │ │
    │ ├── 3.3. Компиляторы и среды
    │ │ ├── Visual C++ (MSVC) – стандарт для Windows
    │ │ ├── GCC / MinGW – open source, кроссплатформенность
    │ │ ├── Delphi / Free Pascal – объектно-ориентированный Паскаль, VCL
    │ │ └── Python – скриптование, автоматизация (IDC-скрипты, IDAPython, Ghidra)
    │ │
    │ └── 3.4. Вспомогательные утилиты
    │ ├── PE-редакторы (CFF Explorer, Hiew, LordPE)
    │ ├── Мониторинг (Process Monitor, API Monitor, Wireshark)
    │ └── Виртуальные машины (VMware, VirtualBox) – изоляция, тестирование

    ├── 4. Техники реверсинга и модификации кода
    │ ├── 4.1. Статический анализ
    │ │ ├── Дизассемблирование – преобразование машинного кода в мнемоники
    │ │ ├── Декомпиляция – восстановление псевдокода (Hex-Rays, Ghidra)
    │ │ ├── Анализ сигнатур – поиск библиотечных функций (FLIRT, sigmake)
    │ │ └── Работа с PE-заголовками – секции, импорт, экспорт, ресурсы
    │ │
    │ ├── 4.2. Динамический анализ
    │ │ ├── Отладка (User-mode, Kernel-mode) – брейкпоинты, трассировка
    │ │ ├── Эмуляция (Unicorn, QEMU, эмуляторы) – исполнение кода в изолированной среде
    │ │ ├── Инструментирование (Pin, DynamoRIO) – трассировка, модификация на лету
    │ │ └── Мониторинг системных вызовов (API Hooking, SSDT Hooking)
    │ │
    │ ├── 4.3. Модификация исполняемых файлов
    │ │ ├── Патчинг (HEX-редактирование, вставка кода)
    │ │ ├── Инжекция кода (DLL Injection, Process Hollowing)
    │ │ ├── Пакеры и крипторы (UPX, ASProtect, собственные) – сжатие/шифрование
    │ │ └── Редактирование ресурсов – замена иконок, строк
    │ │
    │ └── 4.4. Обход защит
    │ ├── Снятие протекторов (анпакеры, отладка до OEP)
    │ ├── Антиотладочные приёмы (проверка PEB, IsDebuggerPresent, NtGlobalFlag)
    │ ├── Детект эмуляторов (VMware, VirtualPC) – по инструкциям, таймингам
    │ └── Кейгенинг – восстановление алгоритмов лицензирования

    ├── 5. Защита ПО
    │ ├── 5.1. Программные протекторы
    │ │ ├── Упаковщики (UPX, ASPack) – сжатие
    │ │ ├── Крипторы (Enigma Protector, Themida) – шифрование секций
    │ │ └── Виртуализация (VMProtect, StarForce) – преобразование кода в байткод VM
    │ │
    │ ├── 5.2. Аппаратные средства защиты
    │ │ ├── USB-ключи (Guardant, HASP, Sentinel) – хранение алгоритмов
    │ │ └── Смарт-карты – криптографические операции
    │ │
    │ └── 5.3. Антиреверс-техники
    │ ├── Обфускация кода (мусорные инструкции, запутанный поток управления)
    │ ├── Полиморфизм – изменение сигнатур
    │ ├── Антиотладка (проверка наличия отладчика, искажение работы)
    │ └── Самомодифицирующийся код (SMC) – расшифровка в runtime

    ├── 6. Экосистема и сообщество
    │ ├── 6.1. Форум WASM.ru – площадка для обсуждения низкоуровневого программирования
    │ ├── 6.2. Холивары
    │ │ ├── Ассемблеры: FASM vs MASM – синтаксис, макросы, удобство
    │ │ ├── Языки: C vs C++ vs Pascal – производительность, сложность
    │ │ ├── ОС: Windows vs Linux – удобство, экосистема, безопасность
    │ │ └── Идеологии: open source vs проприетарное ПО
    │ │
    │ └── 6.3. Образование и карьера
    │ ├── Изучение ассемблера (с чего начать, литература)
    │ ├── Реверс-инжиниринг как профессия (спрос, заработок)
    │ └── Применение в индустрии (антивирусы, безопасность, игры)

    └── 7. Офтоп и личные интересы
    ├── Философия, наука, религия (теория эволюции, симуляция реальности)
    ├── Музыка, кино, хобби (электрогитара, аудиотехника)
    ├── Социальные наблюдения (политика, фрики, деанонимизация)
    └── Мемы и юмор (внутренние шутки форума, анекдоты)
    [Фундаментальные принципы]
    +-- Аппаратная архитектура IA-32/x86
    | +-- Реальный режим (Real Mode)
    | | +-- Сегментная адресация (сегмент: смещение)
    | | +-- Прерывания BIOS/DOS (INT 13h, INT 10h, INT 21h)
    | | +-- TSR (Terminate and Stay Resident)
    | +-- Защищённый режим (Protected Mode)
    | | +-- Сегментная модель (GDT/LDT)
    | | | +-- Дескрипторы сегментов (код, данные, TSS)
    | | | +-- Уровни привилегий (Ring 0, 1, 2, 3)
    | | +-- Страничная трансляция (Paging)
    | | | +-- Каталог страниц (Page Directory) → PDE
    | | | +-- Таблицы страниц (Page Table) → PTE
    | | | +-- Физический адрес (PFN)
    | | | +-- TLB (Translation Lookaside Buffer)
    | | +-- Прерывания и исключения
    | | | +-- IDT (Interrupt Descriptor Table)
    | | | +-- Обработчики прерываний (ISR)
    | | | +-- Двойная ошибка (Double Fault) → тройная ошибка (Triple Fault)
    | | +-- Управление задачами
    | | | +-- TSS (Task State Segment)
    | | | +-- Аппаратное переключение задач (редко используется)
    | +-- 64-разрядное расширение (x64 / AMD64)
    | +-- Long Mode
    | +-- SYSCALL/SYSRET (вместо SYSENTER/SYSEXIT)
    | +-- Дополнительные регистры (R8-R15)
    +-- Ядро Windows (NTOSKRNL.EXE, HAL.DLL)
    | +-- Менеджер объектов (Object Manager)
    | | +-- Структура объекта (OBJECT_HEADER, OBJECT_TYPE)
    | | +-- Типы объектов ядра
    | | | +-- EPROCESS (процесс)
    | | | | +-- KPROCESS (базовая структура ядра)
    | | | | +-- PEB (Process Environment Block) – пользовательский режим
    | | | | +-- Список активных процессов (PsActiveProcessHead)
    | | | +-- ETHREAD (поток)
    | | | | +-- KTHREAD (базовая структура ядра)
    | | | | +-- TEB (Thread Environment Block) – пользовательский режим
    | | | | +-- Состояния потока (Running, Ready, Waiting, Terminated)
    | | | +-- FILE_OBJECT (открытый файл)
    | | | +-- DEVICE_OBJECT (устройство)
    | | | +-- DRIVER_OBJECT (драйвер)
    | | | +-- Объекты синхронизации (KEVENT, KMUTEX, KSPIN_LOCK, KFAST_MUTEX)
    | | +-- Таблица дескрипторов процесса (Handle Table)
    | | | +-- Хендл (HANDLE) как индекс в таблице
    | | | +-- Дескриптор объекта (OBJECT_HANDLE_INFORMATION)
    | | +-- Дублирование хендлов (ZwDuplicateObject)
    | +-- Менеджер ввода-вывода (I/O Manager)
    | | +-- IRP (I/O Request Packet)
    | | | +-- Стек IRP (IO_STACK_LOCATION)
    | | | +-- Функции завершения (IoCompletionRoutine)
    | | | +-- Типы IRP (MJ_CREATE, MJ_CLOSE, MJ_READ, MJ_WRITE, MJ_DEVICE_CONTROL, ...)
    | | +-- Драйверы устройств
    | | | +-- Legacy-драйверы
    | | | +-- PnP-драйверы
    | | | +-- Фильтры (файловые системы, сетевые, клавиатуры, дисков)
    | | | +-- Драйверы файловых систем (NTFS, FAT32)
    | | | +-- NDIS (Network Driver Interface Specification)
    | | | +-- TDI (Transport Driver Interface)
    | | | +-- Драйверы минипорта (видео, USB)
    | | +-- Символьные ссылки (Symbolic Links) – \DosDevices\C:
    | | +-- Объекты "устройство" (\Device\HarddiskVolume1, \Device\Tcp, \Device\KeyboardClass0)
    | +-- Менеджер памяти (Memory Manager)
    | | +-- Виртуальная память (Virtual Address Space)
    | | | +-- Резервирование (VirtualAlloc, MEM_RESERVE)
    | | | +-- Фиксация (VirtualAlloc, MEM_COMMIT)
    | | | +-- Атрибуты страниц (PAGE_READONLY, PAGE_READWRITE, PAGE_EXECUTE, PAGE_GUARD, PAGE_NOACCESS)
    | | +-- Рабочий набор (Working Set)
    | | +-- Файл подкачки (Pagefile.sys)
    | | +-- Отображение файлов (Memory-Mapped Files, секции)
    | | | +-- ZwCreateSection, ZwMapViewOfSection
    | | | +-- Прототипные PTE (Prototype PTE)
    | | | +-- VAD (Virtual Address Descriptor)
    | | +-- Физическая память
    | | | +-- MmMapIoSpace (отображение физической памяти в ядро)
    | | | +-- MDL (Memory Descriptor List)
    | | | +-- PFN (Page Frame Number)
    | | | +-- Невыгружаемый пул (NonPagedPool)
    | | | +-- Выгружаемый пул (PagedPool)
    | +-- Менеджер процессов и потоков (Process/Thread Manager)
    | | +-- Планировщик потоков (Thread Scheduler)
    | | | +-- Приоритеты потоков
    | | | +-- Кванты времени
    | | | +-- Переключение контекста (SwapContext)
    | | | +-- DPC (Deferred Procedure Call), APC (Asynchronous Procedure Call)
    | | +-- Создание процесса (NtCreateProcess, NtCreateProcessEx)
    | | | +-- PE-загрузчик
    | | | | +-- Структура PE-файла (DOS-заголовок, NT-заголовки, секции, импорт, экспорт, релоки)
    | | | | +-- Отображение секций в виртуальное пространство
    | | | | +-- Обработка импорта (IAT)
    | | | | +-- Вызов точки входа (AddressOfEntryPoint)
    | | | +-- Родительский процесс, наследование хендлов
    | | +-- Нотификации о создании/завершении (PsSetCreateProcessNotifyRoutine)
    | +-- Диспетчер системных сервисов (System Service Dispatcher)
    | | +-- Таблица системных сервисов (SSDT / KeServiceDescriptorTable)
    | | | +-- NTOSKRNL сервисы (Nt*)
    | | | +-- Win32k сервисы (Shadow SSDT / KeServiceDescriptorTableShadow)
    | | +-- Механизм вызова системных сервисов
    | | | +-- SYSENTER / SYSEXIT (быстрый вызов)
    | | | +-- INT 2E (для совместимости)
    | | | +-- KiFastCallEntry / KiSystemService
    | | | +-- KiFastSystemCall (ntdll!KiFastSystemCall)
    | | | +-- KiIntSystemCall (ntdll!KiIntSystemCall)
    | | | +-- KiFastSystemCallRet (точка возврата)
    | | +-- Различия между Nt* и Zw* (PreviousMode, проверка параметров)
    | +-- Управление питанием (Power Manager)
    | | +-- Глубокий сон (S3), гибернация
    | | +-- Управление питанием устройств
    | +-- Плагин-менеджер (Plug and Play)
    | +-- Динамическое обнаружение устройств
    | +-- IRP_MN_QUERY_DEVICE_RELATIONS и др.
    +-- Драйверы режима ядра
    | +-- Структура драйвера (DRIVER_OBJECT)
    | | +-- Точка входа (DriverEntry)
    | | +-- Функция выгрузки (DriverUnload)
    | | +-- Массив функций MajorFunction[] (обработчики IRP)
    | +-- Объекты устройств (DEVICE_OBJECT)
    | | +-- Стек устройств (AttachedDevice)
    | | +-- Аттач (IoAttachDeviceToDeviceStack)
    | +-- Типы драйверов
    | | +-- Драйверы устройств (например, драйвер клавиатуры i8042prt)
    | | +-- Драйверы-фильтры
    | | | +-- Фильтры файловых систем (File System Filters)
    | | | +-- Фильтры TDI (TDI Filters)
    | | | +-- Фильтры NDIS (NDIS Intermediate Drivers)
    | | | +-- Фильтры клавиатуры/мыши
    | | +-- Драйверы минипорта (видео, USB)
    | +-- Методы ввода-вывода (BUFFERED, DIRECT, NEITHER)
    | +-- IRP-хуки и подмена обработчиков
    | +-- Выгрузка драйвера (синхронизация с ожиданием завершения IRP)
    +-- Подсистемы и интерфейсы
    | +-- Native API (NTDLL.DLL)
    | | +-- Экспортируемые функции (Nt*, Zw*)
    | | +-- Врапперы для системных вызовов (sysenter/int2e)
    | | +-- Неэкспортируемые функции (поиск по сигнатурам)
    | +-- Win32 API (KERNEL32.DLL, USER32.DLL, GDI32.DLL, ADVAPI32.DLL)
    | | +-- Подсистема Win32 (CSRSS.EXE, WINSRV.DLL)
    | | | +-- LPC (Local Procedure Call) для связи с CSRSS
    | | | +-- CsrClientCallServer
    | | +-- Пользовательский режим GUI (Win32k.sys)
    | | | +-- Shadow SSDT
    | | | +-- Оконные сообщения, хуки (SetWindowsHookEx)
    | | | +-- GDI+ / DirectX
    | +-- CRT (C Runtime Library) – MSVCRT.DLL, LIBC.LIB
    | +-- Другие подсистемы (POSIX, OS/2 – устаревшие)
    | +-- Сетевые подсистемы
    | | +-- Winsock (WS2_32.DLL)
    | | +-- TDI (Transport Driver Interface)
    | | +-- NDIS (Network Driver Interface Specification)
    | | +-- Фильтры TDI/NDIS для перехвата сетевого трафика
    | +-- Управление реестром (Registry)
    | | +-- Ключи реестра, значения
    | | +-- Cm* функции (CmRegisterCallback)
    +-- Техники и инструменты
    | +-- Перехват (Hooking)
    | | +-- Пользовательский режим (User-mode)
    | | | +-- Подмена импорта (IAT Hooking)
    | | | +-- Сплайсинг (Inline Hooking, jmp 0xE9)
    | | | +-- Внедрение DLL (CreateRemoteThread, SetWindowsHookEx)
    | | +-- Режим ядра (Kernel-mode)
    | | | +-- SSDT-хуки (подмена адресов в KeServiceDescriptorTable)
    | | | +-- Shadow SSDT-хуки (для GUI-сервисов)
    | | | +-- IRP-хуки (подмена MajorFunction[])
    | | | +-- Сплайсинг в ядре (запись jmp в начало функции)
    | | | +-- IDT-хуки (перехват прерываний, например, INT3, INT1, INT2E)
    | | | +-- Callgate, шлюзы задач
    | | | +-- Подмена обработчиков DPC/APC
    | | | +-- Отладочные регистры (DR0-DR7) для точек доступа
    | | +-- Снятие хуков, восстановление оригинальных адресов
    | +-- Отладка (Debugging)
    | | +-- Пользовательский режим
    | | | +-- OllyDbg (интерактивный отладчик)
    | | | +-- WinDbg (с отладочными символами)
    | | | +-- ntsd / cdg
    | | | +-- SEH (Structured Exception Handling), VEH (Vectored Exception Handling)
    | | | +-- Отладочные строки (OutputDebugString, DbgPrint)
    | | +-- Режим ядра
    | | | +-- WinDbg / kd (ядерная отладка через COM, USB, Ethernet)
    | | | +-- SoftICE (устаревший, но обсуждаемый)
    | | | +-- Syser Debugger
    | | | +-- DbgPrint / KdPrint
    | | | +-- Брейкпоинты (bp, ba, int3)
    | | | +-- KiDebugRoutine (перехват исключений ядра)
    | | | +-- Символы отладки (PDB) – symchk, pdbdump
    | | | +-- Анализ крешдампа (minidump, kernel dump, full dump) через WinDbg
    | +-- Внедрение (Injection) в чужие процессы
    | | +-- Классическое: CreateRemoteThread + LoadLibrary (или код-шелл)
    | | +-- APC-инжект (QueueUserAPC)
    | | +-- LPC-инжект
    | | +-- Инжект из ядра (KeStackAttachProcess, APC, NtCreateThread)
    | | +-- Перенос кода через отображение секций (ZwMapViewOfSection)
    | | +-- Релокация кода (Fixups) при переносе
    | +-- Программирование на ассемблере
    | | +-- Синтаксис Intel (MASM, FASM, NASM)
    | | +-- Встроенный ассемблер в C/C++ (__asm, __emit)
    | | +-- Опкоды и дизассемблирование
    | | +-- Дизассемблеры длин инструкций (LDE, ldasm)
    | +-- Программирование на C/C++ под Windows
    | | +-- Вызовы WinAPI, CRT
    | | +-- Соглашения о вызовах (__stdcall, __cdecl, __fastcall)
    | | +-- Манглинг имён (name mangling)
    | | +-- Статическая и динамическая линковка
    | +-- Работа с PE-файлами (просмотр, модификация, пакование)
    | +-- Парсинг заголовков, секций, импорта, экспорта
    | +-- Релокации (IMAGE_BASE_RELOCATION)
    | +-- Загрузка PE из памяти (ручной загрузчик)
    +-- Прикладные программы и сценарии
    | +-- Системные утилиты (Process Explorer, WinObj, Dependency Walker)
    | +-- Антивирусы, проактивная защита
    | +-- Руткиты (скрытие процессов, файлов, реестра, драйверов)
    | +-- Эксплойты, повышение привилегий
    | +-- Обработка сетевых соединений (сокеты, прокси)
    | +-- Мониторинг системы (перехват системных вызовов, логирование)
    | +-- Загрузчики (bootsector, MBR, ntldr, bootmgr)
     
    Последнее редактирование модератором: 25 мар 2026
    GRAFik нравится это.
  10. GRAFik

    GRAFik Active Member

    Публикаций:
    0
    Регистрация:
    14 мар 2020
    Сообщения:
    418
    Призадумался тут на досуге и немного впал в ступор. Интересно, сколько нужно прожить жизней, чтобы знать всё это хотя бы на каком-то заурядном, среднем уровне? И нужно заметить, что список еще и, в индивидуальном смысле, далеко не полный...
     
  11. Research

    Research Active Member

    Публикаций:
    1
    Регистрация:
    6 янв 2024
    Сообщения:
    454
    Почему не полный, имеешь в виду нет исходников?
     
  12. GRAFik

    GRAFik Active Member

    Публикаций:
    0
    Регистрация:
    14 мар 2020
    Сообщения:
    418
    Нет, я имею в виду, что у каждого свой круг интересов и эти интересы тоже необходимо изучать. Ну, как пример: меня, скажем, интересует программирование VST-инструментов, эффектов. А это свой стандарт, который требует изучения. А кого-то VST, вообще, не интересует...

    И ещё заметил, что в списке нет упоминания про DLL (создание, внутреннее устройство и т.д. и т.п...). Может и ещё чего нет, если проанализировать. Но и той информации, которая есть - "выше крыши". :)
     
  13. galenkane

    galenkane Active Member

    Публикаций:
    1
    Регистрация:
    13 янв 2017
    Сообщения:
    453
    juce подкатил стейнебрег вст2 откатил
     
  14. Rbnz

    Rbnz Member

    Публикаций:
    0
    Регистрация:
    30 ноя 2020
    Сообщения:
    32
    Прилагается.
    Возможен затык при конвертации очень больших файлов, связанный с недостатком ОЗУ (мне хватает).
    Можно устранить - привинтить fileMapping. Если нужно - пишите ( со временем прикручу).
     

    Вложения:

  15. Research

    Research Active Member

    Публикаций:
    1
    Регистрация:
    6 янв 2024
    Сообщения:
    454
    Сделать бы минимальную сборку компилятора Си с цифровыми подписями и базовыми файлами такими как <windows.h>, <stdio.h>. Чтобы все было кристально прозрачно. При этом не надо заморачиваться макросами как в masm'e и сконцентрироваться на погромировании простых примеров (на все случаи жизни). Как эксперимент, посмотреть что из этого получится.

    Можно потом прикрутить свою ide. Взять идеи например отсюда.

    charm.png
     

    Вложения:

    • code.rar
      Размер файла:
      11,6 КБ
      Просмотров:
      48
    Последнее редактирование: 4 апр 2026