; Listing generated by Microsoft (R) Optimizing Compiler Version 13.10.3077 

	TITLE	.\mdbevf.cpp
	.386P
include listing.inc
if @Version gt 510
.model FLAT
else
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
_DATA	SEGMENT DWORD USE32 PUBLIC 'DATA'
_DATA	ENDS
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
_BSS	SEGMENT DWORD USE32 PUBLIC 'BSS'
_BSS	ENDS
$$SYMBOLS	SEGMENT BYTE USE32 'DEBSYM'
$$SYMBOLS	ENDS
$$TYPES	SEGMENT BYTE USE32 'DEBTYP'
$$TYPES	ENDS
_TLS	SEGMENT DWORD USE32 PUBLIC 'TLS'
_TLS	ENDS
;	COMDAT ??_C@_01GBGANLPD@0?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_01ICJEACDI@?$DL?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_01NEMOKFLO@?$DN?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BO@IDCNIDOL@MDB_ExpVehFac_Vehicle_Factory?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BG@KKJHDMPD@MDB_ExpVehFac_Helipad?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BE@GMHHGOOM@MDB_ExpVehFac_Naval?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BB@MJEEGLIK@ExpVehFac_?$CFu?4cfg?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0O@BCEKLIOD@ExpVehFac?4cfg?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0N@BHHEMMEG@Ground_Limit?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0N@NKJFEDCM@Flying_Limit?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0M@HBFOELM@Naval_Limit?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0O@CCACHKNM@Support_Limit?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_00CNPNBAHC@?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0DB@EAPDLBJM@The?5limit?5for?5Support?5vehicles?5h@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CP@NIACEBMO@The?5limit?5for?5Naval?5vehicles?5has@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_04OHJIHAFH@None?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0DA@DDGIFENP@The?5limit?5for?5Flying?5vehicles?5ha@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BA@IACOJFFL@ExpVehFac_1?4txt?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BA@ELHCEGPO@ExpVehFac_0?4txt?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0P@ILJCPIMA@Test_Cinematic?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0DA@EHCLJPMO@The?5limit?5for?5Ground?5vehicles?5ha@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BE@BKNPJNFJ@MDB_ExpVehFac_Limit?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_01FAMBOPH@4?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_01HIHLOKLC@1?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_01FDFGLJHB@2?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_01EKENIIDA@3?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BB@GKAKOOPG@Support_Vehicles?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0P@HBCKFHDF@Landing_Preset?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0L@CMKBOGCN@Build_Time?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BC@DOEJEHKP@Flying_Build_Time?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BA@LGDAPFNH@Remove_on_Death?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_07FINOONBP@Sidebar?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BA@BNIFIOJM@Creation_Preset?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0P@EOMMAHKA@Naval_Vehicles?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BB@OKFAOBNB@Naval_Build_Time?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BC@IOIFJNLK@Ground_Build_Time?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_04GBPANCCF@Team?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_06BIJBOFNL@Origin?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CA@HEBOGOMN@MDB_ExpVehFac_Cinematic_Vehicle?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_04KOACHJEN@Type?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0JK@KIFIJHKB@Landing_Preset?$DNLanding?3string?0Bu@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0LO@HHLONMGP@Creation_Preset?$DNPreset?3string?0Na@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0HM@LIOKLNBO@Build_Time?$DN1?40?3float?0Ground_Buil@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0L@CEMIOEF@Team?$DN0?3int?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BI@GNCIIPJF@MDB_ExpVehFac_Cinematic?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_08JFKDHNCE@Type?3int?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
CRT$XCA	SEGMENT DWORD USE32 PUBLIC 'DATA'
CRT$XCA	ENDS
CRT$XCU	SEGMENT DWORD USE32 PUBLIC 'DATA'
CRT$XCU	ENDS
CRT$XCL	SEGMENT DWORD USE32 PUBLIC 'DATA'
CRT$XCL	ENDS
CRT$XCC	SEGMENT DWORD USE32 PUBLIC 'DATA'
CRT$XCC	ENDS
CRT$XCZ	SEGMENT DWORD USE32 PUBLIC 'DATA'
CRT$XCZ	ENDS
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT _acosl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _asinl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _atanl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _atan2l
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _ceill
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _cosl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _coshl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _expl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _fabsl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _floorl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _fmodl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _frexpl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _ldexpl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _logl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _log10l
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _modfl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _powl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _sinl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _sinhl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _sqrtl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _tanl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _tanhl
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _frexpf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _ldexpf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _acosf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _asinf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _atanf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _atan2f
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _ceilf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _cosf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _coshf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _expf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _fabsf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _floorf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _fmodf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _logf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _log10f
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _modff
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _powf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _sinf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _sinhf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _sqrtf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _tanf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _tanhf
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?GetID@GameObjObserverClass@@QAEHXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?SetFactory@ScriptImpClass@@QAEXPAVScriptFactory@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ReceiveSignal@cGameData@@UAEXAAV?$TypedEventPair@_NH@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1cGameData@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?On_Game_Begin@cGameData@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?On_Game_End@cGameData@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Think@cGameData@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Render@cGameData@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Reset_Game@cGameData@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Choose_Player_Type@cGameData@@UAEHPAXH_N@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Load_From_Server_Config@cGameData@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Save_To_Server_Config@cGameData@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Editable_Teaming@cGameData@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Editable_Clan_Game@cGameData@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Editable_Friendly_Fire@cGameData@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Soldier_Added@cGameData@@UAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Show_Game_Settings_Limits@cGameData@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Single_Player@cGameData@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Skirmish@cGameData@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Cnc@cGameData@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?As_Single_Player@cGameData@@UAEPAVcGameDataSinglePlayer@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?As_Skirmish@cGameData@@UAEPAVcGameDataSkirmish@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?As_Cnc@cGameData@@UAEPAVcGameDataCnc@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Min_Players@cGameData@@UAEIXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Game_Over@cGameData@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Limited@cGameData@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Valid_Settings@cGameData@@UAE_NAAVWideStringClass@@_N@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Export_Tier_1_Data@cGameData@@UAEXPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Import_Tier_1_Data@cGameData@@UAEXPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Import_Tier_1_Data_Wol@cGameData@@UAEXPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Export_Tier_2_Data@cGameData@@UAEXPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Import_Tier_2_Data@cGameData@@UAEXPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Gameplay_Permitted@cGameData@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Remember_Inventory@cGameData@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Description@cGameData@@UAEXAAVWideStringClass@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GcGameData@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1cGameDataCnc@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?On_Game_Begin@cGameDataCnc@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?On_Game_End@cGameDataCnc@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Think@cGameDataCnc@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Reset_Game@cGameDataCnc@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Game_Name@cGameDataCnc@@UAE?AVWideStringClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Game_Type@cGameDataCnc@@UAEHXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Load_From_Server_Config@cGameDataCnc@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Save_To_Server_Config@cGameDataCnc@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Editable_Teaming@cGameDataCnc@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Editable_Clan_Game@cGameDataCnc@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Editable_Friendly_Fire@cGameDataCnc@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Soldier_Added@cGameDataCnc@@UAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Show_Game_Settings_Limits@cGameDataCnc@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Cnc@cGameDataCnc@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?As_Cnc@cGameDataCnc@@UAEPAV1@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Game_Over@cGameDataCnc@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Limited@cGameDataCnc@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Valid_Settings@cGameDataCnc@@UAE_NAAVWideStringClass@@_N@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Export_Tier_2_Data@cGameDataCnc@@UAEXPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Import_Tier_2_Data@cGameDataCnc@@UAEXPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Gameplay_Permitted@cGameDataCnc@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Description@cGameDataCnc@@UAEXAAVWideStringClass@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GcGameDataCnc@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1cGameDataSkirmish@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?On_Game_Begin@cGameDataSkirmish@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?On_Game_End@cGameDataSkirmish@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Think@cGameDataSkirmish@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Reset_Game@cGameDataSkirmish@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Game_Name@cGameDataSkirmish@@UAE?AVWideStringClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Game_Type@cGameDataSkirmish@@UAEHXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Load_From_Server_Config@cGameDataSkirmish@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Save_To_Server_Config@cGameDataSkirmish@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Editable_Teaming@cGameDataSkirmish@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Editable_Clan_Game@cGameDataSkirmish@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Editable_Friendly_Fire@cGameDataSkirmish@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Soldier_Added@cGameDataSkirmish@@UAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Show_Game_Settings_Limits@cGameDataSkirmish@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Skirmish@cGameDataSkirmish@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?As_Skirmish@cGameDataSkirmish@@UAEPAV1@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Game_Over@cGameDataSkirmish@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Limited@cGameDataSkirmish@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Description@cGameDataSkirmish@@UAEXAAVWideStringClass@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GcGameDataSkirmish@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1cGameDataSinglePlayer@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Game_Name@cGameDataSinglePlayer@@UAE?AVWideStringClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Game_Type@cGameDataSinglePlayer@@UAEHXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Choose_Player_Type@cGameDataSinglePlayer@@UAEHPAXH_N@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Single_Player@cGameDataSinglePlayer@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?As_Single_Player@cGameDataSinglePlayer@@UAEPAV1@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Limited@cGameDataSinglePlayer@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Remember_Inventory@cGameDataSinglePlayer@@UAE_NXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GcGameDataSinglePlayer@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1PostLoadableClass@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?On_Post_Load@PostLoadableClass@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GPostLoadableClass@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1PersistClass@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Save@PersistClass@@UAE_NPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Load@PersistClass@@UAE_NPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GPersistClass@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1EditableClass@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Parameter_Count@EditableClass@@UAEHXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Lock_Parameter@EditableClass@@UAEPAXH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Unlock_Parameter@EditableClass@@UAEXH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GEditableClass@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1DefinitionClass@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Save@DefinitionClass@@UAE_NPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Load@DefinitionClass@@UAE_NPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_ID@DefinitionClass@@UAEKXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Set_ID@DefinitionClass@@UAEXK@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Name@DefinitionClass@@UAEPADXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Set_Name@DefinitionClass@@UAEXPAD@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_Valid_Config@DefinitionClass@@UAE_NPBD@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GDefinitionClass@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1TeamPurchaseSettingsDefClass@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Factory@TeamPurchaseSettingsDefClass@@UAEPAXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Save@TeamPurchaseSettingsDefClass@@UAE_NPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Load@TeamPurchaseSettingsDefClass@@UAE_NPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Class_ID@TeamPurchaseSettingsDefClass@@UAEKXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@TeamPurchaseSettingsDefClass@@UAEPAVPersistClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GTeamPurchaseSettingsDefClass@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1PurchaseSettingsDefClass@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Factory@PurchaseSettingsDefClass@@UAEPAXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Save@PurchaseSettingsDefClass@@UAE_NPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Load@PurchaseSettingsDefClass@@UAE_NPAX@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Class_ID@PurchaseSettingsDefClass@@UAEKXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@PurchaseSettingsDefClass@@UAEPAVPersistClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GPurchaseSettingsDefClass@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0UnitInfo@@QAE@IIIII@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0ExpVehFacClass@@QAE@I@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Disable_Ground@ExpVehFacClass@@QAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Disable_Flying@ExpVehFacClass@@QAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Disable_Naval@ExpVehFacClass@@QAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Set_Ground_Currently_Building@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Set_Flying_Currently_Building@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Set_Naval_Currently_Building@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Set_Ground_Limit_Reached@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Set_Flying_Limit_Reached@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Set_Naval_Limit_Reached@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Set_Support_Limit_Reached@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Is_In_Vector@ExpVehFacClass@@AAE_NAAV?$SimpleDynVecClass@I@@I@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Unit_Info@ExpVehFacClass@@QAEPAUUnitInfo@@I@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Flying_Landing_Position@ExpVehFacClass@@AAE?AUVector3@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Get_Naval_Creation_Position@ExpVehFacClass@@AAEPAEI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Load@ExpVehFacClass@@QAEXPBD0PAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Clear@ExpVehFacClass@@QAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Purchase_Hook@ExpVehFacClass@@SAHPAVBaseControllerClass@@PAEIIPBD@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Object_Hook@ExpVehFacClass@@SAXPAXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@MDB_ExpVehFac_Helipad@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Killed@MDB_ExpVehFac_Helipad@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@MDB_ExpVehFac_Helipad@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Destroyed@MDB_ExpVehFac_Helipad@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@MDB_ExpVehFac_Naval@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Killed@MDB_ExpVehFac_Naval@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@MDB_ExpVehFac_Naval@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Destroyed@MDB_ExpVehFac_Naval@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Killed@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@MDB_ExpVehFac_Cinematic@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Destroyed@MDB_ExpVehFac_Cinematic@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@MDB_ExpVehFac_Cinematic@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Damaged@MDB_ExpVehFac_Cinematic_Vehicle@@EAEXPAE0M@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@MDB_ExpVehFac_Limit@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Destroyed@MDB_ExpVehFac_Limit@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@MDB_ExpVehFac_Limit@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E1
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E2
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E4
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E5
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E7
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E8
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E10
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E11
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E13
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E14
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E16
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E17
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$DynamicVectorClass@VWideStringClass@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$DynamicVectorClass@VWideStringClass@@@@UAE_NHPAVWideStringClass@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Clear@?$DynamicVectorClass@VWideStringClass@@@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ID@?$DynamicVectorClass@VWideStringClass@@@@UAEHAAVWideStringClass@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ID@?$DynamicVectorClass@VWideStringClass@@@@UAEHPAVWideStringClass@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$VectorClass@VWideStringClass@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??8?$VectorClass@VWideStringClass@@@@UAE_NAAV0@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$VectorClass@VWideStringClass@@@@UAE_NHPAVWideStringClass@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Clear@?$VectorClass@VWideStringClass@@@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ID@?$VectorClass@VWideStringClass@@@@UAEHAAVWideStringClass@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ID@?$VectorClass@VWideStringClass@@@@UAEHPAVWideStringClass@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ReceiveSignal@?$Signaler@V?$TypedEventPair@_NH@@@@UAEXAAV?$TypedEventPair@_NH@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?SignalDropped@?$Signaler@V?$TypedEventPair@_NH@@@@UAEXAAV1@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$Signaler@V?$TypedEventPair@_NH@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$DynamicVectorClass@PAE@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$DynamicVectorClass@PAE@@UAE_NHPAPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Clear@?$DynamicVectorClass@PAE@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ID@?$DynamicVectorClass@PAE@@UAEHAAPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ID@?$DynamicVectorClass@PAE@@UAEHPAPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$VectorClass@PAE@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??8?$VectorClass@PAE@@UAE_NAAV0@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$VectorClass@PAE@@UAE_NHPAPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Clear@?$VectorClass@PAE@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ID@?$VectorClass@PAE@@UAEHAAPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ID@?$VectorClass@PAE@@UAEHPAPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$DynamicVectorClass@PAK@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$DynamicVectorClass@PAK@@UAE_NHPAPAK@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Clear@?$DynamicVectorClass@PAK@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ID@?$DynamicVectorClass@PAK@@UAEHAAPAK@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ID@?$DynamicVectorClass@PAK@@UAEHPAPAK@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$VectorClass@PAK@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??8?$VectorClass@PAK@@UAE_NAAV0@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$VectorClass@PAK@@UAE_NHPAPAK@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Clear@?$VectorClass@PAK@@UAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ID@?$VectorClass@PAK@@UAEHAAPAK@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?ID@?$VectorClass@PAK@@UAEHPAPAK@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$SimpleDynVecClass@PAUUnitInfo@@@@QAE@H@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Count@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$SimpleDynVecClass@PAUUnitInfo@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleDynVecClass@PAUUnitInfo@@@@UAE_NH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Add@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHAAPAUUnitInfo@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Delete@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEXH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Uninitialised_Grow@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??A?$SimpleVecClass@PAUUnitInfo@@@@QAEAAPAUUnitInfo@@H@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$SimpleVecClass@PAUUnitInfo@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$SimpleDynVecClass@PAUCreationPos@@@@QAE@H@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Count@?$SimpleDynVecClass@PAUCreationPos@@@@QAEHXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$SimpleDynVecClass@PAUCreationPos@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleDynVecClass@PAUCreationPos@@@@UAE_NH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Add@?$SimpleDynVecClass@PAUCreationPos@@@@QAEHAAPAUCreationPos@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Delete@?$SimpleDynVecClass@PAUCreationPos@@@@QAEXH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Uninitialised_Grow@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??A?$SimpleVecClass@PAUCreationPos@@@@QAEAAPAUCreationPos@@H@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$SimpleVecClass@PAUCreationPos@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$SimpleDynVecClass@PAE@@QAE@H@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Count@?$SimpleDynVecClass@PAE@@QAEHXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$SimpleDynVecClass@PAE@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleDynVecClass@PAE@@UAE_NH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Delete@?$SimpleDynVecClass@PAE@@QAEXH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??4?$SimpleDynVecClass@PAE@@QAEAAV0@ABV0@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Uninitialised_Grow@?$SimpleVecClass@PAE@@UAE_NH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??A?$SimpleVecClass@PAE@@QAEAAPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$SimpleVecClass@PAE@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleVecClass@PAE@@UAE_NH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$SimpleDynVecClass@I@@QAE@H@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Count@?$SimpleDynVecClass@I@@QAEHXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$SimpleDynVecClass@I@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleDynVecClass@I@@UAE_NH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Add@?$SimpleDynVecClass@I@@QAEHAAI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Uninitialised_Grow@?$SimpleVecClass@I@@UAE_NH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??A?$SimpleVecClass@I@@QAEAAIH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1?$SimpleVecClass@I@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleVecClass@I@@UAE_NH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$DynamicVectorClass@VWideStringClass@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$VectorClass@VWideStringClass@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$Signaler@V?$TypedEventPair@_NH@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$DynamicVectorClass@PAE@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$VectorClass@PAE@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$DynamicVectorClass@PAK@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$VectorClass@PAK@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$SimpleDynVecClass@PAUUnitInfo@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$SimpleVecClass@PAUUnitInfo@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$SimpleDynVecClass@PAUCreationPos@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$SimpleVecClass@PAUCreationPos@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$SimpleDynVecClass@PAE@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$SimpleVecClass@PAE@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$SimpleDynVecClass@I@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$SimpleVecClass@I@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$SimpleVecClass@PAUUnitInfo@@@@QAE@I@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$SimpleVecClass@PAUCreationPos@@@@QAE@I@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$SimpleVecClass@PAE@@QAE@I@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??4?$SimpleVecClass@PAE@@QAEAAV0@ABV0@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$SimpleVecClass@I@@QAE@I@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??$_Pow_int@N@@YANNH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??$_Pow_int@H@@YAHHH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??$_Pow_int@M@@YAMMH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??$_Pow_int@O@@YAOOH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0MDB_ExpVehFac_Helipad@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0MDB_ExpVehFac_Naval@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0MDB_ExpVehFac_Vehicle_Factory@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0MDB_ExpVehFac_Cinematic@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0MDB_ExpVehFac_Cinematic_Vehicle@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0MDB_ExpVehFac_Limit@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GMDB_ExpVehFac_Helipad@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GMDB_ExpVehFac_Naval@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GMDB_ExpVehFac_Vehicle_Factory@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GMDB_ExpVehFac_Cinematic@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GMDB_ExpVehFac_Cinematic_Vehicle@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GMDB_ExpVehFac_Limit@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1MDB_ExpVehFac_Helipad@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1MDB_ExpVehFac_Naval@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1MDB_ExpVehFac_Vehicle_Factory@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1MDB_ExpVehFac_Cinematic@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1MDB_ExpVehFac_Cinematic_Vehicle@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1MDB_ExpVehFac_Limit@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_7?$SimpleVecClass@I@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7MDB_ExpVehFac_Naval@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$SimpleVecClass@PAUCreationPos@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7TeamPurchaseSettingsDefClass@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$SimpleVecClass@PAUUnitInfo@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$DynamicVectorClass@VWideStringClass@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7cGameDataSkirmish@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7DefinitionClass@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7PurchaseSettingsDefClass@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$VectorClass@PAK@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7MDB_ExpVehFac_Vehicle_Factory@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7MDB_ExpVehFac_Cinematic@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7PostLoadableClass@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$SimpleDynVecClass@PAUUnitInfo@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$Signaler@V?$TypedEventPair@_NH@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$VectorClass@VWideStringClass@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7PersistClass@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7cGameData@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$SimpleDynVecClass@PAE@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7cGameDataSinglePlayer@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$SimpleVecClass@PAE@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$VectorClass@PAE@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$DynamicVectorClass@PAE@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7MDB_ExpVehFac_Helipad@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7EditableClass@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7cGameDataCnc@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7MDB_ExpVehFac_Cinematic_Vehicle@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$DynamicVectorClass@PAK@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$SimpleDynVecClass@I@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$SimpleDynVecClass@PAUCreationPos@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7MDB_ExpVehFac_Limit@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
sxdata	SEGMENT DWORD USE32 'SXDATA'
sxdata	ENDS
FLAT	GROUP _DATA, CONST, _BSS
	ASSUME	CS: FLAT, DS: FLAT, SS: FLAT
endif

INCLUDELIB LIBCMT
INCLUDELIB OLDNAMES

PUBLIC	?ExpVehFac@@3PAPAVExpVehFacClass@@A		; ExpVehFac
_BSS	SEGMENT
?ExpVehFac@@3PAPAVExpVehFacClass@@A DD 02H DUP (?)	; ExpVehFac
_BSS	ENDS
PUBLIC	??0UnitInfo@@QAE@IIIII@Z			; UnitInfo::UnitInfo
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\mdbevf.h
;	COMDAT ??0UnitInfo@@QAE@IIIII@Z
_TEXT	SEGMENT
_type$ = 8						; size = 4
_pos$ = 12						; size = 4
_preset$ = 16						; size = 4
_cost$ = 20						; size = 4
_string$ = 24						; size = 4
??0UnitInfo@@QAE@IIIII@Z PROC NEAR			; UnitInfo::UnitInfo, COMDAT
; _this$ = ecx

; 29   : 	UnitInfo(unsigned int type,unsigned int pos,unsigned int preset,unsigned int cost,unsigned int string) : Type(type), Pos(pos), Preset(preset), Cost(cost), StringID(string), Support(false) {}

	mov	edx, DWORD PTR _pos$[esp-4]
	mov	eax, ecx
	mov	ecx, DWORD PTR _type$[esp-4]
	mov	DWORD PTR [eax], ecx
	mov	ecx, DWORD PTR _preset$[esp-4]
	mov	DWORD PTR [eax+4], edx
	mov	edx, DWORD PTR _cost$[esp-4]
	mov	DWORD PTR [eax+8], ecx
	mov	ecx, DWORD PTR _string$[esp-4]
	mov	DWORD PTR [eax+12], edx
	mov	DWORD PTR [eax+16], ecx
	mov	BYTE PTR [eax+28], 0
	ret	20					; 00000014H
??0UnitInfo@@QAE@IIIII@Z ENDP				; UnitInfo::UnitInfo
_TEXT	ENDS
PUBLIC	?Timer_Expired@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAEH@Z ; MDB_ExpVehFac_Vehicle_Factory::Timer_Expired
EXTRN	?Set_Can_Generate_Vehicles@@YAXH_N@Z:NEAR	; Set_Can_Generate_Vehicles
EXTRN	?Get_Object_Type@@YAHPAE@Z:NEAR			; Get_Object_Type
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\mdbevf.cpp
;	COMDAT ?Timer_Expired@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAEH@Z PROC NEAR ; MDB_ExpVehFac_Vehicle_Factory::Timer_Expired, COMDAT
; _this$ = ecx

; 1156 : 	Set_Can_Generate_Vehicles(Get_Object_Type(obj),true);

	mov	eax, DWORD PTR _obj$[esp-4]
	push	1
	push	eax
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	push	eax
	call	?Set_Can_Generate_Vehicles@@YAXH_N@Z	; Set_Can_Generate_Vehicles
	add	esp, 8

; 1157 : }

	ret	8
?Timer_Expired@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAEH@Z ENDP ; MDB_ExpVehFac_Vehicle_Factory::Timer_Expired
_TEXT	ENDS
PUBLIC	?Created@MDB_ExpVehFac_Cinematic@@EAEXPAE@Z	; MDB_ExpVehFac_Cinematic::Created
PUBLIC	??_C@_00CNPNBAHC@?$AA@				; `string'
PUBLIC	??_C@_04GBPANCCF@Team?$AA@			; `string'
PUBLIC	??_C@_06BIJBOFNL@Origin?$AA@			; `string'
PUBLIC	??_C@_0CA@HEBOGOMN@MDB_ExpVehFac_Cinematic_Vehicle?$AA@ ; `string'
EXTRN	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z:NEAR ; ScriptImpClass::Get_Int_Parameter
EXTRN	?Commands@@3PAUScriptCommands@@A:DWORD		; Commands
EXTRN	?Get_Definition_Name@@YAPBDK@Z:NEAR		; Get_Definition_Name
;	COMDAT ??_C@_04GBPANCCF@Team?$AA@
CONST	SEGMENT
??_C@_04GBPANCCF@Team?$AA@ DB 'Team', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_06BIJBOFNL@Origin?$AA@
CONST	SEGMENT
??_C@_06BIJBOFNL@Origin?$AA@ DB 'Origin', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_00CNPNBAHC@?$AA@
CONST	SEGMENT
??_C@_00CNPNBAHC@?$AA@ DB 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_0CA@HEBOGOMN@MDB_ExpVehFac_Cinematic_Vehicle?$AA@
CONST	SEGMENT
??_C@_0CA@HEBOGOMN@MDB_ExpVehFac_Cinematic_Vehicle?$AA@ DB 'MDB_ExpVehFac'
	DB	'_Cinematic_Vehicle', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Created@MDB_ExpVehFac_Cinematic@@EAEXPAE@Z
_TEXT	SEGMENT
$T8301 = -24						; size = 12
$T8302 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@MDB_ExpVehFac_Cinematic@@EAEXPAE@Z PROC NEAR	; MDB_ExpVehFac_Cinematic::Created, COMDAT
; _this$ = ecx

; 1160 : {

	sub	esp, 24					; 00000018H
	push	ebx
	push	ebp
	push	esi
	push	edi

; 1161 : 	int Team = Get_Int_Parameter("Team");

	push	OFFSET FLAT:??_C@_04GBPANCCF@Team?$AA@
	mov	ebx, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter

; 1162 : 	Commands->Set_Player_Type(obj,Team);

	mov	ebp, DWORD PTR _obj$[esp+36]
	mov	edi, eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	push	ebp
	call	DWORD PTR [eax+252]

; 1163 : 	GameObject *Veh = Commands->Create_Object(Get_Definition_Name(ExpVehFac[Team]->LastFlyVehID),Commands->Get_Position(obj));

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T8302[esp+48]
	push	ebp
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR $T8301[esp+56], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR $T8301[esp+60], edx
	mov	eax, DWORD PTR [eax+8]
	mov	edx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edi*4]
	add	esp, 16					; 00000010H
	lea	ecx, DWORD PTR $T8301[esp+40]
	mov	DWORD PTR $T8301[esp+48], eax
	mov	eax, DWORD PTR [edx+108]
	push	ecx
	push	eax
	add	esi, 100				; 00000064H
	call	?Get_Definition_Name@@YAPBDK@Z		; Get_Definition_Name
	add	esp, 4
	push	eax
	call	DWORD PTR [esi]

; 1164 : 	Commands->Attach_To_Object_Bone(Veh,obj,"Origin");

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	OFFSET FLAT:??_C@_06BIJBOFNL@Origin?$AA@
	mov	esi, eax
	push	ebp
	push	esi
	call	DWORD PTR [ecx+572]

; 1165 : 	Commands->Attach_Script(Veh,"MDB_ExpVehFac_Cinematic_Vehicle","");

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	OFFSET FLAT:??_C@_00CNPNBAHC@?$AA@
	push	OFFSET FLAT:??_C@_0CA@HEBOGOMN@MDB_ExpVehFac_Cinematic_Vehicle?$AA@
	push	esi
	call	DWORD PTR [edx+120]

; 1166 : 	Commands->Set_Player_Type(Veh,-2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	-2					; fffffffeH
	push	esi
	call	DWORD PTR [eax+252]

; 1167 : 	ExpVehFac[Team]->LastFlyVehID = 0;

	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edi*4]
	mov	DWORD PTR [ecx+108], 0

; 1168 : 	ID = Commands->Get_ID(Veh);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	call	DWORD PTR [edx+108]
	add	esp, 44					; 0000002cH
	pop	edi
	pop	esi
	pop	ebp
	mov	DWORD PTR [ebx+28], eax
	pop	ebx

; 1169 : }

	add	esp, 24					; 00000018H
	ret	4
?Created@MDB_ExpVehFac_Cinematic@@EAEXPAE@Z ENDP	; MDB_ExpVehFac_Cinematic::Created
_TEXT	ENDS
PUBLIC	?Destroyed@MDB_ExpVehFac_Cinematic@@EAEXPAE@Z	; MDB_ExpVehFac_Cinematic::Destroyed
EXTRN	?Remove_Script@@YAXPAEPBD@Z:NEAR		; Remove_Script
; Function compile flags: /Ogty
;	COMDAT ?Destroyed@MDB_ExpVehFac_Cinematic@@EAEXPAE@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
?Destroyed@MDB_ExpVehFac_Cinematic@@EAEXPAE@Z PROC NEAR	; MDB_ExpVehFac_Cinematic::Destroyed, COMDAT
; _this$ = ecx

; 1173 : 	GameObject *Veh = Commands->Find_Object(ID);

	mov	eax, DWORD PTR [ecx+28]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	push	edi
	push	eax
	call	DWORD PTR [ecx+96]
	mov	esi, eax

; 1174 : 	Remove_Script(Veh,"MDB_ExpVehFac_Cinematic_Vehicle");

	push	OFFSET FLAT:??_C@_0CA@HEBOGOMN@MDB_ExpVehFac_Cinematic_Vehicle?$AA@
	push	esi
	call	?Remove_Script@@YAXPAEPBD@Z		; Remove_Script

; 1175 : 	Commands->Enable_Engine(Veh,false);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	esi
	call	DWORD PTR [edx+552]

; 1176 : 	Commands->Set_Player_Type(Veh,Get_Object_Type(obj));

	mov	eax, DWORD PTR _obj$[esp+24]
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	add	edi, 252				; 000000fcH
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	push	eax
	push	esi
	call	DWORD PTR [edi]
	add	esp, 32					; 00000020H
	pop	edi
	pop	esi

; 1177 : }

	ret	4
?Destroyed@MDB_ExpVehFac_Cinematic@@EAEXPAE@Z ENDP	; MDB_ExpVehFac_Cinematic::Destroyed
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@MDB_ExpVehFac_Cinematic@@EAEXXZ ; MDB_ExpVehFac_Cinematic::Register_Auto_Save_Variables
EXTRN	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z:NEAR ; ScriptImpClass::Auto_Save_Variable
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@MDB_ExpVehFac_Cinematic@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@MDB_ExpVehFac_Cinematic@@EAEXXZ PROC NEAR ; MDB_ExpVehFac_Cinematic::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1181 : 	Auto_Save_Variable(1,4,&ID);

	lea	eax, DWORD PTR [ecx+28]
	push	eax
	push	4
	push	1
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1182 : }

	ret	0
?Register_Auto_Save_Variables@MDB_ExpVehFac_Cinematic@@EAEXXZ ENDP ; MDB_ExpVehFac_Cinematic::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Damaged@MDB_ExpVehFac_Cinematic_Vehicle@@EAEXPAE0M@Z ; MDB_ExpVehFac_Cinematic_Vehicle::Damaged
EXTRN	__fltused:NEAR
; Function compile flags: /Ogty
;	COMDAT ?Damaged@MDB_ExpVehFac_Cinematic_Vehicle@@EAEXPAE0M@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_damager$ = 12						; size = 4
_damage$ = 16						; size = 4
?Damaged@MDB_ExpVehFac_Cinematic_Vehicle@@EAEXPAE0M@Z PROC NEAR ; MDB_ExpVehFac_Cinematic_Vehicle::Damaged, COMDAT
; _this$ = ecx

; 1186 : 	Commands->Set_Health(obj,Commands->Get_Max_Health(obj));

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	mov	esi, DWORD PTR _obj$[esp]
	push	edi
	push	esi
	lea	edi, DWORD PTR [eax+228]
	call	DWORD PTR [eax+224]
	fstp	DWORD PTR [esp]
	push	esi
	call	DWORD PTR [edi]

; 1187 : 	Commands->Set_Shield_Strength(obj,Commands->Get_Max_Shield_Strength(obj));

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	lea	edi, DWORD PTR [eax+240]
	call	DWORD PTR [eax+236]
	fstp	DWORD PTR [esp+8]
	add	esp, 8
	push	esi
	call	DWORD PTR [edi]
	add	esp, 8
	pop	edi
	pop	esi

; 1188 : }

	ret	12					; 0000000cH
?Damaged@MDB_ExpVehFac_Cinematic_Vehicle@@EAEXPAE0M@Z ENDP ; MDB_ExpVehFac_Cinematic_Vehicle::Damaged
_TEXT	ENDS
PUBLIC	?Created@MDB_ExpVehFac_Limit@@EAEXPAE@Z		; MDB_ExpVehFac_Limit::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@MDB_ExpVehFac_Limit@@EAEXPAE@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
?Created@MDB_ExpVehFac_Limit@@EAEXPAE@Z PROC NEAR	; MDB_ExpVehFac_Limit::Created, COMDAT
; _this$ = ecx

; 1192 : 	Team = Get_Object_Type(obj);

	mov	eax, DWORD PTR _obj$[esp-4]
	push	esi
	push	eax
	mov	esi, ecx
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	mov	DWORD PTR [esi+28], eax
	pop	esi

; 1193 : }

	ret	4
?Created@MDB_ExpVehFac_Limit@@EAEXPAE@Z ENDP		; MDB_ExpVehFac_Limit::Created
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@MDB_ExpVehFac_Limit@@EAEXXZ ; MDB_ExpVehFac_Limit::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@MDB_ExpVehFac_Limit@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@MDB_ExpVehFac_Limit@@EAEXXZ PROC NEAR ; MDB_ExpVehFac_Limit::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1234 : 	Auto_Save_Variable(1,4,&Team);

	lea	eax, DWORD PTR [ecx+28]
	push	eax
	push	4
	push	1
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1235 : }

	ret	0
?Register_Auto_Save_Variables@MDB_ExpVehFac_Limit@@EAEXXZ ENDP ; MDB_ExpVehFac_Limit::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAE@XZ ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::~ScriptRegistrant<MDB_ExpVehFac_Helipad>
EXTRN	??1ScriptFactory@@UAE@XZ:NEAR			; ScriptFactory::~ScriptFactory
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::~ScriptRegistrant<MDB_ExpVehFac_Helipad>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAE@XZ ENDP ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::~ScriptRegistrant<MDB_ExpVehFac_Helipad>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAE@XZ ; ScriptRegistrant<MDB_ExpVehFac_Naval>::~ScriptRegistrant<MDB_ExpVehFac_Naval>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Naval>::~ScriptRegistrant<MDB_ExpVehFac_Naval>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAE@XZ ENDP ; ScriptRegistrant<MDB_ExpVehFac_Naval>::~ScriptRegistrant<MDB_ExpVehFac_Naval>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAE@XZ ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::~ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::~ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAE@XZ ENDP ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::~ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAE@XZ ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::~ScriptRegistrant<MDB_ExpVehFac_Cinematic>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::~ScriptRegistrant<MDB_ExpVehFac_Cinematic>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAE@XZ ENDP ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::~ScriptRegistrant<MDB_ExpVehFac_Cinematic>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAE@XZ ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::~ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::~ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAE@XZ ENDP ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::~ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAE@XZ ; ScriptRegistrant<MDB_ExpVehFac_Limit>::~ScriptRegistrant<MDB_ExpVehFac_Limit>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Limit>::~ScriptRegistrant<MDB_ExpVehFac_Limit>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAE@XZ ENDP ; ScriptRegistrant<MDB_ExpVehFac_Limit>::~ScriptRegistrant<MDB_ExpVehFac_Limit>
_TEXT	ENDS
PUBLIC	?Count@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHXZ ; SimpleDynVecClass<UnitInfo *>::Count
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\engine.h
;	COMDAT ?Count@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHXZ
_TEXT	SEGMENT
?Count@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHXZ PROC NEAR ; SimpleDynVecClass<UnitInfo *>::Count, COMDAT
; _this$ = ecx

; 244  : 		return ActiveCount;

	mov	eax, DWORD PTR [ecx+12]

; 245  : 	}

	ret	0
?Count@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHXZ ENDP	; SimpleDynVecClass<UnitInfo *>::Count
_TEXT	ENDS
PUBLIC	?Add@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHAAPAUUnitInfo@@@Z ; SimpleDynVecClass<UnitInfo *>::Add
; Function compile flags: /Ogty
;	COMDAT ?Add@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHAAPAUUnitInfo@@@Z
_TEXT	SEGMENT
_data$ = 8						; size = 4
?Add@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHAAPAUUnitInfo@@@Z PROC NEAR ; SimpleDynVecClass<UnitInfo *>::Add, COMDAT
; _this$ = ecx

; 267  : 	{

	push	ebx
	push	esi
	mov	esi, ecx
	push	edi

; 268  : 		for (int i = 0;i < VectorMax;i++)

	mov	edi, DWORD PTR [esi+8]
	xor	eax, eax
	test	edi, edi
	jle	SHORT $L7424
	mov	edx, DWORD PTR [esi+4]
	mov	ecx, edx
$L7422:

; 269  : 		{
; 270  : 			if (!Vector[i])

	cmp	DWORD PTR [ecx], 0
	je	SHORT $L8350
	mov	ebx, DWORD PTR [esi+8]
	inc	eax
	add	ecx, 4
	cmp	eax, ebx
	jl	SHORT $L7422
$L7424:

; 274  : 				return i;
; 275  : 			}
; 276  : 		}
; 277  : 		Resize(VectorMax+1);

	mov	edx, DWORD PTR [esi]
	inc	edi
	push	edi
	mov	ecx, esi
	call	DWORD PTR [edx+8]

; 278  : 		Vector[VectorMax-1] = data;

	mov	eax, DWORD PTR [esi+8]
	mov	edx, DWORD PTR _data$[esp+8]
	mov	edx, DWORD PTR [edx]
	mov	ecx, DWORD PTR [esi+4]
	mov	DWORD PTR [ecx+eax*4-4], edx

; 279  : 		ActiveCount++;

	mov	edx, DWORD PTR [esi+12]

; 280  : 		return VectorMax-1;

	mov	eax, DWORD PTR [esi+8]
	inc	edx
	pop	edi
	mov	DWORD PTR [esi+12], edx
	pop	esi
	dec	eax
	pop	ebx

; 281  : 	}

	ret	4
$L8350:

; 271  : 			{
; 272  : 				Vector[i] = data;

	mov	ecx, DWORD PTR _data$[esp+8]
	mov	ecx, DWORD PTR [ecx]
	mov	DWORD PTR [edx+eax*4], ecx

; 273  : 				ActiveCount++;

	mov	ecx, DWORD PTR [esi+12]
	inc	ecx
	pop	edi
	mov	DWORD PTR [esi+12], ecx
	pop	esi
	pop	ebx

; 281  : 	}

	ret	4
?Add@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHAAPAUUnitInfo@@@Z ENDP ; SimpleDynVecClass<UnitInfo *>::Add
_TEXT	ENDS
PUBLIC	?Delete@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEXH@Z ; SimpleDynVecClass<UnitInfo *>::Delete
; Function compile flags: /Ogty
;	COMDAT ?Delete@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEXH@Z
_TEXT	SEGMENT
_position$ = 8						; size = 4
?Delete@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEXH@Z PROC NEAR ; SimpleDynVecClass<UnitInfo *>::Delete, COMDAT
; _this$ = ecx

; 284  : 		Vector[position] = 0;

	mov	eax, DWORD PTR [ecx+4]
	mov	edx, DWORD PTR _position$[esp-4]
	mov	DWORD PTR [eax+edx*4], 0

; 285  : 		ActiveCount--;

	dec	DWORD PTR [ecx+12]

; 286  : 	}

	ret	4
?Delete@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEXH@Z ENDP	; SimpleDynVecClass<UnitInfo *>::Delete
_TEXT	ENDS
PUBLIC	??A?$SimpleVecClass@PAUUnitInfo@@@@QAEAAPAUUnitInfo@@H@Z ; SimpleVecClass<UnitInfo *>::operator[]
; Function compile flags: /Ogty
;	COMDAT ??A?$SimpleVecClass@PAUUnitInfo@@@@QAEAAPAUUnitInfo@@H@Z
_TEXT	SEGMENT
_index$ = 8						; size = 4
??A?$SimpleVecClass@PAUUnitInfo@@@@QAEAAPAUUnitInfo@@H@Z PROC NEAR ; SimpleVecClass<UnitInfo *>::operator[], COMDAT
; _this$ = ecx

; 170  : 		return Vector[index];

	mov	eax, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR _index$[esp-4]
	lea	eax, DWORD PTR [eax+ecx*4]

; 171  : 	}

	ret	4
??A?$SimpleVecClass@PAUUnitInfo@@@@QAEAAPAUUnitInfo@@H@Z ENDP ; SimpleVecClass<UnitInfo *>::operator[]
_TEXT	ENDS
PUBLIC	?Uninitialised_Grow@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z ; SimpleVecClass<UnitInfo *>::Uninitialised_Grow
PUBLIC	??1?$SimpleVecClass@PAUUnitInfo@@@@UAE@XZ	; SimpleVecClass<UnitInfo *>::~SimpleVecClass<UnitInfo *>
PUBLIC	?Resize@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z ; SimpleVecClass<UnitInfo *>::Resize
PUBLIC	??_7?$SimpleVecClass@PAUUnitInfo@@@@6B@		; SimpleVecClass<UnitInfo *>::`vftable'
PUBLIC	??_G?$SimpleVecClass@PAUUnitInfo@@@@UAEPAXI@Z	; SimpleVecClass<UnitInfo *>::`scalar deleting destructor'
EXTRN	??3@YAXPAX@Z:NEAR				; operator delete
EXTRN	??_E?$SimpleVecClass@PAUUnitInfo@@@@UAEPAXI@Z:NEAR ; SimpleVecClass<UnitInfo *>::`vector deleting destructor'
;	COMDAT ??_7?$SimpleVecClass@PAUUnitInfo@@@@6B@
CONST	SEGMENT
??_7?$SimpleVecClass@PAUUnitInfo@@@@6B@ DD FLAT:?Uninitialised_Grow@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z ; SimpleVecClass<UnitInfo *>::`vftable'
	DD	FLAT:??_E?$SimpleVecClass@PAUUnitInfo@@@@UAEPAXI@Z
	DD	FLAT:?Resize@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??1?$SimpleVecClass@PAUUnitInfo@@@@UAE@XZ
_TEXT	SEGMENT
??1?$SimpleVecClass@PAUUnitInfo@@@@UAE@XZ PROC NEAR	; SimpleVecClass<UnitInfo *>::~SimpleVecClass<UnitInfo *>, COMDAT
; _this$ = ecx

; 173  : 	{

	push	esi
	mov	esi, ecx

; 174  : 		if (Vector)

	mov	eax, DWORD PTR [esi+4]
	test	eax, eax
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAUUnitInfo@@@@6B@
	je	SHORT $L7438

; 175  : 		{
; 176  : 			delete Vector;

	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4

; 177  : 			Vector = 0;

	mov	DWORD PTR [esi+4], 0

; 178  : 			VectorMax = 0;

	mov	DWORD PTR [esi+8], 0
$L7438:
	pop	esi

; 179  : 		}
; 180  : 	}

	ret	0
??1?$SimpleVecClass@PAUUnitInfo@@@@UAE@XZ ENDP		; SimpleVecClass<UnitInfo *>::~SimpleVecClass<UnitInfo *>
_TEXT	ENDS
EXTRN	??2@YAPAXI@Z:NEAR				; operator new
; Function compile flags: /Ogty
;	COMDAT ?Uninitialised_Grow@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z
_TEXT	SEGMENT
_newsize$ = 8						; size = 4
?Uninitialised_Grow@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z PROC NEAR ; SimpleVecClass<UnitInfo *>::Uninitialised_Grow, COMDAT
; _this$ = ecx

; 149  : 	{

	push	esi
	push	edi

; 150  : 		if ((newsize > 0) && (newsize > VectorMax))

	mov	edi, DWORD PTR _newsize$[esp+4]
	test	edi, edi
	mov	esi, ecx
	jle	SHORT $L8368
	cmp	edi, DWORD PTR [esi+8]
	jle	SHORT $L8368

; 151  : 		{
; 152  : 			delete Vector;

	mov	eax, DWORD PTR [esi+4]
	push	eax
	call	??3@YAXPAX@Z				; operator delete

; 153  : 			Vector = new T[newsize*4];

	mov	ecx, edi
	shl	ecx, 4
	push	ecx
	call	??2@YAPAXI@Z				; operator new
	add	esp, 8
	mov	DWORD PTR [esi+4], eax

; 154  : 			VectorMax = newsize;

	mov	DWORD PTR [esi+8], edi
$L8368:
	pop	edi

; 155  : 		}
; 156  : 		return true;

	mov	al, 1
	pop	esi

; 157  : 	}

	ret	4
?Uninitialised_Grow@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z ENDP ; SimpleVecClass<UnitInfo *>::Uninitialised_Grow
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z
_TEXT	SEGMENT
_vec$ = 8						; size = 4
_newsize$ = 8						; size = 4
?Resize@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z PROC NEAR ; SimpleVecClass<UnitInfo *>::Resize, COMDAT
; _this$ = ecx

; 182  : 	{

	push	ebx
	mov	ebx, ecx

; 183  : 		T *vec;
; 184  : 		if (VectorMax == newsize)

	mov	eax, DWORD PTR [ebx+8]
	push	ebp
	mov	ebp, DWORD PTR _newsize$[esp+4]
	cmp	eax, ebp

; 185  : 		{
; 186  : 			return true;

	je	SHORT $L8375
	push	edi

; 187  : 		}
; 188  : 		if (newsize > 0)

	xor	edi, edi
	cmp	ebp, edi
	jle	SHORT $L7444

; 189  : 		{
; 190  : 			vec = new T[newsize*4];

	mov	eax, ebp
	shl	eax, 4
	push	esi
	push	eax
	call	??2@YAPAXI@Z				; operator new

; 191  : 			if (Vector)

	mov	esi, DWORD PTR [ebx+4]
	add	esp, 4
	cmp	esi, edi
	mov	DWORD PTR _vec$[esp+12], eax
	je	SHORT $L7447

; 192  : 			{
; 193  : 				int count;
; 194  : 				count = VectorMax;

	mov	ecx, DWORD PTR [ebx+8]

; 195  : 				if (newsize < count)

	cmp	ebp, ecx
	jge	SHORT $L7449

; 196  : 				{
; 197  : 					count = newsize;

	mov	ecx, ebp
$L7449:

; 198  : 				}
; 199  : 				memcpy(vec,Vector,count*4);

	mov	edi, eax
	rep movsd

; 200  : 				delete Vector;

	mov	ecx, DWORD PTR [ebx+4]
	push	ecx
	call	??3@YAXPAX@Z				; operator delete

; 201  : 				Vector = 0;

	mov	eax, DWORD PTR _vec$[esp+16]
	add	esp, 4
	mov	DWORD PTR [ebx+4], 0
$L7447:
	pop	esi
	pop	edi

; 202  : 			}
; 203  : 			Vector = vec;
; 204  : 			VectorMax = newsize;

	mov	DWORD PTR [ebx+8], ebp
	mov	DWORD PTR [ebx+4], eax
	pop	ebp

; 213  : 			}
; 214  : 		}
; 215  : 		return true;

	mov	al, 1
	pop	ebx

; 216  : 	}

	ret	4
$L7444:

; 205  : 		}
; 206  : 		else
; 207  : 		{
; 208  : 			VectorMax = 0;
; 209  : 			if (Vector)

	mov	eax, DWORD PTR [ebx+4]
	cmp	eax, edi
	mov	DWORD PTR [ebx+8], edi
	je	SHORT $L7452

; 210  : 			{
; 211  : 				delete Vector;

	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4

; 212  : 				Vector = 0;

	mov	DWORD PTR [ebx+4], edi
$L7452:
	pop	edi
$L8375:
	pop	ebp

; 213  : 			}
; 214  : 		}
; 215  : 		return true;

	mov	al, 1
	pop	ebx

; 216  : 	}

	ret	4
?Resize@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z ENDP	; SimpleVecClass<UnitInfo *>::Resize
_TEXT	ENDS
PUBLIC	?Count@?$SimpleDynVecClass@PAUCreationPos@@@@QAEHXZ ; SimpleDynVecClass<CreationPos *>::Count
; Function compile flags: /Ogty
;	COMDAT ?Count@?$SimpleDynVecClass@PAUCreationPos@@@@QAEHXZ
_TEXT	SEGMENT
?Count@?$SimpleDynVecClass@PAUCreationPos@@@@QAEHXZ PROC NEAR ; SimpleDynVecClass<CreationPos *>::Count, COMDAT
; _this$ = ecx

; 244  : 		return ActiveCount;

	mov	eax, DWORD PTR [ecx+12]

; 245  : 	}

	ret	0
?Count@?$SimpleDynVecClass@PAUCreationPos@@@@QAEHXZ ENDP ; SimpleDynVecClass<CreationPos *>::Count
_TEXT	ENDS
PUBLIC	?Add@?$SimpleDynVecClass@PAUCreationPos@@@@QAEHAAPAUCreationPos@@@Z ; SimpleDynVecClass<CreationPos *>::Add
; Function compile flags: /Ogty
;	COMDAT ?Add@?$SimpleDynVecClass@PAUCreationPos@@@@QAEHAAPAUCreationPos@@@Z
_TEXT	SEGMENT
_data$ = 8						; size = 4
?Add@?$SimpleDynVecClass@PAUCreationPos@@@@QAEHAAPAUCreationPos@@@Z PROC NEAR ; SimpleDynVecClass<CreationPos *>::Add, COMDAT
; _this$ = ecx

; 267  : 	{

	push	ebx
	push	esi
	mov	esi, ecx
	push	edi

; 268  : 		for (int i = 0;i < VectorMax;i++)

	mov	edi, DWORD PTR [esi+8]
	xor	eax, eax
	test	edi, edi
	jle	SHORT $L7471
	mov	edx, DWORD PTR [esi+4]
	mov	ecx, edx
$L7469:

; 269  : 		{
; 270  : 			if (!Vector[i])

	cmp	DWORD PTR [ecx], 0
	je	SHORT $L8383
	mov	ebx, DWORD PTR [esi+8]
	inc	eax
	add	ecx, 4
	cmp	eax, ebx
	jl	SHORT $L7469
$L7471:

; 274  : 				return i;
; 275  : 			}
; 276  : 		}
; 277  : 		Resize(VectorMax+1);

	mov	edx, DWORD PTR [esi]
	inc	edi
	push	edi
	mov	ecx, esi
	call	DWORD PTR [edx+8]

; 278  : 		Vector[VectorMax-1] = data;

	mov	eax, DWORD PTR [esi+8]
	mov	edx, DWORD PTR _data$[esp+8]
	mov	edx, DWORD PTR [edx]
	mov	ecx, DWORD PTR [esi+4]
	mov	DWORD PTR [ecx+eax*4-4], edx

; 279  : 		ActiveCount++;

	mov	edx, DWORD PTR [esi+12]

; 280  : 		return VectorMax-1;

	mov	eax, DWORD PTR [esi+8]
	inc	edx
	pop	edi
	mov	DWORD PTR [esi+12], edx
	pop	esi
	dec	eax
	pop	ebx

; 281  : 	}

	ret	4
$L8383:

; 271  : 			{
; 272  : 				Vector[i] = data;

	mov	ecx, DWORD PTR _data$[esp+8]
	mov	ecx, DWORD PTR [ecx]
	mov	DWORD PTR [edx+eax*4], ecx

; 273  : 				ActiveCount++;

	mov	ecx, DWORD PTR [esi+12]
	inc	ecx
	pop	edi
	mov	DWORD PTR [esi+12], ecx
	pop	esi
	pop	ebx

; 281  : 	}

	ret	4
?Add@?$SimpleDynVecClass@PAUCreationPos@@@@QAEHAAPAUCreationPos@@@Z ENDP ; SimpleDynVecClass<CreationPos *>::Add
_TEXT	ENDS
PUBLIC	?Delete@?$SimpleDynVecClass@PAUCreationPos@@@@QAEXH@Z ; SimpleDynVecClass<CreationPos *>::Delete
; Function compile flags: /Ogty
;	COMDAT ?Delete@?$SimpleDynVecClass@PAUCreationPos@@@@QAEXH@Z
_TEXT	SEGMENT
_position$ = 8						; size = 4
?Delete@?$SimpleDynVecClass@PAUCreationPos@@@@QAEXH@Z PROC NEAR ; SimpleDynVecClass<CreationPos *>::Delete, COMDAT
; _this$ = ecx

; 284  : 		Vector[position] = 0;

	mov	eax, DWORD PTR [ecx+4]
	mov	edx, DWORD PTR _position$[esp-4]
	mov	DWORD PTR [eax+edx*4], 0

; 285  : 		ActiveCount--;

	dec	DWORD PTR [ecx+12]

; 286  : 	}

	ret	4
?Delete@?$SimpleDynVecClass@PAUCreationPos@@@@QAEXH@Z ENDP ; SimpleDynVecClass<CreationPos *>::Delete
_TEXT	ENDS
PUBLIC	??A?$SimpleVecClass@PAUCreationPos@@@@QAEAAPAUCreationPos@@H@Z ; SimpleVecClass<CreationPos *>::operator[]
; Function compile flags: /Ogty
;	COMDAT ??A?$SimpleVecClass@PAUCreationPos@@@@QAEAAPAUCreationPos@@H@Z
_TEXT	SEGMENT
_index$ = 8						; size = 4
??A?$SimpleVecClass@PAUCreationPos@@@@QAEAAPAUCreationPos@@H@Z PROC NEAR ; SimpleVecClass<CreationPos *>::operator[], COMDAT
; _this$ = ecx

; 170  : 		return Vector[index];

	mov	eax, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR _index$[esp-4]
	lea	eax, DWORD PTR [eax+ecx*4]

; 171  : 	}

	ret	4
??A?$SimpleVecClass@PAUCreationPos@@@@QAEAAPAUCreationPos@@H@Z ENDP ; SimpleVecClass<CreationPos *>::operator[]
_TEXT	ENDS
PUBLIC	?Uninitialised_Grow@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z ; SimpleVecClass<CreationPos *>::Uninitialised_Grow
PUBLIC	??1?$SimpleVecClass@PAUCreationPos@@@@UAE@XZ	; SimpleVecClass<CreationPos *>::~SimpleVecClass<CreationPos *>
PUBLIC	?Resize@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z ; SimpleVecClass<CreationPos *>::Resize
PUBLIC	??_7?$SimpleVecClass@PAUCreationPos@@@@6B@	; SimpleVecClass<CreationPos *>::`vftable'
PUBLIC	??_G?$SimpleVecClass@PAUCreationPos@@@@UAEPAXI@Z ; SimpleVecClass<CreationPos *>::`scalar deleting destructor'
EXTRN	??_E?$SimpleVecClass@PAUCreationPos@@@@UAEPAXI@Z:NEAR ; SimpleVecClass<CreationPos *>::`vector deleting destructor'
;	COMDAT ??_7?$SimpleVecClass@PAUCreationPos@@@@6B@
CONST	SEGMENT
??_7?$SimpleVecClass@PAUCreationPos@@@@6B@ DD FLAT:?Uninitialised_Grow@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z ; SimpleVecClass<CreationPos *>::`vftable'
	DD	FLAT:??_E?$SimpleVecClass@PAUCreationPos@@@@UAEPAXI@Z
	DD	FLAT:?Resize@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??1?$SimpleVecClass@PAUCreationPos@@@@UAE@XZ
_TEXT	SEGMENT
??1?$SimpleVecClass@PAUCreationPos@@@@UAE@XZ PROC NEAR	; SimpleVecClass<CreationPos *>::~SimpleVecClass<CreationPos *>, COMDAT
; _this$ = ecx

; 173  : 	{

	push	esi
	mov	esi, ecx

; 174  : 		if (Vector)

	mov	eax, DWORD PTR [esi+4]
	test	eax, eax
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAUCreationPos@@@@6B@
	je	SHORT $L7485

; 175  : 		{
; 176  : 			delete Vector;

	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4

; 177  : 			Vector = 0;

	mov	DWORD PTR [esi+4], 0

; 178  : 			VectorMax = 0;

	mov	DWORD PTR [esi+8], 0
$L7485:
	pop	esi

; 179  : 		}
; 180  : 	}

	ret	0
??1?$SimpleVecClass@PAUCreationPos@@@@UAE@XZ ENDP	; SimpleVecClass<CreationPos *>::~SimpleVecClass<CreationPos *>
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ?Uninitialised_Grow@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z
_TEXT	SEGMENT
_newsize$ = 8						; size = 4
?Uninitialised_Grow@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z PROC NEAR ; SimpleVecClass<CreationPos *>::Uninitialised_Grow, COMDAT
; _this$ = ecx

; 149  : 	{

	push	esi
	push	edi

; 150  : 		if ((newsize > 0) && (newsize > VectorMax))

	mov	edi, DWORD PTR _newsize$[esp+4]
	test	edi, edi
	mov	esi, ecx
	jle	SHORT $L8401
	cmp	edi, DWORD PTR [esi+8]
	jle	SHORT $L8401

; 151  : 		{
; 152  : 			delete Vector;

	mov	eax, DWORD PTR [esi+4]
	push	eax
	call	??3@YAXPAX@Z				; operator delete

; 153  : 			Vector = new T[newsize*4];

	mov	ecx, edi
	shl	ecx, 4
	push	ecx
	call	??2@YAPAXI@Z				; operator new
	add	esp, 8
	mov	DWORD PTR [esi+4], eax

; 154  : 			VectorMax = newsize;

	mov	DWORD PTR [esi+8], edi
$L8401:
	pop	edi

; 155  : 		}
; 156  : 		return true;

	mov	al, 1
	pop	esi

; 157  : 	}

	ret	4
?Uninitialised_Grow@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z ENDP ; SimpleVecClass<CreationPos *>::Uninitialised_Grow
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z
_TEXT	SEGMENT
_vec$ = 8						; size = 4
_newsize$ = 8						; size = 4
?Resize@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z PROC NEAR ; SimpleVecClass<CreationPos *>::Resize, COMDAT
; _this$ = ecx

; 182  : 	{

	push	ebx
	mov	ebx, ecx

; 183  : 		T *vec;
; 184  : 		if (VectorMax == newsize)

	mov	eax, DWORD PTR [ebx+8]
	push	ebp
	mov	ebp, DWORD PTR _newsize$[esp+4]
	cmp	eax, ebp

; 185  : 		{
; 186  : 			return true;

	je	SHORT $L8408
	push	edi

; 187  : 		}
; 188  : 		if (newsize > 0)

	xor	edi, edi
	cmp	ebp, edi
	jle	SHORT $L7491

; 189  : 		{
; 190  : 			vec = new T[newsize*4];

	mov	eax, ebp
	shl	eax, 4
	push	esi
	push	eax
	call	??2@YAPAXI@Z				; operator new

; 191  : 			if (Vector)

	mov	esi, DWORD PTR [ebx+4]
	add	esp, 4
	cmp	esi, edi
	mov	DWORD PTR _vec$[esp+12], eax
	je	SHORT $L7494

; 192  : 			{
; 193  : 				int count;
; 194  : 				count = VectorMax;

	mov	ecx, DWORD PTR [ebx+8]

; 195  : 				if (newsize < count)

	cmp	ebp, ecx
	jge	SHORT $L7496

; 196  : 				{
; 197  : 					count = newsize;

	mov	ecx, ebp
$L7496:

; 198  : 				}
; 199  : 				memcpy(vec,Vector,count*4);

	mov	edi, eax
	rep movsd

; 200  : 				delete Vector;

	mov	ecx, DWORD PTR [ebx+4]
	push	ecx
	call	??3@YAXPAX@Z				; operator delete

; 201  : 				Vector = 0;

	mov	eax, DWORD PTR _vec$[esp+16]
	add	esp, 4
	mov	DWORD PTR [ebx+4], 0
$L7494:
	pop	esi
	pop	edi

; 202  : 			}
; 203  : 			Vector = vec;
; 204  : 			VectorMax = newsize;

	mov	DWORD PTR [ebx+8], ebp
	mov	DWORD PTR [ebx+4], eax
	pop	ebp

; 213  : 			}
; 214  : 		}
; 215  : 		return true;

	mov	al, 1
	pop	ebx

; 216  : 	}

	ret	4
$L7491:

; 205  : 		}
; 206  : 		else
; 207  : 		{
; 208  : 			VectorMax = 0;
; 209  : 			if (Vector)

	mov	eax, DWORD PTR [ebx+4]
	cmp	eax, edi
	mov	DWORD PTR [ebx+8], edi
	je	SHORT $L7499

; 210  : 			{
; 211  : 				delete Vector;

	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4

; 212  : 				Vector = 0;

	mov	DWORD PTR [ebx+4], edi
$L7499:
	pop	edi
$L8408:
	pop	ebp

; 213  : 			}
; 214  : 		}
; 215  : 		return true;

	mov	al, 1
	pop	ebx

; 216  : 	}

	ret	4
?Resize@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z ENDP ; SimpleVecClass<CreationPos *>::Resize
_TEXT	ENDS
PUBLIC	?Count@?$SimpleDynVecClass@PAE@@QAEHXZ		; SimpleDynVecClass<unsigned char *>::Count
; Function compile flags: /Ogty
;	COMDAT ?Count@?$SimpleDynVecClass@PAE@@QAEHXZ
_TEXT	SEGMENT
?Count@?$SimpleDynVecClass@PAE@@QAEHXZ PROC NEAR	; SimpleDynVecClass<unsigned char *>::Count, COMDAT
; _this$ = ecx

; 244  : 		return ActiveCount;

	mov	eax, DWORD PTR [ecx+12]

; 245  : 	}

	ret	0
?Count@?$SimpleDynVecClass@PAE@@QAEHXZ ENDP		; SimpleDynVecClass<unsigned char *>::Count
_TEXT	ENDS
PUBLIC	?Delete@?$SimpleDynVecClass@PAE@@QAEXH@Z	; SimpleDynVecClass<unsigned char *>::Delete
; Function compile flags: /Ogty
;	COMDAT ?Delete@?$SimpleDynVecClass@PAE@@QAEXH@Z
_TEXT	SEGMENT
_position$ = 8						; size = 4
?Delete@?$SimpleDynVecClass@PAE@@QAEXH@Z PROC NEAR	; SimpleDynVecClass<unsigned char *>::Delete, COMDAT
; _this$ = ecx

; 284  : 		Vector[position] = 0;

	mov	eax, DWORD PTR [ecx+4]
	mov	edx, DWORD PTR _position$[esp-4]
	mov	DWORD PTR [eax+edx*4], 0

; 285  : 		ActiveCount--;

	dec	DWORD PTR [ecx+12]

; 286  : 	}

	ret	4
?Delete@?$SimpleDynVecClass@PAE@@QAEXH@Z ENDP		; SimpleDynVecClass<unsigned char *>::Delete
_TEXT	ENDS
PUBLIC	??A?$SimpleVecClass@PAE@@QAEAAPAEH@Z		; SimpleVecClass<unsigned char *>::operator[]
; Function compile flags: /Ogty
;	COMDAT ??A?$SimpleVecClass@PAE@@QAEAAPAEH@Z
_TEXT	SEGMENT
_index$ = 8						; size = 4
??A?$SimpleVecClass@PAE@@QAEAAPAEH@Z PROC NEAR		; SimpleVecClass<unsigned char *>::operator[], COMDAT
; _this$ = ecx

; 170  : 		return Vector[index];

	mov	eax, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR _index$[esp-4]
	lea	eax, DWORD PTR [eax+ecx*4]

; 171  : 	}

	ret	4
??A?$SimpleVecClass@PAE@@QAEAAPAEH@Z ENDP		; SimpleVecClass<unsigned char *>::operator[]
_TEXT	ENDS
PUBLIC	?Uninitialised_Grow@?$SimpleVecClass@PAE@@UAE_NH@Z ; SimpleVecClass<unsigned char *>::Uninitialised_Grow
PUBLIC	??1?$SimpleVecClass@PAE@@UAE@XZ			; SimpleVecClass<unsigned char *>::~SimpleVecClass<unsigned char *>
PUBLIC	?Resize@?$SimpleVecClass@PAE@@UAE_NH@Z		; SimpleVecClass<unsigned char *>::Resize
PUBLIC	??_7?$SimpleVecClass@PAE@@6B@			; SimpleVecClass<unsigned char *>::`vftable'
PUBLIC	??_G?$SimpleVecClass@PAE@@UAEPAXI@Z		; SimpleVecClass<unsigned char *>::`scalar deleting destructor'
EXTRN	??_E?$SimpleVecClass@PAE@@UAEPAXI@Z:NEAR	; SimpleVecClass<unsigned char *>::`vector deleting destructor'
;	COMDAT ??_7?$SimpleVecClass@PAE@@6B@
CONST	SEGMENT
??_7?$SimpleVecClass@PAE@@6B@ DD FLAT:?Uninitialised_Grow@?$SimpleVecClass@PAE@@UAE_NH@Z ; SimpleVecClass<unsigned char *>::`vftable'
	DD	FLAT:??_E?$SimpleVecClass@PAE@@UAEPAXI@Z
	DD	FLAT:?Resize@?$SimpleVecClass@PAE@@UAE_NH@Z
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??1?$SimpleVecClass@PAE@@UAE@XZ
_TEXT	SEGMENT
??1?$SimpleVecClass@PAE@@UAE@XZ PROC NEAR		; SimpleVecClass<unsigned char *>::~SimpleVecClass<unsigned char *>, COMDAT
; _this$ = ecx

; 173  : 	{

	push	esi
	mov	esi, ecx

; 174  : 		if (Vector)

	mov	eax, DWORD PTR [esi+4]
	test	eax, eax
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAE@@6B@
	je	SHORT $L7527

; 175  : 		{
; 176  : 			delete Vector;

	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4

; 177  : 			Vector = 0;

	mov	DWORD PTR [esi+4], 0

; 178  : 			VectorMax = 0;

	mov	DWORD PTR [esi+8], 0
$L7527:
	pop	esi

; 179  : 		}
; 180  : 	}

	ret	0
??1?$SimpleVecClass@PAE@@UAE@XZ ENDP			; SimpleVecClass<unsigned char *>::~SimpleVecClass<unsigned char *>
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ?Uninitialised_Grow@?$SimpleVecClass@PAE@@UAE_NH@Z
_TEXT	SEGMENT
_newsize$ = 8						; size = 4
?Uninitialised_Grow@?$SimpleVecClass@PAE@@UAE_NH@Z PROC NEAR ; SimpleVecClass<unsigned char *>::Uninitialised_Grow, COMDAT
; _this$ = ecx

; 149  : 	{

	push	esi
	push	edi

; 150  : 		if ((newsize > 0) && (newsize > VectorMax))

	mov	edi, DWORD PTR _newsize$[esp+4]
	test	edi, edi
	mov	esi, ecx
	jle	SHORT $L8428
	cmp	edi, DWORD PTR [esi+8]
	jle	SHORT $L8428

; 151  : 		{
; 152  : 			delete Vector;

	mov	eax, DWORD PTR [esi+4]
	push	eax
	call	??3@YAXPAX@Z				; operator delete

; 153  : 			Vector = new T[newsize*4];

	mov	ecx, edi
	shl	ecx, 4
	push	ecx
	call	??2@YAPAXI@Z				; operator new
	add	esp, 8
	mov	DWORD PTR [esi+4], eax

; 154  : 			VectorMax = newsize;

	mov	DWORD PTR [esi+8], edi
$L8428:
	pop	edi

; 155  : 		}
; 156  : 		return true;

	mov	al, 1
	pop	esi

; 157  : 	}

	ret	4
?Uninitialised_Grow@?$SimpleVecClass@PAE@@UAE_NH@Z ENDP	; SimpleVecClass<unsigned char *>::Uninitialised_Grow
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleVecClass@PAE@@UAE_NH@Z
_TEXT	SEGMENT
_vec$ = 8						; size = 4
_newsize$ = 8						; size = 4
?Resize@?$SimpleVecClass@PAE@@UAE_NH@Z PROC NEAR	; SimpleVecClass<unsigned char *>::Resize, COMDAT
; _this$ = ecx

; 182  : 	{

	push	ebx
	mov	ebx, ecx

; 183  : 		T *vec;
; 184  : 		if (VectorMax == newsize)

	mov	eax, DWORD PTR [ebx+8]
	push	ebp
	mov	ebp, DWORD PTR _newsize$[esp+4]
	cmp	eax, ebp

; 185  : 		{
; 186  : 			return true;

	je	SHORT $L8435
	push	edi

; 187  : 		}
; 188  : 		if (newsize > 0)

	xor	edi, edi
	cmp	ebp, edi
	jle	SHORT $L7533

; 189  : 		{
; 190  : 			vec = new T[newsize*4];

	mov	eax, ebp
	shl	eax, 4
	push	esi
	push	eax
	call	??2@YAPAXI@Z				; operator new

; 191  : 			if (Vector)

	mov	esi, DWORD PTR [ebx+4]
	add	esp, 4
	cmp	esi, edi
	mov	DWORD PTR _vec$[esp+12], eax
	je	SHORT $L7536

; 192  : 			{
; 193  : 				int count;
; 194  : 				count = VectorMax;

	mov	ecx, DWORD PTR [ebx+8]

; 195  : 				if (newsize < count)

	cmp	ebp, ecx
	jge	SHORT $L7538

; 196  : 				{
; 197  : 					count = newsize;

	mov	ecx, ebp
$L7538:

; 198  : 				}
; 199  : 				memcpy(vec,Vector,count*4);

	mov	edi, eax
	rep movsd

; 200  : 				delete Vector;

	mov	ecx, DWORD PTR [ebx+4]
	push	ecx
	call	??3@YAXPAX@Z				; operator delete

; 201  : 				Vector = 0;

	mov	eax, DWORD PTR _vec$[esp+16]
	add	esp, 4
	mov	DWORD PTR [ebx+4], 0
$L7536:
	pop	esi
	pop	edi

; 202  : 			}
; 203  : 			Vector = vec;
; 204  : 			VectorMax = newsize;

	mov	DWORD PTR [ebx+8], ebp
	mov	DWORD PTR [ebx+4], eax
	pop	ebp

; 213  : 			}
; 214  : 		}
; 215  : 		return true;

	mov	al, 1
	pop	ebx

; 216  : 	}

	ret	4
$L7533:

; 205  : 		}
; 206  : 		else
; 207  : 		{
; 208  : 			VectorMax = 0;
; 209  : 			if (Vector)

	mov	eax, DWORD PTR [ebx+4]
	cmp	eax, edi
	mov	DWORD PTR [ebx+8], edi
	je	SHORT $L7541

; 210  : 			{
; 211  : 				delete Vector;

	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4

; 212  : 				Vector = 0;

	mov	DWORD PTR [ebx+4], edi
$L7541:
	pop	edi
$L8435:
	pop	ebp

; 213  : 			}
; 214  : 		}
; 215  : 		return true;

	mov	al, 1
	pop	ebx

; 216  : 	}

	ret	4
?Resize@?$SimpleVecClass@PAE@@UAE_NH@Z ENDP		; SimpleVecClass<unsigned char *>::Resize
_TEXT	ENDS
PUBLIC	?Count@?$SimpleDynVecClass@I@@QAEHXZ		; SimpleDynVecClass<unsigned int>::Count
; Function compile flags: /Ogty
;	COMDAT ?Count@?$SimpleDynVecClass@I@@QAEHXZ
_TEXT	SEGMENT
?Count@?$SimpleDynVecClass@I@@QAEHXZ PROC NEAR		; SimpleDynVecClass<unsigned int>::Count, COMDAT
; _this$ = ecx

; 244  : 		return ActiveCount;

	mov	eax, DWORD PTR [ecx+12]

; 245  : 	}

	ret	0
?Count@?$SimpleDynVecClass@I@@QAEHXZ ENDP		; SimpleDynVecClass<unsigned int>::Count
_TEXT	ENDS
PUBLIC	?Add@?$SimpleDynVecClass@I@@QAEHAAI@Z		; SimpleDynVecClass<unsigned int>::Add
; Function compile flags: /Ogty
;	COMDAT ?Add@?$SimpleDynVecClass@I@@QAEHAAI@Z
_TEXT	SEGMENT
_data$ = 8						; size = 4
?Add@?$SimpleDynVecClass@I@@QAEHAAI@Z PROC NEAR		; SimpleDynVecClass<unsigned int>::Add, COMDAT
; _this$ = ecx

; 267  : 	{

	push	ebx
	push	esi
	mov	esi, ecx
	push	edi

; 268  : 		for (int i = 0;i < VectorMax;i++)

	mov	edi, DWORD PTR [esi+8]
	xor	eax, eax
	test	edi, edi
	jle	SHORT $L7560
	mov	edx, DWORD PTR [esi+4]
	mov	ecx, edx
$L7558:

; 269  : 		{
; 270  : 			if (!Vector[i])

	cmp	DWORD PTR [ecx], 0
	je	SHORT $L8443
	mov	ebx, DWORD PTR [esi+8]
	inc	eax
	add	ecx, 4
	cmp	eax, ebx
	jl	SHORT $L7558
$L7560:

; 274  : 				return i;
; 275  : 			}
; 276  : 		}
; 277  : 		Resize(VectorMax+1);

	mov	edx, DWORD PTR [esi]
	inc	edi
	push	edi
	mov	ecx, esi
	call	DWORD PTR [edx+8]

; 278  : 		Vector[VectorMax-1] = data;

	mov	eax, DWORD PTR [esi+8]
	mov	edx, DWORD PTR _data$[esp+8]
	mov	edx, DWORD PTR [edx]
	mov	ecx, DWORD PTR [esi+4]
	mov	DWORD PTR [ecx+eax*4-4], edx

; 279  : 		ActiveCount++;

	mov	edx, DWORD PTR [esi+12]

; 280  : 		return VectorMax-1;

	mov	eax, DWORD PTR [esi+8]
	inc	edx
	pop	edi
	mov	DWORD PTR [esi+12], edx
	pop	esi
	dec	eax
	pop	ebx

; 281  : 	}

	ret	4
$L8443:

; 271  : 			{
; 272  : 				Vector[i] = data;

	mov	ecx, DWORD PTR _data$[esp+8]
	mov	ecx, DWORD PTR [ecx]
	mov	DWORD PTR [edx+eax*4], ecx

; 273  : 				ActiveCount++;

	mov	ecx, DWORD PTR [esi+12]
	inc	ecx
	pop	edi
	mov	DWORD PTR [esi+12], ecx
	pop	esi
	pop	ebx

; 281  : 	}

	ret	4
?Add@?$SimpleDynVecClass@I@@QAEHAAI@Z ENDP		; SimpleDynVecClass<unsigned int>::Add
_TEXT	ENDS
PUBLIC	??A?$SimpleVecClass@I@@QAEAAIH@Z		; SimpleVecClass<unsigned int>::operator[]
; Function compile flags: /Ogty
;	COMDAT ??A?$SimpleVecClass@I@@QAEAAIH@Z
_TEXT	SEGMENT
_index$ = 8						; size = 4
??A?$SimpleVecClass@I@@QAEAAIH@Z PROC NEAR		; SimpleVecClass<unsigned int>::operator[], COMDAT
; _this$ = ecx

; 170  : 		return Vector[index];

	mov	eax, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR _index$[esp-4]
	lea	eax, DWORD PTR [eax+ecx*4]

; 171  : 	}

	ret	4
??A?$SimpleVecClass@I@@QAEAAIH@Z ENDP			; SimpleVecClass<unsigned int>::operator[]
_TEXT	ENDS
PUBLIC	?Uninitialised_Grow@?$SimpleVecClass@I@@UAE_NH@Z ; SimpleVecClass<unsigned int>::Uninitialised_Grow
PUBLIC	??1?$SimpleVecClass@I@@UAE@XZ			; SimpleVecClass<unsigned int>::~SimpleVecClass<unsigned int>
PUBLIC	?Resize@?$SimpleVecClass@I@@UAE_NH@Z		; SimpleVecClass<unsigned int>::Resize
PUBLIC	??_7?$SimpleVecClass@I@@6B@			; SimpleVecClass<unsigned int>::`vftable'
PUBLIC	??_G?$SimpleVecClass@I@@UAEPAXI@Z		; SimpleVecClass<unsigned int>::`scalar deleting destructor'
EXTRN	??_E?$SimpleVecClass@I@@UAEPAXI@Z:NEAR		; SimpleVecClass<unsigned int>::`vector deleting destructor'
;	COMDAT ??_7?$SimpleVecClass@I@@6B@
CONST	SEGMENT
??_7?$SimpleVecClass@I@@6B@ DD FLAT:?Uninitialised_Grow@?$SimpleVecClass@I@@UAE_NH@Z ; SimpleVecClass<unsigned int>::`vftable'
	DD	FLAT:??_E?$SimpleVecClass@I@@UAEPAXI@Z
	DD	FLAT:?Resize@?$SimpleVecClass@I@@UAE_NH@Z
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??1?$SimpleVecClass@I@@UAE@XZ
_TEXT	SEGMENT
??1?$SimpleVecClass@I@@UAE@XZ PROC NEAR			; SimpleVecClass<unsigned int>::~SimpleVecClass<unsigned int>, COMDAT
; _this$ = ecx

; 173  : 	{

	push	esi
	mov	esi, ecx

; 174  : 		if (Vector)

	mov	eax, DWORD PTR [esi+4]
	test	eax, eax
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@I@@6B@
	je	SHORT $L7572

; 175  : 		{
; 176  : 			delete Vector;

	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4

; 177  : 			Vector = 0;

	mov	DWORD PTR [esi+4], 0

; 178  : 			VectorMax = 0;

	mov	DWORD PTR [esi+8], 0
$L7572:
	pop	esi

; 179  : 		}
; 180  : 	}

	ret	0
??1?$SimpleVecClass@I@@UAE@XZ ENDP			; SimpleVecClass<unsigned int>::~SimpleVecClass<unsigned int>
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ?Uninitialised_Grow@?$SimpleVecClass@I@@UAE_NH@Z
_TEXT	SEGMENT
_newsize$ = 8						; size = 4
?Uninitialised_Grow@?$SimpleVecClass@I@@UAE_NH@Z PROC NEAR ; SimpleVecClass<unsigned int>::Uninitialised_Grow, COMDAT
; _this$ = ecx

; 149  : 	{

	push	esi
	push	edi

; 150  : 		if ((newsize > 0) && (newsize > VectorMax))

	mov	edi, DWORD PTR _newsize$[esp+4]
	test	edi, edi
	mov	esi, ecx
	jle	SHORT $L8458
	cmp	edi, DWORD PTR [esi+8]
	jle	SHORT $L8458

; 151  : 		{
; 152  : 			delete Vector;

	mov	eax, DWORD PTR [esi+4]
	push	eax
	call	??3@YAXPAX@Z				; operator delete

; 153  : 			Vector = new T[newsize*4];

	mov	ecx, edi
	shl	ecx, 4
	push	ecx
	call	??2@YAPAXI@Z				; operator new
	add	esp, 8
	mov	DWORD PTR [esi+4], eax

; 154  : 			VectorMax = newsize;

	mov	DWORD PTR [esi+8], edi
$L8458:
	pop	edi

; 155  : 		}
; 156  : 		return true;

	mov	al, 1
	pop	esi

; 157  : 	}

	ret	4
?Uninitialised_Grow@?$SimpleVecClass@I@@UAE_NH@Z ENDP	; SimpleVecClass<unsigned int>::Uninitialised_Grow
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleVecClass@I@@UAE_NH@Z
_TEXT	SEGMENT
_vec$ = 8						; size = 4
_newsize$ = 8						; size = 4
?Resize@?$SimpleVecClass@I@@UAE_NH@Z PROC NEAR		; SimpleVecClass<unsigned int>::Resize, COMDAT
; _this$ = ecx

; 182  : 	{

	push	ebx
	mov	ebx, ecx

; 183  : 		T *vec;
; 184  : 		if (VectorMax == newsize)

	mov	eax, DWORD PTR [ebx+8]
	push	ebp
	mov	ebp, DWORD PTR _newsize$[esp+4]
	cmp	eax, ebp

; 185  : 		{
; 186  : 			return true;

	je	SHORT $L8465
	push	edi

; 187  : 		}
; 188  : 		if (newsize > 0)

	xor	edi, edi
	cmp	ebp, edi
	jle	SHORT $L7578

; 189  : 		{
; 190  : 			vec = new T[newsize*4];

	mov	eax, ebp
	shl	eax, 4
	push	esi
	push	eax
	call	??2@YAPAXI@Z				; operator new

; 191  : 			if (Vector)

	mov	esi, DWORD PTR [ebx+4]
	add	esp, 4
	cmp	esi, edi
	mov	DWORD PTR _vec$[esp+12], eax
	je	SHORT $L7581

; 192  : 			{
; 193  : 				int count;
; 194  : 				count = VectorMax;

	mov	ecx, DWORD PTR [ebx+8]

; 195  : 				if (newsize < count)

	cmp	ebp, ecx
	jge	SHORT $L7583

; 196  : 				{
; 197  : 					count = newsize;

	mov	ecx, ebp
$L7583:

; 198  : 				}
; 199  : 				memcpy(vec,Vector,count*4);

	mov	edi, eax
	rep movsd

; 200  : 				delete Vector;

	mov	ecx, DWORD PTR [ebx+4]
	push	ecx
	call	??3@YAXPAX@Z				; operator delete

; 201  : 				Vector = 0;

	mov	eax, DWORD PTR _vec$[esp+16]
	add	esp, 4
	mov	DWORD PTR [ebx+4], 0
$L7581:
	pop	esi
	pop	edi

; 202  : 			}
; 203  : 			Vector = vec;
; 204  : 			VectorMax = newsize;

	mov	DWORD PTR [ebx+8], ebp
	mov	DWORD PTR [ebx+4], eax
	pop	ebp

; 213  : 			}
; 214  : 		}
; 215  : 		return true;

	mov	al, 1
	pop	ebx

; 216  : 	}

	ret	4
$L7578:

; 205  : 		}
; 206  : 		else
; 207  : 		{
; 208  : 			VectorMax = 0;
; 209  : 			if (Vector)

	mov	eax, DWORD PTR [ebx+4]
	cmp	eax, edi
	mov	DWORD PTR [ebx+8], edi
	je	SHORT $L7586

; 210  : 			{
; 211  : 				delete Vector;

	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4

; 212  : 				Vector = 0;

	mov	DWORD PTR [ebx+4], edi
$L7586:
	pop	edi
$L8465:
	pop	ebp

; 213  : 			}
; 214  : 		}
; 215  : 		return true;

	mov	al, 1
	pop	ebx

; 216  : 	}

	ret	4
?Resize@?$SimpleVecClass@I@@UAE_NH@Z ENDP		; SimpleVecClass<unsigned int>::Resize
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@QAE@PAD0@Z ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::ScriptRegistrant<MDB_ExpVehFac_Helipad>
PUBLIC	?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::Create
PUBLIC	??_7?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@6B@ ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAXI@Z ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::`vector deleting destructor'
EXTRN	??0ScriptFactory@@QAE@PAD0@Z:NEAR		; ScriptFactory::ScriptFactory
;	COMDAT ??_7?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@6B@
; File c:\documents and settings\owner\desktop\ssctf 1.3\scripts.h
CONST	SEGMENT
??_7?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAXI@Z ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::ScriptRegistrant<MDB_ExpVehFac_Helipad>, COMDAT
; _this$ = ecx

; 474  : 	{

	mov	eax, DWORD PTR _p$[esp-4]
	push	esi
	mov	esi, ecx
	mov	ecx, DWORD PTR _n$[esp]
	push	eax
	push	ecx
	mov	ecx, esi
	call	??0ScriptFactory@@QAE@PAD0@Z		; ScriptFactory::ScriptFactory
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::ScriptRegistrant<MDB_ExpVehFac_Helipad>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@QAE@PAD0@Z ; ScriptRegistrant<MDB_ExpVehFac_Naval>::ScriptRegistrant<MDB_ExpVehFac_Naval>
PUBLIC	?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<MDB_ExpVehFac_Naval>::Create
PUBLIC	??_7?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@6B@ ; ScriptRegistrant<MDB_ExpVehFac_Naval>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAXI@Z ; ScriptRegistrant<MDB_ExpVehFac_Naval>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<MDB_ExpVehFac_Naval>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAXI@Z ; ScriptRegistrant<MDB_ExpVehFac_Naval>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Naval>::ScriptRegistrant<MDB_ExpVehFac_Naval>, COMDAT
; _this$ = ecx

; 474  : 	{

	mov	eax, DWORD PTR _p$[esp-4]
	push	esi
	mov	esi, ecx
	mov	ecx, DWORD PTR _n$[esp]
	push	eax
	push	ecx
	mov	ecx, esi
	call	??0ScriptFactory@@QAE@PAD0@Z		; ScriptFactory::ScriptFactory
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<MDB_ExpVehFac_Naval>::ScriptRegistrant<MDB_ExpVehFac_Naval>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@QAE@PAD0@Z ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>
PUBLIC	?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::Create
PUBLIC	??_7?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@6B@ ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAXI@Z ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAXI@Z ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>, COMDAT
; _this$ = ecx

; 474  : 	{

	mov	eax, DWORD PTR _p$[esp-4]
	push	esi
	mov	esi, ecx
	mov	ecx, DWORD PTR _n$[esp]
	push	eax
	push	ecx
	mov	ecx, esi
	call	??0ScriptFactory@@QAE@PAD0@Z		; ScriptFactory::ScriptFactory
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@QAE@PAD0@Z ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::ScriptRegistrant<MDB_ExpVehFac_Cinematic>
PUBLIC	?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::Create
PUBLIC	??_7?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@6B@ ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAXI@Z ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAXI@Z ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::ScriptRegistrant<MDB_ExpVehFac_Cinematic>, COMDAT
; _this$ = ecx

; 474  : 	{

	mov	eax, DWORD PTR _p$[esp-4]
	push	esi
	mov	esi, ecx
	mov	ecx, DWORD PTR _n$[esp]
	push	eax
	push	ecx
	mov	ecx, esi
	call	??0ScriptFactory@@QAE@PAD0@Z		; ScriptFactory::ScriptFactory
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::ScriptRegistrant<MDB_ExpVehFac_Cinematic>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@QAE@PAD0@Z ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>
PUBLIC	?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::Create
PUBLIC	??_7?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@6B@ ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAXI@Z ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAXI@Z ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>, COMDAT
; _this$ = ecx

; 474  : 	{

	mov	eax, DWORD PTR _p$[esp-4]
	push	esi
	mov	esi, ecx
	mov	ecx, DWORD PTR _n$[esp]
	push	eax
	push	ecx
	mov	ecx, esi
	call	??0ScriptFactory@@QAE@PAD0@Z		; ScriptFactory::ScriptFactory
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@QAE@PAD0@Z ; ScriptRegistrant<MDB_ExpVehFac_Limit>::ScriptRegistrant<MDB_ExpVehFac_Limit>
PUBLIC	?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<MDB_ExpVehFac_Limit>::Create
PUBLIC	??_7?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@6B@ ; ScriptRegistrant<MDB_ExpVehFac_Limit>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAXI@Z ; ScriptRegistrant<MDB_ExpVehFac_Limit>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<MDB_ExpVehFac_Limit>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAXI@Z ; ScriptRegistrant<MDB_ExpVehFac_Limit>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Limit>::ScriptRegistrant<MDB_ExpVehFac_Limit>, COMDAT
; _this$ = ecx

; 474  : 	{

	mov	eax, DWORD PTR _p$[esp-4]
	push	esi
	mov	esi, ecx
	mov	ecx, DWORD PTR _n$[esp]
	push	eax
	push	ecx
	mov	ecx, esi
	call	??0ScriptFactory@@QAE@PAD0@Z		; ScriptFactory::ScriptFactory
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<MDB_ExpVehFac_Limit>::ScriptRegistrant<MDB_ExpVehFac_Limit>
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$SimpleVecClass@PAUUnitInfo@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$SimpleVecClass@PAUUnitInfo@@@@UAEPAXI@Z PROC NEAR	; SimpleVecClass<UnitInfo *>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	mov	eax, DWORD PTR [esi+4]
	test	eax, eax
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAUUnitInfo@@@@6B@
	je	SHORT $L8496
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
	mov	DWORD PTR [esi+4], 0
	mov	DWORD PTR [esi+8], 0
$L8496:
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L8499
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L8499:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$SimpleVecClass@PAUUnitInfo@@@@UAEPAXI@Z ENDP	; SimpleVecClass<UnitInfo *>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$SimpleVecClass@PAUCreationPos@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$SimpleVecClass@PAUCreationPos@@@@UAEPAXI@Z PROC NEAR ; SimpleVecClass<CreationPos *>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	mov	eax, DWORD PTR [esi+4]
	test	eax, eax
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAUCreationPos@@@@6B@
	je	SHORT $L8508
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
	mov	DWORD PTR [esi+4], 0
	mov	DWORD PTR [esi+8], 0
$L8508:
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L8509
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L8509:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$SimpleVecClass@PAUCreationPos@@@@UAEPAXI@Z ENDP	; SimpleVecClass<CreationPos *>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$SimpleVecClass@PAE@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$SimpleVecClass@PAE@@UAEPAXI@Z PROC NEAR		; SimpleVecClass<unsigned char *>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	mov	eax, DWORD PTR [esi+4]
	test	eax, eax
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAE@@6B@
	je	SHORT $L8518
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
	mov	DWORD PTR [esi+4], 0
	mov	DWORD PTR [esi+8], 0
$L8518:
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L8519
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L8519:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$SimpleVecClass@PAE@@UAEPAXI@Z ENDP		; SimpleVecClass<unsigned char *>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$SimpleVecClass@I@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$SimpleVecClass@I@@UAEPAXI@Z PROC NEAR		; SimpleVecClass<unsigned int>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	mov	eax, DWORD PTR [esi+4]
	test	eax, eax
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@I@@6B@
	je	SHORT $L8528
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
	mov	DWORD PTR [esi+4], 0
	mov	DWORD PTR [esi+8], 0
$L8528:
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L8529
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L8529:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$SimpleVecClass@I@@UAEPAXI@Z ENDP			; SimpleVecClass<unsigned int>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L8533
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L8533:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Naval>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L8537
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L8537:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<MDB_ExpVehFac_Naval>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L8541
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L8541:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L8545
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L8545:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L8549
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L8549:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Limit>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L8553
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L8553:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<MDB_ExpVehFac_Limit>::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??0?$SimpleVecClass@PAUUnitInfo@@@@QAE@I@Z	; SimpleVecClass<UnitInfo *>::SimpleVecClass<UnitInfo *>
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\engine.h
;	COMDAT ??0?$SimpleVecClass@PAUUnitInfo@@@@QAE@I@Z
_TEXT	SEGMENT
_size$ = 8						; size = 4
??0?$SimpleVecClass@PAUUnitInfo@@@@QAE@I@Z PROC NEAR	; SimpleVecClass<UnitInfo *>::SimpleVecClass<UnitInfo *>, COMDAT
; _this$ = ecx

; 140  : 	{
; 141  : 		Vector = 0;
; 142  : 		VectorMax = 0;
; 143  : 		if (size > 0)

	mov	eax, DWORD PTR _size$[esp-4]
	push	esi
	mov	esi, ecx
	xor	ecx, ecx
	cmp	eax, ecx
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAUUnitInfo@@@@6B@
	mov	DWORD PTR [esi+4], ecx
	mov	DWORD PTR [esi+8], ecx
	jbe	SHORT $L8557

; 144  : 		{
; 145  : 			Resize(size);

	push	eax
	mov	ecx, esi
	call	?Resize@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z ; SimpleVecClass<UnitInfo *>::Resize
$L8557:

; 146  : 		}
; 147  : 	}

	mov	eax, esi
	pop	esi
	ret	4
??0?$SimpleVecClass@PAUUnitInfo@@@@QAE@I@Z ENDP		; SimpleVecClass<UnitInfo *>::SimpleVecClass<UnitInfo *>
_TEXT	ENDS
PUBLIC	??0?$SimpleVecClass@PAUCreationPos@@@@QAE@I@Z	; SimpleVecClass<CreationPos *>::SimpleVecClass<CreationPos *>
; Function compile flags: /Ogty
;	COMDAT ??0?$SimpleVecClass@PAUCreationPos@@@@QAE@I@Z
_TEXT	SEGMENT
_size$ = 8						; size = 4
??0?$SimpleVecClass@PAUCreationPos@@@@QAE@I@Z PROC NEAR	; SimpleVecClass<CreationPos *>::SimpleVecClass<CreationPos *>, COMDAT
; _this$ = ecx

; 140  : 	{
; 141  : 		Vector = 0;
; 142  : 		VectorMax = 0;
; 143  : 		if (size > 0)

	mov	eax, DWORD PTR _size$[esp-4]
	push	esi
	mov	esi, ecx
	xor	ecx, ecx
	cmp	eax, ecx
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAUCreationPos@@@@6B@
	mov	DWORD PTR [esi+4], ecx
	mov	DWORD PTR [esi+8], ecx
	jbe	SHORT $L8561

; 144  : 		{
; 145  : 			Resize(size);

	push	eax
	mov	ecx, esi
	call	?Resize@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z ; SimpleVecClass<CreationPos *>::Resize
$L8561:

; 146  : 		}
; 147  : 	}

	mov	eax, esi
	pop	esi
	ret	4
??0?$SimpleVecClass@PAUCreationPos@@@@QAE@I@Z ENDP	; SimpleVecClass<CreationPos *>::SimpleVecClass<CreationPos *>
_TEXT	ENDS
PUBLIC	??0?$SimpleVecClass@PAE@@QAE@I@Z		; SimpleVecClass<unsigned char *>::SimpleVecClass<unsigned char *>
; Function compile flags: /Ogty
;	COMDAT ??0?$SimpleVecClass@PAE@@QAE@I@Z
_TEXT	SEGMENT
_size$ = 8						; size = 4
??0?$SimpleVecClass@PAE@@QAE@I@Z PROC NEAR		; SimpleVecClass<unsigned char *>::SimpleVecClass<unsigned char *>, COMDAT
; _this$ = ecx

; 140  : 	{
; 141  : 		Vector = 0;
; 142  : 		VectorMax = 0;
; 143  : 		if (size > 0)

	mov	eax, DWORD PTR _size$[esp-4]
	push	esi
	mov	esi, ecx
	xor	ecx, ecx
	cmp	eax, ecx
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAE@@6B@
	mov	DWORD PTR [esi+4], ecx
	mov	DWORD PTR [esi+8], ecx
	jbe	SHORT $L8565

; 144  : 		{
; 145  : 			Resize(size);

	push	eax
	mov	ecx, esi
	call	?Resize@?$SimpleVecClass@PAE@@UAE_NH@Z	; SimpleVecClass<unsigned char *>::Resize
$L8565:

; 146  : 		}
; 147  : 	}

	mov	eax, esi
	pop	esi
	ret	4
??0?$SimpleVecClass@PAE@@QAE@I@Z ENDP			; SimpleVecClass<unsigned char *>::SimpleVecClass<unsigned char *>
_TEXT	ENDS
PUBLIC	??4?$SimpleVecClass@PAE@@QAEAAV0@ABV0@@Z	; SimpleVecClass<unsigned char *>::operator=
; Function compile flags: /Ogty
;	COMDAT ??4?$SimpleVecClass@PAE@@QAEAAV0@ABV0@@Z
_TEXT	SEGMENT
_cl$ = 8						; size = 4
??4?$SimpleVecClass@PAE@@QAEAAV0@ABV0@@Z PROC NEAR	; SimpleVecClass<unsigned char *>::operator=, COMDAT
; _this$ = ecx

; 218  : 	{

	push	ebx
	mov	ebx, ecx

; 219  : 		if (Vector)

	mov	eax, DWORD PTR [ebx+4]
	test	eax, eax
	push	esi
	push	edi
	je	SHORT $L7695

; 220  : 		{
; 221  : 			delete Vector;

	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L7695:

; 222  : 		}
; 223  : 		VectorMax = cl.VectorMax;

	mov	esi, DWORD PTR _cl$[esp+8]
	mov	eax, DWORD PTR [esi+8]
	mov	DWORD PTR [ebx+8], eax

; 224  : 		Vector = new T[VectorMax*4];

	shl	eax, 4
	push	eax
	call	??2@YAPAXI@Z				; operator new

; 225  : 		memcpy(Vector,cl.Vector,VectorMax*4);

	mov	ecx, DWORD PTR [ebx+8]
	shl	ecx, 2
	mov	DWORD PTR [ebx+4], eax
	mov	esi, DWORD PTR [esi+4]
	mov	edi, eax
	mov	eax, ecx
	shr	ecx, 2
	rep movsd
	mov	ecx, eax
	add	esp, 4
	and	ecx, 3
	rep movsb
	pop	edi
	pop	esi

; 226  : 		return *this;

	mov	eax, ebx
	pop	ebx

; 227  : 	}

	ret	4
??4?$SimpleVecClass@PAE@@QAEAAV0@ABV0@@Z ENDP		; SimpleVecClass<unsigned char *>::operator=
_TEXT	ENDS
PUBLIC	??0?$SimpleVecClass@I@@QAE@I@Z			; SimpleVecClass<unsigned int>::SimpleVecClass<unsigned int>
; Function compile flags: /Ogty
;	COMDAT ??0?$SimpleVecClass@I@@QAE@I@Z
_TEXT	SEGMENT
_size$ = 8						; size = 4
??0?$SimpleVecClass@I@@QAE@I@Z PROC NEAR		; SimpleVecClass<unsigned int>::SimpleVecClass<unsigned int>, COMDAT
; _this$ = ecx

; 140  : 	{
; 141  : 		Vector = 0;
; 142  : 		VectorMax = 0;
; 143  : 		if (size > 0)

	mov	eax, DWORD PTR _size$[esp-4]
	push	esi
	mov	esi, ecx
	xor	ecx, ecx
	cmp	eax, ecx
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@I@@6B@
	mov	DWORD PTR [esi+4], ecx
	mov	DWORD PTR [esi+8], ecx
	jbe	SHORT $L8574

; 144  : 		{
; 145  : 			Resize(size);

	push	eax
	mov	ecx, esi
	call	?Resize@?$SimpleVecClass@I@@UAE_NH@Z	; SimpleVecClass<unsigned int>::Resize
$L8574:

; 146  : 		}
; 147  : 	}

	mov	eax, esi
	pop	esi
	ret	4
??0?$SimpleVecClass@I@@QAE@I@Z ENDP			; SimpleVecClass<unsigned int>::SimpleVecClass<unsigned int>
_TEXT	ENDS
PUBLIC	?Disable_Ground@ExpVehFacClass@@QAEXXZ		; ExpVehFacClass::Disable_Ground
EXTRN	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z:NEAR ; Get_Purchase_Definition
EXTRN	?Update_PT_Data@@3P6AXXZA:DWORD			; Update_PT_Data
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\mdbevf.cpp
;	COMDAT ?Disable_Ground@ExpVehFacClass@@QAEXXZ
_TEXT	SEGMENT
_x$ = -4						; size = 4
?Disable_Ground@ExpVehFacClass@@QAEXXZ PROC NEAR	; ExpVehFacClass::Disable_Ground, COMDAT
; _this$ = ecx

; 38   : {

	push	ecx
	push	ebp
	push	edi
	mov	edi, ecx

; 39   : 	int x = Units->Count();

	mov	eax, DWORD PTR [edi]
	mov	ecx, DWORD PTR [eax+12]

; 40   : 	for (int i = 0; i < x; i++)

	xor	ebp, ebp
	test	ecx, ecx
	mov	DWORD PTR _x$[esp+12], ecx
	jle	SHORT $L6460
	push	esi
$L6458:

; 41   : 	{
; 42   : 		if ((*Units)[i])

	mov	edx, DWORD PTR [edi]
	mov	eax, DWORD PTR [edx+4]
	mov	eax, DWORD PTR [eax+ebp*4]
	test	eax, eax
	je	SHORT $L6459

; 43   : 		{
; 44   : 			if ((*Units)[i]->VehType == VEHTYPE_GROUND)

	cmp	DWORD PTR [eax+20], 1
	jne	SHORT $L6459

; 45   : 			{
; 46   : 				unsigned int Pos = (*Units)[i]->Pos;
; 47   : 				PurchaseSettingsDefClass *p = Get_Purchase_Definition((*Units)[i]->Type,PTTEAM(Team));

	mov	edx, DWORD PTR [edi+16]
	mov	esi, DWORD PTR [eax+4]
	xor	ecx, ecx
	test	edx, edx
	mov	edx, DWORD PTR [eax]
	sete	cl
	push	ecx
	push	edx
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition

; 48   : 				if (Remove_on_Death)

	mov	cl, BYTE PTR [edi+38]
	add	esp, 8
	test	cl, cl
	je	SHORT $L6465

; 49   : 				{
; 50   : 					p->presetids[Pos] = 0;

	mov	DWORD PTR [eax+esi*4+76], 0
$L6465:

; 51   : 				}
; 52   : 				if (!Sidebar)

	mov	cl, BYTE PTR [edi+37]
	test	cl, cl
	jne	SHORT $L6466

; 53   : 				{
; 54   : 					p->costs[Pos] = 1000000;

	mov	DWORD PTR [eax+esi*4+36], 1000000	; 000f4240H
$L6466:

; 55   : 				}
; 56   : 				p->stringids[Pos] = STRINGID_UNAVAIL;

	mov	ecx, DWORD PTR _x$[esp+16]
	mov	DWORD PTR [eax+esi*4+116], 7265		; 00001c61H
$L6459:
	inc	ebp
	cmp	ebp, ecx
	jl	SHORT $L6458
	pop	esi
$L6460:
	pop	edi
	pop	ebp

; 61   : }

	add	esp, 4

; 57   : 			}
; 58   : 		}
; 59   : 	}
; 60   : 	Update_PT_Data();

	jmp	DWORD PTR ?Update_PT_Data@@3P6AXXZA	; Update_PT_Data
?Disable_Ground@ExpVehFacClass@@QAEXXZ ENDP		; ExpVehFacClass::Disable_Ground
_TEXT	ENDS
PUBLIC	?Disable_Flying@ExpVehFacClass@@QAEXXZ		; ExpVehFacClass::Disable_Flying
; Function compile flags: /Ogty
;	COMDAT ?Disable_Flying@ExpVehFacClass@@QAEXXZ
_TEXT	SEGMENT
_x$ = -4						; size = 4
?Disable_Flying@ExpVehFacClass@@QAEXXZ PROC NEAR	; ExpVehFacClass::Disable_Flying, COMDAT
; _this$ = ecx

; 64   : {

	push	ecx
	push	ebp
	push	edi
	mov	edi, ecx

; 65   : 	int x = Units->Count();

	mov	eax, DWORD PTR [edi]
	mov	ecx, DWORD PTR [eax+12]

; 66   : 	for (int i = 0; i < x; i++)

	xor	ebp, ebp
	test	ecx, ecx
	mov	DWORD PTR _x$[esp+12], ecx
	jle	SHORT $L6474
	push	esi
$L6472:

; 67   : 	{
; 68   : 		if ((*Units)[i])

	mov	edx, DWORD PTR [edi]
	mov	eax, DWORD PTR [edx+4]
	mov	eax, DWORD PTR [eax+ebp*4]
	test	eax, eax
	je	SHORT $L6473

; 69   : 		{
; 70   : 			if ((*Units)[i]->VehType == VEHTYPE_FLYING)

	cmp	DWORD PTR [eax+20], 2
	jne	SHORT $L6473

; 71   : 			{
; 72   : 				unsigned int Pos = (*Units)[i]->Pos;
; 73   : 				PurchaseSettingsDefClass *p = Get_Purchase_Definition((*Units)[i]->Type,PTTEAM(Team));

	mov	edx, DWORD PTR [edi+16]
	mov	esi, DWORD PTR [eax+4]
	xor	ecx, ecx
	test	edx, edx
	mov	edx, DWORD PTR [eax]
	sete	cl
	push	ecx
	push	edx
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition

; 74   : 				if (Remove_on_Death)

	mov	cl, BYTE PTR [edi+38]
	add	esp, 8
	test	cl, cl
	je	SHORT $L6479

; 75   : 				{
; 76   : 					p->presetids[Pos] = 0;

	mov	DWORD PTR [eax+esi*4+76], 0
$L6479:

; 77   : 				}
; 78   : 				if (!Sidebar)

	mov	cl, BYTE PTR [edi+37]
	test	cl, cl
	jne	SHORT $L6480

; 79   : 				{
; 80   : 					p->costs[Pos] = 1000000;

	mov	DWORD PTR [eax+esi*4+36], 1000000	; 000f4240H
$L6480:

; 81   : 				}
; 82   : 				p->stringids[Pos] = STRINGID_UNAVAIL;

	mov	ecx, DWORD PTR _x$[esp+16]
	mov	DWORD PTR [eax+esi*4+116], 7265		; 00001c61H
$L6473:
	inc	ebp
	cmp	ebp, ecx
	jl	SHORT $L6472
	pop	esi
$L6474:
	pop	edi
	pop	ebp

; 87   : }

	add	esp, 4

; 83   : 			}
; 84   : 		}
; 85   : 	}
; 86   : 	Update_PT_Data();

	jmp	DWORD PTR ?Update_PT_Data@@3P6AXXZA	; Update_PT_Data
?Disable_Flying@ExpVehFacClass@@QAEXXZ ENDP		; ExpVehFacClass::Disable_Flying
_TEXT	ENDS
PUBLIC	?Disable_Naval@ExpVehFacClass@@QAEXXZ		; ExpVehFacClass::Disable_Naval
; Function compile flags: /Ogty
;	COMDAT ?Disable_Naval@ExpVehFacClass@@QAEXXZ
_TEXT	SEGMENT
_x$ = -4						; size = 4
?Disable_Naval@ExpVehFacClass@@QAEXXZ PROC NEAR		; ExpVehFacClass::Disable_Naval, COMDAT
; _this$ = ecx

; 90   : {

	push	ecx
	push	ebp
	push	edi
	mov	edi, ecx

; 91   : 	int x = Units->Count();

	mov	eax, DWORD PTR [edi]
	mov	ecx, DWORD PTR [eax+12]

; 92   : 	for (int i = 0; i < x; i++)

	xor	ebp, ebp
	test	ecx, ecx
	mov	DWORD PTR _x$[esp+12], ecx
	jle	SHORT $L6488
	push	esi
$L6486:

; 93   : 	{
; 94   : 		if ((*Units)[i])

	mov	edx, DWORD PTR [edi]
	mov	eax, DWORD PTR [edx+4]
	mov	eax, DWORD PTR [eax+ebp*4]
	test	eax, eax
	je	SHORT $L6487

; 95   : 		{
; 96   : 			if ((*Units)[i]->VehType == VEHTYPE_NAVAL)

	cmp	DWORD PTR [eax+20], 3
	jne	SHORT $L6487

; 97   : 			{
; 98   : 				unsigned int Pos = (*Units)[i]->Pos;
; 99   : 				PurchaseSettingsDefClass *p = Get_Purchase_Definition((*Units)[i]->Type,PTTEAM(Team));

	mov	edx, DWORD PTR [edi+16]
	mov	esi, DWORD PTR [eax+4]
	xor	ecx, ecx
	test	edx, edx
	mov	edx, DWORD PTR [eax]
	sete	cl
	push	ecx
	push	edx
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition

; 100  : 				if (Remove_on_Death)

	mov	cl, BYTE PTR [edi+38]
	add	esp, 8
	test	cl, cl
	je	SHORT $L6493

; 101  : 				{
; 102  : 					p->presetids[Pos] = 0;

	mov	DWORD PTR [eax+esi*4+76], 0
$L6493:

; 103  : 				}
; 104  : 				if (!Sidebar)

	mov	cl, BYTE PTR [edi+37]
	test	cl, cl
	jne	SHORT $L6494

; 105  : 				{
; 106  : 					p->costs[Pos] = 1000000;

	mov	DWORD PTR [eax+esi*4+36], 1000000	; 000f4240H
$L6494:

; 107  : 				}
; 108  : 				p->stringids[Pos] = STRINGID_UNAVAIL;

	mov	ecx, DWORD PTR _x$[esp+16]
	mov	DWORD PTR [eax+esi*4+116], 7265		; 00001c61H
$L6487:
	inc	ebp
	cmp	ebp, ecx
	jl	SHORT $L6486
	pop	esi
$L6488:
	pop	edi
	pop	ebp

; 113  : }

	add	esp, 4

; 109  : 			}
; 110  : 		}
; 111  : 	}
; 112  : 	Update_PT_Data();

	jmp	DWORD PTR ?Update_PT_Data@@3P6AXXZA	; Update_PT_Data
?Disable_Naval@ExpVehFacClass@@QAEXXZ ENDP		; ExpVehFacClass::Disable_Naval
_TEXT	ENDS
PUBLIC	?Set_Ground_Currently_Building@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Ground_Currently_Building
; Function compile flags: /Ogty
;	COMDAT ?Set_Ground_Currently_Building@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT
_x$ = 8							; size = 4
_building$ = 8						; size = 1
?Set_Ground_Currently_Building@ExpVehFacClass@@QAEX_N@Z PROC NEAR ; ExpVehFacClass::Set_Ground_Currently_Building, COMDAT
; _this$ = ecx

; 116  : {

	push	ebx

; 117  : 	Is_Ground_Building = building;

	mov	bl, BYTE PTR _building$[esp]
	push	ebp
	push	edi
	mov	edi, ecx

; 118  : 	int x = Units->Count();

	mov	eax, DWORD PTR [edi]
	mov	BYTE PTR [edi+104], bl
	mov	eax, DWORD PTR [eax+12]

; 119  : 	for (int i = 0; i < x; i++)

	xor	ebp, ebp
	test	eax, eax
	mov	DWORD PTR _x$[esp+8], eax
	jle	$L6503
	push	esi
$L8665:

; 120  : 	{
; 121  : 		if ((*Units)[i])

	mov	ecx, DWORD PTR [edi]
	mov	edx, DWORD PTR [ecx+4]
	mov	eax, DWORD PTR [edx+ebp*4]
	test	eax, eax
	je	$L6502

; 122  : 		{
; 123  : 			if ((*Units)[i]->VehType == VEHTYPE_GROUND)

	cmp	DWORD PTR [eax+20], 1
	jne	SHORT $L6502

; 124  : 			{
; 125  : 				unsigned int Pos = (*Units)[i]->Pos;
; 126  : 				PurchaseSettingsDefClass *p = Get_Purchase_Definition((*Units)[i]->Type,PTTEAM(Team));	

	mov	edx, DWORD PTR [edi+16]
	mov	esi, DWORD PTR [eax+4]
	xor	ecx, ecx
	test	edx, edx
	mov	edx, DWORD PTR [eax]
	sete	cl
	push	ecx
	push	edx
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition
	add	esp, 8

; 127  : 				if (building)

	test	bl, bl
	je	SHORT $L6508

; 128  : 				{
; 129  : 					if (p->stringids[Pos] != STRINGID_UNAVAIL && p->stringids[Pos] != STRINGID_LIMIT)

	mov	ecx, DWORD PTR [eax+esi*4+116]
	cmp	ecx, 7265				; 00001c61H
	je	SHORT $L6502
	cmp	ecx, 9724				; 000025fcH
	je	SHORT $L6502

; 130  : 					{
; 131  : 						if (!Sidebar)

	mov	cl, BYTE PTR [edi+37]
	test	cl, cl
	jne	SHORT $L6510

; 132  : 						{
; 133  : 							p->costs[Pos] = 1000000;

	mov	DWORD PTR [eax+esi*4+36], 1000000	; 000f4240H
$L6510:

; 134  : 						}
; 135  : 						p->stringids[Pos] = STRINGID_BUILDING;

	mov	DWORD PTR [eax+esi*4+116], 7263		; 00001c5fH

; 136  : 					}
; 137  : 				}
; 138  : 				else if (p->stringids[Pos] == STRINGID_BUILDING)

	jmp	SHORT $L6502
$L6508:
	cmp	DWORD PTR [eax+esi*4+116], 7263		; 00001c5fH
	jne	SHORT $L6502

; 139  : 				{
; 140  : 					if (!Sidebar)

	mov	cl, BYTE PTR [edi+37]
	test	cl, cl
	jne	SHORT $L6513

; 141  : 					{
; 142  : 						p->costs[Pos] = (*Units)[i]->Cost;

	mov	ecx, DWORD PTR [edi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	edx, DWORD PTR [ecx+12]
	mov	DWORD PTR [eax+esi*4+36], edx
$L6513:

; 143  : 					}
; 144  : 					p->stringids[Pos] = (*Units)[i]->StringID;

	mov	ecx, DWORD PTR [edi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	edx, DWORD PTR [ecx+16]
	mov	DWORD PTR [eax+esi*4+116], edx
$L6502:
	mov	eax, DWORD PTR _x$[esp+12]
	inc	ebp
	cmp	ebp, eax
	jl	$L8665
	pop	esi
$L6503:

; 145  : 				}
; 146  : 			}
; 147  : 		}
; 148  : 	}
; 149  : 	Update_PT_Data();

	call	DWORD PTR ?Update_PT_Data@@3P6AXXZA	; Update_PT_Data
	pop	edi
	pop	ebp
	pop	ebx

; 150  : }

	ret	4
?Set_Ground_Currently_Building@ExpVehFacClass@@QAEX_N@Z ENDP ; ExpVehFacClass::Set_Ground_Currently_Building
_TEXT	ENDS
PUBLIC	?Set_Flying_Currently_Building@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Flying_Currently_Building
; Function compile flags: /Ogty
;	COMDAT ?Set_Flying_Currently_Building@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT
_x$ = 8							; size = 4
_building$ = 8						; size = 1
?Set_Flying_Currently_Building@ExpVehFacClass@@QAEX_N@Z PROC NEAR ; ExpVehFacClass::Set_Flying_Currently_Building, COMDAT
; _this$ = ecx

; 153  : {

	push	ebx

; 154  : 	Is_Flying_Building = building;

	mov	bl, BYTE PTR _building$[esp]
	push	ebp
	push	edi
	mov	edi, ecx

; 155  : 	int x = Units->Count();

	mov	eax, DWORD PTR [edi]
	mov	BYTE PTR [edi+105], bl
	mov	eax, DWORD PTR [eax+12]

; 156  : 	for (int i = 0; i < x; i++)

	xor	ebp, ebp
	test	eax, eax
	mov	DWORD PTR _x$[esp+8], eax
	jle	$L6522
	push	esi
$L8693:

; 157  : 	{
; 158  : 		if ((*Units)[i])

	mov	ecx, DWORD PTR [edi]
	mov	edx, DWORD PTR [ecx+4]
	mov	eax, DWORD PTR [edx+ebp*4]
	test	eax, eax
	je	$L6521

; 159  : 		{
; 160  : 			if ((*Units)[i]->VehType == VEHTYPE_FLYING)

	cmp	DWORD PTR [eax+20], 2
	jne	SHORT $L6521

; 161  : 			{
; 162  : 				unsigned int Pos = (*Units)[i]->Pos;
; 163  : 				PurchaseSettingsDefClass *p = Get_Purchase_Definition((*Units)[i]->Type,PTTEAM(Team));	

	mov	edx, DWORD PTR [edi+16]
	mov	esi, DWORD PTR [eax+4]
	xor	ecx, ecx
	test	edx, edx
	mov	edx, DWORD PTR [eax]
	sete	cl
	push	ecx
	push	edx
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition
	add	esp, 8

; 164  : 				if (building)

	test	bl, bl
	je	SHORT $L6527

; 165  : 				{
; 166  : 					if (p->stringids[Pos] != STRINGID_UNAVAIL && p->stringids[Pos] != STRINGID_LIMIT)

	mov	ecx, DWORD PTR [eax+esi*4+116]
	cmp	ecx, 7265				; 00001c61H
	je	SHORT $L6521
	cmp	ecx, 9724				; 000025fcH
	je	SHORT $L6521

; 167  : 					{
; 168  : 						if (!Sidebar)

	mov	cl, BYTE PTR [edi+37]
	test	cl, cl
	jne	SHORT $L6529

; 169  : 						{
; 170  : 							p->costs[Pos] = 1000000;

	mov	DWORD PTR [eax+esi*4+36], 1000000	; 000f4240H
$L6529:

; 171  : 						}
; 172  : 						p->stringids[Pos] = STRINGID_BUILDING;

	mov	DWORD PTR [eax+esi*4+116], 7263		; 00001c5fH

; 173  : 					}
; 174  : 				}
; 175  : 				else if (p->stringids[Pos] == STRINGID_BUILDING)

	jmp	SHORT $L6521
$L6527:
	cmp	DWORD PTR [eax+esi*4+116], 7263		; 00001c5fH
	jne	SHORT $L6521

; 176  : 				{
; 177  : 					if (!Sidebar)

	mov	cl, BYTE PTR [edi+37]
	test	cl, cl
	jne	SHORT $L6532

; 178  : 					{
; 179  : 						p->costs[Pos] = (*Units)[i]->Cost;

	mov	ecx, DWORD PTR [edi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	edx, DWORD PTR [ecx+12]
	mov	DWORD PTR [eax+esi*4+36], edx
$L6532:

; 180  : 					}
; 181  : 					p->stringids[Pos] = (*Units)[i]->StringID;

	mov	ecx, DWORD PTR [edi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	edx, DWORD PTR [ecx+16]
	mov	DWORD PTR [eax+esi*4+116], edx
$L6521:
	mov	eax, DWORD PTR _x$[esp+12]
	inc	ebp
	cmp	ebp, eax
	jl	$L8693
	pop	esi
$L6522:

; 182  : 				}
; 183  : 			}
; 184  : 		}
; 185  : 	}
; 186  : 	Update_PT_Data();

	call	DWORD PTR ?Update_PT_Data@@3P6AXXZA	; Update_PT_Data
	pop	edi
	pop	ebp
	pop	ebx

; 187  : }

	ret	4
?Set_Flying_Currently_Building@ExpVehFacClass@@QAEX_N@Z ENDP ; ExpVehFacClass::Set_Flying_Currently_Building
_TEXT	ENDS
PUBLIC	?Set_Naval_Currently_Building@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Naval_Currently_Building
; Function compile flags: /Ogty
;	COMDAT ?Set_Naval_Currently_Building@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT
_x$ = 8							; size = 4
_building$ = 8						; size = 1
?Set_Naval_Currently_Building@ExpVehFacClass@@QAEX_N@Z PROC NEAR ; ExpVehFacClass::Set_Naval_Currently_Building, COMDAT
; _this$ = ecx

; 190  : {

	push	ebx

; 191  : 	Is_Naval_Building = building;

	mov	bl, BYTE PTR _building$[esp]
	push	ebp
	push	edi
	mov	edi, ecx

; 192  : 	int x = Units->Count();

	mov	eax, DWORD PTR [edi]
	mov	BYTE PTR [edi+106], bl
	mov	eax, DWORD PTR [eax+12]

; 193  : 	for (int i = 0; i < x; i++)

	xor	ebp, ebp
	test	eax, eax
	mov	DWORD PTR _x$[esp+8], eax
	jle	$L6541
	push	esi
$L8721:

; 194  : 	{
; 195  : 		if ((*Units)[i])

	mov	ecx, DWORD PTR [edi]
	mov	edx, DWORD PTR [ecx+4]
	mov	eax, DWORD PTR [edx+ebp*4]
	test	eax, eax
	je	$L6540

; 196  : 		{
; 197  : 			if ((*Units)[i]->VehType == VEHTYPE_NAVAL)

	cmp	DWORD PTR [eax+20], 3
	jne	SHORT $L6540

; 198  : 			{
; 199  : 				unsigned int Pos = (*Units)[i]->Pos;
; 200  : 				PurchaseSettingsDefClass *p = Get_Purchase_Definition((*Units)[i]->Type,PTTEAM(Team));	

	mov	edx, DWORD PTR [edi+16]
	mov	esi, DWORD PTR [eax+4]
	xor	ecx, ecx
	test	edx, edx
	mov	edx, DWORD PTR [eax]
	sete	cl
	push	ecx
	push	edx
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition
	add	esp, 8

; 201  : 				if (building)

	test	bl, bl
	je	SHORT $L6546

; 202  : 				{
; 203  : 					if (p->stringids[Pos] != STRINGID_UNAVAIL && p->stringids[Pos] != STRINGID_LIMIT)

	mov	ecx, DWORD PTR [eax+esi*4+116]
	cmp	ecx, 7265				; 00001c61H
	je	SHORT $L6540
	cmp	ecx, 9724				; 000025fcH
	je	SHORT $L6540

; 204  : 					{
; 205  : 						if (!Sidebar)

	mov	cl, BYTE PTR [edi+37]
	test	cl, cl
	jne	SHORT $L6548

; 206  : 						{
; 207  : 							p->costs[Pos] = 1000000;

	mov	DWORD PTR [eax+esi*4+36], 1000000	; 000f4240H
$L6548:

; 208  : 						}
; 209  : 						p->stringids[Pos] = STRINGID_BUILDING;

	mov	DWORD PTR [eax+esi*4+116], 7263		; 00001c5fH

; 210  : 					}
; 211  : 				}
; 212  : 				else if (p->stringids[Pos] == STRINGID_BUILDING)

	jmp	SHORT $L6540
$L6546:
	cmp	DWORD PTR [eax+esi*4+116], 7263		; 00001c5fH
	jne	SHORT $L6540

; 213  : 				{
; 214  : 					if (!Sidebar)

	mov	cl, BYTE PTR [edi+37]
	test	cl, cl
	jne	SHORT $L6551

; 215  : 					{
; 216  : 						p->costs[Pos] = (*Units)[i]->Cost;

	mov	ecx, DWORD PTR [edi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	edx, DWORD PTR [ecx+12]
	mov	DWORD PTR [eax+esi*4+36], edx
$L6551:

; 217  : 					}
; 218  : 					p->stringids[Pos] = (*Units)[i]->StringID;

	mov	ecx, DWORD PTR [edi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	edx, DWORD PTR [ecx+16]
	mov	DWORD PTR [eax+esi*4+116], edx
$L6540:
	mov	eax, DWORD PTR _x$[esp+12]
	inc	ebp
	cmp	ebp, eax
	jl	$L8721
	pop	esi
$L6541:

; 219  : 				}
; 220  : 			}
; 221  : 		}
; 222  : 	}
; 223  : 	Update_PT_Data();

	call	DWORD PTR ?Update_PT_Data@@3P6AXXZA	; Update_PT_Data
	pop	edi
	pop	ebp
	pop	ebx

; 224  : }

	ret	4
?Set_Naval_Currently_Building@ExpVehFacClass@@QAEX_N@Z ENDP ; ExpVehFacClass::Set_Naval_Currently_Building
_TEXT	ENDS
PUBLIC	?Set_Ground_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Ground_Limit_Reached
; Function compile flags: /Ogty
;	COMDAT ?Set_Ground_Limit_Reached@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT
_x$ = -4						; size = 4
_Reached$ = 8						; size = 1
?Set_Ground_Limit_Reached@ExpVehFacClass@@QAEX_N@Z PROC NEAR ; ExpVehFacClass::Set_Ground_Limit_Reached, COMDAT
; _this$ = ecx

; 227  : {

	push	ecx
	push	ebp
	push	esi
	mov	esi, ecx

; 228  : 	int x = Units->Count();

	mov	eax, DWORD PTR [esi]
	mov	eax, DWORD PTR [eax+12]

; 229  : 	for (int i = 0; i < x; i++)

	xor	ebp, ebp
	test	eax, eax
	mov	DWORD PTR _x$[esp+12], eax
	jle	$L6560
	push	edi
	npad	7
$L6558:

; 230  : 	{
; 231  : 		if ((*Units)[i])

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	eax, DWORD PTR [edx+ebp*4]
	test	eax, eax
	je	$L6559

; 232  : 		{
; 233  : 			if ((*Units)[i]->VehType == VEHTYPE_GROUND && !(*Units)[i]->Support)

	cmp	DWORD PTR [eax+20], 1
	jne	$L6559
	mov	cl, BYTE PTR [eax+28]
	test	cl, cl
	jne	$L6559

; 234  : 			{
; 235  : 				unsigned int Pos = (*Units)[i]->Pos;
; 236  : 				PurchaseSettingsDefClass *p = Get_Purchase_Definition((*Units)[i]->Type,PTTEAM(Team));	

	mov	edx, DWORD PTR [esi+16]
	mov	edi, DWORD PTR [eax+4]
	xor	ecx, ecx
	test	edx, edx
	mov	edx, DWORD PTR [eax]
	sete	cl
	push	ecx
	push	edx
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition

; 237  : 				if (Reached)

	mov	cl, BYTE PTR _Reached$[esp+20]
	add	esp, 8
	test	cl, cl

; 238  : 				{
; 239  : 					if (p->stringids[Pos] != STRINGID_UNAVAIL)

	mov	ecx, DWORD PTR [eax+edi*4+116]
	je	SHORT $L6565
	cmp	ecx, 7265				; 00001c61H
	je	$L6559

; 240  : 					{
; 241  : 						if ((*Units)[i]->DMode == DISABLED_UNIT)

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	cmp	DWORD PTR [ecx+24], 2
	jne	SHORT $L6567

; 242  : 						{
; 243  : 							(*Units)[i]->DMode = DISABLED_BOTH;

	mov	DWORD PTR [ecx+24], 3

; 244  : 						}
; 245  : 						else

	jmp	$L6559
$L6567:

; 246  : 						{
; 247  : 							if (!Sidebar)

	mov	cl, BYTE PTR [esi+37]
	test	cl, cl
	jne	SHORT $L6569

; 248  : 							{
; 249  : 								p->costs[Pos] = 1000000;

	mov	DWORD PTR [eax+edi*4+36], 1000000	; 000f4240H
$L6569:

; 250  : 							}
; 251  : 							(*Units)[i]->DMode = DISABLED_EVF;

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	DWORD PTR [ecx+24], 1

; 252  : 							p->stringids[Pos] = STRINGID_LIMIT;

	mov	DWORD PTR [eax+edi*4+116], 9724		; 000025fcH

; 253  : 						}
; 254  : 					}
; 255  : 				}
; 256  : 				else if (p->stringids[Pos] == STRINGID_LIMIT)

	jmp	SHORT $L6559
$L6565:
	cmp	ecx, 9724				; 000025fcH
	jne	SHORT $L6559

; 257  : 				{
; 258  : 					if ((*Units)[i]->DMode == DISABLED_EVF)

	mov	edx, DWORD PTR [esi]
	mov	ecx, DWORD PTR [edx+4]
	mov	ecx, DWORD PTR [ecx+ebp*4]
	mov	edx, DWORD PTR [ecx+24]
	cmp	edx, 1
	jne	SHORT $L6572

; 259  : 					{
; 260  : 						if (Is_Ground_Building)

	mov	dl, BYTE PTR [esi+104]
	test	dl, dl
	je	SHORT $L6573

; 261  : 						{
; 262  : 							p->stringids[Pos] = STRINGID_BUILDING;

	mov	DWORD PTR [eax+edi*4+116], 7263		; 00001c5fH

; 263  : 						}
; 264  : 						else

	jmp	SHORT $L6559
$L6573:

; 265  : 						{
; 266  : 							if (!Sidebar)

	mov	dl, BYTE PTR [esi+37]
	test	dl, dl
	jne	SHORT $L6575

; 267  : 							{
; 268  : 								p->costs[Pos] = (*Units)[i]->Cost;

	mov	edx, DWORD PTR [ecx+12]
	mov	DWORD PTR [eax+edi*4+36], edx
$L6575:

; 269  : 							}
; 270  : 							p->stringids[Pos] = (*Units)[i]->StringID;

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	edx, DWORD PTR [ecx+16]
	mov	DWORD PTR [eax+edi*4+116], edx

; 271  : 							(*Units)[i]->DMode = NOT_DISABLED;

	mov	eax, DWORD PTR [esi]
	mov	ecx, DWORD PTR [eax+4]
	mov	edx, DWORD PTR [ecx+ebp*4]
	mov	DWORD PTR [edx+24], 0

; 272  : 						}
; 273  : 					}
; 274  : 					else if ((*Units)[i]->DMode == DISABLED_BOTH)

	jmp	SHORT $L6559
$L6572:
	cmp	edx, 3
	jne	SHORT $L6559

; 275  : 					{
; 276  : 						(*Units)[i]->DMode = DISABLED_UNIT;

	mov	DWORD PTR [ecx+24], 2
$L6559:

; 229  : 	for (int i = 0; i < x; i++)

	mov	eax, DWORD PTR _x$[esp+16]
	inc	ebp
	cmp	ebp, eax
	jl	$L6558
	pop	edi
$L6560:

; 277  : 					}
; 278  : 				}
; 279  : 			}
; 280  : 		}
; 281  : 	}
; 282  : 	Update_PT_Data();

	call	DWORD PTR ?Update_PT_Data@@3P6AXXZA	; Update_PT_Data
	pop	esi
	pop	ebp

; 283  : }

	pop	ecx
	ret	4
?Set_Ground_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ENDP	; ExpVehFacClass::Set_Ground_Limit_Reached
_TEXT	ENDS
PUBLIC	?Set_Flying_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Flying_Limit_Reached
; Function compile flags: /Ogty
;	COMDAT ?Set_Flying_Limit_Reached@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT
_x$ = -4						; size = 4
_Reached$ = 8						; size = 1
?Set_Flying_Limit_Reached@ExpVehFacClass@@QAEX_N@Z PROC NEAR ; ExpVehFacClass::Set_Flying_Limit_Reached, COMDAT
; _this$ = ecx

; 286  : {

	push	ecx
	push	ebp
	push	esi
	mov	esi, ecx

; 287  : 	int x = Units->Count();

	mov	eax, DWORD PTR [esi]
	mov	eax, DWORD PTR [eax+12]

; 288  : 	for (int i = 0; i < x; i++)

	xor	ebp, ebp
	test	eax, eax
	mov	DWORD PTR _x$[esp+12], eax
	jle	$L6586
	push	edi
	npad	7
$L6584:

; 289  : 	{
; 290  : 		if ((*Units)[i])

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	eax, DWORD PTR [edx+ebp*4]
	test	eax, eax
	je	$L6585

; 291  : 		{
; 292  : 			if ((*Units)[i]->VehType == VEHTYPE_FLYING && !(*Units)[i]->Support)

	cmp	DWORD PTR [eax+20], 2
	jne	$L6585
	mov	cl, BYTE PTR [eax+28]
	test	cl, cl
	jne	$L6585

; 293  : 			{
; 294  : 				unsigned int Pos = (*Units)[i]->Pos;
; 295  : 				PurchaseSettingsDefClass *p = Get_Purchase_Definition((*Units)[i]->Type,PTTEAM(Team));	

	mov	edx, DWORD PTR [esi+16]
	mov	edi, DWORD PTR [eax+4]
	xor	ecx, ecx
	test	edx, edx
	mov	edx, DWORD PTR [eax]
	sete	cl
	push	ecx
	push	edx
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition

; 296  : 				if (Reached)

	mov	cl, BYTE PTR _Reached$[esp+20]
	add	esp, 8
	test	cl, cl

; 297  : 				{
; 298  : 					if (p->stringids[Pos] != STRINGID_UNAVAIL)

	mov	ecx, DWORD PTR [eax+edi*4+116]
	je	SHORT $L6591
	cmp	ecx, 7265				; 00001c61H
	je	$L6585

; 299  : 					{
; 300  : 						if ((*Units)[i]->DMode == DISABLED_UNIT)

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	cmp	DWORD PTR [ecx+24], 2
	jne	SHORT $L6593

; 301  : 						{
; 302  : 							(*Units)[i]->DMode = DISABLED_BOTH;

	mov	DWORD PTR [ecx+24], 3

; 303  : 						}
; 304  : 						else

	jmp	$L6585
$L6593:

; 305  : 						{
; 306  : 							if (!Sidebar)

	mov	cl, BYTE PTR [esi+37]
	test	cl, cl
	jne	SHORT $L6595

; 307  : 							{
; 308  : 								p->costs[Pos] = 1000000;

	mov	DWORD PTR [eax+edi*4+36], 1000000	; 000f4240H
$L6595:

; 309  : 							}
; 310  : 							(*Units)[i]->DMode = DISABLED_EVF;

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	DWORD PTR [ecx+24], 1

; 311  : 							p->stringids[Pos] = STRINGID_LIMIT;

	mov	DWORD PTR [eax+edi*4+116], 9724		; 000025fcH

; 312  : 						}
; 313  : 					}
; 314  : 				}
; 315  : 				else if (p->stringids[Pos] == STRINGID_LIMIT)

	jmp	SHORT $L6585
$L6591:
	cmp	ecx, 9724				; 000025fcH
	jne	SHORT $L6585

; 316  : 				{
; 317  : 					if ((*Units)[i]->DMode == DISABLED_EVF)

	mov	edx, DWORD PTR [esi]
	mov	ecx, DWORD PTR [edx+4]
	mov	ecx, DWORD PTR [ecx+ebp*4]
	mov	edx, DWORD PTR [ecx+24]
	cmp	edx, 1
	jne	SHORT $L6598

; 318  : 					{
; 319  : 						if (Is_Flying_Building)

	mov	dl, BYTE PTR [esi+105]
	test	dl, dl
	je	SHORT $L6599

; 320  : 						{
; 321  : 							p->stringids[Pos] = STRINGID_BUILDING;

	mov	DWORD PTR [eax+edi*4+116], 7263		; 00001c5fH

; 322  : 						}
; 323  : 						else

	jmp	SHORT $L6585
$L6599:

; 324  : 						{
; 325  : 							if (!Sidebar)

	mov	dl, BYTE PTR [esi+37]
	test	dl, dl
	jne	SHORT $L6601

; 326  : 							{
; 327  : 								p->costs[Pos] = (*Units)[i]->Cost;

	mov	edx, DWORD PTR [ecx+12]
	mov	DWORD PTR [eax+edi*4+36], edx
$L6601:

; 328  : 							}
; 329  : 							p->stringids[Pos] = (*Units)[i]->StringID;

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	edx, DWORD PTR [ecx+16]
	mov	DWORD PTR [eax+edi*4+116], edx

; 330  : 							(*Units)[i]->DMode = NOT_DISABLED;

	mov	eax, DWORD PTR [esi]
	mov	ecx, DWORD PTR [eax+4]
	mov	edx, DWORD PTR [ecx+ebp*4]
	mov	DWORD PTR [edx+24], 0

; 331  : 						}
; 332  : 					}
; 333  : 					else if ((*Units)[i]->DMode == DISABLED_BOTH)

	jmp	SHORT $L6585
$L6598:
	cmp	edx, 3
	jne	SHORT $L6585

; 334  : 					{
; 335  : 						(*Units)[i]->DMode = DISABLED_UNIT;

	mov	DWORD PTR [ecx+24], 2
$L6585:

; 288  : 	for (int i = 0; i < x; i++)

	mov	eax, DWORD PTR _x$[esp+16]
	inc	ebp
	cmp	ebp, eax
	jl	$L6584
	pop	edi
$L6586:

; 336  : 					}
; 337  : 				}
; 338  : 			}
; 339  : 		}
; 340  : 	}
; 341  : 	Update_PT_Data();

	call	DWORD PTR ?Update_PT_Data@@3P6AXXZA	; Update_PT_Data
	pop	esi
	pop	ebp

; 342  : }

	pop	ecx
	ret	4
?Set_Flying_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ENDP	; ExpVehFacClass::Set_Flying_Limit_Reached
_TEXT	ENDS
PUBLIC	?Set_Naval_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Naval_Limit_Reached
; Function compile flags: /Ogty
;	COMDAT ?Set_Naval_Limit_Reached@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT
_x$ = -4						; size = 4
_Reached$ = 8						; size = 1
?Set_Naval_Limit_Reached@ExpVehFacClass@@QAEX_N@Z PROC NEAR ; ExpVehFacClass::Set_Naval_Limit_Reached, COMDAT
; _this$ = ecx

; 345  : {

	push	ecx
	push	ebp
	push	esi
	mov	esi, ecx

; 346  : 	int x = Units->Count();

	mov	eax, DWORD PTR [esi]
	mov	eax, DWORD PTR [eax+12]

; 347  : 	for (int i = 0; i < x; i++)

	xor	ebp, ebp
	test	eax, eax
	mov	DWORD PTR _x$[esp+12], eax
	jle	$L6612
	push	edi
	npad	7
$L6610:

; 348  : 	{
; 349  : 		if ((*Units)[i])

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	eax, DWORD PTR [edx+ebp*4]
	test	eax, eax
	je	$L6611

; 350  : 		{
; 351  : 			if ((*Units)[i]->VehType == VEHTYPE_NAVAL && !(*Units)[i]->Support)

	cmp	DWORD PTR [eax+20], 3
	jne	$L6611
	mov	cl, BYTE PTR [eax+28]
	test	cl, cl
	jne	$L6611

; 352  : 			{
; 353  : 				unsigned int Pos = (*Units)[i]->Pos;
; 354  : 				PurchaseSettingsDefClass *p = Get_Purchase_Definition((*Units)[i]->Type,PTTEAM(Team));	

	mov	edx, DWORD PTR [esi+16]
	mov	edi, DWORD PTR [eax+4]
	xor	ecx, ecx
	test	edx, edx
	mov	edx, DWORD PTR [eax]
	sete	cl
	push	ecx
	push	edx
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition

; 355  : 				if (Reached)

	mov	cl, BYTE PTR _Reached$[esp+20]
	add	esp, 8
	test	cl, cl

; 356  : 				{
; 357  : 					if (p->stringids[Pos] != STRINGID_UNAVAIL)

	mov	ecx, DWORD PTR [eax+edi*4+116]
	je	SHORT $L6617
	cmp	ecx, 7265				; 00001c61H
	je	$L6611

; 358  : 					{
; 359  : 						if ((*Units)[i]->DMode == DISABLED_UNIT)

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	cmp	DWORD PTR [ecx+24], 2
	jne	SHORT $L6619

; 360  : 						{
; 361  : 							(*Units)[i]->DMode = DISABLED_BOTH;

	mov	DWORD PTR [ecx+24], 3

; 362  : 						}
; 363  : 						else

	jmp	$L6611
$L6619:

; 364  : 						{
; 365  : 							if (!Sidebar)

	mov	cl, BYTE PTR [esi+37]
	test	cl, cl
	jne	SHORT $L6621

; 366  : 							{
; 367  : 								p->costs[Pos] = 1000000;

	mov	DWORD PTR [eax+edi*4+36], 1000000	; 000f4240H
$L6621:

; 368  : 							}
; 369  : 							(*Units)[i]->DMode = DISABLED_EVF;

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	DWORD PTR [ecx+24], 1

; 370  : 							p->stringids[Pos] = STRINGID_LIMIT;

	mov	DWORD PTR [eax+edi*4+116], 9724		; 000025fcH

; 371  : 						}
; 372  : 					}
; 373  : 				}
; 374  : 				else if (p->stringids[Pos] == STRINGID_LIMIT)

	jmp	SHORT $L6611
$L6617:
	cmp	ecx, 9724				; 000025fcH
	jne	SHORT $L6611

; 375  : 				{
; 376  : 					if ((*Units)[i]->DMode == DISABLED_EVF)

	mov	edx, DWORD PTR [esi]
	mov	ecx, DWORD PTR [edx+4]
	mov	ecx, DWORD PTR [ecx+ebp*4]
	mov	edx, DWORD PTR [ecx+24]
	cmp	edx, 1
	jne	SHORT $L6624

; 377  : 					{
; 378  : 						if (Is_Naval_Building)

	mov	dl, BYTE PTR [esi+106]
	test	dl, dl
	je	SHORT $L6625

; 379  : 						{
; 380  : 							p->stringids[Pos] = STRINGID_BUILDING;

	mov	DWORD PTR [eax+edi*4+116], 7263		; 00001c5fH

; 381  : 						}
; 382  : 						else

	jmp	SHORT $L6611
$L6625:

; 383  : 						{
; 384  : 							if (!Sidebar)

	mov	dl, BYTE PTR [esi+37]
	test	dl, dl
	jne	SHORT $L6627

; 385  : 							{
; 386  : 								p->costs[Pos] = (*Units)[i]->Cost;

	mov	edx, DWORD PTR [ecx+12]
	mov	DWORD PTR [eax+edi*4+36], edx
$L6627:

; 387  : 							}
; 388  : 							p->stringids[Pos] = (*Units)[i]->StringID;

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	edx, DWORD PTR [ecx+16]
	mov	DWORD PTR [eax+edi*4+116], edx

; 389  : 							(*Units)[i]->DMode = NOT_DISABLED;

	mov	eax, DWORD PTR [esi]
	mov	ecx, DWORD PTR [eax+4]
	mov	edx, DWORD PTR [ecx+ebp*4]
	mov	DWORD PTR [edx+24], 0

; 390  : 						}
; 391  : 					}
; 392  : 					else if ((*Units)[i]->DMode == DISABLED_BOTH)

	jmp	SHORT $L6611
$L6624:
	cmp	edx, 3
	jne	SHORT $L6611

; 393  : 					{
; 394  : 						(*Units)[i]->DMode = DISABLED_UNIT;

	mov	DWORD PTR [ecx+24], 2
$L6611:

; 347  : 	for (int i = 0; i < x; i++)

	mov	eax, DWORD PTR _x$[esp+16]
	inc	ebp
	cmp	ebp, eax
	jl	$L6610
	pop	edi
$L6612:

; 395  : 					}
; 396  : 				}
; 397  : 			}
; 398  : 		}
; 399  : 	}
; 400  : 	Update_PT_Data();

	call	DWORD PTR ?Update_PT_Data@@3P6AXXZA	; Update_PT_Data
	pop	esi
	pop	ebp

; 401  : }

	pop	ecx
	ret	4
?Set_Naval_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ENDP	; ExpVehFacClass::Set_Naval_Limit_Reached
_TEXT	ENDS
PUBLIC	?Set_Support_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Support_Limit_Reached
; Function compile flags: /Ogty
;	COMDAT ?Set_Support_Limit_Reached@ExpVehFacClass@@QAEX_N@Z
_TEXT	SEGMENT
_x$ = -4						; size = 4
_Reached$ = 8						; size = 1
?Set_Support_Limit_Reached@ExpVehFacClass@@QAEX_N@Z PROC NEAR ; ExpVehFacClass::Set_Support_Limit_Reached, COMDAT
; _this$ = ecx

; 404  : {

	push	ecx
	push	ebp
	push	esi
	mov	esi, ecx

; 405  : 	int x = Units->Count();

	mov	eax, DWORD PTR [esi]
	mov	eax, DWORD PTR [eax+12]

; 406  : 	for (int i = 0; i < x; i++)

	xor	ebp, ebp
	test	eax, eax
	mov	DWORD PTR _x$[esp+12], eax
	jle	$L6638
	push	edi
	npad	7
$L6636:

; 407  : 	{
; 408  : 		if ((*Units)[i])

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	eax, DWORD PTR [edx+ebp*4]
	test	eax, eax
	je	$L6637

; 409  : 		{
; 410  : 			if ((*Units)[i]->Support)

	mov	cl, BYTE PTR [eax+28]
	test	cl, cl
	je	$L6637

; 411  : 			{
; 412  : 				unsigned int Pos = (*Units)[i]->Pos;
; 413  : 				PurchaseSettingsDefClass *p = Get_Purchase_Definition((*Units)[i]->Type,PTTEAM(Team));	

	mov	edx, DWORD PTR [esi+16]
	mov	edi, DWORD PTR [eax+4]
	xor	ecx, ecx
	test	edx, edx
	mov	edx, DWORD PTR [eax]
	sete	cl
	push	ecx
	push	edx
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition

; 414  : 				if (Reached)

	mov	cl, BYTE PTR _Reached$[esp+20]
	add	esp, 8
	test	cl, cl

; 415  : 				{
; 416  : 					if (p->stringids[Pos] != STRINGID_UNAVAIL)

	mov	ecx, DWORD PTR [eax+edi*4+116]
	je	SHORT $L6643
	cmp	ecx, 7265				; 00001c61H
	je	$L6637

; 417  : 					{
; 418  : 						if ((*Units)[i]->DMode == DISABLED_UNIT)

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	cmp	DWORD PTR [ecx+24], 2
	jne	SHORT $L6645

; 419  : 						{
; 420  : 							(*Units)[i]->DMode = DISABLED_BOTH;

	mov	DWORD PTR [ecx+24], 3

; 421  : 						}
; 422  : 						else

	jmp	$L6637
$L6645:

; 423  : 						{
; 424  : 							if (!Sidebar)

	mov	cl, BYTE PTR [esi+37]
	test	cl, cl
	jne	SHORT $L6647

; 425  : 							{
; 426  : 								p->costs[Pos] = 1000000;

	mov	DWORD PTR [eax+edi*4+36], 1000000	; 000f4240H
$L6647:

; 427  : 							}
; 428  : 							(*Units)[i]->DMode = DISABLED_EVF;

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	DWORD PTR [ecx+24], 1

; 429  : 							p->stringids[Pos] = STRINGID_LIMIT;

	mov	DWORD PTR [eax+edi*4+116], 9724		; 000025fcH

; 430  : 						}
; 431  : 					}
; 432  : 				}
; 433  : 				else if (p->stringids[Pos] == STRINGID_LIMIT)

	jmp	$L6637
$L6643:
	cmp	ecx, 9724				; 000025fcH
	jne	SHORT $L6637

; 434  : 				{
; 435  : 					if ((*Units)[i]->DMode == DISABLED_EVF)

	mov	edx, DWORD PTR [esi]
	mov	ecx, DWORD PTR [edx+4]
	mov	edx, DWORD PTR [ecx+ebp*4]
	mov	ecx, DWORD PTR [edx+24]
	cmp	ecx, 1
	jne	SHORT $L6650

; 436  : 					{
; 437  : 						if (((*Units)[i]->VehType == VEHTYPE_GROUND && Is_Ground_Building) || ((*Units)[i]->VehType == VEHTYPE_FLYING && Is_Flying_Building) || ((*Units)[i]->VehType == VEHTYPE_NAVAL && Is_Naval_Building))

	mov	ecx, DWORD PTR [edx+20]
	cmp	ecx, 1
	jne	SHORT $L6653
	cmp	BYTE PTR [esi+104], 0
	jne	SHORT $L6652
$L6653:
	cmp	ecx, 2
	jne	SHORT $L6654
	cmp	BYTE PTR [esi+105], 0
	jne	SHORT $L6652
$L6654:
	cmp	ecx, 3
	jne	SHORT $L6651
	mov	cl, BYTE PTR [esi+106]
	test	cl, cl
	je	SHORT $L6651
$L6652:

; 438  : 						{
; 439  : 							p->stringids[Pos] = STRINGID_BUILDING;

	mov	DWORD PTR [eax+edi*4+116], 7263		; 00001c5fH

; 440  : 						}
; 441  : 						else

	jmp	SHORT $L6637
$L6651:

; 442  : 						{
; 443  : 							if (!Sidebar)

	mov	cl, BYTE PTR [esi+37]
	test	cl, cl
	jne	SHORT $L6656

; 444  : 							{
; 445  : 								p->costs[Pos] = (*Units)[i]->Cost;

	mov	edx, DWORD PTR [edx+12]
	mov	DWORD PTR [eax+edi*4+36], edx
$L6656:

; 446  : 							}
; 447  : 							p->stringids[Pos] = (*Units)[i]->StringID;

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+ebp*4]
	mov	edx, DWORD PTR [ecx+16]
	mov	DWORD PTR [eax+edi*4+116], edx

; 448  : 							(*Units)[i]->DMode = NOT_DISABLED;

	mov	eax, DWORD PTR [esi]
	mov	ecx, DWORD PTR [eax+4]
	mov	edx, DWORD PTR [ecx+ebp*4]
	mov	DWORD PTR [edx+24], 0

; 449  : 						}
; 450  : 					}
; 451  : 					else if ((*Units)[i]->DMode == DISABLED_BOTH)

	jmp	SHORT $L6637
$L6650:
	cmp	ecx, 3
	jne	SHORT $L6637

; 452  : 					{
; 453  : 						(*Units)[i]->DMode = DISABLED_UNIT;

	mov	DWORD PTR [edx+24], 2
$L6637:

; 406  : 	for (int i = 0; i < x; i++)

	mov	eax, DWORD PTR _x$[esp+16]
	inc	ebp
	cmp	ebp, eax
	jl	$L6636
	pop	edi
$L6638:

; 454  : 					}
; 455  : 				}
; 456  : 			}
; 457  : 		}
; 458  : 	}
; 459  : 	Update_PT_Data();

	call	DWORD PTR ?Update_PT_Data@@3P6AXXZA	; Update_PT_Data
	pop	esi
	pop	ebp

; 460  : }

	pop	ecx
	ret	4
?Set_Support_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ENDP ; ExpVehFacClass::Set_Support_Limit_Reached
_TEXT	ENDS
PUBLIC	?Is_In_Vector@ExpVehFacClass@@AAE_NAAV?$SimpleDynVecClass@I@@I@Z ; ExpVehFacClass::Is_In_Vector
; Function compile flags: /Ogty
;	COMDAT ?Is_In_Vector@ExpVehFacClass@@AAE_NAAV?$SimpleDynVecClass@I@@I@Z
_TEXT	SEGMENT
_Vec$ = 8						; size = 4
_Preset$ = 12						; size = 4
?Is_In_Vector@ExpVehFacClass@@AAE_NAAV?$SimpleDynVecClass@I@@I@Z PROC NEAR ; ExpVehFacClass::Is_In_Vector, COMDAT
; _this$ = ecx

; 465  : 	int x = Vec.Count();

	mov	ecx, DWORD PTR _Vec$[esp-4]
	mov	edx, DWORD PTR [ecx+12]
	push	esi

; 466  : 	for (int i = 0; i < x; i++)

	xor	eax, eax
	test	edx, edx
	jle	SHORT $L6715
	mov	ecx, DWORD PTR [ecx+4]
	mov	esi, DWORD PTR _Preset$[esp]
$L6713:

; 467  : 	{
; 468  : 		if (Vec[i] == Preset)

	cmp	DWORD PTR [ecx], esi
	je	SHORT $L8942
	inc	eax
	add	ecx, 4
	cmp	eax, edx
	jl	SHORT $L6713
$L6715:

; 471  : 		}
; 472  : 	}
; 473  : 	return false;

	xor	al, al
	pop	esi

; 474  : }

	ret	8
$L8942:

; 469  : 		{
; 470  : 			return true;

	mov	al, 1
	pop	esi

; 474  : }

	ret	8
?Is_In_Vector@ExpVehFacClass@@AAE_NAAV?$SimpleDynVecClass@I@@I@Z ENDP ; ExpVehFacClass::Is_In_Vector
_TEXT	ENDS
PUBLIC	?Get_Unit_Info@ExpVehFacClass@@QAEPAUUnitInfo@@I@Z ; ExpVehFacClass::Get_Unit_Info
; Function compile flags: /Ogty
;	COMDAT ?Get_Unit_Info@ExpVehFacClass@@QAEPAUUnitInfo@@I@Z
_TEXT	SEGMENT
_Preset$ = 8						; size = 4
?Get_Unit_Info@ExpVehFacClass@@QAEPAUUnitInfo@@I@Z PROC NEAR ; ExpVehFacClass::Get_Unit_Info, COMDAT
; _this$ = ecx

; 478  : 	int x = Units->Count();

	mov	eax, DWORD PTR [ecx]
	push	ebx
	push	esi
	mov	esi, DWORD PTR [eax+12]

; 479  : 	for (int i = 0; i < x; i++)

	xor	ecx, ecx
	test	esi, esi
	push	edi
	jle	SHORT $L6725
	mov	edi, DWORD PTR [eax+4]
	mov	ebx, DWORD PTR _Preset$[esp+8]
	mov	edx, edi
$L6723:

; 480  : 	{
; 481  : 		if ((*Units)[i])

	mov	eax, DWORD PTR [edx]
	test	eax, eax
	je	SHORT $L6724

; 482  : 		{
; 483  : 			if ((*Units)[i]->Preset == Preset)

	cmp	DWORD PTR [eax+8], ebx
	je	SHORT $L8960
$L6724:

; 479  : 	for (int i = 0; i < x; i++)

	inc	ecx
	add	edx, 4
	cmp	ecx, esi
	jl	SHORT $L6723
$L6725:
	pop	edi
	pop	esi

; 486  : 			}
; 487  : 		}
; 488  : 	}
; 489  : 	return 0;

	xor	eax, eax
	pop	ebx

; 490  : }

	ret	4
$L8960:

; 484  : 			{
; 485  : 				return (*Units)[i];

	mov	eax, DWORD PTR [edi+ecx*4]
	pop	edi
	pop	esi
	pop	ebx

; 490  : }

	ret	4
?Get_Unit_Info@ExpVehFacClass@@QAEPAUUnitInfo@@I@Z ENDP	; ExpVehFacClass::Get_Unit_Info
_TEXT	ENDS
PUBLIC	?Get_Flying_Landing_Position@ExpVehFacClass@@AAE?AUVector3@@XZ ; ExpVehFacClass::Get_Flying_Landing_Position
; Function compile flags: /Ogty
;	COMDAT ?Get_Flying_Landing_Position@ExpVehFacClass@@AAE?AUVector3@@XZ
_TEXT	SEGMENT
$T8966 = -12						; size = 12
___$ReturnUdt$ = 8					; size = 4
?Get_Flying_Landing_Position@ExpVehFacClass@@AAE?AUVector3@@XZ PROC NEAR ; ExpVehFacClass::Get_Flying_Landing_Position, COMDAT
; _this$ = ecx

; 494  : 	Last_Flying_Landing_Pos++;

	mov	eax, DWORD PTR [ecx+8]
	sub	esp, 12					; 0000000cH
	inc	eax
	mov	DWORD PTR [ecx+8], eax
	mov	edx, eax

; 495  : 	if (Last_Flying_Landing_Pos >= Flying_Landing_Positions->Count())

	mov	eax, DWORD PTR [ecx+76]
	push	esi
	cmp	edx, DWORD PTR [eax+12]
	jl	SHORT $L6732

; 496  : 	{
; 497  : 		Last_Flying_Landing_Pos = 0;

	mov	DWORD PTR [ecx+8], 0
$L6732:

; 498  : 	}
; 499  : 	return Commands->Get_Position((*Flying_Landing_Positions)[Last_Flying_Landing_Pos]);

	mov	ecx, DWORD PTR [ecx+8]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [edx+ecx*4]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	lea	ecx, DWORD PTR $T8966[esp+20]
	push	ecx
	call	DWORD PTR [edx+64]
	mov	esi, DWORD PTR [eax]
	mov	ecx, DWORD PTR ___$ReturnUdt$[esp+20]
	mov	edx, ecx
	mov	DWORD PTR [edx], esi
	mov	esi, DWORD PTR [eax+4]
	mov	DWORD PTR [edx+4], esi
	mov	eax, DWORD PTR [eax+8]
	add	esp, 8
	mov	DWORD PTR [edx+8], eax
	mov	eax, ecx
	pop	esi

; 500  : }

	add	esp, 12					; 0000000cH
	ret	4
?Get_Flying_Landing_Position@ExpVehFacClass@@AAE?AUVector3@@XZ ENDP ; ExpVehFacClass::Get_Flying_Landing_Position
_TEXT	ENDS
PUBLIC	?Get_Naval_Creation_Position@ExpVehFacClass@@AAEPAEI@Z ; ExpVehFacClass::Get_Naval_Creation_Position
; Function compile flags: /Ogty
;	COMDAT ?Get_Naval_Creation_Position@ExpVehFacClass@@AAEPAEI@Z
_TEXT	SEGMENT
_Preset$ = 8						; size = 4
?Get_Naval_Creation_Position@ExpVehFacClass@@AAEPAEI@Z PROC NEAR ; ExpVehFacClass::Get_Naval_Creation_Position, COMDAT
; _this$ = ecx

; 504  : 	if (Naval_Creation_Positions->Count())

	mov	eax, DWORD PTR [ecx+72]
	mov	edx, DWORD PTR [eax+12]
	test	edx, edx
	push	esi
	push	edi
	je	SHORT $L6738

; 505  : 	{
; 506  : 		Last_Naval_Creation_Pos++;

	mov	edi, DWORD PTR [ecx+12]
	inc	edi
	mov	DWORD PTR [ecx+12], edi

; 507  : 		if (Last_Naval_Creation_Pos >= Naval_Creation_Positions->Count())

	mov	esi, DWORD PTR [eax+12]
	mov	edx, edi
	cmp	edx, esi
	jl	SHORT $L6739

; 508  : 		{
; 509  : 			Last_Naval_Creation_Pos = 0;

	mov	DWORD PTR [ecx+12], 0
$L6739:

; 510  : 		}
; 511  : 		return (*Naval_Creation_Positions)[Last_Naval_Creation_Pos];

	mov	ecx, DWORD PTR [ecx+12]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [edx+ecx*4]
	pop	edi
	pop	esi

; 528  : }

	ret	4
$L6738:

; 512  : 	}
; 513  : 	else
; 514  : 	{
; 515  : 		int x = Naval_Creation_Pos_Per_Vehicle->Count();

	mov	ecx, DWORD PTR [ecx+4]
	mov	esi, DWORD PTR [ecx+12]
	push	ebx

; 516  : 		for (int i = 0; i < x; i++)

	xor	edx, edx
	test	esi, esi
	jle	SHORT $L6745
	mov	edi, DWORD PTR [ecx+4]
	mov	ebx, DWORD PTR _Preset$[esp+8]
	mov	ecx, edi
$L6743:

; 517  : 		{
; 518  : 			if ((*Naval_Creation_Pos_Per_Vehicle)[i])

	mov	eax, DWORD PTR [ecx]
	test	eax, eax
	je	SHORT $L6744

; 519  : 			{
; 520  : 				if ((*Naval_Creation_Pos_Per_Vehicle)[i]->Preset == Preset)

	cmp	DWORD PTR [eax], ebx
	je	SHORT $L9001
$L6744:

; 516  : 		for (int i = 0; i < x; i++)

	inc	edx
	add	ecx, 4
	cmp	edx, esi
	jl	SHORT $L6743
$L6745:
	pop	ebx
	pop	edi

; 523  : 				}
; 524  : 			}
; 525  : 		}
; 526  : 	}
; 527  : 	return 0;

	xor	eax, eax
	pop	esi

; 528  : }

	ret	4
$L9001:

; 521  : 				{
; 522  : 					return (*Naval_Creation_Pos_Per_Vehicle)[i]->Pos;

	mov	eax, DWORD PTR [edi+edx*4]
	mov	eax, DWORD PTR [eax+4]
	pop	ebx
	pop	edi
	pop	esi

; 528  : }

	ret	4
?Get_Naval_Creation_Position@ExpVehFacClass@@AAEPAEI@Z ENDP ; ExpVehFacClass::Get_Naval_Creation_Position
_TEXT	ENDS
PUBLIC	?Clear@ExpVehFacClass@@QAEXXZ			; ExpVehFacClass::Clear
EXTRN	?RemoveObjectCreateHook@@3P6AXH@ZA:DWORD	; RemoveObjectCreateHook
EXTRN	?RemoveVehiclePurchaseHook@@3P6AXH@ZA:DWORD	; RemoveVehiclePurchaseHook
; Function compile flags: /Ogty
;	COMDAT ?Clear@ExpVehFacClass@@QAEXXZ
_TEXT	SEGMENT
?Clear@ExpVehFacClass@@QAEXXZ PROC NEAR			; ExpVehFacClass::Clear, COMDAT
; _this$ = ecx

; 756  : {

	push	ebx
	push	ebp
	push	esi
	mov	esi, ecx

; 757  : 	RemoveVehiclePurchaseHook(PHookID);

	mov	eax, DWORD PTR [esi+20]
	push	edi
	push	eax
	call	DWORD PTR ?RemoveVehiclePurchaseHook@@3P6AXH@ZA ; RemoveVehiclePurchaseHook

; 758  : 	PHookID = 0;
; 759  : 	RemoveObjectCreateHook(OHookID);

	mov	ecx, DWORD PTR [esi+24]
	xor	ebx, ebx
	push	ecx
	mov	DWORD PTR [esi+20], ebx
	call	DWORD PTR ?RemoveObjectCreateHook@@3P6AXH@ZA ; RemoveObjectCreateHook

; 760  : 	OHookID = 0;
; 761  : 	delete OHookStruct;

	mov	edx, DWORD PTR [esi+28]
	push	edx
	mov	DWORD PTR [esi+24], ebx
	call	??3@YAXPAX@Z				; operator delete

; 762  : 	OHookStruct = 0;
; 763  : 	Script = 0;
; 764  : 	Using_Naval = false;
; 765  : 	Sidebar = false;
; 766  : 	int x = Units->Count();

	mov	eax, DWORD PTR [esi]
	mov	DWORD PTR [esi+28], ebx
	mov	DWORD PTR [esi+32], ebx
	mov	BYTE PTR [esi+36], bl
	mov	BYTE PTR [esi+37], bl
	mov	ebp, DWORD PTR [eax+12]
	add	esp, 12					; 0000000cH

; 767  : 	for (int i = 0; i < x; i++)

	xor	edi, edi
	cmp	ebp, ebx
	jle	SHORT $L6895
$L6893:

; 768  : 	{
; 769  : 		if ((*Units)[i])

	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	eax, DWORD PTR [edx+edi*4]
	cmp	eax, ebx
	je	SHORT $L6894

; 770  : 		{
; 771  : 			delete (*Units)[i];

	push	eax
	call	??3@YAXPAX@Z				; operator delete

; 772  : 			Units->Delete(i);

	mov	eax, DWORD PTR [esi]
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR [ecx+edi*4], ebx
	mov	ecx, DWORD PTR [eax+12]
	add	esp, 4
	dec	ecx
	mov	DWORD PTR [eax+12], ecx
$L6894:
	inc	edi
	cmp	edi, ebp
	jl	SHORT $L6893
$L6895:

; 773  : 		}
; 774  : 	}
; 775  : 	x = Naval_Creation_Pos_Per_Vehicle->Count();

	mov	edx, DWORD PTR [esi+4]
	mov	ebp, DWORD PTR [edx+12]

; 776  : 	for (int i = 0; i < x; i++)

	xor	edi, edi
	cmp	ebp, ebx
	jle	SHORT $L6901
	npad	6
$L6899:

; 777  : 	{
; 778  : 		if ((*Naval_Creation_Pos_Per_Vehicle)[i])

	mov	eax, DWORD PTR [esi+4]
	mov	ecx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [ecx+edi*4]
	cmp	eax, ebx
	je	SHORT $L6900

; 779  : 		{
; 780  : 			delete (*Naval_Creation_Pos_Per_Vehicle)[i];

	push	eax
	call	??3@YAXPAX@Z				; operator delete

; 781  : 			Naval_Creation_Pos_Per_Vehicle->Delete(i);

	mov	eax, DWORD PTR [esi+4]
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR [edx+edi*4], ebx
	mov	ecx, DWORD PTR [eax+12]
	add	esp, 4
	dec	ecx
	mov	DWORD PTR [eax+12], ecx
$L6900:
	inc	edi
	cmp	edi, ebp
	jl	SHORT $L6899
$L6901:

; 782  : 		}
; 783  : 	}
; 784  : 	x = Naval_Creation_Positions->Count();

	mov	eax, DWORD PTR [esi+72]
	mov	edx, DWORD PTR [eax+12]

; 785  : 	for (int i = 0; i < x; i++)

	xor	ecx, ecx
	cmp	edx, ebx
	jle	SHORT $L6907
$L6905:

; 786  : 	{
; 787  : 		Naval_Creation_Positions->Delete(i);

	mov	eax, DWORD PTR [esi+72]
	mov	edi, DWORD PTR [eax+4]
	mov	DWORD PTR [edi+ecx*4], ebx
	mov	ebp, DWORD PTR [eax+12]
	dec	ebp
	inc	ecx
	cmp	ecx, edx
	mov	DWORD PTR [eax+12], ebp
	jl	SHORT $L6905
$L6907:

; 788  : 	}
; 789  : 	x = Flying_Landing_Positions->Count();

	mov	ecx, DWORD PTR [esi+76]
	mov	edx, DWORD PTR [ecx+12]

; 790  : 	for (int i = 0; i < x; i++)

	xor	ecx, ecx
	cmp	edx, ebx
	jle	SHORT $L9059
	npad	8
$L6909:

; 791  : 	{
; 792  : 		Flying_Landing_Positions->Delete(i);

	mov	eax, DWORD PTR [esi+76]
	mov	edi, DWORD PTR [eax+4]
	mov	DWORD PTR [edi+ecx*4], ebx
	mov	ebp, DWORD PTR [eax+12]
	dec	ebp
	inc	ecx
	cmp	ecx, edx
	mov	DWORD PTR [eax+12], ebp
	jl	SHORT $L6909
$L9059:
	pop	edi

; 793  : 	}
; 794  : 	Loaded = false;

	mov	BYTE PTR [esi+107], bl
	pop	esi
	pop	ebp
	pop	ebx

; 795  : }

	ret	0
?Clear@ExpVehFacClass@@QAEXXZ ENDP			; ExpVehFacClass::Clear
_TEXT	ENDS
PUBLIC	?Purchase_Hook@ExpVehFacClass@@SAHPAVBaseControllerClass@@PAEIIPBD@Z ; ExpVehFacClass::Purchase_Hook
PUBLIC	??_C@_0DB@EAPDLBJM@The?5limit?5for?5Support?5vehicles?5h@ ; `string'
PUBLIC	??_C@_0CP@NIACEBMO@The?5limit?5for?5Naval?5vehicles?5has@ ; `string'
PUBLIC	??_C@_04OHJIHAFH@None?$AA@			; `string'
PUBLIC	??_C@_0DA@DDGIFENP@The?5limit?5for?5Flying?5vehicles?5ha@ ; `string'
PUBLIC	??_C@_0BA@IACOJFFL@ExpVehFac_1?4txt?$AA@	; `string'
PUBLIC	??_C@_0BA@ELHCEGPO@ExpVehFac_0?4txt?$AA@	; `string'
PUBLIC	??_C@_0P@ILJCPIMA@Test_Cinematic?$AA@		; `string'
PUBLIC	??_C@_0BB@NHJNEILC@Invisible_Object?$AA@	; `string'
PUBLIC	??_C@_0DA@EHCLJPMO@The?5limit?5for?5Ground?5vehicles?5ha@ ; `string'
PUBLIC	__real@00000000
PUBLIC	__real@40a00000
EXTRN	?Create_Vehicle@@YAXPBDMPAEH@Z:NEAR		; Create_Vehicle
EXTRN	?Purchase_Item@@YA_NPAEH@Z:NEAR			; Purchase_Item
EXTRN	?Find_Closest_Zone@@YAPAEAAUVector3@@I@Z:NEAR	; Find_Closest_Zone
EXTRN	?Can_Team_Build_Vehicle@@YA_NH@Z:NEAR		; Can_Team_Build_Vehicle
EXTRN	?Damage_All_Objects_In_Zone@@YAXPAEMPBD0@Z:NEAR	; Damage_All_Objects_In_Zone
EXTRN	?Send_Message_Player@@3P6AXPAEIIIPBD@ZA:DWORD	; Send_Message_Player
EXTRN	?Get_Build_Time_Multiplier@@3P6AMH@ZA:DWORD	; Get_Build_Time_Multiplier
EXTRN	?Set_Currently_Building@@3P6AX_NH@ZA:DWORD	; Set_Currently_Building
;	COMDAT ??_C@_0DB@EAPDLBJM@The?5limit?5for?5Support?5vehicles?5h@
CONST	SEGMENT
??_C@_0DB@EAPDLBJM@The?5limit?5for?5Support?5vehicles?5h@ DB 'The limit f'
	DB	'or Support vehicles has been reached.', 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_0CP@NIACEBMO@The?5limit?5for?5Naval?5vehicles?5has@
CONST	SEGMENT
??_C@_0CP@NIACEBMO@The?5limit?5for?5Naval?5vehicles?5has@ DB 'The limit f'
	DB	'or Naval vehicles has been reached.', 00H	; `string'
CONST	ENDS
;	COMDAT __real@00000000
CONST	SEGMENT
__real@00000000 DD 000000000r			; 0
CONST	ENDS
;	COMDAT ??_C@_04OHJIHAFH@None?$AA@
CONST	SEGMENT
??_C@_04OHJIHAFH@None?$AA@ DB 'None', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_0BA@IACOJFFL@ExpVehFac_1?4txt?$AA@
CONST	SEGMENT
??_C@_0BA@IACOJFFL@ExpVehFac_1?4txt?$AA@ DB 'ExpVehFac_1.txt', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BA@ELHCEGPO@ExpVehFac_0?4txt?$AA@
CONST	SEGMENT
??_C@_0BA@ELHCEGPO@ExpVehFac_0?4txt?$AA@ DB 'ExpVehFac_0.txt', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0P@ILJCPIMA@Test_Cinematic?$AA@
CONST	SEGMENT
??_C@_0P@ILJCPIMA@Test_Cinematic?$AA@ DB 'Test_Cinematic', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
CONST	SEGMENT
??_C@_0BB@NHJNEILC@Invisible_Object?$AA@ DB 'Invisible_Object', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0DA@DDGIFENP@The?5limit?5for?5Flying?5vehicles?5ha@
CONST	SEGMENT
??_C@_0DA@DDGIFENP@The?5limit?5for?5Flying?5vehicles?5ha@ DB 'The limit f'
	DB	'or Flying vehicles has been reached.', 00H	; `string'
CONST	ENDS
;	COMDAT __real@40a00000
CONST	SEGMENT
__real@40a00000 DD 040a00000r			; 5
CONST	ENDS
;	COMDAT ??_C@_0DA@EHCLJPMO@The?5limit?5for?5Ground?5vehicles?5ha@
CONST	SEGMENT
??_C@_0DA@EHCLJPMO@The?5limit?5for?5Ground?5vehicles?5ha@ DB 'The limit f'
	DB	'or Ground vehicles has been reached.', 00H	; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Purchase_Hook@ExpVehFacClass@@SAHPAVBaseControllerClass@@PAEIIPBD@Z
_TEXT	SEGMENT
_Pos$6936 = -24						; size = 12
$T9067 = -12						; size = 12
$T9064 = -12						; size = 12
_base$ = 8						; size = 4
_purchaser$ = 12					; size = 4
_cost$ = 16						; size = 4
_preset$ = 20						; size = 4
_data$ = 24						; size = 4
?Purchase_Hook@ExpVehFacClass@@SAHPAVBaseControllerClass@@PAEIIPBD@Z PROC NEAR ; ExpVehFacClass::Purchase_Hook, COMDAT

; 798  : {

	sub	esp, 24					; 00000018H
	push	ebx

; 799  : 	int Team = Get_Object_Type(purchaser);

	mov	ebx, DWORD PTR _purchaser$[esp+24]
	push	ebp
	push	esi
	push	ebx
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	mov	esi, eax

; 800  : 	if (!Can_Team_Build_Vehicle(Team) || cost >= 100000 || !preset)

	push	esi
	call	?Can_Team_Build_Vehicle@@YA_NH@Z	; Can_Team_Build_Vehicle
	add	esp, 8
	test	al, al
	je	$L6921
	cmp	DWORD PTR _cost$[esp+32], 100000	; 000186a0H
	jae	$L6921
	mov	ebp, DWORD PTR _preset$[esp+32]
	test	ebp, ebp
	je	$L6921
	push	edi

; 803  : 	}
; 804  : 	UnitInfo *Temp = ExpVehFac[Team]->Get_Unit_Info(preset);

	mov	edi, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	push	ebp
	mov	ecx, edi
	call	?Get_Unit_Info@ExpVehFacClass@@QAEPAUUnitInfo@@I@Z ; ExpVehFacClass::Get_Unit_Info

; 805  : 	if (Temp->VehType == VEHTYPE_NAVAL)

	mov	ecx, DWORD PTR [eax+20]
	cmp	ecx, 3
	jne	$L6923

; 806  : 	{
; 807  : 		if (Temp->Support)

	mov	cl, BYTE PTR [eax+28]
	test	cl, cl
	je	SHORT $L6924

; 808  : 		{
; 809  : 			if (ExpVehFac[Team]->Support_Limit && ExpVehFac[Team]->Support_Amount >= ExpVehFac[Team]->Support_Limit)

	mov	eax, DWORD PTR [edi+52]
	test	eax, eax
	je	SHORT $L6928
	mov	eax, edi
	mov	ecx, DWORD PTR [eax+68]
	cmp	ecx, DWORD PTR [eax+52]
	jb	SHORT $L6928
$L9080:

; 810  : 			{
; 811  : 				Send_Message_Player(purchaser,255,255,255,"The limit for Support vehicles has been reached.");

	push	OFFSET FLAT:??_C@_0DB@EAPDLBJM@The?5limit?5for?5Support?5vehicles?5h@
$L9078:
	push	255					; 000000ffH
	push	255					; 000000ffH
	push	255					; 000000ffH
	push	ebx
	call	DWORD PTR ?Send_Message_Player@@3P6AXPAEIIIPBD@ZA ; Send_Message_Player
	add	esp, 20					; 00000014H
$L9079:
	pop	edi
	pop	esi
	pop	ebp

; 812  : 				return 3;

	mov	eax, 3
	pop	ebx

; 913  : 			}
; 914  : 			return 0;
; 915  : 		}
; 916  : 		return 2;
; 917  : 	}
; 918  : }

	add	esp, 24					; 00000018H
	ret	0
$L6924:

; 813  : 			}
; 814  : 		}
; 815  : 		else if (ExpVehFac[Team]->Naval_Limit && ExpVehFac[Team]->Naval_Amount >= ExpVehFac[Team]->Naval_Limit)

	mov	eax, DWORD PTR [edi+48]
	test	eax, eax
	je	SHORT $L6928
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	edx, DWORD PTR [eax+64]
	cmp	edx, DWORD PTR [eax+48]
	jb	SHORT $L6928

; 816  : 		{
; 817  : 			Send_Message_Player(purchaser,255,255,255,"The limit for Naval vehicles has been reached.");

	push	OFFSET FLAT:??_C@_0CP@NIACEBMO@The?5limit?5for?5Naval?5vehicles?5has@

; 818  : 			return 3;

	jmp	SHORT $L9078
$L6928:

; 819  : 		}
; 820  : 		if (ExpVehFac[Team]->Is_Naval_Building)

	mov	al, BYTE PTR [edi+106]
	test	al, al

; 821  : 		{
; 822  : 			return 3;

	jne	SHORT $L9079

; 823  : 		}
; 824  : 		else if (Purchase_Item(purchaser,cost))

	mov	eax, DWORD PTR _cost$[esp+36]
	push	eax
	push	ebx
	call	?Purchase_Item@@YA_NPAEH@Z		; Purchase_Item
	add	esp, 8
	test	al, al
	je	$L6932

; 825  : 		{
; 826  : 			if (ExpVehFac[Team]->Naval_Build_Time[0] > 0.0f)

	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	fld	DWORD PTR [ecx+96]
	fcomp	DWORD PTR __real@00000000
	fnstsw	ax
	test	ah, 65					; 00000041H
	jne	SHORT $L9072

; 827  : 			{
; 828  : 				Set_Currently_Building(true,Team);

	push	esi
	push	1
	call	DWORD PTR ?Set_Currently_Building@@3P6AX_NH@ZA ; Set_Currently_Building

; 829  : 				Commands->Send_Custom_Event(0,ExpVehFac[Team]->Script,129310,Team,ExpVehFac[Team]->Naval_Build_Time[0]);

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	edx, DWORD PTR [eax+96]
	mov	eax, DWORD PTR [eax+32]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	push	esi
	push	129310					; 0001f91eH
	push	eax
	push	0
	call	DWORD PTR [ecx+140]
	add	esp, 28					; 0000001cH
$L9072:

; 830  : 			}
; 831  : 			if (ExpVehFac[Team]->Naval_Build_Time[1] > 0.0f)

	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	fld	DWORD PTR [ecx+100]
	fcomp	DWORD PTR __real@00000000
	fnstsw	ax
	test	ah, 65					; 00000041H
	jne	SHORT $L9075

; 832  : 			{
; 833  : 				ExpVehFac[Team]->Set_Naval_Currently_Building(true);

	push	1
	call	?Set_Naval_Currently_Building@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Naval_Currently_Building

; 834  : 				Commands->Send_Custom_Event(0,ExpVehFac[Team]->Script,129311,Team,ExpVehFac[Team]->Naval_Build_Time[1]);

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	edx, DWORD PTR [eax+100]
	mov	eax, DWORD PTR [eax+32]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	push	esi
	push	129311					; 0001f91fH
	push	eax
	push	0
	call	DWORD PTR [ecx+140]
	add	esp, 20					; 00000014H
$L9075:

; 835  : 			}
; 836  : 			GameObject *obj = ExpVehFac[Team]->Get_Naval_Creation_Position(preset);

	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	push	ebp
	call	?Get_Naval_Creation_Position@ExpVehFacClass@@AAEPAEI@Z ; ExpVehFacClass::Get_Naval_Creation_Position
	mov	esi, eax

; 837  : 			Vector3 Pos = Commands->Get_Position(obj);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR $T9064[esp+40]
	push	esi
	push	edx
	call	DWORD PTR [eax+64]
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _Pos$6936[esp+48], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _Pos$6936[esp+52], edx
	mov	eax, DWORD PTR [eax+8]

; 838  : 			GameObject *Zone = Find_Closest_Zone(Pos,VEHICLE_CONSTRUCTION);

	lea	ecx, DWORD PTR _Pos$6936[esp+48]
	push	2
	push	ecx
	mov	DWORD PTR _Pos$6936[esp+64], eax
	call	?Find_Closest_Zone@@YAPAEAAUVector3@@I@Z ; Find_Closest_Zone

; 839  : 			Damage_All_Objects_In_Zone(Zone,99999.0f,"None",0);

	push	0
	push	OFFSET FLAT:??_C@_04OHJIHAFH@None?$AA@
	push	1203982208				; 47c34f80H
	push	eax
	call	?Damage_All_Objects_In_Zone@@YAXPAEMPBD0@Z ; Damage_All_Objects_In_Zone

; 840  : 			Commands->Set_Facing(Commands->Create_Object(Get_Definition_Name(preset),Pos),Commands->Get_Facing(obj));

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	lea	edi, DWORD PTR [eax+76]
	lea	ebx, DWORD PTR [eax+100]
	call	DWORD PTR [eax+72]
	fstp	DWORD PTR [esp+32]
	add	esp, 32					; 00000020H
	lea	edx, DWORD PTR _Pos$6936[esp+44]
	push	edx
	push	ebp
	call	?Get_Definition_Name@@YAPBDK@Z		; Get_Definition_Name
	add	esp, 4
	push	eax
	call	DWORD PTR [ebx]
	add	esp, 8
	push	eax
	call	DWORD PTR [edi]
	add	esp, 8
$L9081:
	pop	edi
	pop	esi
	pop	ebp

; 878  : 			return 0;

	xor	eax, eax
	pop	ebx

; 913  : 			}
; 914  : 			return 0;
; 915  : 		}
; 916  : 		return 2;
; 917  : 	}
; 918  : }

	add	esp, 24					; 00000018H
	ret	0
$L6932:
	pop	edi
	pop	esi
	pop	ebp

; 841  : 			return 0;
; 842  : 		}
; 843  : 		return 2;

	mov	eax, 2
	pop	ebx

; 913  : 			}
; 914  : 			return 0;
; 915  : 		}
; 916  : 		return 2;
; 917  : 	}
; 918  : }

	add	esp, 24					; 00000018H
	ret	0
$L6923:

; 844  : 	}
; 845  : 	else if (Temp->VehType == VEHTYPE_FLYING)

	cmp	ecx, 2

; 846  : 	{
; 847  : 		if (Temp->Support)

	mov	cl, BYTE PTR [eax+28]
	jne	$L6941
	test	cl, cl
	je	$L6942

; 848  : 		{
; 849  : 			if (ExpVehFac[Team]->Support_Limit && ExpVehFac[Team]->Support_Amount >= ExpVehFac[Team]->Support_Limit)

	mov	eax, DWORD PTR [edi+52]
	test	eax, eax
	je	SHORT $L6945
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	ecx, DWORD PTR [eax+68]
	cmp	ecx, DWORD PTR [eax+52]
	jae	$L9080
$L6945:

; 859  : 		}
; 860  : 		if (ExpVehFac[Team]->Is_Flying_Building)

	mov	al, BYTE PTR [edi+105]
	test	al, al

; 861  : 		{
; 862  : 			return 3;

	jne	$L9079

; 863  : 		}
; 864  : 		else if (Purchase_Item(purchaser,cost))

	mov	eax, DWORD PTR _cost$[esp+36]
	push	eax
	push	ebx
	call	?Purchase_Item@@YA_NPAEH@Z		; Purchase_Item
	add	esp, 8
	test	al, al
	je	SHORT $L6932

; 865  : 		{
; 866  : 			if (ExpVehFac[Team]->Flying_Build_Time[0] > 0.0f)

	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	fld	DWORD PTR [ecx+88]
	fcomp	DWORD PTR __real@00000000
	fnstsw	ax
	test	ah, 65					; 00000041H
	jne	SHORT $L9073

; 867  : 			{
; 868  : 				Set_Currently_Building(true,Team);

	push	esi
	push	1
	call	DWORD PTR ?Set_Currently_Building@@3P6AX_NH@ZA ; Set_Currently_Building

; 869  : 				Commands->Send_Custom_Event(0,ExpVehFac[Team]->Script,129310,Team,ExpVehFac[Team]->Flying_Build_Time[0]);

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	edx, DWORD PTR [eax+88]
	mov	eax, DWORD PTR [eax+32]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	push	esi
	push	129310					; 0001f91eH
	push	eax
	push	0
	call	DWORD PTR [ecx+140]
	add	esp, 28					; 0000001cH
$L9073:

; 870  : 			}
; 871  : 			if (ExpVehFac[Team]->Flying_Build_Time[1] > 0.0f)

	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	fld	DWORD PTR [ecx+92]
	fcomp	DWORD PTR __real@00000000
	fnstsw	ax
	test	ah, 65					; 00000041H
	jne	SHORT $L9076

; 872  : 			{
; 873  : 				ExpVehFac[Team]->Set_Flying_Currently_Building(true);

	push	1
	call	?Set_Flying_Currently_Building@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Flying_Currently_Building

; 874  : 				Commands->Send_Custom_Event(0,ExpVehFac[Team]->Script,129312,Team,ExpVehFac[Team]->Flying_Build_Time[1]);

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	edx, DWORD PTR [eax+92]
	mov	eax, DWORD PTR [eax+32]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	push	esi
	push	129312					; 0001f920H
	push	eax
	push	0
	call	DWORD PTR [ecx+140]
	add	esp, 20					; 00000014H
$L9076:

; 875  : 			}
; 876  : 			ExpVehFac[Team]->LastFlyVehID = preset;
; 877  : 			Commands->Attach_Script(Commands->Create_Object("Invisible_Object",ExpVehFac[Team]->Get_Flying_Landing_Position()),"Test_Cinematic",Team?"ExpVehFac_1.txt":"ExpVehFac_0.txt");

	test	esi, esi
	mov	edx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	DWORD PTR [edx+108], ebp
	mov	ecx, OFFSET FLAT:??_C@_0BA@IACOJFFL@ExpVehFac_1?4txt?$AA@
	jne	SHORT $L9066
	mov	ecx, OFFSET FLAT:??_C@_0BA@ELHCEGPO@ExpVehFac_0?4txt?$AA@
$L9066:
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	lea	edi, DWORD PTR [eax+120]
	lea	ebx, DWORD PTR [eax+100]
	push	OFFSET FLAT:??_C@_0P@ILJCPIMA@Test_Cinematic?$AA@
	lea	eax, DWORD PTR $T9067[esp+48]
	push	eax
	call	?Get_Flying_Landing_Position@ExpVehFacClass@@AAE?AUVector3@@XZ ; ExpVehFacClass::Get_Flying_Landing_Position
	push	eax
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [ebx]
	add	esp, 8
	push	eax
	call	DWORD PTR [edi]
	add	esp, 12					; 0000000cH
	pop	edi
	pop	esi
	pop	ebp

; 878  : 			return 0;

	xor	eax, eax
	pop	ebx

; 913  : 			}
; 914  : 			return 0;
; 915  : 		}
; 916  : 		return 2;
; 917  : 	}
; 918  : }

	add	esp, 24					; 00000018H
	ret	0
$L6942:

; 850  : 			{
; 851  : 				Send_Message_Player(purchaser,255,255,255,"The limit for Support vehicles has been reached.");
; 852  : 				return 3;
; 853  : 			}
; 854  : 		}
; 855  : 		else if (ExpVehFac[Team]->Flying_Limit && ExpVehFac[Team]->Flying_Amount >= ExpVehFac[Team]->Flying_Limit)

	mov	eax, DWORD PTR [edi+44]
	test	eax, eax
	je	$L6945
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	edx, DWORD PTR [eax+60]
	cmp	edx, DWORD PTR [eax+44]
	jb	$L6945

; 856  : 		{
; 857  : 			Send_Message_Player(purchaser,255,255,255,"The limit for Flying vehicles has been reached.");

	push	OFFSET FLAT:??_C@_0DA@DDGIFENP@The?5limit?5for?5Flying?5vehicles?5ha@

; 858  : 			return 3;

	jmp	$L9078
$L6941:

; 879  : 		}
; 880  : 		return 2;
; 881  : 	}
; 882  : 	else
; 883  : 	{
; 884  : 		if (Temp->Support)

	test	cl, cl
	je	$L6958

; 885  : 		{
; 886  : 			if (ExpVehFac[Team]->Support_Limit && ExpVehFac[Team]->Support_Amount >= ExpVehFac[Team]->Support_Limit)

	mov	eax, DWORD PTR [edi+52]
	test	eax, eax
	je	SHORT $L6961
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	ecx, DWORD PTR [eax+68]
	cmp	ecx, DWORD PTR [eax+52]
	jae	$L9080
$L6961:

; 896  : 		}
; 897  : 		if (ExpVehFac[Team]->Is_Ground_Building)

	mov	al, BYTE PTR [edi+104]
	test	al, al

; 898  : 		{
; 899  : 			return 3;

	jne	$L9079

; 900  : 		}
; 901  : 		else if (Purchase_Item(purchaser,cost))

	mov	eax, DWORD PTR _cost$[esp+36]
	push	eax
	push	ebx
	call	?Purchase_Item@@YA_NPAEH@Z		; Purchase_Item
	add	esp, 8
	test	al, al
	je	$L6932

; 902  : 		{
; 903  : 			Create_Vehicle(Get_Definition_Name(preset),5.0f * Get_Build_Time_Multiplier(base->team),purchaser,base->team);

	mov	ecx, DWORD PTR _base$[esp+36]
	mov	eax, DWORD PTR [ecx+1720]
	push	eax
	push	ebx
	push	eax
	call	DWORD PTR ?Get_Build_Time_Multiplier@@3P6AMH@ZA ; Get_Build_Time_Multiplier
	fmul	DWORD PTR __real@40a00000
	fstp	DWORD PTR [esp]
	push	ebp
	call	?Get_Definition_Name@@YAPBDK@Z		; Get_Definition_Name
	add	esp, 4
	push	eax
	call	?Create_Vehicle@@YAXPBDMPAEH@Z		; Create_Vehicle

; 904  : 			if (ExpVehFac[Team]->Ground_Build_Time[0] > 0.0f)

	mov	edx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	fld	DWORD PTR [edx+80]
	add	esp, 16					; 00000010H
	fcomp	DWORD PTR __real@00000000
	fnstsw	ax
	test	ah, 65					; 00000041H
	jne	SHORT $L9074

; 905  : 			{
; 906  : 				Set_Currently_Building(true,Team);

	push	esi
	push	1
	call	DWORD PTR ?Set_Currently_Building@@3P6AX_NH@ZA ; Set_Currently_Building

; 907  : 				Commands->Send_Custom_Event(0,ExpVehFac[Team]->Script,129310,Team,ExpVehFac[Team]->Ground_Build_Time[0]);

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	ecx, DWORD PTR [eax+80]
	mov	edx, DWORD PTR [eax+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	push	esi
	push	129310					; 0001f91eH
	push	edx
	push	0
	call	DWORD PTR [eax+140]
	add	esp, 28					; 0000001cH
$L9074:

; 908  : 			}
; 909  : 			if (ExpVehFac[Team]->Ground_Build_Time[1] > 0.0f)

	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	fld	DWORD PTR [ecx+84]
	fcomp	DWORD PTR __real@00000000
	fnstsw	ax
	test	ah, 65					; 00000041H
	jne	$L9081

; 910  : 			{
; 911  : 				ExpVehFac[Team]->Set_Ground_Currently_Building(true);

	push	1
	call	?Set_Ground_Currently_Building@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Ground_Currently_Building

; 912  : 				Commands->Send_Custom_Event(0,ExpVehFac[Team]->Script,129313,Team,ExpVehFac[Team]->Ground_Build_Time[1]);

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	ecx, DWORD PTR [eax+84]
	mov	edx, DWORD PTR [eax+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	push	esi
	push	129313					; 0001f921H
	push	edx
	push	0
	call	DWORD PTR [eax+140]
	add	esp, 20					; 00000014H
	pop	edi
	pop	esi
	pop	ebp
	xor	eax, eax
	pop	ebx

; 913  : 			}
; 914  : 			return 0;
; 915  : 		}
; 916  : 		return 2;
; 917  : 	}
; 918  : }

	add	esp, 24					; 00000018H
	ret	0
$L6958:

; 887  : 			{
; 888  : 				Send_Message_Player(purchaser,255,255,255,"The limit for Support vehicles has been reached.");
; 889  : 				return 3;
; 890  : 			}
; 891  : 		}
; 892  : 		else if (ExpVehFac[Team]->Ground_Limit && ExpVehFac[Team]->Ground_Amount >= ExpVehFac[Team]->Ground_Limit)

	mov	eax, DWORD PTR [edi+40]
	test	eax, eax
	je	$L6961
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	edx, DWORD PTR [eax+56]
	cmp	edx, DWORD PTR [eax+40]
	jb	$L6961

; 893  : 		{
; 894  : 			Send_Message_Player(purchaser,255,255,255,"The limit for Ground vehicles has been reached.");

	push	OFFSET FLAT:??_C@_0DA@EHCLJPMO@The?5limit?5for?5Ground?5vehicles?5ha@

; 895  : 			return 3;

	jmp	$L9078
$L6921:
	pop	esi
	pop	ebp

; 801  : 	{
; 802  : 		return 3;

	mov	eax, 3
	pop	ebx

; 913  : 			}
; 914  : 			return 0;
; 915  : 		}
; 916  : 		return 2;
; 917  : 	}
; 918  : }

	add	esp, 24					; 00000018H
	ret	0
?Purchase_Hook@ExpVehFacClass@@SAHPAVBaseControllerClass@@PAEIIPBD@Z ENDP ; ExpVehFacClass::Purchase_Hook
_TEXT	ENDS
PUBLIC	?Object_Hook@ExpVehFacClass@@SAXPAXPAE@Z	; ExpVehFacClass::Object_Hook
PUBLIC	??_C@_0BE@BKNPJNFJ@MDB_ExpVehFac_Limit?$AA@	; `string'
PUBLIC	??_C@_01FAMBOPH@4?$AA@				; `string'
PUBLIC	??_C@_01HIHLOKLC@1?$AA@				; `string'
PUBLIC	??_C@_01FDFGLJHB@2?$AA@				; `string'
PUBLIC	??_C@_01EKENIIDA@3?$AA@				; `string'
EXTRN	?Is_Vehicle@@YA_NPAE@Z:NEAR			; Is_Vehicle
EXTRN	?Is_Script_Attached@@YA_NPAEPBD@Z:NEAR		; Is_Script_Attached
;	COMDAT ??_C@_0BE@BKNPJNFJ@MDB_ExpVehFac_Limit?$AA@
CONST	SEGMENT
??_C@_0BE@BKNPJNFJ@MDB_ExpVehFac_Limit?$AA@ DB 'MDB_ExpVehFac_Limit', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_01FAMBOPH@4?$AA@
CONST	SEGMENT
??_C@_01FAMBOPH@4?$AA@ DB '4', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_01HIHLOKLC@1?$AA@
CONST	SEGMENT
??_C@_01HIHLOKLC@1?$AA@ DB '1', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_01FDFGLJHB@2?$AA@
CONST	SEGMENT
??_C@_01FDFGLJHB@2?$AA@ DB '2', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_01EKENIIDA@3?$AA@
CONST	SEGMENT
??_C@_01EKENIIDA@3?$AA@ DB '3', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Object_Hook@ExpVehFacClass@@SAXPAXPAE@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
_obj$ = 12						; size = 4
?Object_Hook@ExpVehFacClass@@SAXPAXPAE@Z PROC NEAR	; ExpVehFacClass::Object_Hook, COMDAT

; 921  : {

	push	edi

; 922  : 	if (Is_Vehicle(obj))

	mov	edi, DWORD PTR _obj$[esp]
	push	edi
	call	?Is_Vehicle@@YA_NPAE@Z			; Is_Vehicle
	add	esp, 4
	test	al, al
	je	$L6994
	push	esi

; 923  : 	{
; 924  : 		int Team = Get_Object_Type(obj);

	push	edi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	mov	esi, eax
	add	esp, 4

; 925  : 		if (Team == 0 || Team == 1)

	test	esi, esi
	je	SHORT $L6975
	cmp	esi, 1
	jne	$L9085
$L6975:

; 926  : 		{
; 927  : 			if (!Is_Script_Attached(obj,"MDB_ExpVehFac_Limit"))

	push	OFFSET FLAT:??_C@_0BE@BKNPJNFJ@MDB_ExpVehFac_Limit?$AA@
	push	edi
	call	?Is_Script_Attached@@YA_NPAEPBD@Z	; Is_Script_Attached
	add	esp, 8
	test	al, al
	jne	$L9085

; 928  : 			{
; 929  : 				UnitInfo *Temp = ExpVehFac[Team]->Get_Unit_Info(Commands->Get_Preset_ID(obj));

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	mov	ebx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	push	edi
	call	DWORD PTR [eax+112]
	add	esp, 4
	push	eax
	mov	ecx, ebx
	call	?Get_Unit_Info@ExpVehFacClass@@QAEPAUUnitInfo@@I@Z ; ExpVehFacClass::Get_Unit_Info

; 930  : 				if (Temp)

	test	eax, eax
	je	$L9086

; 931  : 				{
; 932  : 					if (ExpVehFac[Team]->Support_Limit && Temp->Support)

	mov	ecx, DWORD PTR [ebx+52]
	test	ecx, ecx
	je	SHORT $L6980
	mov	cl, BYTE PTR [eax+28]
	test	cl, cl
	je	SHORT $L6980

; 933  : 					{
; 934  : 						ExpVehFac[Team]->Support_Amount++;

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	edx, DWORD PTR [eax+68]

; 935  : 						Commands->Attach_Script(obj,"MDB_ExpVehFac_Limit","4");

	push	OFFSET FLAT:??_C@_01FAMBOPH@4?$AA@
	inc	edx
	mov	DWORD PTR [eax+68], edx
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	OFFSET FLAT:??_C@_0BE@BKNPJNFJ@MDB_ExpVehFac_Limit?$AA@
	push	edi
	call	DWORD PTR [ecx+120]

; 936  : 						if (ExpVehFac[Team]->Support_Amount >= ExpVehFac[Team]->Support_Limit)

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	edx, DWORD PTR [eax+68]
	mov	ecx, DWORD PTR [eax+52]
	add	esp, 12					; 0000000cH
	cmp	edx, ecx
	jb	$L9086

; 937  : 						{
; 938  : 							ExpVehFac[Team]->Set_Support_Limit_Reached(true);

	push	1
	mov	ecx, eax
	call	?Set_Support_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Support_Limit_Reached
	pop	ebx
	pop	esi
	pop	edi

; 966  : 						}
; 967  : 					}
; 968  : 				}
; 969  : 			}
; 970  : 		}
; 971  : 	}
; 972  : }

	ret	0
$L6980:

; 939  : 						}
; 940  : 					}
; 941  : 					else if (ExpVehFac[Team]->Ground_Limit && Temp->VehType == VEHTYPE_GROUND)

	mov	ecx, DWORD PTR [ebx+40]
	test	ecx, ecx
	je	SHORT $L6984
	cmp	DWORD PTR [eax+20], 1
	jne	SHORT $L6984

; 942  : 					{
; 943  : 						ExpVehFac[Team]->Ground_Amount++;

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	edx, DWORD PTR [eax+56]

; 944  : 						Commands->Attach_Script(obj,"MDB_ExpVehFac_Limit","1");

	push	OFFSET FLAT:??_C@_01HIHLOKLC@1?$AA@
	inc	edx
	mov	DWORD PTR [eax+56], edx
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	OFFSET FLAT:??_C@_0BE@BKNPJNFJ@MDB_ExpVehFac_Limit?$AA@
	push	edi
	call	DWORD PTR [eax+120]

; 945  : 						if (ExpVehFac[Team]->Ground_Amount >= ExpVehFac[Team]->Ground_Limit)

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	ecx, DWORD PTR [eax+56]
	mov	edx, DWORD PTR [eax+40]
	add	esp, 12					; 0000000cH
	cmp	ecx, edx
	jb	$L9086

; 946  : 						{
; 947  : 							ExpVehFac[Team]->Set_Ground_Limit_Reached(true);

	push	1
	mov	ecx, eax
	call	?Set_Ground_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Ground_Limit_Reached
	pop	ebx
	pop	esi
	pop	edi

; 966  : 						}
; 967  : 					}
; 968  : 				}
; 969  : 			}
; 970  : 		}
; 971  : 	}
; 972  : }

	ret	0
$L6984:

; 948  : 						}
; 949  : 					}
; 950  : 					else if (ExpVehFac[Team]->Flying_Limit && Temp->VehType == VEHTYPE_FLYING)

	mov	ecx, DWORD PTR [ebx+44]
	test	ecx, ecx
	je	SHORT $L6988
	cmp	DWORD PTR [eax+20], 2
	jne	SHORT $L6988

; 951  : 					{
; 952  : 						ExpVehFac[Team]->Flying_Amount++;

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	edx, DWORD PTR [eax+60]
	inc	edx

; 953  : 						Commands->Attach_Script(obj,"MDB_ExpVehFac_Limit","2");

	push	OFFSET FLAT:??_C@_01FDFGLJHB@2?$AA@
	mov	DWORD PTR [eax+60], edx
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	OFFSET FLAT:??_C@_0BE@BKNPJNFJ@MDB_ExpVehFac_Limit?$AA@
	push	edi
	call	DWORD PTR [edx+120]

; 954  : 						if (ExpVehFac[Team]->Flying_Amount >= ExpVehFac[Team]->Flying_Limit)

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	ecx, DWORD PTR [eax+60]
	mov	edx, DWORD PTR [eax+44]
	add	esp, 12					; 0000000cH
	cmp	ecx, edx
	jb	SHORT $L9086

; 955  : 						{
; 956  : 							ExpVehFac[Team]->Set_Flying_Limit_Reached(true);

	push	1
	mov	ecx, eax
	call	?Set_Flying_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Flying_Limit_Reached
	pop	ebx
	pop	esi
	pop	edi

; 966  : 						}
; 967  : 					}
; 968  : 				}
; 969  : 			}
; 970  : 		}
; 971  : 	}
; 972  : }

	ret	0
$L6988:

; 957  : 						}
; 958  : 					}
; 959  : 					else if (ExpVehFac[Team]->Naval_Limit && Temp->VehType == VEHTYPE_NAVAL)

	mov	ecx, DWORD PTR [ebx+48]
	test	ecx, ecx
	je	SHORT $L9086
	cmp	DWORD PTR [eax+20], 3
	jne	SHORT $L9086

; 960  : 					{
; 961  : 						ExpVehFac[Team]->Naval_Amount++;

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	edx, DWORD PTR [eax+64]
	inc	edx

; 962  : 						Commands->Attach_Script(obj,"MDB_ExpVehFac_Limit","3");

	push	OFFSET FLAT:??_C@_01EKENIIDA@3?$AA@
	mov	DWORD PTR [eax+64], edx
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	OFFSET FLAT:??_C@_0BE@BKNPJNFJ@MDB_ExpVehFac_Limit?$AA@
	push	edi
	call	DWORD PTR [edx+120]

; 963  : 						if (ExpVehFac[Team]->Naval_Amount >= ExpVehFac[Team]->Naval_Limit)

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	ecx, DWORD PTR [eax+64]
	mov	edx, DWORD PTR [eax+48]
	add	esp, 12					; 0000000cH
	cmp	ecx, edx
	jb	SHORT $L9086

; 964  : 						{
; 965  : 							ExpVehFac[Team]->Set_Naval_Limit_Reached(true);

	push	1
	mov	ecx, eax
	call	?Set_Naval_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Naval_Limit_Reached
$L9086:
	pop	ebx
$L9085:
	pop	esi
$L6994:
	pop	edi

; 966  : 						}
; 967  : 					}
; 968  : 				}
; 969  : 			}
; 970  : 		}
; 971  : 	}
; 972  : }

	ret	0
?Object_Hook@ExpVehFacClass@@SAXPAXPAE@Z ENDP		; ExpVehFacClass::Object_Hook
_TEXT	ENDS
PUBLIC	?Killed@MDB_ExpVehFac_Helipad@@EAEXPAE0@Z	; MDB_ExpVehFac_Helipad::Killed
PUBLIC	??_C@_0BO@IDCNIDOL@MDB_ExpVehFac_Vehicle_Factory?$AA@ ; `string'
PUBLIC	??_C@_0BG@KKJHDMPD@MDB_ExpVehFac_Helipad?$AA@	; `string'
PUBLIC	??_C@_0BE@GMHHGOOM@MDB_ExpVehFac_Naval?$AA@	; `string'
EXTRN	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z:NEAR ; Find_Building_With_Script
;	COMDAT ??_C@_0BG@KKJHDMPD@MDB_ExpVehFac_Helipad?$AA@
CONST	SEGMENT
??_C@_0BG@KKJHDMPD@MDB_ExpVehFac_Helipad?$AA@ DB 'MDB_ExpVehFac_Helipad', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BO@IDCNIDOL@MDB_ExpVehFac_Vehicle_Factory?$AA@
CONST	SEGMENT
??_C@_0BO@IDCNIDOL@MDB_ExpVehFac_Vehicle_Factory?$AA@ DB 'MDB_ExpVehFac_V'
	DB	'ehicle_Factory', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_0BE@GMHHGOOM@MDB_ExpVehFac_Naval?$AA@
CONST	SEGMENT
??_C@_0BE@GMHHGOOM@MDB_ExpVehFac_Naval?$AA@ DB 'MDB_ExpVehFac_Naval', 00H ; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Killed@MDB_ExpVehFac_Helipad@@EAEXPAE0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_shooter$ = 12						; size = 4
?Killed@MDB_ExpVehFac_Helipad@@EAEXPAE0@Z PROC NEAR	; MDB_ExpVehFac_Helipad::Killed, COMDAT
; _this$ = ecx

; 997  : {

	push	esi
	push	edi

; 998  : 	int Team = Get_Object_Type(obj);

	mov	edi, DWORD PTR _obj$[esp+4]
	push	edi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type

; 999  : 	if (!Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Helipad",obj))

	push	edi
	push	OFFSET FLAT:??_C@_0BG@KKJHDMPD@MDB_ExpVehFac_Helipad?$AA@
	mov	esi, eax
	push	-1
	push	esi
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script
	add	esp, 20					; 00000014H
	test	eax, eax
	jne	SHORT $L7024

; 1000 : 	{
; 1001 : 		GameObject *WF = Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Vehicle_Factory",0);

	push	eax
	push	OFFSET FLAT:??_C@_0BO@IDCNIDOL@MDB_ExpVehFac_Vehicle_Factory?$AA@
	push	-1
	push	esi
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script

; 1002 : 		GameObject *Naval = Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Naval",0);

	push	0
	push	OFFSET FLAT:??_C@_0BE@GMHHGOOM@MDB_ExpVehFac_Naval?$AA@
	push	-1
	push	esi
	mov	edi, eax
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script
	add	esp, 32					; 00000020H

; 1003 : 		if (!WF && !Naval)

	test	edi, edi
	jne	SHORT $L7023
	test	eax, eax
	jne	SHORT $L7023

; 1004 : 		{
; 1005 : 			Set_Can_Generate_Vehicles(Team,false);

	push	eax
	push	esi
	call	?Set_Can_Generate_Vehicles@@YAXH_N@Z	; Set_Can_Generate_Vehicles
	add	esp, 8
	pop	edi
	pop	esi

; 1010 : 		}
; 1011 : 	}
; 1012 : }

	ret	8
$L7023:

; 1006 : 		}
; 1007 : 		else
; 1008 : 		{
; 1009 : 			ExpVehFac[Team]->Disable_Flying();

	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	call	?Disable_Flying@ExpVehFacClass@@QAEXXZ	; ExpVehFacClass::Disable_Flying
$L7024:
	pop	edi
	pop	esi

; 1010 : 		}
; 1011 : 	}
; 1012 : }

	ret	8
?Killed@MDB_ExpVehFac_Helipad@@EAEXPAE0@Z ENDP		; MDB_ExpVehFac_Helipad::Killed
_TEXT	ENDS
PUBLIC	?Custom@MDB_ExpVehFac_Helipad@@EAEXPAEHH0@Z	; MDB_ExpVehFac_Helipad::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@MDB_ExpVehFac_Helipad@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@MDB_ExpVehFac_Helipad@@EAEXPAEHH0@Z PROC NEAR	; MDB_ExpVehFac_Helipad::Custom, COMDAT
; _this$ = ecx

; 1016 : 	if (message == 129310)

	mov	eax, DWORD PTR _message$[esp-4]
	cmp	eax, 129310				; 0001f91eH
	jne	SHORT $L7032

; 1017 : 	{
; 1018 : 		Set_Currently_Building(false,param);

	mov	eax, DWORD PTR _param$[esp-4]
	push	eax
	push	0
	call	DWORD PTR ?Set_Currently_Building@@3P6AX_NH@ZA ; Set_Currently_Building
	add	esp, 8

; 1031 : 	}
; 1032 : }

	ret	16					; 00000010H
$L7032:

; 1019 : 	}
; 1020 : 	else if (message == 129311)

	cmp	eax, 129311				; 0001f91fH
	jne	SHORT $L7034

; 1021 : 	{
; 1022 : 		ExpVehFac[Get_Object_Type(obj)]->Set_Naval_Currently_Building(false);

	mov	ecx, DWORD PTR _obj$[esp-4]
	push	0
	push	ecx
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[eax*4]
	add	esp, 4
	call	?Set_Naval_Currently_Building@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Naval_Currently_Building

; 1031 : 	}
; 1032 : }

	ret	16					; 00000010H
$L7034:

; 1023 : 	}
; 1024 : 	else if (message == 129312)

	cmp	eax, 129312				; 0001f920H
	jne	SHORT $L7036

; 1025 : 	{
; 1026 : 		ExpVehFac[Get_Object_Type(obj)]->Set_Flying_Currently_Building(false);

	mov	edx, DWORD PTR _obj$[esp-4]
	push	0
	push	edx
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[eax*4]
	add	esp, 4
	call	?Set_Flying_Currently_Building@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Flying_Currently_Building

; 1031 : 	}
; 1032 : }

	ret	16					; 00000010H
$L7036:

; 1027 : 	}
; 1028 : 	else if (message == 129313)

	cmp	eax, 129313				; 0001f921H
	jne	SHORT $L7038

; 1029 : 	{
; 1030 : 		ExpVehFac[Get_Object_Type(obj)]->Set_Ground_Currently_Building(false);

	mov	eax, DWORD PTR _obj$[esp-4]
	push	0
	push	eax
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[eax*4]
	add	esp, 4
	call	?Set_Ground_Currently_Building@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Ground_Currently_Building
$L7038:

; 1031 : 	}
; 1032 : }

	ret	16					; 00000010H
?Custom@MDB_ExpVehFac_Helipad@@EAEXPAEHH0@Z ENDP	; MDB_ExpVehFac_Helipad::Custom
_TEXT	ENDS
PUBLIC	?Destroyed@MDB_ExpVehFac_Helipad@@EAEXPAE@Z	; MDB_ExpVehFac_Helipad::Destroyed
; Function compile flags: /Ogty
;	COMDAT ?Destroyed@MDB_ExpVehFac_Helipad@@EAEXPAE@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
?Destroyed@MDB_ExpVehFac_Helipad@@EAEXPAE@Z PROC NEAR	; MDB_ExpVehFac_Helipad::Destroyed, COMDAT
; _this$ = ecx

; 1036 : 	int Team = Get_Object_Type(obj);

	mov	eax, DWORD PTR _obj$[esp-4]
	push	eax
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type

; 1037 : 	if (ExpVehFac[Team]->Loaded)

	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[eax*4]
	mov	al, BYTE PTR [ecx+107]
	add	esp, 4
	test	al, al
	je	SHORT $L7044

; 1038 : 	{
; 1039 : 		ExpVehFac[Team]->Clear();

	call	?Clear@ExpVehFacClass@@QAEXXZ		; ExpVehFacClass::Clear
$L7044:

; 1040 : 	}
; 1041 : }

	ret	4
?Destroyed@MDB_ExpVehFac_Helipad@@EAEXPAE@Z ENDP	; MDB_ExpVehFac_Helipad::Destroyed
_TEXT	ENDS
PUBLIC	?Killed@MDB_ExpVehFac_Naval@@EAEXPAE0@Z		; MDB_ExpVehFac_Naval::Killed
; Function compile flags: /Ogty
;	COMDAT ?Killed@MDB_ExpVehFac_Naval@@EAEXPAE0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_shooter$ = 12						; size = 4
?Killed@MDB_ExpVehFac_Naval@@EAEXPAE0@Z PROC NEAR	; MDB_ExpVehFac_Naval::Killed, COMDAT
; _this$ = ecx

; 1070 : {

	push	esi
	push	edi

; 1071 : 	int Team = Get_Object_Type(obj);

	mov	edi, DWORD PTR _obj$[esp+4]
	push	edi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type

; 1072 : 	if (!Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Naval",obj))

	push	edi
	push	OFFSET FLAT:??_C@_0BE@GMHHGOOM@MDB_ExpVehFac_Naval?$AA@
	mov	esi, eax
	push	-1
	push	esi
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script
	add	esp, 20					; 00000014H
	test	eax, eax
	jne	SHORT $L7072

; 1073 : 	{
; 1074 : 		GameObject *WF = Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Vehicle_Factory",0);

	push	eax
	push	OFFSET FLAT:??_C@_0BO@IDCNIDOL@MDB_ExpVehFac_Vehicle_Factory?$AA@
	push	-1
	push	esi
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script

; 1075 : 		GameObject *Heli = Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Helipad",0);

	push	0
	push	OFFSET FLAT:??_C@_0BG@KKJHDMPD@MDB_ExpVehFac_Helipad?$AA@
	push	-1
	push	esi
	mov	edi, eax
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script
	add	esp, 32					; 00000020H

; 1076 : 		if (!WF && !Heli)

	test	edi, edi
	jne	SHORT $L7071
	test	eax, eax
	jne	SHORT $L7071

; 1077 : 		{
; 1078 : 			Set_Can_Generate_Vehicles(Team,false);

	push	eax
	push	esi
	call	?Set_Can_Generate_Vehicles@@YAXH_N@Z	; Set_Can_Generate_Vehicles
	add	esp, 8
	pop	edi
	pop	esi

; 1083 : 		}
; 1084 : 	}
; 1085 : }

	ret	8
$L7071:

; 1079 : 		}
; 1080 : 		else
; 1081 : 		{
; 1082 : 			ExpVehFac[Team]->Disable_Naval();

	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	call	?Disable_Naval@ExpVehFacClass@@QAEXXZ	; ExpVehFacClass::Disable_Naval
$L7072:
	pop	edi
	pop	esi

; 1083 : 		}
; 1084 : 	}
; 1085 : }

	ret	8
?Killed@MDB_ExpVehFac_Naval@@EAEXPAE0@Z ENDP		; MDB_ExpVehFac_Naval::Killed
_TEXT	ENDS
PUBLIC	?Custom@MDB_ExpVehFac_Naval@@EAEXPAEHH0@Z	; MDB_ExpVehFac_Naval::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@MDB_ExpVehFac_Naval@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@MDB_ExpVehFac_Naval@@EAEXPAEHH0@Z PROC NEAR	; MDB_ExpVehFac_Naval::Custom, COMDAT
; _this$ = ecx

; 1089 : 	if (message == 129310)

	mov	eax, DWORD PTR _message$[esp-4]
	cmp	eax, 129310				; 0001f91eH
	jne	SHORT $L7080

; 1090 : 	{
; 1091 : 		Set_Currently_Building(false,param);

	mov	eax, DWORD PTR _param$[esp-4]
	push	eax
	push	0
	call	DWORD PTR ?Set_Currently_Building@@3P6AX_NH@ZA ; Set_Currently_Building
	add	esp, 8

; 1104 : 	}
; 1105 : }

	ret	16					; 00000010H
$L7080:

; 1092 : 	}
; 1093 : 	else if (message == 129311)

	cmp	eax, 129311				; 0001f91fH
	jne	SHORT $L7082

; 1094 : 	{
; 1095 : 		ExpVehFac[Get_Object_Type(obj)]->Set_Naval_Currently_Building(false);

	mov	ecx, DWORD PTR _obj$[esp-4]
	push	0
	push	ecx
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[eax*4]
	add	esp, 4
	call	?Set_Naval_Currently_Building@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Naval_Currently_Building

; 1104 : 	}
; 1105 : }

	ret	16					; 00000010H
$L7082:

; 1096 : 	}
; 1097 : 	else if (message == 129312)

	cmp	eax, 129312				; 0001f920H
	jne	SHORT $L7084

; 1098 : 	{
; 1099 : 		ExpVehFac[Get_Object_Type(obj)]->Set_Flying_Currently_Building(false);

	mov	edx, DWORD PTR _obj$[esp-4]
	push	0
	push	edx
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[eax*4]
	add	esp, 4
	call	?Set_Flying_Currently_Building@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Flying_Currently_Building

; 1104 : 	}
; 1105 : }

	ret	16					; 00000010H
$L7084:

; 1100 : 	}
; 1101 : 	else if (message == 129313)

	cmp	eax, 129313				; 0001f921H
	jne	SHORT $L7086

; 1102 : 	{
; 1103 : 		ExpVehFac[Get_Object_Type(obj)]->Set_Ground_Currently_Building(false);

	mov	eax, DWORD PTR _obj$[esp-4]
	push	0
	push	eax
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[eax*4]
	add	esp, 4
	call	?Set_Ground_Currently_Building@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Ground_Currently_Building
$L7086:

; 1104 : 	}
; 1105 : }

	ret	16					; 00000010H
?Custom@MDB_ExpVehFac_Naval@@EAEXPAEHH0@Z ENDP		; MDB_ExpVehFac_Naval::Custom
_TEXT	ENDS
PUBLIC	?Destroyed@MDB_ExpVehFac_Naval@@EAEXPAE@Z	; MDB_ExpVehFac_Naval::Destroyed
; Function compile flags: /Ogty
;	COMDAT ?Destroyed@MDB_ExpVehFac_Naval@@EAEXPAE@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
?Destroyed@MDB_ExpVehFac_Naval@@EAEXPAE@Z PROC NEAR	; MDB_ExpVehFac_Naval::Destroyed, COMDAT
; _this$ = ecx

; 1109 : 	int Team = Get_Object_Type(obj);

	mov	eax, DWORD PTR _obj$[esp-4]
	push	eax
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type

; 1110 : 	if (ExpVehFac[Team]->Loaded)

	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[eax*4]
	mov	al, BYTE PTR [ecx+107]
	add	esp, 4
	test	al, al
	je	SHORT $L7092

; 1111 : 	{
; 1112 : 		ExpVehFac[Team]->Clear();

	call	?Clear@ExpVehFacClass@@QAEXXZ		; ExpVehFacClass::Clear
$L7092:

; 1113 : 	}
; 1114 : }

	ret	4
?Destroyed@MDB_ExpVehFac_Naval@@EAEXPAE@Z ENDP		; MDB_ExpVehFac_Naval::Destroyed
_TEXT	ENDS
PUBLIC	?Killed@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE0@Z ; MDB_ExpVehFac_Vehicle_Factory::Killed
; Function compile flags: /Ogty
;	COMDAT ?Killed@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE0@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_obj$ = 8						; size = 4
_shooter$ = 12						; size = 4
?Killed@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE0@Z PROC NEAR ; MDB_ExpVehFac_Vehicle_Factory::Killed, COMDAT
; _this$ = ecx

; 1135 : {

	push	ecx
	push	ebx
	push	ebp
	push	esi
	push	edi

; 1136 : 	int Team = Get_Object_Type(obj);

	mov	edi, DWORD PTR _obj$[esp+16]
	push	edi
	mov	DWORD PTR _this$[esp+24], ecx
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type

; 1137 : 	GameObject *WF = Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Vehicle_Factory",obj);

	push	edi
	push	OFFSET FLAT:??_C@_0BO@IDCNIDOL@MDB_ExpVehFac_Vehicle_Factory?$AA@
	mov	esi, eax
	push	-1
	push	esi
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script

; 1138 : 	GameObject *Naval = Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Naval",0);

	push	0
	push	OFFSET FLAT:??_C@_0BE@GMHHGOOM@MDB_ExpVehFac_Naval?$AA@
	push	-1
	push	esi
	mov	ebp, eax
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script

; 1139 : 	GameObject *Heli = Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Helipad",0);

	push	0
	push	OFFSET FLAT:??_C@_0BG@KKJHDMPD@MDB_ExpVehFac_Helipad?$AA@
	push	-1
	push	esi
	mov	ebx, eax
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script
	add	esp, 52					; 00000034H

; 1140 : 	if (Naval || Heli)

	test	ebx, ebx
	jne	SHORT $L7115
	test	eax, eax
	jne	SHORT $L7115

; 1146 : 		}
; 1147 : 	}
; 1148 : 	else if (!WF)

	test	ebp, ebp
	jne	SHORT $L7116

; 1149 : 	{
; 1150 : 		Set_Can_Generate_Vehicles(Team,false);

	push	ebp
	push	esi
	call	?Set_Can_Generate_Vehicles@@YAXH_N@Z	; Set_Can_Generate_Vehicles
	add	esp, 8
	pop	edi
	pop	esi
	pop	ebp
	pop	ebx

; 1151 : 	}
; 1152 : }

	pop	ecx
	ret	8
$L7115:

; 1141 : 	{
; 1142 : 		Commands->Start_Timer(obj,this,0.5f,1);

	mov	eax, DWORD PTR _this$[esp+20]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1056964608				; 3f000000H
	push	eax
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H

; 1143 : 		if (!WF)

	test	ebp, ebp
	jne	SHORT $L7116

; 1144 : 		{
; 1145 : 			ExpVehFac[Team]->Disable_Ground();

	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	call	?Disable_Ground@ExpVehFacClass@@QAEXXZ	; ExpVehFacClass::Disable_Ground
$L7116:
	pop	edi
	pop	esi
	pop	ebp
	pop	ebx

; 1151 : 	}
; 1152 : }

	pop	ecx
	ret	8
?Killed@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE0@Z ENDP	; MDB_ExpVehFac_Vehicle_Factory::Killed
_TEXT	ENDS
PUBLIC	?Destroyed@MDB_ExpVehFac_Limit@@EAEXPAE@Z	; MDB_ExpVehFac_Limit::Destroyed
PUBLIC	??_C@_04KOACHJEN@Type?$AA@			; `string'
;	COMDAT ??_C@_04KOACHJEN@Type?$AA@
CONST	SEGMENT
??_C@_04KOACHJEN@Type?$AA@ DB 'Type', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Destroyed@MDB_ExpVehFac_Limit@@EAEXPAE@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
?Destroyed@MDB_ExpVehFac_Limit@@EAEXPAE@Z PROC NEAR	; MDB_ExpVehFac_Limit::Destroyed, COMDAT
; _this$ = ecx

; 1196 : {

	push	esi

; 1197 : 	int Type = Get_Int_Parameter("Type");

	push	OFFSET FLAT:??_C@_04KOACHJEN@Type?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter

; 1198 : 	if (Type == VEHTYPE_GROUND)

	cmp	eax, 1
	jne	SHORT $L7158

; 1199 : 	{
; 1200 : 		ExpVehFac[Team]->Ground_Amount--;

	mov	eax, DWORD PTR [esi+28]
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[eax*4]
	dec	DWORD PTR [eax+56]

; 1201 : 		if (ExpVehFac[Team]->Ground_Amount == ExpVehFac[Team]->Ground_Limit-1)

	mov	ecx, DWORD PTR [esi+28]
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[ecx*4]
	mov	edx, DWORD PTR [eax+40]
	mov	ecx, DWORD PTR [eax+56]
	dec	edx
	cmp	ecx, edx
	jne	$L7168

; 1202 : 		{
; 1203 : 			ExpVehFac[Team]->Set_Ground_Limit_Reached(false);

	mov	eax, DWORD PTR [esi+28]
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[eax*4]
	push	0
	call	?Set_Ground_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Ground_Limit_Reached
	pop	esi

; 1228 : 		}
; 1229 : 	}
; 1230 : }

	ret	4
$L7158:

; 1204 : 		}
; 1205 : 	}
; 1206 : 	else if (Type == VEHTYPE_FLYING)

	cmp	eax, 2
	jne	SHORT $L7161

; 1207 : 	{
; 1208 : 		ExpVehFac[Team]->Flying_Amount--;

	mov	ecx, DWORD PTR [esi+28]
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[ecx*4]
	dec	DWORD PTR [eax+60]

; 1209 : 		if (ExpVehFac[Team]->Flying_Amount == ExpVehFac[Team]->Flying_Limit-1)

	mov	edx, DWORD PTR [esi+28]
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edx*4]
	mov	ecx, DWORD PTR [eax+44]
	mov	edx, DWORD PTR [eax+60]
	dec	ecx
	cmp	edx, ecx
	jne	$L7168

; 1210 : 		{
; 1211 : 			ExpVehFac[Team]->Set_Flying_Limit_Reached(false);

	mov	edx, DWORD PTR [esi+28]
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edx*4]
	push	0
	call	?Set_Flying_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Flying_Limit_Reached
	pop	esi

; 1228 : 		}
; 1229 : 	}
; 1230 : }

	ret	4
$L7161:

; 1212 : 		}
; 1213 : 	}
; 1214 : 	else if (Type == VEHTYPE_NAVAL)

	cmp	eax, 3
	jne	SHORT $L7164

; 1215 : 	{
; 1216 : 		ExpVehFac[Team]->Naval_Amount--;

	mov	eax, DWORD PTR [esi+28]
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[eax*4]
	dec	DWORD PTR [eax+64]

; 1217 : 		if (ExpVehFac[Team]->Naval_Amount == ExpVehFac[Team]->Naval_Limit-1)

	mov	ecx, DWORD PTR [esi+28]
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[ecx*4]
	mov	edx, DWORD PTR [eax+48]
	mov	ecx, DWORD PTR [eax+64]
	dec	edx
	cmp	ecx, edx
	jne	SHORT $L7168

; 1218 : 		{
; 1219 : 			ExpVehFac[Team]->Set_Naval_Limit_Reached(false);

	mov	eax, DWORD PTR [esi+28]
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[eax*4]
	push	0
	call	?Set_Naval_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Naval_Limit_Reached
	pop	esi

; 1228 : 		}
; 1229 : 	}
; 1230 : }

	ret	4
$L7164:

; 1220 : 		}
; 1221 : 	}
; 1222 : 	else if (Type == VEHTYPE_SUPPORT)

	cmp	eax, 4
	jne	SHORT $L7168

; 1223 : 	{
; 1224 : 		ExpVehFac[Team]->Support_Amount--;

	mov	ecx, DWORD PTR [esi+28]
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[ecx*4]
	dec	DWORD PTR [eax+68]

; 1225 : 		if (ExpVehFac[Team]->Support_Amount == ExpVehFac[Team]->Support_Limit-1)

	mov	edx, DWORD PTR [esi+28]
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edx*4]
	mov	ecx, DWORD PTR [eax+52]
	mov	edx, DWORD PTR [eax+68]
	dec	ecx
	cmp	edx, ecx
	jne	SHORT $L7168

; 1226 : 		{
; 1227 : 			ExpVehFac[Team]->Set_Support_Limit_Reached(false);

	mov	edx, DWORD PTR [esi+28]
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edx*4]
	push	0
	call	?Set_Support_Limit_Reached@ExpVehFacClass@@QAEX_N@Z ; ExpVehFacClass::Set_Support_Limit_Reached
$L7168:
	pop	esi

; 1228 : 		}
; 1229 : 	}
; 1230 : }

	ret	4
?Destroyed@MDB_ExpVehFac_Limit@@EAEXPAE@Z ENDP		; MDB_ExpVehFac_Limit::Destroyed
_TEXT	ENDS
PUBLIC	??0?$SimpleDynVecClass@PAUUnitInfo@@@@QAE@H@Z	; SimpleDynVecClass<UnitInfo *>::SimpleDynVecClass<UnitInfo *>
PUBLIC	?Resize@?$SimpleDynVecClass@PAUUnitInfo@@@@UAE_NH@Z ; SimpleDynVecClass<UnitInfo *>::Resize
PUBLIC	??_7?$SimpleDynVecClass@PAUUnitInfo@@@@6B@	; SimpleDynVecClass<UnitInfo *>::`vftable'
PUBLIC	??_G?$SimpleDynVecClass@PAUUnitInfo@@@@UAEPAXI@Z ; SimpleDynVecClass<UnitInfo *>::`scalar deleting destructor'
EXTRN	??_E?$SimpleDynVecClass@PAUUnitInfo@@@@UAEPAXI@Z:NEAR ; SimpleDynVecClass<UnitInfo *>::`vector deleting destructor'
;	COMDAT ??_7?$SimpleDynVecClass@PAUUnitInfo@@@@6B@
; File c:\documents and settings\owner\desktop\ssctf 1.3\engine.h
CONST	SEGMENT
??_7?$SimpleDynVecClass@PAUUnitInfo@@@@6B@ DD FLAT:?Uninitialised_Grow@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z ; SimpleDynVecClass<UnitInfo *>::`vftable'
	DD	FLAT:??_E?$SimpleDynVecClass@PAUUnitInfo@@@@UAEPAXI@Z
	DD	FLAT:?Resize@?$SimpleDynVecClass@PAUUnitInfo@@@@UAE_NH@Z
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$SimpleDynVecClass@PAUUnitInfo@@@@QAE@H@Z
_TEXT	SEGMENT
_size$ = 8						; size = 4
??0?$SimpleDynVecClass@PAUUnitInfo@@@@QAE@H@Z PROC NEAR	; SimpleDynVecClass<UnitInfo *>::SimpleDynVecClass<UnitInfo *>, COMDAT
; _this$ = ecx

; 235  : 	{

	mov	eax, DWORD PTR _size$[esp-4]
	test	eax, eax
	push	esi
	mov	esi, ecx
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAUUnitInfo@@@@6B@
	mov	DWORD PTR [esi+4], 0
	mov	DWORD PTR [esi+8], 0
	jbe	SHORT $L9117
	push	eax
	call	?Resize@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z ; SimpleVecClass<UnitInfo *>::Resize
$L9117:
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleDynVecClass@PAUUnitInfo@@@@6B@

; 236  : 		ActiveCount = 0;

	mov	DWORD PTR [esi+12], 0

; 237  : 	}

	mov	eax, esi
	pop	esi
	ret	4
??0?$SimpleDynVecClass@PAUUnitInfo@@@@QAE@H@Z ENDP	; SimpleDynVecClass<UnitInfo *>::SimpleDynVecClass<UnitInfo *>
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleDynVecClass@PAUUnitInfo@@@@UAE_NH@Z
_TEXT	SEGMENT
_newsize$ = 8						; size = 4
?Resize@?$SimpleDynVecClass@PAUUnitInfo@@@@UAE_NH@Z PROC NEAR ; SimpleDynVecClass<UnitInfo *>::Resize, COMDAT
; _this$ = ecx

; 256  : 		if (SimpleVecClass<T>::Resize(newsize))

	mov	eax, DWORD PTR _newsize$[esp-4]
	push	esi
	push	eax
	mov	esi, ecx
	call	?Resize@?$SimpleVecClass@PAUUnitInfo@@@@UAE_NH@Z ; SimpleVecClass<UnitInfo *>::Resize
	test	al, al
	je	SHORT $L7417

; 257  : 		{
; 258  : 			if (VectorMax < ActiveCount)

	mov	eax, DWORD PTR [esi+8]
	cmp	eax, DWORD PTR [esi+12]
	jge	SHORT $L7418

; 259  : 			{
; 260  : 				ActiveCount = VectorMax;

	mov	DWORD PTR [esi+12], eax
$L7418:

; 261  : 			}
; 262  : 			return true;

	mov	al, 1
	pop	esi

; 265  : 	}

	ret	4
$L7417:

; 263  : 		}
; 264  : 		return false;

	xor	al, al
	pop	esi

; 265  : 	}

	ret	4
?Resize@?$SimpleDynVecClass@PAUUnitInfo@@@@UAE_NH@Z ENDP ; SimpleDynVecClass<UnitInfo *>::Resize
_TEXT	ENDS
PUBLIC	??0?$SimpleDynVecClass@PAUCreationPos@@@@QAE@H@Z ; SimpleDynVecClass<CreationPos *>::SimpleDynVecClass<CreationPos *>
PUBLIC	?Resize@?$SimpleDynVecClass@PAUCreationPos@@@@UAE_NH@Z ; SimpleDynVecClass<CreationPos *>::Resize
PUBLIC	??_7?$SimpleDynVecClass@PAUCreationPos@@@@6B@	; SimpleDynVecClass<CreationPos *>::`vftable'
PUBLIC	??_G?$SimpleDynVecClass@PAUCreationPos@@@@UAEPAXI@Z ; SimpleDynVecClass<CreationPos *>::`scalar deleting destructor'
EXTRN	??_E?$SimpleDynVecClass@PAUCreationPos@@@@UAEPAXI@Z:NEAR ; SimpleDynVecClass<CreationPos *>::`vector deleting destructor'
;	COMDAT ??_7?$SimpleDynVecClass@PAUCreationPos@@@@6B@
CONST	SEGMENT
??_7?$SimpleDynVecClass@PAUCreationPos@@@@6B@ DD FLAT:?Uninitialised_Grow@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z ; SimpleDynVecClass<CreationPos *>::`vftable'
	DD	FLAT:??_E?$SimpleDynVecClass@PAUCreationPos@@@@UAEPAXI@Z
	DD	FLAT:?Resize@?$SimpleDynVecClass@PAUCreationPos@@@@UAE_NH@Z
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$SimpleDynVecClass@PAUCreationPos@@@@QAE@H@Z
_TEXT	SEGMENT
_size$ = 8						; size = 4
??0?$SimpleDynVecClass@PAUCreationPos@@@@QAE@H@Z PROC NEAR ; SimpleDynVecClass<CreationPos *>::SimpleDynVecClass<CreationPos *>, COMDAT
; _this$ = ecx

; 235  : 	{

	mov	eax, DWORD PTR _size$[esp-4]
	test	eax, eax
	push	esi
	mov	esi, ecx
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAUCreationPos@@@@6B@
	mov	DWORD PTR [esi+4], 0
	mov	DWORD PTR [esi+8], 0
	jbe	SHORT $L9128
	push	eax
	call	?Resize@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z ; SimpleVecClass<CreationPos *>::Resize
$L9128:
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleDynVecClass@PAUCreationPos@@@@6B@

; 236  : 		ActiveCount = 0;

	mov	DWORD PTR [esi+12], 0

; 237  : 	}

	mov	eax, esi
	pop	esi
	ret	4
??0?$SimpleDynVecClass@PAUCreationPos@@@@QAE@H@Z ENDP	; SimpleDynVecClass<CreationPos *>::SimpleDynVecClass<CreationPos *>
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ?Resize@?$SimpleDynVecClass@PAUCreationPos@@@@UAE_NH@Z
_TEXT	SEGMENT
_newsize$ = 8						; size = 4
?Resize@?$SimpleDynVecClass@PAUCreationPos@@@@UAE_NH@Z PROC NEAR ; SimpleDynVecClass<CreationPos *>::Resize, COMDAT
; _this$ = ecx

; 256  : 		if (SimpleVecClass<T>::Resize(newsize))

	mov	eax, DWORD PTR _newsize$[esp-4]
	push	esi
	push	eax
	mov	esi, ecx
	call	?Resize@?$SimpleVecClass@PAUCreationPos@@@@UAE_NH@Z ; SimpleVecClass<CreationPos *>::Resize
	test	al, al
	je	SHORT $L7464

; 257  : 		{
; 258  : 			if (VectorMax < ActiveCount)

	mov	eax, DWORD PTR [esi+8]
	cmp	eax, DWORD PTR [esi+12]
	jge	SHORT $L7465

; 259  : 			{
; 260  : 				ActiveCount = VectorMax;

	mov	DWORD PTR [esi+12], eax
$L7465:

; 261  : 			}
; 262  : 			return true;

	mov	al, 1
	pop	esi

; 265  : 	}

	ret	4
$L7464:

; 263  : 		}
; 264  : 		return false;

	xor	al, al
	pop	esi

; 265  : 	}

	ret	4
?Resize@?$SimpleDynVecClass@PAUCreationPos@@@@UAE_NH@Z ENDP ; SimpleDynVecClass<CreationPos *>::Resize
_TEXT	ENDS
PUBLIC	??0?$SimpleDynVecClass@PAE@@QAE@H@Z		; SimpleDynVecClass<unsigned char *>::SimpleDynVecClass<unsigned char *>
PUBLIC	?Resize@?$SimpleDynVecClass@PAE@@UAE_NH@Z	; SimpleDynVecClass<unsigned char *>::Resize
PUBLIC	??_7?$SimpleDynVecClass@PAE@@6B@		; SimpleDynVecClass<unsigned char *>::`vftable'
PUBLIC	??_G?$SimpleDynVecClass@PAE@@UAEPAXI@Z		; SimpleDynVecClass<unsigned char *>::`scalar deleting destructor'
EXTRN	??_E?$SimpleDynVecClass@PAE@@UAEPAXI@Z:NEAR	; SimpleDynVecClass<unsigned char *>::`vector deleting destructor'
;	COMDAT ??_7?$SimpleDynVecClass@PAE@@6B@
CONST	SEGMENT
??_7?$SimpleDynVecClass@PAE@@6B@ DD FLAT:?Uninitialised_Grow@?$SimpleVecClass@PAE@@UAE_NH@Z ; SimpleDynVecClass<unsigned char *>::`vftable'
	DD	FLAT:??_E?$SimpleDynVecClass@PAE@@UAEPAXI@Z
	DD	FLAT:?Resize@?$SimpleDynVecClass@PAE@@UAE_NH@Z
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$SimpleDynVecClass@PAE@@QAE@H@Z
_TEXT	SEGMENT
_size$ = 8						; size = 4
??0?$SimpleDynVecClass@PAE@@QAE@H@Z PROC NEAR		; SimpleDynVecClass<unsigned char *>::SimpleDynVecClass<unsigned char *>, COMDAT
; _this$ = ecx

; 235  : 	{

	mov	eax, DWORD PTR _size$[esp-4]
	test	eax, eax
	push	esi
	mov	esi, ecx
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAE@@6B@
	mov	DWORD PTR [esi+4], 0
	mov	DWORD PTR [esi+8], 0
	jbe	SHORT $L9139
	push	eax
	call	?Resize@?$SimpleVecClass@PAE@@UAE_NH@Z	; SimpleVecClass<unsigned char *>::Resize
$L9139:
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleDynVecClass@PAE@@6B@

; 236  : 		ActiveCount = 0;

	mov	DWORD PTR [esi+12], 0

; 237  : 	}

	mov	eax, esi
	pop	esi
	ret	4
??0?$SimpleDynVecClass@PAE@@QAE@H@Z ENDP		; SimpleDynVecClass<unsigned char *>::SimpleDynVecClass<unsigned char *>
_TEXT	ENDS
PUBLIC	??1?$SimpleDynVecClass@PAE@@UAE@XZ		; SimpleDynVecClass<unsigned char *>::~SimpleDynVecClass<unsigned char *>
EXTRN	__except_list:DWORD
EXTRN	___CxxFrameHandler:NEAR
;	COMDAT xdata$x
xdata$x	SEGMENT
$T9158	DD	0ffffffffH
	DD	FLAT:$L9145
$T9155	DD	019930520H
	DD	01H
	DD	FLAT:$T9158
	DD	2 DUP(00H)
	DD	2 DUP(00H)
; Function compile flags: /Ogty
xdata$x	ENDS
;	COMDAT ??1?$SimpleDynVecClass@PAE@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1?$SimpleDynVecClass@PAE@@UAE@XZ PROC NEAR		; SimpleDynVecClass<unsigned char *>::~SimpleDynVecClass<unsigned char *>, COMDAT
; _this$ = ecx

; 247  : 	{

	push	-1
	push	__ehhandler$??1?$SimpleDynVecClass@PAE@@UAE@XZ
	mov	eax, DWORD PTR fs:__except_list
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	push	ecx
	push	esi
	mov	esi, ecx
	push	edi
	mov	DWORD PTR _this$[esp+24], esi
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleDynVecClass@PAE@@6B@

; 248  : 		if (Vector)

	mov	eax, DWORD PTR [esi+4]
	xor	edi, edi
	cmp	eax, edi
	mov	DWORD PTR __$EHRec$[esp+32], edi
	je	SHORT $L7507

; 249  : 		{
; 250  : 			delete Vector;

	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4

; 251  : 			Vector = 0;

	mov	DWORD PTR [esi+4], edi
$L7507:

; 252  : 		}
; 253  : 	}

	mov	eax, DWORD PTR [esi+4]
	cmp	eax, edi
	mov	DWORD PTR __$EHRec$[esp+32], -1
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAE@@6B@
	je	SHORT $L9149
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
	mov	DWORD PTR [esi+4], edi
	mov	DWORD PTR [esi+8], edi
$L9149:
	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	pop	edi
	pop	esi
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9145:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1?$SimpleVecClass@PAE@@UAE@XZ		; SimpleVecClass<unsigned char *>::~SimpleVecClass<unsigned char *>
__ehhandler$??1?$SimpleDynVecClass@PAE@@UAE@XZ:
	mov	eax, OFFSET FLAT:$T9155
	jmp	___CxxFrameHandler
text$x	ENDS
??1?$SimpleDynVecClass@PAE@@UAE@XZ ENDP			; SimpleDynVecClass<unsigned char *>::~SimpleDynVecClass<unsigned char *>
; Function compile flags: /Ogty
;	COMDAT ?Resize@?$SimpleDynVecClass@PAE@@UAE_NH@Z
_TEXT	SEGMENT
_newsize$ = 8						; size = 4
?Resize@?$SimpleDynVecClass@PAE@@UAE_NH@Z PROC NEAR	; SimpleDynVecClass<unsigned char *>::Resize, COMDAT
; _this$ = ecx

; 256  : 		if (SimpleVecClass<T>::Resize(newsize))

	mov	eax, DWORD PTR _newsize$[esp-4]
	push	esi
	push	eax
	mov	esi, ecx
	call	?Resize@?$SimpleVecClass@PAE@@UAE_NH@Z	; SimpleVecClass<unsigned char *>::Resize
	test	al, al
	je	SHORT $L7511

; 257  : 		{
; 258  : 			if (VectorMax < ActiveCount)

	mov	eax, DWORD PTR [esi+8]
	cmp	eax, DWORD PTR [esi+12]
	jge	SHORT $L7512

; 259  : 			{
; 260  : 				ActiveCount = VectorMax;

	mov	DWORD PTR [esi+12], eax
$L7512:

; 261  : 			}
; 262  : 			return true;

	mov	al, 1
	pop	esi

; 265  : 	}

	ret	4
$L7511:

; 263  : 		}
; 264  : 		return false;

	xor	al, al
	pop	esi

; 265  : 	}

	ret	4
?Resize@?$SimpleDynVecClass@PAE@@UAE_NH@Z ENDP		; SimpleDynVecClass<unsigned char *>::Resize
_TEXT	ENDS
PUBLIC	??4?$SimpleDynVecClass@PAE@@QAEAAV0@ABV0@@Z	; SimpleDynVecClass<unsigned char *>::operator=
; Function compile flags: /Ogty
;	COMDAT ??4?$SimpleDynVecClass@PAE@@QAEAAV0@ABV0@@Z
_TEXT	SEGMENT
_cl$ = 8						; size = 4
??4?$SimpleDynVecClass@PAE@@QAEAAV0@ABV0@@Z PROC NEAR	; SimpleDynVecClass<unsigned char *>::operator=, COMDAT
; _this$ = ecx

; 288  : 	{

	push	esi
	push	edi

; 289  : 		SimpleVecClass<T>::operator =(cl);

	mov	edi, DWORD PTR _cl$[esp+4]
	push	edi
	mov	esi, ecx
	call	??4?$SimpleVecClass@PAE@@QAEAAV0@ABV0@@Z ; SimpleVecClass<unsigned char *>::operator=

; 290  : 		ActiveCount = cl.ActiveCount;

	mov	eax, DWORD PTR [edi+12]
	mov	DWORD PTR [esi+12], eax
	pop	edi

; 291  : 		return *this;

	mov	eax, esi
	pop	esi

; 292  : 	}

	ret	4
??4?$SimpleDynVecClass@PAE@@QAEAAV0@ABV0@@Z ENDP	; SimpleDynVecClass<unsigned char *>::operator=
_TEXT	ENDS
PUBLIC	??0?$SimpleDynVecClass@I@@QAE@H@Z		; SimpleDynVecClass<unsigned int>::SimpleDynVecClass<unsigned int>
PUBLIC	?Resize@?$SimpleDynVecClass@I@@UAE_NH@Z		; SimpleDynVecClass<unsigned int>::Resize
PUBLIC	??_7?$SimpleDynVecClass@I@@6B@			; SimpleDynVecClass<unsigned int>::`vftable'
PUBLIC	??_G?$SimpleDynVecClass@I@@UAEPAXI@Z		; SimpleDynVecClass<unsigned int>::`scalar deleting destructor'
EXTRN	??_E?$SimpleDynVecClass@I@@UAEPAXI@Z:NEAR	; SimpleDynVecClass<unsigned int>::`vector deleting destructor'
;	COMDAT ??_7?$SimpleDynVecClass@I@@6B@
CONST	SEGMENT
??_7?$SimpleDynVecClass@I@@6B@ DD FLAT:?Uninitialised_Grow@?$SimpleVecClass@I@@UAE_NH@Z ; SimpleDynVecClass<unsigned int>::`vftable'
	DD	FLAT:??_E?$SimpleDynVecClass@I@@UAEPAXI@Z
	DD	FLAT:?Resize@?$SimpleDynVecClass@I@@UAE_NH@Z
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$SimpleDynVecClass@I@@QAE@H@Z
_TEXT	SEGMENT
_size$ = 8						; size = 4
??0?$SimpleDynVecClass@I@@QAE@H@Z PROC NEAR		; SimpleDynVecClass<unsigned int>::SimpleDynVecClass<unsigned int>, COMDAT
; _this$ = ecx

; 235  : 	{

	mov	eax, DWORD PTR _size$[esp-4]
	test	eax, eax
	push	esi
	mov	esi, ecx
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@I@@6B@
	mov	DWORD PTR [esi+4], 0
	mov	DWORD PTR [esi+8], 0
	jbe	SHORT $L9174
	push	eax
	call	?Resize@?$SimpleVecClass@I@@UAE_NH@Z	; SimpleVecClass<unsigned int>::Resize
$L9174:
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleDynVecClass@I@@6B@

; 236  : 		ActiveCount = 0;

	mov	DWORD PTR [esi+12], 0

; 237  : 	}

	mov	eax, esi
	pop	esi
	ret	4
??0?$SimpleDynVecClass@I@@QAE@H@Z ENDP			; SimpleDynVecClass<unsigned int>::SimpleDynVecClass<unsigned int>
_TEXT	ENDS
PUBLIC	??1?$SimpleDynVecClass@I@@UAE@XZ		; SimpleDynVecClass<unsigned int>::~SimpleDynVecClass<unsigned int>
;	COMDAT xdata$x
xdata$x	SEGMENT
$T9190	DD	0ffffffffH
	DD	FLAT:$L9180
$T9188	DD	019930520H
	DD	01H
	DD	FLAT:$T9190
	DD	2 DUP(00H)
	DD	2 DUP(00H)
; Function compile flags: /Ogty
xdata$x	ENDS
;	COMDAT ??1?$SimpleDynVecClass@I@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1?$SimpleDynVecClass@I@@UAE@XZ PROC NEAR		; SimpleDynVecClass<unsigned int>::~SimpleDynVecClass<unsigned int>, COMDAT
; _this$ = ecx

; 247  : 	{

	push	-1
	push	__ehhandler$??1?$SimpleDynVecClass@I@@UAE@XZ
	mov	eax, DWORD PTR fs:__except_list
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	push	ecx
	push	esi
	mov	esi, ecx
	push	edi
	mov	DWORD PTR _this$[esp+24], esi
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleDynVecClass@I@@6B@

; 248  : 		if (Vector)

	mov	eax, DWORD PTR [esi+4]
	xor	edi, edi
	cmp	eax, edi
	mov	DWORD PTR __$EHRec$[esp+32], edi
	je	SHORT $L7549

; 249  : 		{
; 250  : 			delete Vector;

	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4

; 251  : 			Vector = 0;

	mov	DWORD PTR [esi+4], edi
$L7549:

; 252  : 		}
; 253  : 	}

	mov	eax, DWORD PTR [esi+4]
	cmp	eax, edi
	mov	DWORD PTR __$EHRec$[esp+32], -1
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@I@@6B@
	je	SHORT $L9184
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
	mov	DWORD PTR [esi+4], edi
	mov	DWORD PTR [esi+8], edi
$L9184:
	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	pop	edi
	pop	esi
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9180:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1?$SimpleVecClass@I@@UAE@XZ		; SimpleVecClass<unsigned int>::~SimpleVecClass<unsigned int>
__ehhandler$??1?$SimpleDynVecClass@I@@UAE@XZ:
	mov	eax, OFFSET FLAT:$T9188
	jmp	___CxxFrameHandler
text$x	ENDS
??1?$SimpleDynVecClass@I@@UAE@XZ ENDP			; SimpleDynVecClass<unsigned int>::~SimpleDynVecClass<unsigned int>
; Function compile flags: /Ogty
;	COMDAT ?Resize@?$SimpleDynVecClass@I@@UAE_NH@Z
_TEXT	SEGMENT
_newsize$ = 8						; size = 4
?Resize@?$SimpleDynVecClass@I@@UAE_NH@Z PROC NEAR	; SimpleDynVecClass<unsigned int>::Resize, COMDAT
; _this$ = ecx

; 256  : 		if (SimpleVecClass<T>::Resize(newsize))

	mov	eax, DWORD PTR _newsize$[esp-4]
	push	esi
	push	eax
	mov	esi, ecx
	call	?Resize@?$SimpleVecClass@I@@UAE_NH@Z	; SimpleVecClass<unsigned int>::Resize
	test	al, al
	je	SHORT $L7553

; 257  : 		{
; 258  : 			if (VectorMax < ActiveCount)

	mov	eax, DWORD PTR [esi+8]
	cmp	eax, DWORD PTR [esi+12]
	jge	SHORT $L7554

; 259  : 			{
; 260  : 				ActiveCount = VectorMax;

	mov	DWORD PTR [esi+12], eax
$L7554:

; 261  : 			}
; 262  : 			return true;

	mov	al, 1
	pop	esi

; 265  : 	}

	ret	4
$L7553:

; 263  : 		}
; 264  : 		return false;

	xor	al, al
	pop	esi

; 265  : 	}

	ret	4
?Resize@?$SimpleDynVecClass@I@@UAE_NH@Z ENDP		; SimpleDynVecClass<unsigned int>::Resize
_TEXT	ENDS
PUBLIC	??1?$SimpleDynVecClass@PAUUnitInfo@@@@UAE@XZ	; SimpleDynVecClass<UnitInfo *>::~SimpleDynVecClass<UnitInfo *>
; Function compile flags: /Ogty
;	COMDAT ??_G?$SimpleDynVecClass@PAUUnitInfo@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$SimpleDynVecClass@PAUUnitInfo@@@@UAEPAXI@Z PROC NEAR ; SimpleDynVecClass<UnitInfo *>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$SimpleDynVecClass@PAUUnitInfo@@@@UAE@XZ ; SimpleDynVecClass<UnitInfo *>::~SimpleDynVecClass<UnitInfo *>
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L9199
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L9199:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$SimpleDynVecClass@PAUUnitInfo@@@@UAEPAXI@Z ENDP	; SimpleDynVecClass<UnitInfo *>::`scalar deleting destructor'
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
$T9214	DD	0ffffffffH
	DD	FLAT:$L9204
$T9212	DD	019930520H
	DD	01H
	DD	FLAT:$T9214
	DD	2 DUP(00H)
	DD	2 DUP(00H)
; Function compile flags: /Ogty
xdata$x	ENDS
;	COMDAT ??1?$SimpleDynVecClass@PAUUnitInfo@@@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1?$SimpleDynVecClass@PAUUnitInfo@@@@UAE@XZ PROC NEAR	; SimpleDynVecClass<UnitInfo *>::~SimpleDynVecClass<UnitInfo *>, COMDAT
; _this$ = ecx

; 247  : 	{

	push	-1
	push	__ehhandler$??1?$SimpleDynVecClass@PAUUnitInfo@@@@UAE@XZ
	mov	eax, DWORD PTR fs:__except_list
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	push	ecx
	push	esi
	mov	esi, ecx
	push	edi
	mov	DWORD PTR _this$[esp+24], esi
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleDynVecClass@PAUUnitInfo@@@@6B@

; 248  : 		if (Vector)

	mov	eax, DWORD PTR [esi+4]
	xor	edi, edi
	cmp	eax, edi
	mov	DWORD PTR __$EHRec$[esp+32], edi
	je	SHORT $L7413

; 249  : 		{
; 250  : 			delete Vector;

	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4

; 251  : 			Vector = 0;

	mov	DWORD PTR [esi+4], edi
$L7413:

; 252  : 		}
; 253  : 	}

	mov	eax, DWORD PTR [esi+4]
	cmp	eax, edi
	mov	DWORD PTR __$EHRec$[esp+32], -1
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAUUnitInfo@@@@6B@
	je	SHORT $L9208
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
	mov	DWORD PTR [esi+4], edi
	mov	DWORD PTR [esi+8], edi
$L9208:
	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	pop	edi
	pop	esi
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9204:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1?$SimpleVecClass@PAUUnitInfo@@@@UAE@XZ ; SimpleVecClass<UnitInfo *>::~SimpleVecClass<UnitInfo *>
__ehhandler$??1?$SimpleDynVecClass@PAUUnitInfo@@@@UAE@XZ:
	mov	eax, OFFSET FLAT:$T9212
	jmp	___CxxFrameHandler
text$x	ENDS
??1?$SimpleDynVecClass@PAUUnitInfo@@@@UAE@XZ ENDP	; SimpleDynVecClass<UnitInfo *>::~SimpleDynVecClass<UnitInfo *>
PUBLIC	??1?$SimpleDynVecClass@PAUCreationPos@@@@UAE@XZ	; SimpleDynVecClass<CreationPos *>::~SimpleDynVecClass<CreationPos *>
; Function compile flags: /Ogty
;	COMDAT ??_G?$SimpleDynVecClass@PAUCreationPos@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$SimpleDynVecClass@PAUCreationPos@@@@UAEPAXI@Z PROC NEAR ; SimpleDynVecClass<CreationPos *>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$SimpleDynVecClass@PAUCreationPos@@@@UAE@XZ ; SimpleDynVecClass<CreationPos *>::~SimpleDynVecClass<CreationPos *>
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L9220
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L9220:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$SimpleDynVecClass@PAUCreationPos@@@@UAEPAXI@Z ENDP ; SimpleDynVecClass<CreationPos *>::`scalar deleting destructor'
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
$T9235	DD	0ffffffffH
	DD	FLAT:$L9225
$T9233	DD	019930520H
	DD	01H
	DD	FLAT:$T9235
	DD	2 DUP(00H)
	DD	2 DUP(00H)
; Function compile flags: /Ogty
xdata$x	ENDS
;	COMDAT ??1?$SimpleDynVecClass@PAUCreationPos@@@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1?$SimpleDynVecClass@PAUCreationPos@@@@UAE@XZ PROC NEAR ; SimpleDynVecClass<CreationPos *>::~SimpleDynVecClass<CreationPos *>, COMDAT
; _this$ = ecx

; 247  : 	{

	push	-1
	push	__ehhandler$??1?$SimpleDynVecClass@PAUCreationPos@@@@UAE@XZ
	mov	eax, DWORD PTR fs:__except_list
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	push	ecx
	push	esi
	mov	esi, ecx
	push	edi
	mov	DWORD PTR _this$[esp+24], esi
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleDynVecClass@PAUCreationPos@@@@6B@

; 248  : 		if (Vector)

	mov	eax, DWORD PTR [esi+4]
	xor	edi, edi
	cmp	eax, edi
	mov	DWORD PTR __$EHRec$[esp+32], edi
	je	SHORT $L7460

; 249  : 		{
; 250  : 			delete Vector;

	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4

; 251  : 			Vector = 0;

	mov	DWORD PTR [esi+4], edi
$L7460:

; 252  : 		}
; 253  : 	}

	mov	eax, DWORD PTR [esi+4]
	cmp	eax, edi
	mov	DWORD PTR __$EHRec$[esp+32], -1
	mov	DWORD PTR [esi], OFFSET FLAT:??_7?$SimpleVecClass@PAUCreationPos@@@@6B@
	je	SHORT $L9231
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
	mov	DWORD PTR [esi+4], edi
	mov	DWORD PTR [esi+8], edi
$L9231:
	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	pop	edi
	pop	esi
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9225:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1?$SimpleVecClass@PAUCreationPos@@@@UAE@XZ ; SimpleVecClass<CreationPos *>::~SimpleVecClass<CreationPos *>
__ehhandler$??1?$SimpleDynVecClass@PAUCreationPos@@@@UAE@XZ:
	mov	eax, OFFSET FLAT:$T9233
	jmp	___CxxFrameHandler
text$x	ENDS
??1?$SimpleDynVecClass@PAUCreationPos@@@@UAE@XZ ENDP	; SimpleDynVecClass<CreationPos *>::~SimpleDynVecClass<CreationPos *>
; Function compile flags: /Ogty
;	COMDAT ??_G?$SimpleDynVecClass@PAE@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$SimpleDynVecClass@PAE@@UAEPAXI@Z PROC NEAR	; SimpleDynVecClass<unsigned char *>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$SimpleDynVecClass@PAE@@UAE@XZ	; SimpleDynVecClass<unsigned char *>::~SimpleDynVecClass<unsigned char *>
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L9241
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L9241:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$SimpleDynVecClass@PAE@@UAEPAXI@Z ENDP		; SimpleDynVecClass<unsigned char *>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$SimpleDynVecClass@I@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$SimpleDynVecClass@I@@UAEPAXI@Z PROC NEAR		; SimpleDynVecClass<unsigned int>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$SimpleDynVecClass@I@@UAE@XZ	; SimpleDynVecClass<unsigned int>::~SimpleDynVecClass<unsigned int>
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L9245
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L9245:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$SimpleDynVecClass@I@@UAEPAXI@Z ENDP		; SimpleDynVecClass<unsigned int>::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	?Created@MDB_ExpVehFac_Helipad@@EAEXPAE@Z	; MDB_ExpVehFac_Helipad::Created
PUBLIC	??_7MDB_ExpVehFac_Helipad@@6B@			; MDB_ExpVehFac_Helipad::`vftable'
PUBLIC	??_GMDB_ExpVehFac_Helipad@@UAEPAXI@Z		; MDB_ExpVehFac_Helipad::`scalar deleting destructor'
EXTRN	??0ScriptImpClass@@QAE@XZ:NEAR			; ScriptImpClass::ScriptImpClass
EXTRN	?Get_Name@ScriptImpClass@@UAEPADXZ:NEAR		; ScriptImpClass::Get_Name
EXTRN	?Attach@ScriptImpClass@@UAEXPAE@Z:NEAR		; ScriptImpClass::Attach
EXTRN	??_EMDB_ExpVehFac_Helipad@@UAEPAXI@Z:NEAR	; MDB_ExpVehFac_Helipad::`vector deleting destructor'
EXTRN	?Detach@ScriptImpClass@@UAEXPAE@Z:NEAR		; ScriptImpClass::Detach
EXTRN	?Damaged@ScriptImpClass@@UAEXPAE0M@Z:NEAR	; ScriptImpClass::Damaged
EXTRN	?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z:NEAR ; ScriptImpClass::Sound_Heard
EXTRN	?Enemy_Seen@ScriptImpClass@@UAEXPAE0@Z:NEAR	; ScriptImpClass::Enemy_Seen
EXTRN	?Action_Complete@ScriptImpClass@@UAEXPAEHW4ActionCompleteReason@@@Z:NEAR ; ScriptImpClass::Action_Complete
EXTRN	?Timer_Expired@ScriptImpClass@@UAEXPAEH@Z:NEAR	; ScriptImpClass::Timer_Expired
EXTRN	?Animation_Complete@ScriptImpClass@@UAEXPAEPBD@Z:NEAR ; ScriptImpClass::Animation_Complete
EXTRN	?Poked@ScriptImpClass@@UAEXPAE0@Z:NEAR		; ScriptImpClass::Poked
EXTRN	?Entered@ScriptImpClass@@UAEXPAE0@Z:NEAR	; ScriptImpClass::Entered
EXTRN	?Exited@ScriptImpClass@@UAEXPAE0@Z:NEAR		; ScriptImpClass::Exited
EXTRN	?Owner@ScriptImpClass@@UAEPAEXZ:NEAR		; ScriptImpClass::Owner
EXTRN	?Get_Owner_Ptr@ScriptImpClass@@UAEPAPAEXZ:NEAR	; ScriptImpClass::Get_Owner_Ptr
EXTRN	?Set_Parameters_String@ScriptImpClass@@UAEXPBD@Z:NEAR ; ScriptImpClass::Set_Parameters_String
EXTRN	?Get_Parameters_String@ScriptImpClass@@UAEXPADI@Z:NEAR ; ScriptImpClass::Get_Parameters_String
EXTRN	?Save@ScriptImpClass@@UAEXAAE@Z:NEAR		; ScriptImpClass::Save
EXTRN	?Load@ScriptImpClass@@UAEXAAE@Z:NEAR		; ScriptImpClass::Load
EXTRN	?Save_Data@ScriptImpClass@@UAEXAAE@Z:NEAR	; ScriptImpClass::Save_Data
EXTRN	?Load_Data@ScriptImpClass@@UAEXAAE@Z:NEAR	; ScriptImpClass::Load_Data
EXTRN	?Register_Auto_Save_Variables@ScriptImpClass@@UAEXXZ:NEAR ; ScriptImpClass::Register_Auto_Save_Variables
;	COMDAT xdata$x
; File c:\documents and settings\owner\desktop\ssctf 1.3\scripts.h
xdata$x	SEGMENT
$T9264	DD	0ffffffffH
	DD	FLAT:$L9253
$T9262	DD	019930520H
	DD	01H
	DD	FLAT:$T9264
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7MDB_ExpVehFac_Helipad@@6B@
CONST	SEGMENT
??_7MDB_ExpVehFac_Helipad@@6B@ DD FLAT:??_EMDB_ExpVehFac_Helipad@@UAEPAXI@Z ; MDB_ExpVehFac_Helipad::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@MDB_ExpVehFac_Helipad@@EAEXPAE@Z
	DD	FLAT:?Destroyed@MDB_ExpVehFac_Helipad@@EAEXPAE@Z
	DD	FLAT:?Killed@MDB_ExpVehFac_Helipad@@EAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@MDB_ExpVehFac_Helipad@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Action_Complete@ScriptImpClass@@UAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@ScriptImpClass@@UAEXPAEH@Z
	DD	FLAT:?Animation_Complete@ScriptImpClass@@UAEXPAEPBD@Z
	DD	FLAT:?Poked@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Entered@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Exited@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Owner@ScriptImpClass@@UAEPAEXZ
	DD	FLAT:?Get_Owner_Ptr@ScriptImpClass@@UAEPAPAEXZ
	DD	FLAT:?Set_Parameters_String@ScriptImpClass@@UAEXPBD@Z
	DD	FLAT:?Get_Parameters_String@ScriptImpClass@@UAEXPADI@Z
	DD	FLAT:?Save@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Load@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Save_Data@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Load_Data@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Register_Auto_Save_Variables@ScriptImpClass@@UAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T9250 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAVScriptImpClass@@XZ
	mov	eax, DWORD PTR fs:__except_list
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	push	ecx
	push	esi
	push	edi

; 481  : 	ScriptImpClass *scr = new T;

	push	28					; 0000001cH
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T9250[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L9251
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7MDB_ExpVehFac_Helipad@@6B@
	jmp	SHORT $L9252
$L9251:
	xor	esi, esi
$L9252:

; 482  : 	scr->SetFactory(this);
; 483  : 	scr->Register_Auto_Save_Variables();

	mov	eax, DWORD PTR [esi]
	mov	ecx, esi
	mov	DWORD PTR __$EHRec$[esp+32], -1
	mov	DWORD PTR [esi+20], edi
	call	DWORD PTR [eax+100]

; 484  : 	return scr;
; 485  : }

	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	pop	edi
	mov	eax, esi
	pop	esi
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9253:
	mov	eax, DWORD PTR $T9250[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T9262
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::Create
PUBLIC	?Created@MDB_ExpVehFac_Naval@@EAEXPAE@Z		; MDB_ExpVehFac_Naval::Created
PUBLIC	??_7MDB_ExpVehFac_Naval@@6B@			; MDB_ExpVehFac_Naval::`vftable'
PUBLIC	??_GMDB_ExpVehFac_Naval@@UAEPAXI@Z		; MDB_ExpVehFac_Naval::`scalar deleting destructor'
EXTRN	??_EMDB_ExpVehFac_Naval@@UAEPAXI@Z:NEAR		; MDB_ExpVehFac_Naval::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T9285	DD	0ffffffffH
	DD	FLAT:$L9274
$T9283	DD	019930520H
	DD	01H
	DD	FLAT:$T9285
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7MDB_ExpVehFac_Naval@@6B@
CONST	SEGMENT
??_7MDB_ExpVehFac_Naval@@6B@ DD FLAT:??_EMDB_ExpVehFac_Naval@@UAEPAXI@Z ; MDB_ExpVehFac_Naval::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@MDB_ExpVehFac_Naval@@EAEXPAE@Z
	DD	FLAT:?Destroyed@MDB_ExpVehFac_Naval@@EAEXPAE@Z
	DD	FLAT:?Killed@MDB_ExpVehFac_Naval@@EAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@MDB_ExpVehFac_Naval@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Action_Complete@ScriptImpClass@@UAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@ScriptImpClass@@UAEXPAEH@Z
	DD	FLAT:?Animation_Complete@ScriptImpClass@@UAEXPAEPBD@Z
	DD	FLAT:?Poked@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Entered@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Exited@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Owner@ScriptImpClass@@UAEPAEXZ
	DD	FLAT:?Get_Owner_Ptr@ScriptImpClass@@UAEPAPAEXZ
	DD	FLAT:?Set_Parameters_String@ScriptImpClass@@UAEXPBD@Z
	DD	FLAT:?Get_Parameters_String@ScriptImpClass@@UAEXPADI@Z
	DD	FLAT:?Save@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Load@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Save_Data@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Load_Data@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Register_Auto_Save_Variables@ScriptImpClass@@UAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T9271 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Naval>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAVScriptImpClass@@XZ
	mov	eax, DWORD PTR fs:__except_list
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	push	ecx
	push	esi
	push	edi

; 481  : 	ScriptImpClass *scr = new T;

	push	28					; 0000001cH
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T9271[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L9272
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7MDB_ExpVehFac_Naval@@6B@
	jmp	SHORT $L9273
$L9272:
	xor	esi, esi
$L9273:

; 482  : 	scr->SetFactory(this);
; 483  : 	scr->Register_Auto_Save_Variables();

	mov	eax, DWORD PTR [esi]
	mov	ecx, esi
	mov	DWORD PTR __$EHRec$[esp+32], -1
	mov	DWORD PTR [esi+20], edi
	call	DWORD PTR [eax+100]

; 484  : 	return scr;
; 485  : }

	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	pop	edi
	mov	eax, esi
	pop	esi
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9274:
	mov	eax, DWORD PTR $T9271[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T9283
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<MDB_ExpVehFac_Naval>::Create
PUBLIC	?Created@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE@Z ; MDB_ExpVehFac_Vehicle_Factory::Created
PUBLIC	??_7MDB_ExpVehFac_Vehicle_Factory@@6B@		; MDB_ExpVehFac_Vehicle_Factory::`vftable'
PUBLIC	??_GMDB_ExpVehFac_Vehicle_Factory@@UAEPAXI@Z	; MDB_ExpVehFac_Vehicle_Factory::`scalar deleting destructor'
EXTRN	?Destroyed@ScriptImpClass@@UAEXPAE@Z:NEAR	; ScriptImpClass::Destroyed
EXTRN	?Custom@ScriptImpClass@@UAEXPAEHH0@Z:NEAR	; ScriptImpClass::Custom
EXTRN	??_EMDB_ExpVehFac_Vehicle_Factory@@UAEPAXI@Z:NEAR ; MDB_ExpVehFac_Vehicle_Factory::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T9306	DD	0ffffffffH
	DD	FLAT:$L9295
$T9304	DD	019930520H
	DD	01H
	DD	FLAT:$T9306
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7MDB_ExpVehFac_Vehicle_Factory@@6B@
CONST	SEGMENT
??_7MDB_ExpVehFac_Vehicle_Factory@@6B@ DD FLAT:??_EMDB_ExpVehFac_Vehicle_Factory@@UAEPAXI@Z ; MDB_ExpVehFac_Vehicle_Factory::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@ScriptImpClass@@UAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Action_Complete@ScriptImpClass@@UAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAEH@Z
	DD	FLAT:?Animation_Complete@ScriptImpClass@@UAEXPAEPBD@Z
	DD	FLAT:?Poked@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Entered@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Exited@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Owner@ScriptImpClass@@UAEPAEXZ
	DD	FLAT:?Get_Owner_Ptr@ScriptImpClass@@UAEPAPAEXZ
	DD	FLAT:?Set_Parameters_String@ScriptImpClass@@UAEXPBD@Z
	DD	FLAT:?Get_Parameters_String@ScriptImpClass@@UAEXPADI@Z
	DD	FLAT:?Save@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Load@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Save_Data@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Load_Data@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Register_Auto_Save_Variables@ScriptImpClass@@UAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T9292 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAVScriptImpClass@@XZ
	mov	eax, DWORD PTR fs:__except_list
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	push	ecx
	push	esi
	push	edi

; 481  : 	ScriptImpClass *scr = new T;

	push	28					; 0000001cH
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T9292[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L9293
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7MDB_ExpVehFac_Vehicle_Factory@@6B@
	jmp	SHORT $L9294
$L9293:
	xor	esi, esi
$L9294:

; 482  : 	scr->SetFactory(this);
; 483  : 	scr->Register_Auto_Save_Variables();

	mov	eax, DWORD PTR [esi]
	mov	ecx, esi
	mov	DWORD PTR __$EHRec$[esp+32], -1
	mov	DWORD PTR [esi+20], edi
	call	DWORD PTR [eax+100]

; 484  : 	return scr;
; 485  : }

	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	pop	edi
	mov	eax, esi
	pop	esi
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9295:
	mov	eax, DWORD PTR $T9292[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T9304
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::Create
PUBLIC	??_7MDB_ExpVehFac_Cinematic@@6B@		; MDB_ExpVehFac_Cinematic::`vftable'
PUBLIC	??_GMDB_ExpVehFac_Cinematic@@UAEPAXI@Z		; MDB_ExpVehFac_Cinematic::`scalar deleting destructor'
EXTRN	?Killed@ScriptImpClass@@UAEXPAE0@Z:NEAR		; ScriptImpClass::Killed
EXTRN	??_EMDB_ExpVehFac_Cinematic@@UAEPAXI@Z:NEAR	; MDB_ExpVehFac_Cinematic::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T9327	DD	0ffffffffH
	DD	FLAT:$L9316
$T9325	DD	019930520H
	DD	01H
	DD	FLAT:$T9327
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7MDB_ExpVehFac_Cinematic@@6B@
CONST	SEGMENT
??_7MDB_ExpVehFac_Cinematic@@6B@ DD FLAT:??_EMDB_ExpVehFac_Cinematic@@UAEPAXI@Z ; MDB_ExpVehFac_Cinematic::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@MDB_ExpVehFac_Cinematic@@EAEXPAE@Z
	DD	FLAT:?Destroyed@MDB_ExpVehFac_Cinematic@@EAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@ScriptImpClass@@UAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Action_Complete@ScriptImpClass@@UAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@ScriptImpClass@@UAEXPAEH@Z
	DD	FLAT:?Animation_Complete@ScriptImpClass@@UAEXPAEPBD@Z
	DD	FLAT:?Poked@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Entered@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Exited@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Owner@ScriptImpClass@@UAEPAEXZ
	DD	FLAT:?Get_Owner_Ptr@ScriptImpClass@@UAEPAPAEXZ
	DD	FLAT:?Set_Parameters_String@ScriptImpClass@@UAEXPBD@Z
	DD	FLAT:?Get_Parameters_String@ScriptImpClass@@UAEXPADI@Z
	DD	FLAT:?Save@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Load@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Save_Data@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Load_Data@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Register_Auto_Save_Variables@MDB_ExpVehFac_Cinematic@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T9313 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAVScriptImpClass@@XZ
	mov	eax, DWORD PTR fs:__except_list
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	push	ecx
	push	esi
	push	edi

; 481  : 	ScriptImpClass *scr = new T;

	push	32					; 00000020H
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T9313[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L9314
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7MDB_ExpVehFac_Cinematic@@6B@
	jmp	SHORT $L9315
$L9314:
	xor	esi, esi
$L9315:

; 482  : 	scr->SetFactory(this);
; 483  : 	scr->Register_Auto_Save_Variables();

	mov	eax, DWORD PTR [esi]
	mov	ecx, esi
	mov	DWORD PTR __$EHRec$[esp+32], -1
	mov	DWORD PTR [esi+20], edi
	call	DWORD PTR [eax+100]

; 484  : 	return scr;
; 485  : }

	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	pop	edi
	mov	eax, esi
	pop	esi
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9316:
	mov	eax, DWORD PTR $T9313[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T9325
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::Create
PUBLIC	??_7MDB_ExpVehFac_Cinematic_Vehicle@@6B@	; MDB_ExpVehFac_Cinematic_Vehicle::`vftable'
PUBLIC	??_GMDB_ExpVehFac_Cinematic_Vehicle@@UAEPAXI@Z	; MDB_ExpVehFac_Cinematic_Vehicle::`scalar deleting destructor'
EXTRN	?Created@ScriptImpClass@@UAEXPAE@Z:NEAR		; ScriptImpClass::Created
EXTRN	??_EMDB_ExpVehFac_Cinematic_Vehicle@@UAEPAXI@Z:NEAR ; MDB_ExpVehFac_Cinematic_Vehicle::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T9348	DD	0ffffffffH
	DD	FLAT:$L9337
$T9346	DD	019930520H
	DD	01H
	DD	FLAT:$T9348
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7MDB_ExpVehFac_Cinematic_Vehicle@@6B@
CONST	SEGMENT
??_7MDB_ExpVehFac_Cinematic_Vehicle@@6B@ DD FLAT:??_EMDB_ExpVehFac_Cinematic_Vehicle@@UAEPAXI@Z ; MDB_ExpVehFac_Cinematic_Vehicle::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@MDB_ExpVehFac_Cinematic_Vehicle@@EAEXPAE0M@Z
	DD	FLAT:?Custom@ScriptImpClass@@UAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Action_Complete@ScriptImpClass@@UAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@ScriptImpClass@@UAEXPAEH@Z
	DD	FLAT:?Animation_Complete@ScriptImpClass@@UAEXPAEPBD@Z
	DD	FLAT:?Poked@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Entered@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Exited@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Owner@ScriptImpClass@@UAEPAEXZ
	DD	FLAT:?Get_Owner_Ptr@ScriptImpClass@@UAEPAPAEXZ
	DD	FLAT:?Set_Parameters_String@ScriptImpClass@@UAEXPBD@Z
	DD	FLAT:?Get_Parameters_String@ScriptImpClass@@UAEXPADI@Z
	DD	FLAT:?Save@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Load@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Save_Data@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Load_Data@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Register_Auto_Save_Variables@ScriptImpClass@@UAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T9334 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAVScriptImpClass@@XZ
	mov	eax, DWORD PTR fs:__except_list
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	push	ecx
	push	esi
	push	edi

; 481  : 	ScriptImpClass *scr = new T;

	push	28					; 0000001cH
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T9334[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L9335
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7MDB_ExpVehFac_Cinematic_Vehicle@@6B@
	jmp	SHORT $L9336
$L9335:
	xor	esi, esi
$L9336:

; 482  : 	scr->SetFactory(this);
; 483  : 	scr->Register_Auto_Save_Variables();

	mov	eax, DWORD PTR [esi]
	mov	ecx, esi
	mov	DWORD PTR __$EHRec$[esp+32], -1
	mov	DWORD PTR [esi+20], edi
	call	DWORD PTR [eax+100]

; 484  : 	return scr;
; 485  : }

	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	pop	edi
	mov	eax, esi
	pop	esi
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9337:
	mov	eax, DWORD PTR $T9334[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T9346
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::Create
PUBLIC	??_7MDB_ExpVehFac_Limit@@6B@			; MDB_ExpVehFac_Limit::`vftable'
PUBLIC	??_GMDB_ExpVehFac_Limit@@UAEPAXI@Z		; MDB_ExpVehFac_Limit::`scalar deleting destructor'
EXTRN	??_EMDB_ExpVehFac_Limit@@UAEPAXI@Z:NEAR		; MDB_ExpVehFac_Limit::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T9369	DD	0ffffffffH
	DD	FLAT:$L9358
$T9367	DD	019930520H
	DD	01H
	DD	FLAT:$T9369
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7MDB_ExpVehFac_Limit@@6B@
CONST	SEGMENT
??_7MDB_ExpVehFac_Limit@@6B@ DD FLAT:??_EMDB_ExpVehFac_Limit@@UAEPAXI@Z ; MDB_ExpVehFac_Limit::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@MDB_ExpVehFac_Limit@@EAEXPAE@Z
	DD	FLAT:?Destroyed@MDB_ExpVehFac_Limit@@EAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@ScriptImpClass@@UAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Action_Complete@ScriptImpClass@@UAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@ScriptImpClass@@UAEXPAEH@Z
	DD	FLAT:?Animation_Complete@ScriptImpClass@@UAEXPAEPBD@Z
	DD	FLAT:?Poked@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Entered@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Exited@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Owner@ScriptImpClass@@UAEPAEXZ
	DD	FLAT:?Get_Owner_Ptr@ScriptImpClass@@UAEPAPAEXZ
	DD	FLAT:?Set_Parameters_String@ScriptImpClass@@UAEXPBD@Z
	DD	FLAT:?Get_Parameters_String@ScriptImpClass@@UAEXPADI@Z
	DD	FLAT:?Save@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Load@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Save_Data@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Load_Data@ScriptImpClass@@UAEXAAE@Z
	DD	FLAT:?Register_Auto_Save_Variables@MDB_ExpVehFac_Limit@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T9355 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<MDB_ExpVehFac_Limit>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAVScriptImpClass@@XZ
	mov	eax, DWORD PTR fs:__except_list
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	push	ecx
	push	esi
	push	edi

; 481  : 	ScriptImpClass *scr = new T;

	push	32					; 00000020H
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T9355[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L9356
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7MDB_ExpVehFac_Limit@@6B@
	jmp	SHORT $L9357
$L9356:
	xor	esi, esi
$L9357:

; 482  : 	scr->SetFactory(this);
; 483  : 	scr->Register_Auto_Save_Variables();

	mov	eax, DWORD PTR [esi]
	mov	ecx, esi
	mov	DWORD PTR __$EHRec$[esp+32], -1
	mov	DWORD PTR [esi+20], edi
	call	DWORD PTR [eax+100]

; 484  : 	return scr;
; 485  : }

	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	pop	edi
	mov	eax, esi
	pop	esi
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9358:
	mov	eax, DWORD PTR $T9355[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T9367
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<MDB_ExpVehFac_Limit>::Create
PUBLIC	??1MDB_ExpVehFac_Helipad@@UAE@XZ		; MDB_ExpVehFac_Helipad::~MDB_ExpVehFac_Helipad
; Function compile flags: /Ogty
;	COMDAT ??_GMDB_ExpVehFac_Helipad@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GMDB_ExpVehFac_Helipad@@UAEPAXI@Z PROC NEAR		; MDB_ExpVehFac_Helipad::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1MDB_ExpVehFac_Helipad@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L9375
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L9375:
	mov	eax, esi
	pop	esi
	ret	4
??_GMDB_ExpVehFac_Helipad@@UAEPAXI@Z ENDP		; MDB_ExpVehFac_Helipad::`scalar deleting destructor'
_TEXT	ENDS
EXTRN	??1ScriptImpClass@@UAE@XZ:NEAR			; ScriptImpClass::~ScriptImpClass
; Function compile flags: /Ogty
;	COMDAT ??1MDB_ExpVehFac_Helipad@@UAE@XZ
_TEXT	SEGMENT
??1MDB_ExpVehFac_Helipad@@UAE@XZ PROC NEAR		; MDB_ExpVehFac_Helipad::~MDB_ExpVehFac_Helipad, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1MDB_ExpVehFac_Helipad@@UAE@XZ ENDP			; MDB_ExpVehFac_Helipad::~MDB_ExpVehFac_Helipad
_TEXT	ENDS
PUBLIC	??1MDB_ExpVehFac_Naval@@UAE@XZ			; MDB_ExpVehFac_Naval::~MDB_ExpVehFac_Naval
; Function compile flags: /Ogty
;	COMDAT ??_GMDB_ExpVehFac_Naval@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GMDB_ExpVehFac_Naval@@UAEPAXI@Z PROC NEAR		; MDB_ExpVehFac_Naval::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1MDB_ExpVehFac_Naval@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L9383
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L9383:
	mov	eax, esi
	pop	esi
	ret	4
??_GMDB_ExpVehFac_Naval@@UAEPAXI@Z ENDP			; MDB_ExpVehFac_Naval::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1MDB_ExpVehFac_Naval@@UAE@XZ
_TEXT	SEGMENT
??1MDB_ExpVehFac_Naval@@UAE@XZ PROC NEAR		; MDB_ExpVehFac_Naval::~MDB_ExpVehFac_Naval, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1MDB_ExpVehFac_Naval@@UAE@XZ ENDP			; MDB_ExpVehFac_Naval::~MDB_ExpVehFac_Naval
_TEXT	ENDS
PUBLIC	??1MDB_ExpVehFac_Vehicle_Factory@@UAE@XZ	; MDB_ExpVehFac_Vehicle_Factory::~MDB_ExpVehFac_Vehicle_Factory
; Function compile flags: /Ogty
;	COMDAT ??_GMDB_ExpVehFac_Vehicle_Factory@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GMDB_ExpVehFac_Vehicle_Factory@@UAEPAXI@Z PROC NEAR	; MDB_ExpVehFac_Vehicle_Factory::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1MDB_ExpVehFac_Vehicle_Factory@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L9391
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L9391:
	mov	eax, esi
	pop	esi
	ret	4
??_GMDB_ExpVehFac_Vehicle_Factory@@UAEPAXI@Z ENDP	; MDB_ExpVehFac_Vehicle_Factory::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1MDB_ExpVehFac_Vehicle_Factory@@UAE@XZ
_TEXT	SEGMENT
??1MDB_ExpVehFac_Vehicle_Factory@@UAE@XZ PROC NEAR	; MDB_ExpVehFac_Vehicle_Factory::~MDB_ExpVehFac_Vehicle_Factory, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1MDB_ExpVehFac_Vehicle_Factory@@UAE@XZ ENDP		; MDB_ExpVehFac_Vehicle_Factory::~MDB_ExpVehFac_Vehicle_Factory
_TEXT	ENDS
PUBLIC	??1MDB_ExpVehFac_Cinematic@@UAE@XZ		; MDB_ExpVehFac_Cinematic::~MDB_ExpVehFac_Cinematic
; Function compile flags: /Ogty
;	COMDAT ??_GMDB_ExpVehFac_Cinematic@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GMDB_ExpVehFac_Cinematic@@UAEPAXI@Z PROC NEAR	; MDB_ExpVehFac_Cinematic::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1MDB_ExpVehFac_Cinematic@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L9399
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L9399:
	mov	eax, esi
	pop	esi
	ret	4
??_GMDB_ExpVehFac_Cinematic@@UAEPAXI@Z ENDP		; MDB_ExpVehFac_Cinematic::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1MDB_ExpVehFac_Cinematic@@UAE@XZ
_TEXT	SEGMENT
??1MDB_ExpVehFac_Cinematic@@UAE@XZ PROC NEAR		; MDB_ExpVehFac_Cinematic::~MDB_ExpVehFac_Cinematic, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1MDB_ExpVehFac_Cinematic@@UAE@XZ ENDP			; MDB_ExpVehFac_Cinematic::~MDB_ExpVehFac_Cinematic
_TEXT	ENDS
PUBLIC	??1MDB_ExpVehFac_Cinematic_Vehicle@@UAE@XZ	; MDB_ExpVehFac_Cinematic_Vehicle::~MDB_ExpVehFac_Cinematic_Vehicle
; Function compile flags: /Ogty
;	COMDAT ??_GMDB_ExpVehFac_Cinematic_Vehicle@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GMDB_ExpVehFac_Cinematic_Vehicle@@UAEPAXI@Z PROC NEAR ; MDB_ExpVehFac_Cinematic_Vehicle::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1MDB_ExpVehFac_Cinematic_Vehicle@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L9407
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L9407:
	mov	eax, esi
	pop	esi
	ret	4
??_GMDB_ExpVehFac_Cinematic_Vehicle@@UAEPAXI@Z ENDP	; MDB_ExpVehFac_Cinematic_Vehicle::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1MDB_ExpVehFac_Cinematic_Vehicle@@UAE@XZ
_TEXT	SEGMENT
??1MDB_ExpVehFac_Cinematic_Vehicle@@UAE@XZ PROC NEAR	; MDB_ExpVehFac_Cinematic_Vehicle::~MDB_ExpVehFac_Cinematic_Vehicle, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1MDB_ExpVehFac_Cinematic_Vehicle@@UAE@XZ ENDP		; MDB_ExpVehFac_Cinematic_Vehicle::~MDB_ExpVehFac_Cinematic_Vehicle
_TEXT	ENDS
PUBLIC	??1MDB_ExpVehFac_Limit@@UAE@XZ			; MDB_ExpVehFac_Limit::~MDB_ExpVehFac_Limit
; Function compile flags: /Ogty
;	COMDAT ??_GMDB_ExpVehFac_Limit@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GMDB_ExpVehFac_Limit@@UAEPAXI@Z PROC NEAR		; MDB_ExpVehFac_Limit::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1MDB_ExpVehFac_Limit@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L9415
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L9415:
	mov	eax, esi
	pop	esi
	ret	4
??_GMDB_ExpVehFac_Limit@@UAEPAXI@Z ENDP			; MDB_ExpVehFac_Limit::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1MDB_ExpVehFac_Limit@@UAE@XZ
_TEXT	SEGMENT
??1MDB_ExpVehFac_Limit@@UAE@XZ PROC NEAR		; MDB_ExpVehFac_Limit::~MDB_ExpVehFac_Limit, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1MDB_ExpVehFac_Limit@@UAE@XZ ENDP			; MDB_ExpVehFac_Limit::~MDB_ExpVehFac_Limit
_TEXT	ENDS
PUBLIC	??0ExpVehFacClass@@QAE@I@Z			; ExpVehFacClass::ExpVehFacClass
;	COMDAT xdata$x
; File c:\documents and settings\owner\desktop\ssctf 1.3\engine.h
xdata$x	SEGMENT
$T9494	DD	0ffffffffH
	DD	FLAT:$L9439
	DD	0ffffffffH
	DD	FLAT:$L9440
	DD	0ffffffffH
	DD	FLAT:$L9441
	DD	0ffffffffH
	DD	FLAT:$L9442
$T9492	DD	019930520H
	DD	04H
	DD	FLAT:$T9494
	DD	2 DUP(00H)
	DD	2 DUP(00H)
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\mdbevf.cpp
xdata$x	ENDS
;	COMDAT ??0ExpVehFacClass@@QAE@I@Z
_TEXT	SEGMENT
$T9436 = -28						; size = 4
$T9432 = -24						; size = 4
$T9428 = -20						; size = 4
$T9424 = -16						; size = 4
__$EHRec$ = -12						; size = 12
_team$ = 8						; size = 4
??0ExpVehFacClass@@QAE@I@Z PROC NEAR			; ExpVehFacClass::ExpVehFacClass, COMDAT
; _this$ = ecx

; 20   : {

	mov	eax, DWORD PTR fs:__except_list
	push	-1
	push	__ehhandler$??0ExpVehFacClass@@QAE@I@Z
	push	eax

; 21   : 	Team = team;

	mov	eax, DWORD PTR _team$[esp+8]
	mov	DWORD PTR fs:__except_list, esp
	sub	esp, 16					; 00000010H
	push	ebx
	push	esi
	mov	esi, ecx

; 22   : 	Loaded = false;		

	xor	ebx, ebx

; 23   : 	Units = new SimpleDynVecClass<UnitInfo*>(0);

	push	16					; 00000010H
	mov	DWORD PTR [esi+16], eax
	mov	BYTE PTR [esi+107], bl
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $L9425
	mov	DWORD PTR [eax+4], ebx
	mov	DWORD PTR [eax+8], ebx
	mov	DWORD PTR [eax], OFFSET FLAT:??_7?$SimpleDynVecClass@PAUUnitInfo@@@@6B@
	mov	DWORD PTR [eax+12], ebx
	jmp	SHORT $L9426
$L9425:
	xor	eax, eax
$L9426:

; 24   : 	Naval_Creation_Pos_Per_Vehicle = new SimpleDynVecClass<CreationPos*>(0);

	push	16					; 00000010H
	mov	DWORD PTR __$EHRec$[esp+48], -1
	mov	DWORD PTR [esi], eax
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $L9429
	mov	DWORD PTR [eax+4], ebx
	mov	DWORD PTR [eax+8], ebx
	mov	DWORD PTR [eax], OFFSET FLAT:??_7?$SimpleDynVecClass@PAUCreationPos@@@@6B@
	mov	DWORD PTR [eax+12], ebx
	jmp	SHORT $L9430
$L9429:
	xor	eax, eax
$L9430:

; 25   : 	Naval_Creation_Positions = new SimpleDynVecClass<GameObject*>(0);

	push	16					; 00000010H
	mov	DWORD PTR __$EHRec$[esp+48], -1
	mov	DWORD PTR [esi+4], eax
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $L9433
	mov	DWORD PTR [eax+4], ebx
	mov	DWORD PTR [eax+8], ebx
	mov	DWORD PTR [eax], OFFSET FLAT:??_7?$SimpleDynVecClass@PAE@@6B@
	mov	DWORD PTR [eax+12], ebx
	jmp	SHORT $L9434
$L9433:
	xor	eax, eax
$L9434:

; 26   : 	Flying_Landing_Positions = new SimpleDynVecClass<GameObject*>(0);

	push	16					; 00000010H
	mov	DWORD PTR __$EHRec$[esp+48], -1
	mov	DWORD PTR [esi+72], eax
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $L9437
	mov	DWORD PTR [eax+4], ebx
	mov	DWORD PTR [eax+8], ebx
	mov	DWORD PTR [eax], OFFSET FLAT:??_7?$SimpleDynVecClass@PAE@@6B@
	mov	DWORD PTR [eax+12], ebx
	jmp	SHORT $L9438
$L9437:
	xor	eax, eax
$L9438:

; 27   : 	LastFlyVehID = 0;
; 28   : 	PHookID = 0;
; 29   : 	OHookID = 0;
; 30   : 	Last_Flying_Landing_Pos = 0;
; 31   : 	Last_Naval_Creation_Pos = 0;
; 32   : 	Remove_on_Death = false;
; 33   : 	Sidebar = false;
; 34   : 	Using_Naval = false;
; 35   : }

	mov	ecx, DWORD PTR __$EHRec$[esp+36]
	mov	DWORD PTR [esi+76], eax
	mov	DWORD PTR [esi+108], ebx
	mov	DWORD PTR [esi+20], ebx
	mov	DWORD PTR [esi+24], ebx
	mov	DWORD PTR [esi+8], ebx
	mov	DWORD PTR [esi+12], ebx
	mov	BYTE PTR [esi+38], bl
	mov	BYTE PTR [esi+37], bl
	mov	BYTE PTR [esi+36], bl
	mov	eax, esi
	pop	esi
	pop	ebx
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 28					; 0000001cH
	ret	4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9439:
	mov	eax, DWORD PTR $T9424[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
$L9440:
	mov	eax, DWORD PTR $T9428[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
$L9441:
	mov	eax, DWORD PTR $T9432[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
$L9442:
	mov	eax, DWORD PTR $T9436[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$??0ExpVehFacClass@@QAE@I@Z:
	mov	eax, OFFSET FLAT:$T9492
	jmp	___CxxFrameHandler
text$x	ENDS
??0ExpVehFacClass@@QAE@I@Z ENDP				; ExpVehFacClass::ExpVehFacClass
PUBLIC	??_C@_01GBGANLPD@0?$AA@				; `string'
PUBLIC	??_C@_01ICJEACDI@?$DL?$AA@			; `string'
PUBLIC	??_C@_01NEMOKFLO@?$DN?$AA@			; `string'
PUBLIC	??_C@_0BB@MJEEGLIK@ExpVehFac_?$CFu?4cfg?$AA@	; `string'
PUBLIC	??_C@_0O@BCEKLIOD@ExpVehFac?4cfg?$AA@		; `string'
PUBLIC	??_C@_0N@BHHEMMEG@Ground_Limit?$AA@		; `string'
PUBLIC	??_C@_0N@NKJFEDCM@Flying_Limit?$AA@		; `string'
PUBLIC	??_C@_0M@HBFOELM@Naval_Limit?$AA@		; `string'
PUBLIC	??_C@_0O@CCACHKNM@Support_Limit?$AA@		; `string'
PUBLIC	?Load@ExpVehFacClass@@QAEXPBD0PAE0@Z		; ExpVehFacClass::Load
EXTRN	?Find_Object_By_Preset@@YAPAEHPBD@Z:NEAR	; Find_Object_By_Preset
EXTRN	?Find_Refinery@@YAPAEH@Z:NEAR			; Find_Refinery
EXTRN	_sprintf:NEAR
EXTRN	_strtok:NEAR
EXTRN	_stricmp:NEAR
EXTRN	_atoi:NEAR
EXTRN	?Get_Definition_ID@@YAKPBD@Z:NEAR		; Get_Definition_ID
EXTRN	?Get_Vehicle_Definition_Mode_By_ID@@YAIK@Z:NEAR	; Get_Vehicle_Definition_Mode_By_ID
EXTRN	?AddObjectCreateHook@@3P6AHPAUObjectCreateHookStruct@@@ZA:DWORD ; AddObjectCreateHook
EXTRN	?AddVehiclePurchaseHook@@3P6AHP6AHPAVBaseControllerClass@@PAEIIPBD@Z2@ZA:DWORD ; AddVehiclePurchaseHook
EXTRN	?Set_Vehicle_Limit@@3P6AXI@ZA:DWORD		; Set_Vehicle_Limit
EXTRN	?Get_Vehicle_Limit@@3P6AKXZA:DWORD		; Get_Vehicle_Limit
EXTRN	?newstr@@YAPADPBD@Z:NEAR			; newstr
;	COMDAT xdata$x
; File c:\documents and settings\owner\desktop\ssctf 1.3\engine.h
xdata$x	SEGMENT
$T9793	DD	0ffffffffH
	DD	FLAT:$L9521
	DD	00H
	DD	FLAT:$L9524
	DD	00H
	DD	FLAT:$L9705
	DD	0ffffffffH
	DD	FLAT:$L9722
$T9738	DD	019930520H
	DD	04H
	DD	FLAT:$T9793
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_C@_01GBGANLPD@0?$AA@
CONST	SEGMENT
??_C@_01GBGANLPD@0?$AA@ DB '0', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_01ICJEACDI@?$DL?$AA@
CONST	SEGMENT
??_C@_01ICJEACDI@?$DL?$AA@ DB ';', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_01NEMOKFLO@?$DN?$AA@
CONST	SEGMENT
??_C@_01NEMOKFLO@?$DN?$AA@ DB '=', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_0BB@MJEEGLIK@ExpVehFac_?$CFu?4cfg?$AA@
CONST	SEGMENT
??_C@_0BB@MJEEGLIK@ExpVehFac_?$CFu?4cfg?$AA@ DB 'ExpVehFac_%u.cfg', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0O@BCEKLIOD@ExpVehFac?4cfg?$AA@
CONST	SEGMENT
??_C@_0O@BCEKLIOD@ExpVehFac?4cfg?$AA@ DB 'ExpVehFac.cfg', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0N@BHHEMMEG@Ground_Limit?$AA@
CONST	SEGMENT
??_C@_0N@BHHEMMEG@Ground_Limit?$AA@ DB 'Ground_Limit', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0N@NKJFEDCM@Flying_Limit?$AA@
CONST	SEGMENT
??_C@_0N@NKJFEDCM@Flying_Limit?$AA@ DB 'Flying_Limit', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0M@HBFOELM@Naval_Limit?$AA@
CONST	SEGMENT
??_C@_0M@HBFOELM@Naval_Limit?$AA@ DB 'Naval_Limit', 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_0O@CCACHKNM@Support_Limit?$AA@
CONST	SEGMENT
??_C@_0O@CCACHKNM@Support_Limit?$AA@ DB 'Support_Limit', 00H ; `string'
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\mdbevf.cpp
CONST	ENDS
;	COMDAT ?Load@ExpVehFacClass@@QAEXPBD0PAE0@Z
_TEXT	SEGMENT
_Temp$6840 = -200					; size = 4
_Temp$6826 = -200					; size = 4
_Temp$6803 = -200					; size = 4
_Temp$6791 = -200					; size = 4
_Temp$6779 = -200					; size = 4
_ID$6764 = -200						; size = 4
_this$ = -196						; size = 4
_NavalIDs$6812 = -192					; size = 16
_Support$ = -176					; size = 16
_File$ = -160						; size = 20
_Data$6863 = -140					; size = 128
__$EHRec$ = -12						; size = 12
_NavalVehicles$ = 8					; size = 4
_NavalCreationPresets$ = 12				; size = 4
_script$ = 16						; size = 4
_SupportVehicles$ = 20					; size = 4
?Load@ExpVehFacClass@@QAEXPBD0PAE0@Z PROC NEAR		; ExpVehFacClass::Load, COMDAT
; _this$ = ecx

; 531  : {

	push	-1
	push	__ehhandler$?Load@ExpVehFacClass@@QAEXPBD0PAE0@Z
	mov	eax, DWORD PTR fs:__except_list
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	sub	esp, 188				; 000000bcH
	push	ebx
	mov	ebx, ecx
	push	ebp
	push	esi
	push	edi

; 532  : 	Ground_Limit = 0;

	xor	edi, edi
	mov	DWORD PTR _this$[esp+216], ebx
	mov	DWORD PTR [ebx+40], edi

; 533  : 	Flying_Limit = 0;

	mov	DWORD PTR [ebx+44], edi

; 534  : 	Naval_Limit = 0;

	mov	DWORD PTR [ebx+48], edi

; 535  : 	Support_Limit = 0;

	mov	DWORD PTR [ebx+52], edi

; 536  : 	Ground_Amount = 0;

	mov	DWORD PTR [ebx+56], edi

; 537  : 	Flying_Amount = 0;

	mov	DWORD PTR [ebx+60], edi

; 538  : 	Naval_Amount = 0;

	mov	DWORD PTR [ebx+64], edi

; 539  : 	Support_Amount = 0;

	mov	DWORD PTR [ebx+68], edi

; 540  : 	Is_Ground_Building = false;

	mov	BYTE PTR [ebx+104], 0

; 541  : 	Is_Flying_Building = false;

	mov	BYTE PTR [ebx+105], 0

; 542  : 	Is_Naval_Building = false;

	mov	BYTE PTR [ebx+106], 0

; 543  : 	SimpleDynVecClass<unsigned int> Support(0);

	mov	DWORD PTR _Support$[esp+220], edi
	mov	DWORD PTR _Support$[esp+224], edi
	mov	DWORD PTR _Support$[esp+216], OFFSET FLAT:??_7?$SimpleDynVecClass@I@@6B@
	mov	DWORD PTR _Support$[esp+228], edi

; 544  : 	if (stricmp(SupportVehicles,"0"))

	mov	esi, DWORD PTR _SupportVehicles$[esp+212]
	push	OFFSET FLAT:??_C@_01GBGANLPD@0?$AA@
	push	esi
	mov	DWORD PTR __$EHRec$[esp+232], edi
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L6756

; 545  : 	{
; 546  : 		char *STokens = newstr(SupportVehicles);

	push	esi
	call	?newstr@@YAPADPBD@Z			; newstr
	mov	esi, eax

; 547  : 		char *STok = strtok(STokens,";");

	push	OFFSET FLAT:??_C@_01ICJEACDI@?$DL?$AA@
	push	esi
	call	_strtok
	add	esp, 12					; 0000000cH

; 548  : 		while (STok)

	cmp	eax, edi
	je	SHORT $L6763
	npad	7
$L6762:

; 549  : 		{
; 550  : 			unsigned int ID = Get_Definition_ID(STok);

	push	eax
	call	?Get_Definition_ID@@YAKPBD@Z		; Get_Definition_ID
	mov	DWORD PTR _ID$6764[esp+220], eax
	add	esp, 4

; 551  : 			Support.Add(ID);

	lea	eax, DWORD PTR _ID$6764[esp+216]
	push	eax
	lea	ecx, DWORD PTR _Support$[esp+220]
	call	?Add@?$SimpleDynVecClass@I@@QAEHAAI@Z	; SimpleDynVecClass<unsigned int>::Add

; 552  : 			STok = strtok(0,";");

	push	OFFSET FLAT:??_C@_01ICJEACDI@?$DL?$AA@
	push	edi
	call	_strtok
	add	esp, 8
	cmp	eax, edi
	jne	SHORT $L6762
$L6763:

; 553  : 		}
; 554  : 		delete STokens;

	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L6756:

; 555  : 	}
; 556  : 	if (NavalCreationPresets)

	mov	eax, DWORD PTR _NavalCreationPresets$[esp+212]
	cmp	eax, edi
	je	$L6766

; 557  : 	{
; 558  : 		char *Tokenz = newstr(NavalCreationPresets);

	push	eax
	call	?newstr@@YAPADPBD@Z			; newstr
	add	esp, 4
	mov	ebp, eax

; 559  : 		int size = strlen(Tokenz);

	lea	edx, DWORD PTR [eax+1]
$L9784:
	mov	cl, BYTE PTR [eax]
	inc	eax
	test	cl, cl
	jne	SHORT $L9784
	sub	eax, edx

; 560  : 		for (int i = 0; i < size; i++)

	xor	ecx, ecx
	cmp	eax, edi
	jle	SHORT $L6772
$L6770:

; 561  : 		{
; 562  : 			if (Tokenz[i] == ';')

	cmp	BYTE PTR [ecx+ebp], 59			; 0000003bH
	jne	SHORT $L6771

; 563  : 			{
; 564  : 				Tokenz[i] = '=';

	mov	BYTE PTR [ecx+ebp], 61			; 0000003dH
$L6771:

; 560  : 		for (int i = 0; i < size; i++)

	inc	ecx
	cmp	ecx, eax
	jl	SHORT $L6770
$L6772:

; 565  : 			}
; 566  : 		}
; 567  : 		char *p = strtok(Tokenz,"=");

	push	OFFSET FLAT:??_C@_01NEMOKFLO@?$DN?$AA@
	push	ebp
	call	_strtok
	mov	esi, eax
	add	esp, 8

; 568  : 		while (p)

	cmp	esi, edi
	je	SHORT $L6778
$L6777:

; 569  : 		{
; 570  : 			CreationPos *Temp = new CreationPos;

	push	8
	call	??2@YAPAXI@Z				; operator new
	mov	edi, eax

; 571  : 			Temp->Preset = Get_Definition_ID(p);

	push	esi
	mov	DWORD PTR _Temp$6779[esp+224], edi
	call	?Get_Definition_ID@@YAKPBD@Z		; Get_Definition_ID

; 572  : 			char *create = strtok(0,"=");

	push	OFFSET FLAT:??_C@_01NEMOKFLO@?$DN?$AA@
	push	0
	mov	DWORD PTR [edi], eax
	call	_strtok

; 573  : 			Temp->Pos = Find_Object_By_Preset(2,create);

	push	eax
	push	2
	call	?Find_Object_By_Preset@@YAPAEHPBD@Z	; Find_Object_By_Preset
	add	esp, 24					; 00000018H

; 574  : 			Naval_Creation_Pos_Per_Vehicle->Add(Temp);

	lea	ecx, DWORD PTR _Temp$6779[esp+216]
	mov	DWORD PTR [edi+4], eax
	push	ecx
	mov	ecx, DWORD PTR [ebx+4]
	call	?Add@?$SimpleDynVecClass@PAUCreationPos@@@@QAEHAAPAUCreationPos@@@Z ; SimpleDynVecClass<CreationPos *>::Add

; 575  : 			p = strtok(0,"=");

	push	OFFSET FLAT:??_C@_01NEMOKFLO@?$DN?$AA@
	push	0
	call	_strtok
	mov	esi, eax
	add	esp, 8
	test	esi, esi
	jne	SHORT $L6777
$L6778:

; 576  : 		}
; 577  : 		delete Tokenz;

	push	ebp
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
	xor	edi, edi
$L6766:

; 578  : 	}
; 579  : 	if (!NavalVehicles)

	mov	eax, DWORD PTR _NavalVehicles$[esp+212]
	cmp	eax, edi
	jne	$L6784

; 580  : 	{
; 581  : 		PurchaseSettingsDefClass *p = Get_Purchase_Definition(VEHICLES,PTTEAM(Team));

	mov	ebp, DWORD PTR [ebx+16]
	xor	edx, edx
	cmp	ebp, edi
	sete	dl
	push	edx
	push	1
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition
	add	esp, 8

; 582  : 		unsigned int j;
; 583  : 		for (j = 0; j < 10; j++)

	xor	ebp, ebp
	lea	esi, DWORD PTR [eax+76]
	npad	6
$L6787:

; 584  : 		{
; 585  : 			if (p->presetids[j])

	cmp	DWORD PTR [esi], edi
	je	$L6788

; 586  : 			{
; 587  : 				UnitInfo *Temp = new UnitInfo(VEHICLES,j,p->presetids[j],p->costs[j],p->stringids[j]);

	push	32					; 00000020H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
	cmp	eax, edi
	je	SHORT $L9505
	mov	edi, DWORD PTR [esi]
	mov	ecx, DWORD PTR [esi+40]
	mov	edx, DWORD PTR [esi-40]
	mov	DWORD PTR [eax+8], edi
	mov	DWORD PTR [eax], 1
	mov	DWORD PTR [eax+4], ebp
	mov	DWORD PTR [eax+12], edx
	mov	DWORD PTR [eax+16], ecx
	mov	BYTE PTR [eax+28], 0
	mov	edi, eax
	jmp	SHORT $L9506
$L9505:
	xor	edi, edi
$L9506:

; 588  : 				if (Is_In_Vector(Support,p->presetids[j]))

	mov	ecx, DWORD PTR _Support$[esp+228]
	xor	eax, eax
	test	ecx, ecx
	mov	DWORD PTR _Temp$6791[esp+216], edi
	jle	SHORT $L6796
	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR _Support$[esp+220]
	npad	2
$L9786:
	cmp	DWORD PTR [edx+eax*4], ecx
	je	SHORT $L9778
	mov	ebx, DWORD PTR _Support$[esp+228]
	inc	eax
	cmp	eax, ebx
	jl	SHORT $L9786

; 673  : 				}
; 674  : 				if (Is_In_Vector(NavalIDs,p->presetids[j]))

	jmp	SHORT $L6796
$L9778:

; 589  : 				{
; 590  : 					Temp->Support = true;

	mov	BYTE PTR [edi+28], 1
$L6796:

; 591  : 				}
; 592  : 				if (Get_Vehicle_Definition_Mode_By_ID(p->presetids[j]) == FLYING)

	mov	eax, DWORD PTR [esi]
	push	eax
	call	?Get_Vehicle_Definition_Mode_By_ID@@YAIK@Z ; Get_Vehicle_Definition_Mode_By_ID
	xor	ecx, ecx
	add	esp, 4
	cmp	eax, 3

; 593  : 				{
; 594  : 					Temp->VehType = VEHTYPE_FLYING;
; 595  : 				}
; 596  : 				else
; 597  : 				{
; 598  : 					Temp->VehType = VEHTYPE_GROUND;
; 599  : 				}
; 600  : 				Units->Add(Temp);

	mov	eax, DWORD PTR _this$[esp+216]
	sete	cl
	lea	edx, DWORD PTR _Temp$6791[esp+216]
	push	edx
	inc	ecx
	mov	DWORD PTR [edi+20], ecx
	mov	ecx, DWORD PTR [eax]
	call	?Add@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHAAPAUUnitInfo@@@Z ; SimpleDynVecClass<UnitInfo *>::Add
	mov	ebx, DWORD PTR _this$[esp+216]
	xor	edi, edi
$L6788:
	inc	ebp
	add	esi, 4
	cmp	ebp, 10					; 0000000aH
	jb	$L6787

; 601  : 			}
; 602  : 		}
; 603  : 		p = Get_Purchase_Definition(SECRETVEHICLES,PTTEAM(Team));

	mov	ebp, DWORD PTR [ebx+16]
	xor	ecx, ecx
	cmp	ebp, edi
	sete	cl
	push	ecx
	push	4
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition
	add	esp, 8

; 604  : 		for (j = 0; j < 10; j++)

	xor	ebp, ebp
	lea	esi, DWORD PTR [eax+76]
$L6799:

; 605  : 		{
; 606  : 			if (p->presetids[j])

	cmp	DWORD PTR [esi], edi
	je	$L6800

; 607  : 			{
; 608  : 				UnitInfo *Temp = new UnitInfo(SECRETVEHICLES,j,p->presetids[j],p->costs[j],p->stringids[j]);

	push	32					; 00000020H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
	cmp	eax, edi
	je	SHORT $L9509
	mov	edi, DWORD PTR [esi]
	mov	ecx, DWORD PTR [esi+40]
	mov	edx, DWORD PTR [esi-40]
	mov	DWORD PTR [eax+8], edi
	mov	DWORD PTR [eax], 4
	mov	DWORD PTR [eax+4], ebp
	mov	DWORD PTR [eax+12], edx
	mov	DWORD PTR [eax+16], ecx
	mov	BYTE PTR [eax+28], 0
	mov	edi, eax
	jmp	SHORT $L9510
$L9509:
	xor	edi, edi
$L9510:

; 609  : 				if (Is_In_Vector(Support,p->presetids[j]))

	mov	ecx, DWORD PTR _Support$[esp+228]
	xor	eax, eax
	test	ecx, ecx
	mov	DWORD PTR _Temp$6803[esp+216], edi
	jle	SHORT $L6808
	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR _Support$[esp+220]
$L9785:
	cmp	DWORD PTR [edx+eax*4], ecx
	je	SHORT $L9779
	mov	ebx, DWORD PTR _Support$[esp+228]
	inc	eax
	cmp	eax, ebx
	jl	SHORT $L9785

; 673  : 				}
; 674  : 				if (Is_In_Vector(NavalIDs,p->presetids[j]))

	jmp	SHORT $L6808
$L9779:

; 610  : 				{
; 611  : 					Temp->Support = true;

	mov	BYTE PTR [edi+28], 1
$L6808:

; 612  : 				}
; 613  : 				if (Get_Vehicle_Definition_Mode_By_ID(p->presetids[j]) == FLYING)

	mov	edx, DWORD PTR [esi]
	push	edx
	call	?Get_Vehicle_Definition_Mode_By_ID@@YAIK@Z ; Get_Vehicle_Definition_Mode_By_ID
	xor	ecx, ecx
	add	esp, 4
	cmp	eax, 3

; 614  : 				{
; 615  : 					Temp->VehType = VEHTYPE_FLYING;
; 616  : 				}
; 617  : 				else
; 618  : 				{
; 619  : 					Temp->VehType = VEHTYPE_GROUND;
; 620  : 				}
; 621  : 				Units->Add(Temp);

	mov	eax, DWORD PTR _this$[esp+216]
	sete	cl
	lea	edx, DWORD PTR _Temp$6803[esp+216]
	push	edx
	inc	ecx
	mov	DWORD PTR [edi+20], ecx
	mov	ecx, DWORD PTR [eax]
	call	?Add@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHAAPAUUnitInfo@@@Z ; SimpleDynVecClass<UnitInfo *>::Add
	xor	edi, edi
$L6800:
	inc	ebp
	add	esi, 4
	cmp	ebp, 10					; 0000000aH
	jb	$L6799

; 622  : 			}
; 623  : 		}
; 624  : 	}
; 625  : 	else

	jmp	$L9717
$L6784:

; 626  : 	{
; 627  : 		Using_Naval = true;

	mov	BYTE PTR [ebx+36], 1

; 628  : 		SimpleDynVecClass<unsigned int> NavalIDs(0);

	xor	ebx, ebx
	mov	DWORD PTR _NavalIDs$6812[esp+220], ebx
	mov	DWORD PTR _NavalIDs$6812[esp+224], ebx
	mov	DWORD PTR _NavalIDs$6812[esp+216], OFFSET FLAT:??_7?$SimpleDynVecClass@I@@6B@
	mov	DWORD PTR _NavalIDs$6812[esp+228], ebx

; 629  : 		char *Tokens = newstr(NavalVehicles);

	push	eax
	mov	BYTE PTR __$EHRec$[esp+228], 1
	call	?newstr@@YAPADPBD@Z			; newstr
	mov	edi, eax

; 630  : 		char *Tok = strtok(Tokens,";");

	push	OFFSET FLAT:??_C@_01ICJEACDI@?$DL?$AA@
	push	edi
	call	_strtok
	add	esp, 12					; 0000000cH

; 631  : 		while (Tok)

	cmp	eax, ebx
	je	SHORT $L6817
$L6816:

; 632  : 		{
; 633  : 			unsigned int ID = Get_Definition_ID(Tok);

	push	eax
	call	?Get_Definition_ID@@YAKPBD@Z		; Get_Definition_ID

; 634  : 			NavalIDs.Add(ID);

	mov	ecx, DWORD PTR _NavalIDs$6812[esp+228]
	mov	esi, eax
	add	esp, 4
	xor	eax, eax
	cmp	ecx, ebx
	jle	SHORT $L9609
	mov	edx, DWORD PTR _NavalIDs$6812[esp+220]
	npad	6
$L9607:
	cmp	DWORD PTR [edx+eax*4], ebx
	je	$L9757
	inc	eax
	cmp	eax, ecx
	jl	SHORT $L9607
$L9609:
	mov	edx, DWORD PTR _NavalIDs$6812[esp+216]
	inc	ecx
	push	ecx
	lea	ecx, DWORD PTR _NavalIDs$6812[esp+220]
	call	DWORD PTR [edx+8]
	mov	eax, DWORD PTR _NavalIDs$6812[esp+224]
	mov	ecx, DWORD PTR _NavalIDs$6812[esp+220]
	mov	DWORD PTR [ecx+eax*4-4], esi
$L9792:
	mov	eax, DWORD PTR _NavalIDs$6812[esp+228]
	inc	eax

; 635  : 			Tok = strtok(0,";");

	push	OFFSET FLAT:??_C@_01ICJEACDI@?$DL?$AA@
	push	ebx
	mov	DWORD PTR _NavalIDs$6812[esp+236], eax
	call	_strtok
	add	esp, 8
	cmp	eax, ebx
	jne	SHORT $L6816
$L6817:

; 636  : 		}
; 637  : 		delete Tokens;

	push	edi
	call	??3@YAXPAX@Z				; operator delete

; 638  : 		PurchaseSettingsDefClass *p = Get_Purchase_Definition(VEHICLES,PTTEAM(Team));

	mov	eax, DWORD PTR _this$[esp+220]
	mov	edi, DWORD PTR [eax+16]
	xor	edx, edx
	test	edi, edi
	sete	dl
	push	edx
	push	1
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition
	add	esp, 12					; 0000000cH

; 639  : 		unsigned int j = 0;
; 640  : 		for (j = 0; j < 10; j++)

	xor	ebx, ebx
	lea	esi, DWORD PTR [eax+76]
$L9788:

; 641  : 		{
; 642  : 			if (p->presetids[j])

	cmp	DWORD PTR [esi], 0
	je	$L6823

; 643  : 			{
; 644  : 				UnitInfo *Temp = new UnitInfo(VEHICLES,j,p->presetids[j],p->costs[j],p->stringids[j]);

	push	32					; 00000020H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
	test	eax, eax
	je	SHORT $L9514
	mov	edi, DWORD PTR [esi]
	mov	ecx, DWORD PTR [esi+40]
	mov	edx, DWORD PTR [esi-40]
	mov	DWORD PTR [eax+8], edi
	mov	DWORD PTR [eax], 1
	mov	DWORD PTR [eax+4], ebx
	mov	DWORD PTR [eax+12], edx
	mov	DWORD PTR [eax+16], ecx
	mov	BYTE PTR [eax+28], 0
	mov	edi, eax
	jmp	SHORT $L9515
$L9757:

; 634  : 			NavalIDs.Add(ID);

	mov	DWORD PTR [edx+eax*4], esi
	jmp	SHORT $L9792
$L9514:

; 643  : 			{
; 644  : 				UnitInfo *Temp = new UnitInfo(VEHICLES,j,p->presetids[j],p->costs[j],p->stringids[j]);

	xor	edi, edi
$L9515:

; 645  : 				if (Is_In_Vector(Support,p->presetids[j]))

	mov	ebp, DWORD PTR _Support$[esp+228]
	xor	eax, eax
	test	ebp, ebp
	mov	DWORD PTR _Temp$6826[esp+216], edi
	jle	SHORT $L6831
	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR _Support$[esp+220]
	npad	6
$L9632:
	cmp	DWORD PTR [edx+eax*4], ecx
	je	SHORT $L9780
	inc	eax
	cmp	eax, ebp
	jl	SHORT $L9632

; 673  : 				}
; 674  : 				if (Is_In_Vector(NavalIDs,p->presetids[j]))

	jmp	SHORT $L6831
$L9780:

; 646  : 				{
; 647  : 					Temp->Support = true;

	mov	BYTE PTR [edi+28], 1
$L6831:

; 648  : 				}
; 649  : 				if (Is_In_Vector(NavalIDs,p->presetids[j]))

	mov	ebp, DWORD PTR _NavalIDs$6812[esp+228]
	xor	eax, eax
	test	ebp, ebp
	jle	SHORT $L6832
	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR _NavalIDs$6812[esp+220]
$L9652:
	cmp	DWORD PTR [edx+eax*4], ecx
	je	$L9781
	inc	eax
	cmp	eax, ebp
	jl	SHORT $L9652
$L6832:

; 652  : 				}
; 653  : 				else if (Get_Vehicle_Definition_Mode_By_ID(p->presetids[j]) == FLYING)

	mov	ecx, DWORD PTR [esi]
	push	ecx
	call	?Get_Vehicle_Definition_Mode_By_ID@@YAIK@Z ; Get_Vehicle_Definition_Mode_By_ID
	xor	edx, edx
	add	esp, 4
	cmp	eax, 3
	sete	dl
	inc	edx
	mov	DWORD PTR [edi+20], edx
$L6834:

; 654  : 				{
; 655  : 					Temp->VehType = VEHTYPE_FLYING;
; 656  : 				}
; 657  : 				else
; 658  : 				{
; 659  : 					Temp->VehType = VEHTYPE_GROUND;
; 660  : 				}
; 661  : 				Units->Add(Temp);

	mov	ecx, DWORD PTR _this$[esp+216]
	mov	ecx, DWORD PTR [ecx]
	lea	eax, DWORD PTR _Temp$6826[esp+216]
	push	eax
	call	?Add@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHAAPAUUnitInfo@@@Z ; SimpleDynVecClass<UnitInfo *>::Add
$L6823:
	inc	ebx
	add	esi, 4
	cmp	ebx, 10					; 0000000aH
	jb	$L9788

; 662  : 			}
; 663  : 		}
; 664  : 		p = Get_Purchase_Definition(SECRETVEHICLES,PTTEAM(Team));

	mov	eax, DWORD PTR _this$[esp+216]
	mov	edi, DWORD PTR [eax+16]
	xor	edx, edx
	test	edi, edi
	sete	dl
	push	edx
	push	4
	call	?Get_Purchase_Definition@@YAPAVPurchaseSettingsDefClass@@KK@Z ; Get_Purchase_Definition
	add	esp, 8

; 665  : 		for (j = 0; j < 10; j++)

	xor	ebx, ebx
	lea	esi, DWORD PTR [eax+76]
$L9789:

; 666  : 		{
; 667  : 			if (p->presetids[j])

	cmp	DWORD PTR [esi], 0
	je	$L6837

; 668  : 			{
; 669  : 				UnitInfo *Temp = new UnitInfo(SECRETVEHICLES,j,p->presetids[j],p->costs[j],p->stringids[j]);

	push	32					; 00000020H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
	test	eax, eax
	je	SHORT $L9518
	mov	edi, DWORD PTR [esi]
	mov	ecx, DWORD PTR [esi+40]
	mov	edx, DWORD PTR [esi-40]
	mov	DWORD PTR [eax+8], edi
	mov	DWORD PTR [eax], 4
	mov	DWORD PTR [eax+4], ebx
	mov	DWORD PTR [eax+12], edx
	mov	DWORD PTR [eax+16], ecx
	mov	BYTE PTR [eax+28], 0
	mov	edi, eax
	jmp	SHORT $L9519
$L9781:

; 650  : 				{
; 651  : 					Temp->VehType = VEHTYPE_NAVAL;

	mov	DWORD PTR [edi+20], 3

; 652  : 				}
; 653  : 				else if (Get_Vehicle_Definition_Mode_By_ID(p->presetids[j]) == FLYING)

	jmp	SHORT $L6834
$L9518:

; 668  : 			{
; 669  : 				UnitInfo *Temp = new UnitInfo(SECRETVEHICLES,j,p->presetids[j],p->costs[j],p->stringids[j]);

	xor	edi, edi
$L9519:

; 670  : 				if (Is_In_Vector(Support,p->presetids[j]))

	mov	ebp, DWORD PTR _Support$[esp+228]
	xor	eax, eax
	test	ebp, ebp
	mov	DWORD PTR _Temp$6840[esp+216], edi
	jle	SHORT $L6845
	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR _Support$[esp+220]
$L9678:
	cmp	DWORD PTR [edx+eax*4], ecx
	je	SHORT $L9782
	inc	eax
	cmp	eax, ebp
	jl	SHORT $L9678

; 673  : 				}
; 674  : 				if (Is_In_Vector(NavalIDs,p->presetids[j]))

	jmp	SHORT $L6845
$L9782:

; 671  : 				{
; 672  : 					Temp->Support = true;

	mov	BYTE PTR [edi+28], 1
$L6845:

; 673  : 				}
; 674  : 				if (Is_In_Vector(NavalIDs,p->presetids[j]))

	mov	ebp, DWORD PTR _NavalIDs$6812[esp+228]
	xor	eax, eax
	test	ebp, ebp
	jle	SHORT $L6846
	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR _NavalIDs$6812[esp+220]
	npad	8
$L9698:
	cmp	DWORD PTR [edx+eax*4], ecx
	je	$L9783
	inc	eax
	cmp	eax, ebp
	jl	SHORT $L9698
$L6846:

; 677  : 				}
; 678  : 				else if (Get_Vehicle_Definition_Mode_By_ID(p->presetids[j]) == FLYING)

	mov	ecx, DWORD PTR [esi]
	push	ecx
	call	?Get_Vehicle_Definition_Mode_By_ID@@YAIK@Z ; Get_Vehicle_Definition_Mode_By_ID
	xor	edx, edx
	add	esp, 4
	cmp	eax, 3
	sete	dl
	inc	edx
	mov	DWORD PTR [edi+20], edx
$L6848:

; 679  : 				{
; 680  : 					Temp->VehType = VEHTYPE_FLYING;
; 681  : 				}
; 682  : 				else
; 683  : 				{
; 684  : 					Temp->VehType = VEHTYPE_GROUND;
; 685  : 				}
; 686  : 				Units->Add(Temp);

	mov	ecx, DWORD PTR _this$[esp+216]
	mov	ecx, DWORD PTR [ecx]
	lea	eax, DWORD PTR _Temp$6840[esp+216]
	push	eax
	call	?Add@?$SimpleDynVecClass@PAUUnitInfo@@@@QAEHAAPAUUnitInfo@@@Z ; SimpleDynVecClass<UnitInfo *>::Add
$L6837:
	inc	ebx
	add	esi, 4
	cmp	ebx, 10					; 0000000aH
	jb	$L9789

; 687  : 			}
; 688  : 		}
; 689  : 	}

	mov	DWORD PTR _NavalIDs$6812[esp+216], OFFSET FLAT:??_7?$SimpleDynVecClass@I@@6B@
	mov	eax, DWORD PTR _NavalIDs$6812[esp+220]
	test	eax, eax
	mov	BYTE PTR __$EHRec$[esp+224], 2
	je	SHORT $L9713
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
	xor	eax, eax
	mov	DWORD PTR _NavalIDs$6812[esp+220], eax
$L9713:
	test	eax, eax
	mov	BYTE PTR __$EHRec$[esp+224], 0
	mov	DWORD PTR _NavalIDs$6812[esp+216], OFFSET FLAT:??_7?$SimpleVecClass@I@@6B@
	je	SHORT $L9717
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L9717:

; 690  : 	bool Temp = Remove_on_Death;

	mov	ebp, DWORD PTR _this$[esp+216]

; 691  : 	Remove_on_Death = true;
; 692  : 	if (!Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Vehicle_Factory",0))

	mov	edx, DWORD PTR [ebp+16]
	mov	bl, BYTE PTR [ebp+38]
	push	0
	push	OFFSET FLAT:??_C@_0BO@IDCNIDOL@MDB_ExpVehFac_Vehicle_Factory?$AA@
	push	-1
	push	edx
	mov	BYTE PTR [ebp+38], 1
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script
	add	esp, 16					; 00000010H
	test	eax, eax
	jne	SHORT $L6851

; 693  : 	{
; 694  : 		Disable_Ground();

	mov	ecx, ebp
	call	?Disable_Ground@ExpVehFacClass@@QAEXXZ	; ExpVehFacClass::Disable_Ground
$L6851:

; 695  : 	}
; 696  : 	if (!Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Helipad",0))

	mov	eax, DWORD PTR [ebp+16]
	push	0
	push	OFFSET FLAT:??_C@_0BG@KKJHDMPD@MDB_ExpVehFac_Helipad?$AA@
	push	-1
	push	eax
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script
	add	esp, 16					; 00000010H
	test	eax, eax
	jne	SHORT $L6853

; 697  : 	{
; 698  : 		Disable_Flying();

	mov	ecx, ebp
	call	?Disable_Flying@ExpVehFacClass@@QAEXXZ	; ExpVehFacClass::Disable_Flying
$L6853:

; 699  : 	}
; 700  : 	if (!Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Naval",0))

	mov	ecx, DWORD PTR [ebp+16]
	push	0
	push	OFFSET FLAT:??_C@_0BE@GMHHGOOM@MDB_ExpVehFac_Naval?$AA@
	push	-1
	push	ecx
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script
	add	esp, 16					; 00000010H
	test	eax, eax
	jne	SHORT $L6855

; 701  : 	{
; 702  : 		Disable_Naval();

	mov	ecx, ebp
	call	?Disable_Naval@ExpVehFacClass@@QAEXXZ	; ExpVehFacClass::Disable_Naval
$L6855:

; 703  : 	}
; 704  : 	Remove_on_Death = Temp;
; 705  : 	char File[20];
; 706  : 	sprintf(File,"ExpVehFac_%u.cfg",Team);

	mov	edx, DWORD PTR [ebp+16]
	push	edx
	lea	eax, DWORD PTR _File$[esp+220]
	push	OFFSET FLAT:??_C@_0BB@MJEEGLIK@ExpVehFac_?$CFu?4cfg?$AA@
	push	eax
	mov	BYTE PTR [ebp+38], bl
	call	_sprintf

; 707  : 	int FID = Commands->Text_File_Open(File);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _File$[esp+228]
	push	ecx
	call	DWORD PTR [edx+716]
	mov	ebx, eax
	add	esp, 16					; 00000010H

; 708  : 	if (!FID)

	test	ebx, ebx
	jne	SHORT $L9777

; 709  : 	{
; 710  : 		FID = Commands->Text_File_Open("ExpVehFac.cfg");

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	OFFSET FLAT:??_C@_0O@BCEKLIOD@ExpVehFac?4cfg?$AA@
	call	DWORD PTR [eax+716]
	mov	ebx, eax
	add	esp, 4

; 711  : 	}
; 712  : 	if (FID)

	test	ebx, ebx
	je	$L6862
$L9777:

; 713  : 	{
; 714  : 		char Data[128];
; 715  : 		while (Commands->Text_File_Get_String(FID,Data,128))

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	128					; 00000080H
	lea	ecx, DWORD PTR _Data$6863[esp+220]
	push	ecx
	push	ebx
	call	DWORD PTR [edx+720]
	add	esp, 12					; 0000000cH
	test	al, al
	je	$L6866
$L6865:

; 716  : 		{
; 717  : 			if (Data[0] != ';')

	cmp	BYTE PTR _Data$6863[esp+216], 59	; 0000003bH
	je	$L9787

; 718  : 			{
; 719  : 				char *First = strtok(Data,"=");

	lea	eax, DWORD PTR _Data$6863[esp+216]
	push	OFFSET FLAT:??_C@_01NEMOKFLO@?$DN?$AA@
	push	eax
	call	_strtok

; 720  : 				unsigned int Second = (unsigned int)atoi(strtok(0,"="));

	push	OFFSET FLAT:??_C@_01NEMOKFLO@?$DN?$AA@
	push	0
	mov	esi, eax
	call	_strtok
	push	eax
	call	_atoi

; 721  : 				if (!stricmp(First,"Ground_Limit"))

	push	OFFSET FLAT:??_C@_0N@BHHEMMEG@Ground_Limit?$AA@
	push	esi
	mov	edi, eax
	call	_stricmp
	add	esp, 28					; 0000001cH
	test	eax, eax
	jne	SHORT $L6871

; 722  : 				{
; 723  : 					Ground_Limit = Second;

	mov	DWORD PTR [ebp+40], edi

; 724  : 				}
; 725  : 				else if (!stricmp(First,"Flying_Limit"))

	jmp	SHORT $L9787
$L9783:

; 675  : 				{
; 676  : 					Temp->VehType = VEHTYPE_NAVAL;

	mov	DWORD PTR [edi+20], 3

; 677  : 				}
; 678  : 				else if (Get_Vehicle_Definition_Mode_By_ID(p->presetids[j]) == FLYING)

	jmp	$L6848
$L6871:

; 724  : 				}
; 725  : 				else if (!stricmp(First,"Flying_Limit"))

	push	OFFSET FLAT:??_C@_0N@NKJFEDCM@Flying_Limit?$AA@
	push	esi
	call	_stricmp
	add	esp, 8
	test	eax, eax
	jne	SHORT $L6874

; 726  : 				{
; 727  : 					Flying_Limit = Second;

	mov	DWORD PTR [ebp+44], edi

; 728  : 				}
; 729  : 				else if (!stricmp(First,"Naval_Limit"))

	jmp	SHORT $L9787
$L6874:
	push	OFFSET FLAT:??_C@_0M@HBFOELM@Naval_Limit?$AA@
	push	esi
	call	_stricmp
	add	esp, 8
	test	eax, eax
	jne	SHORT $L6877

; 730  : 				{
; 731  : 					Naval_Limit = Second;

	mov	DWORD PTR [ebp+48], edi

; 732  : 				}
; 733  : 				else if (!stricmp(First,"Support_Limit"))

	jmp	SHORT $L9787
$L6877:
	push	OFFSET FLAT:??_C@_0O@CCACHKNM@Support_Limit?$AA@
	push	esi
	call	_stricmp
	add	esp, 8
	test	eax, eax
	jne	SHORT $L9787

; 734  : 				{
; 735  : 					Support_Limit = Second;

	mov	DWORD PTR [ebp+52], edi
$L9787:

; 713  : 	{
; 714  : 		char Data[128];
; 715  : 		while (Commands->Text_File_Get_String(FID,Data,128))

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	128					; 00000080H
	lea	ecx, DWORD PTR _Data$6863[esp+220]
	push	ecx
	push	ebx
	call	DWORD PTR [edx+720]
	add	esp, 12					; 0000000cH
	test	al, al
	jne	$L6865
$L6866:

; 736  : 				}
; 737  : 			}
; 738  : 		}
; 739  : 		unsigned int Limit = Ground_Limit+Flying_Limit+Naval_Limit+Support_Limit+(Find_Refinery(Team)?1:0);

	mov	eax, DWORD PTR [ebp+16]
	push	eax
	call	?Find_Refinery@@YAPAEH@Z		; Find_Refinery
	mov	edi, DWORD PTR [ebp+44]
	mov	edx, DWORD PTR [ebp+48]
	mov	ecx, DWORD PTR [ebp+40]
	mov	esi, eax
	mov	eax, DWORD PTR [ebp+52]
	add	esp, 4
	neg	esi
	sbb	esi, esi
	neg	esi
	add	esi, eax
	add	esi, edi
	add	esi, edx
	add	esi, ecx

; 740  : 		if (Limit > 1 && Limit > Get_Vehicle_Limit())

	cmp	esi, 1
	jbe	SHORT $L6883
	call	DWORD PTR ?Get_Vehicle_Limit@@3P6AKXZA	; Get_Vehicle_Limit
	cmp	esi, eax
	jbe	SHORT $L6883

; 741  : 		{
; 742  : 			Set_Vehicle_Limit(Limit);

	push	esi
	call	DWORD PTR ?Set_Vehicle_Limit@@3P6AXI@ZA	; Set_Vehicle_Limit
	add	esp, 4
$L6883:

; 743  : 		}
; 744  : 		Commands->Text_File_Close(FID);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	call	DWORD PTR [ecx+724]
	add	esp, 4
$L6862:

; 745  : 	}
; 746  : 	PHookID = AddVehiclePurchaseHook(Purchase_Hook,"");

	push	OFFSET FLAT:??_C@_00CNPNBAHC@?$AA@
	push	OFFSET FLAT:?Purchase_Hook@ExpVehFacClass@@SAHPAVBaseControllerClass@@PAEIIPBD@Z ; ExpVehFacClass::Purchase_Hook
	call	DWORD PTR ?AddVehiclePurchaseHook@@3P6AHP6AHPAVBaseControllerClass@@PAEIIPBD@Z2@ZA ; AddVehiclePurchaseHook

; 747  : 	OHookStruct = new ObjectCreateHookStruct;

	push	8
	mov	DWORD PTR [ebp+20], eax
	call	??2@YAPAXI@Z				; operator new
	mov	DWORD PTR [ebp+28], eax

; 748  : 	OHookStruct->hook = Object_Hook;

	mov	DWORD PTR [eax], OFFSET FLAT:?Object_Hook@ExpVehFacClass@@SAXPAXPAE@Z ; ExpVehFacClass::Object_Hook

; 749  : 	OHookStruct->data = 0;

	mov	edx, DWORD PTR [ebp+28]
	mov	DWORD PTR [edx+4], 0

; 750  : 	OHookID = AddObjectCreateHook(OHookStruct);

	mov	eax, DWORD PTR [ebp+28]
	push	eax
	call	DWORD PTR ?AddObjectCreateHook@@3P6AHPAUObjectCreateHookStruct@@@ZA ; AddObjectCreateHook

; 751  : 	Script = script;

	mov	ecx, DWORD PTR _script$[esp+228]
	add	esp, 16					; 00000010H
	mov	DWORD PTR [ebp+24], eax
	mov	DWORD PTR [ebp+32], ecx

; 752  : 	Loaded = true;

	mov	BYTE PTR [ebp+107], 1

; 753  : }

	mov	DWORD PTR _Support$[esp+216], OFFSET FLAT:??_7?$SimpleDynVecClass@I@@6B@
	mov	eax, DWORD PTR _Support$[esp+220]
	test	eax, eax
	pop	edi
	pop	esi
	pop	ebp
	mov	DWORD PTR __$EHRec$[esp+212], 3
	pop	ebx
	je	SHORT $L9730
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
	xor	eax, eax
	mov	DWORD PTR _Support$[esp+204], eax
$L9730:
	test	eax, eax
	mov	DWORD PTR __$EHRec$[esp+208], -1
	mov	DWORD PTR _Support$[esp+200], OFFSET FLAT:??_7?$SimpleVecClass@I@@6B@
	je	SHORT $L9734
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L9734:
	mov	ecx, DWORD PTR __$EHRec$[esp+200]
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 200				; 000000c8H
	ret	16					; 00000010H
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9521:
	lea	ecx, DWORD PTR _Support$[ebp]
	jmp	??1?$SimpleDynVecClass@I@@UAE@XZ	; SimpleDynVecClass<unsigned int>::~SimpleDynVecClass<unsigned int>
$L9524:
	lea	ecx, DWORD PTR _NavalIDs$6812[ebp]
	jmp	??1?$SimpleDynVecClass@I@@UAE@XZ	; SimpleDynVecClass<unsigned int>::~SimpleDynVecClass<unsigned int>
$L9705:
	lea	ecx, DWORD PTR _NavalIDs$6812[ebp]
	jmp	??1?$SimpleVecClass@I@@UAE@XZ		; SimpleVecClass<unsigned int>::~SimpleVecClass<unsigned int>
$L9722:
	lea	ecx, DWORD PTR _Support$[ebp]
	jmp	??1?$SimpleVecClass@I@@UAE@XZ		; SimpleVecClass<unsigned int>::~SimpleVecClass<unsigned int>
__ehhandler$?Load@ExpVehFacClass@@QAEXPBD0PAE0@Z:
	mov	eax, OFFSET FLAT:$T9738
	jmp	___CxxFrameHandler
text$x	ENDS
?Load@ExpVehFacClass@@QAEXPBD0PAE0@Z ENDP		; ExpVehFacClass::Load
PUBLIC	??_C@_0BB@GKAKOOPG@Support_Vehicles?$AA@	; `string'
PUBLIC	??_C@_0P@HBCKFHDF@Landing_Preset?$AA@		; `string'
PUBLIC	??_C@_0L@CMKBOGCN@Build_Time?$AA@		; `string'
PUBLIC	??_C@_0BC@DOEJEHKP@Flying_Build_Time?$AA@	; `string'
PUBLIC	??_C@_0BA@LGDAPFNH@Remove_on_Death?$AA@		; `string'
PUBLIC	??_C@_07FINOONBP@Sidebar?$AA@			; `string'
EXTRN	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z:NEAR	; ScriptImpClass::Get_Parameter
EXTRN	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z:NEAR ; ScriptImpClass::Get_Float_Parameter
EXTRN	?Get_All_Objects_By_Preset@@YA?AV?$SimpleDynVecClass@PAE@@HPBD@Z:NEAR ; Get_All_Objects_By_Preset
;	COMDAT xdata$x
; File c:\documents and settings\owner\desktop\ssctf 1.3\engine.h
xdata$x	SEGMENT
$T9819	DD	0ffffffffH
	DD	FLAT:$L9804
	DD	0ffffffffH
	DD	FLAT:$L9805
$T9816	DD	019930520H
	DD	02H
	DD	FLAT:$T9819
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_C@_0BB@GKAKOOPG@Support_Vehicles?$AA@
CONST	SEGMENT
??_C@_0BB@GKAKOOPG@Support_Vehicles?$AA@ DB 'Support_Vehicles', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0P@HBCKFHDF@Landing_Preset?$AA@
CONST	SEGMENT
??_C@_0P@HBCKFHDF@Landing_Preset?$AA@ DB 'Landing_Preset', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0L@CMKBOGCN@Build_Time?$AA@
CONST	SEGMENT
??_C@_0L@CMKBOGCN@Build_Time?$AA@ DB 'Build_Time', 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_0BC@DOEJEHKP@Flying_Build_Time?$AA@
CONST	SEGMENT
??_C@_0BC@DOEJEHKP@Flying_Build_Time?$AA@ DB 'Flying_Build_Time', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BA@LGDAPFNH@Remove_on_Death?$AA@
CONST	SEGMENT
??_C@_0BA@LGDAPFNH@Remove_on_Death?$AA@ DB 'Remove_on_Death', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_07FINOONBP@Sidebar?$AA@
CONST	SEGMENT
??_C@_07FINOONBP@Sidebar?$AA@ DB 'Sidebar', 00H		; `string'
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\mdbevf.cpp
CONST	ENDS
;	COMDAT ?Created@MDB_ExpVehFac_Helipad@@EAEXPAE@Z
_TEXT	SEGMENT
$T9803 = -28						; size = 16
__$EHRec$ = -12						; size = 12
$T9800 = 8						; size = 4
_obj$ = 8						; size = 4
?Created@MDB_ExpVehFac_Helipad@@EAEXPAE@Z PROC NEAR	; MDB_ExpVehFac_Helipad::Created, COMDAT
; _this$ = ecx

; 975  : {

	mov	eax, DWORD PTR fs:__except_list
	push	-1
	push	__ehhandler$?Created@MDB_ExpVehFac_Helipad@@EAEXPAE@Z
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	sub	esp, 16					; 00000010H
	push	ebp
	push	esi
	push	edi

; 976  : 	int Team = Get_Object_Type(obj);

	mov	edi, DWORD PTR _obj$[esp+36]
	push	edi
	mov	ebp, ecx
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	mov	esi, eax

; 977  : 	if (!ExpVehFac[Team])

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	add	esp, 4
	test	eax, eax
	jne	SHORT $L9817

; 978  : 	{
; 979  : 		ExpVehFac[Team] = new ExpVehFacClass(Team);

	push	112					; 00000070H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
	mov	DWORD PTR $T9800[esp+36], eax
	test	eax, eax
	mov	DWORD PTR __$EHRec$[esp+48], 0
	je	SHORT $L9801
	push	esi
	mov	ecx, eax
	call	??0ExpVehFacClass@@QAE@I@Z		; ExpVehFacClass::ExpVehFacClass
	jmp	SHORT $L9802
$L9801:
	xor	eax, eax
$L9802:
	mov	DWORD PTR __$EHRec$[esp+48], -1
	mov	DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4], eax
$L9817:

; 980  : 	}
; 981  : 	if (!ExpVehFac[Team]->Loaded && !Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Naval",0))

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	cl, BYTE PTR [eax+107]
	test	cl, cl
	jne	SHORT $L7005
	push	0
	push	OFFSET FLAT:??_C@_0BE@GMHHGOOM@MDB_ExpVehFac_Naval?$AA@
	push	-1
	push	esi
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script
	add	esp, 16					; 00000010H
	test	eax, eax
	jne	SHORT $L7005

; 982  : 	{
; 983  : 		ExpVehFac[Team]->Load(0,0,obj,Get_Parameter("Support_Vehicles"));

	push	OFFSET FLAT:??_C@_0BB@GKAKOOPG@Support_Vehicles?$AA@
	mov	ecx, ebp
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	push	eax
	push	edi
	push	0
	push	0
	call	?Load@ExpVehFacClass@@QAEXPBD0PAE0@Z	; ExpVehFacClass::Load

; 984  : 		Set_Can_Generate_Vehicles(Team,true);

	push	1
	push	esi
	call	?Set_Can_Generate_Vehicles@@YAXH_N@Z	; Set_Can_Generate_Vehicles
	add	esp, 8
$L7005:

; 985  : 	}
; 986  : 	if (!ExpVehFac[Team]->Flying_Landing_Positions->Count())

	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	edx, DWORD PTR [ecx+76]
	mov	eax, DWORD PTR [edx+12]
	test	eax, eax
	jne	SHORT $L7007
	push	ebx

; 987  : 	{
; 988  : 		(*ExpVehFac[Team]->Flying_Landing_Positions) = Get_All_Objects_By_Preset(2,Get_Parameter("Landing_Preset"));

	push	OFFSET FLAT:??_C@_0P@HBCKFHDF@Landing_Preset?$AA@
	mov	ecx, ebp
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	lea	eax, DWORD PTR $T9803[esp+48]
	push	2
	push	eax
	call	?Get_All_Objects_By_Preset@@YA?AV?$SimpleDynVecClass@PAE@@HPBD@Z ; Get_All_Objects_By_Preset
	add	esp, 12					; 0000000cH
	mov	edi, eax
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	ebx, DWORD PTR [ecx+76]
	push	edi
	mov	ecx, ebx
	mov	DWORD PTR __$EHRec$[esp+56], 1
	call	??4?$SimpleVecClass@PAE@@QAEAAV0@ABV0@@Z ; SimpleVecClass<unsigned char *>::operator=
	mov	edx, DWORD PTR [edi+12]
	lea	ecx, DWORD PTR $T9803[esp+44]
	mov	DWORD PTR [ebx+12], edx
	mov	DWORD PTR __$EHRec$[esp+52], -1
	call	??1?$SimpleDynVecClass@PAE@@UAE@XZ	; SimpleDynVecClass<unsigned char *>::~SimpleDynVecClass<unsigned char *>
	pop	ebx
$L7007:

; 989  : 	}
; 990  : 	ExpVehFac[Team]->Flying_Build_Time[0] = Get_Float_Parameter("Build_Time");

	push	OFFSET FLAT:??_C@_0L@CMKBOGCN@Build_Time?$AA@
	mov	ecx, ebp
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]

; 991  : 	ExpVehFac[Team]->Flying_Build_Time[1] = Get_Float_Parameter("Flying_Build_Time");

	push	OFFSET FLAT:??_C@_0BC@DOEJEHKP@Flying_Build_Time?$AA@
	fstp	DWORD PTR [eax+88]
	mov	ecx, ebp
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	fstp	DWORD PTR [ecx+92]

; 992  : 	ExpVehFac[Team]->Remove_on_Death = Get_Int_Parameter("Remove_on_Death");

	push	OFFSET FLAT:??_C@_0BA@LGDAPFNH@Remove_on_Death?$AA@
	mov	ecx, ebp
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	test	eax, eax
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	setne	dl

; 993  : 	ExpVehFac[Team]->Sidebar = Get_Int_Parameter("Sidebar");

	push	OFFSET FLAT:??_C@_07FINOONBP@Sidebar?$AA@
	mov	ecx, ebp
	mov	BYTE PTR [eax+38], dl
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	mov	edx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	test	eax, eax
	setne	cl
	pop	edi
	mov	BYTE PTR [edx+37], cl

; 994  : }

	mov	ecx, DWORD PTR __$EHRec$[esp+36]
	pop	esi
	pop	ebp
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 28					; 0000001cH
	ret	4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9804:
	mov	eax, DWORD PTR $T9800[ebp-4]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
$L9805:
	lea	ecx, DWORD PTR $T9803[ebp]
	jmp	??1?$SimpleDynVecClass@PAE@@UAE@XZ	; SimpleDynVecClass<unsigned char *>::~SimpleDynVecClass<unsigned char *>
__ehhandler$?Created@MDB_ExpVehFac_Helipad@@EAEXPAE@Z:
	mov	eax, OFFSET FLAT:$T9816
	jmp	___CxxFrameHandler
text$x	ENDS
?Created@MDB_ExpVehFac_Helipad@@EAEXPAE@Z ENDP		; MDB_ExpVehFac_Helipad::Created
PUBLIC	??_C@_0BA@BNIFIOJM@Creation_Preset?$AA@		; `string'
PUBLIC	??_C@_0P@EOMMAHKA@Naval_Vehicles?$AA@		; `string'
PUBLIC	??_C@_0BB@OKFAOBNB@Naval_Build_Time?$AA@	; `string'
EXTRN	_strstr:NEAR
;	COMDAT xdata$x
; File c:\documents and settings\owner\desktop\ssctf 1.3\engine.h
xdata$x	SEGMENT
$T9840	DD	0ffffffffH
	DD	FLAT:$L9830
	DD	0ffffffffH
	DD	FLAT:$L9831
$T9838	DD	019930520H
	DD	02H
	DD	FLAT:$T9840
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_C@_0BA@BNIFIOJM@Creation_Preset?$AA@
CONST	SEGMENT
??_C@_0BA@BNIFIOJM@Creation_Preset?$AA@ DB 'Creation_Preset', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0P@EOMMAHKA@Naval_Vehicles?$AA@
CONST	SEGMENT
??_C@_0P@EOMMAHKA@Naval_Vehicles?$AA@ DB 'Naval_Vehicles', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BB@OKFAOBNB@Naval_Build_Time?$AA@
CONST	SEGMENT
??_C@_0BB@OKFAOBNB@Naval_Build_Time?$AA@ DB 'Naval_Build_Time', 00H ; `string'
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\mdbevf.cpp
CONST	ENDS
;	COMDAT ?Created@MDB_ExpVehFac_Naval@@EAEXPAE@Z
_TEXT	SEGMENT
$T9829 = -28						; size = 16
__$EHRec$ = -12						; size = 12
$T9826 = 8						; size = 4
_obj$ = 8						; size = 4
?Created@MDB_ExpVehFac_Naval@@EAEXPAE@Z PROC NEAR	; MDB_ExpVehFac_Naval::Created, COMDAT
; _this$ = ecx

; 1044 : {

	mov	eax, DWORD PTR fs:__except_list
	push	-1
	push	__ehhandler$?Created@MDB_ExpVehFac_Naval@@EAEXPAE@Z
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	sub	esp, 16					; 00000010H
	push	ebx

; 1045 : 	int Team = Get_Object_Type(obj);

	mov	ebx, DWORD PTR _obj$[esp+28]
	push	esi
	push	edi
	push	ebx
	mov	esi, ecx
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	mov	edi, eax

; 1046 : 	if (!ExpVehFac[Team])

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edi*4]
	add	esp, 4
	test	eax, eax
	jne	SHORT $L7050

; 1047 : 	{
; 1048 : 		ExpVehFac[Team] = new ExpVehFacClass(Team);

	push	112					; 00000070H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
	mov	DWORD PTR $T9826[esp+36], eax
	test	eax, eax
	mov	DWORD PTR __$EHRec$[esp+48], 0
	je	SHORT $L9827
	push	edi
	mov	ecx, eax
	call	??0ExpVehFacClass@@QAE@I@Z		; ExpVehFacClass::ExpVehFacClass
	jmp	SHORT $L9828
$L9827:
	xor	eax, eax
$L9828:
	mov	DWORD PTR __$EHRec$[esp+48], -1
	mov	DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edi*4], eax
$L7050:

; 1049 : 	}
; 1050 : 	if (!ExpVehFac[Team]->Loaded)

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edi*4]
	mov	cl, BYTE PTR [eax+107]
	test	cl, cl
	jne	$L7055

; 1051 : 	{
; 1052 : 		if (strstr(Get_Parameter("Creation_Preset"),";"))

	push	OFFSET FLAT:??_C@_01ICJEACDI@?$DL?$AA@
	push	OFFSET FLAT:??_C@_0BA@BNIFIOJM@Creation_Preset?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	_strstr
	add	esp, 8
	test	eax, eax

; 1053 : 		{
; 1054 : 			ExpVehFac[Team]->Load(Get_Parameter("Naval_Vehicles"),Get_Parameter("Creation_Preset"),obj,Get_Parameter("Support_Vehicles"));

	mov	ecx, esi
	je	SHORT $L7056
	push	OFFSET FLAT:??_C@_0BB@GKAKOOPG@Support_Vehicles?$AA@
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	ebx
	push	OFFSET FLAT:??_C@_0BA@BNIFIOJM@Creation_Preset?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	OFFSET FLAT:??_C@_0P@EOMMAHKA@Naval_Vehicles?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edi*4]
	push	eax
	call	?Load@ExpVehFacClass@@QAEXPBD0PAE0@Z	; ExpVehFacClass::Load

; 1055 : 		}
; 1056 : 		else

	jmp	SHORT $L7059
$L7056:
	push	ebp

; 1057 : 		{
; 1058 : 			ExpVehFac[Team]->Load(Get_Parameter("Naval_Vehicles"),0,obj,Get_Parameter("Support_Vehicles"));

	push	OFFSET FLAT:??_C@_0BB@GKAKOOPG@Support_Vehicles?$AA@
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	ebx
	push	0
	push	OFFSET FLAT:??_C@_0P@EOMMAHKA@Naval_Vehicles?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edi*4]
	push	eax
	call	?Load@ExpVehFacClass@@QAEXPBD0PAE0@Z	; ExpVehFacClass::Load

; 1059 : 			(*ExpVehFac[Team]->Naval_Creation_Positions) = Get_All_Objects_By_Preset(2,Get_Parameter("Creation_Preset"));

	push	OFFSET FLAT:??_C@_0BA@BNIFIOJM@Creation_Preset?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	lea	ecx, DWORD PTR $T9829[esp+48]
	push	2
	push	ecx
	call	?Get_All_Objects_By_Preset@@YA?AV?$SimpleDynVecClass@PAE@@HPBD@Z ; Get_All_Objects_By_Preset
	add	esp, 12					; 0000000cH
	mov	ebx, eax
	mov	edx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edi*4]
	mov	ebp, DWORD PTR [edx+72]
	push	ebx
	mov	ecx, ebp
	mov	DWORD PTR __$EHRec$[esp+56], 1
	call	??4?$SimpleVecClass@PAE@@QAEAAV0@ABV0@@Z ; SimpleVecClass<unsigned char *>::operator=
	mov	eax, DWORD PTR [ebx+12]
	lea	ecx, DWORD PTR $T9829[esp+44]
	mov	DWORD PTR [ebp+12], eax
	mov	DWORD PTR __$EHRec$[esp+52], -1
	call	??1?$SimpleDynVecClass@PAE@@UAE@XZ	; SimpleDynVecClass<unsigned char *>::~SimpleDynVecClass<unsigned char *>
	pop	ebp
$L7059:

; 1060 : 		}
; 1061 : 		Set_Can_Generate_Vehicles(Team,true);

	push	1
	push	edi
	call	?Set_Can_Generate_Vehicles@@YAXH_N@Z	; Set_Can_Generate_Vehicles
	add	esp, 8
$L7055:

; 1062 : 	}
; 1063 : 	ExpVehFac[Team]->Naval_Build_Time[0] = Get_Float_Parameter("Build_Time");

	push	OFFSET FLAT:??_C@_0L@CMKBOGCN@Build_Time?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edi*4]
	fstp	DWORD PTR [ecx+96]

; 1064 : 	ExpVehFac[Team]->Naval_Build_Time[1] = Get_Float_Parameter("Naval_Build_Time");

	push	OFFSET FLAT:??_C@_0BB@OKFAOBNB@Naval_Build_Time?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edi*4]

; 1065 : 	ExpVehFac[Team]->Remove_on_Death = Get_Int_Parameter("Remove_on_Death");

	push	OFFSET FLAT:??_C@_0BA@LGDAPFNH@Remove_on_Death?$AA@
	fstp	DWORD PTR [edx+100]
	mov	ecx, esi
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edi*4]
	test	eax, eax
	setne	al
	mov	BYTE PTR [ecx+38], al

; 1066 : 	ExpVehFac[Team]->Sidebar = Get_Int_Parameter("Sidebar");

	push	OFFSET FLAT:??_C@_07FINOONBP@Sidebar?$AA@
	mov	ecx, esi
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter

; 1067 : }

	mov	ecx, DWORD PTR __$EHRec$[esp+40]
	test	eax, eax
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[edi*4]
	pop	edi
	setne	dl
	pop	esi
	mov	BYTE PTR [eax+37], dl
	pop	ebx
	mov	DWORD PTR fs:__except_list, ecx
	add	esp, 28					; 0000001cH
	ret	4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9830:
	mov	eax, DWORD PTR $T9826[ebp-4]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
$L9831:
	lea	ecx, DWORD PTR $T9829[ebp]
	jmp	??1?$SimpleDynVecClass@PAE@@UAE@XZ	; SimpleDynVecClass<unsigned char *>::~SimpleDynVecClass<unsigned char *>
__ehhandler$?Created@MDB_ExpVehFac_Naval@@EAEXPAE@Z:
	mov	eax, OFFSET FLAT:$T9838
	jmp	___CxxFrameHandler
text$x	ENDS
?Created@MDB_ExpVehFac_Naval@@EAEXPAE@Z ENDP		; MDB_ExpVehFac_Naval::Created
PUBLIC	??_C@_0BC@IOIFJNLK@Ground_Build_Time?$AA@	; `string'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T9854	DD	0ffffffffH
	DD	FLAT:$L9850
$T9852	DD	019930520H
	DD	01H
	DD	FLAT:$T9854
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_C@_0BC@IOIFJNLK@Ground_Build_Time?$AA@
CONST	SEGMENT
??_C@_0BC@IOIFJNLK@Ground_Build_Time?$AA@ DB 'Ground_Build_Time', 00H ; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Created@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE@Z
_TEXT	SEGMENT
__$EHRec$ = -12						; size = 12
$T9847 = 8						; size = 4
_obj$ = 8						; size = 4
?Created@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE@Z PROC NEAR ; MDB_ExpVehFac_Vehicle_Factory::Created, COMDAT
; _this$ = ecx

; 1117 : {

	mov	eax, DWORD PTR fs:__except_list
	push	-1
	push	__ehhandler$?Created@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE@Z
	push	eax
	mov	DWORD PTR fs:__except_list, esp
	push	ebx

; 1118 : 	int Team = Get_Object_Type(obj);

	mov	ebx, DWORD PTR _obj$[esp+12]
	push	esi
	push	edi
	push	ebx
	mov	edi, ecx
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	mov	esi, eax

; 1119 : 	if (!ExpVehFac[Team])

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	add	esp, 4
	test	eax, eax
	jne	SHORT $L7098

; 1120 : 	{
; 1121 : 		ExpVehFac[Team] = new ExpVehFacClass(Team);

	push	112					; 00000070H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
	mov	DWORD PTR $T9847[esp+20], eax
	test	eax, eax
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L9848
	push	esi
	mov	ecx, eax
	call	??0ExpVehFacClass@@QAE@I@Z		; ExpVehFacClass::ExpVehFacClass
	jmp	SHORT $L9849
$L9848:
	xor	eax, eax
$L9849:
	mov	DWORD PTR __$EHRec$[esp+32], -1
	mov	DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4], eax
$L7098:

; 1122 : 	}
; 1123 : 	if (!ExpVehFac[Team]->Loaded && !Find_Building_With_Script(Team,-1,"MDB_ExpVehFac_Naval",0))

	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	mov	cl, BYTE PTR [eax+107]
	test	cl, cl
	jne	SHORT $L7103
	push	0
	push	OFFSET FLAT:??_C@_0BE@GMHHGOOM@MDB_ExpVehFac_Naval?$AA@
	push	-1
	push	esi
	call	?Find_Building_With_Script@@YAPAEHHPBDPAE@Z ; Find_Building_With_Script
	add	esp, 16					; 00000010H
	test	eax, eax
	jne	SHORT $L7103

; 1124 : 	{
; 1125 : 		ExpVehFac[Team]->Load(0,0,obj,Get_Parameter("Support_Vehicles"));

	push	OFFSET FLAT:??_C@_0BB@GKAKOOPG@Support_Vehicles?$AA@
	mov	ecx, edi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	push	eax
	push	ebx
	push	0
	push	0
	call	?Load@ExpVehFacClass@@QAEXPBD0PAE0@Z	; ExpVehFacClass::Load

; 1126 : 		Set_Can_Generate_Vehicles(Team,true);

	push	1
	push	esi
	call	?Set_Can_Generate_Vehicles@@YAXH_N@Z	; Set_Can_Generate_Vehicles
	add	esp, 8
$L7103:

; 1127 : 	}
; 1128 : 	ExpVehFac[Team]->Ground_Build_Time[0] = Get_Float_Parameter("Build_Time");

	push	OFFSET FLAT:??_C@_0L@CMKBOGCN@Build_Time?$AA@
	mov	ecx, edi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	fstp	DWORD PTR [ecx+80]

; 1129 : 	ExpVehFac[Team]->Ground_Build_Time[1] = Get_Float_Parameter("Ground_Build_Time");

	push	OFFSET FLAT:??_C@_0BC@IOIFJNLK@Ground_Build_Time?$AA@
	mov	ecx, edi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]

; 1130 : 	ExpVehFac[Team]->Remove_on_Death = Get_Int_Parameter("Remove_on_Death");

	push	OFFSET FLAT:??_C@_0BA@LGDAPFNH@Remove_on_Death?$AA@
	fstp	DWORD PTR [edx+84]
	mov	ecx, edi
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	mov	ecx, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	test	eax, eax
	setne	al
	mov	BYTE PTR [ecx+38], al

; 1131 : 	ExpVehFac[Team]->Sidebar = Get_Int_Parameter("Sidebar");

	push	OFFSET FLAT:??_C@_07FINOONBP@Sidebar?$AA@
	mov	ecx, edi
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter

; 1132 : }

	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	test	eax, eax
	mov	eax, DWORD PTR ?ExpVehFac@@3PAPAVExpVehFacClass@@A[esi*4]
	pop	edi
	setne	dl
	pop	esi
	mov	BYTE PTR [eax+37], dl
	mov	DWORD PTR fs:__except_list, ecx
	pop	ebx
	add	esp, 12					; 0000000cH
	ret	4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
$L9850:
	mov	eax, DWORD PTR $T9847[ebp-4]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Created@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE@Z:
	mov	eax, OFFSET FLAT:$T9852
	jmp	___CxxFrameHandler
text$x	ENDS
?Created@MDB_ExpVehFac_Vehicle_Factory@@EAEXPAE@Z ENDP	; MDB_ExpVehFac_Vehicle_Factory::Created
PUBLIC	??_C@_0JK@KIFIJHKB@Landing_Preset?$DNLanding?3string?0Bu@ ; `string'
EXTRN	_atexit:NEAR
CRT$XCU	SEGMENT
_$S3	DD	FLAT:_$E1
CRT$XCU	ENDS
;	COMDAT ??_C@_0JK@KIFIJHKB@Landing_Preset?$DNLanding?3string?0Bu@
CONST	SEGMENT
??_C@_0JK@KIFIJHKB@Landing_Preset?$DNLanding?3string?0Bu@ DB 'Landing_Pre'
	DB	'set=Landing:string,Build_Time=1.0:float,Flying_Build_Time=1.0'
	DB	':float,Remove_on_Death=0:int,Support_Vehicles=Veh1;Veh2;etc.:'
	DB	'string,Sidebar=0:int', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E1
text$yc	SEGMENT
_$E1	PROC NEAR					; COMDAT

; 1237 : ScriptRegistrant<MDB_ExpVehFac_Helipad> MDB_ExpVehFac_Helipad_Registrant("MDB_ExpVehFac_Helipad","Landing_Preset=Landing:string,Build_Time=1.0:float,Flying_Build_Time=1.0:float,Remove_on_Death=0:int,Support_Vehicles=Veh1;Veh2;etc.:string,Sidebar=0:int");

	push	OFFSET FLAT:??_C@_0JK@KIFIJHKB@Landing_Preset?$DNLanding?3string?0Bu@
	push	OFFSET FLAT:??_C@_0BG@KKJHDMPD@MDB_ExpVehFac_Helipad?$AA@
	mov	ecx, OFFSET FLAT:?MDB_ExpVehFac_Helipad_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@A
	call	??0?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@QAE@PAD0@Z ; ScriptRegistrant<MDB_ExpVehFac_Helipad>::ScriptRegistrant<MDB_ExpVehFac_Helipad>
	push	OFFSET FLAT:_$E2
	call	_atexit
	pop	ecx
	ret	0
_$E1	ENDP
text$yc	ENDS
PUBLIC	??_C@_0LO@HHLONMGP@Creation_Preset?$DNPreset?3string?0Na@ ; `string'
CRT$XCU	SEGMENT
_$S6	DD	FLAT:_$E4
CRT$XCU	ENDS
;	COMDAT ??_C@_0LO@HHLONMGP@Creation_Preset?$DNPreset?3string?0Na@
CONST	SEGMENT
??_C@_0LO@HHLONMGP@Creation_Preset?$DNPreset?3string?0Na@ DB 'Creation_Pr'
	DB	'eset=Preset:string,Naval_Vehicles=Veh1;Veh2;etc.:string,Build'
	DB	'_Time=1.0:float,Naval_Build_Time=1.0:float,Remove_on_Death=0:'
	DB	'int,Support_Vehicles=Veh1;Veh2;etc.:string,Sidebar=0:int', 00H ; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E4
text$yc	SEGMENT
_$E4	PROC NEAR					; COMDAT

; 1238 : ScriptRegistrant<MDB_ExpVehFac_Naval> MDB_ExpVehFac_Naval_Registrant("MDB_ExpVehFac_Naval","Creation_Preset=Preset:string,Naval_Vehicles=Veh1;Veh2;etc.:string,Build_Time=1.0:float,Naval_Build_Time=1.0:float,Remove_on_Death=0:int,Support_Vehicles=Veh1;Veh2;etc.:string,Sidebar=0:int");

	push	OFFSET FLAT:??_C@_0LO@HHLONMGP@Creation_Preset?$DNPreset?3string?0Na@
	push	OFFSET FLAT:??_C@_0BE@GMHHGOOM@MDB_ExpVehFac_Naval?$AA@
	mov	ecx, OFFSET FLAT:?MDB_ExpVehFac_Naval_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@A
	call	??0?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@QAE@PAD0@Z ; ScriptRegistrant<MDB_ExpVehFac_Naval>::ScriptRegistrant<MDB_ExpVehFac_Naval>
	push	OFFSET FLAT:_$E5
	call	_atexit
	pop	ecx
	ret	0
_$E4	ENDP
text$yc	ENDS
PUBLIC	??_C@_0HM@LIOKLNBO@Build_Time?$DN1?40?3float?0Ground_Buil@ ; `string'
CRT$XCU	SEGMENT
_$S9	DD	FLAT:_$E7
CRT$XCU	ENDS
;	COMDAT ??_C@_0HM@LIOKLNBO@Build_Time?$DN1?40?3float?0Ground_Buil@
CONST	SEGMENT
??_C@_0HM@LIOKLNBO@Build_Time?$DN1?40?3float?0Ground_Buil@ DB 'Build_Time'
	DB	'=1.0:float,Ground_Build_Time=1.0:float,Remove_on_Death=0:int,'
	DB	'Support_Vehicles=Veh1;Veh2;etc.:string,Sidebar=0:int', 00H ; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E7
text$yc	SEGMENT
_$E7	PROC NEAR					; COMDAT

; 1239 : ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory> MDB_ExpVehFac_Vehicle_Factory_Registrant("MDB_ExpVehFac_Vehicle_Factory","Build_Time=1.0:float,Ground_Build_Time=1.0:float,Remove_on_Death=0:int,Support_Vehicles=Veh1;Veh2;etc.:string,Sidebar=0:int");

	push	OFFSET FLAT:??_C@_0HM@LIOKLNBO@Build_Time?$DN1?40?3float?0Ground_Buil@
	push	OFFSET FLAT:??_C@_0BO@IDCNIDOL@MDB_ExpVehFac_Vehicle_Factory?$AA@
	mov	ecx, OFFSET FLAT:?MDB_ExpVehFac_Vehicle_Factory_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@A
	call	??0?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@QAE@PAD0@Z ; ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>::ScriptRegistrant<MDB_ExpVehFac_Vehicle_Factory>
	push	OFFSET FLAT:_$E8
	call	_atexit
	pop	ecx
	ret	0
_$E7	ENDP
text$yc	ENDS
PUBLIC	??_C@_0L@CEMIOEF@Team?$DN0?3int?$AA@		; `string'
PUBLIC	??_C@_0BI@GNCIIPJF@MDB_ExpVehFac_Cinematic?$AA@	; `string'
CRT$XCU	SEGMENT
_$S12	DD	FLAT:_$E10
CRT$XCU	ENDS
;	COMDAT ??_C@_0L@CEMIOEF@Team?$DN0?3int?$AA@
CONST	SEGMENT
??_C@_0L@CEMIOEF@Team?$DN0?3int?$AA@ DB 'Team=0:int', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BI@GNCIIPJF@MDB_ExpVehFac_Cinematic?$AA@
CONST	SEGMENT
??_C@_0BI@GNCIIPJF@MDB_ExpVehFac_Cinematic?$AA@ DB 'MDB_ExpVehFac_Cinemat'
	DB	'ic', 00H					; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E10
text$yc	SEGMENT
_$E10	PROC NEAR					; COMDAT

; 1240 : ScriptRegistrant<MDB_ExpVehFac_Cinematic> MDB_ExpVehFac_Cinematic_Registrant("MDB_ExpVehFac_Cinematic","Team=0:int");

	push	OFFSET FLAT:??_C@_0L@CEMIOEF@Team?$DN0?3int?$AA@
	push	OFFSET FLAT:??_C@_0BI@GNCIIPJF@MDB_ExpVehFac_Cinematic?$AA@
	mov	ecx, OFFSET FLAT:?MDB_ExpVehFac_Cinematic_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@A
	call	??0?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@QAE@PAD0@Z ; ScriptRegistrant<MDB_ExpVehFac_Cinematic>::ScriptRegistrant<MDB_ExpVehFac_Cinematic>
	push	OFFSET FLAT:_$E11
	call	_atexit
	pop	ecx
	ret	0
_$E10	ENDP
text$yc	ENDS
CRT$XCU	SEGMENT
_$S15	DD	FLAT:_$E13
; Function compile flags: /Ogty
CRT$XCU	ENDS
;	COMDAT _$E13
text$yc	SEGMENT
_$E13	PROC NEAR					; COMDAT

; 1241 : ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle> MDB_ExpVehFac_Cinematic_Vehicle_Registrant("MDB_ExpVehFac_Cinematic_Vehicle","");

	push	OFFSET FLAT:??_C@_00CNPNBAHC@?$AA@
	push	OFFSET FLAT:??_C@_0CA@HEBOGOMN@MDB_ExpVehFac_Cinematic_Vehicle?$AA@
	mov	ecx, OFFSET FLAT:?MDB_ExpVehFac_Cinematic_Vehicle_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@A
	call	??0?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@QAE@PAD0@Z ; ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>::ScriptRegistrant<MDB_ExpVehFac_Cinematic_Vehicle>
	push	OFFSET FLAT:_$E14
	call	_atexit
	pop	ecx
	ret	0
_$E13	ENDP
text$yc	ENDS
PUBLIC	??_C@_08JFKDHNCE@Type?3int?$AA@			; `string'
CRT$XCU	SEGMENT
_$S18	DD	FLAT:_$E16
CRT$XCU	ENDS
;	COMDAT ??_C@_08JFKDHNCE@Type?3int?$AA@
CONST	SEGMENT
??_C@_08JFKDHNCE@Type?3int?$AA@ DB 'Type:int', 00H	; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E16
text$yc	SEGMENT
_$E16	PROC NEAR					; COMDAT

; 1242 : ScriptRegistrant<MDB_ExpVehFac_Limit> MDB_ExpVehFac_Limit_Registrant("MDB_ExpVehFac_Limit","Type:int");

	push	OFFSET FLAT:??_C@_08JFKDHNCE@Type?3int?$AA@
	push	OFFSET FLAT:??_C@_0BE@BKNPJNFJ@MDB_ExpVehFac_Limit?$AA@
	mov	ecx, OFFSET FLAT:?MDB_ExpVehFac_Limit_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@A
	call	??0?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@QAE@PAD0@Z ; ScriptRegistrant<MDB_ExpVehFac_Limit>::ScriptRegistrant<MDB_ExpVehFac_Limit>
	push	OFFSET FLAT:_$E17
	call	_atexit
	pop	ecx
	ret	0
_$E16	ENDP
; Function compile flags: /Ogty
text$yc	ENDS
;	COMDAT _$E2
text$yd	SEGMENT
_$E2	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?MDB_ExpVehFac_Helipad_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@A
	jmp	??1?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@UAE@XZ
_$E2	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E5
text$yd	SEGMENT
_$E5	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?MDB_ExpVehFac_Naval_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@A
	jmp	??1?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@UAE@XZ
_$E5	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E8
text$yd	SEGMENT
_$E8	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?MDB_ExpVehFac_Vehicle_Factory_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@A
	jmp	??1?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@UAE@XZ
_$E8	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E11
text$yd	SEGMENT
_$E11	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?MDB_ExpVehFac_Cinematic_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@A
	jmp	??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@UAE@XZ
_$E11	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E14
text$yd	SEGMENT
_$E14	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?MDB_ExpVehFac_Cinematic_Vehicle_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@A
	jmp	??1?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@UAE@XZ
_$E14	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E17
text$yd	SEGMENT
_$E17	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?MDB_ExpVehFac_Limit_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@A
	jmp	??1?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@UAE@XZ
_$E17	ENDP
text$yd	ENDS
PUBLIC	?MDB_ExpVehFac_Helipad_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@A ; MDB_ExpVehFac_Helipad_Registrant
PUBLIC	?MDB_ExpVehFac_Naval_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@A ; MDB_ExpVehFac_Naval_Registrant
PUBLIC	?MDB_ExpVehFac_Vehicle_Factory_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@A ; MDB_ExpVehFac_Vehicle_Factory_Registrant
PUBLIC	?MDB_ExpVehFac_Cinematic_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@A ; MDB_ExpVehFac_Cinematic_Registrant
PUBLIC	?MDB_ExpVehFac_Cinematic_Vehicle_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@A ; MDB_ExpVehFac_Cinematic_Vehicle_Registrant
PUBLIC	?MDB_ExpVehFac_Limit_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@A ; MDB_ExpVehFac_Limit_Registrant
_BSS	SEGMENT
?MDB_ExpVehFac_Helipad_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Helipad@@@@A DB 010H DUP (?) ; MDB_ExpVehFac_Helipad_Registrant
?MDB_ExpVehFac_Naval_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Naval@@@@A DB 010H DUP (?) ; MDB_ExpVehFac_Naval_Registrant
?MDB_ExpVehFac_Vehicle_Factory_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Vehicle_Factory@@@@A DB 010H DUP (?) ; MDB_ExpVehFac_Vehicle_Factory_Registrant
?MDB_ExpVehFac_Cinematic_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic@@@@A DB 010H DUP (?) ; MDB_ExpVehFac_Cinematic_Registrant
?MDB_ExpVehFac_Cinematic_Vehicle_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Cinematic_Vehicle@@@@A DB 010H DUP (?) ; MDB_ExpVehFac_Cinematic_Vehicle_Registrant
?MDB_ExpVehFac_Limit_Registrant@@3V?$ScriptRegistrant@VMDB_ExpVehFac_Limit@@@@A DB 010H DUP (?) ; MDB_ExpVehFac_Limit_Registrant
_BSS	ENDS
END
