BonziBuddy Leaked Source Code by NixButterPlay
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

447 lines
14 KiB

  1. VERSION 1.0 CLASS
  2. BEGIN
  3. MultiUse = -1 'True
  4. Persistable = 0 'NotPersistable
  5. DataBindingBehavior = 0 'vbNone
  6. DataSourceBehavior = 0 'vbNone
  7. MTSTransactionMode = 0 'NotAnMTSObject
  8. END
  9. Attribute VB_Name = "clsBonziEventQueueItem"
  10. Attribute VB_GlobalNameSpace = False
  11. Attribute VB_Creatable = True
  12. Attribute VB_PredeclaredId = False
  13. Attribute VB_Exposed = False
  14. Public Property Get BBEvent(Index As Integer) '653740
  15. loc_00653740: push ebp
  16. loc_00653741: mov ebp, esp
  17. loc_00653743: sub esp, 0000000Ch
  18. loc_00653746: push 00412856h ; __vbaExceptHandler
  19. loc_0065374B: mov eax, fs:[00000000h]
  20. loc_00653751: push eax
  21. loc_00653752: mov fs:[00000000h], esp
  22. loc_00653759: sub esp, 0000000Ch
  23. loc_0065375C: push ebx
  24. loc_0065375D: push esi
  25. loc_0065375E: push edi
  26. loc_0065375F: mov var_C, esp
  27. loc_00653762: mov var_8, 00406D68h
  28. loc_00653769: xor edi, edi
  29. loc_0065376B: mov var_4, edi
  30. loc_0065376E: mov esi, Me
  31. loc_00653771: push esi
  32. loc_00653772: mov eax, [esi]
  33. loc_00653774: call [eax+00000004h]
  34. loc_00653777: mov ecx, Index
  35. loc_0065377A: lea eax, var_18
  36. loc_0065377D: mov var_18, edi
  37. loc_00653780: mov [ecx], edi
  38. loc_00653782: mov edx, [esi+00000034h]
  39. loc_00653785: push edx
  40. loc_00653786: push eax
  41. loc_00653787: call [00401130h] ; __vbaObjSetAddref
  42. loc_0065378D: push 0065379Fh
  43. loc_00653792: jmp 0065379Eh
  44. loc_00653794: lea ecx, var_18
  45. loc_00653797: call [0040142Ch] ; __vbaFreeObj
  46. loc_0065379D: ret
  47. loc_0065379E: ret
  48. loc_0065379F: mov eax, Me
  49. loc_006537A2: push eax
  50. loc_006537A3: mov ecx, [eax]
  51. loc_006537A5: call [ecx+00000008h]
  52. loc_006537A8: mov edx, Index
  53. loc_006537AB: mov eax, var_18
  54. loc_006537AE: mov [edx], eax
  55. loc_006537B0: mov eax, var_4
  56. loc_006537B3: mov ecx, var_14
  57. loc_006537B6: pop edi
  58. loc_006537B7: pop esi
  59. loc_006537B8: mov fs:[00000000h], ecx
  60. loc_006537BF: pop ebx
  61. loc_006537C0: mov esp, ebp
  62. loc_006537C2: pop ebp
  63. loc_006537C3: retn 0008h
  64. End Sub
  65. Public Property Set BBEvent(NewBBEvent) '6537D0
  66. loc_006537D0: push ebp
  67. loc_006537D1: mov ebp, esp
  68. loc_006537D3: sub esp, 0000000Ch
  69. loc_006537D6: push 00412856h ; __vbaExceptHandler
  70. loc_006537DB: mov eax, fs:[00000000h]
  71. loc_006537E1: push eax
  72. loc_006537E2: mov fs:[00000000h], esp
  73. loc_006537E9: sub esp, 00000008h
  74. loc_006537EC: push ebx
  75. loc_006537ED: push esi
  76. loc_006537EE: push edi
  77. loc_006537EF: mov var_C, esp
  78. loc_006537F2: mov var_8, 00406D78h
  79. loc_006537F9: mov var_4, 00000000h
  80. loc_00653800: mov esi, Me
  81. loc_00653803: push esi
  82. loc_00653804: mov eax, [esi]
  83. loc_00653806: call [eax+00000004h]
  84. loc_00653809: mov ecx, NewBBEvent
  85. loc_0065380C: add esi, 00000034h
  86. loc_0065380F: mov edx, [ecx]
  87. loc_00653811: push edx
  88. loc_00653812: push esi
  89. loc_00653813: call [00401130h] ; __vbaObjSetAddref
  90. loc_00653819: mov eax, Me
  91. loc_0065381C: push eax
  92. loc_0065381D: mov ecx, [eax]
  93. loc_0065381F: call [ecx+00000008h]
  94. loc_00653822: mov eax, var_4
  95. loc_00653825: mov ecx, var_14
  96. loc_00653828: pop edi
  97. loc_00653829: pop esi
  98. loc_0065382A: mov fs:[00000000h], ecx
  99. loc_00653831: pop ebx
  100. loc_00653832: mov esp, ebp
  101. loc_00653834: pop ebp
  102. loc_00653835: retn 0008h
  103. End Sub
  104. Public Property Get MutuallyExclusive(arg_C) '653840
  105. loc_00653840: push ebp
  106. loc_00653841: mov ebp, esp
  107. loc_00653843: sub esp, 0000000Ch
  108. loc_00653846: push 00412856h ; __vbaExceptHandler
  109. loc_0065384B: mov eax, fs:[00000000h]
  110. loc_00653851: push eax
  111. loc_00653852: mov fs:[00000000h], esp
  112. loc_00653859: sub esp, 0000000Ch
  113. loc_0065385C: push ebx
  114. loc_0065385D: push esi
  115. loc_0065385E: push edi
  116. loc_0065385F: mov var_C, esp
  117. loc_00653862: mov var_8, 00406D80h
  118. loc_00653869: xor edi, edi
  119. loc_0065386B: mov var_4, edi
  120. loc_0065386E: mov esi, Me
  121. loc_00653871: push esi
  122. loc_00653872: mov eax, [esi]
  123. loc_00653874: call [eax+00000004h]
  124. loc_00653877: mov cx, [esi+00000038h]
  125. loc_0065387B: mov var_18, edi
  126. loc_0065387E: mov var_18, ecx
  127. loc_00653881: mov eax, Me
  128. loc_00653884: push eax
  129. loc_00653885: mov edx, [eax]
  130. loc_00653887: call [edx+00000008h]
  131. loc_0065388A: mov eax, arg_C
  132. loc_0065388D: mov cx, var_18
  133. loc_00653891: mov [eax], cx
  134. loc_00653894: mov eax, var_4
  135. loc_00653897: mov ecx, var_14
  136. loc_0065389A: pop edi
  137. loc_0065389B: pop esi
  138. loc_0065389C: mov fs:[00000000h], ecx
  139. loc_006538A3: pop ebx
  140. loc_006538A4: mov esp, ebp
  141. loc_006538A6: pop ebp
  142. loc_006538A7: retn 0008h
  143. End Sub
  144. Public Property Let MutuallyExclusive(NewMutuallyExclusive) '6538B0
  145. loc_006538B0: push ebp
  146. loc_006538B1: mov ebp, esp
  147. loc_006538B3: sub esp, 0000000Ch
  148. loc_006538B6: push 00412856h ; __vbaExceptHandler
  149. loc_006538BB: mov eax, fs:[00000000h]
  150. loc_006538C1: push eax
  151. loc_006538C2: mov fs:[00000000h], esp
  152. loc_006538C9: sub esp, 00000008h
  153. loc_006538CC: push ebx
  154. loc_006538CD: push esi
  155. loc_006538CE: push edi
  156. loc_006538CF: mov var_C, esp
  157. loc_006538D2: mov var_8, 00406D88h
  158. loc_006538D9: mov var_4, 00000000h
  159. loc_006538E0: mov esi, Me
  160. loc_006538E3: push esi
  161. loc_006538E4: mov eax, [esi]
  162. loc_006538E6: call [eax+00000004h]
  163. loc_006538E9: mov ecx, NewMutuallyExclusive
  164. loc_006538EC: mov dx, [ecx]
  165. loc_006538EF: mov [esi+00000038h], dx
  166. loc_006538F3: mov eax, Me
  167. loc_006538F6: push eax
  168. loc_006538F7: mov ecx, [eax]
  169. loc_006538F9: call [ecx+00000008h]
  170. loc_006538FC: mov eax, var_4
  171. loc_006538FF: mov ecx, var_14
  172. loc_00653902: pop edi
  173. loc_00653903: pop esi
  174. loc_00653904: mov fs:[00000000h], ecx
  175. loc_0065390B: pop ebx
  176. loc_0065390C: mov esp, ebp
  177. loc_0065390E: pop ebp
  178. loc_0065390F: retn 0008h
  179. End Sub
  180. Public Property Get Status(arg_C) '653920
  181. loc_00653920: push ebp
  182. loc_00653921: mov ebp, esp
  183. loc_00653923: sub esp, 0000000Ch
  184. loc_00653926: push 00412856h ; __vbaExceptHandler
  185. loc_0065392B: mov eax, fs:[00000000h]
  186. loc_00653931: push eax
  187. loc_00653932: mov fs:[00000000h], esp
  188. loc_00653939: sub esp, 0000000Ch
  189. loc_0065393C: push ebx
  190. loc_0065393D: push esi
  191. loc_0065393E: push edi
  192. loc_0065393F: mov var_C, esp
  193. loc_00653942: mov var_8, 00406D90h
  194. loc_00653949: xor edi, edi
  195. loc_0065394B: mov var_4, edi
  196. loc_0065394E: mov esi, Me
  197. loc_00653951: push esi
  198. loc_00653952: mov eax, [esi]
  199. loc_00653954: call [eax+00000004h]
  200. loc_00653957: mov ecx, [esi+0000003Ch]
  201. loc_0065395A: mov var_18, edi
  202. loc_0065395D: mov var_18, ecx
  203. loc_00653960: mov eax, Me
  204. loc_00653963: push eax
  205. loc_00653964: mov edx, [eax]
  206. loc_00653966: call [edx+00000008h]
  207. loc_00653969: mov eax, arg_C
  208. loc_0065396C: mov ecx, var_18
  209. loc_0065396F: mov [eax], ecx
  210. loc_00653971: mov eax, var_4
  211. loc_00653974: mov ecx, var_14
  212. loc_00653977: pop edi
  213. loc_00653978: pop esi
  214. loc_00653979: mov fs:[00000000h], ecx
  215. loc_00653980: pop ebx
  216. loc_00653981: mov esp, ebp
  217. loc_00653983: pop ebp
  218. loc_00653984: retn 0008h
  219. End Sub
  220. Public Property Let Status(NewStatus) '653990
  221. loc_00653990: push ebp
  222. loc_00653991: mov ebp, esp
  223. loc_00653993: sub esp, 0000000Ch
  224. loc_00653996: push 00412856h ; __vbaExceptHandler
  225. loc_0065399B: mov eax, fs:[00000000h]
  226. loc_006539A1: push eax
  227. loc_006539A2: mov fs:[00000000h], esp
  228. loc_006539A9: sub esp, 00000008h
  229. loc_006539AC: push ebx
  230. loc_006539AD: push esi
  231. loc_006539AE: push edi
  232. loc_006539AF: mov var_C, esp
  233. loc_006539B2: mov var_8, 00406D98h
  234. loc_006539B9: mov var_4, 00000000h
  235. loc_006539C0: mov esi, Me
  236. loc_006539C3: push esi
  237. loc_006539C4: mov eax, [esi]
  238. loc_006539C6: call [eax+00000004h]
  239. loc_006539C9: mov ecx, NewStatus
  240. loc_006539CC: mov edx, [ecx]
  241. loc_006539CE: mov [esi+0000003Ch], edx
  242. loc_006539D1: mov eax, Me
  243. loc_006539D4: push eax
  244. loc_006539D5: mov ecx, [eax]
  245. loc_006539D7: call [ecx+00000008h]
  246. loc_006539DA: mov eax, var_4
  247. loc_006539DD: mov ecx, var_14
  248. loc_006539E0: pop edi
  249. loc_006539E1: pop esi
  250. loc_006539E2: mov fs:[00000000h], ecx
  251. loc_006539E9: pop ebx
  252. loc_006539EA: mov esp, ebp
  253. loc_006539EC: pop ebp
  254. loc_006539ED: retn 0008h
  255. End Sub
  256. Public Property Get EventType(arg_C) '6539F0
  257. loc_006539F0: push ebp
  258. loc_006539F1: mov ebp, esp
  259. loc_006539F3: sub esp, 0000000Ch
  260. loc_006539F6: push 00412856h ; __vbaExceptHandler
  261. loc_006539FB: mov eax, fs:[00000000h]
  262. loc_00653A01: push eax
  263. loc_00653A02: mov fs:[00000000h], esp
  264. loc_00653A09: sub esp, 0000000Ch
  265. loc_00653A0C: push ebx
  266. loc_00653A0D: push esi
  267. loc_00653A0E: push edi
  268. loc_00653A0F: mov var_C, esp
  269. loc_00653A12: mov var_8, 00406DA0h
  270. loc_00653A19: xor edi, edi
  271. loc_00653A1B: mov var_4, edi
  272. loc_00653A1E: mov esi, Me
  273. loc_00653A21: push esi
  274. loc_00653A22: mov eax, [esi]
  275. loc_00653A24: call [eax+00000004h]
  276. loc_00653A27: mov ecx, [esi+00000040h]
  277. loc_00653A2A: mov var_18, edi
  278. loc_00653A2D: mov var_18, ecx
  279. loc_00653A30: mov eax, Me
  280. loc_00653A33: push eax
  281. loc_00653A34: mov edx, [eax]
  282. loc_00653A36: call [edx+00000008h]
  283. loc_00653A39: mov eax, arg_C
  284. loc_00653A3C: mov ecx, var_18
  285. loc_00653A3F: mov [eax], ecx
  286. loc_00653A41: mov eax, var_4
  287. loc_00653A44: mov ecx, var_14
  288. loc_00653A47: pop edi
  289. loc_00653A48: pop esi
  290. loc_00653A49: mov fs:[00000000h], ecx
  291. loc_00653A50: pop ebx
  292. loc_00653A51: mov esp, ebp
  293. loc_00653A53: pop ebp
  294. loc_00653A54: retn 0008h
  295. End Sub
  296. Public Property Let EventType(NewType) '653A60
  297. loc_00653A60: push ebp
  298. loc_00653A61: mov ebp, esp
  299. loc_00653A63: sub esp, 0000000Ch
  300. loc_00653A66: push 00412856h ; __vbaExceptHandler
  301. loc_00653A6B: mov eax, fs:[00000000h]
  302. loc_00653A71: push eax
  303. loc_00653A72: mov fs:[00000000h], esp
  304. loc_00653A79: sub esp, 00000008h
  305. loc_00653A7C: push ebx
  306. loc_00653A7D: push esi
  307. loc_00653A7E: push edi
  308. loc_00653A7F: mov var_C, esp
  309. loc_00653A82: mov var_8, 00406DA8h
  310. loc_00653A89: mov var_4, 00000000h
  311. loc_00653A90: mov esi, Me
  312. loc_00653A93: push esi
  313. loc_00653A94: mov eax, [esi]
  314. loc_00653A96: call [eax+00000004h]
  315. loc_00653A99: mov ecx, NewType
  316. loc_00653A9C: mov edx, [ecx]
  317. loc_00653A9E: mov [esi+00000040h], edx
  318. loc_00653AA1: mov eax, Me
  319. loc_00653AA4: push eax
  320. loc_00653AA5: mov ecx, [eax]
  321. loc_00653AA7: call [ecx+00000008h]
  322. loc_00653AAA: mov eax, var_4
  323. loc_00653AAD: mov ecx, var_14
  324. loc_00653AB0: pop edi
  325. loc_00653AB1: pop esi
  326. loc_00653AB2: mov fs:[00000000h], ecx
  327. loc_00653AB9: pop ebx
  328. loc_00653ABA: mov esp, ebp
  329. loc_00653ABC: pop ebp
  330. loc_00653ABD: retn 0008h
  331. End Sub
  332. Public Sub RunEvent() '653AC0
  333. loc_00653AC0: push ebp
  334. loc_00653AC1: mov ebp, esp
  335. loc_00653AC3: sub esp, 0000000Ch
  336. loc_00653AC6: push 00412856h ; __vbaExceptHandler
  337. loc_00653ACB: mov eax, fs:[00000000h]
  338. loc_00653AD1: push eax
  339. loc_00653AD2: mov fs:[00000000h], esp
  340. loc_00653AD9: sub esp, 00000008h
  341. loc_00653ADC: push ebx
  342. loc_00653ADD: push esi
  343. loc_00653ADE: push edi
  344. loc_00653ADF: mov var_C, esp
  345. loc_00653AE2: mov var_8, 00406DB0h
  346. loc_00653AE9: mov var_4, 00000000h
  347. loc_00653AF0: mov esi, Me
  348. loc_00653AF3: push esi
  349. loc_00653AF4: mov eax, [esi]
  350. loc_00653AF6: call [eax+00000004h]
  351. loc_00653AF9: mov ecx, [esi+00000034h]
  352. loc_00653AFC: push 00000000h
  353. loc_00653AFE: push 00452534h ; "RunEvent"
  354. loc_00653B03: push ecx
  355. loc_00653B04: call [00401360h] ; __vbaLateMemCall
  356. loc_00653B0A: add esp, 0000000Ch
  357. loc_00653B0D: mov eax, Me
  358. loc_00653B10: push eax
  359. loc_00653B11: mov edx, [eax]
  360. loc_00653B13: call [edx+00000008h]
  361. loc_00653B16: mov eax, var_4
  362. loc_00653B19: mov ecx, var_14
  363. loc_00653B1C: pop edi
  364. loc_00653B1D: pop esi
  365. loc_00653B1E: mov fs:[00000000h], ecx
  366. loc_00653B25: pop ebx
  367. loc_00653B26: mov esp, ebp
  368. loc_00653B28: pop ebp
  369. loc_00653B29: retn 0004h
  370. End Sub
  371. Private Sub Proc_31_9_653B30
  372. loc_00653B30: push ebp
  373. loc_00653B31: mov ebp, esp
  374. loc_00653B33: sub esp, 0000000Ch
  375. loc_00653B36: push 00412856h ; __vbaExceptHandler
  376. loc_00653B3B: mov eax, fs:[00000000h]
  377. loc_00653B41: push eax
  378. loc_00653B42: mov fs:[00000000h], esp
  379. loc_00653B49: sub esp, 00000010h
  380. loc_00653B4C: push ebx
  381. loc_00653B4D: push esi
  382. loc_00653B4E: push edi
  383. loc_00653B4F: mov var_C, esp
  384. loc_00653B52: mov var_8, 00406DB8h
  385. loc_00653B59: mov esi, Me
  386. loc_00653B5C: mov eax, esi
  387. loc_00653B5E: and eax, 00000001h
  388. loc_00653B61: mov var_4, eax
  389. loc_00653B64: and esi, FFFFFFFEh
  390. loc_00653B67: push esi
  391. loc_00653B68: mov Me, esi
  392. loc_00653B6B: mov ecx, [esi]
  393. loc_00653B6D: call [ecx+00000004h]
  394. loc_00653B70: mov edx, [esi]
  395. loc_00653B72: lea eax, var_18
  396. loc_00653B75: xor edi, edi
  397. loc_00653B77: push eax
  398. loc_00653B78: mov var_18, edi
  399. loc_00653B7B: push esi
  400. loc_00653B7C: mov var_18, edi
  401. loc_00653B7F: call [edx+00000030h]
  402. loc_00653B82: cmp eax, edi
  403. loc_00653B84: jge 00653B95h
  404. loc_00653B86: push 00000030h
  405. loc_00653B88: push 004523F0h ; "�" & Chr(37) & "�R���@�" & Chr(13) & "�X�Y�'BBEvent"
  406. loc_00653B8D: push esi
  407. loc_00653B8E: push eax
  408. loc_00653B8F: call [004010CCh] ; __vbaHresultCheckObj
  409. loc_00653B95: mov ecx, [esi]
  410. loc_00653B97: lea edx, var_18
  411. loc_00653B9A: push edx
  412. loc_00653B9B: push esi
  413. loc_00653B9C: mov var_18, edi
  414. loc_00653B9F: call [ecx+00000038h]
  415. loc_00653BA2: cmp eax, edi
  416. loc_00653BA4: jge 00653BB5h
  417. loc_00653BA6: push 00000038h
  418. loc_00653BA8: push 004523F0h ; "�" & Chr(37) & "�R���@�" & Chr(13) & "�X�Y�'BBEvent"
  419. loc_00653BAD: push esi
  420. loc_00653BAE: push eax
  421. loc_00653BAF: call [004010CCh] ; __vbaHresultCheckObj
  422. loc_00653BB5: mov var_4, edi
  423. loc_00653BB8: mov eax, Me
  424. loc_00653BBB: push eax
  425. loc_00653BBC: mov ecx, [eax]
  426. loc_00653BBE: call [ecx+00000008h]
  427. loc_00653BC1: mov eax, var_4
  428. loc_00653BC4: mov ecx, var_14
  429. loc_00653BC7: pop edi
  430. loc_00653BC8: pop esi
  431. loc_00653BC9: mov fs:[00000000h], ecx
  432. loc_00653BD0: pop ebx
  433. loc_00653BD1: mov esp, ebp
  434. loc_00653BD3: pop ebp
  435. loc_00653BD4: retn 0004h
  436. End Sub