Pull to refresh
-9.3
Karma
0
Rating
Иван Левашев @OCTAGRAM

Фрилансер

  • Followers 10
  • Following 63

Ломаем хаКс полностью. Читаем машинные коды как открытую книгу

C++ *Game development *Reverse engineering *
Tutorial
Если haXe оттранслирован в C++, а из него — в машинные коды, это может показаться безнадёжным, тем более, на первый взгляд этот код пестрит вызовами виртуальных методов, которые, не запуская отладчик, трудно соотнести с адресами тел методов.

Но всё не так уж плохо. Даже при отключенной поддержке сценариев (HXCPP_SCRIPTABLE) в файле можно обнаружить строки с названиями методов и полей. Разбираем, как можно размотать этот клубок, сопоставить имена методов с их адресами и смещениями в таблице виртуальных методов.
Total votes 13: ↑12 and ↓1 +11
Views 9.5K
Comments 2

Интеграция внешней объектной системы в Delphi на примере IBM SOM

Assembler *Delphi *System Programming *ООP *
SOM Technology: Making the Pieces Fit4 года назад вышла моя статья про IBM SOM, где я констатировал крайне плачевную ситуацию, когда утерян значимый инструментарий, и чем дальше, тем меньше шансов восстановить. За прошедшее время много, чего случилось, нашлись и SOM 3.0 для Windows, и SOM 2.1, и открытый клон somFree, и рабочий компилятор DirectToSOM C++ для Windows, и мост в OLE Automation.

Один из моих проектов реализует поддержку SOM в Delphi. Разработка начиналась на Delphi, пришлось часть привязок делать вручную и не так красиво, в процедурном стиле, без проверки типов. Используя эти привязки, был написан генератор привязок в объектном стиле, а затем и сам генератор был переписан на новые привязки, став подтверждением их работоспособности. Ради красоты пришлось хакнуть объектную систему Delphi, и, может быть, вам будет интересно, как это вообще можно делать.
Читать дальше →
Total votes 11: ↑11 and ↓0 +11
Views 3.3K
Comments 2

Началось соревнование «Make with Ada» для разработчиков встраиваемых систем

Sport programming *IT systems testing *Perfect code *Concurrent computing *Programming microcontrollers *


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

Сегодня на повестке дня — разработка для ARM на голом железе и технологии верификации. Общий призовой фонд — более 8000€.
Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Views 6.2K
Comments 2

Об одном нестандартном способе борьбы с блокировками: инфошантаж

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

Одной из причин, по которой идут блокировки, является то, что с точки зрения людей, обладающих властью, а власть — это реализуемая на практике способность управлять, например, ТНК и банкстеров, а не только силовиков, состояние после блокировки предпочтительнее состояния до блокировки. I2P, CJDNS, Byzantium — это средства обороны, а не нападения. Акцент сделан на интересах тех, кто противодействует блокировкам, а не на интересах тех, кто в этих блокировках заинтересован. Под нападением я понимаю такие законные действия, чтобы состояние после блокировки становилось хуже, чем до, с точки зрения людей, обладающих властью и заинтересованных в блокировках. И блокировки начнут саботироваться изнутри. Претензии правообладателей начнут активно оспариваться или правообладатели вдруг как по волшебству начнут терпеть это безобразие и перестанут добиваться блокировки.

Хотелось бы обратить внимание на то, как скудно используется потенциал заблокированных страниц. Где–то владельцы сайтов сами убрали информацию, где–то провайдер показывает свою заглушку. Почти всегда эти заглушки меня разочаровывают. Пропадает зря большой нереализованный потенциал. Вот об этих заглушках и хотелось бы подбросить материал для размышлений.
Читать дальше →
Total votes 34: ↑14 and ↓20 -6
Views 8.5K
Comments 15

Расставляем точки над i в Delphi RAII

Delphi *
Тема RAII в Delphi обычно замалчивается или же информация по этому вопросу ограничивается обсуждением полезности интерфейсов. Но интерфейсы поодиночке не дают многих желаемых возможностей. Когда в Delphi 2006 появилась перегрузка операций, приватные поля записей, собственные конструкторы и методы в записях и, казалось, было бы логично увидеть и автоматически вызываемый деструктор. И run-time позволяет, и в разделе запроса новых фич Delphi на протяжении нескольких лет в ТОП–10 висит запрос №21729 «Record Operator Overloading: Please implement «Initialize» and «Finalize» operators». Наверное, не судьба. Ничего, я покажу, как обойтись без несостоявшихся фич. Так как Delphi 7 живее всех живых, будут рассмотрены решения, совместимые с Delphi 7 в том числе

Времени найти обходные пути было достаточно
Total votes 38: ↑32 and ↓6 +26
Views 18K
Comments 57

IBM SOM: внешняя объектная система с поддержкой наследования

ООP *
Sandbox
image Хотел бы поделиться своей находкой: IBM SOM. Согласно Википедии, жил да был некогда Microsoft с COM, и был IBM с SOM. В Windows и OS/2, соответственно. И были для них средства межсетевого взаимодействия: DCOM и — как вы думаете? — правильно, DSOM. Такая вот идиллия, что может сложиться впечатление, что это близнецы. Только вот в SOM было наследование, а в COM — нет, и в журналистских статейках, на которые ведут ссылки из Википедии, только об этом и речь.

Но это лишь начало путешествия в кроличью нору
Total votes 16: ↑13 and ↓3 +10
Views 6.8K
Comments 11

Information

Rating
Does not participate
Location
Барнаул, Алтайский край, Россия
Date of birth
Registered
Activity