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

	TITLE	.\jfwdef.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@_0BB@NHJNEILC@Invisible_Object?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0M@JLBMIOIA@AttackTimer?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_07MLBKNGKL@Preset1?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_07OADHIFGI@Preset2?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_07PJCMLECJ@Preset3?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_07LGGNCCOO@Preset4?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_07KPHGBDKP@Preset5?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_07IEFLEAGM@Preset6?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_07JNEAHBCN@Preset7?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_07BKNIGNOC@Preset8?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_09ONEINPNJ@Animation?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_09OMKBCKHK@PopupTime?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_09GIBPIKCC@LastFrame?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_05MAHMNMLO@Sound?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0M@FIAKNJKI@SwapMessage?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0FB@IKDACKCG@MinAttackDistance?$DN0?40?3float?0MaxA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CD@GGPACBFF@JFW_User_Controllable_Base_Defen@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BB@KBJFBPNA@JFW_Base_Defence?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0MJ@NOFIFHJC@MinAttackDistance?$DN0?40?3float?0MaxA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BN@DNCPNBPJ@JFW_Base_Defence_No_Aircraft?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BP@IJLDFBOP@JFW_Base_Defence_Aircraft_Only?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BL@FCIBHKPA@JFW_Base_Defence_Secondary?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CH@POJCFMBH@JFW_Base_Defence_No_Aircraft_Sec@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CJ@BOGCGHPK@JFW_Base_Defence_Aircraft_Only_S@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0FL@DHPLMKGP@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BK@DPHNFKIK@JFW_Base_Defence_Animated?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0ND@DILJJCJO@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CG@GKBOACBA@JFW_Base_Defence_Animated_No_Air@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CI@BJNFMNBF@JFW_Base_Defence_Animated_Aircra@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CE@IHHABJIM@JFW_Base_Defence_Animated_Second@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0DA@LHPKIDIK@JFW_Base_Defence_Animated_No_Air@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0DC@MMOBBFIA@JFW_Base_Defence_Animated_Aircra@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BJ@FCILBLNB@JFW_Base_Defence_No_VTOL?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BL@OKICGFAM@JFW_Base_Defence_VTOL_Only?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CD@NMAIEDJP@JFW_Base_Defence_No_VTOL_Seconda@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CF@ECFDEFMN@JFW_Base_Defence_VTOL_Only_Secon@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CC@BEHPKOJP@JFW_Base_Defence_Animated_No_VTO@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CE@DPHDAGHA@JFW_Base_Defence_Animated_VTOL_O@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CM@CHCKLKN@JFW_Base_Defence_Animated_No_VTO@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CO@BPCKFIM@JFW_Base_Defence_Animated_VTOL_O@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0GI@POJMHCC@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CA@CADGCBIE@JFW_Base_Defence_Animated_Sound?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0OA@INLJJAGF@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CM@ELAPHFEO@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CO@PDIMHIEB@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CK@OCOEGKL@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0DG@FNDOJIPA@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0DI@JDFEKHNE@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CI@GILFMCIA@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CK@LGCNFJFH@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0DC@KOCOOCNI@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0DE@FMLKHNFH@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0GB@DAFPEPK@MinAttackDistance?$DN0?40?3float?0MaxA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BG@NPOCIANO@JFW_Base_Defence_Swap?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0NJ@PGDEHEDC@MinAttackDistance?$DN0?40?3float?0MaxA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CC@JAJMOKEO@JFW_Base_Defence_No_Aircraft_Swa@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CE@OGMFBEHP@JFW_Base_Defence_Aircraft_Only_S@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0GL@JBHEDCDO@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BP@EJLINJDH@JFW_Base_Defence_Animated_Swap?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0OD@HKDADDJO@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CL@FBOKBNKD@JFW_Base_Defence_Animated_No_Air@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CN@COMMDPBH@JFW_Base_Defence_Animated_Aircra@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0BO@EEMJACDN@JFW_Base_Defence_No_VTOL_Swap?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CA@JNIBHBEF@JFW_Base_Defence_VTOL_Only_Swap?$AA@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CH@JNEIGJDC@JFW_Base_Defence_Animated_No_VTO@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CJ@MAHJAMNL@JFW_Base_Defence_Animated_VTOL_O@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0HI@JAOIDCBC@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CF@PLCDCMHE@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0PA@LBMKIMHE@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0DB@LBFKCIII@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0DD@OAPOGON@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CN@BBLKAELG@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_C@_0CP@KMJFMAID@JFW_Base_Defence_Animated_Sound_@
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 ??0ActionParamsStruct@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Set_Basic@ActionParamsStruct@@QAEXPAVScriptClass@@KKJ@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Set_Attack@ActionParamsStruct@@QAEXPAEMM_N@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Set_Attack_Hold@ActionParamsStruct@@QAEXPAEMM_N1@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 ?Created@JFW_User_Controllable_Base_Defence@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_User_Controllable_Base_Defence@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_User_Controllable_Base_Defence@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_User_Controllable_Base_Defence@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_User_Controllable_Base_Defence@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_User_Controllable_Base_Defence@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_No_Aircraft@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_No_Aircraft@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_No_Aircraft@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Aircraft_Only@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Aircraft_Only@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Aircraft_Only@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_Aircraft@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_No_VTOL@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_No_VTOL@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_No_VTOL@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_VTOL_Only@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_VTOL_Only@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_VTOL_Only@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_VTOL_Only@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_VTOL@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_VTOL_Only@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_VTOL_Only_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAE@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXXZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEHH0@Z
_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@VJFW_User_Controllable_Base_Defence@@@@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@VJFW_Base_Defence@@@@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@VJFW_Base_Defence_No_Aircraft@@@@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@VJFW_Base_Defence_Aircraft_Only@@@@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@VJFW_Base_Defence_Secondary@@@@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@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E19
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E20
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E22
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E23
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E25
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E26
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E28
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E29
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E31
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E32
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E34
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E35
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E37
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E38
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E40
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E41
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E43
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E44
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E46
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E47
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E49
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E50
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E52
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E53
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E55
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E56
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E58
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E59
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E61
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E62
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E64
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E65
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E67
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E68
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E70
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E71
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E73
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E74
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E76
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E77
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E79
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E80
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E82
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E83
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E85
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E86
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E88
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E89
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E91
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E92
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E94
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E95
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E97
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E98
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E100
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E101
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E103
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E104
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E106
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E107
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E109
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E110
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E112
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E113
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E115
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E116
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E118
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E119
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E121
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E122
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E124
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E125
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E127
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E128
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E130
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E131
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E133
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E134
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT _$E136
text$yc	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yc	ENDS
;	COMDAT _$E137
text$yd	SEGMENT PARA USE32 PUBLIC 'CODE'
text$yd	ENDS
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@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?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@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?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAXI@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@VJFW_User_Controllable_Base_Defence@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_User_Controllable_Base_Defence@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_No_Aircraft@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Aircraft_Only@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_No_Aircraft_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Aircraft_Only_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_No_Aircraft@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Aircraft_Only@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_No_Aircraft_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_No_VTOL@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_VTOL_Only@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_No_VTOL_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_VTOL_Only_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_No_VTOL@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_VTOL_Only@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_No_VTOL_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_VTOL_Only_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_No_Aircraft@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_Aircraft_Only@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_No_VTOL@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_VTOL_Only@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_No_Aircraft_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Aircraft_Only_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_No_Aircraft_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Aircraft_Only_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_No_VTOL_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_VTOL_Only_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_No_VTOL_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_VTOL_Only_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??0JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@QAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_User_Controllable_Base_Defence@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_No_Aircraft@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Aircraft_Only@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_No_Aircraft_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Aircraft_Only_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_No_Aircraft@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Aircraft_Only@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_No_Aircraft_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_No_VTOL@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_VTOL_Only@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_No_VTOL_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_VTOL_Only_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_No_VTOL@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_VTOL_Only@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_No_VTOL_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_VTOL_Only_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_No_Aircraft@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_No_VTOL@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_VTOL_Only@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_No_Aircraft_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Aircraft_Only_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_No_Aircraft_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Aircraft_Only_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_No_VTOL_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_VTOL_Only_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_No_VTOL_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_VTOL_Only_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@UAEPAXI@Z
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_User_Controllable_Base_Defence@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_No_Aircraft@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Aircraft_Only@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_No_Aircraft_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Aircraft_Only_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_No_Aircraft@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Aircraft_Only@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_No_Aircraft_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_No_VTOL@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_VTOL_Only@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_No_VTOL_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_VTOL_Only_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_No_VTOL@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_VTOL_Only@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_No_VTOL_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_VTOL_Only_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_No_Aircraft@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_Aircraft_Only@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_No_VTOL@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_VTOL_Only@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_No_Aircraft_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Aircraft_Only_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_No_Aircraft_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Aircraft_Only_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_No_VTOL_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_VTOL_Only_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_No_VTOL_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_VTOL_Only_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@UAE@XZ
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_No_Aircraft_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_User_Controllable_Base_Defence@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7TeamPurchaseSettingsDefClass@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$DynamicVectorClass@VWideStringClass@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7cGameDataSkirmish@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Aircraft_Only_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7DefinitionClass@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_No_VTOL_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_No_VTOL_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7PurchaseSettingsDefClass@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_VTOL_Only@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_VTOL_Only_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$VectorClass@PAK@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Aircraft_Only@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7PostLoadableClass@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_No_Aircraft_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_No_Aircraft@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_VTOL_Only_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_No_VTOL_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Aircraft_Only_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only@@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 ??_7JFW_Base_Defence_No_VTOL@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@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 ??_7JFW_Base_Defence_VTOL_Only@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7cGameData@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Aircraft_Only_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7cGameDataSinglePlayer@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$VectorClass@PAE@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_No_VTOL@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_No_Aircraft_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_VTOL_Only@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_No_Aircraft@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$DynamicVectorClass@PAE@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7EditableClass@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_No_Aircraft@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_VTOL_Only_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_No_VTOL_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_No_VTOL@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7cGameDataCnc@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Aircraft_Only@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$DynamicVectorClass@PAK@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_VTOL_Only_Secondary@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_No_Aircraft_Swap@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@6B@
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@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	?GetID@GameObjObserverClass@@QAEHXZ		; GameObjObserverClass::GetID
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\scripts.h
;	COMDAT ?GetID@GameObjObserverClass@@QAEHXZ
_TEXT	SEGMENT
?GetID@GameObjObserverClass@@QAEHXZ PROC NEAR		; GameObjObserverClass::GetID, COMDAT
; _this$ = ecx

; 90   : 		return ID;

	mov	eax, DWORD PTR [ecx+4]

; 91   : 	}

	ret	0
?GetID@GameObjObserverClass@@QAEHXZ ENDP		; GameObjObserverClass::GetID
_TEXT	ENDS
PUBLIC	??0ActionParamsStruct@@QAE@XZ			; ActionParamsStruct::ActionParamsStruct
EXTRN	__fltused:NEAR
; Function compile flags: /Ogty
;	COMDAT ??0ActionParamsStruct@@QAE@XZ
_TEXT	SEGMENT
??0ActionParamsStruct@@QAE@XZ PROC NEAR			; ActionParamsStruct::ActionParamsStruct, COMDAT
; _this$ = ecx

; 221  : {

	mov	eax, ecx

; 222  : 	Action_Priority = 0;

	xor	ecx, ecx

; 223  : 	Action_ID = 0;
; 224  : 	Observer_ID = 0;
; 225  : 	varB8.X = 0;
; 226  : 	varB8.Y = 0;
; 227  : 	varB8.Z = 0;
; 228  : 	varAC = 0;
; 229  : 	varA8 = 0;
; 230  : 	Move_Destination.X = 0;
; 231  : 	Move_Destination.Y = 0;
; 232  : 	Move_Destination.Z = 0;
; 233  : 	Move_Target = 0;
; 234  : 	var94.X = 0;
; 235  : 	var94.Y = 0;
; 236  : 	var94.Z = 0;
; 237  : 	Move_Speed = 1.0;
; 238  : 	Move_Arrive_Distance = 1000;
; 239  : 	Move_Backwards = false;
; 240  : 	Move_Following = false;
; 241  : 	Move_Crouch = false;
; 242  : 	Move_Pathfind = true;

	mov	dl, 1
	mov	DWORD PTR [eax], ecx
	mov	DWORD PTR [eax+4], ecx
	mov	DWORD PTR [eax+8], ecx
	mov	DWORD PTR [eax+12], ecx
	mov	DWORD PTR [eax+16], ecx
	mov	DWORD PTR [eax+20], ecx
	mov	DWORD PTR [eax+24], ecx
	mov	DWORD PTR [eax+28], ecx
	mov	DWORD PTR [eax+32], ecx
	mov	DWORD PTR [eax+36], ecx
	mov	DWORD PTR [eax+40], ecx
	mov	DWORD PTR [eax+44], ecx
	mov	DWORD PTR [eax+48], ecx
	mov	DWORD PTR [eax+52], ecx
	mov	DWORD PTR [eax+56], ecx
	mov	DWORD PTR [eax+60], 1065353216		; 3f800000H
	mov	DWORD PTR [eax+64], 1148846080		; 447a0000H
	mov	BYTE PTR [eax+68], cl
	mov	BYTE PTR [eax+69], cl
	mov	BYTE PTR [eax+70], cl
	mov	BYTE PTR [eax+71], dl

; 243  : 	var7C = false;

	mov	BYTE PTR [eax+72], cl

; 244  : 	Attack_Range = 20;

	mov	DWORD PTR [eax+76], 1101004800		; 41a00000H

; 245  : 	Attack_Deviation = 0;

	mov	DWORD PTR [eax+80], ecx

; 246  : 	var70 = false;

	mov	BYTE PTR [eax+84], cl

; 247  : 	Attack_Target = 0;

	mov	DWORD PTR [eax+88], ecx

; 248  : 	Attack_Primary = true;

	mov	BYTE PTR [eax+92], dl

; 249  : 	Attack_Crouched = false;

	mov	BYTE PTR [eax+93], cl

; 250  : 	Attack_Location.X = 0;

	mov	DWORD PTR [eax+96], ecx

; 251  : 	Attack_Location.Y = 0;

	mov	DWORD PTR [eax+100], ecx

; 252  : 	Attack_Location.Z = 0;

	mov	DWORD PTR [eax+104], ecx

; 253  : 	Hold_Action = true;

	mov	BYTE PTR [eax+108], dl

; 254  : 	var57 = true;

	mov	BYTE PTR [eax+109], dl

; 255  : 	var56 = false;

	mov	BYTE PTR [eax+110], cl

; 256  : 	var55 = true;

	mov	BYTE PTR [eax+111], dl

; 257  : 	var54 = false;

	mov	BYTE PTR [eax+112], cl

; 258  : 	var53 = false;

	mov	BYTE PTR [eax+113], cl

; 259  : 	Face_Location.X = 0;

	mov	DWORD PTR [eax+116], ecx

; 260  : 	Face_Location.Y = 0;

	mov	DWORD PTR [eax+120], ecx

; 261  : 	Face_Location.Z = 0;

	mov	DWORD PTR [eax+124], ecx

; 262  : 	Face_Time = 2.0;

	mov	DWORD PTR [eax+128], 1073741824		; 40000000H

; 263  : 	var40 = false;

	mov	BYTE PTR [eax+132], cl

; 264  : 	Move_Waypath_ID = 0;

	mov	DWORD PTR [eax+136], ecx

; 265  : 	Move_Waypath_Start_ID = 0;

	mov	DWORD PTR [eax+140], ecx

; 266  : 	Move_Waypath_End_ID = 0;

	mov	DWORD PTR [eax+144], ecx

; 267  : 	Move_Waypath_Splined = false;

	mov	BYTE PTR [eax+148], cl

; 268  : 	Anim_Name = 0;

	mov	DWORD PTR [eax+152], ecx

; 269  : 	Anim_Loop = false;

	mov	BYTE PTR [eax+156], cl

; 270  : 	var24 = 0;

	mov	DWORD PTR [eax+160], ecx

; 271  : 	var20 = 0;

	mov	DWORD PTR [eax+164], ecx

; 272  : 	Soldier_AI_State = -1;

	mov	DWORD PTR [eax+168], -1

; 273  : 	Dock_Location.X = 0;

	mov	DWORD PTR [eax+172], ecx

; 274  : 	Dock_Location.Y = 0;

	mov	DWORD PTR [eax+176], ecx

; 275  : 	Dock_Location.Z = 0;

	mov	DWORD PTR [eax+180], ecx

; 276  : 	Dock_Entrance.X = 0;

	mov	DWORD PTR [eax+184], ecx

; 277  : 	Dock_Entrance.Y = 0;

	mov	DWORD PTR [eax+188], ecx

; 278  : 	Dock_Entrance.Z = 0;

	mov	DWORD PTR [eax+192], ecx

; 279  : }

	ret	0
??0ActionParamsStruct@@QAE@XZ ENDP			; ActionParamsStruct::ActionParamsStruct
_TEXT	ENDS
PUBLIC	?Set_Basic@ActionParamsStruct@@QAEXPAVScriptClass@@KKJ@Z ; ActionParamsStruct::Set_Basic
; Function compile flags: /Ogty
;	COMDAT ?Set_Basic@ActionParamsStruct@@QAEXPAVScriptClass@@KKJ@Z
_TEXT	SEGMENT
_s$ = 8							; size = 4
_priority$ = 12						; size = 4
_ID$ = 16						; size = 4
_state$ = 20						; size = 4
?Set_Basic@ActionParamsStruct@@QAEXPAVScriptClass@@KKJ@Z PROC NEAR ; ActionParamsStruct::Set_Basic, COMDAT
; _this$ = ecx

; 380  : 	ID = s->GetID();

	mov	eax, DWORD PTR _s$[esp-4]
	mov	eax, DWORD PTR [eax+4]

; 381  : 	Action_Priority = priority;

	mov	edx, DWORD PTR _priority$[esp-4]

; 382  : 	Action_ID = ID;

	mov	DWORD PTR [ecx+4], eax

; 383  : 	Soldier_AI_State = state;

	mov	eax, DWORD PTR _state$[esp-4]
	mov	DWORD PTR [ecx], edx
	mov	DWORD PTR [ecx+168], eax

; 384  : }

	ret	16					; 00000010H
?Set_Basic@ActionParamsStruct@@QAEXPAVScriptClass@@KKJ@Z ENDP ; ActionParamsStruct::Set_Basic
_TEXT	ENDS
PUBLIC	?Set_Attack@ActionParamsStruct@@QAEXPAEMM_N@Z	; ActionParamsStruct::Set_Attack
; Function compile flags: /Ogty
;	COMDAT ?Set_Attack@ActionParamsStruct@@QAEXPAEMM_N@Z
_TEXT	SEGMENT
_Target$ = 8						; size = 4
_Range$ = 12						; size = 4
_Deviation$ = 16					; size = 4
_Primary$ = 20						; size = 1
?Set_Attack@ActionParamsStruct@@QAEXPAEMM_N@Z PROC NEAR	; ActionParamsStruct::Set_Attack, COMDAT
; _this$ = ecx

; 388  : 	Attack_Target = Target;

	mov	eax, DWORD PTR _Target$[esp-4]

; 389  : 	Attack_Range = Range;

	mov	edx, DWORD PTR _Range$[esp-4]
	mov	DWORD PTR [ecx+88], eax

; 390  : 	Attack_Deviation = Deviation;

	mov	eax, DWORD PTR _Deviation$[esp-4]
	mov	DWORD PTR [ecx+76], edx

; 391  : 	Attack_Primary = Primary;

	mov	dl, BYTE PTR _Primary$[esp-4]
	mov	DWORD PTR [ecx+80], eax
	mov	BYTE PTR [ecx+92], dl

; 392  : }

	ret	16					; 00000010H
?Set_Attack@ActionParamsStruct@@QAEXPAEMM_N@Z ENDP	; ActionParamsStruct::Set_Attack
_TEXT	ENDS
PUBLIC	?Set_Attack_Hold@ActionParamsStruct@@QAEXPAEMM_N1@Z ; ActionParamsStruct::Set_Attack_Hold
; Function compile flags: /Ogty
;	COMDAT ?Set_Attack_Hold@ActionParamsStruct@@QAEXPAEMM_N1@Z
_TEXT	SEGMENT
_Target$ = 8						; size = 4
_Range$ = 12						; size = 4
_Deviation$ = 16					; size = 4
_Primary$ = 20						; size = 1
_Hold$ = 24						; size = 1
?Set_Attack_Hold@ActionParamsStruct@@QAEXPAEMM_N1@Z PROC NEAR ; ActionParamsStruct::Set_Attack_Hold, COMDAT
; _this$ = ecx

; 396  : 	Attack_Target = Target;

	mov	eax, DWORD PTR _Target$[esp-4]

; 397  : 	Attack_Range = Range;

	mov	edx, DWORD PTR _Range$[esp-4]
	mov	DWORD PTR [ecx+88], eax

; 398  : 	Attack_Deviation = Deviation;

	mov	eax, DWORD PTR _Deviation$[esp-4]
	mov	DWORD PTR [ecx+76], edx

; 399  : 	Attack_Primary = Primary;

	mov	dl, BYTE PTR _Primary$[esp-4]
	mov	DWORD PTR [ecx+80], eax

; 400  : 	Hold_Action = Hold;

	mov	al, BYTE PTR _Hold$[esp-4]
	mov	BYTE PTR [ecx+92], dl
	mov	BYTE PTR [ecx+108], al

; 401  : }

	ret	20					; 00000014H
?Set_Attack_Hold@ActionParamsStruct@@QAEXPAEMM_N1@Z ENDP ; ActionParamsStruct::Set_Attack_Hold
_TEXT	ENDS
PUBLIC	??_C@_0BB@NHJNEILC@Invisible_Object?$AA@	; `string'
PUBLIC	?Created@JFW_User_Controllable_Base_Defence@@EAEXPAE@Z ; JFW_User_Controllable_Base_Defence::Created
PUBLIC	__real@41200000
PUBLIC	__real@40000000
EXTRN	?Commands@@3PAUScriptCommands@@A:DWORD		; Commands
;	COMDAT __real@41200000
; File c:\documents and settings\owner\desktop\ssctf 1.3\jfwdef.cpp
CONST	SEGMENT
__real@41200000 DD 041200000r			; 10
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 __real@40000000
CONST	SEGMENT
__real@40000000 DD 040000000r			; 2
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Created@JFW_User_Controllable_Base_Defence@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T13242 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_User_Controllable_Base_Defence@@EAEXPAE@Z PROC NEAR ; JFW_User_Controllable_Base_Defence::Created, COMDAT
; _this$ = ecx

; 18   : {

	sub	esp, 60					; 0000003cH

; 19   : 	Vector3 pos,pos1,pos2,pos3;
; 20   : 	GameObject *object;
; 21   : 	objtype = Commands->Get_Player_Type(obj);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	push	esi
	mov	edi, ecx
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 22   : 	player = false;

	mov	BYTE PTR [edi+44], 0

; 23   : 	Commands->Enable_Hibernation(obj,false);

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

; 24   : 	Commands->Innate_Enable(obj);

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

; 25   : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 26   : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T13242[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 27   : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 28   : 	pos1.Y = pos.Y - 10;
; 29   : 	pos1.Z = pos.Z + 2;
; 30   : 	pos2.X = pos.X + 10;
; 31   : 	pos2.Y = pos.Y;
; 32   : 	pos2.Z = pos.Z + 2;
; 33   : 	pos3.X = pos.X + 10;
; 34   : 	pos3.Y = pos.Y - 10;
; 35   : 	pos3.Z = pos.Z + 2;
; 36   : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 37   : 	if (object)

	test	eax, eax
	je	SHORT $L7524

; 38   : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L7524:

; 39   : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 40   : 	if (object)

	test	eax, eax
	je	SHORT $L7525

; 41   : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L7525:

; 42   : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 43   : 	if (object)

	test	eax, eax
	je	SHORT $L7526

; 44   : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L7526:

; 45   : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 46   : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_User_Controllable_Base_Defence@@EAEXPAE@Z ENDP ; JFW_User_Controllable_Base_Defence::Created
_TEXT	ENDS
PUBLIC	?Custom@JFW_User_Controllable_Base_Defence@@EAEXPAEHH0@Z ; JFW_User_Controllable_Base_Defence::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_User_Controllable_Base_Defence@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_params$ = -196						; size = 196
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_User_Controllable_Base_Defence@@EAEXPAEHH0@Z PROC NEAR ; JFW_User_Controllable_Base_Defence::Custom, COMDAT
; _this$ = ecx

; 49   : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 50   : 	ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 51   : 	if (message == CUSTOM_EVENT_VEHICLE_EXIT)

	mov	eax, DWORD PTR _message$[esp+196]
	cmp	eax, 1000000029				; 3b9aca1dH
	jne	SHORT $L7535

; 52   : 	{
; 53   : 		player = false;
; 54   : 		Commands->Set_Player_Type(obj,objtype);

	mov	eax, DWORD PTR [esi+40]
	mov	BYTE PTR [esi+44], 0
	mov	esi, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	esi
	call	DWORD PTR [ecx+252]

; 55   : 		Commands->Action_Reset(obj,100);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [edx+12]
	add	esp, 16					; 00000010H
	pop	esi

; 64   : 		}
; 65   : 	}
; 66   : }

	add	esp, 196				; 000000c4H
	ret	16					; 00000010H
$L7535:

; 56   : 	}
; 57   : 	else
; 58   : 	{
; 59   : 		if (message == CUSTOM_EVENT_VEHICLE_ENTER)

	cmp	eax, 1000000028				; 3b9aca1cH
	jne	SHORT $L7537

; 60   : 		{
; 61   : 			player = true;
; 62   : 			params.Set_Basic(this,100,3,-1);

	mov	eax, DWORD PTR [esi+4]

; 63   : 			Commands->Action_Follow_Input(obj,params);

	mov	edx, DWORD PTR _obj$[esp+196]
	lea	ecx, DWORD PTR _params$[esp+200]
	push	ecx
	mov	BYTE PTR [esi+44], 1
	mov	DWORD PTR _params$[esp+208], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	mov	DWORD PTR _params$[esp+208], 100	; 00000064H
	mov	DWORD PTR _params$[esp+376], -1
	call	DWORD PTR [eax+40]
	add	esp, 8
$L7537:
	pop	esi

; 64   : 		}
; 65   : 	}
; 66   : }

	add	esp, 196				; 000000c4H
	ret	16					; 00000010H
?Custom@JFW_User_Controllable_Base_Defence@@EAEXPAEHH0@Z ENDP ; JFW_User_Controllable_Base_Defence::Custom
_TEXT	ENDS
PUBLIC	??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@	; `string'
PUBLIC	??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@	; `string'
PUBLIC	??_C@_0M@JLBMIOIA@AttackTimer?$AA@		; `string'
PUBLIC	?Enemy_Seen@JFW_User_Controllable_Base_Defence@@EAEXPAE0@Z ; JFW_User_Controllable_Base_Defence::Enemy_Seen
EXTRN	?Get_Vehicle@@YAPAEPAE@Z:NEAR			; Get_Vehicle
EXTRN	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z:NEAR ; ScriptImpClass::Get_Float_Parameter
;	COMDAT ??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
; File c:\documents and settings\owner\desktop\ssctf 1.3\scripts.h
CONST	SEGMENT
??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@ DB 'MinAttackDistance', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
CONST	SEGMENT
??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@ DB 'MaxAttackDistance', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0M@JLBMIOIA@AttackTimer?$AA@
CONST	SEGMENT
??_C@_0M@JLBMIOIA@AttackTimer?$AA@ DB 'AttackTimer', 00H ; `string'
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\jfwdef.cpp
CONST	ENDS
;	COMDAT ?Enemy_Seen@JFW_User_Controllable_Base_Defence@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$ = -236					; size = 4
_distance$ = -236					; size = 4
_pos2$ = -232						; size = 12
_pos$ = -220						; size = 12
$T13266 = -208						; size = 12
$T13264 = -208						; size = 12
_params$ = -196						; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_User_Controllable_Base_Defence@@EAEXPAE0@Z PROC NEAR ; JFW_User_Controllable_Base_Defence::Enemy_Seen, COMDAT
; _this$ = ecx

; 69   : {

	sub	esp, 236				; 000000ecH
	push	esi
	push	edi

; 70   : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+240]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 71   : 	if (o)

	test	eax, eax
	je	SHORT $L7544

; 72   : 	{
; 73   : 		seen = o;

	mov	edi, eax
$L7544:

; 74   : 	}
; 75   : 	ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$[esp+244]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 76   : 	Vector3 pos,pos2;
; 77   : 	float distance;
; 78   : 	float minattack,maxattack;
; 79   : 	float attacktimer;
; 80   : 	if (!player)

	mov	al, BYTE PTR [esi+44]
	test	al, al
	jne	$L7556

; 81   : 	{
; 82   : 		pos = Commands->Get_Position(obj);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	mov	ebx, DWORD PTR _obj$[esp+244]
	lea	eax, DWORD PTR $T13264[esp+248]
	push	ebx
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos$[esp+256], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$[esp+260], ecx
	mov	edx, DWORD PTR [eax+8]

; 83   : 		pos2 = Commands->Get_Position(seen);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T13266[esp+256]
	push	edi
	push	eax
	mov	DWORD PTR _pos$[esp+272], edx
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$[esp+264], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$[esp+268], ecx
	mov	edx, DWORD PTR [eax+8]

; 84   : 		distance = Commands->Get_Distance(pos2,pos);

	lea	eax, DWORD PTR _pos$[esp+264]
	push	eax
	lea	ecx, DWORD PTR _pos2$[esp+268]
	mov	DWORD PTR _pos2$[esp+276], edx
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+256]
	fstp	DWORD PTR _distance$[esp+272]
	add	esp, 24					; 00000018H

; 85   : 		minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 86   : 		if (distance >= minattack)

	fcomp	DWORD PTR _distance$[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L13282

; 87   : 		{
; 88   : 			maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 89   : 			params.Set_Basic(this,100,2,-1);
; 90   : 			params.Set_Attack_Hold(seen,maxattack,0.0,true,false);

	fstp	DWORD PTR _params$[esp+324]
	mov	eax, DWORD PTR [esi+4]

; 91   : 			Commands->Action_Attack(obj,params);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _params$[esp+248]
	push	ecx
	push	ebx
	mov	DWORD PTR _params$[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$[esp+260], eax
	mov	DWORD PTR _params$[esp+424], -1
	mov	DWORD PTR _params$[esp+344], edi
	mov	DWORD PTR _params$[esp+336], 0
	mov	BYTE PTR _params$[esp+348], 1
	mov	BYTE PTR _params$[esp+364], 0
	call	DWORD PTR [edx+20]
	add	esp, 8

; 92   : 			attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$[esp+248]

; 93   : 			Commands->Start_Timer(obj,this,attacktimer,2);

	mov	eax, DWORD PTR _attacktimer$[esp+248]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	eax
	push	esi
	push	ebx
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
$L13282:
	pop	ebx
$L7556:
	pop	edi
	pop	esi

; 94   : 		}
; 95   : 	}
; 96   : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_User_Controllable_Base_Defence@@EAEXPAE0@Z ENDP ; JFW_User_Controllable_Base_Defence::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_User_Controllable_Base_Defence@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_User_Controllable_Base_Defence::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_User_Controllable_Base_Defence@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_User_Controllable_Base_Defence@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_User_Controllable_Base_Defence::Action_Complete, COMDAT
; _this$ = ecx

; 100  : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L7565

; 101  : 	{
; 102  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L7565:

; 103  : 	}
; 104  : }

	ret	12					; 0000000cH
?Action_Complete@JFW_User_Controllable_Base_Defence@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_User_Controllable_Base_Defence::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_User_Controllable_Base_Defence@@EAEXPAEH@Z ; JFW_User_Controllable_Base_Defence::Timer_Expired
EXTRN	__ftol2:NEAR
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_User_Controllable_Base_Defence@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_User_Controllable_Base_Defence@@EAEXPAEH@Z PROC NEAR ; JFW_User_Controllable_Base_Defence::Timer_Expired, COMDAT
; _this$ = ecx

; 107  : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 108  : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 109  : 	GameObject *object;
; 110  : 	float f;
; 111  : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L7578
	dec	eax
	jne	$L7575

; 148  : 		break;
; 149  : 	case 2:
; 150  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 151  : 		break;
; 152  : 	}
; 153  : }

	add	esp, 196				; 000000c4H
	ret	8
$L7578:

; 112  : 	{
; 113  : 	case 1:
; 114  : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]

; 115  : 		if (!player)

	mov	al, BYTE PTR [esi+44]
	mov	edi, DWORD PTR _obj$[esp+208]
	add	esp, 8
	test	al, al
	jne	$L13331

; 116  : 		{
; 117  : 			switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L13290
	mov	eax, 2
$L13290:
	sub	eax, 0
	je	SHORT $L7584
	dec	eax
	je	SHORT $L7586

; 137  : 			default:
; 138  : 				object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 139  : 				if (object)

	test	eax, eax
	je	$L7585

; 140  : 				{
; 141  : 					var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 142  : 					var.Set_Attack(object,0.0,0.0,true);
; 143  : 					Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	add	esp, 8
	jmp	SHORT $L7585
$L7586:

; 126  : 				}
; 127  : 				break;
; 128  : 			case 1:
; 129  : 				object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 130  : 				if (object)
; 131  : 				{
; 132  : 					var.Set_Basic(this,70,1,-1);
; 133  : 					var.Set_Attack(object,0.0,0.0,true);
; 134  : 					Commands->Action_Attack(obj,var);
; 135  : 				}
; 136  : 				break;

	jmp	SHORT $L13332
$L7584:

; 118  : 			{
; 119  : 			case 0:
; 120  : 				object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L13332:
	add	esp, 4

; 121  : 				if (object)

	test	eax, eax
	je	SHORT $L7585

; 122  : 				{
; 123  : 					var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 124  : 					var.Set_Attack(object,0.0,0.0,true);
; 125  : 					Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [eax+20]
	add	esp, 8
	jmp	SHORT $L7585
$L13331:
	fstp	ST(0)
$L7585:

; 144  : 				}
; 145  : 			}
; 146  : 		}
; 147  : 		Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L7575:
	pop	esi

; 151  : 		break;
; 152  : 	}
; 153  : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_User_Controllable_Base_Defence@@EAEXPAEH@Z ENDP ; JFW_User_Controllable_Base_Defence::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_User_Controllable_Base_Defence@@EAEXXZ ; JFW_User_Controllable_Base_Defence::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@JFW_User_Controllable_Base_Defence@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_User_Controllable_Base_Defence@@EAEXXZ PROC NEAR ; JFW_User_Controllable_Base_Defence::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 156  : {

	push	esi
	mov	esi, ecx

; 157  : 	Auto_Save_Variable(1,4,&id1);

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

; 158  : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 159  : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 160  : 	Auto_Save_Variable(4,4,&objtype);

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

; 161  : 	Auto_Save_Variable(5,1,&player);

	lea	ecx, DWORD PTR [esi+44]
	push	ecx
	push	1
	push	5
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 162  : }

	ret	0
?Register_Auto_Save_Variables@JFW_User_Controllable_Base_Defence@@EAEXXZ ENDP ; JFW_User_Controllable_Base_Defence::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence@@EAEXPAE@Z		; JFW_Base_Defence::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T13341 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence@@EAEXPAE@Z PROC NEAR		; JFW_Base_Defence::Created, COMDAT
; _this$ = ecx

; 165  : {

	sub	esp, 60					; 0000003cH

; 166  : 	Vector3 pos,pos1,pos2,pos3;
; 167  : 	GameObject *object;
; 168  : 	objtype = Commands->Get_Player_Type(obj);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	push	esi
	mov	edi, ecx
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 169  : 	Commands->Enable_Hibernation(obj,false);

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

; 170  : 	Commands->Innate_Enable(obj);

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

; 171  : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 172  : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T13341[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 173  : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 174  : 	pos1.Y = pos.Y - 10;
; 175  : 	pos1.Z = pos.Z + 2;
; 176  : 	pos2.X = pos.X + 10;
; 177  : 	pos2.Y = pos.Y;
; 178  : 	pos2.Z = pos.Z + 2;
; 179  : 	pos3.X = pos.X + 10;
; 180  : 	pos3.Y = pos.Y - 10;
; 181  : 	pos3.Z = pos.Z + 2;
; 182  : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 183  : 	if (object)

	test	eax, eax
	je	SHORT $L7604

; 184  : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L7604:

; 185  : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 186  : 	if (object)

	test	eax, eax
	je	SHORT $L7605

; 187  : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L7605:

; 188  : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 189  : 	if (object)

	test	eax, eax
	je	SHORT $L7606

; 190  : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L7606:

; 191  : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 192  : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence@@EAEXPAE@Z ENDP		; JFW_Base_Defence::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence@@EAEXPAE0@Z	; JFW_Base_Defence::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$ = -236					; size = 4
_distance$ = -236					; size = 4
_pos2$ = -232						; size = 12
_pos$ = -220						; size = 12
$T13348 = -208						; size = 12
$T13346 = -208						; size = 12
_params$ = -196						; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence@@EAEXPAE0@Z PROC NEAR	; JFW_Base_Defence::Enemy_Seen, COMDAT
; _this$ = ecx

; 195  : {

	sub	esp, 236				; 000000ecH
	push	ebx
	push	esi
	push	edi

; 196  : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+244]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 197  : 	if (o)

	test	eax, eax
	je	SHORT $L7613

; 198  : 	{
; 199  : 		seen = o;

	mov	edi, eax
$L7613:

; 200  : 	}
; 201  : 	ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 202  : 	Vector3 pos,pos2;
; 203  : 	float distance;
; 204  : 	float minattack,maxattack;
; 205  : 	float attacktimer;
; 206  : 	pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T13346[esp+248]
	push	ebx
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos$[esp+256], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$[esp+260], ecx
	mov	edx, DWORD PTR [eax+8]

; 207  : 	pos2 = Commands->Get_Position(seen);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T13348[esp+256]
	push	edi
	push	eax
	mov	DWORD PTR _pos$[esp+272], edx
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$[esp+264], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$[esp+268], ecx
	mov	edx, DWORD PTR [eax+8]

; 208  : 	distance = Commands->Get_Distance(pos2,pos);

	lea	eax, DWORD PTR _pos$[esp+264]
	push	eax
	lea	ecx, DWORD PTR _pos2$[esp+268]
	mov	DWORD PTR _pos2$[esp+276], edx
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+256]
	fstp	DWORD PTR _distance$[esp+272]
	add	esp, 24					; 00000018H

; 209  : 	minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 210  : 	if (distance >= minattack)

	fcomp	DWORD PTR _distance$[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L7623

; 211  : 	{
; 212  : 		maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 213  : 		params.Set_Basic(this,100,2,-1);
; 214  : 		params.Set_Attack_Hold(seen,maxattack,0.0,true,false);

	fstp	DWORD PTR _params$[esp+324]
	mov	eax, DWORD PTR [esi+4]

; 215  : 		Commands->Action_Attack(obj,params);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _params$[esp+248]
	push	ecx
	push	ebx
	mov	DWORD PTR _params$[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$[esp+260], eax
	mov	DWORD PTR _params$[esp+424], -1
	mov	DWORD PTR _params$[esp+344], edi
	mov	DWORD PTR _params$[esp+336], 0
	mov	BYTE PTR _params$[esp+348], 1
	mov	BYTE PTR _params$[esp+364], 0
	call	DWORD PTR [edx+20]
	add	esp, 8

; 216  : 		attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$[esp+248]

; 217  : 		Commands->Start_Timer(obj,this,attacktimer,2);

	mov	eax, DWORD PTR _attacktimer$[esp+248]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	eax
	push	esi
	push	ebx
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
$L7623:
	pop	edi
	pop	esi
	pop	ebx

; 218  : 	}
; 219  : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence@@EAEXPAE0@Z ENDP		; JFW_Base_Defence::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence::Action_Complete, COMDAT
; _this$ = ecx

; 223  : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L7630

; 224  : 	{
; 225  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L7630:

; 226  : 	}
; 227  : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence@@EAEXPAEH@Z	; JFW_Base_Defence::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence@@EAEXPAEH@Z PROC NEAR	; JFW_Base_Defence::Timer_Expired, COMDAT
; _this$ = ecx

; 230  : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 231  : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 232  : 	GameObject *object;
; 233  : 	float f;
; 234  : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L7643
	dec	eax
	jne	$L7640

; 268  : 	break;
; 269  : 	case 2:
; 270  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 271  : 		break;
; 272  : 	}
; 273  : }

	add	esp, 196				; 000000c4H
	ret	8
$L7643:

; 235  : 	{
; 236  : 	case 1:
; 237  : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 238  : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L13369
	mov	eax, 2
$L13369:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L7648
	dec	eax
	je	SHORT $L7650

; 258  : 		default:
; 259  : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 260  : 			if (object)

	test	eax, eax
	je	$L7649

; 261  : 			{
; 262  : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 263  : 				var.Set_Attack(object,0.0,0.0,true);
; 264  : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L13409
$L7650:

; 247  : 			}
; 248  : 			break;
; 249  : 		case 1:
; 250  : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 251  : 			if (object)
; 252  : 			{
; 253  : 				var.Set_Basic(this,70,1,-1);
; 254  : 				var.Set_Attack(object,0.0,0.0,true);
; 255  : 				Commands->Action_Attack(obj,var);
; 256  : 			}
; 257  : 			break;

	jmp	SHORT $L13411
$L7648:

; 239  : 		{
; 240  : 		case 0:
; 241  : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L13411:
	add	esp, 4

; 242  : 			if (object)

	test	eax, eax
	je	SHORT $L7649

; 243  : 			{
; 244  : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 245  : 				var.Set_Attack(object,0.0,0.0,true);
; 246  : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L13409:
	add	esp, 8
$L7649:

; 265  : 			}
; 266  : 		}
; 267  : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L7640:
	pop	esi

; 271  : 		break;
; 272  : 	}
; 273  : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence@@EAEXPAEH@Z ENDP	; JFW_Base_Defence::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence@@EAEXXZ ; JFW_Base_Defence::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence@@EAEXXZ PROC NEAR ; JFW_Base_Defence::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 276  : {

	push	esi
	mov	esi, ecx

; 277  : 	Auto_Save_Variable(1,4,&id1);

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

; 278  : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 279  : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 280  : 	Auto_Save_Variable(4,4,&objtype);

	lea	eax, DWORD PTR [esi+40]
	push	eax
	push	4
	push	4
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 281  : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence@@EAEXXZ ENDP ; JFW_Base_Defence::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_No_Aircraft@@EAEXPAE@Z ; JFW_Base_Defence_No_Aircraft::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_No_Aircraft@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T13419 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_No_Aircraft@@EAEXPAE@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft::Created, COMDAT
; _this$ = ecx

; 284  : {

	sub	esp, 60					; 0000003cH

; 285  : 	Vector3 pos,pos1,pos2,pos3;
; 286  : 	GameObject *object;
; 287  : 	objtype = Commands->Get_Player_Type(obj);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	push	esi
	mov	edi, ecx
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 288  : 	Commands->Enable_Hibernation(obj,false);

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

; 289  : 	Commands->Innate_Enable(obj);

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

; 290  : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 291  : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T13419[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 292  : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 293  : 	pos1.Y = pos.Y - 10;
; 294  : 	pos1.Z = pos.Z + 2;
; 295  : 	pos2.X = pos.X + 10;
; 296  : 	pos2.Y = pos.Y;
; 297  : 	pos2.Z = pos.Z + 2;
; 298  : 	pos3.X = pos.X + 10;
; 299  : 	pos3.Y = pos.Y - 10;
; 300  : 	pos3.Z = pos.Z + 2;
; 301  : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 302  : 	if (object)

	test	eax, eax
	je	SHORT $L7668

; 303  : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L7668:

; 304  : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 305  : 	if (object)

	test	eax, eax
	je	SHORT $L7669

; 306  : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L7669:

; 307  : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 308  : 	if (object)

	test	eax, eax
	je	SHORT $L7670

; 309  : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L7670:

; 310  : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 311  : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_No_Aircraft@@EAEXPAE@Z ENDP	; JFW_Base_Defence_No_Aircraft::Created
_TEXT	ENDS
PUBLIC	??_C@_07MLBKNGKL@Preset1?$AA@			; `string'
PUBLIC	??_C@_07OADHIFGI@Preset2?$AA@			; `string'
PUBLIC	??_C@_07PJCMLECJ@Preset3?$AA@			; `string'
PUBLIC	??_C@_07LGGNCCOO@Preset4?$AA@			; `string'
PUBLIC	??_C@_07KPHGBDKP@Preset5?$AA@			; `string'
PUBLIC	??_C@_07IEFLEAGM@Preset6?$AA@			; `string'
PUBLIC	??_C@_07JNEAHBCN@Preset7?$AA@			; `string'
PUBLIC	??_C@_07BKNIGNOC@Preset8?$AA@			; `string'
PUBLIC	?Enemy_Seen@JFW_Base_Defence_No_Aircraft@@EAEXPAE0@Z ; JFW_Base_Defence_No_Aircraft::Enemy_Seen
EXTRN	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z:NEAR	; ScriptImpClass::Get_Parameter
EXTRN	_stricmp:NEAR
;	COMDAT ??_C@_07MLBKNGKL@Preset1?$AA@
; File c:\documents and settings\owner\desktop\ssctf 1.3\scripts.h
CONST	SEGMENT
??_C@_07MLBKNGKL@Preset1?$AA@ DB 'Preset1', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_07OADHIFGI@Preset2?$AA@
CONST	SEGMENT
??_C@_07OADHIFGI@Preset2?$AA@ DB 'Preset2', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_07PJCMLECJ@Preset3?$AA@
CONST	SEGMENT
??_C@_07PJCMLECJ@Preset3?$AA@ DB 'Preset3', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_07LGGNCCOO@Preset4?$AA@
CONST	SEGMENT
??_C@_07LGGNCCOO@Preset4?$AA@ DB 'Preset4', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_07KPHGBDKP@Preset5?$AA@
CONST	SEGMENT
??_C@_07KPHGBDKP@Preset5?$AA@ DB 'Preset5', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_07IEFLEAGM@Preset6?$AA@
CONST	SEGMENT
??_C@_07IEFLEAGM@Preset6?$AA@ DB 'Preset6', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_07JNEAHBCN@Preset7?$AA@
CONST	SEGMENT
??_C@_07JNEAHBCN@Preset7?$AA@ DB 'Preset7', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_07BKNIGNOC@Preset8?$AA@
CONST	SEGMENT
??_C@_07BKNIGNOC@Preset8?$AA@ DB 'Preset8', 00H		; `string'
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\jfwdef.cpp
CONST	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_No_Aircraft@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$7693 = -236				; size = 4
_distance$7690 = -236					; size = 4
_pos2$7689 = -232					; size = 12
_pos$7688 = -220					; size = 12
$T13426 = -208						; size = 12
$T13424 = -208						; size = 12
_params$7687 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_No_Aircraft@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft::Enemy_Seen, COMDAT
; _this$ = ecx

; 314  : {

	sub	esp, 236				; 000000ecH
	push	esi
	push	edi

; 315  : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+240]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 316  : 	if (o)

	test	eax, eax
	je	SHORT $L7677

; 317  : 	{
; 318  : 		seen = o;

	mov	edi, eax
$L7677:

; 319  : 	}
; 320  : 	if ((stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7696
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7696
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7696
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7696
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7696
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7696
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7696
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7696
	push	ebx

; 321  : 	{
; 322  : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$7687[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 323  : 		Vector3 pos,pos2;
; 324  : 		float distance;
; 325  : 		float minattack,maxattack;
; 326  : 		float attacktimer;
; 327  : 		pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR $T13424[esp+248]
	push	ebx
	push	edx
	call	DWORD PTR [eax+64]
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _pos$7688[esp+256], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$7688[esp+260], edx
	mov	eax, DWORD PTR [eax+8]

; 328  : 		pos2 = Commands->Get_Position(seen);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T13426[esp+256]
	push	edi
	push	ecx
	mov	DWORD PTR _pos$7688[esp+272], eax
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$7689[esp+264], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$7689[esp+268], edx
	mov	eax, DWORD PTR [eax+8]

; 329  : 		distance = Commands->Get_Distance(pos2,pos);

	lea	ecx, DWORD PTR _pos$7688[esp+264]
	push	ecx
	lea	edx, DWORD PTR _pos2$7689[esp+268]
	mov	DWORD PTR _pos2$7689[esp+276], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+256]
	fstp	DWORD PTR _distance$7690[esp+272]
	add	esp, 24					; 00000018H

; 330  : 		minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 331  : 		if (distance >= minattack)

	fcomp	DWORD PTR _distance$7690[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L13440

; 332  : 		{
; 333  : 			maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 334  : 			params.Set_Basic(this,100,2,-1);
; 335  : 			params.Set_Attack_Hold(seen,maxattack,0.0,true,false);

	fstp	DWORD PTR _params$7687[esp+324]
	mov	ecx, DWORD PTR [esi+4]

; 336  : 			Commands->Action_Attack(obj,params);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _params$7687[esp+248]
	push	edx
	push	ebx
	mov	DWORD PTR _params$7687[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$7687[esp+260], ecx
	mov	DWORD PTR _params$7687[esp+424], -1
	mov	DWORD PTR _params$7687[esp+344], edi
	mov	DWORD PTR _params$7687[esp+336], 0
	mov	BYTE PTR _params$7687[esp+348], 1
	mov	BYTE PTR _params$7687[esp+364], 0
	call	DWORD PTR [eax+20]
	add	esp, 8

; 337  : 			attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$7693[esp+248]

; 338  : 			Commands->Start_Timer(obj,this,attacktimer,2);

	mov	ecx, DWORD PTR _attacktimer$7693[esp+248]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	ecx
	push	esi
	push	ebx
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
$L13440:
	pop	ebx
$L7696:
	pop	edi
	pop	esi

; 339  : 		}
; 340  : 	}
; 341  : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_No_Aircraft@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_No_Aircraft::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_No_Aircraft::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft::Action_Complete, COMDAT
; _this$ = ecx

; 345  : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L7703

; 346  : 	{
; 347  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L7703:

; 348  : 	}
; 349  : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_No_Aircraft::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_No_Aircraft@@EAEXPAEH@Z ; JFW_Base_Defence_No_Aircraft::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_No_Aircraft@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_No_Aircraft@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft::Timer_Expired, COMDAT
; _this$ = ecx

; 352  : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 353  : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 354  : 	GameObject *object;
; 355  : 	float f;
; 356  : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L7716
	dec	eax
	jne	$L7713

; 390  : 	break;
; 391  : 	case 2:
; 392  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 393  : 		break;
; 394  : 	}
; 395  : }

	add	esp, 196				; 000000c4H
	ret	8
$L7716:

; 357  : 	{
; 358  : 	case 1:
; 359  : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 360  : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L13448
	mov	eax, 2
$L13448:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L7721
	dec	eax
	je	SHORT $L7723

; 380  : 		default:
; 381  : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 382  : 			if (object)

	test	eax, eax
	je	$L7722

; 383  : 			{
; 384  : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 385  : 				var.Set_Attack(object,0.0,0.0,true);
; 386  : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L13488
$L7723:

; 369  : 			}
; 370  : 			break;
; 371  : 		case 1:
; 372  : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 373  : 			if (object)
; 374  : 			{
; 375  : 				var.Set_Basic(this,70,1,-1);
; 376  : 				var.Set_Attack(object,0.0,0.0,true);
; 377  : 				Commands->Action_Attack(obj,var);
; 378  : 			}
; 379  : 			break;

	jmp	SHORT $L13490
$L7721:

; 361  : 		{
; 362  : 		case 0:
; 363  : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L13490:
	add	esp, 4

; 364  : 			if (object)

	test	eax, eax
	je	SHORT $L7722

; 365  : 			{
; 366  : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 367  : 				var.Set_Attack(object,0.0,0.0,true);
; 368  : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L13488:
	add	esp, 8
$L7722:

; 387  : 			}
; 388  : 		}
; 389  : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L7713:
	pop	esi

; 393  : 		break;
; 394  : 	}
; 395  : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_No_Aircraft@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_No_Aircraft::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft@@EAEXXZ ; JFW_Base_Defence_No_Aircraft::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft@@EAEXXZ PROC NEAR ; JFW_Base_Defence_No_Aircraft::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 398  : {

	push	esi
	mov	esi, ecx

; 399  : 	Auto_Save_Variable(1,4,&id1);

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

; 400  : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 401  : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 402  : 	Auto_Save_Variable(4,4,&objtype);

	lea	eax, DWORD PTR [esi+40]
	push	eax
	push	4
	push	4
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 403  : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft@@EAEXXZ ENDP ; JFW_Base_Defence_No_Aircraft::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_Aircraft_Only@@EAEXPAE@Z ; JFW_Base_Defence_Aircraft_Only::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_Aircraft_Only@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T13498 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_Aircraft_Only@@EAEXPAE@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only::Created, COMDAT
; _this$ = ecx

; 406  : {

	sub	esp, 60					; 0000003cH

; 407  : 	Vector3 pos,pos1,pos2,pos3;
; 408  : 	GameObject *object;
; 409  : 	objtype = Commands->Get_Player_Type(obj);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	push	esi
	mov	edi, ecx
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 410  : 	Commands->Enable_Hibernation(obj,false);

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

; 411  : 	Commands->Innate_Enable(obj);

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

; 412  : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 413  : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T13498[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 414  : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 415  : 	pos1.Y = pos.Y - 10;
; 416  : 	pos1.Z = pos.Z + 2;
; 417  : 	pos2.X = pos.X + 10;
; 418  : 	pos2.Y = pos.Y;
; 419  : 	pos2.Z = pos.Z + 2;
; 420  : 	pos3.X = pos.X + 10;
; 421  : 	pos3.Y = pos.Y - 10;
; 422  : 	pos3.Z = pos.Z + 2;
; 423  : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 424  : 	if (object)

	test	eax, eax
	je	SHORT $L7741

; 425  : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L7741:

; 426  : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 427  : 	if (object)

	test	eax, eax
	je	SHORT $L7742

; 428  : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L7742:

; 429  : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 430  : 	if (object)

	test	eax, eax
	je	SHORT $L7743

; 431  : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L7743:

; 432  : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 433  : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_Aircraft_Only@@EAEXPAE@Z ENDP	; JFW_Base_Defence_Aircraft_Only::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Aircraft_Only@@EAEXPAE0@Z ; JFW_Base_Defence_Aircraft_Only::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Aircraft_Only@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$7759 = -236				; size = 4
_distance$7756 = -236					; size = 4
_pos2$7755 = -232					; size = 12
_pos$7754 = -220					; size = 12
$T13505 = -208						; size = 12
$T13503 = -208						; size = 12
_params$7753 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Aircraft_Only@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only::Enemy_Seen, COMDAT
; _this$ = ecx

; 436  : {

	sub	esp, 236				; 000000ecH
	push	esi
	push	edi

; 437  : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+240]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 438  : 	if (o)

	test	eax, eax
	je	SHORT $L7750

; 439  : 	{
; 440  : 		seen = o;

	mov	edi, eax
$L7750:

; 441  : 	}
; 442  : 	if ((!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7752
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7752
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7752
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7752
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L7752
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L7752
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L7752
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	jne	$L7762
$L7752:
	push	ebx

; 443  : 	{
; 444  : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$7753[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 445  : 		Vector3 pos,pos2;
; 446  : 		float distance;
; 447  : 		float minattack,maxattack;
; 448  : 		float attacktimer;
; 449  : 		pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR $T13503[esp+248]
	push	ebx
	push	edx
	call	DWORD PTR [eax+64]
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _pos$7754[esp+256], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$7754[esp+260], edx
	mov	eax, DWORD PTR [eax+8]

; 450  : 		pos2 = Commands->Get_Position(seen);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T13505[esp+256]
	push	edi
	push	ecx
	mov	DWORD PTR _pos$7754[esp+272], eax
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$7755[esp+264], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$7755[esp+268], edx
	mov	eax, DWORD PTR [eax+8]

; 451  : 		distance = Commands->Get_Distance(pos2,pos);

	lea	ecx, DWORD PTR _pos$7754[esp+264]
	push	ecx
	lea	edx, DWORD PTR _pos2$7755[esp+268]
	mov	DWORD PTR _pos2$7755[esp+276], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+256]
	fstp	DWORD PTR _distance$7756[esp+272]
	add	esp, 24					; 00000018H

; 452  : 		minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 453  : 		if (distance >= minattack)

	fcomp	DWORD PTR _distance$7756[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L13519

; 454  : 		{
; 455  : 			maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 456  : 			params.Set_Basic(this,100,2,-1);
; 457  : 			params.Set_Attack_Hold(seen,maxattack,0.0,true,false);

	fstp	DWORD PTR _params$7753[esp+324]
	mov	ecx, DWORD PTR [esi+4]

; 458  : 			Commands->Action_Attack(obj,params);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _params$7753[esp+248]
	push	edx
	push	ebx
	mov	DWORD PTR _params$7753[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$7753[esp+260], ecx
	mov	DWORD PTR _params$7753[esp+424], -1
	mov	DWORD PTR _params$7753[esp+344], edi
	mov	DWORD PTR _params$7753[esp+336], 0
	mov	BYTE PTR _params$7753[esp+348], 1
	mov	BYTE PTR _params$7753[esp+364], 0
	call	DWORD PTR [eax+20]
	add	esp, 8

; 459  : 			attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$7759[esp+248]

; 460  : 			Commands->Start_Timer(obj,this,attacktimer,2);

	mov	ecx, DWORD PTR _attacktimer$7759[esp+248]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	ecx
	push	esi
	push	ebx
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
$L13519:
	pop	ebx
$L7762:
	pop	edi
	pop	esi

; 461  : 		}
; 462  : 	}
; 463  : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Aircraft_Only@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Aircraft_Only::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Aircraft_Only::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only::Action_Complete, COMDAT
; _this$ = ecx

; 467  : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L7769

; 468  : 	{
; 469  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L7769:

; 470  : 	}
; 471  : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Aircraft_Only::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Aircraft_Only@@EAEXPAEH@Z ; JFW_Base_Defence_Aircraft_Only::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Aircraft_Only@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Aircraft_Only@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only::Timer_Expired, COMDAT
; _this$ = ecx

; 474  : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 475  : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 476  : 	GameObject *object;
; 477  : 	float f;
; 478  : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L7782
	dec	eax
	jne	$L7779

; 512  : 	break;
; 513  : 	case 2:
; 514  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 515  : 		break;
; 516  : 	}
; 517  : }

	add	esp, 196				; 000000c4H
	ret	8
$L7782:

; 479  : 	{
; 480  : 	case 1:
; 481  : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 482  : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L13527
	mov	eax, 2
$L13527:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L7787
	dec	eax
	je	SHORT $L7789

; 502  : 		default:
; 503  : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 504  : 			if (object)

	test	eax, eax
	je	$L7788

; 505  : 			{
; 506  : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 507  : 				var.Set_Attack(object,0.0,0.0,true);
; 508  : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L13567
$L7789:

; 491  : 			}
; 492  : 			break;
; 493  : 		case 1:
; 494  : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 495  : 			if (object)
; 496  : 			{
; 497  : 				var.Set_Basic(this,70,1,-1);
; 498  : 				var.Set_Attack(object,0.0,0.0,true);
; 499  : 				Commands->Action_Attack(obj,var);
; 500  : 			}
; 501  : 			break;

	jmp	SHORT $L13569
$L7787:

; 483  : 		{
; 484  : 		case 0:
; 485  : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L13569:
	add	esp, 4

; 486  : 			if (object)

	test	eax, eax
	je	SHORT $L7788

; 487  : 			{
; 488  : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 489  : 				var.Set_Attack(object,0.0,0.0,true);
; 490  : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L13567:
	add	esp, 8
$L7788:

; 509  : 			}
; 510  : 		}
; 511  : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L7779:
	pop	esi

; 515  : 		break;
; 516  : 	}
; 517  : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_Aircraft_Only@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Aircraft_Only::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only@@EAEXXZ ; JFW_Base_Defence_Aircraft_Only::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Aircraft_Only::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 520  : {

	push	esi
	mov	esi, ecx

; 521  : 	Auto_Save_Variable(1,4,&id1);

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

; 522  : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 523  : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 524  : 	Auto_Save_Variable(4,4,&objtype);

	lea	eax, DWORD PTR [esi+40]
	push	eax
	push	4
	push	4
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 525  : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only@@EAEXXZ ENDP ; JFW_Base_Defence_Aircraft_Only::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_Secondary@@EAEXPAE@Z	; JFW_Base_Defence_Secondary::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T13577 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_Secondary@@EAEXPAE@Z PROC NEAR ; JFW_Base_Defence_Secondary::Created, COMDAT
; _this$ = ecx

; 528  : {

	sub	esp, 60					; 0000003cH
	push	esi

; 529  : 	Vector3 pos,pos1,pos2,pos3;
; 530  : 	GameObject *object;
; 531  : 	primary = true;
; 532  : 	objtype = Commands->Get_Player_Type(obj);

	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	mov	edi, ecx
	mov	BYTE PTR [edi+44], 1
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 533  : 	Commands->Enable_Hibernation(obj,false);

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

; 534  : 	Commands->Innate_Enable(obj);

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

; 535  : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 536  : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T13577[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 537  : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 538  : 	pos1.Y = pos.Y - 10;
; 539  : 	pos1.Z = pos.Z + 2;
; 540  : 	pos2.X = pos.X + 10;
; 541  : 	pos2.Y = pos.Y;
; 542  : 	pos2.Z = pos.Z + 2;
; 543  : 	pos3.X = pos.X + 10;
; 544  : 	pos3.Y = pos.Y - 10;
; 545  : 	pos3.Z = pos.Z + 2;
; 546  : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 547  : 	if (object)

	test	eax, eax
	je	SHORT $L7807

; 548  : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L7807:

; 549  : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 550  : 	if (object)

	test	eax, eax
	je	SHORT $L7808

; 551  : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L7808:

; 552  : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 553  : 	if (object)

	test	eax, eax
	je	SHORT $L7809

; 554  : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L7809:

; 555  : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 556  : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_Secondary@@EAEXPAE@Z ENDP	; JFW_Base_Defence_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$ = -236					; size = 4
_distance$ = -236					; size = 4
_pos2$ = -232						; size = 12
_pos$ = -220						; size = 12
$T13584 = -208						; size = 12
$T13582 = -208						; size = 12
_params$ = -196						; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 559  : {

	sub	esp, 236				; 000000ecH
	push	ebx
	push	esi
	push	edi

; 560  : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+244]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 561  : 	if (o)

	test	eax, eax
	je	SHORT $L7816

; 562  : 	{
; 563  : 		seen = o;

	mov	edi, eax
$L7816:

; 564  : 	}
; 565  : 	ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 566  : 	Vector3 pos,pos2;
; 567  : 	float distance;
; 568  : 	float minattack,maxattack;
; 569  : 	float attacktimer;
; 570  : 	pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T13582[esp+248]
	push	ebx
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos$[esp+256], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$[esp+260], ecx
	mov	edx, DWORD PTR [eax+8]

; 571  : 	pos2 = Commands->Get_Position(seen);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T13584[esp+256]
	push	edi
	push	eax
	mov	DWORD PTR _pos$[esp+272], edx
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$[esp+264], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$[esp+268], ecx
	mov	edx, DWORD PTR [eax+8]

; 572  : 	distance = Commands->Get_Distance(pos2,pos);

	lea	eax, DWORD PTR _pos$[esp+264]
	push	eax
	lea	ecx, DWORD PTR _pos2$[esp+268]
	mov	DWORD PTR _pos2$[esp+276], edx
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+256]
	fstp	DWORD PTR _distance$[esp+272]
	add	esp, 24					; 00000018H

; 573  : 	minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 574  : 	if (distance >= minattack)

	fcomp	DWORD PTR _distance$[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L7827

; 575  : 	{
; 576  : 		maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 577  : 		params.Set_Basic(this,100,2,-1);
; 578  : 		params.Set_Attack_Hold(seen,maxattack,0.0,primary,false);

	fstp	DWORD PTR _params$[esp+324]
	mov	eax, DWORD PTR [esi+4]
	mov	cl, BYTE PTR [esi+44]

; 579  : 		Commands->Action_Attack(obj,params);

	lea	edx, DWORD PTR _params$[esp+248]
	push	edx
	mov	DWORD PTR _params$[esp+256], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	mov	DWORD PTR _params$[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$[esp+424], -1
	mov	DWORD PTR _params$[esp+344], edi
	mov	DWORD PTR _params$[esp+336], 0
	mov	BYTE PTR _params$[esp+348], cl
	mov	BYTE PTR _params$[esp+364], 0
	call	DWORD PTR [eax+20]
	add	esp, 8

; 580  : 		attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$[esp+248]

; 581  : 		Commands->Start_Timer(obj,this,attacktimer,2);

	mov	ecx, DWORD PTR _attacktimer$[esp+248]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	ecx
	push	esi
	push	ebx
	call	DWORD PTR [edx+128]

; 582  : 		if (primary)

	mov	al, BYTE PTR [esi+44]
	add	esp, 16					; 00000010H
	test	al, al
	sete	al
	mov	BYTE PTR [esi+44], al
$L7827:
	pop	edi
	pop	esi
	pop	ebx

; 583  : 		{
; 584  : 			primary = false;
; 585  : 		}
; 586  : 		else
; 587  : 		{
; 588  : 			primary = true;
; 589  : 		}
; 590  : 	}
; 591  : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Secondary@@EAEXPAE0@Z ENDP	; JFW_Base_Defence_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 595  : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L7835

; 596  : 	{
; 597  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L7835:

; 598  : 	}
; 599  : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 602  : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 603  : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 604  : 	GameObject *object;
; 605  : 	float f;
; 606  : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L7848
	dec	eax
	jne	$L7845

; 640  : 	break;
; 641  : 	case 2:
; 642  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 643  : 		break;
; 644  : 	}
; 645  : }

	add	esp, 196				; 000000c4H
	ret	8
$L7848:

; 607  : 	{
; 608  : 	case 1:
; 609  : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 610  : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L13606
	mov	eax, 2
$L13606:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L7853
	dec	eax
	je	SHORT $L7855

; 630  : 		default:
; 631  : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 632  : 			if (object)

	test	eax, eax
	je	$L7854

; 633  : 			{
; 634  : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 635  : 				var.Set_Attack(object,0.0,0.0,true);
; 636  : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L13646
$L7855:

; 619  : 			}
; 620  : 			break;
; 621  : 		case 1:
; 622  : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 623  : 			if (object)
; 624  : 			{
; 625  : 				var.Set_Basic(this,70,1,-1);
; 626  : 				var.Set_Attack(object,0.0,0.0,true);
; 627  : 				Commands->Action_Attack(obj,var);
; 628  : 			}
; 629  : 			break;

	jmp	SHORT $L13648
$L7853:

; 611  : 		{
; 612  : 		case 0:
; 613  : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L13648:
	add	esp, 4

; 614  : 			if (object)

	test	eax, eax
	je	SHORT $L7854

; 615  : 			{
; 616  : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 617  : 				var.Set_Attack(object,0.0,0.0,true);
; 618  : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L13646:
	add	esp, 8
$L7854:

; 637  : 			}
; 638  : 		}
; 639  : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L7845:
	pop	esi

; 643  : 		break;
; 644  : 	}
; 645  : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Secondary@@EAEXXZ ; JFW_Base_Defence_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 648  : {

	push	esi
	mov	esi, ecx

; 649  : 	Auto_Save_Variable(1,4,&id1);

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

; 650  : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 651  : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 652  : 	Auto_Save_Variable(4,4,&objtype);

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

; 653  : 	Auto_Save_Variable(5,1,&primary);

	lea	ecx, DWORD PTR [esi+44]
	push	ecx
	push	1
	push	5
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 654  : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_Secondary@@EAEXXZ ENDP ; JFW_Base_Defence_Secondary::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAE@Z ; JFW_Base_Defence_No_Aircraft_Secondary::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T13656 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAE@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft_Secondary::Created, COMDAT
; _this$ = ecx

; 657  : {

	sub	esp, 60					; 0000003cH
	push	esi

; 658  : 	Vector3 pos,pos1,pos2,pos3;
; 659  : 	GameObject *object;
; 660  : 	primary = true;
; 661  : 	objtype = Commands->Get_Player_Type(obj);

	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	mov	edi, ecx
	mov	BYTE PTR [edi+44], 1
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 662  : 	Commands->Enable_Hibernation(obj,false);

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

; 663  : 	Commands->Innate_Enable(obj);

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

; 664  : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 665  : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T13656[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 666  : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 667  : 	pos1.Y = pos.Y - 10;
; 668  : 	pos1.Z = pos.Z + 2;
; 669  : 	pos2.X = pos.X + 10;
; 670  : 	pos2.Y = pos.Y;
; 671  : 	pos2.Z = pos.Z + 2;
; 672  : 	pos3.X = pos.X + 10;
; 673  : 	pos3.Y = pos.Y - 10;
; 674  : 	pos3.Z = pos.Z + 2;
; 675  : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 676  : 	if (object)

	test	eax, eax
	je	SHORT $L7873

; 677  : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L7873:

; 678  : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 679  : 	if (object)

	test	eax, eax
	je	SHORT $L7874

; 680  : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L7874:

; 681  : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 682  : 	if (object)

	test	eax, eax
	je	SHORT $L7875

; 683  : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L7875:

; 684  : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 685  : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_No_Aircraft_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_No_Aircraft_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$7890 = -236				; size = 4
_distance$7887 = -236					; size = 4
_pos2$7886 = -232					; size = 12
_pos$7885 = -220					; size = 12
$T13663 = -208						; size = 12
$T13661 = -208						; size = 12
_params$7884 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 688  : {

	sub	esp, 236				; 000000ecH
	push	esi
	push	edi

; 689  : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+240]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 690  : 	if (o)

	test	eax, eax
	je	SHORT $L7882

; 691  : 	{
; 692  : 		seen = o;

	mov	edi, eax
$L7882:

; 693  : 	}
; 694  : 	if ((stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7894
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7894
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7894
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7894
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7894
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7894
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7894
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7894
	push	ebx

; 695  : 	{
; 696  : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$7884[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 697  : 		Vector3 pos,pos2;
; 698  : 		float distance;
; 699  : 		float minattack,maxattack;
; 700  : 		float attacktimer;
; 701  : 		pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR $T13661[esp+248]
	push	ebx
	push	edx
	call	DWORD PTR [eax+64]
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _pos$7885[esp+256], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$7885[esp+260], edx
	mov	eax, DWORD PTR [eax+8]

; 702  : 		pos2 = Commands->Get_Position(seen);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T13663[esp+256]
	push	edi
	push	ecx
	mov	DWORD PTR _pos$7885[esp+272], eax
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$7886[esp+264], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$7886[esp+268], edx
	mov	eax, DWORD PTR [eax+8]

; 703  : 		distance = Commands->Get_Distance(pos2,pos);

	lea	ecx, DWORD PTR _pos$7885[esp+264]
	push	ecx
	lea	edx, DWORD PTR _pos2$7886[esp+268]
	mov	DWORD PTR _pos2$7886[esp+276], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+256]
	fstp	DWORD PTR _distance$7887[esp+272]
	add	esp, 24					; 00000018H

; 704  : 		minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 705  : 		if (distance >= minattack)

	fcomp	DWORD PTR _distance$7887[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L13678

; 706  : 		{
; 707  : 			maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 708  : 			params.Set_Basic(this,100,2,-1);
; 709  : 			params.Set_Attack_Hold(seen,maxattack,0.0,primary,false);

	fstp	DWORD PTR _params$7884[esp+324]
	mov	ecx, DWORD PTR [esi+4]
	mov	dl, BYTE PTR [esi+44]

; 710  : 			Commands->Action_Attack(obj,params);

	lea	eax, DWORD PTR _params$7884[esp+248]
	push	eax
	mov	DWORD PTR _params$7884[esp+256], ecx
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	mov	DWORD PTR _params$7884[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$7884[esp+424], -1
	mov	DWORD PTR _params$7884[esp+344], edi
	mov	DWORD PTR _params$7884[esp+336], 0
	mov	BYTE PTR _params$7884[esp+348], dl
	mov	BYTE PTR _params$7884[esp+364], 0
	call	DWORD PTR [ecx+20]
	add	esp, 8

; 711  : 			attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$7890[esp+248]

; 712  : 			Commands->Start_Timer(obj,this,attacktimer,2);

	mov	edx, DWORD PTR _attacktimer$7890[esp+248]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	edx
	push	esi
	push	ebx
	call	DWORD PTR [eax+128]

; 713  : 			if (primary)

	mov	al, BYTE PTR [esi+44]
	add	esp, 16					; 00000010H
	test	al, al
	sete	cl
	mov	BYTE PTR [esi+44], cl
$L13678:
	pop	ebx
$L7894:
	pop	edi
	pop	esi

; 714  : 			{
; 715  : 				primary = false;
; 716  : 			}
; 717  : 			else
; 718  : 			{
; 719  : 				primary = true;
; 720  : 			}
; 721  : 		}
; 722  : 	}
; 723  : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_No_Aircraft_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_No_Aircraft_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 727  : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L7902

; 728  : 	{
; 729  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L7902:

; 730  : 	}
; 731  : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_No_Aircraft_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_No_Aircraft_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 734  : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 735  : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 736  : 	GameObject *object;
; 737  : 	float f;
; 738  : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L7915
	dec	eax
	jne	$L7912

; 772  : 	break;
; 773  : 	case 2:
; 774  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 775  : 		break;
; 776  : 	}
; 777  : }

	add	esp, 196				; 000000c4H
	ret	8
$L7915:

; 739  : 	{
; 740  : 	case 1:
; 741  : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 742  : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L13686
	mov	eax, 2
$L13686:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L7920
	dec	eax
	je	SHORT $L7922

; 762  : 		default:
; 763  : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 764  : 			if (object)

	test	eax, eax
	je	$L7921

; 765  : 			{
; 766  : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 767  : 				var.Set_Attack(object,0.0,0.0,true);
; 768  : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L13726
$L7922:

; 751  : 			}
; 752  : 			break;
; 753  : 		case 1:
; 754  : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 755  : 			if (object)
; 756  : 			{
; 757  : 				var.Set_Basic(this,70,1,-1);
; 758  : 				var.Set_Attack(object,0.0,0.0,true);
; 759  : 				Commands->Action_Attack(obj,var);
; 760  : 			}
; 761  : 			break;

	jmp	SHORT $L13728
$L7920:

; 743  : 		{
; 744  : 		case 0:
; 745  : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L13728:
	add	esp, 4

; 746  : 			if (object)

	test	eax, eax
	je	SHORT $L7921

; 747  : 			{
; 748  : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 749  : 				var.Set_Attack(object,0.0,0.0,true);
; 750  : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L13726:
	add	esp, 8
$L7921:

; 769  : 			}
; 770  : 		}
; 771  : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L7912:
	pop	esi

; 775  : 		break;
; 776  : 	}
; 777  : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_No_Aircraft_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXXZ ; JFW_Base_Defence_No_Aircraft_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_No_Aircraft_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 780  : {

	push	esi
	mov	esi, ecx

; 781  : 	Auto_Save_Variable(1,4,&id1);

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

; 782  : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 783  : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 784  : 	Auto_Save_Variable(4,4,&objtype);

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

; 785  : 	Auto_Save_Variable(5,1,&primary);

	lea	ecx, DWORD PTR [esi+44]
	push	ecx
	push	1
	push	5
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 786  : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXXZ ENDP ; JFW_Base_Defence_No_Aircraft_Secondary::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAE@Z ; JFW_Base_Defence_Aircraft_Only_Secondary::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T13736 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAE@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Secondary::Created, COMDAT
; _this$ = ecx

; 789  : {

	sub	esp, 60					; 0000003cH
	push	esi

; 790  : 	Vector3 pos,pos1,pos2,pos3;
; 791  : 	GameObject *object;
; 792  : 	primary = true;
; 793  : 	objtype = Commands->Get_Player_Type(obj);

	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	mov	edi, ecx
	mov	BYTE PTR [edi+44], 1
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 794  : 	Commands->Enable_Hibernation(obj,false);

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

; 795  : 	Commands->Innate_Enable(obj);

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

; 796  : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 797  : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T13736[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 798  : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 799  : 	pos1.Y = pos.Y - 10;
; 800  : 	pos1.Z = pos.Z + 2;
; 801  : 	pos2.X = pos.X + 10;
; 802  : 	pos2.Y = pos.Y;
; 803  : 	pos2.Z = pos.Z + 2;
; 804  : 	pos3.X = pos.X + 10;
; 805  : 	pos3.Y = pos.Y - 10;
; 806  : 	pos3.Z = pos.Z + 2;
; 807  : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 808  : 	if (object)

	test	eax, eax
	je	SHORT $L7940

; 809  : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L7940:

; 810  : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 811  : 	if (object)

	test	eax, eax
	je	SHORT $L7941

; 812  : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L7941:

; 813  : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 814  : 	if (object)

	test	eax, eax
	je	SHORT $L7942

; 815  : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L7942:

; 816  : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 817  : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Aircraft_Only_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_Aircraft_Only_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$7958 = -236				; size = 4
_distance$7955 = -236					; size = 4
_pos2$7954 = -232					; size = 12
_pos$7953 = -220					; size = 12
$T13743 = -208						; size = 12
$T13741 = -208						; size = 12
_params$7952 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 820  : {

	sub	esp, 236				; 000000ecH
	push	esi
	push	edi

; 821  : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+240]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 822  : 	if (o)

	test	eax, eax
	je	SHORT $L7949

; 823  : 	{
; 824  : 		seen = o;

	mov	edi, eax
$L7949:

; 825  : 	}
; 826  : 	if ((!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7951
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7951
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7951
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L7951
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L7951
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L7951
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L7951
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	jne	$L7962
$L7951:
	push	ebx

; 827  : 	{
; 828  : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$7952[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 829  : 		Vector3 pos,pos2;
; 830  : 		float distance;
; 831  : 		float minattack,maxattack;
; 832  : 		float attacktimer;
; 833  : 		pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR $T13741[esp+248]
	push	ebx
	push	edx
	call	DWORD PTR [eax+64]
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _pos$7953[esp+256], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$7953[esp+260], edx
	mov	eax, DWORD PTR [eax+8]

; 834  : 		pos2 = Commands->Get_Position(seen);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T13743[esp+256]
	push	edi
	push	ecx
	mov	DWORD PTR _pos$7953[esp+272], eax
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$7954[esp+264], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$7954[esp+268], edx
	mov	eax, DWORD PTR [eax+8]

; 835  : 		distance = Commands->Get_Distance(pos2,pos);

	lea	ecx, DWORD PTR _pos$7953[esp+264]
	push	ecx
	lea	edx, DWORD PTR _pos2$7954[esp+268]
	mov	DWORD PTR _pos2$7954[esp+276], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+256]
	fstp	DWORD PTR _distance$7955[esp+272]
	add	esp, 24					; 00000018H

; 836  : 		minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 837  : 		if (distance >= minattack)

	fcomp	DWORD PTR _distance$7955[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L13758

; 838  : 		{
; 839  : 			maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 840  : 			params.Set_Basic(this,100,2,-1);
; 841  : 			params.Set_Attack_Hold(seen,maxattack,0.0,primary,false);

	fstp	DWORD PTR _params$7952[esp+324]
	mov	ecx, DWORD PTR [esi+4]
	mov	dl, BYTE PTR [esi+44]

; 842  : 			Commands->Action_Attack(obj,params);

	lea	eax, DWORD PTR _params$7952[esp+248]
	push	eax
	mov	DWORD PTR _params$7952[esp+256], ecx
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	mov	DWORD PTR _params$7952[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$7952[esp+424], -1
	mov	DWORD PTR _params$7952[esp+344], edi
	mov	DWORD PTR _params$7952[esp+336], 0
	mov	BYTE PTR _params$7952[esp+348], dl
	mov	BYTE PTR _params$7952[esp+364], 0
	call	DWORD PTR [ecx+20]
	add	esp, 8

; 843  : 			attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$7958[esp+248]

; 844  : 			Commands->Start_Timer(obj,this,attacktimer,2);

	mov	edx, DWORD PTR _attacktimer$7958[esp+248]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	edx
	push	esi
	push	ebx
	call	DWORD PTR [eax+128]

; 845  : 			if (primary)

	mov	al, BYTE PTR [esi+44]
	add	esp, 16					; 00000010H
	test	al, al
	sete	cl
	mov	BYTE PTR [esi+44], cl
$L13758:
	pop	ebx
$L7962:
	pop	edi
	pop	esi

; 846  : 			{
; 847  : 				primary = false;
; 848  : 			}
; 849  : 			else
; 850  : 			{
; 851  : 				primary = true;
; 852  : 			}
; 853  : 		}
; 854  : 	}
; 855  : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Aircraft_Only_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Aircraft_Only_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 859  : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L7970

; 860  : 	{
; 861  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L7970:

; 862  : 	}
; 863  : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Aircraft_Only_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_Aircraft_Only_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 866  : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 867  : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 868  : 	GameObject *object;
; 869  : 	float f;
; 870  : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L7983
	dec	eax
	jne	$L7980

; 904  : 	break;
; 905  : 	case 2:
; 906  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 907  : 		break;
; 908  : 	}
; 909  : }

	add	esp, 196				; 000000c4H
	ret	8
$L7983:

; 871  : 	{
; 872  : 	case 1:
; 873  : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 874  : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L13766
	mov	eax, 2
$L13766:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L7988
	dec	eax
	je	SHORT $L7990

; 894  : 		default:
; 895  : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 896  : 			if (object)

	test	eax, eax
	je	$L7989

; 897  : 			{
; 898  : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 899  : 				var.Set_Attack(object,0.0,0.0,true);
; 900  : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L13806
$L7990:

; 883  : 			}
; 884  : 			break;
; 885  : 		case 1:
; 886  : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 887  : 			if (object)
; 888  : 			{
; 889  : 				var.Set_Basic(this,70,1,-1);
; 890  : 				var.Set_Attack(object,0.0,0.0,true);
; 891  : 				Commands->Action_Attack(obj,var);
; 892  : 			}
; 893  : 			break;

	jmp	SHORT $L13808
$L7988:

; 875  : 		{
; 876  : 		case 0:
; 877  : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L13808:
	add	esp, 4

; 878  : 			if (object)

	test	eax, eax
	je	SHORT $L7989

; 879  : 			{
; 880  : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 881  : 				var.Set_Attack(object,0.0,0.0,true);
; 882  : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L13806:
	add	esp, 8
$L7989:

; 901  : 			}
; 902  : 		}
; 903  : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L7980:
	pop	esi

; 907  : 		break;
; 908  : 	}
; 909  : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Aircraft_Only_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXXZ ; JFW_Base_Defence_Aircraft_Only_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 912  : {

	push	esi
	mov	esi, ecx

; 913  : 	Auto_Save_Variable(1,4,&id1);

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

; 914  : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 915  : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 916  : 	Auto_Save_Variable(4,4,&objtype);

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

; 917  : 	Auto_Save_Variable(5,1,&primary);

	lea	ecx, DWORD PTR [esi+44]
	push	ecx
	push	1
	push	5
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 918  : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXXZ ENDP ; JFW_Base_Defence_Aircraft_Only_Secondary::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_Animated@@EAEXPAE@Z	; JFW_Base_Defence_Animated::Created
PUBLIC	??_C@_09ONEINPNJ@Animation?$AA@			; `string'
;	COMDAT ??_C@_09ONEINPNJ@Animation?$AA@
CONST	SEGMENT
??_C@_09ONEINPNJ@Animation?$AA@ DB 'Animation', 00H	; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Created@JFW_Base_Defence_Animated@@EAEXPAE@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_Animated@@EAEXPAE@Z PROC NEAR	; JFW_Base_Defence_Animated::Created, COMDAT
; _this$ = ecx

; 921  : {

	push	esi

; 922  : 	popup = false;

	xor	eax, eax
	push	edi

; 923  : 	attack = false;
; 924  : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 925  : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 926  : }

	ret	4
?Created@JFW_Base_Defence_Animated@@EAEXPAE@Z ENDP	; JFW_Base_Defence_Animated::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated@@EAEXPAE0@Z ; JFW_Base_Defence_Animated::Enemy_Seen
PUBLIC	??_C@_09OMKBCKHK@PopupTime?$AA@			; `string'
PUBLIC	??_C@_09GIBPIKCC@LastFrame?$AA@			; `string'
;	COMDAT ??_C@_09OMKBCKHK@PopupTime?$AA@
; File c:\documents and settings\owner\desktop\ssctf 1.3\scripts.h
CONST	SEGMENT
??_C@_09OMKBCKHK@PopupTime?$AA@ DB 'PopupTime', 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_09GIBPIKCC@LastFrame?$AA@
CONST	SEGMENT
??_C@_09GIBPIKCC@LastFrame?$AA@ DB 'LastFrame', 00H	; `string'
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\jfwdef.cpp
CONST	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$8015 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated::Enemy_Seen, COMDAT
; _this$ = ecx

; 929  : {

	sub	esp, 196				; 000000c4H
	push	esi
	push	edi

; 930  : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+200]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 931  : 	if (o)

	test	eax, eax
	je	SHORT $L8009

; 932  : 	{
; 933  : 		seen = o;

	mov	edi, eax
$L8009:

; 934  : 	}
; 935  : 	if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L8010
	push	ebx

; 936  : 	{
; 937  : 		popup = true;

	mov	BYTE PTR [esi+28], 1

; 938  : 		Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 939  : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 940  : 		Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	ebx
	pop	edi
	pop	esi

; 948  : 	}
; 949  : }

	add	esp, 196				; 000000c4H
	ret	8
$L8010:

; 941  : 	}
; 942  : 	else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L8014

; 943  : 	{
; 944  : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8015[esp+204]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 945  : 		params.Set_Basic(this,100,1,-1);

	mov	eax, DWORD PTR [esi+4]

; 946  : 		params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,true,false);

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8015[esp+208], 100	; 00000064H
	mov	DWORD PTR _params$8015[esp+212], eax
	mov	DWORD PTR _params$8015[esp+376], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8015[esp+280]

; 947  : 		Commands->Action_Attack(obj,params);

	mov	edx, DWORD PTR _obj$[esp+200]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _params$8015[esp+204]
	push	ecx
	push	edx
	mov	DWORD PTR _params$8015[esp+300], edi
	mov	DWORD PTR _params$8015[esp+292], 0
	mov	BYTE PTR _params$8015[esp+304], 1
	mov	BYTE PTR _params$8015[esp+320], 0
	call	DWORD PTR [eax+20]
	add	esp, 8
$L8014:
	pop	edi
	pop	esi

; 948  : 	}
; 949  : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated@@EAEXPAE0@Z ENDP	; JFW_Base_Defence_Animated::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated::Action_Complete, COMDAT
; _this$ = ecx

; 953  : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 954  : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated@@EAEXPAEH@Z ; JFW_Base_Defence_Animated::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated::Timer_Expired, COMDAT
; _this$ = ecx

; 958  : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8027
	push	edi

; 959  : 	{
; 960  : 		popup = false;
; 961  : 		attack = false;
; 962  : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 963  : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 968  : 	}
; 969  : }

	ret	8
$L8027:

; 964  : 	}
; 965  : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8028

; 966  : 	{
; 967  : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8028:
	pop	esi

; 968  : 	}
; 969  : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated@@EAEXXZ ; JFW_Base_Defence_Animated::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 972  : {

	push	esi
	mov	esi, ecx

; 973  : 	Auto_Save_Variable(1,1,&popup);

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

; 974  : 	Auto_Save_Variable(2,1,&attack);

	lea	ecx, DWORD PTR [esi+29]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 975  : }

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

; 978  : {

	push	esi

; 979  : 	popup = false;

	xor	eax, eax
	push	edi

; 980  : 	attack = false;
; 981  : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 982  : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 983  : }

	ret	4
?Created@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_No_Aircraft::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$8047 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft::Enemy_Seen, COMDAT
; _this$ = ecx

; 986  : {

	sub	esp, 196				; 000000c4H
	push	esi
	push	edi

; 987  : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+200]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 988  : 	if (o)

	test	eax, eax
	je	SHORT $L8042

; 989  : 	{
; 990  : 		seen = o;

	mov	edi, eax
$L8042:

; 991  : 	}
; 992  : 	if ((stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8046
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8046
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8046
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8046
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8046
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8046
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8046
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8046

; 993  : 	{
; 994  : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L8044
	push	ebx

; 995  : 		{
; 996  : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 997  : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 998  : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 999  : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	ebx
	pop	edi
	pop	esi

; 1007 : 		}
; 1008 : 	}
; 1009 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8044:

; 1000 : 		}
; 1001 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L8046

; 1002 : 		{
; 1003 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8047[esp+204]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1004 : 			params.Set_Basic(this,100,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 1005 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,true,false);

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8047[esp+208], 100	; 00000064H
	mov	DWORD PTR _params$8047[esp+212], edx
	mov	DWORD PTR _params$8047[esp+376], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8047[esp+280]

; 1006 : 			Commands->Action_Attack(obj,params);

	mov	ecx, DWORD PTR _obj$[esp+200]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR _params$8047[esp+204]
	push	eax
	push	ecx
	mov	DWORD PTR _params$8047[esp+300], edi
	mov	DWORD PTR _params$8047[esp+292], 0
	mov	BYTE PTR _params$8047[esp+304], 1
	mov	BYTE PTR _params$8047[esp+320], 0
	call	DWORD PTR [edx+20]
	add	esp, 8
$L8046:
	pop	edi
	pop	esi

; 1007 : 		}
; 1008 : 	}
; 1009 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_No_Aircraft::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft::Action_Complete, COMDAT
; _this$ = ecx

; 1013 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 1014 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_No_Aircraft::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft::Timer_Expired, COMDAT
; _this$ = ecx

; 1018 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8059
	push	edi

; 1019 : 	{
; 1020 : 		popup = false;
; 1021 : 		attack = false;
; 1022 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 1023 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1028 : 	}
; 1029 : }

	ret	8
$L8059:

; 1024 : 	}
; 1025 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8060

; 1026 : 	{
; 1027 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8060:
	pop	esi

; 1028 : 	}
; 1029 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_Aircraft@@EAEXXZ ; JFW_Base_Defence_Animated_No_Aircraft::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_Aircraft@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_Aircraft@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1032 : {

	push	esi
	mov	esi, ecx

; 1033 : 	Auto_Save_Variable(1,1,&popup);

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

; 1034 : 	Auto_Save_Variable(2,1,&attack);

	lea	ecx, DWORD PTR [esi+29]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 1035 : }

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

; 1038 : {

	push	esi

; 1039 : 	popup = false;

	xor	eax, eax
	push	edi

; 1040 : 	attack = false;
; 1041 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 1042 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1043 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Aircraft_Only::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$8080 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only::Enemy_Seen, COMDAT
; _this$ = ecx

; 1046 : {

	sub	esp, 196				; 000000c4H
	push	esi
	push	edi

; 1047 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+200]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 1048 : 	if (o)

	test	eax, eax
	je	SHORT $L8074

; 1049 : 	{
; 1050 : 		seen = o;

	mov	edi, eax
$L8074:

; 1051 : 	}
; 1052 : 	if ((!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8076
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8076
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8076
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8076
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L8076
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L8076
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L8076
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	jne	$L8079
$L8076:

; 1053 : 	{
; 1054 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L8077
	push	ebx

; 1055 : 		{
; 1056 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 1057 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 1058 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 1059 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	ebx
	pop	edi
	pop	esi

; 1067 : 		}
; 1068 : 	}
; 1069 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8077:

; 1060 : 		}
; 1061 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L8079

; 1062 : 		{
; 1063 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8080[esp+204]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1064 : 			params.Set_Basic(this,100,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 1065 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,true,false);

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8080[esp+208], 100	; 00000064H
	mov	DWORD PTR _params$8080[esp+212], edx
	mov	DWORD PTR _params$8080[esp+376], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8080[esp+280]

; 1066 : 			Commands->Action_Attack(obj,params);

	mov	ecx, DWORD PTR _obj$[esp+200]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR _params$8080[esp+204]
	push	eax
	push	ecx
	mov	DWORD PTR _params$8080[esp+300], edi
	mov	DWORD PTR _params$8080[esp+292], 0
	mov	BYTE PTR _params$8080[esp+304], 1
	mov	BYTE PTR _params$8080[esp+320], 0
	call	DWORD PTR [edx+20]
	add	esp, 8
$L8079:
	pop	edi
	pop	esi

; 1067 : 		}
; 1068 : 	}
; 1069 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Aircraft_Only::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only::Action_Complete, COMDAT
; _this$ = ecx

; 1073 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 1074 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Aircraft_Only::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only::Timer_Expired, COMDAT
; _this$ = ecx

; 1078 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8092
	push	edi

; 1079 : 	{
; 1080 : 		popup = false;
; 1081 : 		attack = false;
; 1082 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 1083 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1088 : 	}
; 1089 : }

	ret	8
$L8092:

; 1084 : 	}
; 1085 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8093

; 1086 : 	{
; 1087 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8093:
	pop	esi

; 1088 : 	}
; 1089 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXXZ ; JFW_Base_Defence_Animated_Aircraft_Only::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1092 : {

	push	esi
	mov	esi, ecx

; 1093 : 	Auto_Save_Variable(1,1,&popup);

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

; 1094 : 	Auto_Save_Variable(2,1,&attack);

	lea	ecx, DWORD PTR [esi+29]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 1095 : }

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

; 1098 : {

	push	esi

; 1099 : 	popup = false;

	xor	eax, eax
	push	edi

; 1100 : 	attack = false;
; 1101 : 	primary = true;
; 1102 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 1103 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1104 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$8111 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 1107 : {

	sub	esp, 196				; 000000c4H
	push	ebx
	push	esi
	push	edi

; 1108 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+204]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 1109 : 	if (o)

	test	eax, eax
	je	SHORT $L8107

; 1110 : 	{
; 1111 : 		seen = o;

	mov	edi, eax
$L8107:

; 1112 : 	}
; 1113 : 	if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L8108

; 1114 : 	{
; 1115 : 		popup = true;

	mov	BYTE PTR [esi+28], 1

; 1116 : 		Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 1117 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 1118 : 		Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi
	pop	ebx

; 1127 : 		{
; 1128 : 			primary = false;
; 1129 : 		}
; 1130 : 		else
; 1131 : 		{
; 1132 : 			primary = true;
; 1133 : 		}
; 1134 : 	}
; 1135 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8108:

; 1119 : 	}
; 1120 : 	else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L8112

; 1121 : 	{
; 1122 : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8111[esp+208]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1123 : 		params.Set_Basic(this,100,1,-1);

	mov	eax, DWORD PTR [esi+4]

; 1124 : 		params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8111[esp+212], 100	; 00000064H
	mov	DWORD PTR _params$8111[esp+216], eax
	mov	DWORD PTR _params$8111[esp+380], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8111[esp+284]

; 1125 : 		Commands->Action_Attack(obj,params);

	mov	edx, DWORD PTR _obj$[esp+204]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _params$8111[esp+208]
	push	ecx
	push	edx
	mov	DWORD PTR _params$8111[esp+304], edi
	mov	DWORD PTR _params$8111[esp+296], 0
	mov	BYTE PTR _params$8111[esp+308], bl
	mov	BYTE PTR _params$8111[esp+324], 0
	call	DWORD PTR [eax+20]

; 1126 : 		if (primary)

	mov	al, BYTE PTR [esi+30]
	add	esp, 8
	test	al, al
	sete	cl
	mov	BYTE PTR [esi+30], cl
$L8112:
	pop	edi
	pop	esi
	pop	ebx

; 1127 : 		{
; 1128 : 			primary = false;
; 1129 : 		}
; 1130 : 		else
; 1131 : 		{
; 1132 : 			primary = true;
; 1133 : 		}
; 1134 : 	}
; 1135 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 1139 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 1140 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 1144 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8125
	push	edi

; 1145 : 	{
; 1146 : 		popup = false;
; 1147 : 		attack = false;
; 1148 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 1149 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1154 : 	}
; 1155 : }

	ret	8
$L8125:

; 1150 : 	}
; 1151 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8126

; 1152 : 	{
; 1153 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8126:
	pop	esi

; 1154 : 	}
; 1155 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Secondary@@EAEXXZ ; JFW_Base_Defence_Animated_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1158 : {

	push	esi
	mov	esi, ecx

; 1159 : 	Auto_Save_Variable(1,1,&popup);

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

; 1160 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1161 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 1162 : }

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

; 1165 : {

	push	esi

; 1166 : 	popup = false;

	xor	eax, eax
	push	edi

; 1167 : 	attack = false;
; 1168 : 	primary = true;
; 1169 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 1170 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1171 : }

	ret	4
?Created@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$8145 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 1174 : {

	sub	esp, 196				; 000000c4H
	push	esi
	push	edi

; 1175 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+200]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 1176 : 	if (o)

	test	eax, eax
	je	SHORT $L8140

; 1177 : 	{
; 1178 : 		seen = o;

	mov	edi, eax
$L8140:

; 1179 : 	}
; 1180 : 	if ((stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8146
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8146
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8146
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8146
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8146
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8146
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8146
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8146

; 1181 : 	{
; 1182 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L8142

; 1183 : 		{
; 1184 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 1185 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 1186 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 1187 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	ebx
	pop	edi
	pop	esi

; 1196 : 			{
; 1197 : 				primary = false;
; 1198 : 			}
; 1199 : 			else
; 1200 : 			{
; 1201 : 				primary = true;
; 1202 : 			}
; 1203 : 		}
; 1204 : 	}
; 1205 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8142:

; 1188 : 		}
; 1189 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L13950

; 1190 : 		{
; 1191 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8145[esp+208]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1192 : 			params.Set_Basic(this,100,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 1193 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8145[esp+212], 100	; 00000064H
	mov	DWORD PTR _params$8145[esp+216], edx
	mov	DWORD PTR _params$8145[esp+380], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8145[esp+284]

; 1194 : 			Commands->Action_Attack(obj,params);

	mov	ecx, DWORD PTR _obj$[esp+204]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR _params$8145[esp+208]
	push	eax
	push	ecx
	mov	DWORD PTR _params$8145[esp+304], edi
	mov	DWORD PTR _params$8145[esp+296], 0
	mov	BYTE PTR _params$8145[esp+308], bl
	mov	BYTE PTR _params$8145[esp+324], 0
	call	DWORD PTR [edx+20]

; 1195 : 			if (primary)

	mov	al, BYTE PTR [esi+30]
	add	esp, 8
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L13950:
	pop	ebx
$L8146:
	pop	edi
	pop	esi

; 1196 : 			{
; 1197 : 				primary = false;
; 1198 : 			}
; 1199 : 			else
; 1200 : 			{
; 1201 : 				primary = true;
; 1202 : 			}
; 1203 : 		}
; 1204 : 	}
; 1205 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 1209 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 1210 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 1214 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8159
	push	edi

; 1215 : 	{
; 1216 : 		popup = false;
; 1217 : 		attack = false;
; 1218 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 1219 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1224 : 	}
; 1225 : }

	ret	8
$L8159:

; 1220 : 	}
; 1221 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8160

; 1222 : 	{
; 1223 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8160:
	pop	esi

; 1224 : 	}
; 1225 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXXZ ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1228 : {

	push	esi
	mov	esi, ecx

; 1229 : 	Auto_Save_Variable(1,1,&popup);

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

; 1230 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1231 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 1232 : }

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

; 1235 : {

	push	esi

; 1236 : 	popup = false;

	xor	eax, eax
	push	edi

; 1237 : 	attack = false;
; 1238 : 	primary = true;
; 1239 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 1240 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1241 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$8180 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 1244 : {

	sub	esp, 196				; 000000c4H
	push	esi
	push	edi

; 1245 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+200]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 1246 : 	if (o)

	test	eax, eax
	je	SHORT $L8174

; 1247 : 	{
; 1248 : 		seen = o;

	mov	edi, eax
$L8174:

; 1249 : 	}
; 1250 : 	if ((!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8176
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8176
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8176
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8176
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L8176
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L8176
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L8176
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	jne	$L8181
$L8176:

; 1251 : 	{
; 1252 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L8177

; 1253 : 		{
; 1254 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 1255 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 1256 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 1257 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	ebx
	pop	edi
	pop	esi

; 1266 : 			{	
; 1267 : 				primary = false;
; 1268 : 			}
; 1269 : 			else
; 1270 : 			{
; 1271 : 				primary = true;
; 1272 : 			}
; 1273 : 		}
; 1274 : 	}
; 1275 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8177:

; 1258 : 		}
; 1259 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L13981

; 1260 : 		{
; 1261 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8180[esp+208]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1262 : 			params.Set_Basic(this,100,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 1263 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8180[esp+212], 100	; 00000064H
	mov	DWORD PTR _params$8180[esp+216], edx
	mov	DWORD PTR _params$8180[esp+380], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8180[esp+284]

; 1264 : 			Commands->Action_Attack(obj,params);

	mov	ecx, DWORD PTR _obj$[esp+204]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR _params$8180[esp+208]
	push	eax
	push	ecx
	mov	DWORD PTR _params$8180[esp+304], edi
	mov	DWORD PTR _params$8180[esp+296], 0
	mov	BYTE PTR _params$8180[esp+308], bl
	mov	BYTE PTR _params$8180[esp+324], 0
	call	DWORD PTR [edx+20]

; 1265 : 			if (primary)

	mov	al, BYTE PTR [esi+30]
	add	esp, 8
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L13981:
	pop	ebx
$L8181:
	pop	edi
	pop	esi

; 1266 : 			{	
; 1267 : 				primary = false;
; 1268 : 			}
; 1269 : 			else
; 1270 : 			{
; 1271 : 				primary = true;
; 1272 : 			}
; 1273 : 		}
; 1274 : 	}
; 1275 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 1279 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 1280 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 1284 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8194
	push	edi

; 1285 : 	{
; 1286 : 		popup = false;
; 1287 : 		attack = false;
; 1288 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 1289 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1294 : 	}
; 1295 : }

	ret	8
$L8194:

; 1290 : 	}
; 1291 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8195

; 1292 : 	{
; 1293 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8195:
	pop	esi

; 1294 : 	}
; 1295 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXXZ ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1298 : {

	push	esi
	mov	esi, ecx

; 1299 : 	Auto_Save_Variable(1,1,&popup);

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

; 1300 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1301 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 1302 : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXXZ ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_No_VTOL@@EAEXPAE@Z	; JFW_Base_Defence_No_VTOL::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_No_VTOL@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T13995 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_No_VTOL@@EAEXPAE@Z PROC NEAR	; JFW_Base_Defence_No_VTOL::Created, COMDAT
; _this$ = ecx

; 1305 : {

	sub	esp, 60					; 0000003cH

; 1306 : 	Vector3 pos,pos1,pos2,pos3;
; 1307 : 	GameObject *object;
; 1308 : 	objtype = Commands->Get_Player_Type(obj);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	push	esi
	mov	edi, ecx
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 1309 : 	Commands->Enable_Hibernation(obj,false);

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

; 1310 : 	Commands->Innate_Enable(obj);

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

; 1311 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 1312 : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T13995[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 1313 : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 1314 : 	pos1.Y = pos.Y - 10;
; 1315 : 	pos1.Z = pos.Z + 2;
; 1316 : 	pos2.X = pos.X + 10;
; 1317 : 	pos2.Y = pos.Y;
; 1318 : 	pos2.Z = pos.Z + 2;
; 1319 : 	pos3.X = pos.X + 10;
; 1320 : 	pos3.Y = pos.Y - 10;
; 1321 : 	pos3.Z = pos.Z + 2;
; 1322 : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 1323 : 	if (object)

	test	eax, eax
	je	SHORT $L8209

; 1324 : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L8209:

; 1325 : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 1326 : 	if (object)

	test	eax, eax
	je	SHORT $L8210

; 1327 : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L8210:

; 1328 : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 1329 : 	if (object)

	test	eax, eax
	je	SHORT $L8211

; 1330 : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L8211:

; 1331 : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 1332 : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_No_VTOL@@EAEXPAE@Z ENDP	; JFW_Base_Defence_No_VTOL::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_No_VTOL@@EAEXPAE0@Z ; JFW_Base_Defence_No_VTOL::Enemy_Seen
EXTRN	?Get_Vehicle_Mode@@YAIPAE@Z:NEAR		; Get_Vehicle_Mode
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_No_VTOL@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$8226 = -236				; size = 4
_distance$8223 = -236					; size = 4
_pos2$8222 = -232					; size = 12
_pos$8221 = -220					; size = 12
$T14002 = -208						; size = 12
$T14000 = -208						; size = 12
_params$8220 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_No_VTOL@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_No_VTOL::Enemy_Seen, COMDAT
; _this$ = ecx

; 1335 : {

	sub	esp, 236				; 000000ecH
	push	esi
	push	edi

; 1336 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+240]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 1337 : 	if (o)

	test	eax, eax
	je	SHORT $L8218

; 1338 : 	{
; 1339 : 		seen = o;

	mov	edi, eax
$L8218:

; 1340 : 	}
; 1341 : 	if (Get_Vehicle_Mode(seen) != FLYING)

	push	edi
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	je	$L8229
	push	ebx

; 1342 : 	{
; 1343 : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8220[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1344 : 		Vector3 pos,pos2;
; 1345 : 		float distance;
; 1346 : 		float minattack,maxattack;
; 1347 : 		float attacktimer;
; 1348 : 		pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14000[esp+248]
	push	ebx
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos$8221[esp+256], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$8221[esp+260], ecx
	mov	edx, DWORD PTR [eax+8]

; 1349 : 		pos2 = Commands->Get_Position(seen);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14002[esp+256]
	push	edi
	push	eax
	mov	DWORD PTR _pos$8221[esp+272], edx
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$8222[esp+264], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$8222[esp+268], ecx
	mov	edx, DWORD PTR [eax+8]

; 1350 : 		distance = Commands->Get_Distance(pos2,pos);

	lea	eax, DWORD PTR _pos$8221[esp+264]
	push	eax
	lea	ecx, DWORD PTR _pos2$8222[esp+268]
	mov	DWORD PTR _pos2$8222[esp+276], edx
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+256]
	fstp	DWORD PTR _distance$8223[esp+272]
	add	esp, 24					; 00000018H

; 1351 : 		minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 1352 : 		if (distance >= minattack)

	fcomp	DWORD PTR _distance$8223[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L14016

; 1353 : 		{
; 1354 : 			maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 1355 : 			params.Set_Basic(this,100,2,-1);
; 1356 : 			params.Set_Attack_Hold(seen,maxattack,0,true,false);

	fstp	DWORD PTR _params$8220[esp+324]
	mov	eax, DWORD PTR [esi+4]

; 1357 : 			Commands->Action_Attack(obj,params);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _params$8220[esp+248]
	push	ecx
	push	ebx
	mov	DWORD PTR _params$8220[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$8220[esp+260], eax
	mov	DWORD PTR _params$8220[esp+424], -1
	mov	DWORD PTR _params$8220[esp+344], edi
	mov	DWORD PTR _params$8220[esp+336], 0
	mov	BYTE PTR _params$8220[esp+348], 1
	mov	BYTE PTR _params$8220[esp+364], 0
	call	DWORD PTR [edx+20]
	add	esp, 8

; 1358 : 			attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$8226[esp+248]

; 1359 : 			Commands->Start_Timer(obj,this,attacktimer,2);

	mov	eax, DWORD PTR _attacktimer$8226[esp+248]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	eax
	push	esi
	push	ebx
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
$L14016:
	pop	ebx
$L8229:
	pop	edi
	pop	esi

; 1360 : 		}
; 1361 : 	}
; 1362 : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_No_VTOL@@EAEXPAE0@Z ENDP	; JFW_Base_Defence_No_VTOL::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_No_VTOL::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_No_VTOL::Action_Complete, COMDAT
; _this$ = ecx

; 1366 : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L8236

; 1367 : 	{
; 1368 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L8236:

; 1369 : 	}
; 1370 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_No_VTOL::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_No_VTOL@@EAEXPAEH@Z ; JFW_Base_Defence_No_VTOL::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_No_VTOL@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_No_VTOL@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_No_VTOL::Timer_Expired, COMDAT
; _this$ = ecx

; 1373 : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 1374 : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1375 : 	GameObject *object;
; 1376 : 	float f;
; 1377 : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L8249
	dec	eax
	jne	$L8246

; 1411 : 	break;
; 1412 : 	case 2:
; 1413 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 1414 : 		break;
; 1415 : 	}
; 1416 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8249:

; 1378 : 	{
; 1379 : 	case 1:
; 1380 : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 1381 : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L14024
	mov	eax, 2
$L14024:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L8254
	dec	eax
	je	SHORT $L8256

; 1401 : 		default:
; 1402 : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 1403 : 			if (object)

	test	eax, eax
	je	$L8255

; 1404 : 			{
; 1405 : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 1406 : 				var.Set_Attack(object,0.0,0.0,true);
; 1407 : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L14064
$L8256:

; 1390 : 			}
; 1391 : 			break;
; 1392 : 		case 1:
; 1393 : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 1394 : 			if (object)
; 1395 : 			{
; 1396 : 				var.Set_Basic(this,70,1,-1);
; 1397 : 				var.Set_Attack(object,0.0,0.0,true);
; 1398 : 				Commands->Action_Attack(obj,var);
; 1399 : 			}
; 1400 : 			break;

	jmp	SHORT $L14066
$L8254:

; 1382 : 		{
; 1383 : 		case 0:
; 1384 : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L14066:
	add	esp, 4

; 1385 : 			if (object)

	test	eax, eax
	je	SHORT $L8255

; 1386 : 			{
; 1387 : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 1388 : 				var.Set_Attack(object,0.0,0.0,true);
; 1389 : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L14064:
	add	esp, 8
$L8255:

; 1408 : 			}
; 1409 : 		}
; 1410 : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L8246:
	pop	esi

; 1414 : 		break;
; 1415 : 	}
; 1416 : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_No_VTOL@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_No_VTOL::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL@@EAEXXZ ; JFW_Base_Defence_No_VTOL::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL@@EAEXXZ PROC NEAR ; JFW_Base_Defence_No_VTOL::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1419 : {

	push	esi
	mov	esi, ecx

; 1420 : 	Auto_Save_Variable(1,4,&id1);

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

; 1421 : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1422 : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1423 : 	Auto_Save_Variable(4,4,&objtype);

	lea	eax, DWORD PTR [esi+40]
	push	eax
	push	4
	push	4
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 1424 : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL@@EAEXXZ ENDP ; JFW_Base_Defence_No_VTOL::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_VTOL_Only@@EAEXPAE@Z	; JFW_Base_Defence_VTOL_Only::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_VTOL_Only@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T14074 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_VTOL_Only@@EAEXPAE@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only::Created, COMDAT
; _this$ = ecx

; 1427 : {

	sub	esp, 60					; 0000003cH

; 1428 : 	Vector3 pos,pos1,pos2,pos3;
; 1429 : 	GameObject *object;
; 1430 : 	objtype = Commands->Get_Player_Type(obj);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	push	esi
	mov	edi, ecx
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 1431 : 	Commands->Enable_Hibernation(obj,false);

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

; 1432 : 	Commands->Innate_Enable(obj);

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

; 1433 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 1434 : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T14074[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 1435 : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 1436 : 	pos1.Y = pos.Y - 10;
; 1437 : 	pos1.Z = pos.Z + 2;
; 1438 : 	pos2.X = pos.X + 10;
; 1439 : 	pos2.Y = pos.Y;
; 1440 : 	pos2.Z = pos.Z + 2;
; 1441 : 	pos3.X = pos.X + 10;
; 1442 : 	pos3.Y = pos.Y - 10;
; 1443 : 	pos3.Z = pos.Z + 2;
; 1444 : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 1445 : 	if (object)

	test	eax, eax
	je	SHORT $L8274

; 1446 : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L8274:

; 1447 : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 1448 : 	if (object)

	test	eax, eax
	je	SHORT $L8275

; 1449 : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L8275:

; 1450 : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 1451 : 	if (object)

	test	eax, eax
	je	SHORT $L8276

; 1452 : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L8276:

; 1453 : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 1454 : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_VTOL_Only@@EAEXPAE@Z ENDP	; JFW_Base_Defence_VTOL_Only::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_VTOL_Only@@EAEXPAE0@Z ; JFW_Base_Defence_VTOL_Only::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_VTOL_Only@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$8291 = -236				; size = 4
_distance$8288 = -236					; size = 4
_pos2$8287 = -232					; size = 12
_pos$8286 = -220					; size = 12
$T14081 = -208						; size = 12
$T14079 = -208						; size = 12
_params$8285 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_VTOL_Only@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only::Enemy_Seen, COMDAT
; _this$ = ecx

; 1457 : {

	sub	esp, 236				; 000000ecH
	push	esi
	push	edi

; 1458 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+240]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 1459 : 	if (o)

	test	eax, eax
	je	SHORT $L8283

; 1460 : 	{
; 1461 : 		seen = o;

	mov	edi, eax
$L8283:

; 1462 : 	}
; 1463 : 	if (Get_Vehicle_Mode(seen) == FLYING)

	push	edi
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	jne	$L8294
	push	ebx

; 1464 : 	{
; 1465 : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8285[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1466 : 		Vector3 pos,pos2;
; 1467 : 		float distance;
; 1468 : 		float minattack,maxattack;
; 1469 : 		float attacktimer;
; 1470 : 		pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14079[esp+248]
	push	ebx
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos$8286[esp+256], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$8286[esp+260], ecx
	mov	edx, DWORD PTR [eax+8]

; 1471 : 		pos2 = Commands->Get_Position(seen);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14081[esp+256]
	push	edi
	push	eax
	mov	DWORD PTR _pos$8286[esp+272], edx
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$8287[esp+264], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$8287[esp+268], ecx
	mov	edx, DWORD PTR [eax+8]

; 1472 : 		distance = Commands->Get_Distance(pos2,pos);

	lea	eax, DWORD PTR _pos$8286[esp+264]
	push	eax
	lea	ecx, DWORD PTR _pos2$8287[esp+268]
	mov	DWORD PTR _pos2$8287[esp+276], edx
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+256]
	fstp	DWORD PTR _distance$8288[esp+272]
	add	esp, 24					; 00000018H

; 1473 : 		minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 1474 : 		if (distance >= minattack)

	fcomp	DWORD PTR _distance$8288[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L14095

; 1475 : 		{
; 1476 : 			maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 1477 : 			params.Set_Basic(this,100,2,-1);
; 1478 : 			params.Set_Attack_Hold(seen,maxattack,0,true,false);

	fstp	DWORD PTR _params$8285[esp+324]
	mov	eax, DWORD PTR [esi+4]

; 1479 : 			Commands->Action_Attack(obj,params);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _params$8285[esp+248]
	push	ecx
	push	ebx
	mov	DWORD PTR _params$8285[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$8285[esp+260], eax
	mov	DWORD PTR _params$8285[esp+424], -1
	mov	DWORD PTR _params$8285[esp+344], edi
	mov	DWORD PTR _params$8285[esp+336], 0
	mov	BYTE PTR _params$8285[esp+348], 1
	mov	BYTE PTR _params$8285[esp+364], 0
	call	DWORD PTR [edx+20]
	add	esp, 8

; 1480 : 			attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$8291[esp+248]

; 1481 : 			Commands->Start_Timer(obj,this,attacktimer,2);

	mov	eax, DWORD PTR _attacktimer$8291[esp+248]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	eax
	push	esi
	push	ebx
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
$L14095:
	pop	ebx
$L8294:
	pop	edi
	pop	esi

; 1482 : 		}
; 1483 : 	}
; 1484 : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_VTOL_Only@@EAEXPAE0@Z ENDP	; JFW_Base_Defence_VTOL_Only::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_VTOL_Only::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only::Action_Complete, COMDAT
; _this$ = ecx

; 1488 : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L8301

; 1489 : 	{
; 1490 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L8301:

; 1491 : 	}
; 1492 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_VTOL_Only::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_VTOL_Only@@EAEXPAEH@Z ; JFW_Base_Defence_VTOL_Only::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_VTOL_Only@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_VTOL_Only@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only::Timer_Expired, COMDAT
; _this$ = ecx

; 1495 : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 1496 : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1497 : 	GameObject *object;
; 1498 : 	float f;
; 1499 : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L8314
	dec	eax
	jne	$L8311

; 1533 : 	break;
; 1534 : 	case 2:
; 1535 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 1536 : 		break;
; 1537 : 	}
; 1538 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8314:

; 1500 : 	{
; 1501 : 	case 1:
; 1502 : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 1503 : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L14103
	mov	eax, 2
$L14103:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L8319
	dec	eax
	je	SHORT $L8321

; 1523 : 		default:
; 1524 : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 1525 : 			if (object)

	test	eax, eax
	je	$L8320

; 1526 : 			{
; 1527 : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 1528 : 				var.Set_Attack(object,0.0,0.0,true);
; 1529 : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L14143
$L8321:

; 1512 : 			}
; 1513 : 			break;
; 1514 : 		case 1:
; 1515 : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 1516 : 			if (object)
; 1517 : 			{
; 1518 : 				var.Set_Basic(this,70,1,-1);
; 1519 : 				var.Set_Attack(object,0.0,0.0,true);
; 1520 : 				Commands->Action_Attack(obj,var);
; 1521 : 			}
; 1522 : 			break;

	jmp	SHORT $L14145
$L8319:

; 1504 : 		{
; 1505 : 		case 0:
; 1506 : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L14145:
	add	esp, 4

; 1507 : 			if (object)

	test	eax, eax
	je	SHORT $L8320

; 1508 : 			{
; 1509 : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 1510 : 				var.Set_Attack(object,0.0,0.0,true);
; 1511 : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L14143:
	add	esp, 8
$L8320:

; 1530 : 			}
; 1531 : 		}
; 1532 : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L8311:
	pop	esi

; 1536 : 		break;
; 1537 : 	}
; 1538 : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_VTOL_Only@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_VTOL_Only::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_VTOL_Only@@EAEXXZ ; JFW_Base_Defence_VTOL_Only::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_VTOL_Only@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_VTOL_Only@@EAEXXZ PROC NEAR ; JFW_Base_Defence_VTOL_Only::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1541 : {

	push	esi
	mov	esi, ecx

; 1542 : 	Auto_Save_Variable(1,4,&id1);

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

; 1543 : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1544 : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1545 : 	Auto_Save_Variable(4,4,&objtype);

	lea	eax, DWORD PTR [esi+40]
	push	eax
	push	4
	push	4
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 1546 : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_VTOL_Only@@EAEXXZ ENDP ; JFW_Base_Defence_VTOL_Only::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAE@Z ; JFW_Base_Defence_No_VTOL_Secondary::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T14153 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAE@Z PROC NEAR ; JFW_Base_Defence_No_VTOL_Secondary::Created, COMDAT
; _this$ = ecx

; 1549 : {

	sub	esp, 60					; 0000003cH
	push	esi

; 1550 : 	Vector3 pos,pos1,pos2,pos3;
; 1551 : 	GameObject *object;
; 1552 : 	primary = true;
; 1553 : 	objtype = Commands->Get_Player_Type(obj);

	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	mov	edi, ecx
	mov	BYTE PTR [edi+44], 1
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 1554 : 	Commands->Enable_Hibernation(obj,false);

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

; 1555 : 	Commands->Innate_Enable(obj);

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

; 1556 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 1557 : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T14153[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 1558 : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 1559 : 	pos1.Y = pos.Y - 10;
; 1560 : 	pos1.Z = pos.Z + 2;
; 1561 : 	pos2.X = pos.X + 10;
; 1562 : 	pos2.Y = pos.Y;
; 1563 : 	pos2.Z = pos.Z + 2;
; 1564 : 	pos3.X = pos.X + 10;
; 1565 : 	pos3.Y = pos.Y - 10;
; 1566 : 	pos3.Z = pos.Z + 2;
; 1567 : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 1568 : 	if (object)

	test	eax, eax
	je	SHORT $L8339

; 1569 : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L8339:

; 1570 : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 1571 : 	if (object)

	test	eax, eax
	je	SHORT $L8340

; 1572 : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L8340:

; 1573 : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 1574 : 	if (object)

	test	eax, eax
	je	SHORT $L8341

; 1575 : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L8341:

; 1576 : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 1577 : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_No_VTOL_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_No_VTOL_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$8356 = -236				; size = 4
_distance$8353 = -236					; size = 4
_pos2$8352 = -232					; size = 12
_pos$8351 = -220					; size = 12
$T14160 = -208						; size = 12
$T14158 = -208						; size = 12
_params$8350 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_No_VTOL_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 1580 : {

	sub	esp, 236				; 000000ecH
	push	esi
	push	edi

; 1581 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+240]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 1582 : 	if (o)

	test	eax, eax
	je	SHORT $L8348

; 1583 : 	{
; 1584 : 		seen = o;

	mov	edi, eax
$L8348:

; 1585 : 	}
; 1586 : 	if (Get_Vehicle_Mode(seen) != FLYING)

	push	edi
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	je	$L8360
	push	ebx

; 1587 : 	{
; 1588 : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8350[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1589 : 		Vector3 pos,pos2;
; 1590 : 		float distance;
; 1591 : 		float minattack,maxattack;
; 1592 : 		float attacktimer;
; 1593 : 		pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14158[esp+248]
	push	ebx
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos$8351[esp+256], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$8351[esp+260], ecx
	mov	edx, DWORD PTR [eax+8]

; 1594 : 		pos2 = Commands->Get_Position(seen);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14160[esp+256]
	push	edi
	push	eax
	mov	DWORD PTR _pos$8351[esp+272], edx
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$8352[esp+264], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$8352[esp+268], ecx
	mov	edx, DWORD PTR [eax+8]

; 1595 : 		distance = Commands->Get_Distance(pos2,pos);

	lea	eax, DWORD PTR _pos$8351[esp+264]
	push	eax
	lea	ecx, DWORD PTR _pos2$8352[esp+268]
	mov	DWORD PTR _pos2$8352[esp+276], edx
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+256]
	fstp	DWORD PTR _distance$8353[esp+272]
	add	esp, 24					; 00000018H

; 1596 : 		minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 1597 : 		if (distance >= minattack)

	fcomp	DWORD PTR _distance$8353[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L14175

; 1598 : 		{
; 1599 : 			maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 1600 : 			params.Set_Basic(this,100,2,-1);
; 1601 : 			params.Set_Attack_Hold(seen,maxattack,0,primary,false);

	fstp	DWORD PTR _params$8350[esp+324]
	mov	eax, DWORD PTR [esi+4]
	mov	cl, BYTE PTR [esi+44]

; 1602 : 			Commands->Action_Attack(obj,params);

	lea	edx, DWORD PTR _params$8350[esp+248]
	push	edx
	mov	DWORD PTR _params$8350[esp+256], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	mov	DWORD PTR _params$8350[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$8350[esp+424], -1
	mov	DWORD PTR _params$8350[esp+344], edi
	mov	DWORD PTR _params$8350[esp+336], 0
	mov	BYTE PTR _params$8350[esp+348], cl
	mov	BYTE PTR _params$8350[esp+364], 0
	call	DWORD PTR [eax+20]
	add	esp, 8

; 1603 : 			attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$8356[esp+248]

; 1604 : 			Commands->Start_Timer(obj,this,attacktimer,2);

	mov	ecx, DWORD PTR _attacktimer$8356[esp+248]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	ecx
	push	esi
	push	ebx
	call	DWORD PTR [edx+128]

; 1605 : 			if (primary)

	mov	al, BYTE PTR [esi+44]
	add	esp, 16					; 00000010H
	test	al, al
	sete	al
	mov	BYTE PTR [esi+44], al
$L14175:
	pop	ebx
$L8360:
	pop	edi
	pop	esi

; 1606 : 			{
; 1607 : 				primary = false;
; 1608 : 			}
; 1609 : 			else
; 1610 : 			{
; 1611 : 				primary = true;
; 1612 : 			}
; 1613 : 		}
; 1614 : 	}
; 1615 : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_No_VTOL_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_No_VTOL_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_No_VTOL_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 1619 : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L8368

; 1620 : 	{
; 1621 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L8368:

; 1622 : 	}
; 1623 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_No_VTOL_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_No_VTOL_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_No_VTOL_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 1626 : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 1627 : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1628 : 	GameObject *object;
; 1629 : 	float f;
; 1630 : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L8381
	dec	eax
	jne	$L8378

; 1664 : 	break;
; 1665 : 	case 2:
; 1666 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 1667 : 		break;
; 1668 : 	}
; 1669 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8381:

; 1631 : 	{
; 1632 : 	case 1:
; 1633 : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 1634 : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L14183
	mov	eax, 2
$L14183:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L8386
	dec	eax
	je	SHORT $L8388

; 1654 : 		default:
; 1655 : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 1656 : 			if (object)

	test	eax, eax
	je	$L8387

; 1657 : 			{
; 1658 : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 1659 : 				var.Set_Attack(object,0.0,0.0,true);
; 1660 : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L14223
$L8388:

; 1643 : 			}
; 1644 : 			break;
; 1645 : 		case 1:
; 1646 : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 1647 : 			if (object)
; 1648 : 			{
; 1649 : 				var.Set_Basic(this,70,1,-1);
; 1650 : 				var.Set_Attack(object,0.0,0.0,true);
; 1651 : 				Commands->Action_Attack(obj,var);
; 1652 : 			}
; 1653 : 			break;

	jmp	SHORT $L14225
$L8386:

; 1635 : 		{
; 1636 : 		case 0:
; 1637 : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L14225:
	add	esp, 4

; 1638 : 			if (object)

	test	eax, eax
	je	SHORT $L8387

; 1639 : 			{
; 1640 : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 1641 : 				var.Set_Attack(object,0.0,0.0,true);
; 1642 : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L14223:
	add	esp, 8
$L8387:

; 1661 : 			}
; 1662 : 		}
; 1663 : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L8378:
	pop	esi

; 1667 : 		break;
; 1668 : 	}
; 1669 : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_No_VTOL_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL_Secondary@@EAEXXZ ; JFW_Base_Defence_No_VTOL_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_No_VTOL_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1672 : {

	push	esi
	mov	esi, ecx

; 1673 : 	Auto_Save_Variable(1,4,&id1);

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

; 1674 : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1675 : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1676 : 	Auto_Save_Variable(4,4,&objtype);

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

; 1677 : 	Auto_Save_Variable(5,1,&primary);

	lea	ecx, DWORD PTR [esi+44]
	push	ecx
	push	1
	push	5
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 1678 : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL_Secondary@@EAEXXZ ENDP ; JFW_Base_Defence_No_VTOL_Secondary::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAE@Z ; JFW_Base_Defence_VTOL_Only_Secondary::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T14233 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAE@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only_Secondary::Created, COMDAT
; _this$ = ecx

; 1681 : {

	sub	esp, 60					; 0000003cH
	push	esi

; 1682 : 	Vector3 pos,pos1,pos2,pos3;
; 1683 : 	GameObject *object;
; 1684 : 	primary = true;
; 1685 : 	objtype = Commands->Get_Player_Type(obj);

	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	mov	edi, ecx
	mov	BYTE PTR [edi+44], 1
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 1686 : 	Commands->Enable_Hibernation(obj,false);

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

; 1687 : 	Commands->Innate_Enable(obj);

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

; 1688 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 1689 : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T14233[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 1690 : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 1691 : 	pos1.Y = pos.Y - 10;
; 1692 : 	pos1.Z = pos.Z + 2;
; 1693 : 	pos2.X = pos.X + 10;
; 1694 : 	pos2.Y = pos.Y;
; 1695 : 	pos2.Z = pos.Z + 2;
; 1696 : 	pos3.X = pos.X + 10;
; 1697 : 	pos3.Y = pos.Y - 10;
; 1698 : 	pos3.Z = pos.Z + 2;
; 1699 : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 1700 : 	if (object)

	test	eax, eax
	je	SHORT $L8406

; 1701 : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L8406:

; 1702 : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 1703 : 	if (object)

	test	eax, eax
	je	SHORT $L8407

; 1704 : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L8407:

; 1705 : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 1706 : 	if (object)

	test	eax, eax
	je	SHORT $L8408

; 1707 : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L8408:

; 1708 : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 1709 : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_VTOL_Only_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_VTOL_Only_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$8423 = -236				; size = 4
_distance$8420 = -236					; size = 4
_pos2$8419 = -232					; size = 12
_pos$8418 = -220					; size = 12
$T14240 = -208						; size = 12
$T14238 = -208						; size = 12
_params$8417 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 1712 : {

	sub	esp, 236				; 000000ecH
	push	esi
	push	edi

; 1713 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+240]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 1714 : 	if (o)

	test	eax, eax
	je	SHORT $L8415

; 1715 : 	{
; 1716 : 		seen = o;

	mov	edi, eax
$L8415:

; 1717 : 	}
; 1718 : 	if (Get_Vehicle_Mode(seen) == FLYING)

	push	edi
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	jne	$L8427
	push	ebx

; 1719 : 	{
; 1720 : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8417[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1721 : 		Vector3 pos,pos2;
; 1722 : 		float distance;
; 1723 : 		float minattack,maxattack;
; 1724 : 		float attacktimer;
; 1725 : 		pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14238[esp+248]
	push	ebx
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos$8418[esp+256], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$8418[esp+260], ecx
	mov	edx, DWORD PTR [eax+8]

; 1726 : 		pos2 = Commands->Get_Position(seen);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14240[esp+256]
	push	edi
	push	eax
	mov	DWORD PTR _pos$8418[esp+272], edx
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$8419[esp+264], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$8419[esp+268], ecx
	mov	edx, DWORD PTR [eax+8]

; 1727 : 		distance = Commands->Get_Distance(pos2,pos);

	lea	eax, DWORD PTR _pos$8418[esp+264]
	push	eax
	lea	ecx, DWORD PTR _pos2$8419[esp+268]
	mov	DWORD PTR _pos2$8419[esp+276], edx
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+256]
	fstp	DWORD PTR _distance$8420[esp+272]
	add	esp, 24					; 00000018H

; 1728 : 		minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 1729 : 		if (distance >= minattack)

	fcomp	DWORD PTR _distance$8420[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L14255

; 1730 : 		{
; 1731 : 			maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 1732 : 			params.Set_Basic(this,100,2,-1);
; 1733 : 			params.Set_Attack_Hold(seen,maxattack,0,primary,false);

	fstp	DWORD PTR _params$8417[esp+324]
	mov	eax, DWORD PTR [esi+4]
	mov	cl, BYTE PTR [esi+44]

; 1734 : 			Commands->Action_Attack(obj,params);

	lea	edx, DWORD PTR _params$8417[esp+248]
	push	edx
	mov	DWORD PTR _params$8417[esp+256], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	mov	DWORD PTR _params$8417[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$8417[esp+424], -1
	mov	DWORD PTR _params$8417[esp+344], edi
	mov	DWORD PTR _params$8417[esp+336], 0
	mov	BYTE PTR _params$8417[esp+348], cl
	mov	BYTE PTR _params$8417[esp+364], 0
	call	DWORD PTR [eax+20]
	add	esp, 8

; 1735 : 			attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$8423[esp+248]

; 1736 : 			Commands->Start_Timer(obj,this,attacktimer,2);

	mov	ecx, DWORD PTR _attacktimer$8423[esp+248]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	ecx
	push	esi
	push	ebx
	call	DWORD PTR [edx+128]

; 1737 : 			if (primary)

	mov	al, BYTE PTR [esi+44]
	add	esp, 16					; 00000010H
	test	al, al
	sete	al
	mov	BYTE PTR [esi+44], al
$L14255:
	pop	ebx
$L8427:
	pop	edi
	pop	esi

; 1738 : 			{
; 1739 : 				primary = false;
; 1740 : 			}
; 1741 : 			else
; 1742 : 			{
; 1743 : 				primary = true;
; 1744 : 			}
; 1745 : 		}
; 1746 : 	}
; 1747 : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_VTOL_Only_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_VTOL_Only_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 1751 : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L8435

; 1752 : 	{
; 1753 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L8435:

; 1754 : 	}
; 1755 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_VTOL_Only_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_VTOL_Only_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 1758 : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 1759 : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1760 : 	GameObject *object;
; 1761 : 	float f;
; 1762 : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L8448
	dec	eax
	jne	$L8445

; 1796 : 	break;
; 1797 : 	case 2:
; 1798 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 1799 : 		break;
; 1800 : 	}
; 1801 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8448:

; 1763 : 	{
; 1764 : 	case 1:
; 1765 : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 1766 : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L14263
	mov	eax, 2
$L14263:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L8453
	dec	eax
	je	SHORT $L8455

; 1786 : 		default:
; 1787 : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 1788 : 			if (object)

	test	eax, eax
	je	$L8454

; 1789 : 			{
; 1790 : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 1791 : 				var.Set_Attack(object,0.0,0.0,true);
; 1792 : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L14303
$L8455:

; 1775 : 			}
; 1776 : 			break;
; 1777 : 		case 1:
; 1778 : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 1779 : 			if (object)
; 1780 : 			{
; 1781 : 				var.Set_Basic(this,70,1,-1);
; 1782 : 				var.Set_Attack(object,0.0,0.0,true);
; 1783 : 				Commands->Action_Attack(obj,var);
; 1784 : 			}
; 1785 : 			break;

	jmp	SHORT $L14305
$L8453:

; 1767 : 		{
; 1768 : 		case 0:
; 1769 : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L14305:
	add	esp, 4

; 1770 : 			if (object)

	test	eax, eax
	je	SHORT $L8454

; 1771 : 			{
; 1772 : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 1773 : 				var.Set_Attack(object,0.0,0.0,true);
; 1774 : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L14303:
	add	esp, 8
$L8454:

; 1793 : 			}
; 1794 : 		}
; 1795 : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L8445:
	pop	esi

; 1799 : 		break;
; 1800 : 	}
; 1801 : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_VTOL_Only_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXXZ ; JFW_Base_Defence_VTOL_Only_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_VTOL_Only_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1804 : {

	push	esi
	mov	esi, ecx

; 1805 : 	Auto_Save_Variable(1,4,&id1);

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

; 1806 : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1807 : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1808 : 	Auto_Save_Variable(4,4,&objtype);

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

; 1809 : 	Auto_Save_Variable(5,1,&primary);

	lea	ecx, DWORD PTR [esi+44]
	push	ecx
	push	1
	push	5
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 1810 : }

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

; 1813 : {

	push	esi

; 1814 : 	popup = false;

	xor	eax, eax
	push	edi

; 1815 : 	attack = false;
; 1816 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 1817 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1818 : }

	ret	4
?Created@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_No_VTOL::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$8478 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL::Enemy_Seen, COMDAT
; _this$ = ecx

; 1821 : {

	sub	esp, 196				; 000000c4H
	push	esi
	push	edi

; 1822 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+200]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 1823 : 	if (o)

	test	eax, eax
	je	SHORT $L8473

; 1824 : 	{
; 1825 : 		seen = o;

	mov	edi, eax
$L8473:

; 1826 : 	}
; 1827 : 	if (Get_Vehicle_Mode(seen) != FLYING)

	push	edi
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	je	$L8477

; 1828 : 	{
; 1829 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L8475
	push	ebx

; 1830 : 		{
; 1831 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 1832 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 1833 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 1834 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	ebx
	pop	edi
	pop	esi

; 1842 : 		}
; 1843 : 	}
; 1844 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8475:

; 1835 : 		}
; 1836 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L8477

; 1837 : 		{
; 1838 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8478[esp+204]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1839 : 			params.Set_Basic(this,100,1,-1);

	mov	eax, DWORD PTR [esi+4]

; 1840 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,true,false);

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8478[esp+208], 100	; 00000064H
	mov	DWORD PTR _params$8478[esp+212], eax
	mov	DWORD PTR _params$8478[esp+376], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8478[esp+280]

; 1841 : 			Commands->Action_Attack(obj,params);

	mov	edx, DWORD PTR _obj$[esp+200]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _params$8478[esp+204]
	push	ecx
	push	edx
	mov	DWORD PTR _params$8478[esp+300], edi
	mov	DWORD PTR _params$8478[esp+292], 0
	mov	BYTE PTR _params$8478[esp+304], 1
	mov	BYTE PTR _params$8478[esp+320], 0
	call	DWORD PTR [eax+20]
	add	esp, 8
$L8477:
	pop	edi
	pop	esi

; 1842 : 		}
; 1843 : 	}
; 1844 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_No_VTOL::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL::Action_Complete, COMDAT
; _this$ = ecx

; 1848 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 1849 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_No_VTOL::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL::Timer_Expired, COMDAT
; _this$ = ecx

; 1853 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8490
	push	edi

; 1854 : 	{
; 1855 : 		popup = false;
; 1856 : 		attack = false;
; 1857 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 1858 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1863 : 	}
; 1864 : }

	ret	8
$L8490:

; 1859 : 	}
; 1860 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8491

; 1861 : 	{
; 1862 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8491:
	pop	esi

; 1863 : 	}
; 1864 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_VTOL@@EAEXXZ ; JFW_Base_Defence_Animated_No_VTOL::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_VTOL@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_VTOL@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1867 : {

	push	esi
	mov	esi, ecx

; 1868 : 	Auto_Save_Variable(1,1,&popup);

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

; 1869 : 	Auto_Save_Variable(2,1,&attack);

	lea	ecx, DWORD PTR [esi+29]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 1870 : }

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

; 1873 : {

	push	esi

; 1874 : 	popup = false;

	xor	eax, eax
	push	edi

; 1875 : 	attack = false;
; 1876 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 1877 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1878 : }

	ret	4
?Created@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_VTOL_Only::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$8510 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only::Enemy_Seen, COMDAT
; _this$ = ecx

; 1881 : {

	sub	esp, 196				; 000000c4H
	push	esi
	push	edi

; 1882 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+200]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 1883 : 	if (o)

	test	eax, eax
	je	SHORT $L8505

; 1884 : 	{
; 1885 : 		seen = o;

	mov	edi, eax
$L8505:

; 1886 : 	}
; 1887 : 	if (Get_Vehicle_Mode(seen) == FLYING)

	push	edi
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	jne	$L8509

; 1888 : 	{
; 1889 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L8507
	push	ebx

; 1890 : 		{
; 1891 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 1892 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 1893 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 1894 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	ebx
	pop	edi
	pop	esi

; 1902 : 		}
; 1903 : 	}
; 1904 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8507:

; 1895 : 		}
; 1896 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L8509

; 1897 : 		{
; 1898 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8510[esp+204]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1899 : 			params.Set_Basic(this,100,1,-1);

	mov	eax, DWORD PTR [esi+4]

; 1900 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,true,false);

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8510[esp+208], 100	; 00000064H
	mov	DWORD PTR _params$8510[esp+212], eax
	mov	DWORD PTR _params$8510[esp+376], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8510[esp+280]

; 1901 : 			Commands->Action_Attack(obj,params);

	mov	edx, DWORD PTR _obj$[esp+200]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _params$8510[esp+204]
	push	ecx
	push	edx
	mov	DWORD PTR _params$8510[esp+300], edi
	mov	DWORD PTR _params$8510[esp+292], 0
	mov	BYTE PTR _params$8510[esp+304], 1
	mov	BYTE PTR _params$8510[esp+320], 0
	call	DWORD PTR [eax+20]
	add	esp, 8
$L8509:
	pop	edi
	pop	esi

; 1902 : 		}
; 1903 : 	}
; 1904 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_VTOL_Only::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only::Action_Complete, COMDAT
; _this$ = ecx

; 1908 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 1909 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_VTOL_Only::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only::Timer_Expired, COMDAT
; _this$ = ecx

; 1913 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8522
	push	edi

; 1914 : 	{
; 1915 : 		popup = false;
; 1916 : 		attack = false;
; 1917 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 1918 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1923 : 	}
; 1924 : }

	ret	8
$L8522:

; 1919 : 	}
; 1920 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8523

; 1921 : 	{
; 1922 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8523:
	pop	esi

; 1923 : 	}
; 1924 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_VTOL_Only@@EAEXXZ ; JFW_Base_Defence_Animated_VTOL_Only::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_VTOL_Only@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_VTOL_Only@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1927 : {

	push	esi
	mov	esi, ecx

; 1928 : 	Auto_Save_Variable(1,1,&popup);

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

; 1929 : 	Auto_Save_Variable(2,1,&attack);

	lea	ecx, DWORD PTR [esi+29]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 1930 : }

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

; 1933 : {

	push	esi

; 1934 : 	popup = false;

	xor	eax, eax
	push	edi

; 1935 : 	attack = false;
; 1936 : 	primary = true;
; 1937 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 1938 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1939 : }

	ret	4
?Created@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_No_VTOL_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$8542 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 1942 : {

	sub	esp, 196				; 000000c4H
	push	esi
	push	edi

; 1943 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+200]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 1944 : 	if (o)

	test	eax, eax
	je	SHORT $L8537

; 1945 : 	{
; 1946 : 		seen = o;

	mov	edi, eax
$L8537:

; 1947 : 	}
; 1948 : 	if (Get_Vehicle_Mode(seen) != FLYING)

	push	edi
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	je	$L8543

; 1949 : 	{
; 1950 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L8539

; 1951 : 		{
; 1952 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 1953 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 1954 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 1955 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	ebx
	pop	edi
	pop	esi

; 1964 : 			{
; 1965 : 				primary = false;
; 1966 : 			}
; 1967 : 			else
; 1968 : 			{
; 1969 : 				primary = true;
; 1970 : 			}
; 1971 : 		}
; 1972 : 	}
; 1973 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8539:

; 1956 : 		}
; 1957 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L14388

; 1958 : 		{
; 1959 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8542[esp+208]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 1960 : 			params.Set_Basic(this,100,1,-1);

	mov	eax, DWORD PTR [esi+4]

; 1961 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8542[esp+212], 100	; 00000064H
	mov	DWORD PTR _params$8542[esp+216], eax
	mov	DWORD PTR _params$8542[esp+380], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8542[esp+284]

; 1962 : 			Commands->Action_Attack(obj,params);

	mov	edx, DWORD PTR _obj$[esp+204]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _params$8542[esp+208]
	push	ecx
	push	edx
	mov	DWORD PTR _params$8542[esp+304], edi
	mov	DWORD PTR _params$8542[esp+296], 0
	mov	BYTE PTR _params$8542[esp+308], bl
	mov	BYTE PTR _params$8542[esp+324], 0
	call	DWORD PTR [eax+20]

; 1963 : 			if (primary)

	mov	al, BYTE PTR [esi+30]
	add	esp, 8
	test	al, al
	sete	cl
	mov	BYTE PTR [esi+30], cl
$L14388:
	pop	ebx
$L8543:
	pop	edi
	pop	esi

; 1964 : 			{
; 1965 : 				primary = false;
; 1966 : 			}
; 1967 : 			else
; 1968 : 			{
; 1969 : 				primary = true;
; 1970 : 			}
; 1971 : 		}
; 1972 : 	}
; 1973 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_No_VTOL_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 1977 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 1978 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_No_VTOL_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 1982 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8556
	push	edi

; 1983 : 	{
; 1984 : 		popup = false;
; 1985 : 		attack = false;
; 1986 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 1987 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 1992 : 	}
; 1993 : }

	ret	8
$L8556:

; 1988 : 	}
; 1989 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8557

; 1990 : 	{
; 1991 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8557:
	pop	esi

; 1992 : 	}
; 1993 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXXZ ; JFW_Base_Defence_Animated_No_VTOL_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 1996 : {

	push	esi
	mov	esi, ecx

; 1997 : 	Auto_Save_Variable(1,1,&popup);

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

; 1998 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 1999 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2000 : }

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

; 2003 : {

	push	esi

; 2004 : 	popup = false;

	xor	eax, eax
	push	edi

; 2005 : 	attack = false;
; 2006 : 	primary = true;
; 2007 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 2008 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2009 : }

	ret	4
?Created@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$8576 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 2012 : {

	sub	esp, 196				; 000000c4H
	push	esi
	push	edi

; 2013 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+200]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 2014 : 	if (o)

	test	eax, eax
	je	SHORT $L8571

; 2015 : 	{
; 2016 : 		seen = o;

	mov	edi, eax
$L8571:

; 2017 : 	}
; 2018 : 	if (Get_Vehicle_Mode(seen) == FLYING)

	push	edi
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	jne	$L8577

; 2019 : 	{
; 2020 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L8573

; 2021 : 		{
; 2022 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 2023 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 2024 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 2025 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	ebx
	pop	edi
	pop	esi

; 2034 : 			{	
; 2035 : 				primary = false;
; 2036 : 			}
; 2037 : 			else
; 2038 : 			{
; 2039 : 				primary = true;
; 2040 : 			}
; 2041 : 		}
; 2042 : 	}
; 2043 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8573:

; 2026 : 		}
; 2027 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L14419

; 2028 : 		{
; 2029 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8576[esp+208]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2030 : 			params.Set_Basic(this,100,1,-1);

	mov	eax, DWORD PTR [esi+4]

; 2031 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8576[esp+212], 100	; 00000064H
	mov	DWORD PTR _params$8576[esp+216], eax
	mov	DWORD PTR _params$8576[esp+380], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8576[esp+284]

; 2032 : 			Commands->Action_Attack(obj,params);

	mov	edx, DWORD PTR _obj$[esp+204]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _params$8576[esp+208]
	push	ecx
	push	edx
	mov	DWORD PTR _params$8576[esp+304], edi
	mov	DWORD PTR _params$8576[esp+296], 0
	mov	BYTE PTR _params$8576[esp+308], bl
	mov	BYTE PTR _params$8576[esp+324], 0
	call	DWORD PTR [eax+20]

; 2033 : 			if (primary)

	mov	al, BYTE PTR [esi+30]
	add	esp, 8
	test	al, al
	sete	cl
	mov	BYTE PTR [esi+30], cl
$L14419:
	pop	ebx
$L8577:
	pop	edi
	pop	esi

; 2034 : 			{	
; 2035 : 				primary = false;
; 2036 : 			}
; 2037 : 			else
; 2038 : 			{
; 2039 : 				primary = true;
; 2040 : 			}
; 2041 : 		}
; 2042 : 	}
; 2043 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 2047 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 2048 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 2052 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8590
	push	edi

; 2053 : 	{
; 2054 : 		popup = false;
; 2055 : 		attack = false;
; 2056 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 2057 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2062 : 	}
; 2063 : }

	ret	8
$L8590:

; 2058 : 	}
; 2059 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8591

; 2060 : 	{
; 2061 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8591:
	pop	esi

; 2062 : 	}
; 2063 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXXZ ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 2066 : {

	push	esi
	mov	esi, ecx

; 2067 : 	Auto_Save_Variable(1,1,&popup);

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

; 2068 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 2069 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2070 : }

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

; 2073 : {

	push	esi

; 2074 : 	popup = false;

	xor	eax, eax
	push	edi

; 2075 : 	attack = false;
; 2076 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 2077 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2078 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound::Created
_TEXT	ENDS
PUBLIC	??_C@_05MAHMNMLO@Sound?$AA@			; `string'
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound::Enemy_Seen
;	COMDAT ??_C@_05MAHMNMLO@Sound?$AA@
; File c:\documents and settings\owner\desktop\ssctf 1.3\scripts.h
CONST	SEGMENT
??_C@_05MAHMNMLO@Sound?$AA@ DB 'Sound', 00H		; `string'
; Function compile flags: /Ogty
; File c:\documents and settings\owner\desktop\ssctf 1.3\jfwdef.cpp
CONST	ENDS
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound@@EAEXPAE0@Z
_TEXT	SEGMENT
$T14435 = -220						; size = 12
$T14436 = -208						; size = 12
_params$8611 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound::Enemy_Seen, COMDAT
; _this$ = ecx

; 2081 : {

	sub	esp, 220				; 000000dcH
	push	ebp

; 2082 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebp, DWORD PTR _seen$[esp+220]
	push	esi
	push	ebp
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 2083 : 	if (o)

	test	eax, eax
	je	SHORT $L8605

; 2084 : 	{
; 2085 : 		seen = o;

	mov	ebp, eax
$L8605:

; 2086 : 	}
; 2087 : 	if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L8606
	push	ebx
	push	edi

; 2088 : 	{
; 2089 : 		popup = true;

	mov	BYTE PTR [esi+28], 1

; 2090 : 		Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 2091 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 2092 : 		Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14436[esp+264]
	push	ebp
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR $T14435[esp+272], edx
	mov	ecx, DWORD PTR [eax+4]
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T14435[esp+240], ecx
	mov	edx, DWORD PTR [eax+8]
	push	edi
	lea	eax, DWORD PTR $T14435[esp+240]
	push	eax
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T14435[esp+256], edx
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 2093 : 		Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	ebx
	pop	esi
	pop	ebp

; 2101 : 	}
; 2102 : }

	add	esp, 220				; 000000dcH
	ret	8
$L8606:

; 2094 : 	}
; 2095 : 	else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L8610

; 2096 : 	{
; 2097 : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8611[esp+228]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2098 : 		params.Set_Basic(this,100,1,-1);

	mov	ecx, DWORD PTR [esi+4]
	mov	DWORD PTR _params$8611[esp+232], ecx

; 2099 : 		params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,true,false);

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8611[esp+232], 100	; 00000064H
	mov	DWORD PTR _params$8611[esp+400], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8611[esp+304]

; 2100 : 		Commands->Action_Attack(obj,params);

	mov	eax, DWORD PTR _obj$[esp+224]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _params$8611[esp+228]
	push	edx
	push	eax
	mov	DWORD PTR _params$8611[esp+324], ebp
	mov	DWORD PTR _params$8611[esp+316], 0
	mov	BYTE PTR _params$8611[esp+328], 1
	mov	BYTE PTR _params$8611[esp+344], 0
	call	DWORD PTR [ecx+20]
	add	esp, 8
$L8610:
	pop	esi
	pop	ebp

; 2101 : 	}
; 2102 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound::Action_Complete, COMDAT
; _this$ = ecx

; 2106 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 2107 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound::Timer_Expired, COMDAT
; _this$ = ecx

; 2111 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8623
	push	edi

; 2112 : 	{
; 2113 : 		popup = false;
; 2114 : 		attack = false;
; 2115 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 2116 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2121 : 	}
; 2122 : }

	ret	8
$L8623:

; 2117 : 	}
; 2118 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8624

; 2119 : 	{
; 2120 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8624:
	pop	esi

; 2121 : 	}
; 2122 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound@@EAEXXZ ; JFW_Base_Defence_Animated_Sound::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 2125 : {

	push	esi
	mov	esi, ecx

; 2126 : 	Auto_Save_Variable(1,1,&popup);

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

; 2127 : 	Auto_Save_Variable(2,1,&attack);

	lea	ecx, DWORD PTR [esi+29]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2128 : }

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

; 2131 : {

	push	esi

; 2132 : 	popup = false;

	xor	eax, eax
	push	edi

; 2133 : 	attack = false;
; 2134 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 2135 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2136 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAE0@Z
_TEXT	SEGMENT
$T14466 = -220						; size = 12
$T14467 = -208						; size = 12
_params$8644 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft::Enemy_Seen, COMDAT
; _this$ = ecx

; 2139 : {

	sub	esp, 220				; 000000dcH
	push	ebx

; 2140 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebx, DWORD PTR _seen$[esp+220]
	push	esi
	push	ebx
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 2141 : 	if (o)

	test	eax, eax
	je	SHORT $L8638

; 2142 : 	{
; 2143 : 		seen = o;

	mov	ebx, eax
$L8638:

; 2144 : 	}
; 2145 : 	if ((stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8643
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebx
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8643
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebx
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8643
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8643
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebx
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8643
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebx
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8643
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8643
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebx
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8643

; 2146 : 	{
; 2147 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L8640
	push	ebp
	push	edi

; 2148 : 		{
; 2149 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 2150 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebp, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebp, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebp]

; 2151 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebp, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebp, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebp]

; 2152 : 			Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR $T14467[esp+264]
	push	ebx
	push	edx
	call	DWORD PTR [eax+64]
	mov	ecx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T14466[esp+236], ecx
	mov	edx, DWORD PTR [eax+4]
	push	edi
	lea	ecx, DWORD PTR $T14466[esp+240]
	push	ecx
	mov	DWORD PTR $T14466[esp+248], edx
	mov	eax, DWORD PTR [eax+8]
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T14466[esp+256], eax
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 2153 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	ebp
	pop	esi
	pop	ebx

; 2161 : 		}
; 2162 : 	}
; 2163 : }

	add	esp, 220				; 000000dcH
	ret	8
$L8640:

; 2154 : 		}
; 2155 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L8643

; 2156 : 		{
; 2157 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8644[esp+228]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2158 : 			params.Set_Basic(this,100,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 2159 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,true,false);

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8644[esp+232], 100	; 00000064H
	mov	DWORD PTR _params$8644[esp+236], edx
	mov	DWORD PTR _params$8644[esp+400], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8644[esp+304]

; 2160 : 			Commands->Action_Attack(obj,params);

	mov	ecx, DWORD PTR _obj$[esp+224]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR _params$8644[esp+228]
	push	eax
	push	ecx
	mov	DWORD PTR _params$8644[esp+324], ebx
	mov	DWORD PTR _params$8644[esp+316], 0
	mov	BYTE PTR _params$8644[esp+328], 1
	mov	BYTE PTR _params$8644[esp+344], 0
	call	DWORD PTR [edx+20]
	add	esp, 8
$L8643:
	pop	esi
	pop	ebx

; 2161 : 		}
; 2162 : 	}
; 2163 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft::Action_Complete, COMDAT
; _this$ = ecx

; 2167 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 2168 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft::Timer_Expired, COMDAT
; _this$ = ecx

; 2172 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8656
	push	edi

; 2173 : 	{
; 2174 : 		popup = false;
; 2175 : 		attack = false;
; 2176 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 2177 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2182 : 	}
; 2183 : }

	ret	8
$L8656:

; 2178 : 	}
; 2179 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8657

; 2180 : 	{
; 2181 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8657:
	pop	esi

; 2182 : 	}
; 2183 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_No_Aircraft::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 2186 : {

	push	esi
	mov	esi, ecx

; 2187 : 	Auto_Save_Variable(1,1,&popup);

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

; 2188 : 	Auto_Save_Variable(2,1,&attack);

	lea	ecx, DWORD PTR [esi+29]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2189 : }

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

; 2192 : {

	push	esi

; 2193 : 	popup = false;

	xor	eax, eax
	push	edi

; 2194 : 	attack = false;
; 2195 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 2196 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2197 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAE0@Z
_TEXT	SEGMENT
$T14497 = -220						; size = 12
$T14498 = -208						; size = 12
_params$8678 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::Enemy_Seen, COMDAT
; _this$ = ecx

; 2200 : {

	sub	esp, 220				; 000000dcH
	push	ebx

; 2201 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebx, DWORD PTR _seen$[esp+220]
	push	esi
	push	ebx
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 2202 : 	if (o)

	test	eax, eax
	je	SHORT $L8671

; 2203 : 	{
; 2204 : 		seen = o;

	mov	ebx, eax
$L8671:

; 2205 : 	}
; 2206 : 	if ((!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8673
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebx
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8673
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebx
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8673
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8673
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebx
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L8673
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebx
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L8673
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L8673
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebx
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	jne	$L8677
$L8673:

; 2207 : 	{
; 2208 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L8674
	push	ebp
	push	edi

; 2209 : 		{
; 2210 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 2211 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebp, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebp, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebp]

; 2212 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebp, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebp, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebp]

; 2213 : 			Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR $T14498[esp+264]
	push	ebx
	push	edx
	call	DWORD PTR [eax+64]
	mov	ecx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T14497[esp+236], ecx
	mov	edx, DWORD PTR [eax+4]
	push	edi
	lea	ecx, DWORD PTR $T14497[esp+240]
	push	ecx
	mov	DWORD PTR $T14497[esp+248], edx
	mov	eax, DWORD PTR [eax+8]
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T14497[esp+256], eax
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 2214 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	ebp
	pop	esi
	pop	ebx

; 2222 : 		}
; 2223 : 	}
; 2224 : }

	add	esp, 220				; 000000dcH
	ret	8
$L8674:

; 2215 : 		}
; 2216 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L8677

; 2217 : 		{
; 2218 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8678[esp+228]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2219 : 			params.Set_Basic(this,100,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 2220 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,true,false);

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8678[esp+232], 100	; 00000064H
	mov	DWORD PTR _params$8678[esp+236], edx
	mov	DWORD PTR _params$8678[esp+400], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8678[esp+304]

; 2221 : 			Commands->Action_Attack(obj,params);

	mov	ecx, DWORD PTR _obj$[esp+224]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR _params$8678[esp+228]
	push	eax
	push	ecx
	mov	DWORD PTR _params$8678[esp+324], ebx
	mov	DWORD PTR _params$8678[esp+316], 0
	mov	BYTE PTR _params$8678[esp+328], 1
	mov	BYTE PTR _params$8678[esp+344], 0
	call	DWORD PTR [edx+20]
	add	esp, 8
$L8677:
	pop	esi
	pop	ebx

; 2222 : 		}
; 2223 : 	}
; 2224 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::Action_Complete, COMDAT
; _this$ = ecx

; 2228 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 2229 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::Timer_Expired, COMDAT
; _this$ = ecx

; 2233 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8690
	push	edi

; 2234 : 	{
; 2235 : 		popup = false;
; 2236 : 		attack = false;
; 2237 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 2238 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2243 : 	}
; 2244 : }

	ret	8
$L8690:

; 2239 : 	}
; 2240 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8691

; 2241 : 	{
; 2242 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8691:
	pop	esi

; 2243 : 	}
; 2244 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 2247 : {

	push	esi
	mov	esi, ecx

; 2248 : 	Auto_Save_Variable(1,1,&popup);

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

; 2249 : 	Auto_Save_Variable(2,1,&attack);

	lea	ecx, DWORD PTR [esi+29]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2250 : }

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

; 2253 : {

	push	esi

; 2254 : 	popup = false;

	xor	eax, eax
	push	edi

; 2255 : 	attack = false;
; 2256 : 	primary = true;
; 2257 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 2258 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2259 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
$T14528 = -220						; size = 12
$T14529 = -208						; size = 12
_params$8710 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 2262 : {

	sub	esp, 220				; 000000dcH
	push	ebx
	push	ebp

; 2263 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebp, DWORD PTR _seen$[esp+224]
	push	esi
	push	ebp
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 2264 : 	if (o)

	test	eax, eax
	je	SHORT $L8705

; 2265 : 	{
; 2266 : 		seen = o;

	mov	ebp, eax
$L8705:

; 2267 : 	}
; 2268 : 	if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L8706
	push	edi

; 2269 : 	{
; 2270 : 		popup = true;

	mov	BYTE PTR [esi+28], 1

; 2271 : 		Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 2272 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 2273 : 		Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14529[esp+264]
	push	ebp
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR $T14528[esp+272], edx
	mov	ecx, DWORD PTR [eax+4]
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T14528[esp+240], ecx
	mov	edx, DWORD PTR [eax+8]
	push	edi
	lea	eax, DWORD PTR $T14528[esp+240]
	push	eax
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T14528[esp+256], edx
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 2274 : 		Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi
	pop	ebp
	pop	ebx

; 2283 : 		{
; 2284 : 			primary = false;
; 2285 : 		}
; 2286 : 		else
; 2287 : 		{
; 2288 : 			primary = true;
; 2289 : 		}
; 2290 : 	}
; 2291 : }

	add	esp, 220				; 000000dcH
	ret	8
$L8706:

; 2275 : 	}
; 2276 : 	else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L8711

; 2277 : 	{
; 2278 : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8710[esp+232]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2279 : 		params.Set_Basic(this,100,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 2280 : 		params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	mov	DWORD PTR _params$8710[esp+236], ecx
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8710[esp+236], 100	; 00000064H
	mov	DWORD PTR _params$8710[esp+404], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8710[esp+308]

; 2281 : 		Commands->Action_Attack(obj,params);

	mov	eax, DWORD PTR _obj$[esp+228]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _params$8710[esp+232]
	push	edx
	push	eax
	mov	DWORD PTR _params$8710[esp+328], ebp
	mov	DWORD PTR _params$8710[esp+320], 0
	mov	BYTE PTR _params$8710[esp+332], bl
	mov	BYTE PTR _params$8710[esp+348], 0
	call	DWORD PTR [ecx+20]

; 2282 : 		if (primary)

	mov	al, BYTE PTR [esi+30]
	add	esp, 8
	test	al, al
	sete	dl
	mov	BYTE PTR [esi+30], dl
$L8711:
	pop	esi
	pop	ebp
	pop	ebx

; 2283 : 		{
; 2284 : 			primary = false;
; 2285 : 		}
; 2286 : 		else
; 2287 : 		{
; 2288 : 			primary = true;
; 2289 : 		}
; 2290 : 	}
; 2291 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 2295 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 2296 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 2300 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8724
	push	edi

; 2301 : 	{
; 2302 : 		popup = false;
; 2303 : 		attack = false;
; 2304 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 2305 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2310 : 	}
; 2311 : }

	ret	8
$L8724:

; 2306 : 	}
; 2307 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8725

; 2308 : 	{
; 2309 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8725:
	pop	esi

; 2310 : 	}
; 2311 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 2314 : {

	push	esi
	mov	esi, ecx

; 2315 : 	Auto_Save_Variable(1,1,&popup);

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

; 2316 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 2317 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2318 : }

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

; 2321 : {

	push	esi

; 2322 : 	popup = false;

	xor	eax, eax
	push	edi

; 2323 : 	attack = false;
; 2324 : 	primary = true;
; 2325 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 2326 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2327 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
$T14560 = -220						; size = 12
$T14561 = -208						; size = 12
_params$8745 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 2330 : {

	sub	esp, 220				; 000000dcH
	push	ebp

; 2331 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebp, DWORD PTR _seen$[esp+220]
	push	esi
	push	ebp
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 2332 : 	if (o)

	test	eax, eax
	je	SHORT $L8739

; 2333 : 	{
; 2334 : 		seen = o;

	mov	ebp, eax
$L8739:

; 2335 : 	}
; 2336 : 	if ((stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebp
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8746
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8746
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8746
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebp
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8746
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8746
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8746
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebp
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8746
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8746

; 2337 : 	{
; 2338 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L8741
	push	edi

; 2339 : 		{
; 2340 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 2341 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 2342 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 2343 : 			Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR $T14561[esp+264]
	push	ebp
	push	edx
	call	DWORD PTR [eax+64]
	mov	ecx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T14560[esp+236], ecx
	mov	edx, DWORD PTR [eax+4]
	push	edi
	lea	ecx, DWORD PTR $T14560[esp+240]
	push	ecx
	mov	DWORD PTR $T14560[esp+248], edx
	mov	eax, DWORD PTR [eax+8]
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T14560[esp+256], eax
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 2344 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	ebx
	pop	esi
	pop	ebp

; 2353 : 			{
; 2354 : 				primary = false;
; 2355 : 			}
; 2356 : 			else
; 2357 : 			{
; 2358 : 				primary = true;
; 2359 : 			}
; 2360 : 		}
; 2361 : 	}
; 2362 : }

	add	esp, 220				; 000000dcH
	ret	8
$L8741:

; 2345 : 		}
; 2346 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L14577

; 2347 : 		{
; 2348 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8745[esp+232]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2349 : 			params.Set_Basic(this,100,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 2350 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8745[esp+236], 100	; 00000064H
	mov	DWORD PTR _params$8745[esp+240], edx
	mov	DWORD PTR _params$8745[esp+404], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8745[esp+308]

; 2351 : 			Commands->Action_Attack(obj,params);

	mov	ecx, DWORD PTR _obj$[esp+228]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR _params$8745[esp+232]
	push	eax
	push	ecx
	mov	DWORD PTR _params$8745[esp+328], ebp
	mov	DWORD PTR _params$8745[esp+320], 0
	mov	BYTE PTR _params$8745[esp+332], bl
	mov	BYTE PTR _params$8745[esp+348], 0
	call	DWORD PTR [edx+20]

; 2352 : 			if (primary)

	mov	al, BYTE PTR [esi+30]
	add	esp, 8
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L14577:
	pop	ebx
$L8746:
	pop	esi
	pop	ebp

; 2353 : 			{
; 2354 : 				primary = false;
; 2355 : 			}
; 2356 : 			else
; 2357 : 			{
; 2358 : 				primary = true;
; 2359 : 			}
; 2360 : 		}
; 2361 : 	}
; 2362 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 2366 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 2367 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 2371 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8759
	push	edi

; 2372 : 	{
; 2373 : 		popup = false;
; 2374 : 		attack = false;
; 2375 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 2376 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2381 : 	}
; 2382 : }

	ret	8
$L8759:

; 2377 : 	}
; 2378 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8760

; 2379 : 	{
; 2380 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8760:
	pop	esi

; 2381 : 	}
; 2382 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 2385 : {

	push	esi
	mov	esi, ecx

; 2386 : 	Auto_Save_Variable(1,1,&popup);

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

; 2387 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 2388 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2389 : }

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

; 2392 : {

	push	esi

; 2393 : 	popup = false;

	xor	eax, eax
	push	edi

; 2394 : 	attack = false;
; 2395 : 	primary = true;
; 2396 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 2397 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2398 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
$T14593 = -220						; size = 12
$T14594 = -208						; size = 12
_params$8781 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 2401 : {

	sub	esp, 220				; 000000dcH
	push	ebp

; 2402 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebp, DWORD PTR _seen$[esp+220]
	push	esi
	push	ebp
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 2403 : 	if (o)

	test	eax, eax
	je	SHORT $L8774

; 2404 : 	{
; 2405 : 		seen = o;

	mov	ebp, eax
$L8774:

; 2406 : 	}
; 2407 : 	if ((!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebp
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8776
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8776
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8776
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebp
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L8776
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L8776
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L8776
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebp
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L8776
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	jne	$L8782
$L8776:

; 2408 : 	{
; 2409 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L8777
	push	edi

; 2410 : 		{
; 2411 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 2412 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 2413 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 2414 : 			Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR $T14594[esp+264]
	push	ebp
	push	edx
	call	DWORD PTR [eax+64]
	mov	ecx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T14593[esp+236], ecx
	mov	edx, DWORD PTR [eax+4]
	push	edi
	lea	ecx, DWORD PTR $T14593[esp+240]
	push	ecx
	mov	DWORD PTR $T14593[esp+248], edx
	mov	eax, DWORD PTR [eax+8]
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T14593[esp+256], eax
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 2415 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	ebx
	pop	esi
	pop	ebp

; 2424 : 			{	
; 2425 : 				primary = false;
; 2426 : 			}
; 2427 : 			else
; 2428 : 			{
; 2429 : 				primary = true;
; 2430 : 			}
; 2431 : 		}
; 2432 : 	}
; 2433 : }

	add	esp, 220				; 000000dcH
	ret	8
$L8777:

; 2416 : 		}
; 2417 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L14610

; 2418 : 		{
; 2419 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8781[esp+232]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2420 : 			params.Set_Basic(this,100,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 2421 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8781[esp+236], 100	; 00000064H
	mov	DWORD PTR _params$8781[esp+240], edx
	mov	DWORD PTR _params$8781[esp+404], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8781[esp+308]

; 2422 : 			Commands->Action_Attack(obj,params);

	mov	ecx, DWORD PTR _obj$[esp+228]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR _params$8781[esp+232]
	push	eax
	push	ecx
	mov	DWORD PTR _params$8781[esp+328], ebp
	mov	DWORD PTR _params$8781[esp+320], 0
	mov	BYTE PTR _params$8781[esp+332], bl
	mov	BYTE PTR _params$8781[esp+348], 0
	call	DWORD PTR [edx+20]

; 2423 : 			if (primary)

	mov	al, BYTE PTR [esi+30]
	add	esp, 8
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L14610:
	pop	ebx
$L8782:
	pop	esi
	pop	ebp

; 2424 : 			{	
; 2425 : 				primary = false;
; 2426 : 			}
; 2427 : 			else
; 2428 : 			{
; 2429 : 				primary = true;
; 2430 : 			}
; 2431 : 		}
; 2432 : 	}
; 2433 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 2437 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 2438 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 2442 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8795
	push	edi

; 2443 : 	{
; 2444 : 		popup = false;
; 2445 : 		attack = false;
; 2446 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 2447 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2452 : 	}
; 2453 : }

	ret	8
$L8795:

; 2448 : 	}
; 2449 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8796

; 2450 : 	{
; 2451 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8796:
	pop	esi

; 2452 : 	}
; 2453 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 2456 : {

	push	esi
	mov	esi, ecx

; 2457 : 	Auto_Save_Variable(1,1,&popup);

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

; 2458 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 2459 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2460 : }

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

; 2463 : {

	push	esi

; 2464 : 	popup = false;

	xor	eax, eax
	push	edi

; 2465 : 	attack = false;
; 2466 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 2467 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2468 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAE0@Z
_TEXT	SEGMENT
$T14626 = -220						; size = 12
$T14627 = -208						; size = 12
_params$8816 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL::Enemy_Seen, COMDAT
; _this$ = ecx

; 2471 : {

	sub	esp, 220				; 000000dcH
	push	ebp

; 2472 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebp, DWORD PTR _seen$[esp+220]
	push	esi
	push	ebp
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 2473 : 	if (o)

	test	eax, eax
	je	SHORT $L8810

; 2474 : 	{
; 2475 : 		seen = o;

	mov	ebp, eax
$L8810:

; 2476 : 	}
; 2477 : 	if (Get_Vehicle_Mode(seen) != FLYING)

	push	ebp
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	je	$L8815

; 2478 : 	{
; 2479 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L8812
	push	ebx
	push	edi

; 2480 : 		{
; 2481 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 2482 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 2483 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 2484 : 			Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14627[esp+264]
	push	ebp
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR $T14626[esp+272], edx
	mov	ecx, DWORD PTR [eax+4]
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T14626[esp+240], ecx
	mov	edx, DWORD PTR [eax+8]
	push	edi
	lea	eax, DWORD PTR $T14626[esp+240]
	push	eax
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T14626[esp+256], edx
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 2485 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	ebx
	pop	esi
	pop	ebp

; 2493 : 		}
; 2494 : 	}
; 2495 : }

	add	esp, 220				; 000000dcH
	ret	8
$L8812:

; 2486 : 		}
; 2487 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L8815

; 2488 : 		{
; 2489 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8816[esp+228]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2490 : 			params.Set_Basic(this,100,1,-1);

	mov	ecx, DWORD PTR [esi+4]
	mov	DWORD PTR _params$8816[esp+232], ecx

; 2491 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,true,false);

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8816[esp+232], 100	; 00000064H
	mov	DWORD PTR _params$8816[esp+400], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8816[esp+304]

; 2492 : 			Commands->Action_Attack(obj,params);

	mov	eax, DWORD PTR _obj$[esp+224]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _params$8816[esp+228]
	push	edx
	push	eax
	mov	DWORD PTR _params$8816[esp+324], ebp
	mov	DWORD PTR _params$8816[esp+316], 0
	mov	BYTE PTR _params$8816[esp+328], 1
	mov	BYTE PTR _params$8816[esp+344], 0
	call	DWORD PTR [ecx+20]
	add	esp, 8
$L8815:
	pop	esi
	pop	ebp

; 2493 : 		}
; 2494 : 	}
; 2495 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL::Action_Complete, COMDAT
; _this$ = ecx

; 2499 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 2500 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL::Timer_Expired, COMDAT
; _this$ = ecx

; 2504 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8828
	push	edi

; 2505 : 	{
; 2506 : 		popup = false;
; 2507 : 		attack = false;
; 2508 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 2509 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2514 : 	}
; 2515 : }

	ret	8
$L8828:

; 2510 : 	}
; 2511 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8829

; 2512 : 	{
; 2513 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8829:
	pop	esi

; 2514 : 	}
; 2515 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_No_VTOL::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 2518 : {

	push	esi
	mov	esi, ecx

; 2519 : 	Auto_Save_Variable(1,1,&popup);

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

; 2520 : 	Auto_Save_Variable(2,1,&attack);

	lea	ecx, DWORD PTR [esi+29]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2521 : }

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

; 2524 : {

	push	esi

; 2525 : 	popup = false;

	xor	eax, eax
	push	edi

; 2526 : 	attack = false;
; 2527 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 2528 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2529 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAE0@Z
_TEXT	SEGMENT
$T14657 = -220						; size = 12
$T14658 = -208						; size = 12
_params$8849 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only::Enemy_Seen, COMDAT
; _this$ = ecx

; 2532 : {

	sub	esp, 220				; 000000dcH
	push	ebp

; 2533 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebp, DWORD PTR _seen$[esp+220]
	push	esi
	push	ebp
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 2534 : 	if (o)

	test	eax, eax
	je	SHORT $L8843

; 2535 : 	{
; 2536 : 		seen = o;

	mov	ebp, eax
$L8843:

; 2537 : 	}
; 2538 : 	if (Get_Vehicle_Mode(seen) == FLYING)

	push	ebp
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	jne	$L8848

; 2539 : 	{
; 2540 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L8845
	push	ebx
	push	edi

; 2541 : 		{
; 2542 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 2543 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 2544 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 2545 : 			Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14658[esp+264]
	push	ebp
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR $T14657[esp+272], edx
	mov	ecx, DWORD PTR [eax+4]
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T14657[esp+240], ecx
	mov	edx, DWORD PTR [eax+8]
	push	edi
	lea	eax, DWORD PTR $T14657[esp+240]
	push	eax
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T14657[esp+256], edx
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 2546 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	ebx
	pop	esi
	pop	ebp

; 2554 : 		}
; 2555 : 	}
; 2556 : }

	add	esp, 220				; 000000dcH
	ret	8
$L8845:

; 2547 : 		}
; 2548 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L8848

; 2549 : 		{
; 2550 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8849[esp+228]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2551 : 			params.Set_Basic(this,100,1,-1);

	mov	ecx, DWORD PTR [esi+4]
	mov	DWORD PTR _params$8849[esp+232], ecx

; 2552 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,true,false);

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8849[esp+232], 100	; 00000064H
	mov	DWORD PTR _params$8849[esp+400], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8849[esp+304]

; 2553 : 			Commands->Action_Attack(obj,params);

	mov	eax, DWORD PTR _obj$[esp+224]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _params$8849[esp+228]
	push	edx
	push	eax
	mov	DWORD PTR _params$8849[esp+324], ebp
	mov	DWORD PTR _params$8849[esp+316], 0
	mov	BYTE PTR _params$8849[esp+328], 1
	mov	BYTE PTR _params$8849[esp+344], 0
	call	DWORD PTR [ecx+20]
	add	esp, 8
$L8848:
	pop	esi
	pop	ebp

; 2554 : 		}
; 2555 : 	}
; 2556 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only::Action_Complete, COMDAT
; _this$ = ecx

; 2560 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 2561 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only::Timer_Expired, COMDAT
; _this$ = ecx

; 2565 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8861
	push	edi

; 2566 : 	{
; 2567 : 		popup = false;
; 2568 : 		attack = false;
; 2569 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 2570 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2575 : 	}
; 2576 : }

	ret	8
$L8861:

; 2571 : 	}
; 2572 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8862

; 2573 : 	{
; 2574 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8862:
	pop	esi

; 2575 : 	}
; 2576 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_VTOL_Only::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 2579 : {

	push	esi
	mov	esi, ecx

; 2580 : 	Auto_Save_Variable(1,1,&popup);

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

; 2581 : 	Auto_Save_Variable(2,1,&attack);

	lea	ecx, DWORD PTR [esi+29]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2582 : }

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

; 2585 : {

	push	esi

; 2586 : 	popup = false;

	xor	eax, eax
	push	edi

; 2587 : 	attack = false;
; 2588 : 	primary = true;
; 2589 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 2590 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2591 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
$T14688 = -220						; size = 12
$T14689 = -208						; size = 12
_params$8882 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 2594 : {

	sub	esp, 220				; 000000dcH
	push	ebp

; 2595 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebp, DWORD PTR _seen$[esp+220]
	push	esi
	push	ebp
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 2596 : 	if (o)

	test	eax, eax
	je	SHORT $L8876

; 2597 : 	{
; 2598 : 		seen = o;

	mov	ebp, eax
$L8876:

; 2599 : 	}
; 2600 : 	if (Get_Vehicle_Mode(seen) != FLYING)

	push	ebp
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	je	$L8883

; 2601 : 	{
; 2602 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L8878
	push	edi

; 2603 : 		{
; 2604 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 2605 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 2606 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 2607 : 			Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14689[esp+264]
	push	ebp
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR $T14688[esp+272], edx
	mov	ecx, DWORD PTR [eax+4]
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T14688[esp+240], ecx
	mov	edx, DWORD PTR [eax+8]
	push	edi
	lea	eax, DWORD PTR $T14688[esp+240]
	push	eax
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T14688[esp+256], edx
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 2608 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	ebx
	pop	esi
	pop	ebp

; 2617 : 			{
; 2618 : 				primary = false;
; 2619 : 			}
; 2620 : 			else
; 2621 : 			{
; 2622 : 				primary = true;
; 2623 : 			}
; 2624 : 		}
; 2625 : 	}
; 2626 : }

	add	esp, 220				; 000000dcH
	ret	8
$L8878:

; 2609 : 		}
; 2610 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L14705

; 2611 : 		{
; 2612 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8882[esp+232]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2613 : 			params.Set_Basic(this,100,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 2614 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	mov	DWORD PTR _params$8882[esp+236], ecx
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8882[esp+236], 100	; 00000064H
	mov	DWORD PTR _params$8882[esp+404], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8882[esp+308]

; 2615 : 			Commands->Action_Attack(obj,params);

	mov	eax, DWORD PTR _obj$[esp+228]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _params$8882[esp+232]
	push	edx
	push	eax
	mov	DWORD PTR _params$8882[esp+328], ebp
	mov	DWORD PTR _params$8882[esp+320], 0
	mov	BYTE PTR _params$8882[esp+332], bl
	mov	BYTE PTR _params$8882[esp+348], 0
	call	DWORD PTR [ecx+20]

; 2616 : 			if (primary)

	mov	al, BYTE PTR [esi+30]
	add	esp, 8
	test	al, al
	sete	dl
	mov	BYTE PTR [esi+30], dl
$L14705:
	pop	ebx
$L8883:
	pop	esi
	pop	ebp

; 2617 : 			{
; 2618 : 				primary = false;
; 2619 : 			}
; 2620 : 			else
; 2621 : 			{
; 2622 : 				primary = true;
; 2623 : 			}
; 2624 : 		}
; 2625 : 	}
; 2626 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 2630 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 2631 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 2635 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8896
	push	edi

; 2636 : 	{
; 2637 : 		popup = false;
; 2638 : 		attack = false;
; 2639 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 2640 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2645 : 	}
; 2646 : }

	ret	8
$L8896:

; 2641 : 	}
; 2642 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8897

; 2643 : 	{
; 2644 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8897:
	pop	esi

; 2645 : 	}
; 2646 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 2649 : {

	push	esi
	mov	esi, ecx

; 2650 : 	Auto_Save_Variable(1,1,&popup);

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

; 2651 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 2652 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2653 : }

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

; 2656 : {

	push	esi

; 2657 : 	popup = false;

	xor	eax, eax
	push	edi

; 2658 : 	attack = false;
; 2659 : 	primary = true;
; 2660 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 2661 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2662 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAE0@Z
_TEXT	SEGMENT
$T14721 = -220						; size = 12
$T14722 = -208						; size = 12
_params$8917 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::Enemy_Seen, COMDAT
; _this$ = ecx

; 2665 : {

	sub	esp, 220				; 000000dcH
	push	ebp

; 2666 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebp, DWORD PTR _seen$[esp+220]
	push	esi
	push	ebp
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 2667 : 	if (o)

	test	eax, eax
	je	SHORT $L8911

; 2668 : 	{
; 2669 : 		seen = o;

	mov	ebp, eax
$L8911:

; 2670 : 	}
; 2671 : 	if (Get_Vehicle_Mode(seen) == FLYING)

	push	ebp
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	jne	$L8918

; 2672 : 	{
; 2673 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L8913
	push	edi

; 2674 : 		{
; 2675 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 2676 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 2677 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 2678 : 			Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14722[esp+264]
	push	ebp
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR $T14721[esp+272], edx
	mov	ecx, DWORD PTR [eax+4]
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T14721[esp+240], ecx
	mov	edx, DWORD PTR [eax+8]
	push	edi
	lea	eax, DWORD PTR $T14721[esp+240]
	push	eax
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T14721[esp+256], edx
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 2679 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	ebx
	pop	esi
	pop	ebp

; 2688 : 			{	
; 2689 : 				primary = false;
; 2690 : 			}
; 2691 : 			else
; 2692 : 			{
; 2693 : 				primary = true;
; 2694 : 			}
; 2695 : 		}
; 2696 : 	}
; 2697 : }

	add	esp, 220				; 000000dcH
	ret	8
$L8913:

; 2680 : 		}
; 2681 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L14738

; 2682 : 		{
; 2683 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$8917[esp+232]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2684 : 			params.Set_Basic(this,100,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 2685 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	mov	DWORD PTR _params$8917[esp+236], ecx
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$8917[esp+236], 100	; 00000064H
	mov	DWORD PTR _params$8917[esp+404], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$8917[esp+308]

; 2686 : 			Commands->Action_Attack(obj,params);

	mov	eax, DWORD PTR _obj$[esp+228]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _params$8917[esp+232]
	push	edx
	push	eax
	mov	DWORD PTR _params$8917[esp+328], ebp
	mov	DWORD PTR _params$8917[esp+320], 0
	mov	BYTE PTR _params$8917[esp+332], bl
	mov	BYTE PTR _params$8917[esp+348], 0
	call	DWORD PTR [ecx+20]

; 2687 : 			if (primary)

	mov	al, BYTE PTR [esi+30]
	add	esp, 8
	test	al, al
	sete	dl
	mov	BYTE PTR [esi+30], dl
$L14738:
	pop	ebx
$L8918:
	pop	esi
	pop	ebp

; 2688 : 			{	
; 2689 : 				primary = false;
; 2690 : 			}
; 2691 : 			else
; 2692 : 			{
; 2693 : 				primary = true;
; 2694 : 			}
; 2695 : 		}
; 2696 : 	}
; 2697 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::Action_Complete, COMDAT
; _this$ = ecx

; 2701 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 2702 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::Timer_Expired, COMDAT
; _this$ = ecx

; 2706 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L8931
	push	edi

; 2707 : 	{
; 2708 : 		popup = false;
; 2709 : 		attack = false;
; 2710 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 2711 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 2716 : 	}
; 2717 : }

	ret	8
$L8931:

; 2712 : 	}
; 2713 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L8932

; 2714 : 	{
; 2715 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L8932:
	pop	esi

; 2716 : 	}
; 2717 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 2720 : {

	push	esi
	mov	esi, ecx

; 2721 : 	Auto_Save_Variable(1,1,&popup);

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

; 2722 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 2723 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2724 : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXXZ ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_Swap@@EAEXPAE@Z	; JFW_Base_Defence_Swap::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_Swap@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T14752 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_Swap@@EAEXPAE@Z PROC NEAR	; JFW_Base_Defence_Swap::Created, COMDAT
; _this$ = ecx

; 2727 : {

	sub	esp, 60					; 0000003cH
	push	esi

; 2728 : 	Vector3 pos,pos1,pos2,pos3;
; 2729 : 	GameObject *object;
; 2730 : 	primary = true;
; 2731 : 	objtype = Commands->Get_Player_Type(obj);

	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	mov	edi, ecx
	mov	BYTE PTR [edi+44], 1
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 2732 : 	Commands->Enable_Hibernation(obj,false);

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

; 2733 : 	Commands->Innate_Enable(obj);

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

; 2734 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 2735 : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T14752[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 2736 : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 2737 : 	pos1.Y = pos.Y - 10;
; 2738 : 	pos1.Z = pos.Z + 2;
; 2739 : 	pos2.X = pos.X + 10;
; 2740 : 	pos2.Y = pos.Y;
; 2741 : 	pos2.Z = pos.Z + 2;
; 2742 : 	pos3.X = pos.X + 10;
; 2743 : 	pos3.Y = pos.Y - 10;
; 2744 : 	pos3.Z = pos.Z + 2;
; 2745 : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 2746 : 	if (object)

	test	eax, eax
	je	SHORT $L8946

; 2747 : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L8946:

; 2748 : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 2749 : 	if (object)

	test	eax, eax
	je	SHORT $L8947

; 2750 : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L8947:

; 2751 : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 2752 : 	if (object)

	test	eax, eax
	je	SHORT $L8948

; 2753 : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L8948:

; 2754 : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 2755 : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_Swap@@EAEXPAE@Z ENDP		; JFW_Base_Defence_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Swap@@EAEXPAE0@Z	; JFW_Base_Defence_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$ = -236					; size = 4
_distance$ = -236					; size = 4
_pos2$ = -232						; size = 12
_pos$ = -220						; size = 12
$T14759 = -208						; size = 12
$T14757 = -208						; size = 12
_params$ = -196						; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Swap@@EAEXPAE0@Z PROC NEAR	; JFW_Base_Defence_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 2758 : {

	sub	esp, 236				; 000000ecH
	push	ebx
	push	esi
	push	edi

; 2759 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+244]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 2760 : 	if (o)

	test	eax, eax
	je	SHORT $L8955

; 2761 : 	{
; 2762 : 		seen = o;

	mov	edi, eax
$L8955:

; 2763 : 	}
; 2764 : 	ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2765 : 	Vector3 pos,pos2;
; 2766 : 	float distance;
; 2767 : 	float minattack,maxattack;
; 2768 : 	float attacktimer;
; 2769 : 	pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14757[esp+248]
	push	ebx
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos$[esp+256], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$[esp+260], ecx
	mov	edx, DWORD PTR [eax+8]

; 2770 : 	pos2 = Commands->Get_Position(seen);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T14759[esp+256]
	push	edi
	push	eax
	mov	DWORD PTR _pos$[esp+272], edx
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$[esp+264], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$[esp+268], ecx
	mov	edx, DWORD PTR [eax+8]

; 2771 : 	distance = Commands->Get_Distance(pos2,pos);

	lea	eax, DWORD PTR _pos$[esp+264]
	push	eax
	lea	ecx, DWORD PTR _pos2$[esp+268]
	mov	DWORD PTR _pos2$[esp+276], edx
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+256]
	fstp	DWORD PTR _distance$[esp+272]
	add	esp, 24					; 00000018H

; 2772 : 	minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 2773 : 	if (distance >= minattack)

	fcomp	DWORD PTR _distance$[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L8965

; 2774 : 	{
; 2775 : 		maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 2776 : 		params.Set_Basic(this,100,2,-1);
; 2777 : 		params.Set_Attack_Hold(seen,maxattack,0.0,primary,false);

	fstp	DWORD PTR _params$[esp+324]
	mov	eax, DWORD PTR [esi+4]
	mov	cl, BYTE PTR [esi+44]

; 2778 : 		Commands->Action_Attack(obj,params);

	lea	edx, DWORD PTR _params$[esp+248]
	push	edx
	mov	DWORD PTR _params$[esp+256], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	mov	DWORD PTR _params$[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$[esp+424], -1
	mov	DWORD PTR _params$[esp+344], edi
	mov	DWORD PTR _params$[esp+336], 0
	mov	BYTE PTR _params$[esp+348], cl
	mov	BYTE PTR _params$[esp+364], 0
	call	DWORD PTR [eax+20]
	add	esp, 8

; 2779 : 		attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$[esp+248]

; 2780 : 		Commands->Start_Timer(obj,this,attacktimer,2);

	mov	ecx, DWORD PTR _attacktimer$[esp+248]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	ecx
	push	esi
	push	ebx
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
$L8965:
	pop	edi
	pop	esi
	pop	ebx

; 2781 : 	}
; 2782 : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Swap@@EAEXPAE0@Z ENDP	; JFW_Base_Defence_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 2786 : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L8972

; 2787 : 	{
; 2788 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L8972:

; 2789 : 	}
; 2790 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 2793 : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 2794 : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2795 : 	GameObject *object;
; 2796 : 	float f;
; 2797 : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L8985
	dec	eax
	jne	$L8982

; 2831 : 	break;
; 2832 : 	case 2:
; 2833 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 2834 : 		break;
; 2835 : 	}
; 2836 : }

	add	esp, 196				; 000000c4H
	ret	8
$L8985:

; 2798 : 	{
; 2799 : 	case 1:
; 2800 : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 2801 : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L14781
	mov	eax, 2
$L14781:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L8990
	dec	eax
	je	SHORT $L8992

; 2821 : 		default:
; 2822 : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 2823 : 			if (object)

	test	eax, eax
	je	$L8991

; 2824 : 			{
; 2825 : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 2826 : 				var.Set_Attack(object,0.0,0.0,true);
; 2827 : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L14821
$L8992:

; 2810 : 			}
; 2811 : 			break;
; 2812 : 		case 1:
; 2813 : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 2814 : 			if (object)
; 2815 : 			{
; 2816 : 				var.Set_Basic(this,70,1,-1);
; 2817 : 				var.Set_Attack(object,0.0,0.0,true);
; 2818 : 				Commands->Action_Attack(obj,var);
; 2819 : 			}
; 2820 : 			break;

	jmp	SHORT $L14823
$L8990:

; 2802 : 		{
; 2803 : 		case 0:
; 2804 : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L14823:
	add	esp, 4

; 2805 : 			if (object)

	test	eax, eax
	je	SHORT $L8991

; 2806 : 			{
; 2807 : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 2808 : 				var.Set_Attack(object,0.0,0.0,true);
; 2809 : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L14821:
	add	esp, 8
$L8991:

; 2828 : 			}
; 2829 : 		}
; 2830 : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L8982:
	pop	esi

; 2834 : 		break;
; 2835 : 	}
; 2836 : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_Swap@@EAEXPAEH@Z ENDP	; JFW_Base_Defence_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Swap@@EAEXXZ ; JFW_Base_Defence_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 2839 : {

	push	esi
	mov	esi, ecx

; 2840 : 	Auto_Save_Variable(1,4,&id1);

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

; 2841 : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 2842 : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 2843 : 	Auto_Save_Variable(4,4,&objtype);

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

; 2844 : 	Auto_Save_Variable(5,1,&primary);

	lea	ecx, DWORD PTR [esi+44]
	push	ecx
	push	1
	push	5
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2845 : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_Swap@@EAEXXZ ENDP ; JFW_Base_Defence_Swap::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAE@Z ; JFW_Base_Defence_No_Aircraft_Swap::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T14831 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAE@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft_Swap::Created, COMDAT
; _this$ = ecx

; 2848 : {

	sub	esp, 60					; 0000003cH
	push	esi

; 2849 : 	Vector3 pos,pos1,pos2,pos3;
; 2850 : 	GameObject *object;
; 2851 : 	primary = true;
; 2852 : 	objtype = Commands->Get_Player_Type(obj);

	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	mov	edi, ecx
	mov	BYTE PTR [edi+44], 1
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 2853 : 	Commands->Enable_Hibernation(obj,false);

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

; 2854 : 	Commands->Innate_Enable(obj);

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

; 2855 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 2856 : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T14831[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 2857 : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 2858 : 	pos1.Y = pos.Y - 10;
; 2859 : 	pos1.Z = pos.Z + 2;
; 2860 : 	pos2.X = pos.X + 10;
; 2861 : 	pos2.Y = pos.Y;
; 2862 : 	pos2.Z = pos.Z + 2;
; 2863 : 	pos3.X = pos.X + 10;
; 2864 : 	pos3.Y = pos.Y - 10;
; 2865 : 	pos3.Z = pos.Z + 2;
; 2866 : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 2867 : 	if (object)

	test	eax, eax
	je	SHORT $L9010

; 2868 : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L9010:

; 2869 : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 2870 : 	if (object)

	test	eax, eax
	je	SHORT $L9011

; 2871 : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L9011:

; 2872 : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 2873 : 	if (object)

	test	eax, eax
	je	SHORT $L9012

; 2874 : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L9012:

; 2875 : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 2876 : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAE@Z ENDP ; JFW_Base_Defence_No_Aircraft_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_No_Aircraft_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$9027 = -236				; size = 4
_distance$9024 = -236					; size = 4
_pos2$9023 = -232					; size = 12
_pos$9022 = -220					; size = 12
$T14838 = -208						; size = 12
$T14836 = -208						; size = 12
_params$9021 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 2879 : {

	sub	esp, 236				; 000000ecH
	push	esi
	push	edi

; 2880 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+240]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 2881 : 	if (o)

	test	eax, eax
	je	SHORT $L9019

; 2882 : 	{
; 2883 : 		seen = o;

	mov	edi, eax
$L9019:

; 2884 : 	}
; 2885 : 	if ((stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9030
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9030
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9030
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9030
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9030
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9030
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9030
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9030
	push	ebx

; 2886 : 	{
; 2887 : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9021[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2888 : 		Vector3 pos,pos2;
; 2889 : 		float distance;
; 2890 : 		float minattack,maxattack;
; 2891 : 		float attacktimer;
; 2892 : 		pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR $T14836[esp+248]
	push	ebx
	push	edx
	call	DWORD PTR [eax+64]
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _pos$9022[esp+256], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$9022[esp+260], edx
	mov	eax, DWORD PTR [eax+8]

; 2893 : 		pos2 = Commands->Get_Position(seen);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T14838[esp+256]
	push	edi
	push	ecx
	mov	DWORD PTR _pos$9022[esp+272], eax
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$9023[esp+264], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$9023[esp+268], edx
	mov	eax, DWORD PTR [eax+8]

; 2894 : 		distance = Commands->Get_Distance(pos2,pos);

	lea	ecx, DWORD PTR _pos$9022[esp+264]
	push	ecx
	lea	edx, DWORD PTR _pos2$9023[esp+268]
	mov	DWORD PTR _pos2$9023[esp+276], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+256]
	fstp	DWORD PTR _distance$9024[esp+272]
	add	esp, 24					; 00000018H

; 2895 : 		minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 2896 : 		if (distance >= minattack)

	fcomp	DWORD PTR _distance$9024[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L14853

; 2897 : 		{
; 2898 : 			maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 2899 : 			params.Set_Basic(this,100,2,-1);
; 2900 : 			params.Set_Attack_Hold(seen,maxattack,0.0,primary,false);

	fstp	DWORD PTR _params$9021[esp+324]
	mov	ecx, DWORD PTR [esi+4]
	mov	dl, BYTE PTR [esi+44]

; 2901 : 			Commands->Action_Attack(obj,params);

	lea	eax, DWORD PTR _params$9021[esp+248]
	push	eax
	mov	DWORD PTR _params$9021[esp+256], ecx
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	mov	DWORD PTR _params$9021[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$9021[esp+424], -1
	mov	DWORD PTR _params$9021[esp+344], edi
	mov	DWORD PTR _params$9021[esp+336], 0
	mov	BYTE PTR _params$9021[esp+348], dl
	mov	BYTE PTR _params$9021[esp+364], 0
	call	DWORD PTR [ecx+20]
	add	esp, 8

; 2902 : 			attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$9027[esp+248]

; 2903 : 			Commands->Start_Timer(obj,this,attacktimer,2);

	mov	edx, DWORD PTR _attacktimer$9027[esp+248]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	edx
	push	esi
	push	ebx
	call	DWORD PTR [eax+128]
	add	esp, 16					; 00000010H
$L14853:
	pop	ebx
$L9030:
	pop	edi
	pop	esi

; 2904 : 		}
; 2905 : 	}
; 2906 : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_No_Aircraft_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_No_Aircraft_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 2910 : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L9037

; 2911 : 	{
; 2912 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L9037:

; 2913 : 	}
; 2914 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_No_Aircraft_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_No_Aircraft_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 2917 : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 2918 : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 2919 : 	GameObject *object;
; 2920 : 	float f;
; 2921 : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L9050
	dec	eax
	jne	$L9047

; 2955 : 	break;
; 2956 : 	case 2:
; 2957 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 2958 : 		break;
; 2959 : 	}
; 2960 : }

	add	esp, 196				; 000000c4H
	ret	8
$L9050:

; 2922 : 	{
; 2923 : 	case 1:
; 2924 : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 2925 : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L14861
	mov	eax, 2
$L14861:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L9055
	dec	eax
	je	SHORT $L9057

; 2945 : 		default:
; 2946 : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 2947 : 			if (object)

	test	eax, eax
	je	$L9056

; 2948 : 			{
; 2949 : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 2950 : 				var.Set_Attack(object,0.0,0.0,true);
; 2951 : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L14901
$L9057:

; 2934 : 			}
; 2935 : 			break;
; 2936 : 		case 1:
; 2937 : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 2938 : 			if (object)
; 2939 : 			{
; 2940 : 				var.Set_Basic(this,70,1,-1);
; 2941 : 				var.Set_Attack(object,0.0,0.0,true);
; 2942 : 				Commands->Action_Attack(obj,var);
; 2943 : 			}
; 2944 : 			break;

	jmp	SHORT $L14903
$L9055:

; 2926 : 		{
; 2927 : 		case 0:
; 2928 : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L14903:
	add	esp, 4

; 2929 : 			if (object)

	test	eax, eax
	je	SHORT $L9056

; 2930 : 			{
; 2931 : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 2932 : 				var.Set_Attack(object,0.0,0.0,true);
; 2933 : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L14901:
	add	esp, 8
$L9056:

; 2952 : 			}
; 2953 : 		}
; 2954 : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L9047:
	pop	esi

; 2958 : 		break;
; 2959 : 	}
; 2960 : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_No_Aircraft_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft_Swap@@EAEXXZ ; JFW_Base_Defence_No_Aircraft_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_No_Aircraft_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 2963 : {

	push	esi
	mov	esi, ecx

; 2964 : 	Auto_Save_Variable(1,4,&id1);

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

; 2965 : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 2966 : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 2967 : 	Auto_Save_Variable(4,4,&objtype);

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

; 2968 : 	Auto_Save_Variable(5,1,&primary);

	lea	ecx, DWORD PTR [esi+44]
	push	ecx
	push	1
	push	5
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 2969 : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_No_Aircraft_Swap@@EAEXXZ ENDP ; JFW_Base_Defence_No_Aircraft_Swap::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAE@Z ; JFW_Base_Defence_Aircraft_Only_Swap::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T14911 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAE@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Swap::Created, COMDAT
; _this$ = ecx

; 2972 : {

	sub	esp, 60					; 0000003cH
	push	esi

; 2973 : 	Vector3 pos,pos1,pos2,pos3;
; 2974 : 	GameObject *object;
; 2975 : 	primary = true;
; 2976 : 	objtype = Commands->Get_Player_Type(obj);

	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	mov	edi, ecx
	mov	BYTE PTR [edi+44], 1
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 2977 : 	Commands->Enable_Hibernation(obj,false);

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

; 2978 : 	Commands->Innate_Enable(obj);

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

; 2979 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 2980 : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T14911[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 2981 : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 2982 : 	pos1.Y = pos.Y - 10;
; 2983 : 	pos1.Z = pos.Z + 2;
; 2984 : 	pos2.X = pos.X + 10;
; 2985 : 	pos2.Y = pos.Y;
; 2986 : 	pos2.Z = pos.Z + 2;
; 2987 : 	pos3.X = pos.X + 10;
; 2988 : 	pos3.Y = pos.Y - 10;
; 2989 : 	pos3.Z = pos.Z + 2;
; 2990 : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 2991 : 	if (object)

	test	eax, eax
	je	SHORT $L9075

; 2992 : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L9075:

; 2993 : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 2994 : 	if (object)

	test	eax, eax
	je	SHORT $L9076

; 2995 : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L9076:

; 2996 : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 2997 : 	if (object)

	test	eax, eax
	je	SHORT $L9077

; 2998 : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L9077:

; 2999 : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 3000 : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Aircraft_Only_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_Aircraft_Only_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$9093 = -236				; size = 4
_distance$9090 = -236					; size = 4
_pos2$9089 = -232					; size = 12
_pos$9088 = -220					; size = 12
$T14918 = -208						; size = 12
$T14916 = -208						; size = 12
_params$9087 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 3003 : {

	sub	esp, 236				; 000000ecH
	push	esi
	push	edi

; 3004 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+240]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 3005 : 	if (o)

	test	eax, eax
	je	SHORT $L9084

; 3006 : 	{
; 3007 : 		seen = o;

	mov	edi, eax
$L9084:

; 3008 : 	}
; 3009 : 	if ((!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9086
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9086
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9086
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9086
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L9086
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L9086
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L9086
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	jne	$L9096
$L9086:
	push	ebx

; 3010 : 	{
; 3011 : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9087[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3012 : 		Vector3 pos,pos2;
; 3013 : 		float distance;
; 3014 : 		float minattack,maxattack;
; 3015 : 		float attacktimer;
; 3016 : 		pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR $T14916[esp+248]
	push	ebx
	push	edx
	call	DWORD PTR [eax+64]
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _pos$9088[esp+256], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$9088[esp+260], edx
	mov	eax, DWORD PTR [eax+8]

; 3017 : 		pos2 = Commands->Get_Position(seen);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T14918[esp+256]
	push	edi
	push	ecx
	mov	DWORD PTR _pos$9088[esp+272], eax
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$9089[esp+264], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$9089[esp+268], edx
	mov	eax, DWORD PTR [eax+8]

; 3018 : 		distance = Commands->Get_Distance(pos2,pos);

	lea	ecx, DWORD PTR _pos$9088[esp+264]
	push	ecx
	lea	edx, DWORD PTR _pos2$9089[esp+268]
	mov	DWORD PTR _pos2$9089[esp+276], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+256]
	fstp	DWORD PTR _distance$9090[esp+272]
	add	esp, 24					; 00000018H

; 3019 : 		minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 3020 : 		if (distance >= minattack)

	fcomp	DWORD PTR _distance$9090[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L14933

; 3021 : 		{
; 3022 : 			maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 3023 : 			params.Set_Basic(this,100,2,-1);
; 3024 : 			params.Set_Attack_Hold(seen,maxattack,0.0,primary,false);

	fstp	DWORD PTR _params$9087[esp+324]
	mov	ecx, DWORD PTR [esi+4]
	mov	dl, BYTE PTR [esi+44]

; 3025 : 			Commands->Action_Attack(obj,params);

	lea	eax, DWORD PTR _params$9087[esp+248]
	push	eax
	mov	DWORD PTR _params$9087[esp+256], ecx
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	mov	DWORD PTR _params$9087[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$9087[esp+424], -1
	mov	DWORD PTR _params$9087[esp+344], edi
	mov	DWORD PTR _params$9087[esp+336], 0
	mov	BYTE PTR _params$9087[esp+348], dl
	mov	BYTE PTR _params$9087[esp+364], 0
	call	DWORD PTR [ecx+20]
	add	esp, 8

; 3026 : 			attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$9093[esp+248]

; 3027 : 			Commands->Start_Timer(obj,this,attacktimer,2);

	mov	edx, DWORD PTR _attacktimer$9093[esp+248]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	edx
	push	esi
	push	ebx
	call	DWORD PTR [eax+128]
	add	esp, 16					; 00000010H
$L14933:
	pop	ebx
$L9096:
	pop	edi
	pop	esi

; 3028 : 		}
; 3029 : 	}
; 3030 : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Aircraft_Only_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Aircraft_Only_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 3034 : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L9103

; 3035 : 	{
; 3036 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L9103:

; 3037 : 	}
; 3038 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Aircraft_Only_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_Aircraft_Only_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 3041 : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 3042 : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3043 : 	GameObject *object;
; 3044 : 	float f;
; 3045 : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L9116
	dec	eax
	jne	$L9113

; 3079 : 	break;
; 3080 : 	case 2:
; 3081 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 3082 : 		break;
; 3083 : 	}
; 3084 : }

	add	esp, 196				; 000000c4H
	ret	8
$L9116:

; 3046 : 	{
; 3047 : 	case 1:
; 3048 : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 3049 : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L14941
	mov	eax, 2
$L14941:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L9121
	dec	eax
	je	SHORT $L9123

; 3069 : 		default:
; 3070 : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 3071 : 			if (object)

	test	eax, eax
	je	$L9122

; 3072 : 			{
; 3073 : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 3074 : 				var.Set_Attack(object,0.0,0.0,true);
; 3075 : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L14981
$L9123:

; 3058 : 			}
; 3059 : 			break;
; 3060 : 		case 1:
; 3061 : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 3062 : 			if (object)
; 3063 : 			{
; 3064 : 				var.Set_Basic(this,70,1,-1);
; 3065 : 				var.Set_Attack(object,0.0,0.0,true);
; 3066 : 				Commands->Action_Attack(obj,var);
; 3067 : 			}
; 3068 : 			break;

	jmp	SHORT $L14983
$L9121:

; 3050 : 		{
; 3051 : 		case 0:
; 3052 : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L14983:
	add	esp, 4

; 3053 : 			if (object)

	test	eax, eax
	je	SHORT $L9122

; 3054 : 			{
; 3055 : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 3056 : 				var.Set_Attack(object,0.0,0.0,true);
; 3057 : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L14981:
	add	esp, 8
$L9122:

; 3076 : 			}
; 3077 : 		}
; 3078 : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L9113:
	pop	esi

; 3082 : 		break;
; 3083 : 	}
; 3084 : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Aircraft_Only_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXXZ ; JFW_Base_Defence_Aircraft_Only_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 3087 : {

	push	esi
	mov	esi, ecx

; 3088 : 	Auto_Save_Variable(1,4,&id1);

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

; 3089 : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3090 : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3091 : 	Auto_Save_Variable(4,4,&objtype);

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

; 3092 : 	Auto_Save_Variable(5,1,&primary);

	lea	ecx, DWORD PTR [esi+44]
	push	ecx
	push	1
	push	5
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 3093 : }

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

; 3096 : {

	push	esi

; 3097 : 	popup = false;

	xor	eax, eax
	push	edi

; 3098 : 	attack = false;
; 3099 : 	primary = true;
; 3100 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 3101 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3102 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Swap@@EAEXPAE@Z ENDP	; JFW_Base_Defence_Animated_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$9145 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 3105 : {

	sub	esp, 196				; 000000c4H
	push	ebx
	push	esi
	push	edi

; 3106 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+204]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 3107 : 	if (o)

	test	eax, eax
	je	SHORT $L9141

; 3108 : 	{
; 3109 : 		seen = o;

	mov	edi, eax
$L9141:

; 3110 : 	}
; 3111 : 	if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L9142

; 3112 : 	{
; 3113 : 		popup = true;

	mov	BYTE PTR [esi+28], 1

; 3114 : 		Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 3115 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 3116 : 		Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi
	pop	ebx

; 3124 : 	}
; 3125 : }

	add	esp, 196				; 000000c4H
	ret	8
$L9142:

; 3117 : 	}
; 3118 : 	else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L9144

; 3119 : 	{
; 3120 : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9145[esp+208]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3121 : 		params.Set_Basic(this,100,1,-1);

	mov	eax, DWORD PTR [esi+4]

; 3122 : 		params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$9145[esp+212], 100	; 00000064H
	mov	DWORD PTR _params$9145[esp+216], eax
	mov	DWORD PTR _params$9145[esp+380], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$9145[esp+284]

; 3123 : 		Commands->Action_Attack(obj,params);

	mov	edx, DWORD PTR _obj$[esp+204]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _params$9145[esp+208]
	push	ecx
	push	edx
	mov	DWORD PTR _params$9145[esp+304], edi
	mov	DWORD PTR _params$9145[esp+296], 0
	mov	BYTE PTR _params$9145[esp+308], bl
	mov	BYTE PTR _params$9145[esp+324], 0
	call	DWORD PTR [eax+20]
	add	esp, 8
$L9144:
	pop	edi
	pop	esi
	pop	ebx

; 3124 : 	}
; 3125 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 3129 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 3130 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 3134 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L9157
	push	edi

; 3135 : 	{
; 3136 : 		popup = false;
; 3137 : 		attack = false;
; 3138 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 3139 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3144 : 	}
; 3145 : }

	ret	8
$L9157:

; 3140 : 	}
; 3141 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L9158

; 3142 : 	{
; 3143 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L9158:
	pop	esi

; 3144 : 	}
; 3145 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Swap@@EAEXXZ ; JFW_Base_Defence_Animated_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 3148 : {

	push	esi
	mov	esi, ecx

; 3149 : 	Auto_Save_Variable(1,1,&popup);

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

; 3150 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3151 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 3152 : }

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

; 3155 : {

	push	esi

; 3156 : 	popup = false;

	xor	eax, eax
	push	edi

; 3157 : 	attack = false;
; 3158 : 	primary = true;
; 3159 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 3160 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3161 : }

	ret	4
?Created@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$9177 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 3164 : {

	sub	esp, 196				; 000000c4H
	push	esi
	push	edi

; 3165 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+200]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 3166 : 	if (o)

	test	eax, eax
	je	SHORT $L9172

; 3167 : 	{
; 3168 : 		seen = o;

	mov	edi, eax
$L9172:

; 3169 : 	}
; 3170 : 	if ((stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9176
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9176
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9176
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9176
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9176
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9176
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9176
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9176

; 3171 : 	{
; 3172 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L9174

; 3173 : 		{
; 3174 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 3175 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 3176 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 3177 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	ebx
	pop	edi
	pop	esi

; 3185 : 		}
; 3186 : 	}
; 3187 : }

	add	esp, 196				; 000000c4H
	ret	8
$L9174:

; 3178 : 		}
; 3179 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L15038

; 3180 : 		{
; 3181 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9177[esp+208]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3182 : 			params.Set_Basic(this,100,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 3183 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$9177[esp+212], 100	; 00000064H
	mov	DWORD PTR _params$9177[esp+216], edx
	mov	DWORD PTR _params$9177[esp+380], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$9177[esp+284]

; 3184 : 			Commands->Action_Attack(obj,params);

	mov	ecx, DWORD PTR _obj$[esp+204]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR _params$9177[esp+208]
	push	eax
	push	ecx
	mov	DWORD PTR _params$9177[esp+304], edi
	mov	DWORD PTR _params$9177[esp+296], 0
	mov	BYTE PTR _params$9177[esp+308], bl
	mov	BYTE PTR _params$9177[esp+324], 0
	call	DWORD PTR [edx+20]
	add	esp, 8
$L15038:
	pop	ebx
$L9176:
	pop	edi
	pop	esi

; 3185 : 		}
; 3186 : 	}
; 3187 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 3191 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 3192 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 3196 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L9189
	push	edi

; 3197 : 	{
; 3198 : 		popup = false;
; 3199 : 		attack = false;
; 3200 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 3201 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3206 : 	}
; 3207 : }

	ret	8
$L9189:

; 3202 : 	}
; 3203 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L9190

; 3204 : 	{
; 3205 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L9190:
	pop	esi

; 3206 : 	}
; 3207 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXXZ ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 3210 : {

	push	esi
	mov	esi, ecx

; 3211 : 	Auto_Save_Variable(1,1,&popup);

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

; 3212 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3213 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 3214 : }

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

; 3217 : {

	push	esi

; 3218 : 	popup = false;

	xor	eax, eax
	push	edi

; 3219 : 	attack = false;
; 3220 : 	primary = true;
; 3221 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 3222 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3223 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$9210 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 3226 : {

	sub	esp, 196				; 000000c4H
	push	esi
	push	edi

; 3227 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+200]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 3228 : 	if (o)

	test	eax, eax
	je	SHORT $L9204

; 3229 : 	{
; 3230 : 		seen = o;

	mov	edi, eax
$L9204:

; 3231 : 	}
; 3232 : 	if ((!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9206
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9206
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9206
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9206
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L9206
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L9206
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L9206
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	edi
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	jne	$L9209
$L9206:

; 3233 : 	{
; 3234 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L9207

; 3235 : 		{
; 3236 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 3237 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 3238 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 3239 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	ebx
	pop	edi
	pop	esi

; 3247 : 		}
; 3248 : 	}
; 3249 : }

	add	esp, 196				; 000000c4H
	ret	8
$L9207:

; 3240 : 		}
; 3241 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L15069

; 3242 : 		{
; 3243 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9210[esp+208]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3244 : 			params.Set_Basic(this,100,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 3245 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$9210[esp+212], 100	; 00000064H
	mov	DWORD PTR _params$9210[esp+216], edx
	mov	DWORD PTR _params$9210[esp+380], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$9210[esp+284]

; 3246 : 			Commands->Action_Attack(obj,params);

	mov	ecx, DWORD PTR _obj$[esp+204]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR _params$9210[esp+208]
	push	eax
	push	ecx
	mov	DWORD PTR _params$9210[esp+304], edi
	mov	DWORD PTR _params$9210[esp+296], 0
	mov	BYTE PTR _params$9210[esp+308], bl
	mov	BYTE PTR _params$9210[esp+324], 0
	call	DWORD PTR [edx+20]
	add	esp, 8
$L15069:
	pop	ebx
$L9209:
	pop	edi
	pop	esi

; 3247 : 		}
; 3248 : 	}
; 3249 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 3253 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 3254 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 3258 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L9222
	push	edi

; 3259 : 	{
; 3260 : 		popup = false;
; 3261 : 		attack = false;
; 3262 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 3263 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3268 : 	}
; 3269 : }

	ret	8
$L9222:

; 3264 : 	}
; 3265 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L9223

; 3266 : 	{
; 3267 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L9223:
	pop	esi

; 3268 : 	}
; 3269 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXXZ ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 3272 : {

	push	esi
	mov	esi, ecx

; 3273 : 	Auto_Save_Variable(1,1,&popup);

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

; 3274 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3275 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 3276 : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXXZ ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAE@Z ; JFW_Base_Defence_No_VTOL_Swap::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T15083 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAE@Z PROC NEAR ; JFW_Base_Defence_No_VTOL_Swap::Created, COMDAT
; _this$ = ecx

; 3279 : {

	sub	esp, 60					; 0000003cH
	push	esi

; 3280 : 	Vector3 pos,pos1,pos2,pos3;
; 3281 : 	GameObject *object;
; 3282 : 	primary = true;
; 3283 : 	objtype = Commands->Get_Player_Type(obj);

	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	mov	edi, ecx
	mov	BYTE PTR [edi+44], 1
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 3284 : 	Commands->Enable_Hibernation(obj,false);

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

; 3285 : 	Commands->Innate_Enable(obj);

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

; 3286 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 3287 : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T15083[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 3288 : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 3289 : 	pos1.Y = pos.Y - 10;
; 3290 : 	pos1.Z = pos.Z + 2;
; 3291 : 	pos2.X = pos.X + 10;
; 3292 : 	pos2.Y = pos.Y;
; 3293 : 	pos2.Z = pos.Z + 2;
; 3294 : 	pos3.X = pos.X + 10;
; 3295 : 	pos3.Y = pos.Y - 10;
; 3296 : 	pos3.Z = pos.Z + 2;
; 3297 : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 3298 : 	if (object)

	test	eax, eax
	je	SHORT $L9237

; 3299 : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L9237:

; 3300 : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 3301 : 	if (object)

	test	eax, eax
	je	SHORT $L9238

; 3302 : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L9238:

; 3303 : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 3304 : 	if (object)

	test	eax, eax
	je	SHORT $L9239

; 3305 : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L9239:

; 3306 : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 3307 : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAE@Z ENDP	; JFW_Base_Defence_No_VTOL_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_No_VTOL_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$9254 = -236				; size = 4
_distance$9251 = -236					; size = 4
_pos2$9250 = -232					; size = 12
_pos$9249 = -220					; size = 12
$T15090 = -208						; size = 12
$T15088 = -208						; size = 12
_params$9248 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_No_VTOL_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 3310 : {

	sub	esp, 236				; 000000ecH
	push	esi
	push	edi

; 3311 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+240]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 3312 : 	if (o)

	test	eax, eax
	je	SHORT $L9246

; 3313 : 	{
; 3314 : 		seen = o;

	mov	edi, eax
$L9246:

; 3315 : 	}
; 3316 : 	if (Get_Vehicle_Mode(seen) != FLYING)

	push	edi
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	je	$L9257
	push	ebx

; 3317 : 	{
; 3318 : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9248[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3319 : 		Vector3 pos,pos2;
; 3320 : 		float distance;
; 3321 : 		float minattack,maxattack;
; 3322 : 		float attacktimer;
; 3323 : 		pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T15088[esp+248]
	push	ebx
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos$9249[esp+256], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$9249[esp+260], ecx
	mov	edx, DWORD PTR [eax+8]

; 3324 : 		pos2 = Commands->Get_Position(seen);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T15090[esp+256]
	push	edi
	push	eax
	mov	DWORD PTR _pos$9249[esp+272], edx
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$9250[esp+264], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$9250[esp+268], ecx
	mov	edx, DWORD PTR [eax+8]

; 3325 : 		distance = Commands->Get_Distance(pos2,pos);

	lea	eax, DWORD PTR _pos$9249[esp+264]
	push	eax
	lea	ecx, DWORD PTR _pos2$9250[esp+268]
	mov	DWORD PTR _pos2$9250[esp+276], edx
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+256]
	fstp	DWORD PTR _distance$9251[esp+272]
	add	esp, 24					; 00000018H

; 3326 : 		minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 3327 : 		if (distance >= minattack)

	fcomp	DWORD PTR _distance$9251[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L15105

; 3328 : 		{
; 3329 : 			maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 3330 : 			params.Set_Basic(this,100,2,-1);
; 3331 : 			params.Set_Attack_Hold(seen,maxattack,0,primary,false);

	fstp	DWORD PTR _params$9248[esp+324]
	mov	eax, DWORD PTR [esi+4]
	mov	cl, BYTE PTR [esi+44]

; 3332 : 			Commands->Action_Attack(obj,params);

	lea	edx, DWORD PTR _params$9248[esp+248]
	push	edx
	mov	DWORD PTR _params$9248[esp+256], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	mov	DWORD PTR _params$9248[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$9248[esp+424], -1
	mov	DWORD PTR _params$9248[esp+344], edi
	mov	DWORD PTR _params$9248[esp+336], 0
	mov	BYTE PTR _params$9248[esp+348], cl
	mov	BYTE PTR _params$9248[esp+364], 0
	call	DWORD PTR [eax+20]
	add	esp, 8

; 3333 : 			attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$9254[esp+248]

; 3334 : 			Commands->Start_Timer(obj,this,attacktimer,2);

	mov	ecx, DWORD PTR _attacktimer$9254[esp+248]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	ecx
	push	esi
	push	ebx
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
$L15105:
	pop	ebx
$L9257:
	pop	edi
	pop	esi

; 3335 : 		}
; 3336 : 	}
; 3337 : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_No_VTOL_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_No_VTOL_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_No_VTOL_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 3341 : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L9264

; 3342 : 	{
; 3343 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L9264:

; 3344 : 	}
; 3345 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_No_VTOL_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_No_VTOL_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_No_VTOL_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 3348 : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 3349 : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3350 : 	GameObject *object;
; 3351 : 	float f;
; 3352 : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L9277
	dec	eax
	jne	$L9274

; 3386 : 	break;
; 3387 : 	case 2:
; 3388 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 3389 : 		break;
; 3390 : 	}
; 3391 : }

	add	esp, 196				; 000000c4H
	ret	8
$L9277:

; 3353 : 	{
; 3354 : 	case 1:
; 3355 : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 3356 : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L15113
	mov	eax, 2
$L15113:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L9282
	dec	eax
	je	SHORT $L9284

; 3376 : 		default:
; 3377 : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 3378 : 			if (object)

	test	eax, eax
	je	$L9283

; 3379 : 			{
; 3380 : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 3381 : 				var.Set_Attack(object,0.0,0.0,true);
; 3382 : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L15153
$L9284:

; 3365 : 			}
; 3366 : 			break;
; 3367 : 		case 1:
; 3368 : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 3369 : 			if (object)
; 3370 : 			{
; 3371 : 				var.Set_Basic(this,70,1,-1);
; 3372 : 				var.Set_Attack(object,0.0,0.0,true);
; 3373 : 				Commands->Action_Attack(obj,var);
; 3374 : 			}
; 3375 : 			break;

	jmp	SHORT $L15155
$L9282:

; 3357 : 		{
; 3358 : 		case 0:
; 3359 : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L15155:
	add	esp, 4

; 3360 : 			if (object)

	test	eax, eax
	je	SHORT $L9283

; 3361 : 			{
; 3362 : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 3363 : 				var.Set_Attack(object,0.0,0.0,true);
; 3364 : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L15153:
	add	esp, 8
$L9283:

; 3383 : 			}
; 3384 : 		}
; 3385 : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L9274:
	pop	esi

; 3389 : 		break;
; 3390 : 	}
; 3391 : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_No_VTOL_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL_Swap@@EAEXXZ ; JFW_Base_Defence_No_VTOL_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_No_VTOL_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 3394 : {

	push	esi
	mov	esi, ecx

; 3395 : 	Auto_Save_Variable(1,4,&id1);

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

; 3396 : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3397 : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3398 : 	Auto_Save_Variable(4,4,&objtype);

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

; 3399 : 	Auto_Save_Variable(5,1,&primary);

	lea	ecx, DWORD PTR [esi+44]
	push	ecx
	push	1
	push	5
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 3400 : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_No_VTOL_Swap@@EAEXXZ ENDP ; JFW_Base_Defence_No_VTOL_Swap::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	?Created@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAE@Z ; JFW_Base_Defence_VTOL_Only_Swap::Created
; Function compile flags: /Ogty
;	COMDAT ?Created@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAE@Z
_TEXT	SEGMENT
_pos$ = -60						; size = 12
_pos1$ = -48						; size = 12
_pos2$ = -36						; size = 12
_pos3$ = -24						; size = 12
$T15163 = -12						; size = 12
_obj$ = 8						; size = 4
?Created@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAE@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only_Swap::Created, COMDAT
; _this$ = ecx

; 3403 : {

	sub	esp, 60					; 0000003cH
	push	esi

; 3404 : 	Vector3 pos,pos1,pos2,pos3;
; 3405 : 	GameObject *object;
; 3406 : 	primary = true;
; 3407 : 	objtype = Commands->Get_Player_Type(obj);

	mov	esi, DWORD PTR _obj$[esp+60]
	push	edi
	mov	edi, ecx
	mov	BYTE PTR [edi+44], 1
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	esi
	call	DWORD PTR [eax+248]
	mov	DWORD PTR [edi+40], eax

; 3408 : 	Commands->Enable_Hibernation(obj,false);

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

; 3409 : 	Commands->Innate_Enable(obj);

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

; 3410 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	esi
	call	DWORD PTR [eax+300]

; 3411 : 	pos = Commands->Get_Position(obj);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR $T15163[esp+92]
	push	esi
	push	ecx
	call	DWORD PTR [edx+64]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _pos$[esp+100], ecx

; 3412 : 	pos1.X = pos.X - 10;

	fld	DWORD PTR _pos$[esp+100]
	fsub	DWORD PTR __real@41200000
	mov	DWORD PTR _pos$[esp+104], edx
	mov	DWORD PTR _pos$[esp+108], eax

; 3413 : 	pos1.Y = pos.Y - 10;
; 3414 : 	pos1.Z = pos.Z + 2;
; 3415 : 	pos2.X = pos.X + 10;
; 3416 : 	pos2.Y = pos.Y;
; 3417 : 	pos2.Z = pos.Z + 2;
; 3418 : 	pos3.X = pos.X + 10;
; 3419 : 	pos3.Y = pos.Y - 10;
; 3420 : 	pos3.Z = pos.Z + 2;
; 3421 : 	object = Commands->Create_Object("Invisible_Object",pos1);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	fstp	DWORD PTR _pos1$[esp+100]
	mov	ecx, edx
	fld	DWORD PTR _pos$[esp+104]
	lea	edx, DWORD PTR _pos1$[esp+100]
	fsub	DWORD PTR __real@41200000
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	mov	DWORD PTR _pos2$[esp+112], ecx
	fst	DWORD PTR _pos1$[esp+112]
	fld	DWORD PTR _pos$[esp+116]
	fadd	DWORD PTR __real@40000000
	fst	DWORD PTR _pos1$[esp+116]
	fld	DWORD PTR _pos$[esp+108]
	fadd	DWORD PTR __real@41200000
	fst	DWORD PTR _pos2$[esp+108]
	fld	ST(1)
	fstp	DWORD PTR _pos2$[esp+116]
	fstp	DWORD PTR _pos3$[esp+108]
	fxch	ST(1)
	fstp	DWORD PTR _pos3$[esp+112]
	fstp	DWORD PTR _pos3$[esp+116]
	call	DWORD PTR [eax+100]
	add	esp, 40					; 00000028H

; 3422 : 	if (object)

	test	eax, eax
	je	SHORT $L9302

; 3423 : 		id1 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+28], eax
$L9302:

; 3424 : 	object = Commands->Create_Object("Invisible_Object",pos2);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos2$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 3425 : 	if (object)

	test	eax, eax
	je	SHORT $L9303

; 3426 : 		id2 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+32], eax
$L9303:

; 3427 : 	object = Commands->Create_Object("Invisible_Object",pos3);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _pos3$[esp+68]
	push	edx
	push	OFFSET FLAT:??_C@_0BB@NHJNEILC@Invisible_Object?$AA@
	call	DWORD PTR [eax+100]
	add	esp, 8

; 3428 : 	if (object)

	test	eax, eax
	je	SHORT $L9304

; 3429 : 		id3 = Commands->Get_ID(object);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+108]
	add	esp, 4
	mov	DWORD PTR [edi+36], eax
$L9304:

; 3430 : 	Commands->Start_Timer(obj,this,10,1);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	edi
	push	esi
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi

; 3431 : }

	add	esp, 60					; 0000003cH
	ret	4
?Created@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAE@Z ENDP ; JFW_Base_Defence_VTOL_Only_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_VTOL_Only_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
_attacktimer$9319 = -236				; size = 4
_distance$9316 = -236					; size = 4
_pos2$9315 = -232					; size = 12
_pos$9314 = -220					; size = 12
$T15170 = -208						; size = 12
$T15168 = -208						; size = 12
_params$9313 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 3434 : {

	sub	esp, 236				; 000000ecH
	push	esi
	push	edi

; 3435 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+240]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 3436 : 	if (o)

	test	eax, eax
	je	SHORT $L9311

; 3437 : 	{
; 3438 : 		seen = o;

	mov	edi, eax
$L9311:

; 3439 : 	}
; 3440 : 	if (Get_Vehicle_Mode(seen) == FLYING)

	push	edi
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	jne	$L9322
	push	ebx

; 3441 : 	{
; 3442 : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9313[esp+248]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3443 : 		Vector3 pos,pos2;
; 3444 : 		float distance;
; 3445 : 		float minattack,maxattack;
; 3446 : 		float attacktimer;
; 3447 : 		pos = Commands->Get_Position(obj);

	mov	ebx, DWORD PTR _obj$[esp+244]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T15168[esp+248]
	push	ebx
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos$9314[esp+256], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos$9314[esp+260], ecx
	mov	edx, DWORD PTR [eax+8]

; 3448 : 		pos2 = Commands->Get_Position(seen);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T15170[esp+256]
	push	edi
	push	eax
	mov	DWORD PTR _pos$9314[esp+272], edx
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _pos2$9315[esp+264], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _pos2$9315[esp+268], ecx
	mov	edx, DWORD PTR [eax+8]

; 3449 : 		distance = Commands->Get_Distance(pos2,pos);

	lea	eax, DWORD PTR _pos$9314[esp+264]
	push	eax
	lea	ecx, DWORD PTR _pos2$9315[esp+268]
	mov	DWORD PTR _pos2$9315[esp+276], edx
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+256]
	fstp	DWORD PTR _distance$9316[esp+272]
	add	esp, 24					; 00000018H

; 3450 : 		minattack = Get_Float_Parameter("MinAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@FPEDNKGK@MinAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 3451 : 		if (distance >= minattack)

	fcomp	DWORD PTR _distance$9316[esp+248]
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	$L15185

; 3452 : 		{
; 3453 : 			maxattack = Get_Float_Parameter("MaxAttackDistance");

	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter

; 3454 : 			params.Set_Basic(this,100,2,-1);
; 3455 : 			params.Set_Attack_Hold(seen,maxattack,0,primary,false);

	fstp	DWORD PTR _params$9313[esp+324]
	mov	eax, DWORD PTR [esi+4]
	mov	cl, BYTE PTR [esi+44]

; 3456 : 			Commands->Action_Attack(obj,params);

	lea	edx, DWORD PTR _params$9313[esp+248]
	push	edx
	mov	DWORD PTR _params$9313[esp+256], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebx
	mov	DWORD PTR _params$9313[esp+256], 100	; 00000064H
	mov	DWORD PTR _params$9313[esp+424], -1
	mov	DWORD PTR _params$9313[esp+344], edi
	mov	DWORD PTR _params$9313[esp+336], 0
	mov	BYTE PTR _params$9313[esp+348], cl
	mov	BYTE PTR _params$9313[esp+364], 0
	call	DWORD PTR [eax+20]
	add	esp, 8

; 3457 : 			attacktimer = Get_Float_Parameter("AttackTimer");

	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _attacktimer$9319[esp+248]

; 3458 : 			Commands->Start_Timer(obj,this,attacktimer,2);

	mov	ecx, DWORD PTR _attacktimer$9319[esp+248]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	ecx
	push	esi
	push	ebx
	call	DWORD PTR [edx+128]
	add	esp, 16					; 00000010H
$L15185:
	pop	ebx
$L9322:
	pop	edi
	pop	esi

; 3459 : 		}
; 3460 : 	}
; 3461 : }

	add	esp, 236				; 000000ecH
	ret	8
?Enemy_Seen@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_VTOL_Only_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_VTOL_Only_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 3465 : 	if (action == 2)

	cmp	DWORD PTR _action$[esp-4], 2
	jne	SHORT $L9329

; 3466 : 	{
; 3467 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
$L9329:

; 3468 : 	}
; 3469 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_VTOL_Only_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_VTOL_Only_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_var$ = -196						; size = 196
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 3472 : {

	sub	esp, 196				; 000000c4H
	push	esi
	mov	esi, ecx

; 3473 : 	ActionParamsStruct var;

	lea	ecx, DWORD PTR _var$[esp+200]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3474 : 	GameObject *object;
; 3475 : 	float f;
; 3476 : 	switch (number)

	mov	eax, DWORD PTR _number$[esp+196]
	dec	eax
	je	SHORT $L9342
	dec	eax
	jne	$L9339

; 3510 : 	break;
; 3511 : 	case 2:
; 3512 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp+196]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8
	pop	esi

; 3513 : 		break;
; 3514 : 	}
; 3515 : }

	add	esp, 196				; 000000c4H
	ret	8
$L9342:

; 3477 : 	{
; 3478 : 	case 1:
; 3479 : 		f = Commands->Get_Random(0.0f,2.9999f);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1077935709				; 403ffe5dH
	push	0
	call	DWORD PTR [edx+148]
	add	esp, 8

; 3480 : 		switch (__min(int(f),2))

	call	__ftol2
	cmp	eax, 2
	jl	SHORT $L15193
	mov	eax, 2
$L15193:
	sub	eax, 0
	push	edi
	mov	edi, DWORD PTR _obj$[esp+200]
	je	SHORT $L9347
	dec	eax
	je	SHORT $L9349

; 3500 : 		default:
; 3501 : 			object = Commands->Find_Object(id3);

	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	call	DWORD PTR [ecx+96]
	add	esp, 4

; 3502 : 			if (object)

	test	eax, eax
	je	$L9348

; 3503 : 			{
; 3504 : 				var.Set_Basic(this,70,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 3505 : 				var.Set_Attack(object,0.0,0.0,true);
; 3506 : 				Commands->Action_Attack(obj,var);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR _var$[esp+292], eax
	lea	eax, DWORD PTR _var$[esp+204]
	push	eax
	push	edi
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	mov	DWORD PTR _var$[esp+216], edx
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+292], 0
	mov	BYTE PTR _var$[esp+304], 1
	call	DWORD PTR [ecx+20]
	jmp	SHORT $L15233
$L9349:

; 3489 : 			}
; 3490 : 			break;
; 3491 : 		case 1:
; 3492 : 			object = Commands->Find_Object(id2);

	mov	edx, DWORD PTR [esi+32]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edx
	call	DWORD PTR [eax+96]

; 3493 : 			if (object)
; 3494 : 			{
; 3495 : 				var.Set_Basic(this,70,1,-1);
; 3496 : 				var.Set_Attack(object,0.0,0.0,true);
; 3497 : 				Commands->Action_Attack(obj,var);
; 3498 : 			}
; 3499 : 			break;

	jmp	SHORT $L15235
$L9347:

; 3481 : 		{
; 3482 : 		case 0:
; 3483 : 			object = Commands->Find_Object(id1);

	mov	ecx, DWORD PTR [esi+28]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ecx
	call	DWORD PTR [edx+96]
$L15235:
	add	esp, 4

; 3484 : 			if (object)

	test	eax, eax
	je	SHORT $L9348

; 3485 : 			{
; 3486 : 				var.Set_Basic(this,70,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 3487 : 				var.Set_Attack(object,0.0,0.0,true);
; 3488 : 				Commands->Action_Attack(obj,var);

	lea	edx, DWORD PTR _var$[esp+204]
	push	edx
	mov	DWORD PTR _var$[esp+296], eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	edi
	mov	BYTE PTR _var$[esp+304], 1
	mov	DWORD PTR _var$[esp+292], 0
	mov	DWORD PTR _var$[esp+288], 0
	mov	DWORD PTR _var$[esp+380], -1
	mov	DWORD PTR _var$[esp+216], ecx
	mov	DWORD PTR _var$[esp+212], 70		; 00000046H
	call	DWORD PTR [eax+20]
$L15233:
	add	esp, 8
$L9348:

; 3507 : 			}
; 3508 : 		}
; 3509 : 	Commands->Start_Timer(obj,this,10,1);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	1092616192				; 41200000H
	push	esi
	push	edi
	call	DWORD PTR [ecx+128]
	add	esp, 16					; 00000010H
	pop	edi
$L9339:
	pop	esi

; 3513 : 		break;
; 3514 : 	}
; 3515 : }

	add	esp, 196				; 000000c4H
	ret	8
?Timer_Expired@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_VTOL_Only_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_VTOL_Only_Swap@@EAEXXZ ; JFW_Base_Defence_VTOL_Only_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_VTOL_Only_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_VTOL_Only_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_VTOL_Only_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 3518 : {

	push	esi
	mov	esi, ecx

; 3519 : 	Auto_Save_Variable(1,4,&id1);

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

; 3520 : 	Auto_Save_Variable(2,4,&id2);

	lea	ecx, DWORD PTR [esi+32]
	push	ecx
	push	4
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3521 : 	Auto_Save_Variable(3,4,&id3);

	lea	edx, DWORD PTR [esi+36]
	push	edx
	push	4
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3522 : 	Auto_Save_Variable(4,4,&objtype);

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

; 3523 : 	Auto_Save_Variable(5,1,&primary);

	lea	ecx, DWORD PTR [esi+44]
	push	ecx
	push	1
	push	5
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 3524 : }

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

; 3527 : {

	push	esi

; 3528 : 	popup = false;

	xor	eax, eax
	push	edi

; 3529 : 	attack = false;
; 3530 : 	primary = true;
; 3531 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 3532 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3533 : }

	ret	4
?Created@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_No_VTOL_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$9372 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 3536 : {

	sub	esp, 196				; 000000c4H
	push	esi
	push	edi

; 3537 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+200]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 3538 : 	if (o)

	test	eax, eax
	je	SHORT $L9367

; 3539 : 	{
; 3540 : 		seen = o;

	mov	edi, eax
$L9367:

; 3541 : 	}
; 3542 : 	if (Get_Vehicle_Mode(seen) != FLYING)

	push	edi
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	je	$L9371

; 3543 : 	{
; 3544 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L9369

; 3545 : 		{
; 3546 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 3547 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 3548 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 3549 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	ebx
	pop	edi
	pop	esi

; 3557 : 		}
; 3558 : 	}
; 3559 : }

	add	esp, 196				; 000000c4H
	ret	8
$L9369:

; 3550 : 		}
; 3551 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L15260

; 3552 : 		{
; 3553 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9372[esp+208]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3554 : 			params.Set_Basic(this,100,1,-1);

	mov	eax, DWORD PTR [esi+4]

; 3555 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$9372[esp+212], 100	; 00000064H
	mov	DWORD PTR _params$9372[esp+216], eax
	mov	DWORD PTR _params$9372[esp+380], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$9372[esp+284]

; 3556 : 			Commands->Action_Attack(obj,params);

	mov	edx, DWORD PTR _obj$[esp+204]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _params$9372[esp+208]
	push	ecx
	push	edx
	mov	DWORD PTR _params$9372[esp+304], edi
	mov	DWORD PTR _params$9372[esp+296], 0
	mov	BYTE PTR _params$9372[esp+308], bl
	mov	BYTE PTR _params$9372[esp+324], 0
	call	DWORD PTR [eax+20]
	add	esp, 8
$L15260:
	pop	ebx
$L9371:
	pop	edi
	pop	esi

; 3557 : 		}
; 3558 : 	}
; 3559 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_No_VTOL_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 3563 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 3564 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_No_VTOL_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 3568 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L9384
	push	edi

; 3569 : 	{
; 3570 : 		popup = false;
; 3571 : 		attack = false;
; 3572 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 3573 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3578 : 	}
; 3579 : }

	ret	8
$L9384:

; 3574 : 	}
; 3575 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L9385

; 3576 : 	{
; 3577 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L9385:
	pop	esi

; 3578 : 	}
; 3579 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXXZ ; JFW_Base_Defence_Animated_No_VTOL_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 3582 : {

	push	esi
	mov	esi, ecx

; 3583 : 	Auto_Save_Variable(1,1,&popup);

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

; 3584 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3585 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 3586 : }

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

; 3589 : {

	push	esi

; 3590 : 	popup = false;

	xor	eax, eax
	push	edi

; 3591 : 	attack = false;
; 3592 : 	primary = true;
; 3593 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 3594 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3595 : }

	ret	4
?Created@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
_params$9404 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 3598 : {

	sub	esp, 196				; 000000c4H
	push	esi
	push	edi

; 3599 : 	GameObject *o = Get_Vehicle(seen);

	mov	edi, DWORD PTR _seen$[esp+200]
	push	edi
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 3600 : 	if (o)

	test	eax, eax
	je	SHORT $L9399

; 3601 : 	{
; 3602 : 		seen = o;

	mov	edi, eax
$L9399:

; 3603 : 	}
; 3604 : 	if (Get_Vehicle_Mode(seen) == FLYING)

	push	edi
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	jne	$L9403

; 3605 : 	{
; 3606 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L9401

; 3607 : 		{
; 3608 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 3609 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+208]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 3610 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 3611 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 28					; 0000001cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	ebx
	pop	edi
	pop	esi

; 3619 : 		}
; 3620 : 	}
; 3621 : }

	add	esp, 196				; 000000c4H
	ret	8
$L9401:

; 3612 : 		}
; 3613 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L15291

; 3614 : 		{
; 3615 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9404[esp+208]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3616 : 			params.Set_Basic(this,100,1,-1);

	mov	eax, DWORD PTR [esi+4]

; 3617 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$9404[esp+212], 100	; 00000064H
	mov	DWORD PTR _params$9404[esp+216], eax
	mov	DWORD PTR _params$9404[esp+380], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$9404[esp+284]

; 3618 : 			Commands->Action_Attack(obj,params);

	mov	edx, DWORD PTR _obj$[esp+204]
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _params$9404[esp+208]
	push	ecx
	push	edx
	mov	DWORD PTR _params$9404[esp+304], edi
	mov	DWORD PTR _params$9404[esp+296], 0
	mov	BYTE PTR _params$9404[esp+308], bl
	mov	BYTE PTR _params$9404[esp+324], 0
	call	DWORD PTR [eax+20]
	add	esp, 8
$L15291:
	pop	ebx
$L9403:
	pop	edi
	pop	esi

; 3619 : 		}
; 3620 : 	}
; 3621 : }

	add	esp, 196				; 000000c4H
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 3625 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 3626 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 3630 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L9416
	push	edi

; 3631 : 	{
; 3632 : 		popup = false;
; 3633 : 		attack = false;
; 3634 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 3635 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3640 : 	}
; 3641 : }

	ret	8
$L9416:

; 3636 : 	}
; 3637 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L9417

; 3638 : 	{
; 3639 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L9417:
	pop	esi

; 3640 : 	}
; 3641 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXXZ ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 3644 : {

	push	esi
	mov	esi, ecx

; 3645 : 	Auto_Save_Variable(1,1,&popup);

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

; 3646 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3647 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 3648 : }

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

; 3651 : {

	push	esi

; 3652 : 	popup = false;

	xor	eax, eax
	push	edi

; 3653 : 	attack = false;
; 3654 : 	primary = true;
; 3655 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 3656 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3657 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
$T15307 = -220						; size = 12
$T15308 = -208						; size = 12
_params$9436 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 3660 : {

	sub	esp, 220				; 000000dcH
	push	ebx
	push	ebp

; 3661 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebp, DWORD PTR _seen$[esp+224]
	push	esi
	push	ebp
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 3662 : 	if (o)

	test	eax, eax
	je	SHORT $L9431

; 3663 : 	{
; 3664 : 		seen = o;

	mov	ebp, eax
$L9431:

; 3665 : 	}
; 3666 : 	if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	jne	$L9432
	push	edi

; 3667 : 	{
; 3668 : 		popup = true;

	mov	BYTE PTR [esi+28], 1

; 3669 : 		Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 3670 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 3671 : 		Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T15308[esp+264]
	push	ebp
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR $T15307[esp+272], edx
	mov	ecx, DWORD PTR [eax+4]
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T15307[esp+240], ecx
	mov	edx, DWORD PTR [eax+8]
	push	edi
	lea	eax, DWORD PTR $T15307[esp+240]
	push	eax
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T15307[esp+256], edx
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 3672 : 		Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi
	pop	ebp
	pop	ebx

; 3680 : 	}
; 3681 : }

	add	esp, 220				; 000000dcH
	ret	8
$L9432:

; 3673 : 	}
; 3674 : 	else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L9435

; 3675 : 	{
; 3676 : 		ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9436[esp+232]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3677 : 		params.Set_Basic(this,100,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 3678 : 		params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	mov	DWORD PTR _params$9436[esp+236], ecx
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$9436[esp+236], 100	; 00000064H
	mov	DWORD PTR _params$9436[esp+404], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$9436[esp+308]

; 3679 : 		Commands->Action_Attack(obj,params);

	mov	eax, DWORD PTR _obj$[esp+228]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _params$9436[esp+232]
	push	edx
	push	eax
	mov	DWORD PTR _params$9436[esp+328], ebp
	mov	DWORD PTR _params$9436[esp+320], 0
	mov	BYTE PTR _params$9436[esp+332], bl
	mov	BYTE PTR _params$9436[esp+348], 0
	call	DWORD PTR [ecx+20]
	add	esp, 8
$L9435:
	pop	esi
	pop	ebp
	pop	ebx

; 3680 : 	}
; 3681 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 3685 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 3686 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 3690 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L9448
	push	edi

; 3691 : 	{
; 3692 : 		popup = false;
; 3693 : 		attack = false;
; 3694 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 3695 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3700 : 	}
; 3701 : }

	ret	8
$L9448:

; 3696 : 	}
; 3697 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L9449

; 3698 : 	{
; 3699 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L9449:
	pop	esi

; 3700 : 	}
; 3701 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Swap@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 3704 : {

	push	esi
	mov	esi, ecx

; 3705 : 	Auto_Save_Variable(1,1,&popup);

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

; 3706 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3707 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 3708 : }

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

; 3711 : {

	push	esi

; 3712 : 	popup = false;

	xor	eax, eax
	push	edi

; 3713 : 	attack = false;
; 3714 : 	primary = true;
; 3715 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 3716 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3717 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
$T15339 = -220						; size = 12
$T15340 = -208						; size = 12
_params$9469 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 3720 : {

	sub	esp, 220				; 000000dcH
	push	ebp

; 3721 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebp, DWORD PTR _seen$[esp+220]
	push	esi
	push	ebp
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 3722 : 	if (o)

	test	eax, eax
	je	SHORT $L9463

; 3723 : 	{
; 3724 : 		seen = o;

	mov	ebp, eax
$L9463:

; 3725 : 	}
; 3726 : 	if ((stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) && (stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebp
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9468
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9468
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9468
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebp
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9468
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9468
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9468
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebp
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9468
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9468

; 3727 : 	{
; 3728 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L9465
	push	edi

; 3729 : 		{
; 3730 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 3731 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 3732 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 3733 : 			Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR $T15340[esp+264]
	push	ebp
	push	edx
	call	DWORD PTR [eax+64]
	mov	ecx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T15339[esp+236], ecx
	mov	edx, DWORD PTR [eax+4]
	push	edi
	lea	ecx, DWORD PTR $T15339[esp+240]
	push	ecx
	mov	DWORD PTR $T15339[esp+248], edx
	mov	eax, DWORD PTR [eax+8]
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T15339[esp+256], eax
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 3734 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	ebx
	pop	esi
	pop	ebp

; 3742 : 		}
; 3743 : 	}
; 3744 : }

	add	esp, 220				; 000000dcH
	ret	8
$L9465:

; 3735 : 		}
; 3736 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L15356

; 3737 : 		{
; 3738 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9469[esp+232]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3739 : 			params.Set_Basic(this,100,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 3740 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$9469[esp+236], 100	; 00000064H
	mov	DWORD PTR _params$9469[esp+240], edx
	mov	DWORD PTR _params$9469[esp+404], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$9469[esp+308]

; 3741 : 			Commands->Action_Attack(obj,params);

	mov	ecx, DWORD PTR _obj$[esp+228]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR _params$9469[esp+232]
	push	eax
	push	ecx
	mov	DWORD PTR _params$9469[esp+328], ebp
	mov	DWORD PTR _params$9469[esp+320], 0
	mov	BYTE PTR _params$9469[esp+332], bl
	mov	BYTE PTR _params$9469[esp+348], 0
	call	DWORD PTR [edx+20]
	add	esp, 8
$L15356:
	pop	ebx
$L9468:
	pop	esi
	pop	ebp

; 3742 : 		}
; 3743 : 	}
; 3744 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 3748 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 3749 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 3753 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L9481
	push	edi

; 3754 : 	{
; 3755 : 		popup = false;
; 3756 : 		attack = false;
; 3757 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 3758 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3763 : 	}
; 3764 : }

	ret	8
$L9481:

; 3759 : 	}
; 3760 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L9482

; 3761 : 	{
; 3762 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L9482:
	pop	esi

; 3763 : 	}
; 3764 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 3767 : {

	push	esi
	mov	esi, ecx

; 3768 : 	Auto_Save_Variable(1,1,&popup);

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

; 3769 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3770 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 3771 : }

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

; 3774 : {

	push	esi

; 3775 : 	popup = false;

	xor	eax, eax
	push	edi

; 3776 : 	attack = false;
; 3777 : 	primary = true;
; 3778 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 3779 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3780 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
$T15372 = -220						; size = 12
$T15373 = -208						; size = 12
_params$9503 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 3783 : {

	sub	esp, 220				; 000000dcH
	push	ebp

; 3784 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebp, DWORD PTR _seen$[esp+220]
	push	esi
	push	ebp
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 3785 : 	if (o)

	test	eax, eax
	je	SHORT $L9496

; 3786 : 	{
; 3787 : 		seen = o;

	mov	ebp, eax
$L9496:

; 3788 : 	}
; 3789 : 	if ((!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset1"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset2"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset3"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset4"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset5"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset6"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset7"))) || (!stricmp(Commands->Get_Preset_Name(seen),Get_Parameter("Preset8"))))

	push	OFFSET FLAT:??_C@_07MLBKNGKL@Preset1?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebp
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9498
	push	OFFSET FLAT:??_C@_07OADHIFGI@Preset2?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9498
	push	OFFSET FLAT:??_C@_07PJCMLECJ@Preset3?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9498
	push	OFFSET FLAT:??_C@_07LGGNCCOO@Preset4?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebp
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	$L9498
	push	OFFSET FLAT:??_C@_07KPHGBDKP@Preset5?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L9498
	push	OFFSET FLAT:??_C@_07IEFLEAGM@Preset6?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [edx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L9498
	push	OFFSET FLAT:??_C@_07JNEAHBCN@Preset7?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	ebp
	call	DWORD PTR [eax+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $L9498
	push	OFFSET FLAT:??_C@_07BKNIGNOC@Preset8?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	ebp
	call	DWORD PTR [ecx+116]
	add	esp, 4
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	jne	$L9502
$L9498:

; 3790 : 	{
; 3791 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L9499
	push	edi

; 3792 : 		{
; 3793 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 3794 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 3795 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 3796 : 			Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR $T15373[esp+264]
	push	ebp
	push	edx
	call	DWORD PTR [eax+64]
	mov	ecx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T15372[esp+236], ecx
	mov	edx, DWORD PTR [eax+4]
	push	edi
	lea	ecx, DWORD PTR $T15372[esp+240]
	push	ecx
	mov	DWORD PTR $T15372[esp+248], edx
	mov	eax, DWORD PTR [eax+8]
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T15372[esp+256], eax
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 3797 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	ebx
	pop	esi
	pop	ebp

; 3805 : 		}
; 3806 : 	}
; 3807 : }

	add	esp, 220				; 000000dcH
	ret	8
$L9499:

; 3798 : 		}
; 3799 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L15389

; 3800 : 		{
; 3801 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9503[esp+232]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3802 : 			params.Set_Basic(this,100,1,-1);

	mov	edx, DWORD PTR [esi+4]

; 3803 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$9503[esp+236], 100	; 00000064H
	mov	DWORD PTR _params$9503[esp+240], edx
	mov	DWORD PTR _params$9503[esp+404], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$9503[esp+308]

; 3804 : 			Commands->Action_Attack(obj,params);

	mov	ecx, DWORD PTR _obj$[esp+228]
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR _params$9503[esp+232]
	push	eax
	push	ecx
	mov	DWORD PTR _params$9503[esp+328], ebp
	mov	DWORD PTR _params$9503[esp+320], 0
	mov	BYTE PTR _params$9503[esp+332], bl
	mov	BYTE PTR _params$9503[esp+348], 0
	call	DWORD PTR [edx+20]
	add	esp, 8
$L15389:
	pop	ebx
$L9502:
	pop	esi
	pop	ebp

; 3805 : 		}
; 3806 : 	}
; 3807 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 3811 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 3812 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 3816 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L9515
	push	edi

; 3817 : 	{
; 3818 : 		popup = false;
; 3819 : 		attack = false;
; 3820 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 3821 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3826 : 	}
; 3827 : }

	ret	8
$L9515:

; 3822 : 	}
; 3823 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L9516

; 3824 : 	{
; 3825 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L9516:
	pop	esi

; 3826 : 	}
; 3827 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 3830 : {

	push	esi
	mov	esi, ecx

; 3831 : 	Auto_Save_Variable(1,1,&popup);

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

; 3832 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3833 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 3834 : }

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

; 3837 : {

	push	esi

; 3838 : 	popup = false;

	xor	eax, eax
	push	edi

; 3839 : 	attack = false;
; 3840 : 	primary = true;
; 3841 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 3842 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3843 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
$T15405 = -220						; size = 12
$T15406 = -208						; size = 12
_params$9536 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 3846 : {

	sub	esp, 220				; 000000dcH
	push	ebp

; 3847 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebp, DWORD PTR _seen$[esp+220]
	push	esi
	push	ebp
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 3848 : 	if (o)

	test	eax, eax
	je	SHORT $L9530

; 3849 : 	{
; 3850 : 		seen = o;

	mov	ebp, eax
$L9530:

; 3851 : 	}
; 3852 : 	if (Get_Vehicle_Mode(seen) != FLYING)

	push	ebp
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	je	$L9535

; 3853 : 	{
; 3854 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L9532
	push	edi

; 3855 : 		{
; 3856 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 3857 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 3858 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 3859 : 			Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T15406[esp+264]
	push	ebp
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR $T15405[esp+272], edx
	mov	ecx, DWORD PTR [eax+4]
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T15405[esp+240], ecx
	mov	edx, DWORD PTR [eax+8]
	push	edi
	lea	eax, DWORD PTR $T15405[esp+240]
	push	eax
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T15405[esp+256], edx
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 3860 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	ebx
	pop	esi
	pop	ebp

; 3868 : 		}
; 3869 : 	}
; 3870 : }

	add	esp, 220				; 000000dcH
	ret	8
$L9532:

; 3861 : 		}
; 3862 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L15422

; 3863 : 		{
; 3864 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9536[esp+232]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3865 : 			params.Set_Basic(this,100,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 3866 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	mov	DWORD PTR _params$9536[esp+236], ecx
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$9536[esp+236], 100	; 00000064H
	mov	DWORD PTR _params$9536[esp+404], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$9536[esp+308]

; 3867 : 			Commands->Action_Attack(obj,params);

	mov	eax, DWORD PTR _obj$[esp+228]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _params$9536[esp+232]
	push	edx
	push	eax
	mov	DWORD PTR _params$9536[esp+328], ebp
	mov	DWORD PTR _params$9536[esp+320], 0
	mov	BYTE PTR _params$9536[esp+332], bl
	mov	BYTE PTR _params$9536[esp+348], 0
	call	DWORD PTR [ecx+20]
	add	esp, 8
$L15422:
	pop	ebx
$L9535:
	pop	esi
	pop	ebp

; 3868 : 		}
; 3869 : 	}
; 3870 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 3874 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 3875 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 3879 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L9548
	push	edi

; 3880 : 	{
; 3881 : 		popup = false;
; 3882 : 		attack = false;
; 3883 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 3884 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3889 : 	}
; 3890 : }

	ret	8
$L9548:

; 3885 : 	}
; 3886 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L9549

; 3887 : 	{
; 3888 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L9549:
	pop	esi

; 3889 : 	}
; 3890 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 3893 : {

	push	esi
	mov	esi, ecx

; 3894 : 	Auto_Save_Variable(1,1,&popup);

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

; 3895 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3896 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 3897 : }

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

; 3900 : {

	push	esi

; 3901 : 	popup = false;

	xor	eax, eax
	push	edi

; 3902 : 	attack = false;
; 3903 : 	primary = true;
; 3904 : 	Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,0,false);

	push	eax
	push	eax
	push	eax
	push	eax
	mov	BYTE PTR [ecx+28], al
	mov	BYTE PTR [ecx+29], al
	mov	BYTE PTR [ecx+30], 1
	mov	esi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	eax
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	add	esi, 164				; 000000a4H
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	edi, DWORD PTR _obj$[esp+24]
	push	eax
	push	edi
	call	DWORD PTR [esi]

; 3905 : 	Commands->Enable_Enemy_Seen(obj,true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1
	push	edi
	call	DWORD PTR [eax+300]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3906 : }

	ret	4
?Created@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAE@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Created
_TEXT	ENDS
PUBLIC	?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAE0@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Enemy_Seen
; Function compile flags: /Ogty
;	COMDAT ?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAE0@Z
_TEXT	SEGMENT
$T15438 = -220						; size = 12
$T15439 = -208						; size = 12
_params$9569 = -196					; size = 196
_obj$ = 8						; size = 4
_seen$ = 12						; size = 4
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAE0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Enemy_Seen, COMDAT
; _this$ = ecx

; 3909 : {

	sub	esp, 220				; 000000dcH
	push	ebp

; 3910 : 	GameObject *o = Get_Vehicle(seen);

	mov	ebp, DWORD PTR _seen$[esp+220]
	push	esi
	push	ebp
	mov	esi, ecx
	call	?Get_Vehicle@@YAPAEPAE@Z		; Get_Vehicle
	add	esp, 4

; 3911 : 	if (o)

	test	eax, eax
	je	SHORT $L9563

; 3912 : 	{
; 3913 : 		seen = o;

	mov	ebp, eax
$L9563:

; 3914 : 	}
; 3915 : 	if (Get_Vehicle_Mode(seen) == FLYING)

	push	ebp
	call	?Get_Vehicle_Mode@@YAIPAE@Z		; Get_Vehicle_Mode
	add	esp, 4
	cmp	eax, 3
	jne	$L9568

; 3916 : 	{
; 3917 : 		if (!popup)

	mov	al, BYTE PTR [esi+28]
	test	al, al
	push	ebx
	jne	$L9565
	push	edi

; 3918 : 		{
; 3919 : 			popup = true;

	mov	BYTE PTR [esi+28], 1

; 3920 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("PopupTime"),2);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	2
	push	OFFSET FLAT:??_C@_09OMKBCKHK@PopupTime?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	mov	edi, DWORD PTR _obj$[esp+236]
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]

; 3921 : 			Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,0,Get_Float_Parameter("LastFrame"),false);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 16					; 00000010H
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	mov	ecx, esi
	add	ebx, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	push	edi
	call	DWORD PTR [ebx]

; 3922 : 			Commands->Create_Sound(Get_Parameter("Sound"),Commands->Get_Position(seen),obj);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T15439[esp+264]
	push	ebp
	push	eax
	call	DWORD PTR [ecx+64]
	mov	edx, DWORD PTR [eax]
	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	DWORD PTR $T15438[esp+272], edx
	mov	ecx, DWORD PTR [eax+4]
	add	esp, 36					; 00000024H
	mov	DWORD PTR $T15438[esp+240], ecx
	mov	edx, DWORD PTR [eax+8]
	push	edi
	lea	eax, DWORD PTR $T15438[esp+240]
	push	eax
	push	OFFSET FLAT:??_C@_05MAHMNMLO@Sound?$AA@
	mov	ecx, esi
	mov	DWORD PTR $T15438[esp+256], edx
	add	ebx, 172				; 000000acH
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	push	eax
	call	DWORD PTR [ebx]

; 3923 : 			Commands->Start_Timer(obj,this,Get_Float_Parameter("AttackTimer"),1);

	mov	ebx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	add	esp, 12					; 0000000cH
	push	1
	push	OFFSET FLAT:??_C@_0M@JLBMIOIA@AttackTimer?$AA@
	mov	ecx, esi
	add	ebx, 128				; 00000080H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	push	edi
	call	DWORD PTR [ebx]
	add	esp, 16					; 00000010H
	pop	edi
	pop	ebx
	pop	esi
	pop	ebp

; 3931 : 		}
; 3932 : 	}
; 3933 : }

	add	esp, 220				; 000000dcH
	ret	8
$L9565:

; 3924 : 		}
; 3925 : 		else if (attack)

	mov	al, BYTE PTR [esi+29]
	test	al, al
	je	SHORT $L15455

; 3926 : 		{
; 3927 : 			ActionParamsStruct params;

	lea	ecx, DWORD PTR _params$9569[esp+232]
	call	??0ActionParamsStruct@@QAE@XZ		; ActionParamsStruct::ActionParamsStruct

; 3928 : 			params.Set_Basic(this,100,1,-1);

	mov	ecx, DWORD PTR [esi+4]

; 3929 : 			params.Set_Attack_Hold(seen,Get_Float_Parameter("MaxAttackDistance"),0,primary,false);

	mov	bl, BYTE PTR [esi+30]
	mov	DWORD PTR _params$9569[esp+236], ecx
	push	OFFSET FLAT:??_C@_0BC@MOFMCIO@MaxAttackDistance?$AA@
	mov	ecx, esi
	mov	DWORD PTR _params$9569[esp+236], 100	; 00000064H
	mov	DWORD PTR _params$9569[esp+404], -1
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	fstp	DWORD PTR _params$9569[esp+308]

; 3930 : 			Commands->Action_Attack(obj,params);

	mov	eax, DWORD PTR _obj$[esp+228]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	edx, DWORD PTR _params$9569[esp+232]
	push	edx
	push	eax
	mov	DWORD PTR _params$9569[esp+328], ebp
	mov	DWORD PTR _params$9569[esp+320], 0
	mov	BYTE PTR _params$9569[esp+332], bl
	mov	BYTE PTR _params$9569[esp+348], 0
	call	DWORD PTR [ecx+20]
	add	esp, 8
$L15455:
	pop	ebx
$L9568:
	pop	esi
	pop	ebp

; 3931 : 		}
; 3932 : 	}
; 3933 : }

	add	esp, 220				; 000000dcH
	ret	8
?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAE0@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Enemy_Seen
_TEXT	ENDS
PUBLIC	?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Action_Complete
; Function compile flags: /Ogty
;	COMDAT ?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_action$ = 12						; size = 4
_reason$ = 16						; size = 4
?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Action_Complete, COMDAT
; _this$ = ecx

; 3937 : 	Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR _obj$[esp-4]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	eax
	call	DWORD PTR [ecx+12]
	add	esp, 8

; 3938 : }

	ret	12					; 0000000cH
?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Action_Complete
_TEXT	ENDS
PUBLIC	?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEH@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Timer_Expired
; Function compile flags: /Ogty
;	COMDAT ?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEH@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_number$ = 12						; size = 4
?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEH@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Timer_Expired, COMDAT
; _this$ = ecx

; 3942 : 	if (number == 1)

	mov	eax, DWORD PTR _number$[esp-4]
	cmp	eax, 1
	push	esi
	mov	esi, ecx
	jne	SHORT $L9581
	push	edi

; 3943 : 	{
; 3944 : 		popup = false;
; 3945 : 		attack = false;
; 3946 : 		Commands->Set_Animation(obj,Get_Parameter("Animation"),false,0,Get_Float_Parameter("LastFrame"),0,false);

	push	0
	mov	BYTE PTR [esi+28], 0
	mov	BYTE PTR [esi+29], 0
	mov	edi, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	0
	push	OFFSET FLAT:??_C@_09GIBPIKCC@LastFrame?$AA@
	add	edi, 164				; 000000a4H
	call	?Get_Float_Parameter@ScriptImpClass@@QAEMPBD@Z ; ScriptImpClass::Get_Float_Parameter
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	0
	push	OFFSET FLAT:??_C@_09ONEINPNJ@Animation?$AA@
	mov	ecx, esi
	call	?Get_Parameter@ScriptImpClass@@QAEPBDPBD@Z ; ScriptImpClass::Get_Parameter
	mov	esi, DWORD PTR _obj$[esp+24]
	push	eax
	push	esi
	call	DWORD PTR [edi]

; 3947 : 		Commands->Action_Reset(obj,100);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	push	1120403456				; 42c80000H
	push	esi
	call	DWORD PTR [eax+12]
	add	esp, 36					; 00000024H
	pop	edi
	pop	esi

; 3952 : 	}
; 3953 : }

	ret	8
$L9581:

; 3948 : 	}
; 3949 : 	if (number == 2)

	cmp	eax, 2
	jne	SHORT $L9582

; 3950 : 	{
; 3951 : 		attack = true;

	mov	BYTE PTR [esi+29], 1
$L9582:
	pop	esi

; 3952 : 	}
; 3953 : }

	ret	8
?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEH@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Timer_Expired
_TEXT	ENDS
PUBLIC	?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXXZ ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Register_Auto_Save_Variables
; Function compile flags: /Ogty
;	COMDAT ?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXXZ
_TEXT	SEGMENT
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXXZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Register_Auto_Save_Variables, COMDAT
; _this$ = ecx

; 3956 : {

	push	esi
	mov	esi, ecx

; 3957 : 	Auto_Save_Variable(1,1,&popup);

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

; 3958 : 	Auto_Save_Variable(2,1,&primary);

	lea	ecx, DWORD PTR [esi+30]
	push	ecx
	push	1
	push	2
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable

; 3959 : 	Auto_Save_Variable(3,1,&attack);

	lea	edx, DWORD PTR [esi+29]
	push	edx
	push	1
	push	3
	mov	ecx, esi
	call	?Auto_Save_Variable@ScriptImpClass@@QAEXHHPAX@Z ; ScriptImpClass::Auto_Save_Variable
	pop	esi

; 3960 : }

	ret	0
?Register_Auto_Save_Variables@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXXZ ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Register_Auto_Save_Variables
_TEXT	ENDS
PUBLIC	??_C@_0M@FIAKNJKI@SwapMessage?$AA@		; `string'
PUBLIC	?Custom@JFW_Base_Defence_Swap@@EAEXPAEHH0@Z	; JFW_Base_Defence_Swap::Custom
EXTRN	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z:NEAR ; ScriptImpClass::Get_Int_Parameter
;	COMDAT ??_C@_0M@FIAKNJKI@SwapMessage?$AA@
CONST	SEGMENT
??_C@_0M@FIAKNJKI@SwapMessage?$AA@ DB 'SwapMessage', 00H ; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Custom@JFW_Base_Defence_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_Swap@@EAEXPAEHH0@Z PROC NEAR	; JFW_Base_Defence_Swap::Custom, COMDAT
; _this$ = ecx

; 3963 : {

	push	esi

; 3964 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9595

; 3965 : 	{
; 3966 : 		if (primary)

	mov	al, BYTE PTR [esi+44]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+44], al
$L9595:
	pop	esi

; 3967 : 		{
; 3968 : 			primary = false;
; 3969 : 		}
; 3970 : 		else
; 3971 : 		{
; 3972 : 			primary = true;
; 3973 : 		}
; 3974 : 	}
; 3975 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_Swap@@EAEXPAEHH0@Z ENDP	; JFW_Base_Defence_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_No_Aircraft_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft_Swap::Custom, COMDAT
; _this$ = ecx

; 3978 : {

	push	esi

; 3979 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9605

; 3980 : 	{
; 3981 : 		if (primary)

	mov	al, BYTE PTR [esi+44]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+44], al
$L9605:
	pop	esi

; 3982 : 		{
; 3983 : 			primary = false;
; 3984 : 		}
; 3985 : 		else
; 3986 : 		{
; 3987 : 			primary = true;
; 3988 : 		}
; 3989 : 	}
; 3990 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_No_Aircraft_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_Aircraft_Only_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Swap::Custom, COMDAT
; _this$ = ecx

; 3993 : {

	push	esi

; 3994 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9615

; 3995 : 	{
; 3996 : 		if (primary)

	mov	al, BYTE PTR [esi+44]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+44], al
$L9615:
	pop	esi

; 3997 : 		{
; 3998 : 			primary = false;
; 3999 : 		}
; 4000 : 		else
; 4001 : 		{
; 4002 : 			primary = true;
; 4003 : 		}
; 4004 : 	}
; 4005 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_Aircraft_Only_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_Animated_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_Animated_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_Animated_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_Animated_Swap::Custom, COMDAT
; _this$ = ecx

; 4008 : {

	push	esi

; 4009 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9625

; 4010 : 	{
; 4011 : 		if (primary)

	mov	al, BYTE PTR [esi+30]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L9625:
	pop	esi

; 4012 : 		{
; 4013 : 			primary = false;
; 4014 : 		}
; 4015 : 		else
; 4016 : 		{
; 4017 : 			primary = true;
; 4018 : 		}
; 4019 : 	}
; 4020 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_Animated_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_Animated_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Custom, COMDAT
; _this$ = ecx

; 4023 : {

	push	esi

; 4024 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9635

; 4025 : 	{
; 4026 : 		if (primary)

	mov	al, BYTE PTR [esi+30]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L9635:
	pop	esi

; 4027 : 		{
; 4028 : 			primary = false;
; 4029 : 		}
; 4030 : 		else
; 4031 : 		{
; 4032 : 			primary = true;
; 4033 : 		}
; 4034 : 	}
; 4035 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Custom, COMDAT
; _this$ = ecx

; 4038 : {

	push	esi

; 4039 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9645

; 4040 : 	{
; 4041 : 		if (primary)

	mov	al, BYTE PTR [esi+30]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L9645:
	pop	esi

; 4042 : 		{
; 4043 : 			primary = false;
; 4044 : 		}
; 4045 : 		else
; 4046 : 		{
; 4047 : 			primary = true;
; 4048 : 		}
; 4049 : 	}
; 4050 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_No_VTOL_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_No_VTOL_Swap::Custom, COMDAT
; _this$ = ecx

; 4053 : {

	push	esi

; 4054 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9655

; 4055 : 	{
; 4056 : 		if (primary)

	mov	al, BYTE PTR [esi+44]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+44], al
$L9655:
	pop	esi

; 4057 : 		{
; 4058 : 			primary = false;
; 4059 : 		}
; 4060 : 		else
; 4061 : 		{
; 4062 : 			primary = true;
; 4063 : 		}
; 4064 : 	}
; 4065 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_No_VTOL_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_VTOL_Only_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only_Swap::Custom, COMDAT
; _this$ = ecx

; 4068 : {

	push	esi

; 4069 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9665

; 4070 : 	{
; 4071 : 		if (primary)

	mov	al, BYTE PTR [esi+44]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+44], al
$L9665:
	pop	esi

; 4072 : 		{
; 4073 : 			primary = false;
; 4074 : 		}
; 4075 : 		else
; 4076 : 		{
; 4077 : 			primary = true;
; 4078 : 		}
; 4079 : 	}
; 4080 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_VTOL_Only_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_Animated_No_VTOL_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL_Swap::Custom, COMDAT
; _this$ = ecx

; 4083 : {

	push	esi

; 4084 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9675

; 4085 : 	{
; 4086 : 		if (primary)

	mov	al, BYTE PTR [esi+30]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L9675:
	pop	esi

; 4087 : 		{
; 4088 : 			primary = false;
; 4089 : 		}
; 4090 : 		else
; 4091 : 		{
; 4092 : 			primary = true;
; 4093 : 		}
; 4094 : 	}
; 4095 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Custom, COMDAT
; _this$ = ecx

; 4098 : {

	push	esi

; 4099 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9685

; 4100 : 	{
; 4101 : 		if (primary)

	mov	al, BYTE PTR [esi+30]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L9685:
	pop	esi

; 4102 : 		{
; 4103 : 			primary = false;
; 4104 : 		}
; 4105 : 		else
; 4106 : 		{
; 4107 : 			primary = true;
; 4108 : 		}
; 4109 : 	}
; 4110 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_Animated_Sound_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Swap::Custom, COMDAT
; _this$ = ecx

; 4113 : {

	push	esi

; 4114 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9695

; 4115 : 	{
; 4116 : 		if (primary)

	mov	al, BYTE PTR [esi+30]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L9695:
	pop	esi

; 4117 : 		{
; 4118 : 			primary = false;
; 4119 : 		}
; 4120 : 		else
; 4121 : 		{
; 4122 : 			primary = true;
; 4123 : 		}
; 4124 : 	}
; 4125 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_Animated_Sound_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Custom, COMDAT
; _this$ = ecx

; 4128 : {

	push	esi

; 4129 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9705

; 4130 : 	{
; 4131 : 		if (primary)

	mov	al, BYTE PTR [esi+30]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L9705:
	pop	esi

; 4132 : 		{
; 4133 : 			primary = false;
; 4134 : 		}
; 4135 : 		else
; 4136 : 		{
; 4137 : 			primary = true;
; 4138 : 		}
; 4139 : 	}
; 4140 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Custom, COMDAT
; _this$ = ecx

; 4143 : {

	push	esi

; 4144 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9715

; 4145 : 	{
; 4146 : 		if (primary)

	mov	al, BYTE PTR [esi+30]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L9715:
	pop	esi

; 4147 : 		{
; 4148 : 			primary = false;
; 4149 : 		}
; 4150 : 		else
; 4151 : 		{
; 4152 : 			primary = true;
; 4153 : 		}
; 4154 : 	}
; 4155 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Custom, COMDAT
; _this$ = ecx

; 4158 : {

	push	esi

; 4159 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9725

; 4160 : 	{
; 4161 : 		if (primary)

	mov	al, BYTE PTR [esi+30]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L9725:
	pop	esi

; 4162 : 		{
; 4163 : 			primary = false;
; 4164 : 		}
; 4165 : 		else
; 4166 : 		{
; 4167 : 			primary = true;
; 4168 : 		}
; 4169 : 	}
; 4170 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::Custom
_TEXT	ENDS
PUBLIC	?Custom@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEHH0@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Custom
; Function compile flags: /Ogty
;	COMDAT ?Custom@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEHH0@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
_message$ = 12						; size = 4
_param$ = 16						; size = 4
_sender$ = 20						; size = 4
?Custom@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEHH0@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Custom, COMDAT
; _this$ = ecx

; 4173 : {

	push	esi

; 4174 : 	if (message == Get_Int_Parameter("SwapMessage"))

	push	OFFSET FLAT:??_C@_0M@FIAKNJKI@SwapMessage?$AA@
	mov	esi, ecx
	call	?Get_Int_Parameter@ScriptImpClass@@QAEHPBD@Z ; ScriptImpClass::Get_Int_Parameter
	cmp	DWORD PTR _message$[esp], eax
	jne	SHORT $L9735

; 4175 : 	{
; 4176 : 		if (primary)

	mov	al, BYTE PTR [esi+30]
	test	al, al
	sete	al
	mov	BYTE PTR [esi+30], al
$L9735:
	pop	esi

; 4177 : 		{
; 4178 : 			primary = false;
; 4179 : 		}
; 4180 : 		else
; 4181 : 		{
; 4182 : 			primary = true;
; 4183 : 		}
; 4184 : 	}
; 4185 : }

	ret	16					; 00000010H
?Custom@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEHH0@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::Custom
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAE@XZ ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::~ScriptRegistrant<JFW_User_Controllable_Base_Defence>
EXTRN	??1ScriptFactory@@UAE@XZ:NEAR			; ScriptFactory::~ScriptFactory
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::~ScriptRegistrant<JFW_User_Controllable_Base_Defence>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::~ScriptRegistrant<JFW_User_Controllable_Base_Defence>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence>::~ScriptRegistrant<JFW_Base_Defence>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence>::~ScriptRegistrant<JFW_Base_Defence>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence@@@@UAE@XZ ENDP	; ScriptRegistrant<JFW_Base_Defence>::~ScriptRegistrant<JFW_Base_Defence>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::~ScriptRegistrant<JFW_Base_Defence_No_Aircraft>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::~ScriptRegistrant<JFW_Base_Defence_No_Aircraft>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::~ScriptRegistrant<JFW_Base_Defence_No_Aircraft>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::~ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::~ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::~ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::~ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::~ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::~ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated>::~ScriptRegistrant<JFW_Base_Defence_Animated>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated>::~ScriptRegistrant<JFW_Base_Defence_Animated>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated>::~ScriptRegistrant<JFW_Base_Defence_Animated>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::~ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::~ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::~ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::~ScriptRegistrant<JFW_Base_Defence_No_VTOL>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::~ScriptRegistrant<JFW_Base_Defence_No_VTOL>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::~ScriptRegistrant<JFW_Base_Defence_No_VTOL>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::~ScriptRegistrant<JFW_Base_Defence_VTOL_Only>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::~ScriptRegistrant<JFW_Base_Defence_VTOL_Only>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::~ScriptRegistrant<JFW_Base_Defence_VTOL_Only>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::~ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::~ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::~ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::~ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::~ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::~ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Swap>::~ScriptRegistrant<JFW_Base_Defence_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Swap>::~ScriptRegistrant<JFW_Base_Defence_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Swap>::~ScriptRegistrant<JFW_Base_Defence_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::~ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::~ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::~ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::~ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::~ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::~ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>
_TEXT	ENDS
PUBLIC	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAE@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>
; Function compile flags: /Ogty
;	COMDAT ??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAE@XZ
_TEXT	SEGMENT
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAE@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>, COMDAT
; _this$ = ecx
	jmp	??1ScriptFactory@@UAE@XZ		; ScriptFactory::~ScriptFactory
??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAE@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::~ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::ScriptRegistrant<JFW_User_Controllable_Base_Defence>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@6B@ ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::`scalar deleting destructor'
EXTRN	??0ScriptFactory@@QAE@PAD0@Z:NEAR		; ScriptFactory::ScriptFactory
EXTRN	??_E?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@6B@
; File c:\documents and settings\owner\desktop\ssctf 1.3\scripts.h
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::ScriptRegistrant<JFW_User_Controllable_Base_Defence>, 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@VJFW_User_Controllable_Base_Defence@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::ScriptRegistrant<JFW_User_Controllable_Base_Defence>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence>::ScriptRegistrant<JFW_Base_Defence>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence@@@@6B@	; ScriptRegistrant<JFW_Base_Defence>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence>::ScriptRegistrant<JFW_Base_Defence>, 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@VJFW_Base_Defence@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence>::ScriptRegistrant<JFW_Base_Defence>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::ScriptRegistrant<JFW_Base_Defence_No_Aircraft>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::ScriptRegistrant<JFW_Base_Defence_No_Aircraft>, 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@VJFW_Base_Defence_No_Aircraft@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::ScriptRegistrant<JFW_Base_Defence_No_Aircraft>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>, 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@VJFW_Base_Defence_Aircraft_Only@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Secondary>::ScriptRegistrant<JFW_Base_Defence_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Secondary>::ScriptRegistrant<JFW_Base_Defence_Secondary>, 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@VJFW_Base_Defence_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Secondary>::ScriptRegistrant<JFW_Base_Defence_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>, 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@VJFW_Base_Defence_No_Aircraft_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>, 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@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated>::ScriptRegistrant<JFW_Base_Defence_Animated>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated>::ScriptRegistrant<JFW_Base_Defence_Animated>, 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@VJFW_Base_Defence_Animated@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated>::ScriptRegistrant<JFW_Base_Defence_Animated>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>, 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@VJFW_Base_Defence_Animated_No_Aircraft@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>, 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@VJFW_Base_Defence_Animated_Aircraft_Only@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>, 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@VJFW_Base_Defence_Animated_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>, 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@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>, 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@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::ScriptRegistrant<JFW_Base_Defence_No_VTOL>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::ScriptRegistrant<JFW_Base_Defence_No_VTOL>, 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@VJFW_Base_Defence_No_VTOL@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::ScriptRegistrant<JFW_Base_Defence_No_VTOL>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::ScriptRegistrant<JFW_Base_Defence_VTOL_Only>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::ScriptRegistrant<JFW_Base_Defence_VTOL_Only>, 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@VJFW_Base_Defence_VTOL_Only@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::ScriptRegistrant<JFW_Base_Defence_VTOL_Only>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>, 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@VJFW_Base_Defence_No_VTOL_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>, 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@VJFW_Base_Defence_VTOL_Only_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>, 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@VJFW_Base_Defence_Animated_No_VTOL@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>, 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@VJFW_Base_Defence_Animated_VTOL_Only@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>, 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@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>, 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@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound>, 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@VJFW_Base_Defence_Animated_Sound@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>, 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@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>, 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@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>, 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@VJFW_Base_Defence_Animated_Sound_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>, 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@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>, 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@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>, 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@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>, 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@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>, 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@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>, 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@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Swap>::ScriptRegistrant<JFW_Base_Defence_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Swap>::ScriptRegistrant<JFW_Base_Defence_Swap>, 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@VJFW_Base_Defence_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Swap>::ScriptRegistrant<JFW_Base_Defence_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>, 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@VJFW_Base_Defence_No_Aircraft_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>, 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@VJFW_Base_Defence_Aircraft_Only_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Swap>, 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@VJFW_Base_Defence_Animated_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>, 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@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>, 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@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>, 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@VJFW_Base_Defence_No_VTOL_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>, 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@VJFW_Base_Defence_VTOL_Only_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>, 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@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>, 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@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>, 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@VJFW_Base_Defence_Animated_Sound_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>, 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@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>, 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@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>, 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@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>
_TEXT	ENDS
PUBLIC	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>
PUBLIC	?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::Create
PUBLIC	??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@6B@ ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::`vftable'
PUBLIC	??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::`scalar deleting destructor'
EXTRN	??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAXI@Z:NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::`vector deleting destructor'
;	COMDAT ??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@6B@
CONST	SEGMENT
??_7?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@6B@ DD FLAT:??_E?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAXI@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::`vftable'
	DD	FLAT:?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@QAE@PAD0@Z
_TEXT	SEGMENT
_n$ = 8							; size = 4
_p$ = 12						; size = 4
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@QAE@PAD0@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>, 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@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@6B@

; 475  : 	}

	mov	eax, esi
	pop	esi
	ret	8
??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@QAE@PAD0@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>
_TEXT	ENDS
EXTRN	??3@YAXPAX@Z:NEAR				; operator delete
; Function compile flags: /Ogty
;	COMDAT ??_G?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15881
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15881:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15885
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15885:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15889
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15889:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15893
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15893:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15897
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15897:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15901
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15901:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15905
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15905:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15909
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15909:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15913
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15913:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15917
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15917:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15921
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15921:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15925
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15925:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15929
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15929:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15933
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15933:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15937
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15937:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15941
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15941:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15945
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15945:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15949
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15949:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15953
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15953:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15957
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15957:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15961
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15961:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15965
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15965:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15969
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15969:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15973
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15973:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15977
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15977:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15981
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15981:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15985
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15985:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15989
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15989:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15993
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15993:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L15997
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L15997:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16001
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16001:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16005
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16005:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16009
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16009:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16013
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16013:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16017
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16017:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16021
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16021:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16025
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16025:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16029
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16029:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16033
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16033:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16037
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16037:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16041
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16041:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16045
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16045:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16049
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16049:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16053
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16053:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16057
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16057:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAXI@Z PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L16061
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L16061:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAXI@Z ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??_7JFW_User_Controllable_Base_Defence@@6B@	; JFW_User_Controllable_Base_Defence::`vftable'
PUBLIC	??_GJFW_User_Controllable_Base_Defence@@UAEPAXI@Z ; JFW_User_Controllable_Base_Defence::`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	?Detach@ScriptImpClass@@UAEXPAE@Z:NEAR		; ScriptImpClass::Detach
EXTRN	?Destroyed@ScriptImpClass@@UAEXPAE@Z:NEAR	; ScriptImpClass::Destroyed
EXTRN	?Killed@ScriptImpClass@@UAEXPAE0@Z:NEAR		; ScriptImpClass::Killed
EXTRN	?Damaged@ScriptImpClass@@UAEXPAE0M@Z:NEAR	; ScriptImpClass::Damaged
EXTRN	?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z:NEAR ; ScriptImpClass::Sound_Heard
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	??2@YAPAXI@Z:NEAR				; operator new
EXTRN	__except_list:DWORD
EXTRN	___CxxFrameHandler:NEAR
EXTRN	??_EJFW_User_Controllable_Base_Defence@@UAEPAXI@Z:NEAR ; JFW_User_Controllable_Base_Defence::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16083	DD	0ffffffffH
	DD	FLAT:$L16069
$T16080	DD	019930520H
	DD	01H
	DD	FLAT:$T16083
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_User_Controllable_Base_Defence@@6B@
CONST	SEGMENT
??_7JFW_User_Controllable_Base_Defence@@6B@ DD FLAT:??_EJFW_User_Controllable_Base_Defence@@UAEPAXI@Z ; JFW_User_Controllable_Base_Defence::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_User_Controllable_Base_Defence@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_User_Controllable_Base_Defence@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_User_Controllable_Base_Defence@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_User_Controllable_Base_Defence@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_User_Controllable_Base_Defence@@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@JFW_User_Controllable_Base_Defence@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16066 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@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	48					; 00000030H
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16066[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16067
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_User_Controllable_Base_Defence@@6B@
	jmp	SHORT $L16068
$L16067:
	xor	esi, esi
$L16068:

; 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
$L16069:
	mov	eax, DWORD PTR $T16066[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16080
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::Create
PUBLIC	??_7JFW_Base_Defence@@6B@			; JFW_Base_Defence::`vftable'
PUBLIC	??_GJFW_Base_Defence@@UAEPAXI@Z			; JFW_Base_Defence::`scalar deleting destructor'
EXTRN	?Custom@ScriptImpClass@@UAEXPAEHH0@Z:NEAR	; ScriptImpClass::Custom
EXTRN	??_EJFW_Base_Defence@@UAEPAXI@Z:NEAR		; JFW_Base_Defence::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16105	DD	0ffffffffH
	DD	FLAT:$L16094
$T16103	DD	019930520H
	DD	01H
	DD	FLAT:$T16105
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence@@6B@ DD FLAT:??_EJFW_Base_Defence@@UAEPAXI@Z ; JFW_Base_Defence::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence@@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@JFW_Base_Defence@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16091 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence@@@@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	44					; 0000002cH
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16091[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16092
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence@@6B@
	jmp	SHORT $L16093
$L16092:
	xor	esi, esi
$L16093:

; 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
$L16094:
	mov	eax, DWORD PTR $T16091[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16103
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence>::Create
PUBLIC	??_7JFW_Base_Defence_No_Aircraft@@6B@		; JFW_Base_Defence_No_Aircraft::`vftable'
PUBLIC	??_GJFW_Base_Defence_No_Aircraft@@UAEPAXI@Z	; JFW_Base_Defence_No_Aircraft::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_No_Aircraft@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_No_Aircraft::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16126	DD	0ffffffffH
	DD	FLAT:$L16115
$T16124	DD	019930520H
	DD	01H
	DD	FLAT:$T16126
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_No_Aircraft@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_No_Aircraft@@6B@ DD FLAT:??_EJFW_Base_Defence_No_Aircraft@@UAEPAXI@Z ; JFW_Base_Defence_No_Aircraft::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_No_Aircraft@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_No_Aircraft@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_No_Aircraft@@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@JFW_Base_Defence_No_Aircraft@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16112 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@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	44					; 0000002cH
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16112[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16113
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_No_Aircraft@@6B@
	jmp	SHORT $L16114
$L16113:
	xor	esi, esi
$L16114:

; 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
$L16115:
	mov	eax, DWORD PTR $T16112[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16124
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::Create
PUBLIC	??_7JFW_Base_Defence_Aircraft_Only@@6B@		; JFW_Base_Defence_Aircraft_Only::`vftable'
PUBLIC	??_GJFW_Base_Defence_Aircraft_Only@@UAEPAXI@Z	; JFW_Base_Defence_Aircraft_Only::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Aircraft_Only@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Aircraft_Only::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16147	DD	0ffffffffH
	DD	FLAT:$L16136
$T16145	DD	019930520H
	DD	01H
	DD	FLAT:$T16147
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Aircraft_Only@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Aircraft_Only@@6B@ DD FLAT:??_EJFW_Base_Defence_Aircraft_Only@@UAEPAXI@Z ; JFW_Base_Defence_Aircraft_Only::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Aircraft_Only@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Aircraft_Only@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Aircraft_Only@@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@JFW_Base_Defence_Aircraft_Only@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16133 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@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	44					; 0000002cH
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16133[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16134
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Aircraft_Only@@6B@
	jmp	SHORT $L16135
$L16134:
	xor	esi, esi
$L16135:

; 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
$L16136:
	mov	eax, DWORD PTR $T16133[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16145
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::Create
PUBLIC	??_7JFW_Base_Defence_Secondary@@6B@		; JFW_Base_Defence_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_Secondary@@UAEPAXI@Z	; JFW_Base_Defence_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Secondary@@UAEPAXI@Z:NEAR	; JFW_Base_Defence_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16168	DD	0ffffffffH
	DD	FLAT:$L16157
$T16166	DD	019930520H
	DD	01H
	DD	FLAT:$T16168
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Secondary@@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@JFW_Base_Defence_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16154 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@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	48					; 00000030H
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16154[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16155
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Secondary@@6B@
	jmp	SHORT $L16156
$L16155:
	xor	esi, esi
$L16156:

; 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
$L16157:
	mov	eax, DWORD PTR $T16154[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16166
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_No_Aircraft_Secondary@@6B@	; JFW_Base_Defence_No_Aircraft_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_No_Aircraft_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_No_Aircraft_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_No_Aircraft_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_No_Aircraft_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16189	DD	0ffffffffH
	DD	FLAT:$L16178
$T16187	DD	019930520H
	DD	01H
	DD	FLAT:$T16189
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_No_Aircraft_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_No_Aircraft_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_No_Aircraft_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_No_Aircraft_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_No_Aircraft_Secondary@@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@JFW_Base_Defence_No_Aircraft_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16175 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@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	48					; 00000030H
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16175[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16176
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_No_Aircraft_Secondary@@6B@
	jmp	SHORT $L16177
$L16176:
	xor	esi, esi
$L16177:

; 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
$L16178:
	mov	eax, DWORD PTR $T16175[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16187
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_Aircraft_Only_Secondary@@6B@ ; JFW_Base_Defence_Aircraft_Only_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_Aircraft_Only_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Aircraft_Only_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Aircraft_Only_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Aircraft_Only_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16210	DD	0ffffffffH
	DD	FLAT:$L16199
$T16208	DD	019930520H
	DD	01H
	DD	FLAT:$T16210
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Aircraft_Only_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Aircraft_Only_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_Aircraft_Only_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Aircraft_Only_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Aircraft_Only_Secondary@@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@JFW_Base_Defence_Aircraft_Only_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16196 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@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	48					; 00000030H
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16196[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16197
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Aircraft_Only_Secondary@@6B@
	jmp	SHORT $L16198
$L16197:
	xor	esi, esi
$L16198:

; 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
$L16199:
	mov	eax, DWORD PTR $T16196[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16208
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_Animated@@6B@		; JFW_Base_Defence_Animated::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated@@UAEPAXI@Z	; JFW_Base_Defence_Animated::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated@@UAEPAXI@Z:NEAR	; JFW_Base_Defence_Animated::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16231	DD	0ffffffffH
	DD	FLAT:$L16220
$T16229	DD	019930520H
	DD	01H
	DD	FLAT:$T16231
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated@@UAEPAXI@Z ; JFW_Base_Defence_Animated::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated@@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@JFW_Base_Defence_Animated@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16217 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@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 $T16217[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16218
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated@@6B@
	jmp	SHORT $L16219
$L16218:
	xor	esi, esi
$L16219:

; 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
$L16220:
	mov	eax, DWORD PTR $T16217[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16229
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_No_Aircraft@@6B@	; JFW_Base_Defence_Animated_No_Aircraft::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_No_Aircraft@@UAEPAXI@Z ; JFW_Base_Defence_Animated_No_Aircraft::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_No_Aircraft@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_No_Aircraft::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16252	DD	0ffffffffH
	DD	FLAT:$L16241
$T16250	DD	019930520H
	DD	01H
	DD	FLAT:$T16252
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_No_Aircraft@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_No_Aircraft@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_No_Aircraft@@UAEPAXI@Z ; JFW_Base_Defence_Animated_No_Aircraft::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft@@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@JFW_Base_Defence_Animated_No_Aircraft@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16238 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@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 $T16238[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16239
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_No_Aircraft@@6B@
	jmp	SHORT $L16240
$L16239:
	xor	esi, esi
$L16240:

; 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
$L16241:
	mov	eax, DWORD PTR $T16238[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16250
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Aircraft_Only@@6B@ ; JFW_Base_Defence_Animated_Aircraft_Only::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Aircraft_Only@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Aircraft_Only::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Aircraft_Only@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Aircraft_Only::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16273	DD	0ffffffffH
	DD	FLAT:$L16262
$T16271	DD	019930520H
	DD	01H
	DD	FLAT:$T16273
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Aircraft_Only@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Aircraft_Only@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Aircraft_Only@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Aircraft_Only::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only@@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@JFW_Base_Defence_Animated_Aircraft_Only@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16259 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@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 $T16259[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16260
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Aircraft_Only@@6B@
	jmp	SHORT $L16261
$L16260:
	xor	esi, esi
$L16261:

; 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
$L16262:
	mov	eax, DWORD PTR $T16259[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16271
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Secondary@@6B@	; JFW_Base_Defence_Animated_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16294	DD	0ffffffffH
	DD	FLAT:$L16283
$T16292	DD	019930520H
	DD	01H
	DD	FLAT:$T16294
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Secondary@@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@JFW_Base_Defence_Animated_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16280 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@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 $T16280[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16281
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Secondary@@6B@
	jmp	SHORT $L16282
$L16281:
	xor	esi, esi
$L16282:

; 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
$L16283:
	mov	eax, DWORD PTR $T16280[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16292
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_No_Aircraft_Secondary@@6B@ ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_No_Aircraft_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_No_Aircraft_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16315	DD	0ffffffffH
	DD	FLAT:$L16304
$T16313	DD	019930520H
	DD	01H
	DD	FLAT:$T16315
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_No_Aircraft_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_No_Aircraft_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_No_Aircraft_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@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@JFW_Base_Defence_Animated_No_Aircraft_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16301 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@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 $T16301[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16302
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_No_Aircraft_Secondary@@6B@
	jmp	SHORT $L16303
$L16302:
	xor	esi, esi
$L16303:

; 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
$L16304:
	mov	eax, DWORD PTR $T16301[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16313
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@6B@ ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16336	DD	0ffffffffH
	DD	FLAT:$L16325
$T16334	DD	019930520H
	DD	01H
	DD	FLAT:$T16336
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@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@JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16322 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@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 $T16322[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16323
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@6B@
	jmp	SHORT $L16324
$L16323:
	xor	esi, esi
$L16324:

; 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
$L16325:
	mov	eax, DWORD PTR $T16322[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16334
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_No_VTOL@@6B@		; JFW_Base_Defence_No_VTOL::`vftable'
PUBLIC	??_GJFW_Base_Defence_No_VTOL@@UAEPAXI@Z		; JFW_Base_Defence_No_VTOL::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_No_VTOL@@UAEPAXI@Z:NEAR	; JFW_Base_Defence_No_VTOL::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16357	DD	0ffffffffH
	DD	FLAT:$L16346
$T16355	DD	019930520H
	DD	01H
	DD	FLAT:$T16357
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_No_VTOL@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_No_VTOL@@6B@ DD FLAT:??_EJFW_Base_Defence_No_VTOL@@UAEPAXI@Z ; JFW_Base_Defence_No_VTOL::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_No_VTOL@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_No_VTOL@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_No_VTOL@@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@JFW_Base_Defence_No_VTOL@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16343 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@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	44					; 0000002cH
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16343[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16344
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_No_VTOL@@6B@
	jmp	SHORT $L16345
$L16344:
	xor	esi, esi
$L16345:

; 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
$L16346:
	mov	eax, DWORD PTR $T16343[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16355
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::Create
PUBLIC	??_7JFW_Base_Defence_VTOL_Only@@6B@		; JFW_Base_Defence_VTOL_Only::`vftable'
PUBLIC	??_GJFW_Base_Defence_VTOL_Only@@UAEPAXI@Z	; JFW_Base_Defence_VTOL_Only::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_VTOL_Only@@UAEPAXI@Z:NEAR	; JFW_Base_Defence_VTOL_Only::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16378	DD	0ffffffffH
	DD	FLAT:$L16367
$T16376	DD	019930520H
	DD	01H
	DD	FLAT:$T16378
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_VTOL_Only@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_VTOL_Only@@6B@ DD FLAT:??_EJFW_Base_Defence_VTOL_Only@@UAEPAXI@Z ; JFW_Base_Defence_VTOL_Only::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_VTOL_Only@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_VTOL_Only@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_VTOL_Only@@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@JFW_Base_Defence_VTOL_Only@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16364 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@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	44					; 0000002cH
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16364[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16365
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_VTOL_Only@@6B@
	jmp	SHORT $L16366
$L16365:
	xor	esi, esi
$L16366:

; 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
$L16367:
	mov	eax, DWORD PTR $T16364[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16376
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::Create
PUBLIC	??_7JFW_Base_Defence_No_VTOL_Secondary@@6B@	; JFW_Base_Defence_No_VTOL_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_No_VTOL_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_No_VTOL_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_No_VTOL_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_No_VTOL_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16399	DD	0ffffffffH
	DD	FLAT:$L16388
$T16397	DD	019930520H
	DD	01H
	DD	FLAT:$T16399
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_No_VTOL_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_No_VTOL_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_No_VTOL_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_No_VTOL_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_No_VTOL_Secondary@@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@JFW_Base_Defence_No_VTOL_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16385 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@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	48					; 00000030H
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16385[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16386
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_No_VTOL_Secondary@@6B@
	jmp	SHORT $L16387
$L16386:
	xor	esi, esi
$L16387:

; 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
$L16388:
	mov	eax, DWORD PTR $T16385[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16397
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_VTOL_Only_Secondary@@6B@	; JFW_Base_Defence_VTOL_Only_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_VTOL_Only_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_VTOL_Only_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_VTOL_Only_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_VTOL_Only_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16420	DD	0ffffffffH
	DD	FLAT:$L16409
$T16418	DD	019930520H
	DD	01H
	DD	FLAT:$T16420
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_VTOL_Only_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_VTOL_Only_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_VTOL_Only_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_VTOL_Only_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_VTOL_Only_Secondary@@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@JFW_Base_Defence_VTOL_Only_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16406 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@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	48					; 00000030H
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16406[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16407
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_VTOL_Only_Secondary@@6B@
	jmp	SHORT $L16408
$L16407:
	xor	esi, esi
$L16408:

; 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
$L16409:
	mov	eax, DWORD PTR $T16406[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16418
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_No_VTOL@@6B@	; JFW_Base_Defence_Animated_No_VTOL::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_No_VTOL@@UAEPAXI@Z ; JFW_Base_Defence_Animated_No_VTOL::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_No_VTOL@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_No_VTOL::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16441	DD	0ffffffffH
	DD	FLAT:$L16430
$T16439	DD	019930520H
	DD	01H
	DD	FLAT:$T16441
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_No_VTOL@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_No_VTOL@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_No_VTOL@@UAEPAXI@Z ; JFW_Base_Defence_Animated_No_VTOL::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL@@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@JFW_Base_Defence_Animated_No_VTOL@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16427 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@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 $T16427[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16428
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_No_VTOL@@6B@
	jmp	SHORT $L16429
$L16428:
	xor	esi, esi
$L16429:

; 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
$L16430:
	mov	eax, DWORD PTR $T16427[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16439
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_VTOL_Only@@6B@	; JFW_Base_Defence_Animated_VTOL_Only::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_VTOL_Only@@UAEPAXI@Z ; JFW_Base_Defence_Animated_VTOL_Only::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_VTOL_Only@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_VTOL_Only::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16462	DD	0ffffffffH
	DD	FLAT:$L16451
$T16460	DD	019930520H
	DD	01H
	DD	FLAT:$T16462
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_VTOL_Only@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_VTOL_Only@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_VTOL_Only@@UAEPAXI@Z ; JFW_Base_Defence_Animated_VTOL_Only::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only@@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@JFW_Base_Defence_Animated_VTOL_Only@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16448 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@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 $T16448[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16449
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_VTOL_Only@@6B@
	jmp	SHORT $L16450
$L16449:
	xor	esi, esi
$L16450:

; 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
$L16451:
	mov	eax, DWORD PTR $T16448[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16460
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_No_VTOL_Secondary@@6B@ ; JFW_Base_Defence_Animated_No_VTOL_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_No_VTOL_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_No_VTOL_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_No_VTOL_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_No_VTOL_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16483	DD	0ffffffffH
	DD	FLAT:$L16472
$T16481	DD	019930520H
	DD	01H
	DD	FLAT:$T16483
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_No_VTOL_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_No_VTOL_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_No_VTOL_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_No_VTOL_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL_Secondary@@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@JFW_Base_Defence_Animated_No_VTOL_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16469 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@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 $T16469[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16470
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_No_VTOL_Secondary@@6B@
	jmp	SHORT $L16471
$L16470:
	xor	esi, esi
$L16471:

; 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
$L16472:
	mov	eax, DWORD PTR $T16469[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16481
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_VTOL_Only_Secondary@@6B@ ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_VTOL_Only_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_VTOL_Only_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16504	DD	0ffffffffH
	DD	FLAT:$L16493
$T16502	DD	019930520H
	DD	01H
	DD	FLAT:$T16504
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_VTOL_Only_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_VTOL_Only_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_VTOL_Only_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@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@JFW_Base_Defence_Animated_VTOL_Only_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16490 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@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 $T16490[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16491
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_VTOL_Only_Secondary@@6B@
	jmp	SHORT $L16492
$L16491:
	xor	esi, esi
$L16492:

; 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
$L16493:
	mov	eax, DWORD PTR $T16490[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16502
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound@@6B@	; JFW_Base_Defence_Animated_Sound::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound@@UAEPAXI@Z	; JFW_Base_Defence_Animated_Sound::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16525	DD	0ffffffffH
	DD	FLAT:$L16514
$T16523	DD	019930520H
	DD	01H
	DD	FLAT:$T16525
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_Sound@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound@@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@JFW_Base_Defence_Animated_Sound@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16511 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@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 $T16511[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16512
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound@@6B@
	jmp	SHORT $L16513
$L16512:
	xor	esi, esi
$L16513:

; 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
$L16514:
	mov	eax, DWORD PTR $T16511[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16523
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_No_Aircraft@@6B@ ; JFW_Base_Defence_Animated_Sound_No_Aircraft::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_No_Aircraft@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_No_Aircraft@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16546	DD	0ffffffffH
	DD	FLAT:$L16535
$T16544	DD	019930520H
	DD	01H
	DD	FLAT:$T16546
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_No_Aircraft@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_No_Aircraft@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_No_Aircraft@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft@@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@JFW_Base_Defence_Animated_Sound_No_Aircraft@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16532 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@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 $T16532[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16533
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_No_Aircraft@@6B@
	jmp	SHORT $L16534
$L16533:
	xor	esi, esi
$L16534:

; 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
$L16535:
	mov	eax, DWORD PTR $T16532[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16544
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only@@6B@ ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_Aircraft_Only@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16567	DD	0ffffffffH
	DD	FLAT:$L16556
$T16565	DD	019930520H
	DD	01H
	DD	FLAT:$T16567
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_Aircraft_Only@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@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@JFW_Base_Defence_Animated_Sound_Aircraft_Only@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16553 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@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 $T16553[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16554
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only@@6B@
	jmp	SHORT $L16555
$L16554:
	xor	esi, esi
$L16555:

; 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
$L16556:
	mov	eax, DWORD PTR $T16553[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16565
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_Secondary@@6B@ ; JFW_Base_Defence_Animated_Sound_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16588	DD	0ffffffffH
	DD	FLAT:$L16577
$T16586	DD	019930520H
	DD	01H
	DD	FLAT:$T16588
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_Secondary@@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@JFW_Base_Defence_Animated_Sound_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16574 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@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 $T16574[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16575
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_Secondary@@6B@
	jmp	SHORT $L16576
$L16575:
	xor	esi, esi
$L16576:

; 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
$L16577:
	mov	eax, DWORD PTR $T16574[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16586
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@6B@ ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16609	DD	0ffffffffH
	DD	FLAT:$L16598
$T16607	DD	019930520H
	DD	01H
	DD	FLAT:$T16609
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@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@JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16595 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@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 $T16595[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16596
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@6B@
	jmp	SHORT $L16597
$L16596:
	xor	esi, esi
$L16597:

; 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
$L16598:
	mov	eax, DWORD PTR $T16595[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16607
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@6B@ ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16630	DD	0ffffffffH
	DD	FLAT:$L16619
$T16628	DD	019930520H
	DD	01H
	DD	FLAT:$T16630
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@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@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16616 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@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 $T16616[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16617
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@6B@
	jmp	SHORT $L16618
$L16617:
	xor	esi, esi
$L16618:

; 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
$L16619:
	mov	eax, DWORD PTR $T16616[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16628
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_No_VTOL@@6B@ ; JFW_Base_Defence_Animated_Sound_No_VTOL::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_No_VTOL@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_No_VTOL@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16651	DD	0ffffffffH
	DD	FLAT:$L16640
$T16649	DD	019930520H
	DD	01H
	DD	FLAT:$T16651
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_No_VTOL@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_No_VTOL@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_No_VTOL@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL@@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@JFW_Base_Defence_Animated_Sound_No_VTOL@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16637 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@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 $T16637[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16638
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_No_VTOL@@6B@
	jmp	SHORT $L16639
$L16638:
	xor	esi, esi
$L16639:

; 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
$L16640:
	mov	eax, DWORD PTR $T16637[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16649
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_VTOL_Only@@6B@ ; JFW_Base_Defence_Animated_Sound_VTOL_Only::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_VTOL_Only@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_VTOL_Only@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16672	DD	0ffffffffH
	DD	FLAT:$L16661
$T16670	DD	019930520H
	DD	01H
	DD	FLAT:$T16672
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_VTOL_Only@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_VTOL_Only@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_VTOL_Only@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only@@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@JFW_Base_Defence_Animated_Sound_VTOL_Only@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16658 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@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 $T16658[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16659
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_VTOL_Only@@6B@
	jmp	SHORT $L16660
$L16659:
	xor	esi, esi
$L16660:

; 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
$L16661:
	mov	eax, DWORD PTR $T16658[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16670
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@6B@ ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16693	DD	0ffffffffH
	DD	FLAT:$L16682
$T16691	DD	019930520H
	DD	01H
	DD	FLAT:$T16693
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@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@JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16679 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@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 $T16679[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16680
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@6B@
	jmp	SHORT $L16681
$L16680:
	xor	esi, esi
$L16681:

; 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
$L16682:
	mov	eax, DWORD PTR $T16679[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16691
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@6B@ ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16714	DD	0ffffffffH
	DD	FLAT:$L16703
$T16712	DD	019930520H
	DD	01H
	DD	FLAT:$T16714
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@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@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@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@JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16700 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@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 $T16700[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16701
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@6B@
	jmp	SHORT $L16702
$L16701:
	xor	esi, esi
$L16702:

; 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
$L16703:
	mov	eax, DWORD PTR $T16700[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16712
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::Create
PUBLIC	??_7JFW_Base_Defence_Swap@@6B@			; JFW_Base_Defence_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_Swap@@UAEPAXI@Z		; JFW_Base_Defence_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Swap@@UAEPAXI@Z:NEAR	; JFW_Base_Defence_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16735	DD	0ffffffffH
	DD	FLAT:$L16724
$T16733	DD	019930520H
	DD	01H
	DD	FLAT:$T16735
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Swap@@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@JFW_Base_Defence_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16721 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@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	48					; 00000030H
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16721[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16722
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Swap@@6B@
	jmp	SHORT $L16723
$L16722:
	xor	esi, esi
$L16723:

; 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
$L16724:
	mov	eax, DWORD PTR $T16721[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16733
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_No_Aircraft_Swap@@6B@	; JFW_Base_Defence_No_Aircraft_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_No_Aircraft_Swap@@UAEPAXI@Z ; JFW_Base_Defence_No_Aircraft_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_No_Aircraft_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_No_Aircraft_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16756	DD	0ffffffffH
	DD	FLAT:$L16745
$T16754	DD	019930520H
	DD	01H
	DD	FLAT:$T16756
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_No_Aircraft_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_No_Aircraft_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_No_Aircraft_Swap@@UAEPAXI@Z ; JFW_Base_Defence_No_Aircraft_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_No_Aircraft_Swap@@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@JFW_Base_Defence_No_Aircraft_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16742 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@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	48					; 00000030H
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16742[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16743
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_No_Aircraft_Swap@@6B@
	jmp	SHORT $L16744
$L16743:
	xor	esi, esi
$L16744:

; 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
$L16745:
	mov	eax, DWORD PTR $T16742[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16754
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_Aircraft_Only_Swap@@6B@	; JFW_Base_Defence_Aircraft_Only_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_Aircraft_Only_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Aircraft_Only_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Aircraft_Only_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Aircraft_Only_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16777	DD	0ffffffffH
	DD	FLAT:$L16766
$T16775	DD	019930520H
	DD	01H
	DD	FLAT:$T16777
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Aircraft_Only_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Aircraft_Only_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_Aircraft_Only_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Aircraft_Only_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Aircraft_Only_Swap@@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@JFW_Base_Defence_Aircraft_Only_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16763 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@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	48					; 00000030H
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16763[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16764
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Aircraft_Only_Swap@@6B@
	jmp	SHORT $L16765
$L16764:
	xor	esi, esi
$L16765:

; 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
$L16766:
	mov	eax, DWORD PTR $T16763[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16775
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Swap@@6B@		; JFW_Base_Defence_Animated_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Swap@@UAEPAXI@Z	; JFW_Base_Defence_Animated_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16798	DD	0ffffffffH
	DD	FLAT:$L16787
$T16796	DD	019930520H
	DD	01H
	DD	FLAT:$T16798
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_Animated_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_Animated_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Swap@@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@JFW_Base_Defence_Animated_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16784 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@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 $T16784[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16785
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Swap@@6B@
	jmp	SHORT $L16786
$L16785:
	xor	esi, esi
$L16786:

; 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
$L16787:
	mov	eax, DWORD PTR $T16784[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16796
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_No_Aircraft_Swap@@6B@ ; JFW_Base_Defence_Animated_No_Aircraft_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_No_Aircraft_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_No_Aircraft_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_No_Aircraft_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16819	DD	0ffffffffH
	DD	FLAT:$L16808
$T16817	DD	019930520H
	DD	01H
	DD	FLAT:$T16819
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_No_Aircraft_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_No_Aircraft_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_No_Aircraft_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_No_Aircraft_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_No_Aircraft_Swap@@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@JFW_Base_Defence_Animated_No_Aircraft_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16805 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@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 $T16805[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16806
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_No_Aircraft_Swap@@6B@
	jmp	SHORT $L16807
$L16806:
	xor	esi, esi
$L16807:

; 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
$L16808:
	mov	eax, DWORD PTR $T16805[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16817
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Aircraft_Only_Swap@@6B@ ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Aircraft_Only_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Aircraft_Only_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16840	DD	0ffffffffH
	DD	FLAT:$L16829
$T16838	DD	019930520H
	DD	01H
	DD	FLAT:$T16840
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Aircraft_Only_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Aircraft_Only_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Aircraft_Only_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@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@JFW_Base_Defence_Animated_Aircraft_Only_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16826 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@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 $T16826[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16827
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Aircraft_Only_Swap@@6B@
	jmp	SHORT $L16828
$L16827:
	xor	esi, esi
$L16828:

; 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
$L16829:
	mov	eax, DWORD PTR $T16826[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16838
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_No_VTOL_Swap@@6B@		; JFW_Base_Defence_No_VTOL_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_No_VTOL_Swap@@UAEPAXI@Z	; JFW_Base_Defence_No_VTOL_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_No_VTOL_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_No_VTOL_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16861	DD	0ffffffffH
	DD	FLAT:$L16850
$T16859	DD	019930520H
	DD	01H
	DD	FLAT:$T16861
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_No_VTOL_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_No_VTOL_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_No_VTOL_Swap@@UAEPAXI@Z ; JFW_Base_Defence_No_VTOL_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_No_VTOL_Swap@@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@JFW_Base_Defence_No_VTOL_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16847 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@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	48					; 00000030H
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16847[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16848
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_No_VTOL_Swap@@6B@
	jmp	SHORT $L16849
$L16848:
	xor	esi, esi
$L16849:

; 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
$L16850:
	mov	eax, DWORD PTR $T16847[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16859
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_VTOL_Only_Swap@@6B@	; JFW_Base_Defence_VTOL_Only_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_VTOL_Only_Swap@@UAEPAXI@Z	; JFW_Base_Defence_VTOL_Only_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_VTOL_Only_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_VTOL_Only_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16882	DD	0ffffffffH
	DD	FLAT:$L16871
$T16880	DD	019930520H
	DD	01H
	DD	FLAT:$T16882
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_VTOL_Only_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_VTOL_Only_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_VTOL_Only_Swap@@UAEPAXI@Z ; JFW_Base_Defence_VTOL_Only_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_VTOL_Only_Swap@@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@JFW_Base_Defence_VTOL_Only_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16868 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@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	48					; 00000030H
	mov	edi, ecx
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 4
	mov	DWORD PTR $T16868[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16869
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_VTOL_Only_Swap@@6B@
	jmp	SHORT $L16870
$L16869:
	xor	esi, esi
$L16870:

; 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
$L16871:
	mov	eax, DWORD PTR $T16868[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16880
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_No_VTOL_Swap@@6B@	; JFW_Base_Defence_Animated_No_VTOL_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_No_VTOL_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_No_VTOL_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_No_VTOL_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_No_VTOL_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16903	DD	0ffffffffH
	DD	FLAT:$L16892
$T16901	DD	019930520H
	DD	01H
	DD	FLAT:$T16903
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_No_VTOL_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_No_VTOL_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_No_VTOL_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_No_VTOL_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_No_VTOL_Swap@@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@JFW_Base_Defence_Animated_No_VTOL_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16889 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@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 $T16889[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16890
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_No_VTOL_Swap@@6B@
	jmp	SHORT $L16891
$L16890:
	xor	esi, esi
$L16891:

; 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
$L16892:
	mov	eax, DWORD PTR $T16889[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16901
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_VTOL_Only_Swap@@6B@ ; JFW_Base_Defence_Animated_VTOL_Only_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_VTOL_Only_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_VTOL_Only_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_VTOL_Only_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16924	DD	0ffffffffH
	DD	FLAT:$L16913
$T16922	DD	019930520H
	DD	01H
	DD	FLAT:$T16924
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_VTOL_Only_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_VTOL_Only_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_VTOL_Only_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_VTOL_Only_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_VTOL_Only_Swap@@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@JFW_Base_Defence_Animated_VTOL_Only_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16910 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@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 $T16910[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16911
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_VTOL_Only_Swap@@6B@
	jmp	SHORT $L16912
$L16911:
	xor	esi, esi
$L16912:

; 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
$L16913:
	mov	eax, DWORD PTR $T16910[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16922
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_Swap@@6B@	; JFW_Base_Defence_Animated_Sound_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16945	DD	0ffffffffH
	DD	FLAT:$L16934
$T16943	DD	019930520H
	DD	01H
	DD	FLAT:$T16945
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_Swap@@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@JFW_Base_Defence_Animated_Sound_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16931 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@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 $T16931[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16932
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_Swap@@6B@
	jmp	SHORT $L16933
$L16932:
	xor	esi, esi
$L16933:

; 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
$L16934:
	mov	eax, DWORD PTR $T16931[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16943
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@6B@ ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16966	DD	0ffffffffH
	DD	FLAT:$L16955
$T16964	DD	019930520H
	DD	01H
	DD	FLAT:$T16966
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@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@JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16952 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@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 $T16952[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16953
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@6B@
	jmp	SHORT $L16954
$L16953:
	xor	esi, esi
$L16954:

; 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
$L16955:
	mov	eax, DWORD PTR $T16952[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16964
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@6B@ ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T16987	DD	0ffffffffH
	DD	FLAT:$L16976
$T16985	DD	019930520H
	DD	01H
	DD	FLAT:$T16987
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@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@JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16973 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@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 $T16973[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16974
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@6B@
	jmp	SHORT $L16975
$L16974:
	xor	esi, esi
$L16975:

; 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
$L16976:
	mov	eax, DWORD PTR $T16973[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T16985
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@6B@ ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T17008	DD	0ffffffffH
	DD	FLAT:$L16997
$T17006	DD	019930520H
	DD	01H
	DD	FLAT:$T17008
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@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@JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T16994 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@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 $T16994[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L16995
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@6B@
	jmp	SHORT $L16996
$L16995:
	xor	esi, esi
$L16996:

; 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
$L16997:
	mov	eax, DWORD PTR $T16994[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T17006
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::Create
PUBLIC	??_7JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@6B@ ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::`vftable'
PUBLIC	??_GJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::`scalar deleting destructor'
EXTRN	??_EJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@UAEPAXI@Z:NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::`vector deleting destructor'
;	COMDAT xdata$x
xdata$x	SEGMENT
$T17029	DD	0ffffffffH
	DD	FLAT:$L17018
$T17027	DD	019930520H
	DD	01H
	DD	FLAT:$T17029
	DD	2 DUP(00H)
	DD	2 DUP(00H)
xdata$x	ENDS
;	COMDAT ??_7JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@6B@
CONST	SEGMENT
??_7JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@6B@ DD FLAT:??_EJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@UAEPAXI@Z ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::`vftable'
	DD	FLAT:?Get_Name@ScriptImpClass@@UAEPADXZ
	DD	FLAT:?Attach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Detach@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Created@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAE@Z
	DD	FLAT:?Destroyed@ScriptImpClass@@UAEXPAE@Z
	DD	FLAT:?Killed@ScriptImpClass@@UAEXPAE0@Z
	DD	FLAT:?Damaged@ScriptImpClass@@UAEXPAE0M@Z
	DD	FLAT:?Custom@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEHH0@Z
	DD	FLAT:?Sound_Heard@ScriptImpClass@@UAEXPAEABUCombatSound@@@Z
	DD	FLAT:?Enemy_Seen@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAE0@Z
	DD	FLAT:?Action_Complete@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXPAEHW4ActionCompleteReason@@@Z
	DD	FLAT:?Timer_Expired@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@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@JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@EAEXXZ
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT ?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ
_TEXT	SEGMENT
$T17015 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ PROC NEAR ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::Create, COMDAT
; _this$ = ecx

; 480  : {

	push	-1
	push	__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@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 $T17015[esp+24], esi
	test	esi, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	je	SHORT $L17016
	mov	ecx, esi
	call	??0ScriptImpClass@@QAE@XZ		; ScriptImpClass::ScriptImpClass
	mov	DWORD PTR [esi], OFFSET FLAT:??_7JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@6B@
	jmp	SHORT $L17017
$L17016:
	xor	esi, esi
$L17017:

; 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
$L17018:
	mov	eax, DWORD PTR $T17015[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ:
	mov	eax, OFFSET FLAT:$T17027
	jmp	___CxxFrameHandler
text$x	ENDS
?Create@?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAEPAVScriptImpClass@@XZ ENDP ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::Create
PUBLIC	??1JFW_User_Controllable_Base_Defence@@UAE@XZ	; JFW_User_Controllable_Base_Defence::~JFW_User_Controllable_Base_Defence
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_User_Controllable_Base_Defence@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_User_Controllable_Base_Defence@@UAEPAXI@Z PROC NEAR ; JFW_User_Controllable_Base_Defence::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_User_Controllable_Base_Defence@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17035
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17035:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_User_Controllable_Base_Defence@@UAEPAXI@Z ENDP	; JFW_User_Controllable_Base_Defence::`scalar deleting destructor'
_TEXT	ENDS
EXTRN	??1ScriptImpClass@@UAE@XZ:NEAR			; ScriptImpClass::~ScriptImpClass
; Function compile flags: /Ogty
;	COMDAT ??1JFW_User_Controllable_Base_Defence@@UAE@XZ
_TEXT	SEGMENT
??1JFW_User_Controllable_Base_Defence@@UAE@XZ PROC NEAR	; JFW_User_Controllable_Base_Defence::~JFW_User_Controllable_Base_Defence, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_User_Controllable_Base_Defence@@UAE@XZ ENDP	; JFW_User_Controllable_Base_Defence::~JFW_User_Controllable_Base_Defence
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence@@UAE@XZ			; JFW_Base_Defence::~JFW_Base_Defence
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence@@UAEPAXI@Z PROC NEAR		; JFW_Base_Defence::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17043
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17043:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence@@UAEPAXI@Z ENDP			; JFW_Base_Defence::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence@@UAE@XZ PROC NEAR			; JFW_Base_Defence::~JFW_Base_Defence, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence@@UAE@XZ ENDP			; JFW_Base_Defence::~JFW_Base_Defence
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_No_Aircraft@@UAE@XZ		; JFW_Base_Defence_No_Aircraft::~JFW_Base_Defence_No_Aircraft
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_No_Aircraft@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_No_Aircraft@@UAEPAXI@Z PROC NEAR	; JFW_Base_Defence_No_Aircraft::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_No_Aircraft@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17051
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17051:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_No_Aircraft@@UAEPAXI@Z ENDP	; JFW_Base_Defence_No_Aircraft::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_No_Aircraft@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_No_Aircraft@@UAE@XZ PROC NEAR	; JFW_Base_Defence_No_Aircraft::~JFW_Base_Defence_No_Aircraft, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_No_Aircraft@@UAE@XZ ENDP		; JFW_Base_Defence_No_Aircraft::~JFW_Base_Defence_No_Aircraft
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Aircraft_Only@@UAE@XZ	; JFW_Base_Defence_Aircraft_Only::~JFW_Base_Defence_Aircraft_Only
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Aircraft_Only@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Aircraft_Only@@UAEPAXI@Z PROC NEAR	; JFW_Base_Defence_Aircraft_Only::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Aircraft_Only@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17059
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17059:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Aircraft_Only@@UAEPAXI@Z ENDP	; JFW_Base_Defence_Aircraft_Only::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Aircraft_Only@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Aircraft_Only@@UAE@XZ PROC NEAR	; JFW_Base_Defence_Aircraft_Only::~JFW_Base_Defence_Aircraft_Only, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Aircraft_Only@@UAE@XZ ENDP		; JFW_Base_Defence_Aircraft_Only::~JFW_Base_Defence_Aircraft_Only
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Secondary@@UAE@XZ		; JFW_Base_Defence_Secondary::~JFW_Base_Defence_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Secondary@@UAEPAXI@Z PROC NEAR	; JFW_Base_Defence_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17067
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17067:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Secondary@@UAEPAXI@Z ENDP		; JFW_Base_Defence_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Secondary@@UAE@XZ PROC NEAR		; JFW_Base_Defence_Secondary::~JFW_Base_Defence_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Secondary@@UAE@XZ ENDP		; JFW_Base_Defence_Secondary::~JFW_Base_Defence_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_No_Aircraft_Secondary@@UAE@XZ ; JFW_Base_Defence_No_Aircraft_Secondary::~JFW_Base_Defence_No_Aircraft_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_No_Aircraft_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_No_Aircraft_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_No_Aircraft_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17075
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17075:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_No_Aircraft_Secondary@@UAEPAXI@Z ENDP ; JFW_Base_Defence_No_Aircraft_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_No_Aircraft_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_No_Aircraft_Secondary@@UAE@XZ PROC NEAR ; JFW_Base_Defence_No_Aircraft_Secondary::~JFW_Base_Defence_No_Aircraft_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_No_Aircraft_Secondary@@UAE@XZ ENDP	; JFW_Base_Defence_No_Aircraft_Secondary::~JFW_Base_Defence_No_Aircraft_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Aircraft_Only_Secondary@@UAE@XZ ; JFW_Base_Defence_Aircraft_Only_Secondary::~JFW_Base_Defence_Aircraft_Only_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Aircraft_Only_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Aircraft_Only_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Aircraft_Only_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17083
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17083:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Aircraft_Only_Secondary@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Aircraft_Only_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Aircraft_Only_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Aircraft_Only_Secondary@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Secondary::~JFW_Base_Defence_Aircraft_Only_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Aircraft_Only_Secondary@@UAE@XZ ENDP ; JFW_Base_Defence_Aircraft_Only_Secondary::~JFW_Base_Defence_Aircraft_Only_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated@@UAE@XZ		; JFW_Base_Defence_Animated::~JFW_Base_Defence_Animated
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated@@UAEPAXI@Z PROC NEAR	; JFW_Base_Defence_Animated::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17091
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17091:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated@@UAEPAXI@Z ENDP		; JFW_Base_Defence_Animated::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated@@UAE@XZ PROC NEAR		; JFW_Base_Defence_Animated::~JFW_Base_Defence_Animated, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated@@UAE@XZ ENDP		; JFW_Base_Defence_Animated::~JFW_Base_Defence_Animated
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_No_Aircraft@@UAE@XZ ; JFW_Base_Defence_Animated_No_Aircraft::~JFW_Base_Defence_Animated_No_Aircraft
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_No_Aircraft@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_No_Aircraft@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_No_Aircraft@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17099
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17099:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_No_Aircraft@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_No_Aircraft@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_No_Aircraft@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft::~JFW_Base_Defence_Animated_No_Aircraft, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_No_Aircraft@@UAE@XZ ENDP	; JFW_Base_Defence_Animated_No_Aircraft::~JFW_Base_Defence_Animated_No_Aircraft
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Aircraft_Only@@UAE@XZ ; JFW_Base_Defence_Animated_Aircraft_Only::~JFW_Base_Defence_Animated_Aircraft_Only
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Aircraft_Only@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Aircraft_Only@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Aircraft_Only@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17107
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17107:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Aircraft_Only@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Aircraft_Only@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Aircraft_Only@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only::~JFW_Base_Defence_Animated_Aircraft_Only, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Aircraft_Only@@UAE@XZ ENDP	; JFW_Base_Defence_Animated_Aircraft_Only::~JFW_Base_Defence_Animated_Aircraft_Only
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Secondary@@UAE@XZ	; JFW_Base_Defence_Animated_Secondary::~JFW_Base_Defence_Animated_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17115
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17115:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Secondary@@UAEPAXI@Z ENDP	; JFW_Base_Defence_Animated_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Secondary@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Secondary::~JFW_Base_Defence_Animated_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Secondary@@UAE@XZ ENDP	; JFW_Base_Defence_Animated_Secondary::~JFW_Base_Defence_Animated_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_No_Aircraft_Secondary@@UAE@XZ ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::~JFW_Base_Defence_Animated_No_Aircraft_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_No_Aircraft_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_No_Aircraft_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_No_Aircraft_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17123
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17123:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_No_Aircraft_Secondary@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_No_Aircraft_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_No_Aircraft_Secondary@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::~JFW_Base_Defence_Animated_No_Aircraft_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_No_Aircraft_Secondary@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_No_Aircraft_Secondary::~JFW_Base_Defence_Animated_No_Aircraft_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@UAE@XZ ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::~JFW_Base_Defence_Animated_Aircraft_Only_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17131
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17131:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::~JFW_Base_Defence_Animated_Aircraft_Only_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Aircraft_Only_Secondary@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary::~JFW_Base_Defence_Animated_Aircraft_Only_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_No_VTOL@@UAE@XZ		; JFW_Base_Defence_No_VTOL::~JFW_Base_Defence_No_VTOL
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_No_VTOL@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_No_VTOL@@UAEPAXI@Z PROC NEAR	; JFW_Base_Defence_No_VTOL::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_No_VTOL@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17139
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17139:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_No_VTOL@@UAEPAXI@Z ENDP		; JFW_Base_Defence_No_VTOL::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_No_VTOL@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_No_VTOL@@UAE@XZ PROC NEAR		; JFW_Base_Defence_No_VTOL::~JFW_Base_Defence_No_VTOL, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_No_VTOL@@UAE@XZ ENDP		; JFW_Base_Defence_No_VTOL::~JFW_Base_Defence_No_VTOL
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_VTOL_Only@@UAE@XZ		; JFW_Base_Defence_VTOL_Only::~JFW_Base_Defence_VTOL_Only
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_VTOL_Only@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_VTOL_Only@@UAEPAXI@Z PROC NEAR	; JFW_Base_Defence_VTOL_Only::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_VTOL_Only@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17147
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17147:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_VTOL_Only@@UAEPAXI@Z ENDP		; JFW_Base_Defence_VTOL_Only::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_VTOL_Only@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_VTOL_Only@@UAE@XZ PROC NEAR		; JFW_Base_Defence_VTOL_Only::~JFW_Base_Defence_VTOL_Only, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_VTOL_Only@@UAE@XZ ENDP		; JFW_Base_Defence_VTOL_Only::~JFW_Base_Defence_VTOL_Only
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_No_VTOL_Secondary@@UAE@XZ	; JFW_Base_Defence_No_VTOL_Secondary::~JFW_Base_Defence_No_VTOL_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_No_VTOL_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_No_VTOL_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_No_VTOL_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_No_VTOL_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17155
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17155:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_No_VTOL_Secondary@@UAEPAXI@Z ENDP	; JFW_Base_Defence_No_VTOL_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_No_VTOL_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_No_VTOL_Secondary@@UAE@XZ PROC NEAR	; JFW_Base_Defence_No_VTOL_Secondary::~JFW_Base_Defence_No_VTOL_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_No_VTOL_Secondary@@UAE@XZ ENDP	; JFW_Base_Defence_No_VTOL_Secondary::~JFW_Base_Defence_No_VTOL_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_VTOL_Only_Secondary@@UAE@XZ	; JFW_Base_Defence_VTOL_Only_Secondary::~JFW_Base_Defence_VTOL_Only_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_VTOL_Only_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_VTOL_Only_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_VTOL_Only_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17163
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17163:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_VTOL_Only_Secondary@@UAEPAXI@Z ENDP ; JFW_Base_Defence_VTOL_Only_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_VTOL_Only_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_VTOL_Only_Secondary@@UAE@XZ PROC NEAR ; JFW_Base_Defence_VTOL_Only_Secondary::~JFW_Base_Defence_VTOL_Only_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_VTOL_Only_Secondary@@UAE@XZ ENDP	; JFW_Base_Defence_VTOL_Only_Secondary::~JFW_Base_Defence_VTOL_Only_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_No_VTOL@@UAE@XZ	; JFW_Base_Defence_Animated_No_VTOL::~JFW_Base_Defence_Animated_No_VTOL
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_No_VTOL@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_No_VTOL@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_No_VTOL@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17171
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17171:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_No_VTOL@@UAEPAXI@Z ENDP	; JFW_Base_Defence_Animated_No_VTOL::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_No_VTOL@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_No_VTOL@@UAE@XZ PROC NEAR	; JFW_Base_Defence_Animated_No_VTOL::~JFW_Base_Defence_Animated_No_VTOL, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_No_VTOL@@UAE@XZ ENDP	; JFW_Base_Defence_Animated_No_VTOL::~JFW_Base_Defence_Animated_No_VTOL
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_VTOL_Only@@UAE@XZ	; JFW_Base_Defence_Animated_VTOL_Only::~JFW_Base_Defence_Animated_VTOL_Only
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_VTOL_Only@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_VTOL_Only@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_VTOL_Only@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17179
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17179:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_VTOL_Only@@UAEPAXI@Z ENDP	; JFW_Base_Defence_Animated_VTOL_Only::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_VTOL_Only@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_VTOL_Only@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only::~JFW_Base_Defence_Animated_VTOL_Only, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_VTOL_Only@@UAE@XZ ENDP	; JFW_Base_Defence_Animated_VTOL_Only::~JFW_Base_Defence_Animated_VTOL_Only
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_No_VTOL_Secondary@@UAE@XZ ; JFW_Base_Defence_Animated_No_VTOL_Secondary::~JFW_Base_Defence_Animated_No_VTOL_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_No_VTOL_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_No_VTOL_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_No_VTOL_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17187
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17187:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_No_VTOL_Secondary@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_No_VTOL_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_No_VTOL_Secondary@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL_Secondary::~JFW_Base_Defence_Animated_No_VTOL_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_No_VTOL_Secondary@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_No_VTOL_Secondary::~JFW_Base_Defence_Animated_No_VTOL_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_VTOL_Only_Secondary@@UAE@XZ ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::~JFW_Base_Defence_Animated_VTOL_Only_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_VTOL_Only_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_VTOL_Only_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_VTOL_Only_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17195
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17195:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_VTOL_Only_Secondary@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_VTOL_Only_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_VTOL_Only_Secondary@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::~JFW_Base_Defence_Animated_VTOL_Only_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_VTOL_Only_Secondary@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_VTOL_Only_Secondary::~JFW_Base_Defence_Animated_VTOL_Only_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound@@UAE@XZ	; JFW_Base_Defence_Animated_Sound::~JFW_Base_Defence_Animated_Sound
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17203
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17203:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound@@UAEPAXI@Z ENDP	; JFW_Base_Defence_Animated_Sound::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound@@UAE@XZ PROC NEAR	; JFW_Base_Defence_Animated_Sound::~JFW_Base_Defence_Animated_Sound, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound@@UAE@XZ ENDP		; JFW_Base_Defence_Animated_Sound::~JFW_Base_Defence_Animated_Sound
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_No_Aircraft@@UAE@XZ ; JFW_Base_Defence_Animated_Sound_No_Aircraft::~JFW_Base_Defence_Animated_Sound_No_Aircraft
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_No_Aircraft@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_No_Aircraft@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_No_Aircraft@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17211
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17211:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_No_Aircraft@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_No_Aircraft@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_No_Aircraft@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft::~JFW_Base_Defence_Animated_Sound_No_Aircraft, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_No_Aircraft@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft::~JFW_Base_Defence_Animated_Sound_No_Aircraft
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_Aircraft_Only@@UAE@XZ ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::~JFW_Base_Defence_Animated_Sound_Aircraft_Only
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_Aircraft_Only@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17219
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17219:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_Aircraft_Only@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_Aircraft_Only@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::~JFW_Base_Defence_Animated_Sound_Aircraft_Only, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_Aircraft_Only@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only::~JFW_Base_Defence_Animated_Sound_Aircraft_Only
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_Secondary@@UAE@XZ ; JFW_Base_Defence_Animated_Sound_Secondary::~JFW_Base_Defence_Animated_Sound_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17227
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17227:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_Secondary@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_Secondary@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_Secondary::~JFW_Base_Defence_Animated_Sound_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_Secondary@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Sound_Secondary::~JFW_Base_Defence_Animated_Sound_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@UAE@XZ ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::~JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17235
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17235:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::~JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary::~JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@UAE@XZ ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::~JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17243
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17243:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::~JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary::~JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_No_VTOL@@UAE@XZ ; JFW_Base_Defence_Animated_Sound_No_VTOL::~JFW_Base_Defence_Animated_Sound_No_VTOL
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_No_VTOL@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_No_VTOL@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_No_VTOL@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17251
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17251:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_No_VTOL@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_No_VTOL@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_No_VTOL@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL::~JFW_Base_Defence_Animated_Sound_No_VTOL, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_No_VTOL@@UAE@XZ ENDP	; JFW_Base_Defence_Animated_Sound_No_VTOL::~JFW_Base_Defence_Animated_Sound_No_VTOL
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_VTOL_Only@@UAE@XZ ; JFW_Base_Defence_Animated_Sound_VTOL_Only::~JFW_Base_Defence_Animated_Sound_VTOL_Only
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_VTOL_Only@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_VTOL_Only@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_VTOL_Only@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17259
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17259:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_VTOL_Only@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_VTOL_Only@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_VTOL_Only@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only::~JFW_Base_Defence_Animated_Sound_VTOL_Only, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_VTOL_Only@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only::~JFW_Base_Defence_Animated_Sound_VTOL_Only
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@UAE@XZ ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::~JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17267
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17267:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::~JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary::~JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@UAE@XZ ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::~JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17275
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17275:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::~JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary::~JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Swap@@UAE@XZ		; JFW_Base_Defence_Swap::~JFW_Base_Defence_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Swap@@UAEPAXI@Z PROC NEAR		; JFW_Base_Defence_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17283
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17283:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Swap@@UAEPAXI@Z ENDP		; JFW_Base_Defence_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Swap@@UAE@XZ PROC NEAR		; JFW_Base_Defence_Swap::~JFW_Base_Defence_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Swap@@UAE@XZ ENDP			; JFW_Base_Defence_Swap::~JFW_Base_Defence_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_No_Aircraft_Swap@@UAE@XZ	; JFW_Base_Defence_No_Aircraft_Swap::~JFW_Base_Defence_No_Aircraft_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_No_Aircraft_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_No_Aircraft_Swap@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_No_Aircraft_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_No_Aircraft_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17291
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17291:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_No_Aircraft_Swap@@UAEPAXI@Z ENDP	; JFW_Base_Defence_No_Aircraft_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_No_Aircraft_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_No_Aircraft_Swap@@UAE@XZ PROC NEAR	; JFW_Base_Defence_No_Aircraft_Swap::~JFW_Base_Defence_No_Aircraft_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_No_Aircraft_Swap@@UAE@XZ ENDP	; JFW_Base_Defence_No_Aircraft_Swap::~JFW_Base_Defence_No_Aircraft_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Aircraft_Only_Swap@@UAE@XZ	; JFW_Base_Defence_Aircraft_Only_Swap::~JFW_Base_Defence_Aircraft_Only_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Aircraft_Only_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Aircraft_Only_Swap@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Aircraft_Only_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17299
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17299:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Aircraft_Only_Swap@@UAEPAXI@Z ENDP	; JFW_Base_Defence_Aircraft_Only_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Aircraft_Only_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Aircraft_Only_Swap@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Aircraft_Only_Swap::~JFW_Base_Defence_Aircraft_Only_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Aircraft_Only_Swap@@UAE@XZ ENDP	; JFW_Base_Defence_Aircraft_Only_Swap::~JFW_Base_Defence_Aircraft_Only_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Swap@@UAE@XZ	; JFW_Base_Defence_Animated_Swap::~JFW_Base_Defence_Animated_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Swap@@UAEPAXI@Z PROC NEAR	; JFW_Base_Defence_Animated_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17307
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17307:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Swap@@UAEPAXI@Z ENDP	; JFW_Base_Defence_Animated_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Swap@@UAE@XZ PROC NEAR	; JFW_Base_Defence_Animated_Swap::~JFW_Base_Defence_Animated_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Swap@@UAE@XZ ENDP		; JFW_Base_Defence_Animated_Swap::~JFW_Base_Defence_Animated_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_No_Aircraft_Swap@@UAE@XZ ; JFW_Base_Defence_Animated_No_Aircraft_Swap::~JFW_Base_Defence_Animated_No_Aircraft_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_No_Aircraft_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_No_Aircraft_Swap@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_No_Aircraft_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17315
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17315:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_No_Aircraft_Swap@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_No_Aircraft_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_No_Aircraft_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_No_Aircraft_Swap@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_No_Aircraft_Swap::~JFW_Base_Defence_Animated_No_Aircraft_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_No_Aircraft_Swap@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_No_Aircraft_Swap::~JFW_Base_Defence_Animated_No_Aircraft_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Aircraft_Only_Swap@@UAE@XZ ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::~JFW_Base_Defence_Animated_Aircraft_Only_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Aircraft_Only_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Aircraft_Only_Swap@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Aircraft_Only_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17323
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17323:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Aircraft_Only_Swap@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Aircraft_Only_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Aircraft_Only_Swap@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::~JFW_Base_Defence_Animated_Aircraft_Only_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Aircraft_Only_Swap@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Aircraft_Only_Swap::~JFW_Base_Defence_Animated_Aircraft_Only_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_No_VTOL_Swap@@UAE@XZ	; JFW_Base_Defence_No_VTOL_Swap::~JFW_Base_Defence_No_VTOL_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_No_VTOL_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_No_VTOL_Swap@@UAEPAXI@Z PROC NEAR	; JFW_Base_Defence_No_VTOL_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_No_VTOL_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17331
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17331:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_No_VTOL_Swap@@UAEPAXI@Z ENDP	; JFW_Base_Defence_No_VTOL_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_No_VTOL_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_No_VTOL_Swap@@UAE@XZ PROC NEAR	; JFW_Base_Defence_No_VTOL_Swap::~JFW_Base_Defence_No_VTOL_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_No_VTOL_Swap@@UAE@XZ ENDP		; JFW_Base_Defence_No_VTOL_Swap::~JFW_Base_Defence_No_VTOL_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_VTOL_Only_Swap@@UAE@XZ	; JFW_Base_Defence_VTOL_Only_Swap::~JFW_Base_Defence_VTOL_Only_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_VTOL_Only_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_VTOL_Only_Swap@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_VTOL_Only_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_VTOL_Only_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17339
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17339:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_VTOL_Only_Swap@@UAEPAXI@Z ENDP	; JFW_Base_Defence_VTOL_Only_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_VTOL_Only_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_VTOL_Only_Swap@@UAE@XZ PROC NEAR	; JFW_Base_Defence_VTOL_Only_Swap::~JFW_Base_Defence_VTOL_Only_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_VTOL_Only_Swap@@UAE@XZ ENDP		; JFW_Base_Defence_VTOL_Only_Swap::~JFW_Base_Defence_VTOL_Only_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_No_VTOL_Swap@@UAE@XZ ; JFW_Base_Defence_Animated_No_VTOL_Swap::~JFW_Base_Defence_Animated_No_VTOL_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_No_VTOL_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_No_VTOL_Swap@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_No_VTOL_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17347
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17347:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_No_VTOL_Swap@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_No_VTOL_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_No_VTOL_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_No_VTOL_Swap@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_No_VTOL_Swap::~JFW_Base_Defence_Animated_No_VTOL_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_No_VTOL_Swap@@UAE@XZ ENDP	; JFW_Base_Defence_Animated_No_VTOL_Swap::~JFW_Base_Defence_Animated_No_VTOL_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_VTOL_Only_Swap@@UAE@XZ ; JFW_Base_Defence_Animated_VTOL_Only_Swap::~JFW_Base_Defence_Animated_VTOL_Only_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_VTOL_Only_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_VTOL_Only_Swap@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_VTOL_Only_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17355
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17355:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_VTOL_Only_Swap@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_VTOL_Only_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_VTOL_Only_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_VTOL_Only_Swap@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_VTOL_Only_Swap::~JFW_Base_Defence_Animated_VTOL_Only_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_VTOL_Only_Swap@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_VTOL_Only_Swap::~JFW_Base_Defence_Animated_VTOL_Only_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_Swap@@UAE@XZ	; JFW_Base_Defence_Animated_Sound_Swap::~JFW_Base_Defence_Animated_Sound_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_Swap@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17363
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17363:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_Swap@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_Swap@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_Swap::~JFW_Base_Defence_Animated_Sound_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_Swap@@UAE@XZ ENDP	; JFW_Base_Defence_Animated_Sound_Swap::~JFW_Base_Defence_Animated_Sound_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@UAE@XZ ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::~JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17371
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17371:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::~JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap::~JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@UAE@XZ ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::~JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17379
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17379:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::~JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap::~JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@UAE@XZ ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::~JFW_Base_Defence_Animated_Sound_No_VTOL_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17387
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17387:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::~JFW_Base_Defence_Animated_Sound_No_VTOL_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap::~JFW_Base_Defence_Animated_Sound_No_VTOL_Swap
_TEXT	ENDS
PUBLIC	??1JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@UAE@XZ ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::~JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap
; Function compile flags: /Ogty
;	COMDAT ??_GJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@UAEPAXI@Z PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $L17395
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L17395:
	mov	eax, esi
	pop	esi
	ret	4
??_GJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@UAEPAXI@Z ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::`scalar deleting destructor'
; Function compile flags: /Ogty
_TEXT	ENDS
;	COMDAT ??1JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@UAE@XZ
_TEXT	SEGMENT
??1JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@UAE@XZ PROC NEAR ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::~JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap, COMDAT
; _this$ = ecx
	jmp	??1ScriptImpClass@@UAE@XZ		; ScriptImpClass::~ScriptImpClass
??1JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@UAE@XZ ENDP ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap::~JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap
_TEXT	ENDS
PUBLIC	??_C@_0FB@IKDACKCG@MinAttackDistance?$DN0?40?3float?0MaxA@ ; `string'
PUBLIC	??_C@_0CD@GGPACBFF@JFW_User_Controllable_Base_Defen@ ; `string'
EXTRN	_atexit:NEAR
CRT$XCU	SEGMENT
_$S3	DD	FLAT:_$E1
CRT$XCU	ENDS
;	COMDAT ??_C@_0FB@IKDACKCG@MinAttackDistance?$DN0?40?3float?0MaxA@
; File c:\documents and settings\owner\desktop\ssctf 1.3\jfwdef.cpp
CONST	SEGMENT
??_C@_0FB@IKDACKCG@MinAttackDistance?$DN0?40?3float?0MaxA@ DB 'MinAttackD'
	DB	'istance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=1'
	DB	'0.0:float', 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_0CD@GGPACBFF@JFW_User_Controllable_Base_Defen@
CONST	SEGMENT
??_C@_0CD@GGPACBFF@JFW_User_Controllable_Base_Defen@ DB 'JFW_User_Control'
	DB	'lable_Base_Defence', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E1
text$yc	SEGMENT
_$E1	PROC NEAR					; COMDAT

; 4187 : ScriptRegistrant<JFW_User_Controllable_Base_Defence> JFW_User_Controllable_Base_Defence_Registrant("JFW_User_Controllable_Base_Defence","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float");

	push	OFFSET FLAT:??_C@_0FB@IKDACKCG@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0CD@GGPACBFF@JFW_User_Controllable_Base_Defen@
	mov	ecx, OFFSET FLAT:?JFW_User_Controllable_Base_Defence_Registrant@@3V?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@A
	call	??0?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_User_Controllable_Base_Defence>::ScriptRegistrant<JFW_User_Controllable_Base_Defence>
	push	OFFSET FLAT:_$E2
	call	_atexit
	pop	ecx
	ret	0
_$E1	ENDP
text$yc	ENDS
PUBLIC	??_C@_0BB@KBJFBPNA@JFW_Base_Defence?$AA@	; `string'
CRT$XCU	SEGMENT
_$S6	DD	FLAT:_$E4
CRT$XCU	ENDS
;	COMDAT ??_C@_0BB@KBJFBPNA@JFW_Base_Defence?$AA@
CONST	SEGMENT
??_C@_0BB@KBJFBPNA@JFW_Base_Defence?$AA@ DB 'JFW_Base_Defence', 00H ; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E4
text$yc	SEGMENT
_$E4	PROC NEAR					; COMDAT

; 4188 : ScriptRegistrant<JFW_Base_Defence> JFW_Base_Defence_Registrant("JFW_Base_Defence","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float");

	push	OFFSET FLAT:??_C@_0FB@IKDACKCG@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0BB@KBJFBPNA@JFW_Base_Defence?$AA@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence>::ScriptRegistrant<JFW_Base_Defence>
	push	OFFSET FLAT:_$E5
	call	_atexit
	pop	ecx
	ret	0
_$E4	ENDP
text$yc	ENDS
PUBLIC	??_C@_0MJ@NOFIFHJC@MinAttackDistance?$DN0?40?3float?0MaxA@ ; `string'
PUBLIC	??_C@_0BN@DNCPNBPJ@JFW_Base_Defence_No_Aircraft?$AA@ ; `string'
CRT$XCU	SEGMENT
_$S9	DD	FLAT:_$E7
CRT$XCU	ENDS
;	COMDAT ??_C@_0MJ@NOFIFHJC@MinAttackDistance?$DN0?40?3float?0MaxA@
CONST	SEGMENT
??_C@_0MJ@NOFIFHJC@MinAttackDistance?$DN0?40?3float?0MaxA@ DB 'MinAttackD'
	DB	'istance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=1'
	DB	'0.0:float,Preset1:string,Preset2:string,Preset3:string,Preset'
	DB	'4:string,Preset5:string,Preset6:string,Preset7:string,Preset8'
	DB	':string', 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_0BN@DNCPNBPJ@JFW_Base_Defence_No_Aircraft?$AA@
CONST	SEGMENT
??_C@_0BN@DNCPNBPJ@JFW_Base_Defence_No_Aircraft?$AA@ DB 'JFW_Base_Defence'
	DB	'_No_Aircraft', 00H				; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E7
text$yc	SEGMENT
_$E7	PROC NEAR					; COMDAT

; 4189 : ScriptRegistrant<JFW_Base_Defence_No_Aircraft> JFW_Base_Defence_No_Aircraft_Registrant("JFW_Base_Defence_No_Aircraft","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string");

	push	OFFSET FLAT:??_C@_0MJ@NOFIFHJC@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0BN@DNCPNBPJ@JFW_Base_Defence_No_Aircraft?$AA@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_No_Aircraft_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft>::ScriptRegistrant<JFW_Base_Defence_No_Aircraft>
	push	OFFSET FLAT:_$E8
	call	_atexit
	pop	ecx
	ret	0
_$E7	ENDP
text$yc	ENDS
PUBLIC	??_C@_0BP@IJLDFBOP@JFW_Base_Defence_Aircraft_Only?$AA@ ; `string'
CRT$XCU	SEGMENT
_$S12	DD	FLAT:_$E10
CRT$XCU	ENDS
;	COMDAT ??_C@_0BP@IJLDFBOP@JFW_Base_Defence_Aircraft_Only?$AA@
CONST	SEGMENT
??_C@_0BP@IJLDFBOP@JFW_Base_Defence_Aircraft_Only?$AA@ DB 'JFW_Base_Defen'
	DB	'ce_Aircraft_Only', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E10
text$yc	SEGMENT
_$E10	PROC NEAR					; COMDAT

; 4190 : ScriptRegistrant<JFW_Base_Defence_Aircraft_Only> JFW_Base_Defence_Aircraft_Only_Registrant("JFW_Base_Defence_Aircraft_Only","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string");

	push	OFFSET FLAT:??_C@_0MJ@NOFIFHJC@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0BP@IJLDFBOP@JFW_Base_Defence_Aircraft_Only?$AA@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Aircraft_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>::ScriptRegistrant<JFW_Base_Defence_Aircraft_Only>
	push	OFFSET FLAT:_$E11
	call	_atexit
	pop	ecx
	ret	0
_$E10	ENDP
text$yc	ENDS
PUBLIC	??_C@_0BL@FCIBHKPA@JFW_Base_Defence_Secondary?$AA@ ; `string'
CRT$XCU	SEGMENT
_$S15	DD	FLAT:_$E13
CRT$XCU	ENDS
;	COMDAT ??_C@_0BL@FCIBHKPA@JFW_Base_Defence_Secondary?$AA@
CONST	SEGMENT
??_C@_0BL@FCIBHKPA@JFW_Base_Defence_Secondary?$AA@ DB 'JFW_Base_Defence_S'
	DB	'econdary', 00H				; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E13
text$yc	SEGMENT
_$E13	PROC NEAR					; COMDAT

; 4191 : ScriptRegistrant<JFW_Base_Defence_Secondary> JFW_Base_Defence_Secondary_Registrant("JFW_Base_Defence_Secondary","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float");

	push	OFFSET FLAT:??_C@_0FB@IKDACKCG@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0BL@FCIBHKPA@JFW_Base_Defence_Secondary?$AA@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Secondary>::ScriptRegistrant<JFW_Base_Defence_Secondary>
	push	OFFSET FLAT:_$E14
	call	_atexit
	pop	ecx
	ret	0
_$E13	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CH@POJCFMBH@JFW_Base_Defence_No_Aircraft_Sec@ ; `string'
CRT$XCU	SEGMENT
_$S18	DD	FLAT:_$E16
CRT$XCU	ENDS
;	COMDAT ??_C@_0CH@POJCFMBH@JFW_Base_Defence_No_Aircraft_Sec@
CONST	SEGMENT
??_C@_0CH@POJCFMBH@JFW_Base_Defence_No_Aircraft_Sec@ DB 'JFW_Base_Defence'
	DB	'_No_Aircraft_Secondary', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E16
text$yc	SEGMENT
_$E16	PROC NEAR					; COMDAT

; 4192 : ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary> JFW_Base_Defence_No_Aircraft_Secondary_Registrant("JFW_Base_Defence_No_Aircraft_Secondary","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string");

	push	OFFSET FLAT:??_C@_0MJ@NOFIFHJC@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0CH@POJCFMBH@JFW_Base_Defence_No_Aircraft_Sec@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_No_Aircraft_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>::ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Secondary>
	push	OFFSET FLAT:_$E17
	call	_atexit
	pop	ecx
	ret	0
_$E16	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CJ@BOGCGHPK@JFW_Base_Defence_Aircraft_Only_S@ ; `string'
CRT$XCU	SEGMENT
_$S21	DD	FLAT:_$E19
CRT$XCU	ENDS
;	COMDAT ??_C@_0CJ@BOGCGHPK@JFW_Base_Defence_Aircraft_Only_S@
CONST	SEGMENT
??_C@_0CJ@BOGCGHPK@JFW_Base_Defence_Aircraft_Only_S@ DB 'JFW_Base_Defence'
	DB	'_Aircraft_Only_Secondary', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E19
text$yc	SEGMENT
_$E19	PROC NEAR					; COMDAT

; 4193 : ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary> JFW_Base_Defence_Aircraft_Only_Secondary_Registrant("JFW_Base_Defence_Aircraft_Only_Secondary","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string");

	push	OFFSET FLAT:??_C@_0MJ@NOFIFHJC@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0CJ@BOGCGHPK@JFW_Base_Defence_Aircraft_Only_S@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Aircraft_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Secondary>
	push	OFFSET FLAT:_$E20
	call	_atexit
	pop	ecx
	ret	0
_$E19	ENDP
text$yc	ENDS
PUBLIC	??_C@_0FL@DHPLMKGP@MaxAttackDistance?3float?0AttackTi@ ; `string'
PUBLIC	??_C@_0BK@DPHNFKIK@JFW_Base_Defence_Animated?$AA@ ; `string'
CRT$XCU	SEGMENT
_$S24	DD	FLAT:_$E22
CRT$XCU	ENDS
;	COMDAT ??_C@_0FL@DHPLMKGP@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT
??_C@_0FL@DHPLMKGP@MaxAttackDistance?3float?0AttackTi@ DB 'MaxAttackDista'
	DB	'nce:float,AttackTimer:float,Animation:string,LastFrame:float,'
	DB	'PopupTime:float', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_0BK@DPHNFKIK@JFW_Base_Defence_Animated?$AA@
CONST	SEGMENT
??_C@_0BK@DPHNFKIK@JFW_Base_Defence_Animated?$AA@ DB 'JFW_Base_Defence_An'
	DB	'imated', 00H				; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E22
text$yc	SEGMENT
_$E22	PROC NEAR					; COMDAT

; 4194 : ScriptRegistrant<JFW_Base_Defence_Animated> JFW_Base_Defence_Animated_Registrant("JFW_Base_Defence_Animated","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float");

	push	OFFSET FLAT:??_C@_0FL@DHPLMKGP@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0BK@DPHNFKIK@JFW_Base_Defence_Animated?$AA@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated>::ScriptRegistrant<JFW_Base_Defence_Animated>
	push	OFFSET FLAT:_$E23
	call	_atexit
	pop	ecx
	ret	0
_$E22	ENDP
text$yc	ENDS
PUBLIC	??_C@_0ND@DILJJCJO@MaxAttackDistance?3float?0AttackTi@ ; `string'
PUBLIC	??_C@_0CG@GKBOACBA@JFW_Base_Defence_Animated_No_Air@ ; `string'
CRT$XCU	SEGMENT
_$S27	DD	FLAT:_$E25
CRT$XCU	ENDS
;	COMDAT ??_C@_0ND@DILJJCJO@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT
??_C@_0ND@DILJJCJO@MaxAttackDistance?3float?0AttackTi@ DB 'MaxAttackDista'
	DB	'nce:float,AttackTimer:float,Preset1:string,Preset2:string,Pre'
	DB	'set3:string,Preset4:string,Preset5:string,Preset6:string,Pres'
	DB	'et7:string,Preset8:string,Animation:string,LastFrame:float,Po'
	DB	'pupTime:float', 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_0CG@GKBOACBA@JFW_Base_Defence_Animated_No_Air@
CONST	SEGMENT
??_C@_0CG@GKBOACBA@JFW_Base_Defence_Animated_No_Air@ DB 'JFW_Base_Defence'
	DB	'_Animated_No_Aircraft', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E25
text$yc	SEGMENT
_$E25	PROC NEAR					; COMDAT

; 4195 : ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft> JFW_Base_Defence_Animated_No_Aircraft_Registrant("JFW_Base_Defence_Animated_No_Aircraft","MaxAttackDistance:float,AttackTimer:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,Animation:string,LastFrame:float,PopupTime:float");

	push	OFFSET FLAT:??_C@_0ND@DILJJCJO@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CG@GKBOACBA@JFW_Base_Defence_Animated_No_Air@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_No_Aircraft_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>::ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft>
	push	OFFSET FLAT:_$E26
	call	_atexit
	pop	ecx
	ret	0
_$E25	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CI@BJNFMNBF@JFW_Base_Defence_Animated_Aircra@ ; `string'
CRT$XCU	SEGMENT
_$S30	DD	FLAT:_$E28
CRT$XCU	ENDS
;	COMDAT ??_C@_0CI@BJNFMNBF@JFW_Base_Defence_Animated_Aircra@
CONST	SEGMENT
??_C@_0CI@BJNFMNBF@JFW_Base_Defence_Animated_Aircra@ DB 'JFW_Base_Defence'
	DB	'_Animated_Aircraft_Only', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E28
text$yc	SEGMENT
_$E28	PROC NEAR					; COMDAT

; 4196 : ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only> JFW_Base_Defence_Animated_Aircraft_Only_Registrant("JFW_Base_Defence_Animated_Aircraft_Only","MaxAttackDistance:float,AttackTimer:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,Animation:string,LastFrame:float,PopupTime:float");

	push	OFFSET FLAT:??_C@_0ND@DILJJCJO@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CI@BJNFMNBF@JFW_Base_Defence_Animated_Aircra@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Aircraft_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only>
	push	OFFSET FLAT:_$E29
	call	_atexit
	pop	ecx
	ret	0
_$E28	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CE@IHHABJIM@JFW_Base_Defence_Animated_Second@ ; `string'
CRT$XCU	SEGMENT
_$S33	DD	FLAT:_$E31
CRT$XCU	ENDS
;	COMDAT ??_C@_0CE@IHHABJIM@JFW_Base_Defence_Animated_Second@
CONST	SEGMENT
??_C@_0CE@IHHABJIM@JFW_Base_Defence_Animated_Second@ DB 'JFW_Base_Defence'
	DB	'_Animated_Secondary', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E31
text$yc	SEGMENT
_$E31	PROC NEAR					; COMDAT

; 4197 : ScriptRegistrant<JFW_Base_Defence_Animated_Secondary> JFW_Base_Defence_Animated_Secondary_Registrant("JFW_Base_Defence_Animated_Secondary","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float");

	push	OFFSET FLAT:??_C@_0FL@DHPLMKGP@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CE@IHHABJIM@JFW_Base_Defence_Animated_Second@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Secondary>
	push	OFFSET FLAT:_$E32
	call	_atexit
	pop	ecx
	ret	0
_$E31	ENDP
text$yc	ENDS
PUBLIC	??_C@_0DA@LHPKIDIK@JFW_Base_Defence_Animated_No_Air@ ; `string'
CRT$XCU	SEGMENT
_$S36	DD	FLAT:_$E34
CRT$XCU	ENDS
;	COMDAT ??_C@_0DA@LHPKIDIK@JFW_Base_Defence_Animated_No_Air@
CONST	SEGMENT
??_C@_0DA@LHPKIDIK@JFW_Base_Defence_Animated_No_Air@ DB 'JFW_Base_Defence'
	DB	'_Animated_No_Aircraft_Secondary', 00H	; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E34
text$yc	SEGMENT
_$E34	PROC NEAR					; COMDAT

; 4198 : ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary> JFW_Base_Defence_Animated_No_Aircraft_Secondary_Registrant("JFW_Base_Defence_Animated_No_Aircraft_Secondary","MaxAttackDistance:float,AttackTimer:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,Animation:string,LastFrame:float,PopupTime:float");

	push	OFFSET FLAT:??_C@_0ND@DILJJCJO@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0DA@LHPKIDIK@JFW_Base_Defence_Animated_No_Air@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_No_Aircraft_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Secondary>
	push	OFFSET FLAT:_$E35
	call	_atexit
	pop	ecx
	ret	0
_$E34	ENDP
text$yc	ENDS
PUBLIC	??_C@_0DC@MMOBBFIA@JFW_Base_Defence_Animated_Aircra@ ; `string'
CRT$XCU	SEGMENT
_$S39	DD	FLAT:_$E37
CRT$XCU	ENDS
;	COMDAT ??_C@_0DC@MMOBBFIA@JFW_Base_Defence_Animated_Aircra@
CONST	SEGMENT
??_C@_0DC@MMOBBFIA@JFW_Base_Defence_Animated_Aircra@ DB 'JFW_Base_Defence'
	DB	'_Animated_Aircraft_Only_Secondary', 00H	; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E37
text$yc	SEGMENT
_$E37	PROC NEAR					; COMDAT

; 4199 : ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary> JFW_Base_Defence_Animated_Aircraft_Only_Secondary_Registrant("JFW_Base_Defence_Animated_Aircraft_Only_Secondary","MaxAttackDistance:float,AttackTimer:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,Animation:string,LastFrame:float,PopupTime:float");

	push	OFFSET FLAT:??_C@_0ND@DILJJCJO@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0DC@MMOBBFIA@JFW_Base_Defence_Animated_Aircra@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Aircraft_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Secondary>
	push	OFFSET FLAT:_$E38
	call	_atexit
	pop	ecx
	ret	0
_$E37	ENDP
text$yc	ENDS
PUBLIC	??_C@_0BJ@FCILBLNB@JFW_Base_Defence_No_VTOL?$AA@ ; `string'
CRT$XCU	SEGMENT
_$S42	DD	FLAT:_$E40
CRT$XCU	ENDS
;	COMDAT ??_C@_0BJ@FCILBLNB@JFW_Base_Defence_No_VTOL?$AA@
CONST	SEGMENT
??_C@_0BJ@FCILBLNB@JFW_Base_Defence_No_VTOL?$AA@ DB 'JFW_Base_Defence_No_'
	DB	'VTOL', 00H					; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E40
text$yc	SEGMENT
_$E40	PROC NEAR					; COMDAT

; 4200 : ScriptRegistrant<JFW_Base_Defence_No_VTOL> JFW_Base_Defence_No_VTOL_Registrant("JFW_Base_Defence_No_VTOL","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float");

	push	OFFSET FLAT:??_C@_0FB@IKDACKCG@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0BJ@FCILBLNB@JFW_Base_Defence_No_VTOL?$AA@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_No_VTOL_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_No_VTOL>::ScriptRegistrant<JFW_Base_Defence_No_VTOL>
	push	OFFSET FLAT:_$E41
	call	_atexit
	pop	ecx
	ret	0
_$E40	ENDP
text$yc	ENDS
PUBLIC	??_C@_0BL@OKICGFAM@JFW_Base_Defence_VTOL_Only?$AA@ ; `string'
CRT$XCU	SEGMENT
_$S45	DD	FLAT:_$E43
CRT$XCU	ENDS
;	COMDAT ??_C@_0BL@OKICGFAM@JFW_Base_Defence_VTOL_Only?$AA@
CONST	SEGMENT
??_C@_0BL@OKICGFAM@JFW_Base_Defence_VTOL_Only?$AA@ DB 'JFW_Base_Defence_V'
	DB	'TOL_Only', 00H				; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E43
text$yc	SEGMENT
_$E43	PROC NEAR					; COMDAT

; 4201 : ScriptRegistrant<JFW_Base_Defence_VTOL_Only> JFW_Base_Defence_VTOL_Only_Registrant("JFW_Base_Defence_VTOL_Only","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float");

	push	OFFSET FLAT:??_C@_0FB@IKDACKCG@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0BL@OKICGFAM@JFW_Base_Defence_VTOL_Only?$AA@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_VTOL_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only>::ScriptRegistrant<JFW_Base_Defence_VTOL_Only>
	push	OFFSET FLAT:_$E44
	call	_atexit
	pop	ecx
	ret	0
_$E43	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CD@NMAIEDJP@JFW_Base_Defence_No_VTOL_Seconda@ ; `string'
CRT$XCU	SEGMENT
_$S48	DD	FLAT:_$E46
CRT$XCU	ENDS
;	COMDAT ??_C@_0CD@NMAIEDJP@JFW_Base_Defence_No_VTOL_Seconda@
CONST	SEGMENT
??_C@_0CD@NMAIEDJP@JFW_Base_Defence_No_VTOL_Seconda@ DB 'JFW_Base_Defence'
	DB	'_No_VTOL_Secondary', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E46
text$yc	SEGMENT
_$E46	PROC NEAR					; COMDAT

; 4202 : ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary> JFW_Base_Defence_No_VTOL_Secondary_Registrant("JFW_Base_Defence_No_VTOL_Secondary","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float");

	push	OFFSET FLAT:??_C@_0FB@IKDACKCG@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0CD@NMAIEDJP@JFW_Base_Defence_No_VTOL_Seconda@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_No_VTOL_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>::ScriptRegistrant<JFW_Base_Defence_No_VTOL_Secondary>
	push	OFFSET FLAT:_$E47
	call	_atexit
	pop	ecx
	ret	0
_$E46	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CF@ECFDEFMN@JFW_Base_Defence_VTOL_Only_Secon@ ; `string'
CRT$XCU	SEGMENT
_$S51	DD	FLAT:_$E49
CRT$XCU	ENDS
;	COMDAT ??_C@_0CF@ECFDEFMN@JFW_Base_Defence_VTOL_Only_Secon@
CONST	SEGMENT
??_C@_0CF@ECFDEFMN@JFW_Base_Defence_VTOL_Only_Secon@ DB 'JFW_Base_Defence'
	DB	'_VTOL_Only_Secondary', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E49
text$yc	SEGMENT
_$E49	PROC NEAR					; COMDAT

; 4203 : ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary> JFW_Base_Defence_VTOL_Only_Secondary_Registrant("JFW_Base_Defence_VTOL_Only_Secondary","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float");

	push	OFFSET FLAT:??_C@_0FB@IKDACKCG@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0CF@ECFDEFMN@JFW_Base_Defence_VTOL_Only_Secon@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_VTOL_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Secondary>
	push	OFFSET FLAT:_$E50
	call	_atexit
	pop	ecx
	ret	0
_$E49	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CC@BEHPKOJP@JFW_Base_Defence_Animated_No_VTO@ ; `string'
CRT$XCU	SEGMENT
_$S54	DD	FLAT:_$E52
CRT$XCU	ENDS
;	COMDAT ??_C@_0CC@BEHPKOJP@JFW_Base_Defence_Animated_No_VTO@
CONST	SEGMENT
??_C@_0CC@BEHPKOJP@JFW_Base_Defence_Animated_No_VTO@ DB 'JFW_Base_Defence'
	DB	'_Animated_No_VTOL', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E52
text$yc	SEGMENT
_$E52	PROC NEAR					; COMDAT

; 4204 : ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL> JFW_Base_Defence_Animated_No_VTOL_Registrant("JFW_Base_Defence_Animated_No_VTOL","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float");

	push	OFFSET FLAT:??_C@_0FL@DHPLMKGP@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CC@BEHPKOJP@JFW_Base_Defence_Animated_No_VTO@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_No_VTOL_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>::ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL>
	push	OFFSET FLAT:_$E53
	call	_atexit
	pop	ecx
	ret	0
_$E52	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CE@DPHDAGHA@JFW_Base_Defence_Animated_VTOL_O@ ; `string'
CRT$XCU	SEGMENT
_$S57	DD	FLAT:_$E55
CRT$XCU	ENDS
;	COMDAT ??_C@_0CE@DPHDAGHA@JFW_Base_Defence_Animated_VTOL_O@
CONST	SEGMENT
??_C@_0CE@DPHDAGHA@JFW_Base_Defence_Animated_VTOL_O@ DB 'JFW_Base_Defence'
	DB	'_Animated_VTOL_Only', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E55
text$yc	SEGMENT
_$E55	PROC NEAR					; COMDAT

; 4205 : ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only> JFW_Base_Defence_Animated_VTOL_Only_Registrant("JFW_Base_Defence_Animated_VTOL_Only","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float");

	push	OFFSET FLAT:??_C@_0FL@DHPLMKGP@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CE@DPHDAGHA@JFW_Base_Defence_Animated_VTOL_O@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_VTOL_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only>
	push	OFFSET FLAT:_$E56
	call	_atexit
	pop	ecx
	ret	0
_$E55	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CM@CHCKLKN@JFW_Base_Defence_Animated_No_VTO@ ; `string'
CRT$XCU	SEGMENT
_$S60	DD	FLAT:_$E58
CRT$XCU	ENDS
;	COMDAT ??_C@_0CM@CHCKLKN@JFW_Base_Defence_Animated_No_VTO@
CONST	SEGMENT
??_C@_0CM@CHCKLKN@JFW_Base_Defence_Animated_No_VTO@ DB 'JFW_Base_Defence_'
	DB	'Animated_No_VTOL_Secondary', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E58
text$yc	SEGMENT
_$E58	PROC NEAR					; COMDAT

; 4206 : ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary> JFW_Base_Defence_Animated_No_VTOL_Secondary_Registrant("JFW_Base_Defence_Animated_No_VTOL_Secondary","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float");

	push	OFFSET FLAT:??_C@_0FL@DHPLMKGP@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CM@CHCKLKN@JFW_Base_Defence_Animated_No_VTO@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_No_VTOL_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Secondary>
	push	OFFSET FLAT:_$E59
	call	_atexit
	pop	ecx
	ret	0
_$E58	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CO@BPCKFIM@JFW_Base_Defence_Animated_VTOL_O@ ; `string'
CRT$XCU	SEGMENT
_$S63	DD	FLAT:_$E61
CRT$XCU	ENDS
;	COMDAT ??_C@_0CO@BPCKFIM@JFW_Base_Defence_Animated_VTOL_O@
CONST	SEGMENT
??_C@_0CO@BPCKFIM@JFW_Base_Defence_Animated_VTOL_O@ DB 'JFW_Base_Defence_'
	DB	'Animated_VTOL_Only_Secondary', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E61
text$yc	SEGMENT
_$E61	PROC NEAR					; COMDAT

; 4207 : ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary> JFW_Base_Defence_Animated_VTOL_Only_Secondary_Registrant("JFW_Base_Defence_Animated_VTOL_Only_Secondary","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float");

	push	OFFSET FLAT:??_C@_0FL@DHPLMKGP@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CO@BPCKFIM@JFW_Base_Defence_Animated_VTOL_O@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_VTOL_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Secondary>
	push	OFFSET FLAT:_$E62
	call	_atexit
	pop	ecx
	ret	0
_$E61	ENDP
text$yc	ENDS
PUBLIC	??_C@_0GI@POJMHCC@MaxAttackDistance?3float?0AttackTi@ ; `string'
PUBLIC	??_C@_0CA@CADGCBIE@JFW_Base_Defence_Animated_Sound?$AA@ ; `string'
CRT$XCU	SEGMENT
_$S66	DD	FLAT:_$E64
CRT$XCU	ENDS
;	COMDAT ??_C@_0GI@POJMHCC@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT
??_C@_0GI@POJMHCC@MaxAttackDistance?3float?0AttackTi@ DB 'MaxAttackDistan'
	DB	'ce:float,AttackTimer:float,Animation:string,LastFrame:float,P'
	DB	'opupTime:float,Sound:string', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_0CA@CADGCBIE@JFW_Base_Defence_Animated_Sound?$AA@
CONST	SEGMENT
??_C@_0CA@CADGCBIE@JFW_Base_Defence_Animated_Sound?$AA@ DB 'JFW_Base_Defe'
	DB	'nce_Animated_Sound', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E64
text$yc	SEGMENT
_$E64	PROC NEAR					; COMDAT

; 4208 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound> JFW_Base_Defence_Animated_Sound_Registrant("JFW_Base_Defence_Animated_Sound","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float,Sound:string");

	push	OFFSET FLAT:??_C@_0GI@POJMHCC@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CA@CADGCBIE@JFW_Base_Defence_Animated_Sound?$AA@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound>
	push	OFFSET FLAT:_$E65
	call	_atexit
	pop	ecx
	ret	0
_$E64	ENDP
text$yc	ENDS
PUBLIC	??_C@_0OA@INLJJAGF@MaxAttackDistance?3float?0AttackTi@ ; `string'
PUBLIC	??_C@_0CM@ELAPHFEO@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S69	DD	FLAT:_$E67
CRT$XCU	ENDS
;	COMDAT ??_C@_0OA@INLJJAGF@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT
??_C@_0OA@INLJJAGF@MaxAttackDistance?3float?0AttackTi@ DB 'MaxAttackDista'
	DB	'nce:float,AttackTimer:float,Preset1:string,Preset2:string,Pre'
	DB	'set3:string,Preset4:string,Preset5:string,Preset6:string,Pres'
	DB	'et7:string,Preset8:string,Animation:string,LastFrame:float,Po'
	DB	'pupTime:float,Sound:string', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_0CM@ELAPHFEO@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0CM@ELAPHFEO@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence'
	DB	'_Animated_Sound_No_Aircraft', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E67
text$yc	SEGMENT
_$E67	PROC NEAR					; COMDAT

; 4209 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft> JFW_Base_Defence_Animated_Sound_No_Aircraft_Registrant("JFW_Base_Defence_Animated_Sound_No_Aircraft","MaxAttackDistance:float,AttackTimer:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,Animation:string,LastFrame:float,PopupTime:float,Sound:string");

	push	OFFSET FLAT:??_C@_0OA@INLJJAGF@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CM@ELAPHFEO@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_No_Aircraft_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft>
	push	OFFSET FLAT:_$E68
	call	_atexit
	pop	ecx
	ret	0
_$E67	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CO@PDIMHIEB@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S72	DD	FLAT:_$E70
CRT$XCU	ENDS
;	COMDAT ??_C@_0CO@PDIMHIEB@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0CO@PDIMHIEB@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence'
	DB	'_Animated_Sound_Aircraft_Only', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E70
text$yc	SEGMENT
_$E70	PROC NEAR					; COMDAT

; 4210 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only> JFW_Base_Defence_Animated_Sound_Aircraft_Only_Registrant("JFW_Base_Defence_Animated_Sound_Aircraft_Only","MaxAttackDistance:float,AttackTimer:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,Animation:string,LastFrame:float,PopupTime:float,Sound:string");

	push	OFFSET FLAT:??_C@_0OA@INLJJAGF@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CO@PDIMHIEB@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_Aircraft_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only>
	push	OFFSET FLAT:_$E71
	call	_atexit
	pop	ecx
	ret	0
_$E70	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CK@OCOEGKL@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S75	DD	FLAT:_$E73
CRT$XCU	ENDS
;	COMDAT ??_C@_0CK@OCOEGKL@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0CK@OCOEGKL@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence_'
	DB	'Animated_Sound_Secondary', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E73
text$yc	SEGMENT
_$E73	PROC NEAR					; COMDAT

; 4211 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary> JFW_Base_Defence_Animated_Sound_Secondary_Registrant("JFW_Base_Defence_Animated_Sound_Secondary","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float,Sound:string");

	push	OFFSET FLAT:??_C@_0GI@POJMHCC@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CK@OCOEGKL@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Secondary>
	push	OFFSET FLAT:_$E74
	call	_atexit
	pop	ecx
	ret	0
_$E73	ENDP
text$yc	ENDS
PUBLIC	??_C@_0DG@FNDOJIPA@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S78	DD	FLAT:_$E76
CRT$XCU	ENDS
;	COMDAT ??_C@_0DG@FNDOJIPA@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0DG@FNDOJIPA@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence'
	DB	'_Animated_Sound_No_Aircraft_Secondary', 00H	; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E76
text$yc	SEGMENT
_$E76	PROC NEAR					; COMDAT

; 4212 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary> JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary_Registrant("JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary","MaxAttackDistance:float,AttackTimer:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,Animation:string,LastFrame:float,PopupTime:float,Sound:string");

	push	OFFSET FLAT:??_C@_0OA@INLJJAGF@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0DG@FNDOJIPA@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary>
	push	OFFSET FLAT:_$E77
	call	_atexit
	pop	ecx
	ret	0
_$E76	ENDP
text$yc	ENDS
PUBLIC	??_C@_0DI@JDFEKHNE@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S81	DD	FLAT:_$E79
CRT$XCU	ENDS
;	COMDAT ??_C@_0DI@JDFEKHNE@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0DI@JDFEKHNE@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence'
	DB	'_Animated_Sound_Aircraft_Only_Secondary', 00H ; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E79
text$yc	SEGMENT
_$E79	PROC NEAR					; COMDAT

; 4213 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary> JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary_Registrant("JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary","MaxAttackDistance:float,AttackTimer:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,Animation:string,LastFrame:float,PopupTime:float,Sound:string");

	push	OFFSET FLAT:??_C@_0OA@INLJJAGF@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0DI@JDFEKHNE@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary>
	push	OFFSET FLAT:_$E80
	call	_atexit
	pop	ecx
	ret	0
_$E79	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CI@GILFMCIA@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S84	DD	FLAT:_$E82
CRT$XCU	ENDS
;	COMDAT ??_C@_0CI@GILFMCIA@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0CI@GILFMCIA@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence'
	DB	'_Animated_Sound_No_VTOL', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E82
text$yc	SEGMENT
_$E82	PROC NEAR					; COMDAT

; 4214 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL> JFW_Base_Defence_Animated_Sound_No_VTOL_Registrant("JFW_Base_Defence_Animated_Sound_No_VTOL","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float,Sound:string");

	push	OFFSET FLAT:??_C@_0GI@POJMHCC@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CI@GILFMCIA@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_No_VTOL_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL>
	push	OFFSET FLAT:_$E83
	call	_atexit
	pop	ecx
	ret	0
_$E82	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CK@LGCNFJFH@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S87	DD	FLAT:_$E85
CRT$XCU	ENDS
;	COMDAT ??_C@_0CK@LGCNFJFH@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0CK@LGCNFJFH@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence'
	DB	'_Animated_Sound_VTOL_Only', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E85
text$yc	SEGMENT
_$E85	PROC NEAR					; COMDAT

; 4215 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only> JFW_Base_Defence_Animated_Sound_VTOL_Only_Registrant("JFW_Base_Defence_Animated_Sound_VTOL_Only","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float,Sound:string");

	push	OFFSET FLAT:??_C@_0GI@POJMHCC@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CK@LGCNFJFH@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_VTOL_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only>
	push	OFFSET FLAT:_$E86
	call	_atexit
	pop	ecx
	ret	0
_$E85	ENDP
text$yc	ENDS
PUBLIC	??_C@_0DC@KOCOOCNI@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S90	DD	FLAT:_$E88
CRT$XCU	ENDS
;	COMDAT ??_C@_0DC@KOCOOCNI@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0DC@KOCOOCNI@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence'
	DB	'_Animated_Sound_No_VTOL_Secondary', 00H	; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E88
text$yc	SEGMENT
_$E88	PROC NEAR					; COMDAT

; 4216 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary> JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary_Registrant("JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float,Sound:string");

	push	OFFSET FLAT:??_C@_0GI@POJMHCC@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0DC@KOCOOCNI@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary>
	push	OFFSET FLAT:_$E89
	call	_atexit
	pop	ecx
	ret	0
_$E88	ENDP
text$yc	ENDS
PUBLIC	??_C@_0DE@FMLKHNFH@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S93	DD	FLAT:_$E91
CRT$XCU	ENDS
;	COMDAT ??_C@_0DE@FMLKHNFH@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0DE@FMLKHNFH@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence'
	DB	'_Animated_Sound_VTOL_Only_Secondary', 00H	; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E91
text$yc	SEGMENT
_$E91	PROC NEAR					; COMDAT

; 4217 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary> JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary_Registrant("JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float,Sound:string");

	push	OFFSET FLAT:??_C@_0GI@POJMHCC@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0DE@FMLKHNFH@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary>
	push	OFFSET FLAT:_$E92
	call	_atexit
	pop	ecx
	ret	0
_$E91	ENDP
text$yc	ENDS
PUBLIC	??_C@_0GB@DAFPEPK@MinAttackDistance?$DN0?40?3float?0MaxA@ ; `string'
PUBLIC	??_C@_0BG@NPOCIANO@JFW_Base_Defence_Swap?$AA@	; `string'
CRT$XCU	SEGMENT
_$S96	DD	FLAT:_$E94
CRT$XCU	ENDS
;	COMDAT ??_C@_0GB@DAFPEPK@MinAttackDistance?$DN0?40?3float?0MaxA@
CONST	SEGMENT
??_C@_0GB@DAFPEPK@MinAttackDistance?$DN0?40?3float?0MaxA@ DB 'MinAttackDi'
	DB	'stance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10'
	DB	'.0:float,SwapMessage:int', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_0BG@NPOCIANO@JFW_Base_Defence_Swap?$AA@
CONST	SEGMENT
??_C@_0BG@NPOCIANO@JFW_Base_Defence_Swap?$AA@ DB 'JFW_Base_Defence_Swap', 00H ; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E94
text$yc	SEGMENT
_$E94	PROC NEAR					; COMDAT

; 4218 : ScriptRegistrant<JFW_Base_Defence_Swap> JFW_Base_Defence_Swap_Registrant("JFW_Base_Defence_Swap","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0GB@DAFPEPK@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0BG@NPOCIANO@JFW_Base_Defence_Swap?$AA@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Swap>::ScriptRegistrant<JFW_Base_Defence_Swap>
	push	OFFSET FLAT:_$E95
	call	_atexit
	pop	ecx
	ret	0
_$E94	ENDP
text$yc	ENDS
PUBLIC	??_C@_0NJ@PGDEHEDC@MinAttackDistance?$DN0?40?3float?0MaxA@ ; `string'
PUBLIC	??_C@_0CC@JAJMOKEO@JFW_Base_Defence_No_Aircraft_Swa@ ; `string'
CRT$XCU	SEGMENT
_$S99	DD	FLAT:_$E97
CRT$XCU	ENDS
;	COMDAT ??_C@_0NJ@PGDEHEDC@MinAttackDistance?$DN0?40?3float?0MaxA@
CONST	SEGMENT
??_C@_0NJ@PGDEHEDC@MinAttackDistance?$DN0?40?3float?0MaxA@ DB 'MinAttackD'
	DB	'istance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=1'
	DB	'0.0:float,Preset1:string,Preset2:string,Preset3:string,Preset'
	DB	'4:string,Preset5:string,Preset6:string,Preset7:string,Preset8'
	DB	':string,SwapMessage:int', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_0CC@JAJMOKEO@JFW_Base_Defence_No_Aircraft_Swa@
CONST	SEGMENT
??_C@_0CC@JAJMOKEO@JFW_Base_Defence_No_Aircraft_Swa@ DB 'JFW_Base_Defence'
	DB	'_No_Aircraft_Swap', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E97
text$yc	SEGMENT
_$E97	PROC NEAR					; COMDAT

; 4219 : ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap> JFW_Base_Defence_No_Aircraft_Swap_Registrant("JFW_Base_Defence_No_Aircraft_Swap","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0NJ@PGDEHEDC@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0CC@JAJMOKEO@JFW_Base_Defence_No_Aircraft_Swa@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_No_Aircraft_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>::ScriptRegistrant<JFW_Base_Defence_No_Aircraft_Swap>
	push	OFFSET FLAT:_$E98
	call	_atexit
	pop	ecx
	ret	0
_$E97	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CE@OGMFBEHP@JFW_Base_Defence_Aircraft_Only_S@ ; `string'
CRT$XCU	SEGMENT
_$S102	DD	FLAT:_$E100
CRT$XCU	ENDS
;	COMDAT ??_C@_0CE@OGMFBEHP@JFW_Base_Defence_Aircraft_Only_S@
CONST	SEGMENT
??_C@_0CE@OGMFBEHP@JFW_Base_Defence_Aircraft_Only_S@ DB 'JFW_Base_Defence'
	DB	'_Aircraft_Only_Swap', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E100
text$yc	SEGMENT
_$E100	PROC NEAR					; COMDAT

; 4220 : ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap> JFW_Base_Defence_Aircraft_Only_Swap_Registrant("JFW_Base_Defence_Aircraft_Only_Swap","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0NJ@PGDEHEDC@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0CE@OGMFBEHP@JFW_Base_Defence_Aircraft_Only_S@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Aircraft_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Aircraft_Only_Swap>
	push	OFFSET FLAT:_$E101
	call	_atexit
	pop	ecx
	ret	0
_$E100	ENDP
text$yc	ENDS
PUBLIC	??_C@_0GL@JBHEDCDO@MaxAttackDistance?3float?0AttackTi@ ; `string'
PUBLIC	??_C@_0BP@EJLINJDH@JFW_Base_Defence_Animated_Swap?$AA@ ; `string'
CRT$XCU	SEGMENT
_$S105	DD	FLAT:_$E103
CRT$XCU	ENDS
;	COMDAT ??_C@_0GL@JBHEDCDO@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT
??_C@_0GL@JBHEDCDO@MaxAttackDistance?3float?0AttackTi@ DB 'MaxAttackDista'
	DB	'nce:float,AttackTimer:float,Animation:string,LastFrame:float,'
	DB	'PopupTime:float,SwapMessage:int', 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_0BP@EJLINJDH@JFW_Base_Defence_Animated_Swap?$AA@
CONST	SEGMENT
??_C@_0BP@EJLINJDH@JFW_Base_Defence_Animated_Swap?$AA@ DB 'JFW_Base_Defen'
	DB	'ce_Animated_Swap', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E103
text$yc	SEGMENT
_$E103	PROC NEAR					; COMDAT

; 4221 : ScriptRegistrant<JFW_Base_Defence_Animated_Swap> JFW_Base_Defence_Animated_Swap_Registrant("JFW_Base_Defence_Animated_Swap","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0GL@JBHEDCDO@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0BP@EJLINJDH@JFW_Base_Defence_Animated_Swap?$AA@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Swap>
	push	OFFSET FLAT:_$E104
	call	_atexit
	pop	ecx
	ret	0
_$E103	ENDP
text$yc	ENDS
PUBLIC	??_C@_0OD@HKDADDJO@MaxAttackDistance?3float?0AttackTi@ ; `string'
PUBLIC	??_C@_0CL@FBOKBNKD@JFW_Base_Defence_Animated_No_Air@ ; `string'
CRT$XCU	SEGMENT
_$S108	DD	FLAT:_$E106
CRT$XCU	ENDS
;	COMDAT ??_C@_0OD@HKDADDJO@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT
??_C@_0OD@HKDADDJO@MaxAttackDistance?3float?0AttackTi@ DB 'MaxAttackDista'
	DB	'nce:float,AttackTimer:float,Preset1:string,Preset2:string,Pre'
	DB	'set3:string,Preset4:string,Preset5:string,Preset6:string,Pres'
	DB	'et7:string,Preset8:string,Animation:string,LastFrame:float,Po'
	DB	'pupTime:float,SwapMessage:int', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_0CL@FBOKBNKD@JFW_Base_Defence_Animated_No_Air@
CONST	SEGMENT
??_C@_0CL@FBOKBNKD@JFW_Base_Defence_Animated_No_Air@ DB 'JFW_Base_Defence'
	DB	'_Animated_No_Aircraft_Swap', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E106
text$yc	SEGMENT
_$E106	PROC NEAR					; COMDAT

; 4222 : ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap> JFW_Base_Defence_Animated_No_Aircraft_Swap_Registrant("JFW_Base_Defence_Animated_No_Aircraft_Swap","MaxAttackDistance:float,AttackTimer:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,Animation:string,LastFrame:float,PopupTime:float,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0OD@HKDADDJO@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CL@FBOKBNKD@JFW_Base_Defence_Animated_No_Air@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_No_Aircraft_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_No_Aircraft_Swap>
	push	OFFSET FLAT:_$E107
	call	_atexit
	pop	ecx
	ret	0
_$E106	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CN@COMMDPBH@JFW_Base_Defence_Animated_Aircra@ ; `string'
CRT$XCU	SEGMENT
_$S111	DD	FLAT:_$E109
CRT$XCU	ENDS
;	COMDAT ??_C@_0CN@COMMDPBH@JFW_Base_Defence_Animated_Aircra@
CONST	SEGMENT
??_C@_0CN@COMMDPBH@JFW_Base_Defence_Animated_Aircra@ DB 'JFW_Base_Defence'
	DB	'_Animated_Aircraft_Only_Swap', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E109
text$yc	SEGMENT
_$E109	PROC NEAR					; COMDAT

; 4223 : ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap> JFW_Base_Defence_Animated_Aircraft_Only_Swap_Registrant("JFW_Base_Defence_Animated_Aircraft_Only_Swap","MaxAttackDistance:float,AttackTimer:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,Animation:string,LastFrame:float,PopupTime:float,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0OD@HKDADDJO@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CN@COMMDPBH@JFW_Base_Defence_Animated_Aircra@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Aircraft_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Aircraft_Only_Swap>
	push	OFFSET FLAT:_$E110
	call	_atexit
	pop	ecx
	ret	0
_$E109	ENDP
text$yc	ENDS
PUBLIC	??_C@_0BO@EEMJACDN@JFW_Base_Defence_No_VTOL_Swap?$AA@ ; `string'
CRT$XCU	SEGMENT
_$S114	DD	FLAT:_$E112
CRT$XCU	ENDS
;	COMDAT ??_C@_0BO@EEMJACDN@JFW_Base_Defence_No_VTOL_Swap?$AA@
CONST	SEGMENT
??_C@_0BO@EEMJACDN@JFW_Base_Defence_No_VTOL_Swap?$AA@ DB 'JFW_Base_Defenc'
	DB	'e_No_VTOL_Swap', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E112
text$yc	SEGMENT
_$E112	PROC NEAR					; COMDAT

; 4224 : ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap> JFW_Base_Defence_No_VTOL_Swap_Registrant("JFW_Base_Defence_No_VTOL_Swap","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0GB@DAFPEPK@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0BO@EEMJACDN@JFW_Base_Defence_No_VTOL_Swap?$AA@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_No_VTOL_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>::ScriptRegistrant<JFW_Base_Defence_No_VTOL_Swap>
	push	OFFSET FLAT:_$E113
	call	_atexit
	pop	ecx
	ret	0
_$E112	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CA@JNIBHBEF@JFW_Base_Defence_VTOL_Only_Swap?$AA@ ; `string'
CRT$XCU	SEGMENT
_$S117	DD	FLAT:_$E115
CRT$XCU	ENDS
;	COMDAT ??_C@_0CA@JNIBHBEF@JFW_Base_Defence_VTOL_Only_Swap?$AA@
CONST	SEGMENT
??_C@_0CA@JNIBHBEF@JFW_Base_Defence_VTOL_Only_Swap?$AA@ DB 'JFW_Base_Defe'
	DB	'nce_VTOL_Only_Swap', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E115
text$yc	SEGMENT
_$E115	PROC NEAR					; COMDAT

; 4225 : ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap> JFW_Base_Defence_VTOL_Only_Swap_Registrant("JFW_Base_Defence_VTOL_Only_Swap","MinAttackDistance=0.0:float,MaxAttackDistance=300.0:float,AttackTimer=10.0:float,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0GB@DAFPEPK@MinAttackDistance?$DN0?40?3float?0MaxA@
	push	OFFSET FLAT:??_C@_0CA@JNIBHBEF@JFW_Base_Defence_VTOL_Only_Swap?$AA@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_VTOL_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_VTOL_Only_Swap>
	push	OFFSET FLAT:_$E116
	call	_atexit
	pop	ecx
	ret	0
_$E115	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CH@JNEIGJDC@JFW_Base_Defence_Animated_No_VTO@ ; `string'
CRT$XCU	SEGMENT
_$S120	DD	FLAT:_$E118
CRT$XCU	ENDS
;	COMDAT ??_C@_0CH@JNEIGJDC@JFW_Base_Defence_Animated_No_VTO@
CONST	SEGMENT
??_C@_0CH@JNEIGJDC@JFW_Base_Defence_Animated_No_VTO@ DB 'JFW_Base_Defence'
	DB	'_Animated_No_VTOL_Swap', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E118
text$yc	SEGMENT
_$E118	PROC NEAR					; COMDAT

; 4226 : ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap> JFW_Base_Defence_Animated_No_VTOL_Swap_Registrant("JFW_Base_Defence_Animated_No_VTOL_Swap","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0GL@JBHEDCDO@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CH@JNEIGJDC@JFW_Base_Defence_Animated_No_VTO@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_No_VTOL_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_No_VTOL_Swap>
	push	OFFSET FLAT:_$E119
	call	_atexit
	pop	ecx
	ret	0
_$E118	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CJ@MAHJAMNL@JFW_Base_Defence_Animated_VTOL_O@ ; `string'
CRT$XCU	SEGMENT
_$S123	DD	FLAT:_$E121
CRT$XCU	ENDS
;	COMDAT ??_C@_0CJ@MAHJAMNL@JFW_Base_Defence_Animated_VTOL_O@
CONST	SEGMENT
??_C@_0CJ@MAHJAMNL@JFW_Base_Defence_Animated_VTOL_O@ DB 'JFW_Base_Defence'
	DB	'_Animated_VTOL_Only_Swap', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E121
text$yc	SEGMENT
_$E121	PROC NEAR					; COMDAT

; 4227 : ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap> JFW_Base_Defence_Animated_VTOL_Only_Swap_Registrant("JFW_Base_Defence_Animated_VTOL_Only_Swap","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0GL@JBHEDCDO@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CJ@MAHJAMNL@JFW_Base_Defence_Animated_VTOL_O@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_VTOL_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_VTOL_Only_Swap>
	push	OFFSET FLAT:_$E122
	call	_atexit
	pop	ecx
	ret	0
_$E121	ENDP
text$yc	ENDS
PUBLIC	??_C@_0HI@JAOIDCBC@MaxAttackDistance?3float?0AttackTi@ ; `string'
PUBLIC	??_C@_0CF@PLCDCMHE@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S126	DD	FLAT:_$E124
CRT$XCU	ENDS
;	COMDAT ??_C@_0HI@JAOIDCBC@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT
??_C@_0HI@JAOIDCBC@MaxAttackDistance?3float?0AttackTi@ DB 'MaxAttackDista'
	DB	'nce:float,AttackTimer:float,Animation:string,LastFrame:float,'
	DB	'PopupTime:float,Sound:string,SwapMessage:int', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0CF@PLCDCMHE@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0CF@PLCDCMHE@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence'
	DB	'_Animated_Sound_Swap', 00H			; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E124
text$yc	SEGMENT
_$E124	PROC NEAR					; COMDAT

; 4228 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap> JFW_Base_Defence_Animated_Sound_Swap_Registrant("JFW_Base_Defence_Animated_Sound_Swap","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float,Sound:string,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0HI@JAOIDCBC@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CF@PLCDCMHE@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Swap>
	push	OFFSET FLAT:_$E125
	call	_atexit
	pop	ecx
	ret	0
_$E124	ENDP
text$yc	ENDS
PUBLIC	??_C@_0PA@LBMKIMHE@MaxAttackDistance?3float?0AttackTi@ ; `string'
PUBLIC	??_C@_0DB@LBFKCIII@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S129	DD	FLAT:_$E127
CRT$XCU	ENDS
;	COMDAT ??_C@_0PA@LBMKIMHE@MaxAttackDistance?3float?0AttackTi@
CONST	SEGMENT
??_C@_0PA@LBMKIMHE@MaxAttackDistance?3float?0AttackTi@ DB 'MaxAttackDista'
	DB	'nce:float,AttackTimer:float,Preset1:string,Preset2:string,Pre'
	DB	'set3:string,Preset4:string,Preset5:string,Preset6:string,Pres'
	DB	'et7:string,Preset8:string,Animation:string,LastFrame:float,Po'
	DB	'pupTime:float,Sound:string,SwapMessage:int', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0DB@LBFKCIII@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0DB@LBFKCIII@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence'
	DB	'_Animated_Sound_No_Aircraft_Swap', 00H	; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E127
text$yc	SEGMENT
_$E127	PROC NEAR					; COMDAT

; 4229 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap> JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap_Registrant("JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap","MaxAttackDistance:float,AttackTimer:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,Animation:string,LastFrame:float,PopupTime:float,Sound:string,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0PA@LBMKIMHE@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0DB@LBFKCIII@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap>
	push	OFFSET FLAT:_$E128
	call	_atexit
	pop	ecx
	ret	0
_$E127	ENDP
text$yc	ENDS
PUBLIC	??_C@_0DD@OAPOGON@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S132	DD	FLAT:_$E130
CRT$XCU	ENDS
;	COMDAT ??_C@_0DD@OAPOGON@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0DD@OAPOGON@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence_'
	DB	'Animated_Sound_Aircraft_Only_Swap', 00H	; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E130
text$yc	SEGMENT
_$E130	PROC NEAR					; COMDAT

; 4230 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap> JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap_Registrant("JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap","MaxAttackDistance:float,AttackTimer:float,Preset1:string,Preset2:string,Preset3:string,Preset4:string,Preset5:string,Preset6:string,Preset7:string,Preset8:string,Animation:string,LastFrame:float,PopupTime:float,Sound:string,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0PA@LBMKIMHE@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0DD@OAPOGON@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap>
	push	OFFSET FLAT:_$E131
	call	_atexit
	pop	ecx
	ret	0
_$E130	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CN@BBLKAELG@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S135	DD	FLAT:_$E133
CRT$XCU	ENDS
;	COMDAT ??_C@_0CN@BBLKAELG@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0CN@BBLKAELG@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence'
	DB	'_Animated_Sound_No_VTOL_Swap', 00H		; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E133
text$yc	SEGMENT
_$E133	PROC NEAR					; COMDAT

; 4231 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap> JFW_Base_Defence_Animated_Sound_No_VTOL_Swap_Registrant("JFW_Base_Defence_Animated_Sound_No_VTOL_Swap","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float,Sound:string,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0HI@JAOIDCBC@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CN@BBLKAELG@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_No_VTOL_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_No_VTOL_Swap>
	push	OFFSET FLAT:_$E134
	call	_atexit
	pop	ecx
	ret	0
_$E133	ENDP
text$yc	ENDS
PUBLIC	??_C@_0CP@KMJFMAID@JFW_Base_Defence_Animated_Sound_@ ; `string'
CRT$XCU	SEGMENT
_$S138	DD	FLAT:_$E136
CRT$XCU	ENDS
;	COMDAT ??_C@_0CP@KMJFMAID@JFW_Base_Defence_Animated_Sound_@
CONST	SEGMENT
??_C@_0CP@KMJFMAID@JFW_Base_Defence_Animated_Sound_@ DB 'JFW_Base_Defence'
	DB	'_Animated_Sound_VTOL_Only_Swap', 00H	; `string'
; Function compile flags: /Ogty
CONST	ENDS
;	COMDAT _$E136
text$yc	SEGMENT
_$E136	PROC NEAR					; COMDAT

; 4232 : ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap> JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap_Registrant("JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap","MaxAttackDistance:float,AttackTimer:float,Animation:string,LastFrame:float,PopupTime:float,Sound:string,SwapMessage:int");

	push	OFFSET FLAT:??_C@_0HI@JAOIDCBC@MaxAttackDistance?3float?0AttackTi@
	push	OFFSET FLAT:??_C@_0CP@KMJFMAID@JFW_Base_Defence_Animated_Sound_@
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@A
	call	??0?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@QAE@PAD0@Z ; ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>::ScriptRegistrant<JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap>
	push	OFFSET FLAT:_$E137
	call	_atexit
	pop	ecx
	ret	0
_$E136	ENDP
; Function compile flags: /Ogty
text$yc	ENDS
;	COMDAT _$E2
text$yd	SEGMENT
_$E2	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_User_Controllable_Base_Defence_Registrant@@3V?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@UAE@XZ
_$E2	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E5
text$yd	SEGMENT
_$E5	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence@@@@UAE@XZ
_$E5	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E8
text$yd	SEGMENT
_$E8	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_No_Aircraft_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@UAE@XZ
_$E8	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E11
text$yd	SEGMENT
_$E11	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Aircraft_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@UAE@XZ
_$E11	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E14
text$yd	SEGMENT
_$E14	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@UAE@XZ
_$E14	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E17
text$yd	SEGMENT
_$E17	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_No_Aircraft_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@UAE@XZ
_$E17	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E20
text$yd	SEGMENT
_$E20	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Aircraft_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@UAE@XZ
_$E20	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E23
text$yd	SEGMENT
_$E23	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@UAE@XZ
_$E23	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E26
text$yd	SEGMENT
_$E26	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_No_Aircraft_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@UAE@XZ
_$E26	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E29
text$yd	SEGMENT
_$E29	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Aircraft_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@UAE@XZ
_$E29	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E32
text$yd	SEGMENT
_$E32	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@UAE@XZ
_$E32	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E35
text$yd	SEGMENT
_$E35	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_No_Aircraft_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@UAE@XZ
_$E35	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E38
text$yd	SEGMENT
_$E38	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Aircraft_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@UAE@XZ
_$E38	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E41
text$yd	SEGMENT
_$E41	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_No_VTOL_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@UAE@XZ
_$E41	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E44
text$yd	SEGMENT
_$E44	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_VTOL_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@UAE@XZ
_$E44	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E47
text$yd	SEGMENT
_$E47	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_No_VTOL_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@UAE@XZ
_$E47	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E50
text$yd	SEGMENT
_$E50	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_VTOL_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@UAE@XZ
_$E50	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E53
text$yd	SEGMENT
_$E53	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_No_VTOL_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@UAE@XZ
_$E53	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E56
text$yd	SEGMENT
_$E56	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_VTOL_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@UAE@XZ
_$E56	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E59
text$yd	SEGMENT
_$E59	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_No_VTOL_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@UAE@XZ
_$E59	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E62
text$yd	SEGMENT
_$E62	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_VTOL_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@UAE@XZ
_$E62	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E65
text$yd	SEGMENT
_$E65	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@UAE@XZ
_$E65	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E68
text$yd	SEGMENT
_$E68	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_No_Aircraft_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@UAE@XZ
_$E68	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E71
text$yd	SEGMENT
_$E71	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_Aircraft_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@UAE@XZ
_$E71	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E74
text$yd	SEGMENT
_$E74	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@UAE@XZ
_$E74	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E77
text$yd	SEGMENT
_$E77	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@UAE@XZ
_$E77	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E80
text$yd	SEGMENT
_$E80	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@UAE@XZ
_$E80	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E83
text$yd	SEGMENT
_$E83	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_No_VTOL_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@UAE@XZ
_$E83	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E86
text$yd	SEGMENT
_$E86	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_VTOL_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@UAE@XZ
_$E86	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E89
text$yd	SEGMENT
_$E89	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@UAE@XZ
_$E89	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E92
text$yd	SEGMENT
_$E92	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@UAE@XZ
_$E92	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E95
text$yd	SEGMENT
_$E95	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@UAE@XZ
_$E95	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E98
text$yd	SEGMENT
_$E98	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_No_Aircraft_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@UAE@XZ
_$E98	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E101
text$yd	SEGMENT
_$E101	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Aircraft_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@UAE@XZ
_$E101	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E104
text$yd	SEGMENT
_$E104	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@UAE@XZ
_$E104	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E107
text$yd	SEGMENT
_$E107	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_No_Aircraft_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@UAE@XZ
_$E107	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E110
text$yd	SEGMENT
_$E110	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Aircraft_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@UAE@XZ
_$E110	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E113
text$yd	SEGMENT
_$E113	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_No_VTOL_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@UAE@XZ
_$E113	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E116
text$yd	SEGMENT
_$E116	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_VTOL_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@UAE@XZ
_$E116	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E119
text$yd	SEGMENT
_$E119	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_No_VTOL_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@UAE@XZ
_$E119	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E122
text$yd	SEGMENT
_$E122	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_VTOL_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@UAE@XZ
_$E122	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E125
text$yd	SEGMENT
_$E125	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@UAE@XZ
_$E125	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E128
text$yd	SEGMENT
_$E128	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@UAE@XZ
_$E128	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E131
text$yd	SEGMENT
_$E131	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@UAE@XZ
_$E131	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E134
text$yd	SEGMENT
_$E134	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_No_VTOL_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@UAE@XZ
_$E134	ENDP
; Function compile flags: /Ogty
text$yd	ENDS
;	COMDAT _$E137
text$yd	SEGMENT
_$E137	PROC NEAR					; COMDAT
	mov	ecx, OFFSET FLAT:?JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@A
	jmp	??1?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@UAE@XZ
_$E137	ENDP
text$yd	ENDS
PUBLIC	?JFW_Base_Defence_Animated_No_VTOL_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@A ; JFW_Base_Defence_Animated_No_VTOL_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_Animated_VTOL_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@A ; JFW_Base_Defence_Animated_VTOL_Only_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@A ; JFW_Base_Defence_Animated_Sound_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_No_Aircraft_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@A ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_Aircraft_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@A ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@A ; JFW_Base_Defence_Animated_Sound_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@A ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@A ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_No_VTOL_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@A ; JFW_Base_Defence_Animated_Sound_No_VTOL_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_VTOL_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@A ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@A ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@A ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@A ; JFW_Base_Defence_Swap_Registrant
PUBLIC	?JFW_Base_Defence_No_Aircraft_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@A ; JFW_Base_Defence_No_Aircraft_Swap_Registrant
PUBLIC	?JFW_Base_Defence_Aircraft_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@A ; JFW_Base_Defence_Aircraft_Only_Swap_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@A ; JFW_Base_Defence_Animated_Swap_Registrant
PUBLIC	?JFW_Base_Defence_Animated_No_Aircraft_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@A ; JFW_Base_Defence_Animated_No_Aircraft_Swap_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Aircraft_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@A ; JFW_Base_Defence_Animated_Aircraft_Only_Swap_Registrant
PUBLIC	?JFW_Base_Defence_No_VTOL_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@A ; JFW_Base_Defence_No_VTOL_Swap_Registrant
PUBLIC	?JFW_Base_Defence_VTOL_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@A ; JFW_Base_Defence_VTOL_Only_Swap_Registrant
PUBLIC	?JFW_User_Controllable_Base_Defence_Registrant@@3V?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@A ; JFW_User_Controllable_Base_Defence_Registrant
PUBLIC	?JFW_Base_Defence_Animated_No_VTOL_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@A ; JFW_Base_Defence_Animated_No_VTOL_Swap_Registrant
PUBLIC	?JFW_Base_Defence_Animated_VTOL_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@A ; JFW_Base_Defence_Animated_VTOL_Only_Swap_Registrant
PUBLIC	?JFW_Base_Defence_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence@@@@A ; JFW_Base_Defence_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@A ; JFW_Base_Defence_Animated_Sound_Swap_Registrant
PUBLIC	?JFW_Base_Defence_No_Aircraft_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@A ; JFW_Base_Defence_No_Aircraft_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@A ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap_Registrant
PUBLIC	?JFW_Base_Defence_Aircraft_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@A ; JFW_Base_Defence_Aircraft_Only_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@A ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap_Registrant
PUBLIC	?JFW_Base_Defence_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@A ; JFW_Base_Defence_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_No_VTOL_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@A ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap_Registrant
PUBLIC	?JFW_Base_Defence_No_Aircraft_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@A ; JFW_Base_Defence_No_Aircraft_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@A ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap_Registrant
PUBLIC	?JFW_Base_Defence_Aircraft_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@A ; JFW_Base_Defence_Aircraft_Only_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@A ; JFW_Base_Defence_Animated_Registrant
PUBLIC	?JFW_Base_Defence_Animated_No_Aircraft_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@A ; JFW_Base_Defence_Animated_No_Aircraft_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Aircraft_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@A ; JFW_Base_Defence_Animated_Aircraft_Only_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@A ; JFW_Base_Defence_Animated_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_Animated_No_Aircraft_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@A ; JFW_Base_Defence_Animated_No_Aircraft_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_Animated_Aircraft_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@A ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_No_VTOL_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@A ; JFW_Base_Defence_No_VTOL_Registrant
PUBLIC	?JFW_Base_Defence_VTOL_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@A ; JFW_Base_Defence_VTOL_Only_Registrant
PUBLIC	?JFW_Base_Defence_No_VTOL_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@A ; JFW_Base_Defence_No_VTOL_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_VTOL_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@A ; JFW_Base_Defence_VTOL_Only_Secondary_Registrant
PUBLIC	?JFW_Base_Defence_Animated_No_VTOL_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@A ; JFW_Base_Defence_Animated_No_VTOL_Registrant
PUBLIC	?JFW_Base_Defence_Animated_VTOL_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@A ; JFW_Base_Defence_Animated_VTOL_Only_Registrant
_BSS	SEGMENT
?JFW_Base_Defence_Animated_No_VTOL_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_No_VTOL_Secondary_Registrant
?JFW_Base_Defence_Animated_VTOL_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_VTOL_Only_Secondary_Registrant
?JFW_Base_Defence_Animated_Sound_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_Registrant
?JFW_Base_Defence_Animated_Sound_No_Aircraft_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Registrant
?JFW_Base_Defence_Animated_Sound_Aircraft_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Registrant
?JFW_Base_Defence_Animated_Sound_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_Secondary_Registrant
?JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Secondary_Registrant
?JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Secondary_Registrant
?JFW_Base_Defence_Animated_Sound_No_VTOL_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_No_VTOL_Registrant
?JFW_Base_Defence_Animated_Sound_VTOL_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Registrant
?JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_No_VTOL_Secondary_Registrant
?JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Secondary_Registrant
?JFW_Base_Defence_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Swap_Registrant
?JFW_Base_Defence_No_Aircraft_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_No_Aircraft_Swap_Registrant
?JFW_Base_Defence_Aircraft_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Aircraft_Only_Swap_Registrant
?JFW_Base_Defence_Animated_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Swap_Registrant
?JFW_Base_Defence_Animated_No_Aircraft_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_No_Aircraft_Swap_Registrant
?JFW_Base_Defence_Animated_Aircraft_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Aircraft_Only_Swap_Registrant
?JFW_Base_Defence_No_VTOL_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_No_VTOL_Swap_Registrant
?JFW_Base_Defence_VTOL_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_VTOL_Only_Swap_Registrant
?JFW_User_Controllable_Base_Defence_Registrant@@3V?$ScriptRegistrant@VJFW_User_Controllable_Base_Defence@@@@A DB 010H DUP (?) ; JFW_User_Controllable_Base_Defence_Registrant
?JFW_Base_Defence_Animated_No_VTOL_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_No_VTOL_Swap_Registrant
?JFW_Base_Defence_Animated_VTOL_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_VTOL_Only_Swap_Registrant
?JFW_Base_Defence_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Registrant
?JFW_Base_Defence_Animated_Sound_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_Swap_Registrant
?JFW_Base_Defence_No_Aircraft_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft@@@@A DB 010H DUP (?) ; JFW_Base_Defence_No_Aircraft_Registrant
?JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_Aircraft_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_No_Aircraft_Swap_Registrant
?JFW_Base_Defence_Aircraft_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Aircraft_Only_Registrant
?JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_Aircraft_Only_Swap_Registrant
?JFW_Base_Defence_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Secondary_Registrant
?JFW_Base_Defence_Animated_Sound_No_VTOL_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_No_VTOL_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_No_VTOL_Swap_Registrant
?JFW_Base_Defence_No_Aircraft_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_Aircraft_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_No_Aircraft_Secondary_Registrant
?JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Sound_VTOL_Only_Swap@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Sound_VTOL_Only_Swap_Registrant
?JFW_Base_Defence_Aircraft_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Aircraft_Only_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Aircraft_Only_Secondary_Registrant
?JFW_Base_Defence_Animated_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Registrant
?JFW_Base_Defence_Animated_No_Aircraft_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_No_Aircraft_Registrant
?JFW_Base_Defence_Animated_Aircraft_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Aircraft_Only_Registrant
?JFW_Base_Defence_Animated_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Secondary_Registrant
?JFW_Base_Defence_Animated_No_Aircraft_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_Aircraft_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_No_Aircraft_Secondary_Registrant
?JFW_Base_Defence_Animated_Aircraft_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_Aircraft_Only_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_Aircraft_Only_Secondary_Registrant
?JFW_Base_Defence_No_VTOL_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL@@@@A DB 010H DUP (?) ; JFW_Base_Defence_No_VTOL_Registrant
?JFW_Base_Defence_VTOL_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only@@@@A DB 010H DUP (?) ; JFW_Base_Defence_VTOL_Only_Registrant
?JFW_Base_Defence_No_VTOL_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_No_VTOL_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_No_VTOL_Secondary_Registrant
?JFW_Base_Defence_VTOL_Only_Secondary_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_VTOL_Only_Secondary@@@@A DB 010H DUP (?) ; JFW_Base_Defence_VTOL_Only_Secondary_Registrant
?JFW_Base_Defence_Animated_No_VTOL_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_No_VTOL@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_No_VTOL_Registrant
?JFW_Base_Defence_Animated_VTOL_Only_Registrant@@3V?$ScriptRegistrant@VJFW_Base_Defence_Animated_VTOL_Only@@@@A DB 010H DUP (?) ; JFW_Base_Defence_Animated_VTOL_Only_Registrant
_BSS	ENDS
END
