bnet patcher on linux menu

User Tag List

Results 1 to 1 of 1
  1. #1
    altar2's Avatar Private
    Reputation
    1
    Join Date
    Aug 2012
    Posts
    1
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    bnet patcher on linux

    Hello,
    i have d3 10057 on ubuntu 12.04 32bit over wine and mooege on virtualbox winxp. both starting fine. communication between them also fine.
    but i am stuck with login because of bnet patcher, so far there is only one patcher for linux (victor perron's) but its for d3 beta (old). when i look at the code i saw only one offset.
    i think new patchers written in c# processing 2 offsets (server ip check and second challenge check).

    i tried to make some modifications on it with zero c knowledge, no luck.

    the offsets that PonyPatcher says (which is works patching on winxp):
    public const Int32 ServerIPCheckOffset = 0x000BC2CC;
    public const Int32 SecondChallengeCheckOffset = 0x000BC289;

    and here is the patcher for linux:
    Code:
    #include <stdio.h>
    #include <sys/ptrace.h>
    
    #define ADDR 0x3C9C5605
    
    int main(int argc, char** argv) {
    
    	long val, patched;
    	int pid;
    
    	if (argc < 2) {
    		printf("Usage : %s <PID>\n", argv[0]);
    		return 1;
    	}
    
    	pid = atoi(argv[1]);
    
    	val = ptrace(PTRACE_ATTACH, pid, 0, 0);
    	if (val != -1) {
    		printf("Successfully attached to process: %d\n",pid);
    		//need to wait a bit, to be sure the process is stopped
            	wait(2);
    		val = ptrace(PTRACE_PEEKDATA, pid, ADDR, 0);
    		if (val != -1) {
    			// The read byte should be 0x75 (JNZ / JumpNotZero)
    			printf("Read byte at %x : %x\n", ADDR, (int)(val & 0xff));
    			// Replace it with 0xEB (JMP, forced jump)
    			patched = (val & 0xffffff00) | 0xeb;
    			ptrace(PTRACE_POKEDATA, pid, ADDR, (int)patched);
    			val = ptrace(PTRACE_PEEKDATA, pid, ADDR, 0);
    			printf("Read patched byte at %x : %x\n", ADDR, (int)(val & 0xff));
    			ptrace(PTRACE_DETACH, pid, 0, 0);
    			return 0;
    		}
    	}
    	perror(NULL);
    	return 1;
    }
    can anyone point me to right direction for fixing it?

    bnet patcher on linux

Similar Threads

  1. Linux
    By Marlo in forum Community Chat
    Replies: 6
    Last Post: 07-27-2007, 06:07 PM
  2. ventrillo client for linux question
    By MetalFan666 in forum Community Chat
    Replies: 0
    Last Post: 06-02-2007, 01:46 AM
  3. linux
    By littledeath in forum Community Chat
    Replies: 4
    Last Post: 05-19-2007, 08:12 AM
  4. Vent+Linux Question
    By zenocide in forum World of Warcraft General
    Replies: 0
    Last Post: 05-14-2007, 10:13 AM
  5. play wow on linux
    By zorelf in forum World of Warcraft Exploits
    Replies: 11
    Last Post: 04-05-2007, 06:32 AM
All times are GMT -5. The time now is 04:45 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search