Исходник Крякаем софт с помощью cURL

Receiver

🥩 Передай meat, всё в скип, я в темпе
Автор темы
Проверенный
597
818
Принцип работы: хукаем функцию writecallback, которую необходимо передавать cURL, чтобы он мог записать в writedata ответ сервера (и никакой подмены сервера не нужно)
Код:
C++:
#define  _CRT_SECURE_NO_WARNINGS

#include <windows.h>
#include <iostream>
#include <thread>
#include <minhook/MinHook.h>

#pragma comment(lib, "minhook_32.lib")

// Это строка, на которую мы подменим ответ от сервера
char fake_src[219] = R"(cd42404d52ad55ccfa9aca4adc828aa5800ad9d385a0671fbcbf724118320619 3861248
2d9675d849a9a7b52334735a0c621ccb6c203d6b1da7f759e719b0a3013f849c 7634608
e469ab66d7a9e90e2b1fa843933d701b0acaacfa9ce1cb0f4274b2ec720b90d8 4931520)";

using writecallback_t = int (__cdecl *)(void *, int, int, void *);

writecallback_t writecallback_orig;

int writecallback_hooked(void *a_src, int a2, int a3, void *a4)
{
    std::cout
        << " \twritecallback called [ "
        << a_src
        << " - " << a2
        << " - " << a3
        << " - " << a4
        << " ] "
        << std::endl;

    a_src = fake_src; // Подменяем ответ

    return writecallback_orig(a_src, a2, a3, a4);
}

class c_entry_point
{
public:
    c_entry_point()
    {
        // AllocConsole();
        // freopen("CONOUT$", "w", stdout);

        std::thread fucking_thread([]()
        {
            HMODULE module_handle = 0;
            while (!module_handle)
            {
                module_handle = GetModuleHandleA("d3d9.dii");
                //std::this_thread::sleep_for(std::chrono::milliseconds(1));
            }

            // If module loaded
            uintptr_t base_address = reinterpret_cast<uintptr_t>(module_handle);

            std::cout <<
                " \tbase address [ 0x"
                << std::hex << std::uppercase
                << base_address << " ] "
                << std::endl;

            void *hook_address = reinterpret_cast<void *>(base_address + 0x2DB30); // Тут адрес функции writecallback

            std::cout <<
                " \thook address [ 0x"
                << std::hex << std::uppercase
                << hook_address << " ] "
                << std::endl;

            MH_Initialize();
            MH_CreateHook(hook_address, &writecallback_hooked, reinterpret_cast<void **>(&writecallback_orig));
            MH_EnableHook(hook_address);

            std::cout << "\thook installed. " << std::endl;
        });
        fucking_thread.detach();
    }
} entry_point;
 
Последнее редактирование:

.1488

Известный
306
111
на бласт хаке он уже не продает его, вроде как. Щас понял, что софт хуйня и пытается втюхать за касарь.
 

Вложения

  • 1627219960062.png
    1627219960062.png
    764.9 KB · Просмотры: 239
  • Нравится
Реакции: Receiver

atizoff

приобретаю кашель за деньги
Проверенный
1,295
1,178
Кинь в лс исходник фулл я поменяю назыание на 1488 и буду сабку в неделю продавать за 1500₽ ну а че
Ты настолько вупсень что этот проект собрать не можешь. Какие тебе приватные читы?