Repository navigation
Write packet 0x68's a6 as a dword at offset 0x0B - #254
Open
ResurrectedTrader wants to merge 1 commit into
Open
ResurrectedTrader wants to merge 1 commit into
ResurrectedTrader wants to merge 1 commit into
Conversation
D2GAME_PACKETS_SendPacket0x68_6FC3CA90 stored its int32 a6 in the
int8 unk0x10, which truncates it and leaves unk0x0B (int32) zero. The
other 0x68 sender in the same file already writes a6 to unk0x0B.
1.10f (D2Game.0x6FC3CA90), Hex-Rays with the packet buffer at ebp-18h:
_DWORD pPacket[2]; // [ebp-18h]
int v21; // [ebp-0Dh] packet + 0x0B
...
LOBYTE(pPacket[0]) = nHeader;
*(_DWORD *)((char *)pPacket + 1) = nUnitGUID;
BYTE1(pPacket[1]) = a4;
v20 = a5; // packet + 0x0A
v21 = a6; // packet + 0x0B
Disassembly (packet at esp+0Ch, a6 at esp+34h):
6FC3CAB6 mov ecx, [esp+34h]
6FC3CACA mov [esp+17h], ecx
Offset 0x10 is never written. 1.14d (Game.exe 0x0053B5F0) is the same:
v21 = a6 at ebp-0Dh, 0x0053B621 mov [ebp+var_10+3], ecx.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
D2GAME_PACKETS_SendPacket0x68_6FC3CA90stored itsint32_t a6in theint8_t unk0x10, which truncates it and leavesunk0x0B(int32_t) zero. The other 0x68 sender inSCmd.cppalready writesa6tounk0x0B.1.10f
D2Game.0x6FC3CA90, Hex-Rays. The packet buffer is atebp-18h, sov21atebp-0Dhis packet offset0x0B:The stores (packet at
esp+0Ch,a6atesp+34h):1.14d
Game.exe0x0053B5F0, Hex-Rays, the same layout (Srcatebp-18h,v21atebp-0Dh):Change
packet68.unk0x0B = a6;. Not version-gated, since 1.10f and 1.14d agree. Also adds the 1.14d address.🤖 Generated with Claude Code