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

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

INCLUDELIB LIBCMTD
INCLUDELIB OLDNAMES

PUBLIC	??_C@_0P@GHFPNOJB@bad?5allocation?$AA@		; `string'
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
PUBLIC	?gzInit@@3PAVgzInitClass@@A			; gzInit
PUBLIC	?m_initial@gzManagerClass@@2_NA			; gzManagerClass::m_initial
PUBLIC	?m_ExplosionObj@gzManagerClass@@2PAVnc_ScriptableGameObj@@A ; gzManagerClass::m_ExplosionObj
PUBLIC	?m_sFps@gzManagerClass@@2HA			; gzManagerClass::m_sFps
PUBLIC	?gzManager@@3PAVgzManagerClass@@A		; gzManager
PUBLIC	?stDb@@3PAVstDbManager@@A			; stDb
_BSS	SEGMENT
?gzInit@@3PAVgzInitClass@@A DD 01H DUP (?)		; gzInit
?m_initial@gzManagerClass@@2_NA DB 01H DUP (?)		; gzManagerClass::m_initial
	ALIGN	4

?m_ExplosionObj@gzManagerClass@@2PAVnc_ScriptableGameObj@@A DD 01H DUP (?) ; gzManagerClass::m_ExplosionObj
?m_sFps@gzManagerClass@@2HA DD 01H DUP (?)		; gzManagerClass::m_sFps
?gzManager@@3PAVgzManagerClass@@A DD 01H DUP (?)	; gzManager
?stDb@@3PAVstDbManager@@A DD 01H DUP (?)		; stDb
_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 (x86)\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	??0aCriticalSection@@QAE@XZ			; aCriticalSection::aCriticalSection
EXTRN	__imp__InitializeCriticalSection@4:PROC
; Function compile flags: /Ogtpy
; File d:\source code\alib\include\acriticalsection.h
;	COMDAT ??0aCriticalSection@@QAE@XZ
_TEXT	SEGMENT
??0aCriticalSection@@QAE@XZ PROC			; aCriticalSection::aCriticalSection, COMDAT
; _this$ = ecx

; 7    : 	aCriticalSection()

	push	esi
	mov	esi, ecx

; 8    : 	{
; 9    : 		InitializeCriticalSection(&this->m_session);

	push	esi
	call	DWORD PTR __imp__InitializeCriticalSection@4

; 10   : 	};

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

; 13   : 		DeleteCriticalSection(&this->m_session);

	push	ecx
	call	DWORD PTR __imp__DeleteCriticalSection@4

; 14   : 	};

	ret	0
??1aCriticalSection@@QAE@XZ ENDP			; aCriticalSection::~aCriticalSection
_TEXT	ENDS
PUBLIC	?GetBuffer@aStringData@@QAEPAXXZ		; aStringData::GetBuffer
; Function compile flags: /Ogtpy
; File d:\source code\alib\include\astring.h
;	COMDAT ?GetBuffer@aStringData@@QAEPAXXZ
_TEXT	SEGMENT
?GetBuffer@aStringData@@QAEPAXXZ PROC			; aStringData::GetBuffer, COMDAT
; _this$ = ecx

; 33   : 	inline void *GetBuffer() { return this->m_ptr; };

	mov	eax, DWORD PTR [ecx]
	ret	0
?GetBuffer@aStringData@@QAEPAXXZ ENDP			; aStringData::GetBuffer
_TEXT	ENDS
PUBLIC	??_7aString@@6B@				; aString::`vftable'
PUBLIC	??0aString@@QAE@ABV0@@Z				; aString::aString
PUBLIC	??_R4aString@@6B@				; aString::`RTTI Complete Object Locator'
PUBLIC	??_R0?AVaString@@@8				; aString `RTTI Type Descriptor'
PUBLIC	??_R3aString@@8					; aString::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2aString@@8					; aString::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@aString@@8			; aString::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R1A@?0A@EA@aStringBase@@8			; aStringBase::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVaStringBase@@@8				; aStringBase `RTTI Type Descriptor'
PUBLIC	??_R3aStringBase@@8				; aStringBase::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2aStringBase@@8				; aStringBase::`RTTI Base Class Array'
PUBLIC	?CharSize@aString@@UBEIXZ			; aString::CharSize
EXTRN	??0aStringBase@@QAE@ABV0@@Z:PROC		; aStringBase::aStringBase
EXTRN	??_EaString@@UAEPAXI@Z:PROC			; aString::`vector deleting destructor'
;	COMDAT ??_R2aStringBase@@8
rdata$r	SEGMENT
??_R2aStringBase@@8 DD FLAT:??_R1A@?0A@EA@aStringBase@@8 ; aStringBase::`RTTI Base Class Array'
rdata$r	ENDS
;	COMDAT ??_R3aStringBase@@8
rdata$r	SEGMENT
??_R3aStringBase@@8 DD 00H				; aStringBase::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	01H
	DD	FLAT:??_R2aStringBase@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVaStringBase@@@8
_DATA	SEGMENT
??_R0?AVaStringBase@@@8 DD FLAT:??_7type_info@@6B@	; aStringBase `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVaStringBase@@', 00H
_DATA	ENDS
;	COMDAT ??_R1A@?0A@EA@aStringBase@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@aStringBase@@8 DD FLAT:??_R0?AVaStringBase@@@8 ; aStringBase::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	00H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3aStringBase@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@aString@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@aString@@8 DD FLAT:??_R0?AVaString@@@8	; aString::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3aString@@8
rdata$r	ENDS
;	COMDAT ??_R2aString@@8
rdata$r	SEGMENT
??_R2aString@@8 DD FLAT:??_R1A@?0A@EA@aString@@8	; aString::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@aStringBase@@8
rdata$r	ENDS
;	COMDAT ??_R3aString@@8
rdata$r	SEGMENT
??_R3aString@@8 DD 00H					; aString::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2aString@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVaString@@@8
_DATA	SEGMENT
??_R0?AVaString@@@8 DD FLAT:??_7type_info@@6B@		; aString `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVaString@@', 00H
_DATA	ENDS
;	COMDAT ??_R4aString@@6B@
rdata$r	SEGMENT
??_R4aString@@6B@ DD 00H				; aString::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVaString@@@8
	DD	FLAT:??_R3aString@@8
rdata$r	ENDS
;	COMDAT ??_7aString@@6B@
CONST	SEGMENT
??_7aString@@6B@ DD FLAT:??_R4aString@@6B@		; aString::`vftable'
	DD	FLAT:??_EaString@@UAEPAXI@Z
	DD	FLAT:?CharSize@aString@@UBEIXZ
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ??0aString@@QAE@ABV0@@Z
_TEXT	SEGMENT
_str$ = 8						; size = 4
??0aString@@QAE@ABV0@@Z PROC				; aString::aString, COMDAT
; _this$ = ecx

; 134  : 	aString(const aString& str) : aStringBase(str) { };

	mov	eax, DWORD PTR _str$[esp-4]
	push	esi
	push	eax
	mov	esi, ecx
	call	??0aStringBase@@QAE@ABV0@@Z		; aStringBase::aStringBase
	mov	DWORD PTR [esi], OFFSET ??_7aString@@6B@
	mov	eax, esi
	pop	esi
	ret	4
??0aString@@QAE@ABV0@@Z ENDP				; aString::aString
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?CharSize@aString@@UBEIXZ
_TEXT	SEGMENT
?CharSize@aString@@UBEIXZ PROC				; aString::CharSize, COMDAT
; _this$ = ecx

; 143  : 	unsigned int CharSize() const { return 1; };

	mov	eax, 1
	ret	0
?CharSize@aString@@UBEIXZ ENDP				; aString::CharSize
_TEXT	ENDS
PUBLIC	?GetString@aString@@QBEPBDXZ			; aString::GetString
; Function compile flags: /Ogtpy
;	COMDAT ?GetString@aString@@QBEPBDXZ
_TEXT	SEGMENT
?GetString@aString@@QBEPBDXZ PROC			; aString::GetString, COMDAT
; _this$ = ecx

; 146  : 	const char *GetString() const { return (this->m_data) ? (const char*)this->m_data->GetBuffer() : NULL; };

	mov	eax, DWORD PTR [ecx+4]
	test	eax, eax
	je	SHORT $LN3@GetString
	mov	eax, DWORD PTR [eax]
	ret	0
$LN3@GetString:
	xor	eax, eax
	ret	0
?GetString@aString@@QBEPBDXZ ENDP			; aString::GetString
_TEXT	ENDS
PUBLIC	??1aString@@UAE@XZ				; aString::~aString
EXTRN	??1aStringBase@@UAE@XZ:PROC			; aStringBase::~aStringBase
; Function compile flags: /Ogtpy
;	COMDAT ??1aString@@UAE@XZ
_TEXT	SEGMENT
??1aString@@UAE@XZ PROC					; aString::~aString, COMDAT
; _this$ = ecx
	jmp	??1aStringBase@@UAE@XZ			; aStringBase::~aStringBase
??1aString@@UAE@XZ ENDP					; aString::~aString
_TEXT	ENDS
PUBLIC	??H@YA?AVaString@@ABV0@0@Z			; operator+
EXTRN	??YaString@@QAEAAV0@ABV0@@Z:PROC		; aString::operator+=
EXTRN	___CxxFrameHandler3:PROC
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??H@YA?AVaString@@ABV0@0@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??H@YA?AVaString@@ABV0@0@Z$0
__ehfuncinfo$??H@YA?AVaString@@ABV0@0@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??H@YA?AVaString@@ABV0@0@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??H@YA?AVaString@@ABV0@0@Z
_TEXT	SEGMENT
$T70250 = -16						; size = 4
__$EHRec$ = -12						; size = 12
___$ReturnUdt$ = 8					; size = 4
_str1$ = 12						; size = 4
_str2$ = 16						; size = 4
??H@YA?AVaString@@ABV0@0@Z PROC				; operator+, COMDAT

; 195  : {

	push	-1
	push	__ehhandler$??H@YA?AVaString@@ABV0@0@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	mov	DWORD PTR fs:0, esp
	push	ecx

; 196  : 	aString ret = str1;

	mov	eax, DWORD PTR _str1$[esp+12]
	push	esi
	mov	DWORD PTR $T70250[esp+20], 0
	mov	esi, DWORD PTR ___$ReturnUdt$[esp+16]
	push	eax
	mov	ecx, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	call	??0aStringBase@@QAE@ABV0@@Z		; aStringBase::aStringBase
	mov	DWORD PTR [esi], OFFSET ??_7aString@@6B@

; 197  : 	ret += str2;
; 198  : 	return ret;

	mov	ecx, DWORD PTR _str2$[esp+16]
	push	ecx
	mov	ecx, esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
	mov	DWORD PTR $T70250[esp+24], 1
	call	??YaString@@QAEAAV0@ABV0@@Z		; aString::operator+=

; 199  : }

	mov	ecx, DWORD PTR __$EHRec$[esp+20]
	mov	eax, esi
	pop	esi
	mov	DWORD PTR fs:0, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??H@YA?AVaString@@ABV0@0@Z$0:
	mov	eax, DWORD PTR $T70250[ebp]
	and	eax, 1
	je	$LN4@operator
	and	DWORD PTR $T70250[ebp], -2		; fffffffeH
	mov	ecx, DWORD PTR ___$ReturnUdt$[ebp-4]
	jmp	??1aString@@UAE@XZ
$LN4@operator:
	ret	0
__ehhandler$??H@YA?AVaString@@ABV0@0@Z:
	mov	eax, OFFSET __ehfuncinfo$??H@YA?AVaString@@ABV0@0@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
??H@YA?AVaString@@ABV0@0@Z ENDP				; operator+
PUBLIC	?GetError@aSQLite3@@QAEABVaString@@XZ		; aSQLite3::GetError
; Function compile flags: /Ogtpy
; File d:\source code\alib\include\asqlite3.h
;	COMDAT ?GetError@aSQLite3@@QAEABVaString@@XZ
_TEXT	SEGMENT
?GetError@aSQLite3@@QAEABVaString@@XZ PROC		; aSQLite3::GetError, COMDAT
; _this$ = ecx

; 45   : 	const aString& GetError() { return this->m_error; };

	lea	eax, DWORD PTR [ecx+8]
	ret	0
?GetError@aSQLite3@@QAEABVaString@@XZ ENDP		; aSQLite3::GetError
_TEXT	ENDS
PUBLIC	?GetLastQuery@aSQLite3@@QAEABVaString@@XZ	; aSQLite3::GetLastQuery
; Function compile flags: /Ogtpy
;	COMDAT ?GetLastQuery@aSQLite3@@QAEABVaString@@XZ
_TEXT	SEGMENT
?GetLastQuery@aSQLite3@@QAEABVaString@@XZ PROC		; aSQLite3::GetLastQuery, COMDAT
; _this$ = ecx

; 46   : 	const aString& GetLastQuery() { return this->m_query; };

	lea	eax, DWORD PTR [ecx+16]
	ret	0
?GetLastQuery@aSQLite3@@QAEABVaString@@XZ ENDP		; aSQLite3::GetLastQuery
_TEXT	ENDS
PUBLIC	??_7gzManagerClass@@6B@				; gzManagerClass::`vftable'
PUBLIC	??0gzManagerClass@@QAE@XZ			; gzManagerClass::gzManagerClass
PUBLIC	??_R4gzManagerClass@@6B@			; gzManagerClass::`RTTI Complete Object Locator'
PUBLIC	??_R0?AVgzManagerClass@@@8			; gzManagerClass `RTTI Type Descriptor'
PUBLIC	??_R3gzManagerClass@@8				; gzManagerClass::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2gzManagerClass@@8				; gzManagerClass::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@gzManagerClass@@8			; gzManagerClass::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R1A@?0A@EA@EventHandler@@8			; EventHandler::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVEventHandler@@@8			; EventHandler `RTTI Type Descriptor'
PUBLIC	??_R3EventHandler@@8				; EventHandler::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2EventHandler@@8				; EventHandler::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@gzBase@@8				; gzBase::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVgzBase@@@8				; gzBase `RTTI Type Descriptor'
PUBLIC	??_R3gzBase@@8					; gzBase::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2gzBase@@8					; gzBase::`RTTI Base Class Array'
PUBLIC	?GetName@gzManagerClass@@UAEPBDXZ		; gzManagerClass::GetName
PUBLIC	?Delete@gzManagerClass@@UAEXXZ			; gzManagerClass::Delete
PUBLIC	?Level_Loaded@gzManagerClass@@UAEXXZ		; gzManagerClass::Level_Loaded
PUBLIC	?Level_Ended@EventHandler@@UAEXXZ		; EventHandler::Level_Ended
PUBLIC	?Think@gzManagerClass@@UAEXXZ			; gzManagerClass::Think
PUBLIC	?Player_Joined@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z ; EventHandler::Player_Joined
PUBLIC	?Player_Left@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z ; EventHandler::Player_Left
PUBLIC	?Player_Purchase@EventHandler@@UAEXAAVgzEventPlayerPurchase@@@Z ; EventHandler::Player_Purchase
PUBLIC	?Player_BandwidthChange@EventHandler@@UAEXAAVgzEventPlayerBandwidth@@@Z ; EventHandler::Player_BandwidthChange
PUBLIC	?Player_Suicide@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z ; EventHandler::Player_Suicide
PUBLIC	?Player_TeamChange@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z ; EventHandler::Player_TeamChange
PUBLIC	?Player_Chat@EventHandler@@UAEXAAVgzEventPlayerChat@@@Z ; EventHandler::Player_Chat
PUBLIC	?Player_Radio@EventHandler@@UAEXAAVgzEventPlayerRadio@@@Z ; EventHandler::Player_Radio
PUBLIC	?Player_SerialHash@EventHandler@@UAEXAAVgzEventPlayerSerialHash@@@Z ; EventHandler::Player_SerialHash
PUBLIC	?Player_RawDamage@EventHandler@@UAEXAAVgzEventObjectDamage@@@Z ; EventHandler::Player_RawDamage
PUBLIC	?Object_Created@EventHandler@@UAEXAAVgzEventObjectCreate@@@Z ; EventHandler::Object_Created
PUBLIC	?Object_Init@EventHandler@@UAEXAAVgzEventObjectInit@@@Z ; EventHandler::Object_Init
PUBLIC	?Object_Damaged@EventHandler@@UAEXAAVgzEventObjectDamage@@@Z ; EventHandler::Object_Damaged
PUBLIC	?Object_Killed@EventHandler@@UAEXAAVgzEventObjectKill@@@Z ; EventHandler::Object_Killed
PUBLIC	?Object_Transition@EventHandler@@UAEXAAVgzEventObjectTransition@@@Z ; EventHandler::Object_Transition
PUBLIC	?Object_JumpStart@EventHandler@@UAEXAAVgzEventObjectJump@@@Z ; EventHandler::Object_JumpStart
PUBLIC	?Object_JumpComplete@EventHandler@@UAEXAAVgzEventObjectJump@@@Z ; EventHandler::Object_JumpComplete
PUBLIC	?Object_SoldierSquished@EventHandler@@UAEXAAVgzEventObjectKill@@@Z ; EventHandler::Object_SoldierSquished
PUBLIC	?Object_C4Creation@EventHandler@@UAEXAAVgzEventObjectC4Creation@@@Z ; EventHandler::Object_C4Creation
PUBLIC	?Object_C4Detonate@EventHandler@@UAEXAAVgzEventObjectC4Detonation@@@Z ; EventHandler::Object_C4Detonate
PUBLIC	?Object_PowerupGrant@EventHandler@@UAEXAAVgzEventObjectPowerupGrant@@@Z ; EventHandler::Object_PowerupGrant
PUBLIC	?Object_Fire@EventHandler@@UAEXAAVgzEventObjectFire@@@Z ; EventHandler::Object_Fire
PUBLIC	?Object_FlipKill@EventHandler@@UAEXAAVgzEventObjectFlipKill@@@Z ; EventHandler::Object_FlipKill
PUBLIC	?Net_WolPage@EventHandler@@UAEXAAVgzEventNetWolPage@@@Z ; EventHandler::Net_WolPage
PUBLIC	?Net_SerialAuth@EventHandler@@UAEXAAVgzEventNetSerialAuth@@@Z ; EventHandler::Net_SerialAuth
PUBLIC	?Bhs_Poke@EventHandler@@UAEXAAVgzEventBhsPoke@@@Z ; EventHandler::Bhs_Poke
PUBLIC	?Bhs_Version@EventHandler@@UAEXAAVgzEventBhsVersion@@@Z ; EventHandler::Bhs_Version
EXTRN	??1EventHandler@@UAE@XZ:PROC			; EventHandler::~EventHandler
EXTRN	?Verbose_Help_File@nc_ConsoleFunctionManager@@SAXXZ:PROC ; nc_ConsoleFunctionManager::Verbose_Help_File
EXTRN	?Sort_Function_List@nc_ConsoleFunctionManager@@SAXXZ:PROC ; nc_ConsoleFunctionManager::Sort_Function_List
EXTRN	?RegisterEvent@EventHandler@@QAEXHH@Z:PROC	; EventHandler::RegisterEvent
EXTRN	??0EventHandler@@QAE@XZ:PROC			; EventHandler::EventHandler
EXTRN	??_EgzManagerClass@@UAEPAXI@Z:PROC		; gzManagerClass::`vector deleting destructor'
EXTRN	?SetDeletePending@gzBase@@UAEXXZ:PROC		; gzBase::SetDeletePending
;	COMDAT ??_R2gzBase@@8
; File d:\source code\stgm\stmanager.cpp
rdata$r	SEGMENT
??_R2gzBase@@8 DD FLAT:??_R1A@?0A@EA@gzBase@@8		; gzBase::`RTTI Base Class Array'
rdata$r	ENDS
;	COMDAT ??_R3gzBase@@8
rdata$r	SEGMENT
??_R3gzBase@@8 DD 00H					; gzBase::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	01H
	DD	FLAT:??_R2gzBase@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVgzBase@@@8
_DATA	SEGMENT
??_R0?AVgzBase@@@8 DD FLAT:??_7type_info@@6B@		; gzBase `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVgzBase@@', 00H
_DATA	ENDS
;	COMDAT ??_R1A@?0A@EA@gzBase@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@gzBase@@8 DD FLAT:??_R0?AVgzBase@@@8	; gzBase::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	00H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3gzBase@@8
rdata$r	ENDS
;	COMDAT ??_R2EventHandler@@8
rdata$r	SEGMENT
??_R2EventHandler@@8 DD FLAT:??_R1A@?0A@EA@EventHandler@@8 ; EventHandler::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@gzBase@@8
rdata$r	ENDS
;	COMDAT ??_R3EventHandler@@8
rdata$r	SEGMENT
??_R3EventHandler@@8 DD 00H				; EventHandler::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2EventHandler@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVEventHandler@@@8
_DATA	SEGMENT
??_R0?AVEventHandler@@@8 DD FLAT:??_7type_info@@6B@	; EventHandler `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVEventHandler@@', 00H
_DATA	ENDS
;	COMDAT ??_R1A@?0A@EA@EventHandler@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@EventHandler@@8 DD FLAT:??_R0?AVEventHandler@@@8 ; EventHandler::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3EventHandler@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@gzManagerClass@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@gzManagerClass@@8 DD FLAT:??_R0?AVgzManagerClass@@@8 ; gzManagerClass::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	02H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3gzManagerClass@@8
rdata$r	ENDS
;	COMDAT ??_R2gzManagerClass@@8
rdata$r	SEGMENT
??_R2gzManagerClass@@8 DD FLAT:??_R1A@?0A@EA@gzManagerClass@@8 ; gzManagerClass::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@EventHandler@@8
	DD	FLAT:??_R1A@?0A@EA@gzBase@@8
rdata$r	ENDS
;	COMDAT ??_R3gzManagerClass@@8
rdata$r	SEGMENT
??_R3gzManagerClass@@8 DD 00H				; gzManagerClass::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	03H
	DD	FLAT:??_R2gzManagerClass@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVgzManagerClass@@@8
_DATA	SEGMENT
??_R0?AVgzManagerClass@@@8 DD FLAT:??_7type_info@@6B@	; gzManagerClass `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVgzManagerClass@@', 00H
_DATA	ENDS
;	COMDAT ??_R4gzManagerClass@@6B@
rdata$r	SEGMENT
??_R4gzManagerClass@@6B@ DD 00H				; gzManagerClass::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVgzManagerClass@@@8
	DD	FLAT:??_R3gzManagerClass@@8
rdata$r	ENDS
;	COMDAT ??_7gzManagerClass@@6B@
CONST	SEGMENT
??_7gzManagerClass@@6B@ DD FLAT:??_R4gzManagerClass@@6B@ ; gzManagerClass::`vftable'
	DD	FLAT:??_EgzManagerClass@@UAEPAXI@Z
	DD	FLAT:?GetName@gzManagerClass@@UAEPBDXZ
	DD	FLAT:?Delete@gzManagerClass@@UAEXXZ
	DD	FLAT:?SetDeletePending@gzBase@@UAEXXZ
	DD	FLAT:?Level_Loaded@gzManagerClass@@UAEXXZ
	DD	FLAT:?Level_Ended@EventHandler@@UAEXXZ
	DD	FLAT:?Think@gzManagerClass@@UAEXXZ
	DD	FLAT:?Player_Joined@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z
	DD	FLAT:?Player_Left@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z
	DD	FLAT:?Player_Purchase@EventHandler@@UAEXAAVgzEventPlayerPurchase@@@Z
	DD	FLAT:?Player_BandwidthChange@EventHandler@@UAEXAAVgzEventPlayerBandwidth@@@Z
	DD	FLAT:?Player_Suicide@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z
	DD	FLAT:?Player_TeamChange@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z
	DD	FLAT:?Player_Chat@EventHandler@@UAEXAAVgzEventPlayerChat@@@Z
	DD	FLAT:?Player_Radio@EventHandler@@UAEXAAVgzEventPlayerRadio@@@Z
	DD	FLAT:?Player_SerialHash@EventHandler@@UAEXAAVgzEventPlayerSerialHash@@@Z
	DD	FLAT:?Player_RawDamage@EventHandler@@UAEXAAVgzEventObjectDamage@@@Z
	DD	FLAT:?Object_Created@EventHandler@@UAEXAAVgzEventObjectCreate@@@Z
	DD	FLAT:?Object_Init@EventHandler@@UAEXAAVgzEventObjectInit@@@Z
	DD	FLAT:?Object_Damaged@EventHandler@@UAEXAAVgzEventObjectDamage@@@Z
	DD	FLAT:?Object_Killed@EventHandler@@UAEXAAVgzEventObjectKill@@@Z
	DD	FLAT:?Object_Transition@EventHandler@@UAEXAAVgzEventObjectTransition@@@Z
	DD	FLAT:?Object_JumpStart@EventHandler@@UAEXAAVgzEventObjectJump@@@Z
	DD	FLAT:?Object_JumpComplete@EventHandler@@UAEXAAVgzEventObjectJump@@@Z
	DD	FLAT:?Object_SoldierSquished@EventHandler@@UAEXAAVgzEventObjectKill@@@Z
	DD	FLAT:?Object_C4Creation@EventHandler@@UAEXAAVgzEventObjectC4Creation@@@Z
	DD	FLAT:?Object_C4Detonate@EventHandler@@UAEXAAVgzEventObjectC4Detonation@@@Z
	DD	FLAT:?Object_PowerupGrant@EventHandler@@UAEXAAVgzEventObjectPowerupGrant@@@Z
	DD	FLAT:?Object_Fire@EventHandler@@UAEXAAVgzEventObjectFire@@@Z
	DD	FLAT:?Object_FlipKill@EventHandler@@UAEXAAVgzEventObjectFlipKill@@@Z
	DD	FLAT:?Net_WolPage@EventHandler@@UAEXAAVgzEventNetWolPage@@@Z
	DD	FLAT:?Net_SerialAuth@EventHandler@@UAEXAAVgzEventNetSerialAuth@@@Z
	DD	FLAT:?Bhs_Poke@EventHandler@@UAEXAAVgzEventBhsPoke@@@Z
	DD	FLAT:?Bhs_Version@EventHandler@@UAEXAAVgzEventBhsVersion@@@Z
CONST	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0gzManagerClass@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzManagerClass@@QAE@XZ$0
__ehfuncinfo$??0gzManagerClass@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0gzManagerClass@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??0gzManagerClass@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??0gzManagerClass@@QAE@XZ PROC				; gzManagerClass::gzManagerClass, COMDAT
; _this$ = ecx

; 167  : {

	push	-1
	push	__ehhandler$??0gzManagerClass@@QAE@XZ
	mov	eax, DWORD PTR fs:0
	push	eax
	mov	DWORD PTR fs:0, esp
	push	ecx
	push	esi
	mov	esi, ecx
	mov	DWORD PTR _this$[esp+20], esi
	call	??0EventHandler@@QAE@XZ			; EventHandler::EventHandler

; 168  : 	this->RegisterEvent(EVT_GAME_LEVEL_LOADED);

	push	0
	push	4096					; 00001000H
	mov	ecx, esi
	mov	DWORD PTR __$EHRec$[esp+36], 0
	mov	DWORD PTR [esi], OFFSET ??_7gzManagerClass@@6B@
	call	?RegisterEvent@EventHandler@@QAEXHH@Z	; EventHandler::RegisterEvent

; 169  : 	this->RegisterEvent(EVT_GAME_THINK);

	push	0
	push	4098					; 00001002H
	mov	ecx, esi
	call	?RegisterEvent@EventHandler@@QAEXHH@Z	; EventHandler::RegisterEvent

; 170  : 
; 171  : 	nc_ConsoleFunctionManager::Sort_Function_List();

	call	?Sort_Function_List@nc_ConsoleFunctionManager@@SAXXZ ; nc_ConsoleFunctionManager::Sort_Function_List

; 172  : 	nc_ConsoleFunctionManager::Verbose_Help_File();

	call	?Verbose_Help_File@nc_ConsoleFunctionManager@@SAXXZ ; nc_ConsoleFunctionManager::Verbose_Help_File

; 173  : }

	mov	ecx, DWORD PTR __$EHRec$[esp+20]
	mov	eax, esi
	pop	esi
	mov	DWORD PTR fs:0, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0gzManagerClass@@QAE@XZ$0:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1EventHandler@@UAE@XZ			; EventHandler::~EventHandler
__ehhandler$??0gzManagerClass@@QAE@XZ:
	mov	eax, OFFSET __ehfuncinfo$??0gzManagerClass@@QAE@XZ
	jmp	___CxxFrameHandler3
text$x	ENDS
??0gzManagerClass@@QAE@XZ ENDP				; gzManagerClass::gzManagerClass
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stevent.h
;	COMDAT ?Level_Ended@EventHandler@@UAEXXZ
_TEXT	SEGMENT
?Level_Ended@EventHandler@@UAEXXZ PROC			; EventHandler::Level_Ended, COMDAT
; _this$ = ecx

; 63   : 	virtual void Level_Ended() { };

	ret	0
?Level_Ended@EventHandler@@UAEXXZ ENDP			; EventHandler::Level_Ended
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Player_Joined@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Player_Joined@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z PROC ; EventHandler::Player_Joined, COMDAT
; _this$ = ecx

; 67   : 	virtual void Player_Joined(gzEventPlayerBase &) { };

	ret	4
?Player_Joined@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z ENDP ; EventHandler::Player_Joined
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Player_Left@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Player_Left@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z PROC ; EventHandler::Player_Left, COMDAT
; _this$ = ecx

; 68   : 	virtual void Player_Left(gzEventPlayerBase &) { };

	ret	4
?Player_Left@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z ENDP ; EventHandler::Player_Left
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Player_Purchase@EventHandler@@UAEXAAVgzEventPlayerPurchase@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Player_Purchase@EventHandler@@UAEXAAVgzEventPlayerPurchase@@@Z PROC ; EventHandler::Player_Purchase, COMDAT
; _this$ = ecx

; 69   : 	virtual void Player_Purchase(gzEventPlayerPurchase &) { };

	ret	4
?Player_Purchase@EventHandler@@UAEXAAVgzEventPlayerPurchase@@@Z ENDP ; EventHandler::Player_Purchase
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Player_BandwidthChange@EventHandler@@UAEXAAVgzEventPlayerBandwidth@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Player_BandwidthChange@EventHandler@@UAEXAAVgzEventPlayerBandwidth@@@Z PROC ; EventHandler::Player_BandwidthChange, COMDAT
; _this$ = ecx

; 70   : 	virtual void Player_BandwidthChange(gzEventPlayerBandwidth &) { };

	ret	4
?Player_BandwidthChange@EventHandler@@UAEXAAVgzEventPlayerBandwidth@@@Z ENDP ; EventHandler::Player_BandwidthChange
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Player_Suicide@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Player_Suicide@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z PROC ; EventHandler::Player_Suicide, COMDAT
; _this$ = ecx

; 71   : 	virtual void Player_Suicide(gzEventPlayerBase &) { };

	ret	4
?Player_Suicide@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z ENDP ; EventHandler::Player_Suicide
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Player_TeamChange@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Player_TeamChange@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z PROC ; EventHandler::Player_TeamChange, COMDAT
; _this$ = ecx

; 72   : 	virtual void Player_TeamChange(gzEventPlayerBase &) { };

	ret	4
?Player_TeamChange@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z ENDP ; EventHandler::Player_TeamChange
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Player_Chat@EventHandler@@UAEXAAVgzEventPlayerChat@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Player_Chat@EventHandler@@UAEXAAVgzEventPlayerChat@@@Z PROC ; EventHandler::Player_Chat, COMDAT
; _this$ = ecx

; 73   : 	virtual void Player_Chat(gzEventPlayerChat &) { };

	ret	4
?Player_Chat@EventHandler@@UAEXAAVgzEventPlayerChat@@@Z ENDP ; EventHandler::Player_Chat
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Player_Radio@EventHandler@@UAEXAAVgzEventPlayerRadio@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Player_Radio@EventHandler@@UAEXAAVgzEventPlayerRadio@@@Z PROC ; EventHandler::Player_Radio, COMDAT
; _this$ = ecx

; 74   : 	virtual void Player_Radio(gzEventPlayerRadio &) { };

	ret	4
?Player_Radio@EventHandler@@UAEXAAVgzEventPlayerRadio@@@Z ENDP ; EventHandler::Player_Radio
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Player_SerialHash@EventHandler@@UAEXAAVgzEventPlayerSerialHash@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Player_SerialHash@EventHandler@@UAEXAAVgzEventPlayerSerialHash@@@Z PROC ; EventHandler::Player_SerialHash, COMDAT
; _this$ = ecx

; 75   : 	virtual void Player_SerialHash(gzEventPlayerSerialHash &) { };

	ret	4
?Player_SerialHash@EventHandler@@UAEXAAVgzEventPlayerSerialHash@@@Z ENDP ; EventHandler::Player_SerialHash
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Player_RawDamage@EventHandler@@UAEXAAVgzEventObjectDamage@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Player_RawDamage@EventHandler@@UAEXAAVgzEventObjectDamage@@@Z PROC ; EventHandler::Player_RawDamage, COMDAT
; _this$ = ecx

; 76   : 	virtual void Player_RawDamage(gzEventObjectDamage &) { };

	ret	4
?Player_RawDamage@EventHandler@@UAEXAAVgzEventObjectDamage@@@Z ENDP ; EventHandler::Player_RawDamage
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Object_Created@EventHandler@@UAEXAAVgzEventObjectCreate@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Object_Created@EventHandler@@UAEXAAVgzEventObjectCreate@@@Z PROC ; EventHandler::Object_Created, COMDAT
; _this$ = ecx

; 79   : 	virtual void Object_Created(gzEventObjectCreate &) { };

	ret	4
?Object_Created@EventHandler@@UAEXAAVgzEventObjectCreate@@@Z ENDP ; EventHandler::Object_Created
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Object_Init@EventHandler@@UAEXAAVgzEventObjectInit@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Object_Init@EventHandler@@UAEXAAVgzEventObjectInit@@@Z PROC ; EventHandler::Object_Init, COMDAT
; _this$ = ecx

; 80   : 	virtual void Object_Init(gzEventObjectInit &) { };

	ret	4
?Object_Init@EventHandler@@UAEXAAVgzEventObjectInit@@@Z ENDP ; EventHandler::Object_Init
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Object_Damaged@EventHandler@@UAEXAAVgzEventObjectDamage@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Object_Damaged@EventHandler@@UAEXAAVgzEventObjectDamage@@@Z PROC ; EventHandler::Object_Damaged, COMDAT
; _this$ = ecx

; 81   : 	virtual void Object_Damaged(gzEventObjectDamage &) { };

	ret	4
?Object_Damaged@EventHandler@@UAEXAAVgzEventObjectDamage@@@Z ENDP ; EventHandler::Object_Damaged
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Object_Killed@EventHandler@@UAEXAAVgzEventObjectKill@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Object_Killed@EventHandler@@UAEXAAVgzEventObjectKill@@@Z PROC ; EventHandler::Object_Killed, COMDAT
; _this$ = ecx

; 82   : 	virtual void Object_Killed(gzEventObjectKill &) { };

	ret	4
?Object_Killed@EventHandler@@UAEXAAVgzEventObjectKill@@@Z ENDP ; EventHandler::Object_Killed
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Object_Transition@EventHandler@@UAEXAAVgzEventObjectTransition@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Object_Transition@EventHandler@@UAEXAAVgzEventObjectTransition@@@Z PROC ; EventHandler::Object_Transition, COMDAT
; _this$ = ecx

; 83   : 	virtual void Object_Transition(gzEventObjectTransition &) { };

	ret	4
?Object_Transition@EventHandler@@UAEXAAVgzEventObjectTransition@@@Z ENDP ; EventHandler::Object_Transition
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Object_JumpStart@EventHandler@@UAEXAAVgzEventObjectJump@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Object_JumpStart@EventHandler@@UAEXAAVgzEventObjectJump@@@Z PROC ; EventHandler::Object_JumpStart, COMDAT
; _this$ = ecx

; 84   : 	virtual void Object_JumpStart(gzEventObjectJump &) { };

	ret	4
?Object_JumpStart@EventHandler@@UAEXAAVgzEventObjectJump@@@Z ENDP ; EventHandler::Object_JumpStart
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Object_JumpComplete@EventHandler@@UAEXAAVgzEventObjectJump@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Object_JumpComplete@EventHandler@@UAEXAAVgzEventObjectJump@@@Z PROC ; EventHandler::Object_JumpComplete, COMDAT
; _this$ = ecx

; 85   : 	virtual void Object_JumpComplete(gzEventObjectJump &) { };

	ret	4
?Object_JumpComplete@EventHandler@@UAEXAAVgzEventObjectJump@@@Z ENDP ; EventHandler::Object_JumpComplete
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Object_SoldierSquished@EventHandler@@UAEXAAVgzEventObjectKill@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Object_SoldierSquished@EventHandler@@UAEXAAVgzEventObjectKill@@@Z PROC ; EventHandler::Object_SoldierSquished, COMDAT
; _this$ = ecx

; 86   : 	virtual void Object_SoldierSquished(gzEventObjectKill &) { };

	ret	4
?Object_SoldierSquished@EventHandler@@UAEXAAVgzEventObjectKill@@@Z ENDP ; EventHandler::Object_SoldierSquished
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Object_C4Creation@EventHandler@@UAEXAAVgzEventObjectC4Creation@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Object_C4Creation@EventHandler@@UAEXAAVgzEventObjectC4Creation@@@Z PROC ; EventHandler::Object_C4Creation, COMDAT
; _this$ = ecx

; 87   : 	virtual void Object_C4Creation(gzEventObjectC4Creation &) { };

	ret	4
?Object_C4Creation@EventHandler@@UAEXAAVgzEventObjectC4Creation@@@Z ENDP ; EventHandler::Object_C4Creation
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Object_C4Detonate@EventHandler@@UAEXAAVgzEventObjectC4Detonation@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Object_C4Detonate@EventHandler@@UAEXAAVgzEventObjectC4Detonation@@@Z PROC ; EventHandler::Object_C4Detonate, COMDAT
; _this$ = ecx

; 88   : 	virtual void Object_C4Detonate(gzEventObjectC4Detonation &) { };

	ret	4
?Object_C4Detonate@EventHandler@@UAEXAAVgzEventObjectC4Detonation@@@Z ENDP ; EventHandler::Object_C4Detonate
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Object_PowerupGrant@EventHandler@@UAEXAAVgzEventObjectPowerupGrant@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Object_PowerupGrant@EventHandler@@UAEXAAVgzEventObjectPowerupGrant@@@Z PROC ; EventHandler::Object_PowerupGrant, COMDAT
; _this$ = ecx

; 89   : 	virtual void Object_PowerupGrant(gzEventObjectPowerupGrant &) { };

	ret	4
?Object_PowerupGrant@EventHandler@@UAEXAAVgzEventObjectPowerupGrant@@@Z ENDP ; EventHandler::Object_PowerupGrant
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Object_Fire@EventHandler@@UAEXAAVgzEventObjectFire@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Object_Fire@EventHandler@@UAEXAAVgzEventObjectFire@@@Z PROC ; EventHandler::Object_Fire, COMDAT
; _this$ = ecx

; 90   : 	virtual void Object_Fire(gzEventObjectFire &) { };

	ret	4
?Object_Fire@EventHandler@@UAEXAAVgzEventObjectFire@@@Z ENDP ; EventHandler::Object_Fire
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Object_FlipKill@EventHandler@@UAEXAAVgzEventObjectFlipKill@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Object_FlipKill@EventHandler@@UAEXAAVgzEventObjectFlipKill@@@Z PROC ; EventHandler::Object_FlipKill, COMDAT
; _this$ = ecx

; 91   : 	virtual void Object_FlipKill(gzEventObjectFlipKill &) { };

	ret	4
?Object_FlipKill@EventHandler@@UAEXAAVgzEventObjectFlipKill@@@Z ENDP ; EventHandler::Object_FlipKill
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Net_WolPage@EventHandler@@UAEXAAVgzEventNetWolPage@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Net_WolPage@EventHandler@@UAEXAAVgzEventNetWolPage@@@Z PROC ; EventHandler::Net_WolPage, COMDAT
; _this$ = ecx

; 94   : 	virtual void Net_WolPage(gzEventNetWolPage &) { };

	ret	4
?Net_WolPage@EventHandler@@UAEXAAVgzEventNetWolPage@@@Z ENDP ; EventHandler::Net_WolPage
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Net_SerialAuth@EventHandler@@UAEXAAVgzEventNetSerialAuth@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Net_SerialAuth@EventHandler@@UAEXAAVgzEventNetSerialAuth@@@Z PROC ; EventHandler::Net_SerialAuth, COMDAT
; _this$ = ecx

; 95   : 	virtual void Net_SerialAuth(gzEventNetSerialAuth &) { };

	ret	4
?Net_SerialAuth@EventHandler@@UAEXAAVgzEventNetSerialAuth@@@Z ENDP ; EventHandler::Net_SerialAuth
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Bhs_Poke@EventHandler@@UAEXAAVgzEventBhsPoke@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Bhs_Poke@EventHandler@@UAEXAAVgzEventBhsPoke@@@Z PROC	; EventHandler::Bhs_Poke, COMDAT
; _this$ = ecx

; 98   : 	virtual void Bhs_Poke(gzEventBhsPoke &) { };

	ret	4
?Bhs_Poke@EventHandler@@UAEXAAVgzEventBhsPoke@@@Z ENDP	; EventHandler::Bhs_Poke
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Bhs_Version@EventHandler@@UAEXAAVgzEventBhsVersion@@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
?Bhs_Version@EventHandler@@UAEXAAVgzEventBhsVersion@@@Z PROC ; EventHandler::Bhs_Version, COMDAT
; _this$ = ecx

; 99   : 	virtual void Bhs_Version(gzEventBhsVersion &) { };

	ret	4
?Bhs_Version@EventHandler@@UAEXAAVgzEventBhsVersion@@@Z ENDP ; EventHandler::Bhs_Version
_TEXT	ENDS
PUBLIC	??_C@_0P@GDFFNBJJ@gzManagerClass?$AA@		; `string'
;	COMDAT ??_C@_0P@GDFFNBJJ@gzManagerClass?$AA@
; File d:\source code\stgm\stmanager.h
CONST	SEGMENT
??_C@_0P@GDFFNBJJ@gzManagerClass?$AA@ DB 'gzManagerClass', 00H ; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?GetName@gzManagerClass@@UAEPBDXZ
_TEXT	SEGMENT
?GetName@gzManagerClass@@UAEPBDXZ PROC			; gzManagerClass::GetName, COMDAT
; _this$ = ecx

; 45   : 		return "gzManagerClass";

	mov	eax, OFFSET ??_C@_0P@GDFFNBJJ@gzManagerClass?$AA@

; 46   : 	};

	ret	0
?GetName@gzManagerClass@@UAEPBDXZ ENDP			; gzManagerClass::GetName
_TEXT	ENDS
PUBLIC	??1gzManagerClass@@UAE@XZ			; gzManagerClass::~gzManagerClass
; Function compile flags: /Ogtpy
;	COMDAT ??1gzManagerClass@@UAE@XZ
_TEXT	SEGMENT
??1gzManagerClass@@UAE@XZ PROC				; gzManagerClass::~gzManagerClass, COMDAT
; _this$ = ecx
	jmp	??1EventHandler@@UAE@XZ			; EventHandler::~EventHandler
??1gzManagerClass@@UAE@XZ ENDP				; gzManagerClass::~gzManagerClass
_TEXT	ENDS
EXTRN	?Think@gzBaseManager@@SAXXZ:PROC		; gzBaseManager::Think
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stmanager.cpp
;	COMDAT ?Think@gzManagerClass@@UAEXXZ
_TEXT	SEGMENT
?Think@gzManagerClass@@UAEXXZ PROC			; gzManagerClass::Think, COMDAT
; _this$ = ecx

; 228  : 	gzBaseManager::Think();

	jmp	?Think@gzBaseManager@@SAXXZ		; gzBaseManager::Think
?Think@gzManagerClass@@UAEXXZ ENDP			; gzManagerClass::Think
_TEXT	ENDS
PUBLIC	?In@stConsole@@SAXPBDZZ				; stConsole::In
EXTRN	__vsnprintf:PROC
; Function compile flags: /Ogtpy
;	COMDAT ?In@stConsole@@SAXPBDZZ
_TEXT	SEGMENT
_buf$ = -256						; size = 256
_format$ = 8						; size = 4
?In@stConsole@@SAXPBDZZ PROC				; stConsole::In, COMDAT

; 262  : {

	push	ebp
	mov	ebp, esp

; 263  : 	va_list args;
; 264  : 	va_start(args, format);
; 265  : 	char buf[256];
; 266  : 	_vsnprintf(buf, 255, format, args);

	mov	ecx, DWORD PTR _format$[ebp]
	sub	esp, 256				; 00000100H
	lea	eax, DWORD PTR _format$[ebp+4]
	push	eax
	push	ecx
	lea	edx, DWORD PTR _buf$[ebp]
	push	255					; 000000ffH
	push	edx
	call	__vsnprintf
	add	esp, 16					; 00000010H

; 267  : 	_asm {
; 268  : 		mov eax, 0x428960

	mov	eax, 4360544				; 00428960H

; 269  : 		lea edx, buf

	lea	edx, DWORD PTR _buf$[ebp]

; 270  : 		push edx

	push	edx

; 271  : 		call eax

	call	eax

; 272  : 	}
; 273  : 	va_end(args);
; 274  : }

	mov	esp, ebp
	pop	ebp
	ret	0
?In@stConsole@@SAXPBDZZ ENDP				; stConsole::In
_TEXT	ENDS
PUBLIC	??_C@_02DKCKIIND@?$CFs?$AA@			; `string'
PUBLIC	??_C@_0BC@MALIEGMD@?$FL?$CF02d?3?$CF02d?3?$CF02d?$FN?5?$AA@ ; `string'
PUBLIC	??_C@_01MCMALHOG@a?$AA@				; `string'
PUBLIC	??_C@_0BG@MMMBFLGC@renlog_?$CFd?9?$CFd?9?$CF04d?4txt?$AA@ ; `string'
PUBLIC	?Out@stConsole@@SAXPBDZZ			; stConsole::Out
EXTRN	??1aFile@@UAE@XZ:PROC				; aFile::~aFile
EXTRN	_printf:PROC
EXTRN	?Resize@nc_StringClass@@QAEXH@Z:PROC		; nc_StringClass::Resize
EXTRN	?Get_Length@nc_StringClass@@QAEHXZ:PROC		; nc_StringClass::Get_Length
EXTRN	?GetLength@aStringBase@@QBEIXZ:PROC		; aStringBase::GetLength
EXTRN	?Write@aFile@@QAEIABVaString@@I@Z:PROC		; aFile::Write
EXTRN	?GetHour@aDateTime@@QAEIXZ:PROC			; aDateTime::GetHour
EXTRN	?GetMinute@aDateTime@@QAEIXZ:PROC		; aDateTime::GetMinute
EXTRN	?GetSecond@aDateTime@@QAEIXZ:PROC		; aDateTime::GetSecond
EXTRN	?IsOpened@aFile@@UAE_NXZ:PROC			; aFile::IsOpened
EXTRN	??0aFile@@QAE@ABVaString@@PBD@Z:PROC		; aFile::aFile
EXTRN	?Format@aString@@SA?AV1@PBDZZ:PROC		; aString::Format
EXTRN	?GetMonth@aDateTime@@QAEIXZ:PROC		; aDateTime::GetMonth
EXTRN	?GetDay@aDateTime@@QAEIXZ:PROC			; aDateTime::GetDay
EXTRN	?GetYear@aDateTime@@QAEIXZ:PROC			; aDateTime::GetYear
EXTRN	?Format_Args@aString@@QAEXPBDPAD@Z:PROC		; aString::Format_Args
EXTRN	?Now@aDateTime@@SA?AV1@XZ:PROC			; aDateTime::Now
EXTRN	??0aString@@QAE@PBD@Z:PROC			; aString::aString
;	COMDAT ??_C@_02DKCKIIND@?$CFs?$AA@
; File d:\source code\alib\include\astring.h
CONST	SEGMENT
??_C@_02DKCKIIND@?$CFs?$AA@ DB '%s', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_0BC@MALIEGMD@?$FL?$CF02d?3?$CF02d?3?$CF02d?$FN?5?$AA@
CONST	SEGMENT
??_C@_0BC@MALIEGMD@?$FL?$CF02d?3?$CF02d?3?$CF02d?$FN?5?$AA@ DB '[%02d:%02'
	DB	'd:%02d] ', 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_01MCMALHOG@a?$AA@
CONST	SEGMENT
??_C@_01MCMALHOG@a?$AA@ DB 'a', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_0BG@MMMBFLGC@renlog_?$CFd?9?$CFd?9?$CF04d?4txt?$AA@
CONST	SEGMENT
??_C@_0BG@MMMBFLGC@renlog_?$CFd?9?$CFd?9?$CF04d?4txt?$AA@ DB 'renlog_%d-%'
	DB	'd-%04d.txt', 00H				; `string'
CONST	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__ehfuncinfo$?Out@stConsole@@SAXPBDZZ DD 019930522H
	DD	06H
	DD	FLAT:__unwindtable$?Out@stConsole@@SAXPBDZZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
__unwindtable$?Out@stConsole@@SAXPBDZZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Out@stConsole@@SAXPBDZZ$0
	DD	00H
	DD	FLAT:__unwindfunclet$?Out@stConsole@@SAXPBDZZ$1
	DD	01H
	DD	FLAT:__unwindfunclet$?Out@stConsole@@SAXPBDZZ$2
	DD	00H
	DD	FLAT:__unwindfunclet$?Out@stConsole@@SAXPBDZZ$2
	DD	03H
	DD	FLAT:__unwindfunclet$?Out@stConsole@@SAXPBDZZ$3
	DD	04H
	DD	FLAT:__unwindfunclet$?Out@stConsole@@SAXPBDZZ$4
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stmanager.cpp
xdata$x	ENDS
;	COMDAT ?Out@stConsole@@SAXPBDZZ
_TEXT	SEGMENT
_msg$ = -88						; size = 8
$T70382 = -80						; size = 8
$T70384 = -72						; size = 8
$T70383 = -64						; size = 8
_renlog$ = -56						; size = 20
_now$ = -36						; size = 24
__$EHRec$ = -12						; size = 12
_format$ = 8						; size = 4
?Out@stConsole@@SAXPBDZZ PROC				; stConsole::Out, COMDAT

; 276  : {

	mov	eax, DWORD PTR fs:0
	push	-1
	push	__ehhandler$?Out@stConsole@@SAXPBDZZ
	push	eax
	mov	DWORD PTR fs:0, esp

; 277  : 	if (!format || !*format)

	mov	eax, DWORD PTR _format$[esp+8]
	sub	esp, 76					; 0000004cH
	test	eax, eax
	je	$LN2@Out
	cmp	BYTE PTR [eax], 0
	je	$LN2@Out

; 278  : 		return;
; 279  : 
; 280  : 	aString msg = format;

	push	eax
	lea	ecx, DWORD PTR _msg$[esp+92]
	call	??0aString@@QAE@PBD@Z			; aString::aString

; 281  : 	aDateTime now = aDateTime::Now();

	lea	eax, DWORD PTR _now$[esp+88]
	push	eax
	mov	DWORD PTR __$EHRec$[esp+100], 0
	call	?Now@aDateTime@@SA?AV1@XZ		; aDateTime::Now

; 282  : 	va_list args;
; 283  : 	va_start(args, format);
; 284  : 	msg.Format_Args(format, args);

	mov	edx, DWORD PTR _format$[esp+88]
	add	esp, 4
	lea	ecx, DWORD PTR _format$[esp+88]
	push	ecx
	push	edx
	lea	ecx, DWORD PTR _msg$[esp+96]
	call	?Format_Args@aString@@QAEXPBDPAD@Z	; aString::Format_Args

; 285  : 	aFile renlog(aString::Format("renlog_%d-%d-%04d.txt", now.GetMonth(), now.GetDay(), now.GetYear()), "a");

	lea	ecx, DWORD PTR _now$[esp+88]
	call	?GetYear@aDateTime@@QAEIXZ		; aDateTime::GetYear
	push	eax
	lea	ecx, DWORD PTR _now$[esp+92]
	call	?GetDay@aDateTime@@QAEIXZ		; aDateTime::GetDay
	push	eax
	lea	ecx, DWORD PTR _now$[esp+96]
	call	?GetMonth@aDateTime@@QAEIXZ		; aDateTime::GetMonth
	push	eax
	lea	eax, DWORD PTR $T70382[esp+100]
	push	OFFSET ??_C@_0BG@MMMBFLGC@renlog_?$CFd?9?$CFd?9?$CF04d?4txt?$AA@
	push	eax
	call	?Format@aString@@SA?AV1@PBDZZ		; aString::Format
	add	esp, 20					; 00000014H
	push	OFFSET ??_C@_01MCMALHOG@a?$AA@
	push	eax
	lea	ecx, DWORD PTR _renlog$[esp+96]
	mov	BYTE PTR __$EHRec$[esp+104], 1
	call	??0aFile@@QAE@ABVaString@@PBD@Z		; aFile::aFile
	lea	ecx, DWORD PTR $T70382[esp+88]
	mov	BYTE PTR __$EHRec$[esp+96], 3
	call	??1aStringBase@@UAE@XZ			; aStringBase::~aStringBase

; 286  : 	if (renlog.IsOpened())

	lea	ecx, DWORD PTR _renlog$[esp+88]
	call	?IsOpened@aFile@@UAE_NXZ		; aFile::IsOpened
	test	al, al
	je	SHORT $LN1@Out

; 287  : 		renlog.Write(aString::Format("[%02d:%02d:%02d] ", now.GetHour(), now.GetMinute(), now.GetSecond()) + msg);

	lea	ecx, DWORD PTR _now$[esp+88]
	call	?GetSecond@aDateTime@@QAEIXZ		; aDateTime::GetSecond
	push	eax
	lea	ecx, DWORD PTR _now$[esp+92]
	call	?GetMinute@aDateTime@@QAEIXZ		; aDateTime::GetMinute
	push	eax
	lea	ecx, DWORD PTR _now$[esp+96]
	call	?GetHour@aDateTime@@QAEIXZ		; aDateTime::GetHour
	push	eax
	lea	ecx, DWORD PTR $T70383[esp+100]
	push	OFFSET ??_C@_0BC@MALIEGMD@?$FL?$CF02d?3?$CF02d?3?$CF02d?$FN?5?$AA@
	push	ecx
	call	?Format@aString@@SA?AV1@PBDZZ		; aString::Format
	lea	edx, DWORD PTR _msg$[esp+108]
	push	edx
	push	eax
	lea	eax, DWORD PTR $T70384[esp+116]
	push	eax
	mov	BYTE PTR __$EHRec$[esp+128], 4
	call	??H@YA?AVaString@@ABV0@0@Z		; operator+
	add	esp, 32					; 00000020H
	push	0
	push	eax
	lea	ecx, DWORD PTR _renlog$[esp+96]
	mov	BYTE PTR __$EHRec$[esp+104], 5
	call	?Write@aFile@@QAEIABVaString@@I@Z	; aFile::Write
	lea	ecx, DWORD PTR $T70384[esp+88]
	mov	BYTE PTR __$EHRec$[esp+96], 4
	call	??1aStringBase@@UAE@XZ			; aStringBase::~aStringBase
	lea	ecx, DWORD PTR $T70383[esp+88]
	mov	BYTE PTR __$EHRec$[esp+96], 3
	call	??1aStringBase@@UAE@XZ			; aStringBase::~aStringBase
$LN1@Out:
	push	esi
	push	edi

; 288  : 
; 289  : 	// RenRem output
; 290  : 	nc_StringClass &renrem = *(nc_StringClass *)0x81E540;
; 291  : 	renrem.Resize(renrem.Get_Length() + msg.GetLength() + 1);

	lea	ecx, DWORD PTR _msg$[esp+96]
	mov	edi, 8512832				; 0081e540H
	call	?GetLength@aStringBase@@QBEIXZ		; aStringBase::GetLength
	mov	ecx, edi
	mov	esi, eax
	call	?Get_Length@nc_StringClass@@QAEHXZ	; nc_StringClass::Get_Length
	lea	ecx, DWORD PTR [esi+eax+1]
	push	ecx
	mov	ecx, edi
	call	?Resize@nc_StringClass@@QAEXH@Z		; nc_StringClass::Resize

; 292  : 	strcat(renrem.m_Buffer, msg.GetString());

	mov	eax, DWORD PTR _msg$[esp+100]
	test	eax, eax
	je	SHORT $LN22@Out
	mov	eax, DWORD PTR [eax]
	jmp	SHORT $LN23@Out
$LN22@Out:
	xor	eax, eax
$LN23@Out:
	mov	ecx, eax
$LL35@Out:
	mov	dl, BYTE PTR [eax]
	add	eax, 1
	test	dl, dl
	jne	SHORT $LL35@Out
	mov	edi, DWORD PTR [edi]
	sub	eax, ecx
	mov	esi, ecx
	add	edi, -1
$LL36@Out:
	mov	cl, BYTE PTR [edi+1]
	add	edi, 1
	test	cl, cl
	jne	SHORT $LL36@Out
	mov	ecx, eax
	shr	ecx, 2
	rep movsd
	mov	ecx, eax
	and	ecx, 3
	rep movsb

; 293  : 
; 294  : 	printf("%s", msg.GetString());

	mov	eax, DWORD PTR _msg$[esp+100]
	test	eax, eax
	pop	edi
	pop	esi
	je	SHORT $LN28@Out
	mov	eax, DWORD PTR [eax]
	jmp	SHORT $LN29@Out
$LN28@Out:
	xor	eax, eax
$LN29@Out:
	push	eax
	push	OFFSET ??_C@_02DKCKIIND@?$CFs?$AA@
	call	_printf
	add	esp, 8

; 295  : }

	lea	ecx, DWORD PTR _renlog$[esp+88]
	mov	BYTE PTR __$EHRec$[esp+96], 0
	call	??1aFile@@UAE@XZ			; aFile::~aFile
	lea	ecx, DWORD PTR _msg$[esp+88]
	mov	DWORD PTR __$EHRec$[esp+96], -1
	call	??1aStringBase@@UAE@XZ			; aStringBase::~aStringBase
$LN2@Out:
	mov	ecx, DWORD PTR __$EHRec$[esp+88]
	mov	DWORD PTR fs:0, ecx
	add	esp, 88					; 00000058H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Out@stConsole@@SAXPBDZZ$0:
	lea	ecx, DWORD PTR _msg$[ebp]
	jmp	??1aString@@UAE@XZ
__unwindfunclet$?Out@stConsole@@SAXPBDZZ$1:
	lea	ecx, DWORD PTR $T70382[ebp]
	jmp	??1aString@@UAE@XZ
__unwindfunclet$?Out@stConsole@@SAXPBDZZ$2:
	lea	ecx, DWORD PTR _renlog$[ebp]
	jmp	??1aFile@@UAE@XZ			; aFile::~aFile
__unwindfunclet$?Out@stConsole@@SAXPBDZZ$3:
	lea	ecx, DWORD PTR $T70383[ebp]
	jmp	??1aString@@UAE@XZ
__unwindfunclet$?Out@stConsole@@SAXPBDZZ$4:
	lea	ecx, DWORD PTR $T70384[ebp]
	jmp	??1aString@@UAE@XZ
__ehhandler$?Out@stConsole@@SAXPBDZZ:
	mov	eax, OFFSET __ehfuncinfo$?Out@stConsole@@SAXPBDZZ
	jmp	___CxxFrameHandler3
text$x	ENDS
?Out@stConsole@@SAXPBDZZ ENDP				; stConsole::Out
PUBLIC	??_C@_0CL@EGCFJJMD@crashdump?2dump_?$CFd?9?$CFd?9?$CFd_?$CF02d?$DL?$CF02@ ; `string'
PUBLIC	??_C@_09ICPFIEKL@crashdump?$AA@			; `string'
PUBLIC	?gzExceptionHandler@@YGJPAU_EXCEPTION_POINTERS@@@Z ; gzExceptionHandler
EXTRN	__imp__CloseHandle@4:PROC
EXTRN	_MiniDumpWriteDump@28:PROC
EXTRN	__imp__GetCurrentProcess@0:PROC
EXTRN	__imp__GetCurrentProcessId@0:PROC
EXTRN	__imp__GetCurrentThreadId@0:PROC
EXTRN	__imp__CreateFileA@28:PROC
EXTRN	__mkdir:PROC
;	COMDAT ??_C@_0CL@EGCFJJMD@crashdump?2dump_?$CFd?9?$CFd?9?$CFd_?$CF02d?$DL?$CF02@
; File d:\source code\alib\include\astring.h
CONST	SEGMENT
??_C@_0CL@EGCFJJMD@crashdump?2dump_?$CFd?9?$CFd?9?$CFd_?$CF02d?$DL?$CF02@ DB 'c'
	DB	'rashdump\dump_%d-%d-%d_%02d;%02d;%02d.dmp', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_09ICPFIEKL@crashdump?$AA@
CONST	SEGMENT
??_C@_09ICPFIEKL@crashdump?$AA@ DB 'crashdump', 00H	; `string'
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stmanager.cpp
CONST	ENDS
;	COMDAT ?gzExceptionHandler@@YGJPAU_EXCEPTION_POINTERS@@@Z
_TEXT	SEGMENT
$T70445 = -44						; size = 8
_expParam$ = -36					; size = 12
_now$ = -24						; size = 24
_lpExceptionInfo$ = 8					; size = 4
?gzExceptionHandler@@YGJPAU_EXCEPTION_POINTERS@@@Z PROC	; gzExceptionHandler, COMDAT

; 303  : {

	sub	esp, 44					; 0000002cH

; 304  : 	// Create dir
; 305  : 	_mkdir("crashdump");

	push	OFFSET ??_C@_09ICPFIEKL@crashdump?$AA@
	call	__mkdir

; 306  : 
; 307  : 	aDateTime now = aDateTime::Now();

	lea	eax, DWORD PTR _now$[esp+48]
	push	eax
	call	?Now@aDateTime@@SA?AV1@XZ		; aDateTime::Now
	add	esp, 8

; 308  : 
; 309  : 	// Create file
; 310  : 	HANDLE dumpFile = CreateFile(
; 311  : 		aString::Format("crashdump\\dump_%d-%d-%d_%02d;%02d;%02d.dmp", now.GetDay(), now.GetMonth(), now.GetYear(), now.GetHour(), now.GetMinute(), now.GetSecond()).GetString(),
; 312  : 		GENERIC_READ | GENERIC_WRITE, FILE_SHARE_WRITE | FILE_SHARE_READ,
; 313  : 		0,
; 314  : 		CREATE_ALWAYS,
; 315  : 		0,
; 316  : 		0
; 317  : 	);

	lea	ecx, DWORD PTR _now$[esp+44]
	call	?GetSecond@aDateTime@@QAEIXZ		; aDateTime::GetSecond
	push	eax
	lea	ecx, DWORD PTR _now$[esp+48]
	call	?GetMinute@aDateTime@@QAEIXZ		; aDateTime::GetMinute
	push	eax
	lea	ecx, DWORD PTR _now$[esp+52]
	call	?GetHour@aDateTime@@QAEIXZ		; aDateTime::GetHour
	push	eax
	lea	ecx, DWORD PTR _now$[esp+56]
	call	?GetYear@aDateTime@@QAEIXZ		; aDateTime::GetYear
	push	eax
	lea	ecx, DWORD PTR _now$[esp+60]
	call	?GetMonth@aDateTime@@QAEIXZ		; aDateTime::GetMonth
	push	eax
	lea	ecx, DWORD PTR _now$[esp+64]
	call	?GetDay@aDateTime@@QAEIXZ		; aDateTime::GetDay
	push	eax
	lea	ecx, DWORD PTR $T70445[esp+68]
	push	OFFSET ??_C@_0CL@EGCFJJMD@crashdump?2dump_?$CFd?9?$CFd?9?$CFd_?$CF02d?$DL?$CF02@
	push	ecx
	call	?Format@aString@@SA?AV1@PBDZZ		; aString::Format
	mov	eax, DWORD PTR [eax+4]
	add	esp, 32					; 00000020H
	test	eax, eax
	je	SHORT $LN6@gzExceptio
	mov	eax, DWORD PTR [eax]
	jmp	SHORT $LN7@gzExceptio
$LN6@gzExceptio:
	xor	eax, eax
$LN7@gzExceptio:
	push	esi
	push	0
	push	0
	push	2
	push	0
	push	3
	push	-1073741824				; c0000000H
	push	eax
	call	DWORD PTR __imp__CreateFileA@28
	lea	ecx, DWORD PTR $T70445[esp+48]
	mov	esi, eax
	call	??1aStringBase@@UAE@XZ			; aStringBase::~aStringBase

; 318  : 
; 319  : 	// Initial needed parameters
; 320  : 	MINIDUMP_EXCEPTION_INFORMATION expParam;
; 321  : 	expParam.ThreadId = GetCurrentThreadId();

	call	DWORD PTR __imp__GetCurrentThreadId@0

; 322  : 	expParam.ExceptionPointers = lpExceptionInfo;

	mov	edx, DWORD PTR _lpExceptionInfo$[esp+44]

; 323  : 	expParam.ClientPointers = true;
; 324  : 
; 325  : 	// Set dump options
; 326  : 	MINIDUMP_TYPE dumpOption = (MINIDUMP_TYPE)(MiniDumpWithDataSegs | MiniDumpWithIndirectlyReferencedMemory);
; 327  : 	//MINIDUMP_TYPE dumpOption = (MINIDUMP_TYPE)2050;
; 328  : 
; 329  : 	// Write to file
; 330  : 	MiniDumpWriteDump(GetCurrentProcess(), GetCurrentProcessId(), dumpFile, dumpOption, &expParam, NULL, NULL);

	push	0
	push	0
	mov	DWORD PTR _expParam$[esp+56], eax
	lea	eax, DWORD PTR _expParam$[esp+56]
	push	eax
	push	65					; 00000041H
	push	esi
	mov	DWORD PTR _expParam$[esp+72], edx
	mov	DWORD PTR _expParam$[esp+76], 1
	call	DWORD PTR __imp__GetCurrentProcessId@0
	push	eax
	call	DWORD PTR __imp__GetCurrentProcess@0
	push	eax
	call	_MiniDumpWriteDump@28

; 331  : 
; 332  : 	// Delete stuff
; 333  : 	CloseHandle(dumpFile);

	push	esi
	call	DWORD PTR __imp__CloseHandle@4

; 334  : 
; 335  : 	return EXCEPTION_EXECUTE_HANDLER;

	mov	eax, 1
	pop	esi

; 336  : }

	add	esp, 44					; 0000002cH
	ret	4
?gzExceptionHandler@@YGJPAU_EXCEPTION_POINTERS@@@Z ENDP	; gzExceptionHandler
_TEXT	ENDS
PUBLIC	__TI2?AVbad_alloc@std@@
PUBLIC	??_C@_0ED@MOJMIMJH@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsoft@ ; `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 (x86)\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@_0ED@MOJMIMJH@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsoft@
CONST	SEGMENT
??_C@_0ED@MOJMIMJH@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsoft@ DB 'C:\Pr'
	DB	'ogram Files (x86)\Microsoft Visual Studio 8\VC\include\xdebug'
	DB	00H						; `string'
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 8\vc\include\xdebug
CONST	ENDS
;	COMDAT ?allocate@?$_DebugHeapAllocator@D@std@@QAAPADIPBX@Z
_TEXT	SEGMENT
$T70469 = -12						; size = 12
_this$ = 8						; size = 4
$T70475 = 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@_0ED@MOJMIMJH@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsoft@
	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 $T70475[esp+12]
	push	eax
	lea	ecx, DWORD PTR $T70469[esp+20]
	mov	DWORD PTR $T70475[esp+16], 0
	call	??0exception@std@@QAE@ABQBD@Z		; std::exception::exception
	push	OFFSET __TI2?AVbad_alloc@std@@
	lea	ecx, DWORD PTR $T70469[esp+20]
	push	ecx
	mov	DWORD PTR $T70469[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
$T70481 = -12						; size = 12
$T70486 = 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@_0ED@MOJMIMJH@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsoft@
	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 $T70486[esp+12]
	push	eax
	lea	ecx, DWORD PTR $T70481[esp+20]
	mov	DWORD PTR $T70486[esp+16], 0
	call	??0exception@std@@QAE@ABQBD@Z		; std::exception::exception
	push	OFFSET __TI2?AVbad_alloc@std@@
	lea	ecx, DWORD PTR $T70481[esp+20]
	push	ecx
	mov	DWORD PTR $T70481[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	??A?$aVector@PAVgzBase@@@@QAEAAPAVgzBase@@I@Z	; aVector<gzBase *>::operator[]
; Function compile flags: /Ogtpy
; File d:\source code\alib\include\avector.h
;	COMDAT ??A?$aVector@PAVgzBase@@@@QAEAAPAVgzBase@@I@Z
_TEXT	SEGMENT
_nPos$ = 8						; size = 4
??A?$aVector@PAVgzBase@@@@QAEAAPAVgzBase@@I@Z PROC	; aVector<gzBase *>::operator[], COMDAT
; _this$ = ecx

; 64   : 	T& operator[](unsigned int nPos) { return this->m_vector[nPos]; };

	mov	eax, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR _nPos$[esp-4]
	lea	eax, DWORD PTR [eax+ecx*4]
	ret	4
??A?$aVector@PAVgzBase@@@@QAEAAPAVgzBase@@I@Z ENDP	; aVector<gzBase *>::operator[]
_TEXT	ENDS
PUBLIC	?Count@?$aVector@PAVgzBase@@@@QBEIXZ		; aVector<gzBase *>::Count
; Function compile flags: /Ogtpy
;	COMDAT ?Count@?$aVector@PAVgzBase@@@@QBEIXZ
_TEXT	SEGMENT
?Count@?$aVector@PAVgzBase@@@@QBEIXZ PROC		; aVector<gzBase *>::Count, COMDAT
; _this$ = ecx

; 65   : 	inline unsigned int Count() const { return this->m_items; };

	mov	eax, DWORD PTR [ecx+12]
	ret	0
?Count@?$aVector@PAVgzBase@@@@QBEIXZ ENDP		; aVector<gzBase *>::Count
_TEXT	ENDS
PUBLIC	??_C@_0CG@EILDPJHO@D?3?2Source?5Code?2aLib?2include?2aVec@ ; `string'
PUBLIC	??_C@_00CNPNBAHC@?$AA@				; `string'
PUBLIC	?Clear@?$aVector@PAVHookBase@@@@UAEXXZ		; aVector<HookBase *>::Clear
EXTRN	??_V@YAXPAX@Z:PROC				; operator delete[]
EXTRN	?m_setOwner@@YAXPBDI0@Z:PROC			; m_setOwner
;	COMDAT ??_C@_0CG@EILDPJHO@D?3?2Source?5Code?2aLib?2include?2aVec@
CONST	SEGMENT
??_C@_0CG@EILDPJHO@D?3?2Source?5Code?2aLib?2include?2aVec@ DB 'D:\Source '
	DB	'Code\aLib\include\aVector.h', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_00CNPNBAHC@?$AA@
CONST	SEGMENT
??_C@_00CNPNBAHC@?$AA@ DB 00H				; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?Clear@?$aVector@PAVHookBase@@@@UAEXXZ
_TEXT	SEGMENT
?Clear@?$aVector@PAVHookBase@@@@UAEXXZ PROC		; aVector<HookBase *>::Clear, COMDAT
; _this$ = ecx

; 67   : 	{

	push	esi
	push	edi
	mov	esi, ecx

; 68   : 		if (this->m_vector != NULL)

	xor	edi, edi
	cmp	DWORD PTR [esi+4], edi
	je	SHORT $LN6@Clear

; 69   : 		{
; 70   : //#if (VECTOR_USE_CRT == 1)
; 71   : //			free(this->m_vector);
; 72   : //#else
; 73   : 			delete[] this->m_vector;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	73					; 00000049H
	push	OFFSET ??_C@_0CG@EILDPJHO@D?3?2Source?5Code?2aLib?2include?2aVec@
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	mov	eax, DWORD PTR [esi+4]
	push	eax
	call	??_V@YAXPAX@Z				; operator delete[]
	add	esp, 16					; 00000010H

; 74   : //#endif
; 75   : 			this->m_vector = NULL;

	mov	DWORD PTR [esi+4], edi
$LN6@Clear:

; 76   : 		}
; 77   : 		this->m_alloc = 0;
; 78   : 		this->m_items = 0;

	mov	DWORD PTR [esi+12], edi
	mov	DWORD PTR [esi+8], edi
	pop	edi
	pop	esi

; 79   : 	};

	ret	0
?Clear@?$aVector@PAVHookBase@@@@UAEXXZ ENDP		; aVector<HookBase *>::Clear
_TEXT	ENDS
PUBLIC	??_7?$aVector@PAVgzWeaponDropClass@@@@6B@	; aVector<gzWeaponDropClass *>::`vftable'
PUBLIC	??0?$aVector@PAVgzWeaponDropClass@@@@QAE@XZ	; aVector<gzWeaponDropClass *>::aVector<gzWeaponDropClass *>
PUBLIC	??_R4?$aVector@PAVgzWeaponDropClass@@@@6B@	; aVector<gzWeaponDropClass *>::`RTTI Complete Object Locator'
PUBLIC	??_R0?AV?$aVector@PAVgzWeaponDropClass@@@@@8	; aVector<gzWeaponDropClass *> `RTTI Type Descriptor'
PUBLIC	??_R3?$aVector@PAVgzWeaponDropClass@@@@8	; aVector<gzWeaponDropClass *>::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2?$aVector@PAVgzWeaponDropClass@@@@8	; aVector<gzWeaponDropClass *>::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@?$aVector@PAVgzWeaponDropClass@@@@8 ; aVector<gzWeaponDropClass *>::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	?Clear@?$aVector@PAVgzWeaponDropClass@@@@UAEXXZ	; aVector<gzWeaponDropClass *>::Clear
PUBLIC	?Resize@?$aVector@PAVgzWeaponDropClass@@@@UAE_NI@Z ; aVector<gzWeaponDropClass *>::Resize
PUBLIC	?Add@?$aVector@PAVgzWeaponDropClass@@@@UAEXABQAVgzWeaponDropClass@@@Z ; aVector<gzWeaponDropClass *>::Add
PUBLIC	?Insert@?$aVector@PAVgzWeaponDropClass@@@@UAEXIABQAVgzWeaponDropClass@@@Z ; aVector<gzWeaponDropClass *>::Insert
PUBLIC	?Delete@?$aVector@PAVgzWeaponDropClass@@@@UAEXI@Z ; aVector<gzWeaponDropClass *>::Delete
EXTRN	??_E?$aVector@PAVgzWeaponDropClass@@@@UAEPAXI@Z:PROC ; aVector<gzWeaponDropClass *>::`vector deleting destructor'
;	COMDAT ??_R1A@?0A@EA@?$aVector@PAVgzWeaponDropClass@@@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@?$aVector@PAVgzWeaponDropClass@@@@8 DD FLAT:??_R0?AV?$aVector@PAVgzWeaponDropClass@@@@@8 ; aVector<gzWeaponDropClass *>::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	00H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3?$aVector@PAVgzWeaponDropClass@@@@8
rdata$r	ENDS
;	COMDAT ??_R2?$aVector@PAVgzWeaponDropClass@@@@8
rdata$r	SEGMENT
??_R2?$aVector@PAVgzWeaponDropClass@@@@8 DD FLAT:??_R1A@?0A@EA@?$aVector@PAVgzWeaponDropClass@@@@8 ; aVector<gzWeaponDropClass *>::`RTTI Base Class Array'
rdata$r	ENDS
;	COMDAT ??_R3?$aVector@PAVgzWeaponDropClass@@@@8
rdata$r	SEGMENT
??_R3?$aVector@PAVgzWeaponDropClass@@@@8 DD 00H		; aVector<gzWeaponDropClass *>::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	01H
	DD	FLAT:??_R2?$aVector@PAVgzWeaponDropClass@@@@8
rdata$r	ENDS
;	COMDAT ??_R0?AV?$aVector@PAVgzWeaponDropClass@@@@@8
_DATA	SEGMENT
??_R0?AV?$aVector@PAVgzWeaponDropClass@@@@@8 DD FLAT:??_7type_info@@6B@ ; aVector<gzWeaponDropClass *> `RTTI Type Descriptor'
	DD	00H
	DB	'.?AV?$aVector@PAVgzWeaponDropClass@@@@', 00H
_DATA	ENDS
;	COMDAT ??_R4?$aVector@PAVgzWeaponDropClass@@@@6B@
rdata$r	SEGMENT
??_R4?$aVector@PAVgzWeaponDropClass@@@@6B@ DD 00H	; aVector<gzWeaponDropClass *>::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AV?$aVector@PAVgzWeaponDropClass@@@@@8
	DD	FLAT:??_R3?$aVector@PAVgzWeaponDropClass@@@@8
rdata$r	ENDS
;	COMDAT ??_7?$aVector@PAVgzWeaponDropClass@@@@6B@
CONST	SEGMENT
??_7?$aVector@PAVgzWeaponDropClass@@@@6B@ DD FLAT:??_R4?$aVector@PAVgzWeaponDropClass@@@@6B@ ; aVector<gzWeaponDropClass *>::`vftable'
	DD	FLAT:??_E?$aVector@PAVgzWeaponDropClass@@@@UAEPAXI@Z
	DD	FLAT:?Clear@?$aVector@PAVgzWeaponDropClass@@@@UAEXXZ
	DD	FLAT:?Resize@?$aVector@PAVgzWeaponDropClass@@@@UAE_NI@Z
	DD	FLAT:?Add@?$aVector@PAVgzWeaponDropClass@@@@UAEXABQAVgzWeaponDropClass@@@Z
	DD	FLAT:?Insert@?$aVector@PAVgzWeaponDropClass@@@@UAEXIABQAVgzWeaponDropClass@@@Z
	DD	FLAT:?Delete@?$aVector@PAVgzWeaponDropClass@@@@UAEXI@Z
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ??0?$aVector@PAVgzWeaponDropClass@@@@QAE@XZ
_TEXT	SEGMENT
??0?$aVector@PAVgzWeaponDropClass@@@@QAE@XZ PROC	; aVector<gzWeaponDropClass *>::aVector<gzWeaponDropClass *>, COMDAT
; _this$ = ecx

; 27   : 	aVector()

	mov	eax, ecx

; 28   : 	{
; 29   : 		this->m_vector = NULL;

	xor	ecx, ecx
	mov	DWORD PTR [eax], OFFSET ??_7?$aVector@PAVgzWeaponDropClass@@@@6B@
	mov	DWORD PTR [eax+4], ecx

; 30   : 		this->m_alloc  = 0;

	mov	DWORD PTR [eax+8], ecx

; 31   : 		this->m_items  = 0;

	mov	DWORD PTR [eax+12], ecx

; 32   : 	};

	ret	0
??0?$aVector@PAVgzWeaponDropClass@@@@QAE@XZ ENDP	; aVector<gzWeaponDropClass *>::aVector<gzWeaponDropClass *>
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Clear@?$aVector@PAVgzWeaponDropClass@@@@UAEXXZ
_TEXT	SEGMENT
?Clear@?$aVector@PAVgzWeaponDropClass@@@@UAEXXZ PROC	; aVector<gzWeaponDropClass *>::Clear, COMDAT
; _this$ = ecx

; 67   : 	{

	push	esi
	push	edi
	mov	esi, ecx

; 68   : 		if (this->m_vector != NULL)

	xor	edi, edi
	cmp	DWORD PTR [esi+4], edi
	je	SHORT $LN6@Clear@2

; 69   : 		{
; 70   : //#if (VECTOR_USE_CRT == 1)
; 71   : //			free(this->m_vector);
; 72   : //#else
; 73   : 			delete[] this->m_vector;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	73					; 00000049H
	push	OFFSET ??_C@_0CG@EILDPJHO@D?3?2Source?5Code?2aLib?2include?2aVec@
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	mov	eax, DWORD PTR [esi+4]
	push	eax
	call	??_V@YAXPAX@Z				; operator delete[]
	add	esp, 16					; 00000010H

; 74   : //#endif
; 75   : 			this->m_vector = NULL;

	mov	DWORD PTR [esi+4], edi
$LN6@Clear@2:

; 76   : 		}
; 77   : 		this->m_alloc = 0;
; 78   : 		this->m_items = 0;

	mov	DWORD PTR [esi+12], edi
	mov	DWORD PTR [esi+8], edi
	pop	edi
	pop	esi

; 79   : 	};

	ret	0
?Clear@?$aVector@PAVgzWeaponDropClass@@@@UAEXXZ ENDP	; aVector<gzWeaponDropClass *>::Clear
_TEXT	ENDS
EXTRN	??_U@YAPAXI@Z:PROC				; operator new[]
EXTRN	_memcpy:PROC
; Function compile flags: /Ogtpy
;	COMDAT ?Resize@?$aVector@PAVgzWeaponDropClass@@@@UAE_NI@Z
_TEXT	SEGMENT
_nSize$ = 8						; size = 4
?Resize@?$aVector@PAVgzWeaponDropClass@@@@UAE_NI@Z PROC	; aVector<gzWeaponDropClass *>::Resize, COMDAT
; _this$ = ecx

; 81   : 	{

	push	esi
	push	edi

; 82   : 		if (this->m_alloc != nSize)

	mov	edi, DWORD PTR _nSize$[esp+4]
	mov	esi, ecx
	cmp	DWORD PTR [esi+8], edi
	je	SHORT $LN11@Resize

; 83   : 		{
; 84   : 			if (nSize > 0)

	test	edi, edi
	jbe	SHORT $LN3@Resize
	push	ebx

; 85   : 			{
; 86   : 
; 87   : //#if (VECTOR_USE_CRT == 1)
; 88   : //				this->m_vector = (T *)realloc(this->m_vector, nSize * sizeof(T));
; 89   : //#else
; 90   : 				T* newVec = new T[nSize];

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	90					; 0000005aH
	push	OFFSET ??_C@_0CG@EILDPJHO@D?3?2Source?5Code?2aLib?2include?2aVec@
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	xor	ecx, ecx
	mov	eax, edi
	mov	edx, 4
	mul	edx
	seto	cl
	neg	ecx
	or	ecx, eax
	push	ecx
	call	??_U@YAPAXI@Z				; operator new[]
	mov	ebx, eax

; 91   : 				if (this->m_vector != NULL)

	mov	eax, DWORD PTR [esi+4]
	add	esp, 16					; 00000010H
	test	eax, eax
	je	SHORT $LN10@Resize

; 92   : 				{
; 93   : 					memcpy(newVec, this->m_vector, nSize * sizeof(T));

	lea	ecx, DWORD PTR [edi*4]
	push	ecx
	push	eax
	push	ebx
	call	_memcpy

; 94   : 					delete[] this->m_vector;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	94					; 0000005eH
	push	OFFSET ??_C@_0CG@EILDPJHO@D?3?2Source?5Code?2aLib?2include?2aVec@
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	mov	edx, DWORD PTR [esi+4]
	push	edx
	call	??_V@YAXPAX@Z				; operator delete[]
	add	esp, 28					; 0000001cH
$LN10@Resize:

; 95   : 				}
; 96   : 				this->m_vector = newVec;

	mov	DWORD PTR [esi+4], ebx
	pop	ebx

; 97   : //#endif
; 98   : 
; 99   : 				this->m_alloc = nSize;

	mov	DWORD PTR [esi+8], edi
	pop	edi

; 103  : 		}
; 104  : 		return true;

	mov	al, 1
	pop	esi

; 105  : 	}

	ret	4
$LN3@Resize:

; 100  : 			}
; 101  : 			else
; 102  : 				this->Clear();

	mov	eax, DWORD PTR [esi]
	mov	edx, DWORD PTR [eax+4]
	call	edx
$LN11@Resize:
	pop	edi

; 103  : 		}
; 104  : 		return true;

	mov	al, 1
	pop	esi

; 105  : 	}

	ret	4
?Resize@?$aVector@PAVgzWeaponDropClass@@@@UAE_NI@Z ENDP	; aVector<gzWeaponDropClass *>::Resize
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Add@?$aVector@PAVgzWeaponDropClass@@@@UAEXABQAVgzWeaponDropClass@@@Z
_TEXT	SEGMENT
_obj$ = 8						; size = 4
?Add@?$aVector@PAVgzWeaponDropClass@@@@UAEXABQAVgzWeaponDropClass@@@Z PROC ; aVector<gzWeaponDropClass *>::Add, COMDAT
; _this$ = ecx

; 107  : 	{

	push	esi
	mov	esi, ecx

; 108  : 		if (this->Resize(this->m_items + 1))

	mov	ecx, DWORD PTR [esi+12]
	mov	eax, DWORD PTR [esi]
	mov	edx, DWORD PTR [eax+8]
	add	ecx, 1
	push	ecx
	mov	ecx, esi
	call	edx
	test	al, al
	je	SHORT $LN1@Add

; 109  : 			this->m_vector[this->m_items++] = obj;

	mov	edx, DWORD PTR _obj$[esp]
	mov	eax, DWORD PTR [esi+12]
	mov	edx, DWORD PTR [edx]
	mov	ecx, DWORD PTR [esi+4]
	mov	DWORD PTR [ecx+eax*4], edx
	add	DWORD PTR [esi+12], 1
$LN1@Add:
	pop	esi

; 110  : 	}

	ret	4
?Add@?$aVector@PAVgzWeaponDropClass@@@@UAEXABQAVgzWeaponDropClass@@@Z ENDP ; aVector<gzWeaponDropClass *>::Add
_TEXT	ENDS
EXTRN	_memmove:PROC
; Function compile flags: /Ogtpy
;	COMDAT ?Insert@?$aVector@PAVgzWeaponDropClass@@@@UAEXIABQAVgzWeaponDropClass@@@Z
_TEXT	SEGMENT
_index$ = 8						; size = 4
_obj$ = 12						; size = 4
?Insert@?$aVector@PAVgzWeaponDropClass@@@@UAEXIABQAVgzWeaponDropClass@@@Z PROC ; aVector<gzWeaponDropClass *>::Insert, COMDAT
; _this$ = ecx

; 112  : 	{

	push	esi
	mov	esi, ecx

; 113  : 		if (index > this->m_items)

	mov	eax, DWORD PTR [esi+12]
	push	edi
	mov	edi, DWORD PTR _index$[esp+4]
	cmp	edi, eax
	jbe	SHORT $LN3@Insert

; 114  : 			this->Add(obj);

	mov	ecx, DWORD PTR _obj$[esp+4]
	mov	eax, DWORD PTR [esi]
	mov	edx, DWORD PTR [eax+12]
	push	ecx
	mov	ecx, esi
	call	edx
	pop	edi
	pop	esi

; 119  : 		}
; 120  : 	}

	ret	8
$LN3@Insert:

; 115  : 		else if (this->Resize(this->m_items + 1))

	mov	edx, DWORD PTR [esi]
	add	eax, 1
	push	eax
	mov	eax, DWORD PTR [edx+8]
	call	eax
	test	al, al
	je	SHORT $LN1@Insert

; 116  : 		{
; 117  : 			memmove(&this->m_vector[index + 1], &this->m_vector[index], (this->m_items++ - index) * sizeof(T));

	mov	ecx, DWORD PTR [esi+12]
	mov	eax, ecx
	add	ecx, 1
	sub	eax, edi
	mov	DWORD PTR [esi+12], ecx
	mov	ecx, DWORD PTR [esi+4]
	add	eax, eax
	add	eax, eax
	lea	ecx, DWORD PTR [ecx+edi*4]
	push	eax
	push	ecx
	add	ecx, 4
	push	ecx
	call	_memmove

; 118  : 			this->m_vector[index] = obj;

	mov	eax, DWORD PTR _obj$[esp+16]
	mov	edx, DWORD PTR [esi+4]
	mov	ecx, DWORD PTR [eax]
	add	esp, 12					; 0000000cH
	mov	DWORD PTR [edx+edi*4], ecx
$LN1@Insert:
	pop	edi
	pop	esi

; 119  : 		}
; 120  : 	}

	ret	8
?Insert@?$aVector@PAVgzWeaponDropClass@@@@UAEXIABQAVgzWeaponDropClass@@@Z ENDP ; aVector<gzWeaponDropClass *>::Insert
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Delete@?$aVector@PAVgzWeaponDropClass@@@@UAEXI@Z
_TEXT	SEGMENT
_index$ = 8						; size = 4
?Delete@?$aVector@PAVgzWeaponDropClass@@@@UAEXI@Z PROC	; aVector<gzWeaponDropClass *>::Delete, COMDAT
; _this$ = ecx

; 123  : 		if (index >= this->m_items)

	mov	edx, DWORD PTR _index$[esp-4]
	push	esi
	mov	esi, ecx
	mov	eax, DWORD PTR [esi+12]
	cmp	edx, eax
	jae	SHORT $LN2@Delete

; 124  : 			return;
; 125  : 		if (--this->m_items == 0)

	add	eax, -1
	mov	DWORD PTR [esi+12], eax
	jne	SHORT $LN3@Delete

; 126  : 			this->Clear();

	mov	eax, DWORD PTR [esi]
	mov	edx, DWORD PTR [eax+4]
	call	edx
	pop	esi

; 132  : 		}
; 133  : 	}

	ret	4
$LN3@Delete:

; 127  : 		else
; 128  : 		{
; 129  : 			if (index < this->m_items)

	cmp	edx, eax
	jae	SHORT $LN1@Delete

; 130  : 				memmove(&this->m_vector[index], &this->m_vector[index + 1], (this->m_items - index) * sizeof(T));

	mov	ecx, DWORD PTR [esi+4]
	sub	eax, edx
	add	eax, eax
	lea	ecx, DWORD PTR [ecx+edx*4]
	add	eax, eax
	push	eax
	lea	edx, DWORD PTR [ecx+4]
	push	edx
	push	ecx
	call	_memmove
	add	esp, 12					; 0000000cH
$LN1@Delete:

; 131  : 			this->Resize(this->m_items);

	mov	ecx, DWORD PTR [esi+12]
	mov	eax, DWORD PTR [esi]
	mov	edx, DWORD PTR [eax+8]
	push	ecx
	mov	ecx, esi
	call	edx
$LN2@Delete:
	pop	esi

; 132  : 		}
; 133  : 	}

	ret	4
?Delete@?$aVector@PAVgzWeaponDropClass@@@@UAEXI@Z ENDP	; aVector<gzWeaponDropClass *>::Delete
_TEXT	ENDS
PUBLIC	?Count@?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@QAEHXZ ; nc_DynamicVectorClass<nc_ConsoleFunctionClass *>::Count
; Function compile flags: /Ogtpy
; File d:\source code\fds lib\new\fds_vector.h
;	COMDAT ?Count@?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@QAEHXZ
_TEXT	SEGMENT
?Count@?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@QAEHXZ PROC ; nc_DynamicVectorClass<nc_ConsoleFunctionClass *>::Count, COMDAT
; _this$ = ecx

; 375  : 		return ActiveCount;

	mov	eax, DWORD PTR [ecx+16]

; 376  : 	}

	ret	0
?Count@?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@QAEHXZ ENDP ; nc_DynamicVectorClass<nc_ConsoleFunctionClass *>::Count
_TEXT	ENDS
PUBLIC	?Delete@?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@QAE_NH@Z ; nc_DynamicVectorClass<nc_ConsoleFunctionClass *>::Delete
; Function compile flags: /Ogtpy
;	COMDAT ?Delete@?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@QAE_NH@Z
_TEXT	SEGMENT
_pos$ = 8						; size = 4
?Delete@?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@QAE_NH@Z PROC ; nc_DynamicVectorClass<nc_ConsoleFunctionClass *>::Delete, COMDAT
; _this$ = ecx

; 416  : 		if (pos >= ActiveCount)

	mov	eax, DWORD PTR [ecx+16]
	mov	edx, DWORD PTR _pos$[esp-4]
	cmp	edx, eax
	jl	SHORT $LN2@Delete@2

; 417  : 		{
; 418  : 			return false;

	xor	al, al

; 427  : 	}

	ret	4
$LN2@Delete@2:

; 419  : 		}
; 420  : 		ActiveCount--;

	add	eax, -1

; 421  : 		if (pos >= ActiveCount)

	cmp	edx, eax
	mov	DWORD PTR [ecx+16], eax

; 422  : 		{
; 423  : 			return true;

	jge	SHORT $LN5@Delete@2

; 424  : 		}
; 425  : 		memmove(&Vector[pos],&Vector[pos+1],(ActiveCount - pos) * sizeof(T));

	mov	ecx, DWORD PTR [ecx+4]
	sub	eax, edx
	add	eax, eax
	lea	ecx, DWORD PTR [ecx+edx*4]
	add	eax, eax
	push	eax
	lea	edx, DWORD PTR [ecx+4]
	push	edx
	push	ecx
	call	_memmove
	add	esp, 12					; 0000000cH
$LN5@Delete@2:

; 426  : 		return true;

	mov	al, 1

; 427  : 	}

	ret	4
?Delete@?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@QAE_NH@Z ENDP ; nc_DynamicVectorClass<nc_ConsoleFunctionClass *>::Delete
_TEXT	ENDS
PUBLIC	??A?$nc_VectorClass@PAVnc_ConsoleFunctionClass@@@@QAEAAPAVnc_ConsoleFunctionClass@@H@Z ; nc_VectorClass<nc_ConsoleFunctionClass *>::operator[]
; Function compile flags: /Ogtpy
;	COMDAT ??A?$nc_VectorClass@PAVnc_ConsoleFunctionClass@@@@QAEAAPAVnc_ConsoleFunctionClass@@H@Z
_TEXT	SEGMENT
_index$ = 8						; size = 4
??A?$nc_VectorClass@PAVnc_ConsoleFunctionClass@@@@QAEAAPAVnc_ConsoleFunctionClass@@H@Z PROC ; nc_VectorClass<nc_ConsoleFunctionClass *>::operator[], COMDAT
; _this$ = ecx

; 341  : 		return Vector[index];

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

; 342  : 	}

	ret	4
??A?$nc_VectorClass@PAVnc_ConsoleFunctionClass@@@@QAEAAPAVnc_ConsoleFunctionClass@@H@Z ENDP ; nc_VectorClass<nc_ConsoleFunctionClass *>::operator[]
; 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	??_H@YGXPAXIHP6EPAX0@Z@Z			; `vector constructor iterator'
; Function compile flags: /Ogtpy
;	COMDAT ??_H@YGXPAXIHP6EPAX0@Z@Z
_TEXT	SEGMENT
___t$ = 8						; size = 4
___s$ = 12						; size = 4
___n$ = 16						; size = 4
___f$ = 20						; size = 4
??_H@YGXPAXIHP6EPAX0@Z@Z PROC				; `vector constructor iterator', COMDAT
	push	edi
	mov	edi, DWORD PTR ___n$[esp]
	sub	edi, 1
	js	SHORT $LN1@vector
	push	ebx
	mov	ebx, DWORD PTR ___f$[esp+4]
	push	ebp
	mov	ebp, DWORD PTR ___s$[esp+8]
	push	esi
	mov	esi, DWORD PTR ___t$[esp+12]
	npad	7
$LL2@vector:
	mov	ecx, esi
	call	ebx
	add	esi, ebp
	sub	edi, 1
	jns	SHORT $LL2@vector
	pop	esi
	pop	ebp
	pop	ebx
$LN1@vector:
	pop	edi
	ret	16					; 00000010H
??_H@YGXPAXIHP6EPAX0@Z@Z ENDP				; `vector constructor iterator'
_TEXT	ENDS
PUBLIC	??0?$allocator@D@std@@QAE@XZ			; std::allocator<char>::allocator<char>
; Function compile flags: /Ogtpy
; File c:\program files (x86)\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 (x86)\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>
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ??_GaString@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GaString@@UAEPAXI@Z PROC				; aString::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1aStringBase@@UAE@XZ			; aStringBase::~aStringBase
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $LN7@scalar@2
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN7@scalar@2:
	mov	eax, esi
	pop	esi
	ret	4
??_GaString@@UAEPAXI@Z ENDP				; aString::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??_C@_01KDCPPGHE@r?$AA@				; `string'
PUBLIC	??_C@_0BD@FCHIMBDK@memreport_gz?$CFd?4log?$AA@	; `string'
PUBLIC	??_C@_08GNPLGFJM@?$FL?$CFd?$FN?5?$CFs?6?$AA@	; `string'
PUBLIC	??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@	; `string'
PUBLIC	??_C@_0BL@KNCLABKI@Unload?5routine?5activated?4?6?$AA@ ; `string'
PUBLIC	??1gzInitClass@@QAE@XZ				; gzInitClass::~gzInitClass
EXTRN	?m_dumpMemoryReport@@YAXPBD_N@Z:PROC		; m_dumpMemoryReport
EXTRN	_fclose:PROC
EXTRN	_fopen:PROC
EXTRN	_sprintf:PROC
EXTRN	?Clear@aStringBase@@QAEXXZ:PROC			; aStringBase::Clear
EXTRN	?stVersion@@3VaString@@A:QWORD			; stVersion
EXTRN	?Unload@gzBaseManager@@SAXXZ:PROC		; gzBaseManager::Unload
EXTRN	?m_objList@gzBaseManager@@2V?$aVector@PAVgzBase@@@@A:BYTE ; gzBaseManager::m_objList
;	COMDAT ??_C@_01KDCPPGHE@r?$AA@
; File d:\source code\alib\include\avector.h
CONST	SEGMENT
??_C@_01KDCPPGHE@r?$AA@ DB 'r', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_0BD@FCHIMBDK@memreport_gz?$CFd?4log?$AA@
CONST	SEGMENT
??_C@_0BD@FCHIMBDK@memreport_gz?$CFd?4log?$AA@ DB 'memreport_gz%d.log', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_08GNPLGFJM@?$FL?$CFd?$FN?5?$CFs?6?$AA@
CONST	SEGMENT
??_C@_08GNPLGFJM@?$FL?$CFd?$FN?5?$CFs?6?$AA@ DB '[%d] %s', 0aH, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
CONST	SEGMENT
??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@ DB '.\stmanager.cpp', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BL@KNCLABKI@Unload?5routine?5activated?4?6?$AA@
CONST	SEGMENT
??_C@_0BL@KNCLABKI@Unload?5routine?5activated?4?6?$AA@ DB 'Unload routine'
	DB	' activated.', 0aH, 00H			; `string'
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stmanager.cpp
CONST	ENDS
;	COMDAT ??1gzInitClass@@QAE@XZ
_TEXT	SEGMENT
_memlog$ = -24						; size = 24
??1gzInitClass@@QAE@XZ PROC				; gzInitClass::~gzInitClass, COMDAT
; _this$ = ecx

; 117  : {

	sub	esp, 24					; 00000018H

; 118  : #if ISDEV()
; 119  : 	stConsole::Out("Unload routine activated.\n");

	push	OFFSET ??_C@_0BL@KNCLABKI@Unload?5routine?5activated?4?6?$AA@
	call	?Out@stConsole@@SAXPBDZZ		; stConsole::Out

; 120  : #endif
; 121  : #if VERC(1, 1, 0)
; 122  : 	delete stDb;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	122					; 0000007aH
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	mov	ecx, DWORD PTR ?stDb@@3PAVstDbManager@@A ; stDb
	add	esp, 16					; 00000010H
	test	ecx, ecx
	je	SHORT $LN10@gzInitClas
	mov	eax, DWORD PTR [ecx]
	mov	edx, DWORD PTR [eax]
	push	1
	call	edx
$LN10@gzInitClas:

; 123  : #endif
; 124  : 	for (unsigned int i = 0; i < gzBaseManager::m_objList.Count(); i++)

	xor	eax, eax
	cmp	DWORD PTR ?m_objList@gzBaseManager@@2V?$aVector@PAVgzBase@@@@A+12, eax
	push	esi
	jbe	SHORT $LN5@gzInitClas
	npad	2
$LL7@gzInitClas:

; 125  : 		stConsole::Out("[%d] %s\n", i + 1, gzBaseManager::m_objList[i]->GetName());

	mov	ecx, DWORD PTR ?m_objList@gzBaseManager@@2V?$aVector@PAVgzBase@@@@A+4
	mov	ecx, DWORD PTR [ecx+eax*4]
	mov	edx, DWORD PTR [ecx]
	lea	esi, DWORD PTR [eax+1]
	mov	eax, DWORD PTR [edx+4]
	call	eax
	push	eax
	push	esi
	push	OFFSET ??_C@_08GNPLGFJM@?$FL?$CFd?$FN?5?$CFs?6?$AA@
	call	?Out@stConsole@@SAXPBDZZ		; stConsole::Out
	mov	eax, esi
	add	esp, 12					; 0000000cH
	cmp	eax, DWORD PTR ?m_objList@gzBaseManager@@2V?$aVector@PAVgzBase@@@@A+12
	jb	SHORT $LL7@gzInitClas
$LN5@gzInitClas:

; 126  : 	gzBaseManager::Unload();

	call	?Unload@gzBaseManager@@SAXXZ		; gzBaseManager::Unload

; 127  : 	stVersion.Clear();

	mov	ecx, OFFSET ?stVersion@@3VaString@@A	; stVersion
	call	?Clear@aStringBase@@QAEXXZ		; aStringBase::Clear

; 128  : 
; 129  : #ifdef _MEMTRACK
; 130  : 	char memlog[24];
; 131  : 	for (int i = 1; ; i++)

	mov	esi, 1

; 132  : 	{
; 133  : 		sprintf(memlog, "memreport_gz%d.log", i);

	push	esi
	lea	ecx, DWORD PTR _memlog$[esp+32]
	push	OFFSET ??_C@_0BD@FCHIMBDK@memreport_gz?$CFd?4log?$AA@
	push	ecx
	call	_sprintf

; 134  : 		FILE *memlogFile = fopen(memlog, "r");

	lea	edx, DWORD PTR _memlog$[esp+40]
	push	OFFSET ??_C@_01KDCPPGHE@r?$AA@
	push	edx
	call	_fopen
	add	esp, 20					; 00000014H

; 135  : 		if (!memlogFile)

	test	eax, eax
	je	SHORT $LN21@gzInitClas
$LL4@gzInitClas:

; 136  : 			break;
; 137  : 		fclose(memlogFile);

	push	eax
	call	_fclose
	add	esi, 1
	push	esi
	lea	eax, DWORD PTR _memlog$[esp+36]
	push	OFFSET ??_C@_0BD@FCHIMBDK@memreport_gz?$CFd?4log?$AA@
	push	eax
	call	_sprintf
	lea	ecx, DWORD PTR _memlog$[esp+44]
	push	OFFSET ??_C@_01KDCPPGHE@r?$AA@
	push	ecx
	call	_fopen
	add	esp, 24					; 00000018H
	test	eax, eax
	jne	SHORT $LL4@gzInitClas
$LN21@gzInitClas:

; 138  : 	}
; 139  : 	m_dumpMemoryReport(memlog);

	lea	edx, DWORD PTR _memlog$[esp+28]
	push	1
	push	edx
	call	?m_dumpMemoryReport@@YAXPBD_N@Z		; m_dumpMemoryReport
	add	esp, 8
	pop	esi

; 140  : #endif
; 141  : }

	add	esp, 24					; 00000018H
	ret	0
??1gzInitClass@@QAE@XZ ENDP				; gzInitClass::~gzInitClass
_TEXT	ENDS
PUBLIC	??_GgzInitClass@@QAEPAXI@Z			; gzInitClass::`scalar deleting destructor'
; Function compile flags: /Ogtpy
;	COMDAT ??_GgzInitClass@@QAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GgzInitClass@@QAEPAXI@Z PROC				; gzInitClass::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1gzInitClass@@QAE@XZ			; gzInitClass::~gzInitClass
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $LN4@scalar@3
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN4@scalar@3:
	mov	eax, esi
	pop	esi
	ret	4
??_GgzInitClass@@QAEPAXI@Z ENDP				; gzInitClass::`scalar deleting destructor'
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ??_GgzManagerClass@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GgzManagerClass@@UAEPAXI@Z PROC			; gzManagerClass::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1EventHandler@@UAE@XZ			; EventHandler::~EventHandler
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $LN7@scalar@4
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN7@scalar@4:
	mov	eax, esi
	pop	esi
	ret	4
??_GgzManagerClass@@UAEPAXI@Z ENDP			; gzManagerClass::`scalar deleting destructor'
_TEXT	ENDS
EXTRN	?m_list@gzHookManager@@2V?$aVector@PAVHookBase@@@@A:BYTE ; gzHookManager::m_list
; Function compile flags: /Ogtpy
;	COMDAT ?Delete@gzManagerClass@@UAEXXZ
_TEXT	SEGMENT
?Delete@gzManagerClass@@UAEXXZ PROC			; gzManagerClass::Delete, COMDAT
; _this$ = ecx

; 175  : {

	push	esi

; 176  : 	gzHookManager::m_list.Clear();

	xor	esi, esi
	cmp	DWORD PTR ?m_list@gzHookManager@@2V?$aVector@PAVHookBase@@@@A+4, esi
	je	SHORT $LN8@Delete@3
	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	73					; 00000049H
	push	OFFSET ??_C@_0CG@EILDPJHO@D?3?2Source?5Code?2aLib?2include?2aVec@
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	mov	eax, DWORD PTR ?m_list@gzHookManager@@2V?$aVector@PAVHookBase@@@@A+4
	push	eax
	call	??_V@YAXPAX@Z				; operator delete[]
	add	esp, 16					; 00000010H
	mov	DWORD PTR ?m_list@gzHookManager@@2V?$aVector@PAVHookBase@@@@A+4, esi
$LN8@Delete@3:
	mov	DWORD PTR ?m_list@gzHookManager@@2V?$aVector@PAVHookBase@@@@A+12, esi
	mov	DWORD PTR ?m_list@gzHookManager@@2V?$aVector@PAVHookBase@@@@A+8, esi
	pop	esi

; 177  : }

	ret	0
?Delete@gzManagerClass@@UAEXXZ ENDP			; gzManagerClass::Delete
_TEXT	ENDS
PUBLIC	??_C@_0M@GHELCGFC@player_info?$AA@		; `string'
PUBLIC	??_C@_06KAPGEJDE@plimit?$AA@			; `string'
PUBLIC	??_C@_05KBLJHFNC@team2?$AA@			; `string'
PUBLIC	??_C@_04KADBPNCB@team?$AA@			; `string'
EXTRN	?PatchData@@YAXPAXKK@Z:PROC			; PatchData
EXTRN	?Level_Loaded@gzBaseManager@@SAXXZ:PROC		; gzBaseManager::Level_Loaded
EXTRN	_stricmp:PROC
EXTRN	?FunctionList@nc_ConsoleFunctionManager@@2AAV?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@A:DWORD ; nc_ConsoleFunctionManager::FunctionList
;	COMDAT ??_C@_0M@GHELCGFC@player_info?$AA@
; File d:\source code\fds lib\new\fds_vector.h
CONST	SEGMENT
??_C@_0M@GHELCGFC@player_info?$AA@ DB 'player_info', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_06KAPGEJDE@plimit?$AA@
CONST	SEGMENT
??_C@_06KAPGEJDE@plimit?$AA@ DB 'plimit', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_05KBLJHFNC@team2?$AA@
CONST	SEGMENT
??_C@_05KBLJHFNC@team2?$AA@ DB 'team2', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_04KADBPNCB@team?$AA@
CONST	SEGMENT
??_C@_04KADBPNCB@team?$AA@ DB 'team', 00H		; `string'
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stmanager.cpp
CONST	ENDS
;	COMDAT ?Level_Loaded@gzManagerClass@@UAEXXZ
_TEXT	SEGMENT
_gcd_bhs_patch$ = -20					; size = 2
_disableBHSpLimit$ = -16				; size = 6
_GSA_GID_Patch$ = -8					; size = 6
?Level_Loaded@gzManagerClass@@UAEXXZ PROC		; gzManagerClass::Level_Loaded, COMDAT
; _this$ = ecx

; 180  : 	for (int i = 0; i < nc_ConsoleFunctionManager::FunctionList.Count(); i++) {

	mov	eax, DWORD PTR ?FunctionList@nc_ConsoleFunctionManager@@2AAV?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@A ; nc_ConsoleFunctionManager::FunctionList
	sub	esp, 20					; 00000014H
	push	ebx
	push	esi
	xor	ebx, ebx
	xor	esi, esi
	cmp	DWORD PTR [eax+16], ebx
	jle	$LN7@Level_Load
$LL9@Level_Load:

; 181  : 		unsigned long offset = (unsigned long)*(unsigned long *)*&nc_ConsoleFunctionManager::FunctionList[i];

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

; 182  : 		if (offset >= 0x45000000)

	cmp	eax, 1157627904				; 45000000H
	jb	SHORT $LN6@Level_Load

; 183  : 		{
; 184  : 			if (!stricmp(nc_ConsoleFunctionManager::FunctionList[i]->Get_Name(),"team") ||
; 185  : 				!stricmp(nc_ConsoleFunctionManager::FunctionList[i]->Get_Name(),"team2") ||
; 186  : 				!stricmp(nc_ConsoleFunctionManager::FunctionList[i]->Get_Name(),"plimit"))

	mov	edx, eax
	mov	eax, DWORD PTR [edx]
	push	OFFSET ??_C@_04KADBPNCB@team?$AA@
	call	eax
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $LN4@Level_Load
	mov	ecx, DWORD PTR ?FunctionList@nc_ConsoleFunctionManager@@2AAV?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@A ; nc_ConsoleFunctionManager::FunctionList
	mov	edx, DWORD PTR [ecx+4]
	mov	ecx, DWORD PTR [edx+esi*4]
	mov	eax, DWORD PTR [ecx]
	mov	edx, DWORD PTR [eax]
	push	OFFSET ??_C@_05KBLJHFNC@team2?$AA@
	call	edx
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	je	SHORT $LN4@Level_Load
	mov	eax, DWORD PTR ?FunctionList@nc_ConsoleFunctionManager@@2AAV?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@A ; nc_ConsoleFunctionManager::FunctionList
	mov	ecx, DWORD PTR [eax+4]
	mov	ecx, DWORD PTR [ecx+esi*4]
	mov	edx, DWORD PTR [ecx]
	mov	eax, DWORD PTR [edx]
	push	OFFSET ??_C@_06KAPGEJDE@plimit?$AA@
	call	eax

; 187  : 			{
; 188  : 				nc_ConsoleFunctionManager::FunctionList.Delete(i);
; 189  : 				i--;
; 190  : 			}
; 191  : 		}

	jmp	SHORT $LN42@Level_Load
$LN6@Level_Load:

; 192  : 
; 193  : 		// Remove original player_info in server.dat
; 194  : 		else if (offset == 0x7CD0D0 && !stricmp(nc_ConsoleFunctionManager::FunctionList[i]->Get_Name(),"player_info"))

	cmp	eax, 8179920				; 007cd0d0H
	jne	SHORT $LN8@Level_Load
	mov	edx, DWORD PTR [eax]
	push	OFFSET ??_C@_0M@GHELCGFC@player_info?$AA@
	call	edx
$LN42@Level_Load:
	push	eax
	call	_stricmp
	add	esp, 8
	test	eax, eax
	jne	SHORT $LN8@Level_Load
$LN4@Level_Load:

; 195  : 		{
; 196  : 			nc_ConsoleFunctionManager::FunctionList.Delete(i);

	mov	eax, DWORD PTR ?FunctionList@nc_ConsoleFunctionManager@@2AAV?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@A ; nc_ConsoleFunctionManager::FunctionList
	mov	ecx, DWORD PTR [eax+16]
	mov	edx, eax
	add	eax, 16					; 00000010H
	cmp	esi, ecx
	jge	SHORT $LN35@Level_Load
	add	ecx, -1
	mov	DWORD PTR [eax], ecx
	mov	eax, ecx
	cmp	esi, eax
	jge	SHORT $LN35@Level_Load
	mov	ecx, DWORD PTR [edx+4]
	sub	eax, esi
	add	eax, eax
	lea	ecx, DWORD PTR [ecx+esi*4]
	add	eax, eax
	push	eax
	lea	edx, DWORD PTR [ecx+4]
	push	edx
	push	ecx
	call	_memmove
	add	esp, 12					; 0000000cH
$LN35@Level_Load:

; 197  : 			i--;

	sub	esi, 1
$LN8@Level_Load:

; 180  : 	for (int i = 0; i < nc_ConsoleFunctionManager::FunctionList.Count(); i++) {

	mov	eax, DWORD PTR ?FunctionList@nc_ConsoleFunctionManager@@2AAV?$nc_DynamicVectorClass@PAVnc_ConsoleFunctionClass@@@@A ; nc_ConsoleFunctionManager::FunctionList
	add	esi, 1
	cmp	esi, DWORD PTR [eax+16]
	jl	$LL9@Level_Load
$LN7@Level_Load:

; 198  : 		}
; 199  : 	}
; 200  : 
; 201  : 	nc_ConsoleFunctionManager::Sort_Function_List();

	call	?Sort_Function_List@nc_ConsoleFunctionManager@@SAXXZ ; nc_ConsoleFunctionManager::Sort_Function_List

; 202  : 	nc_ConsoleFunctionManager::Verbose_Help_File();

	call	?Verbose_Help_File@nc_ConsoleFunctionManager@@SAXXZ ; nc_ConsoleFunctionManager::Verbose_Help_File

; 203  : 
; 204  : 	gzBaseManager::Level_Loaded();

	call	?Level_Loaded@gzBaseManager@@SAXXZ	; gzBaseManager::Level_Loaded

; 205  : 
; 206  : 	// Remove the limit from bhs.dll in nickname exploit fix. Offset is retrieved from 0x426B8F
; 207  : 	unsigned long pLimitMax = 0;
; 208  : 	memcpy(&pLimitMax, (void *)0x426B8F, 4);

	mov	eax, DWORD PTR ds:4352911

; 209  : 	if (pLimitMax >= 0x45000000 && pLimitMax < 0x45100000)

	lea	ecx, DWORD PTR [eax-1157627904]
	cmp	ecx, 1048575				; 000fffffH
	ja	SHORT $LN1@Level_Load

; 210  : 		*(int *)pLimitMax = 127;

	mov	DWORD PTR [eax], 127			; 0000007fH
$LN1@Level_Load:

; 211  : 
; 212  : 	// Remove "plimit" patch placed by bhs.dll in game_info
; 213  : 	unsigned char disableBHSpLimit[] = { 0x8B, 0xB0, 0xF8, 0x01, 0x00, 0x00 };
; 214  : 	PatchData(&disableBHSpLimit, 6, 0x426B8D);

	push	4352909					; 00426b8dH
	lea	edx, DWORD PTR _disableBHSpLimit$[esp+32]
	push	6
	push	edx
	mov	BYTE PTR _disableBHSpLimit$[esp+40], 139 ; 0000008bH
	mov	BYTE PTR _disableBHSpLimit$[esp+41], 176 ; 000000b0H
	mov	BYTE PTR _disableBHSpLimit$[esp+42], 248 ; 000000f8H
	mov	BYTE PTR _disableBHSpLimit$[esp+43], 1
	mov	BYTE PTR _disableBHSpLimit$[esp+44], bl
	mov	BYTE PTR _disableBHSpLimit$[esp+45], bl
	call	?PatchData@@YAXPAXKK@Z			; PatchData

; 215  : 	PatchData(&disableBHSpLimit, 6, 0x426BE3);

	push	4352995					; 00426be3H
	lea	eax, DWORD PTR _disableBHSpLimit$[esp+44]
	push	6
	push	eax
	call	?PatchData@@YAXPAXKK@Z			; PatchData

; 216  : 
; 217  : 	// gcd_think bhs.dll patch removal
; 218  : 	unsigned char gcd_bhs_patch[2] = { 0xFF, 0x74 };
; 219  : 	PatchData(&gcd_bhs_patch, 2, 0x7730E5);

	push	7811301					; 007730e5H
	lea	ecx, DWORD PTR _gcd_bhs_patch$[esp+56]
	push	2
	push	ecx
	mov	BYTE PTR _gcd_bhs_patch$[esp+64], 255	; 000000ffH
	mov	BYTE PTR _gcd_bhs_patch$[esp+65], 116	; 00000074H
	call	?PatchData@@YAXPAXKK@Z			; PatchData

; 220  : 	PatchData(&gcd_bhs_patch, 2, 0x775094);

	push	7819412					; 00775094H
	lea	edx, DWORD PTR _gcd_bhs_patch$[esp+68]
	push	2
	push	edx
	call	?PatchData@@YAXPAXKK@Z			; PatchData

; 221  : 
; 222  : 	// Patch to correct GID to GameSpy CD Key Authentication
; 223  : 	unsigned char GSA_GID_Patch[] = { 0xBA, 0x41, 0x02, 0x00, 0x00, 0x90 };
; 224  : 	PatchData(&GSA_GID_Patch, 6, 0x772E2E);

	push	7810606					; 00772e2eH
	lea	eax, DWORD PTR _GSA_GID_Patch$[esp+80]
	push	6
	push	eax
	mov	BYTE PTR _GSA_GID_Patch$[esp+88], 186	; 000000baH
	mov	BYTE PTR _GSA_GID_Patch$[esp+89], 65	; 00000041H
	mov	BYTE PTR _GSA_GID_Patch$[esp+90], 2
	mov	BYTE PTR _GSA_GID_Patch$[esp+91], bl
	mov	BYTE PTR _GSA_GID_Patch$[esp+92], bl
	mov	BYTE PTR _GSA_GID_Patch$[esp+93], 144	; 00000090H
	call	?PatchData@@YAXPAXKK@Z			; PatchData
	add	esp, 60					; 0000003cH
	pop	esi
	pop	ebx

; 225  : }

	add	esp, 20					; 00000014H
	ret	0
?Level_Loaded@gzManagerClass@@UAEXXZ ENDP		; gzManagerClass::Level_Loaded
_TEXT	ENDS
PUBLIC	??_C@_0CA@LGGPOMCK@?$FLST?$FN?5stDB?5successfully?5loaded?4?6?$AA@ ; `string'
PUBLIC	??_C@_0CF@EBKNDDAL@?$FLST?$FN?5Error?3?5Unable?5to?5load?5stDB?$DL@ ; `string'
PUBLIC	??_7stDbManager@@6B@				; stDbManager::`vftable'
PUBLIC	??_C@_08MKEKAJBA@stgm?4dat?$AA@			; `string'
PUBLIC	??0stDbManager@@QAE@XZ				; stDbManager::stDbManager
PUBLIC	??_R4stDbManager@@6B@				; stDbManager::`RTTI Complete Object Locator'
PUBLIC	??_R0?AVstDbManager@@@8				; stDbManager `RTTI Type Descriptor'
PUBLIC	??_R3stDbManager@@8				; stDbManager::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2stDbManager@@8				; stDbManager::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@stDbManager@@8			; stDbManager::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R1A@?0A@EA@aSQLite3@@8			; aSQLite3::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVaSQLite3@@@8				; aSQLite3 `RTTI Type Descriptor'
PUBLIC	??_R3aSQLite3@@8				; aSQLite3::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2aSQLite3@@8				; aSQLite3::`RTTI Base Class Array'
EXTRN	??1aSQLite3@@UAE@XZ:PROC			; aSQLite3::~aSQLite3
EXTRN	?Load@aSQLite3@@QAE_NABVaString@@H@Z:PROC	; aSQLite3::Load
EXTRN	??0aSQLite3@@QAE@XZ:PROC			; aSQLite3::aSQLite3
EXTRN	??_EstDbManager@@UAEPAXI@Z:PROC			; stDbManager::`vector deleting destructor'
;	COMDAT ??_R2aSQLite3@@8
; File d:\source code\alib\include\astring.h
rdata$r	SEGMENT
??_R2aSQLite3@@8 DD FLAT:??_R1A@?0A@EA@aSQLite3@@8	; aSQLite3::`RTTI Base Class Array'
rdata$r	ENDS
;	COMDAT ??_R3aSQLite3@@8
rdata$r	SEGMENT
??_R3aSQLite3@@8 DD 00H					; aSQLite3::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	01H
	DD	FLAT:??_R2aSQLite3@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVaSQLite3@@@8
_DATA	SEGMENT
??_R0?AVaSQLite3@@@8 DD FLAT:??_7type_info@@6B@		; aSQLite3 `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVaSQLite3@@', 00H
_DATA	ENDS
;	COMDAT ??_R1A@?0A@EA@aSQLite3@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@aSQLite3@@8 DD FLAT:??_R0?AVaSQLite3@@@8	; aSQLite3::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	00H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3aSQLite3@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@stDbManager@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@stDbManager@@8 DD FLAT:??_R0?AVstDbManager@@@8 ; stDbManager::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3stDbManager@@8
rdata$r	ENDS
;	COMDAT ??_R2stDbManager@@8
rdata$r	SEGMENT
??_R2stDbManager@@8 DD FLAT:??_R1A@?0A@EA@stDbManager@@8 ; stDbManager::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@aSQLite3@@8
rdata$r	ENDS
;	COMDAT ??_R3stDbManager@@8
rdata$r	SEGMENT
??_R3stDbManager@@8 DD 00H				; stDbManager::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2stDbManager@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVstDbManager@@@8
_DATA	SEGMENT
??_R0?AVstDbManager@@@8 DD FLAT:??_7type_info@@6B@	; stDbManager `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVstDbManager@@', 00H
_DATA	ENDS
;	COMDAT ??_R4stDbManager@@6B@
rdata$r	SEGMENT
??_R4stDbManager@@6B@ DD 00H				; stDbManager::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVstDbManager@@@8
	DD	FLAT:??_R3stDbManager@@8
rdata$r	ENDS
;	COMDAT ??_C@_0CA@LGGPOMCK@?$FLST?$FN?5stDB?5successfully?5loaded?4?6?$AA@
CONST	SEGMENT
??_C@_0CA@LGGPOMCK@?$FLST?$FN?5stDB?5successfully?5loaded?4?6?$AA@ DB '[S'
	DB	'T] stDB successfully loaded.', 0aH, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_0CF@EBKNDDAL@?$FLST?$FN?5Error?3?5Unable?5to?5load?5stDB?$DL@
CONST	SEGMENT
??_C@_0CF@EBKNDDAL@?$FLST?$FN?5Error?3?5Unable?5to?5load?5stDB?$DL@ DB '['
	DB	'ST] Error: Unable to load stDB; %s', 0aH, 00H ; `string'
CONST	ENDS
;	COMDAT ??_7stDbManager@@6B@
CONST	SEGMENT
??_7stDbManager@@6B@ DD FLAT:??_R4stDbManager@@6B@	; stDbManager::`vftable'
	DD	FLAT:??_EstDbManager@@UAEPAXI@Z
CONST	ENDS
;	COMDAT ??_C@_08MKEKAJBA@stgm?4dat?$AA@
CONST	SEGMENT
??_C@_08MKEKAJBA@stgm?4dat?$AA@ DB 'stgm.dat', 00H	; `string'
CONST	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0stDbManager@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0stDbManager@@QAE@XZ$0
	DD	00H
	DD	FLAT:__unwindfunclet$??0stDbManager@@QAE@XZ$1
__ehfuncinfo$??0stDbManager@@QAE@XZ DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$??0stDbManager@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stmanager.cpp
xdata$x	ENDS
;	COMDAT ??0stDbManager@@QAE@XZ
_TEXT	SEGMENT
_this$ = -24						; size = 4
$T70666 = -20						; size = 8
__$EHRec$ = -12						; size = 12
??0stDbManager@@QAE@XZ PROC				; stDbManager::stDbManager, COMDAT
; _this$ = ecx

; 237  : {

	push	-1
	push	__ehhandler$??0stDbManager@@QAE@XZ
	mov	eax, DWORD PTR fs:0
	push	eax
	mov	DWORD PTR fs:0, esp
	sub	esp, 12					; 0000000cH
	push	ebx
	push	esi
	mov	esi, ecx
	mov	DWORD PTR _this$[esp+32], esi
	call	??0aSQLite3@@QAE@XZ			; aSQLite3::aSQLite3

; 238  : 	if (!this->Load("stgm.dat"))

	push	OFFSET ??_C@_08MKEKAJBA@stgm?4dat?$AA@
	lea	ecx, DWORD PTR $T70666[esp+36]
	mov	DWORD PTR __$EHRec$[esp+44], 0
	mov	DWORD PTR [esi], OFFSET ??_7stDbManager@@6B@
	call	??0aString@@QAE@PBD@Z			; aString::aString
	push	6
	lea	eax, DWORD PTR $T70666[esp+36]
	push	eax
	mov	ecx, esi
	mov	BYTE PTR __$EHRec$[esp+48], 1
	call	?Load@aSQLite3@@QAE_NABVaString@@H@Z	; aSQLite3::Load
	test	al, al
	lea	ecx, DWORD PTR $T70666[esp+32]
	sete	bl
	mov	BYTE PTR __$EHRec$[esp+40], 0
	call	??1aStringBase@@UAE@XZ			; aStringBase::~aStringBase
	test	bl, bl
	je	SHORT $LN2@stDbManage

; 239  : 		stConsole::Out("[ST] Error: Unable to load stDB; %s\n", this->GetError().GetString());

	mov	eax, DWORD PTR [esi+12]
	test	eax, eax
	je	SHORT $LN14@stDbManage
	mov	eax, DWORD PTR [eax]
	push	eax
	push	OFFSET ??_C@_0CF@EBKNDDAL@?$FLST?$FN?5Error?3?5Unable?5to?5load?5stDB?$DL@
	call	?Out@stConsole@@SAXPBDZZ		; stConsole::Out
	add	esp, 8

; 243  : #endif
; 244  : }

	mov	eax, esi
	pop	esi
	pop	ebx
	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	mov	DWORD PTR fs:0, ecx
	add	esp, 24					; 00000018H
	ret	0

; 239  : 		stConsole::Out("[ST] Error: Unable to load stDB; %s\n", this->GetError().GetString());

$LN14@stDbManage:
	xor	eax, eax
	push	eax
	push	OFFSET ??_C@_0CF@EBKNDDAL@?$FLST?$FN?5Error?3?5Unable?5to?5load?5stDB?$DL@
	call	?Out@stConsole@@SAXPBDZZ		; stConsole::Out
	add	esp, 8

; 243  : #endif
; 244  : }

	mov	eax, esi
	pop	esi
	pop	ebx
	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	mov	DWORD PTR fs:0, ecx
	add	esp, 24					; 00000018H
	ret	0
$LN2@stDbManage:

; 240  : #ifdef DEVMSG
; 241  : 	else
; 242  : 		stConsole::Out("[ST] stDB successfully loaded.\n");

	push	OFFSET ??_C@_0CA@LGGPOMCK@?$FLST?$FN?5stDB?5successfully?5loaded?4?6?$AA@
	call	?Out@stConsole@@SAXPBDZZ		; stConsole::Out

; 243  : #endif
; 244  : }

	mov	ecx, DWORD PTR __$EHRec$[esp+36]
	add	esp, 4
	mov	eax, esi
	pop	esi
	pop	ebx
	mov	DWORD PTR fs:0, ecx
	add	esp, 24					; 00000018H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0stDbManager@@QAE@XZ$0:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1aSQLite3@@UAE@XZ			; aSQLite3::~aSQLite3
__unwindfunclet$??0stDbManager@@QAE@XZ$1:
	lea	ecx, DWORD PTR $T70666[ebp]
	jmp	??1aString@@UAE@XZ
__ehhandler$??0stDbManager@@QAE@XZ:
	mov	eax, OFFSET __ehfuncinfo$??0stDbManager@@QAE@XZ
	jmp	___CxxFrameHandler3
text$x	ENDS
??0stDbManager@@QAE@XZ ENDP				; stDbManager::stDbManager
PUBLIC	??_C@_0CP@LMEFPKJD@STGM?5database?5has?5been?5successfu@ ; `string'
PUBLIC	??_C@_0CL@PMEOHHDO@?$FLST?$FN?5Error?3?5Unable?5to?5shrink?5dat@ ; `string'
PUBLIC	??_C@_0FJ@KLKCJOBP@Please?5be?5patient?5and?5do?5NOT?5ter@ ; `string'
PUBLIC	??1stDbManager@@UAE@XZ				; stDbManager::~stDbManager
EXTRN	?Shrink@aSQLite3@@QAE_NXZ:PROC			; aSQLite3::Shrink
;	COMDAT ??_C@_0CP@LMEFPKJD@STGM?5database?5has?5been?5successfu@
; File d:\source code\alib\include\astring.h
CONST	SEGMENT
??_C@_0CP@LMEFPKJD@STGM?5database?5has?5been?5successfu@ DB 'STGM databas'
	DB	'e has been successfully shrinked.', 0aH, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0CL@PMEOHHDO@?$FLST?$FN?5Error?3?5Unable?5to?5shrink?5dat@
CONST	SEGMENT
??_C@_0CL@PMEOHHDO@?$FLST?$FN?5Error?3?5Unable?5to?5shrink?5dat@ DB '[ST]'
	DB	' Error: Unable to shrink database; %s', 0aH, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0FJ@KLKCJOBP@Please?5be?5patient?5and?5do?5NOT?5ter@
CONST	SEGMENT
??_C@_0FJ@KLKCJOBP@Please?5be?5patient?5and?5do?5NOT?5ter@ DB 'Please be '
	DB	'patient and do NOT terminate FDS forcefully while STGM is shr'
	DB	'inking database.', 0aH, 00H			; `string'
CONST	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1stDbManager@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1stDbManager@@UAE@XZ$0
__ehfuncinfo$??1stDbManager@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1stDbManager@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stmanager.cpp
xdata$x	ENDS
;	COMDAT ??1stDbManager@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1stDbManager@@UAE@XZ PROC				; stDbManager::~stDbManager, COMDAT
; _this$ = ecx

; 246  : {

	push	-1
	push	__ehhandler$??1stDbManager@@UAE@XZ
	mov	eax, DWORD PTR fs:0
	push	eax
	mov	DWORD PTR fs:0, esp
	push	ecx
	push	esi
	mov	esi, ecx
	mov	DWORD PTR _this$[esp+20], esi
	mov	DWORD PTR [esi], OFFSET ??_7stDbManager@@6B@

; 247  : 	printf("Please be patient and do NOT terminate FDS forcefully while STGM is shrinking database.\n");

	push	OFFSET ??_C@_0FJ@KLKCJOBP@Please?5be?5patient?5and?5do?5NOT?5ter@
	mov	DWORD PTR __$EHRec$[esp+32], 0
	call	_printf
	add	esp, 4

; 248  : 	if (!this->Shrink())

	mov	ecx, esi
	call	?Shrink@aSQLite3@@QAE_NXZ		; aSQLite3::Shrink
	test	al, al
	jne	SHORT $LN2@stDbManage@2

; 249  : 		stConsole::Out("[ST] Error: Unable to shrink database; %s\n", this->GetError().GetString());

	mov	eax, DWORD PTR [esi+12]
	test	eax, eax
	je	SHORT $LN10@stDbManage@2
	mov	eax, DWORD PTR [eax]
	push	eax
	push	OFFSET ??_C@_0CL@PMEOHHDO@?$FLST?$FN?5Error?3?5Unable?5to?5shrink?5dat@
	call	?Out@stConsole@@SAXPBDZZ		; stConsole::Out
	add	esp, 8

; 250  : 	else

	jmp	SHORT $LN1@stDbManage@2

; 249  : 		stConsole::Out("[ST] Error: Unable to shrink database; %s\n", this->GetError().GetString());

$LN10@stDbManage@2:
	xor	eax, eax
	push	eax
	push	OFFSET ??_C@_0CL@PMEOHHDO@?$FLST?$FN?5Error?3?5Unable?5to?5shrink?5dat@
	call	?Out@stConsole@@SAXPBDZZ		; stConsole::Out
	add	esp, 8

; 250  : 	else

	jmp	SHORT $LN1@stDbManage@2
$LN2@stDbManage@2:

; 251  : 		printf("STGM database has been successfully shrinked.\n");

	push	OFFSET ??_C@_0CP@LMEFPKJD@STGM?5database?5has?5been?5successfu@
	call	_printf
	add	esp, 4
$LN1@stDbManage@2:

; 252  : }

	mov	ecx, esi
	mov	DWORD PTR __$EHRec$[esp+28], -1
	call	??1aSQLite3@@UAE@XZ			; aSQLite3::~aSQLite3
	mov	ecx, DWORD PTR __$EHRec$[esp+20]
	pop	esi
	mov	DWORD PTR fs:0, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1stDbManager@@UAE@XZ$0:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1aSQLite3@@UAE@XZ			; aSQLite3::~aSQLite3
__ehhandler$??1stDbManager@@UAE@XZ:
	mov	eax, OFFSET __ehfuncinfo$??1stDbManager@@UAE@XZ
	jmp	___CxxFrameHandler3
text$x	ENDS
??1stDbManager@@UAE@XZ ENDP				; stDbManager::~stDbManager
PUBLIC	??_C@_0BJ@KMAJJAOI@?$FLST?$FN?5SQL?5Error?3?5?$CFs?5?$FL?$CFs?$FN?6?$AA@ ; `string'
PUBLIC	?PrintError@stDbManager@@QAEXXZ			; stDbManager::PrintError
;	COMDAT ??_C@_0BJ@KMAJJAOI@?$FLST?$FN?5SQL?5Error?3?5?$CFs?5?$FL?$CFs?$FN?6?$AA@
; File d:\source code\alib\include\astring.h
CONST	SEGMENT
??_C@_0BJ@KMAJJAOI@?$FLST?$FN?5SQL?5Error?3?5?$CFs?5?$FL?$CFs?$FN?6?$AA@ DB '['
	DB	'ST] SQL Error: %s [%s]', 0aH, 00H		; `string'
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stmanager.cpp
CONST	ENDS
;	COMDAT ?PrintError@stDbManager@@QAEXXZ
_TEXT	SEGMENT
?PrintError@stDbManager@@QAEXXZ PROC			; stDbManager::PrintError, COMDAT
; _this$ = ecx

; 255  : 	stConsole::Out("[ST] SQL Error: %s [%s]\n", this->GetError().GetString(), this->GetLastQuery().GetString());

	mov	eax, DWORD PTR [ecx+20]
	test	eax, eax
	je	SHORT $LN7@PrintError
	mov	edx, DWORD PTR [eax]
	jmp	SHORT $LN8@PrintError
$LN7@PrintError:
	xor	edx, edx
$LN8@PrintError:
	mov	eax, DWORD PTR [ecx+12]
	test	eax, eax
	je	SHORT $LN15@PrintError
	mov	eax, DWORD PTR [eax]
	push	edx
	push	eax
	push	OFFSET ??_C@_0BJ@KMAJJAOI@?$FLST?$FN?5SQL?5Error?3?5?$CFs?5?$FL?$CFs?$FN?6?$AA@
	call	?Out@stConsole@@SAXPBDZZ		; stConsole::Out
	add	esp, 12					; 0000000cH

; 256  : }

	ret	0

; 255  : 	stConsole::Out("[ST] SQL Error: %s [%s]\n", this->GetError().GetString(), this->GetLastQuery().GetString());

$LN15@PrintError:
	push	edx
	xor	eax, eax
	push	eax
	push	OFFSET ??_C@_0BJ@KMAJJAOI@?$FLST?$FN?5SQL?5Error?3?5?$CFs?5?$FL?$CFs?$FN?6?$AA@
	call	?Out@stConsole@@SAXPBDZZ		; stConsole::Out
	add	esp, 12					; 0000000cH

; 256  : }

	ret	0
?PrintError@stDbManager@@QAEXXZ ENDP			; stDbManager::PrintError
_TEXT	ENDS
PUBLIC	?deallocate@?$_DebugHeapAllocator@D@std@@QAEXPADI@Z ; std::_DebugHeapAllocator<char>::deallocate
; Function compile flags: /Ogtpy
; File c:\program files (x86)\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	??1?$aVector@PAVgzWeaponDropClass@@@@UAE@XZ	; aVector<gzWeaponDropClass *>::~aVector<gzWeaponDropClass *>
; Function compile flags: /Ogtpy
; File d:\source code\alib\include\avector.h
;	COMDAT ??1?$aVector@PAVgzWeaponDropClass@@@@UAE@XZ
_TEXT	SEGMENT
??1?$aVector@PAVgzWeaponDropClass@@@@UAE@XZ PROC	; aVector<gzWeaponDropClass *>::~aVector<gzWeaponDropClass *>, COMDAT
; _this$ = ecx

; 45   : 	{

	push	esi
	push	edi
	mov	esi, ecx

; 46   : 		this->Clear();

	xor	edi, edi
	cmp	DWORD PTR [esi+4], edi
	mov	DWORD PTR [esi], OFFSET ??_7?$aVector@PAVgzWeaponDropClass@@@@6B@
	je	SHORT $LN8@aVector
	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	73					; 00000049H
	push	OFFSET ??_C@_0CG@EILDPJHO@D?3?2Source?5Code?2aLib?2include?2aVec@
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	mov	eax, DWORD PTR [esi+4]
	push	eax
	call	??_V@YAXPAX@Z				; operator delete[]
	add	esp, 16					; 00000010H
	mov	DWORD PTR [esi+4], edi
$LN8@aVector:
	mov	DWORD PTR [esi+12], edi
	mov	DWORD PTR [esi+8], edi
	pop	edi
	pop	esi

; 47   : 	};

	ret	0
??1?$aVector@PAVgzWeaponDropClass@@@@UAE@XZ ENDP	; aVector<gzWeaponDropClass *>::~aVector<gzWeaponDropClass *>
_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>
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ??_G?$aVector@PAVgzWeaponDropClass@@@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$aVector@PAVgzWeaponDropClass@@@@UAEPAXI@Z PROC	; aVector<gzWeaponDropClass *>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	cmp	DWORD PTR [esi+4], 0
	mov	DWORD PTR [esi], OFFSET ??_7?$aVector@PAVgzWeaponDropClass@@@@6B@
	je	SHORT $LN6@scalar@5
	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	73					; 00000049H
	push	OFFSET ??_C@_0CG@EILDPJHO@D?3?2Source?5Code?2aLib?2include?2aVec@
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	mov	eax, DWORD PTR [esi+4]
	push	eax
	call	??_V@YAXPAX@Z				; operator delete[]
	add	esp, 16					; 00000010H
	mov	DWORD PTR [esi+4], 0
$LN6@scalar@5:
	test	BYTE PTR ___flags$[esp], 1
	mov	DWORD PTR [esi+8], 0
	mov	DWORD PTR [esi+12], 0
	je	SHORT $LN11@scalar@5
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN11@scalar@5:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$aVector@PAVgzWeaponDropClass@@@@UAEPAXI@Z ENDP	; aVector<gzWeaponDropClass *>::`scalar deleting destructor'
_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
PUBLIC	??_7gzWeaponDropManager@@6B@			; gzWeaponDropManager::`vftable'
PUBLIC	??0gzWeaponDropManager@@QAE@XZ			; gzWeaponDropManager::gzWeaponDropManager
PUBLIC	??_R4gzWeaponDropManager@@6B@			; gzWeaponDropManager::`RTTI Complete Object Locator'
PUBLIC	??_R0?AVgzWeaponDropManager@@@8			; gzWeaponDropManager `RTTI Type Descriptor'
PUBLIC	??_R3gzWeaponDropManager@@8			; gzWeaponDropManager::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2gzWeaponDropManager@@8			; gzWeaponDropManager::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@gzWeaponDropManager@@8		; gzWeaponDropManager::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	?GetName@gzWeaponDropManager@@UAEPBDXZ		; gzWeaponDropManager::GetName
PUBLIC	?Level_Loaded@EventHandler@@UAEXXZ		; EventHandler::Level_Loaded
PUBLIC	?Think@EventHandler@@UAEXXZ			; EventHandler::Think
EXTRN	??_EgzWeaponDropManager@@UAEPAXI@Z:PROC		; gzWeaponDropManager::`vector deleting destructor'
EXTRN	?Delete@gzWeaponDropManager@@UAEXXZ:PROC	; gzWeaponDropManager::Delete
;	COMDAT ??_R1A@?0A@EA@gzWeaponDropManager@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@gzWeaponDropManager@@8 DD FLAT:??_R0?AVgzWeaponDropManager@@@8 ; gzWeaponDropManager::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	02H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3gzWeaponDropManager@@8
rdata$r	ENDS
;	COMDAT ??_R2gzWeaponDropManager@@8
rdata$r	SEGMENT
??_R2gzWeaponDropManager@@8 DD FLAT:??_R1A@?0A@EA@gzWeaponDropManager@@8 ; gzWeaponDropManager::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@EventHandler@@8
	DD	FLAT:??_R1A@?0A@EA@gzBase@@8
rdata$r	ENDS
;	COMDAT ??_R3gzWeaponDropManager@@8
rdata$r	SEGMENT
??_R3gzWeaponDropManager@@8 DD 00H			; gzWeaponDropManager::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	03H
	DD	FLAT:??_R2gzWeaponDropManager@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVgzWeaponDropManager@@@8
_DATA	SEGMENT
??_R0?AVgzWeaponDropManager@@@8 DD FLAT:??_7type_info@@6B@ ; gzWeaponDropManager `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVgzWeaponDropManager@@', 00H
_DATA	ENDS
;	COMDAT ??_R4gzWeaponDropManager@@6B@
rdata$r	SEGMENT
??_R4gzWeaponDropManager@@6B@ DD 00H			; gzWeaponDropManager::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVgzWeaponDropManager@@@8
	DD	FLAT:??_R3gzWeaponDropManager@@8
rdata$r	ENDS
;	COMDAT ??_7gzWeaponDropManager@@6B@
CONST	SEGMENT
??_7gzWeaponDropManager@@6B@ DD FLAT:??_R4gzWeaponDropManager@@6B@ ; gzWeaponDropManager::`vftable'
	DD	FLAT:??_EgzWeaponDropManager@@UAEPAXI@Z
	DD	FLAT:?GetName@gzWeaponDropManager@@UAEPBDXZ
	DD	FLAT:?Delete@gzWeaponDropManager@@UAEXXZ
	DD	FLAT:?SetDeletePending@gzBase@@UAEXXZ
	DD	FLAT:?Level_Loaded@EventHandler@@UAEXXZ
	DD	FLAT:?Level_Ended@EventHandler@@UAEXXZ
	DD	FLAT:?Think@EventHandler@@UAEXXZ
	DD	FLAT:?Player_Joined@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z
	DD	FLAT:?Player_Left@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z
	DD	FLAT:?Player_Purchase@EventHandler@@UAEXAAVgzEventPlayerPurchase@@@Z
	DD	FLAT:?Player_BandwidthChange@EventHandler@@UAEXAAVgzEventPlayerBandwidth@@@Z
	DD	FLAT:?Player_Suicide@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z
	DD	FLAT:?Player_TeamChange@EventHandler@@UAEXAAVgzEventPlayerBase@@@Z
	DD	FLAT:?Player_Chat@EventHandler@@UAEXAAVgzEventPlayerChat@@@Z
	DD	FLAT:?Player_Radio@EventHandler@@UAEXAAVgzEventPlayerRadio@@@Z
	DD	FLAT:?Player_SerialHash@EventHandler@@UAEXAAVgzEventPlayerSerialHash@@@Z
	DD	FLAT:?Player_RawDamage@EventHandler@@UAEXAAVgzEventObjectDamage@@@Z
	DD	FLAT:?Object_Created@EventHandler@@UAEXAAVgzEventObjectCreate@@@Z
	DD	FLAT:?Object_Init@EventHandler@@UAEXAAVgzEventObjectInit@@@Z
	DD	FLAT:?Object_Damaged@EventHandler@@UAEXAAVgzEventObjectDamage@@@Z
	DD	FLAT:?Object_Killed@EventHandler@@UAEXAAVgzEventObjectKill@@@Z
	DD	FLAT:?Object_Transition@EventHandler@@UAEXAAVgzEventObjectTransition@@@Z
	DD	FLAT:?Object_JumpStart@EventHandler@@UAEXAAVgzEventObjectJump@@@Z
	DD	FLAT:?Object_JumpComplete@EventHandler@@UAEXAAVgzEventObjectJump@@@Z
	DD	FLAT:?Object_SoldierSquished@EventHandler@@UAEXAAVgzEventObjectKill@@@Z
	DD	FLAT:?Object_C4Creation@EventHandler@@UAEXAAVgzEventObjectC4Creation@@@Z
	DD	FLAT:?Object_C4Detonate@EventHandler@@UAEXAAVgzEventObjectC4Detonation@@@Z
	DD	FLAT:?Object_PowerupGrant@EventHandler@@UAEXAAVgzEventObjectPowerupGrant@@@Z
	DD	FLAT:?Object_Fire@EventHandler@@UAEXAAVgzEventObjectFire@@@Z
	DD	FLAT:?Object_FlipKill@EventHandler@@UAEXAAVgzEventObjectFlipKill@@@Z
	DD	FLAT:?Net_WolPage@EventHandler@@UAEXAAVgzEventNetWolPage@@@Z
	DD	FLAT:?Net_SerialAuth@EventHandler@@UAEXAAVgzEventNetSerialAuth@@@Z
	DD	FLAT:?Bhs_Poke@EventHandler@@UAEXAAVgzEventBhsPoke@@@Z
	DD	FLAT:?Bhs_Version@EventHandler@@UAEXAAVgzEventBhsVersion@@@Z
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ??0gzWeaponDropManager@@QAE@XZ
_TEXT	SEGMENT
??0gzWeaponDropManager@@QAE@XZ PROC			; gzWeaponDropManager::gzWeaponDropManager, COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??0EventHandler@@QAE@XZ			; EventHandler::EventHandler
	mov	DWORD PTR [esi], OFFSET ??_7gzWeaponDropManager@@6B@
	xor	eax, eax
	mov	DWORD PTR [esi+40], eax
	mov	DWORD PTR [esi+44], eax
	mov	DWORD PTR [esi+48], eax
	mov	DWORD PTR [esi+36], OFFSET ??_7?$aVector@PAVgzWeaponDropClass@@@@6B@
	mov	eax, esi
	pop	esi
	ret	0
??0gzWeaponDropManager@@QAE@XZ ENDP			; gzWeaponDropManager::gzWeaponDropManager
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stevent.h
_TEXT	ENDS
;	COMDAT ?Level_Loaded@EventHandler@@UAEXXZ
_TEXT	SEGMENT
?Level_Loaded@EventHandler@@UAEXXZ PROC			; EventHandler::Level_Loaded, COMDAT
; _this$ = ecx

; 62   : 	virtual void Level_Loaded()	{ };

	ret	0
?Level_Loaded@EventHandler@@UAEXXZ ENDP			; EventHandler::Level_Loaded
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?Think@EventHandler@@UAEXXZ
_TEXT	SEGMENT
?Think@EventHandler@@UAEXXZ PROC			; EventHandler::Think, COMDAT
; _this$ = ecx

; 64   : 	virtual void Think() { };

	ret	0
?Think@EventHandler@@UAEXXZ ENDP			; EventHandler::Think
_TEXT	ENDS
PUBLIC	??_C@_0BE@MPKGLIIB@gzWeaponDropManager?$AA@	; `string'
;	COMDAT ??_C@_0BE@MPKGLIIB@gzWeaponDropManager?$AA@
; File d:\source code\stgm\stweapon.h
CONST	SEGMENT
??_C@_0BE@MPKGLIIB@gzWeaponDropManager?$AA@ DB 'gzWeaponDropManager', 00H ; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?GetName@gzWeaponDropManager@@UAEPBDXZ
_TEXT	SEGMENT
?GetName@gzWeaponDropManager@@UAEPBDXZ PROC		; gzWeaponDropManager::GetName, COMDAT
; _this$ = ecx

; 220  : 		return "gzWeaponDropManager";

	mov	eax, OFFSET ??_C@_0BE@MPKGLIIB@gzWeaponDropManager?$AA@

; 221  : 	};

	ret	0
?GetName@gzWeaponDropManager@@UAEPBDXZ ENDP		; gzWeaponDropManager::GetName
_TEXT	ENDS
PUBLIC	??1gzWeaponDropManager@@UAE@XZ			; gzWeaponDropManager::~gzWeaponDropManager
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1gzWeaponDropManager@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1gzWeaponDropManager@@UAE@XZ$0
__ehfuncinfo$??1gzWeaponDropManager@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1gzWeaponDropManager@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??1gzWeaponDropManager@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1gzWeaponDropManager@@UAE@XZ PROC			; gzWeaponDropManager::~gzWeaponDropManager, COMDAT
; _this$ = ecx
	push	-1
	push	__ehhandler$??1gzWeaponDropManager@@UAE@XZ
	mov	eax, DWORD PTR fs:0
	push	eax
	mov	DWORD PTR fs:0, esp
	push	ecx
	push	esi
	mov	esi, ecx
	push	edi
	mov	DWORD PTR _this$[esp+24], esi
	xor	edi, edi
	cmp	DWORD PTR [esi+40], edi
	mov	DWORD PTR __$EHRec$[esp+32], edi
	mov	DWORD PTR [esi+36], OFFSET ??_7?$aVector@PAVgzWeaponDropClass@@@@6B@
	je	SHORT $LN7@gzWeaponDr
	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	73					; 00000049H
	push	OFFSET ??_C@_0CG@EILDPJHO@D?3?2Source?5Code?2aLib?2include?2aVec@
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	mov	eax, DWORD PTR [esi+40]
	push	eax
	call	??_V@YAXPAX@Z				; operator delete[]
	add	esp, 16					; 00000010H
	mov	DWORD PTR [esi+40], edi
$LN7@gzWeaponDr:
	mov	ecx, esi
	mov	DWORD PTR [esi+44], edi
	mov	DWORD PTR [esi+48], edi
	mov	DWORD PTR __$EHRec$[esp+32], -1
	call	??1EventHandler@@UAE@XZ			; EventHandler::~EventHandler
	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	pop	edi
	pop	esi
	mov	DWORD PTR fs:0, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1gzWeaponDropManager@@UAE@XZ$0:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1EventHandler@@UAE@XZ			; EventHandler::~EventHandler
__ehhandler$??1gzWeaponDropManager@@UAE@XZ:
	mov	eax, OFFSET __ehfuncinfo$??1gzWeaponDropManager@@UAE@XZ
	jmp	___CxxFrameHandler3
text$x	ENDS
??1gzWeaponDropManager@@UAE@XZ ENDP			; gzWeaponDropManager::~gzWeaponDropManager
PUBLIC	??1gzUnloadClass@@QAE@XZ			; gzUnloadClass::~gzUnloadClass
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stmanager.cpp
;	COMDAT ??1gzUnloadClass@@QAE@XZ
_TEXT	SEGMENT
??1gzUnloadClass@@QAE@XZ PROC				; gzUnloadClass::~gzUnloadClass, COMDAT
; _this$ = ecx

; 150  : 	if (gzManagerClass::m_initial)

	cmp	BYTE PTR ?m_initial@gzManagerClass@@2_NA, 0 ; gzManagerClass::m_initial
	je	SHORT $LN5@gzUnloadCl

; 151  : 	{
; 152  : 		if (gzInit)

	cmp	DWORD PTR ?gzInit@@3PAVgzInitClass@@A, 0 ; gzInit
	je	SHORT $LN5@gzUnloadCl
	push	esi

; 153  : 			delete gzInit;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	153					; 00000099H
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	mov	ecx, DWORD PTR ?gzInit@@3PAVgzInitClass@@A ; gzInit
	add	esp, 12					; 0000000cH
	test	ecx, ecx
	mov	esi, ecx
	je	SHORT $LN12@gzUnloadCl
	call	??1gzInitClass@@QAE@XZ			; gzInitClass::~gzInitClass
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN12@gzUnloadCl:
	pop	esi
$LN5@gzUnloadCl:

; 154  : 	}
; 155  : }

	ret	0
??1gzUnloadClass@@QAE@XZ ENDP				; gzUnloadClass::~gzUnloadClass
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ??_GstDbManager@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GstDbManager@@UAEPAXI@Z PROC				; stDbManager::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1stDbManager@@UAE@XZ			; stDbManager::~stDbManager
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $LN4@scalar@6
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN4@scalar@6:
	mov	eax, esi
	pop	esi
	ret	4
??_GstDbManager@@UAEPAXI@Z ENDP				; stDbManager::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??_C@_0CJ@MJAEEDJH@?$CFs?5successfully?5loaded?5?9?5Built?5o@ ; `string'
PUBLIC	??_C@_0M@EFMPBKOB@Apr?5?56?52010?$AA@		; `string'
PUBLIC	??_C@_08NIJNOLNK@11?308?327?$AA@		; `string'
PUBLIC	??_C@_0BA@PFKMLDGB@?$FLSTGM?$FN?5?$CFd?4?$CFd?4?$CFd?$AA@ ; `string'
PUBLIC	??_C@_0O@CMJPPFDF@RemoveKeyHook?$AA@		; `string'
PUBLIC	??_C@_0L@BFCNNHMC@AddKeyHook?$AA@		; `string'
PUBLIC	??_C@_0BJ@BHPFPCAI@New_Display_Float_Player?$AA@ ; `string'
PUBLIC	??_C@_0BH@EMLDPBJE@New_Display_Int_Player?$AA@	; `string'
PUBLIC	??_C@_0BI@BIGCCHLL@New_Display_Text_Player?$AA@	; `string'
PUBLIC	??_C@_0BP@BNBMIEKM@New_Create_2D_WAV_Sound_Player?$AA@ ; `string'
PUBLIC	??_C@_0O@COMKEHBD@New_Set_Model?$AA@		; `string'
PUBLIC	??_C@_0BB@MNJLFKNF@New_Shake_Camera?$AA@	; `string'
PUBLIC	??_C@_0BC@NCKGKIKH@New_Select_Weapon?$AA@	; `string'
PUBLIC	??_C@_0BA@OLJFNGPH@New_Display_Int?$AA@		; `string'
PUBLIC	??_C@_0BC@DKIFMHMA@New_Display_Float?$AA@	; `string'
PUBLIC	??_C@_0BB@COAKGDMN@New_Display_Text?$AA@	; `string'
PUBLIC	??_C@_0BG@IEMOFMGB@New_Set_Display_Color?$AA@	; `string'
PUBLIC	??_C@_0BM@LAKGIHPF@New_Set_Screen_Fade_Opacity?$AA@ ; `string'
PUBLIC	??_C@_0BK@FDMKHFBH@New_Set_Screen_Fade_Color?$AA@ ; `string'
PUBLIC	??_C@_0BE@ONIFHAHC@New_Set_Player_Type?$AA@	; `string'
PUBLIC	??_C@_0BP@HAHCDGEG@New_Enable_Vehicle_Transitions?$AA@ ; `string'
PUBLIC	??_C@_0BC@KOFDDJA@New_Clear_Weapons?$AA@	; `string'
PUBLIC	??_C@_0BP@JPAENPMP@New_Play_Building_Announcement?$AA@ ; `string'
PUBLIC	??_C@_0BM@NEPOFEN@New_Create_3D_Sound_At_Bone?$AA@ ; `string'
PUBLIC	??_C@_0CA@COANFJBN@New_Create_3D_WAV_Sound_At_Bone?$AA@ ; `string'
PUBLIC	??_C@_0BI@HGKHHIKA@New_Create_2D_WAV_Sound?$AA@	; `string'
PUBLIC	??_C@_0BE@OHJEGAJE@New_Create_2D_Sound?$AA@	; `string'
PUBLIC	??_C@_0BB@DMKAPJOM@New_Create_Sound?$AA@	; `string'
PUBLIC	??_C@_0BK@GHEGIDEJ@New_Stop_Background_Music?$AA@ ; `string'
PUBLIC	??_C@_0BJ@CHDMIIDC@New_Set_Background_Music?$AA@ ; `string'
PUBLIC	??_C@_0BK@FMEFIGMJ@New_Fade_Background_Music?$AA@ ; `string'
PUBLIC	??_C@_0BC@DFFBEOEP@New_Set_War_Blitz?$AA@	; `string'
PUBLIC	??_C@_0BC@LEAPKNGA@New_Set_Fog_Range?$AA@	; `string'
PUBLIC	??_C@_0BD@LMPMLNOO@New_Set_Fog_Enable?$AA@	; `string'
PUBLIC	??_C@_0BN@FMOGPLMC@New_Create_Explosion_At_Bone?$AA@ ; `string'
PUBLIC	??_C@_0BF@LANEKPIK@New_Create_Explosion?$AA@	; `string'
PUBLIC	??_C@_0BD@CEDCHKBB@New_Enable_Stealth?$AA@	; `string'
PUBLIC	??_C@_0EH@JNCKDNLE@?$FLWarning?$FN?5Unable?5to?5get?5the?5offs@ ; `string'
PUBLIC	??_C@_0BA@ICBJGPDH@GetExplosionObj?$AA@		; `string'
PUBLIC	??_C@_07HPMMBNGD@bhs?4dll?$AA@			; `string'
PUBLIC	??0gzInitClass@@QAE@XZ				; gzInitClass::gzInitClass
EXTRN	?Printf@aString@@QAAXPBDZZ:PROC			; aString::Printf
EXTRN	__imp__SetUnhandledExceptionFilter@4:PROC
EXTRN	?gzVeteranMgr@@3PAVgzVeteranManagerClass@@A:DWORD ; gzVeteranMgr
EXTRN	??0gzVeteranManagerClass@@QAE@XZ:PROC		; gzVeteranManagerClass::gzVeteranManagerClass
EXTRN	?gzGameSpyQueryMgr@@3PAVgzGameSpyQueryManager@@A:DWORD ; gzGameSpyQueryMgr
EXTRN	??0gzGameSpyQueryManager@@QAE@XZ:PROC		; gzGameSpyQueryManager::gzGameSpyQueryManager
EXTRN	?gzTibCrystalMgr@@3PAVgzTibCrystalManager@@A:DWORD ; gzTibCrystalMgr
EXTRN	??0gzTibCrystalManager@@QAE@XZ:PROC		; gzTibCrystalManager::gzTibCrystalManager
EXTRN	?gzWeaponDropMgr@@3PAVgzWeaponDropManager@@A:DWORD ; gzWeaponDropMgr
EXTRN	?gzAntiCheatMgr@@3PAVgzAntiCheatManager@@A:DWORD ; gzAntiCheatMgr
EXTRN	??0gzAntiCheatManager@@QAE@XZ:PROC		; gzAntiCheatManager::gzAntiCheatManager
EXTRN	?gzTeamCommander@@3PAVgzTeamCommanderClass@@A:DWORD ; gzTeamCommander
EXTRN	??0gzTeamCommanderClass@@QAE@XZ:PROC		; gzTeamCommanderClass::gzTeamCommanderClass
EXTRN	?gzSerialMgr@@3PAVgzSerialManager@@A:DWORD	; gzSerialMgr
EXTRN	??0gzSerialManager@@QAE@XZ:PROC			; gzSerialManager::gzSerialManager
EXTRN	?gzCrateMgr@@3PAVgzManagerCrateClass@@A:DWORD	; gzCrateMgr
EXTRN	??0gzManagerCrateClass@@QAE@XZ:PROC		; gzManagerCrateClass::gzManagerCrateClass
EXTRN	?gzWeaponMgr@@3PAVgzWeaponManager@@A:DWORD	; gzWeaponMgr
EXTRN	??0gzWeaponManager@@QAE@XZ:PROC			; gzWeaponManager::gzWeaponManager
EXTRN	?gzTestZoneMgr@@3PAVgzTestZoneManager@@A:DWORD	; gzTestZoneMgr
EXTRN	??0gzTestZoneManager@@QAE@XZ:PROC		; gzTestZoneManager::gzTestZoneManager
EXTRN	?gzPlayerMgr@@3PAVgzPlayerManager@@A:DWORD	; gzPlayerMgr
EXTRN	??0gzPlayerManager@@QAE@XZ:PROC			; gzPlayerManager::gzPlayerManager
EXTRN	?gzVehicleMgr@@3PAVgzManagerVehicle@@A:DWORD	; gzVehicleMgr
EXTRN	??0gzManagerVehicle@@QAE@XZ:PROC		; gzManagerVehicle::gzManagerVehicle
EXTRN	?gzChat@@3PAVgzChatManagerClass@@A:DWORD	; gzChat
EXTRN	??0gzChatManagerClass@@QAE@XZ:PROC		; gzChatManagerClass::gzChatManagerClass
EXTRN	?gzTranslator@@3PAVgzTranslateManager@@A:DWORD	; gzTranslator
EXTRN	??0gzTranslateManager@@QAE@XZ:PROC		; gzTranslateManager::gzTranslateManager
EXTRN	?gzGameMgr@@3PAVgzGameManager@@A:DWORD		; gzGameMgr
EXTRN	??0gzGameManager@@QAE@XZ:PROC			; gzGameManager::gzGameManager
EXTRN	?gzSettingsMgr@@3PAVgzSettingsManager@@A:DWORD	; gzSettingsMgr
EXTRN	??0gzSettingsManager@@QAE@XZ:PROC		; gzSettingsManager::gzSettingsManager
EXTRN	??2@YAPAXI@Z:PROC				; operator new
EXTRN	?m_eventTypeSort@EventManager@@2PAY0M@_NA:BYTE	; EventManager::m_eventTypeSort
EXTRN	?gzRemoveKeyHook@@3P6AXH@ZA:DWORD		; gzRemoveKeyHook
EXTRN	?gzAddKeyHook@@3P6AHPAUgzKeyHookStruct@@@ZA:DWORD ; gzAddKeyHook
EXTRN	?gzDisplay_Float_Player@@3P6AXPAVnc_ScriptableGameObj@@MPBD@ZA:DWORD ; gzDisplay_Float_Player
EXTRN	?gzDisplay_Int_Player@@3P6AXPAVnc_ScriptableGameObj@@HPBD@ZA:DWORD ; gzDisplay_Int_Player
EXTRN	?gzDisplay_Text_Player@@3P6AXPAVnc_ScriptableGameObj@@H@ZA:DWORD ; gzDisplay_Text_Player
EXTRN	?gzCreate_2D_WAV_Sound_Player@@3P6AHPAVnc_ScriptableGameObj@@PBD@ZA:DWORD ; gzCreate_2D_WAV_Sound_Player
EXTRN	?gzCommands@@3PAUnc_ScriptCommands@@A:DWORD	; gzCommands
EXTRN	__imp__GetProcAddress@8:PROC
EXTRN	__imp__LoadLibraryA@4:PROC
EXTRN	_memset:PROC
;	COMDAT ??_C@_0CJ@MJAEEDJH@?$CFs?5successfully?5loaded?5?9?5Built?5o@
; File d:\source code\alib\include\astring.h
CONST	SEGMENT
??_C@_0CJ@MJAEEDJH@?$CFs?5successfully?5loaded?5?9?5Built?5o@ DB '%s succ'
	DB	'essfully loaded - Built on %s %s', 0aH, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_0M@EFMPBKOB@Apr?5?56?52010?$AA@
CONST	SEGMENT
??_C@_0M@EFMPBKOB@Apr?5?56?52010?$AA@ DB 'Apr  6 2010', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_08NIJNOLNK@11?308?327?$AA@
CONST	SEGMENT
??_C@_08NIJNOLNK@11?308?327?$AA@ DB '11:08:27', 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_0BA@PFKMLDGB@?$FLSTGM?$FN?5?$CFd?4?$CFd?4?$CFd?$AA@
CONST	SEGMENT
??_C@_0BA@PFKMLDGB@?$FLSTGM?$FN?5?$CFd?4?$CFd?4?$CFd?$AA@ DB '[STGM] %d.%'
	DB	'd.%d', 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_0O@CMJPPFDF@RemoveKeyHook?$AA@
CONST	SEGMENT
??_C@_0O@CMJPPFDF@RemoveKeyHook?$AA@ DB 'RemoveKeyHook', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0L@BFCNNHMC@AddKeyHook?$AA@
CONST	SEGMENT
??_C@_0L@BFCNNHMC@AddKeyHook?$AA@ DB 'AddKeyHook', 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_0BJ@BHPFPCAI@New_Display_Float_Player?$AA@
CONST	SEGMENT
??_C@_0BJ@BHPFPCAI@New_Display_Float_Player?$AA@ DB 'New_Display_Float_Pl'
	DB	'ayer', 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_0BH@EMLDPBJE@New_Display_Int_Player?$AA@
CONST	SEGMENT
??_C@_0BH@EMLDPBJE@New_Display_Int_Player?$AA@ DB 'New_Display_Int_Player'
	DB	00H						; `string'
CONST	ENDS
;	COMDAT ??_C@_0BI@BIGCCHLL@New_Display_Text_Player?$AA@
CONST	SEGMENT
??_C@_0BI@BIGCCHLL@New_Display_Text_Player?$AA@ DB 'New_Display_Text_Play'
	DB	'er', 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_0BP@BNBMIEKM@New_Create_2D_WAV_Sound_Player?$AA@
CONST	SEGMENT
??_C@_0BP@BNBMIEKM@New_Create_2D_WAV_Sound_Player?$AA@ DB 'New_Create_2D_'
	DB	'WAV_Sound_Player', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_0O@COMKEHBD@New_Set_Model?$AA@
CONST	SEGMENT
??_C@_0O@COMKEHBD@New_Set_Model?$AA@ DB 'New_Set_Model', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BB@MNJLFKNF@New_Shake_Camera?$AA@
CONST	SEGMENT
??_C@_0BB@MNJLFKNF@New_Shake_Camera?$AA@ DB 'New_Shake_Camera', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BC@NCKGKIKH@New_Select_Weapon?$AA@
CONST	SEGMENT
??_C@_0BC@NCKGKIKH@New_Select_Weapon?$AA@ DB 'New_Select_Weapon', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BA@OLJFNGPH@New_Display_Int?$AA@
CONST	SEGMENT
??_C@_0BA@OLJFNGPH@New_Display_Int?$AA@ DB 'New_Display_Int', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BC@DKIFMHMA@New_Display_Float?$AA@
CONST	SEGMENT
??_C@_0BC@DKIFMHMA@New_Display_Float?$AA@ DB 'New_Display_Float', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BB@COAKGDMN@New_Display_Text?$AA@
CONST	SEGMENT
??_C@_0BB@COAKGDMN@New_Display_Text?$AA@ DB 'New_Display_Text', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BG@IEMOFMGB@New_Set_Display_Color?$AA@
CONST	SEGMENT
??_C@_0BG@IEMOFMGB@New_Set_Display_Color?$AA@ DB 'New_Set_Display_Color', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BM@LAKGIHPF@New_Set_Screen_Fade_Opacity?$AA@
CONST	SEGMENT
??_C@_0BM@LAKGIHPF@New_Set_Screen_Fade_Opacity?$AA@ DB 'New_Set_Screen_Fa'
	DB	'de_Opacity', 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_0BK@FDMKHFBH@New_Set_Screen_Fade_Color?$AA@
CONST	SEGMENT
??_C@_0BK@FDMKHFBH@New_Set_Screen_Fade_Color?$AA@ DB 'New_Set_Screen_Fade'
	DB	'_Color', 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_0BE@ONIFHAHC@New_Set_Player_Type?$AA@
CONST	SEGMENT
??_C@_0BE@ONIFHAHC@New_Set_Player_Type?$AA@ DB 'New_Set_Player_Type', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BP@HAHCDGEG@New_Enable_Vehicle_Transitions?$AA@
CONST	SEGMENT
??_C@_0BP@HAHCDGEG@New_Enable_Vehicle_Transitions?$AA@ DB 'New_Enable_Veh'
	DB	'icle_Transitions', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_0BC@KOFDDJA@New_Clear_Weapons?$AA@
CONST	SEGMENT
??_C@_0BC@KOFDDJA@New_Clear_Weapons?$AA@ DB 'New_Clear_Weapons', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BP@JPAENPMP@New_Play_Building_Announcement?$AA@
CONST	SEGMENT
??_C@_0BP@JPAENPMP@New_Play_Building_Announcement?$AA@ DB 'New_Play_Build'
	DB	'ing_Announcement', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_0BM@NEPOFEN@New_Create_3D_Sound_At_Bone?$AA@
CONST	SEGMENT
??_C@_0BM@NEPOFEN@New_Create_3D_Sound_At_Bone?$AA@ DB 'New_Create_3D_Soun'
	DB	'd_At_Bone', 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_0CA@COANFJBN@New_Create_3D_WAV_Sound_At_Bone?$AA@
CONST	SEGMENT
??_C@_0CA@COANFJBN@New_Create_3D_WAV_Sound_At_Bone?$AA@ DB 'New_Create_3D'
	DB	'_WAV_Sound_At_Bone', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_0BI@HGKHHIKA@New_Create_2D_WAV_Sound?$AA@
CONST	SEGMENT
??_C@_0BI@HGKHHIKA@New_Create_2D_WAV_Sound?$AA@ DB 'New_Create_2D_WAV_Sou'
	DB	'nd', 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_0BE@OHJEGAJE@New_Create_2D_Sound?$AA@
CONST	SEGMENT
??_C@_0BE@OHJEGAJE@New_Create_2D_Sound?$AA@ DB 'New_Create_2D_Sound', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BB@DMKAPJOM@New_Create_Sound?$AA@
CONST	SEGMENT
??_C@_0BB@DMKAPJOM@New_Create_Sound?$AA@ DB 'New_Create_Sound', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BK@GHEGIDEJ@New_Stop_Background_Music?$AA@
CONST	SEGMENT
??_C@_0BK@GHEGIDEJ@New_Stop_Background_Music?$AA@ DB 'New_Stop_Background'
	DB	'_Music', 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_0BJ@CHDMIIDC@New_Set_Background_Music?$AA@
CONST	SEGMENT
??_C@_0BJ@CHDMIIDC@New_Set_Background_Music?$AA@ DB 'New_Set_Background_M'
	DB	'usic', 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_0BK@FMEFIGMJ@New_Fade_Background_Music?$AA@
CONST	SEGMENT
??_C@_0BK@FMEFIGMJ@New_Fade_Background_Music?$AA@ DB 'New_Fade_Background'
	DB	'_Music', 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_0BC@DFFBEOEP@New_Set_War_Blitz?$AA@
CONST	SEGMENT
??_C@_0BC@DFFBEOEP@New_Set_War_Blitz?$AA@ DB 'New_Set_War_Blitz', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BC@LEAPKNGA@New_Set_Fog_Range?$AA@
CONST	SEGMENT
??_C@_0BC@LEAPKNGA@New_Set_Fog_Range?$AA@ DB 'New_Set_Fog_Range', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BD@LMPMLNOO@New_Set_Fog_Enable?$AA@
CONST	SEGMENT
??_C@_0BD@LMPMLNOO@New_Set_Fog_Enable?$AA@ DB 'New_Set_Fog_Enable', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BN@FMOGPLMC@New_Create_Explosion_At_Bone?$AA@
CONST	SEGMENT
??_C@_0BN@FMOGPLMC@New_Create_Explosion_At_Bone?$AA@ DB 'New_Create_Explo'
	DB	'sion_At_Bone', 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_0BF@LANEKPIK@New_Create_Explosion?$AA@
CONST	SEGMENT
??_C@_0BF@LANEKPIK@New_Create_Explosion?$AA@ DB 'New_Create_Explosion', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BD@CEDCHKBB@New_Enable_Stealth?$AA@
CONST	SEGMENT
??_C@_0BD@CEDCHKBB@New_Enable_Stealth?$AA@ DB 'New_Enable_Stealth', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0EH@JNCKDNLE@?$FLWarning?$FN?5Unable?5to?5get?5the?5offs@
CONST	SEGMENT
??_C@_0EH@JNCKDNLE@?$FLWarning?$FN?5Unable?5to?5get?5the?5offs@ DB '[Warn'
	DB	'ing] Unable to get the offset of "GetExplosionObj" from bhs.d'
	DB	'll.', 0aH, 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_0BA@ICBJGPDH@GetExplosionObj?$AA@
CONST	SEGMENT
??_C@_0BA@ICBJGPDH@GetExplosionObj?$AA@ DB 'GetExplosionObj', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_07HPMMBNGD@bhs?4dll?$AA@
CONST	SEGMENT
??_C@_07HPMMBNGD@bhs?4dll?$AA@ DB 'bhs.dll', 00H	; `string'
CONST	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__ehfuncinfo$??0gzInitClass@@QAE@XZ DD 019930522H
	DD	012H
	DD	FLAT:__unwindtable$??0gzInitClass@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
__unwindtable$??0gzInitClass@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$1
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$2
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$3
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$4
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$5
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$6
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$7
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$8
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$9
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$10
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$11
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$12
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$13
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$14
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$15
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$16
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$??0gzInitClass@@QAE@XZ$17
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stmanager.cpp
xdata$x	ENDS
;	COMDAT ??0gzInitClass@@QAE@XZ
_TEXT	SEGMENT
$T70994 = -16						; size = 4
$T70988 = -16						; size = 4
$T70982 = -16						; size = 4
$T70976 = -16						; size = 4
$T70970 = -16						; size = 4
$T70964 = -16						; size = 4
$T70958 = -16						; size = 4
$T70952 = -16						; size = 4
$T70946 = -16						; size = 4
$T70940 = -16						; size = 4
$T70934 = -16						; size = 4
$T70928 = -16						; size = 4
$T70922 = -16						; size = 4
$T70916 = -16						; size = 4
$T70910 = -16						; size = 4
$T70904 = -16						; size = 4
$T70898 = -16						; size = 4
$T70892 = -16						; size = 4
__$EHRec$ = -12						; size = 12
??0gzInitClass@@QAE@XZ PROC				; gzInitClass::gzInitClass, COMDAT
; _this$ = ecx

; 26   : {

	push	-1
	push	__ehhandler$??0gzInitClass@@QAE@XZ
	mov	eax, DWORD PTR fs:0
	push	eax
	mov	DWORD PTR fs:0, esp
	push	ecx
	push	ebx
	push	ebp
	push	esi
	push	edi

; 27   : 	HMODULE bhs = LoadLibrary("bhs.dll");

	push	OFFSET ??_C@_07HPMMBNGD@bhs?4dll?$AA@
	mov	ebp, ecx
	call	DWORD PTR __imp__LoadLibraryA@4
	mov	esi, eax

; 28   : 	if (bhs)

	xor	ebx, ebx
	cmp	esi, ebx
	je	$LN9@gzInitClas@2

; 29   : 	{
; 30   : 		unsigned long GetExplosionAddr = (unsigned long)GetProcAddress(bhs, "GetExplosionObj");

	mov	edi, DWORD PTR __imp__GetProcAddress@8
	push	OFFSET ??_C@_0BA@ICBJGPDH@GetExplosionObj?$AA@
	push	esi
	call	edi

; 31   : 		if (GetExplosionAddr)

	cmp	eax, ebx
	je	SHORT $LN8@gzInitClas@2

; 32   : 			gzManagerClass::m_ExplosionObj = *(nc_ScriptableGameObj **)(GetExplosionAddr + 1);

	mov	eax, DWORD PTR [eax+1]
	mov	DWORD PTR ?m_ExplosionObj@gzManagerClass@@2PAVnc_ScriptableGameObj@@A, eax ; gzManagerClass::m_ExplosionObj

; 33   : 		else

	jmp	SHORT $LN7@gzInitClas@2
$LN8@gzInitClas@2:

; 34   : 			stConsole::Out("[Warning] Unable to get the offset of \"GetExplosionObj\" from bhs.dll.\n");

	push	OFFSET ??_C@_0EH@JNCKDNLE@?$FLWarning?$FN?5Unable?5to?5get?5the?5offs@
	call	?Out@stConsole@@SAXPBDZZ		; stConsole::Out
	add	esp, 4
$LN7@gzInitClas@2:

; 35   : 
; 36   : 		// Commands replacement
; 37   : 		gzCommands->Enable_Stealth = (_nc_Enable_Stealth)GetProcAddress(bhs, "New_Enable_Stealth");

	push	OFFSET ??_C@_0BD@CEDCHKBB@New_Enable_Stealth?$AA@
	push	esi
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 38   : 		gzCommands->Create_Explosion = (_nc_Create_Explosion)GetProcAddress(bhs, "New_Create_Explosion");

	push	OFFSET ??_C@_0BF@LANEKPIK@New_Create_Explosion?$AA@
	push	esi
	mov	DWORD PTR [ecx+708], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 39   : 		gzCommands->Create_Explosion_At_Bone = (_nc_Create_Explosion_At_Bone)GetProcAddress(bhs, "New_Create_Explosion_At_Bone");

	push	OFFSET ??_C@_0BN@FMOGPLMC@New_Create_Explosion_At_Bone?$AA@
	push	esi
	mov	DWORD PTR [edx+416], eax
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 40   : 		gzCommands->Set_Fog_Enable = (_nc_Set_Fog_Enable)GetProcAddress(bhs, "New_Set_Fog_Enable");

	push	OFFSET ??_C@_0BD@LMPMLNOO@New_Set_Fog_Enable?$AA@
	push	esi
	mov	DWORD PTR [ecx+420], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 41   : 		gzCommands->Set_Fog_Range = (_nc_Set_Fog_Range)GetProcAddress(bhs, "New_Set_Fog_Range");

	push	OFFSET ??_C@_0BC@LEAPKNGA@New_Set_Fog_Range?$AA@
	push	esi
	mov	DWORD PTR [edx+700], eax
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 42   : 		gzCommands->Set_War_Blitz = (_nc_Set_War_Blitz)GetProcAddress(bhs, "New_Set_War_Blitz");

	push	OFFSET ??_C@_0BC@DFFBEOEP@New_Set_War_Blitz?$AA@
	push	esi
	mov	DWORD PTR [ecx+704], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 43   : 		gzCommands->Fade_Background_Music = (_nc_Fade_Background_Music)GetProcAddress(bhs, "New_Fade_Background_Music");

	push	OFFSET ??_C@_0BK@FMEFIGMJ@New_Fade_Background_Music?$AA@
	push	esi
	mov	DWORD PTR [edx+680], eax
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 44   : 		gzCommands->Set_Background_Music = (_nc_Set_Background_Music)GetProcAddress(bhs, "New_Set_Background_Music");

	push	OFFSET ??_C@_0BJ@CHDMIIDC@New_Set_Background_Music?$AA@
	push	esi
	mov	DWORD PTR [ecx+212], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 45   : 		gzCommands->Stop_Background_Music = (_nc_Stop_Background_Music)GetProcAddress(bhs, "New_Stop_Background_Music");

	push	OFFSET ??_C@_0BK@GHEGIDEJ@New_Stop_Background_Music?$AA@
	push	esi
	mov	DWORD PTR [edx+208], eax
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 46   : 		gzCommands->Stop_Background_Music = (_nc_Stop_Background_Music)GetProcAddress(bhs, "New_Stop_Background_Music");

	push	OFFSET ??_C@_0BK@GHEGIDEJ@New_Stop_Background_Music?$AA@
	push	esi
	mov	DWORD PTR [ecx+216], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 47   : 		gzCommands->Create_Sound = (_nc_Create_Sound)GetProcAddress(bhs, "New_Create_Sound");

	push	OFFSET ??_C@_0BB@DMKAPJOM@New_Create_Sound?$AA@
	push	esi
	mov	DWORD PTR [edx+216], eax
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 48   : 		gzCommands->Create_2D_Sound = (_nc_Create_2D_Sound)GetProcAddress(bhs, "New_Create_2D_Sound");

	push	OFFSET ??_C@_0BE@OHJEGAJE@New_Create_2D_Sound?$AA@
	push	esi
	mov	DWORD PTR [ecx+172], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 49   : 		gzCommands->Create_2D_WAV_Sound = (_nc_Create_2D_WAV_Sound)GetProcAddress(bhs, "New_Create_2D_WAV_Sound");

	push	OFFSET ??_C@_0BI@HGKHHIKA@New_Create_2D_WAV_Sound?$AA@
	push	esi
	mov	DWORD PTR [edx+176], eax
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 50   : 		gzCommands->Create_3D_WAV_Sound_At_Bone = (_nc_Create_3D_WAV_Sound_At_Bone)GetProcAddress(bhs, "New_Create_3D_WAV_Sound_At_Bone");

	push	OFFSET ??_C@_0CA@COANFJBN@New_Create_3D_WAV_Sound_At_Bone?$AA@
	push	esi
	mov	DWORD PTR [ecx+180], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 51   : 		gzCommands->Create_3D_Sound_At_Bone = (_nc_Create_3D_Sound_At_Bone)GetProcAddress(bhs, "New_Create_3D_Sound_At_Bone");

	push	OFFSET ??_C@_0BM@NEPOFEN@New_Create_3D_Sound_At_Bone?$AA@
	push	esi
	mov	DWORD PTR [edx+184], eax
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 52   : 		gzCommands->Play_Building_Announcement = (_nc_Play_Building_Announcement)GetProcAddress(bhs, "New_Play_Building_Announcement");

	push	OFFSET ??_C@_0BP@JPAENPMP@New_Play_Building_Announcement?$AA@
	push	esi
	mov	DWORD PTR [ecx+188], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands
	mov	DWORD PTR [edx+656], eax

; 53   : 		gzCommands->Clear_Weapons = (_nc_Clear_Weapons)GetProcAddress(bhs, "New_Clear_Weapons");

	push	OFFSET ??_C@_0BC@KOFDDJA@New_Clear_Weapons?$AA@
	push	esi
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 54   : 		gzCommands->Enable_Vehicle_Transitions = (_nc_Enable_Vehicle_Transitions)GetProcAddress(bhs, "New_Enable_Vehicle_Transitions");

	push	OFFSET ??_C@_0BP@HAHCDGEG@New_Enable_Vehicle_Transitions?$AA@
	push	esi
	mov	DWORD PTR [ecx+796], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 55   : 		gzCommands->Set_Player_Type = (_nc_Set_Player_Type)GetProcAddress(bhs, "New_Set_Player_Type");

	push	OFFSET ??_C@_0BE@ONIFHAHC@New_Set_Player_Type?$AA@
	push	esi
	mov	DWORD PTR [edx+728], eax
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 56   : 		gzCommands->Set_Screen_Fade_Color = (_nc_Set_Screen_Fade_Color)GetProcAddress(bhs, "New_Set_Screen_Fade_Color");

	push	OFFSET ??_C@_0BK@FDMKHFBH@New_Set_Screen_Fade_Color?$AA@
	push	esi
	mov	DWORD PTR [ecx+252], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 57   : 		gzCommands->Set_Screen_Fade_Opacity = (_nc_Set_Screen_Fade_Opacity)GetProcAddress(bhs, "New_Set_Screen_Fade_Opacity");

	push	OFFSET ??_C@_0BM@LAKGIHPF@New_Set_Screen_Fade_Opacity?$AA@
	push	esi
	mov	DWORD PTR [edx+808], eax
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 58   : 		gzCommands->Set_Display_Color = (_nc_Set_Display_Color)GetProcAddress(bhs, "New_Set_Display_Color");

	push	OFFSET ??_C@_0BG@IEMOFMGB@New_Set_Display_Color?$AA@
	push	esi
	mov	DWORD PTR [ecx+812], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 59   : 		gzCommands->Display_Text = (_nc_Display_Text)GetProcAddress(bhs, "New_Display_Text");

	push	OFFSET ??_C@_0BB@COAKGDMN@New_Display_Text?$AA@
	push	esi
	mov	DWORD PTR [edx+304], eax
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 60   : 		gzCommands->Display_Float = (_nc_Display_Float)GetProcAddress(bhs, "New_Display_Float");

	push	OFFSET ??_C@_0BC@DKIFMHMA@New_Display_Float?$AA@
	push	esi
	mov	DWORD PTR [ecx+308], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 61   : 		gzCommands->Display_Int = (_nc_Display_Int)GetProcAddress(bhs, "New_Display_Int");

	push	OFFSET ??_C@_0BA@OLJFNGPH@New_Display_Int?$AA@
	push	esi
	mov	DWORD PTR [edx+312], eax
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 62   : 		gzCommands->Select_Weapon = (_nc_Select_Weapon)GetProcAddress(bhs, "New_Select_Weapon");

	push	OFFSET ??_C@_0BC@NCKGKIKH@New_Select_Weapon?$AA@
	push	esi
	mov	DWORD PTR [ecx+316], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 63   : 		gzCommands->Shake_Camera = (_nc_Shake_Camera)GetProcAddress(bhs, "New_Shake_Camera");

	push	OFFSET ??_C@_0BB@MNJLFKNF@New_Shake_Camera?$AA@
	push	esi
	mov	DWORD PTR [edx+136], eax
	call	edi
	mov	ecx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 64   : 		gzCommands->Set_Model = (_nc_Set_Model)GetProcAddress(bhs, "New_Set_Model");

	push	OFFSET ??_C@_0O@COMKEHBD@New_Set_Model?$AA@
	push	esi
	mov	DWORD PTR [ecx+540], eax
	call	edi
	mov	edx, DWORD PTR ?gzCommands@@3PAUnc_ScriptCommands@@A ; gzCommands

; 65   : 
; 66   : 		// New features from bhs.dll
; 67   : 		gzCreate_2D_WAV_Sound_Player = (_gzCreate_2D_WAV_Sound_Player)GetProcAddress(bhs, "New_Create_2D_WAV_Sound_Player");

	push	OFFSET ??_C@_0BP@BNBMIEKM@New_Create_2D_WAV_Sound_Player?$AA@
	push	esi
	mov	DWORD PTR [edx+160], eax
	call	edi

; 68   : 		gzDisplay_Text_Player = (_gzDisplay_Text_Player)GetProcAddress(bhs, "New_Display_Text_Player");

	push	OFFSET ??_C@_0BI@BIGCCHLL@New_Display_Text_Player?$AA@
	push	esi
	mov	DWORD PTR ?gzCreate_2D_WAV_Sound_Player@@3P6AHPAVnc_ScriptableGameObj@@PBD@ZA, eax ; gzCreate_2D_WAV_Sound_Player
	call	edi

; 69   : 		gzDisplay_Int_Player = (_gzDisplay_Int_Player)GetProcAddress(bhs, "New_Display_Int_Player");

	push	OFFSET ??_C@_0BH@EMLDPBJE@New_Display_Int_Player?$AA@
	push	esi
	mov	DWORD PTR ?gzDisplay_Text_Player@@3P6AXPAVnc_ScriptableGameObj@@H@ZA, eax ; gzDisplay_Text_Player
	call	edi

; 70   : 		gzDisplay_Float_Player = (_gzDisplay_Float_Player)GetProcAddress(bhs, "New_Display_Float_Player");

	push	OFFSET ??_C@_0BJ@BHPFPCAI@New_Display_Float_Player?$AA@
	push	esi
	mov	DWORD PTR ?gzDisplay_Int_Player@@3P6AXPAVnc_ScriptableGameObj@@HPBD@ZA, eax ; gzDisplay_Int_Player
	call	edi

; 71   : 		gzAddKeyHook = (gz_akh)GetProcAddress(bhs, "AddKeyHook");

	push	OFFSET ??_C@_0L@BFCNNHMC@AddKeyHook?$AA@
	push	esi
	mov	DWORD PTR ?gzDisplay_Float_Player@@3P6AXPAVnc_ScriptableGameObj@@MPBD@ZA, eax ; gzDisplay_Float_Player
	call	edi

; 72   : 		gzRemoveKeyHook = (gz_rkh)GetProcAddress(bhs, "RemoveKeyHook");

	push	OFFSET ??_C@_0O@CMJPPFDF@RemoveKeyHook?$AA@
	mov	DWORD PTR ?gzAddKeyHook@@3P6AHPAUgzKeyHookStruct@@@ZA, eax ; gzAddKeyHook
	push	esi
	call	edi
	mov	DWORD PTR ?gzRemoveKeyHook@@3P6AXH@ZA, eax ; gzRemoveKeyHook
$LN9@gzInitClas@2:

; 73   : 	}
; 74   : 
; 75   : 	// Initial event sort variables
; 76   : 	for (int i = 0; i < EVT_COUNT_TYPE; i++)
; 77   : 	{
; 78   : 		for (int j = 0; j < EVT_COUNT_SUBTYPE; j++)
; 79   : 			EventManager::m_eventTypeSort[i][j] = false;

	push	60					; 0000003cH
	push	ebx
	push	OFFSET ?m_eventTypeSort@EventManager@@2PAY0M@_NA ; EventManager::m_eventTypeSort
	call	_memset

; 80   : 	}
; 81   : 
; 82   : 	gzManager				= new gzManagerClass;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	82					; 00000052H
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	36					; 00000024H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 28					; 0000001cH
	mov	DWORD PTR $T70892[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], ebx
	je	SHORT $LN12@gzInitClas@2
	mov	ecx, eax
	call	??0gzManagerClass@@QAE@XZ		; gzManagerClass::gzManagerClass
	jmp	SHORT $LN13@gzInitClas@2
$LN12@gzInitClas@2:
	xor	eax, eax
$LN13@gzInitClas@2:

; 83   : 	gzSettingsMgr			= new gzSettingsManager;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	83					; 00000053H
	or	edi, -1
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzManager@@3PAVgzManagerClass@@A, eax ; gzManager
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	52					; 00000034H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70898[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 1
	je	SHORT $LN16@gzInitClas@2
	mov	ecx, eax
	call	??0gzSettingsManager@@QAE@XZ		; gzSettingsManager::gzSettingsManager
	jmp	SHORT $LN17@gzInitClas@2
$LN16@gzInitClas@2:
	xor	eax, eax
$LN17@gzInitClas@2:

; 84   : 	gzGameMgr				= new gzGameManager;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	84					; 00000054H
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzSettingsMgr@@3PAVgzSettingsManager@@A, eax ; gzSettingsMgr
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	76					; 0000004cH
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70904[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 2
	je	SHORT $LN20@gzInitClas@2
	mov	ecx, eax
	call	??0gzGameManager@@QAE@XZ		; gzGameManager::gzGameManager
	jmp	SHORT $LN21@gzInitClas@2
$LN20@gzInitClas@2:
	xor	eax, eax
$LN21@gzInitClas@2:

; 85   : 	gzTranslator			= new gzTranslateManager;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	85					; 00000055H
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzGameMgr@@3PAVgzGameManager@@A, eax ; gzGameMgr
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	96					; 00000060H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70910[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 3
	je	SHORT $LN24@gzInitClas@2
	mov	ecx, eax
	call	??0gzTranslateManager@@QAE@XZ		; gzTranslateManager::gzTranslateManager
	jmp	SHORT $LN25@gzInitClas@2
$LN24@gzInitClas@2:
	xor	eax, eax
$LN25@gzInitClas@2:

; 86   : 	gzChat					= new gzChatManagerClass;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	86					; 00000056H
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzTranslator@@3PAVgzTranslateManager@@A, eax ; gzTranslator
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	104					; 00000068H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70916[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 4
	je	SHORT $LN28@gzInitClas@2
	mov	ecx, eax
	call	??0gzChatManagerClass@@QAE@XZ		; gzChatManagerClass::gzChatManagerClass
	jmp	SHORT $LN29@gzInitClas@2
$LN28@gzInitClas@2:
	xor	eax, eax
$LN29@gzInitClas@2:

; 87   : 	gzVehicleMgr			= new gzManagerVehicle;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	87					; 00000057H
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzChat@@3PAVgzChatManagerClass@@A, eax ; gzChat
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	60					; 0000003cH
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70922[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 5
	je	SHORT $LN32@gzInitClas@2
	mov	ecx, eax
	call	??0gzManagerVehicle@@QAE@XZ		; gzManagerVehicle::gzManagerVehicle
	jmp	SHORT $LN33@gzInitClas@2
$LN32@gzInitClas@2:
	xor	eax, eax
$LN33@gzInitClas@2:

; 88   : 	gzPlayerMgr				= new gzPlayerManager;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	88					; 00000058H
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzVehicleMgr@@3PAVgzManagerVehicle@@A, eax ; gzVehicleMgr
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	552					; 00000228H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70928[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 6
	je	SHORT $LN36@gzInitClas@2
	mov	ecx, eax
	call	??0gzPlayerManager@@QAE@XZ		; gzPlayerManager::gzPlayerManager
	jmp	SHORT $LN37@gzInitClas@2
$LN36@gzInitClas@2:
	xor	eax, eax
$LN37@gzInitClas@2:

; 89   : 	gzTestZoneMgr			= new gzTestZoneManager;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	89					; 00000059H
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzPlayerMgr@@3PAVgzPlayerManager@@A, eax ; gzPlayerMgr
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	80					; 00000050H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70934[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 7
	je	SHORT $LN40@gzInitClas@2
	mov	ecx, eax
	call	??0gzTestZoneManager@@QAE@XZ		; gzTestZoneManager::gzTestZoneManager
	jmp	SHORT $LN41@gzInitClas@2
$LN40@gzInitClas@2:
	xor	eax, eax
$LN41@gzInitClas@2:

; 90   : 	gzWeaponMgr				= new gzWeaponManager;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	90					; 0000005aH
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzTestZoneMgr@@3PAVgzTestZoneManager@@A, eax ; gzTestZoneMgr
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	44					; 0000002cH
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70940[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 8
	je	SHORT $LN44@gzInitClas@2
	mov	ecx, eax
	call	??0gzWeaponManager@@QAE@XZ		; gzWeaponManager::gzWeaponManager
	jmp	SHORT $LN45@gzInitClas@2
$LN44@gzInitClas@2:
	xor	eax, eax
$LN45@gzInitClas@2:

; 91   : 	gzCrateMgr				= new gzManagerCrateClass;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	91					; 0000005bH
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzWeaponMgr@@3PAVgzWeaponManager@@A, eax ; gzWeaponMgr
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	64					; 00000040H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70946[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 9
	je	SHORT $LN48@gzInitClas@2
	mov	ecx, eax
	call	??0gzManagerCrateClass@@QAE@XZ		; gzManagerCrateClass::gzManagerCrateClass
	jmp	SHORT $LN49@gzInitClas@2
$LN48@gzInitClas@2:
	xor	eax, eax
$LN49@gzInitClas@2:

; 92   : 	gzSerialMgr				= new gzSerialManager;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	92					; 0000005cH
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzCrateMgr@@3PAVgzManagerCrateClass@@A, eax ; gzCrateMgr
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	36					; 00000024H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70952[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 10		; 0000000aH
	je	SHORT $LN52@gzInitClas@2
	mov	ecx, eax
	call	??0gzSerialManager@@QAE@XZ		; gzSerialManager::gzSerialManager
	jmp	SHORT $LN53@gzInitClas@2
$LN52@gzInitClas@2:
	xor	eax, eax
$LN53@gzInitClas@2:

; 93   : 	gzTeamCommander			= new gzTeamCommanderClass;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	93					; 0000005dH
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzSerialMgr@@3PAVgzSerialManager@@A, eax ; gzSerialMgr
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	1128					; 00000468H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70958[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 11		; 0000000bH
	je	SHORT $LN56@gzInitClas@2
	mov	ecx, eax
	call	??0gzTeamCommanderClass@@QAE@XZ		; gzTeamCommanderClass::gzTeamCommanderClass
	jmp	SHORT $LN57@gzInitClas@2
$LN56@gzInitClas@2:
	xor	eax, eax
$LN57@gzInitClas@2:

; 94   : 	gzAntiCheatMgr			= new gzAntiCheatManager;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	94					; 0000005eH
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzTeamCommander@@3PAVgzTeamCommanderClass@@A, eax ; gzTeamCommander
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	40					; 00000028H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70964[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 12		; 0000000cH
	je	SHORT $LN60@gzInitClas@2
	mov	ecx, eax
	call	??0gzAntiCheatManager@@QAE@XZ		; gzAntiCheatManager::gzAntiCheatManager
	jmp	SHORT $LN61@gzInitClas@2
$LN60@gzInitClas@2:
	xor	eax, eax
$LN61@gzInitClas@2:

; 95   : 	gzWeaponDropMgr			= new gzWeaponDropManager;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	95					; 0000005fH
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzAntiCheatMgr@@3PAVgzAntiCheatManager@@A, eax ; gzAntiCheatMgr
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	52					; 00000034H
	call	??2@YAPAXI@Z				; operator new
	mov	esi, eax
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70970[esp+32], esi
	cmp	esi, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 13		; 0000000dH
	je	SHORT $LN64@gzInitClas@2
	mov	ecx, esi
	call	??0EventHandler@@QAE@XZ			; EventHandler::EventHandler
	mov	DWORD PTR [esi], OFFSET ??_7gzWeaponDropManager@@6B@
	mov	DWORD PTR [esi+36], OFFSET ??_7?$aVector@PAVgzWeaponDropClass@@@@6B@
	mov	DWORD PTR [esi+40], ebx
	mov	DWORD PTR [esi+44], ebx
	mov	DWORD PTR [esi+48], ebx
	jmp	SHORT $LN65@gzInitClas@2
$LN64@gzInitClas@2:
	xor	esi, esi
$LN65@gzInitClas@2:

; 96   : 	gzTibCrystalMgr			= new gzTibCrystalManager;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	96					; 00000060H
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzWeaponDropMgr@@3PAVgzWeaponDropManager@@A, esi ; gzWeaponDropMgr
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	64					; 00000040H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70976[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 14		; 0000000eH
	je	SHORT $LN68@gzInitClas@2
	mov	ecx, eax
	call	??0gzTibCrystalManager@@QAE@XZ		; gzTibCrystalManager::gzTibCrystalManager
	jmp	SHORT $LN69@gzInitClas@2
$LN68@gzInitClas@2:
	xor	eax, eax
$LN69@gzInitClas@2:

; 97   : 	gzGameSpyQueryMgr		= new gzGameSpyQueryManager;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	97					; 00000061H
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzTibCrystalMgr@@3PAVgzTibCrystalManager@@A, eax ; gzTibCrystalMgr
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	92					; 0000005cH
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70982[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 15		; 0000000fH
	je	SHORT $LN72@gzInitClas@2
	mov	ecx, eax
	call	??0gzGameSpyQueryManager@@QAE@XZ	; gzGameSpyQueryManager::gzGameSpyQueryManager
	jmp	SHORT $LN73@gzInitClas@2
$LN72@gzInitClas@2:
	xor	eax, eax
$LN73@gzInitClas@2:

; 98   : 	gzVeteranMgr			= new gzVeteranManagerClass;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	98					; 00000062H
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzGameSpyQueryMgr@@3PAVgzGameSpyQueryManager@@A, eax ; gzGameSpyQueryMgr
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	44					; 0000002cH
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70988[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 16		; 00000010H
	je	SHORT $LN76@gzInitClas@2
	mov	ecx, eax
	call	??0gzVeteranManagerClass@@QAE@XZ	; gzVeteranManagerClass::gzVeteranManagerClass
	jmp	SHORT $LN77@gzInitClas@2
$LN76@gzInitClas@2:
	xor	eax, eax
$LN77@gzInitClas@2:

; 99   : 
; 100  : #if VERC(1, 1, 0)
; 101  : 	stDb                    = new stDbManager;

	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	101					; 00000065H
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	mov	DWORD PTR __$EHRec$[esp+52], edi
	mov	DWORD PTR ?gzVeteranMgr@@3PAVgzVeteranManagerClass@@A, eax ; gzVeteranMgr
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	push	28					; 0000001cH
	call	??2@YAPAXI@Z				; operator new
	add	esp, 16					; 00000010H
	mov	DWORD PTR $T70994[esp+32], eax
	cmp	eax, ebx
	mov	DWORD PTR __$EHRec$[esp+40], 17		; 00000011H
	je	SHORT $LN80@gzInitClas@2
	mov	ecx, eax
	call	??0stDbManager@@QAE@XZ			; stDbManager::stDbManager
	jmp	SHORT $LN81@gzInitClas@2
$LN80@gzInitClas@2:
	xor	eax, eax
$LN81@gzInitClas@2:

; 102  : #endif
; 103  : 
; 104  : 	SetUnhandledExceptionFilter(gzExceptionHandler);

	push	OFFSET ?gzExceptionHandler@@YGJPAU_EXCEPTION_POINTERS@@@Z ; gzExceptionHandler
	mov	DWORD PTR __$EHRec$[esp+44], edi
	mov	DWORD PTR ?stDb@@3PAVstDbManager@@A, eax ; stDb
	call	DWORD PTR __imp__SetUnhandledExceptionFilter@4

; 105  : 
; 106  : #ifdef __BETA
; 107  : 	stVersion.Printf("[STGM] %d.%d.%d Beta %d", __VER_MAJOR, __VER_MINOR, __VER_MINOR2, __BETA);
; 108  : #elif defined(__ALPHA)
; 109  : 	stVersion.Printf("[STGM] %d.%d.%d Alpha %d", VER_MAJOR, VER_MINOR, VER_MINOR2, __ALPHA);
; 110  : #else
; 111  : 	stVersion.Printf("[STGM] %d.%d.%d", __VER_MAJOR, __VER_MINOR, __VER_MINOR2);

	push	ebx
	push	1
	push	1
	push	OFFSET ??_C@_0BA@PFKMLDGB@?$FLSTGM?$FN?5?$CFd?4?$CFd?4?$CFd?$AA@
	push	OFFSET ?stVersion@@3VaString@@A		; stVersion
	call	?Printf@aString@@QAAXPBDZZ		; aString::Printf

; 112  : #endif
; 113  : 
; 114  : 	stConsole::Out("%s successfully loaded - Built on %s %s\n", stVersion.GetString(), __DATE__, __TIME__);

	mov	eax, DWORD PTR ?stVersion@@3VaString@@A+4
	add	esp, 20					; 00000014H
	cmp	eax, ebx
	je	SHORT $LN110@gzInitClas@2
	mov	eax, DWORD PTR [eax]
	jmp	SHORT $LN111@gzInitClas@2
$LN110@gzInitClas@2:
	xor	eax, eax
$LN111@gzInitClas@2:
	push	OFFSET ??_C@_08NIJNOLNK@11?308?327?$AA@
	push	OFFSET ??_C@_0M@EFMPBKOB@Apr?5?56?52010?$AA@
	push	eax
	push	OFFSET ??_C@_0CJ@MJAEEDJH@?$CFs?5successfully?5loaded?5?9?5Built?5o@
	call	?Out@stConsole@@SAXPBDZZ		; stConsole::Out

; 115  : }

	mov	ecx, DWORD PTR __$EHRec$[esp+48]
	add	esp, 16					; 00000010H
	pop	edi
	pop	esi
	mov	eax, ebp
	pop	ebp
	pop	ebx
	mov	DWORD PTR fs:0, ecx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0gzInitClass@@QAE@XZ$0:
	mov	eax, DWORD PTR $T70892[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$1:
	mov	eax, DWORD PTR $T70898[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$2:
	mov	eax, DWORD PTR $T70904[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$3:
	mov	eax, DWORD PTR $T70910[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$4:
	mov	eax, DWORD PTR $T70916[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$5:
	mov	eax, DWORD PTR $T70922[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$6:
	mov	eax, DWORD PTR $T70928[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$7:
	mov	eax, DWORD PTR $T70934[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$8:
	mov	eax, DWORD PTR $T70940[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$9:
	mov	eax, DWORD PTR $T70946[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$10:
	mov	eax, DWORD PTR $T70952[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$11:
	mov	eax, DWORD PTR $T70958[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$12:
	mov	eax, DWORD PTR $T70964[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$13:
	mov	eax, DWORD PTR $T70970[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$14:
	mov	eax, DWORD PTR $T70976[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$15:
	mov	eax, DWORD PTR $T70982[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$16:
	mov	eax, DWORD PTR $T70988[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__unwindfunclet$??0gzInitClass@@QAE@XZ$17:
	mov	eax, DWORD PTR $T70994[ebp]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$??0gzInitClass@@QAE@XZ:
	mov	eax, OFFSET __ehfuncinfo$??0gzInitClass@@QAE@XZ
	jmp	___CxxFrameHandler3
text$x	ENDS
??0gzInitClass@@QAE@XZ ENDP				; gzInitClass::gzInitClass
; Function compile flags: /Ogtpy
;	COMDAT ??_GgzWeaponDropManager@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_GgzWeaponDropManager@@UAEPAXI@Z PROC			; gzWeaponDropManager::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	call	??1gzWeaponDropManager@@UAE@XZ
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $LN4@scalar@7
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN4@scalar@7:
	mov	eax, esi
	pop	esi
	ret	4
??_GgzWeaponDropManager@@UAEPAXI@Z ENDP			; gzWeaponDropManager::`scalar deleting destructor'
_TEXT	ENDS
EXTRN	_atexit:PROC
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stinc.h
;	COMDAT ??__EgzCritical@@YAXXZ
text$yc	SEGMENT
??__EgzCritical@@YAXXZ PROC				; `dynamic initializer for 'gzCritical'', COMDAT

; 67   : static aCriticalSection gzCritical;

	push	OFFSET _gzCritical
	call	DWORD PTR __imp__InitializeCriticalSection@4
	push	OFFSET ??__FgzCritical@@YAXXZ		; `dynamic atexit destructor for 'gzCritical''
	call	_atexit
	pop	ecx
	ret	0
??__EgzCritical@@YAXXZ ENDP				; `dynamic initializer for 'gzCritical''
; Function compile flags: /Ogtpy
; File d:\source code\stgm\stmanager.cpp
text$yc	ENDS
;	COMDAT ??__EgzUnload@@YAXXZ
text$yc	SEGMENT
??__EgzUnload@@YAXXZ PROC				; `dynamic initializer for 'gzUnload'', COMDAT

; 156  : gzUnloadClass gzUnload;

	push	OFFSET ??__FgzUnload@@YAXXZ		; `dynamic atexit destructor for 'gzUnload''
	call	_atexit
	pop	ecx
	ret	0
??__EgzUnload@@YAXXZ ENDP				; `dynamic initializer for 'gzUnload''
; Function compile flags: /Ogtpy
text$yc	ENDS
;	COMDAT ??__FgzCritical@@YAXXZ
text$yd	SEGMENT
??__FgzCritical@@YAXXZ PROC				; `dynamic atexit destructor for 'gzCritical'', COMDAT
	push	OFFSET _gzCritical
	call	DWORD PTR __imp__DeleteCriticalSection@4
	ret	0
??__FgzCritical@@YAXXZ ENDP				; `dynamic atexit destructor for 'gzCritical''
; Function compile flags: /Ogtpy
text$yd	ENDS
;	COMDAT ??__FgzUnload@@YAXXZ
text$yd	SEGMENT
??__FgzUnload@@YAXXZ PROC				; `dynamic atexit destructor for 'gzUnload'', COMDAT
	cmp	BYTE PTR ?m_initial@gzManagerClass@@2_NA, 0 ; gzManagerClass::m_initial
	je	SHORT $LN7@dynamic
	cmp	DWORD PTR ?gzInit@@3PAVgzInitClass@@A, 0 ; gzInit
	je	SHORT $LN7@dynamic
	push	esi
	push	OFFSET ??_C@_00CNPNBAHC@?$AA@
	push	153					; 00000099H
	push	OFFSET ??_C@_0BA@MJKBMPBI@?4?2stmanager?4cpp?$AA@
	call	?m_setOwner@@YAXPBDI0@Z			; m_setOwner
	mov	ecx, DWORD PTR ?gzInit@@3PAVgzInitClass@@A ; gzInit
	add	esp, 12					; 0000000cH
	test	ecx, ecx
	mov	esi, ecx
	je	SHORT $LN14@dynamic
	call	??1gzInitClass@@QAE@XZ			; gzInitClass::~gzInitClass
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN14@dynamic:
	pop	esi
$LN7@dynamic:
	ret	0
??__FgzUnload@@YAXXZ ENDP				; `dynamic atexit destructor for 'gzUnload''
text$yd	ENDS
PUBLIC	?gzUnload@@3VgzUnloadClass@@A			; gzUnload
_BSS	SEGMENT
?gzUnload@@3VgzUnloadClass@@A DB 01H DUP (?)		; gzUnload
	ALIGN	4

_gzCritical DB	018H DUP (?)
_BSS	ENDS
CRT$XCU	SEGMENT
_gzCritical$initializer$ DD FLAT:??__EgzCritical@@YAXXZ
_gzUnload$initializer$ DD FLAT:??__EgzUnload@@YAXXZ
CRT$XCU	ENDS
END
