This is in response to this blog post. First of all, the “NLS” protocol mentioned in the post has basically nothing to do with Battle.net. It is the so-called Grunt protocol. This protocol is a hacky, ad-hoc protocol that most Blizzard games used up until around World of Warcraft’s Wrath of the Lich King expansion. [...]
Archive for the ‘Reverse Engineering’ Category
Grunt Auth Misconceptions
May 26, 2012Minimalistic XNA Library
December 1, 2010This is probably illegal in every possible way. Anyhow… This is a minimalistic version of the Microsoft XNA framework. It contains only the math classes from the original Microsoft.Xna.Framework.dll, and a few helper classes. It is, therefore, completely platform-agnostic, and compiles in Any CPU by default. For Encore (I’ll write a post about that later), [...]
Regarding APB
September 16, 2010I see some people still drop by #apb-dev now and then. For your information; no, we’re no longer touching the game. We haven’t been for a looong time, as we all lost interest pretty early. And seeing how the game is officially dead, it won’t be much fun now, either way. This makes for a [...]
WoW 4.x: Anti-Reversing
August 11, 201018:39:19 | Hasbro: [12:37] I can come up with several reasons why the recent changes all have some “kill private servers” intention behind them 18:39:20 | Hasbro: post that? Update: Added some more stuff. So per request: Battle.net: One might argue that it’s simply a new and innovative serialization platform, but I do believe there’s [...]
Structural Packet Parsing
July 16, 2010Okay, I actually came up with this idea like a week ago, but I’ll post about it anyway. I’ve been thinking lately that I’m tired of the conventional ways of parsing packets, because: Manually indenting the output sucks. Manually typing out an unknown value counter sucks. The code gets way too long. Optimally, you’d automatically [...]
WoW’s SRP Implementation
July 3, 2010This is old news (if it can even be called news), but I figured I’d post about it anyway. While talking to Derex about WoW’s authentication scheme, we stumbled upon several faults in the game’s SRP implementation. First of all, S is calculated incorrectly at the client: S = (B – (k * ((g ^ [...]
WoW 3.3.5: Anti-Debugging
June 24, 2010Check out this paper on SC2′s anti-debugging. It’s pretty much the same thing WoW has incorporated (quite expected). Of course, there’re also the Warden changes. It appears Warden now interfaces with Battle.net.dll – another move one would expect from Blizzard, in light of the design decisions they made for SC2. This one, I don’t know [...]
APB: Beta Over, Reversing Progress
June 20, 2010Update: We all pretty much lost interest, and stopped working on it. The beta ended yesterday. Me and a few others have been actively reversing the game, seeking to emulate it. What we know so far: All Game Client to/from Login Server opcodes (GC2LS/LS2GC). All Game Client to/from World Server opcodes (GC2WS/WS2GC). How to connect [...]
APB: In Beta
June 13, 2010Purchased All Points Bulletin yesterday, so I’ll be playing the “beta” the next couple of days. I’ll most likely post a short review of sorts eventually. Of course, reverse engineering is mandatory.
WoW 4.0.0: Build 12065 Opcodes
May 20, 201012065 was pushed to the test realms today, and I’ve been taking a peek into it (while I should be sleeping, damn it); seemingly, opcode randomization did not happen this time. Yes, this means that 12025 and 12065 share the same opcode IDs. Sample client code: ClientServices__RegisterHandler(0x5D62u, sub_833F30, 0); v0 = sub_5FB4A0(“EnableVoiceChat”); It is completely [...]
