Berkus
А если кот защищённый ?
расшифровывать или брать деобфускатор
Александр
распаковщик*
Александр
обычно защищают протекторами
Александр
и вообще, #offtop
Berkus
смотря как он защищенный, скайповский вот например не упакован
Berkus
а просто тупо зашифрован блоками
Анатолий
А если кот защищённый ?
учить криптографию)) А если серьезно то от дизасемблера не спасет никакая защита
Anonymous
Есть книжка Криса Касперского Лиза семь литов анте в уме
И его же "Искусство дизассемблирования".
Alignant
Хочу дизассемблировать биос с:
Anonymous
смотря как он защищенный, скайповский вот например не упакован
Последняя бета скайпа для Mac и Linux вообще на электроне и грузит официальную веб-версию. Прошли времена, когда скайп считался эталоном обфускации.
Berkus
Хочу дизассемблировать биос с:
нахрен, там гора тупого 16 битного кода
Berkus
inb/outb во все поля
Alignant
Раньше было модно
Anonymous
Хочу дизассемблировать биос с:
Где ты его найдёшь сейчас-то? На всех современных материнских платах давно UEFI.
Alignant
Та я знаю, я тоскую
Anonymous
Та я знаю, я тоскую
Вот этого точно не надо. BIOS был говном, основанном на костылях. Правильно сделали, что его закопали. UEFI в разы лучше.
Berkus
чуваки
Berkus
#holywar
Berkus
идите в холиварную
Alexey
а есть какой-нибудь блог с описанием изменений?
Berkus
джетбрейнс всегда публикует чейнджлоги
Ivan
Парни, статическую память можно засрать?
Ivan
В смысле компилятор под статическую память без ограничений выделяет?
Олександр
Если я не ошибаюсь, то статическая(автоматическая) память такая же динамическая, только выделаяется при вхождении область видимости для всего, что есть внутри последней, а освобождается после
Олександр
Происходит это автоматически, а не ручками программиста, как с динамической
Ivan
разве компилятор заранее не выделяет под статические переменные память?
Matwey
Ты имеешь ввиду секцию .data?
Matwey
Или они не там лежат?
Ivan
https://godbolt.org/g/6WvnkW
Pavel
https://godbolt.org/g/6WvnkW
https://stackoverflow.com/questions/2780100/is-there-any-limit-on-stack-memory
cyberzx 🇷🇺
Ivan
я про переменные объявленные static
Олександр
Да, про стек, я и не говорил, что его нельзя переполнить)
Олександр
Я к этому и вёл
Matwey
https://stackoverflow.com/questions/12126103/maximum-size-of-bss-and-data
cyberzx 🇷🇺
я про переменные объявленные static
Зависит от ABI. Я знаю в AMD64 (aka System V) есть секции, которые не ограничены в размерах (.ldata, .lrodata, .lbss)
Ivan
короче, миллион строк в статик не получится засунуть
Matwey
Почему не получится? Я вот давеча целый zip-файл туда положил;
cyberzx 🇷🇺
это сколько в мегабайтах?
Ivan
ну словарь орфографический
Berkus
я про переменные объявленные static
static складывается в .data, там в целом нет ограничений кроме архитектурных
Berkus
короче, миллион строк в статик не получится засунуть
легко, сможешь ли ты запустить такой экзешник - вопрос к оси
Berkus
но если там несколько сотен мегабайт, то без проблем
cyberzx 🇷🇺
правда запускаться будет долго и компилятор может немного опухнуть
Ivan
Ок, а потом затраты на доступ по индексам такие же дешёвые как на стеке?
Berkus
ну да, это доступ к обычной памяти - cache locality может пострадать если там много
Ivan
но если друг за другом проходить локальность кеша будет хорошей?
Berkus
не особо, в кэщ это все не влезет, надо будет делать префетч
Berkus
ты помоему в X-y проблему уперся
Berkus
что сделать то хочешь?
Ivan
я упарываюсь просто ) хотел засрать статик
Ivan
а что за Х-у проблема?
Berkus
#xyproblem
Berkus
алоэ ботэ
Ivan
икс игрик?
Berkus
в супапро было ща
Ivan
ладно, я не понимаю. Ещё вопрос вот у нас есть struct W { const char* c = "abc"; };
Berkus
http://mywiki.wooledge.org/XyProblem
Ivan
abc лежат в статической памяти, правильно?
cyberzx 🇷🇺
да
Berkus
abc это сишная строка, так что да
Ivan
далее мы пишем static W a, b, c, d, e, ...
Ivan
Они тоже в статической памяти
Berkus
но ссылаются на одну и ту же строку обычно, т.к. она константная
Ivan
структуры в статической памяти, поле структуры в статической памяти
Ivan
ок
Ivan
убираем const =))
Ivan
struct W { char* c = "abc"; };
Berkus
получаем варнинг, ставим его обратно
cyberzx 🇷🇺
в С++ так нельзя
cyberzx 🇷🇺
в С можно
Ivan
ок, давайте тогда думать, что мы в Си
Berkus
ты это можешь ведь локально на компилере проверить, у тебя всяко он есть
cyberzx 🇷🇺
Компилятор вполне может положить эти данные в какую-нибудь .ro секцию