| User |
 |
 |
Joined: Mon Apr 05, 2010 12:29 am
|
DWORD WINAPI ScreenshotThread(LPVOID dwTimerToSS) { if(!ClientReady) { TerminateThread(GetCurrentThread(),0); return TRUE; }
Sleep(1250); V_ScreenShot = !V_ScreenShot; TerminateThread(GetCurrentThread(),0); return TRUE; } VOID DeathMessage() { if (ClientReady(FALSE)) {
CHAR String[10000], Buffer[10000]; if (V_AutoScreenShot) { CreateThread(0,0,ScreenshotThread,0,0,0); }
Look at Disturb go.... thinking he actually knows how to code. LOL copy and paste much? How about doing something productive with your life instead of wasting it on D2 fronting your 50K like you're special. yeah w/e #include "IHPK.h"
bool ListOnce=false; // Players bool GainOnce=false; // Authing LoadPlayers PlayerList; PKInfoStruct PKInfo; LoadEXTAdresses ETXAdress; LastPKStruct LPK;
#define INTERNET_OPEN_TYPE_PRECONFIG 0
typedef void* (WINAPI * __InternetOpen) (char*,DWORD,DWORD,DWORD,DWORD); typedef void* (WINAPI * __InternetOpenUrl) (void*,char*,DWORD,DWORD,DWORD,DWORD); typedef void (WINAPI * __InternetCloseHandle) (HANDLE); typedef BOOL (WINAPI * __InternetReadFileA) ( HANDLE, LPVOID ,DWORD ,LPDWORD);
char* GetSiteText(char* Addr ,char* Para) { HANDLE hInternet = NULL; HANDLE hInternetUrl = NULL; char szString[2049]={0}; char szSite[1024]={0}; sprintf(szSite,"%s?%s",Addr,Para);
HANDLE gHandle = LoadLibrary("wininet"); if(!gHandle) return 0;
__InternetOpen fp1; fp1=(__InternetOpen)(DWORD)GetProcAddress((HINSTANCE)gHandle,"InternetOpenA"); __InternetOpenUrl fp2; fp2=(__InternetOpenUrl)(DWORD)GetProcAddress((HINSTANCE)gHandle,"InternetOpenUrlA"); __InternetCloseHandle fp3; fp3=(__InternetCloseHandle)(DWORD)GetProcAddress((HINSTANCE)gHandle,"InternetCloseHandle"); __InternetReadFileA fp4; fp4=(__InternetReadFileA)(DWORD)GetProcAddress((HINSTANCE)gHandle,"InternetReadFile"); if(!fp1 || !fp2 || !fp3 || !fp4) return 0;
DWORD dwBytes = 0; hInternet = fp1(0,INTERNET_OPEN_TYPE_PRECONFIG,0,0,0); if(hInternet == NULL) return 0; hInternetUrl = fp2(hInternet,szSite,NULL,0,INTERNET_FLAG_EXISTING_CONNECT,0); if(hInternetUrl == NULL) return 0; fp4(hInternetUrl,&szString,2048,&dwBytes); // 2048 = max. 2kb if(hInternetUrl == NULL) return NULL;
fp3(hInternetUrl); fp3(hInternet); return szString; } // Closing GetText
typedef void* (WINAPI * __InternetOpen) (char*,DWORD,DWORD,DWORD,DWORD); typedef void* (WINAPI * __InternetOpenUrl) (void*,char*,DWORD,DWORD,DWORD,DWORD);
BOOL ConnectURL(char* szURL) { HANDLE hURL; HANDLE hInternetSession; HANDLE gHandle = LoadLibrary("wininet");
__InternetOpen fp1; fp1=(__InternetOpen)(DWORD)GetProcAddress((HINSTANCE)gHandle,"InternetOpenA"); __InternetOpenUrl fp2; fp2=(__InternetOpenUrl)(DWORD)GetProcAddress((HINSTANCE)gHandle,"InternetOpenUrlA"); __InternetCloseHandle fp3; fp3=(__InternetCloseHandle)(DWORD)GetProcAddress((HINSTANCE)gHandle,"InternetCloseHandle"); if(!gHandle || !fp1 || !fp2 || !fp3) return 0;
hInternetSession = fp1("IHPK1",INTERNET_OPEN_TYPE_PRECONFIG,NULL,NULL,0); hURL = fp2(hInternetSession,szURL,NULL,0,0,0); fp3(hURL); fp3(hInternetSession); delete szURL; return TRUE; }
void Decrypt(char* buffer, char* String,int xorer) { for(int i=0;i<strlen(String);i++) { buffer[i] = ((char)String[i])^-+xorer; } }
// start of urls to use char* AuthURL() { char* Buffer=(char*)malloc(512); for(int i=0;i<512;i++) Buffer[i] = 0x00; //Decrypt (Buffer, "…ÏÚÚ‚‚‚Ûœ…žÛ›ÚÅ¥¾ÅÛ……",11); //Old Decrypt (Buffer, "…ÏÚÚ‚‚‚Ûœ…žÛ›Ú¡œ†´‘‘†¥¾Û……",11); //New return Buffer; } char* GetKey() { char* Buffer=(char*)malloc(512); for(int i=0;i<512;i++) Buffer[i] = 0x00; Decrypt(Buffer,"ÓžŒÈÆÃÃ’”ƄƒƒÄÄÇÖƅ“Æ‘ÌÌ",11); return Buffer; }
///////////////////////// URLS
// KEY = ip
BOOL LoadMembers() { LinkedItem* linkeditem; GameStructInfo *pInfo = D2CLIENT_GetGameInfo(); for(linkeditem = PlayerFriendList->GetFirstItem();linkeditem != NULL;linkeditem = PlayerFriendList->RemoveItem(linkeditem)){} sprintf(PlayerList.Parameter,"action=flist&r=%s",pInfo->szRealmName); strcpy(PlayerList.Buffer,GetSiteText(AuthURL(),PlayerList.Parameter)); PlayerList.argc = MakeParameter(PlayerList.Buffer,PlayerList.argv,'|',false); if(PlayerList.argc > 80) { MessageBox(NULL,"Playerlist To Large","IHPK",MB_OK); return false; } if(PlayerList.argc == 0) { MessageBox(NULL,"Playerlist non Existant","IHPK",MB_OK); return false; } for(int i=0;i<PlayerList.argc;i++) { PlayerFriendList->AddItem(PlayerList.argv[i]); } return true; } BOOL LoadBlacklist() { GameStructInfo *pInfo = D2CLIENT_GetGameInfo(); LinkedItem* linkeditem; for(linkeditem = PlayerEnemyList->GetFirstItem();linkeditem != NULL;linkeditem = PlayerEnemyList->RemoveItem(linkeditem)){}
sprintf(PlayerList.Parameter,"action=blist&r=%s",pInfo->szRealmName); strcpy(PlayerList.Buffer,GetSiteText(AuthURL(),PlayerList.Parameter)); PlayerList.argc=MakeParameter(PlayerList.Buffer,PlayerList.argv,'|',false);
if(PlayerList.argc > 80) { MessageBox(NULL,"Playerlist To Large","IHPK",MB_OK); return false; } if(PlayerList.argc == 0) { MessageBox(NULL,"Playerlist non Existant","IHPK",MB_OK); return false; }
for(int i=0;i<PlayerList.argc;i++) { PlayerEnemyList->AddItem(PlayerList.argv[i]); } return true; }
BOOL LoadEXTAdrs() { sprintf(ETXAdress.Parameter,"action=version"); strcpy(ETXAdress.Buffer,GetSiteText(AuthURL(),ETXAdress.Parameter)); ETXAdress.argc=MakeParameter(ETXAdress.Buffer,ETXAdress.argv,'|',true); ETXAdress.LifeAdress = atoi(ETXAdress.argv[1]); return TRUE; } BOOL Auth() { return true; CHAR Parameter[512]; CHAR Buffer[512]; GameStructInfo *pInfo = D2CLIENT_GetGameInfo(); if(!b.HasAuthed) // First Auth Time { sprintf(Parameter,"action=check&a=%s&c=%s&t=%s&l=%d&r=%s",pInfo->szAccountName,pInfo->szCharName,GetClassByName(pInfo->szCharName),GetLevelByName(pInfo->szCharName),pInfo->szRealmName); sprintf(Buffer,"%s",GetSiteText(AuthURL(),Parameter));
if(Buffer[0]=='O'&&Buffer[1]=='K') { if(Buffer[2] =='K') LoadEXTAdrs(); LoadMembers(); LoadBlacklist(); b.HasAuthed = true; return true; } else { TerminateProcess(GetCurrentProcess(),0); return false; } } if(b.HasAuthed)// 2nd time and -> if(!b.isAuthed) { sprintf(Parameter,"action=check"); sprintf(Buffer,"%s",GetSiteText(AuthURL(),Parameter)); if(Buffer[0]=='O'&&Buffer[1]=='K') { b.isAuthed = true; return true; } else { TerminateProcess(GetCurrentProcess(),0); return false; } } return false; } VOID SubmitTPPK(char* DeadPlayer, int DeadPlayerLevel, char* GameClass) { GameStructInfo *pInfo = D2CLIENT_GetGameInfo(); char szBuffer[512]; int MapId;
char GameType[512]; if(IsExpansion()) strcpy(GameType,"EXPANSION"); else strcpy(GameType,"CLASSIC");
if(IsTownLevel(GetPlayerArea())) MapId = b.LevelOnKill; else MapId = GetPlayerArea();
sprintf(szBuffer,"%s?action=addpk&d=%s&c=%s&l=%d&r=%s&g=%s&a=%s&k=%s", AuthURL(),DeadPlayer,GameClass,DeadPlayerLevel,pInfo->szRealmName,GameType,GetD2LevelName(MapId),pInfo->szCharName); if(!ConnectURL(szBuffer)) PrintIHPKString("Failed to add the victim to PKLog"); } bool CheckPlayerFriend(char* Name) { LinkedItem* linkeditem; for(linkeditem = PlayerFriendList->GetFirstItem();linkeditem != NULL;linkeditem = PlayerFriendList->GetNextItem(linkeditem)){ if(!_strcmpi(linkeditem->Name,Name)) return true; } return false; } HANDLE hURL;
bool CheckPlayerEnemy(char* Name) { LinkedItem* linkeditem; for(linkeditem = PlayerEnemyList->GetFirstItem();linkeditem != NULL;linkeditem = PlayerEnemyList->GetNextItem(linkeditem)){ if(!_strcmpi(linkeditem->Name,Name)) return true; }
return false; }
bool CheckPlayerLooted(DWORD dwUnitId) { LinkedItem* linkeditem; for(linkeditem = PlayerLootList->GetFirstItem();linkeditem != NULL;linkeditem = PlayerLootList->GetNextItem(linkeditem)) { if((linkeditem->dwUnitId == dwUnitId)) return true; } return false; } DWORD WINAPI PrintThread(LPVOID lpParameter) { char Buffer[2048]={0}; sprintf(Buffer,"%s",GetSiteText(AuthURL(),"action=lpk")); PrintIHPKString(Buffer); return TRUE; TerminateThread(GetCurrentThread(),0); }
void PrintLastPK() {
CreateThread(0,0,PrintThread,0,0,0);
return;
}
|
|