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.

945 lines
30 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 = "clsBBPlayer"
  10. Attribute VB_GlobalNameSpace = True
  11. Attribute VB_Creatable = True
  12. Attribute VB_PredeclaredId = False
  13. Attribute VB_Exposed = True
  14. Public Property Let BBPlayerIsPlaying(blnNewBBPlayerIsPlaying) '702590
  15. loc_00702590: push ebp
  16. loc_00702591: mov ebp, esp
  17. loc_00702593: sub esp, 0000000Ch
  18. loc_00702596: push 00412856h ; __vbaExceptHandler
  19. loc_0070259B: mov eax, fs:[00000000h]
  20. loc_007025A1: push eax
  21. loc_007025A2: mov fs:[00000000h], esp
  22. loc_007025A9: sub esp, 00000008h
  23. loc_007025AC: push ebx
  24. loc_007025AD: push esi
  25. loc_007025AE: push edi
  26. loc_007025AF: mov var_C, esp
  27. loc_007025B2: mov var_8, 00410348h
  28. loc_007025B9: mov var_4, 00000000h
  29. loc_007025C0: mov esi, Me
  30. loc_007025C3: push esi
  31. loc_007025C4: mov eax, [esi]
  32. loc_007025C6: call [eax+00000004h]
  33. loc_007025C9: mov ecx, blnNewBBPlayerIsPlaying
  34. loc_007025CC: mov dx, [ecx]
  35. loc_007025CF: mov [esi+0000003Ch], dx
  36. loc_007025D3: mov eax, Me
  37. loc_007025D6: push eax
  38. loc_007025D7: mov ecx, [eax]
  39. loc_007025D9: call [ecx+00000008h]
  40. loc_007025DC: mov eax, var_4
  41. loc_007025DF: mov ecx, var_14
  42. loc_007025E2: pop edi
  43. loc_007025E3: pop esi
  44. loc_007025E4: mov fs:[00000000h], ecx
  45. loc_007025EB: pop ebx
  46. loc_007025EC: mov esp, ebp
  47. loc_007025EE: pop ebp
  48. loc_007025EF: retn 0008h
  49. End Sub
  50. Public Property Get BBPlayerIsPlaying(arg_C) '702600
  51. loc_00702600: push ebp
  52. loc_00702601: mov ebp, esp
  53. loc_00702603: sub esp, 0000000Ch
  54. loc_00702606: push 00412856h ; __vbaExceptHandler
  55. loc_0070260B: mov eax, fs:[00000000h]
  56. loc_00702611: push eax
  57. loc_00702612: mov fs:[00000000h], esp
  58. loc_00702619: sub esp, 0000000Ch
  59. loc_0070261C: push ebx
  60. loc_0070261D: push esi
  61. loc_0070261E: push edi
  62. loc_0070261F: mov var_C, esp
  63. loc_00702622: mov var_8, 00410350h
  64. loc_00702629: xor edi, edi
  65. loc_0070262B: mov var_4, edi
  66. loc_0070262E: mov esi, Me
  67. loc_00702631: push esi
  68. loc_00702632: mov eax, [esi]
  69. loc_00702634: call [eax+00000004h]
  70. loc_00702637: mov cx, [esi+0000003Ch]
  71. loc_0070263B: mov var_18, edi
  72. loc_0070263E: mov var_18, ecx
  73. loc_00702641: mov eax, Me
  74. loc_00702644: push eax
  75. loc_00702645: mov edx, [eax]
  76. loc_00702647: call [edx+00000008h]
  77. loc_0070264A: mov eax, arg_C
  78. loc_0070264D: mov cx, var_18
  79. loc_00702651: mov [eax], cx
  80. loc_00702654: mov eax, var_4
  81. loc_00702657: mov ecx, var_14
  82. loc_0070265A: pop edi
  83. loc_0070265B: pop esi
  84. loc_0070265C: mov fs:[00000000h], ecx
  85. loc_00702663: pop ebx
  86. loc_00702664: mov esp, ebp
  87. loc_00702666: pop ebp
  88. loc_00702667: retn 0008h
  89. End Sub
  90. Public Property Let BBPlayerWasInterrupted(blnNewBBPlayerWasInterrupted) '702670
  91. loc_00702670: push ebp
  92. loc_00702671: mov ebp, esp
  93. loc_00702673: sub esp, 0000000Ch
  94. loc_00702676: push 00412856h ; __vbaExceptHandler
  95. loc_0070267B: mov eax, fs:[00000000h]
  96. loc_00702681: push eax
  97. loc_00702682: mov fs:[00000000h], esp
  98. loc_00702689: sub esp, 00000008h
  99. loc_0070268C: push ebx
  100. loc_0070268D: push esi
  101. loc_0070268E: push edi
  102. loc_0070268F: mov var_C, esp
  103. loc_00702692: mov var_8, 00410358h
  104. loc_00702699: mov var_4, 00000000h
  105. loc_007026A0: mov esi, Me
  106. loc_007026A3: push esi
  107. loc_007026A4: mov eax, [esi]
  108. loc_007026A6: call [eax+00000004h]
  109. loc_007026A9: mov ecx, blnNewBBPlayerWasInterrupted
  110. loc_007026AC: mov dx, [ecx]
  111. loc_007026AF: mov [esi+0000003Eh], dx
  112. loc_007026B3: mov eax, Me
  113. loc_007026B6: push eax
  114. loc_007026B7: mov ecx, [eax]
  115. loc_007026B9: call [ecx+00000008h]
  116. loc_007026BC: mov eax, var_4
  117. loc_007026BF: mov ecx, var_14
  118. loc_007026C2: pop edi
  119. loc_007026C3: pop esi
  120. loc_007026C4: mov fs:[00000000h], ecx
  121. loc_007026CB: pop ebx
  122. loc_007026CC: mov esp, ebp
  123. loc_007026CE: pop ebp
  124. loc_007026CF: retn 0008h
  125. End Sub
  126. Public Property Get BBPlayerWasInterrupted(arg_C) '7026E0
  127. loc_007026E0: push ebp
  128. loc_007026E1: mov ebp, esp
  129. loc_007026E3: sub esp, 0000000Ch
  130. loc_007026E6: push 00412856h ; __vbaExceptHandler
  131. loc_007026EB: mov eax, fs:[00000000h]
  132. loc_007026F1: push eax
  133. loc_007026F2: mov fs:[00000000h], esp
  134. loc_007026F9: sub esp, 0000000Ch
  135. loc_007026FC: push ebx
  136. loc_007026FD: push esi
  137. loc_007026FE: push edi
  138. loc_007026FF: mov var_C, esp
  139. loc_00702702: mov var_8, 00410360h
  140. loc_00702709: xor edi, edi
  141. loc_0070270B: mov var_4, edi
  142. loc_0070270E: mov esi, Me
  143. loc_00702711: push esi
  144. loc_00702712: mov eax, [esi]
  145. loc_00702714: call [eax+00000004h]
  146. loc_00702717: mov cx, [esi+0000003Eh]
  147. loc_0070271B: mov var_18, edi
  148. loc_0070271E: mov var_18, ecx
  149. loc_00702721: mov eax, Me
  150. loc_00702724: push eax
  151. loc_00702725: mov edx, [eax]
  152. loc_00702727: call [edx+00000008h]
  153. loc_0070272A: mov eax, arg_C
  154. loc_0070272D: mov cx, var_18
  155. loc_00702731: mov [eax], cx
  156. loc_00702734: mov eax, var_4
  157. loc_00702737: mov ecx, var_14
  158. loc_0070273A: pop edi
  159. loc_0070273B: pop esi
  160. loc_0070273C: mov fs:[00000000h], ecx
  161. loc_00702743: pop ebx
  162. loc_00702744: mov esp, ebp
  163. loc_00702746: pop ebp
  164. loc_00702747: retn 0008h
  165. End Sub
  166. Public Sub StartUpCharacter() '702750
  167. loc_00702750: push ebp
  168. loc_00702751: mov ebp, esp
  169. loc_00702753: sub esp, 0000000Ch
  170. loc_00702756: push 00412856h ; __vbaExceptHandler
  171. loc_0070275B: mov eax, fs:[00000000h]
  172. loc_00702761: push eax
  173. loc_00702762: mov fs:[00000000h], esp
  174. loc_00702769: sub esp, 00000030h
  175. loc_0070276C: push ebx
  176. loc_0070276D: push esi
  177. loc_0070276E: push edi
  178. loc_0070276F: mov var_C, esp
  179. loc_00702772: mov var_8, 00410368h
  180. loc_00702779: mov var_4, 00000000h
  181. loc_00702780: mov eax, Me
  182. loc_00702783: push eax
  183. loc_00702784: mov ecx, [eax]
  184. loc_00702786: call [ecx+00000004h]
  185. loc_00702789: mov eax, [0073A254h]
  186. loc_0070278E: test eax, eax
  187. loc_00702790: jnz 007027A2h
  188. loc_00702792: push 0073A254h
  189. loc_00702797: push 00431838h
  190. loc_0070279C: call [004012FCh] ; __vbaNew2
  191. loc_007027A2: sub esp, 00000010h
  192. loc_007027A5: mov ecx, 0000000Ah
  193. loc_007027AA: mov ebx, esp
  194. loc_007027AC: mov var_24, ecx
  195. loc_007027AF: mov eax, 80020004h
  196. loc_007027B4: sub esp, 00000010h
  197. loc_007027B7: mov [ebx], ecx
  198. loc_007027B9: mov ecx, var_30
  199. loc_007027BC: mov edx, eax
  200. loc_007027BE: mov esi, [0073A254h]
  201. loc_007027C4: mov [ebx+00000004h], ecx
  202. loc_007027C7: mov ecx, esp
  203. loc_007027C9: mov edi, [esi]
  204. loc_007027CB: push esi
  205. loc_007027CC: mov [ebx+00000008h], eax
  206. loc_007027CF: mov eax, var_28
  207. loc_007027D2: mov [ebx+0000000Ch], eax
  208. loc_007027D5: mov eax, var_24
  209. loc_007027D8: mov [ecx], eax
  210. loc_007027DA: mov eax, var_20
  211. loc_007027DD: mov [ecx+00000004h], eax
  212. loc_007027E0: mov [ecx+00000008h], edx
  213. loc_007027E3: mov edx, var_18
  214. loc_007027E6: mov [ecx+0000000Ch], edx
  215. loc_007027E9: call [edi+000002B0h]
  216. loc_007027EF: test eax, eax
  217. loc_007027F1: fnclex
  218. loc_007027F3: jge 00702807h
  219. loc_007027F5: push 000002B0h
  220. loc_007027FA: push 00440B20h
  221. loc_007027FF: push esi
  222. loc_00702800: push eax
  223. loc_00702801: call [004010CCh] ; __vbaHresultCheckObj
  224. loc_00702807: mov eax, Me
  225. loc_0070280A: push eax
  226. loc_0070280B: mov ecx, [eax]
  227. loc_0070280D: call [ecx+00000008h]
  228. loc_00702810: mov eax, var_4
  229. loc_00702813: mov ecx, var_14
  230. loc_00702816: pop edi
  231. loc_00702817: pop esi
  232. loc_00702818: mov fs:[00000000h], ecx
  233. loc_0070281F: pop ebx
  234. loc_00702820: mov esp, ebp
  235. loc_00702822: pop ebp
  236. loc_00702823: retn 0004h
  237. End Sub
  238. Public Sub ShutDownCharacter() '702830
  239. loc_00702830: push ebp
  240. loc_00702831: mov ebp, esp
  241. loc_00702833: sub esp, 0000000Ch
  242. loc_00702836: push 00412856h ; __vbaExceptHandler
  243. loc_0070283B: mov eax, fs:[00000000h]
  244. loc_00702841: push eax
  245. loc_00702842: mov fs:[00000000h], esp
  246. loc_00702849: sub esp, 00000014h
  247. loc_0070284C: push ebx
  248. loc_0070284D: push esi
  249. loc_0070284E: push edi
  250. loc_0070284F: mov var_C, esp
  251. loc_00702852: mov var_8, 00410370h
  252. loc_00702859: xor edi, edi
  253. loc_0070285B: mov var_4, edi
  254. loc_0070285E: mov eax, Me
  255. loc_00702861: push eax
  256. loc_00702862: mov ecx, [eax]
  257. loc_00702864: call [ecx+00000004h]
  258. loc_00702867: mov eax, [0073C818h]
  259. loc_0070286C: mov var_18, edi
  260. loc_0070286F: cmp eax, edi
  261. loc_00702871: jnz 00702883h
  262. loc_00702873: push 0073C818h
  263. loc_00702878: push 00441F00h
  264. loc_0070287D: call [004012FCh] ; __vbaNew2
  265. loc_00702883: mov eax, [0073A254h]
  266. loc_00702888: mov esi, [0073C818h]
  267. loc_0070288E: cmp eax, edi
  268. loc_00702890: jnz 007028A2h
  269. loc_00702892: push 0073A254h
  270. loc_00702897: push 00431838h
  271. loc_0070289C: call [004012FCh] ; __vbaNew2
  272. loc_007028A2: mov edx, [0073A254h]
  273. loc_007028A8: mov ebx, [esi]
  274. loc_007028AA: lea eax, var_18
  275. loc_007028AD: push edx
  276. loc_007028AE: push eax
  277. loc_007028AF: call [00401130h] ; __vbaObjSetAddref
  278. loc_007028B5: push eax
  279. loc_007028B6: push esi
  280. loc_007028B7: call [ebx+00000010h]
  281. loc_007028BA: cmp eax, edi
  282. loc_007028BC: fnclex
  283. loc_007028BE: jge 007028CFh
  284. loc_007028C0: push 00000010h
  285. loc_007028C2: push 00441EF0h
  286. loc_007028C7: push esi
  287. loc_007028C8: push eax
  288. loc_007028C9: call [004010CCh] ; __vbaHresultCheckObj
  289. loc_007028CF: lea ecx, var_18
  290. loc_007028D2: call [0040142Ch] ; __vbaFreeObj
  291. loc_007028D8: push 007028EAh
  292. loc_007028DD: jmp 007028E9h
  293. loc_007028DF: lea ecx, var_18
  294. loc_007028E2: call [0040142Ch] ; __vbaFreeObj
  295. loc_007028E8: ret
  296. loc_007028E9: ret
  297. loc_007028EA: mov eax, Me
  298. loc_007028ED: push eax
  299. loc_007028EE: mov ecx, [eax]
  300. loc_007028F0: call [ecx+00000008h]
  301. loc_007028F3: mov eax, var_4
  302. loc_007028F6: mov ecx, var_14
  303. loc_007028F9: pop edi
  304. loc_007028FA: pop esi
  305. loc_007028FB: mov fs:[00000000h], ecx
  306. loc_00702902: pop ebx
  307. loc_00702903: mov esp, ebp
  308. loc_00702905: pop ebp
  309. loc_00702906: retn 0004h
  310. End Sub
  311. Public Sub FireBBPlayerStop() '702910
  312. loc_00702910: push ebp
  313. loc_00702911: mov ebp, esp
  314. loc_00702913: sub esp, 0000000Ch
  315. loc_00702916: push 00412856h ; __vbaExceptHandler
  316. loc_0070291B: mov eax, fs:[00000000h]
  317. loc_00702921: push eax
  318. loc_00702922: mov fs:[00000000h], esp
  319. loc_00702929: sub esp, 00000008h
  320. loc_0070292C: push ebx
  321. loc_0070292D: push esi
  322. loc_0070292E: push edi
  323. loc_0070292F: mov var_C, esp
  324. loc_00702932: mov var_8, 00410380h
  325. loc_00702939: mov var_4, 00000000h
  326. loc_00702940: mov esi, Me
  327. loc_00702943: push esi
  328. loc_00702944: mov eax, [esi]
  329. loc_00702946: call [eax+00000004h]
  330. loc_00702949: push 00000000h
  331. loc_0070294B: push 00000001h
  332. loc_0070294D: push esi
  333. loc_0070294E: call [00401064h] ; __vbaRaiseEvent
  334. loc_00702954: add esp, 0000000Ch
  335. loc_00702957: mov eax, Me
  336. loc_0070295A: push eax
  337. loc_0070295B: mov ecx, [eax]
  338. loc_0070295D: call [ecx+00000008h]
  339. loc_00702960: mov eax, var_4
  340. loc_00702963: mov ecx, var_14
  341. loc_00702966: pop edi
  342. loc_00702967: pop esi
  343. loc_00702968: mov fs:[00000000h], ecx
  344. loc_0070296F: pop ebx
  345. loc_00702970: mov esp, ebp
  346. loc_00702972: pop ebp
  347. loc_00702973: retn 0004h
  348. End Sub
  349. Public Sub FireBBPlayerContinue() '702980
  350. loc_00702980: push ebp
  351. loc_00702981: mov ebp, esp
  352. loc_00702983: sub esp, 0000000Ch
  353. loc_00702986: push 00412856h ; __vbaExceptHandler
  354. loc_0070298B: mov eax, fs:[00000000h]
  355. loc_00702991: push eax
  356. loc_00702992: mov fs:[00000000h], esp
  357. loc_00702999: sub esp, 00000008h
  358. loc_0070299C: push ebx
  359. loc_0070299D: push esi
  360. loc_0070299E: push edi
  361. loc_0070299F: mov var_C, esp
  362. loc_007029A2: mov var_8, 00410388h
  363. loc_007029A9: xor edi, edi
  364. loc_007029AB: mov var_4, edi
  365. loc_007029AE: mov esi, Me
  366. loc_007029B1: push esi
  367. loc_007029B2: mov eax, [esi]
  368. loc_007029B4: call [eax+00000004h]
  369. loc_007029B7: push edi
  370. loc_007029B8: push 00000002h
  371. loc_007029BA: push esi
  372. loc_007029BB: call [00401064h] ; __vbaRaiseEvent
  373. loc_007029C1: add esp, 0000000Ch
  374. loc_007029C4: mov [esi+0000003Eh], di
  375. loc_007029C8: mov eax, Me
  376. loc_007029CB: push eax
  377. loc_007029CC: mov ecx, [eax]
  378. loc_007029CE: call [ecx+00000008h]
  379. loc_007029D1: mov eax, var_4
  380. loc_007029D4: mov ecx, var_14
  381. loc_007029D7: pop edi
  382. loc_007029D8: pop esi
  383. loc_007029D9: mov fs:[00000000h], ecx
  384. loc_007029E0: pop ebx
  385. loc_007029E1: mov esp, ebp
  386. loc_007029E3: pop ebp
  387. loc_007029E4: retn 0004h
  388. End Sub
  389. Public Sub FireBBPlayerShutDown() '7029F0
  390. loc_007029F0: push ebp
  391. loc_007029F1: mov ebp, esp
  392. loc_007029F3: sub esp, 0000000Ch
  393. loc_007029F6: push 00412856h ; __vbaExceptHandler
  394. loc_007029FB: mov eax, fs:[00000000h]
  395. loc_00702A01: push eax
  396. loc_00702A02: mov fs:[00000000h], esp
  397. loc_00702A09: sub esp, 00000018h
  398. loc_00702A0C: push ebx
  399. loc_00702A0D: push esi
  400. loc_00702A0E: push edi
  401. loc_00702A0F: mov var_C, esp
  402. loc_00702A12: mov var_8, 00410390h
  403. loc_00702A19: xor ebx, ebx
  404. loc_00702A1B: mov var_4, ebx
  405. loc_00702A1E: mov esi, Me
  406. loc_00702A21: push esi
  407. loc_00702A22: mov eax, [esi]
  408. loc_00702A24: call [eax+00000004h]
  409. loc_00702A27: push ebx
  410. loc_00702A28: push 00000003h
  411. loc_00702A2A: push esi
  412. loc_00702A2B: mov var_18, ebx
  413. loc_00702A2E: mov var_1C, ebx
  414. loc_00702A31: call [00401064h] ; __vbaRaiseEvent
  415. loc_00702A37: mov eax, [0073A254h]
  416. loc_00702A3C: add esp, 0000000Ch
  417. loc_00702A3F: cmp eax, ebx
  418. loc_00702A41: jnz 00702A53h
  419. loc_00702A43: push 0073A254h
  420. loc_00702A48: push 00431838h
  421. loc_00702A4D: call [004012FCh] ; __vbaNew2
  422. loc_00702A53: mov edi, [00401310h] ; __vbaStrCopy
  423. loc_00702A59: mov esi, [0073A254h]
  424. loc_00702A5F: mov edx, 004745C8h ; "FireBBPlayerShutDown"
  425. loc_00702A64: lea ecx, var_1C
  426. loc_00702A67: call edi
  427. loc_00702A69: mov edx, 00474594h ; "Shutting down BBPlayer."
  428. loc_00702A6E: lea ecx, var_18
  429. loc_00702A71: call edi
  430. loc_00702A73: mov ecx, [esi]
  431. loc_00702A75: lea edx, var_1C
  432. loc_00702A78: lea eax, var_18
  433. loc_00702A7B: push edx
  434. loc_00702A7C: push eax
  435. loc_00702A7D: push esi
  436. loc_00702A7E: call [ecx+00000748h]
  437. loc_00702A84: cmp eax, ebx
  438. loc_00702A86: fnclex
  439. loc_00702A88: jge 00702A9Ch
  440. loc_00702A8A: push 00000748h
  441. loc_00702A8F: push 004408D0h
  442. loc_00702A94: push esi
  443. loc_00702A95: push eax
  444. loc_00702A96: call [004010CCh] ; __vbaHresultCheckObj
  445. loc_00702A9C: lea ecx, var_1C
  446. loc_00702A9F: lea edx, var_18
  447. loc_00702AA2: push ecx
  448. loc_00702AA3: push edx
  449. loc_00702AA4: push 00000002h
  450. loc_00702AA6: call [00401324h] ; __vbaFreeStrList
  451. loc_00702AAC: add esp, 0000000Ch
  452. loc_00702AAF: push 00702ACBh
  453. loc_00702AB4: jmp 00702ACAh
  454. loc_00702AB6: lea eax, var_1C
  455. loc_00702AB9: lea ecx, var_18
  456. loc_00702ABC: push eax
  457. loc_00702ABD: push ecx
  458. loc_00702ABE: push 00000002h
  459. loc_00702AC0: call [00401324h] ; __vbaFreeStrList
  460. loc_00702AC6: add esp, 0000000Ch
  461. loc_00702AC9: ret
  462. loc_00702ACA: ret
  463. loc_00702ACB: mov eax, Me
  464. loc_00702ACE: push eax
  465. loc_00702ACF: mov edx, [eax]
  466. loc_00702AD1: call [edx+00000008h]
  467. loc_00702AD4: mov eax, var_4
  468. loc_00702AD7: mov ecx, var_14
  469. loc_00702ADA: pop edi
  470. loc_00702ADB: pop esi
  471. loc_00702ADC: mov fs:[00000000h], ecx
  472. loc_00702AE3: pop ebx
  473. loc_00702AE4: mov esp, ebp
  474. loc_00702AE6: pop ebp
  475. loc_00702AE7: retn 0004h
  476. End Sub
  477. Public Sub BBPlayerStartup(objBBPlayer) '702AF0
  478. loc_00702AF0: push ebp
  479. loc_00702AF1: mov ebp, esp
  480. loc_00702AF3: sub esp, 0000000Ch
  481. loc_00702AF6: push 00412856h ; __vbaExceptHandler
  482. loc_00702AFB: mov eax, fs:[00000000h]
  483. loc_00702B01: push eax
  484. loc_00702B02: mov fs:[00000000h], esp
  485. loc_00702B09: sub esp, 00000008h
  486. loc_00702B0C: push ebx
  487. loc_00702B0D: push esi
  488. loc_00702B0E: push edi
  489. loc_00702B0F: mov var_C, esp
  490. loc_00702B12: mov var_8, 004103A0h
  491. loc_00702B19: mov var_4, 00000000h
  492. loc_00702B20: mov eax, Me
  493. loc_00702B23: push eax
  494. loc_00702B24: mov ecx, [eax]
  495. loc_00702B26: call [ecx+00000004h]
  496. loc_00702B29: mov edx, objBBPlayer
  497. loc_00702B2C: mov eax, [edx]
  498. loc_00702B2E: push eax
  499. loc_00702B2F: push 0073A210h
  500. loc_00702B34: call [00401130h] ; __vbaObjSetAddref
  501. loc_00702B3A: mov eax, Me
  502. loc_00702B3D: push eax
  503. loc_00702B3E: mov ecx, [eax]
  504. loc_00702B40: call [ecx+00000008h]
  505. loc_00702B43: mov eax, var_4
  506. loc_00702B46: mov ecx, var_14
  507. loc_00702B49: pop edi
  508. loc_00702B4A: pop esi
  509. loc_00702B4B: mov fs:[00000000h], ecx
  510. loc_00702B52: pop ebx
  511. loc_00702B53: mov esp, ebp
  512. loc_00702B55: pop ebp
  513. loc_00702B56: retn 0008h
  514. End Sub
  515. Public Sub BBPlayerShutDown() '702B60
  516. loc_00702B60: push ebp
  517. loc_00702B61: mov ebp, esp
  518. loc_00702B63: sub esp, 0000000Ch
  519. loc_00702B66: push 00412856h ; __vbaExceptHandler
  520. loc_00702B6B: mov eax, fs:[00000000h]
  521. loc_00702B71: push eax
  522. loc_00702B72: mov fs:[00000000h], esp
  523. loc_00702B79: sub esp, 00000008h
  524. loc_00702B7C: push ebx
  525. loc_00702B7D: push esi
  526. loc_00702B7E: push edi
  527. loc_00702B7F: mov var_C, esp
  528. loc_00702B82: mov var_8, 004103A8h
  529. loc_00702B89: mov var_4, 00000000h
  530. loc_00702B90: mov eax, Me
  531. loc_00702B93: push eax
  532. loc_00702B94: mov ecx, [eax]
  533. loc_00702B96: call [ecx+00000004h]
  534. loc_00702B99: push 004523B0h
  535. loc_00702B9E: push 00000000h
  536. loc_00702BA0: call [004013C4h] ; __vbaCastObj
  537. loc_00702BA6: push eax
  538. loc_00702BA7: push 0073A210h
  539. loc_00702BAC: call [00401128h] ; __vbaObjSet
  540. loc_00702BB2: mov eax, Me
  541. loc_00702BB5: push eax
  542. loc_00702BB6: mov edx, [eax]
  543. loc_00702BB8: call [edx+00000008h]
  544. loc_00702BBB: mov eax, var_4
  545. loc_00702BBE: mov ecx, var_14
  546. loc_00702BC1: pop edi
  547. loc_00702BC2: pop esi
  548. loc_00702BC3: mov fs:[00000000h], ecx
  549. loc_00702BCA: pop ebx
  550. loc_00702BCB: mov esp, ebp
  551. loc_00702BCD: pop ebp
  552. loc_00702BCE: retn 0004h
  553. End Sub
  554. Public Sub BBPlayerPausePlayback(strCaller) '702BE0
  555. loc_00702BE0: push ebp
  556. loc_00702BE1: mov ebp, esp
  557. loc_00702BE3: sub esp, 0000000Ch
  558. loc_00702BE6: push 00412856h ; __vbaExceptHandler
  559. loc_00702BEB: mov eax, fs:[00000000h]
  560. loc_00702BF1: push eax
  561. loc_00702BF2: mov fs:[00000000h], esp
  562. loc_00702BF9: sub esp, 0000001Ch
  563. loc_00702BFC: push ebx
  564. loc_00702BFD: push esi
  565. loc_00702BFE: push edi
  566. loc_00702BFF: mov var_C, esp
  567. loc_00702C02: mov var_8, 004103B0h
  568. loc_00702C09: xor ebx, ebx
  569. loc_00702C0B: mov var_4, ebx
  570. loc_00702C0E: mov esi, Me
  571. loc_00702C11: push esi
  572. loc_00702C12: mov eax, [esi]
  573. loc_00702C14: call [eax+00000004h]
  574. loc_00702C17: mov edi, strCaller
  575. loc_00702C1A: mov var_18, ebx
  576. loc_00702C1D: mov var_1C, ebx
  577. loc_00702C20: mov var_20, ebx
  578. loc_00702C23: mov ecx, [edi]
  579. loc_00702C25: push ecx
  580. loc_00702C26: call [00401044h] ; __vbaLenBstr
  581. loc_00702C2C: test eax, eax
  582. loc_00702C2E: jz 00702C34h
  583. loc_00702C30: mov edx, [edi]
  584. loc_00702C32: jmp 00702C39h
  585. loc_00702C34: mov edx, 004745F8h ; "BBPlayerPausePlayback"
  586. loc_00702C39: lea ecx, var_18
  587. loc_00702C3C: call [00401310h] ; __vbaStrCopy
  588. loc_00702C42: mov edx, [esi]
  589. loc_00702C44: lea eax, var_20
  590. loc_00702C47: push eax
  591. loc_00702C48: push esi
  592. loc_00702C49: call [edx+00000020h]
  593. loc_00702C4C: cmp eax, ebx
  594. loc_00702C4E: jge 00702C63h
  595. loc_00702C50: mov edi, [004010CCh] ; __vbaHresultCheckObj
  596. loc_00702C56: push 00000020h
  597. loc_00702C58: push 004523B0h
  598. loc_00702C5D: push esi
  599. loc_00702C5E: push eax
  600. loc_00702C5F: call edi
  601. loc_00702C61: jmp 00702C69h
  602. loc_00702C63: mov edi, [004010CCh] ; __vbaHresultCheckObj
  603. loc_00702C69: cmp var_20, bx
  604. loc_00702C6D: jz 00702DC3h
  605. loc_00702C73: cmp [0073A254h], ebx
  606. loc_00702C79: jnz 00702C8Bh
  607. loc_00702C7B: push 0073A254h
  608. loc_00702C80: push 00431838h
  609. loc_00702C85: call [004012FCh] ; __vbaNew2
  610. loc_00702C8B: mov esi, [0073A254h]
  611. loc_00702C91: mov edx, 00447910h ; "Stopping Playback"
  612. loc_00702C96: lea ecx, var_1C
  613. loc_00702C99: call [00401310h] ; __vbaStrCopy
  614. loc_00702C9F: mov ecx, [esi]
  615. loc_00702CA1: lea edx, var_18
  616. loc_00702CA4: lea eax, var_1C
  617. loc_00702CA7: push edx
  618. loc_00702CA8: push eax
  619. loc_00702CA9: push esi
  620. loc_00702CAA: call [ecx+00000748h]
  621. loc_00702CB0: cmp eax, ebx
  622. loc_00702CB2: fnclex
  623. loc_00702CB4: jge 00702CC4h
  624. loc_00702CB6: push 00000748h
  625. loc_00702CBB: push 004408D0h
  626. loc_00702CC0: push esi
  627. loc_00702CC1: push eax
  628. loc_00702CC2: call edi
  629. loc_00702CC4: lea ecx, var_1C
  630. loc_00702CC7: call [00401430h] ; __vbaFreeStr
  631. loc_00702CCD: mov eax, [0073A210h]
  632. loc_00702CD2: push eax
  633. loc_00702CD3: mov ecx, [eax]
  634. loc_00702CD5: call [ecx+00000034h]
  635. loc_00702CD8: cmp eax, ebx
  636. loc_00702CDA: fnclex
  637. loc_00702CDC: jge 00702CEFh
  638. loc_00702CDE: mov edx, [0073A210h]
  639. loc_00702CE4: push 00000034h
  640. loc_00702CE6: push 004523B0h
  641. loc_00702CEB: push edx
  642. loc_00702CEC: push eax
  643. loc_00702CED: call edi
  644. loc_00702CEF: mov eax, [0073A210h]
  645. loc_00702CF4: lea edx, var_20
  646. loc_00702CF7: mov var_20, FFFFFFFFh
  647. loc_00702CFE: push edx
  648. loc_00702CFF: mov ecx, [eax]
  649. loc_00702D01: push eax
  650. loc_00702D02: call [ecx+00000024h]
  651. loc_00702D05: cmp eax, ebx
  652. loc_00702D07: fnclex
  653. loc_00702D09: jge 00702D1Ch
  654. loc_00702D0B: mov ecx, [0073A210h]
  655. loc_00702D11: push 00000024h
  656. loc_00702D13: push 004523B0h
  657. loc_00702D18: push ecx
  658. loc_00702D19: push eax
  659. loc_00702D1A: call edi
  660. loc_00702D1C: mov esi, [00401238h] ; __vbaObjIs
  661. loc_00702D22: mov ebx, [0040113Ch] ; rtcDoEvents
  662. loc_00702D28: mov eax, [0073A210h]
  663. loc_00702D2D: lea ecx, var_20
  664. loc_00702D30: push ecx
  665. loc_00702D31: push eax
  666. loc_00702D32: mov edx, [eax]
  667. loc_00702D34: call [edx+00000020h]
  668. loc_00702D37: test eax, eax
  669. loc_00702D39: fnclex
  670. loc_00702D3B: jge 00702D4Eh
  671. loc_00702D3D: mov edx, [0073A210h]
  672. loc_00702D43: push 00000020h
  673. loc_00702D45: push 004523B0h
  674. loc_00702D4A: push edx
  675. loc_00702D4B: push eax
  676. loc_00702D4C: call edi
  677. loc_00702D4E: cmp var_20, 0000h
  678. loc_00702D53: jz 00702D68h
  679. loc_00702D55: mov eax, [0073A210h]
  680. loc_00702D5A: push 00000000h
  681. loc_00702D5C: push eax
  682. loc_00702D5D: call __vbaObjIs
  683. loc_00702D5F: test ax, ax
  684. loc_00702D62: jnz 00702D68h
  685. loc_00702D64: call ebx
  686. loc_00702D66: jmp 00702D28h
  687. loc_00702D68: mov eax, [0073A254h]
  688. loc_00702D6D: test eax, eax
  689. loc_00702D6F: jnz 00702D81h
  690. loc_00702D71: push 0073A254h
  691. loc_00702D76: push 00431838h
  692. loc_00702D7B: call [004012FCh] ; __vbaNew2
  693. loc_00702D81: mov esi, [0073A254h]
  694. loc_00702D87: mov edx, 00447938h ; "Stopped Playback"
  695. loc_00702D8C: lea ecx, var_1C
  696. loc_00702D8F: call [00401310h] ; __vbaStrCopy
  697. loc_00702D95: mov ecx, [esi]
  698. loc_00702D97: lea edx, var_18
  699. loc_00702D9A: lea eax, var_1C
  700. loc_00702D9D: push edx
  701. loc_00702D9E: push eax
  702. loc_00702D9F: push esi
  703. loc_00702DA0: call [ecx+00000748h]
  704. loc_00702DA6: test eax, eax
  705. loc_00702DA8: fnclex
  706. loc_00702DAA: jge 00702DBAh
  707. loc_00702DAC: push 00000748h
  708. loc_00702DB1: push 004408D0h
  709. loc_00702DB6: push esi
  710. loc_00702DB7: push eax
  711. loc_00702DB8: call edi
  712. loc_00702DBA: lea ecx, var_1C
  713. loc_00702DBD: call [00401430h] ; __vbaFreeStr
  714. loc_00702DC3: push 00702DDEh
  715. loc_00702DC8: jmp 00702DD4h
  716. loc_00702DCA: lea ecx, var_1C
  717. loc_00702DCD: call [00401430h] ; __vbaFreeStr
  718. loc_00702DD3: ret
  719. loc_00702DD4: lea ecx, var_18
  720. loc_00702DD7: call [00401430h] ; __vbaFreeStr
  721. loc_00702DDD: ret
  722. loc_00702DDE: mov eax, Me
  723. loc_00702DE1: push eax
  724. loc_00702DE2: mov ecx, [eax]
  725. loc_00702DE4: call [ecx+00000008h]
  726. loc_00702DE7: mov eax, var_4
  727. loc_00702DEA: mov ecx, var_14
  728. loc_00702DED: pop edi
  729. loc_00702DEE: pop esi
  730. loc_00702DEF: mov fs:[00000000h], ecx
  731. loc_00702DF6: pop ebx
  732. loc_00702DF7: mov esp, ebp
  733. loc_00702DF9: pop ebp
  734. loc_00702DFA: retn 0008h
  735. End Sub
  736. Public Sub BBPlayerResumePlayback(strCaller) '702E00
  737. loc_00702E00: push ebp
  738. loc_00702E01: mov ebp, esp
  739. loc_00702E03: sub esp, 0000000Ch
  740. loc_00702E06: push 00412856h ; __vbaExceptHandler
  741. loc_00702E0B: mov eax, fs:[00000000h]
  742. loc_00702E11: push eax
  743. loc_00702E12: mov fs:[00000000h], esp
  744. loc_00702E19: sub esp, 0000001Ch
  745. loc_00702E1C: push ebx
  746. loc_00702E1D: push esi
  747. loc_00702E1E: push edi
  748. loc_00702E1F: mov var_C, esp
  749. loc_00702E22: mov var_8, 004103C0h
  750. loc_00702E29: xor ebx, ebx
  751. loc_00702E2B: mov var_4, ebx
  752. loc_00702E2E: mov eax, Me
  753. loc_00702E31: push eax
  754. loc_00702E32: mov ecx, [eax]
  755. loc_00702E34: call [ecx+00000004h]
  756. loc_00702E37: mov esi, strCaller
  757. loc_00702E3A: mov var_18, ebx
  758. loc_00702E3D: mov var_1C, ebx
  759. loc_00702E40: mov var_20, ebx
  760. loc_00702E43: mov edx, [esi]
  761. loc_00702E45: push edx
  762. loc_00702E46: call [00401044h] ; __vbaLenBstr
  763. loc_00702E4C: test eax, eax
  764. loc_00702E4E: jz 00702E54h
  765. loc_00702E50: mov edx, [esi]
  766. loc_00702E52: jmp 00702E59h
  767. loc_00702E54: mov edx, 00474628h ; "BBPlayerResumePlayback"
  768. loc_00702E59: lea ecx, var_18
  769. loc_00702E5C: call [00401310h] ; __vbaStrCopy
  770. loc_00702E62: mov eax, [0073A210h]
  771. loc_00702E67: lea edx, var_20
  772. loc_00702E6A: push edx
  773. loc_00702E6B: push eax
  774. loc_00702E6C: mov ecx, [eax]
  775. loc_00702E6E: call [ecx+00000028h]
  776. loc_00702E71: cmp eax, ebx
  777. loc_00702E73: fnclex
  778. loc_00702E75: jge 00702E90h
  779. loc_00702E77: mov ecx, [0073A210h]
  780. loc_00702E7D: mov edi, [004010CCh] ; __vbaHresultCheckObj
  781. loc_00702E83: push 00000028h
  782. loc_00702E85: push 004523B0h
  783. loc_00702E8A: push ecx
  784. loc_00702E8B: push eax
  785. loc_00702E8C: call edi
  786. loc_00702E8E: jmp 00702E96h
  787. loc_00702E90: mov edi, [004010CCh] ; __vbaHresultCheckObj
  788. loc_00702E96: cmp var_20, bx
  789. loc_00702E9A: jz 00702F75h
  790. loc_00702EA0: cmp [0073A254h], ebx
  791. loc_00702EA6: jnz 00702EB8h
  792. loc_00702EA8: push 0073A254h
  793. loc_00702EAD: push 00431838h
  794. loc_00702EB2: call [004012FCh] ; __vbaNew2
  795. loc_00702EB8: mov esi, [0073A254h]
  796. loc_00702EBE: mov edx, 0047465Ch ; "Continuing Playback"
  797. loc_00702EC3: lea ecx, var_1C
  798. loc_00702EC6: call [00401310h] ; __vbaStrCopy
  799. loc_00702ECC: mov edx, [esi]
  800. loc_00702ECE: lea eax, var_18
  801. loc_00702ED1: lea ecx, var_1C
  802. loc_00702ED4: push eax
  803. loc_00702ED5: push ecx
  804. loc_00702ED6: push esi
  805. loc_00702ED7: call [edx+00000748h]
  806. loc_00702EDD: cmp eax, ebx
  807. loc_00702EDF: fnclex
  808. loc_00702EE1: jge 00702EF1h
  809. loc_00702EE3: push 00000748h
  810. loc_00702EE8: push 004408D0h
  811. loc_00702EED: push esi
  812. loc_00702EEE: push eax
  813. loc_00702EEF: call edi
  814. loc_00702EF1: mov ebx, [00401430h] ; __vbaFreeStr
  815. loc_00702EF7: lea ecx, var_1C
  816. loc_00702EFA: call ebx
  817. loc_00702EFC: mov eax, [0073A210h]
  818. loc_00702F01: push eax
  819. loc_00702F02: mov edx, [eax]
  820. loc_00702F04: call [edx+00000038h]
  821. loc_00702F07: test eax, eax
  822. loc_00702F09: fnclex
  823. loc_00702F0B: jge 00702F1Eh
  824. loc_00702F0D: mov ecx, [0073A210h]
  825. loc_00702F13: push 00000038h
  826. loc_00702F15: push 004523B0h
  827. loc_00702F1A: push ecx
  828. loc_00702F1B: push eax
  829. loc_00702F1C: call edi
  830. loc_00702F1E: mov eax, [0073A254h]
  831. loc_00702F23: test eax, eax
  832. loc_00702F25: jnz 00702F37h
  833. loc_00702F27: push 0073A254h
  834. loc_00702F2C: push 00431838h
  835. loc_00702F31: call [004012FCh] ; __vbaNew2
  836. loc_00702F37: mov esi, [0073A254h]
  837. loc_00702F3D: mov edx, 00474688h ; "Continued Playback"
  838. loc_00702F42: lea ecx, var_1C
  839. loc_00702F45: call [00401310h] ; __vbaStrCopy
  840. loc_00702F4B: mov edx, [esi]
  841. loc_00702F4D: lea eax, var_18
  842. loc_00702F50: lea ecx, var_1C
  843. loc_00702F53: push eax
  844. loc_00702F54: push ecx
  845. loc_00702F55: push esi
  846. loc_00702F56: call [edx+00000748h]
  847. loc_00702F5C: test eax, eax
  848. loc_00702F5E: fnclex
  849. loc_00702F60: jge 00702F70h
  850. loc_00702F62: push 00000748h
  851. loc_00702F67: push 004408D0h
  852. loc_00702F6C: push esi
  853. loc_00702F6D: push eax
  854. loc_00702F6E: call edi
  855. loc_00702F70: lea ecx, var_1C
  856. loc_00702F73: call ebx
  857. loc_00702F75: push 00702F90h
  858. loc_00702F7A: jmp 00702F86h
  859. loc_00702F7C: lea ecx, var_1C
  860. loc_00702F7F: call [00401430h] ; __vbaFreeStr
  861. loc_00702F85: ret
  862. loc_00702F86: lea ecx, var_18
  863. loc_00702F89: call [00401430h] ; __vbaFreeStr
  864. loc_00702F8F: ret
  865. loc_00702F90: mov eax, Me
  866. loc_00702F93: push eax
  867. loc_00702F94: mov edx, [eax]
  868. loc_00702F96: call [edx+00000008h]
  869. loc_00702F99: mov eax, var_4
  870. loc_00702F9C: mov ecx, var_14
  871. loc_00702F9F: pop edi
  872. loc_00702FA0: pop esi
  873. loc_00702FA1: mov fs:[00000000h], ecx
  874. loc_00702FA8: pop ebx
  875. loc_00702FA9: mov esp, ebp
  876. loc_00702FAB: pop ebp
  877. loc_00702FAC: retn 0008h
  878. End Sub
  879. Public Function IsConnected(arg_C) '702FB0
  880. loc_00702FB0: push ebp
  881. loc_00702FB1: mov ebp, esp
  882. loc_00702FB3: sub esp, 0000000Ch
  883. loc_00702FB6: push 00412856h ; __vbaExceptHandler
  884. loc_00702FBB: mov eax, fs:[00000000h]
  885. loc_00702FC1: push eax
  886. loc_00702FC2: mov fs:[00000000h], esp
  887. loc_00702FC9: sub esp, 00000010h
  888. loc_00702FCC: push ebx
  889. loc_00702FCD: push esi
  890. loc_00702FCE: push edi
  891. loc_00702FCF: mov var_C, esp
  892. loc_00702FD2: mov var_8, 004103D0h
  893. loc_00702FD9: xor esi, esi
  894. loc_00702FDB: mov var_4, esi
  895. loc_00702FDE: mov eax, Me
  896. loc_00702FE1: push eax
  897. loc_00702FE2: mov ecx, [eax]
  898. loc_00702FE4: call [ecx+00000004h]
  899. loc_00702FE7: mov eax, [0073A254h]
  900. loc_00702FEC: mov var_18, esi
  901. loc_00702FEF: cmp eax, esi
  902. loc_00702FF1: mov var_1C, esi
  903. loc_00702FF4: jnz 00703006h
  904. loc_00702FF6: push 0073A254h
  905. loc_00702FFB: push 00431838h
  906. loc_00703000: call [004012FCh] ; __vbaNew2
  907. loc_00703006: mov eax, [0073A254h]
  908. loc_0070300B: lea edx, var_1C
  909. loc_0070300E: push edx
  910. loc_0070300F: push eax
  911. loc_00703010: call 006A91B0h
  912. loc_00703015: mov ecx, var_1C
  913. loc_00703018: mov var_18, ecx
  914. loc_0070301B: mov eax, Me
  915. loc_0070301E: push eax
  916. loc_0070301F: mov edx, [eax]
  917. loc_00703021: call [edx+00000008h]
  918. loc_00703024: mov eax, arg_C
  919. loc_00703027: mov cx, var_18
  920. loc_0070302B: mov [eax], cx
  921. loc_0070302E: mov eax, var_4
  922. loc_00703031: mov ecx, var_14
  923. loc_00703034: pop edi
  924. loc_00703035: pop esi
  925. loc_00703036: mov fs:[00000000h], ecx
  926. loc_0070303D: pop ebx
  927. loc_0070303E: mov esp, ebp
  928. loc_00703040: pop ebp
  929. loc_00703041: retn 0008h
  930. End Function