Утилиты для создания автоматического патча на NSIS

Один из пользователей NSIS создал проект VPatch, который позволяет на NSIS написать автоматический патчер (после покажу пример, а может даже парочку). Но устанавливается он как-то криво, консольные утилиты, которыми генерятся данные для будущего патча устанавливаются абы куда, а не в какой-нибудь %PATH%-каталог, что безумно бесит. Поправил. У меня все утилиты устанавливаются в %WINDIR%.

Утилиты отдельно (RAR-архив), 468Кб
Установщик (NSIS, EXE), 666Кб
Родной пример использования VPatch (7ZIP), 475Кб
Исходник моего инсталлятора

Совсем простой CrackMe, и как его сломать.

Преамбула

Попросили показать самый простой пример по реверсингу. Ну ладно, сделал простейшую программу, окно где надо ввести пароль:

Ввели правильно, получаем окно одобрямса:

Ввели неверно, программа отправляет на повторный ввод с сообщением об ошибке:

Если нажать Cancel — программа просто завершится.

Сам CrackMe сделан на базе прошлого примера окна типа InputBox (копия), не стал даже с закрытием «пароля» «звездочками» заморачиваться, говорю же, очень простой CrackMe, естественно, без всякой упаковки и навесных защит.

Вообще, пароль можно подсмотреть, открыв экзешник, например, в просмотровщике Far Manager по F3:

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

Но мы пойдем другим путем, как завещал великий Ленин! Хотя способ будет не сильно далеким от «подсмотра», чтоб было слегка посложнее и интереснее — не будем пользоваться отладчиком, а воспользуемся дизассемблированием. В отладчике вместо одного шага (простого подсмотра пароля) будет полтора, а так все же веселее.

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

Читать далее

Ссылки

1. Исходник CrackMe
2. Бинарный файл
3. Чтоб два раза не вставать: Разница между инструкциями test и cmp Копия в PDF

Assembler: Окно типа InputBox в MASM32

Преамбула

Попросили сделать на ассемблере (MASM) что-то типа окна InputBox, которое было когда-то в Visual Basic 6.0. Кстати да, удобная фича для мелких запросов к юзеру, без всякого лишнего моделирования форм. Выглядело примерно так:

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

Т.е. в WinAPI ее нет и не ищите!

Окно InputBox в MASM32

Но реализовать можно:




Исходник

Сама функция InputBox перенесена любовно в InputBox.inc, так что можно просто воткнуть и использовать. Сделано изначально было все примерно по тем же материалам Iczelion’а (копия), я лишь немного причесал и по полочкам разложил, особо ничего не меняя. Потому расписывать детально не буду. Суть можно понять из вышеозначенных материалов и комментариев, хоть и на буржуйском, в исходниках.

Мопед изначально не мой, но ездит. Нашел на Stackoverflow, слегка переделал.

Исходник на GitHub
Скомпилированная версия

По мотивам

Источник вдохновения

Flashnote — прикольная программа для мелких заметок

Давно искал что-то подобное, чтоб не кодить самому, до этого пользовался Лехиным ХулиОрганайзером, который, кроме заметок имел в комплекте таймер и напоминатор о заданиях, почту проверить, например.

Последнее время искал что-то новое, поскольку БД с заданиями и заметками начала глючить, и тут, ВНЕЗАПНО, за меня это нашел [info]paperdaemon@ljr:

Поиск простой и удобной оффлайн-программы для быстрых заметок, вместо той прежней самой ламповой и удобной, написанной в свое время одним программистом для своих нужд и презентованной мне еще в середине нулевых, но уже совершенно не работающей в Windows 10, запускаемой и скрываемой по одному нажатию кнопки, столкнул меня с целым множеством каких-то чудовищных и изощренных, платно-сервисных-по-подписке заново изобретенных сумрачными гениями программазма «велосипедов», что я уже практически отчаялся найти то, что мне нужно. И если бы не мое упорство, то я бы так и остался один на один с запускаемым по нажатию трёх клавиш одновременно ярлыком, ведущим на текстовый файл с заметками.

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

Программа и Windows 7 поддерживает, этот пост написал изначально в ней.

Ссылки

Официальный сайт
Копия (инсталлятор) на mega.nz
Копия (портабельная версия) на mega.nz

Знаменитый роскомнадзоровский словарик

Подправил ставший знаменитым роскомнадзоровский словарик:

— Отсортировано по алфавиту
— Дублирующие строки удалены
— В архиве три варианта: оригинальный, измененный в кодировке ANSI, измененный в кодировке UTF-8

Скачать с Mega.NZ, Архив 7Z

ЗЫ. Один хрен, вдруг понадобится матерный фильтр делать, а тут уже все сделали.

Linux: bash, получить случайный символ из заранее заданной строки

Преамбула

Задана, например, такая строка:

PGSTRING='#$%@!?0'

Задача — получить из строки с паттерном случайный символ.

Bash: получаем длину строки

STRLEN=`expr length "$PGSTRING"`

Если вывести переменную STRLEN для строки выше, будет следующее:

Len: 7

expr есть в coreutils, так что должен быть практически везде

Bash: получаем случайное число из заданного диапазона

Получить случайное число из заданного диапазона можно командой shuf, например:

shuf -i x-x1 -n1

где:
x-x1 — диапазон чисел
-nXX — количество цифр в числе.

Получаем случайное число:

RNUM=`shuf -i 1-$STRLEN -n1`

Вывод:

R Num: 3

Получаем случайный символ из строки с паттерном

Отправляем строку на консоль:

echo -e -n "$PGSTRING"

И перенаправляем команде cut:

Для того, чтобы вырезать командой cut символ, или группу символов из строки, нужно указать первый и последний символ. Например:

cut -c1-5

Применяем все вышесказанное:

RCHAR=`echo -e -n "$PGSTRING"|cut -c$RNUM-$RNUM`

Вывод:

Char: %

Можно объединить все это в функцию

getrandchar() #$1 - pattern_string
{
    STRLEN=`expr length "$1"`
    RNUM=`shuf -i 1-$STRLEN -n1`
    RCHAR=`echo -e -n "$1"|cut -c$RNUM-$RNUM`
}

Использование:

getrandchar $PGSTRING

Копия функции на PasteBin

Новый сборник Flash-игр от Лехи.

Все пересобрано в EXE, совместимо со всеми Windows, начиная с XP

Аркады

— AC — Дави инопланетных тараканов!
— ALIEN — Инопланетянин сбегает из зоны 51. Мочи земляшек!
— ARC — Платформер, где на тебя набигают Смурфики
— BUCK — Симулятор собаки
— BUTCH — Играешь ха разумный хищный гриб, жрешь насекомых
— CANDY — Платформер, надо собирать конфетки
— CAT2 — Надо спасать котиков
— catchacrab[1] — Ловля крабов
— EscapeFromElmStreet[1] — Бродилка по мотивам «Кошмара на улице Вязов»
— EXP — Дави пешеходов автомобилем
— fixturkey[1] — Зажарь индюка!
— GAME3 — Платформер авиационный
— gladiator — Симулятор гладиатора
— HULK — Симулятор халка
— LINSE — Инопланетянин гигантской лупой сжигает город и людишек
— marspatrol — Марсианский патруль
— mofunzone-com-sinjid[1] — Играешь за самурая
— mofunzone-com-tacticscore[1] — Мини-версия «Героев меча и магии»
— monsterbash — Типа «пришиби крота» только с монстрами
— MS — Симулятор акулы
— nu_pagadi — «Ну, погоди»
— PACMAN — Пакман
— PAR — Простенький платформер с паранормальной атмосферой
— Paranormality[1] — Простенький платформер с паранормальной атмосферой (еще одна версия)
— PM — Еще один Пакман
— POL — Симулятор толстяка
— polar_rescue — Платформер за пингвина
— PREDKI — Уберись в комнате, пока родители не явились
— Ronin-SpiritOfSword[1] — Симулятор самурая
— SB — Проведи мыльный пузырь через лабиринт
— SC — Управляй НЛО
— SHEEP — Надо загнать овец в загон
— SHUTTLE — Ебанутая скорая помощь! Дави всех нахуй!!!
— SMU — Лови пирожки и прочие кондитерские изделия
— SonicLostInMarioWorld[1] — Платформер
— SSS — Управляй НЛО другая версия
— ST — Файтинг палочных человечков
— StickRPG[1] — Двумерная РПГ
— stroiteli — Кидайся шариками с водой с моста!
— teddyball — Волейбол игрушечных медведей, можно играть вдвоем или с компьютером
— TheA&DEngine[1] — AD&D с компьютером
— UltimateFlashSonic — Sonic
— war_in_iraq — Мочи Ирак!
— WirtuaLife[1] — Виртуальная жизнь
— Wolf3d[1] — Симулятор волка в 3D, от первого лица. Жри сраных коров!

Драки

— BF — Бусидо файтинг (простой файтинг)
— dronetour — Файтинг проволочных человечков
— Fight4 — Файтинг палочных человечков
— MORDA — Для снятия стресса. Набей иорду начальнику.
— NP — Ninja Power
— portalfighter — Файтинг на двоих
— SILAT — Каратэ
— ST — Набигают!

Классические

— Рыбалка

Любимые (по мнению составителя сборника)

— Leshka_na_rabote — Беспредел в офисе
— SIMGIRLS — Симулятор знакомства
— tc — Tactic Core

Логические

— Bull — Быки-коровки
— HEXXAGON — Гексагон. Заполни своим цветом все поле.
— PUZZLE — Пятнашки

Разное

— ALISSA — Раздень Алису Милан
— holio1_rus[1] — Симулятор развода девушки
— Jeu_Onamis_01 — Головоломка (странная)
— slipknot[1] — хз
— Squares2 — хз

Ролевые

— Tactic Core

Игры со скримерами

Нет описаний 🙂

Скачать

С MEGA.NZ (7ZIP, 68 Mb)

Сборник составил Leha Silent

(L) tolik-punkoff.com, 2023

Сферический «русский мир» в русском мире.

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

Из дневников маньяка Сергея Сливко

Почти то, на чем акцентирует внимание Витухновская. Она не права только в одном, как и любой маськовский «политег». Чтобы разрушить маньячество — нужно расчленить маньяка на много кусочков. До 24-го февраля еще был иной вариант решения проблемы, а сейчас этого уже не будет.

Успокойтесь, агенты и адепты маськвы. Никто вас не будет специально расчленять. «Ваш «Москвич» развалится сам по себе».

Ода роскомнадзору и нашей блокировке.

КАЛуга-Кали-Юга заблокировала нас,
Эй, КАЛуга-Кали-Юга, на, держи
         жуй ананас!
"А на нас великая миссия возложена!"
Говорил "Ананас"*, царь один.
Но царя того расстреляли,
Как сменился глобальный админ.

Так и ты подумай, КАЛ-уга,
Стоит жить ли сейчас так тебе.
Ведь придет же потом Кали-Юга...

И потомки найдут ананас...
В твоей грязной вонючей пизде!

*Среди военных у котоубийцы Николая v 2.0 была кличка «Ананас», именно из за его фразы «А на нас возложена великая миссия…»

Наконец-то нас заблокировали в ГОРФ, это, конечно, не орден, как у Латыниной (иноагент), не погоны генеральские с аксельбантом и лампасами, как у Невзорова (уголовное дело), но все равно очень приятно. Медалька.

Надо, кстати, заказать ИРЛ и разослать всем сопречукнутым!

Перепрошивка полуокирпиченного Nokia X2 Lumia (RM-1013)

В принципе делал все по этой видеоинструкции:

Прямая ссылка

Но с некоторыми оговорками, видимо потому, что телефон был не совсем «кирпич», н наполовину, т.е. заставку Nokia показывал, но дальше фигвам:

1. Ставим драйвер из каталога Driver в архиве QPST (ссылки на софт и прошивку будут ниже)
2. Ставим сам QPST
3. Ставим Care Suite For Store
4. Качаем прошивку
5. Пытаемся перепрошить стандартным способом с помощью Care Suite (есть инструкция на 4PDA)
6. Или не получится, или на этом этапе телефон окирпичится до такого состояния, как показано на видео.
7. Делаем все по видеоинструкции.

Софт и прошивка

Поскольку, на 4PDA половина ссылок битая, а половина вообще ведут на сраный фашистский Хуяндекс, я весь набор переложил на православную Мегу:

Care Suite For Store 5.6.134.1513
QPST
Прошивка

Ссылки

Тема на 4PDA
Инструкция по перепрошивке с помощью Care Suite (копия)
Копия видеоинструкции (MKV)

Переключение кодировки вручную в новом Firefox

В прошлой заметке (копия), где я писал и о том, что дебильные менеджеры Mozilla, какого-то полового органа отключили выбор кодировки вручную, я немного ошибся, написав, что соответствующий задаче плагин пока никто не удосужился написать, аноним подсказал, что плагин таки написали:

Скриншот

Ссылка на страницу плагина

Override Text Encoding

Проверил на Firefox 109.0 x64 Windows, работает!

Китайская кодировка, китайский документ, расшифровка, Firefox

И минутка НЕНАВИСТИ в конце, ну как же без нее.

Преамбула

Привезли клиенту «мозги» для станка, ЧСХ, китайские, но доехали они почему-то без документации, т.е. простая серая коробочка с девайсом, напоминающим роутер. Два порта, один по специальному кабелю соединяется со станком, во второй — вставляется обычный Ethernet-кабель, который идет на управляющий комп. На «мозгах» три кнопки, как потом выяснилось — старт, экстренный останов и самотест. Надписи иероглифами. Ну ладно, с кнопками разобрались методом тыка.

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

Ну хуле делать, пишу производителю шайтан-машины в почту, мол, пришлите мануал.
«Да не вопрос, дорогой уважаемый клиент, айн момент», отвечает мне добрый китайский менеджер, и через время малое, прилетает мне мануал в виде текстового файла и кучи примеров, там даже изящная розочка была, как ее на металле вырезать… На китайском.

Но это полбеды, выглядит этот китайский примерно так: ÖØÐÂÉèÖöÔÏó

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

Пролюбившись целый день с перекодировщиками, китайскими кодировками, задействовав даже Far Manager с его довольно большой базой кодировок, я не получил ровным счетом ничего.

Минутка любви к Firefox

Наконец, пришла идея, а если текстовый файл переименовать в *.html и скормить его Firefox’у, у него же была довольно неплохая внутренняя определялка кодировок, повыбираю из списка, или же он сам определит.

Определил сам, наконец невнятные кракозяблы ÖØÐÂÉèÖöÔÏó превратились во вполне внятные иероглифы: 重新设置对象, что значит всего лишь сбросить объект. Ну а дальше немного смекалки, экспериментов, гугль-переводчика, и ТЕЛЕМАРКЕТ!

Минутка ненависти к Firefox

Решил я посмотреть какая же все-таки кодировка у файла. И… не нашел меню с выбором кодировок вручную. Оказывается, разкозлоработчики Firefox просто тупо убрали возможность выбора кодировки страницы вручную из браузера.

Кодировка текста больше недоступна в меню Firefox

Какой пиздец! А если ваше поделие таки неправильно кодировку определит, прикажете ехать в вашу штаб-квартиру и ебать вас раскаленным урановым ломом?
Вот жеж бля, от кого не ожидал подставы, дык от Mozilla. И вообще непонятно, нахера так делать?

Как посмотреть кодировку страницы

1. Надо включить Панель меню
2. Зайти в Инструменты —> Сведения о странице (или нажать комбинацию клавиш CTRL+I)
3. В сведениях о странице будет отображена и информация о кодировке:

Как вручную поменять кодировку страницы в Firefox

В последних версиях пока никак, соответствующий задаче плагин пока никто не удосужился написать, может быть Firefox идеально определяет кодировки, а может мозилловцы пока не столкнулись с багом, так что если надо в браузере вручную покрутить кодировки — придется скачивать старые версии, например:


С PortableApps.com (версия 88.1)
, установщик

Бэкап

Для выбора кодировки вручную, необходимо включить меню, а далее выбрать:

Вид —> Кодировка текста, и далее выбрать нужную кодировку:

L.O.S.A.I.G! — Chameleons (Official music video)

Лосаики, чудеснейшие, распались, но умудрились свой клип продать сраному МУЗ-ТВ или А2, не знаю кому, потому внаютубе за клипом бегают ебучие копирасты и адски банят всех, у кого на канале лежит клип Лосаиков.

Клип забэкапил на Мегу

Если увидите копираста, или сраного менеджера Гугля, что одно и то же, немедленно бейте его досмерти ногами! Иначе не победим. Оно лучше Хуйла только тому ще у менеджера Гугля и у Брина нет танков и водородной бомбы. В остальном они все хуже даже Гитлера, даже хуже Сралина.

Копирастов надо убивать!