x64dbg

Тема в разделе "WASM.BEGINNERS", создана пользователем Semiono, 27 май 2024.

  1. Ahimov

    Ahimov Active Member

    Публикаций:
    0
    Регистрация:
    14 окт 2024
    Сообщения:
    425
    rtldispatchexception.

    Внизу в отладчике показан #AV, при этом утеряна старшая часть адреса(см. на адреса).
     
    Semiono нравится это.
  2. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    847
    Мне сообщили, что там вроде .NET нужен, если это не шутка. Теперь понятно почему так странно. Неожиданно!
    У меня в рабочей Win8 совсем нету .NET, а на чистую
    надо обновление накатить.

    И вся эта дурь скорее всего к защите относится.

    Столько всего без .NET работает!
    Ламерский движёк!
     
  3. Ahimov

    Ahimov Active Member

    Публикаций:
    0
    Регистрация:
    14 окт 2024
    Сообщения:
    425
    Может быть, laststatus: ep_not_found
    --- Сообщение объединено, 6 янв 2026 ---
    Semiono

    Давай по штатной схеме, ntdll.ShowSnaps устанавливаем и смотрим дебаг лог, что грузится и куда передачи управления(почему сброс старшей части указателей).
     
  4. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    2.083
    А чего ты хотел добиться, загружая vst dllloader'ом? Поставь фубар2000, в него плагин-загрузчик vst-плагинов, через ifeo зарегистрируй отладчик:
    Код (Text):
    1. Windows Registry Editor Version 5.00
    2.  
    3. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\fooVSTHost64.exe]
    4. "debugger"="<path>\\x64dbg_snapshot_2025-03-15_15-57\\release\\x96dbg.exe"
    5.  
    Тогда при открытии интерфейса плугина в DSP Manager фубара у тебя оно будет корректно запускаться в отладчике.
     
    miilalex и Semiono нравится это.
  5. M0rg0t

    M0rg0t Well-Known Member

    Публикаций:
    0
    Регистрация:
    18 окт 2010
    Сообщения:
    1.641
    для х64дбг? что за бред. Не надо там говнета, там нативный код.
    если прогу которую дебажишь на дотнете, то надо брать dnSpy или что там юзается.
     
  6. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    847
    f13nd, так может Cubase в x64dbg открыть, ну хотя да foobar проще) А я думал раз уж x64dbg длл-ы открывает)
    У меня два варианта VST3 и VST2 DLL
    --- Сообщение объединено, 6 янв 2026 ---
    [​IMG]
    x64dbg https://yourimageshare.com/ib/3Tl4hj4UM5.png
    :)

    Чё-то я там никаких следов mscoree.dll итп не вижу.
    --- Сообщение объединено, 6 янв 2026 ---
    Поставил кастомную Win8.1 да ещё с русификацией и заработало! 0_0
    Мне намекали на KB4486126, на него ориентировался, только в сборке винды нашёл. Хотя я что-то сомневаюсь в этом.
    Скорее какой нибудь WinSxS... GdiPlus или DirectX или вообще новый NTDLL
    Буду разбираться)
     
    Последнее редактирование: 6 янв 2026
  7. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    847
    [​IMG]
    [​IMG]
     
    GRAFik и Application нравится это.
  8. miilalex

    miilalex Member

    Публикаций:
    0
    Регистрация:
    8 сен 2024
    Сообщения:
    44
    я давно не заходил на WASM и всё пропустил, поэтому выплесну поток сознания, сорян

    dumpbin если это из пакета Майкрософт (си++ и тп) то .pdb это формат файлов, в которых поставляется отладочная информация к dll системы и другим, чтобы её (информацию) не внедрять в PE образы каждой исполнимой единицы

    соответственно mspdbчто-то там - это API для использования упомянутых файлов дампом и, возможно, этой же отладочной информации в форме секций в PE
    можно поискать в самом dumpbin не загружает ли он библиотеку и соответственно не ругать его и их за отсутствие

    что касается мультимедиа расширений, инструкций, ОС и отладчика

    мне лично XP симпатична до сих пор, хотя я и пересел на 7 64 в качестве рабочей лошади (а 10 и 11 для ютуба, хаха) но

    если отладчик способен на экране показывать какие-то 586+ регистры статуса, MMX или векторных операций, часть из них могут также использоваться системой, либо ею к ним закрыт доступ и с этой точки зрения отладчику нужно иметь возможность у ОС запрашивать эти статусы или права.

    допускаю, что XP и даже 7/8 в какой-то момент отстали от поезда в том смысле, что попытка прочитать какой-то регистр статуса ЦП приводит только к исключению.

    поэтому таки да, отладчик может зависеть от ОС, хотя не факт, что ОС скажем для консольных приложений будет обязательно нуждаться в векторных мультимедиа командах процессора.

    но как человек, который на Watcom C писал 3D бродилку и экран рендерил в оперативной памяти, а на экран забрасывал через VESA API что в лучшем случае обеспечивало 25 фпс, как и BitBLT Win32 API, я готов мириться с приходом DirectX который многократно такие копирования ускоряет, но отсутствует в старых ОС.

    в сторону VST замечу, что любые плагины к чему угодно, будь это FAR manager, нуждаются в host приложении и часто, как в случае плагинов к Adobe Photoshop, даже выделение памяти делают исключительно через интерфейсы, предоставляемые хост-приложением.

    при этом плагин небезосновательно считает, что загружен был предназначенным для него хостом, и не проверяет, валидны ли интерфейсы хоста, до их использования.
    поэтому попытка загрузить отладчиком одну условно dll чего угодно - если не обязана, то имеет все шансы рухнуть вне хоста.

    исходя из этого, я бы больше усилий прилагал в направлении дизассемблирования, нежели трассировки.
     
    Semiono, GRAFik и Mikl___ нравится это.
  9. miilalex

    miilalex Member

    Публикаций:
    0
    Регистрация:
    8 сен 2024
    Сообщения:
    44
    мне не хватило где-то смайлика sarcasm )

    однажды я дописывал (переделывал) опенсорсный плагин для FAR и проклял всё, в том смысле, что API FAR при всём моём уважении ногами сделан.
    второй раз я проклял уже v3 FAR API ровно потому, что его перепахали настолько, что плагины к первой версии FAR перестали работать в третьей.
    и да, он не меньше зубодробильный и я готов обнять и заплакать каждого автора плагинов для FAR v3.

    в прошлом веке, точнее на рубеже Y2K, я реверсил движок ФШ-совместимого хоста внутри Paint Shop Pro чтобы себе сделать возможность использовать сторонные плагины, созданные для и в соответствии с Adobe Photoshop SDK.
    иронично, что самым популярным плагином в сообществе ФШ оказался FilterFactory, где не надо было даже компилировать исполняемый код, а творческая работа с изображением проходила в встроенном интерпретаторе простого языка а ля бейсик

    нужно ли повторять, что я проклял всё ? )

    на фоне и в сравнении с Win32 API, если считать GUI программы для винды плагинами, расширяющими возможности системы, чтобы прикладным программистам не писать свой код для доступа к секторам диска пользователя и к DAC его видеоадаптера, то что в качестве API плагина предлагают сторонние разработчики, будь то OpenFX для экс Sony Vegas, будь то Nullsoft animation для винампа, это каждый раз почему-то какой-то тихий самобытный ужас, вероятно, созданный с целью досадить пользователю, а не получить от него больше полезных программ )

    другими словами, интерфейс каждого очередного хост приложения способного взаимодействовать с плагинами, это очередной ящичек Пандорры, на мой взгляд и вместо тех деталей программирования нас понуждают изучать эти

    при этом если WinAPI штука универсальная, то интерфейс плагинов винампа не пригодится при написании плагина для FAR или ФШ, к сожалению.
     
    GRAFik нравится это.
  10. Ahimov

    Ahimov Active Member

    Публикаций:
    0
    Регистрация:
    14 окт 2024
    Сообщения:
    425
    Засрал техтему. В бан троля, если нужно есть по псих темы. Смотрю и понимаю(не осознаю), что для понимания работы виз анализа можно использовать помеху на растр.

    На кл темы по защите, можно не дать восстановить импорт, использовав мод аргументов апи, а для этого нужно собрать(cfg) и найти выборки аргументов апи, что немного тащит наследование(taint).

    По нейронкам было бы время можно все ядро распарсить, найти дыры.

    А вы обсуждаете какую то дичь.

    Есть парал. трабла на кл тема с трассами этого отладчика. Это опенсорсный говнокод, как это вообше может работать, да еще на протекторах!?

    Смысл в том, что вы вектор потеряли, тупо забыли уровень задач :dntknw:
     
    M0rg0t нравится это.
  11. miilalex

    miilalex Member

    Публикаций:
    0
    Регистрация:
    8 сен 2024
    Сообщения:
    44
    мой второй абзац из этих двух выше - был ответом на (удаленный?) комментарий пользователя о том, что плагины придуманы для упрощения создания классных прог пользователями без глубокого погружения в детали программирования.

    я думаю, что если Semiono тыкает отладчиком в VST плагин, то не с целью добавить туда еще крутилку реверберации

    и если плагину в работе мешает expired trial то наверное надо чем-то из разряда Process Explorer/Monitor посмотреть кем/откуда вызвано соотв сообщение или где оконная процедура или аналог её в Qt или на чем именно собран GUI плагина.

    повторюсь, с моей точки зрения непрактично тратить время на изучение фреймворка и в целом архитектуры VST лишь затем, чтобы потрассировать код плагина и всё равно упереться в необходимость его реверса.

    про опенсорсный г-код претензия непонятна.
    если что-то не устраивает, есть issues в git или нет?
    можно форкнуть, исправить и опубликовать, я не прав?

    если обидно, что среди комьюнити некому пофиксить идеи отладчика, которые работают не так, то можно пока возраст позволяет написать альтернативу и стать известным, хехе
     
  12. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    847
    Самый бомбезный Yamaha Montage M ESP, но пришлось для него процессор искать AVX2. Особенно жестоко чтобы сохранить совместимость с Win 8.1 =)
     
    GRAFik нравится это.
  13. Ahimov

    Ahimov Active Member

    Публикаций:
    0
    Регистрация:
    14 окт 2024
    Сообщения:
    425
    miilalex

    > можно форкнуть, исправить и опубликовать, я не прав?

    Это нельзя исправить, архитектура такова, что это можно только заменить. Если трассировка виснет, обычно используются профайлеры, дабы выяснить в каком месте просадка по таймингу и чего там зависло. Но в этой чепухе такое сделать невозможно.

    > среди комьюнити некому пофиксить идеи отладчика, которые работают не так

    Есть другие инструменты, вд например.
     
  14. M0rg0t

    M0rg0t Well-Known Member

    Публикаций:
    0
    Регистрация:
    18 окт 2010
    Сообщения:
    1.641
    добавьте в игнор лист персонажей (особенно рафика), и будет +- комфортно читать, хотя конечно лучше бы в бан лист..

    upload_2026-1-16_15-6-7.png
     
  15. miilalex

    miilalex Member

    Публикаций:
    0
    Регистрация:
    8 сен 2024
    Сообщения:
    44
    не вижу в коде причин, мешающих в "начале" трассировки создать бинарный файл, сохранить хендл в глобальной для этого cpp переменной и добавить в заголовок каждой функции этого модуля запись в этот файл, как вариант, системного времени в миллисекундах или тиков CPU и номер строки исходника в компании с желаемыми параметрами из собственно интимной жизни трассировщика (IP, регистры, текущую инструкцию трассируемого кода и тд)

    и после каждого вызова WriteFile тыкать в FlushFileBuffers - почему нет? когда оно всё рухнет, на диске останется лог вызовов, даже если файл не будет закрыт штатно.

    я не горю желанием разбирать эти макароны, но в 2026 плохая практика использовать битовые поля в своих структурах, либо надо делать средствами языка, либо хотя бы спрятать << 14 и подобное в макросы
    потому что ошибиться в каше несложно

    и этот модуль изобилует записями в массив без какой-либо проверки индексов на нарушение границ - не факт, что это нужно в релизе, но могло бы помочь в поиске багов трассировки.

    мне достаточно давно схожими методами удавалось отлаживать свое ПО, обернутое в лицензионный аспротект, не ломая мой код интеграции защиты и не обходя механизмы антиотладки и вот это всё.