Ir para conteúdo

Featured Replies

Postado

E ai galera, eu andei fuçando no Google um jeito de Descompilar o novo Client do NTOBR 0.67.

 

Ai eu descobrir que o Client usa 2 .dat e .spr, um original que o Client usa e outro generico.

Vamos la, a proteção do Client foi um pouco logica, tipo, o Tibia Unbinder não consegue puxar o dat e spr do Client, por quer ele só puxa os arquivos chamados Tibia.spr e Tibia.dat, então eles modificaram os nomes dos arquivos e copilaram.

 

Então aprofundei minha pesquisa sobre isto e consegui descobrir uma coisa sobre a Descompilamento de Client 8.10 AQUI.

O Tibia Unbinder foi Criado por Choujak (Otland).

Choujak pegou esse CODE:

#include <windows.h>
#include <stdio.h>
#include <process.h>

#define DEFAULT_BUF_LEN 40000000
// 40mb~

typedef HANDLE (__stdcall *_CREATEFILE) (LPCTSTR lpFileName,DWORD dwDesiredAccess,DWORD dwShareMode,LPSECURITY_ATTRIBUTES lpSecurityAttributes,DWORD dwCreationDisposition,DWORD dwFlagsAndAttributes,HANDLE hTemplateFile);
_CREATEFILE MBCreateFile = (_CREATEFILE)(*(DWORD*)0x597100);

typedef BOOL (__stdcall *_READFILE)(HANDLE hFile,LPVOID lpBuffer,DWORD nNumberOfBytesToRead,LPDWORD lpNumberOfBytesRead,LPOVERLAPPED lpOverlapped);
_READFILE MBReadFile = (_READFILE)(*(DWORD*)0x5970E8);

void ThreadProc(void *param)
{
     DWORD bytesRead;
     DWORD bytesWritten;
     char *buffer = new char[DEFAULT_BUF_LEN]; //40mb~
     HANDLE h = MBCreateFile("Tibia.spr", GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
     MBReadFile(h, buffer, DEFAULT_BUF_LEN, &bytesRead, NULL);
     //
     HANDLE p = CreateFile("Tibia2.spr", GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
     WriteFile(p, buffer, bytesRead, &bytesWritten, NULL);
     CloseHandle(p);
     delete[] buffer;
}

extern "C" BOOL APIENTRY DllMain (HINSTANCE hInst,
                       DWORD reason,
                       LPVOID reserved)
{
    switch (reason)
    {
      case DLL_PROCESS_ATTACH:
           {         
               _beginthread(ThreadProc, 0, NULL);   
           }
        break;
    }
 
    return TRUE;
}

 

E modificou para fazer as dlls inject do Tibia Unbinder.

 

Meu Pedido é, Alguém pode me ensina a fazer uma dll com esse CODE, mas modificada para Tibia 8.60, por que eu irei descobrir o nome do .dat e .spr Original do Client NTOBR e modificar a tag:

void ThreadProc(void *param)
{
     DWORD bytesRead;
     DWORD bytesWritten;
     char *buffer = new char[DEFAULT_BUF_LEN]; //40mb~
     HANDLE h = MBCreateFile("Tibia.spr", GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
     MBReadFile(h, buffer, DEFAULT_BUF_LEN, &bytesRead, NULL);
     //
     HANDLE p = CreateFile("Tibia2.spr", GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
     WriteFile(p, buffer, bytesRead, &bytesWritten, NULL);
     CloseHandle(p);
     delete[] buffer;
}

"O sucesso é uma consequência e não um objetivo. A persistência é o caminho do êxito".
Postado
  • Autor

UP

"O sucesso é uma consequência e não um objetivo. A persistência é o caminho do êxito".
Postado
  • Autor

é pq to tentando descopilar o client do nto br.

sabe achar os byte do client? Help -me

Editado por Storm Night (veja o histórico de edições)

"O sucesso é uma consequência e não um objetivo. A persistência é o caminho do êxito".

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo