12
« on: February 24, 2009, 07:03:03 am »
Private sub Proc_100_0_538F90
loc_00538F90: push ebp
loc_00538F91: mov ebp, esp
loc_00538F93: sub esp, 00000014h
loc_00538F96: push 00407926h ; MSVBVM60.DLL.__vbaExceptHandler
loc_00538F9B: mov eax, fs:[00h]
loc_00538FA1: push eax
loc_00538FA2: mov fs:[00000000h], esp
loc_00538FA9: sub esp, 00000050h
loc_00538FAC: push ebx
loc_00538FAD: push esi
loc_00538FAE: push edi
loc_00538FAF: mov var_14, esp
loc_00538FB2: mov var_10, 00407108h
loc_00538FB9: xor edi, edi
loc_00538FBB: mov var_C, edi
loc_00538FBE: mov var_8, edi
loc_00538FC1: mov var_20, edi
loc_00538FC4: mov var_24, edi
loc_00538FC7: mov var_2C, edi
loc_00538FCA: mov var_30, edi
loc_00538FCD: mov var_34, edi
loc_00538FD0: mov var_44, edi
loc_00538FD3: mov var_54, edi
loc_00538FD6: push 00000001h
loc_00538FD8: call On Error ...
loc_00538FDE: mov eax, arg_8
loc_00538FE1: mov ecx, [eax]
loc_00538FE3: push ecx
loc_00538FE4: push 00449F7Ch ; "\monsterdef.dat"
loc_00538FE9: call [0040106Ch] ; &
loc_00538FEF: mov edx, eax
loc_00538FF1: lea ecx, var_24
loc_00538FF4: mov esi, [004012E0h]
loc_00538FFA: call MSVBVM60.DLL.__vbaStrMove
loc_00538FFC: lea edx, var_24
loc_00538FFF: mov var_4C, edx
loc_00539002: mov var_54, 00004008h
loc_00539009: push edi
loc_0053900A: lea eax, var_54
loc_0053900D: push eax
loc_0053900E: call [00401238h] ; Dir
loc_00539014: mov edx, eax
loc_00539016: lea ecx, var_2C
loc_00539019: call MSVBVM60.DLL.__vbaStrMove
loc_0053901B: push eax
loc_0053901C: call [0040102Ch] ; Len(arg_1)
loc_00539022: mov esi, eax
loc_00539024: neg esi
loc_00539026: sbb esi, esi
loc_00539028: inc esi
loc_00539029: neg esi
loc_0053902B: lea ecx, var_2C
loc_0053902E: call MSVBVM60.DLL.__vbaFreeStr
loc_00539034: cmp si, di
loc_00539037: jz 539047h
loc_00539039: mov edx, 00449FA0h ; "c:\rpgwo\server\monsterdef.dat"
loc_0053903E: lea ecx, var_24
loc_00539041: call MSVBVM60.DLL.__vbaStrCopy
loc_00539047: mov var_3C, 80020004h
loc_0053904E: mov var_44, 0000000Ah
loc_00539055: lea ecx, var_44
loc_00539058: push ecx
loc_00539059: call [00401254h] ; FreeFile
loc_0053905F: mov esi, eax
loc_00539061: lea ecx, var_44
loc_00539064: call MSVBVM60.DLL.__vbaFreeVar
loc_0053906A: mov edx, var_24
loc_0053906D: push edx
loc_0053906E: push esi
loc_0053906F: push FFFFFFFFh
loc_00539071: push 00000020h
loc_00539073: call [00401244h] ; Open #
loc_00539079: push esi
loc_0053907A: lea eax, var_20
loc_0053907D: push eax
loc_0053907E: push 00000004h
loc_00539080: call MSVBVM60.DLL.__vbaGet3
loc_00539086: push edi
loc_00539087: mov ecx, var_20
loc_0053908A: push ecx
loc_0053908B: push 00000001h
loc_0053908D: push edi
loc_0053908E: push 00548A40h
loc_00539093: push 00000098h
loc_00539098: push edi
loc_00539099: call [004011A0h] ; ReDim
loc_0053909F: add esp, 0000001Ch
loc_005390A2: push 00548A40h
loc_005390A7: push 00443770h ; "b?"
loc_005390AC: call MSVBVM60.DLL.__vbaEraseKeepData
loc_005390B2: push esi
loc_005390B3: push 00548A40h
loc_005390B8: push 00449FE4h
loc_005390BD: call MSVBVM60.DLL.__vbaGetOwner3
loc_005390C3: push esi
loc_005390C4: call [00401138h] ; Close #arg_1
loc_005390CA: call MSVBVM60.DLL.__vbaExitProc
loc_005390D0: push 00539188h ; "‹Mäd‰'#1"
loc_005390D5: jmp 0053917Eh
loc_005390DA: call [00401284h] ; Err
loc_005390E0: push eax
loc_005390E1: lea edx, var_34
loc_005390E4: push edx
loc_005390E5: call [004010C8h] ; Set (object)
loc_005390EB: mov esi, eax
loc_005390ED: mov eax, [esi]
loc_005390EF: lea ecx, var_2C
loc_005390F2: push ecx
loc_005390F3: push esi
loc_005390F4: call [eax+2Ch]
loc_005390F7: fclex
loc_005390F9: test eax, eax
loc_005390FB: jnl 53910Ch
loc_005390FD: push 0000002Ch
loc_005390FF: push 0043E69Ch
loc_00539104: push esi
loc_00539105: push eax
loc_00539106: call MSVBVM60.DLL.__vbaHresultCheckObj
loc_0053910C: push 0044A020h ; "Error_modMonsterDef_Load :"
loc_00539111: mov edx, var_2C
loc_00539114: push edx
loc_00539115: call [0040106Ch] ; &
loc_0053911B: mov edx, eax
loc_0053911D: lea ecx, var_30
loc_00539120: call MSVBVM60.DLL.__vbaStrMove
loc_00539126: lea eax, var_30
loc_00539129: push eax
loc_0053912A: call 004D19F0h
loc_0053912F: lea ecx, var_30
loc_00539132: push ecx
loc_00539133: lea edx, var_2C
loc_00539136: push edx
loc_00539137: push 00000002h
loc_00539139: call MSVBVM60.DLL.__vbaFreeStrList
loc_0053913F: add esp, 0000000Ch
loc_00539142: lea ecx, var_34
loc_00539145: call MSVBVM60.DLL.__vbaFreeObj
loc_0053914B: call MSVBVM60.DLL.__vbaExitProc
loc_00539151: push 00539188h ; "‹Mäd‰'#1"
loc_00539156: jmp 53917Eh
loc_00539158: lea eax, var_30
loc_0053915B: push eax
loc_0053915C: lea ecx, var_2C
loc_0053915F: push ecx
loc_00539160: push 00000002h
loc_00539162: call MSVBVM60.DLL.__vbaFreeStrList
loc_00539168: add esp, 0000000Ch
loc_0053916B: lea ecx, var_34
loc_0053916E: call MSVBVM60.DLL.__vbaFreeObj
loc_00539174: lea ecx, var_44
loc_00539177: call MSVBVM60.DLL.__vbaFreeVar
loc_0053917D: ret
End Sub
Gawd dayum.
That's the code for the client to read monsterdef.dat.
Now, holy tigering wolf. Can ANY sense be made from this?