menu button
    • About [vL]
    • Visitor Guide
    • Clan History
    • Clan Rules
    • Battle.net Bot Development Forum
    • Documents
    • BnetDocs
    • Member List
    • Battle.net Bots
    • Affiliates
      • DarkBlizz
Hello, Guest | Sign In or Register
Forums
Help
Search
Messages
Profile
Members
Moderate
Unread Posts
Sign In
banner image
Forum Rage - lol
 by Sixen June 14, 2012, 04:58 PM
Tell us now!
 by disco June 12, 2012, 09:27 AM
What is W3GS packet flow for custom games?
 by RealityRipple June 09, 2012, 05:59 PM
Diablo 1 in Private Channels
 by RealityRipple June 03, 2012, 12:17 AM
Battletag List
 by Intangir May 29, 2012, 02:17 AM
Battle.net 1.0 Server Updates
 by Sixen May 25, 2012, 03:55 PM
Somebody on the Internet was wrong!
 by iago May 25, 2012, 10:29 AM
::ALL RECENT POSTS::
  • Valhalla Legends Archive »
  • Programming »
  • Battle.net Bot Development (Moderators: Spht, Arta, Kp, MyndFyre, iago) »
  • [C++] Dynamic SCBW Verbyte Retrieval
« previous next »
  • Print
Pages: 1 [2] 3

Author Topic: [C++] Dynamic SCBW Verbyte Retrieval  (Read 2747 times)

Offline Hdx

  • Hearthman
  • ****
  • Posts: 1233
  • <3 0xFE :')
    • View Profile
    • WWW
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #15 on: October 16, 2007, 10:56 PM »
Not necessarily.
It isn't really a 'pattern'. Its more so how they do there code.
They could be doing something like:
SetConnectionInformation(something, something, verbyte, something, something)
They could just decide to change it to SetVerbyte(verbyte) instead.
Or, they could use different compiler optimizations resulting in a different pattern to search for. (EXA: how theres 2 different 'types' of lockdown dlls)

BUT, thats not the reason I want to have the hashes. I want them merely for shits an giggles.
~Hdx
« Last Edit: October 16, 2007, 10:58 PM by Hdx »
Logged

Proud host of the JBLS server www.JBLS.org.
JBLS.org Status:
JBLS/BNLS Server Status

Offline devcode

  • Warrior
  • **
  • Posts: 106
    • View Profile
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #16 on: October 16, 2007, 11:27 PM »
Quote from: Hdx on October 16, 2007, 10:56 PM
Not necessarily.
It isn't really a 'pattern'. Its more so how they do there code.
They could be doing something like:
SetConnectionInformation(something, something, verbyte, something, something)
They could just decide to change it to SetVerbyte(verbyte) instead.
Or, they could use different compiler optimizations resulting in a different pattern to search for. (EXA: how theres 2 different 'types' of lockdown dlls)

BUT, thats not the reason I want to have the hashes. I want them merely for shits an giggles.
~Hdx

Well, we know for a fact that there hasn't been any code changes in this section from atleast *version 1.08 for SC, and although pattern matching is obviously not a 100% fool proof method, it is reliable enough in this case.
« Last Edit: October 16, 2007, 11:30 PM by devcode »
Logged

Offline Don Cullen

  • Marshall
  • ***
  • Posts: 569
  • Constantly Moving
    • View Profile
    • WWW
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #17 on: October 17, 2007, 12:33 AM »
DevCode was so kind as to upload the old hashes, I've made them available at this location:

http://www.bnetdocs.org/archives/

Just navigate to the oldhashes directory, and then choose the version. All files have been scanned and verified clean.

I still need the old hashes from the oldest to the most current for:

w2bn, d2, d2lod, wc3, wc3 tft

if anyone can donate those, it'd be appreciated.

no wow hashes please, as wow is a paid subscription service and i'd rather not annoy blizzard too much.

As for a DCMA, if I get hit with one, well, I'll deal with it when it happens.
« Last Edit: October 17, 2007, 12:36 AM by Don Cullen »
Logged
Regards,
Don
-------

Don't wonder why people suddenly are hostile when you treat them the way they shouldn't be- it's called 'Mutual Respect'.

Offline MysT_DooM

  • [na]
  • Warrior
  • **
  • Posts: 425
  • Fallen Arms
    • View Profile
    • WWW
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #18 on: October 17, 2007, 12:45 PM »
you could find some old bot that used hashs and see if those hashs are old enuff for you
Logged


vb6, something about that combination of numbers and letters is sexy

Offline Yegg

  • Hearthman
  • ****
  • Posts: 1437
    • View Profile
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #19 on: October 17, 2007, 01:12 PM »
Quote from: MysT_DooM on October 17, 2007, 12:45 PM
you could find some old bot that used hashs and see if those hashs are old enuff for you

I've got a copy of Warcraft II that is from 1999 or possibly 2000 if that is of any interest to anyone.
Logged

Offline Don Cullen

  • Marshall
  • ***
  • Posts: 569
  • Constantly Moving
    • View Profile
    • WWW
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #20 on: October 17, 2007, 01:24 PM »
Quote from: Yegg on October 17, 2007, 01:12 PM
Quote from: MysT_DooM on October 17, 2007, 12:45 PM
you could find some old bot that used hashs and see if those hashs are old enuff for you

I've got a copy of Warcraft II that is from 1999 or possibly 2000 if that is of any interest to anyone.

What version
Logged
Regards,
Don
-------

Don't wonder why people suddenly are hostile when you treat them the way they shouldn't be- it's called 'Mutual Respect'.

Offline l2k-Shadow

  • Marshall
  • ***
  • Posts: 914
  • I'm so not a fucking llama.
    • View Profile
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #21 on: November 18, 2007, 05:05 PM »
Hex$() returns a string.
Logged
Quote from: replaced on November 04, 2006, 11:54 AM
I dunno wat it means, someone tell me whats ix86 and pmac?
Can someone send me a working bot source (with bnls support) to my email?  Then help me copy and paste it to my bot? ;D
Já jsem byl určenej abych tady žil,
Dával si ovar, křen a k tomu pivo pil.
Tam by ses povídaj jak prase v žitě měl,
Já nechci před nikym sednout si na prdel.

Já nejsem z USA, já nejsem z USA, já vážně nejsem z USA... a snad se proto na mě nezloběj.

Barabajagal

  • Guest
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #22 on: November 18, 2007, 05:07 PM »
Ya... I was doing Debug.Print for it and forgot to remove the Hex$() bit. Also, I found where D2 stores the verbyte (BNClient.dll), so I'll add that in a few.
Added D2 and War3 as well.
« Last Edit: November 18, 2007, 08:00 PM by Andy »
Logged

Offline Chriso

  • Warrior
  • **
  • Posts: 143
  • Java/C#/VB6
    • View Profile
    • WWW
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #23 on: November 19, 2007, 01:16 AM »
Andy, you forgot to include the values for FindStr it will just error... :P
« Last Edit: November 19, 2007, 01:23 AM by Chriso.de »
Logged

BnetDev.Net
Current projects:
MirageBot 7.0, RogueBot, ReaperFlood2007

Barabajagal

  • Guest
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #24 on: November 19, 2007, 01:22 AM »
No, KP deleted them.
Logged

Offline Hdx

  • Hearthman
  • ****
  • Posts: 1233
  • <3 0xFE :')
    • View Profile
    • WWW
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #25 on: November 19, 2007, 01:50 AM »
Anyone using the default skin:
https://addons.mozilla.org/en-US/firefox/addon/2108
Code: [Select]
@namespace url(http://www.w3.org/1999/xhtml);

@-moz-document domain("forum.valhallalegends.com") {
.code{
  overflow: auto;
  height: 200px;
}
}
~Hdx
Logged

Proud host of the JBLS server www.JBLS.org.
JBLS.org Status:
JBLS/BNLS Server Status

Barabajagal

  • Guest
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #26 on: November 19, 2007, 11:37 PM »
Why the hell was my entire post deleted?

Edit: Whatever. I'll just post the patterns and you guys can write your own code:
(XX represents a "wildcard" byte)

DRTL/DSHR:
Read from - Diablo.exe / Diablo_s.exe
Code: [Select]
C7 85 64 FF FF FF XX XX XX XX C7 85 68 FF FF FF XX XX XX XX(First DWORD of X's is LTRD or RHSD. Second DWORD of X's is Version Byte.)

STAR/SEXP/W2BN:
Read from - Starcraft.exe / Warcraft II BNE.exe
Code: [Select]
C7 46 10 XX XX XX XX C7 46 18 XX XX XX XX C7 46(First DWORD of X's is Version Byte. Second DWORD of X's is currently 08 00 00 00.)

JSTR:
Read from - StarcraftJ.exe
Code: [Select]
8B 4D F4 C7 41 0C XX XX XX XX 8B 55 F4 C7 42 10 XX XX XX XX(First DWORD of X's is RTSJ. Second DWORD of X's is Version Byte.)

SSHR:
Read from - Starcraft.exe
Code: [Select]
C7 46 0C XX XX XX XX C7 46 10 XX XX XX XX(First DWORD of X's is RHSS. Second DWORD of X's is Version Byte.)

D2DV/D2XP:
Read from - Bnclient.dll
Code: [Select]
56 44 32 44 89 44 24 58 6A 03 8D 44 24 64 50 C7 44 24 64 XX XX XX XX(First 4 bytes are VD2D (in both D2DV and D2XP). DWORD of X's is Version Byte.)

WAR3/W3XP:
Read from - game.dll
Code: [Select]
C7 85 4C FD FF FF XX XX XX XX 89 8D 50 FD FF FF(DWORD of X's is Version Byte.)
« Last Edit: November 20, 2007, 12:43 AM by Andy »
Logged

Offline FrOzeN

  • Warrior
  • **
  • Posts: 444
    • View Profile
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #27 on: November 20, 2007, 04:15 AM »
SC VerByte = Hex(179 + 2 x Version_Number)

Wouldn't the simple algorithm above be just as reliable as this pattern-finding code you guys have come up with?
Logged
~ FrOzeN

Barabajagal

  • Guest
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #28 on: November 20, 2007, 09:46 AM »
Except that the versioning system in SC just changed from letters to numbers, and revision number increases had no effect on the verbyte. The patterns above are more than patterns, they're searching for the code that compiles 0x50, which isn't likely to change.
Logged

Offline FrOzeN

  • Warrior
  • **
  • Posts: 444
    • View Profile
Re: [C++] Dynamic SCBW Verbyte Retrieval
« Reply #29 on: November 20, 2007, 11:27 AM »
Quote from: Andy on November 20, 2007, 09:46 AM
Except that the versioning system in SC just changed from letters to numbers, and revision number increases had no effect on the verbyte.
In my post, Version_Number is ment to refer to the Major change. Hence it ignores the revision letters/numbers and the change doesn't effect it's correct output.
Logged
~ FrOzeN

  • Print
Pages: 1 [2] 3
« previous next »
 

  • SMF 2.0.18 | SMF © 2021, Simple Machines