Receiver
05.02.2025, 14:42
Всем привет! Хочу закинуть вам трушный мемвраппер под плюсы для трушных ASI скриптеров, который использует NLE Choppa в своих проектах.
Поддержка: C++20, Windows и любая битность которую поддерживает
uintptr_t
. При чтении/записи указателя отработает по размерности
uintptr_t
. Работа со сложными типами описана в примере использования.
Использование:
C++:
auto
addr
=
whyega
::
address_t
{
0x1337
}
;
// математика
addr
+=
0x228
;
addr
-=
0x228
;
// доступные касты
std
::
uintptr_t
{
addr
}
;
// авто каст
addr
.
ptr
(
)
;
// к указателю
addr
.
as
(
)
;
// к типу
std
::
cout
(
)
)
;
// запись (сам снимает протекцию)
addr
.
write
(
1337
)
;
// протекция
auto
prot
=
addr
.
protect
(
)
;
if
(
!
prot
.
executable
(
)
)
{
addr
.
protect
(
sizeof
(
uint32_t
)
,
prot
.
read_write_execute
(
)
)
;
auto
flags
=
*
addr
;
// получаем PAGE флаги
flags
=
addr
.
get
(
)
;
// тоже самое через метод
}
// вызов функции
addr
.
execute
(
255
)
;
// простой пример
whyega
::
address_t
{
0x1337
}
.
write
(
1337
)
;
// работа со сложными типами
auto
buf
=
addr
.
span
(
100
)
;
std
::
fill
(
buf
.
begin
(
)
,
buf
.
end
(
)
,
0x90
)
;
// + можете снять протект на диапазон
Исходный код:
true memwrap. something else? (https://www.blast.hk/redirect/aHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vcmVjZWl2ZXIxL2M4Ym EzMDVhMGU0ODllYzQzMGUwOGM3MjE5ZGVjMmFm)
true memwrap. something else? GitHub Gist: instantly share code, notes, and snippets.
gist.github.com
Мемесы: Залог успеха очень прост, нужно всего лишь...
https://forum.antichat.xyz/attachments/28583746/
https://forum.antichat.xyz/attachments/28583746/
https://soundcloud.com/kirill-5465052%2Fne-nado-stesnyatsya-brazil (https://soundcloud.com/kirill-5465052%2Fne-nado-stesnyatsya-brazil)
https://media1.tenor.com/m/mi73Qu_z0yYAAAAC/priv9-rust.gif
Поддержка: C++20, Windows и любая битность которую поддерживает
uintptr_t
. При чтении/записи указателя отработает по размерности
uintptr_t
. Работа со сложными типами описана в примере использования.
Использование:
C++:
auto
addr
=
whyega
::
address_t
{
0x1337
}
;
// математика
addr
+=
0x228
;
addr
-=
0x228
;
// доступные касты
std
::
uintptr_t
{
addr
}
;
// авто каст
addr
.
ptr
(
)
;
// к указателю
addr
.
as
(
)
;
// к типу
std
::
cout
(
)
)
;
// запись (сам снимает протекцию)
addr
.
write
(
1337
)
;
// протекция
auto
prot
=
addr
.
protect
(
)
;
if
(
!
prot
.
executable
(
)
)
{
addr
.
protect
(
sizeof
(
uint32_t
)
,
prot
.
read_write_execute
(
)
)
;
auto
flags
=
*
addr
;
// получаем PAGE флаги
flags
=
addr
.
get
(
)
;
// тоже самое через метод
}
// вызов функции
addr
.
execute
(
255
)
;
// простой пример
whyega
::
address_t
{
0x1337
}
.
write
(
1337
)
;
// работа со сложными типами
auto
buf
=
addr
.
span
(
100
)
;
std
::
fill
(
buf
.
begin
(
)
,
buf
.
end
(
)
,
0x90
)
;
// + можете снять протект на диапазон
Исходный код:
true memwrap. something else? (https://www.blast.hk/redirect/aHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vcmVjZWl2ZXIxL2M4Ym EzMDVhMGU0ODllYzQzMGUwOGM3MjE5ZGVjMmFm)
true memwrap. something else? GitHub Gist: instantly share code, notes, and snippets.
gist.github.com
Мемесы: Залог успеха очень прост, нужно всего лишь...
https://forum.antichat.xyz/attachments/28583746/
https://forum.antichat.xyz/attachments/28583746/
https://soundcloud.com/kirill-5465052%2Fne-nado-stesnyatsya-brazil (https://soundcloud.com/kirill-5465052%2Fne-nado-stesnyatsya-brazil)
https://media1.tenor.com/m/mi73Qu_z0yYAAAAC/priv9-rust.gif