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

	TITLE	d:\Source Code\STGM\engine_bhs.cpp
	.686P
	.XMM
	include listing.inc
	.model	flat

INCLUDELIB LIBCMTD
INCLUDELIB OLDNAMES

PUBLIC	??_C@_0P@GHFPNOJB@bad?5allocation?$AA@		; `string'
PUBLIC	?Get_Build_Time_Multiplier@@3P6AMH@ZA		; Get_Build_Time_Multiplier
PUBLIC	?Enable_Radar_Player@@3P6AXPAE_N@ZA		; Enable_Radar_Player
PUBLIC	?Update_PT_Data@@3P6AXXZA			; Update_PT_Data
PUBLIC	?Change_Time_Remaining@@3P6AXM@ZA		; Change_Time_Remaining
PUBLIC	?Set_Reticle_Texture1@@3P6AXPAEPBD@ZA		; Set_Reticle_Texture1
PUBLIC	?Enable_Stealth_Player@@3P6AXPAE0_N@ZA		; Enable_Stealth_Player
PUBLIC	?Is_Currently_Building@@3P6A_NH@ZA		; Is_Currently_Building
PUBLIC	?Create_2D_Sound_Player@@3P6AHPAEPBD@ZA		; Create_2D_Sound_Player
PUBLIC	?AddPowerupPurchaseMonHook@@3P6AHP6AXPAVBaseControllerClass@@PAEIIIPBD@Z2@ZA ; AddPowerupPurchaseMonHook
PUBLIC	?AddObjectCreateHook@@3P6AHPAUObjectCreateHookStruct@@@ZA ; AddObjectCreateHook
PUBLIC	?Display_Security_Dialog@@3P6AXPAE@ZA		; Display_Security_Dialog
PUBLIC	?Remove_Weapon@@3P6AXPAEPBD@ZA			; Remove_Weapon
PUBLIC	?AddPlayerJoinHook@@3P6AXP6AXHPBD@Z@ZA		; AddPlayerJoinHook
PUBLIC	?Set_Scope@@3P6AXPAEH@ZA			; Set_Scope
PUBLIC	?AddLoadLevelHook@@3P6AXP6AXXZ@ZA		; AddLoadLevelHook
PUBLIC	?AddPlayerLeaveHook@@3P6AXP6AXH@Z@ZA		; AddPlayerLeaveHook
PUBLIC	?GetCurrentMusicTrack@@3P6APBDXZA		; GetCurrentMusicTrack
PUBLIC	?Create_2D_WAV_Sound_Player@@3P6AHPAEPBD@ZA	; Create_2D_WAV_Sound_Player
PUBLIC	?Display_Float_Player@@3P6AXPAEMPBD@ZA		; Display_Float_Player
PUBLIC	?AddCRCHook@@3P6AXP6AXIH@Z@ZA			; AddCRCHook
PUBLIC	?Set_Obj_Radar_Blip_Color_Player@@3P6AXPAE0H@ZA	; Set_Obj_Radar_Blip_Color_Player
PUBLIC	?Get_Vehicle_Limit@@3P6AKXZA			; Get_Vehicle_Limit
PUBLIC	?Set_Fog_Density_Player@@3P6AXPAEM@ZA		; Set_Fog_Density_Player
PUBLIC	?AddVehiclePurchaseMonHook@@3P6AHP6AXPAVBaseControllerClass@@PAEIIIPBD@Z2@ZA ; AddVehiclePurchaseMonHook
PUBLIC	?Set_Obj_Radar_Blip_Shape_Player@@3P6AXPAE0H@ZA	; Set_Obj_Radar_Blip_Shape_Player
PUBLIC	?RemoveVehiclePurchaseHook@@3P6AXH@ZA		; RemoveVehiclePurchaseHook
PUBLIC	?RemoveCharacterPurchaseMonHook@@3P6AXH@ZA	; RemoveCharacterPurchaseMonHook
PUBLIC	?Set_Fog_Mode_Player@@3P6AXPAEI@ZA		; Set_Fog_Mode_Player
PUBLIC	?AddKeyHook@@3P6AHPAUKeyHookStruct@@@ZA		; AddKeyHook
PUBLIC	?Display_Int_Player@@3P6AXPAEHPBD@ZA		; Display_Int_Player
PUBLIC	?Set_Reticle_Texture2@@3P6AXPAEPBD@ZA		; Set_Reticle_Texture2
PUBLIC	?Set_Background_Music_Player@@3P6AXPAEPBD@ZA	; Set_Background_Music_Player
PUBLIC	?RemoveObjectCreateHook@@3P6AXH@ZA		; RemoveObjectCreateHook
PUBLIC	?AddConsoleOutputHook@@3P6AXP6AXPBD@Z@ZA	; AddConsoleOutputHook
PUBLIC	?Set_Screen_Fade_Opacity_Player@@3P6AXPAEMM@ZA	; Set_Screen_Fade_Opacity_Player
PUBLIC	?Create_3D_Sound_At_Bone_Player@@3P6AHPAEPBD01@ZA ; Create_3D_Sound_At_Bone_Player
PUBLIC	?Load_New_HUD_INI@@3P6AXPAEPBD@ZA		; Load_New_HUD_INI
PUBLIC	?RemoveVehiclePurchaseMonHook@@3P6AXH@ZA	; RemoveVehiclePurchaseMonHook
PUBLIC	?Create_Sound_Player@@3P6AHPAEPBDABUVector3@@0@ZA ; Create_Sound_Player
PUBLIC	?AddChatHook@@3P6AXP6AXHW4TextMessageEnum@@PB_W@Z@ZA ; AddChatHook
PUBLIC	?RemoveKeyHook@@3P6AXH@ZA			; RemoveKeyHook
PUBLIC	?Set_Wireframe_Mode@@3P6AXH@ZA			; Set_Wireframe_Mode
PUBLIC	?Force_Camera_Look_Player@@3P6AXPAEABUVector3@@@ZA ; Force_Camera_Look_Player
PUBLIC	?Set_Fog_Range_Player@@3P6AXPAEMMM@ZA		; Set_Fog_Range_Player
PUBLIC	?Clear_Info_Texture@@3P6AXPAE@ZA		; Clear_Info_Texture
PUBLIC	?Set_Fog_Color_Player@@3P6AXPAEIII@ZA		; Set_Fog_Color_Player
PUBLIC	?Enable_HUD_Player@@3P6AXPAE_N@ZA		; Enable_HUD_Player
PUBLIC	?Set_Shader_Number_Vector@@3P6AXPAEIUVector4@@@ZA ; Set_Shader_Number_Vector
PUBLIC	?Display_NOD_Player_Terminal_Player@@3P6AXPAE@ZA ; Display_NOD_Player_Terminal_Player
PUBLIC	?RemoveCharacterPurchaseHook@@3P6AXH@ZA		; RemoveCharacterPurchaseHook
PUBLIC	?Change_Time_Limit@@3P6AXH@ZA			; Change_Time_Limit
PUBLIC	?Send_Message_Player@@3P6AXPAEIIIPBD@ZA		; Send_Message_Player
PUBLIC	?Set_Currently_Building@@3P6AX_NH@ZA		; Set_Currently_Building
PUBLIC	?RemovePowerupPurchaseMonHook@@3P6AXH@ZA	; RemovePowerupPurchaseMonHook
PUBLIC	?AddCharacterPurchaseMonHook@@3P6AHP6AXPAVBaseControllerClass@@PAEIIIPBD@Z2@ZA ; AddCharacterPurchaseMonHook
PUBLIC	?Set_Vehicle_Limit@@3P6AXI@ZA			; Set_Vehicle_Limit
PUBLIC	?GetExplosionObj@@3P6APAEXZA			; GetExplosionObj
PUBLIC	?Set_Fog_Mode@@3P6AXI@ZA			; Set_Fog_Mode
PUBLIC	?AddVersionHook@@3P6AXP6AXHM@Z@ZA		; AddVersionHook
PUBLIC	?Set_Info_Texture@@3P6AXPAEPBD@ZA		; Set_Info_Texture
PUBLIC	?Create_3D_WAV_Sound_At_Bone_Player@@3P6AHPAEPBD01@ZA ; Create_3D_WAV_Sound_At_Bone_Player
PUBLIC	?Set_Fog_Enable_Player@@3P6AXPAE_N@ZA		; Set_Fog_Enable_Player
PUBLIC	?Set_Screen_Fade_Color_Player@@3P6AXPAEMMMM@ZA	; Set_Screen_Fade_Color_Player
PUBLIC	?AddGameOverHook@@3P6AXP6AXXZ@ZA		; AddGameOverHook
PUBLIC	?Set_Display_Color_Player@@3P6AXPAEEEE@ZA	; Set_Display_Color_Player
PUBLIC	?Display_Text_Player@@3P6AXPAEH@ZA		; Display_Text_Player
PUBLIC	?AddCharacterPurchaseHook@@3P6AHP6AHPAVBaseControllerClass@@PAEIIPBD@Z2@ZA ; AddCharacterPurchaseHook
PUBLIC	?Set_Fog_Density@@3P6AXM@ZA			; Set_Fog_Density
PUBLIC	?AddHostHook@@3P6AXP6AXHW4TextMessageEnum@@PBD@Z@ZA ; AddHostHook
PUBLIC	?RemovePowerupPurchaseHook@@3P6AXH@ZA		; RemovePowerupPurchaseHook
PUBLIC	?AddDataHook@@3P6AXP6AXHIPAI@Z@ZA		; AddDataHook
PUBLIC	?Send_HUD_Number@@3P6AXPAEI@ZA			; Send_HUD_Number
PUBLIC	?AddShaderNotify@@3P6AHPAUShaderNotifyStruct@@@ZA ; AddShaderNotify
PUBLIC	?Set_Fog_Color@@3P6AXIII@ZA			; Set_Fog_Color
PUBLIC	?Set_HUD_Texture@@3P6AXPAEPBD@ZA		; Set_HUD_Texture
PUBLIC	?Display_GDI_Sidebar@@3P6AXPAE@ZA		; Display_GDI_Sidebar
PUBLIC	?Display_NOD_Sidebar@@3P6AXPAE@ZA		; Display_NOD_Sidebar
PUBLIC	?Stop_Background_Music_Player@@3P6AXPAE@ZA	; Stop_Background_Music_Player
PUBLIC	?Display_GDI_Player_Terminal_Player@@3P6AXPAE@ZA ; Display_GDI_Player_Terminal_Player
PUBLIC	?RemoveShaderNotify@@3P6AHH@ZA			; RemoveShaderNotify
PUBLIC	?Change_Radar_Map@@3P6AXMMMPBD@ZA		; Change_Radar_Map
PUBLIC	?AddVehiclePurchaseHook@@3P6AHP6AHPAVBaseControllerClass@@PAEIIPBD@Z2@ZA ; AddVehiclePurchaseHook
PUBLIC	?Send_Message@@3P6AXIIIPBD@ZA			; Send_Message
PUBLIC	?Set_Shader_Number@@3P6AXPAEIM@ZA		; Set_Shader_Number
PUBLIC	?AddPowerupPurchaseHook@@3P6AHP6AHPAVBaseControllerClass@@PAEIIPBD@Z2@ZA ; AddPowerupPurchaseHook
PUBLIC	?Fade_Background_Music_Player@@3P6AXPAEPBDHH@ZA	; Fade_Background_Music_Player
PUBLIC	?collate@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::collate
PUBLIC	?ctype@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::ctype
PUBLIC	?monetary@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::monetary
PUBLIC	?numeric@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::numeric
PUBLIC	?time@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::time
PUBLIC	?messages@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::messages
PUBLIC	?all@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::all
PUBLIC	?none@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::none
PUBLIC	?table_size@?$ctype@D@std@@2IB			; std::ctype<char>::table_size
PUBLIC	?skipws@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::skipws
PUBLIC	?unitbuf@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::unitbuf
PUBLIC	?uppercase@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::uppercase
PUBLIC	?showbase@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::showbase
PUBLIC	?showpoint@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::showpoint
PUBLIC	?showpos@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::showpos
PUBLIC	?left@?$_Iosb@H@std@@2W4_Fmtflags@12@B		; std::_Iosb<int>::left
PUBLIC	?right@?$_Iosb@H@std@@2W4_Fmtflags@12@B		; std::_Iosb<int>::right
PUBLIC	?internal@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::internal
PUBLIC	?dec@?$_Iosb@H@std@@2W4_Fmtflags@12@B		; std::_Iosb<int>::dec
PUBLIC	?oct@?$_Iosb@H@std@@2W4_Fmtflags@12@B		; std::_Iosb<int>::oct
PUBLIC	?hex@?$_Iosb@H@std@@2W4_Fmtflags@12@B		; std::_Iosb<int>::hex
PUBLIC	?scientific@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::scientific
PUBLIC	?fixed@?$_Iosb@H@std@@2W4_Fmtflags@12@B		; std::_Iosb<int>::fixed
PUBLIC	?boolalpha@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::boolalpha
PUBLIC	?_Stdio@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::_Stdio
PUBLIC	?adjustfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::adjustfield
PUBLIC	?basefield@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::basefield
PUBLIC	?floatfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::floatfield
PUBLIC	?goodbit@?$_Iosb@H@std@@2W4_Iostate@12@B	; std::_Iosb<int>::goodbit
PUBLIC	?eofbit@?$_Iosb@H@std@@2W4_Iostate@12@B		; std::_Iosb<int>::eofbit
PUBLIC	?failbit@?$_Iosb@H@std@@2W4_Iostate@12@B	; std::_Iosb<int>::failbit
PUBLIC	?badbit@?$_Iosb@H@std@@2W4_Iostate@12@B		; std::_Iosb<int>::badbit
PUBLIC	?_Hardfail@?$_Iosb@H@std@@2W4_Iostate@12@B	; std::_Iosb<int>::_Hardfail
PUBLIC	?in@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::in
PUBLIC	?out@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::out
PUBLIC	?ate@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::ate
PUBLIC	?app@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::app
PUBLIC	?trunc@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::trunc
PUBLIC	?_Nocreate@?$_Iosb@H@std@@2W4_Openmode@12@B	; std::_Iosb<int>::_Nocreate
PUBLIC	?_Noreplace@?$_Iosb@H@std@@2W4_Openmode@12@B	; std::_Iosb<int>::_Noreplace
PUBLIC	?binary@?$_Iosb@H@std@@2W4_Openmode@12@B	; std::_Iosb<int>::binary
PUBLIC	?beg@?$_Iosb@H@std@@2W4_Seekdir@12@B		; std::_Iosb<int>::beg
PUBLIC	?cur@?$_Iosb@H@std@@2W4_Seekdir@12@B		; std::_Iosb<int>::cur
PUBLIC	?end@?$_Iosb@H@std@@2W4_Seekdir@12@B		; std::_Iosb<int>::end
_BSS	SEGMENT
?Get_Build_Time_Multiplier@@3P6AMH@ZA DD 01H DUP (?)	; Get_Build_Time_Multiplier
?Enable_Radar_Player@@3P6AXPAE_N@ZA DD 01H DUP (?)	; Enable_Radar_Player
?Update_PT_Data@@3P6AXXZA DD 01H DUP (?)		; Update_PT_Data
?Change_Time_Remaining@@3P6AXM@ZA DD 01H DUP (?)	; Change_Time_Remaining
?Set_Reticle_Texture1@@3P6AXPAEPBD@ZA DD 01H DUP (?)	; Set_Reticle_Texture1
?Enable_Stealth_Player@@3P6AXPAE0_N@ZA DD 01H DUP (?)	; Enable_Stealth_Player
?Is_Currently_Building@@3P6A_NH@ZA DD 01H DUP (?)	; Is_Currently_Building
?Create_2D_Sound_Player@@3P6AHPAEPBD@ZA DD 01H DUP (?)	; Create_2D_Sound_Player
?AddPowerupPurchaseMonHook@@3P6AHP6AXPAVBaseControllerClass@@PAEIIIPBD@Z2@ZA DD 01H DUP (?) ; AddPowerupPurchaseMonHook
?AddObjectCreateHook@@3P6AHPAUObjectCreateHookStruct@@@ZA DD 01H DUP (?) ; AddObjectCreateHook
?Display_Security_Dialog@@3P6AXPAE@ZA DD 01H DUP (?)	; Display_Security_Dialog
?Remove_Weapon@@3P6AXPAEPBD@ZA DD 01H DUP (?)		; Remove_Weapon
?AddPlayerJoinHook@@3P6AXP6AXHPBD@Z@ZA DD 01H DUP (?)	; AddPlayerJoinHook
?Set_Scope@@3P6AXPAEH@ZA DD 01H DUP (?)			; Set_Scope
?AddLoadLevelHook@@3P6AXP6AXXZ@ZA DD 01H DUP (?)	; AddLoadLevelHook
?AddPlayerLeaveHook@@3P6AXP6AXH@Z@ZA DD 01H DUP (?)	; AddPlayerLeaveHook
?GetCurrentMusicTrack@@3P6APBDXZA DD 01H DUP (?)	; GetCurrentMusicTrack
?Create_2D_WAV_Sound_Player@@3P6AHPAEPBD@ZA DD 01H DUP (?) ; Create_2D_WAV_Sound_Player
?Display_Float_Player@@3P6AXPAEMPBD@ZA DD 01H DUP (?)	; Display_Float_Player
?AddCRCHook@@3P6AXP6AXIH@Z@ZA DD 01H DUP (?)		; AddCRCHook
?Set_Obj_Radar_Blip_Color_Player@@3P6AXPAE0H@ZA DD 01H DUP (?) ; Set_Obj_Radar_Blip_Color_Player
?Get_Vehicle_Limit@@3P6AKXZA DD 01H DUP (?)		; Get_Vehicle_Limit
?Set_Fog_Density_Player@@3P6AXPAEM@ZA DD 01H DUP (?)	; Set_Fog_Density_Player
?AddVehiclePurchaseMonHook@@3P6AHP6AXPAVBaseControllerClass@@PAEIIIPBD@Z2@ZA DD 01H DUP (?) ; AddVehiclePurchaseMonHook
?Set_Obj_Radar_Blip_Shape_Player@@3P6AXPAE0H@ZA DD 01H DUP (?) ; Set_Obj_Radar_Blip_Shape_Player
?RemoveVehiclePurchaseHook@@3P6AXH@ZA DD 01H DUP (?)	; RemoveVehiclePurchaseHook
?RemoveCharacterPurchaseMonHook@@3P6AXH@ZA DD 01H DUP (?) ; RemoveCharacterPurchaseMonHook
?Set_Fog_Mode_Player@@3P6AXPAEI@ZA DD 01H DUP (?)	; Set_Fog_Mode_Player
?AddKeyHook@@3P6AHPAUKeyHookStruct@@@ZA DD 01H DUP (?)	; AddKeyHook
?Display_Int_Player@@3P6AXPAEHPBD@ZA DD 01H DUP (?)	; Display_Int_Player
?Set_Reticle_Texture2@@3P6AXPAEPBD@ZA DD 01H DUP (?)	; Set_Reticle_Texture2
?Set_Background_Music_Player@@3P6AXPAEPBD@ZA DD 01H DUP (?) ; Set_Background_Music_Player
?RemoveObjectCreateHook@@3P6AXH@ZA DD 01H DUP (?)	; RemoveObjectCreateHook
?AddConsoleOutputHook@@3P6AXP6AXPBD@Z@ZA DD 01H DUP (?)	; AddConsoleOutputHook
?Set_Screen_Fade_Opacity_Player@@3P6AXPAEMM@ZA DD 01H DUP (?) ; Set_Screen_Fade_Opacity_Player
?Create_3D_Sound_At_Bone_Player@@3P6AHPAEPBD01@ZA DD 01H DUP (?) ; Create_3D_Sound_At_Bone_Player
?Load_New_HUD_INI@@3P6AXPAEPBD@ZA DD 01H DUP (?)	; Load_New_HUD_INI
?RemoveVehiclePurchaseMonHook@@3P6AXH@ZA DD 01H DUP (?)	; RemoveVehiclePurchaseMonHook
?Create_Sound_Player@@3P6AHPAEPBDABUVector3@@0@ZA DD 01H DUP (?) ; Create_Sound_Player
?AddChatHook@@3P6AXP6AXHW4TextMessageEnum@@PB_W@Z@ZA DD 01H DUP (?) ; AddChatHook
?RemoveKeyHook@@3P6AXH@ZA DD 01H DUP (?)		; RemoveKeyHook
?Set_Wireframe_Mode@@3P6AXH@ZA DD 01H DUP (?)		; Set_Wireframe_Mode
?Force_Camera_Look_Player@@3P6AXPAEABUVector3@@@ZA DD 01H DUP (?) ; Force_Camera_Look_Player
?Set_Fog_Range_Player@@3P6AXPAEMMM@ZA DD 01H DUP (?)	; Set_Fog_Range_Player
?Clear_Info_Texture@@3P6AXPAE@ZA DD 01H DUP (?)		; Clear_Info_Texture
?Set_Fog_Color_Player@@3P6AXPAEIII@ZA DD 01H DUP (?)	; Set_Fog_Color_Player
?Enable_HUD_Player@@3P6AXPAE_N@ZA DD 01H DUP (?)	; Enable_HUD_Player
?Set_Shader_Number_Vector@@3P6AXPAEIUVector4@@@ZA DD 01H DUP (?) ; Set_Shader_Number_Vector
?Display_NOD_Player_Terminal_Player@@3P6AXPAE@ZA DD 01H DUP (?) ; Display_NOD_Player_Terminal_Player
?RemoveCharacterPurchaseHook@@3P6AXH@ZA DD 01H DUP (?)	; RemoveCharacterPurchaseHook
?Change_Time_Limit@@3P6AXH@ZA DD 01H DUP (?)		; Change_Time_Limit
?Send_Message_Player@@3P6AXPAEIIIPBD@ZA DD 01H DUP (?)	; Send_Message_Player
?Set_Currently_Building@@3P6AX_NH@ZA DD 01H DUP (?)	; Set_Currently_Building
?RemovePowerupPurchaseMonHook@@3P6AXH@ZA DD 01H DUP (?)	; RemovePowerupPurchaseMonHook
?AddCharacterPurchaseMonHook@@3P6AHP6AXPAVBaseControllerClass@@PAEIIIPBD@Z2@ZA DD 01H DUP (?) ; AddCharacterPurchaseMonHook
?Set_Vehicle_Limit@@3P6AXI@ZA DD 01H DUP (?)		; Set_Vehicle_Limit
?GetExplosionObj@@3P6APAEXZA DD 01H DUP (?)		; GetExplosionObj
?Set_Fog_Mode@@3P6AXI@ZA DD 01H DUP (?)			; Set_Fog_Mode
?AddVersionHook@@3P6AXP6AXHM@Z@ZA DD 01H DUP (?)	; AddVersionHook
?Set_Info_Texture@@3P6AXPAEPBD@ZA DD 01H DUP (?)	; Set_Info_Texture
?Create_3D_WAV_Sound_At_Bone_Player@@3P6AHPAEPBD01@ZA DD 01H DUP (?) ; Create_3D_WAV_Sound_At_Bone_Player
?Set_Fog_Enable_Player@@3P6AXPAE_N@ZA DD 01H DUP (?)	; Set_Fog_Enable_Player
?Set_Screen_Fade_Color_Player@@3P6AXPAEMMMM@ZA DD 01H DUP (?) ; Set_Screen_Fade_Color_Player
?AddGameOverHook@@3P6AXP6AXXZ@ZA DD 01H DUP (?)		; AddGameOverHook
?Set_Display_Color_Player@@3P6AXPAEEEE@ZA DD 01H DUP (?) ; Set_Display_Color_Player
?Display_Text_Player@@3P6AXPAEH@ZA DD 01H DUP (?)	; Display_Text_Player
?AddCharacterPurchaseHook@@3P6AHP6AHPAVBaseControllerClass@@PAEIIPBD@Z2@ZA DD 01H DUP (?) ; AddCharacterPurchaseHook
?Set_Fog_Density@@3P6AXM@ZA DD 01H DUP (?)		; Set_Fog_Density
?AddHostHook@@3P6AXP6AXHW4TextMessageEnum@@PBD@Z@ZA DD 01H DUP (?) ; AddHostHook
?RemovePowerupPurchaseHook@@3P6AXH@ZA DD 01H DUP (?)	; RemovePowerupPurchaseHook
?AddDataHook@@3P6AXP6AXHIPAI@Z@ZA DD 01H DUP (?)	; AddDataHook
?Send_HUD_Number@@3P6AXPAEI@ZA DD 01H DUP (?)		; Send_HUD_Number
?AddShaderNotify@@3P6AHPAUShaderNotifyStruct@@@ZA DD 01H DUP (?) ; AddShaderNotify
?Set_Fog_Color@@3P6AXIII@ZA DD 01H DUP (?)		; Set_Fog_Color
?Set_HUD_Texture@@3P6AXPAEPBD@ZA DD 01H DUP (?)		; Set_HUD_Texture
?Display_GDI_Sidebar@@3P6AXPAE@ZA DD 01H DUP (?)	; Display_GDI_Sidebar
?Display_NOD_Sidebar@@3P6AXPAE@ZA DD 01H DUP (?)	; Display_NOD_Sidebar
?Stop_Background_Music_Player@@3P6AXPAE@ZA DD 01H DUP (?) ; Stop_Background_Music_Player
?Display_GDI_Player_Terminal_Player@@3P6AXPAE@ZA DD 01H DUP (?) ; Display_GDI_Player_Terminal_Player
?RemoveShaderNotify@@3P6AHH@ZA DD 01H DUP (?)		; RemoveShaderNotify
?Change_Radar_Map@@3P6AXMMMPBD@ZA DD 01H DUP (?)	; Change_Radar_Map
?AddVehiclePurchaseHook@@3P6AHP6AHPAVBaseControllerClass@@PAEIIPBD@Z2@ZA DD 01H DUP (?) ; AddVehiclePurchaseHook
?Send_Message@@3P6AXIIIPBD@ZA DD 01H DUP (?)		; Send_Message
?Set_Shader_Number@@3P6AXPAEIM@ZA DD 01H DUP (?)	; Set_Shader_Number
?AddPowerupPurchaseHook@@3P6AHP6AHPAVBaseControllerClass@@PAEIIPBD@Z2@ZA DD 01H DUP (?) ; AddPowerupPurchaseHook
?Fade_Background_Music_Player@@3P6AXPAEPBDHH@ZA DD 01H DUP (?) ; Fade_Background_Music_Player
_BSS	ENDS
;	COMDAT ?end@?$_Iosb@H@std@@2W4_Seekdir@12@B
CONST	SEGMENT
?end@?$_Iosb@H@std@@2W4_Seekdir@12@B DD 02H		; std::_Iosb<int>::end
CONST	ENDS
;	COMDAT ?cur@?$_Iosb@H@std@@2W4_Seekdir@12@B
CONST	SEGMENT
?cur@?$_Iosb@H@std@@2W4_Seekdir@12@B DD 01H		; std::_Iosb<int>::cur
CONST	ENDS
;	COMDAT ?beg@?$_Iosb@H@std@@2W4_Seekdir@12@B
CONST	SEGMENT
?beg@?$_Iosb@H@std@@2W4_Seekdir@12@B DD 00H		; std::_Iosb<int>::beg
CONST	ENDS
;	COMDAT ?binary@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?binary@?$_Iosb@H@std@@2W4_Openmode@12@B DD 020H	; std::_Iosb<int>::binary
CONST	ENDS
;	COMDAT ?_Noreplace@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?_Noreplace@?$_Iosb@H@std@@2W4_Openmode@12@B DD 080H	; std::_Iosb<int>::_Noreplace
CONST	ENDS
;	COMDAT ?_Nocreate@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?_Nocreate@?$_Iosb@H@std@@2W4_Openmode@12@B DD 040H	; std::_Iosb<int>::_Nocreate
CONST	ENDS
;	COMDAT ?trunc@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?trunc@?$_Iosb@H@std@@2W4_Openmode@12@B DD 010H		; std::_Iosb<int>::trunc
CONST	ENDS
;	COMDAT ?app@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?app@?$_Iosb@H@std@@2W4_Openmode@12@B DD 08H		; std::_Iosb<int>::app
CONST	ENDS
;	COMDAT ?ate@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?ate@?$_Iosb@H@std@@2W4_Openmode@12@B DD 04H		; std::_Iosb<int>::ate
CONST	ENDS
;	COMDAT ?out@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?out@?$_Iosb@H@std@@2W4_Openmode@12@B DD 02H		; std::_Iosb<int>::out
CONST	ENDS
;	COMDAT ?in@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?in@?$_Iosb@H@std@@2W4_Openmode@12@B DD 01H		; std::_Iosb<int>::in
CONST	ENDS
;	COMDAT ?_Hardfail@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?_Hardfail@?$_Iosb@H@std@@2W4_Iostate@12@B DD 010H	; std::_Iosb<int>::_Hardfail
CONST	ENDS
;	COMDAT ?badbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?badbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 04H		; std::_Iosb<int>::badbit
CONST	ENDS
;	COMDAT ?failbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?failbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 02H		; std::_Iosb<int>::failbit
CONST	ENDS
;	COMDAT ?eofbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?eofbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 01H		; std::_Iosb<int>::eofbit
CONST	ENDS
;	COMDAT ?goodbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?goodbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 00H		; std::_Iosb<int>::goodbit
CONST	ENDS
;	COMDAT ?floatfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?floatfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 03000H	; std::_Iosb<int>::floatfield
CONST	ENDS
;	COMDAT ?basefield@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?basefield@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0e00H	; std::_Iosb<int>::basefield
CONST	ENDS
;	COMDAT ?adjustfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?adjustfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 01c0H	; std::_Iosb<int>::adjustfield
CONST	ENDS
;	COMDAT ?_Stdio@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?_Stdio@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 08000H	; std::_Iosb<int>::_Stdio
CONST	ENDS
;	COMDAT ?boolalpha@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?boolalpha@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 04000H	; std::_Iosb<int>::boolalpha
CONST	ENDS
;	COMDAT ?fixed@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?fixed@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 02000H	; std::_Iosb<int>::fixed
CONST	ENDS
;	COMDAT ?scientific@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?scientific@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 01000H	; std::_Iosb<int>::scientific
CONST	ENDS
;	COMDAT ?hex@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?hex@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0800H		; std::_Iosb<int>::hex
CONST	ENDS
;	COMDAT ?oct@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?oct@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0400H		; std::_Iosb<int>::oct
CONST	ENDS
;	COMDAT ?dec@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?dec@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0200H		; std::_Iosb<int>::dec
CONST	ENDS
;	COMDAT ?internal@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?internal@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0100H	; std::_Iosb<int>::internal
CONST	ENDS
;	COMDAT ?right@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?right@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 080H		; std::_Iosb<int>::right
CONST	ENDS
;	COMDAT ?left@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?left@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 040H		; std::_Iosb<int>::left
CONST	ENDS
;	COMDAT ?showpos@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?showpos@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 020H	; std::_Iosb<int>::showpos
CONST	ENDS
;	COMDAT ?showpoint@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?showpoint@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 010H	; std::_Iosb<int>::showpoint
CONST	ENDS
;	COMDAT ?showbase@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?showbase@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 08H	; std::_Iosb<int>::showbase
CONST	ENDS
;	COMDAT ?uppercase@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?uppercase@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 04H	; std::_Iosb<int>::uppercase
CONST	ENDS
;	COMDAT ?unitbuf@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?unitbuf@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 02H	; std::_Iosb<int>::unitbuf
CONST	ENDS
;	COMDAT ?skipws@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?skipws@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 01H		; std::_Iosb<int>::skipws
CONST	ENDS
;	COMDAT ?table_size@?$ctype@D@std@@2IB
CONST	SEGMENT
?table_size@?$ctype@D@std@@2IB DD 0100H			; std::ctype<char>::table_size
CONST	ENDS
;	COMDAT ?none@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?none@?$_Locbase@H@std@@2HB DD 00H			; std::_Locbase<int>::none
CONST	ENDS
;	COMDAT ?all@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?all@?$_Locbase@H@std@@2HB DD 03fH			; std::_Locbase<int>::all
CONST	ENDS
;	COMDAT ?messages@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?messages@?$_Locbase@H@std@@2HB DD 020H			; std::_Locbase<int>::messages
CONST	ENDS
;	COMDAT ?time@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?time@?$_Locbase@H@std@@2HB DD 010H			; std::_Locbase<int>::time
CONST	ENDS
;	COMDAT ?numeric@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?numeric@?$_Locbase@H@std@@2HB DD 08H			; std::_Locbase<int>::numeric
CONST	ENDS
;	COMDAT ?monetary@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?monetary@?$_Locbase@H@std@@2HB DD 04H			; std::_Locbase<int>::monetary
CONST	ENDS
;	COMDAT ?ctype@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?ctype@?$_Locbase@H@std@@2HB DD 02H			; std::_Locbase<int>::ctype
CONST	ENDS
;	COMDAT ?collate@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?collate@?$_Locbase@H@std@@2HB DD 01H			; std::_Locbase<int>::collate
CONST	ENDS
_DATA	SEGMENT
__bad_alloc_Message DD FLAT:??_C@_0P@GHFPNOJB@bad?5allocation?$AA@
_DATA	ENDS
;	COMDAT ??_C@_0P@GHFPNOJB@bad?5allocation?$AA@
CONST	SEGMENT
??_C@_0P@GHFPNOJB@bad?5allocation?$AA@ DB 'bad allocation', 00H ; `string'
CONST	ENDS
PUBLIC	??_7bad_alloc@std@@6B@				; std::bad_alloc::`vftable'
PUBLIC	??0bad_alloc@std@@QAE@PBD@Z			; std::bad_alloc::bad_alloc
PUBLIC	??_R4bad_alloc@std@@6B@				; std::bad_alloc::`RTTI Complete Object Locator'
PUBLIC	??_R0?AVbad_alloc@std@@@8			; std::bad_alloc `RTTI Type Descriptor'
PUBLIC	??_R3bad_alloc@std@@8				; std::bad_alloc::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2bad_alloc@std@@8				; std::bad_alloc::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@bad_alloc@std@@8			; std::bad_alloc::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R1A@?0A@EA@exception@std@@8			; std::exception::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVexception@std@@@8			; std::exception `RTTI Type Descriptor'
PUBLIC	??_R3exception@std@@8				; std::exception::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2exception@std@@8				; std::exception::`RTTI Base Class Array'
EXTRN	??0exception@std@@QAE@ABQBD@Z:PROC		; std::exception::exception
EXTRN	??_7type_info@@6B@:QWORD			; type_info::`vftable'
EXTRN	??_Ebad_alloc@std@@UAEPAXI@Z:PROC		; std::bad_alloc::`vector deleting destructor'
EXTRN	?what@exception@std@@UBEPBDXZ:PROC		; std::exception::what
;	COMDAT ??_R2exception@std@@8
; File c:\program files\microsoft visual studio 8\vc\include\exception
rdata$r	SEGMENT
??_R2exception@std@@8 DD FLAT:??_R1A@?0A@EA@exception@std@@8 ; std::exception::`RTTI Base Class Array'
rdata$r	ENDS
;	COMDAT ??_R3exception@std@@8
rdata$r	SEGMENT
??_R3exception@std@@8 DD 00H				; std::exception::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	01H
	DD	FLAT:??_R2exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVexception@std@@@8
_DATA	SEGMENT
??_R0?AVexception@std@@@8 DD FLAT:??_7type_info@@6B@	; std::exception `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVexception@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R1A@?0A@EA@exception@std@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@exception@std@@8 DD FLAT:??_R0?AVexception@std@@@8 ; std::exception::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	00H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@bad_alloc@std@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@bad_alloc@std@@8 DD FLAT:??_R0?AVbad_alloc@std@@@8 ; std::bad_alloc::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3bad_alloc@std@@8
rdata$r	ENDS
;	COMDAT ??_R2bad_alloc@std@@8
rdata$r	SEGMENT
??_R2bad_alloc@std@@8 DD FLAT:??_R1A@?0A@EA@bad_alloc@std@@8 ; std::bad_alloc::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R3bad_alloc@std@@8
rdata$r	SEGMENT
??_R3bad_alloc@std@@8 DD 00H				; std::bad_alloc::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2bad_alloc@std@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVbad_alloc@std@@@8
_DATA	SEGMENT
??_R0?AVbad_alloc@std@@@8 DD FLAT:??_7type_info@@6B@	; std::bad_alloc `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVbad_alloc@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R4bad_alloc@std@@6B@
rdata$r	SEGMENT
??_R4bad_alloc@std@@6B@ DD 00H				; std::bad_alloc::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVbad_alloc@std@@@8
	DD	FLAT:??_R3bad_alloc@std@@8
rdata$r	ENDS
;	COMDAT ??_7bad_alloc@std@@6B@
CONST	SEGMENT
??_7bad_alloc@std@@6B@ DD FLAT:??_R4bad_alloc@std@@6B@	; std::bad_alloc::`vftable'
	DD	FLAT:??_Ebad_alloc@std@@UAEPAXI@Z
	DD	FLAT:?what@exception@std@@UBEPBDXZ
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ??0bad_alloc@std@@QAE@PBD@Z
_TEXT	SEGMENT
__Message$ = 8						; size = 4
??0bad_alloc@std@@QAE@PBD@Z PROC			; std::bad_alloc::bad_alloc, COMDAT
; _this$ = ecx

; 371  : 		{	// construct from message string

	push	esi
	lea	eax, DWORD PTR __Message$[esp]
	push	eax
	mov	esi, ecx
	call	??0exception@std@@QAE@ABQBD@Z		; std::exception::exception
	mov	DWORD PTR [esi], OFFSET ??_7bad_alloc@std@@6B@

; 372  : 		}

	mov	eax, esi
	pop	esi
	ret	4
??0bad_alloc@std@@QAE@PBD@Z ENDP			; std::bad_alloc::bad_alloc
_TEXT	ENDS
PUBLIC	??1bad_alloc@std@@UAE@XZ			; std::bad_alloc::~bad_alloc
EXTRN	??1exception@std@@UAE@XZ:PROC			; std::exception::~exception
; Function compile flags: /Ogtpy
;	COMDAT ??1bad_alloc@std@@UAE@XZ
_TEXT	SEGMENT
??1bad_alloc@std@@UAE@XZ PROC				; std::bad_alloc::~bad_alloc, COMDAT
; _this$ = ecx

; 380  : 		{	// destroy the object

	mov	DWORD PTR [ecx], OFFSET ??_7bad_alloc@std@@6B@

; 381  : 		}

	jmp	??1exception@std@@UAE@XZ		; std::exception::~exception
??1bad_alloc@std@@UAE@XZ ENDP				; std::bad_alloc::~bad_alloc
_TEXT	ENDS
EXTRN	??3@YAXPAX@Z:PROC				; operator delete
; Function compile flags: /Ogtpy
;	COMDAT ??_Gbad_alloc@std@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_Gbad_alloc@std@@UAEPAXI@Z PROC			; std::bad_alloc::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	mov	DWORD PTR [esi], OFFSET ??_7bad_alloc@std@@6B@
	call	??1exception@std@@UAE@XZ		; std::exception::~exception
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $LN6@scalar
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN6@scalar:
	mov	eax, esi
	pop	esi
	ret	4
??_Gbad_alloc@std@@UAEPAXI@Z ENDP			; std::bad_alloc::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	?Can_Team_Build_Vehicle@@YA_NH@Z		; Can_Team_Build_Vehicle
EXTRN	?IsAvailableForPurchase@@YA_NPAE@Z:PROC		; IsAvailableForPurchase
EXTRN	?Is_Building_Dead@@YA_NPAE@Z:PROC		; Is_Building_Dead
EXTRN	?Find_Vehicle_Factory@@YAPAEH@Z:PROC		; Find_Vehicle_Factory
; Function compile flags: /Ogtpy
; File d:\source code\stgm\engine_bhs.cpp
;	COMDAT ?Can_Team_Build_Vehicle@@YA_NH@Z
_TEXT	SEGMENT
_Team$ = 8						; size = 4
?Can_Team_Build_Vehicle@@YA_NH@Z PROC			; Can_Team_Build_Vehicle, COMDAT

; 118  : {

	push	esi

; 119  : 	if (Is_Currently_Building(Team))

	mov	esi, DWORD PTR _Team$[esp]
	push	esi
	call	DWORD PTR ?Is_Currently_Building@@3P6A_NH@ZA ; Is_Currently_Building
	add	esp, 4
	test	al, al
	je	SHORT $LN2@Can_Team_B

; 120  : 	{
; 121  : 		return false;

	xor	al, al
	pop	esi

; 129  : }

	ret	0
$LN2@Can_Team_B:

; 122  : 	}
; 123  : 	GameObject *factory = Find_Vehicle_Factory(Team);

	push	esi
	call	?Find_Vehicle_Factory@@YAPAEH@Z		; Find_Vehicle_Factory
	mov	esi, eax
	add	esp, 4

; 124  : 	if (factory && !Is_Building_Dead(factory))

	test	esi, esi
	je	SHORT $LN1@Can_Team_B
	push	esi
	call	?Is_Building_Dead@@YA_NPAE@Z		; Is_Building_Dead
	add	esp, 4
	test	al, al
	jne	SHORT $LN1@Can_Team_B

; 125  : 	{
; 126  : 		return IsAvailableForPurchase(factory);

	push	esi
	call	?IsAvailableForPurchase@@YA_NPAE@Z	; IsAvailableForPurchase
	add	esp, 4
	pop	esi

; 129  : }

	ret	0
$LN1@Can_Team_B:

; 127  : 	}
; 128  : 	return true;

	mov	al, 1
	pop	esi

; 129  : }

	ret	0
?Can_Team_Build_Vehicle@@YA_NH@Z ENDP			; Can_Team_Build_Vehicle
_TEXT	ENDS
PUBLIC	?Send_Message_With_Team_Color@@YAXHPBD@Z	; Send_Message_With_Team_Color
EXTRN	?Get_Team_Color@@YAXIPAI00@Z:PROC		; Get_Team_Color
; Function compile flags: /Ogtpy
;	COMDAT ?Send_Message_With_Team_Color@@YAXHPBD@Z
_TEXT	SEGMENT
_Blue$ = -12						; size = 4
_Green$ = -8						; size = 4
_Red$ = -4						; size = 4
_Team$ = 8						; size = 4
_Msg$ = 12						; size = 4
?Send_Message_With_Team_Color@@YAXHPBD@Z PROC		; Send_Message_With_Team_Color, COMDAT

; 132  : {

	sub	esp, 12					; 0000000cH

; 133  : 	unsigned int Red = 0,Blue = 0,Green = 0;

	xor	eax, eax
	mov	DWORD PTR _Red$[esp+12], eax
	mov	DWORD PTR _Blue$[esp+12], eax
	mov	DWORD PTR _Green$[esp+12], eax

; 134  : 	Get_Team_Color(Team,&Red,&Green,&Blue);

	lea	eax, DWORD PTR _Blue$[esp+12]
	push	eax
	mov	eax, DWORD PTR _Team$[esp+12]
	lea	ecx, DWORD PTR _Green$[esp+16]
	push	ecx
	lea	edx, DWORD PTR _Red$[esp+20]
	push	edx
	push	eax
	call	?Get_Team_Color@@YAXIPAI00@Z		; Get_Team_Color

; 135  : 	Send_Message(Red,Green,Blue,Msg);

	mov	ecx, DWORD PTR _Msg$[esp+24]
	mov	edx, DWORD PTR _Blue$[esp+28]
	mov	eax, DWORD PTR _Green$[esp+28]
	push	ecx
	mov	ecx, DWORD PTR _Red$[esp+32]
	push	edx
	push	eax
	push	ecx
	call	DWORD PTR ?Send_Message@@3P6AXIIIPBD@ZA	; Send_Message

; 136  : }

	add	esp, 44					; 0000002cH
	ret	0
?Send_Message_With_Team_Color@@YAXHPBD@Z ENDP		; Send_Message_With_Team_Color
_TEXT	ENDS
PUBLIC	?Send_Message_With_Obj_Color@@YAXPAEPBD@Z	; Send_Message_With_Obj_Color
EXTRN	?Get_Object_Color@@YAXPAEPAI11@Z:PROC		; Get_Object_Color
; Function compile flags: /Ogtpy
;	COMDAT ?Send_Message_With_Obj_Color@@YAXPAEPBD@Z
_TEXT	SEGMENT
_Blue$ = -12						; size = 4
_Green$ = -8						; size = 4
_Red$ = -4						; size = 4
_obj$ = 8						; size = 4
_Msg$ = 12						; size = 4
?Send_Message_With_Obj_Color@@YAXPAEPBD@Z PROC		; Send_Message_With_Obj_Color, COMDAT

; 139  : {

	sub	esp, 12					; 0000000cH

; 140  : 	unsigned int Red = 0,Blue = 0,Green = 0;

	xor	eax, eax
	mov	DWORD PTR _Red$[esp+12], eax
	mov	DWORD PTR _Blue$[esp+12], eax
	mov	DWORD PTR _Green$[esp+12], eax

; 141  : 	Get_Object_Color(obj,&Red,&Green,&Blue);

	lea	eax, DWORD PTR _Blue$[esp+12]
	push	eax
	mov	eax, DWORD PTR _obj$[esp+12]
	lea	ecx, DWORD PTR _Green$[esp+16]
	push	ecx
	lea	edx, DWORD PTR _Red$[esp+20]
	push	edx
	push	eax
	call	?Get_Object_Color@@YAXPAEPAI11@Z	; Get_Object_Color

; 142  : 	Send_Message(Red,Green,Blue,Msg);

	mov	ecx, DWORD PTR _Msg$[esp+24]
	mov	edx, DWORD PTR _Blue$[esp+28]
	mov	eax, DWORD PTR _Green$[esp+28]
	push	ecx
	mov	ecx, DWORD PTR _Red$[esp+32]
	push	edx
	push	eax
	push	ecx
	call	DWORD PTR ?Send_Message@@3P6AXIIIPBD@ZA	; Send_Message

; 143  : }

	add	esp, 44					; 0000002cH
	ret	0
?Send_Message_With_Obj_Color@@YAXPAEPBD@Z ENDP		; Send_Message_With_Obj_Color
_TEXT	ENDS
PUBLIC	?Send_Message_Team@@YAXHIIIPBD@Z		; Send_Message_Team
EXTRN	?Get_Object_Type@@YAHPAE@Z:PROC			; Get_Object_Type
EXTRN	?As_SmartGameObj@@YAPAEPAE@Z:PROC		; As_SmartGameObj
EXTRN	?SmartGameObjList@@3PAV?$SList@E@@A:DWORD	; SmartGameObjList
; Function compile flags: /Ogtpy
;	COMDAT ?Send_Message_Team@@YAXHIIIPBD@Z
_TEXT	SEGMENT
_team$ = 8						; size = 4
_red$ = 12						; size = 4
_green$ = 16						; size = 4
_blue$ = 20						; size = 4
_msg$ = 24						; size = 4
?Send_Message_Team@@YAXHIIIPBD@Z PROC			; Send_Message_Team, COMDAT

; 147  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	eax, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	push	edi
	mov	edi, DWORD PTR [eax+4]

; 148  : 	while (x)

	test	edi, edi
	je	SHORT $LN4@Send_Messa
	push	ebx
	mov	ebx, DWORD PTR _msg$[esp+4]
	push	ebp
	mov	ebp, DWORD PTR _blue$[esp+8]
	push	esi
	npad	8
$LL5@Send_Messa:

; 149  : 	{
; 150  : 		GameObject *o = As_SmartGameObj((GameObject *)x->NodeData);

	mov	ecx, DWORD PTR [edi+4]
	push	ecx
	call	?As_SmartGameObj@@YAPAEPAE@Z		; As_SmartGameObj
	mov	esi, eax
	add	esp, 4

; 151  : 		if (o)

	test	esi, esi
	je	SHORT $LN10@Send_Messa

; 152  : 		{
; 153  : 			if ((Get_Object_Type(o) == team) || (team == 2))

	push	esi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	mov	ecx, DWORD PTR _team$[esp+16]
	add	esp, 4
	cmp	eax, ecx
	je	SHORT $LN1@Send_Messa
	cmp	ecx, 2
	jne	SHORT $LN10@Send_Messa
$LN1@Send_Messa:

; 154  : 			{
; 155  : 				Send_Message_Player(o,red,green,blue,msg);

	mov	edx, DWORD PTR _green$[esp+12]
	mov	eax, DWORD PTR _red$[esp+12]
	push	ebx
	push	ebp
	push	edx
	push	eax
	push	esi
	call	DWORD PTR ?Send_Message_Player@@3P6AXPAEIIIPBD@ZA ; Send_Message_Player
	add	esp, 20					; 00000014H
$LN10@Send_Messa:

; 156  : 			}
; 157  : 		}
; 158  : 		x = x->NodeNext;

	mov	edi, DWORD PTR [edi]
	test	edi, edi
	jne	SHORT $LL5@Send_Messa
	pop	esi
	pop	ebp
	pop	ebx
$LN4@Send_Messa:
	pop	edi

; 159  : 	}
; 160  : }

	ret	0
?Send_Message_Team@@YAXHIIIPBD@Z ENDP			; Send_Message_Team
_TEXT	ENDS
PUBLIC	?Set_Obj_Radar_Blip_Shape_Team@@YAXHPAEH@Z	; Set_Obj_Radar_Blip_Shape_Team
; Function compile flags: /Ogtpy
;	COMDAT ?Set_Obj_Radar_Blip_Shape_Team@@YAXHPAEH@Z
_TEXT	SEGMENT
_Team$ = 8						; size = 4
_obj$ = 12						; size = 4
_shape$ = 16						; size = 4
?Set_Obj_Radar_Blip_Shape_Team@@YAXHPAEH@Z PROC		; Set_Obj_Radar_Blip_Shape_Team, COMDAT

; 164  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	eax, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	push	edi
	mov	edi, DWORD PTR [eax+4]

; 165  : 	while (x)

	test	edi, edi
	je	SHORT $LN4@Set_Obj_Ra
	push	ebx
	mov	ebx, DWORD PTR _Team$[esp+4]
	push	ebp
	mov	ebp, DWORD PTR _shape$[esp+8]
	push	esi
	npad	8
$LL5@Set_Obj_Ra:

; 166  : 	{
; 167  : 		GameObject *o = As_SmartGameObj((GameObject *)x->NodeData);

	mov	ecx, DWORD PTR [edi+4]
	push	ecx
	call	?As_SmartGameObj@@YAPAEPAE@Z		; As_SmartGameObj
	mov	esi, eax
	add	esp, 4

; 168  : 		if (o)

	test	esi, esi
	je	SHORT $LN10@Set_Obj_Ra

; 169  : 		{
; 170  : 			if ((Get_Object_Type(o) == Team) || (Team == 2))

	push	esi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $LN1@Set_Obj_Ra
	cmp	ebx, 2
	jne	SHORT $LN10@Set_Obj_Ra
$LN1@Set_Obj_Ra:

; 171  : 			{
; 172  : 				Set_Obj_Radar_Blip_Shape_Player(o,obj,shape);

	mov	edx, DWORD PTR _obj$[esp+12]
	push	ebp
	push	edx
	push	esi
	call	DWORD PTR ?Set_Obj_Radar_Blip_Shape_Player@@3P6AXPAE0H@ZA ; Set_Obj_Radar_Blip_Shape_Player
	add	esp, 12					; 0000000cH
$LN10@Set_Obj_Ra:

; 173  : 			}
; 174  : 		}
; 175  : 		x = x->NodeNext;

	mov	edi, DWORD PTR [edi]
	test	edi, edi
	jne	SHORT $LL5@Set_Obj_Ra
	pop	esi
	pop	ebp
	pop	ebx
$LN4@Set_Obj_Ra:
	pop	edi

; 176  : 	}
; 177  : }

	ret	0
?Set_Obj_Radar_Blip_Shape_Team@@YAXHPAEH@Z ENDP		; Set_Obj_Radar_Blip_Shape_Team
_TEXT	ENDS
PUBLIC	?Set_Obj_Radar_Blip_Color_Team@@YAXHPAEH@Z	; Set_Obj_Radar_Blip_Color_Team
; Function compile flags: /Ogtpy
;	COMDAT ?Set_Obj_Radar_Blip_Color_Team@@YAXHPAEH@Z
_TEXT	SEGMENT
_Team$ = 8						; size = 4
_obj$ = 12						; size = 4
_color$ = 16						; size = 4
?Set_Obj_Radar_Blip_Color_Team@@YAXHPAEH@Z PROC		; Set_Obj_Radar_Blip_Color_Team, COMDAT

; 181  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	eax, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	push	edi
	mov	edi, DWORD PTR [eax+4]

; 182  : 	while (x)

	test	edi, edi
	je	SHORT $LN4@Set_Obj_Ra@2
	push	ebx
	mov	ebx, DWORD PTR _Team$[esp+4]
	push	ebp
	mov	ebp, DWORD PTR _color$[esp+8]
	push	esi
	npad	8
$LL5@Set_Obj_Ra@2:

; 183  : 	{
; 184  : 		GameObject *o = As_SmartGameObj((GameObject *)x->NodeData);

	mov	ecx, DWORD PTR [edi+4]
	push	ecx
	call	?As_SmartGameObj@@YAPAEPAE@Z		; As_SmartGameObj
	mov	esi, eax
	add	esp, 4

; 185  : 		if (o)

	test	esi, esi
	je	SHORT $LN10@Set_Obj_Ra@2

; 186  : 		{
; 187  : 			if ((Get_Object_Type(o) == Team) || (Team == 2))

	push	esi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $LN1@Set_Obj_Ra@2
	cmp	ebx, 2
	jne	SHORT $LN10@Set_Obj_Ra@2
$LN1@Set_Obj_Ra@2:

; 188  : 			{
; 189  : 				Set_Obj_Radar_Blip_Color_Player(o,obj,color);

	mov	edx, DWORD PTR _obj$[esp+12]
	push	ebp
	push	edx
	push	esi
	call	DWORD PTR ?Set_Obj_Radar_Blip_Color_Player@@3P6AXPAE0H@ZA ; Set_Obj_Radar_Blip_Color_Player
	add	esp, 12					; 0000000cH
$LN10@Set_Obj_Ra@2:

; 190  : 			}
; 191  : 		}
; 192  : 		x = x->NodeNext;

	mov	edi, DWORD PTR [edi]
	test	edi, edi
	jne	SHORT $LL5@Set_Obj_Ra@2
	pop	esi
	pop	ebp
	pop	ebx
$LN4@Set_Obj_Ra@2:
	pop	edi

; 193  : 	}
; 194  : }

	ret	0
?Set_Obj_Radar_Blip_Color_Team@@YAXHPAEH@Z ENDP		; Set_Obj_Radar_Blip_Color_Team
_TEXT	ENDS
PUBLIC	??_7?$VectorClass@PAE@@6B@			; VectorClass<unsigned char *>::`vftable'
PUBLIC	??0?$VectorClass@PAE@@QAE@ABV0@@Z		; VectorClass<unsigned char *>::VectorClass<unsigned char *>
PUBLIC	??_R4?$VectorClass@PAE@@6B@			; VectorClass<unsigned char *>::`RTTI Complete Object Locator'
PUBLIC	??_R0?AV?$VectorClass@PAE@@@8			; VectorClass<unsigned char *> `RTTI Type Descriptor'
PUBLIC	??_R3?$VectorClass@PAE@@8			; VectorClass<unsigned char *>::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2?$VectorClass@PAE@@8			; VectorClass<unsigned char *>::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@?$VectorClass@PAE@@8		; VectorClass<unsigned char *>::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??8?$VectorClass@PAE@@UAE_NAAV0@@Z		; VectorClass<unsigned char *>::operator==
PUBLIC	?Resize@?$VectorClass@PAE@@UAE_NHPAPAE@Z	; VectorClass<unsigned char *>::Resize
PUBLIC	?Clear@?$VectorClass@PAE@@UAEXXZ		; VectorClass<unsigned char *>::Clear
PUBLIC	?ID@?$VectorClass@PAE@@UAEHPAPAE@Z		; VectorClass<unsigned char *>::ID
PUBLIC	?ID@?$VectorClass@PAE@@UAEHAAPAE@Z		; VectorClass<unsigned char *>::ID
EXTRN	??_E?$VectorClass@PAE@@UAEPAXI@Z:PROC		; VectorClass<unsigned char *>::`vector deleting destructor'
;	COMDAT ??_R1A@?0A@EA@?$VectorClass@PAE@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@?$VectorClass@PAE@@8 DD FLAT:??_R0?AV?$VectorClass@PAE@@@8 ; VectorClass<unsigned char *>::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	00H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3?$VectorClass@PAE@@8
rdata$r	ENDS
;	COMDAT ??_R2?$VectorClass@PAE@@8
rdata$r	SEGMENT
??_R2?$VectorClass@PAE@@8 DD FLAT:??_R1A@?0A@EA@?$VectorClass@PAE@@8 ; VectorClass<unsigned char *>::`RTTI Base Class Array'
rdata$r	ENDS
;	COMDAT ??_R3?$VectorClass@PAE@@8
rdata$r	SEGMENT
??_R3?$VectorClass@PAE@@8 DD 00H			; VectorClass<unsigned char *>::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	01H
	DD	FLAT:??_R2?$VectorClass@PAE@@8
rdata$r	ENDS
;	COMDAT ??_R0?AV?$VectorClass@PAE@@@8
_DATA	SEGMENT
??_R0?AV?$VectorClass@PAE@@@8 DD FLAT:??_7type_info@@6B@ ; VectorClass<unsigned char *> `RTTI Type Descriptor'
	DD	00H
	DB	'.?AV?$VectorClass@PAE@@', 00H
_DATA	ENDS
;	COMDAT ??_R4?$VectorClass@PAE@@6B@
rdata$r	SEGMENT
??_R4?$VectorClass@PAE@@6B@ DD 00H			; VectorClass<unsigned char *>::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AV?$VectorClass@PAE@@@8
	DD	FLAT:??_R3?$VectorClass@PAE@@8
rdata$r	ENDS
;	COMDAT ??_7?$VectorClass@PAE@@6B@
CONST	SEGMENT
??_7?$VectorClass@PAE@@6B@ DD FLAT:??_R4?$VectorClass@PAE@@6B@ ; VectorClass<unsigned char *>::`vftable'
	DD	FLAT:??_E?$VectorClass@PAE@@UAEPAXI@Z
	DD	FLAT:??8?$VectorClass@PAE@@UAE_NAAV0@@Z
	DD	FLAT:?Resize@?$VectorClass@PAE@@UAE_NHPAPAE@Z
	DD	FLAT:?Clear@?$VectorClass@PAE@@UAEXXZ
	DD	FLAT:?ID@?$VectorClass@PAE@@UAEHPAPAE@Z
	DD	FLAT:?ID@?$VectorClass@PAE@@UAEHAAPAE@Z
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ??0?$VectorClass@PAE@@QAE@ABV0@@Z
_TEXT	SEGMENT
___that$ = 8						; size = 4
??0?$VectorClass@PAE@@QAE@ABV0@@Z PROC			; VectorClass<unsigned char *>::VectorClass<unsigned char *>, COMDAT
; _this$ = ecx
	mov	eax, ecx
	mov	ecx, DWORD PTR ___that$[esp-4]
	mov	DWORD PTR [eax], OFFSET ??_7?$VectorClass@PAE@@6B@
	mov	edx, DWORD PTR [ecx+4]
	mov	DWORD PTR [eax+4], edx
	mov	edx, DWORD PTR [ecx+8]
	mov	DWORD PTR [eax+8], edx
	mov	dl, BYTE PTR [ecx+12]
	mov	BYTE PTR [eax+12], dl
	mov	cl, BYTE PTR [ecx+13]
	mov	BYTE PTR [eax+13], cl
	ret	4
??0?$VectorClass@PAE@@QAE@ABV0@@Z ENDP			; VectorClass<unsigned char *>::VectorClass<unsigned char *>
_TEXT	ENDS
PUBLIC	?Enable_Team_Radar@@YAXH_N@Z			; Enable_Team_Radar
; Function compile flags: /Ogtpy
;	COMDAT ?Enable_Team_Radar@@YAXH_N@Z
_TEXT	SEGMENT
_Team$ = 8						; size = 4
_Enable$ = 12						; size = 1
?Enable_Team_Radar@@YAXH_N@Z PROC			; Enable_Team_Radar, COMDAT

; 221  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	eax, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	push	edi
	mov	edi, DWORD PTR [eax+4]

; 222  : 	while (x)

	test	edi, edi
	je	SHORT $LN4@Enable_Tea
	push	ebx
	mov	ebx, DWORD PTR _Team$[esp+4]
	push	ebp
	mov	ebp, DWORD PTR _Enable$[esp+8]
	push	esi
	npad	8
$LL5@Enable_Tea:

; 223  : 	{
; 224  : 		GameObject *o = As_SmartGameObj((GameObject *)x->NodeData);

	mov	ecx, DWORD PTR [edi+4]
	push	ecx
	call	?As_SmartGameObj@@YAPAEPAE@Z		; As_SmartGameObj
	mov	esi, eax
	add	esp, 4

; 225  : 		if (o)

	test	esi, esi
	je	SHORT $LN10@Enable_Tea

; 226  : 		{
; 227  : 			if ((Get_Object_Type(o) == Team) || (Team == 2))

	push	esi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $LN1@Enable_Tea
	cmp	ebx, 2
	jne	SHORT $LN10@Enable_Tea
$LN1@Enable_Tea:

; 228  : 			{
; 229  : 				Enable_Radar_Player(o,Enable);

	push	ebp
	push	esi
	call	DWORD PTR ?Enable_Radar_Player@@3P6AXPAE_N@ZA ; Enable_Radar_Player
	add	esp, 8
$LN10@Enable_Tea:

; 230  : 			}
; 231  : 		}
; 232  : 		x = x->NodeNext;

	mov	edi, DWORD PTR [edi]
	test	edi, edi
	jne	SHORT $LL5@Enable_Tea
	pop	esi
	pop	ebp
	pop	ebx
$LN4@Enable_Tea:
	pop	edi

; 233  : 	}
; 234  : }

	ret	0
?Enable_Team_Radar@@YAXH_N@Z ENDP			; Enable_Team_Radar
_TEXT	ENDS
PUBLIC	?Create_Sound_Team@@YAXPBDABUVector3@@PAEH@Z	; Create_Sound_Team
EXTRN	?Commands@@3PAUScriptCommands@@A:DWORD		; Commands
; Function compile flags: /Ogtpy
;	COMDAT ?Create_Sound_Team@@YAXPBDABUVector3@@PAEH@Z
_TEXT	SEGMENT
_soundname$ = 8						; size = 4
_position$ = 12						; size = 4
_obj$ = 16						; size = 4
_team$ = 20						; size = 4
?Create_Sound_Team@@YAXPBDABUVector3@@PAEH@Z PROC	; Create_Sound_Team, COMDAT

; 238  : 	if (!Commands->Get_ID(obj) || !obj)

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	ecx, DWORD PTR [eax+108]
	push	esi
	mov	esi, DWORD PTR _obj$[esp]
	push	esi
	call	ecx
	add	esp, 4
	test	eax, eax
	je	SHORT $LN6@Create_Sou
	test	esi, esi
	je	SHORT $LN6@Create_Sou

; 239  : 	{
; 240  : 		return;
; 241  : 	}
; 242  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	edx, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	push	edi
	mov	edi, DWORD PTR [edx+4]

; 243  : 	while (x)

	test	edi, edi
	je	SHORT $LN13@Create_Sou
	push	ebx
	mov	ebx, DWORD PTR _team$[esp+8]
	push	ebp
	mov	ebp, DWORD PTR _position$[esp+12]
$LL5@Create_Sou:

; 244  : 	{
; 245  : 		GameObject *o = As_SmartGameObj((GameObject *)x->NodeData);

	mov	eax, DWORD PTR [edi+4]
	push	eax
	call	?As_SmartGameObj@@YAPAEPAE@Z		; As_SmartGameObj
	mov	esi, eax
	add	esp, 4

; 246  : 		if (o)

	test	esi, esi
	je	SHORT $LN12@Create_Sou

; 247  : 		{
; 248  : 			if ((Get_Object_Type(o) == team) || (team == 2))

	push	esi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $LN1@Create_Sou
	cmp	ebx, 2
	jne	SHORT $LN12@Create_Sou
$LN1@Create_Sou:

; 249  : 			{
; 250  : 				Create_Sound_Player(o,soundname,position,obj);

	mov	ecx, DWORD PTR _obj$[esp+12]
	mov	edx, DWORD PTR _soundname$[esp+12]
	push	ecx
	push	ebp
	push	edx
	push	esi
	call	DWORD PTR ?Create_Sound_Player@@3P6AHPAEPBDABUVector3@@0@ZA ; Create_Sound_Player
	add	esp, 16					; 00000010H
$LN12@Create_Sou:

; 251  : 			}
; 252  : 		}
; 253  : 		x = x->NodeNext;

	mov	edi, DWORD PTR [edi]
	test	edi, edi
	jne	SHORT $LL5@Create_Sou
	pop	ebp
	pop	ebx
$LN13@Create_Sou:
	pop	edi
$LN6@Create_Sou:
	pop	esi

; 254  : 	}
; 255  : }

	ret	0
?Create_Sound_Team@@YAXPBDABUVector3@@PAEH@Z ENDP	; Create_Sound_Team
_TEXT	ENDS
PUBLIC	?Create_2D_Sound_Team@@YAXPBDH@Z		; Create_2D_Sound_Team
; Function compile flags: /Ogtpy
;	COMDAT ?Create_2D_Sound_Team@@YAXPBDH@Z
_TEXT	SEGMENT
_soundname$ = 8						; size = 4
_team$ = 12						; size = 4
?Create_2D_Sound_Team@@YAXPBDH@Z PROC			; Create_2D_Sound_Team, COMDAT

; 259  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	eax, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	push	edi
	mov	edi, DWORD PTR [eax+4]

; 260  : 	while (x)

	test	edi, edi
	je	SHORT $LN4@Create_2D_
	push	ebx
	mov	ebx, DWORD PTR _team$[esp+4]
	push	ebp
	mov	ebp, DWORD PTR _soundname$[esp+8]
	push	esi
	npad	8
$LL5@Create_2D_:

; 261  : 	{
; 262  : 		GameObject *o = As_SmartGameObj((GameObject *)x->NodeData);

	mov	ecx, DWORD PTR [edi+4]
	push	ecx
	call	?As_SmartGameObj@@YAPAEPAE@Z		; As_SmartGameObj
	mov	esi, eax
	add	esp, 4

; 263  : 		if (o)

	test	esi, esi
	je	SHORT $LN10@Create_2D_

; 264  : 		{
; 265  : 			if ((Get_Object_Type(o) == team) || (team == 2))

	push	esi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $LN1@Create_2D_
	cmp	ebx, 2
	jne	SHORT $LN10@Create_2D_
$LN1@Create_2D_:

; 266  : 			{
; 267  : 				Create_2D_Sound_Player(o,soundname);

	push	ebp
	push	esi
	call	DWORD PTR ?Create_2D_Sound_Player@@3P6AHPAEPBD@ZA ; Create_2D_Sound_Player
	add	esp, 8
$LN10@Create_2D_:

; 268  : 			}
; 269  : 		}
; 270  : 		x = x->NodeNext;

	mov	edi, DWORD PTR [edi]
	test	edi, edi
	jne	SHORT $LL5@Create_2D_
	pop	esi
	pop	ebp
	pop	ebx
$LN4@Create_2D_:
	pop	edi

; 271  : 	}
; 272  : }

	ret	0
?Create_2D_Sound_Team@@YAXPBDH@Z ENDP			; Create_2D_Sound_Team
_TEXT	ENDS
PUBLIC	?Create_2D_WAV_Sound_Team@@YAXPBDH@Z		; Create_2D_WAV_Sound_Team
; Function compile flags: /Ogtpy
;	COMDAT ?Create_2D_WAV_Sound_Team@@YAXPBDH@Z
_TEXT	SEGMENT
_soundname$ = 8						; size = 4
_team$ = 12						; size = 4
?Create_2D_WAV_Sound_Team@@YAXPBDH@Z PROC		; Create_2D_WAV_Sound_Team, COMDAT

; 276  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	eax, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	push	edi
	mov	edi, DWORD PTR [eax+4]

; 277  : 	while (x)

	test	edi, edi
	je	SHORT $LN4@Create_2D_@2
	push	ebx
	mov	ebx, DWORD PTR _team$[esp+4]
	push	ebp
	mov	ebp, DWORD PTR _soundname$[esp+8]
	push	esi
	npad	8
$LL5@Create_2D_@2:

; 278  : 	{
; 279  : 		GameObject *o = As_SmartGameObj((GameObject *)x->NodeData);

	mov	ecx, DWORD PTR [edi+4]
	push	ecx
	call	?As_SmartGameObj@@YAPAEPAE@Z		; As_SmartGameObj
	mov	esi, eax
	add	esp, 4

; 280  : 		if (o)

	test	esi, esi
	je	SHORT $LN10@Create_2D_@2

; 281  : 		{
; 282  : 			if ((Get_Object_Type(o) == team) || (team == 2))

	push	esi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $LN1@Create_2D_@2
	cmp	ebx, 2
	jne	SHORT $LN10@Create_2D_@2
$LN1@Create_2D_@2:

; 283  : 			{
; 284  : 				Create_2D_WAV_Sound_Player(o,soundname);

	push	ebp
	push	esi
	call	DWORD PTR ?Create_2D_WAV_Sound_Player@@3P6AHPAEPBD@ZA ; Create_2D_WAV_Sound_Player
	add	esp, 8
$LN10@Create_2D_@2:

; 285  : 			}
; 286  : 		}
; 287  : 		x = x->NodeNext;

	mov	edi, DWORD PTR [edi]
	test	edi, edi
	jne	SHORT $LL5@Create_2D_@2
	pop	esi
	pop	ebp
	pop	ebx
$LN4@Create_2D_@2:
	pop	edi

; 288  : 	}
; 289  : }

	ret	0
?Create_2D_WAV_Sound_Team@@YAXPBDH@Z ENDP		; Create_2D_WAV_Sound_Team
_TEXT	ENDS
PUBLIC	?Create_3D_WAV_Sound_At_Bone_Team@@YAXPBDPAE0H@Z ; Create_3D_WAV_Sound_At_Bone_Team
; Function compile flags: /Ogtpy
;	COMDAT ?Create_3D_WAV_Sound_At_Bone_Team@@YAXPBDPAE0H@Z
_TEXT	SEGMENT
_soundname$ = 8						; size = 4
_obj$ = 12						; size = 4
_bonename$ = 16						; size = 4
_team$ = 20						; size = 4
?Create_3D_WAV_Sound_At_Bone_Team@@YAXPBDPAE0H@Z PROC	; Create_3D_WAV_Sound_At_Bone_Team, COMDAT

; 293  : 	if (!Commands->Get_ID(obj) || !obj)

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	ecx, DWORD PTR [eax+108]
	push	esi
	mov	esi, DWORD PTR _obj$[esp]
	push	esi
	call	ecx
	add	esp, 4
	test	eax, eax
	je	SHORT $LN6@Create_3D_
	test	esi, esi
	je	SHORT $LN6@Create_3D_

; 294  : 	{
; 295  : 		return;
; 296  : 	}
; 297  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	edx, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	push	edi
	mov	edi, DWORD PTR [edx+4]

; 298  : 	while (x)

	test	edi, edi
	je	SHORT $LN13@Create_3D_
	push	ebx
	mov	ebx, DWORD PTR _team$[esp+8]
	push	ebp
	mov	ebp, DWORD PTR _bonename$[esp+12]
$LL5@Create_3D_:

; 299  : 	{
; 300  : 		GameObject *o = As_SmartGameObj((GameObject *)x->NodeData);

	mov	eax, DWORD PTR [edi+4]
	push	eax
	call	?As_SmartGameObj@@YAPAEPAE@Z		; As_SmartGameObj
	mov	esi, eax
	add	esp, 4

; 301  : 		if (o)

	test	esi, esi
	je	SHORT $LN12@Create_3D_

; 302  : 		{
; 303  : 			if ((Get_Object_Type(o) == team) || (team == 2))

	push	esi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $LN1@Create_3D_
	cmp	ebx, 2
	jne	SHORT $LN12@Create_3D_
$LN1@Create_3D_:

; 304  : 			{
; 305  : 				Create_3D_WAV_Sound_At_Bone_Player(o,soundname,obj,bonename);

	mov	ecx, DWORD PTR _obj$[esp+12]
	mov	edx, DWORD PTR _soundname$[esp+12]
	push	ebp
	push	ecx
	push	edx
	push	esi
	call	DWORD PTR ?Create_3D_WAV_Sound_At_Bone_Player@@3P6AHPAEPBD01@ZA ; Create_3D_WAV_Sound_At_Bone_Player
	add	esp, 16					; 00000010H
$LN12@Create_3D_:

; 306  : 			}
; 307  : 		}
; 308  : 		x = x->NodeNext;

	mov	edi, DWORD PTR [edi]
	test	edi, edi
	jne	SHORT $LL5@Create_3D_
	pop	ebp
	pop	ebx
$LN13@Create_3D_:
	pop	edi
$LN6@Create_3D_:
	pop	esi

; 309  : 	}
; 310  : }

	ret	0
?Create_3D_WAV_Sound_At_Bone_Team@@YAXPBDPAE0H@Z ENDP	; Create_3D_WAV_Sound_At_Bone_Team
_TEXT	ENDS
PUBLIC	?Create_3D_Sound_At_Bone_Team@@YAXPBDPAE0H@Z	; Create_3D_Sound_At_Bone_Team
; Function compile flags: /Ogtpy
;	COMDAT ?Create_3D_Sound_At_Bone_Team@@YAXPBDPAE0H@Z
_TEXT	SEGMENT
_soundname$ = 8						; size = 4
_obj$ = 12						; size = 4
_bonename$ = 16						; size = 4
_team$ = 20						; size = 4
?Create_3D_Sound_At_Bone_Team@@YAXPBDPAE0H@Z PROC	; Create_3D_Sound_At_Bone_Team, COMDAT

; 314  : 	if (!Commands->Get_ID(obj) || !obj)

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	ecx, DWORD PTR [eax+108]
	push	esi
	mov	esi, DWORD PTR _obj$[esp]
	push	esi
	call	ecx
	add	esp, 4
	test	eax, eax
	je	SHORT $LN6@Create_3D_@2
	test	esi, esi
	je	SHORT $LN6@Create_3D_@2

; 315  : 	{
; 316  : 		return;
; 317  : 	}
; 318  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	edx, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	push	edi
	mov	edi, DWORD PTR [edx+4]

; 319  : 	while (x)

	test	edi, edi
	je	SHORT $LN13@Create_3D_@2
	push	ebx
	mov	ebx, DWORD PTR _team$[esp+8]
	push	ebp
	mov	ebp, DWORD PTR _bonename$[esp+12]
$LL5@Create_3D_@2:

; 320  : 	{
; 321  : 		GameObject *o = As_SmartGameObj((GameObject *)x->NodeData);

	mov	eax, DWORD PTR [edi+4]
	push	eax
	call	?As_SmartGameObj@@YAPAEPAE@Z		; As_SmartGameObj
	mov	esi, eax
	add	esp, 4

; 322  : 		if (o)

	test	esi, esi
	je	SHORT $LN12@Create_3D_@2

; 323  : 		{
; 324  : 			if ((Get_Object_Type(o) == team) || (team == 2))

	push	esi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $LN1@Create_3D_@2
	cmp	ebx, 2
	jne	SHORT $LN12@Create_3D_@2
$LN1@Create_3D_@2:

; 325  : 			{
; 326  : 				Create_3D_Sound_At_Bone_Player(o,soundname,obj,bonename);

	mov	ecx, DWORD PTR _obj$[esp+12]
	mov	edx, DWORD PTR _soundname$[esp+12]
	push	ebp
	push	ecx
	push	edx
	push	esi
	call	DWORD PTR ?Create_3D_Sound_At_Bone_Player@@3P6AHPAEPBD01@ZA ; Create_3D_Sound_At_Bone_Player
	add	esp, 16					; 00000010H
$LN12@Create_3D_@2:

; 327  : 			}
; 328  : 		}
; 329  : 		x = x->NodeNext;

	mov	edi, DWORD PTR [edi]
	test	edi, edi
	jne	SHORT $LL5@Create_3D_@2
	pop	ebp
	pop	ebx
$LN13@Create_3D_@2:
	pop	edi
$LN6@Create_3D_@2:
	pop	esi

; 330  : 	}
; 331  : }

	ret	0
?Create_3D_Sound_At_Bone_Team@@YAXPBDPAE0H@Z ENDP	; Create_3D_Sound_At_Bone_Team
_TEXT	ENDS
PUBLIC	?Set_Display_Color_Team@@YAXEEEH@Z		; Set_Display_Color_Team
; Function compile flags: /Ogtpy
;	COMDAT ?Set_Display_Color_Team@@YAXEEEH@Z
_TEXT	SEGMENT
_red$ = 8						; size = 1
_green$ = 12						; size = 1
_blue$ = 16						; size = 1
_team$ = 20						; size = 4
?Set_Display_Color_Team@@YAXEEEH@Z PROC			; Set_Display_Color_Team, COMDAT

; 335  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	eax, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	push	edi
	mov	edi, DWORD PTR [eax+4]

; 336  : 	while (x)

	test	edi, edi
	je	SHORT $LN4@Set_Displa
	push	ebx
	mov	ebx, DWORD PTR _team$[esp+4]
	push	ebp
	mov	ebp, DWORD PTR _red$[esp+8]
	push	esi
	npad	8
$LL5@Set_Displa:

; 337  : 	{
; 338  : 		GameObject *o = As_SmartGameObj((GameObject *)x->NodeData);

	mov	ecx, DWORD PTR [edi+4]
	push	ecx
	call	?As_SmartGameObj@@YAPAEPAE@Z		; As_SmartGameObj
	mov	esi, eax
	add	esp, 4

; 339  : 		if (o)

	test	esi, esi
	je	SHORT $LN10@Set_Displa

; 340  : 		{
; 341  : 			if ((Get_Object_Type(o) == team) || (team == 2))

	push	esi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $LN1@Set_Displa
	cmp	ebx, 2
	jne	SHORT $LN10@Set_Displa
$LN1@Set_Displa:

; 342  : 			{
; 343  : 				Set_Display_Color_Player(o,red,green,blue);

	mov	edx, DWORD PTR _blue$[esp+12]
	mov	eax, DWORD PTR _green$[esp+12]
	push	edx
	push	eax
	push	ebp
	push	esi
	call	DWORD PTR ?Set_Display_Color_Player@@3P6AXPAEEEE@ZA ; Set_Display_Color_Player
	add	esp, 16					; 00000010H
$LN10@Set_Displa:

; 344  : 			}
; 345  : 		}
; 346  : 		x = x->NodeNext;

	mov	edi, DWORD PTR [edi]
	test	edi, edi
	jne	SHORT $LL5@Set_Displa
	pop	esi
	pop	ebp
	pop	ebx
$LN4@Set_Displa:
	pop	edi

; 347  : 	}
; 348  : }

	ret	0
?Set_Display_Color_Team@@YAXEEEH@Z ENDP			; Set_Display_Color_Team
_TEXT	ENDS
PUBLIC	?Display_Text_Team@@YAXHH@Z			; Display_Text_Team
; Function compile flags: /Ogtpy
;	COMDAT ?Display_Text_Team@@YAXHH@Z
_TEXT	SEGMENT
_strnum$ = 8						; size = 4
_team$ = 12						; size = 4
?Display_Text_Team@@YAXHH@Z PROC			; Display_Text_Team, COMDAT

; 352  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	eax, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	push	edi
	mov	edi, DWORD PTR [eax+4]

; 353  : 	while (x)

	test	edi, edi
	je	SHORT $LN4@Display_Te
	push	ebx
	mov	ebx, DWORD PTR _team$[esp+4]
	push	ebp
	mov	ebp, DWORD PTR _strnum$[esp+8]
	push	esi
	npad	8
$LL5@Display_Te:

; 354  : 	{
; 355  : 		GameObject *o = As_SmartGameObj((GameObject *)x->NodeData);

	mov	ecx, DWORD PTR [edi+4]
	push	ecx
	call	?As_SmartGameObj@@YAPAEPAE@Z		; As_SmartGameObj
	mov	esi, eax
	add	esp, 4

; 356  : 		if (o)

	test	esi, esi
	je	SHORT $LN10@Display_Te

; 357  : 		{
; 358  : 			if ((Get_Object_Type(o) == team) || (team == 2))

	push	esi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $LN1@Display_Te
	cmp	ebx, 2
	jne	SHORT $LN10@Display_Te
$LN1@Display_Te:

; 359  : 			{
; 360  : 				Display_Text_Player(o,strnum);

	push	ebp
	push	esi
	call	DWORD PTR ?Display_Text_Player@@3P6AXPAEH@ZA ; Display_Text_Player
	add	esp, 8
$LN10@Display_Te:

; 361  : 			}
; 362  : 		}
; 363  : 		x = x->NodeNext;

	mov	edi, DWORD PTR [edi]
	test	edi, edi
	jne	SHORT $LL5@Display_Te
	pop	esi
	pop	ebp
	pop	ebx
$LN4@Display_Te:
	pop	edi

; 364  : 	}
; 365  : }

	ret	0
?Display_Text_Team@@YAXHH@Z ENDP			; Display_Text_Team
_TEXT	ENDS
PUBLIC	?Display_Int_Team@@YAXHPBDH@Z			; Display_Int_Team
; Function compile flags: /Ogtpy
;	COMDAT ?Display_Int_Team@@YAXHPBDH@Z
_TEXT	SEGMENT
_num$ = 8						; size = 4
_msg$ = 12						; size = 4
_team$ = 16						; size = 4
?Display_Int_Team@@YAXHPBDH@Z PROC			; Display_Int_Team, COMDAT

; 369  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	eax, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	push	edi
	mov	edi, DWORD PTR [eax+4]

; 370  : 	while (x)

	test	edi, edi
	je	SHORT $LN4@Display_In
	push	ebx
	mov	ebx, DWORD PTR _team$[esp+4]
	push	ebp
	mov	ebp, DWORD PTR _msg$[esp+8]
	push	esi
	npad	8
$LL5@Display_In:

; 371  : 	{
; 372  : 		GameObject *o = As_SmartGameObj((GameObject *)x->NodeData);

	mov	ecx, DWORD PTR [edi+4]
	push	ecx
	call	?As_SmartGameObj@@YAPAEPAE@Z		; As_SmartGameObj
	mov	esi, eax
	add	esp, 4

; 373  : 		if (o)

	test	esi, esi
	je	SHORT $LN10@Display_In

; 374  : 		{
; 375  : 			if ((Get_Object_Type(o) == team) || (team == 2))

	push	esi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $LN1@Display_In
	cmp	ebx, 2
	jne	SHORT $LN10@Display_In
$LN1@Display_In:

; 376  : 			{
; 377  : 				Display_Int_Player(o,num,msg);

	mov	edx, DWORD PTR _num$[esp+12]
	push	ebp
	push	edx
	push	esi
	call	DWORD PTR ?Display_Int_Player@@3P6AXPAEHPBD@ZA ; Display_Int_Player
	add	esp, 12					; 0000000cH
$LN10@Display_In:

; 378  : 			}
; 379  : 		}
; 380  : 		x = x->NodeNext;

	mov	edi, DWORD PTR [edi]
	test	edi, edi
	jne	SHORT $LL5@Display_In
	pop	esi
	pop	ebp
	pop	ebx
$LN4@Display_In:
	pop	edi

; 381  : 	}
; 382  : }

	ret	0
?Display_Int_Team@@YAXHPBDH@Z ENDP			; Display_Int_Team
_TEXT	ENDS
PUBLIC	?Display_Float_Team@@YAXMPBDH@Z			; Display_Float_Team
EXTRN	__fltused:DWORD
; Function compile flags: /Ogtpy
;	COMDAT ?Display_Float_Team@@YAXMPBDH@Z
_TEXT	SEGMENT
_num$ = 8						; size = 4
_msg$ = 12						; size = 4
_team$ = 16						; size = 4
?Display_Float_Team@@YAXMPBDH@Z PROC			; Display_Float_Team, COMDAT

; 386  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	eax, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	push	edi
	mov	edi, DWORD PTR [eax+4]

; 387  : 	while (x)

	test	edi, edi
	je	SHORT $LN4@Display_Fl
	push	ebx
	mov	ebx, DWORD PTR _team$[esp+4]
	push	ebp
	mov	ebp, DWORD PTR _msg$[esp+8]
	push	esi
	npad	8
$LL5@Display_Fl:

; 388  : 	{
; 389  : 		GameObject *o = As_SmartGameObj((GameObject *)x->NodeData);

	mov	ecx, DWORD PTR [edi+4]
	push	ecx
	call	?As_SmartGameObj@@YAPAEPAE@Z		; As_SmartGameObj
	mov	esi, eax
	add	esp, 4

; 390  : 		if (o)

	test	esi, esi
	je	SHORT $LN10@Display_Fl

; 391  : 		{
; 392  : 			if ((Get_Object_Type(o) == team) || (team == 2))

	push	esi
	call	?Get_Object_Type@@YAHPAE@Z		; Get_Object_Type
	add	esp, 4
	cmp	eax, ebx
	je	SHORT $LN1@Display_Fl
	cmp	ebx, 2
	jne	SHORT $LN10@Display_Fl
$LN1@Display_Fl:

; 393  : 			{
; 394  : 				Display_Float_Player(o,num,msg);

	fld	DWORD PTR _num$[esp+12]
	push	ebp
	push	ecx
	fstp	DWORD PTR [esp]
	push	esi
	call	DWORD PTR ?Display_Float_Player@@3P6AXPAEMPBD@ZA ; Display_Float_Player
	add	esp, 12					; 0000000cH
$LN10@Display_Fl:

; 395  : 			}
; 396  : 		}
; 397  : 		x = x->NodeNext;

	mov	edi, DWORD PTR [edi]
	test	edi, edi
	jne	SHORT $LL5@Display_Fl
	pop	esi
	pop	ebp
	pop	ebx
$LN4@Display_Fl:
	pop	edi

; 398  : 	}
; 399  : }

	ret	0
?Display_Float_Team@@YAXMPBDH@Z ENDP			; Display_Float_Team
_TEXT	ENDS
PUBLIC	??_C@_0BO@HMNPFMNA@JFW_Stealth_Generator_Ignored?$AA@ ; `string'
PUBLIC	?Ranged_Stealth_On_Team@@YAXPAUGap_ListNode@@@Z	; Ranged_Stealth_On_Team
EXTRN	?Is_Soldier@@YA_NPAE@Z:PROC			; Is_Soldier
EXTRN	?Is_Vehicle@@YA_NPAE@Z:PROC			; Is_Vehicle
EXTRN	?Is_Script_Attached@@YA_NPAEPBD@Z:PROC		; Is_Script_Attached
;	COMDAT ??_C@_0BO@HMNPFMNA@JFW_Stealth_Generator_Ignored?$AA@
CONST	SEGMENT
??_C@_0BO@HMNPFMNA@JFW_Stealth_Generator_Ignored?$AA@ DB 'JFW_Stealth_Gen'
	DB	'erator_Ignored', 00H			; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?Ranged_Stealth_On_Team@@YAXPAUGap_ListNode@@@Z
_TEXT	SEGMENT
_test$55618 = -52					; size = 4
_TargetPos$55630 = -48					; size = 12
_GenPos$55628 = -36					; size = 12
$T59533 = -24						; size = 12
$T59534 = -12						; size = 12
_FirstNode$ = 8						; size = 4
?Ranged_Stealth_On_Team@@YAXPAUGap_ListNode@@@Z PROC	; Ranged_Stealth_On_Team, COMDAT

; 403  : 	GenericSLNode *x = SmartGameObjList->HeadNode;

	mov	eax, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	sub	esp, 52					; 00000034H

; 404  : 	if (FirstNode)

	cmp	DWORD PTR _FirstNode$[esp+48], 0
	push	ebp
	mov	ebp, DWORD PTR [eax+4]
	push	esi
	je	$LN29@Ranged_Ste

; 405  : 	{
; 406  : 		while (x)

	test	ebp, ebp
	je	$LN5@Ranged_Ste
	push	ebx
	push	edi
$LL23@Ranged_Ste:

; 407  : 		{
; 408  : 			GameObject *o = (GameObject *)x->NodeData;

	mov	edi, DWORD PTR [ebp+4]

; 409  : 			if (o)

	test	edi, edi
	je	$LN33@Ranged_Ste

; 410  : 			{
; 411  : 				bool tested = false;
; 412  : 				Gap_ListNode *current = FirstNode;
; 413  : 				int test = Commands->Get_Player_Type(o);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	edx, DWORD PTR [ecx+248]
	mov	esi, DWORD PTR _FirstNode$[esp+64]
	push	edi
	call	edx

; 414  : 				if (!(Is_Script_Attached(o, "JFW_Stealth_Generator_Ignored")))

	push	OFFSET ??_C@_0BO@HMNPFMNA@JFW_Stealth_Generator_Ignored?$AA@
	push	edi
	mov	DWORD PTR _test$55618[esp+80], eax
	call	?Is_Script_Attached@@YA_NPAEPBD@Z	; Is_Script_Attached
	add	esp, 12					; 0000000cH
	test	al, al
	jne	$LN33@Ranged_Ste

; 415  : 				{
; 416  : 					if (Is_Vehicle(o) || Is_Soldier(o))

	push	edi
	call	?Is_Vehicle@@YA_NPAE@Z			; Is_Vehicle
	add	esp, 4
	test	al, al
	jne	SHORT $LL17@Ranged_Ste
	push	edi
	call	?Is_Soldier@@YA_NPAE@Z			; Is_Soldier
	add	esp, 4
	test	al, al
	je	$LN33@Ranged_Ste
$LL17@Ranged_Ste:

; 417  : 					{
; 418  : 						while (!tested)
; 419  : 						{
; 420  : 							if (current)

	test	esi, esi
	je	$LN15@Ranged_Ste

; 421  : 							{
; 422  : 								if (current->active)

	cmp	BYTE PTR [esi+16], 0
	je	$LN14@Ranged_Ste

; 423  : 								{
; 424  : 									Vector3 GenPos = Commands->Get_Position(Commands->Find_Object(current->unitID));

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	ecx, DWORD PTR [esi+4]
	mov	edx, DWORD PTR [eax+96]
	push	ecx
	lea	ebx, DWORD PTR [eax+64]
	call	edx
	mov	ecx, DWORD PTR [ebx]
	push	eax
	lea	eax, DWORD PTR $T59533[esp+76]
	push	eax
	call	ecx
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _GenPos$55628[esp+80], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _GenPos$55628[esp+84], ecx
	mov	edx, DWORD PTR [eax+8]

; 425  : 									Vector3 TargetPos = Commands->Get_Position(o);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T59534[esp+80]
	mov	DWORD PTR _GenPos$55628[esp+88], edx
	mov	edx, DWORD PTR [ecx+64]
	push	edi
	push	eax
	call	edx
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _TargetPos$55630[esp+88], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _TargetPos$55630[esp+92], edx
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _TargetPos$55630[esp+96], eax

; 426  : 									float distance = Commands->Get_Distance(GenPos, TargetPos);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _TargetPos$55630[esp+88]
	push	ecx
	mov	ecx, DWORD PTR [eax+256]
	lea	edx, DWORD PTR _GenPos$55628[esp+92]
	push	edx
	call	ecx

; 427  : 									if (distance <= current->range)

	fcomp	DWORD PTR [esi+8]
	add	esp, 28					; 0000001cH
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	SHORT $LN14@Ranged_Ste

; 428  : 									{
; 429  : 										if (test == current->teamID)

	mov	edx, DWORD PTR _test$55618[esp+68]
	cmp	edx, DWORD PTR [esi+12]
	je	SHORT $LN36@Ranged_Ste
$LN14@Ranged_Ste:

; 436  : 										{
; 437  : 											current = current->Next;

	mov	esi, DWORD PTR [esi]

; 438  : 										}
; 439  : 									}
; 440  : 									else

	jmp	$LL17@Ranged_Ste
$LN36@Ranged_Ste:

; 430  : 										{
; 431  : 											Commands->Enable_Stealth(o, true);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	ecx, DWORD PTR [eax+708]
	push	1
	push	edi
	call	ecx

; 432  : 											current = NULL;
; 433  : 											tested = true;
; 434  : 										}
; 435  : 										else

	jmp	SHORT $LN45@Ranged_Ste
$LN15@Ranged_Ste:

; 441  : 									{
; 442  : 										current = current->Next;
; 443  : 									}
; 444  : 								}
; 445  : 								else
; 446  : 								{
; 447  : 									current = current->Next;
; 448  : 								}
; 449  : 							}
; 450  : 							else
; 451  : 							{
; 452  : 								Commands->Enable_Stealth(o, false);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	eax, DWORD PTR [edx+708]
	push	0
	push	edi
	call	eax
$LN45@Ranged_Ste:
	add	esp, 8
$LN33@Ranged_Ste:

; 453  : 								current = NULL;
; 454  : 								tested = true;
; 455  : 							}
; 456  : 						}
; 457  : 					}
; 458  : 				}
; 459  : 			}
; 460  : 			x = x->NodeNext;

	mov	ebp, DWORD PTR [ebp]
	test	ebp, ebp
	jne	$LL23@Ranged_Ste
	pop	edi
	pop	ebx
	pop	esi
	pop	ebp

; 479  : 		}
; 480  : 	}
; 481  : }

	add	esp, 52					; 00000034H
	ret	0
$LN29@Ranged_Ste:

; 461  : 		}
; 462  : 	}
; 463  : 	else
; 464  : 	{
; 465  : 		while (x)

	test	ebp, ebp
	je	SHORT $LN5@Ranged_Ste
	npad	1
$LL6@Ranged_Ste:

; 466  : 		{
; 467  : 			GameObject *o = (GameObject *)x->NodeData;

	mov	esi, DWORD PTR [ebp+4]

; 468  : 			if (o)

	test	esi, esi
	je	SHORT $LN2@Ranged_Ste

; 469  : 			{
; 470  : 				if (!(Is_Script_Attached(o, "JFW_Stealth_Generator_Ignored")))

	push	OFFSET ??_C@_0BO@HMNPFMNA@JFW_Stealth_Generator_Ignored?$AA@
	push	esi
	call	?Is_Script_Attached@@YA_NPAEPBD@Z	; Is_Script_Attached
	add	esp, 8
	test	al, al
	jne	SHORT $LN2@Ranged_Ste

; 471  : 				{
; 472  : 					if (Is_Vehicle(o) || Is_Soldier(o))

	push	esi
	call	?Is_Vehicle@@YA_NPAE@Z			; Is_Vehicle
	add	esp, 4
	test	al, al
	jne	SHORT $LN1@Ranged_Ste
	push	esi
	call	?Is_Soldier@@YA_NPAE@Z			; Is_Soldier
	add	esp, 4
	test	al, al
	je	SHORT $LN2@Ranged_Ste
$LN1@Ranged_Ste:

; 473  : 					{
; 474  : 						Commands->Enable_Stealth(o, false);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	edx, DWORD PTR [ecx+708]
	push	0
	push	esi
	call	edx
	add	esp, 8
$LN2@Ranged_Ste:

; 475  : 					}
; 476  : 				}
; 477  : 			}
; 478  : 			x = x->NodeNext;

	mov	ebp, DWORD PTR [ebp]
	test	ebp, ebp
	jne	SHORT $LL6@Ranged_Ste
$LN5@Ranged_Ste:
	pop	esi
	pop	ebp

; 479  : 		}
; 480  : 	}
; 481  : }

	add	esp, 52					; 00000034H
	ret	0
?Ranged_Stealth_On_Team@@YAXPAUGap_ListNode@@@Z ENDP	; Ranged_Stealth_On_Team
_TEXT	ENDS
PUBLIC	__real@00000000
PUBLIC	??_C@_0BJ@DJHLIANK@RA_Gap_Generator_Ignored?$AA@ ; `string'
PUBLIC	?Ranged_Gap_Effect@@YAXPAUGap_ListNode@@@Z	; Ranged_Gap_Effect
;	COMDAT __real@00000000
CONST	SEGMENT
__real@00000000 DD 000000000r			; 0
CONST	ENDS
;	COMDAT ??_C@_0BJ@DJHLIANK@RA_Gap_Generator_Ignored?$AA@
CONST	SEGMENT
??_C@_0BJ@DJHLIANK@RA_Gap_Generator_Ignored?$AA@ DB 'RA_Gap_Generator_Ign'
	DB	'ored', 00H					; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?Ranged_Gap_Effect@@YAXPAUGap_ListNode@@@Z
_TEXT	SEGMENT
_x$ = -60						; size = 4
_stealth$55660 = -56					; size = 1
_test$55663 = -52					; size = 4
_TargetPos$55674 = -48					; size = 12
_GenPos$55672 = -36					; size = 12
$T59557 = -24						; size = 12
$T59558 = -12						; size = 12
_FirstNode$ = 8						; size = 4
?Ranged_Gap_Effect@@YAXPAUGap_ListNode@@@Z PROC		; Ranged_Gap_Effect, COMDAT

; 484  : {

	sub	esp, 60					; 0000003cH

; 485  : 	GenericSLNode *x = SmartGameObjList->HeadNode;
; 486  : 	if (FirstNode)

	cmp	DWORD PTR _FirstNode$[esp+56], 0
	mov	eax, DWORD PTR ?SmartGameObjList@@3PAV?$SList@E@@A ; SmartGameObjList
	mov	eax, DWORD PTR [eax+4]
	push	esi
	push	edi
	mov	DWORD PTR _x$[esp+68], eax
	je	$LN29@Ranged_Gap

; 487  : 	{
; 488  : 		while (x)

	test	eax, eax
	je	$LN6@Ranged_Gap
	push	ebx
	push	ebp
$LL23@Ranged_Gap:

; 489  : 		{
; 490  : 			GameObject *o = (GameObject *)x->NodeData;

	mov	ecx, DWORD PTR _x$[esp+76]
	mov	edi, DWORD PTR [ecx+4]

; 491  : 			if (o)

	test	edi, edi
	je	$LN40@Ranged_Gap

; 492  : 			{
; 493  : 				bool stealth = false;
; 494  : 				bool blackout = false;
; 495  : 				Gap_ListNode *current = FirstNode;
; 496  : 				int test = Commands->Get_Player_Type(o);

	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	eax, DWORD PTR [edx+248]
	mov	esi, DWORD PTR _FirstNode$[esp+72]
	push	edi
	mov	BYTE PTR _stealth$55660[esp+80], 0
	xor	bl, bl
	call	eax

; 497  : 				if (!(Is_Script_Attached(o, "RA_Gap_Generator_Ignored")))

	push	OFFSET ??_C@_0BJ@DJHLIANK@RA_Gap_Generator_Ignored?$AA@
	push	edi
	mov	DWORD PTR _test$55663[esp+88], eax
	call	?Is_Script_Attached@@YA_NPAEPBD@Z	; Is_Script_Attached
	add	esp, 12					; 0000000cH
	test	al, al
	jne	$LN40@Ranged_Gap

; 498  : 				{
; 499  : 					if (Is_Vehicle(o) || Is_Soldier(o))

	push	edi
	call	?Is_Vehicle@@YA_NPAE@Z			; Is_Vehicle
	add	esp, 4
	test	al, al
	jne	SHORT $LL17@Ranged_Gap
	push	edi
	call	?Is_Soldier@@YA_NPAE@Z			; Is_Soldier
	add	esp, 4
	test	al, al
	je	$LN40@Ranged_Gap
	npad	9
$LL17@Ranged_Gap:

; 500  : 					{
; 501  : 						while (current)
; 502  : 						{
; 503  : 							if (current->active)

	cmp	BYTE PTR [esi+16], 0
	je	$LN38@Ranged_Gap

; 504  : 							{
; 505  : 								Vector3 GenPos = Commands->Get_Position(Commands->Find_Object(current->unitID));

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	ecx, DWORD PTR [esi+4]
	mov	edx, DWORD PTR [eax+96]
	push	ecx
	lea	ebp, DWORD PTR [eax+64]
	call	edx
	mov	ecx, DWORD PTR [ebp]
	push	eax
	lea	eax, DWORD PTR $T59557[esp+84]
	push	eax
	call	ecx
	mov	edx, DWORD PTR [eax]
	mov	DWORD PTR _GenPos$55672[esp+88], edx
	mov	ecx, DWORD PTR [eax+4]
	mov	DWORD PTR _GenPos$55672[esp+92], ecx
	mov	edx, DWORD PTR [eax+8]

; 506  : 								Vector3 TargetPos = Commands->Get_Position(o);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	eax, DWORD PTR $T59558[esp+88]
	mov	DWORD PTR _GenPos$55672[esp+96], edx
	mov	edx, DWORD PTR [ecx+64]
	push	edi
	push	eax
	call	edx
	mov	ecx, DWORD PTR [eax]
	mov	DWORD PTR _TargetPos$55674[esp+96], ecx
	mov	edx, DWORD PTR [eax+4]
	mov	DWORD PTR _TargetPos$55674[esp+100], edx
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR _TargetPos$55674[esp+104], eax

; 507  : 								float distance = Commands->Get_Distance(GenPos, TargetPos);

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	lea	ecx, DWORD PTR _TargetPos$55674[esp+96]
	push	ecx
	mov	ecx, DWORD PTR [eax+256]
	lea	edx, DWORD PTR _GenPos$55672[esp+100]
	push	edx
	call	ecx

; 508  : 								if (distance <= current->range)

	fcomp	DWORD PTR [esi+8]
	add	esp, 28					; 0000001cH
	fnstsw	ax
	test	ah, 65					; 00000041H
	jp	SHORT $LN38@Ranged_Gap

; 509  : 								{
; 510  : 									if (test == current->teamID)

	mov	edx, DWORD PTR _test$55663[esp+76]
	cmp	edx, DWORD PTR [esi+12]
	jne	SHORT $LN13@Ranged_Gap

; 511  : 									{
; 512  : 										stealth = true;

	mov	BYTE PTR _stealth$55660[esp+76], 1

; 513  : 									}
; 514  : 									else

	jmp	SHORT $LN38@Ranged_Gap
$LN13@Ranged_Gap:

; 515  : 									{
; 516  : 										blackout = true;

	mov	bl, 1
$LN38@Ranged_Gap:

; 517  : 									}
; 518  : 								}
; 519  : 							}
; 520  : 							current = current->Next;

	mov	esi, DWORD PTR [esi]
	test	esi, esi
	jne	$LL17@Ranged_Gap

; 521  : 						}
; 522  : 						Commands->Enable_Stealth(o, stealth);

	mov	eax, DWORD PTR _stealth$55660[esp+76]
	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	edx, DWORD PTR [ecx+708]
	push	eax
	push	edi
	call	edx

; 523  : 						if (Commands->Is_A_Star(o))

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	ecx, DWORD PTR [eax+280]
	push	edi
	call	ecx
	add	esp, 12					; 0000000cH
	test	al, al
	je	SHORT $LN40@Ranged_Gap

; 524  : 						{
; 525  : 							if (blackout)

	test	bl, bl

; 526  : 							{
; 527  : 								Commands->Send_Custom_Event(0,o,325523,1,0);

	fldz
	push	ecx
	fstp	DWORD PTR [esp]
	je	SHORT $LN10@Ranged_Gap
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	eax, DWORD PTR [edx+140]
	push	1
	push	325523					; 0004f793H
	push	edi
	push	esi
	call	eax

; 528  : 							}
; 529  : 							else

	jmp	SHORT $LN43@Ranged_Gap
$LN10@Ranged_Gap:

; 530  : 							{
; 531  : 								Commands->Send_Custom_Event(0,o,325523,0,0);

	mov	ecx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	edx, DWORD PTR [ecx+140]
	push	0
	push	325523					; 0004f793H
	push	edi
	push	0
	call	edx
$LN43@Ranged_Gap:
	add	esp, 20					; 00000014H
$LN40@Ranged_Gap:

; 532  : 							}
; 533  : 						}
; 534  : 						current = NULL;
; 535  : 					}
; 536  : 				}
; 537  : 			}
; 538  : 			x = x->NodeNext;

	mov	eax, DWORD PTR _x$[esp+76]
	mov	eax, DWORD PTR [eax]
	test	eax, eax
	mov	DWORD PTR _x$[esp+76], eax
	jne	$LL23@Ranged_Gap
	pop	ebp
	pop	ebx
	pop	edi
	pop	esi

; 561  : 		}
; 562  : 	}
; 563  : }

	add	esp, 60					; 0000003cH
	ret	0
$LN29@Ranged_Gap:

; 539  : 		}
; 540  : 	}
; 541  : 	else
; 542  : 	{
; 543  : 		while (x)

	test	eax, eax
	je	$LN6@Ranged_Gap
	npad	8
$LL7@Ranged_Gap:

; 544  : 		{
; 545  : 			GameObject *o = (GameObject *)x->NodeData;

	mov	edi, DWORD PTR _x$[esp+68]
	mov	esi, DWORD PTR [edi+4]

; 546  : 			if (o)

	test	esi, esi
	je	SHORT $LN1@Ranged_Gap

; 547  : 			{
; 548  : 				if (!(Is_Script_Attached(o, "RA_Gap_Generator_Ignored")))

	push	OFFSET ??_C@_0BJ@DJHLIANK@RA_Gap_Generator_Ignored?$AA@
	push	esi
	call	?Is_Script_Attached@@YA_NPAEPBD@Z	; Is_Script_Attached
	add	esp, 8
	test	al, al
	jne	SHORT $LN1@Ranged_Gap

; 549  : 				{
; 550  : 					if (Is_Vehicle(o) || Is_Soldier(o))

	push	esi
	call	?Is_Vehicle@@YA_NPAE@Z			; Is_Vehicle
	add	esp, 4
	test	al, al
	jne	SHORT $LN2@Ranged_Gap
	push	esi
	call	?Is_Soldier@@YA_NPAE@Z			; Is_Soldier
	add	esp, 4
	test	al, al
	je	SHORT $LN1@Ranged_Gap
$LN2@Ranged_Gap:

; 551  : 					{
; 552  : 						Commands->Enable_Stealth(o, false);

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

; 553  : 						if (Commands->Is_A_Star(o))

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	ecx, DWORD PTR [eax+280]
	push	esi
	call	ecx
	add	esp, 12					; 0000000cH
	test	al, al
	je	SHORT $LN1@Ranged_Gap

; 554  : 						{
; 555  : 							Commands->Send_Custom_Event(0,o,325523,0,0);

	fldz
	mov	edx, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	eax, DWORD PTR [edx+140]
	push	ecx
	fstp	DWORD PTR [esp]
	push	0
	push	325523					; 0004f793H
	push	esi
	push	0
	call	eax
	add	esp, 20					; 00000014H
$LN1@Ranged_Gap:

; 556  : 						}
; 557  : 					}
; 558  : 				}
; 559  : 			}
; 560  : 			x = x->NodeNext;

	mov	eax, DWORD PTR [edi]
	test	eax, eax
	mov	DWORD PTR _x$[esp+68], eax
	jne	$LL7@Ranged_Gap
$LN6@Ranged_Gap:
	pop	edi
	pop	esi

; 561  : 		}
; 562  : 	}
; 563  : }

	add	esp, 60					; 0000003cH
	ret	0
?Ranged_Gap_Effect@@YAXPAUGap_ListNode@@@Z ENDP		; Ranged_Gap_Effect
_TEXT	ENDS
PUBLIC	__TI2?AVbad_alloc@std@@
PUBLIC	??_C@_0DN@JHKGIIJF@C?3?2Program?5Files?2Microsoft?5Visua@ ; `string'
PUBLIC	?allocate@?$_DebugHeapAllocator@D@std@@QAAPADIPBX@Z ; std::_DebugHeapAllocator<char>::allocate
PUBLIC	__CTA2?AVbad_alloc@std@@
PUBLIC	__CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QAE@ABV01@@Z12
PUBLIC	??0bad_alloc@std@@QAE@ABV01@@Z			; std::bad_alloc::bad_alloc
PUBLIC	__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
EXTRN	??_U@YAPAXIABU_DebugHeapTag_t@std@@PADH@Z:PROC	; operator new[]
EXTRN	?_DebugHeapTag_func@std@@YAABU_DebugHeapTag_t@1@XZ:PROC ; std::_DebugHeapTag_func
EXTRN	__CxxThrowException@8:PROC
EXTRN	??0exception@std@@QAE@ABV01@@Z:PROC		; std::exception::exception
;	COMDAT __CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
; File c:\program files\microsoft visual studio 8\vc\include\exception
xdata$x	SEGMENT
__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12 DD 00H
	DD	FLAT:??_R0?AVexception@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	0cH
	DD	FLAT:??0exception@std@@QAE@ABV01@@Z
xdata$x	ENDS
;	COMDAT __CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QAE@ABV01@@Z12
xdata$x	SEGMENT
__CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QAE@ABV01@@Z12 DD 00H
	DD	FLAT:??_R0?AVbad_alloc@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	0cH
	DD	FLAT:??0bad_alloc@std@@QAE@ABV01@@Z
xdata$x	ENDS
;	COMDAT __CTA2?AVbad_alloc@std@@
xdata$x	SEGMENT
__CTA2?AVbad_alloc@std@@ DD 02H
	DD	FLAT:__CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QAE@ABV01@@Z12
	DD	FLAT:__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
xdata$x	ENDS
;	COMDAT __TI2?AVbad_alloc@std@@
xdata$x	SEGMENT
__TI2?AVbad_alloc@std@@ DD 00H
	DD	FLAT:??1bad_alloc@std@@UAE@XZ
	DD	00H
	DD	FLAT:__CTA2?AVbad_alloc@std@@
xdata$x	ENDS
;	COMDAT ??_C@_0DN@JHKGIIJF@C?3?2Program?5Files?2Microsoft?5Visua@
CONST	SEGMENT
??_C@_0DN@JHKGIIJF@C?3?2Program?5Files?2Microsoft?5Visua@ DB 'C:\Program '
	DB	'Files\Microsoft Visual Studio 8\VC\include\xdebug', 00H ; `string'
; Function compile flags: /Ogtpy
; File c:\program files\microsoft visual studio 8\vc\include\xdebug
CONST	ENDS
;	COMDAT ?allocate@?$_DebugHeapAllocator@D@std@@QAAPADIPBX@Z
_TEXT	SEGMENT
$T59581 = -12						; size = 12
_this$ = 8						; size = 4
$T59587 = 12						; size = 4
__Count$ = 12						; size = 4
___formal$ = 16						; size = 4
?allocate@?$_DebugHeapAllocator@D@std@@QAAPADIPBX@Z PROC ; std::_DebugHeapAllocator<char>::allocate, COMDAT

; 79   : 		{	// check for integer overflow

	sub	esp, 12					; 0000000cH
	push	esi

; 80   : 		if (_Count <= 0)

	mov	esi, DWORD PTR __Count$[esp+12]
	test	esi, esi
	ja	SHORT $LN3@allocate

; 81   : 			_Count = 0;

	xor	esi, esi
$LN1@allocate:

; 84   : 
; 85   : 			// allocate array of _Count elements, ignore hint
; 86   : 		return ((_Ty *)_NEW_CRT char[_Count * sizeof(_Ty)]);

	push	86					; 00000056H
	push	OFFSET ??_C@_0DN@JHKGIIJF@C?3?2Program?5Files?2Microsoft?5Visua@
	call	?_DebugHeapTag_func@std@@YAABU_DebugHeapTag_t@1@XZ ; std::_DebugHeapTag_func
	push	eax
	push	esi
	call	??_U@YAPAXIABU_DebugHeapTag_t@std@@PADH@Z ; operator new[]
	add	esp, 16					; 00000010H
	pop	esi

; 87   : 		}

	add	esp, 12					; 0000000cH
	ret	0
$LN3@allocate:

; 82   : 		else if (((size_t)(-1) / _Count) < sizeof(_Ty))

	or	eax, -1
	xor	edx, edx
	div	esi
	cmp	eax, 1
	jae	SHORT $LN1@allocate

; 83   : 			_THROW_NCEE(std::bad_alloc, NULL);

	lea	eax, DWORD PTR $T59587[esp+12]
	push	eax
	lea	ecx, DWORD PTR $T59581[esp+20]
	mov	DWORD PTR $T59587[esp+16], 0
	call	??0exception@std@@QAE@ABQBD@Z		; std::exception::exception
	push	OFFSET __TI2?AVbad_alloc@std@@
	lea	ecx, DWORD PTR $T59581[esp+20]
	push	ecx
	mov	DWORD PTR $T59581[esp+24], OFFSET ??_7bad_alloc@std@@6B@
	call	__CxxThrowException@8
$LN9@allocate:
$LN8@allocate:
	int	3
?allocate@?$_DebugHeapAllocator@D@std@@QAAPADIPBX@Z ENDP ; std::_DebugHeapAllocator<char>::allocate
_TEXT	ENDS
PUBLIC	?allocate@?$_DebugHeapAllocator@D@std@@QAEPADI@Z ; std::_DebugHeapAllocator<char>::allocate
; Function compile flags: /Ogtpy
;	COMDAT ?allocate@?$_DebugHeapAllocator@D@std@@QAEPADI@Z
_TEXT	SEGMENT
$T59593 = -12						; size = 12
$T59598 = 8						; size = 4
__Count$ = 8						; size = 4
?allocate@?$_DebugHeapAllocator@D@std@@QAEPADI@Z PROC	; std::_DebugHeapAllocator<char>::allocate, COMDAT
; _this$ = ecx

; 90   : 		{	// check for integer overflow

	sub	esp, 12					; 0000000cH
	push	esi

; 91   : 		if (_Count <= 0)

	mov	esi, DWORD PTR __Count$[esp+12]
	test	esi, esi
	ja	SHORT $LN3@allocate@2

; 92   : 			_Count = 0;

	xor	esi, esi
$LN1@allocate@2:

; 95   : 
; 96   : 			// allocate array of _Count elements
; 97   : 		return ((_Ty *)_NEW_CRT char[_Count * sizeof(_Ty)]);

	push	97					; 00000061H
	push	OFFSET ??_C@_0DN@JHKGIIJF@C?3?2Program?5Files?2Microsoft?5Visua@
	call	?_DebugHeapTag_func@std@@YAABU_DebugHeapTag_t@1@XZ ; std::_DebugHeapTag_func
	push	eax
	push	esi
	call	??_U@YAPAXIABU_DebugHeapTag_t@std@@PADH@Z ; operator new[]
	add	esp, 16					; 00000010H
	pop	esi

; 98   : 		}

	add	esp, 12					; 0000000cH
	ret	4
$LN3@allocate@2:

; 93   : 		else if (((size_t)(-1) / _Count) < sizeof(_Ty))

	or	eax, -1
	xor	edx, edx
	div	esi
	cmp	eax, 1
	jae	SHORT $LN1@allocate@2

; 94   : 			_THROW_NCEE(std::bad_alloc, NULL);

	lea	eax, DWORD PTR $T59598[esp+12]
	push	eax
	lea	ecx, DWORD PTR $T59593[esp+20]
	mov	DWORD PTR $T59598[esp+16], 0
	call	??0exception@std@@QAE@ABQBD@Z		; std::exception::exception
	push	OFFSET __TI2?AVbad_alloc@std@@
	lea	ecx, DWORD PTR $T59593[esp+20]
	push	ecx
	mov	DWORD PTR $T59593[esp+24], OFFSET ??_7bad_alloc@std@@6B@
	call	__CxxThrowException@8
$LN9@allocate@2:
$LN8@allocate@2:
	int	3
?allocate@?$_DebugHeapAllocator@D@std@@QAEPADI@Z ENDP	; std::_DebugHeapAllocator<char>::allocate
_TEXT	ENDS
PUBLIC	??1?$VectorClass@PAE@@UAE@XZ			; VectorClass<unsigned char *>::~VectorClass<unsigned char *>
; Function compile flags: /Ogtpy
; File d:\source code\stgm\engine_vector.h
;	COMDAT ??1?$VectorClass@PAE@@UAE@XZ
_TEXT	SEGMENT
??1?$VectorClass@PAE@@UAE@XZ PROC			; VectorClass<unsigned char *>::~VectorClass<unsigned char *>, COMDAT
; _this$ = ecx

; 26   : 	{

	mov	DWORD PTR [ecx], OFFSET ??_7?$VectorClass@PAE@@6B@

; 27   : 	}

	ret	0
??1?$VectorClass@PAE@@UAE@XZ ENDP			; VectorClass<unsigned char *>::~VectorClass<unsigned char *>
_TEXT	ENDS
PUBLIC	?Length@?$VectorClass@PAE@@QAEHXZ		; VectorClass<unsigned char *>::Length
; Function compile flags: /Ogtpy
;	COMDAT ?Length@?$VectorClass@PAE@@QAEHXZ
_TEXT	SEGMENT
?Length@?$VectorClass@PAE@@QAEHXZ PROC			; VectorClass<unsigned char *>::Length, COMDAT
; _this$ = ecx

; 30   : 		return VectorMax;

	mov	eax, DWORD PTR [ecx+8]

; 31   : 	}

	ret	0
?Length@?$VectorClass@PAE@@QAEHXZ ENDP			; VectorClass<unsigned char *>::Length
_TEXT	ENDS
PUBLIC	??A?$VectorClass@PAE@@QAEAAPAEH@Z		; VectorClass<unsigned char *>::operator[]
; Function compile flags: /Ogtpy
;	COMDAT ??A?$VectorClass@PAE@@QAEAAPAEH@Z
_TEXT	SEGMENT
_index$ = 8						; size = 4
??A?$VectorClass@PAE@@QAEAAPAEH@Z PROC			; VectorClass<unsigned char *>::operator[], COMDAT
; _this$ = ecx

; 34   : 		return Vector[index];

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

; 35   : 	}

	ret	4
??A?$VectorClass@PAE@@QAEAAPAEH@Z ENDP			; VectorClass<unsigned char *>::operator[]
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ??8?$VectorClass@PAE@@UAE_NAAV0@@Z
_TEXT	SEGMENT
_vector$ = 8						; size = 4
??8?$VectorClass@PAE@@UAE_NAAV0@@Z PROC			; VectorClass<unsigned char *>::operator==, COMDAT
; _this$ = ecx

; 38   : 		return false;

	xor	al, al

; 39   : 	}

	ret	4
??8?$VectorClass@PAE@@UAE_NAAV0@@Z ENDP			; VectorClass<unsigned char *>::operator==
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Resize@?$VectorClass@PAE@@UAE_NHPAPAE@Z
_TEXT	SEGMENT
_newsize$ = 8						; size = 4
_array$ = 12						; size = 4
?Resize@?$VectorClass@PAE@@UAE_NHPAPAE@Z PROC		; VectorClass<unsigned char *>::Resize, COMDAT
; _this$ = ecx

; 42   : 		return false;

	xor	al, al

; 43   : 	}

	ret	8
?Resize@?$VectorClass@PAE@@UAE_NHPAPAE@Z ENDP		; VectorClass<unsigned char *>::Resize
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Clear@?$VectorClass@PAE@@UAEXXZ
_TEXT	SEGMENT
?Clear@?$VectorClass@PAE@@UAEXXZ PROC			; VectorClass<unsigned char *>::Clear, COMDAT
; _this$ = ecx

; 46   : 	}

	ret	0
?Clear@?$VectorClass@PAE@@UAEXXZ ENDP			; VectorClass<unsigned char *>::Clear
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?ID@?$VectorClass@PAE@@UAEHAAPAE@Z
_TEXT	SEGMENT
_object$ = 8						; size = 4
?ID@?$VectorClass@PAE@@UAEHAAPAE@Z PROC			; VectorClass<unsigned char *>::ID, COMDAT
; _this$ = ecx

; 49   : 		return 0;

	xor	eax, eax

; 50   : 	}

	ret	4
?ID@?$VectorClass@PAE@@UAEHAAPAE@Z ENDP			; VectorClass<unsigned char *>::ID
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?ID@?$VectorClass@PAE@@UAEHPAPAE@Z
_TEXT	SEGMENT
_ptr$ = 8						; size = 4
?ID@?$VectorClass@PAE@@UAEHPAPAE@Z PROC			; VectorClass<unsigned char *>::ID, COMDAT
; _this$ = ecx

; 53   : 		return 0;

	xor	eax, eax

; 54   : 	}

	ret	4
?ID@?$VectorClass@PAE@@UAEHPAPAE@Z ENDP			; VectorClass<unsigned char *>::ID
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ??0bad_alloc@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
___that$ = 8						; size = 4
??0bad_alloc@std@@QAE@ABV01@@Z PROC			; std::bad_alloc::bad_alloc, COMDAT
; _this$ = ecx
	mov	eax, DWORD PTR ___that$[esp-4]
	push	esi
	push	eax
	mov	esi, ecx
	call	??0exception@std@@QAE@ABV01@@Z		; std::exception::exception
	mov	DWORD PTR [esi], OFFSET ??_7bad_alloc@std@@6B@
	mov	eax, esi
	pop	esi
	ret	4
??0bad_alloc@std@@QAE@ABV01@@Z ENDP			; std::bad_alloc::bad_alloc
_TEXT	ENDS
PUBLIC	??0?$allocator@D@std@@QAE@XZ			; std::allocator<char>::allocator<char>
; Function compile flags: /Ogtpy
; File c:\program files\microsoft visual studio 8\vc\include\xmemory
;	COMDAT ??0?$allocator@D@std@@QAE@XZ
_TEXT	SEGMENT
??0?$allocator@D@std@@QAE@XZ PROC			; std::allocator<char>::allocator<char>, COMDAT
; _this$ = ecx

; 120  : 	allocator() _THROW0()

	mov	eax, ecx

; 121  : 		{	// construct default allocator (do nothing)
; 122  : 		}

	ret	0
??0?$allocator@D@std@@QAE@XZ ENDP			; std::allocator<char>::allocator<char>
_TEXT	ENDS
PUBLIC	??0?$allocator@D@std@@QAE@ABV01@@Z		; std::allocator<char>::allocator<char>
; Function compile flags: /Ogtpy
;	COMDAT ??0?$allocator@D@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
??0?$allocator@D@std@@QAE@ABV01@@Z PROC			; std::allocator<char>::allocator<char>, COMDAT
; _this$ = ecx

; 124  : 	allocator(const allocator<_Ty>&) _THROW0()

	mov	eax, ecx

; 125  : 		{	// construct by copying (do nothing)
; 126  : 		}

	ret	4
??0?$allocator@D@std@@QAE@ABV01@@Z ENDP			; std::allocator<char>::allocator<char>
_TEXT	ENDS
PUBLIC	??$_DebugHeapDelete@X@std@@YAXPAX@Z		; std::_DebugHeapDelete<void>
EXTRN	_free:PROC
; Function compile flags: /Ogtpy
; File c:\program files\microsoft visual studio 8\vc\include\xdebug
;	COMDAT ??$_DebugHeapDelete@X@std@@YAXPAX@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
??$_DebugHeapDelete@X@std@@YAXPAX@Z PROC		; std::_DebugHeapDelete<void>, COMDAT

; 56   : 	if (_Ptr != 0)

	mov	eax, DWORD PTR __Ptr$[esp-4]
	test	eax, eax
	je	SHORT $LN1@DebugHeapD

; 57   : 		{	// worth deleting
; 58   : 		_Ptr->~_Ty();
; 59   : 		// delete as _NORMAL_BLOCK, not _CRT_BLOCK, since we might have
; 60   : 		// facets allocated by normal new.
; 61   : 		free(_Ptr);

	mov	DWORD PTR __Ptr$[esp-4], eax
	jmp	_free
$LN1@DebugHeapD:

; 62   : 		}
; 63   : 	}

	ret	0
??$_DebugHeapDelete@X@std@@YAXPAX@Z ENDP		; std::_DebugHeapDelete<void>
_TEXT	ENDS
PUBLIC	?Set_Occupants_Fade@@YAXPAEMMMM@Z		; Set_Occupants_Fade
EXTRN	?As_VehicleGameObj@@YAPAEPAE@Z:PROC		; As_VehicleGameObj
EXTRN	___CxxFrameHandler3:PROC
;	COMDAT xdata$x
; File d:\source code\stgm\engine_vector.h
xdata$x	SEGMENT
__unwindtable$?Set_Occupants_Fade@@YAXPAEMMMM@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Set_Occupants_Fade@@YAXPAEMMMM@Z$0
__ehfuncinfo$?Set_Occupants_Fade@@YAXPAEMMMM@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?Set_Occupants_Fade@@YAXPAEMMMM@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
; File d:\source code\stgm\engine_bhs.cpp
xdata$x	ENDS
;	COMDAT ?Set_Occupants_Fade@@YAXPAEMMMM@Z
_TEXT	SEGMENT
_occupants$ = -28					; size = 16
__$EHRec$ = -12						; size = 12
_obj$ = 8						; size = 4
_red$ = 12						; size = 4
_green$ = 16						; size = 4
_blue$ = 20						; size = 4
_opacity$ = 24						; size = 4
?Set_Occupants_Fade@@YAXPAEMMMM@Z PROC			; Set_Occupants_Fade, COMDAT

; 197  : {

	mov	eax, DWORD PTR fs:0
	push	-1
	push	__ehhandler$?Set_Occupants_Fade@@YAXPAEMMMM@Z
	push	eax
	mov	DWORD PTR fs:0, esp

; 198  : 	if (!Commands->Get_ID(obj) || !obj)

	mov	eax, DWORD PTR ?Commands@@3PAUScriptCommands@@A ; Commands
	mov	ecx, DWORD PTR [eax+108]
	sub	esp, 16					; 00000010H
	push	esi
	mov	esi, DWORD PTR _obj$[esp+28]
	push	esi
	call	ecx
	add	esp, 4
	test	eax, eax
	je	$LN2@Set_Occupa
	test	esi, esi
	je	$LN2@Set_Occupa

; 199  : 	{
; 200  : 		return;
; 201  : 	}
; 202  : 	if (!As_VehicleGameObj(obj))

	push	esi
	call	?As_VehicleGameObj@@YAPAEPAE@Z		; As_VehicleGameObj
	add	esp, 4
	test	eax, eax
	je	$LN2@Set_Occupa

; 203  : 	{
; 204  : 		return;
; 205  : 	}
; 206  : 	VectorClass<GameObject *> *ptr = (VectorClass<GameObject *>*)(obj+0x9AC);
; 207  : 	VectorClass<GameObject *> occupants = (VectorClass<GameObject *>)*ptr;

	mov	dl, BYTE PTR [esi+2488]
	mov	al, BYTE PTR [esi+2489]
	push	ebx
	mov	ebx, DWORD PTR [esi+2484]
	push	edi
	mov	edi, DWORD PTR [esi+2480]
	mov	DWORD PTR _occupants$[esp+40], OFFSET ??_7?$VectorClass@PAE@@6B@
	mov	DWORD PTR _occupants$[esp+44], edi
	mov	DWORD PTR _occupants$[esp+48], ebx
	mov	BYTE PTR _occupants$[esp+52], dl
	mov	BYTE PTR _occupants$[esp+53], al

; 208  : 	int x = occupants.Length();
; 209  : 	for (int i = 0;i < x;i++)

	xor	esi, esi
	test	ebx, ebx
	mov	DWORD PTR __$EHRec$[esp+48], 0
	jle	SHORT $LN26@Set_Occupa
	npad	4
$LL4@Set_Occupa:

; 210  : 	{
; 211  : 		if (occupants[i])

	cmp	DWORD PTR [edi+esi*4], 0
	je	SHORT $LN3@Set_Occupa

; 212  : 		{
; 213  : 			Set_Screen_Fade_Color_Player(occupants[i],red,green,blue,0);

	fldz
	mov	ecx, DWORD PTR [edi+esi*4]
	sub	esp, 16					; 00000010H
	fstp	DWORD PTR [esp+12]
	fld	DWORD PTR _blue$[esp+52]
	fstp	DWORD PTR [esp+8]
	fld	DWORD PTR _green$[esp+52]
	fstp	DWORD PTR [esp+4]
	fld	DWORD PTR _red$[esp+52]
	fstp	DWORD PTR [esp]
	push	ecx
	call	DWORD PTR ?Set_Screen_Fade_Color_Player@@3P6AXPAEMMMM@ZA ; Set_Screen_Fade_Color_Player

; 214  : 			Set_Screen_Fade_Opacity_Player(occupants[i],opacity,0);

	fldz
	mov	edx, DWORD PTR [edi+esi*4]
	fstp	DWORD PTR [esp+16]
	fld	DWORD PTR _opacity$[esp+56]
	add	esp, 12					; 0000000cH
	fstp	DWORD PTR [esp]
	push	edx
	call	DWORD PTR ?Set_Screen_Fade_Opacity_Player@@3P6AXPAEMM@ZA ; Set_Screen_Fade_Opacity_Player
	add	esp, 12					; 0000000cH
$LN3@Set_Occupa:
	add	esi, 1
	cmp	esi, ebx
	jl	SHORT $LL4@Set_Occupa
$LN26@Set_Occupa:
	pop	edi
	pop	ebx
$LN2@Set_Occupa:

; 215  : 		}
; 216  : 	}
; 217  : }

	mov	ecx, DWORD PTR __$EHRec$[esp+32]
	pop	esi
	mov	DWORD PTR fs:0, ecx
	add	esp, 28					; 0000001cH
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Set_Occupants_Fade@@YAXPAEMMMM@Z$0:
	lea	ecx, DWORD PTR _occupants$[ebp]
	jmp	??1?$VectorClass@PAE@@UAE@XZ		; VectorClass<unsigned char *>::~VectorClass<unsigned char *>
__ehhandler$?Set_Occupants_Fade@@YAXPAEMMMM@Z:
	mov	eax, OFFSET __ehfuncinfo$?Set_Occupants_Fade@@YAXPAEMMMM@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
?Set_Occupants_Fade@@YAXPAEMMMM@Z ENDP			; Set_Occupants_Fade
; Function compile flags: /Ogtpy
;	COMDAT ??_G?$VectorClass@PAE@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$VectorClass@PAE@@UAEPAXI@Z PROC			; VectorClass<unsigned char *>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	test	BYTE PTR ___flags$[esp-4], 1
	push	esi
	mov	esi, ecx
	mov	DWORD PTR [esi], OFFSET ??_7?$VectorClass@PAE@@6B@
	je	SHORT $LN6@scalar@2
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN6@scalar@2:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$VectorClass@PAE@@UAEPAXI@Z ENDP			; VectorClass<unsigned char *>::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	?deallocate@?$_DebugHeapAllocator@D@std@@QAEXPADI@Z ; std::_DebugHeapAllocator<char>::deallocate
; Function compile flags: /Ogtpy
; File c:\program files\microsoft visual studio 8\vc\include\xdebug
;	COMDAT ?deallocate@?$_DebugHeapAllocator@D@std@@QAEXPADI@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
___formal$ = 12						; size = 4
?deallocate@?$_DebugHeapAllocator@D@std@@QAEXPADI@Z PROC ; std::_DebugHeapAllocator<char>::deallocate, COMDAT
; _this$ = ecx

; 102  : 		_DELETE_CRT_VEC(_Ptr);

	mov	eax, DWORD PTR __Ptr$[esp-4]
	test	eax, eax
	je	SHORT $LN3@deallocate
	push	eax
	call	_free
	pop	ecx
$LN3@deallocate:

; 103  : 		}

	ret	8
?deallocate@?$_DebugHeapAllocator@D@std@@QAEXPADI@Z ENDP ; std::_DebugHeapAllocator<char>::deallocate
_TEXT	ENDS
PUBLIC	??0?$_DebugHeapAllocator@D@std@@QAE@XZ		; std::_DebugHeapAllocator<char>::_DebugHeapAllocator<char>
; Function compile flags: /Ogtpy
;	COMDAT ??0?$_DebugHeapAllocator@D@std@@QAE@XZ
_TEXT	SEGMENT
??0?$_DebugHeapAllocator@D@std@@QAE@XZ PROC		; std::_DebugHeapAllocator<char>::_DebugHeapAllocator<char>, COMDAT
; _this$ = ecx
	mov	eax, ecx
	ret	0
??0?$_DebugHeapAllocator@D@std@@QAE@XZ ENDP		; std::_DebugHeapAllocator<char>::_DebugHeapAllocator<char>
_TEXT	ENDS
PUBLIC	??0?$_DebugHeapAllocator@D@std@@QAE@ABV01@@Z	; std::_DebugHeapAllocator<char>::_DebugHeapAllocator<char>
; Function compile flags: /Ogtpy
;	COMDAT ??0?$_DebugHeapAllocator@D@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
___that$ = 8						; size = 4
??0?$_DebugHeapAllocator@D@std@@QAE@ABV01@@Z PROC	; std::_DebugHeapAllocator<char>::_DebugHeapAllocator<char>, COMDAT
; _this$ = ecx
	mov	eax, ecx
	ret	4
??0?$_DebugHeapAllocator@D@std@@QAE@ABV01@@Z ENDP	; std::_DebugHeapAllocator<char>::_DebugHeapAllocator<char>
_TEXT	ENDS
END
