wowdump 0.2.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +56 -118
  3. package/dist/agent.js +5 -8
  4. package/dist/cli.js +497 -0
  5. package/dist/discovery.js +1 -12
  6. package/dist/dry-run.js +0 -2
  7. package/dist/focused-session.js +61 -1329
  8. package/dist/frida-runtime.js +51 -73
  9. package/dist/frida-worker.js +100 -0
  10. package/dist/ghidra.js +769 -0
  11. package/dist/main.js +66 -0
  12. package/dist/processes.js +2 -5
  13. package/dist/reader-broker.js +460 -0
  14. package/dist/reader-client.js +1 -0
  15. package/dist/reader-main.js +67 -0
  16. package/dist/session.js +17 -120
  17. package/dist/toolchain.js +594 -0
  18. package/dist/windows-launcher.js +207 -0
  19. package/dist/windows-reader.js +102 -0
  20. package/dist/wow-analysis.js +211 -236
  21. package/package.json +18 -35
  22. package/skills/wowdump/SKILL.md +15 -0
  23. package/skills/wowdump/commands.md +44 -0
  24. package/dist/analysis-path.js +0 -38
  25. package/dist/analysis-process-log.js +0 -146
  26. package/dist/broker-client.js +0 -411
  27. package/dist/broker-codec.js +0 -148
  28. package/dist/broker-core.js +0 -1045
  29. package/dist/broker-gateway.js +0 -447
  30. package/dist/broker-ledger.js +0 -196
  31. package/dist/broker-main.js +0 -291
  32. package/dist/broker-protocol.js +0 -119
  33. package/dist/broker-runtime.js +0 -1283
  34. package/dist/broker-server.js +0 -466
  35. package/dist/build-bundle-loader.js +0 -183
  36. package/dist/build-bundle.js +0 -11
  37. package/dist/focus-errors.js +0 -63
  38. package/dist/focus-service.js +0 -1855
  39. package/dist/mcp-main.js +0 -51
  40. package/dist/mcp.js +0 -924
  41. package/dist/process-log-lock.js +0 -181
  42. package/dist/runtime-config.js +0 -399
  43. package/resources/builds/retail/12.0.7.68974/build-profile.json +0 -290
  44. package/resources/builds/retail/12.0.7.68974/data-sources.json +0 -1633
  45. package/resources/builds/retail/12.0.7.68974/lua-targets.jsonl +0 -5130
  46. package/resources/builds/retail/12.0.7.68974/manifest.json +0 -63
  47. package/resources/builds/retail/12.0.7.68974/signatures.json +0 -260
@@ -1,63 +0,0 @@
1
- {
2
- "schema": "wowdump.build-bundle.v1",
3
- "buildKey": "retail@12.0.7.68974",
4
- "flavor": "retail",
5
- "version": "12.0.7.68974",
6
- "module": "Wow.exe",
7
- "imageBase": "0x140000000",
8
- "sourceManifest": {
9
- "file": "analysis-artifact-manifest-68974.json",
10
- "generation": 25,
11
- "size": 113738,
12
- "sha256": "7760552022b180c37ecbbeb8cfc968df019cb11eca52bb2599622f1f0481c262"
13
- },
14
- "sources": [
15
- {
16
- "file": "build-profile-68974.json",
17
- "size": 26413,
18
- "sha256": "7a13eee001d64e4ed4e45380a5d318541f6f2b609136346a2adf1b30e98988fb"
19
- },
20
- {
21
- "file": "cpp-data-sources-68974.json",
22
- "size": 75738,
23
- "sha256": "11cd709dd7055e77bc69402f3abbef741f018aa4c9dc0bef1c5ddcf374ee0445"
24
- },
25
- {
26
- "file": "lua-foundation-68974.jsonl",
27
- "size": 11295182,
28
- "sha256": "98caedf099a168b606d51549f3df1b273e4830eb17537c13de01445c2490925f"
29
- }
30
- ],
31
- "outputs": [
32
- {
33
- "file": "build-profile.json",
34
- "size": 9641,
35
- "sha256": "6bb6dcaa2cf655fb7ef58b2eb68cd150ca442d7973254af94d5eebcfb704fc3f"
36
- },
37
- {
38
- "file": "lua-targets.jsonl",
39
- "size": 9597000,
40
- "sha256": "0e7e7aac710245054d2cf9122c5619b2374f7a903f650c080b0f6808f8c0597e"
41
- },
42
- {
43
- "file": "data-sources.json",
44
- "size": 61193,
45
- "sha256": "f97485c018441cf4bf3b8c80367e5d60be8414101228c5fdf572cc6efb479a7e"
46
- },
47
- {
48
- "file": "signatures.json",
49
- "size": 13174,
50
- "sha256": "fdd6298f9047b720709ffd7768125d21325cb783efb6345e8891aa70971a8db8"
51
- }
52
- ],
53
- "counts": {
54
- "luaTargets": 5130,
55
- "dataSources": 9,
56
- "signatures": 17
57
- },
58
- "exclusions": [
59
- "raw traces",
60
- "focused sessions",
61
- "runtime PID/base/address observations"
62
- ]
63
- }
@@ -1,260 +0,0 @@
1
- {
2
- "schema": "wowdump.signatures.v1",
3
- "buildKey": "retail@12.0.7.68974",
4
- "module": "Wow.exe",
5
- "imageBase": "0x140000000",
6
- "signatures": [
7
- {
8
- "name": "C_PlayerInfo.GetName",
9
- "rva": "0x17d8830",
10
- "va": "0x1417d8830",
11
- "entryBytesHex": "488974242055574156488d6c24a04881ec600100004533f6c64590000f57c044",
12
- "entryBytesSha256": "6357ba30d34ac74483c33ed91fa71ef6643cb79187dfeb604513de23394b5f72",
13
- "aob": "48 89 74 24 20 55 57 41 56 48 8d 6c 24 a0 48 81 ec 60 01 00 00 45 33 f6",
14
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
15
- "signatureBytes": 24,
16
- "signatureKind": "live-validated-build-local-entry-prefix",
17
- "liveAddressValidated": true,
18
- "crossBuildPortable": false,
19
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
20
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
21
- },
22
- {
23
- "name": "C_PlayerInfo.GetRace",
24
- "rva": "0x17d9e40",
25
- "va": "0x1417d9e40",
26
- "entryBytesHex": "48895c2418555657488bec4881ec8000000033f648894db0403835043e6d0248",
27
- "entryBytesSha256": "0f3c675a64129cb1a16cd835637621d9ca722a50c86fe11f6052fea54c29715f",
28
- "aob": "48 89 5c 24 18 55 56 57 48 8b ec 48 81 ec 80 00 00 00 33 f6 48 89 4d b0",
29
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
30
- "signatureBytes": 24,
31
- "signatureKind": "live-validated-build-local-entry-prefix",
32
- "liveAddressValidated": true,
33
- "crossBuildPortable": false,
34
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
35
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
36
- },
37
- {
38
- "name": "C_PlayerInfo.GetSex",
39
- "rva": "0x17da500",
40
- "va": "0x1417da500",
41
- "entryBytesHex": "48895c2418555657488bec4881ec8000000033f648894db040383544376d0248",
42
- "entryBytesSha256": "f48b7af0d039da4856df57ae7b66aa8d5988baec89b65981b538757173741a57",
43
- "aob": "48 89 5c 24 18 55 56 57 48 8b ec 48 81 ec 80 00 00 00 33 f6 48 89 4d b0",
44
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
45
- "signatureBytes": 24,
46
- "signatureKind": "live-validated-build-local-entry-prefix",
47
- "liveAddressValidated": true,
48
- "crossBuildPortable": false,
49
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
50
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
51
- },
52
- {
53
- "name": "C_PlayerInfo.IsConnected",
54
- "rva": "0x17dac00",
55
- "va": "0x1417dac00",
56
- "entryBytesHex": "48895c2418488974242055574156488d6c24b94881eca00000004533f648894d",
57
- "entryBytesSha256": "497efb269fdd1f8773b6b836caabb760f2f50a7b80b820a1eaf82c17e59d820e",
58
- "aob": "48 89 5c 24 18 48 89 74 24 20 55 57 41 56 48 8d 6c 24 b9 48 81 ec a0 00",
59
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
60
- "signatureBytes": 24,
61
- "signatureKind": "live-validated-build-local-entry-prefix",
62
- "liveAddressValidated": true,
63
- "crossBuildPortable": false,
64
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
65
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
66
- },
67
- {
68
- "name": "C_PlayerInfo.UnitIsSameServer",
69
- "rva": "0x17db320",
70
- "va": "0x1417db320",
71
- "entryBytesHex": "48895c2418555657488bec4881ec8000000033f648894db040383524296d0248",
72
- "entryBytesSha256": "dec575cd5d376cdb8481cc35bc7ae2948d567f053d4f515f7cb371367bcd45d4",
73
- "aob": "48 89 5c 24 18 55 56 57 48 8b ec 48 81 ec 80 00 00 00 33 f6 48 89 4d b0",
74
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
75
- "signatureBytes": 24,
76
- "signatureKind": "live-validated-build-local-entry-prefix",
77
- "liveAddressValidated": true,
78
- "crossBuildPortable": false,
79
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
80
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
81
- },
82
- {
83
- "name": "CVar hash lookup",
84
- "rva": "0x3cc2930",
85
- "va": "0x143cc2930",
86
- "entryBytesHex": "48895c24084889742410574883ec20488bd9488d0d9f62e601e882fe6ffc4c8b",
87
- "entryBytesSha256": "2bb0e3fcdb7179525619523437e1dc2e9fa82fee5ed7b2f16544a986fb374491",
88
- "aob": "48 89 5c 24 08 48 89 74 24 10 57 48 83 ec 20 48 8b d9 48 8d ?? ?? ?? ??",
89
- "relocationMask": "xxxxxxxxxxxxxxxxxxxx????",
90
- "signatureBytes": 24,
91
- "signatureKind": "masked-entry-prefix",
92
- "crossBuildPortable": false,
93
- "crossBuildPolicy": "scan as a candidate only; revalidate boundary, callees, globals, and invariants",
94
- "sourcePath": "Wow-12.0.7.68974.text.runtime.bin"
95
- },
96
- {
97
- "name": "FrameScript event registry getter",
98
- "rva": "0x66e7d0",
99
- "va": "0x14066e7d0",
100
- "entryBytesHex": "4883ec2865488b042558000000b9a8000000488b008b040139054a4c92077f0c",
101
- "entryBytesSha256": "99a330204c580f649332d11c582eda77be3677b6891ec52162cb36e8f5ed50a3",
102
- "aob": "48 83 ec 28 65 48 8b 04 25 58 00 00 00 b9 a8 00 00 00 48 8b 00 8b 04 01",
103
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
104
- "signatureBytes": 24,
105
- "signatureKind": "masked-entry-prefix",
106
- "crossBuildPortable": false,
107
- "crossBuildPolicy": "scan as a candidate only; revalidate boundary, callees, globals, and invariants",
108
- "sourcePath": "Wow-12.0.7.68974.text.runtime.bin"
109
- },
110
- {
111
- "name": "FrameScript name registry insert/find",
112
- "rva": "0x697930",
113
- "va": "0x140697930",
114
- "entryBytesHex": "48895c240848896c241048897424185741544155415641574883ec3048833dcc",
115
- "entryBytesSha256": "07ea65116efc2c0687500b3de135e3ca2a11fb1c9ab7a62c5154fbb9d43bdaf2",
116
- "aob": "48 89 5c 24 08 48 89 6c 24 10 48 89 74 24 18 57 41 54 41 55 41 56 41 57",
117
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
118
- "signatureBytes": 24,
119
- "signatureKind": "masked-entry-prefix",
120
- "crossBuildPortable": false,
121
- "crossBuildPolicy": "scan as a candidate only; revalidate boundary, callees, globals, and invariants",
122
- "sourcePath": "Wow-12.0.7.68974.text.runtime.bin"
123
- },
124
- {
125
- "name": "global.ClearRaidMarker",
126
- "rva": "0xaf5690",
127
- "va": "0x140af5690",
128
- "entryBytesHex": "405553488bec4883ec7848833d2ee5020500488bd97419803dbf853b03007410",
129
- "entryBytesSha256": "ac6e1b2858e8a3f9a030f6bbf4b4af3c8160f2a5bdf8071283e49a04845b97fe",
130
- "aob": "40 55 53 48 8b ec 48 83 ec 78 48 83 3d 2e e5 02 05 00 48 8b d9 74 19 80",
131
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
132
- "signatureBytes": 24,
133
- "signatureKind": "live-validated-build-local-entry-prefix",
134
- "liveAddressValidated": true,
135
- "crossBuildPortable": false,
136
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
137
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
138
- },
139
- {
140
- "name": "C_ModelInfo.AddActiveModelSceneActor",
141
- "rva": "0xb42860",
142
- "va": "0x140b42860",
143
- "entryBytesHex": "48895c2420555657488bec4883ec5033f648894de0403835e7b33603488bd9c6",
144
- "entryBytesSha256": "33c3c1399bb8f9988ee96b0901ab2452f1d17037738276f103c946a520e2ecd9",
145
- "aob": "48 89 5c 24 20 55 56 57 48 8b ec 48 83 ec 50 33 f6 48 89 4d e0 40 38 35",
146
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
147
- "signatureBytes": 24,
148
- "signatureKind": "live-validated-build-local-entry-prefix",
149
- "liveAddressValidated": true,
150
- "crossBuildPortable": false,
151
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
152
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
153
- },
154
- {
155
- "name": "C_ModelInfo.ClearActiveModelScene",
156
- "rva": "0xb42f50",
157
- "va": "0x140b42f50",
158
- "entryBytesHex": "48895c2420555657488bec4883ec5033f648894de0403835f7ac3603488bd9c6",
159
- "entryBytesSha256": "506f4dfbd96df5784b35f487bd4e9263062ff63914613e0723e567f69bc46205",
160
- "aob": "48 89 5c 24 20 55 56 57 48 8b ec 48 83 ec 50 33 f6 48 89 4d e0 40 38 35",
161
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
162
- "signatureBytes": 24,
163
- "signatureKind": "live-validated-build-local-entry-prefix",
164
- "liveAddressValidated": true,
165
- "crossBuildPortable": false,
166
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
167
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
168
- },
169
- {
170
- "name": "C_ModelInfo.ClearActiveModelSceneActor",
171
- "rva": "0xb435b0",
172
- "va": "0x140b435b0",
173
- "entryBytesHex": "48895c2420555657488bec4883ec5033f648894de040383597a63603488bd9c6",
174
- "entryBytesSha256": "43db5d20b08153c4fab3f686a94eaea69ae1185c2db60c06df21743bb4f9591a",
175
- "aob": "48 89 5c 24 20 55 56 57 48 8b ec 48 83 ec 50 33 f6 48 89 4d e0 40 38 35",
176
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
177
- "signatureBytes": 24,
178
- "signatureKind": "live-validated-build-local-entry-prefix",
179
- "liveAddressValidated": true,
180
- "crossBuildPortable": false,
181
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
182
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
183
- },
184
- {
185
- "name": "C_ModelInfo.GetModelSceneActorDisplayInfoByID",
186
- "rva": "0xb43c10",
187
- "va": "0x140b43c10",
188
- "entryBytesHex": "488974242055574156488d6c24e04881ec2001000033c0c6442450004533f648",
189
- "entryBytesSha256": "85c79f31dd8d59bcc24735ac85419721f424e6c35ccfe6d2a0072f6a1866ee1c",
190
- "aob": "48 89 74 24 20 55 57 41 56 48 8d 6c 24 e0 48 81 ec 20 01 00 00 33 c0 c6",
191
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
192
- "signatureBytes": 24,
193
- "signatureKind": "live-validated-build-local-entry-prefix",
194
- "liveAddressValidated": true,
195
- "crossBuildPortable": false,
196
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
197
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
198
- },
199
- {
200
- "name": "C_ModelInfo.GetModelSceneActorInfoByID",
201
- "rva": "0xb45780",
202
- "va": "0x140b45780",
203
- "entryBytesHex": "488974242055574156488d6c24c04881ec40010000488d059c4e3c04c6442470",
204
- "entryBytesSha256": "e9c2587be3882d955ce427962c740ca06bda457265944f41e286bfff6555a6a1",
205
- "aob": "48 89 74 24 20 55 57 41 56 48 8d 6c 24 c0 48 81 ec 40 01 00 00 48 8d 05",
206
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
207
- "signatureBytes": 24,
208
- "signatureKind": "live-validated-build-local-entry-prefix",
209
- "liveAddressValidated": true,
210
- "crossBuildPortable": false,
211
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
212
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
213
- },
214
- {
215
- "name": "C_AddOns.GetAddOnTitle",
216
- "rva": "0xc0d390",
217
- "va": "0x140c0d390",
218
- "entryBytesHex": "48895c2420555657488bec4883ec5033f648894de0403835b7082a03488bd9c6",
219
- "entryBytesSha256": "94af70ed0a708f7aa04a56183f3ac89d9fa43612c2367968e58d607af6580e26",
220
- "aob": "48 89 5c 24 20 55 56 57 48 8b ec 48 83 ec 50 33 f6 48 89 4d e0 40 38 35",
221
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
222
- "signatureBytes": 24,
223
- "signatureKind": "live-validated-build-local-entry-prefix",
224
- "liveAddressValidated": true,
225
- "crossBuildPortable": false,
226
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
227
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
228
- },
229
- {
230
- "name": "global.GetBuildInfo",
231
- "rva": "0xd15dd0",
232
- "va": "0x140d15dd0",
233
- "entryBytesHex": "488974242055574156488dac24d0feffff4881ec30020000488d0549481f04c6",
234
- "entryBytesSha256": "f0a217dd42fccedab6008117bb3a5c9a72a48dac2e58aa618840d216c542f833",
235
- "aob": "48 89 74 24 20 55 57 41 56 48 8d ac 24 d0 fe ff ff 48 81 ec 30 02 00 00",
236
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
237
- "signatureBytes": 24,
238
- "signatureKind": "live-validated-build-local-entry-prefix",
239
- "liveAddressValidated": true,
240
- "crossBuildPortable": false,
241
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
242
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
243
- },
244
- {
245
- "name": "global.GetRealmName",
246
- "rva": "0xf97f00",
247
- "va": "0x140f97f00",
248
- "entryBytesHex": "488bc44889581848897020574883ec4033f6488948d88970e8488bd9668970ed",
249
- "entryBytesSha256": "101463966b516c006a82334498b230a778572654d42397702c637273614d1ec4",
250
- "aob": "48 8b c4 48 89 58 18 48 89 70 20 57 48 83 ec 40 33 f6 48 89 48 d8 89 70",
251
- "relocationMask": "xxxxxxxxxxxxxxxxxxxxxxxx",
252
- "signatureBytes": 24,
253
- "signatureKind": "live-validated-build-local-entry-prefix",
254
- "liveAddressValidated": true,
255
- "crossBuildPortable": false,
256
- "crossBuildPolicy": "candidate only; never reuse this RVA without relocation and validation",
257
- "sourcePath": "lua-api-live-verification-68974-wrapper-inclusive.json"
258
- }
259
- ]
260
- }