; Listing generated by Microsoft (R) Optimizing Compiler Version 14.00.50727.762 

	TITLE	c:\Tools\eclipse\workspace\autopilot\test\pow2_test.cpp
	.686P
	.XMM
	include listing.inc
	.model	flat

INCLUDELIB LIBCMT
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
;	COMDAT ?end@?$_Iosb@H@std@@2W4_Seekdir@12@B
CONST	SEGMENT
?end@?$_Iosb@H@std@@2W4_Seekdir@12@B DD 02H		; std::_Iosb<int>::end
CONST	ENDS
;	COMDAT ?cur@?$_Iosb@H@std@@2W4_Seekdir@12@B
CONST	SEGMENT
?cur@?$_Iosb@H@std@@2W4_Seekdir@12@B DD 01H		; std::_Iosb<int>::cur
CONST	ENDS
;	COMDAT ?beg@?$_Iosb@H@std@@2W4_Seekdir@12@B
CONST	SEGMENT
?beg@?$_Iosb@H@std@@2W4_Seekdir@12@B DD 00H		; std::_Iosb<int>::beg
CONST	ENDS
;	COMDAT ?binary@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?binary@?$_Iosb@H@std@@2W4_Openmode@12@B DD 020H	; std::_Iosb<int>::binary
CONST	ENDS
;	COMDAT ?_Noreplace@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?_Noreplace@?$_Iosb@H@std@@2W4_Openmode@12@B DD 080H	; std::_Iosb<int>::_Noreplace
CONST	ENDS
;	COMDAT ?_Nocreate@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?_Nocreate@?$_Iosb@H@std@@2W4_Openmode@12@B DD 040H	; std::_Iosb<int>::_Nocreate
CONST	ENDS
;	COMDAT ?trunc@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?trunc@?$_Iosb@H@std@@2W4_Openmode@12@B DD 010H		; std::_Iosb<int>::trunc
CONST	ENDS
;	COMDAT ?app@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?app@?$_Iosb@H@std@@2W4_Openmode@12@B DD 08H		; std::_Iosb<int>::app
CONST	ENDS
;	COMDAT ?ate@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?ate@?$_Iosb@H@std@@2W4_Openmode@12@B DD 04H		; std::_Iosb<int>::ate
CONST	ENDS
;	COMDAT ?out@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?out@?$_Iosb@H@std@@2W4_Openmode@12@B DD 02H		; std::_Iosb<int>::out
CONST	ENDS
;	COMDAT ?in@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?in@?$_Iosb@H@std@@2W4_Openmode@12@B DD 01H		; std::_Iosb<int>::in
CONST	ENDS
;	COMDAT ?_Hardfail@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?_Hardfail@?$_Iosb@H@std@@2W4_Iostate@12@B DD 010H	; std::_Iosb<int>::_Hardfail
CONST	ENDS
;	COMDAT ?badbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?badbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 04H		; std::_Iosb<int>::badbit
CONST	ENDS
;	COMDAT ?failbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?failbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 02H		; std::_Iosb<int>::failbit
CONST	ENDS
;	COMDAT ?eofbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?eofbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 01H		; std::_Iosb<int>::eofbit
CONST	ENDS
;	COMDAT ?goodbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?goodbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 00H		; std::_Iosb<int>::goodbit
CONST	ENDS
;	COMDAT ?floatfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?floatfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 03000H	; std::_Iosb<int>::floatfield
CONST	ENDS
;	COMDAT ?basefield@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?basefield@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0e00H	; std::_Iosb<int>::basefield
CONST	ENDS
;	COMDAT ?adjustfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?adjustfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 01c0H	; std::_Iosb<int>::adjustfield
CONST	ENDS
;	COMDAT ?_Stdio@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?_Stdio@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 08000H	; std::_Iosb<int>::_Stdio
CONST	ENDS
;	COMDAT ?boolalpha@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?boolalpha@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 04000H	; std::_Iosb<int>::boolalpha
CONST	ENDS
;	COMDAT ?fixed@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?fixed@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 02000H	; std::_Iosb<int>::fixed
CONST	ENDS
;	COMDAT ?scientific@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?scientific@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 01000H	; std::_Iosb<int>::scientific
CONST	ENDS
;	COMDAT ?hex@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?hex@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0800H		; std::_Iosb<int>::hex
CONST	ENDS
;	COMDAT ?oct@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?oct@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0400H		; std::_Iosb<int>::oct
CONST	ENDS
;	COMDAT ?dec@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?dec@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0200H		; std::_Iosb<int>::dec
CONST	ENDS
;	COMDAT ?internal@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?internal@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0100H	; std::_Iosb<int>::internal
CONST	ENDS
;	COMDAT ?right@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?right@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 080H		; std::_Iosb<int>::right
CONST	ENDS
;	COMDAT ?left@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?left@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 040H		; std::_Iosb<int>::left
CONST	ENDS
;	COMDAT ?showpos@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?showpos@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 020H	; std::_Iosb<int>::showpos
CONST	ENDS
;	COMDAT ?showpoint@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?showpoint@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 010H	; std::_Iosb<int>::showpoint
CONST	ENDS
;	COMDAT ?showbase@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?showbase@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 08H	; std::_Iosb<int>::showbase
CONST	ENDS
;	COMDAT ?uppercase@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?uppercase@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 04H	; std::_Iosb<int>::uppercase
CONST	ENDS
;	COMDAT ?unitbuf@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?unitbuf@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 02H	; std::_Iosb<int>::unitbuf
CONST	ENDS
;	COMDAT ?skipws@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?skipws@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 01H		; std::_Iosb<int>::skipws
CONST	ENDS
;	COMDAT ?table_size@?$ctype@D@std@@2IB
CONST	SEGMENT
?table_size@?$ctype@D@std@@2IB DD 0100H			; std::ctype<char>::table_size
CONST	ENDS
;	COMDAT ?none@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?none@?$_Locbase@H@std@@2HB DD 00H			; std::_Locbase<int>::none
CONST	ENDS
;	COMDAT ?all@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?all@?$_Locbase@H@std@@2HB DD 03fH			; std::_Locbase<int>::all
CONST	ENDS
;	COMDAT ?messages@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?messages@?$_Locbase@H@std@@2HB DD 020H			; std::_Locbase<int>::messages
CONST	ENDS
;	COMDAT ?time@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?time@?$_Locbase@H@std@@2HB DD 010H			; std::_Locbase<int>::time
CONST	ENDS
;	COMDAT ?numeric@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?numeric@?$_Locbase@H@std@@2HB DD 08H			; std::_Locbase<int>::numeric
CONST	ENDS
;	COMDAT ?monetary@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?monetary@?$_Locbase@H@std@@2HB DD 04H			; std::_Locbase<int>::monetary
CONST	ENDS
;	COMDAT ?ctype@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?ctype@?$_Locbase@H@std@@2HB DD 02H			; std::_Locbase<int>::ctype
CONST	ENDS
;	COMDAT ?collate@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?collate@?$_Locbase@H@std@@2HB DD 01H			; std::_Locbase<int>::collate
CONST	ENDS
_DATA	SEGMENT
__bad_alloc_Message DD FLAT:??_C@_0P@GHFPNOJB@bad?5allocation?$AA@
_DATA	ENDS
;	COMDAT ??_C@_0P@GHFPNOJB@bad?5allocation?$AA@
CONST	SEGMENT
??_C@_0P@GHFPNOJB@bad?5allocation?$AA@ DB 'bad allocation', 00H ; `string'
CONST	ENDS
PUBLIC	??_7bad_alloc@std@@6B@				; std::bad_alloc::`vftable'
PUBLIC	??0bad_alloc@std@@QAE@PBD@Z			; std::bad_alloc::bad_alloc
PUBLIC	??_R4bad_alloc@std@@6B@				; std::bad_alloc::`RTTI Complete Object Locator'
PUBLIC	??_R0?AVbad_alloc@std@@@8			; std::bad_alloc `RTTI Type Descriptor'
PUBLIC	??_R3bad_alloc@std@@8				; std::bad_alloc::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2bad_alloc@std@@8				; std::bad_alloc::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@bad_alloc@std@@8			; std::bad_alloc::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R1A@?0A@EA@exception@std@@8			; std::exception::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVexception@std@@@8			; std::exception `RTTI Type Descriptor'
PUBLIC	??_R3exception@std@@8				; std::exception::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2exception@std@@8				; std::exception::`RTTI Base Class Array'
EXTRN	??0exception@std@@QAE@ABQBD@Z:PROC		; std::exception::exception
EXTRN	??_7type_info@@6B@:QWORD			; type_info::`vftable'
EXTRN	??_Ebad_alloc@std@@UAEPAXI@Z:PROC		; std::bad_alloc::`vector deleting destructor'
EXTRN	?what@exception@std@@UBEPBDXZ:PROC		; std::exception::what
;	COMDAT ??_R2exception@std@@8
; File c:\program files\microsoft visual studio 8\vc\include\exception
rdata$r	SEGMENT
??_R2exception@std@@8 DD FLAT:??_R1A@?0A@EA@exception@std@@8 ; std::exception::`RTTI Base Class Array'
rdata$r	ENDS
;	COMDAT ??_R3exception@std@@8
rdata$r	SEGMENT
??_R3exception@std@@8 DD 00H				; std::exception::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	01H
	DD	FLAT:??_R2exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVexception@std@@@8
_DATA	SEGMENT
??_R0?AVexception@std@@@8 DD FLAT:??_7type_info@@6B@	; std::exception `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVexception@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R1A@?0A@EA@exception@std@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@exception@std@@8 DD FLAT:??_R0?AVexception@std@@@8 ; std::exception::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	00H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@bad_alloc@std@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@bad_alloc@std@@8 DD FLAT:??_R0?AVbad_alloc@std@@@8 ; std::bad_alloc::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3bad_alloc@std@@8
rdata$r	ENDS
;	COMDAT ??_R2bad_alloc@std@@8
rdata$r	SEGMENT
??_R2bad_alloc@std@@8 DD FLAT:??_R1A@?0A@EA@bad_alloc@std@@8 ; std::bad_alloc::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R3bad_alloc@std@@8
rdata$r	SEGMENT
??_R3bad_alloc@std@@8 DD 00H				; std::bad_alloc::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2bad_alloc@std@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVbad_alloc@std@@@8
_DATA	SEGMENT
??_R0?AVbad_alloc@std@@@8 DD FLAT:??_7type_info@@6B@	; std::bad_alloc `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVbad_alloc@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R4bad_alloc@std@@6B@
rdata$r	SEGMENT
??_R4bad_alloc@std@@6B@ DD 00H				; std::bad_alloc::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVbad_alloc@std@@@8
	DD	FLAT:??_R3bad_alloc@std@@8
rdata$r	ENDS
;	COMDAT ??_7bad_alloc@std@@6B@
CONST	SEGMENT
??_7bad_alloc@std@@6B@ DD FLAT:??_R4bad_alloc@std@@6B@	; std::bad_alloc::`vftable'
	DD	FLAT:??_Ebad_alloc@std@@UAEPAXI@Z
	DD	FLAT:?what@exception@std@@UBEPBDXZ
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ??0bad_alloc@std@@QAE@PBD@Z
_TEXT	SEGMENT
__Message$ = 8						; size = 4
??0bad_alloc@std@@QAE@PBD@Z PROC			; std::bad_alloc::bad_alloc, COMDAT
; _this$ = ecx
; Line 371
	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@
; Line 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
; Line 380
	mov	DWORD PTR [ecx], OFFSET ??_7bad_alloc@std@@6B@
; Line 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	?assign@?$char_traits@D@std@@SAXAADABD@Z	; std::char_traits<char>::assign
; Function compile flags: /Ogtpy
;	COMDAT ?assign@?$char_traits@D@std@@SAXAADABD@Z
_TEXT	SEGMENT
__Left$ = 8						; size = 4
__Right$ = 12						; size = 4
?assign@?$char_traits@D@std@@SAXAADABD@Z PROC		; std::char_traits<char>::assign, COMDAT
; File c:\program files\microsoft visual studio 8\vc\include\iosfwd
; Line 418
	mov	eax, DWORD PTR __Right$[esp-4]
	mov	cl, BYTE PTR [eax]
	mov	edx, DWORD PTR __Left$[esp-4]
	mov	BYTE PTR [edx], cl
; Line 419
	ret	0
?assign@?$char_traits@D@std@@SAXAADABD@Z ENDP		; std::char_traits<char>::assign
_TEXT	ENDS
PUBLIC	?length@?$char_traits@D@std@@SAIPBD@Z		; std::char_traits<char>::length
; Function compile flags: /Ogtpy
;	COMDAT ?length@?$char_traits@D@std@@SAIPBD@Z
_TEXT	SEGMENT
__First$ = 8						; size = 4
?length@?$char_traits@D@std@@SAIPBD@Z PROC		; std::char_traits<char>::length, COMDAT
; Line 442
	mov	eax, DWORD PTR __First$[esp-4]
	lea	edx, DWORD PTR [eax+1]
$LL3@length:
	mov	cl, BYTE PTR [eax]
	add	eax, 1
	test	cl, cl
	jne	SHORT $LL3@length
	sub	eax, edx
; Line 443
	ret	0
?length@?$char_traits@D@std@@SAIPBD@Z ENDP		; std::char_traits<char>::length
_TEXT	ENDS
PUBLIC	?_Copy_s@?$char_traits@D@std@@SAPADPADIPBDI@Z	; std::char_traits<char>::_Copy_s
EXTRN	_memcpy_s:PROC
; Function compile flags: /Ogtpy
;	COMDAT ?_Copy_s@?$char_traits@D@std@@SAPADPADIPBDI@Z
_TEXT	SEGMENT
__First1$ = 8						; size = 4
__Size_in_bytes$ = 12					; size = 4
__First2$ = 16						; size = 4
__Count$ = 20						; size = 4
?_Copy_s@?$char_traits@D@std@@SAPADPADIPBDI@Z PROC	; std::char_traits<char>::_Copy_s, COMDAT
; Line 458
	mov	eax, DWORD PTR __Count$[esp-4]
	mov	ecx, DWORD PTR __First2$[esp-4]
	mov	edx, DWORD PTR __Size_in_bytes$[esp-4]
	push	esi
	mov	esi, DWORD PTR __First1$[esp]
	push	eax
	push	ecx
	push	edx
	push	esi
	call	_memcpy_s
	add	esp, 16					; 00000010H
; Line 459
	mov	eax, esi
	pop	esi
; Line 460
	ret	0
?_Copy_s@?$char_traits@D@std@@SAPADPADIPBDI@Z ENDP	; std::char_traits<char>::_Copy_s
_TEXT	ENDS
PUBLIC	?_Move_s@?$char_traits@D@std@@SAPADPADIPBDI@Z	; std::char_traits<char>::_Move_s
EXTRN	_memmove_s:PROC
; Function compile flags: /Ogtpy
;	COMDAT ?_Move_s@?$char_traits@D@std@@SAPADPADIPBDI@Z
_TEXT	SEGMENT
__First1$ = 8						; size = 4
__Size_in_bytes$ = 12					; size = 4
__First2$ = 16						; size = 4
__Count$ = 20						; size = 4
?_Move_s@?$char_traits@D@std@@SAPADPADIPBDI@Z PROC	; std::char_traits<char>::_Move_s, COMDAT
; Line 482
	mov	eax, DWORD PTR __Count$[esp-4]
	mov	ecx, DWORD PTR __First2$[esp-4]
	mov	edx, DWORD PTR __Size_in_bytes$[esp-4]
	push	esi
	mov	esi, DWORD PTR __First1$[esp]
	push	eax
	push	ecx
	push	edx
	push	esi
	call	_memmove_s
	add	esp, 16					; 00000010H
; Line 483
	mov	eax, esi
	pop	esi
; Line 484
	ret	0
?_Move_s@?$char_traits@D@std@@SAPADPADIPBDI@Z ENDP	; std::char_traits<char>::_Move_s
_TEXT	ENDS
PUBLIC	?to_int_type@?$char_traits@D@std@@SAHABD@Z	; std::char_traits<char>::to_int_type
; Function compile flags: /Ogtpy
;	COMDAT ?to_int_type@?$char_traits@D@std@@SAHABD@Z
_TEXT	SEGMENT
__Ch$ = 8						; size = 4
?to_int_type@?$char_traits@D@std@@SAHABD@Z PROC		; std::char_traits<char>::to_int_type, COMDAT
; Line 499
	mov	eax, DWORD PTR __Ch$[esp-4]
	movzx	eax, BYTE PTR [eax]
; Line 500
	ret	0
?to_int_type@?$char_traits@D@std@@SAHABD@Z ENDP		; std::char_traits<char>::to_int_type
_TEXT	ENDS
PUBLIC	?eq_int_type@?$char_traits@D@std@@SA_NABH0@Z	; std::char_traits<char>::eq_int_type
; Function compile flags: /Ogtpy
;	COMDAT ?eq_int_type@?$char_traits@D@std@@SA_NABH0@Z
_TEXT	SEGMENT
__Left$ = 8						; size = 4
__Right$ = 12						; size = 4
?eq_int_type@?$char_traits@D@std@@SA_NABH0@Z PROC	; std::char_traits<char>::eq_int_type, COMDAT
; Line 505
	mov	eax, DWORD PTR __Left$[esp-4]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR __Right$[esp-4]
	xor	eax, eax
	cmp	ecx, DWORD PTR [edx]
	sete	al
; Line 506
	ret	0
?eq_int_type@?$char_traits@D@std@@SA_NABH0@Z ENDP	; std::char_traits<char>::eq_int_type
_TEXT	ENDS
PUBLIC	?eof@?$char_traits@D@std@@SAHXZ			; std::char_traits<char>::eof
; Function compile flags: /Ogtpy
;	COMDAT ?eof@?$char_traits@D@std@@SAHXZ
_TEXT	SEGMENT
?eof@?$char_traits@D@std@@SAHXZ PROC			; std::char_traits<char>::eof, COMDAT
; Line 510
	or	eax, -1
; Line 511
	ret	0
?eof@?$char_traits@D@std@@SAHXZ ENDP			; std::char_traits<char>::eof
_TEXT	ENDS
PUBLIC	??0_Iterator_base@std@@QAE@XZ			; std::_Iterator_base::_Iterator_base
; Function compile flags: /Ogtpy
;	COMDAT ??0_Iterator_base@std@@QAE@XZ
_TEXT	SEGMENT
??0_Iterator_base@std@@QAE@XZ PROC			; std::_Iterator_base::_Iterator_base, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xutility
; Line 441
	mov	eax, ecx
	mov	DWORD PTR [eax], 0
; Line 442
	ret	0
??0_Iterator_base@std@@QAE@XZ ENDP			; std::_Iterator_base::_Iterator_base
_TEXT	ENDS
PUBLIC	?_Getcvt@_Locinfo@std@@QBE?AU_Cvtvec@@XZ	; std::_Locinfo::_Getcvt
EXTRN	__Getcvt:PROC
; Function compile flags: /Ogtpy
;	COMDAT ?_Getcvt@_Locinfo@std@@QBE?AU_Cvtvec@@XZ
_TEXT	SEGMENT
___$ReturnUdt$ = 8					; size = 4
?_Getcvt@_Locinfo@std@@QBE?AU_Cvtvec@@XZ PROC		; std::_Locinfo::_Getcvt, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocinfo
; Line 120
	call	__Getcvt
	mov	ecx, eax
	mov	eax, DWORD PTR ___$ReturnUdt$[esp-4]
	mov	DWORD PTR [eax], ecx
	mov	DWORD PTR [eax+4], edx
; Line 121
	ret	4
?_Getcvt@_Locinfo@std@@QBE?AU_Cvtvec@@XZ ENDP		; std::_Locinfo::_Getcvt
_TEXT	ENDS
PUBLIC	??0id@locale@std@@QAE@I@Z			; std::locale::id::id
; Function compile flags: /Ogtpy
;	COMDAT ??0id@locale@std@@QAE@I@Z
_TEXT	SEGMENT
__Val$ = 8						; size = 4
??0id@locale@std@@QAE@I@Z PROC				; std::locale::id::id, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocale
; Line 73
	mov	eax, ecx
	mov	ecx, DWORD PTR __Val$[esp-4]
	mov	DWORD PTR [eax], ecx
; Line 74
	ret	4
??0id@locale@std@@QAE@I@Z ENDP				; std::locale::id::id
_TEXT	ENDS
PUBLIC	??Bid@locale@std@@QAEIXZ			; std::locale::id::operator unsigned int
EXTRN	??1_Lockit@std@@QAE@XZ:PROC			; std::_Lockit::~_Lockit
EXTRN	?_Id_cnt@id@locale@std@@0HA:DWORD		; std::locale::id::_Id_cnt
EXTRN	??0_Lockit@std@@QAE@H@Z:PROC			; std::_Lockit::_Lockit
; Function compile flags: /Ogtpy
;	COMDAT ??Bid@locale@std@@QAEIXZ
_TEXT	SEGMENT
__Lock$11570 = -4					; size = 4
??Bid@locale@std@@QAEIXZ PROC				; std::locale::id::operator unsigned int, COMDAT
; _this$ = ecx
; Line 77
	push	ecx
	push	esi
	mov	esi, ecx
; Line 78
	cmp	DWORD PTR [esi], 0
	jne	SHORT $LN6@operator
; Line 80
	push	0
	lea	ecx, DWORD PTR __Lock$11570[esp+12]
	call	??0_Lockit@std@@QAE@H@Z			; std::_Lockit::_Lockit
; Line 81
	cmp	DWORD PTR [esi], 0
	jne	SHORT $LN1@operator
; Line 82
	mov	eax, DWORD PTR ?_Id_cnt@id@locale@std@@0HA ; std::locale::id::_Id_cnt
	add	eax, 1
	mov	DWORD PTR ?_Id_cnt@id@locale@std@@0HA, eax ; std::locale::id::_Id_cnt
	mov	DWORD PTR [esi], eax
$LN1@operator:
; Line 83
	lea	ecx, DWORD PTR __Lock$11570[esp+8]
	call	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
$LN6@operator:
; Line 85
	mov	eax, DWORD PTR [esi]
	pop	esi
; Line 86
	pop	ecx
	ret	0
??Bid@locale@std@@QAEIXZ ENDP				; std::locale::id::operator unsigned int
_TEXT	ENDS
PUBLIC	?_Incref@facet@locale@std@@QAEXXZ		; std::locale::facet::_Incref
; Function compile flags: /Ogtpy
;	COMDAT ?_Incref@facet@locale@std@@QAEXXZ
_TEXT	SEGMENT
__Lock$11576 = -4					; size = 4
?_Incref@facet@locale@std@@QAEXXZ PROC			; std::locale::facet::_Incref, COMDAT
; _this$ = ecx
; Line 116
	push	ecx
	push	esi
	mov	esi, ecx
; Line 117
	push	0
	lea	ecx, DWORD PTR __Lock$11576[esp+12]
	call	??0_Lockit@std@@QAE@H@Z			; std::_Lockit::_Lockit
; Line 118
	mov	eax, DWORD PTR [esi+4]
	cmp	eax, -1
	jae	SHORT $LN1@Incref
; Line 119
	add	eax, 1
	mov	DWORD PTR [esi+4], eax
$LN1@Incref:
; Line 120
	lea	ecx, DWORD PTR __Lock$11576[esp+8]
	call	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
	pop	esi
; Line 121
	pop	ecx
	ret	0
?_Incref@facet@locale@std@@QAEXXZ ENDP			; std::locale::facet::_Incref
_TEXT	ENDS
PUBLIC	?_Decref@facet@locale@std@@QAEPAV123@XZ		; std::locale::facet::_Decref
; Function compile flags: /Ogtpy
;	COMDAT ?_Decref@facet@locale@std@@QAEPAV123@XZ
_TEXT	SEGMENT
__Lock$11581 = -4					; size = 4
?_Decref@facet@locale@std@@QAEPAV123@XZ PROC		; std::locale::facet::_Decref, COMDAT
; _this$ = ecx
; Line 124
	push	ecx
	push	esi
	push	edi
	mov	edi, ecx
; Line 125
	push	0
	lea	ecx, DWORD PTR __Lock$11581[esp+16]
	call	??0_Lockit@std@@QAE@H@Z			; std::_Lockit::_Lockit
; Line 126
	mov	eax, DWORD PTR [edi+4]
	test	eax, eax
	jbe	SHORT $LN1@Decref
	cmp	eax, -1
	jae	SHORT $LN1@Decref
; Line 127
	add	eax, -1
	mov	DWORD PTR [edi+4], eax
$LN1@Decref:
; Line 128
	mov	esi, DWORD PTR [edi+4]
	neg	esi
	sbb	esi, esi
	not	esi
	lea	ecx, DWORD PTR __Lock$11581[esp+12]
	and	esi, edi
	call	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
	pop	edi
	mov	eax, esi
	pop	esi
; Line 130
	pop	ecx
	ret	0
?_Decref@facet@locale@std@@QAEPAV123@XZ ENDP		; std::locale::facet::_Decref
_TEXT	ENDS
PUBLIC	?_Register@facet@locale@std@@QAEXXZ		; std::locale::facet::_Register
EXTRN	?facet_Register@facet@locale@std@@CAXPAV123@@Z:PROC ; std::locale::facet::facet_Register
; Function compile flags: /Ogtpy
;	COMDAT ?_Register@facet@locale@std@@QAEXXZ
_TEXT	SEGMENT
?_Register@facet@locale@std@@QAEXXZ PROC		; std::locale::facet::_Register, COMDAT
; _this$ = ecx
; Line 134
	push	ecx
	call	?facet_Register@facet@locale@std@@CAXPAV123@@Z ; std::locale::facet::facet_Register
	pop	ecx
; Line 135
	ret	0
?_Register@facet@locale@std@@QAEXXZ ENDP		; std::locale::facet::_Register
_TEXT	ENDS
PUBLIC	??_7facet@locale@std@@6B@			; std::locale::facet::`vftable'
PUBLIC	??1facet@locale@std@@UAE@XZ			; std::locale::facet::~facet
PUBLIC	??_R4facet@locale@std@@6B@			; std::locale::facet::`RTTI Complete Object Locator'
PUBLIC	??_R0?AVfacet@locale@std@@@8			; std::locale::facet `RTTI Type Descriptor'
PUBLIC	??_R3facet@locale@std@@8			; std::locale::facet::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2facet@locale@std@@8			; std::locale::facet::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@facet@locale@std@@8		; std::locale::facet::`RTTI Base Class Descriptor at (0,-1,0,64)'
EXTRN	??_Efacet@locale@std@@UAEPAXI@Z:PROC		; std::locale::facet::`vector deleting destructor'
;	COMDAT ??_R1A@?0A@EA@facet@locale@std@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@facet@locale@std@@8 DD FLAT:??_R0?AVfacet@locale@std@@@8 ; std::locale::facet::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	00H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3facet@locale@std@@8
rdata$r	ENDS
;	COMDAT ??_R2facet@locale@std@@8
rdata$r	SEGMENT
??_R2facet@locale@std@@8 DD FLAT:??_R1A@?0A@EA@facet@locale@std@@8 ; std::locale::facet::`RTTI Base Class Array'
rdata$r	ENDS
;	COMDAT ??_R3facet@locale@std@@8
rdata$r	SEGMENT
??_R3facet@locale@std@@8 DD 00H				; std::locale::facet::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	01H
	DD	FLAT:??_R2facet@locale@std@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVfacet@locale@std@@@8
_DATA	SEGMENT
??_R0?AVfacet@locale@std@@@8 DD FLAT:??_7type_info@@6B@	; std::locale::facet `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVfacet@locale@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R4facet@locale@std@@6B@
rdata$r	SEGMENT
??_R4facet@locale@std@@6B@ DD 00H			; std::locale::facet::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVfacet@locale@std@@@8
	DD	FLAT:??_R3facet@locale@std@@8
rdata$r	ENDS
;	COMDAT ??_7facet@locale@std@@6B@
CONST	SEGMENT
??_7facet@locale@std@@6B@ DD FLAT:??_R4facet@locale@std@@6B@ ; std::locale::facet::`vftable'
	DD	FLAT:??_Efacet@locale@std@@UAEPAXI@Z
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ??1facet@locale@std@@UAE@XZ
_TEXT	SEGMENT
??1facet@locale@std@@UAE@XZ PROC			; std::locale::facet::~facet, COMDAT
; _this$ = ecx
; Line 165
	mov	DWORD PTR [ecx], OFFSET ??_7facet@locale@std@@6B@
; Line 166
	ret	0
??1facet@locale@std@@UAE@XZ ENDP			; std::locale::facet::~facet
_TEXT	ENDS
PUBLIC	??0facet@locale@std@@IAE@I@Z			; std::locale::facet::facet
; Function compile flags: /Ogtpy
;	COMDAT ??0facet@locale@std@@IAE@I@Z
_TEXT	SEGMENT
__Initrefs$ = 8						; size = 4
??0facet@locale@std@@IAE@I@Z PROC			; std::locale::facet::facet, COMDAT
; _this$ = ecx
; Line 171
	mov	eax, ecx
	mov	ecx, DWORD PTR __Initrefs$[esp-4]
	mov	DWORD PTR [eax], OFFSET ??_7facet@locale@std@@6B@
	mov	DWORD PTR [eax+4], ecx
; Line 172
	ret	4
??0facet@locale@std@@IAE@I@Z ENDP			; std::locale::facet::facet
_TEXT	ENDS
PUBLIC	??0locale@std@@QAE@ABV01@@Z			; std::locale::locale
; Function compile flags: /Ogtpy
;	COMDAT ??0locale@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
__Lock$74483 = 8					; size = 4
__Right$ = 8						; size = 4
??0locale@std@@QAE@ABV01@@Z PROC			; std::locale::locale, COMDAT
; _this$ = ecx
; Line 318
	mov	eax, DWORD PTR __Right$[esp-4]
	push	esi
	mov	esi, DWORD PTR [eax]
	push	edi
	mov	edi, ecx
; Line 319
	push	0
	lea	ecx, DWORD PTR __Lock$74483[esp+8]
	mov	DWORD PTR [edi], esi
	call	??0_Lockit@std@@QAE@H@Z			; std::_Lockit::_Lockit
	mov	eax, DWORD PTR [esi+4]
	cmp	eax, -1
	jae	SHORT $LN3@locale
	add	eax, 1
	mov	DWORD PTR [esi+4], eax
$LN3@locale:
	lea	ecx, DWORD PTR __Lock$74483[esp+4]
	call	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
; Line 320
	mov	eax, edi
	pop	edi
	pop	esi
	ret	4
??0locale@std@@QAE@ABV01@@Z ENDP			; std::locale::locale
_TEXT	ENDS
PUBLIC	??1locale@std@@QAE@XZ				; std::locale::~locale
; Function compile flags: /Ogtpy
;	COMDAT ??1locale@std@@QAE@XZ
_TEXT	SEGMENT
__Lock$74496 = -4					; size = 4
??1locale@std@@QAE@XZ PROC				; std::locale::~locale, COMDAT
; _this$ = ecx
; Line 374
	push	ecx
	push	edi
; Line 375
	mov	edi, DWORD PTR [ecx]
	test	edi, edi
	je	SHORT $LN4@locale@2
; Line 376
	push	0
	lea	ecx, DWORD PTR __Lock$74496[esp+12]
	call	??0_Lockit@std@@QAE@H@Z			; std::_Lockit::_Lockit
	mov	eax, DWORD PTR [edi+4]
	test	eax, eax
	jbe	SHORT $LN6@locale@2
	cmp	eax, -1
	jae	SHORT $LN6@locale@2
	add	eax, -1
	mov	DWORD PTR [edi+4], eax
$LN6@locale@2:
	push	esi
	mov	esi, DWORD PTR [edi+4]
	neg	esi
	sbb	esi, esi
	not	esi
	lea	ecx, DWORD PTR __Lock$74496[esp+12]
	and	esi, edi
	call	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
	test	esi, esi
	je	SHORT $LN9@locale@2
	mov	eax, DWORD PTR [esi]
	mov	edx, DWORD PTR [eax]
	push	1
	mov	ecx, esi
	call	edx
$LN9@locale@2:
	pop	esi
$LN4@locale@2:
	pop	edi
; Line 377
	pop	ecx
	ret	0
??1locale@std@@QAE@XZ ENDP				; std::locale::~locale
_TEXT	ENDS
PUBLIC	?_Getfacet@locale@std@@QBEPBVfacet@12@I@Z	; std::locale::_Getfacet
EXTRN	?_Getgloballocale@locale@std@@CAPAV_Locimp@12@XZ:PROC ; std::locale::_Getgloballocale
; Function compile flags: /Ogtpy
;	COMDAT ?_Getfacet@locale@std@@QBEPBVfacet@12@I@Z
_TEXT	SEGMENT
__Id$ = 8						; size = 4
?_Getfacet@locale@std@@QBEPBVfacet@12@I@Z PROC		; std::locale::_Getfacet, COMDAT
; _this$ = ecx
; Line 398
	mov	ecx, DWORD PTR [ecx]
	push	esi
	mov	esi, DWORD PTR __Id$[esp]
	cmp	esi, DWORD PTR [ecx+12]
	jae	SHORT $LN6@Getfacet
	mov	eax, DWORD PTR [ecx+8]
	mov	eax, DWORD PTR [eax+esi*4]
; Line 399
	test	eax, eax
	jne	SHORT $LN1@Getfacet
$LN10@Getfacet:
	cmp	BYTE PTR [ecx+20], 0
	je	SHORT $LN1@Getfacet
; Line 403
	call	?_Getgloballocale@locale@std@@CAPAV_Locimp@12@XZ ; std::locale::_Getgloballocale
; Line 406
	cmp	esi, DWORD PTR [eax+12]
	jae	SHORT $LN8@Getfacet
	mov	ecx, DWORD PTR [eax+8]
	mov	eax, DWORD PTR [ecx+esi*4]
	pop	esi
; Line 408
	ret	4
$LN6@Getfacet:
; Line 398
	xor	eax, eax
; Line 399
	jmp	SHORT $LN10@Getfacet
$LN8@Getfacet:
; Line 406
	xor	eax, eax
$LN1@Getfacet:
	pop	esi
; Line 408
	ret	4
?_Getfacet@locale@std@@QBEPBVfacet@12@I@Z ENDP		; std::locale::_Getfacet
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ??_Gfacet@locale@std@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_Gfacet@locale@std@@UAEPAXI@Z PROC			; std::locale::facet::`scalar deleting destructor', COMDAT
; _this$ = ecx
	test	BYTE PTR ___flags$[esp-4], 1
	push	esi
	mov	esi, ecx
	mov	DWORD PTR [esi], OFFSET ??_7facet@locale@std@@6B@
	je	SHORT $LN6@scalar@2
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN6@scalar@2:
	mov	eax, esi
	pop	esi
	ret	4
??_Gfacet@locale@std@@UAEPAXI@Z ENDP			; std::locale::facet::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	?rdstate@ios_base@std@@QBEHXZ			; std::ios_base::rdstate
; Function compile flags: /Ogtpy
;	COMDAT ?rdstate@ios_base@std@@QBEHXZ
_TEXT	SEGMENT
?rdstate@ios_base@std@@QBEHXZ PROC			; std::ios_base::rdstate, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xiosbase
; Line 299
	mov	eax, DWORD PTR [ecx+8]
; Line 300
	ret	0
?rdstate@ios_base@std@@QBEHXZ ENDP			; std::ios_base::rdstate
_TEXT	ENDS
PUBLIC	?good@ios_base@std@@QBE_NXZ			; std::ios_base::good
; Function compile flags: /Ogtpy
;	COMDAT ?good@ios_base@std@@QBE_NXZ
_TEXT	SEGMENT
?good@ios_base@std@@QBE_NXZ PROC			; std::ios_base::good, COMDAT
; _this$ = ecx
; Line 322
	xor	eax, eax
	cmp	DWORD PTR [ecx+8], eax
	sete	al
; Line 323
	ret	0
?good@ios_base@std@@QBE_NXZ ENDP			; std::ios_base::good
_TEXT	ENDS
PUBLIC	?fail@ios_base@std@@QBE_NXZ			; std::ios_base::fail
; Function compile flags: /Ogtpy
;	COMDAT ?fail@ios_base@std@@QBE_NXZ
_TEXT	SEGMENT
?fail@ios_base@std@@QBE_NXZ PROC			; std::ios_base::fail, COMDAT
; _this$ = ecx
; Line 333
	mov	eax, DWORD PTR [ecx+8]
	and	al, 6
	neg	al
	sbb	eax, eax
	neg	eax
; Line 334
	ret	0
?fail@ios_base@std@@QBE_NXZ ENDP			; std::ios_base::fail
_TEXT	ENDS
PUBLIC	?flags@ios_base@std@@QBEHXZ			; std::ios_base::flags
; Function compile flags: /Ogtpy
;	COMDAT ?flags@ios_base@std@@QBEHXZ
_TEXT	SEGMENT
?flags@ios_base@std@@QBEHXZ PROC			; std::ios_base::flags, COMDAT
; _this$ = ecx
; Line 362
	mov	eax, DWORD PTR [ecx+16]
; Line 363
	ret	0
?flags@ios_base@std@@QBEHXZ ENDP			; std::ios_base::flags
_TEXT	ENDS
PUBLIC	?getloc@ios_base@std@@QBE?AVlocale@2@XZ		; std::ios_base::getloc
; Function compile flags: /Ogtpy
;	COMDAT ?getloc@ios_base@std@@QBE?AVlocale@2@XZ
_TEXT	SEGMENT
$T74534 = -4						; size = 4
__Lock$74547 = 8					; size = 4
___$ReturnUdt$ = 8					; size = 4
?getloc@ios_base@std@@QBE?AVlocale@2@XZ PROC		; std::ios_base::getloc, COMDAT
; _this$ = ecx
; Line 418
	push	ecx
; Line 419
	mov	eax, DWORD PTR [ecx+36]
	push	esi
	mov	esi, DWORD PTR [eax]
	push	edi
	mov	edi, DWORD PTR ___$ReturnUdt$[esp+8]
	push	0
	lea	ecx, DWORD PTR __Lock$74547[esp+12]
	mov	DWORD PTR $T74534[esp+16], 0
	mov	DWORD PTR [edi], esi
	call	??0_Lockit@std@@QAE@H@Z			; std::_Lockit::_Lockit
	mov	eax, DWORD PTR [esi+4]
	cmp	eax, -1
	jae	SHORT $LN7@getloc
	add	eax, 1
	mov	DWORD PTR [esi+4], eax
$LN7@getloc:
	lea	ecx, DWORD PTR __Lock$74547[esp+8]
	call	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
	mov	eax, edi
	pop	edi
	pop	esi
; Line 420
	pop	ecx
	ret	4
?getloc@ios_base@std@@QBE?AVlocale@2@XZ ENDP		; std::ios_base::getloc
_TEXT	ENDS
PUBLIC	_get_rdtsc
; Function compile flags: /Ogtpy
;	COMDAT _get_rdtsc
_TEXT	SEGMENT
_get_rdtsc PROC						; COMDAT
; File c:\tools\eclipse\workspace\autopilot\test\pow2_test.cpp
; Line 15
	push	ebx
; Line 17
	cpuid
; Line 18
	rdtsc
; Line 16
	pop	ebx
; Line 20
	ret	0
_get_rdtsc ENDP
_TEXT	ENDS
PUBLIC	__real@400921fb54442d18
PUBLIC	?test2@@YAXXZ					; test2
EXTRN	__fltused:DWORD
;	COMDAT __real@400921fb54442d18
CONST	SEGMENT
__real@400921fb54442d18 DQ 0400921fb54442d18r	; 3.14159
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?test2@@YAXXZ
_TEXT	SEGMENT
_y$ = -8						; size = 8
_x$ = -8						; size = 8
?test2@@YAXXZ PROC					; test2, COMDAT
; Line 35
	sub	esp, 8
; Line 37
	fld	QWORD PTR __real@400921fb54442d18
	fstp	QWORD PTR _x$[esp+8]
; Line 38
	fld	QWORD PTR _x$[esp+8]
	fmul	QWORD PTR _x$[esp+8]
	fstp	QWORD PTR _y$[esp+8]
; Line 39
	add	esp, 8
	ret	0
?test2@@YAXXZ ENDP					; test2
_TEXT	ENDS
PUBLIC	?size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::size
; Function compile flags: /Ogtpy
;	COMDAT ?size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ
_TEXT	SEGMENT
?size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::size, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 1637
	mov	eax, DWORD PTR [ecx+20]
; Line 1638
	ret	0
?size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::size
_TEXT	ENDS
PUBLIC	??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z ; std::basic_ostream<char,std::char_traits<char> >::operator<<
; Function compile flags: /Ogtpy
;	COMDAT ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z
_TEXT	SEGMENT
__Pfn$ = 8						; size = 4
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z PROC ; std::basic_ostream<char,std::char_traits<char> >::operator<<, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ostream
; Line 177
	push	ecx
	call	DWORD PTR __Pfn$[esp]
	add	esp, 4
; Line 178
	ret	4
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z ENDP ; std::basic_ostream<char,std::char_traits<char> >::operator<<
_TEXT	ENDS
PUBLIC	?rdbuf@?$basic_ios@DU?$char_traits@D@std@@@std@@QBEPAV?$basic_streambuf@DU?$char_traits@D@std@@@2@XZ ; std::basic_ios<char,std::char_traits<char> >::rdbuf
; Function compile flags: /Ogtpy
;	COMDAT ?rdbuf@?$basic_ios@DU?$char_traits@D@std@@@std@@QBEPAV?$basic_streambuf@DU?$char_traits@D@std@@@2@XZ
_TEXT	SEGMENT
?rdbuf@?$basic_ios@DU?$char_traits@D@std@@@std@@QBEPAV?$basic_streambuf@DU?$char_traits@D@std@@@2@XZ PROC ; std::basic_ios<char,std::char_traits<char> >::rdbuf, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ios
; Line 85
	mov	eax, DWORD PTR [ecx+40]
; Line 86
	ret	0
?rdbuf@?$basic_ios@DU?$char_traits@D@std@@@std@@QBEPAV?$basic_streambuf@DU?$char_traits@D@std@@@2@XZ ENDP ; std::basic_ios<char,std::char_traits<char> >::rdbuf
_TEXT	ENDS
PUBLIC	?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IBEPBDXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
; Function compile flags: /Ogtpy
;	COMDAT ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IBEPBDXZ
_TEXT	SEGMENT
?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IBEPBDXZ PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 2093
	cmp	DWORD PTR [ecx+24], 16			; 00000010H
	jb	SHORT $LN3@Myptr
	mov	eax, DWORD PTR [ecx+4]
; Line 2094
	ret	0
$LN3@Myptr:
; Line 2093
	lea	eax, DWORD PTR [ecx+4]
; Line 2094
	ret	0
?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IBEPBDXZ ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
_TEXT	ENDS
PUBLIC	??0?$allocator@D@std@@QAE@XZ			; std::allocator<char>::allocator<char>
; Function compile flags: /Ogtpy
;	COMDAT ??0?$allocator@D@std@@QAE@XZ
_TEXT	SEGMENT
??0?$allocator@D@std@@QAE@XZ PROC			; std::allocator<char>::allocator<char>, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xmemory
; Line 120
	mov	eax, ecx
; Line 122
	ret	0
??0?$allocator@D@std@@QAE@XZ ENDP			; std::allocator<char>::allocator<char>
_TEXT	ENDS
PUBLIC	?fill@?$basic_ios@DU?$char_traits@D@std@@@std@@QBEDXZ ; std::basic_ios<char,std::char_traits<char> >::fill
; Function compile flags: /Ogtpy
;	COMDAT ?fill@?$basic_ios@DU?$char_traits@D@std@@@std@@QBEDXZ
_TEXT	SEGMENT
?fill@?$basic_ios@DU?$char_traits@D@std@@@std@@QBEDXZ PROC ; std::basic_ios<char,std::char_traits<char> >::fill, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ios
; Line 106
	mov	al, BYTE PTR [ecx+48]
; Line 107
	ret	0
?fill@?$basic_ios@DU?$char_traits@D@std@@@std@@QBEDXZ ENDP ; std::basic_ios<char,std::char_traits<char> >::fill
_TEXT	ENDS
PUBLIC	?pubsync@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ ; std::basic_streambuf<char,std::char_traits<char> >::pubsync
; Function compile flags: /Ogtpy
;	COMDAT ?pubsync@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ
_TEXT	SEGMENT
?pubsync@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ PROC ; std::basic_streambuf<char,std::char_traits<char> >::pubsync, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\streambuf
; Line 101
	mov	eax, DWORD PTR [ecx]
	mov	edx, DWORD PTR [eax+48]
	jmp	edx
?pubsync@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ ENDP ; std::basic_streambuf<char,std::char_traits<char> >::pubsync
_TEXT	ENDS
PUBLIC	?_Unlock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEXXZ ; std::basic_streambuf<char,std::char_traits<char> >::_Unlock
EXTRN	?_Unlock@_Mutex@std@@QAEXXZ:PROC		; std::_Mutex::_Unlock
; Function compile flags: /Ogtpy
;	COMDAT ?_Unlock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEXXZ
_TEXT	SEGMENT
?_Unlock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEXXZ PROC ; std::basic_streambuf<char,std::char_traits<char> >::_Unlock, COMDAT
; _this$ = ecx
; Line 179
	add	ecx, 4
	jmp	?_Unlock@_Mutex@std@@QAEXXZ		; std::_Mutex::_Unlock
?_Unlock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEXXZ ENDP ; std::basic_streambuf<char,std::char_traits<char> >::_Unlock
_TEXT	ENDS
PUBLIC	?_Pnavail@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IBEHXZ ; std::basic_streambuf<char,std::char_traits<char> >::_Pnavail
; Function compile flags: /Ogtpy
;	COMDAT ?_Pnavail@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IBEHXZ
_TEXT	SEGMENT
?_Pnavail@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IBEHXZ PROC ; std::basic_streambuf<char,std::char_traits<char> >::_Pnavail, COMDAT
; _this$ = ecx
; Line 278
	mov	eax, DWORD PTR [ecx+36]
	cmp	DWORD PTR [eax], 0
	je	SHORT $LN3@Pnavail
	mov	ecx, DWORD PTR [ecx+52]
	mov	eax, DWORD PTR [ecx]
; Line 279
	ret	0
$LN3@Pnavail:
; Line 278
	xor	eax, eax
; Line 279
	ret	0
?_Pnavail@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IBEHXZ ENDP ; std::basic_streambuf<char,std::char_traits<char> >::_Pnavail
_TEXT	ENDS
PUBLIC	??Bsentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QBE_NXZ ; std::basic_ostream<char,std::char_traits<char> >::sentry::operator bool
; Function compile flags: /Ogtpy
;	COMDAT ??Bsentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QBE_NXZ
_TEXT	SEGMENT
??Bsentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QBE_NXZ PROC ; std::basic_ostream<char,std::char_traits<char> >::sentry::operator bool, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ostream
; Line 120
	mov	al, BYTE PTR [ecx+4]
; Line 121
	ret	0
??Bsentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QBE_NXZ ENDP ; std::basic_ostream<char,std::char_traits<char> >::sentry::operator bool
_TEXT	ENDS
PUBLIC	?put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_J@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::put
; Function compile flags: /Ogtpy
;	COMDAT ?put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_J@Z
_TEXT	SEGMENT
___$ReturnUdt$ = 8					; size = 4
__Dest$ = 12						; size = 12
__Iosbase$ = 24						; size = 4
__Fill$ = 28						; size = 1
__Val$ = 32						; size = 8
?put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_J@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::put, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 901
	mov	eax, DWORD PTR __Val$[esp]
	movq	xmm0, QWORD PTR __Dest$[esp-4]
	mov	edx, DWORD PTR [ecx]
	mov	edx, DWORD PTR [edx+20]
	push	esi
	mov	esi, DWORD PTR __Dest$[esp+8]
	push	eax
	mov	eax, DWORD PTR __Val$[esp+4]
	push	eax
	mov	eax, DWORD PTR __Fill$[esp+8]
	push	eax
	mov	eax, DWORD PTR __Iosbase$[esp+12]
	push	eax
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], esi
	mov	esi, DWORD PTR ___$ReturnUdt$[esp+28]
	push	esi
	call	edx
	mov	eax, esi
; Line 902
	pop	esi
	ret	32					; 00000020H
?put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_J@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::put
_TEXT	ENDS
PUBLIC	?failed@?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QBE_NXZ ; std::ostreambuf_iterator<char,std::char_traits<char> >::failed
; Function compile flags: /Ogtpy
;	COMDAT ?failed@?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QBE_NXZ
_TEXT	SEGMENT
?failed@?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QBE_NXZ PROC ; std::ostreambuf_iterator<char,std::char_traits<char> >::failed, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xutility
; Line 2248
	mov	al, BYTE PTR [ecx+4]
; Line 2249
	ret	0
?failed@?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QBE_NXZ ENDP ; std::ostreambuf_iterator<char,std::char_traits<char> >::failed
_TEXT	ENDS
PUBLIC	??0?$_Iterator_with_base@Uoutput_iterator_tag@std@@XXXXU_Iterator_base@2@@std@@QAE@XZ ; std::_Iterator_with_base<std::output_iterator_tag,void,void,void,void,std::_Iterator_base>::_Iterator_with_base<std::output_iterator_tag,void,void,void,void,std::_Iterator_base>
; Function compile flags: /Ogtpy
;	COMDAT ??0?$_Iterator_with_base@Uoutput_iterator_tag@std@@XXXXU_Iterator_base@2@@std@@QAE@XZ
_TEXT	SEGMENT
??0?$_Iterator_with_base@Uoutput_iterator_tag@std@@XXXXU_Iterator_base@2@@std@@QAE@XZ PROC ; std::_Iterator_with_base<std::output_iterator_tag,void,void,void,void,std::_Iterator_base>::_Iterator_with_base<std::output_iterator_tag,void,void,void,void,std::_Iterator_base>, COMDAT
; _this$ = ecx
	mov	eax, ecx
	mov	DWORD PTR [eax], 0
	ret	0
??0?$_Iterator_with_base@Uoutput_iterator_tag@std@@XXXXU_Iterator_base@2@@std@@QAE@XZ ENDP ; std::_Iterator_with_base<std::output_iterator_tag,void,void,void,void,std::_Iterator_base>::_Iterator_with_base<std::output_iterator_tag,void,void,void,void,std::_Iterator_base>
_TEXT	ENDS
PUBLIC	?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
; Function compile flags: /Ogtpy
;	COMDAT ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ
_TEXT	SEGMENT
?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 2088
	cmp	DWORD PTR [ecx+24], 16			; 00000010H
	jb	SHORT $LN3@Myptr@2
	mov	eax, DWORD PTR [ecx+4]
; Line 2089
	ret	0
$LN3@Myptr@2:
; Line 2088
	lea	eax, DWORD PTR [ecx+4]
; Line 2089
	ret	0
?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
_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
; File c:\program files\microsoft visual studio 8\vc\include\xmemory
; Line 124
	mov	eax, ecx
; Line 126
	ret	4
??0?$allocator@D@std@@QAE@ABV01@@Z ENDP			; std::allocator<char>::allocator<char>
_TEXT	ENDS
PUBLIC	?deallocate@?$allocator@D@std@@QAEXPADI@Z	; std::allocator<char>::deallocate
; Function compile flags: /Ogtpy
;	COMDAT ?deallocate@?$allocator@D@std@@QAEXPADI@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
___formal$ = 12						; size = 4
?deallocate@?$allocator@D@std@@QAEXPADI@Z PROC		; std::allocator<char>::deallocate, COMDAT
; _this$ = ecx
; Line 141
	mov	eax, DWORD PTR __Ptr$[esp-4]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
; Line 142
	ret	8
?deallocate@?$allocator@D@std@@QAEXPADI@Z ENDP		; std::allocator<char>::deallocate
_TEXT	ENDS
PUBLIC	?tie@?$basic_ios@DU?$char_traits@D@std@@@std@@QBEPAV?$basic_ostream@DU?$char_traits@D@std@@@2@XZ ; std::basic_ios<char,std::char_traits<char> >::tie
; Function compile flags: /Ogtpy
;	COMDAT ?tie@?$basic_ios@DU?$char_traits@D@std@@@std@@QBEPAV?$basic_ostream@DU?$char_traits@D@std@@@2@XZ
_TEXT	SEGMENT
?tie@?$basic_ios@DU?$char_traits@D@std@@@std@@QBEPAV?$basic_ostream@DU?$char_traits@D@std@@@2@XZ PROC ; std::basic_ios<char,std::char_traits<char> >::tie, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ios
; Line 73
	mov	eax, DWORD PTR [ecx+44]
; Line 74
	ret	0
?tie@?$basic_ios@DU?$char_traits@D@std@@@std@@QBEPAV?$basic_ostream@DU?$char_traits@D@std@@@2@XZ ENDP ; std::basic_ios<char,std::char_traits<char> >::tie
_TEXT	ENDS
PUBLIC	?_Lock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEXXZ ; std::basic_streambuf<char,std::char_traits<char> >::_Lock
EXTRN	?_Lock@_Mutex@std@@QAEXXZ:PROC			; std::_Mutex::_Lock
; Function compile flags: /Ogtpy
;	COMDAT ?_Lock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEXXZ
_TEXT	SEGMENT
?_Lock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEXXZ PROC ; std::basic_streambuf<char,std::char_traits<char> >::_Lock, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\streambuf
; Line 174
	add	ecx, 4
	jmp	?_Lock@_Mutex@std@@QAEXXZ		; std::_Mutex::_Lock
?_Lock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEXXZ ENDP ; std::basic_streambuf<char,std::char_traits<char> >::_Lock
_TEXT	ENDS
PUBLIC	?_Pninc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAEPADXZ ; std::basic_streambuf<char,std::char_traits<char> >::_Pninc
; Function compile flags: /Ogtpy
;	COMDAT ?_Pninc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAEPADXZ
_TEXT	SEGMENT
?_Pninc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAEPADXZ PROC ; std::basic_streambuf<char,std::char_traits<char> >::_Pninc, COMDAT
; _this$ = ecx
; Line 272
	mov	eax, DWORD PTR [ecx+52]
	add	DWORD PTR [eax], -1
; Line 273
	mov	ecx, DWORD PTR [ecx+36]
	mov	eax, DWORD PTR [ecx]
	lea	edx, DWORD PTR [eax+1]
	mov	DWORD PTR [ecx], edx
; Line 274
	ret	0
?_Pninc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAEPADXZ ENDP ; std::basic_streambuf<char,std::char_traits<char> >::_Pninc
_TEXT	ENDS
PUBLIC	??0_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z ; std::basic_ostream<char,std::char_traits<char> >::_Sentry_base::_Sentry_base
; Function compile flags: /Ogtpy
;	COMDAT ??0_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z
_TEXT	SEGMENT
__Ostr$ = 8						; size = 4
??0_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z PROC ; std::basic_ostream<char,std::char_traits<char> >::_Sentry_base::_Sentry_base, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ostream
; Line 79
	mov	eax, DWORD PTR __Ostr$[esp-4]
	push	esi
	mov	esi, ecx
	mov	DWORD PTR [esi], eax
; Line 80
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [ecx+4]
	mov	eax, DWORD PTR [edx+eax+40]
	test	eax, eax
	je	SHORT $LN10@Sentry_bas
; Line 81
	lea	ecx, DWORD PTR [eax+4]
	call	?_Lock@_Mutex@std@@QAEXXZ		; std::_Mutex::_Lock
$LN10@Sentry_bas:
; Line 82
	mov	eax, esi
	pop	esi
	ret	4
??0_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z ENDP ; std::basic_ostream<char,std::char_traits<char> >::_Sentry_base::_Sentry_base
_TEXT	ENDS
PUBLIC	??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ ; std::basic_ostream<char,std::char_traits<char> >::_Sentry_base::~_Sentry_base
; Function compile flags: /Ogtpy
;	COMDAT ??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ
_TEXT	SEGMENT
??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ PROC ; std::basic_ostream<char,std::char_traits<char> >::_Sentry_base::~_Sentry_base, COMDAT
; _this$ = ecx
; Line 86
	mov	eax, DWORD PTR [ecx]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [ecx+4]
	mov	eax, DWORD PTR [edx+eax+40]
	test	eax, eax
	je	SHORT $LN8@Sentry_bas@2
; Line 87
	lea	ecx, DWORD PTR [eax+4]
	jmp	?_Unlock@_Mutex@std@@QAEXXZ		; std::_Mutex::_Unlock
$LN8@Sentry_bas@2:
; Line 88
	ret	0
??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ ENDP ; std::basic_ostream<char,std::char_traits<char> >::_Sentry_base::~_Sentry_base
_TEXT	ENDS
PUBLIC	?_Inside@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NPBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Inside
; Function compile flags: /Ogtpy
;	COMDAT ?_Inside@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NPBD@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
?_Inside@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NPBD@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Inside, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 2050
	push	esi
; Line 2052
	mov	esi, DWORD PTR [ecx+24]
	cmp	esi, 16					; 00000010H
	push	edi
	lea	eax, DWORD PTR [ecx+4]
	jb	SHORT $LN8@Inside
	mov	edx, DWORD PTR [eax]
	jmp	SHORT $LN9@Inside
$LN8@Inside:
	mov	edx, eax
$LN9@Inside:
	mov	edi, DWORD PTR __Ptr$[esp+4]
	cmp	edi, edx
	jb	SHORT $LN2@Inside
	cmp	esi, 16					; 00000010H
	jb	SHORT $LN12@Inside
	mov	eax, DWORD PTR [eax]
$LN12@Inside:
	mov	ecx, DWORD PTR [ecx+20]
	add	ecx, eax
	cmp	ecx, edi
	jbe	SHORT $LN2@Inside
	pop	edi
; Line 2055
	mov	al, 1
	pop	esi
; Line 2056
	ret	4
$LN2@Inside:
	pop	edi
; Line 2053
	xor	al, al
	pop	esi
; Line 2056
	ret	4
?_Inside@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NPBD@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Inside
_TEXT	ENDS
PUBLIC	?max_size@?$allocator@D@std@@QBEIXZ		; std::allocator<char>::max_size
; Function compile flags: /Ogtpy
;	COMDAT ?max_size@?$allocator@D@std@@QBEIXZ
_TEXT	SEGMENT
?max_size@?$allocator@D@std@@QBEIXZ PROC		; std::allocator<char>::max_size, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xmemory
; Line 167
	or	eax, -1
; Line 168
	ret	0
?max_size@?$allocator@D@std@@QBEIXZ ENDP		; std::allocator<char>::max_size
_TEXT	ENDS
PUBLIC	__real@3ff0000000000000
PUBLIC	??$_Pow_int@N@@YANNH@Z				; _Pow_int<double>
;	COMDAT __real@3ff0000000000000
; File c:\program files\microsoft visual studio 8\vc\include\math.h
CONST	SEGMENT
__real@3ff0000000000000 DQ 03ff0000000000000r	; 1
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ??$_Pow_int@N@@YANNH@Z
_TEXT	SEGMENT
tv74 = -8						; size = 8
__X$ = 8						; size = 8
__Y$ = 16						; size = 4
??$_Pow_int@N@@YANNH@Z PROC				; _Pow_int<double>, COMDAT
; Line 475
	mov	ecx, DWORD PTR __Y$[esp-4]
	sub	esp, 8
	test	ecx, ecx
; Line 476
	mov	eax, ecx
; Line 477
	jge	SHORT $LN6@Pow_int
; Line 478
	neg	eax
$LN6@Pow_int:
; Line 479
	movsd	xmm2, QWORD PTR __real@3ff0000000000000
	movsd	xmm1, QWORD PTR __X$[esp+4]
	movapd	xmm0, xmm2
$LL5@Pow_int:
; Line 480
	test	al, 1
	je	SHORT $LN2@Pow_int
; Line 481
	mulsd	xmm0, xmm1
$LN2@Pow_int:
; Line 482
	shr	eax, 1
	je	SHORT $LN14@Pow_int
	movapd	xmm3, xmm1
	mulsd	xmm3, xmm1
	movapd	xmm1, xmm3
	jmp	SHORT $LL5@Pow_int
$LN14@Pow_int:
; Line 483
	test	ecx, ecx
	jge	SHORT $LN10@Pow_int
	divsd	xmm2, xmm0
	movsd	QWORD PTR tv74[esp+8], xmm2
	fld	QWORD PTR tv74[esp+8]
	add	esp, 8
	ret	0
$LN10@Pow_int:
	movsd	QWORD PTR tv74[esp+8], xmm0
	fld	QWORD PTR tv74[esp+8]
	add	esp, 8
	ret	0
??$_Pow_int@N@@YANNH@Z ENDP				; _Pow_int<double>
_TEXT	ENDS
PUBLIC	__TI2?AVbad_alloc@std@@
PUBLIC	??$_Allocate@D@std@@YAPADIPAD@Z			; std::_Allocate<char>
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	??2@YAPAXI@Z:PROC				; operator new
EXTRN	__CxxThrowException@8:PROC
EXTRN	??0exception@std@@QAE@ABV01@@Z:PROC		; std::exception::exception
;	COMDAT __CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
; File c:\program files\microsoft visual studio 8\vc\include\exception
xdata$x	SEGMENT
__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12 DD 00H
	DD	FLAT:??_R0?AVexception@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	0cH
	DD	FLAT:??0exception@std@@QAE@ABV01@@Z
xdata$x	ENDS
;	COMDAT __CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QAE@ABV01@@Z12
xdata$x	SEGMENT
__CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QAE@ABV01@@Z12 DD 00H
	DD	FLAT:??_R0?AVbad_alloc@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	0cH
	DD	FLAT:??0bad_alloc@std@@QAE@ABV01@@Z
xdata$x	ENDS
;	COMDAT __CTA2?AVbad_alloc@std@@
xdata$x	SEGMENT
__CTA2?AVbad_alloc@std@@ DD 02H
	DD	FLAT:__CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QAE@ABV01@@Z12
	DD	FLAT:__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
xdata$x	ENDS
;	COMDAT __TI2?AVbad_alloc@std@@
xdata$x	SEGMENT
__TI2?AVbad_alloc@std@@ DD 00H
	DD	FLAT:??1bad_alloc@std@@UAE@XZ
	DD	00H
	DD	FLAT:__CTA2?AVbad_alloc@std@@
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??$_Allocate@D@std@@YAPADIPAD@Z
_TEXT	SEGMENT
$T74668 = -12						; size = 12
$T74673 = 8						; size = 4
__Count$ = 8						; size = 4
___formal$ = 12						; size = 4
??$_Allocate@D@std@@YAPADIPAD@Z PROC			; std::_Allocate<char>, COMDAT
; File c:\program files\microsoft visual studio 8\vc\include\xmemory
; Line 38
	mov	ecx, DWORD PTR __Count$[esp-4]
	sub	esp, 12					; 0000000cH
	test	ecx, ecx
	ja	SHORT $LN3@Allocate
; Line 39
	xor	ecx, ecx
$LN1@Allocate:
; Line 44
	push	ecx
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
; Line 45
	add	esp, 12					; 0000000cH
	ret	0
$LN3@Allocate:
; Line 40
	or	eax, -1
	xor	edx, edx
	div	ecx
	cmp	eax, 1
	jae	SHORT $LN1@Allocate
; Line 41
	lea	eax, DWORD PTR $T74673[esp+8]
	push	eax
	lea	ecx, DWORD PTR $T74668[esp+16]
	mov	DWORD PTR $T74673[esp+12], 0
	call	??0exception@std@@QAE@ABQBD@Z		; std::exception::exception
	push	OFFSET __TI2?AVbad_alloc@std@@
	lea	ecx, DWORD PTR $T74668[esp+16]
	push	ecx
	mov	DWORD PTR $T74668[esp+20], OFFSET ??_7bad_alloc@std@@6B@
	call	__CxxThrowException@8
$LN8@Allocate:
	int	3
??$_Allocate@D@std@@YAPADIPAD@Z ENDP			; std::_Allocate<char>
; 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	?_Init@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IAEXABV_Locinfo@2@@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Init
; Function compile flags: /Ogtpy
;	COMDAT ?_Init@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IAEXABV_Locinfo@2@@Z
_TEXT	SEGMENT
__Lobj$ = 8						; size = 4
?_Init@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IAEXABV_Locinfo@2@@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Init, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 855
	push	esi
	mov	esi, ecx
; Line 856
	call	__Getcvt
	mov	DWORD PTR [esi+8], eax
	mov	DWORD PTR [esi+12], edx
	pop	esi
; Line 857
	ret	4
?_Init@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IAEXABV_Locinfo@2@@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Init
_TEXT	ENDS
PUBLIC	??$_Char_traits_cat@U?$char_traits@D@std@@@std@@YA?AU_Secure_char_traits_tag@0@XZ ; std::_Char_traits_cat<std::char_traits<char> >
; Function compile flags: /Ogtpy
;	COMDAT ??$_Char_traits_cat@U?$char_traits@D@std@@@std@@YA?AU_Secure_char_traits_tag@0@XZ
_TEXT	SEGMENT
__Secure$ = -1						; size = 1
??$_Char_traits_cat@U?$char_traits@D@std@@@std@@YA?AU_Secure_char_traits_tag@0@XZ PROC ; std::_Char_traits_cat<std::char_traits<char> >, COMDAT
; File c:\program files\microsoft visual studio 8\vc\include\iosfwd
; Line 568
	push	ecx
; Line 570
	mov	al, BYTE PTR __Secure$[esp+4]
; Line 571
	pop	ecx
	ret	0
??$_Char_traits_cat@U?$char_traits@D@std@@@std@@YA?AU_Secure_char_traits_tag@0@XZ ENDP ; std::_Char_traits_cat<std::char_traits<char> >
_TEXT	ENDS
PUBLIC	??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z ; std::_Traits_helper::copy_s<std::char_traits<char> >
; Function compile flags: /Ogtpy
;	COMDAT ??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z
_TEXT	SEGMENT
__First1$ = 8						; size = 4
__Size$ = 12						; size = 4
__First2$ = 16						; size = 4
__Count$ = 20						; size = 4
___formal$ = 24						; size = 1
??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z PROC ; std::_Traits_helper::copy_s<std::char_traits<char> >, COMDAT
; Line 590
	mov	eax, DWORD PTR __Count$[esp-4]
	mov	ecx, DWORD PTR __First2$[esp-4]
	mov	edx, DWORD PTR __Size$[esp-4]
	push	esi
	mov	esi, DWORD PTR __First1$[esp]
	push	eax
	push	ecx
	push	edx
	push	esi
	call	_memcpy_s
	add	esp, 16					; 00000010H
	mov	eax, esi
	pop	esi
; Line 591
	ret	0
??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z ENDP ; std::_Traits_helper::copy_s<std::char_traits<char> >
_TEXT	ENDS
PUBLIC	??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z ; std::_Traits_helper::move_s<std::char_traits<char> >
; Function compile flags: /Ogtpy
;	COMDAT ??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z
_TEXT	SEGMENT
__First1$ = 8						; size = 4
__Size$ = 12						; size = 4
__First2$ = 16						; size = 4
__Count$ = 20						; size = 4
___formal$ = 24						; size = 1
??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z PROC ; std::_Traits_helper::move_s<std::char_traits<char> >, COMDAT
; Line 617
	mov	eax, DWORD PTR __Count$[esp-4]
	mov	ecx, DWORD PTR __First2$[esp-4]
	mov	edx, DWORD PTR __Size$[esp-4]
	push	esi
	mov	esi, DWORD PTR __First1$[esp]
	push	eax
	push	ecx
	push	edx
	push	esi
	call	_memmove_s
	add	esp, 16					; 00000010H
	mov	eax, esi
	pop	esi
; Line 618
	ret	0
??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z ENDP ; std::_Traits_helper::move_s<std::char_traits<char> >
_TEXT	ENDS
PUBLIC	?pow@@YANNH@Z					; pow
; Function compile flags: /Ogtpy
;	COMDAT ?pow@@YANNH@Z
_TEXT	SEGMENT
__X$ = 8						; size = 8
__Y$ = 16						; size = 4
?pow@@YANNH@Z PROC					; pow, COMDAT
; File c:\program files\microsoft visual studio 8\vc\include\math.h
; Line 490
	mov	eax, DWORD PTR __Y$[esp-4]
	fld	QWORD PTR __X$[esp-4]
	push	eax
	sub	esp, 8
	fstp	QWORD PTR [esp]
	call	??$_Pow_int@N@@YANNH@Z			; _Pow_int<double>
	add	esp, 12					; 0000000cH
	ret	0
?pow@@YANNH@Z ENDP					; pow
_TEXT	ENDS
PUBLIC	?test1@@YAXXZ					; test1
; Function compile flags: /Ogtpy
;	COMDAT ?test1@@YAXXZ
_TEXT	SEGMENT
$T74719 = -8						; size = 8
_y$ = -8						; size = 8
_x$ = -8						; size = 8
?test1@@YAXXZ PROC					; test1, COMDAT
; File c:\tools\eclipse\workspace\autopilot\test\pow2_test.cpp
; Line 30
	sub	esp, 8
; Line 32
	fld	QWORD PTR __real@400921fb54442d18
; Line 33
	movsd	xmm1, QWORD PTR __real@3ff0000000000000
	fstp	QWORD PTR _x$[esp+8]
	mov	eax, 2
	fld	QWORD PTR _x$[esp+8]
	fstp	QWORD PTR $T74719[esp+8]
	movsd	xmm0, QWORD PTR $T74719[esp+8]
$LL9@test1:
	test	al, 1
	je	SHORT $LN6@test1
	mulsd	xmm1, xmm0
$LN6@test1:
	shr	eax, 1
	je	SHORT $LN19@test1
	movapd	xmm2, xmm0
	mulsd	xmm2, xmm0
	movapd	xmm0, xmm2
	jmp	SHORT $LL9@test1
$LN19@test1:
	movsd	QWORD PTR _y$[esp+8], xmm1
; Line 34
	add	esp, 8
	ret	0
?test1@@YAXXZ ENDP					; test1
_TEXT	ENDS
PUBLIC	??0?$_String_val@DV?$allocator@D@std@@@std@@IAE@V?$allocator@D@1@@Z ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >
; Function compile flags: /Ogtpy
;	COMDAT ??0?$_String_val@DV?$allocator@D@std@@@std@@IAE@V?$allocator@D@1@@Z
_TEXT	SEGMENT
__Al$ = 8						; size = 1
??0?$_String_val@DV?$allocator@D@std@@@std@@IAE@V?$allocator@D@1@@Z PROC ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 471
	mov	eax, ecx
; Line 472
	ret	4
??0?$_String_val@DV?$allocator@D@std@@@std@@IAE@V?$allocator@D@1@@Z ENDP ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >
_TEXT	ENDS
PUBLIC	??0?$_String_val@DV?$allocator@D@std@@@std@@QAE@ABV01@@Z ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >
; Function compile flags: /Ogtpy
;	COMDAT ??0?$_String_val@DV?$allocator@D@std@@@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
__Right$ = 8						; size = 4
??0?$_String_val@DV?$allocator@D@std@@@std@@QAE@ABV01@@Z PROC ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >, COMDAT
; _this$ = ecx
; Line 477
	mov	eax, ecx
; Line 484
	ret	4
??0?$_String_val@DV?$allocator@D@std@@@std@@QAE@ABV01@@Z ENDP ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >
_TEXT	ENDS
PUBLIC	?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z ; std::basic_streambuf<char,std::char_traits<char> >::sputc
; Function compile flags: /Ogtpy
;	COMDAT ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z
_TEXT	SEGMENT
__Ch$ = 8						; size = 1
?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z PROC ; std::basic_streambuf<char,std::char_traits<char> >::sputc, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\streambuf
; Line 164
	mov	eax, DWORD PTR [ecx+36]
	cmp	DWORD PTR [eax], 0
	je	SHORT $LN3@sputc
	mov	edx, DWORD PTR [ecx+52]
	cmp	DWORD PTR [edx], 0
	jle	SHORT $LN3@sputc
	mov	eax, edx
	add	DWORD PTR [eax], -1
	mov	ecx, DWORD PTR [ecx+36]
	mov	eax, DWORD PTR [ecx]
	lea	edx, DWORD PTR [eax+1]
	mov	DWORD PTR [ecx], edx
	mov	cl, BYTE PTR __Ch$[esp-4]
	mov	BYTE PTR [eax], cl
	movzx	eax, cl
; Line 165
	ret	4
$LN3@sputc:
; Line 164
	movzx	edx, BYTE PTR __Ch$[esp-4]
	mov	eax, DWORD PTR [ecx]
	mov	eax, DWORD PTR [eax+4]
	mov	DWORD PTR __Ch$[esp-4], edx
	jmp	eax
?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z ENDP ; std::basic_streambuf<char,std::char_traits<char> >::sputc
_TEXT	ENDS
PUBLIC	??0?$_Outit_with_base@U_Iterator_base@std@@@std@@QAE@XZ ; std::_Outit_with_base<std::_Iterator_base>::_Outit_with_base<std::_Iterator_base>
; Function compile flags: /Ogtpy
;	COMDAT ??0?$_Outit_with_base@U_Iterator_base@std@@@std@@QAE@XZ
_TEXT	SEGMENT
??0?$_Outit_with_base@U_Iterator_base@std@@@std@@QAE@XZ PROC ; std::_Outit_with_base<std::_Iterator_base>::_Outit_with_base<std::_Iterator_base>, COMDAT
; _this$ = ecx
	mov	eax, ecx
	mov	DWORD PTR [eax], 0
	ret	0
??0?$_Outit_with_base@U_Iterator_base@std@@@std@@QAE@XZ ENDP ; std::_Outit_with_base<std::_Iterator_base>::_Outit_with_base<std::_Iterator_base>
_TEXT	ENDS
PUBLIC	?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Eos
; Function compile flags: /Ogtpy
;	COMDAT ?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z
_TEXT	SEGMENT
__Newsize$ = 8						; size = 4
?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Eos, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 2031
	cmp	DWORD PTR [ecx+24], 16			; 00000010H
	mov	eax, DWORD PTR __Newsize$[esp-4]
	mov	DWORD PTR [ecx+20], eax
	jb	SHORT $LN5@Eos
	mov	ecx, DWORD PTR [ecx+4]
	mov	BYTE PTR [ecx+eax], 0
; Line 2032
	ret	4
; Line 2031
$LN5@Eos:
	mov	BYTE PTR [ecx+eax+4], 0
; Line 2032
	ret	4
?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Eos
_TEXT	ENDS
PUBLIC	?max_size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::max_size
; Function compile flags: /Ogtpy
;	COMDAT ?max_size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ
_TEXT	SEGMENT
?max_size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::max_size, COMDAT
; _this$ = ecx
; Line 1643
	mov	eax, -2					; fffffffeH
; Line 1644
	ret	0
?max_size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::max_size
_TEXT	ENDS
PUBLIC	?allocate@?$allocator@D@std@@QAEPADI@Z		; std::allocator<char>::allocate
; Function compile flags: /Ogtpy
;	COMDAT ?allocate@?$allocator@D@std@@QAEPADI@Z
_TEXT	SEGMENT
__Count$ = 8						; size = 4
?allocate@?$allocator@D@std@@QAEPADI@Z PROC		; std::allocator<char>::allocate, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xmemory
; Line 146
	mov	eax, DWORD PTR __Count$[esp-4]
	push	0
	push	eax
	call	??$_Allocate@D@std@@YAPADIPAD@Z		; std::_Allocate<char>
	add	esp, 8
; Line 147
	ret	4
?allocate@?$allocator@D@std@@QAEPADI@Z ENDP		; std::allocator<char>::allocate
_TEXT	ENDS
PUBLIC	??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z ; std::_Traits_helper::copy_s<std::char_traits<char> >
; Function compile flags: /Ogtpy
;	COMDAT ??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z
_TEXT	SEGMENT
__First1$ = 8						; size = 4
__Size$ = 12						; size = 4
__First2$ = 16						; size = 4
__Count$ = 20						; size = 4
??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z PROC ; std::_Traits_helper::copy_s<std::char_traits<char> >, COMDAT
; File c:\program files\microsoft visual studio 8\vc\include\iosfwd
; Line 582
	mov	eax, DWORD PTR __Count$[esp-4]
	mov	ecx, DWORD PTR __First2$[esp-4]
	mov	edx, DWORD PTR __Size$[esp-4]
	push	esi
	mov	esi, DWORD PTR __First1$[esp]
	push	eax
	push	ecx
	push	edx
	push	esi
	call	_memcpy_s
	add	esp, 16					; 00000010H
	mov	eax, esi
	pop	esi
; Line 583
	ret	0
??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z ENDP ; std::_Traits_helper::copy_s<std::char_traits<char> >
_TEXT	ENDS
PUBLIC	??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z ; std::_Traits_helper::move_s<std::char_traits<char> >
; Function compile flags: /Ogtpy
;	COMDAT ??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z
_TEXT	SEGMENT
__First1$ = 8						; size = 4
__Size$ = 12						; size = 4
__First2$ = 16						; size = 4
__Count$ = 20						; size = 4
??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z PROC ; std::_Traits_helper::move_s<std::char_traits<char> >, COMDAT
; Line 609
	mov	eax, DWORD PTR __Count$[esp-4]
	mov	ecx, DWORD PTR __First2$[esp-4]
	mov	edx, DWORD PTR __Size$[esp-4]
	push	esi
	mov	esi, DWORD PTR __First1$[esp]
	push	eax
	push	ecx
	push	edx
	push	esi
	call	_memmove_s
	add	esp, 16					; 00000010H
	mov	eax, esi
	pop	esi
; Line 610
	ret	0
??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z ENDP ; std::_Traits_helper::move_s<std::char_traits<char> >
_TEXT	ENDS
PUBLIC	?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy
; Function compile flags: /Ogtpy
;	COMDAT ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z
_TEXT	SEGMENT
__Built$ = 8						; size = 1
__Newsize$ = 12						; size = 4
?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 2067
	cmp	BYTE PTR __Built$[esp-4], 0
	push	esi
	push	edi
	mov	edi, DWORD PTR __Newsize$[esp+4]
	mov	esi, ecx
	je	SHORT $LN15@Tidy
; Line 2069
	cmp	DWORD PTR [esi+24], 16			; 00000010H
	jb	SHORT $LN15@Tidy
; Line 2072
	test	edi, edi
	lea	eax, DWORD PTR [esi+4]
	push	ebx
	mov	ebx, DWORD PTR [eax]
	jbe	SHORT $LN13@Tidy
; Line 2073
	push	edi
	push	ebx
	push	16					; 00000010H
	push	eax
	call	_memcpy_s
	add	esp, 16					; 00000010H
$LN13@Tidy:
; Line 2074
	push	ebx
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
	pop	ebx
$LN15@Tidy:
; Line 2077
	mov	DWORD PTR [esi+20], edi
	mov	DWORD PTR [esi+24], 15			; 0000000fH
	mov	BYTE PTR [esi+edi+4], 0
	pop	edi
	pop	esi
; Line 2078
	ret	8
?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy
_TEXT	ENDS
PUBLIC	??0?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAE@PAV?$basic_streambuf@DU?$char_traits@D@std@@@1@@Z ; std::ostreambuf_iterator<char,std::char_traits<char> >::ostreambuf_iterator<char,std::char_traits<char> >
; Function compile flags: /Ogtpy
;	COMDAT ??0?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAE@PAV?$basic_streambuf@DU?$char_traits@D@std@@@1@@Z
_TEXT	SEGMENT
__Sb$ = 8						; size = 4
??0?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAE@PAV?$basic_streambuf@DU?$char_traits@D@std@@@1@@Z PROC ; std::ostreambuf_iterator<char,std::char_traits<char> >::ostreambuf_iterator<char,std::char_traits<char> >, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xutility
; Line 2214
	mov	eax, ecx
	mov	ecx, DWORD PTR __Sb$[esp-4]
	mov	DWORD PTR [eax], 0
	mov	BYTE PTR [eax+4], 0
	mov	DWORD PTR [eax+8], ecx
; Line 2215
	ret	4
??0?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAE@PAV?$basic_streambuf@DU?$char_traits@D@std@@@1@@Z ENDP ; std::ostreambuf_iterator<char,std::char_traits<char> >::ostreambuf_iterator<char,std::char_traits<char> >
_TEXT	ENDS
PUBLIC	?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::erase
EXTRN	?_Xran@_String_base@std@@SAXXZ:PROC		; std::_String_base::_Xran
; Function compile flags: /Ogtpy
;	COMDAT ?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@II@Z
_TEXT	SEGMENT
tv130 = 8						; size = 4
__Off$ = 8						; size = 4
__Count$ = 12						; size = 4
?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@II@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::erase, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 1240
	push	ebx
; Line 1241
	mov	ebx, DWORD PTR __Off$[esp]
	push	esi
	mov	esi, ecx
	cmp	DWORD PTR [esi+20], ebx
	push	edi
	jae	SHORT $LN3@erase
; Line 1242
	call	?_Xran@_String_base@std@@SAXXZ		; std::_String_base::_Xran
$LN3@erase:
; Line 1243
	mov	eax, DWORD PTR [esi+20]
	mov	edi, DWORD PTR __Count$[esp+8]
	sub	eax, ebx
	cmp	eax, edi
; Line 1244
	cmovb	edi, eax
; Line 1245
	test	edi, edi
	jbe	SHORT $LN30@erase
; Line 1248
	mov	ecx, DWORD PTR [esi+24]
	cmp	ecx, 16					; 00000010H
	push	ebp
	lea	ebp, DWORD PTR [esi+4]
	jb	SHORT $LN8@erase
	mov	edx, DWORD PTR [ebp]
	mov	DWORD PTR tv130[esp+12], edx
	jmp	SHORT $LN9@erase
$LN8@erase:
	mov	DWORD PTR tv130[esp+12], ebp
$LN9@erase:
	cmp	ecx, 16					; 00000010H
	jb	SHORT $LN12@erase
	mov	edx, DWORD PTR [ebp]
	jmp	SHORT $LN13@erase
$LN12@erase:
	mov	edx, ebp
$LN13@erase:
	sub	eax, edi
	push	eax
	mov	eax, DWORD PTR tv130[esp+16]
	add	eax, ebx
	add	eax, edi
	push	eax
	sub	ecx, ebx
	push	ecx
	add	edx, ebx
	push	edx
	call	_memmove_s
; Line 1249
	mov	eax, DWORD PTR [esi+20]
	sub	eax, edi
	add	esp, 16					; 00000010H
; Line 1250
	cmp	DWORD PTR [esi+24], 16			; 00000010H
	mov	DWORD PTR [esi+20], eax
	jb	SHORT $LN26@erase
	mov	ebp, DWORD PTR [ebp]
$LN26@erase:
	mov	BYTE PTR [eax+ebp], 0
	pop	ebp
$LN30@erase:
	pop	edi
; Line 1252
	mov	eax, esi
	pop	esi
	pop	ebx
; Line 1253
	ret	8
?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@II@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::erase
_TEXT	ENDS
PUBLIC	?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy
EXTRN	___security_cookie:DWORD
EXTRN	___CxxFrameHandler3:PROC
EXTRN	@__security_check_cookie@4:PROC
;	COMDAT xdata$x
; File c:\program files\microsoft visual studio 8\vc\include\iosfwd
xdata$x	SEGMENT
__catchsym$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$5 DD 040H
	DD	00H
	DD	00H
	DD	FLAT:__catch$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$0
__catchsym$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$4 DD 040H
	DD	00H
	DD	00H
	DD	FLAT:__catch$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$1
__unwindtable$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z DD 0ffffffffH
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	01H
	DD	00H
	DD	01H
	DD	00H
__ehfuncinfo$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z DD 019930522H
	DD	04H
	DD	FLAT:__unwindtable$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z
	DD	02H
	DD	FLAT:__tryblocktable$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z
	DD	2 DUP(00H)
	DD	00H
	DD	01H
__tryblocktable$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z DD 02H
	DD	02H
	DD	03H
	DD	01H
	DD	FLAT:__catchsym$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$4
	DD	00H
	DD	00H
	DD	03H
	DD	01H
	DD	FLAT:__catchsym$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$5
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z
_TEXT	SEGMENT
__Newres$ = -24						; size = 4
_this$ = -20						; size = 4
__$EHRec$ = -16						; size = 16
__Ptr$ = 8						; size = 4
__Newsize$ = 8						; size = 4
__Oldlen$ = 12						; size = 4
?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 2000
	push	ebp
	mov	ebp, esp
	push	-1
	push	__ehhandler$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	sub	esp, 12					; 0000000cH
	push	ebx
	push	esi
	push	edi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, ebp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[ebp+4]
	mov	DWORD PTR fs:0, eax
	mov	DWORD PTR __$EHRec$[ebp], esp
	mov	edi, ecx
	mov	DWORD PTR _this$[ebp], edi
; Line 2001
	mov	eax, DWORD PTR __Newsize$[ebp]
	mov	esi, eax
	or	esi, 15					; 0000000fH
; Line 2002
	cmp	esi, -2					; fffffffeH
	jbe	SHORT $LN6@Copy
; Line 2003
	mov	esi, eax
; Line 2004
	jmp	SHORT $LN4@Copy
$LN6@Copy:
; Line 2005
	mov	ebx, DWORD PTR [edi+24]
	mov	eax, -1431655765			; aaaaaaabH
	mul	esi
	mov	ecx, ebx
	shr	ecx, 1
	shr	edx, 1
	cmp	edx, ecx
	jae	SHORT $LN4@Copy
	mov	eax, -2					; fffffffeH
	sub	eax, ecx
	cmp	ebx, eax
	ja	SHORT $LN4@Copy
; Line 2006
	lea	esi, DWORD PTR [ecx+ebx]
$LN4@Copy:
; Line 2010
	lea	ecx, DWORD PTR [esi+1]
	push	0
	push	ecx
	mov	DWORD PTR __$EHRec$[ebp+12], 0
	call	??$_Allocate@D@std@@YAPADIPAD@Z		; std::_Allocate<char>
	add	esp, 8
	mov	DWORD PTR __Ptr$[ebp], eax
; Line 2019
	jmp	SHORT $LN16@Copy
__catch$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$0:
; Line 2012
	mov	eax, DWORD PTR __Newsize$[ebp]
	mov	DWORD PTR __$EHRec$[ebp], esp
	mov	DWORD PTR __Newres$[ebp], eax
; Line 2014
	add	eax, 1
	push	0
	push	eax
	mov	BYTE PTR __$EHRec$[ebp+12], 2
	call	??$_Allocate@D@std@@YAPADIPAD@Z		; std::_Allocate<char>
	mov	DWORD PTR __Ptr$[ebp], eax
	add	esp, 8
; Line 2019
	mov	eax, $LN106@Copy
	ret	0
$LN106@Copy:
	mov	edi, DWORD PTR _this$[ebp]
	mov	esi, DWORD PTR __Newres$[ebp]
$LN16@Copy:
; Line 2021
	mov	ebx, DWORD PTR __Oldlen$[ebp]
	test	ebx, ebx
	jbe	SHORT $LN71@Copy
; Line 2022
	cmp	DWORD PTR [edi+24], 16			; 00000010H
	jb	SHORT $LN63@Copy
	mov	eax, DWORD PTR [edi+4]
	jmp	SHORT $LN64@Copy
$LN63@Copy:
	lea	eax, DWORD PTR [edi+4]
$LN64@Copy:
	push	ebx
	push	eax
	mov	eax, DWORD PTR __Ptr$[ebp]
	lea	edx, DWORD PTR [esi+1]
	push	edx
	push	eax
	call	_memcpy_s
	add	esp, 16					; 00000010H
$LN71@Copy:
; Line 2023
	cmp	DWORD PTR [edi+24], 16			; 00000010H
	jb	SHORT $LN87@Copy
	mov	ecx, DWORD PTR [edi+4]
	push	ecx
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN87@Copy:
; Line 2026
	cmp	esi, 16					; 00000010H
	mov	ecx, DWORD PTR __Ptr$[ebp]
	lea	eax, DWORD PTR [edi+4]
	mov	BYTE PTR [eax], 0
	mov	DWORD PTR [eax], ecx
	mov	DWORD PTR [edi+24], esi
	mov	DWORD PTR [edi+20], ebx
	jb	SHORT $LN101@Copy
	mov	eax, ecx
$LN101@Copy:
	mov	BYTE PTR [eax+ebx], 0
; Line 2027
	mov	ecx, DWORD PTR __$EHRec$[ebp+4]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	edi
	pop	esi
	pop	ebx
	mov	esp, ebp
	pop	ebp
	ret	8
__catch$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$1:
; Line 2016
	mov	esi, DWORD PTR _this$[ebp]
	cmp	DWORD PTR [esi+24], 16			; 00000010H
	jb	SHORT $LN51@Copy
	mov	edx, DWORD PTR [esi+4]
	push	edx
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN51@Copy:
; Line 2017
	push	0
	mov	DWORD PTR [esi+24], 15			; 0000000fH
	mov	DWORD PTR [esi+20], 0
	push	0
	mov	BYTE PTR [esi+4], 0
	call	__CxxThrowException@8
$LN109@Copy:
	int	3
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__ehhandler$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx+12]
	mov	ecx, DWORD PTR [edx-28]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy
PUBLIC	??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
; Function compile flags: /Ogtpy
;	COMDAT ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ
_TEXT	SEGMENT
??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >, COMDAT
; _this$ = ecx
; Line 564
	mov	eax, ecx
; Line 565
	xor	ecx, ecx
	mov	DWORD PTR [eax+24], 15			; 0000000fH
	mov	DWORD PTR [eax+20], ecx
	mov	BYTE PTR [eax+4], cl
; Line 566
	ret	0
??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
_TEXT	ENDS
PUBLIC	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
; Function compile flags: /Ogtpy
;	COMDAT ??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ
_TEXT	SEGMENT
??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >, COMDAT
; _this$ = ecx
; Line 904
	push	esi
	mov	esi, ecx
; Line 905
	cmp	DWORD PTR [esi+24], 16			; 00000010H
	jb	SHORT $LN17@basic_stri
	mov	eax, DWORD PTR [esi+4]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN17@basic_stri:
	xor	eax, eax
	mov	DWORD PTR [esi+24], 15			; 0000000fH
	mov	DWORD PTR [esi+20], eax
	mov	BYTE PTR [esi+4], al
	pop	esi
; Line 906
	ret	0
??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
_TEXT	ENDS
PUBLIC	?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NI_N@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Grow
EXTRN	?_Xlen@_String_base@std@@SAXXZ:PROC		; std::_String_base::_Xlen
; Function compile flags: /Ogtpy
;	COMDAT ?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NI_N@Z
_TEXT	SEGMENT
__Newsize$ = 8						; size = 4
__Trim$ = 12						; size = 1
?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NI_N@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Grow, COMDAT
; _this$ = ecx
; Line 2036
	push	ebx
; Line 2037
	mov	ebx, DWORD PTR __Newsize$[esp]
	cmp	ebx, -2					; fffffffeH
	push	esi
	mov	esi, ecx
	jbe	SHORT $LN6@Grow
; Line 2038
	call	?_Xlen@_String_base@std@@SAXXZ		; std::_String_base::_Xlen
$LN6@Grow:
; Line 2039
	mov	eax, DWORD PTR [esi+24]
	cmp	eax, ebx
	jae	SHORT $LN5@Grow
; Line 2040
	mov	eax, DWORD PTR [esi+20]
	push	eax
	push	ebx
	mov	ecx, esi
	call	?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy
; Line 2046
	xor	ecx, ecx
	cmp	ecx, ebx
	sbb	eax, eax
	pop	esi
	neg	eax
	pop	ebx
; Line 2047
	ret	8
$LN5@Grow:
; Line 2041
	cmp	BYTE PTR __Trim$[esp+4], 0
	je	SHORT $LN3@Grow
	cmp	ebx, 16					; 00000010H
	jae	SHORT $LN3@Grow
	push	edi
; Line 2043
	mov	edi, DWORD PTR [esi+20]
	cmp	ebx, edi
	jae	SHORT $LN9@Grow
	mov	edi, ebx
$LN9@Grow:
	cmp	eax, 16					; 00000010H
	jb	SHORT $LN33@Grow
	test	edi, edi
	lea	eax, DWORD PTR [esi+4]
	push	ebp
	mov	ebp, DWORD PTR [eax]
	jbe	SHORT $LN31@Grow
	push	edi
	push	ebp
	push	16					; 00000010H
	push	eax
	call	_memcpy_s
	add	esp, 16					; 00000010H
$LN31@Grow:
	push	ebp
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
	pop	ebp
$LN33@Grow:
	mov	DWORD PTR [esi+20], edi
	mov	DWORD PTR [esi+24], 15			; 0000000fH
; Line 2046
	xor	ecx, ecx
	mov	BYTE PTR [esi+edi+4], 0
	cmp	ecx, ebx
	pop	edi
	sbb	eax, eax
	pop	esi
	neg	eax
	pop	ebx
; Line 2047
	ret	8
$LN3@Grow:
; Line 2044
	test	ebx, ebx
	jne	SHORT $LN49@Grow
; Line 2045
	cmp	eax, 16					; 00000010H
	mov	DWORD PTR [esi+20], ebx
	jb	SHORT $LN47@Grow
	mov	esi, DWORD PTR [esi+4]
; Line 2046
	xor	ecx, ecx
	cmp	ecx, ebx
	mov	BYTE PTR [esi], bl
	sbb	eax, eax
	pop	esi
	neg	eax
	pop	ebx
; Line 2047
	ret	8
; Line 2045
$LN47@Grow:
	add	esi, 4
	mov	BYTE PTR [esi], 0
$LN49@Grow:
; Line 2046
	xor	ecx, ecx
	cmp	ecx, ebx
	sbb	eax, eax
	pop	esi
	neg	eax
	pop	ebx
; Line 2047
	ret	8
?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NI_N@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Grow
_TEXT	ENDS
PUBLIC	??_7runtime_error@std@@6B@			; std::runtime_error::`vftable'
PUBLIC	??1runtime_error@std@@UAE@XZ			; std::runtime_error::~runtime_error
PUBLIC	??_R4runtime_error@std@@6B@			; std::runtime_error::`RTTI Complete Object Locator'
PUBLIC	??_R0?AVruntime_error@std@@@8			; std::runtime_error `RTTI Type Descriptor'
PUBLIC	??_R3runtime_error@std@@8			; std::runtime_error::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2runtime_error@std@@8			; std::runtime_error::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@runtime_error@std@@8		; std::runtime_error::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	?what@runtime_error@std@@UBEPBDXZ		; std::runtime_error::what
EXTRN	??_Eruntime_error@std@@UAEPAXI@Z:PROC		; std::runtime_error::`vector deleting destructor'
;	COMDAT ??_R1A@?0A@EA@runtime_error@std@@8
; File c:\program files\microsoft visual studio 8\vc\include\iosfwd
rdata$r	SEGMENT
??_R1A@?0A@EA@runtime_error@std@@8 DD FLAT:??_R0?AVruntime_error@std@@@8 ; std::runtime_error::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3runtime_error@std@@8
rdata$r	ENDS
;	COMDAT ??_R2runtime_error@std@@8
rdata$r	SEGMENT
??_R2runtime_error@std@@8 DD FLAT:??_R1A@?0A@EA@runtime_error@std@@8 ; std::runtime_error::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R3runtime_error@std@@8
rdata$r	SEGMENT
??_R3runtime_error@std@@8 DD 00H			; std::runtime_error::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2runtime_error@std@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVruntime_error@std@@@8
_DATA	SEGMENT
??_R0?AVruntime_error@std@@@8 DD FLAT:??_7type_info@@6B@ ; std::runtime_error `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVruntime_error@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R4runtime_error@std@@6B@
rdata$r	SEGMENT
??_R4runtime_error@std@@6B@ DD 00H			; std::runtime_error::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVruntime_error@std@@@8
	DD	FLAT:??_R3runtime_error@std@@8
rdata$r	ENDS
;	COMDAT ??_7runtime_error@std@@6B@
CONST	SEGMENT
??_7runtime_error@std@@6B@ DD FLAT:??_R4runtime_error@std@@6B@ ; std::runtime_error::`vftable'
	DD	FLAT:??_Eruntime_error@std@@UAEPAXI@Z
	DD	FLAT:?what@runtime_error@std@@UBEPBDXZ
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ??1runtime_error@std@@UAE@XZ
_TEXT	SEGMENT
??1runtime_error@std@@UAE@XZ PROC			; std::runtime_error::~runtime_error, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\stdexcept
; Line 158
	push	esi
	mov	esi, ecx
	mov	DWORD PTR [esi], OFFSET ??_7runtime_error@std@@6B@
; Line 159
	cmp	DWORD PTR [esi+36], 16			; 00000010H
	jb	SHORT $LN19@runtime_er
	mov	eax, DWORD PTR [esi+16]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN19@runtime_er:
	xor	eax, eax
	mov	DWORD PTR [esi+36], 15			; 0000000fH
	mov	DWORD PTR [esi+32], eax
	mov	BYTE PTR [esi+16], al
	mov	ecx, esi
	pop	esi
	jmp	??1exception@std@@UAE@XZ		; std::exception::~exception
??1runtime_error@std@@UAE@XZ ENDP			; std::runtime_error::~runtime_error
_TEXT	ENDS
PUBLIC	?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEPBDXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::c_str
; Function compile flags: /Ogtpy
;	COMDAT ?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEPBDXZ
_TEXT	SEGMENT
?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEPBDXZ PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::c_str, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 1622
	cmp	DWORD PTR [ecx+24], 16			; 00000010H
	jb	SHORT $LN5@c_str
	mov	eax, DWORD PTR [ecx+4]
; Line 1623
	ret	0
; Line 1622
$LN5@c_str:
	lea	eax, DWORD PTR [ecx+4]
; Line 1623
	ret	0
?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEPBDXZ ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::c_str
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?what@runtime_error@std@@UBEPBDXZ
_TEXT	SEGMENT
?what@runtime_error@std@@UBEPBDXZ PROC			; std::runtime_error::what, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\stdexcept
; Line 163
	cmp	DWORD PTR [ecx+36], 16			; 00000010H
	jb	SHORT $LN7@what
	mov	eax, DWORD PTR [ecx+16]
; Line 164
	ret	0
; Line 163
$LN7@what:
	lea	eax, DWORD PTR [ecx+16]
; Line 164
	ret	0
?what@runtime_error@std@@UBEPBDXZ ENDP			; std::runtime_error::what
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ??_Gruntime_error@std@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_Gruntime_error@std@@UAEPAXI@Z PROC			; std::runtime_error::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	mov	DWORD PTR [esi], OFFSET ??_7runtime_error@std@@6B@
	cmp	DWORD PTR [esi+36], 16			; 00000010H
	jb	SHORT $LN22@scalar@3
	mov	eax, DWORD PTR [esi+16]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN22@scalar@3:
	xor	eax, eax
	mov	DWORD PTR [esi+36], 15			; 0000000fH
	mov	DWORD PTR [esi+32], eax
	mov	ecx, esi
	mov	BYTE PTR [esi+16], al
	call	??1exception@std@@UAE@XZ		; std::exception::~exception
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $LN32@scalar@3
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN32@scalar@3:
	mov	eax, esi
	pop	esi
	ret	4
??_Gruntime_error@std@@UAEPAXI@Z ENDP			; std::runtime_error::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??1_Locinfo@std@@QAE@XZ				; std::_Locinfo::~_Locinfo
EXTRN	?_Locinfo_dtor@_Locinfo@std@@SAXPAV12@@Z:PROC	; std::_Locinfo::_Locinfo_dtor
;	COMDAT xdata$x
; File c:\program files\microsoft visual studio 8\vc\include\iosfwd
xdata$x	SEGMENT
__ehfuncinfo$??1_Locinfo@std@@QAE@XZ DD 019930522H
	DD	05H
	DD	FLAT:__unwindtable$??1_Locinfo@std@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
__unwindtable$??1_Locinfo@std@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1_Locinfo@std@@QAE@XZ$0
	DD	00H
	DD	FLAT:__unwindfunclet$??1_Locinfo@std@@QAE@XZ$1
	DD	01H
	DD	FLAT:__unwindfunclet$??1_Locinfo@std@@QAE@XZ$2
	DD	02H
	DD	FLAT:__unwindfunclet$??1_Locinfo@std@@QAE@XZ$3
	DD	03H
	DD	FLAT:__unwindfunclet$??1_Locinfo@std@@QAE@XZ$4
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??1_Locinfo@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1_Locinfo@std@@QAE@XZ PROC				; std::_Locinfo::~_Locinfo, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocinfo
; Line 92
	push	-1
	push	__ehhandler$??1_Locinfo@std@@QAE@XZ
	mov	eax, DWORD PTR fs:0
	push	eax
	push	ecx
	push	ebx
	push	ebp
	push	esi
	push	edi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+36]
	mov	DWORD PTR fs:0, eax
	mov	esi, ecx
	mov	DWORD PTR _this$[esp+36], esi
; Line 93
	push	esi
	mov	DWORD PTR __$EHRec$[esp+48], 4
	call	?_Locinfo_dtor@_Locinfo@std@@SAXPAV12@@Z ; std::_Locinfo::_Locinfo_dtor
; Line 94
	mov	ebp, 16					; 00000010H
	add	esp, 4
	cmp	DWORD PTR [esi+112], ebp
	jb	SHORT $LN24@Locinfo
	mov	eax, DWORD PTR [esi+92]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN24@Locinfo:
	xor	ebx, ebx
	mov	edi, 15					; 0000000fH
	mov	DWORD PTR [esi+112], edi
	mov	DWORD PTR [esi+108], ebx
	mov	BYTE PTR [esi+92], bl
	cmp	DWORD PTR [esi+84], ebp
	jb	SHORT $LN50@Locinfo
	mov	eax, DWORD PTR [esi+64]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN50@Locinfo:
	mov	DWORD PTR [esi+84], edi
	mov	DWORD PTR [esi+80], ebx
	mov	BYTE PTR [esi+64], bl
	cmp	DWORD PTR [esi+56], ebp
	jb	SHORT $LN76@Locinfo
	mov	eax, DWORD PTR [esi+36]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN76@Locinfo:
	mov	DWORD PTR [esi+56], edi
	mov	DWORD PTR [esi+52], ebx
	mov	BYTE PTR [esi+36], bl
	cmp	DWORD PTR [esi+28], ebp
	jb	SHORT $LN102@Locinfo
	mov	eax, DWORD PTR [esi+8]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN102@Locinfo:
	mov	DWORD PTR [esi+28], edi
	mov	DWORD PTR [esi+24], ebx
	mov	ecx, esi
	mov	BYTE PTR [esi+8], bl
	mov	DWORD PTR __$EHRec$[esp+44], -1
	call	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
	mov	ecx, DWORD PTR __$EHRec$[esp+36]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	edi
	pop	esi
	pop	ebp
	pop	ebx
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1_Locinfo@std@@QAE@XZ$0:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
__unwindfunclet$??1_Locinfo@std@@QAE@XZ$1:
	mov	ecx, DWORD PTR _this$[ebp]
	add	ecx, 4
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$??1_Locinfo@std@@QAE@XZ$2:
	mov	ecx, DWORD PTR _this$[ebp]
	add	ecx, 32					; 00000020H
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$??1_Locinfo@std@@QAE@XZ$3:
	mov	ecx, DWORD PTR _this$[ebp]
	add	ecx, 60					; 0000003cH
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$??1_Locinfo@std@@QAE@XZ$4:
	mov	ecx, DWORD PTR _this$[ebp]
	add	ecx, 88					; 00000058H
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__ehhandler$??1_Locinfo@std@@QAE@XZ:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-20]
	mov	ecx, DWORD PTR [edx-24]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$??1_Locinfo@std@@QAE@XZ
	jmp	___CxxFrameHandler3
text$x	ENDS
??1_Locinfo@std@@QAE@XZ ENDP				; std::_Locinfo::~_Locinfo
PUBLIC	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
; Function compile flags: /Ogtpy
;	COMDAT ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z
_TEXT	SEGMENT
__Right$ = 8						; size = 4
__Roff$ = 12						; size = 4
__Count$ = 16						; size = 4
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 1038
	push	ebx
; Line 1039
	mov	ebx, DWORD PTR __Right$[esp]
	push	ebp
	mov	ebp, DWORD PTR __Roff$[esp+4]
	cmp	DWORD PTR [ebx+20], ebp
	push	esi
	push	edi
	mov	esi, ecx
	jae	SHORT $LN5@assign
; Line 1040
	call	?_Xran@_String_base@std@@SAXXZ		; std::_String_base::_Xran
$LN5@assign:
; Line 1041
	mov	edi, DWORD PTR [ebx+20]
; Line 1042
	mov	eax, DWORD PTR __Count$[esp+12]
	sub	edi, ebp
	cmp	eax, edi
; Line 1043
	cmovb	edi, eax
; Line 1045
	cmp	esi, ebx
	jne	SHORT $LN3@assign
; Line 1046
	push	-1
	add	edi, ebp
	push	edi
	mov	ecx, esi
	call	?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::erase
	push	ebp
	push	0
	mov	ecx, esi
	call	?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::erase
	pop	edi
; Line 1052
	mov	eax, esi
	pop	esi
	pop	ebp
	pop	ebx
; Line 1053
	ret	12					; 0000000cH
$LN3@assign:
; Line 1047
	cmp	edi, -2					; fffffffeH
	jbe	SHORT $LN17@assign
	call	?_Xlen@_String_base@std@@SAXXZ		; std::_String_base::_Xlen
$LN17@assign:
	mov	eax, DWORD PTR [esi+24]
	cmp	eax, edi
	jae	SHORT $LN16@assign
	mov	eax, DWORD PTR [esi+20]
	push	eax
	push	edi
	mov	ecx, esi
	call	?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy
	test	edi, edi
$LN87@assign:
	jbe	SHORT $LN86@assign
; Line 1049
	cmp	DWORD PTR [ebx+24], 16			; 00000010H
	jb	SHORT $LN64@assign
	mov	edx, DWORD PTR [ebx+4]
	jmp	SHORT $LN65@assign
; Line 1047
$LN16@assign:
	test	edi, edi
	jne	SHORT $LN87@assign
	cmp	eax, 16					; 00000010H
	mov	DWORD PTR [esi+20], edi
	jb	SHORT $LN58@assign
	mov	eax, DWORD PTR [esi+4]
	pop	edi
	mov	BYTE PTR [eax], 0
; Line 1052
	mov	eax, esi
	pop	esi
	pop	ebp
	pop	ebx
; Line 1053
	ret	12					; 0000000cH
; Line 1047
$LN58@assign:
	lea	eax, DWORD PTR [esi+4]
	pop	edi
	mov	BYTE PTR [eax], 0
; Line 1052
	mov	eax, esi
	pop	esi
	pop	ebp
	pop	ebx
; Line 1053
	ret	12					; 0000000cH
; Line 1049
$LN64@assign:
	lea	edx, DWORD PTR [ebx+4]
$LN65@assign:
	mov	ecx, DWORD PTR [esi+24]
	cmp	ecx, 16					; 00000010H
	lea	ebx, DWORD PTR [esi+4]
	jb	SHORT $LN68@assign
	mov	eax, DWORD PTR [ebx]
	jmp	SHORT $LN69@assign
$LN68@assign:
	mov	eax, ebx
$LN69@assign:
	push	edi
	add	edx, ebp
	push	edx
	push	ecx
	push	eax
	call	_memcpy_s
	add	esp, 16					; 00000010H
; Line 1050
	cmp	DWORD PTR [esi+24], 16			; 00000010H
	mov	DWORD PTR [esi+20], edi
	jb	SHORT $LN82@assign
	mov	ebx, DWORD PTR [ebx]
$LN82@assign:
	mov	BYTE PTR [ebx+edi], 0
$LN86@assign:
	pop	edi
; Line 1052
	mov	eax, esi
	pop	esi
	pop	ebp
	pop	ebx
; Line 1053
	ret	12					; 0000000cH
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
_TEXT	ENDS
PUBLIC	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
; Function compile flags: /Ogtpy
;	COMDAT ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
__Num$ = 12						; size = 4
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign, COMDAT
; _this$ = ecx
; Line 1056
	push	ebx
	push	ebp
	push	esi
	mov	esi, ecx
; Line 1057
	mov	ecx, DWORD PTR [esi+24]
	cmp	ecx, 16					; 00000010H
	lea	ebx, DWORD PTR [esi+4]
	jb	SHORT $LN12@assign@2
	mov	eax, DWORD PTR [ebx]
	jmp	SHORT $LN13@assign@2
$LN12@assign@2:
	mov	eax, ebx
$LN13@assign@2:
	mov	ebp, DWORD PTR __Ptr$[esp+8]
	cmp	ebp, eax
	jb	SHORT $LN2@assign@2
	cmp	ecx, 16					; 00000010H
	jb	SHORT $LN16@assign@2
	mov	eax, DWORD PTR [ebx]
	jmp	SHORT $LN17@assign@2
$LN16@assign@2:
	mov	eax, ebx
$LN17@assign@2:
	mov	edx, DWORD PTR [esi+20]
	add	edx, eax
	cmp	edx, ebp
	jbe	SHORT $LN2@assign@2
; Line 1058
	cmp	ecx, 16					; 00000010H
	jb	SHORT $LN20@assign@2
	mov	ebx, DWORD PTR [ebx]
$LN20@assign@2:
	mov	eax, DWORD PTR __Num$[esp+8]
	push	eax
	sub	ebp, ebx
	push	ebp
	push	esi
	mov	ecx, esi
	call	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
	pop	esi
	pop	ebp
	pop	ebx
; Line 1066
	ret	8
$LN2@assign@2:
	push	edi
; Line 1060
	mov	edi, DWORD PTR __Num$[esp+12]
	cmp	edi, -2					; fffffffeH
	jbe	SHORT $LN27@assign@2
	call	?_Xlen@_String_base@std@@SAXXZ		; std::_String_base::_Xlen
$LN27@assign@2:
	mov	eax, DWORD PTR [esi+24]
	cmp	eax, edi
	jae	SHORT $LN26@assign@2
	mov	ecx, DWORD PTR [esi+20]
	push	ecx
	push	edi
	mov	ecx, esi
	call	?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy
	test	edi, edi
$LN93@assign@2:
	jbe	SHORT $LN90@assign@2
; Line 1062
	mov	ecx, DWORD PTR [esi+24]
	cmp	ecx, 16					; 00000010H
	jb	SHORT $LN74@assign@2
	mov	eax, DWORD PTR [ebx]
	jmp	SHORT $LN75@assign@2
; Line 1060
$LN26@assign@2:
	test	edi, edi
	jne	SHORT $LN93@assign@2
	cmp	eax, 16					; 00000010H
	mov	DWORD PTR [esi+20], edi
	jb	SHORT $LN68@assign@2
	mov	ebx, DWORD PTR [ebx]
$LN68@assign@2:
	pop	edi
; Line 1065
	mov	eax, esi
	pop	esi
	pop	ebp
	mov	BYTE PTR [ebx], 0
	pop	ebx
; Line 1066
	ret	8
; Line 1062
$LN74@assign@2:
	mov	eax, ebx
$LN75@assign@2:
	push	edi
	push	ebp
	push	ecx
	push	eax
	call	_memcpy_s
	add	esp, 16					; 00000010H
; Line 1063
	cmp	DWORD PTR [esi+24], 16			; 00000010H
	mov	DWORD PTR [esi+20], edi
	jb	SHORT $LN88@assign@2
	mov	ebx, DWORD PTR [ebx]
$LN88@assign@2:
	mov	BYTE PTR [ebx+edi], 0
$LN90@assign@2:
	pop	edi
; Line 1065
	mov	eax, esi
	pop	esi
	pop	ebp
	pop	ebx
; Line 1066
	ret	8
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
_TEXT	ENDS
PUBLIC	??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
; Function compile flags: /Ogtpy
;	COMDAT ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
__Right$ = 8						; size = 4
??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >, COMDAT
; _this$ = ecx
; Line 720
	push	esi
; Line 721
	xor	eax, eax
	mov	esi, ecx
; Line 722
	push	-1
	mov	DWORD PTR [esi+20], eax
	mov	DWORD PTR [esi+24], 15			; 0000000fH
	push	eax
	mov	BYTE PTR [esi+4], al
	mov	eax, DWORD PTR __Right$[esp+8]
	push	eax
	call	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
; Line 723
	mov	eax, esi
	pop	esi
	ret	4
??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
_TEXT	ENDS
PUBLIC	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
; Function compile flags: /Ogtpy
;	COMDAT ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign, COMDAT
; _this$ = ecx
; Line 1069
	push	esi
; Line 1070
	mov	esi, DWORD PTR __Ptr$[esp]
	mov	eax, esi
	push	edi
	lea	edi, DWORD PTR [eax+1]
	npad	5
$LL5@assign@3:
	mov	dl, BYTE PTR [eax]
	add	eax, 1
	test	dl, dl
	jne	SHORT $LL5@assign@3
	sub	eax, edi
	push	eax
	push	esi
	call	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
	pop	edi
	pop	esi
; Line 1071
	ret	4
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
_TEXT	ENDS
PUBLIC	??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::runtime_error::runtime_error
EXTRN	??0exception@std@@QAE@XZ:PROC			; std::exception::exception
;	COMDAT xdata$x
; File c:\program files\microsoft visual studio 8\vc\include\iosfwd
xdata$x	SEGMENT
__unwindtable$??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z$0
__ehfuncinfo$??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
__Message$ = 8						; size = 4
??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z PROC ; std::runtime_error::runtime_error, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\stdexcept
; Line 154
	push	-1
	push	__ehhandler$??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	push	ecx
	push	esi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+24]
	mov	DWORD PTR fs:0, eax
	mov	esi, ecx
	mov	DWORD PTR _this$[esp+24], esi
	call	??0exception@std@@QAE@XZ		; std::exception::exception
	xor	eax, eax
	lea	ecx, DWORD PTR [esi+12]
	mov	DWORD PTR [esi], OFFSET ??_7runtime_error@std@@6B@
	push	-1
	mov	DWORD PTR [ecx+20], eax
	mov	DWORD PTR [ecx+24], 15			; 0000000fH
	push	eax
	mov	DWORD PTR __$EHRec$[esp+40], eax
	mov	BYTE PTR [ecx+4], al
	mov	eax, DWORD PTR __Message$[esp+28]
	push	eax
	call	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
; Line 155
	mov	eax, esi
	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	esi
	add	esp, 16					; 00000010H
	ret	4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z$0:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1exception@std@@UAE@XZ		; std::exception::~exception
__ehhandler$??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-8]
	mov	ecx, DWORD PTR [edx-12]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ENDP ; std::runtime_error::runtime_error
PUBLIC	??_7failure@ios_base@std@@6B@			; std::ios_base::failure::`vftable'
PUBLIC	??0failure@ios_base@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z ; std::ios_base::failure::failure
PUBLIC	??_R4failure@ios_base@std@@6B@			; std::ios_base::failure::`RTTI Complete Object Locator'
PUBLIC	??_R0?AVfailure@ios_base@std@@@8		; std::ios_base::failure `RTTI Type Descriptor'
PUBLIC	??_R3failure@ios_base@std@@8			; std::ios_base::failure::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2failure@ios_base@std@@8			; std::ios_base::failure::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@failure@ios_base@std@@8		; std::ios_base::failure::`RTTI Base Class Descriptor at (0,-1,0,64)'
EXTRN	??_Efailure@ios_base@std@@UAEPAXI@Z:PROC	; std::ios_base::failure::`vector deleting destructor'
;	COMDAT ??_R1A@?0A@EA@failure@ios_base@std@@8
; File c:\program files\microsoft visual studio 8\vc\include\xiosbase
rdata$r	SEGMENT
??_R1A@?0A@EA@failure@ios_base@std@@8 DD FLAT:??_R0?AVfailure@ios_base@std@@@8 ; std::ios_base::failure::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	02H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3failure@ios_base@std@@8
rdata$r	ENDS
;	COMDAT ??_R2failure@ios_base@std@@8
rdata$r	SEGMENT
??_R2failure@ios_base@std@@8 DD FLAT:??_R1A@?0A@EA@failure@ios_base@std@@8 ; std::ios_base::failure::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@runtime_error@std@@8
	DD	FLAT:??_R1A@?0A@EA@exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R3failure@ios_base@std@@8
rdata$r	SEGMENT
??_R3failure@ios_base@std@@8 DD 00H			; std::ios_base::failure::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	03H
	DD	FLAT:??_R2failure@ios_base@std@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVfailure@ios_base@std@@@8
_DATA	SEGMENT
??_R0?AVfailure@ios_base@std@@@8 DD FLAT:??_7type_info@@6B@ ; std::ios_base::failure `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVfailure@ios_base@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R4failure@ios_base@std@@6B@
rdata$r	SEGMENT
??_R4failure@ios_base@std@@6B@ DD 00H			; std::ios_base::failure::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVfailure@ios_base@std@@@8
	DD	FLAT:??_R3failure@ios_base@std@@8
rdata$r	ENDS
;	COMDAT ??_7failure@ios_base@std@@6B@
CONST	SEGMENT
??_7failure@ios_base@std@@6B@ DD FLAT:??_R4failure@ios_base@std@@6B@ ; std::ios_base::failure::`vftable'
	DD	FLAT:??_Efailure@ios_base@std@@UAEPAXI@Z
	DD	FLAT:?what@runtime_error@std@@UBEPBDXZ
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ??0failure@ios_base@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z
_TEXT	SEGMENT
__Message$ = 8						; size = 4
??0failure@ios_base@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z PROC ; std::ios_base::failure::failure, COMDAT
; _this$ = ecx
; Line 208
	mov	eax, DWORD PTR __Message$[esp-4]
	push	esi
	push	eax
	mov	esi, ecx
	call	??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::runtime_error::runtime_error
	mov	DWORD PTR [esi], OFFSET ??_7failure@ios_base@std@@6B@
; Line 209
	mov	eax, esi
	pop	esi
	ret	4
??0failure@ios_base@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z ENDP ; std::ios_base::failure::failure
_TEXT	ENDS
PUBLIC	??1failure@ios_base@std@@UAE@XZ			; std::ios_base::failure::~failure
; Function compile flags: /Ogtpy
;	COMDAT ??1failure@ios_base@std@@UAE@XZ
_TEXT	SEGMENT
??1failure@ios_base@std@@UAE@XZ PROC			; std::ios_base::failure::~failure, COMDAT
; _this$ = ecx
; Line 212
	push	esi
	mov	esi, ecx
; Line 213
	mov	DWORD PTR [esi], OFFSET ??_7runtime_error@std@@6B@
	cmp	DWORD PTR [esi+36], 16			; 00000010H
	jb	SHORT $LN21@failure
	mov	eax, DWORD PTR [esi+16]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN21@failure:
	xor	eax, eax
	mov	DWORD PTR [esi+36], 15			; 0000000fH
	mov	DWORD PTR [esi+32], eax
	mov	BYTE PTR [esi+16], al
	mov	ecx, esi
	pop	esi
	jmp	??1exception@std@@UAE@XZ		; std::exception::~exception
??1failure@ios_base@std@@UAE@XZ ENDP			; std::ios_base::failure::~failure
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ??_Gfailure@ios_base@std@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_Gfailure@ios_base@std@@UAEPAXI@Z PROC		; std::ios_base::failure::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	mov	DWORD PTR [esi], OFFSET ??_7runtime_error@std@@6B@
	cmp	DWORD PTR [esi+36], 16			; 00000010H
	jb	SHORT $LN24@scalar@4
	mov	eax, DWORD PTR [esi+16]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN24@scalar@4:
	xor	eax, eax
	mov	DWORD PTR [esi+36], 15			; 0000000fH
	mov	DWORD PTR [esi+32], eax
	mov	ecx, esi
	mov	BYTE PTR [esi+16], al
	call	??1exception@std@@UAE@XZ		; std::exception::~exception
	test	BYTE PTR ___flags$[esp], 1
	je	SHORT $LN34@scalar@4
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN34@scalar@4:
	mov	eax, esi
	pop	esi
	ret	4
??_Gfailure@ios_base@std@@UAEPAXI@Z ENDP		; std::ios_base::failure::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
; Function compile flags: /Ogtpy
;	COMDAT ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 652
	mov	edx, DWORD PTR __Ptr$[esp-4]
	push	esi
	mov	esi, ecx
	mov	eax, edx
	push	edi
	mov	DWORD PTR [esi+24], 15			; 0000000fH
	mov	DWORD PTR [esi+20], 0
	mov	BYTE PTR [esi+4], 0
	lea	edi, DWORD PTR [eax+1]
	npad	1
$LL37@basic_stri@2:
	mov	cl, BYTE PTR [eax]
	add	eax, 1
	test	cl, cl
	jne	SHORT $LL37@basic_stri@2
	sub	eax, edi
	push	eax
	push	edx
	mov	ecx, esi
	call	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
	pop	edi
; Line 653
	mov	eax, esi
	pop	esi
	ret	4
??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
_TEXT	ENDS
PUBLIC	__TI2?AVruntime_error@std@@
PUBLIC	??_C@_0BA@ELKIONDK@bad?5locale?5name?$AA@	; `string'
PUBLIC	??0_Locinfo@std@@QAE@PBD@Z			; std::_Locinfo::_Locinfo
PUBLIC	__CTA2?AVruntime_error@std@@
PUBLIC	__CT??_R0?AVruntime_error@std@@@8??0runtime_error@std@@QAE@ABV01@@Z40
PUBLIC	??0runtime_error@std@@QAE@ABV01@@Z		; std::runtime_error::runtime_error
EXTRN	?_Locinfo_ctor@_Locinfo@std@@SAXPAV12@PBD@Z:PROC ; std::_Locinfo::_Locinfo_ctor
;	COMDAT __CT??_R0?AVruntime_error@std@@@8??0runtime_error@std@@QAE@ABV01@@Z40
; File c:\program files\microsoft visual studio 8\vc\include\iosfwd
xdata$x	SEGMENT
__CT??_R0?AVruntime_error@std@@@8??0runtime_error@std@@QAE@ABV01@@Z40 DD 00H
	DD	FLAT:??_R0?AVruntime_error@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	028H
	DD	FLAT:??0runtime_error@std@@QAE@ABV01@@Z
xdata$x	ENDS
;	COMDAT __CTA2?AVruntime_error@std@@
xdata$x	SEGMENT
__CTA2?AVruntime_error@std@@ DD 02H
	DD	FLAT:__CT??_R0?AVruntime_error@std@@@8??0runtime_error@std@@QAE@ABV01@@Z40
	DD	FLAT:__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
xdata$x	ENDS
;	COMDAT __TI2?AVruntime_error@std@@
xdata$x	SEGMENT
__TI2?AVruntime_error@std@@ DD 00H
	DD	FLAT:??1runtime_error@std@@UAE@XZ
	DD	00H
	DD	FLAT:__CTA2?AVruntime_error@std@@
xdata$x	ENDS
;	COMDAT ??_C@_0BA@ELKIONDK@bad?5locale?5name?$AA@
CONST	SEGMENT
??_C@_0BA@ELKIONDK@bad?5locale?5name?$AA@ DB 'bad locale name', 00H ; `string'
CONST	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__ehfuncinfo$??0_Locinfo@std@@QAE@PBD@Z DD 019930522H
	DD	06H
	DD	FLAT:__unwindtable$??0_Locinfo@std@@QAE@PBD@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
__unwindtable$??0_Locinfo@std@@QAE@PBD@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0_Locinfo@std@@QAE@PBD@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$??0_Locinfo@std@@QAE@PBD@Z$1
	DD	01H
	DD	FLAT:__unwindfunclet$??0_Locinfo@std@@QAE@PBD@Z$2
	DD	02H
	DD	FLAT:__unwindfunclet$??0_Locinfo@std@@QAE@PBD@Z$3
	DD	03H
	DD	FLAT:__unwindfunclet$??0_Locinfo@std@@QAE@PBD@Z$4
	DD	04H
	DD	FLAT:__unwindfunclet$??0_Locinfo@std@@QAE@PBD@Z$5
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??0_Locinfo@std@@QAE@PBD@Z
_TEXT	SEGMENT
_this$ = -84						; size = 4
$T77486 = -80						; size = 28
$T77485 = -52						; size = 40
__$EHRec$ = -12						; size = 12
__Pch$ = 8						; size = 4
??0_Locinfo@std@@QAE@PBD@Z PROC				; std::_Locinfo::_Locinfo, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocinfo
; Line 75
	push	-1
	push	__ehhandler$??0_Locinfo@std@@QAE@PBD@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	sub	esp, 72					; 00000048H
	push	ebx
	push	esi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+96]
	mov	DWORD PTR fs:0, eax
	mov	esi, ecx
	mov	DWORD PTR _this$[esp+96], esi
	xor	ebx, ebx
	push	ebx
	call	??0_Lockit@std@@QAE@H@Z			; std::_Lockit::_Lockit
	mov	eax, 15					; 0000000fH
	mov	DWORD PTR [esi+28], eax
	mov	DWORD PTR [esi+24], ebx
	mov	DWORD PTR __$EHRec$[esp+104], ebx
	mov	BYTE PTR [esi+8], bl
	mov	DWORD PTR [esi+56], eax
	mov	DWORD PTR [esi+52], ebx
	mov	BYTE PTR [esi+36], bl
	mov	DWORD PTR [esi+84], eax
	mov	DWORD PTR [esi+80], ebx
	mov	BYTE PTR [esi+64], bl
	mov	DWORD PTR [esi+112], eax
	mov	DWORD PTR [esi+108], ebx
	mov	BYTE PTR [esi+92], bl
; Line 76
	mov	ecx, DWORD PTR __Pch$[esp+92]
	cmp	ecx, ebx
	mov	BYTE PTR __$EHRec$[esp+104], 4
	jne	SHORT $LN1@Locinfo@2
; Line 77
	push	eax
	push	OFFSET ??_C@_0BA@ELKIONDK@bad?5locale?5name?$AA@
	lea	ecx, DWORD PTR $T77486[esp+104]
	mov	DWORD PTR $T77486[esp+128], eax
	mov	DWORD PTR $T77486[esp+124], ebx
	mov	BYTE PTR $T77486[esp+108], bl
	call	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
	lea	eax, DWORD PTR $T77486[esp+96]
	push	eax
	lea	ecx, DWORD PTR $T77485[esp+100]
	mov	BYTE PTR __$EHRec$[esp+108], 5
	call	??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::runtime_error::runtime_error
	push	OFFSET __TI2?AVruntime_error@std@@
	lea	ecx, DWORD PTR $T77485[esp+100]
	push	ecx
	call	__CxxThrowException@8
$LN1@Locinfo@2:
; Line 78
	push	ecx
	push	esi
	call	?_Locinfo_ctor@_Locinfo@std@@SAXPAV12@PBD@Z ; std::_Locinfo::_Locinfo_ctor
	add	esp, 8
; Line 79
	mov	eax, esi
	mov	ecx, DWORD PTR __$EHRec$[esp+96]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	esi
	pop	ebx
	add	esp, 84					; 00000054H
	ret	4
$LN175@Locinfo@2:
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0_Locinfo@std@@QAE@PBD@Z$0:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
__unwindfunclet$??0_Locinfo@std@@QAE@PBD@Z$1:
	mov	ecx, DWORD PTR _this$[ebp]
	add	ecx, 4
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$??0_Locinfo@std@@QAE@PBD@Z$2:
	mov	ecx, DWORD PTR _this$[ebp]
	add	ecx, 32					; 00000020H
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$??0_Locinfo@std@@QAE@PBD@Z$3:
	mov	ecx, DWORD PTR _this$[ebp]
	add	ecx, 60					; 0000003cH
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$??0_Locinfo@std@@QAE@PBD@Z$4:
	mov	ecx, DWORD PTR _this$[ebp]
	add	ecx, 88					; 00000058H
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$??0_Locinfo@std@@QAE@PBD@Z$5:
	lea	ecx, DWORD PTR $T77486[ebp]
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__ehhandler$??0_Locinfo@std@@QAE@PBD@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-80]
	mov	ecx, DWORD PTR [edx-84]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$??0_Locinfo@std@@QAE@PBD@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
??0_Locinfo@std@@QAE@PBD@Z ENDP				; std::_Locinfo::_Locinfo
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0runtime_error@std@@QAE@ABV01@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0runtime_error@std@@QAE@ABV01@@Z$0
__ehfuncinfo$??0runtime_error@std@@QAE@ABV01@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0runtime_error@std@@QAE@ABV01@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??0runtime_error@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
___that$ = 8						; size = 4
??0runtime_error@std@@QAE@ABV01@@Z PROC			; std::runtime_error::runtime_error, COMDAT
; _this$ = ecx
	push	-1
	push	__ehhandler$??0runtime_error@std@@QAE@ABV01@@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	push	ecx
	push	esi
	push	edi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+28]
	mov	DWORD PTR fs:0, eax
	mov	esi, ecx
	mov	DWORD PTR _this$[esp+28], esi
	mov	edi, DWORD PTR ___that$[esp+24]
	push	edi
	call	??0exception@std@@QAE@ABV01@@Z		; std::exception::exception
	xor	edx, edx
	push	-1
	lea	ecx, DWORD PTR [esi+12]
	mov	DWORD PTR [esi], OFFSET ??_7runtime_error@std@@6B@
	lea	eax, DWORD PTR [edi+12]
	push	edx
	mov	DWORD PTR [ecx+24], 15			; 0000000fH
	mov	DWORD PTR [ecx+20], edx
	push	eax
	mov	DWORD PTR __$EHRec$[esp+48], edx
	mov	BYTE PTR [ecx+4], dl
	call	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
	mov	eax, esi
	mov	ecx, DWORD PTR __$EHRec$[esp+28]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	edi
	pop	esi
	add	esp, 16					; 00000010H
	ret	4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0runtime_error@std@@QAE@ABV01@@Z$0:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1exception@std@@UAE@XZ		; std::exception::~exception
__ehhandler$??0runtime_error@std@@QAE@ABV01@@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-12]
	mov	ecx, DWORD PTR [edx-16]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$??0runtime_error@std@@QAE@ABV01@@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
??0runtime_error@std@@QAE@ABV01@@Z ENDP			; std::runtime_error::runtime_error
PUBLIC	??_C@_0BF@OOHOMBOF@ios_base?3?3eofbit?5set?$AA@	; `string'
PUBLIC	??_C@_0BG@FMKFHCIL@ios_base?3?3failbit?5set?$AA@ ; `string'
PUBLIC	__TI3?AVfailure@ios_base@std@@
PUBLIC	??_C@_0BF@PHHKMMFD@ios_base?3?3badbit?5set?$AA@	; `string'
PUBLIC	?clear@ios_base@std@@QAEXH_N@Z			; std::ios_base::clear
PUBLIC	__CTA3?AVfailure@ios_base@std@@
PUBLIC	__CT??_R0?AVfailure@ios_base@std@@@8??0failure@ios_base@std@@QAE@ABV012@@Z40
PUBLIC	??0failure@ios_base@std@@QAE@ABV012@@Z		; std::ios_base::failure::failure
;	COMDAT __CT??_R0?AVfailure@ios_base@std@@@8??0failure@ios_base@std@@QAE@ABV012@@Z40
; File c:\program files\microsoft visual studio 8\vc\include\xiosbase
xdata$x	SEGMENT
__CT??_R0?AVfailure@ios_base@std@@@8??0failure@ios_base@std@@QAE@ABV012@@Z40 DD 00H
	DD	FLAT:??_R0?AVfailure@ios_base@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	028H
	DD	FLAT:??0failure@ios_base@std@@QAE@ABV012@@Z
xdata$x	ENDS
;	COMDAT __CTA3?AVfailure@ios_base@std@@
xdata$x	SEGMENT
__CTA3?AVfailure@ios_base@std@@ DD 03H
	DD	FLAT:__CT??_R0?AVfailure@ios_base@std@@@8??0failure@ios_base@std@@QAE@ABV012@@Z40
	DD	FLAT:__CT??_R0?AVruntime_error@std@@@8??0runtime_error@std@@QAE@ABV01@@Z40
	DD	FLAT:__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
xdata$x	ENDS
;	COMDAT ??_C@_0BF@OOHOMBOF@ios_base?3?3eofbit?5set?$AA@
CONST	SEGMENT
??_C@_0BF@OOHOMBOF@ios_base?3?3eofbit?5set?$AA@ DB 'ios_base::eofbit set', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BG@FMKFHCIL@ios_base?3?3failbit?5set?$AA@
CONST	SEGMENT
??_C@_0BG@FMKFHCIL@ios_base?3?3failbit?5set?$AA@ DB 'ios_base::failbit se'
	DB	't', 00H					; `string'
CONST	ENDS
;	COMDAT __TI3?AVfailure@ios_base@std@@
xdata$x	SEGMENT
__TI3?AVfailure@ios_base@std@@ DD 00H
	DD	FLAT:??1failure@ios_base@std@@UAE@XZ
	DD	00H
	DD	FLAT:__CTA3?AVfailure@ios_base@std@@
xdata$x	ENDS
;	COMDAT ??_C@_0BF@PHHKMMFD@ios_base?3?3badbit?5set?$AA@
CONST	SEGMENT
??_C@_0BF@PHHKMMFD@ios_base?3?3badbit?5set?$AA@ DB 'ios_base::badbit set', 00H ; `string'
CONST	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?clear@ios_base@std@@QAEXH_N@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?clear@ios_base@std@@QAEXH_N@Z$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?clear@ios_base@std@@QAEXH_N@Z$1
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?clear@ios_base@std@@QAEXH_N@Z$2
__ehfuncinfo$?clear@ios_base@std@@QAEXH_N@Z DD 019930522H
	DD	03H
	DD	FLAT:__unwindtable$?clear@ios_base@std@@QAEXH_N@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ?clear@ios_base@std@@QAEXH_N@Z
_TEXT	SEGMENT
$T78297 = -148						; size = 40
$T78295 = -148						; size = 40
$T78298 = -108						; size = 28
$T78296 = -108						; size = 28
$T78299 = -80						; size = 40
$T78300 = -40						; size = 28
__$EHRec$ = -12						; size = 12
__State$ = 8						; size = 4
__Reraise$ = 12						; size = 1
?clear@ios_base@std@@QAEXH_N@Z PROC			; std::ios_base::clear, COMDAT
; _this$ = ecx
; Line 273
	push	-1
	push	__ehhandler$?clear@ios_base@std@@QAEXH_N@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	sub	esp, 136				; 00000088H
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+152]
	mov	DWORD PTR fs:0, eax
; Line 274
	mov	eax, DWORD PTR __State$[esp+148]
	and	eax, 23					; 00000017H
	mov	DWORD PTR [ecx+8], eax
; Line 275
	mov	ecx, DWORD PTR [ecx+12]
	and	ecx, eax
	je	$LN1@clear
; Line 277
	cmp	BYTE PTR __Reraise$[esp+148], 0
	je	SHORT $LN6@clear
; Line 278
	push	0
	push	0
	call	__CxxThrowException@8
$LN6@clear:
; Line 279
	test	cl, 4
	je	SHORT $LN4@clear
; Line 280
	push	OFFSET ??_C@_0BF@PHHKMMFD@ios_base?3?3badbit?5set?$AA@
	lea	ecx, DWORD PTR $T78296[esp+156]
	call	??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
	lea	eax, DWORD PTR $T78296[esp+152]
	push	eax
	lea	ecx, DWORD PTR $T78295[esp+156]
	mov	DWORD PTR __$EHRec$[esp+164], 0
	call	??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::runtime_error::runtime_error
	push	OFFSET __TI3?AVfailure@ios_base@std@@
	lea	ecx, DWORD PTR $T78295[esp+156]
	push	ecx
	mov	DWORD PTR $T78295[esp+160], OFFSET ??_7failure@ios_base@std@@6B@
	call	__CxxThrowException@8
$LN4@clear:
; Line 281
	test	cl, 2
	je	SHORT $LN2@clear
; Line 282
	push	OFFSET ??_C@_0BG@FMKFHCIL@ios_base?3?3failbit?5set?$AA@
	lea	ecx, DWORD PTR $T78298[esp+156]
	call	??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
	lea	edx, DWORD PTR $T78298[esp+152]
	push	edx
	lea	ecx, DWORD PTR $T78297[esp+156]
	mov	DWORD PTR __$EHRec$[esp+164], 1
	call	??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::runtime_error::runtime_error
	push	OFFSET __TI3?AVfailure@ios_base@std@@
	lea	eax, DWORD PTR $T78297[esp+156]
	push	eax
	mov	DWORD PTR $T78297[esp+160], OFFSET ??_7failure@ios_base@std@@6B@
	call	__CxxThrowException@8
$LN2@clear:
; Line 284
	push	OFFSET ??_C@_0BF@OOHOMBOF@ios_base?3?3eofbit?5set?$AA@
	lea	ecx, DWORD PTR $T78300[esp+156]
	call	??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
	lea	ecx, DWORD PTR $T78300[esp+152]
	push	ecx
	lea	ecx, DWORD PTR $T78299[esp+156]
	mov	DWORD PTR __$EHRec$[esp+164], 2
	call	??0runtime_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::runtime_error::runtime_error
	push	OFFSET __TI3?AVfailure@ios_base@std@@
	lea	edx, DWORD PTR $T78299[esp+156]
	push	edx
	mov	DWORD PTR $T78299[esp+160], OFFSET ??_7failure@ios_base@std@@6B@
	call	__CxxThrowException@8
$LN1@clear:
; Line 285
	mov	ecx, DWORD PTR __$EHRec$[esp+152]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	add	esp, 148				; 00000094H
	ret	8
$LN24@clear:
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?clear@ios_base@std@@QAEXH_N@Z$0:
	lea	ecx, DWORD PTR $T78296[ebp]
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$?clear@ios_base@std@@QAEXH_N@Z$1:
	lea	ecx, DWORD PTR $T78298[ebp]
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$?clear@ios_base@std@@QAEXH_N@Z$2:
	lea	ecx, DWORD PTR $T78300[ebp]
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__ehhandler$?clear@ios_base@std@@QAEXH_N@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-136]
	mov	ecx, DWORD PTR [edx-140]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$?clear@ios_base@std@@QAEXH_N@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
?clear@ios_base@std@@QAEXH_N@Z ENDP			; std::ios_base::clear
; Function compile flags: /Ogtpy
;	COMDAT ??0failure@ios_base@std@@QAE@ABV012@@Z
_TEXT	SEGMENT
___that$ = 8						; size = 4
??0failure@ios_base@std@@QAE@ABV012@@Z PROC		; std::ios_base::failure::failure, COMDAT
; _this$ = ecx
	mov	eax, DWORD PTR ___that$[esp-4]
	push	esi
	push	eax
	mov	esi, ecx
	call	??0runtime_error@std@@QAE@ABV01@@Z
	mov	DWORD PTR [esi], OFFSET ??_7failure@ios_base@std@@6B@
	mov	eax, esi
	pop	esi
	ret	4
??0failure@ios_base@std@@QAE@ABV012@@Z ENDP		; std::ios_base::failure::failure
_TEXT	ENDS
PUBLIC	?clear@?$basic_ios@DU?$char_traits@D@std@@@std@@QAEXH_N@Z ; std::basic_ios<char,std::char_traits<char> >::clear
; Function compile flags: /Ogtpy
;	COMDAT ?clear@?$basic_ios@DU?$char_traits@D@std@@@std@@QAEXH_N@Z
_TEXT	SEGMENT
__State$ = 8						; size = 4
__Reraise$ = 12						; size = 1
?clear@?$basic_ios@DU?$char_traits@D@std@@@std@@QAEXH_N@Z PROC ; std::basic_ios<char,std::char_traits<char> >::clear, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ios
; Line 44
	cmp	DWORD PTR [ecx+40], 0
	mov	eax, DWORD PTR __State$[esp-4]
	jne	SHORT $LN4@clear@2
	or	eax, 4
$LN4@clear@2:
	mov	DWORD PTR __State$[esp-4], eax
	jmp	?clear@ios_base@std@@QAEXH_N@Z		; std::ios_base::clear
?clear@?$basic_ios@DU?$char_traits@D@std@@@std@@QAEXH_N@Z ENDP ; std::basic_ios<char,std::char_traits<char> >::clear
_TEXT	ENDS
PUBLIC	??_7?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@6B@ ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::`vftable'
PUBLIC	??_C@_01GFHCPBMG@C?$AA@				; `string'
PUBLIC	_this$GSCopy$
PUBLIC	__$ArrayPad$
PUBLIC	??0?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QAE@I@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >
PUBLIC	??_R4?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@6B@ ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::`RTTI Complete Object Locator'
PUBLIC	??_R0?AV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@8 ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > > `RTTI Type Descriptor'
PUBLIC	??_R3?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@8 ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@8 ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@8 ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBX@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
PUBLIC	?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DO@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
PUBLIC	?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DN@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
PUBLIC	?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_K@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
PUBLIC	?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_J@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
PUBLIC	?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DK@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
PUBLIC	?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DJ@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
PUBLIC	?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
EXTRN	??_E?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MAEPAXI@Z:PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::`vector deleting destructor'
;	COMDAT ??_R1A@?0A@EA@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@8
; File c:\program files\microsoft visual studio 8\vc\include\xlocinfo
rdata$r	SEGMENT
??_R1A@?0A@EA@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@8 DD FLAT:??_R0?AV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@8 ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@8
rdata$r	ENDS
;	COMDAT ??_R2?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@8
rdata$r	SEGMENT
??_R2?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@8 DD FLAT:??_R1A@?0A@EA@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@8 ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@facet@locale@std@@8
rdata$r	ENDS
;	COMDAT ??_R3?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@8
rdata$r	SEGMENT
??_R3?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@8 DD 00H ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@8
rdata$r	ENDS
;	COMDAT ??_R0?AV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@8
_DATA	SEGMENT
??_R0?AV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@8 DD FLAT:??_7type_info@@6B@ ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > > `RTTI Type Descriptor'
	DD	00H
	DB	'.?AV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@'
	DB	'std@@@std@@@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R4?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@6B@
rdata$r	SEGMENT
??_R4?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@6B@ DD 00H ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@8
	DD	FLAT:??_R3?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@8
rdata$r	ENDS
;	COMDAT ??_7?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@6B@
CONST	SEGMENT
??_7?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@6B@ DD FLAT:??_R4?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@6B@ ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::`vftable'
	DD	FLAT:??_E?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MAEPAXI@Z
	DD	FLAT:?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBX@Z
	DD	FLAT:?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DO@Z
	DD	FLAT:?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DN@Z
	DD	FLAT:?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_K@Z
	DD	FLAT:?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_J@Z
	DD	FLAT:?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DK@Z
	DD	FLAT:?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DJ@Z
	DD	FLAT:?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z
CONST	ENDS
;	COMDAT ??_C@_01GFHCPBMG@C?$AA@
CONST	SEGMENT
??_C@_01GFHCPBMG@C?$AA@ DB 'C', 00H			; `string'
CONST	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QAE@I@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QAE@I@Z$0
__ehfuncinfo$??0?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QAE@I@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QAE@I@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??0?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QAE@I@Z
_TEXT	SEGMENT
_this$GSCopy$ = -136					; size = 4
__Lobj$73359 = -132					; size = 116
__$ArrayPad$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
__Refs$ = 8						; size = 4
??0?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QAE@I@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 864
	push	-1
	push	__ehhandler$??0?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QAE@I@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	sub	esp, 124				; 0000007cH
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	mov	DWORD PTR __$ArrayPad$[esp+136], eax
	push	esi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+144]
	mov	DWORD PTR fs:0, eax
	mov	eax, DWORD PTR __Refs$[esp+140]
	mov	esi, ecx
	mov	DWORD PTR _this$GSCopy$[esp+144], esi
	mov	DWORD PTR [esi+4], eax
; Line 865
	push	OFFSET ??_C@_01GFHCPBMG@C?$AA@
	lea	ecx, DWORD PTR __Lobj$73359[esp+148]
	mov	DWORD PTR __$EHRec$[esp+156], 0
	mov	DWORD PTR [esi], OFFSET ??_7?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@6B@
	call	??0_Locinfo@std@@QAE@PBD@Z		; std::_Locinfo::_Locinfo
; Line 866
	call	__Getcvt
; Line 867
	lea	ecx, DWORD PTR __Lobj$73359[esp+144]
	mov	DWORD PTR [esi+8], eax
	mov	DWORD PTR [esi+12], edx
	call	??1_Locinfo@std@@QAE@XZ			; std::_Locinfo::~_Locinfo
; Line 868
	mov	eax, esi
	mov	ecx, DWORD PTR __$EHRec$[esp+144]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	esi
	mov	ecx, DWORD PTR __$ArrayPad$[esp+136]
	xor	ecx, esp
	call	@__security_check_cookie@4
	add	esp, 136				; 00000088H
	ret	4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QAE@I@Z$0:
	mov	ecx, DWORD PTR _this$GSCopy$[ebp]
	jmp	??1facet@locale@std@@UAE@XZ		; std::locale::facet::~facet
__ehhandler$??0?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QAE@I@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-128]
	mov	ecx, DWORD PTR [edx-132]
	xor	ecx, eax
	call	@__security_check_cookie@4
	add	eax, 4
	mov	ecx, DWORD PTR [edx-4]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$??0?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QAE@I@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
??0?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QAE@I@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >
PUBLIC	?assign@?$char_traits@D@std@@SAPADPADID@Z	; std::char_traits<char>::assign
EXTRN	_memset:PROC
; Function compile flags: /Ogtpy
;	COMDAT ?assign@?$char_traits@D@std@@SAPADPADID@Z
_TEXT	SEGMENT
__First$ = 8						; size = 4
__Count$ = 12						; size = 4
__Ch$ = 16						; size = 1
?assign@?$char_traits@D@std@@SAPADPADID@Z PROC		; std::char_traits<char>::assign, COMDAT
; File c:\program files\microsoft visual studio 8\vc\include\iosfwd
; Line 489
	mov	eax, DWORD PTR __Count$[esp-4]
	movsx	ecx, BYTE PTR __Ch$[esp-4]
	mov	edx, DWORD PTR __First$[esp-4]
	push	eax
	push	ecx
	push	edx
	call	_memset
	add	esp, 12					; 0000000cH
; Line 490
	ret	0
?assign@?$char_traits@D@std@@SAPADPADID@Z ENDP		; std::char_traits<char>::assign
_TEXT	ENDS
PUBLIC	?_Getlconv@_Locinfo@std@@QBEPBUlconv@@XZ	; std::_Locinfo::_Getlconv
EXTRN	_localeconv:PROC
; Function compile flags: /Ogtpy
;	COMDAT ?_Getlconv@_Locinfo@std@@QBEPBUlconv@@XZ
_TEXT	SEGMENT
?_Getlconv@_Locinfo@std@@QBEPBUlconv@@XZ PROC		; std::_Locinfo::_Getlconv, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocinfo
; Line 125
	jmp	_localeconv
?_Getlconv@_Locinfo@std@@QBEPBUlconv@@XZ ENDP		; std::_Locinfo::_Getlconv
_TEXT	ENDS
PUBLIC	??_C@_05LAPONLG@false?$AA@			; `string'
PUBLIC	?_Getfalse@_Locinfo@std@@QBEPBDXZ		; std::_Locinfo::_Getfalse
;	COMDAT ??_C@_05LAPONLG@false?$AA@
CONST	SEGMENT
??_C@_05LAPONLG@false?$AA@ DB 'false', 00H		; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?_Getfalse@_Locinfo@std@@QBEPBDXZ
_TEXT	SEGMENT
?_Getfalse@_Locinfo@std@@QBEPBDXZ PROC			; std::_Locinfo::_Getfalse, COMDAT
; _this$ = ecx
; Line 163
	mov	eax, OFFSET ??_C@_05LAPONLG@false?$AA@
; Line 164
	ret	0
?_Getfalse@_Locinfo@std@@QBEPBDXZ ENDP			; std::_Locinfo::_Getfalse
_TEXT	ENDS
PUBLIC	??_C@_04LOAJBDKD@true?$AA@			; `string'
PUBLIC	?_Gettrue@_Locinfo@std@@QBEPBDXZ		; std::_Locinfo::_Gettrue
;	COMDAT ??_C@_04LOAJBDKD@true?$AA@
CONST	SEGMENT
??_C@_04LOAJBDKD@true?$AA@ DB 'true', 00H		; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?_Gettrue@_Locinfo@std@@QBEPBDXZ
_TEXT	SEGMENT
?_Gettrue@_Locinfo@std@@QBEPBDXZ PROC			; std::_Locinfo::_Gettrue, COMDAT
; _this$ = ecx
; Line 168
	mov	eax, OFFSET ??_C@_04LOAJBDKD@true?$AA@
; Line 169
	ret	0
?_Gettrue@_Locinfo@std@@QBEPBDXZ ENDP			; std::_Locinfo::_Gettrue
_TEXT	ENDS
PUBLIC	?precision@ios_base@std@@QBEHXZ			; std::ios_base::precision
; Function compile flags: /Ogtpy
;	COMDAT ?precision@ios_base@std@@QBEHXZ
_TEXT	SEGMENT
?precision@ios_base@std@@QBEHXZ PROC			; std::ios_base::precision, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xiosbase
; Line 395
	mov	eax, DWORD PTR [ecx+20]
; Line 396
	ret	0
?precision@ios_base@std@@QBEHXZ ENDP			; std::ios_base::precision
_TEXT	ENDS
PUBLIC	?width@ios_base@std@@QBEHXZ			; std::ios_base::width
; Function compile flags: /Ogtpy
;	COMDAT ?width@ios_base@std@@QBEHXZ
_TEXT	SEGMENT
?width@ios_base@std@@QBEHXZ PROC			; std::ios_base::width, COMDAT
; _this$ = ecx
; Line 407
	mov	eax, DWORD PTR [ecx+24]
; Line 408
	ret	0
?width@ios_base@std@@QBEHXZ ENDP			; std::ios_base::width
_TEXT	ENDS
PUBLIC	?width@ios_base@std@@QAEHH@Z			; std::ios_base::width
; Function compile flags: /Ogtpy
;	COMDAT ?width@ios_base@std@@QAEHH@Z
_TEXT	SEGMENT
__Newwidth$ = 8						; size = 4
?width@ios_base@std@@QAEHH@Z PROC			; std::ios_base::width, COMDAT
; _this$ = ecx
; Line 413
	mov	edx, DWORD PTR __Newwidth$[esp-4]
	mov	eax, DWORD PTR [ecx+24]
	mov	DWORD PTR [ecx+24], edx
; Line 415
	ret	4
?width@ios_base@std@@QAEHH@Z ENDP			; std::ios_base::width
_TEXT	ENDS
PUBLIC	??1?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MAE@XZ ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::~num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >
; Function compile flags: /Ogtpy
;	COMDAT ??1?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MAE@XZ
_TEXT	SEGMENT
??1?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MAE@XZ PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::~num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 851
	mov	DWORD PTR [ecx], OFFSET ??_7facet@locale@std@@6B@
	ret	0
??1?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MAE@XZ ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::~num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ??_G?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MAEPAXI@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::`scalar deleting destructor', COMDAT
; _this$ = ecx
	test	BYTE PTR ___flags$[esp-4], 1
	push	esi
	mov	esi, ecx
	mov	DWORD PTR [esi], OFFSET ??_7facet@locale@std@@6B@
	je	SHORT $LN8@scalar@5
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN8@scalar@5:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MAEPAXI@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	?_Ffmt@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABAPADPADDH@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Ffmt
; Function compile flags: /Ogtpy
;	COMDAT ?_Ffmt@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABAPADPADDH@Z
_TEXT	SEGMENT
_this$ = 8						; size = 4
__Fmt$ = 12						; size = 4
__Spec$ = 16						; size = 1
__Flags$ = 20						; size = 4
?_Ffmt@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABAPADPADDH@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Ffmt, COMDAT
; Line 1098
	mov	eax, DWORD PTR __Fmt$[esp-4]
	push	ebx
; Line 1100
	mov	ebx, DWORD PTR __Flags$[esp]
	test	bl, 32					; 00000020H
	mov	BYTE PTR [eax], 37			; 00000025H
	lea	ecx, DWORD PTR [eax+1]
	je	SHORT $LN3@Ffmt
; Line 1101
	mov	BYTE PTR [ecx], 43			; 0000002bH
	add	ecx, 1
$LN3@Ffmt:
; Line 1102
	test	bl, 16					; 00000010H
	je	SHORT $LN2@Ffmt
; Line 1103
	mov	BYTE PTR [ecx], 35			; 00000023H
	add	ecx, 1
$LN2@Ffmt:
; Line 1106
	mov	dl, BYTE PTR __Spec$[esp]
	mov	BYTE PTR [ecx], 46			; 0000002eH
	add	ecx, 1
	mov	BYTE PTR [ecx], 42			; 0000002aH
	add	ecx, 1
	test	dl, dl
	je	SHORT $LN1@Ffmt
; Line 1107
	mov	BYTE PTR [ecx], dl
	add	ecx, 1
$LN1@Ffmt:
; Line 1109
	and	ebx, 12288				; 00003000H
	mov	edx, ebx
; Line 1111
	cmp	edx, 8192				; 00002000H
	pop	ebx
	jne	SHORT $LN6@Ffmt
	mov	dl, 102					; 00000066H
	mov	BYTE PTR [ecx], dl
; Line 1112
	mov	BYTE PTR [ecx+1], 0
; Line 1114
	ret	0
$LN6@Ffmt:
; Line 1111
	cmp	edx, 4096				; 00001000H
	setne	dl
	lea	edx, DWORD PTR [edx+edx+101]
	mov	BYTE PTR [ecx], dl
; Line 1112
	mov	BYTE PTR [ecx+1], 0
; Line 1114
	ret	0
?_Ffmt@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABAPADPADDH@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Ffmt
_TEXT	ENDS
PUBLIC	?_Ifmt@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABAPADPADPBDH@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Ifmt
; Function compile flags: /Ogtpy
;	COMDAT ?_Ifmt@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABAPADPADPBDH@Z
_TEXT	SEGMENT
_this$ = 8						; size = 4
__Fmt$ = 12						; size = 4
__Spec$ = 16						; size = 4
__Flags$ = 20						; size = 4
?_Ifmt@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABAPADPADPBDH@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Ifmt, COMDAT
; Line 1240
	mov	eax, DWORD PTR __Fmt$[esp-4]
; Line 1242
	mov	edx, DWORD PTR __Flags$[esp-4]
	test	dl, 32					; 00000020H
	mov	BYTE PTR [eax], 37			; 00000025H
	lea	ecx, DWORD PTR [eax+1]
	je	SHORT $LN4@Ifmt
; Line 1243
	mov	BYTE PTR [ecx], 43			; 0000002bH
	add	ecx, 1
$LN4@Ifmt:
; Line 1244
	test	dl, 8
	je	SHORT $LN3@Ifmt
; Line 1245
	mov	BYTE PTR [ecx], 35			; 00000023H
	add	ecx, 1
$LN3@Ifmt:
	push	ebx
	push	esi
	push	edi
; Line 1246
	mov	edi, DWORD PTR __Spec$[esp+8]
	mov	bl, BYTE PTR [edi]
	cmp	bl, 76					; 0000004cH
	je	SHORT $LN2@Ifmt
; Line 1247
	mov	BYTE PTR [ecx], bl
; Line 1248
	jmp	SHORT $LN11@Ifmt
$LN2@Ifmt:
; Line 1250
	mov	BYTE PTR [ecx], 73			; 00000049H
	add	ecx, 1
; Line 1251
	mov	BYTE PTR [ecx], 54			; 00000036H
	add	ecx, 1
; Line 1252
	mov	BYTE PTR [ecx], 52			; 00000034H
$LN11@Ifmt:
; Line 1255
	mov	esi, edx
	and	esi, 3584				; 00000e00H
	add	ecx, 1
; Line 1258
	cmp	esi, 1024				; 00000400H
	jne	SHORT $LN9@Ifmt
	pop	edi
	mov	dl, 111					; 0000006fH
	pop	esi
	mov	BYTE PTR [ecx], dl
; Line 1259
	mov	BYTE PTR [ecx+1], 0
	pop	ebx
; Line 1261
	ret	0
$LN9@Ifmt:
; Line 1258
	cmp	esi, 2048				; 00000800H
	je	SHORT $LN7@Ifmt
	mov	dl, BYTE PTR [edi+1]
	pop	edi
	pop	esi
	mov	BYTE PTR [ecx], dl
; Line 1259
	mov	BYTE PTR [ecx+1], 0
	pop	ebx
; Line 1261
	ret	0
$LN7@Ifmt:
; Line 1258
	add	dl, dl
	add	dl, dl
	add	dl, dl
	not	dl
	and	dl, 32					; 00000020H
	pop	edi
	or	dl, 88					; 00000058H
	pop	esi
	mov	BYTE PTR [ecx], dl
; Line 1259
	mov	BYTE PTR [ecx+1], 0
	pop	ebx
; Line 1261
	ret	0
?_Ifmt@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABAPADPADPBDH@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Ifmt
_TEXT	ENDS
PUBLIC	??A?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAADI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::operator[]
EXTRN	__invalid_parameter_noinfo:PROC
; Function compile flags: /Ogtpy
;	COMDAT ??A?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAADI@Z
_TEXT	SEGMENT
__Off$ = 8						; size = 4
??A?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAADI@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::operator[], COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 1528
	push	esi
	push	edi
; Line 1541
	mov	edi, DWORD PTR __Off$[esp+4]
	mov	esi, ecx
	cmp	edi, DWORD PTR [esi+20]
	jbe	SHORT $LN1@operator@2
	call	__invalid_parameter_noinfo
$LN1@operator@2:
; Line 1544
	cmp	DWORD PTR [esi+24], 16			; 00000010H
	jb	SHORT $LN6@operator@2
	mov	esi, DWORD PTR [esi+4]
	lea	eax, DWORD PTR [esi+edi]
	pop	edi
	pop	esi
; Line 1545
	ret	4
; Line 1544
$LN6@operator@2:
	lea	eax, DWORD PTR [esi+edi+4]
	pop	edi
	pop	esi
; Line 1545
	ret	4
??A?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAADI@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::operator[]
_TEXT	ENDS
PUBLIC	??D?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAEAAV01@XZ ; std::ostreambuf_iterator<char,std::char_traits<char> >::operator*
; Function compile flags: /Ogtpy
;	COMDAT ??D?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAEAAV01@XZ
_TEXT	SEGMENT
??D?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAEAAV01@XZ PROC ; std::ostreambuf_iterator<char,std::char_traits<char> >::operator*, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xutility
; Line 2232
	mov	eax, ecx
; Line 2234
	ret	0
??D?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAEAAV01@XZ ENDP ; std::ostreambuf_iterator<char,std::char_traits<char> >::operator*
_TEXT	ENDS
PUBLIC	??E?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAEAAV01@XZ ; std::ostreambuf_iterator<char,std::char_traits<char> >::operator++
; Function compile flags: /Ogtpy
;	COMDAT ??E?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAEAAV01@XZ
_TEXT	SEGMENT
??E?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAEAAV01@XZ PROC ; std::ostreambuf_iterator<char,std::char_traits<char> >::operator++, COMDAT
; _this$ = ecx
; Line 2237
	mov	eax, ecx
; Line 2239
	ret	0
??E?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAEAAV01@XZ ENDP ; std::ostreambuf_iterator<char,std::char_traits<char> >::operator++
_TEXT	ENDS
PUBLIC	?decimal_point@?$numpunct@D@std@@QBEDXZ		; std::numpunct<char>::decimal_point
; Function compile flags: /Ogtpy
;	COMDAT ?decimal_point@?$numpunct@D@std@@QBEDXZ
_TEXT	SEGMENT
?decimal_point@?$numpunct@D@std@@QBEDXZ PROC		; std::numpunct<char>::decimal_point, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 60
	mov	eax, DWORD PTR [ecx]
	mov	edx, DWORD PTR [eax+4]
	jmp	edx
?decimal_point@?$numpunct@D@std@@QBEDXZ ENDP		; std::numpunct<char>::decimal_point
_TEXT	ENDS
PUBLIC	?thousands_sep@?$numpunct@D@std@@QBEDXZ		; std::numpunct<char>::thousands_sep
; Function compile flags: /Ogtpy
;	COMDAT ?thousands_sep@?$numpunct@D@std@@QBEDXZ
_TEXT	SEGMENT
?thousands_sep@?$numpunct@D@std@@QBEDXZ PROC		; std::numpunct<char>::thousands_sep, COMDAT
; _this$ = ecx
; Line 65
	mov	eax, DWORD PTR [ecx]
	mov	edx, DWORD PTR [eax+8]
	jmp	edx
?thousands_sep@?$numpunct@D@std@@QBEDXZ ENDP		; std::numpunct<char>::thousands_sep
_TEXT	ENDS
PUBLIC	?_Tidy@?$numpunct@D@std@@AAEXXZ			; std::numpunct<char>::_Tidy
EXTRN	??_V@YAXPAX@Z:PROC				; operator delete[]
; Function compile flags: /Ogtpy
;	COMDAT ?_Tidy@?$numpunct@D@std@@AAEXXZ
_TEXT	SEGMENT
?_Tidy@?$numpunct@D@std@@AAEXXZ PROC			; std::numpunct<char>::_Tidy, COMDAT
; _this$ = ecx
; Line 171
	push	esi
	mov	esi, ecx
; Line 172
	mov	eax, DWORD PTR [esi+8]
	push	eax
	call	??_V@YAXPAX@Z				; operator delete[]
; Line 173
	mov	ecx, DWORD PTR [esi+16]
	push	ecx
	call	??_V@YAXPAX@Z				; operator delete[]
; Line 174
	mov	edx, DWORD PTR [esi+20]
	push	edx
	call	??_V@YAXPAX@Z				; operator delete[]
	add	esp, 12					; 0000000cH
	pop	esi
; Line 175
	ret	0
?_Tidy@?$numpunct@D@std@@AAEXXZ ENDP			; std::numpunct<char>::_Tidy
_TEXT	ENDS
PUBLIC	?_Chassign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXIID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Chassign
; Function compile flags: /Ogtpy
;	COMDAT ?_Chassign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXIID@Z
_TEXT	SEGMENT
__Off$ = 8						; size = 4
__Count$ = 12						; size = 4
__Ch$ = 16						; size = 1
?_Chassign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXIID@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Chassign, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 1993
	mov	eax, DWORD PTR __Count$[esp-4]
	cmp	eax, 1
	jne	SHORT $LN2@Chassign
; Line 1994
	cmp	DWORD PTR [ecx+24], 16			; 00000010H
	jb	SHORT $LN7@Chassign
	mov	ecx, DWORD PTR [ecx+4]
	mov	al, BYTE PTR __Ch$[esp-4]
	mov	edx, DWORD PTR __Off$[esp-4]
	mov	BYTE PTR [ecx+edx], al
; Line 1997
	ret	12					; 0000000cH
; Line 1994
$LN7@Chassign:
	mov	al, BYTE PTR __Ch$[esp-4]
	mov	edx, DWORD PTR __Off$[esp-4]
	add	ecx, 4
	mov	BYTE PTR [ecx+edx], al
; Line 1997
	ret	12					; 0000000cH
$LN2@Chassign:
; Line 1996
	cmp	DWORD PTR [ecx+24], 16			; 00000010H
	jb	SHORT $LN13@Chassign
	mov	ecx, DWORD PTR [ecx+4]
	jmp	SHORT $LN14@Chassign
$LN13@Chassign:
	add	ecx, 4
$LN14@Chassign:
	mov	edx, DWORD PTR __Off$[esp-4]
	push	eax
	movsx	eax, BYTE PTR __Ch$[esp]
	push	eax
	add	ecx, edx
	push	ecx
	call	_memset
	add	esp, 12					; 0000000cH
; Line 1997
	ret	12					; 0000000cH
?_Chassign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXIID@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Chassign
_TEXT	ENDS
PUBLIC	??$_Maklocchr@D@std@@YADDPADABU_Cvtvec@@@Z	; std::_Maklocchr<char>
; Function compile flags: /Ogtpy
;	COMDAT ??$_Maklocchr@D@std@@YADDPADABU_Cvtvec@@@Z
_TEXT	SEGMENT
__Byte$ = 8						; size = 1
___formal$ = 12						; size = 4
___formal$ = 16						; size = 4
??$_Maklocchr@D@std@@YADDPADABU_Cvtvec@@@Z PROC		; std::_Maklocchr<char>, COMDAT
; File c:\program files\microsoft visual studio 8\vc\include\xlocale
; Line 583
	mov	al, BYTE PTR __Byte$[esp-4]
; Line 584
	ret	0
??$_Maklocchr@D@std@@YADDPADABU_Cvtvec@@@Z ENDP		; std::_Maklocchr<char>
_TEXT	ENDS
PUBLIC	??$_Maklocstr@D@std@@YAPADPBDPADABU_Cvtvec@@@Z	; std::_Maklocstr<char>
EXTRN	??_U@YAPAXI@Z:PROC				; operator new[]
; Function compile flags: /Ogtpy
;	COMDAT ??$_Maklocstr@D@std@@YAPADPBDPADABU_Cvtvec@@@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
___formal$ = 12						; size = 4
___formal$ = 16						; size = 4
??$_Maklocstr@D@std@@YAPADPBDPADABU_Cvtvec@@@Z PROC	; std::_Maklocstr<char>, COMDAT
; Line 604
	push	esi
	push	edi
; Line 605
	mov	edi, DWORD PTR __Ptr$[esp+4]
	mov	eax, edi
	lea	edx, DWORD PTR [eax+1]
	npad	5
$LL8@Maklocstr:
	mov	cl, BYTE PTR [eax]
	add	eax, 1
	test	cl, cl
	jne	SHORT $LL8@Maklocstr
	sub	eax, edx
	lea	esi, DWORD PTR [eax+1]
; Line 606
	push	esi
	call	??_U@YAPAXI@Z				; operator new[]
	add	esp, 4
; Line 611
	test	esi, esi
	mov	ecx, eax
	jbe	SHORT $LN1@Maklocstr
	npad	3
$LL3@Maklocstr:
; Line 612
	mov	dl, BYTE PTR [edi]
	mov	BYTE PTR [ecx], dl
	sub	esi, 1
	add	ecx, 1
	add	edi, 1
	test	esi, esi
	ja	SHORT $LL3@Maklocstr
$LN1@Maklocstr:
	pop	edi
	pop	esi
; Line 615
	ret	0
??$_Maklocstr@D@std@@YAPADPBDPADABU_Cvtvec@@@Z ENDP	; std::_Maklocstr<char>
_TEXT	ENDS
PUBLIC	??4?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAEAAV01@D@Z ; std::ostreambuf_iterator<char,std::char_traits<char> >::operator=
; Function compile flags: /Ogtpy
;	COMDAT ??4?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAEAAV01@D@Z
_TEXT	SEGMENT
__Right$ = 8						; size = 1
??4?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAEAAV01@D@Z PROC ; std::ostreambuf_iterator<char,std::char_traits<char> >::operator=, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xutility
; Line 2223
	push	esi
	mov	esi, ecx
; Line 2226
	mov	ecx, DWORD PTR [esi+8]
	test	ecx, ecx
	je	SHORT $LN1@operator@3
	mov	eax, DWORD PTR [ecx+36]
	cmp	DWORD PTR [eax], 0
	je	SHORT $LN7@operator@3
	mov	edx, DWORD PTR [ecx+52]
	cmp	DWORD PTR [edx], 0
	jle	SHORT $LN7@operator@3
	mov	eax, edx
	add	DWORD PTR [eax], -1
	mov	ecx, DWORD PTR [ecx+36]
	mov	eax, DWORD PTR [ecx]
	lea	edx, DWORD PTR [eax+1]
	mov	DWORD PTR [ecx], edx
	mov	cl, BYTE PTR __Right$[esp]
	mov	BYTE PTR [eax], cl
	movzx	eax, cl
	jmp	SHORT $LN8@operator@3
$LN7@operator@3:
	movzx	edx, BYTE PTR __Right$[esp]
	mov	eax, DWORD PTR [ecx]
	mov	eax, DWORD PTR [eax+4]
	push	edx
	call	eax
$LN8@operator@3:
	cmp	eax, -1
	jne	SHORT $LN23@operator@3
$LN1@operator@3:
; Line 2227
	mov	BYTE PTR [esi+4], 1
$LN23@operator@3:
; Line 2228
	mov	eax, esi
	pop	esi
; Line 2229
	ret	4
??4?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@QAEAAV01@D@Z ENDP ; std::ostreambuf_iterator<char,std::char_traits<char> >::operator=
_TEXT	ENDS
PUBLIC	?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z	; std::numpunct<char>::_Init
;	COMDAT xdata$x
; File c:\program files\microsoft visual studio 8\vc\include\xlocale
xdata$x	SEGMENT
__catchsym$?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z$2 DD 040H
	DD	00H
	DD	00H
	DD	FLAT:__catch$?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z$0
__unwindtable$?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z DD 0ffffffffH
	DD	00H
	DD	0ffffffffH
	DD	00H
__tryblocktable$?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z DD 00H
	DD	00H
	DD	01H
	DD	01H
	DD	FLAT:__catchsym$?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z$2
__ehfuncinfo$?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z
	DD	01H
	DD	FLAT:__tryblocktable$?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z
_TEXT	SEGMENT
$T78513 = -24						; size = 8
$T78512 = -24						; size = 8
$T78511 = -24						; size = 8
_this$ = -20						; size = 4
__$EHRec$ = -16						; size = 16
__Lobj$ = 8						; size = 4
?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z PROC	; std::numpunct<char>::_Init, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 123
	push	ebp
	mov	ebp, esp
	push	-1
	push	__ehhandler$?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	sub	esp, 12					; 0000000cH
	push	ebx
	push	esi
	push	edi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, ebp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[ebp+4]
	mov	DWORD PTR fs:0, eax
	mov	DWORD PTR __$EHRec$[ebp], esp
	mov	esi, ecx
	mov	DWORD PTR _this$[ebp], esi
; Line 124
	call	_localeconv
; Line 126
	xor	ebx, ebx
	mov	edi, eax
	mov	DWORD PTR [esi+8], ebx
; Line 127
	mov	DWORD PTR [esi+16], ebx
; Line 128
	mov	DWORD PTR [esi+20], ebx
; Line 130
	mov	DWORD PTR __$EHRec$[ebp+12], ebx
; Line 131
	call	__Getcvt
	mov	ecx, DWORD PTR [edi+8]
	lea	eax, DWORD PTR $T78511[ebp]
	push	eax
	push	ebx
	push	ecx
	call	??$_Maklocstr@D@std@@YAPADPBDPADABU_Cvtvec@@@Z ; std::_Maklocstr<char>
	add	esp, 12					; 0000000cH
	mov	DWORD PTR [esi+8], eax
; Line 132
	call	__Getcvt
	lea	edx, DWORD PTR $T78512[ebp]
	push	edx
	push	ebx
	push	OFFSET ??_C@_05LAPONLG@false?$AA@
	call	??$_Maklocstr@D@std@@YAPADPBDPADABU_Cvtvec@@@Z ; std::_Maklocstr<char>
	add	esp, 12					; 0000000cH
	mov	DWORD PTR [esi+16], eax
; Line 133
	call	__Getcvt
	lea	eax, DWORD PTR $T78513[ebp]
	push	eax
	push	ebx
	push	OFFSET ??_C@_04LOAJBDKD@true?$AA@
	call	??$_Maklocstr@D@std@@YAPADPBDPADABU_Cvtvec@@@Z ; std::_Maklocstr<char>
	add	esp, 12					; 0000000cH
	mov	DWORD PTR [esi+20], eax
; Line 139
	call	__Getcvt
	mov	ecx, DWORD PTR [edi]
	mov	dl, BYTE PTR [ecx]
	mov	BYTE PTR [esi+12], dl
; Line 141
	call	__Getcvt
	mov	eax, DWORD PTR [edi+4]
	mov	cl, BYTE PTR [eax]
	mov	BYTE PTR [esi+13], cl
; Line 142
	mov	ecx, DWORD PTR __$EHRec$[ebp+4]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	edi
	pop	esi
	pop	ebx
	mov	esp, ebp
	pop	ebp
	ret	4
__catch$?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z$0:
; Line 135
	mov	ecx, DWORD PTR _this$[ebp]
	call	?_Tidy@?$numpunct@D@std@@AAEXXZ		; std::numpunct<char>::_Tidy
; Line 136
	xor	ebx, ebx
	push	ebx
	push	ebx
	call	__CxxThrowException@8
$LN30@Init:
	int	3
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__ehhandler$?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx+12]
	mov	ecx, DWORD PTR [edx-28]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z ENDP	; std::numpunct<char>::_Init
PUBLIC	?_Put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Put
; Function compile flags: /Ogtpy
;	COMDAT ?_Put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDI@Z
_TEXT	SEGMENT
_this$ = 8						; size = 4
___$ReturnUdt$ = 12					; size = 4
__Dest$ = 16						; size = 12
__Ptr$ = 28						; size = 4
__Count$ = 32						; size = 4
?_Put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDI@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Put, COMDAT
; Line 1316
	push	ebp
; Line 1317
	mov	ebp, DWORD PTR __Count$[esp]
	test	ebp, ebp
	push	esi
	mov	esi, DWORD PTR __Dest$[esp+12]
	jbe	SHORT $LN1@Put
	push	ebx
	push	edi
	mov	edi, DWORD PTR __Ptr$[esp+12]
$LL3@Put:
; Line 1318
	test	esi, esi
	je	SHORT $LN10@Put
	mov	eax, DWORD PTR [esi+36]
	cmp	DWORD PTR [eax], 0
	mov	dl, BYTE PTR [edi]
	je	SHORT $LN16@Put
	mov	ecx, DWORD PTR [esi+52]
	cmp	DWORD PTR [ecx], 0
	jle	SHORT $LN16@Put
	mov	eax, ecx
	add	DWORD PTR [eax], -1
	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR [eax]
	lea	ebx, DWORD PTR [ecx+1]
	mov	DWORD PTR [eax], ebx
	mov	BYTE PTR [ecx], dl
	movzx	eax, dl
	jmp	SHORT $LN17@Put
$LN16@Put:
	mov	eax, DWORD PTR [esi]
	movzx	ecx, dl
	mov	edx, DWORD PTR [eax+4]
	push	ecx
	mov	ecx, esi
	call	edx
$LN17@Put:
	cmp	eax, -1
	jne	SHORT $LN2@Put
$LN10@Put:
	mov	BYTE PTR __Dest$[esp+16], 1
$LN2@Put:
; Line 1317
	sub	ebp, 1
	add	edi, 1
	test	ebp, ebp
	ja	SHORT $LL3@Put
	pop	edi
	pop	ebx
$LN1@Put:
; Line 1319
	mov	eax, DWORD PTR ___$ReturnUdt$[esp+4]
	movq	xmm0, QWORD PTR __Dest$[esp+4]
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], esi
	pop	esi
	pop	ebp
; Line 1320
	ret	0
?_Put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDI@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Put
_TEXT	ENDS
PUBLIC	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
; Function compile flags: /Ogtpy
;	COMDAT ?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z
_TEXT	SEGMENT
_this$ = 8						; size = 4
___$ReturnUdt$ = 12					; size = 4
__Dest$ = 16						; size = 12
__Ch$ = 28						; size = 1
__Count$ = 32						; size = 4
?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep, COMDAT
; Line 1351
	push	esi
; Line 1352
	mov	esi, DWORD PTR __Dest$[esp+8]
	push	edi
	mov	edi, DWORD PTR __Count$[esp+4]
	test	edi, edi
	jbe	SHORT $LN1@Rep
	push	ebx
	mov	bl, BYTE PTR __Ch$[esp+8]
$LL6@Rep:
; Line 1353
	test	esi, esi
	je	SHORT $LN10@Rep
	mov	eax, DWORD PTR [esi+36]
	cmp	DWORD PTR [eax], 0
	je	SHORT $LN16@Rep
	mov	ecx, DWORD PTR [esi+52]
	cmp	DWORD PTR [ecx], 0
	jle	SHORT $LN16@Rep
	mov	eax, ecx
	add	DWORD PTR [eax], -1
	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR [eax]
	lea	edx, DWORD PTR [ecx+1]
	mov	DWORD PTR [eax], edx
	mov	BYTE PTR [ecx], bl
	movzx	eax, bl
	jmp	SHORT $LN17@Rep
$LN16@Rep:
	mov	eax, DWORD PTR [esi]
	mov	edx, DWORD PTR [eax+4]
	movzx	ecx, bl
	push	ecx
	mov	ecx, esi
	call	edx
$LN17@Rep:
	cmp	eax, -1
	jne	SHORT $LN2@Rep
$LN10@Rep:
	mov	BYTE PTR __Dest$[esp+12], 1
$LN2@Rep:
; Line 1352
	sub	edi, 1
	jne	SHORT $LL6@Rep
	pop	ebx
$LN1@Rep:
; Line 1354
	mov	eax, DWORD PTR ___$ReturnUdt$[esp+4]
	movq	xmm0, QWORD PTR __Dest$[esp+4]
	movq	QWORD PTR [eax], xmm0
	pop	edi
	mov	DWORD PTR [eax+8], esi
	pop	esi
; Line 1355
	ret	0
?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
_TEXT	ENDS
PUBLIC	?_Putc@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putc
; Function compile flags: /Ogtpy
;	COMDAT ?_Putc@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDI@Z
_TEXT	SEGMENT
_this$ = 8						; size = 4
___$ReturnUdt$ = 12					; size = 4
__Dest$ = 16						; size = 12
__Ptr$ = 28						; size = 4
__Count$ = 32						; size = 4
?_Putc@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDI@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putc, COMDAT
; Line 1324
	push	ebp
; Line 1325
	mov	ebp, DWORD PTR __Count$[esp]
	test	ebp, ebp
	push	esi
	mov	esi, DWORD PTR __Dest$[esp+12]
	jbe	SHORT $LN1@Putc
	push	ebx
	push	edi
	mov	edi, DWORD PTR __Ptr$[esp+12]
$LL3@Putc:
; Line 1326
	test	esi, esi
	je	SHORT $LN12@Putc
	mov	eax, DWORD PTR [esi+36]
	cmp	DWORD PTR [eax], 0
	mov	dl, BYTE PTR [edi]
	je	SHORT $LN18@Putc
	mov	ecx, DWORD PTR [esi+52]
	cmp	DWORD PTR [ecx], 0
	jle	SHORT $LN18@Putc
	mov	eax, ecx
	add	DWORD PTR [eax], -1
	mov	eax, DWORD PTR [esi+36]
	mov	ecx, DWORD PTR [eax]
	lea	ebx, DWORD PTR [ecx+1]
	mov	DWORD PTR [eax], ebx
	mov	BYTE PTR [ecx], dl
	movzx	eax, dl
	jmp	SHORT $LN19@Putc
$LN18@Putc:
	mov	eax, DWORD PTR [esi]
	movzx	ecx, dl
	mov	edx, DWORD PTR [eax+4]
	push	ecx
	mov	ecx, esi
	call	edx
$LN19@Putc:
	cmp	eax, -1
	jne	SHORT $LN2@Putc
$LN12@Putc:
	mov	BYTE PTR __Dest$[esp+16], 1
$LN2@Putc:
; Line 1325
	sub	ebp, 1
	add	edi, 1
	test	ebp, ebp
	ja	SHORT $LL3@Putc
	pop	edi
	pop	ebx
$LN1@Putc:
; Line 1327
	mov	eax, DWORD PTR ___$ReturnUdt$[esp+4]
	movq	xmm0, QWORD PTR __Dest$[esp+4]
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], esi
	pop	esi
	pop	ebp
; Line 1328
	ret	0
?_Putc@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDI@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putc
_TEXT	ENDS
PUBLIC	?_Putgrouped@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDID@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putgrouped
EXTRN	_memchr:PROC
; Function compile flags: /Ogtpy
;	COMDAT ?_Putgrouped@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDID@Z
_TEXT	SEGMENT
$T78828 = -24						; size = 12
$T78829 = -12						; size = 12
_this$ = 8						; size = 4
___$ReturnUdt$ = 12					; size = 4
__Dest$ = 16						; size = 12
__Ptr$ = 28						; size = 4
__Count$ = 32						; size = 4
__Kseparator$ = 36					; size = 1
?_Putgrouped@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDID@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putgrouped, COMDAT
; Line 1332
	sub	esp, 24					; 00000018H
	push	ebx
	mov	ebx, DWORD PTR __Count$[esp+24]
	push	ebp
	mov	ebp, DWORD PTR __Dest$[esp+36]
	push	esi
	push	edi
	mov	edi, DWORD PTR __Ptr$[esp+36]
$LL5@Putgrouped:
; Line 1336
	push	ebx
	push	0
	push	edi
	call	_memchr
	add	esp, 12					; 0000000cH
; Line 1337
	test	eax, eax
	je	SHORT $LN8@Putgrouped
	sub	eax, edi
	mov	esi, eax
	jmp	SHORT $LN9@Putgrouped
$LN8@Putgrouped:
	mov	esi, ebx
$LN9@Putgrouped:
; Line 1339
	movq	xmm0, QWORD PTR __Dest$[esp+36]
	mov	ecx, DWORD PTR _this$[esp+36]
	push	esi
	push	edi
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], ebp
	lea	eax, DWORD PTR $T78828[esp+60]
	push	eax
	push	ecx
	call	?_Putc@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putc
	movq	xmm0, QWORD PTR [eax]
	mov	ebp, DWORD PTR [eax+8]
	add	esp, 28					; 0000001cH
; Line 1340
	add	edi, esi
	sub	ebx, esi
	movq	QWORD PTR __Dest$[esp+36], xmm0
; Line 1341
	je	SHORT $LN12@Putgrouped
; Line 1343
	mov	ecx, DWORD PTR __Kseparator$[esp+36]
	test	cl, cl
	je	SHORT $LN4@Putgrouped
; Line 1344
	push	1
	push	ecx
	sub	esp, 12					; 0000000cH
	mov	ecx, esp
	movq	QWORD PTR [ecx], xmm0
	mov	edx, ebp
	lea	eax, DWORD PTR $T78829[esp+60]
	mov	DWORD PTR [ecx+8], edx
	mov	ecx, DWORD PTR _this$[esp+56]
	push	eax
	push	ecx
	call	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
	movq	xmm0, QWORD PTR [eax]
	mov	ebp, DWORD PTR [eax+8]
	add	esp, 28					; 0000001cH
	movq	QWORD PTR __Dest$[esp+36], xmm0
$LN4@Putgrouped:
	add	edi, 1
	sub	ebx, 1
	jmp	$LL5@Putgrouped
$LN12@Putgrouped:
; Line 1346
	mov	ecx, DWORD PTR ___$ReturnUdt$[esp+36]
	movq	xmm0, QWORD PTR [eax]
; Line 1347
	pop	edi
	pop	esi
	mov	edx, ebp
	pop	ebp
	movq	QWORD PTR [ecx], xmm0
	mov	DWORD PTR [ecx+8], edx
	mov	eax, ecx
	pop	ebx
	add	esp, 24					; 00000018H
	ret	0
?_Putgrouped@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDID@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putgrouped
_TEXT	ENDS
PUBLIC	?falsename@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ; std::numpunct<char>::falsename
; Function compile flags: /Ogtpy
;	COMDAT ?falsename@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ
_TEXT	SEGMENT
$T78837 = -4						; size = 4
___$ReturnUdt$ = 8					; size = 4
?falsename@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ PROC ; std::numpunct<char>::falsename, COMDAT
; _this$ = ecx
; Line 74
	push	ecx
; Line 75
	mov	eax, DWORD PTR [ecx]
	mov	edx, DWORD PTR [eax+16]
	push	esi
	mov	esi, DWORD PTR ___$ReturnUdt$[esp+4]
	push	esi
	mov	DWORD PTR $T78837[esp+12], 0
	call	edx
	mov	eax, esi
	pop	esi
; Line 76
	pop	ecx
	ret	4
?falsename@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ENDP ; std::numpunct<char>::falsename
_TEXT	ENDS
PUBLIC	?truename@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ; std::numpunct<char>::truename
; Function compile flags: /Ogtpy
;	COMDAT ?truename@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ
_TEXT	SEGMENT
$T78842 = -4						; size = 4
___$ReturnUdt$ = 8					; size = 4
?truename@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ PROC ; std::numpunct<char>::truename, COMDAT
; _this$ = ecx
; Line 79
	push	ecx
; Line 80
	mov	eax, DWORD PTR [ecx]
	mov	edx, DWORD PTR [eax+20]
	push	esi
	mov	esi, DWORD PTR ___$ReturnUdt$[esp+4]
	push	esi
	mov	DWORD PTR $T78842[esp+12], 0
	call	edx
	mov	eax, esi
	pop	esi
; Line 81
	pop	ecx
	ret	4
?truename@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ENDP ; std::numpunct<char>::truename
_TEXT	ENDS
PUBLIC	?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append
; Function compile flags: /Ogtpy
;	COMDAT ?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ID@Z
_TEXT	SEGMENT
__Count$ = 8						; size = 4
__Ch$ = 12						; size = 1
?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ID@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 990
	push	ebx
; Line 991
	mov	ebx, DWORD PTR __Count$[esp]
	push	esi
	or	eax, -1
	mov	esi, ecx
	sub	eax, DWORD PTR [esi+20]
	cmp	eax, ebx
	ja	SHORT $LN2@append
; Line 992
	call	?_Xlen@_String_base@std@@SAXXZ		; std::_String_base::_Xlen
$LN2@append:
; Line 995
	test	ebx, ebx
	jbe	$LN63@append
	push	edi
	mov	edi, DWORD PTR [esi+20]
	add	edi, ebx
	cmp	edi, -2					; fffffffeH
	jbe	SHORT $LN10@append
	call	?_Xlen@_String_base@std@@SAXXZ		; std::_String_base::_Xlen
$LN10@append:
	mov	eax, DWORD PTR [esi+24]
	cmp	eax, edi
	jae	SHORT $LN9@append
	mov	ecx, DWORD PTR [esi+20]
	push	ecx
	push	edi
	mov	ecx, esi
	call	?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy
	test	edi, edi
$LN66@append:
	jbe	SHORT $LN64@append
; Line 997
	mov	edx, DWORD PTR __Ch$[esp+8]
	mov	eax, DWORD PTR [esi+20]
	push	edx
	push	ebx
	push	eax
	mov	ecx, esi
	call	?_Chassign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXIID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Chassign
; Line 998
	cmp	DWORD PTR [esi+24], 16			; 00000010H
	mov	DWORD PTR [esi+20], edi
	jb	SHORT $LN59@append
	mov	eax, DWORD PTR [esi+4]
	mov	BYTE PTR [eax+edi], 0
	pop	edi
; Line 1000
	mov	eax, esi
	pop	esi
	pop	ebx
; Line 1001
	ret	8
; Line 995
$LN9@append:
	test	edi, edi
	jne	SHORT $LN66@append
	cmp	eax, 16					; 00000010H
	mov	DWORD PTR [esi+20], edi
	jb	SHORT $LN51@append
	mov	eax, DWORD PTR [esi+4]
	pop	edi
	mov	BYTE PTR [eax], 0
; Line 1000
	mov	eax, esi
	pop	esi
	pop	ebx
; Line 1001
	ret	8
; Line 995
$LN51@append:
	lea	eax, DWORD PTR [esi+4]
	pop	edi
	mov	BYTE PTR [eax], 0
; Line 1000
	mov	eax, esi
	pop	esi
	pop	ebx
; Line 1001
	ret	8
; Line 998
$LN59@append:
	lea	eax, DWORD PTR [esi+4]
	mov	BYTE PTR [eax+edi], 0
$LN64@append:
	pop	edi
$LN63@append:
; Line 1000
	mov	eax, esi
	pop	esi
	pop	ebx
; Line 1001
	ret	8
?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ID@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append
_TEXT	ENDS
PUBLIC	?insert@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@IID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::insert
; Function compile flags: /Ogtpy
;	COMDAT ?insert@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@IID@Z
_TEXT	SEGMENT
tv178 = 8						; size = 4
__Off$ = 8						; size = 4
__Count$ = 12						; size = 4
__Ch$ = 16						; size = 1
?insert@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@IID@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::insert, COMDAT
; _this$ = ecx
; Line 1174
	push	ebp
	push	esi
	push	edi
; Line 1175
	mov	edi, DWORD PTR __Off$[esp+8]
	mov	esi, ecx
	cmp	DWORD PTR [esi+20], edi
	jae	SHORT $LN3@insert
; Line 1176
	call	?_Xran@_String_base@std@@SAXXZ		; std::_String_base::_Xran
$LN3@insert:
; Line 1177
	mov	ebp, DWORD PTR __Count$[esp+8]
	or	eax, -1
	sub	eax, DWORD PTR [esi+20]
	cmp	eax, ebp
	ja	SHORT $LN2@insert
; Line 1178
	call	?_Xlen@_String_base@std@@SAXXZ		; std::_String_base::_Xlen
$LN2@insert:
; Line 1180
	test	ebp, ebp
	jbe	$LN80@insert
	push	ebx
	mov	ebx, DWORD PTR [esi+20]
	add	ebx, ebp
	cmp	ebx, -2					; fffffffeH
	jbe	SHORT $LN11@insert
	call	?_Xlen@_String_base@std@@SAXXZ		; std::_String_base::_Xlen
$LN11@insert:
	mov	eax, DWORD PTR [esi+24]
	cmp	eax, ebx
	jae	SHORT $LN10@insert
	mov	ecx, DWORD PTR [esi+20]
	push	ecx
	push	ebx
	mov	ecx, esi
	call	?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy
	test	ebx, ebx
$LN83@insert:
	jbe	$LN81@insert
; Line 1183
	mov	eax, DWORD PTR [esi+24]
	cmp	eax, 16					; 00000010H
	jb	SHORT $LN58@insert
	mov	edx, DWORD PTR [esi+4]
	mov	DWORD PTR tv178[esp+12], edx
	jmp	SHORT $LN59@insert
; Line 1180
$LN10@insert:
	test	ebx, ebx
	jne	SHORT $LN83@insert
	cmp	eax, 16					; 00000010H
	mov	DWORD PTR [esi+20], ebx
	jb	SHORT $LN52@insert
	mov	eax, DWORD PTR [esi+4]
	mov	BYTE PTR [eax], bl
	pop	ebx
	pop	edi
; Line 1187
	mov	eax, esi
	pop	esi
	pop	ebp
; Line 1188
	ret	12					; 0000000cH
; Line 1180
$LN52@insert:
	lea	eax, DWORD PTR [esi+4]
	pop	ebx
	pop	edi
	mov	BYTE PTR [eax], 0
; Line 1187
	mov	eax, esi
	pop	esi
	pop	ebp
; Line 1188
	ret	12					; 0000000cH
; Line 1183
$LN58@insert:
	lea	ecx, DWORD PTR [esi+4]
	mov	DWORD PTR tv178[esp+12], ecx
$LN59@insert:
	cmp	eax, 16					; 00000010H
	jb	SHORT $LN62@insert
	mov	ecx, DWORD PTR [esi+4]
	jmp	SHORT $LN63@insert
$LN62@insert:
	lea	ecx, DWORD PTR [esi+4]
$LN63@insert:
	mov	edx, DWORD PTR [esi+20]
	sub	edx, edi
	push	edx
	mov	edx, DWORD PTR tv178[esp+16]
	add	edx, edi
	sub	eax, edi
	push	edx
	sub	eax, ebp
	add	ecx, edi
	push	eax
	add	ecx, ebp
	push	ecx
	call	_memmove_s
; Line 1184
	mov	eax, DWORD PTR __Ch$[esp+28]
	add	esp, 16					; 00000010H
	push	eax
	push	ebp
	push	edi
	mov	ecx, esi
	call	?_Chassign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXIID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Chassign
; Line 1185
	cmp	DWORD PTR [esi+24], 16			; 00000010H
	mov	DWORD PTR [esi+20], ebx
	jb	SHORT $LN76@insert
	mov	eax, DWORD PTR [esi+4]
	mov	BYTE PTR [eax+ebx], 0
	pop	ebx
	pop	edi
; Line 1187
	mov	eax, esi
	pop	esi
	pop	ebp
; Line 1188
	ret	12					; 0000000cH
; Line 1185
$LN76@insert:
	lea	eax, DWORD PTR [esi+4]
	mov	BYTE PTR [eax+ebx], 0
$LN81@insert:
	pop	ebx
$LN80@insert:
	pop	edi
; Line 1187
	mov	eax, esi
	pop	esi
	pop	ebp
; Line 1188
	ret	12					; 0000000cH
?insert@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@IID@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::insert
_TEXT	ENDS
PUBLIC	?grouping@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ; std::numpunct<char>::grouping
; Function compile flags: /Ogtpy
;	COMDAT ?grouping@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ
_TEXT	SEGMENT
$T79306 = -4						; size = 4
___$ReturnUdt$ = 8					; size = 4
?grouping@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ PROC ; std::numpunct<char>::grouping, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 69
	push	ecx
; Line 70
	mov	eax, DWORD PTR [ecx]
	mov	edx, DWORD PTR [eax+12]
	push	esi
	mov	esi, DWORD PTR ___$ReturnUdt$[esp+4]
	push	esi
	mov	DWORD PTR $T79306[esp+12], 0
	call	edx
	mov	eax, esi
	pop	esi
; Line 71
	pop	ecx
	ret	4
?grouping@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ENDP ; std::numpunct<char>::grouping
_TEXT	ENDS
PUBLIC	?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append
; Function compile flags: /Ogtpy
;	COMDAT ?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z
_TEXT	SEGMENT
__Right$ = 8						; size = 4
__Roff$ = 12						; size = 4
__Count$ = 16						; size = 4
?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xstring
; Line 950
	push	ebx
	push	ebp
; Line 951
	mov	ebp, DWORD PTR __Right$[esp+4]
	push	esi
	push	edi
	mov	edi, DWORD PTR __Roff$[esp+12]
	cmp	DWORD PTR [ebp+20], edi
	mov	esi, ecx
	jae	SHORT $LN5@append@2
; Line 952
	call	?_Xran@_String_base@std@@SAXXZ		; std::_String_base::_Xran
$LN5@append@2:
; Line 953
	mov	eax, DWORD PTR [ebp+20]
; Line 954
	mov	ebx, DWORD PTR __Count$[esp+12]
	sub	eax, edi
	cmp	eax, ebx
; Line 955
	cmovb	ebx, eax
; Line 956
	mov	eax, DWORD PTR [esi+20]
	or	ecx, -1
	sub	ecx, eax
	cmp	ecx, ebx
	jbe	SHORT $LN2@append@2
	lea	edx, DWORD PTR [eax+ebx]
	cmp	edx, eax
	jae	SHORT $LN3@append@2
$LN2@append@2:
; Line 957
	call	?_Xlen@_String_base@std@@SAXXZ		; std::_String_base::_Xlen
$LN3@append@2:
; Line 959
	test	ebx, ebx
	jbe	$LN87@append@2
	mov	edi, DWORD PTR [esi+20]
	add	edi, ebx
	cmp	edi, -2					; fffffffeH
	jbe	SHORT $LN17@append@2
	call	?_Xlen@_String_base@std@@SAXXZ		; std::_String_base::_Xlen
$LN17@append@2:
	mov	eax, DWORD PTR [esi+24]
	cmp	eax, edi
	jae	SHORT $LN16@append@2
	mov	eax, DWORD PTR [esi+20]
	push	eax
	push	edi
	mov	ecx, esi
	call	?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy
	test	edi, edi
$LN88@append@2:
	jbe	$LN87@append@2
; Line 962
	cmp	DWORD PTR [ebp+24], 16			; 00000010H
	jb	SHORT $LN64@append@2
	mov	ebp, DWORD PTR [ebp+4]
	jmp	SHORT $LN65@append@2
; Line 959
$LN16@append@2:
	test	edi, edi
	jne	SHORT $LN88@append@2
	cmp	eax, 16					; 00000010H
	mov	DWORD PTR [esi+20], edi
	jb	SHORT $LN58@append@2
	mov	eax, DWORD PTR [esi+4]
	pop	edi
	mov	BYTE PTR [eax], 0
; Line 965
	mov	eax, esi
	pop	esi
	pop	ebp
	pop	ebx
; Line 966
	ret	12					; 0000000cH
; Line 959
$LN58@append@2:
	lea	eax, DWORD PTR [esi+4]
	pop	edi
	mov	BYTE PTR [eax], 0
; Line 965
	mov	eax, esi
	pop	esi
	pop	ebp
	pop	ebx
; Line 966
	ret	12					; 0000000cH
; Line 962
$LN64@append@2:
	add	ebp, 4
$LN65@append@2:
	mov	eax, DWORD PTR [esi+24]
	cmp	eax, 16					; 00000010H
	jb	SHORT $LN68@append@2
	mov	edx, DWORD PTR [esi+4]
	jmp	SHORT $LN69@append@2
$LN68@append@2:
	lea	edx, DWORD PTR [esi+4]
$LN69@append@2:
	mov	ecx, DWORD PTR [esi+20]
	push	ebx
	mov	ebx, DWORD PTR __Roff$[esp+16]
	add	ebp, ebx
	sub	eax, ecx
	push	ebp
	push	eax
	add	ecx, edx
	push	ecx
	call	_memcpy_s
	add	esp, 16					; 00000010H
; Line 963
	cmp	DWORD PTR [esi+24], 16			; 00000010H
	mov	DWORD PTR [esi+20], edi
	jb	SHORT $LN82@append@2
	mov	eax, DWORD PTR [esi+4]
	mov	BYTE PTR [eax+edi], 0
	pop	edi
; Line 965
	mov	eax, esi
	pop	esi
	pop	ebp
	pop	ebx
; Line 966
	ret	12					; 0000000cH
; Line 963
$LN82@append@2:
	lea	eax, DWORD PTR [esi+4]
	mov	BYTE PTR [eax+edi], 0
$LN87@append@2:
	pop	edi
; Line 965
	mov	eax, esi
	pop	esi
	pop	ebp
	pop	ebx
; Line 966
	ret	12					; 0000000cH
?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append
_TEXT	ENDS
PUBLIC	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
; Function compile flags: /Ogtpy
;	COMDAT ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@@Z
_TEXT	SEGMENT
__Right$ = 8						; size = 4
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign, COMDAT
; _this$ = ecx
; Line 1033
	mov	eax, DWORD PTR __Right$[esp-4]
	push	-1
	push	0
	push	eax
	call	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
; Line 1034
	ret	4
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
_TEXT	ENDS
PUBLIC	?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append
; Function compile flags: /Ogtpy
;	COMDAT ?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
__Count$ = 12						; size = 4
?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append, COMDAT
; _this$ = ecx
; Line 969
	push	ebx
	push	esi
	mov	esi, ecx
; Line 970
	mov	edx, DWORD PTR [esi+24]
	cmp	edx, 16					; 00000010H
	push	edi
	lea	ebx, DWORD PTR [esi+4]
	jb	SHORT $LN14@append@3
	mov	ecx, DWORD PTR [ebx]
	jmp	SHORT $LN15@append@3
$LN14@append@3:
	mov	ecx, ebx
$LN15@append@3:
	mov	eax, DWORD PTR __Ptr$[esp+8]
	cmp	eax, ecx
	jb	SHORT $LN4@append@3
	cmp	edx, 16					; 00000010H
	jb	SHORT $LN18@append@3
	mov	ecx, DWORD PTR [ebx]
	jmp	SHORT $LN19@append@3
$LN18@append@3:
	mov	ecx, ebx
$LN19@append@3:
	mov	edi, DWORD PTR [esi+20]
	add	edi, ecx
	cmp	edi, eax
	jbe	SHORT $LN4@append@3
; Line 971
	cmp	edx, 16					; 00000010H
	jb	SHORT $LN22@append@3
	mov	ebx, DWORD PTR [ebx]
$LN22@append@3:
	mov	ecx, DWORD PTR __Count$[esp+8]
	push	ecx
	sub	eax, ebx
	push	eax
	push	esi
	mov	ecx, esi
	call	?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append
	pop	edi
	pop	esi
	pop	ebx
; Line 982
	ret	8
$LN4@append@3:
; Line 972
	mov	eax, DWORD PTR [esi+20]
	or	edx, -1
	push	ebp
	mov	ebp, DWORD PTR __Count$[esp+12]
	sub	edx, eax
	cmp	edx, ebp
	jbe	SHORT $LN2@append@3
	lea	ecx, DWORD PTR [eax+ebp]
	cmp	ecx, eax
	jae	SHORT $LN3@append@3
$LN2@append@3:
; Line 973
	call	?_Xlen@_String_base@std@@SAXXZ		; std::_String_base::_Xlen
$LN3@append@3:
; Line 976
	test	ebp, ebp
	jbe	SHORT $LN92@append@3
	mov	edi, DWORD PTR [esi+20]
	add	edi, ebp
	cmp	edi, -2					; fffffffeH
	jbe	SHORT $LN29@append@3
	call	?_Xlen@_String_base@std@@SAXXZ		; std::_String_base::_Xlen
$LN29@append@3:
	mov	eax, DWORD PTR [esi+24]
	cmp	eax, edi
	jae	SHORT $LN28@append@3
	mov	edx, DWORD PTR [esi+20]
	push	edx
	push	edi
	mov	ecx, esi
	call	?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy
	test	edi, edi
$LN95@append@3:
	jbe	SHORT $LN92@append@3
; Line 978
	mov	eax, DWORD PTR [esi+24]
	cmp	eax, 16					; 00000010H
	jb	SHORT $LN76@append@3
	mov	edx, DWORD PTR [ebx]
	jmp	SHORT $LN77@append@3
; Line 976
$LN28@append@3:
	test	edi, edi
	jne	SHORT $LN95@append@3
	cmp	eax, 16					; 00000010H
	mov	DWORD PTR [esi+20], edi
	jb	SHORT $LN70@append@3
	mov	ebx, DWORD PTR [ebx]
$LN70@append@3:
	pop	ebp
	pop	edi
; Line 981
	mov	eax, esi
	pop	esi
	mov	BYTE PTR [ebx], 0
	pop	ebx
; Line 982
	ret	8
; Line 978
$LN76@append@3:
	mov	edx, ebx
$LN77@append@3:
	mov	ecx, DWORD PTR [esi+20]
	push	ebp
	mov	ebp, DWORD PTR __Ptr$[esp+16]
	sub	eax, ecx
	push	ebp
	push	eax
	add	ecx, edx
	push	ecx
	call	_memcpy_s
	add	esp, 16					; 00000010H
; Line 979
	cmp	DWORD PTR [esi+24], 16			; 00000010H
	mov	DWORD PTR [esi+20], edi
	jb	SHORT $LN90@append@3
	mov	ebx, DWORD PTR [ebx]
$LN90@append@3:
	mov	BYTE PTR [ebx+edi], 0
$LN92@append@3:
	pop	ebp
	pop	edi
; Line 981
	mov	eax, esi
	pop	esi
	pop	ebx
; Line 982
	ret	8
?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append
_TEXT	ENDS
PUBLIC	??_7?$numpunct@D@std@@6B@			; std::numpunct<char>::`vftable'
PUBLIC	_this$GSCopy$
PUBLIC	__$ArrayPad$
PUBLIC	??0?$numpunct@D@std@@QAE@I@Z			; std::numpunct<char>::numpunct<char>
PUBLIC	??_R4?$numpunct@D@std@@6B@			; std::numpunct<char>::`RTTI Complete Object Locator'
PUBLIC	??_R0?AV?$numpunct@D@std@@@8			; std::numpunct<char> `RTTI Type Descriptor'
PUBLIC	??_R3?$numpunct@D@std@@8			; std::numpunct<char>::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2?$numpunct@D@std@@8			; std::numpunct<char>::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@?$numpunct@D@std@@8		; std::numpunct<char>::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	?do_decimal_point@?$numpunct@D@std@@MBEDXZ	; std::numpunct<char>::do_decimal_point
PUBLIC	?do_thousands_sep@?$numpunct@D@std@@MBEDXZ	; std::numpunct<char>::do_thousands_sep
PUBLIC	?do_grouping@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ; std::numpunct<char>::do_grouping
PUBLIC	?do_falsename@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ; std::numpunct<char>::do_falsename
PUBLIC	?do_truename@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ; std::numpunct<char>::do_truename
EXTRN	??_E?$numpunct@D@std@@MAEPAXI@Z:PROC		; std::numpunct<char>::`vector deleting destructor'
;	COMDAT ??_R1A@?0A@EA@?$numpunct@D@std@@8
; File c:\program files\microsoft visual studio 8\vc\include\xlocale
rdata$r	SEGMENT
??_R1A@?0A@EA@?$numpunct@D@std@@8 DD FLAT:??_R0?AV?$numpunct@D@std@@@8 ; std::numpunct<char>::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3?$numpunct@D@std@@8
rdata$r	ENDS
;	COMDAT ??_R2?$numpunct@D@std@@8
rdata$r	SEGMENT
??_R2?$numpunct@D@std@@8 DD FLAT:??_R1A@?0A@EA@?$numpunct@D@std@@8 ; std::numpunct<char>::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@facet@locale@std@@8
rdata$r	ENDS
;	COMDAT ??_R3?$numpunct@D@std@@8
rdata$r	SEGMENT
??_R3?$numpunct@D@std@@8 DD 00H				; std::numpunct<char>::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2?$numpunct@D@std@@8
rdata$r	ENDS
;	COMDAT ??_R0?AV?$numpunct@D@std@@@8
_DATA	SEGMENT
??_R0?AV?$numpunct@D@std@@@8 DD FLAT:??_7type_info@@6B@	; std::numpunct<char> `RTTI Type Descriptor'
	DD	00H
	DB	'.?AV?$numpunct@D@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R4?$numpunct@D@std@@6B@
rdata$r	SEGMENT
??_R4?$numpunct@D@std@@6B@ DD 00H			; std::numpunct<char>::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AV?$numpunct@D@std@@@8
	DD	FLAT:??_R3?$numpunct@D@std@@8
rdata$r	ENDS
;	COMDAT ??_7?$numpunct@D@std@@6B@
CONST	SEGMENT
??_7?$numpunct@D@std@@6B@ DD FLAT:??_R4?$numpunct@D@std@@6B@ ; std::numpunct<char>::`vftable'
	DD	FLAT:??_E?$numpunct@D@std@@MAEPAXI@Z
	DD	FLAT:?do_decimal_point@?$numpunct@D@std@@MBEDXZ
	DD	FLAT:?do_thousands_sep@?$numpunct@D@std@@MBEDXZ
	DD	FLAT:?do_grouping@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ
	DD	FLAT:?do_falsename@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ
	DD	FLAT:?do_truename@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ
CONST	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0?$numpunct@D@std@@QAE@I@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0?$numpunct@D@std@@QAE@I@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$??0?$numpunct@D@std@@QAE@I@Z$1
__ehfuncinfo$??0?$numpunct@D@std@@QAE@I@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$??0?$numpunct@D@std@@QAE@I@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??0?$numpunct@D@std@@QAE@I@Z
_TEXT	SEGMENT
_this$GSCopy$ = -136					; size = 4
__Lobj$73362 = -132					; size = 116
__$ArrayPad$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
__Refs$ = 8						; size = 4
??0?$numpunct@D@std@@QAE@I@Z PROC			; std::numpunct<char>::numpunct<char>, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 85
	push	-1
	push	__ehhandler$??0?$numpunct@D@std@@QAE@I@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	sub	esp, 124				; 0000007cH
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	mov	DWORD PTR __$ArrayPad$[esp+136], eax
	push	esi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+144]
	mov	DWORD PTR fs:0, eax
	mov	eax, DWORD PTR __Refs$[esp+140]
	mov	esi, ecx
	mov	DWORD PTR _this$GSCopy$[esp+144], esi
	mov	DWORD PTR [esi+4], eax
; Line 86
	push	OFFSET ??_C@_01GFHCPBMG@C?$AA@
	lea	ecx, DWORD PTR __Lobj$73362[esp+148]
	mov	DWORD PTR __$EHRec$[esp+156], 0
	mov	DWORD PTR [esi], OFFSET ??_7?$numpunct@D@std@@6B@
	call	??0_Locinfo@std@@QAE@PBD@Z		; std::_Locinfo::_Locinfo
; Line 87
	lea	ecx, DWORD PTR __Lobj$73362[esp+144]
	push	ecx
	mov	ecx, esi
	mov	BYTE PTR __$EHRec$[esp+156], 1
	call	?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@@Z ; std::numpunct<char>::_Init
; Line 88
	cmp	BYTE PTR [esi+13], 0
	jne	SHORT $LN1@numpunct
; Line 90
	call	__Getcvt
	mov	BYTE PTR [esi+13], 44			; 0000002cH
$LN1@numpunct:
; Line 91
	lea	ecx, DWORD PTR __Lobj$73362[esp+144]
	mov	BYTE PTR __$EHRec$[esp+152], 0
	call	??1_Locinfo@std@@QAE@XZ			; std::_Locinfo::~_Locinfo
; Line 92
	mov	eax, esi
	mov	ecx, DWORD PTR __$EHRec$[esp+144]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	esi
	mov	ecx, DWORD PTR __$ArrayPad$[esp+136]
	xor	ecx, esp
	call	@__security_check_cookie@4
	add	esp, 136				; 00000088H
	ret	4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0?$numpunct@D@std@@QAE@I@Z$0:
	mov	ecx, DWORD PTR _this$GSCopy$[ebp]
	jmp	??1facet@locale@std@@UAE@XZ		; std::locale::facet::~facet
__unwindfunclet$??0?$numpunct@D@std@@QAE@I@Z$1:
	lea	ecx, DWORD PTR __Lobj$73362[ebp]
	jmp	??1_Locinfo@std@@QAE@XZ			; std::_Locinfo::~_Locinfo
__ehhandler$??0?$numpunct@D@std@@QAE@I@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-128]
	mov	ecx, DWORD PTR [edx-132]
	xor	ecx, eax
	call	@__security_check_cookie@4
	add	eax, 4
	mov	ecx, DWORD PTR [edx-4]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$??0?$numpunct@D@std@@QAE@I@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
??0?$numpunct@D@std@@QAE@I@Z ENDP			; std::numpunct<char>::numpunct<char>
; Function compile flags: /Ogtpy
;	COMDAT ?do_decimal_point@?$numpunct@D@std@@MBEDXZ
_TEXT	SEGMENT
?do_decimal_point@?$numpunct@D@std@@MBEDXZ PROC		; std::numpunct<char>::do_decimal_point, COMDAT
; _this$ = ecx
; Line 146
	mov	al, BYTE PTR [ecx+12]
; Line 147
	ret	0
?do_decimal_point@?$numpunct@D@std@@MBEDXZ ENDP		; std::numpunct<char>::do_decimal_point
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?do_thousands_sep@?$numpunct@D@std@@MBEDXZ
_TEXT	SEGMENT
?do_thousands_sep@?$numpunct@D@std@@MBEDXZ PROC		; std::numpunct<char>::do_thousands_sep, COMDAT
; _this$ = ecx
; Line 151
	mov	al, BYTE PTR [ecx+13]
; Line 152
	ret	0
?do_thousands_sep@?$numpunct@D@std@@MBEDXZ ENDP		; std::numpunct<char>::do_thousands_sep
_TEXT	ENDS
PUBLIC	??1?$numpunct@D@std@@MAE@XZ			; std::numpunct<char>::~numpunct<char>
; Function compile flags: /Ogtpy
;	COMDAT ??1?$numpunct@D@std@@MAE@XZ
_TEXT	SEGMENT
??1?$numpunct@D@std@@MAE@XZ PROC			; std::numpunct<char>::~numpunct<char>, COMDAT
; _this$ = ecx
; Line 109
	push	esi
	mov	esi, ecx
; Line 110
	mov	eax, DWORD PTR [esi+8]
	push	eax
	mov	DWORD PTR [esi], OFFSET ??_7?$numpunct@D@std@@6B@
	call	??_V@YAXPAX@Z				; operator delete[]
	mov	ecx, DWORD PTR [esi+16]
	push	ecx
	call	??_V@YAXPAX@Z				; operator delete[]
	mov	edx, DWORD PTR [esi+20]
	push	edx
	call	??_V@YAXPAX@Z				; operator delete[]
	add	esp, 12					; 0000000cH
; Line 111
	mov	DWORD PTR [esi], OFFSET ??_7facet@locale@std@@6B@
	pop	esi
	ret	0
??1?$numpunct@D@std@@MAE@XZ ENDP			; std::numpunct<char>::~numpunct<char>
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ??_G?$numpunct@D@std@@MAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G?$numpunct@D@std@@MAEPAXI@Z PROC			; std::numpunct<char>::`scalar deleting destructor', COMDAT
; _this$ = ecx
	push	esi
	mov	esi, ecx
	mov	eax, DWORD PTR [esi+8]
	push	eax
	mov	DWORD PTR [esi], OFFSET ??_7?$numpunct@D@std@@6B@
	call	??_V@YAXPAX@Z				; operator delete[]
	mov	ecx, DWORD PTR [esi+16]
	push	ecx
	call	??_V@YAXPAX@Z				; operator delete[]
	mov	edx, DWORD PTR [esi+20]
	push	edx
	call	??_V@YAXPAX@Z				; operator delete[]
	add	esp, 12					; 0000000cH
	test	BYTE PTR ___flags$[esp], 1
	mov	DWORD PTR [esi], OFFSET ??_7facet@locale@std@@6B@
	je	SHORT $LN10@scalar@6
	push	esi
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN10@scalar@6:
	mov	eax, esi
	pop	esi
	ret	4
??_G?$numpunct@D@std@@MAEPAXI@Z ENDP			; std::numpunct<char>::`scalar deleting destructor'
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?do_grouping@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ
_TEXT	SEGMENT
$T79913 = -4						; size = 4
___$ReturnUdt$ = 8					; size = 4
?do_grouping@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ PROC ; std::numpunct<char>::do_grouping, COMDAT
; _this$ = ecx
; Line 155
	push	ecx
; Line 156
	mov	ecx, DWORD PTR [ecx+8]
	push	esi
	mov	esi, DWORD PTR ___$ReturnUdt$[esp+4]
	mov	eax, ecx
	push	edi
	mov	DWORD PTR [esi+24], 15			; 0000000fH
	mov	DWORD PTR [esi+20], 0
	mov	DWORD PTR $T79913[esp+12], 0
	mov	BYTE PTR [esi+4], 0
	lea	edi, DWORD PTR [eax+1]
	npad	7
$LL41@do_groupin:
	mov	dl, BYTE PTR [eax]
	add	eax, 1
	test	dl, dl
	jne	SHORT $LL41@do_groupin
	sub	eax, edi
	push	eax
	push	ecx
	mov	ecx, esi
	call	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
	pop	edi
	mov	eax, esi
	pop	esi
; Line 157
	pop	ecx
	ret	4
?do_grouping@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ENDP ; std::numpunct<char>::do_grouping
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?do_falsename@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ
_TEXT	SEGMENT
$T80063 = -4						; size = 4
___$ReturnUdt$ = 8					; size = 4
?do_falsename@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ PROC ; std::numpunct<char>::do_falsename, COMDAT
; _this$ = ecx
; Line 160
	push	ecx
; Line 161
	mov	ecx, DWORD PTR [ecx+16]
	push	esi
	mov	esi, DWORD PTR ___$ReturnUdt$[esp+4]
	mov	eax, ecx
	push	edi
	mov	DWORD PTR [esi+24], 15			; 0000000fH
	mov	DWORD PTR [esi+20], 0
	mov	DWORD PTR $T80063[esp+12], 0
	mov	BYTE PTR [esi+4], 0
	lea	edi, DWORD PTR [eax+1]
	npad	7
$LL41@do_falsena:
	mov	dl, BYTE PTR [eax]
	add	eax, 1
	test	dl, dl
	jne	SHORT $LL41@do_falsena
	sub	eax, edi
	push	eax
	push	ecx
	mov	ecx, esi
	call	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
	pop	edi
	mov	eax, esi
	pop	esi
; Line 162
	pop	ecx
	ret	4
?do_falsename@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ENDP ; std::numpunct<char>::do_falsename
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ?do_truename@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ
_TEXT	SEGMENT
$T80213 = -4						; size = 4
___$ReturnUdt$ = 8					; size = 4
?do_truename@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ PROC ; std::numpunct<char>::do_truename, COMDAT
; _this$ = ecx
; Line 165
	push	ecx
; Line 166
	mov	ecx, DWORD PTR [ecx+20]
	push	esi
	mov	esi, DWORD PTR ___$ReturnUdt$[esp+4]
	mov	eax, ecx
	push	edi
	mov	DWORD PTR [esi+24], 15			; 0000000fH
	mov	DWORD PTR [esi+20], 0
	mov	DWORD PTR $T80213[esp+12], 0
	mov	BYTE PTR [esi+4], 0
	lea	edi, DWORD PTR [eax+1]
	npad	7
$LL41@do_truenam:
	mov	dl, BYTE PTR [eax]
	add	eax, 1
	test	dl, dl
	jne	SHORT $LL41@do_truenam
	sub	eax, edi
	push	eax
	push	ecx
	mov	ecx, esi
	call	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
	pop	edi
	mov	eax, esi
	pop	esi
; Line 167
	pop	ecx
	ret	4
?do_truename@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ENDP ; std::numpunct<char>::do_truename
_TEXT	ENDS
PUBLIC	?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QAEXH_N@Z ; std::basic_ios<char,std::char_traits<char> >::setstate
; Function compile flags: /Ogtpy
;	COMDAT ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QAEXH_N@Z
_TEXT	SEGMENT
__State$ = 8						; size = 4
__Reraise$ = 12						; size = 1
?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QAEXH_N@Z PROC ; std::basic_ios<char,std::char_traits<char> >::setstate, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ios
; Line 54
	mov	edx, DWORD PTR __State$[esp-4]
	test	edx, edx
	je	SHORT $LN6@setstate
; Line 55
	mov	eax, DWORD PTR [ecx+8]
	or	eax, edx
	cmp	DWORD PTR [ecx+40], 0
	jne	SHORT $LN8@setstate
	or	eax, 4
$LN8@setstate:
	mov	DWORD PTR __State$[esp-4], eax
	jmp	?clear@ios_base@std@@QAEXH_N@Z		; std::ios_base::clear
$LN6@setstate:
; Line 56
	ret	8
?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QAEXH_N@Z ENDP ; std::basic_ios<char,std::char_traits<char> >::setstate
_TEXT	ENDS
PUBLIC	?_Getcat@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@SAIPAPBVfacet@locale@2@@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Getcat
;	COMDAT xdata$x
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
xdata$x	SEGMENT
__unwindtable$?_Getcat@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@SAIPAPBVfacet@locale@2@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?_Getcat@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@SAIPAPBVfacet@locale@2@@Z$0
__ehfuncinfo$?_Getcat@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@SAIPAPBVfacet@locale@2@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?_Getcat@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@SAIPAPBVfacet@locale@2@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ?_Getcat@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@SAIPAPBVfacet@locale@2@@Z
_TEXT	SEGMENT
__$EHRec$ = -12						; size = 12
$T80378 = 8						; size = 4
__Ppf$ = 8						; size = 4
?_Getcat@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@SAIPAPBVfacet@locale@2@@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Getcat, COMDAT
; Line 840
	push	-1
	push	__ehhandler$?_Getcat@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@SAIPAPBVfacet@locale@2@@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	push	esi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+20]
	mov	DWORD PTR fs:0, eax
; Line 841
	mov	esi, DWORD PTR __Ppf$[esp+16]
	test	esi, esi
	je	SHORT $LN8@Getcat
	cmp	DWORD PTR [esi], 0
	jne	SHORT $LN8@Getcat
; Line 842
	push	16					; 00000010H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
	mov	DWORD PTR $T80378[esp+16], eax
	test	eax, eax
	mov	DWORD PTR __$EHRec$[esp+28], 0
	je	SHORT $LN4@Getcat
	push	0
	mov	ecx, eax
	call	??0?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@QAE@I@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >
	jmp	SHORT $LN5@Getcat
$LN4@Getcat:
	xor	eax, eax
$LN5@Getcat:
	mov	DWORD PTR [esi], eax
$LN8@Getcat:
; Line 843
	mov	eax, 4
; Line 844
	mov	ecx, DWORD PTR __$EHRec$[esp+20]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	esi
	add	esp, 12					; 0000000cH
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?_Getcat@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@SAIPAPBVfacet@locale@2@@Z$0:
	mov	eax, DWORD PTR $T80378[ebp-4]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?_Getcat@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@SAIPAPBVfacet@locale@2@@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-4]
	mov	ecx, DWORD PTR [edx-8]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$?_Getcat@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@SAIPAPBVfacet@locale@2@@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
?_Getcat@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@SAIPAPBVfacet@locale@2@@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Getcat
PUBLIC	?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z ; std::numpunct<char>::_Getcat
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z$0
__ehfuncinfo$?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z
_TEXT	SEGMENT
__$EHRec$ = -12						; size = 12
$T80393 = 8						; size = 4
__Ppf$ = 8						; size = 4
?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z PROC ; std::numpunct<char>::_Getcat, COMDAT
; Line 101
	push	-1
	push	__ehhandler$?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	push	esi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+20]
	mov	DWORD PTR fs:0, eax
; Line 102
	mov	esi, DWORD PTR __Ppf$[esp+16]
	test	esi, esi
	je	SHORT $LN8@Getcat@2
	cmp	DWORD PTR [esi], 0
	jne	SHORT $LN8@Getcat@2
; Line 103
	push	24					; 00000018H
	call	??2@YAPAXI@Z				; operator new
	add	esp, 4
	mov	DWORD PTR $T80393[esp+16], eax
	test	eax, eax
	mov	DWORD PTR __$EHRec$[esp+28], 0
	je	SHORT $LN4@Getcat@2
	push	0
	mov	ecx, eax
	call	??0?$numpunct@D@std@@QAE@I@Z		; std::numpunct<char>::numpunct<char>
	jmp	SHORT $LN5@Getcat@2
$LN4@Getcat@2:
	xor	eax, eax
$LN5@Getcat@2:
	mov	DWORD PTR [esi], eax
$LN8@Getcat@2:
; Line 104
	mov	eax, 4
; Line 105
	mov	ecx, DWORD PTR __$EHRec$[esp+20]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	esi
	add	esp, 12					; 0000000cH
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z$0:
	mov	eax, DWORD PTR $T80393[ebp-4]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	pop	ecx
	ret	0
__ehhandler$?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-4]
	mov	ecx, DWORD PTR [edx-8]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z ENDP ; std::numpunct<char>::_Getcat
PUBLIC	?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@XZ ; std::basic_ostream<char,std::char_traits<char> >::flush
; Function compile flags: /Ogtpy
;	COMDAT ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@XZ
_TEXT	SEGMENT
?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@XZ PROC ; std::basic_ostream<char,std::char_traits<char> >::flush, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ostream
; Line 553
	push	esi
	mov	esi, ecx
; Line 555
	mov	eax, DWORD PTR [esi]
	mov	ecx, DWORD PTR [eax+4]
	push	edi
	lea	eax, DWORD PTR [ecx+esi]
	xor	edi, edi
	test	BYTE PTR [eax+8], 6
	jne	SHORT $LN1@flush
	mov	eax, DWORD PTR [eax+40]
	mov	edx, DWORD PTR [eax]
	mov	ecx, eax
	mov	eax, DWORD PTR [edx+48]
	call	eax
	cmp	eax, -1
	jne	SHORT $LN1@flush
; Line 556
	mov	edi, 4
$LN1@flush:
; Line 557
	mov	ecx, DWORD PTR [esi]
	mov	ecx, DWORD PTR [ecx+4]
	add	ecx, esi
	test	edi, edi
	je	SHORT $LN21@flush
	mov	eax, DWORD PTR [ecx+8]
	or	eax, edi
	cmp	DWORD PTR [ecx+40], 0
	jne	SHORT $LN19@flush
	or	eax, 4
$LN19@flush:
	push	0
	push	eax
	call	?clear@ios_base@std@@QAEXH_N@Z		; std::ios_base::clear
$LN21@flush:
	pop	edi
; Line 558
	mov	eax, esi
	pop	esi
; Line 559
	ret	0
?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@XZ ENDP ; std::basic_ostream<char,std::char_traits<char> >::flush
_TEXT	ENDS
PUBLIC	??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z ; std::basic_ostream<char,std::char_traits<char> >::sentry::sentry
;	COMDAT xdata$x
; File c:\program files\microsoft visual studio 8\vc\include\xiosbase
xdata$x	SEGMENT
__unwindtable$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z$0
__ehfuncinfo$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
__Ostr$ = 8						; size = 4
??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z PROC ; std::basic_ostream<char,std::char_traits<char> >::sentry::sentry, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ostream
; Line 99
	push	-1
	push	__ehhandler$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	push	ecx
	push	esi
	push	edi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+28]
	mov	DWORD PTR fs:0, eax
	mov	edi, ecx
	mov	DWORD PTR _this$[esp+28], edi
	mov	esi, DWORD PTR __Ostr$[esp+24]
	mov	DWORD PTR [edi], esi
	mov	eax, DWORD PTR [esi]
	mov	ecx, DWORD PTR [eax+4]
	mov	eax, DWORD PTR [ecx+esi+40]
	test	eax, eax
	je	SHORT $LN12@sentry
	lea	ecx, DWORD PTR [eax+4]
	call	?_Lock@_Mutex@std@@QAEXXZ		; std::_Mutex::_Lock
$LN12@sentry:
; Line 100
	mov	edx, DWORD PTR [esi]
	mov	eax, DWORD PTR [edx+4]
	add	eax, esi
	cmp	DWORD PTR [eax+8], 0
	mov	DWORD PTR __$EHRec$[esp+36], 0
	jne	SHORT $LN1@sentry
	mov	eax, DWORD PTR [eax+44]
	test	eax, eax
	je	SHORT $LN1@sentry
; Line 101
	mov	ecx, eax
	call	?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@XZ ; std::basic_ostream<char,std::char_traits<char> >::flush
$LN1@sentry:
; Line 102
	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	cmp	DWORD PTR [edx+esi+8], 0
	sete	al
	mov	BYTE PTR [edi+4], al
; Line 103
	mov	eax, edi
	mov	ecx, DWORD PTR __$EHRec$[esp+28]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	edi
	pop	esi
	add	esp, 16					; 00000010H
	ret	4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z$0:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ ; std::basic_ostream<char,std::char_traits<char> >::_Sentry_base::~_Sentry_base
__ehhandler$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-12]
	mov	ecx, DWORD PTR [edx-16]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z ENDP ; std::basic_ostream<char,std::char_traits<char> >::sentry::sentry
PUBLIC	?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ ; std::basic_ostream<char,std::char_traits<char> >::_Osfx
;	COMDAT xdata$x
; File c:\program files\microsoft visual studio 8\vc\include\xiosbase
xdata$x	SEGMENT
__catchsym$?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ$2 DD 040H
	DD	00H
	DD	00H
	DD	FLAT:__catch$?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ$0
__unwindtable$?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ DD 0ffffffffH
	DD	00H
	DD	0ffffffffH
	DD	00H
__tryblocktable$?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ DD 00H
	DD	00H
	DD	01H
	DD	01H
	DD	FLAT:__catchsym$?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ$2
__ehfuncinfo$?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ
	DD	01H
	DD	FLAT:__tryblocktable$?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ
_TEXT	SEGMENT
__$EHRec$ = -16						; size = 16
?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ PROC ; std::basic_ostream<char,std::char_traits<char> >::_Osfx, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ostream
; Line 143
	push	ebp
	mov	ebp, esp
	push	-1
	push	__ehhandler$?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ
	mov	eax, DWORD PTR fs:0
	push	eax
	push	ecx
	push	ebx
	push	esi
	push	edi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, ebp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[ebp+4]
	mov	DWORD PTR fs:0, eax
	mov	DWORD PTR __$EHRec$[ebp], esp
; Line 145
	mov	eax, DWORD PTR [ecx]
	mov	edx, DWORD PTR [eax+4]
	test	BYTE PTR [edx+ecx+16], 2
	mov	DWORD PTR __$EHRec$[ebp+12], 0
	je	SHORT $LN8@Osfx
; Line 146
	call	?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@XZ ; std::basic_ostream<char,std::char_traits<char> >::flush
$LN8@Osfx:
; Line 149
	mov	ecx, DWORD PTR __$EHRec$[ebp+4]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	edi
	pop	esi
	pop	ebx
	mov	esp, ebp
	pop	ebp
	ret	0
__catch$?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ$0:
; Line 148
	mov	eax, $LN8@Osfx
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__ehhandler$?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx+12]
	mov	ecx, DWORD PTR [edx-20]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ
	jmp	___CxxFrameHandler3
text$x	ENDS
?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ ENDP ; std::basic_ostream<char,std::char_traits<char> >::_Osfx
PUBLIC	__TI2?AVbad_cast@std@@
PUBLIC	??_C@_08EPJLHIJG@bad?5cast?$AA@			; `string'
PUBLIC	?_Psave@?$_Facetptr@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@2PBVfacet@locale@2@B ; std::_Facetptr<std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > > >::_Psave
PUBLIC	??$use_facet@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@YAABV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@0@ABVlocale@0@@Z ; std::use_facet<std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > > >
PUBLIC	__CTA2?AVbad_cast@std@@
PUBLIC	__CT??_R0?AVbad_cast@std@@@8??0bad_cast@std@@QAE@ABV01@@Z12
PUBLIC	??_R0?AVbad_cast@std@@@8			; std::bad_cast `RTTI Type Descriptor'
EXTRN	??0bad_cast@std@@QAE@PBD@Z:PROC			; std::bad_cast::bad_cast
EXTRN	??1bad_cast@std@@UAE@XZ:PROC			; std::bad_cast::~bad_cast
EXTRN	??0bad_cast@std@@QAE@ABV01@@Z:PROC		; std::bad_cast::bad_cast
;	COMDAT ?_Psave@?$_Facetptr@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@2PBVfacet@locale@2@B
; File c:\program files\microsoft visual studio 8\vc\include\xlocale
_BSS	SEGMENT
?_Psave@?$_Facetptr@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@2PBVfacet@locale@2@B DD 01H DUP (?) ; std::_Facetptr<std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > > >::_Psave
_BSS	ENDS
;	COMDAT ??_R0?AVbad_cast@std@@@8
_DATA	SEGMENT
??_R0?AVbad_cast@std@@@8 DD FLAT:??_7type_info@@6B@	; std::bad_cast `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVbad_cast@std@@', 00H
_DATA	ENDS
;	COMDAT __CT??_R0?AVbad_cast@std@@@8??0bad_cast@std@@QAE@ABV01@@Z12
xdata$x	SEGMENT
__CT??_R0?AVbad_cast@std@@@8??0bad_cast@std@@QAE@ABV01@@Z12 DD 00H
	DD	FLAT:??_R0?AVbad_cast@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	0cH
	DD	FLAT:??0bad_cast@std@@QAE@ABV01@@Z
xdata$x	ENDS
;	COMDAT __CTA2?AVbad_cast@std@@
xdata$x	SEGMENT
__CTA2?AVbad_cast@std@@ DD 02H
	DD	FLAT:__CT??_R0?AVbad_cast@std@@@8??0bad_cast@std@@QAE@ABV01@@Z12
	DD	FLAT:__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
xdata$x	ENDS
;	COMDAT __TI2?AVbad_cast@std@@
xdata$x	SEGMENT
__TI2?AVbad_cast@std@@ DD 00H
	DD	FLAT:??1bad_cast@std@@UAE@XZ
	DD	00H
	DD	FLAT:__CTA2?AVbad_cast@std@@
xdata$x	ENDS
;	COMDAT ??_C@_08EPJLHIJG@bad?5cast?$AA@
CONST	SEGMENT
??_C@_08EPJLHIJG@bad?5cast?$AA@ DB 'bad cast', 00H	; `string'
CONST	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??$use_facet@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@YAABV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@0@ABVlocale@0@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??$use_facet@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@YAABV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@0@ABVlocale@0@@Z$0
__ehfuncinfo$??$use_facet@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@YAABV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@0@ABVlocale@0@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??$use_facet@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@YAABV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@0@ABVlocale@0@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??$use_facet@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@YAABV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@0@ABVlocale@0@@Z
_TEXT	SEGMENT
__Psave$73113 = -36					; size = 4
__Lock$80530 = -32					; size = 4
__Lock$73112 = -28					; size = 4
$T80523 = -24						; size = 12
__$EHRec$ = -12						; size = 12
__Loc$ = 8						; size = 4
??$use_facet@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@YAABV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@0@ABVlocale@0@@Z PROC ; std::use_facet<std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > > >, COMDAT
; Line 466
	push	-1
	push	__ehhandler$??$use_facet@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@YAABV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@0@ABVlocale@0@@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	sub	esp, 24					; 00000018H
	push	ebx
	push	esi
	push	edi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+52]
	mov	DWORD PTR fs:0, eax
; Line 467
	push	0
	lea	ecx, DWORD PTR __Lock$73112[esp+56]
	call	??0_Lockit@std@@QAE@H@Z			; std::_Lockit::_Lockit
; Line 471
	cmp	DWORD PTR ?id@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@2V0locale@2@A, 0 ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::id
	mov	ebx, DWORD PTR ?_Psave@?$_Facetptr@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@2PBVfacet@locale@2@B ; std::_Facetptr<std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > > >::_Psave
	mov	DWORD PTR __$EHRec$[esp+60], 0
	mov	DWORD PTR __Psave$73113[esp+52], ebx
	jne	SHORT $LN11@use_facet
	push	0
	lea	ecx, DWORD PTR __Lock$80530[esp+56]
	call	??0_Lockit@std@@QAE@H@Z			; std::_Lockit::_Lockit
	cmp	DWORD PTR ?id@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@2V0locale@2@A, 0 ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::id
	jne	SHORT $LN10@use_facet
	mov	eax, DWORD PTR ?_Id_cnt@id@locale@std@@0HA ; std::locale::id::_Id_cnt
	add	eax, 1
	mov	DWORD PTR ?_Id_cnt@id@locale@std@@0HA, eax ; std::locale::id::_Id_cnt
	mov	DWORD PTR ?id@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@2V0locale@2@A, eax ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::id
$LN10@use_facet:
	lea	ecx, DWORD PTR __Lock$80530[esp+52]
	call	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
$LN11@use_facet:
; Line 472
	mov	eax, DWORD PTR __Loc$[esp+48]
	mov	edi, DWORD PTR ?id@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@2V0locale@2@A ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::id
	mov	eax, DWORD PTR [eax]
	cmp	edi, DWORD PTR [eax+12]
	jae	SHORT $LN20@use_facet
	mov	ecx, DWORD PTR [eax+8]
	mov	esi, DWORD PTR [ecx+edi*4]
	test	esi, esi
	jne	SHORT $LN24@use_facet
$LN26@use_facet:
	cmp	BYTE PTR [eax+20], 0
	je	SHORT $LN16@use_facet
	call	?_Getgloballocale@locale@std@@CAPAV_Locimp@12@XZ ; std::locale::_Getgloballocale
	cmp	edi, DWORD PTR [eax+12]
	jae	SHORT $LN27@use_facet
	mov	edx, DWORD PTR [eax+8]
	mov	esi, DWORD PTR [edx+edi*4]
$LN16@use_facet:
; Line 474
	test	esi, esi
	jne	SHORT $LN24@use_facet
$LN27@use_facet:
; Line 476
	test	ebx, ebx
	je	SHORT $LN4@use_facet
; Line 477
	mov	esi, ebx
	jmp	SHORT $LN24@use_facet
; Line 472
$LN20@use_facet:
	xor	esi, esi
	jmp	SHORT $LN26@use_facet
$LN4@use_facet:
; Line 478
	lea	eax, DWORD PTR __Psave$73113[esp+52]
	push	eax
	call	?_Getcat@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@SAIPAPBVfacet@locale@2@@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Getcat
	add	esp, 4
	cmp	eax, -1
	jne	SHORT $LN2@use_facet
; Line 481
	push	OFFSET ??_C@_08EPJLHIJG@bad?5cast?$AA@
	lea	ecx, DWORD PTR $T80523[esp+56]
	call	??0bad_cast@std@@QAE@PBD@Z		; std::bad_cast::bad_cast
	push	OFFSET __TI2?AVbad_cast@std@@
	lea	ecx, DWORD PTR $T80523[esp+56]
	push	ecx
	call	__CxxThrowException@8
$LN2@use_facet:
; Line 489
	mov	esi, DWORD PTR __Psave$73113[esp+52]
; Line 493
	mov	ecx, esi
	mov	DWORD PTR ?_Psave@?$_Facetptr@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@2PBVfacet@locale@2@B, esi ; std::_Facetptr<std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > > >::_Psave
	call	?_Incref@facet@locale@std@@QAEXXZ	; std::locale::facet::_Incref
; Line 494
	push	esi
	call	?facet_Register@facet@locale@std@@CAXPAV123@@Z ; std::locale::facet::facet_Register
	add	esp, 4
$LN24@use_facet:
; Line 497
	lea	ecx, DWORD PTR __Lock$73112[esp+52]
	mov	DWORD PTR __$EHRec$[esp+60], -1
	call	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
	mov	eax, esi
; Line 499
	mov	ecx, DWORD PTR __$EHRec$[esp+52]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	edi
	pop	esi
	pop	ebx
	add	esp, 36					; 00000024H
	ret	0
$LN29@use_facet:
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??$use_facet@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@YAABV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@0@ABVlocale@0@@Z$0:
	lea	ecx, DWORD PTR __Lock$73112[ebp]
	jmp	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
__ehhandler$??$use_facet@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@YAABV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@0@ABVlocale@0@@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-36]
	mov	ecx, DWORD PTR [edx-40]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$??$use_facet@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@YAABV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@0@ABVlocale@0@@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
??$use_facet@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@YAABV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@0@ABVlocale@0@@Z ENDP ; std::use_facet<std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > > >
PUBLIC	?_Psave@?$_Facetptr@V?$numpunct@D@std@@@std@@2PBVfacet@locale@2@B ; std::_Facetptr<std::numpunct<char> >::_Psave
PUBLIC	??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z ; std::use_facet<std::numpunct<char> >
;	COMDAT ?_Psave@?$_Facetptr@V?$numpunct@D@std@@@std@@2PBVfacet@locale@2@B
_BSS	SEGMENT
?_Psave@?$_Facetptr@V?$numpunct@D@std@@@std@@2PBVfacet@locale@2@B DD 01H DUP (?) ; std::_Facetptr<std::numpunct<char> >::_Psave
_BSS	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z$0
__ehfuncinfo$??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z
_TEXT	SEGMENT
__Psave$73274 = -36					; size = 4
__Lock$80572 = -32					; size = 4
__Lock$73273 = -28					; size = 4
$T80565 = -24						; size = 12
__$EHRec$ = -12						; size = 12
__Loc$ = 8						; size = 4
??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z PROC ; std::use_facet<std::numpunct<char> >, COMDAT
; Line 466
	push	-1
	push	__ehhandler$??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	sub	esp, 24					; 00000018H
	push	ebx
	push	esi
	push	edi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+52]
	mov	DWORD PTR fs:0, eax
; Line 467
	push	0
	lea	ecx, DWORD PTR __Lock$73273[esp+56]
	call	??0_Lockit@std@@QAE@H@Z			; std::_Lockit::_Lockit
; Line 471
	cmp	DWORD PTR ?id@?$numpunct@D@std@@2V0locale@2@A, 0 ; std::numpunct<char>::id
	mov	ebx, DWORD PTR ?_Psave@?$_Facetptr@V?$numpunct@D@std@@@std@@2PBVfacet@locale@2@B ; std::_Facetptr<std::numpunct<char> >::_Psave
	mov	DWORD PTR __$EHRec$[esp+60], 0
	mov	DWORD PTR __Psave$73274[esp+52], ebx
	jne	SHORT $LN11@use_facet@2
	push	0
	lea	ecx, DWORD PTR __Lock$80572[esp+56]
	call	??0_Lockit@std@@QAE@H@Z			; std::_Lockit::_Lockit
	cmp	DWORD PTR ?id@?$numpunct@D@std@@2V0locale@2@A, 0 ; std::numpunct<char>::id
	jne	SHORT $LN10@use_facet@2
	mov	eax, DWORD PTR ?_Id_cnt@id@locale@std@@0HA ; std::locale::id::_Id_cnt
	add	eax, 1
	mov	DWORD PTR ?_Id_cnt@id@locale@std@@0HA, eax ; std::locale::id::_Id_cnt
	mov	DWORD PTR ?id@?$numpunct@D@std@@2V0locale@2@A, eax ; std::numpunct<char>::id
$LN10@use_facet@2:
	lea	ecx, DWORD PTR __Lock$80572[esp+52]
	call	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
$LN11@use_facet@2:
; Line 472
	mov	eax, DWORD PTR __Loc$[esp+48]
	mov	edi, DWORD PTR ?id@?$numpunct@D@std@@2V0locale@2@A ; std::numpunct<char>::id
	mov	eax, DWORD PTR [eax]
	cmp	edi, DWORD PTR [eax+12]
	jae	SHORT $LN20@use_facet@2
	mov	ecx, DWORD PTR [eax+8]
	mov	esi, DWORD PTR [ecx+edi*4]
	test	esi, esi
	jne	SHORT $LN24@use_facet@2
$LN26@use_facet@2:
	cmp	BYTE PTR [eax+20], 0
	je	SHORT $LN16@use_facet@2
	call	?_Getgloballocale@locale@std@@CAPAV_Locimp@12@XZ ; std::locale::_Getgloballocale
	cmp	edi, DWORD PTR [eax+12]
	jae	SHORT $LN27@use_facet@2
	mov	edx, DWORD PTR [eax+8]
	mov	esi, DWORD PTR [edx+edi*4]
$LN16@use_facet@2:
; Line 474
	test	esi, esi
	jne	SHORT $LN24@use_facet@2
$LN27@use_facet@2:
; Line 476
	test	ebx, ebx
	je	SHORT $LN4@use_facet@2
; Line 477
	mov	esi, ebx
	jmp	SHORT $LN24@use_facet@2
; Line 472
$LN20@use_facet@2:
	xor	esi, esi
	jmp	SHORT $LN26@use_facet@2
$LN4@use_facet@2:
; Line 478
	lea	eax, DWORD PTR __Psave$73274[esp+52]
	push	eax
	call	?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z ; std::numpunct<char>::_Getcat
	add	esp, 4
	cmp	eax, -1
	jne	SHORT $LN2@use_facet@2
; Line 481
	push	OFFSET ??_C@_08EPJLHIJG@bad?5cast?$AA@
	lea	ecx, DWORD PTR $T80565[esp+56]
	call	??0bad_cast@std@@QAE@PBD@Z		; std::bad_cast::bad_cast
	push	OFFSET __TI2?AVbad_cast@std@@
	lea	ecx, DWORD PTR $T80565[esp+56]
	push	ecx
	call	__CxxThrowException@8
$LN2@use_facet@2:
; Line 489
	mov	esi, DWORD PTR __Psave$73274[esp+52]
; Line 493
	mov	ecx, esi
	mov	DWORD PTR ?_Psave@?$_Facetptr@V?$numpunct@D@std@@@std@@2PBVfacet@locale@2@B, esi ; std::_Facetptr<std::numpunct<char> >::_Psave
	call	?_Incref@facet@locale@std@@QAEXXZ	; std::locale::facet::_Incref
; Line 494
	push	esi
	call	?facet_Register@facet@locale@std@@CAXPAV123@@Z ; std::locale::facet::facet_Register
	add	esp, 4
$LN24@use_facet@2:
; Line 497
	lea	ecx, DWORD PTR __Lock$73273[esp+52]
	mov	DWORD PTR __$EHRec$[esp+60], -1
	call	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
	mov	eax, esi
; Line 499
	mov	ecx, DWORD PTR __$EHRec$[esp+52]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	edi
	pop	esi
	pop	ebx
	add	esp, 36					; 00000024H
	ret	0
$LN29@use_facet@2:
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z$0:
	lea	ecx, DWORD PTR __Lock$73273[ebp]
	jmp	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
__ehhandler$??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-36]
	mov	ecx, DWORD PTR [edx-40]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z ENDP ; std::use_facet<std::numpunct<char> >
PUBLIC	??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ ; std::basic_ostream<char,std::char_traits<char> >::sentry::~sentry
EXTRN	?uncaught_exception@std@@YA_NXZ:PROC		; std::uncaught_exception
;	COMDAT xdata$x
; File c:\program files\microsoft visual studio 8\vc\include\streambuf
xdata$x	SEGMENT
__unwindtable$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ$0
__ehfuncinfo$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ PROC ; std::basic_ostream<char,std::char_traits<char> >::sentry::~sentry, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ostream
; Line 106
	push	-1
	push	__ehhandler$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ
	mov	eax, DWORD PTR fs:0
	push	eax
	push	ecx
	push	esi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+24]
	mov	DWORD PTR fs:0, eax
	mov	esi, ecx
	mov	DWORD PTR _this$[esp+24], esi
	mov	DWORD PTR __$EHRec$[esp+32], 0
; Line 109
	call	?uncaught_exception@std@@YA_NXZ		; std::uncaught_exception
	test	al, al
	jne	SHORT $LN1@sentry@2
; Line 110
	mov	ecx, DWORD PTR [esi]
	call	?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ ; std::basic_ostream<char,std::char_traits<char> >::_Osfx
$LN1@sentry@2:
; Line 111
	mov	eax, DWORD PTR [esi]
	mov	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR [ecx+4]
	mov	eax, DWORD PTR [edx+eax+40]
	test	eax, eax
	mov	DWORD PTR __$EHRec$[esp+32], -1
	je	SHORT $LN12@sentry@2
	lea	ecx, DWORD PTR [eax+4]
	call	?_Unlock@_Mutex@std@@QAEXXZ		; std::_Mutex::_Unlock
$LN12@sentry@2:
	mov	ecx, DWORD PTR __$EHRec$[esp+24]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	esi
	add	esp, 16					; 00000010H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ$0:
	mov	ecx, DWORD PTR _this$[ebp]
	jmp	??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ ; std::basic_ostream<char,std::char_traits<char> >::_Sentry_base::~_Sentry_base
__ehhandler$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-8]
	mov	ecx, DWORD PTR [edx-12]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ
	jmp	___CxxFrameHandler3
text$x	ENDS
??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ ENDP ; std::basic_ostream<char,std::char_traits<char> >::sentry::~sentry
PUBLIC	___$ReturnUdt$GSCopy$
PUBLIC	__$ArrayPad$
;	COMDAT xdata$x
; File c:\program files\microsoft visual studio 8\vc\include\iosfwd
xdata$x	SEGMENT
__unwindtable$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z$1
	DD	01H
	DD	FLAT:__unwindfunclet$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z$2
	DD	01H
	DD	FLAT:__unwindfunclet$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z$3
__ehfuncinfo$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z DD 019930522H
	DD	04H
	DD	FLAT:__unwindtable$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z
_TEXT	SEGMENT
___$ReturnUdt$GSCopy$ = -92				; size = 4
$T80638 = -88						; size = 4
$T80640 = -84						; size = 28
$T80639 = -84						; size = 28
$T80644 = -56						; size = 12
$T80643 = -56						; size = 12
__Str$72477 = -44					; size = 28
__$ArrayPad$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
___$ReturnUdt$ = 8					; size = 4
__Dest$ = 12						; size = 12
__Iosbase$ = 24						; size = 4
__Fill$ = 28						; size = 1
__Val$ = 32						; size = 1
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 932
	push	-1
	push	__ehhandler$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	sub	esp, 80					; 00000050H
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	mov	DWORD PTR __$ArrayPad$[esp+92], eax
	push	ebx
	push	ebp
	push	esi
	push	edi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+112]
	mov	DWORD PTR fs:0, eax
	mov	ebp, DWORD PTR __Iosbase$[esp+108]
; Line 934
	test	DWORD PTR [ebp+16], 16384		; 00004000H
	mov	edi, DWORD PTR ___$ReturnUdt$[esp+108]
	mov	esi, ecx
; Line 954
	mov	DWORD PTR ___$ReturnUdt$GSCopy$[esp+112], edi
	jne	SHORT $LN5@do_put
	movzx	eax, BYTE PTR __Val$[esp+108]
	mov	ecx, DWORD PTR __Fill$[esp+108]
	movq	xmm0, QWORD PTR __Dest$[esp+108]
	mov	edx, DWORD PTR [esi]
	mov	edx, DWORD PTR [edx+28]
	push	eax
	push	ecx
	mov	ecx, DWORD PTR __Dest$[esp+124]
	push	ebp
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], ecx
	push	edi
	mov	ecx, esi
	call	edx
	jmp	$LN142@do_put
$LN5@do_put:
; Line 938
	lea	eax, DWORD PTR $T80638[esp+112]
	push	eax
	mov	ecx, ebp
	call	?getloc@ios_base@std@@QBE?AVlocale@2@XZ	; std::ios_base::getloc
	xor	ebx, ebx
	push	eax
	mov	DWORD PTR __$EHRec$[esp+124], ebx
	call	??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z ; std::use_facet<std::numpunct<char> >
	add	esp, 4
	lea	ecx, DWORD PTR $T80638[esp+112]
	mov	edi, eax
	call	??1locale@std@@QAE@XZ			; std::locale::~locale
; Line 939
	mov	DWORD PTR __Str$72477[esp+136], 15	; 0000000fH
	mov	DWORD PTR __Str$72477[esp+132], ebx
	mov	BYTE PTR __Str$72477[esp+116], bl
; Line 940
	cmp	BYTE PTR __Val$[esp+108], 0
	mov	ebx, 1
	mov	DWORD PTR __$EHRec$[esp+120], ebx
	je	SHORT $LN3@do_put
; Line 941
	lea	ecx, DWORD PTR $T80639[esp+112]
	push	ecx
	mov	ecx, edi
	call	?truename@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ; std::numpunct<char>::truename
	push	-1
	push	0
	push	eax
	lea	ecx, DWORD PTR __Str$72477[esp+124]
	mov	BYTE PTR __$EHRec$[esp+132], 2
	call	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
	cmp	DWORD PTR $T80639[esp+136], 16		; 00000010H
	mov	BYTE PTR __$EHRec$[esp+120], bl
	jb	SHORT $LN94@do_put
	mov	edx, DWORD PTR $T80639[esp+116]
	push	edx
; Line 942
	jmp	SHORT $LN155@do_put
$LN3@do_put:
; Line 943
	lea	eax, DWORD PTR $T80640[esp+112]
	push	eax
	mov	ecx, edi
	call	?falsename@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ; std::numpunct<char>::falsename
	push	-1
	push	0
	push	eax
	lea	ecx, DWORD PTR __Str$72477[esp+124]
	mov	BYTE PTR __$EHRec$[esp+132], 3
	call	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
	cmp	DWORD PTR $T80640[esp+136], 16		; 00000010H
	mov	BYTE PTR __$EHRec$[esp+120], bl
	jb	SHORT $LN94@do_put
	mov	ecx, DWORD PTR $T80640[esp+116]
	push	ecx
$LN155@do_put:
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN94@do_put:
; Line 947
	mov	eax, DWORD PTR [ebp+24]
	test	eax, eax
	mov	edx, DWORD PTR __Str$72477[esp+132]
	jle	SHORT $LN8@do_put
	cmp	eax, edx
	jbe	SHORT $LN8@do_put
	sub	eax, edx
	mov	edi, eax
	jmp	SHORT $LN9@do_put
$LN8@do_put:
	xor	edi, edi
$LN9@do_put:
; Line 949
	mov	eax, DWORD PTR [ebp+16]
	mov	ebx, DWORD PTR __Fill$[esp+108]
; Line 951
	movq	xmm0, QWORD PTR __Dest$[esp+108]
	mov	ecx, DWORD PTR __Dest$[esp+116]
	and	eax, 448				; 000001c0H
	cmp	eax, 64					; 00000040H
	je	SHORT $LN1@do_put
	push	edi
	push	ebx
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	lea	edx, DWORD PTR $T80643[esp+132]
	push	edx
	movq	QWORD PTR [eax], xmm0
	push	esi
	mov	DWORD PTR [eax+8], ecx
	call	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
	movq	xmm0, QWORD PTR [eax]
	mov	ecx, DWORD PTR [eax+8]
; Line 952
	mov	edx, DWORD PTR __Str$72477[esp+160]
	add	esp, 28					; 0000001cH
	xor	edi, edi
$LN1@do_put:
; Line 954
	cmp	DWORD PTR __Str$72477[esp+136], 16	; 00000010H
	mov	eax, DWORD PTR __Str$72477[esp+116]
	jae	SHORT $LN123@do_put
	lea	eax, DWORD PTR __Str$72477[esp+116]
$LN123@do_put:
	push	edx
	push	eax
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], ecx
	lea	eax, DWORD PTR $T80644[esp+132]
	push	eax
	push	esi
	call	?_Put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Put
	movq	xmm0, QWORD PTR [eax]
	mov	eax, DWORD PTR [eax+8]
	add	esp, 28					; 0000001cH
; Line 956
	push	edi
	mov	edi, DWORD PTR ___$ReturnUdt$GSCopy$[esp+116]
	push	ebx
	sub	esp, 12					; 0000000cH
	mov	ecx, esp
	push	edi
	movq	QWORD PTR [ecx], xmm0
	push	esi
	mov	DWORD PTR [ebp+24], 0
	mov	DWORD PTR [ecx+8], eax
	call	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
	add	esp, 28					; 0000001cH
	cmp	DWORD PTR __Str$72477[esp+136], 16	; 00000010H
	jb	SHORT $LN142@do_put
	mov	ecx, DWORD PTR __Str$72477[esp+116]
	push	ecx
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN142@do_put:
	mov	eax, edi
; Line 958
	mov	ecx, DWORD PTR __$EHRec$[esp+112]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	edi
	pop	esi
	pop	ebp
	pop	ebx
	mov	ecx, DWORD PTR __$ArrayPad$[esp+92]
	xor	ecx, esp
	call	@__security_check_cookie@4
	add	esp, 92					; 0000005cH
	ret	28					; 0000001cH
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z$0:
	lea	ecx, DWORD PTR $T80638[ebp]
	jmp	??1locale@std@@QAE@XZ			; std::locale::~locale
__unwindfunclet$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z$1:
	lea	ecx, DWORD PTR __Str$72477[ebp]
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z$2:
	lea	ecx, DWORD PTR $T80639[ebp]
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z$3:
	lea	ecx, DWORD PTR $T80640[ebp]
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__ehhandler$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-96]
	mov	ecx, DWORD PTR [edx-100]
	xor	ecx, eax
	call	@__security_check_cookie@4
	add	eax, 16					; 00000010H
	mov	ecx, DWORD PTR [edx-4]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_N@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
PUBLIC	??_C@_01KGKMHCOC@e?$AA@				; `string'
PUBLIC	??_C@_01DDCIFGEA@E?$AA@				; `string'
PUBLIC	__Iosbase$GSCopy$
PUBLIC	___$ReturnUdt$GSCopy$
PUBLIC	__$ArrayPad$
PUBLIC	?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Fput
EXTRN	_strcspn:PROC
;	COMDAT ??_C@_01KGKMHCOC@e?$AA@
; File c:\program files\microsoft visual studio 8\vc\include\iosfwd
CONST	SEGMENT
??_C@_01KGKMHCOC@e?$AA@ DB 'e', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_01DDCIFGEA@E?$AA@
CONST	SEGMENT
??_C@_01DDCIFGEA@E?$AA@ DB 'E', 00H			; `string'
CONST	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z$1
	DD	01H
	DD	FLAT:__unwindfunclet$?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z$2
__ehfuncinfo$?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z DD 019930522H
	DD	03H
	DD	FLAT:__unwindtable$?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z
_TEXT	SEGMENT
__Enders$ = -116					; size = 3
__Fillcount$ = -112					; size = 4
__Kseparator$ = -108					; size = 1
__Lock$81227 = -108					; size = 4
__Iosbase$GSCopy$ = -104				; size = 4
__Prefix$ = -100					; size = 4
$T81201 = -96						; size = 12
$T81200 = -96						; size = 12
$T81199 = -96						; size = 12
$T81196 = -96						; size = 12
$T81195 = -96						; size = 12
$T81194 = -96						; size = 12
$T81193 = -96						; size = 12
$T81192 = -96						; size = 12
$T81191 = -96						; size = 12
$T81189 = -96						; size = 12
$T81188 = -96						; size = 12
$T81462 = -84						; size = 1
__Punct_fac$ = -84					; size = 4
$T81183 = -80						; size = 4
___$ReturnUdt$GSCopy$ = -76				; size = 4
__Groupstring$ = -72					; size = 28
__Grouping$ = -44					; size = 28
__$ArrayPad$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
_this$ = 8						; size = 4
___$ReturnUdt$ = 12					; size = 4
__Dest$ = 16						; size = 12
__Iosbase$ = 28						; size = 4
__Fill$ = 32						; size = 1
__Buf$ = 36						; size = 4
__Beforepoint$ = 40					; size = 4
__Afterpoint$ = 44					; size = 4
__Trailing$ = 48					; size = 4
__Count$ = 52						; size = 4
?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Fput, COMDAT
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 1120
	push	-1
	push	__ehhandler$?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	sub	esp, 104				; 00000068H
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	mov	DWORD PTR __$ArrayPad$[esp+116], eax
	push	ebx
	push	ebp
	push	esi
	push	edi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+136]
	mov	DWORD PTR fs:0, eax
; Line 1233
	mov	eax, DWORD PTR ___$ReturnUdt$[esp+132]
	mov	ecx, DWORD PTR __Iosbase$[esp+132]
	mov	edi, DWORD PTR __Buf$[esp+132]
	lea	edx, DWORD PTR $T81183[esp+136]
	push	edx
	mov	DWORD PTR ___$ReturnUdt$GSCopy$[esp+140], eax
	mov	DWORD PTR __Iosbase$GSCopy$[esp+140], ecx
	call	?getloc@ios_base@std@@QBE?AVlocale@2@XZ	; std::ios_base::getloc
	push	eax
	mov	DWORD PTR __$EHRec$[esp+148], 0
	call	??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z ; std::use_facet<std::numpunct<char> >
	mov	ebp, DWORD PTR $T81183[esp+140]
	add	esp, 4
	test	ebp, ebp
	mov	ebx, eax
	mov	DWORD PTR __Punct_fac$[esp+136], ebx
	mov	DWORD PTR __$EHRec$[esp+144], -1
	je	SHORT $LN31@Fput
	push	0
	lea	ecx, DWORD PTR __Lock$81227[esp+140]
	call	??0_Lockit@std@@QAE@H@Z			; std::_Lockit::_Lockit
	mov	eax, DWORD PTR [ebp+4]
	test	eax, eax
	jbe	SHORT $LN33@Fput
; Line 1122
	cmp	eax, -1
	jae	SHORT $LN33@Fput
	add	eax, -1
	mov	DWORD PTR [ebp+4], eax
$LN33@Fput:
	mov	esi, DWORD PTR [ebp+4]
	neg	esi
	sbb	esi, esi
	not	esi
	lea	ecx, DWORD PTR __Lock$81227[esp+136]
	and	esi, ebp
	call	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
	test	esi, esi
	je	SHORT $LN31@Fput
	mov	eax, DWORD PTR [esi]
	mov	edx, DWORD PTR [eax]
	push	1
	mov	ecx, esi
	call	edx
$LN31@Fput:
; Line 1123
	lea	eax, DWORD PTR __Grouping$[esp+136]
	push	eax
	mov	ecx, ebx
	call	?grouping@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ; std::numpunct<char>::grouping
; Line 1124
	mov	edx, DWORD PTR [ebx]
	mov	eax, DWORD PTR [edx+8]
	mov	esi, 1
	mov	ecx, ebx
	mov	DWORD PTR __$EHRec$[esp+144], esi
	call	eax
; Line 1125
	xor	ecx, ecx
	mov	BYTE PTR __Kseparator$[esp+136], al
	mov	DWORD PTR __Groupstring$[esp+160], 15	; 0000000fH
	mov	DWORD PTR __Groupstring$[esp+156], ecx
	mov	BYTE PTR __Groupstring$[esp+140], cl
; Line 1127
	mov	al, BYTE PTR [edi]
	cmp	al, 43					; 0000002bH
	mov	BYTE PTR __$EHRec$[esp+144], 2
	je	SHORT $LN19@Fput
	cmp	al, 45					; 0000002dH
	mov	DWORD PTR __Prefix$[esp+136], ecx
	jne	SHORT $LN20@Fput
$LN19@Fput:
	mov	DWORD PTR __Prefix$[esp+136], esi
$LN20@Fput:
; Line 1130
	call	_localeconv
	mov	ecx, DWORD PTR [eax]
; Line 1135
	mov	ebx, DWORD PTR __Count$[esp+132]
	mov	dl, BYTE PTR [ecx]
	push	ebx
	push	101					; 00000065H
	push	edi
	mov	BYTE PTR __Enders$[esp+148], dl
	mov	BYTE PTR __Enders$[esp+149], 101	; 00000065H
	mov	BYTE PTR __Enders$[esp+150], 0
	call	_memchr
	mov	esi, eax
; Line 1137
	movsx	eax, BYTE PTR __Enders$[esp+148]
	push	ebx
	push	eax
	push	edi
	call	_memchr
	mov	ebp, eax
	add	esp, 24					; 00000018H
; Line 1138
	test	ebp, ebp
	jne	SHORT $LN16@Fput
; Line 1139
	mov	DWORD PTR __Trailing$[esp+132], eax
$LN16@Fput:
; Line 1141
	mov	ecx, DWORD PTR __Grouping$[esp+160]
	cmp	ecx, 16					; 00000010H
	mov	edx, DWORD PTR __Grouping$[esp+140]
	mov	eax, edx
	jae	SHORT $LN78@Fput
	lea	eax, DWORD PTR __Grouping$[esp+140]
$LN78@Fput:
	cmp	BYTE PTR [eax], 127			; 0000007fH
	je	$LN105@Fput
	cmp	ecx, 16					; 00000010H
	mov	eax, edx
	jae	SHORT $LN84@Fput
	lea	eax, DWORD PTR __Grouping$[esp+140]
$LN84@Fput:
	cmp	BYTE PTR [eax], 0
	jle	$LN105@Fput
; Line 1143
	push	ebx
	push	edi
	lea	ecx, DWORD PTR __Groupstring$[esp+144]
	call	?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append
; Line 1144
	test	esi, esi
	jne	SHORT $LN14@Fput
; Line 1145
	mov	ecx, DWORD PTR __Trailing$[esp+132]
	push	48					; 00000030H
	push	ecx
	lea	ecx, DWORD PTR __Groupstring$[esp+144]
	call	?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append
; Line 1146
	mov	ebx, DWORD PTR __Beforepoint$[esp+132]
	jmp	SHORT $LN13@Fput
$LN14@Fput:
; Line 1148
	test	ebp, ebp
	jne	SHORT $LN177@Fput
; Line 1150
	mov	edx, DWORD PTR __Beforepoint$[esp+132]
	push	48					; 00000030H
	push	edx
	lea	ecx, DWORD PTR __Groupstring$[esp+144]
	call	?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append
; Line 1151
	xor	ebx, ebx
	jmp	SHORT $LN12@Fput
$LN177@Fput:
	mov	ebx, DWORD PTR __Beforepoint$[esp+132]
$LN12@Fput:
; Line 1153
	mov	eax, DWORD PTR __Trailing$[esp+132]
	push	48					; 00000030H
	push	eax
	sub	esi, edi
	push	esi
	lea	ecx, DWORD PTR __Groupstring$[esp+148]
	call	?insert@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@IID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::insert
$LN13@Fput:
; Line 1157
	test	ebp, ebp
; Line 1158
	push	48					; 00000030H
	jne	SHORT $LN11@Fput
	push	ebx
	lea	ecx, DWORD PTR __Groupstring$[esp+144]
	call	?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::append
; Line 1159
	jmp	SHORT $LN10@Fput
$LN11@Fput:
; Line 1161
	mov	ecx, DWORD PTR __Afterpoint$[esp+136]
	mov	esi, ebp
	sub	esi, edi
	push	ecx
	lea	edx, DWORD PTR [esi+1]
	push	edx
	lea	ecx, DWORD PTR __Groupstring$[esp+148]
	call	?insert@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@IID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::insert
; Line 1162
	push	48					; 00000030H
	push	ebx
	push	esi
	lea	ecx, DWORD PTR __Groupstring$[esp+148]
	call	?insert@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@IID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::insert
; Line 1163
	mov	DWORD PTR __Afterpoint$[esp+132], 0
$LN10@Fput:
; Line 1167
	mov	edi, DWORD PTR __Grouping$[esp+140]
	mov	ebx, 16					; 00000010H
	cmp	DWORD PTR __Grouping$[esp+160], ebx
	mov	DWORD PTR __Beforepoint$[esp+132], 0
	jae	SHORT $LN90@Fput
	lea	edi, DWORD PTR __Grouping$[esp+140]
$LN90@Fput:
; Line 1168
	cmp	DWORD PTR __Groupstring$[esp+160], ebx
	mov	eax, DWORD PTR __Groupstring$[esp+140]
	jae	SHORT $LN97@Fput
	lea	eax, DWORD PTR __Groupstring$[esp+140]
$LN97@Fput:
	lea	ecx, DWORD PTR __Enders$[esp+136]
	push	ecx
	push	eax
	call	_strcspn
	mov	esi, eax
; Line 1170
	mov	al, BYTE PTR [edi]
	add	esp, 8
	cmp	al, 127					; 0000007fH
	je	SHORT $LN8@Fput
$LL9@Fput:
	test	al, al
	jle	SHORT $LN8@Fput
	mov	edx, esi
	sub	edx, DWORD PTR __Prefix$[esp+136]
	movsx	eax, al
	cmp	eax, edx
	jae	SHORT $LN8@Fput
; Line 1172
	push	0
	sub	esi, eax
	push	1
	push	esi
	lea	ecx, DWORD PTR __Groupstring$[esp+148]
	call	?insert@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@IID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::insert
; Line 1173
	cmp	BYTE PTR [edi+1], 0
	jle	SHORT $LN7@Fput
; Line 1170
	add	edi, 1
$LN7@Fput:
	mov	al, BYTE PTR [edi]
	cmp	al, 127					; 0000007fH
	jne	SHORT $LL9@Fput
$LN8@Fput:
; Line 1177
	cmp	DWORD PTR __Groupstring$[esp+160], ebx
	mov	edi, DWORD PTR __Groupstring$[esp+140]
	jae	SHORT $LN104@Fput
	lea	edi, DWORD PTR __Groupstring$[esp+140]
$LN104@Fput:
; Line 1179
	mov	eax, DWORD PTR __Groupstring$[esp+156]
	mov	DWORD PTR __Trailing$[esp+132], 0
	mov	DWORD PTR __Count$[esp+132], eax
	mov	ebx, eax
$LN105@Fput:
; Line 1182
	mov	ecx, DWORD PTR __Beforepoint$[esp+132]
	mov	edx, DWORD PTR __Afterpoint$[esp+132]
	lea	eax, DWORD PTR [ecx+edx]
	add	eax, DWORD PTR __Trailing$[esp+132]
; Line 1185
	mov	edx, DWORD PTR __Iosbase$GSCopy$[esp+136]
	mov	ecx, DWORD PTR [edx+24]
	add	eax, ebx
	test	ecx, ecx
	jle	SHORT $LN21@Fput
	cmp	ecx, eax
	jbe	SHORT $LN21@Fput
	sub	ecx, eax
	mov	DWORD PTR __Fillcount$[esp+136], ecx
	jmp	SHORT $LN22@Fput
$LN21@Fput:
	mov	DWORD PTR __Fillcount$[esp+136], 0
$LN22@Fput:
; Line 1187
	mov	eax, DWORD PTR [edx+16]
; Line 1189
	mov	esi, DWORD PTR _this$[esp+132]
	and	eax, 448				; 000001c0H
	cmp	eax, 64					; 00000040H
	je	$LN180@Fput
	cmp	eax, 256				; 00000100H
; Line 1191
	movq	xmm0, QWORD PTR __Dest$[esp+132]
	je	SHORT $LN174@Fput
	mov	eax, DWORD PTR __Fillcount$[esp+136]
	mov	ecx, DWORD PTR __Fill$[esp+132]
	mov	edx, DWORD PTR __Dest$[esp+140]
	push	eax
	push	ecx
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], edx
$LN186@Fput:
	lea	eax, DWORD PTR $T81188[esp+156]
	push	eax
	push	esi
	call	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
	movq	xmm0, QWORD PTR [eax]
	mov	ebp, DWORD PTR [eax+8]
	add	esp, 28					; 0000001cH
	movq	QWORD PTR __Dest$[esp+132], xmm0
; Line 1192
	mov	DWORD PTR __Fillcount$[esp+136], 0
	jmp	SHORT $LN4@Fput
$LN174@Fput:
; Line 1196
	cmp	DWORD PTR __Prefix$[esp+136], 0
; Line 1198
	mov	ecx, DWORD PTR __Dest$[esp+140]
	jbe	SHORT $LN3@Fput
	push	1
	push	edi
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	lea	edx, DWORD PTR $T81189[esp+156]
	push	edx
	movq	QWORD PTR [eax], xmm0
	push	esi
	mov	DWORD PTR [eax+8], ecx
	call	?_Putc@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putc
	movq	xmm0, QWORD PTR [eax]
	mov	ecx, DWORD PTR [eax+8]
	add	esp, 28					; 0000001cH
; Line 1199
	add	edi, 1
	sub	ebx, 1
	mov	DWORD PTR __Count$[esp+132], ebx
$LN3@Fput:
; Line 1201
	mov	eax, DWORD PTR __Fillcount$[esp+136]
	mov	edx, DWORD PTR __Fill$[esp+132]
	push	eax
	push	edx
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], ecx
; Line 1202
	jmp	$LN186@Fput
$LN180@Fput:
	mov	ebp, DWORD PTR __Dest$[esp+140]
$LN4@Fput:
; Line 1206
	movsx	ecx, BYTE PTR __Enders$[esp+136]
	push	ebx
	push	ecx
	push	edi
	call	_memchr
	add	esp, 12					; 0000000cH
; Line 1207
	test	eax, eax
	je	$LN2@Fput
; Line 1210
	mov	edx, DWORD PTR __Kseparator$[esp+136]
	movq	xmm0, QWORD PTR __Dest$[esp+132]
	sub	eax, edi
	add	eax, 1
	push	edx
	mov	ebx, eax
	lea	eax, DWORD PTR [ebx-1]
	push	eax
	push	edi
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	lea	ecx, DWORD PTR $T81191[esp+160]
	push	ecx
	movq	QWORD PTR [eax], xmm0
	push	esi
	mov	DWORD PTR [eax+8], ebp
	call	?_Putgrouped@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDID@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putgrouped
; Line 1211
	mov	edx, DWORD PTR __Beforepoint$[esp+164]
	movq	xmm0, QWORD PTR [eax]
	mov	eax, DWORD PTR [eax+8]
	add	esp, 32					; 00000020H
	push	edx
	push	48					; 00000030H
	sub	esp, 12					; 0000000cH
	mov	ecx, esp
	movq	QWORD PTR [ecx], xmm0
	mov	DWORD PTR [ecx+8], eax
	lea	ecx, DWORD PTR $T81192[esp+156]
	push	ecx
	push	esi
	call	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
; Line 1212
	mov	ecx, DWORD PTR __Punct_fac$[esp+164]
	movq	xmm0, QWORD PTR [eax]
	mov	edx, DWORD PTR [ecx]
	mov	ebp, DWORD PTR [eax+8]
	mov	eax, DWORD PTR [edx+4]
	add	esp, 28					; 0000001cH
	movq	QWORD PTR __Dest$[esp+132], xmm0
	call	eax
	movq	xmm0, QWORD PTR __Dest$[esp+132]
	mov	BYTE PTR $T81462[esp+136], al
	mov	ecx, DWORD PTR $T81462[esp+136]
	push	1
	push	ecx
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	lea	edx, DWORD PTR $T81193[esp+156]
	push	edx
	movq	QWORD PTR [eax], xmm0
	push	esi
	mov	DWORD PTR [eax+8], ebp
	call	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
; Line 1213
	mov	ecx, DWORD PTR __Afterpoint$[esp+160]
	movq	xmm0, QWORD PTR [eax]
	mov	edx, DWORD PTR [eax+8]
	add	esp, 28					; 0000001cH
	push	ecx
	push	48					; 00000030H
	sub	esp, 12					; 0000000cH
	mov	ecx, esp
	lea	eax, DWORD PTR $T81194[esp+156]
	push	eax
	movq	QWORD PTR [ecx], xmm0
	push	esi
	mov	DWORD PTR [ecx+8], edx
	call	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
	movq	xmm0, QWORD PTR [eax]
	mov	ebp, DWORD PTR [eax+8]
; Line 1214
	add	edi, ebx
	add	esp, 28					; 0000001cH
	sub	DWORD PTR __Count$[esp+132], ebx
	mov	ebx, DWORD PTR __Count$[esp+132]
	movq	QWORD PTR __Dest$[esp+132], xmm0
$LN2@Fput:
; Line 1218
	push	ebx
	push	101					; 00000065H
	push	edi
	call	_memchr
; Line 1222
	movq	xmm0, QWORD PTR __Dest$[esp+144]
	add	esp, 12					; 0000000cH
	test	eax, eax
	je	$LN1@Fput
	mov	ecx, DWORD PTR __Kseparator$[esp+136]
	sub	eax, edi
	add	eax, 1
	mov	ebx, eax
	push	ecx
	lea	edx, DWORD PTR [ebx-1]
	push	edx
	push	edi
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], ebp
	lea	eax, DWORD PTR $T81195[esp+160]
	push	eax
	push	esi
	call	?_Putgrouped@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDID@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putgrouped
; Line 1223
	mov	ecx, DWORD PTR __Trailing$[esp+164]
	movq	xmm0, QWORD PTR [eax]
	mov	edx, DWORD PTR [eax+8]
	add	esp, 32					; 00000020H
	push	ecx
	push	48					; 00000030H
	sub	esp, 12					; 0000000cH
	mov	ecx, esp
	lea	eax, DWORD PTR $T81196[esp+156]
	push	eax
	movq	QWORD PTR [ecx], xmm0
	push	esi
	mov	DWORD PTR [ecx+8], edx
	call	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
; Line 1225
	mov	ecx, DWORD PTR __Iosbase$GSCopy$[esp+164]
	add	esp, 28					; 0000001cH
	test	BYTE PTR [ecx+16], 4
	mov	DWORD PTR __Trailing$[esp+132], 0
	mov	ecx, OFFSET ??_C@_01DDCIFGEA@E?$AA@
	jne	SHORT $LN24@Fput
	mov	ecx, OFFSET ??_C@_01KGKMHCOC@e?$AA@
$LN24@Fput:
	movq	xmm0, QWORD PTR [eax]
	mov	edx, DWORD PTR [eax+8]
	push	1
	push	ecx
	sub	esp, 12					; 0000000cH
	mov	ecx, esp
	lea	eax, DWORD PTR $T81199[esp+156]
	push	eax
	movq	QWORD PTR [ecx], xmm0
	push	esi
	mov	DWORD PTR [ecx+8], edx
	call	?_Putc@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putc
	movq	xmm0, QWORD PTR [eax]
	mov	ebp, DWORD PTR [eax+8]
; Line 1226
	add	edi, ebx
	add	esp, 28					; 0000001cH
	sub	DWORD PTR __Count$[esp+132], ebx
	mov	ebx, DWORD PTR __Count$[esp+132]
$LN1@Fput:
; Line 1230
	mov	ecx, DWORD PTR __Kseparator$[esp+136]
	push	ecx
	push	ebx
	push	edi
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	lea	edx, DWORD PTR $T81200[esp+160]
	push	edx
	movq	QWORD PTR [eax], xmm0
	push	esi
	mov	DWORD PTR [eax+8], ebp
	call	?_Putgrouped@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDID@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putgrouped
; Line 1231
	mov	ecx, DWORD PTR __Trailing$[esp+164]
	movq	xmm0, QWORD PTR [eax]
	mov	edx, DWORD PTR [eax+8]
	add	esp, 32					; 00000020H
	push	ecx
	push	48					; 00000030H
	sub	esp, 12					; 0000000cH
	mov	ecx, esp
	lea	eax, DWORD PTR $T81201[esp+156]
	push	eax
	movq	QWORD PTR [ecx], xmm0
	push	esi
	mov	DWORD PTR [ecx+8], edx
	call	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
	movq	xmm0, QWORD PTR [eax]
	mov	eax, DWORD PTR [eax+8]
; Line 1232
	mov	ecx, DWORD PTR __Iosbase$GSCopy$[esp+164]
; Line 1233
	mov	edx, DWORD PTR __Fillcount$[esp+164]
	mov	edi, DWORD PTR ___$ReturnUdt$GSCopy$[esp+164]
	add	esp, 28					; 0000001cH
	push	edx
	xor	ebx, ebx
	mov	DWORD PTR [ecx+24], ebx
	mov	ecx, DWORD PTR __Fill$[esp+136]
	push	ecx
	sub	esp, 12					; 0000000cH
	mov	ecx, esp
	push	edi
	movq	QWORD PTR [ecx], xmm0
	push	esi
	mov	DWORD PTR [ecx+8], eax
	call	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
	mov	esi, 16					; 00000010H
	add	esp, 28					; 0000001cH
	cmp	DWORD PTR __Groupstring$[esp+160], esi
	jb	SHORT $LN137@Fput
	mov	edx, DWORD PTR __Groupstring$[esp+140]
	push	edx
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN137@Fput:
	cmp	DWORD PTR __Grouping$[esp+160], esi
	mov	DWORD PTR __Groupstring$[esp+160], 15	; 0000000fH
	mov	DWORD PTR __Groupstring$[esp+156], ebx
	mov	BYTE PTR __Groupstring$[esp+140], 0
	jb	SHORT $LN175@Fput
	mov	eax, DWORD PTR __Grouping$[esp+140]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN175@Fput:
	mov	eax, edi
; Line 1234
	mov	ecx, DWORD PTR __$EHRec$[esp+136]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	edi
	pop	esi
	pop	ebp
	pop	ebx
	mov	ecx, DWORD PTR __$ArrayPad$[esp+116]
	xor	ecx, esp
	call	@__security_check_cookie@4
	add	esp, 116				; 00000074H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z$0:
	lea	ecx, DWORD PTR $T81183[ebp]
	jmp	??1locale@std@@QAE@XZ			; std::locale::~locale
__unwindfunclet$?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z$1:
	lea	ecx, DWORD PTR __Grouping$[ebp]
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z$2:
	lea	ecx, DWORD PTR __Groupstring$[ebp]
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__ehhandler$?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-120]
	mov	ecx, DWORD PTR [edx-124]
	xor	ecx, eax
	call	@__security_check_cookie@4
	add	eax, 16					; 00000010H
	mov	ecx, DWORD PTR [edx-4]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Fput
PUBLIC	__Iosbase$GSCopy$
PUBLIC	___$ReturnUdt$GSCopy$
PUBLIC	__$ArrayPad$
PUBLIC	?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Iput
;	COMDAT xdata$x
; File c:\program files\microsoft visual studio 8\vc\include\iosfwd
xdata$x	SEGMENT
__unwindtable$?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z$1
__ehfuncinfo$?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z
_TEXT	SEGMENT
__Lock$81752 = -80					; size = 4
__Prefix$ = -80						; size = 4
__Pg$72814 = -76					; size = 4
__Iosbase$GSCopy$ = -72					; size = 4
$T81817 = -68						; size = 1
__Punct_fac$ = -68					; size = 4
$T81716 = -64						; size = 4
___$ReturnUdt$GSCopy$ = -60				; size = 4
$T81727 = -56						; size = 12
$T81726 = -56						; size = 12
$T81725 = -56						; size = 12
$T81724 = -56						; size = 12
__Grouping$ = -44					; size = 28
__$ArrayPad$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
_this$ = 8						; size = 4
___$ReturnUdt$ = 12					; size = 4
__Dest$ = 16						; size = 12
__Iosbase$ = 28						; size = 4
__Fill$ = 32						; size = 1
__Buf$ = 36						; size = 4
__Count$ = 40						; size = 4
?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Iput, COMDAT
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 1265
	push	-1
	push	__ehhandler$?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	sub	esp, 68					; 00000044H
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	mov	DWORD PTR __$ArrayPad$[esp+80], eax
	push	ebx
	push	ebp
	push	esi
	push	edi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[esp+100]
	mov	DWORD PTR fs:0, eax
	mov	eax, DWORD PTR ___$ReturnUdt$[esp+96]
	mov	ecx, DWORD PTR __Iosbase$[esp+96]
	mov	ebx, DWORD PTR __Buf$[esp+96]
; Line 1267
	lea	edx, DWORD PTR $T81716[esp+100]
	push	edx
	mov	DWORD PTR ___$ReturnUdt$GSCopy$[esp+104], eax
	mov	DWORD PTR __Iosbase$GSCopy$[esp+104], ecx
	call	?getloc@ios_base@std@@QBE?AVlocale@2@XZ	; std::ios_base::getloc
	push	eax
	mov	DWORD PTR __$EHRec$[esp+112], 0
	call	??$use_facet@V?$numpunct@D@std@@@std@@YAABV?$numpunct@D@0@ABVlocale@0@@Z ; std::use_facet<std::numpunct<char> >
	mov	ebp, DWORD PTR $T81716[esp+104]
	add	esp, 4
	test	ebp, ebp
	mov	esi, eax
	mov	DWORD PTR __Punct_fac$[esp+100], esi
	mov	DWORD PTR __$EHRec$[esp+108], -1
	je	SHORT $LN22@Iput
	push	0
	lea	ecx, DWORD PTR __Lock$81752[esp+104]
	call	??0_Lockit@std@@QAE@H@Z			; std::_Lockit::_Lockit
	mov	eax, DWORD PTR [ebp+4]
	test	eax, eax
	jbe	SHORT $LN24@Iput
	cmp	eax, -1
	jae	SHORT $LN24@Iput
	add	eax, -1
	mov	DWORD PTR [ebp+4], eax
$LN24@Iput:
	mov	edi, DWORD PTR [ebp+4]
	neg	edi
	sbb	edi, edi
	not	edi
	lea	ecx, DWORD PTR __Lock$81752[esp+100]
	and	edi, ebp
	call	??1_Lockit@std@@QAE@XZ			; std::_Lockit::~_Lockit
	test	edi, edi
	je	SHORT $LN22@Iput
	mov	eax, DWORD PTR [edi]
	mov	edx, DWORD PTR [eax]
	push	1
	mov	ecx, edi
	call	edx
$LN22@Iput:
; Line 1268
	lea	eax, DWORD PTR __Grouping$[esp+100]
	push	eax
	mov	ecx, esi
	call	?grouping@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ ; std::numpunct<char>::grouping
; Line 1271
	mov	al, BYTE PTR [ebx]
	cmp	al, 43					; 0000002bH
	mov	ecx, 1
	mov	DWORD PTR __$EHRec$[esp+108], ecx
	je	SHORT $LN10@Iput
	cmp	al, 45					; 0000002dH
	je	SHORT $LN10@Iput
	cmp	al, 48					; 00000030H
	jne	SHORT $LN12@Iput
	mov	al, BYTE PTR [ebx+1]
	cmp	al, 120					; 00000078H
	je	SHORT $LN11@Iput
	cmp	al, 88					; 00000058H
	jne	SHORT $LN12@Iput
$LN11@Iput:
	mov	DWORD PTR __Prefix$[esp+100], 2
	jmp	SHORT $LN14@Iput
$LN12@Iput:
	mov	DWORD PTR __Prefix$[esp+100], 0
	jmp	SHORT $LN14@Iput
$LN10@Iput:
	mov	DWORD PTR __Prefix$[esp+100], ecx
$LN14@Iput:
; Line 1273
	mov	ecx, DWORD PTR __Grouping$[esp+124]
	cmp	ecx, 16					; 00000010H
	mov	edx, DWORD PTR __Grouping$[esp+104]
	mov	eax, edx
	jae	SHORT $LN33@Iput
	lea	eax, DWORD PTR __Grouping$[esp+104]
$LN33@Iput:
	cmp	BYTE PTR [eax], 127			; 0000007fH
	je	$LN87@Iput
	cmp	ecx, 16					; 00000010H
	mov	eax, edx
	jae	SHORT $LN39@Iput
	lea	eax, DWORD PTR __Grouping$[esp+104]
$LN39@Iput:
	cmp	BYTE PTR [eax], 0
	jle	SHORT $LN87@Iput
; Line 1275
	cmp	ecx, 16					; 00000010H
	jb	SHORT $LN44@Iput
	mov	DWORD PTR __Pg$72814[esp+100], edx
	jmp	SHORT $LN45@Iput
$LN44@Iput:
	lea	ecx, DWORD PTR __Grouping$[esp+104]
	mov	DWORD PTR __Pg$72814[esp+100], ecx
$LN45@Iput:
; Line 1278
	mov	edx, DWORD PTR __Pg$72814[esp+100]
	mov	al, BYTE PTR [edx]
	cmp	al, 127					; 0000007fH
	mov	ebp, DWORD PTR __Count$[esp+96]
	mov	esi, ebp
	je	SHORT $LN5@Iput
$LN6@Iput:
	test	al, al
	jle	SHORT $LN5@Iput
	mov	ecx, esi
	sub	ecx, DWORD PTR __Prefix$[esp+100]
	movsx	eax, al
	cmp	eax, ecx
	jae	SHORT $LN5@Iput
; Line 1280
	sub	esi, eax
; Line 1281
	mov	edx, ebp
	sub	edx, esi
	lea	eax, DWORD PTR [edx+1]
	push	eax
	lea	edi, DWORD PTR [ebx+esi]
	push	edi
	push	eax
	lea	eax, DWORD PTR [ebx+esi+1]
	push	eax
	call	_memmove_s
; Line 1284
	mov	eax, DWORD PTR __Pg$72814[esp+116]
	add	esp, 16					; 00000010H
	mov	BYTE PTR [edi], 0
	add	ebp, 1
	cmp	BYTE PTR [eax+1], 0
	jle	SHORT $LN4@Iput
	add	eax, 1
	mov	DWORD PTR __Pg$72814[esp+100], eax
$LN4@Iput:
	mov	al, BYTE PTR [eax]
	cmp	al, 127					; 0000007fH
	jne	SHORT $LN6@Iput
; Line 1278
	jmp	SHORT $LN5@Iput
$LN87@Iput:
	mov	ebp, DWORD PTR __Count$[esp+96]
$LN5@Iput:
; Line 1291
	mov	ecx, DWORD PTR __Iosbase$GSCopy$[esp+100]
	mov	edi, DWORD PTR [ecx+24]
	test	edi, edi
	jle	SHORT $LN15@Iput
	cmp	edi, ebp
	jbe	SHORT $LN15@Iput
	sub	edi, ebp
	jmp	SHORT $LN16@Iput
$LN15@Iput:
	xor	edi, edi
$LN16@Iput:
; Line 1296
	mov	esi, DWORD PTR _this$[esp+96]
	mov	edx, ecx
	mov	eax, DWORD PTR [edx+16]
	and	eax, 448				; 000001c0H
	cmp	eax, 64					; 00000040H
	je	$LN1@Iput
	cmp	eax, 256				; 00000100H
; Line 1298
	movq	xmm0, QWORD PTR __Dest$[esp+96]
	je	SHORT $LN85@Iput
	mov	eax, DWORD PTR __Fill$[esp+96]
	mov	ecx, DWORD PTR __Dest$[esp+104]
	push	edi
	push	eax
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	lea	edx, DWORD PTR $T81724[esp+120]
	push	edx
	movq	QWORD PTR [eax], xmm0
	push	esi
	mov	DWORD PTR [eax+8], ecx
	call	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
	movq	xmm0, QWORD PTR [eax]
	mov	eax, DWORD PTR [eax+8]
	mov	DWORD PTR __Dest$[esp+132], eax
; Line 1299
	jmp	SHORT $LN95@Iput
$LN85@Iput:
; Line 1303
	mov	ecx, DWORD PTR __Prefix$[esp+100]
	mov	edx, DWORD PTR __Dest$[esp+104]
	push	ecx
	push	ebx
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], edx
	lea	eax, DWORD PTR $T81725[esp+120]
	push	eax
	push	esi
	call	?_Putc@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putc
; Line 1304
	mov	ecx, DWORD PTR __Prefix$[esp+128]
; Line 1305
	movq	xmm0, QWORD PTR [eax]
	mov	edx, DWORD PTR [eax+8]
	add	esp, 28					; 0000001cH
	add	ebx, ecx
	sub	ebp, ecx
	mov	ecx, DWORD PTR __Fill$[esp+96]
	push	edi
	push	ecx
	sub	esp, 12					; 0000000cH
	mov	ecx, esp
	lea	eax, DWORD PTR $T81726[esp+120]
	push	eax
	movq	QWORD PTR [ecx], xmm0
	push	esi
	mov	DWORD PTR [ecx+8], edx
	call	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
	mov	ecx, DWORD PTR [eax+8]
	movq	xmm0, QWORD PTR [eax]
	mov	DWORD PTR __Dest$[esp+132], ecx
$LN95@Iput:
	add	esp, 28					; 0000001cH
	xor	edi, edi
	movq	QWORD PTR __Dest$[esp+96], xmm0
$LN1@Iput:
; Line 1309
	mov	ecx, DWORD PTR __Punct_fac$[esp+100]
	mov	edx, DWORD PTR [ecx]
	mov	eax, DWORD PTR [edx+8]
	call	eax
	movq	xmm0, QWORD PTR __Dest$[esp+96]
	mov	edx, DWORD PTR __Dest$[esp+104]
	mov	BYTE PTR $T81817[esp+100], al
	mov	ecx, DWORD PTR $T81817[esp+100]
	push	ecx
	push	ebp
	push	ebx
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], edx
	lea	eax, DWORD PTR $T81727[esp+124]
	push	eax
	push	esi
	call	?_Putgrouped@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@PBDID@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Putgrouped
; Line 1311
	mov	edx, DWORD PTR __Fill$[esp+128]
	movq	xmm0, QWORD PTR [eax]
	mov	eax, DWORD PTR [eax+8]
	mov	ecx, DWORD PTR __Iosbase$GSCopy$[esp+132]
	add	esp, 32					; 00000020H
	push	edi
	mov	edi, DWORD PTR ___$ReturnUdt$GSCopy$[esp+104]
	push	edx
	sub	esp, 12					; 0000000cH
	mov	DWORD PTR [ecx+24], 0
	mov	ecx, esp
	push	edi
	movq	QWORD PTR [ecx], xmm0
	push	esi
	mov	DWORD PTR [ecx+8], eax
	call	?_Rep@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@DI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Rep
	add	esp, 28					; 0000001cH
	cmp	DWORD PTR __Grouping$[esp+124], 16	; 00000010H
	jb	SHORT $LN86@Iput
	mov	eax, DWORD PTR __Grouping$[esp+104]
	push	eax
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$LN86@Iput:
	mov	eax, edi
; Line 1312
	mov	ecx, DWORD PTR __$EHRec$[esp+100]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	edi
	pop	esi
	pop	ebp
	pop	ebx
	mov	ecx, DWORD PTR __$ArrayPad$[esp+80]
	xor	ecx, esp
	call	@__security_check_cookie@4
	add	esp, 80					; 00000050H
	ret	0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z$0:
	lea	ecx, DWORD PTR $T81716[ebp]
	jmp	??1locale@std@@QAE@XZ			; std::locale::~locale
__unwindfunclet$?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z$1:
	lea	ecx, DWORD PTR __Grouping$[ebp]
	jmp	??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__ehhandler$?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx-84]
	mov	ecx, DWORD PTR [edx-88]
	xor	ecx, eax
	call	@__security_check_cookie@4
	add	eax, 16					; 00000010H
	mov	ecx, DWORD PTR [edx-4]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Iput
PUBLIC	??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z ; std::basic_ostream<char,std::char_traits<char> >::operator<<
;	COMDAT xdata$x
; File c:\program files\microsoft visual studio 8\vc\include\ios
xdata$x	SEGMENT
__catchsym$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z$10 DD 040H
	DD	00H
	DD	00H
	DD	FLAT:__catch$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z$0
__tryblocktable$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z DD 02H
	DD	02H
	DD	06H
	DD	01H
	DD	FLAT:__catchsym$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z$10
__ehfuncinfo$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z DD 019930522H
	DD	07H
	DD	FLAT:__unwindtable$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z
	DD	01H
	DD	FLAT:__tryblocktable$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z
	DD	2 DUP(00H)
	DD	00H
	DD	01H
__unwindtable$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z$2
	DD	00H
	DD	FLAT:__unwindfunclet$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z$3
	DD	00H
	DD	00H
	DD	00H
	DD	00H
	DD	03H
	DD	00H
	DD	03H
	DD	00H
	DD	03H
	DD	00H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z
_TEXT	SEGMENT
$T81958 = -52						; size = 12
$T81957 = -52						; size = 12
__Ok$ = -40						; size = 8
$T81973 = -32						; size = 1
$T81954 = -28						; size = 4
_this$ = -20						; size = 4
__$EHRec$ = -16						; size = 16
__Val$ = 8						; size = 8
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z PROC ; std::basic_ostream<char,std::char_traits<char> >::operator<<, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ostream
; Line 354
	push	ebp
	mov	ebp, esp
	push	-1
	push	__ehhandler$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	sub	esp, 40					; 00000028H
	push	ebx
	push	esi
	push	edi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, ebp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[ebp+4]
	mov	DWORD PTR fs:0, eax
	mov	DWORD PTR __$EHRec$[ebp], esp
	mov	esi, ecx
	mov	DWORD PTR _this$[ebp], esi
; Line 356
	push	esi
	lea	ecx, DWORD PTR __Ok$[ebp]
	xor	ebx, ebx
	xor	edi, edi
	call	??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z ; std::basic_ostream<char,std::char_traits<char> >::sentry::sentry
; Line 358
	cmp	BYTE PTR __Ok$[ebp+4], bl
	mov	DWORD PTR __$EHRec$[ebp+12], ebx
	je	$LN12@operator@4
; Line 360
	mov	ecx, DWORD PTR [esi]
	mov	ecx, DWORD PTR [ecx+4]
	lea	eax, DWORD PTR $T81954[ebp]
	push	eax
	add	ecx, esi
	call	?getloc@ios_base@std@@QBE?AVlocale@2@XZ	; std::ios_base::getloc
	push	eax
	mov	BYTE PTR __$EHRec$[ebp+12], 1
	call	??$use_facet@V?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@@std@@YAABV?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@0@ABVlocale@0@@Z ; std::use_facet<std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > > >
	add	esp, 4
	lea	ecx, DWORD PTR $T81954[ebp]
	mov	edi, eax
	call	??1locale@std@@QAE@XZ			; std::locale::~locale
; Line 364
	mov	ecx, DWORD PTR [esi]
	mov	edx, DWORD PTR [ecx+4]
	mov	eax, DWORD PTR [ecx+4]
	lea	ecx, DWORD PTR [edx+esi]
	mov	dl, BYTE PTR [ecx+48]
	mov	ecx, DWORD PTR [ecx+40]
	mov	DWORD PTR $T81957[ebp], ebx
	mov	BYTE PTR $T81957[ebp+4], bl
	mov	ebx, DWORD PTR __Val$[ebp+4]
	movq	xmm0, QWORD PTR $T81957[ebp]
	push	ebx
	mov	ebx, DWORD PTR __Val$[ebp]
	push	ebx
	mov	BYTE PTR $T81973[ebp], dl
	mov	ebx, DWORD PTR $T81973[ebp]
	mov	edx, DWORD PTR [edi]
	mov	edx, DWORD PTR [edx+20]
	add	eax, esi
	push	ebx
	push	eax
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], ecx
	lea	eax, DWORD PTR $T81958[ebp]
	push	eax
	mov	ecx, edi
	mov	BYTE PTR __$EHRec$[ebp+12], 2
	call	edx
	xor	ebx, ebx
	cmp	BYTE PTR $T81958[ebp+4], bl
; Line 365
	lea	edi, DWORD PTR [ebx+4]
	jne	SHORT $LN1@operator@4
	mov	edi, ebx
$LN1@operator@4:
; Line 366
	mov	DWORD PTR __$EHRec$[ebp+12], ebx
$LN12@operator@4:
; Line 369
	mov	ecx, DWORD PTR [esi]
	mov	ecx, DWORD PTR [ecx+4]
	add	ecx, esi
	cmp	edi, ebx
	je	SHORT $LN71@operator@4
	mov	eax, DWORD PTR [ecx+8]
	or	eax, edi
	cmp	DWORD PTR [ecx+40], ebx
	jne	SHORT $LN73@operator@4
	or	eax, 4
$LN73@operator@4:
	push	ebx
	push	eax
	call	?clear@ios_base@std@@QAEXH_N@Z		; std::ios_base::clear
$LN71@operator@4:
; Line 370
	lea	ecx, DWORD PTR __Ok$[ebp]
	mov	DWORD PTR __$EHRec$[ebp+12], -1
	call	??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ ; std::basic_ostream<char,std::char_traits<char> >::sentry::~sentry
	mov	eax, esi
; Line 371
	mov	ecx, DWORD PTR __$EHRec$[ebp+4]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	edi
	pop	esi
	pop	ebx
	mov	esp, ebp
	pop	ebp
	ret	8
__catch$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z$0:
; Line 366
	mov	ecx, DWORD PTR _this$[ebp]
	mov	eax, DWORD PTR [ecx]
	mov	eax, DWORD PTR [eax+4]
	add	eax, ecx
	mov	ecx, DWORD PTR [eax+8]
	or	ecx, 4
	cmp	DWORD PTR [eax+40], 0
	jne	SHORT $LN39@operator@4
	or	ecx, 4
$LN39@operator@4:
	and	ecx, 23					; 00000017H
	test	DWORD PTR [eax+12], ecx
	mov	DWORD PTR [eax+8], ecx
	jne	SHORT $LN48@operator@4
	mov	DWORD PTR __$EHRec$[ebp+12], 0
	mov	eax, $LN13@operator@4
	ret	0
$LN13@operator@4:
	mov	esi, DWORD PTR _this$[ebp]
	xor	ebx, ebx
	mov	edi, ebx
	jmp	SHORT $LN12@operator@4
$LN48@operator@4:
	push	0
	push	0
	call	__CxxThrowException@8
$LN79@operator@4:
	int	3
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z$2:
	lea	ecx, DWORD PTR __Ok$[ebp]
	jmp	??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ ; std::basic_ostream<char,std::char_traits<char> >::sentry::~sentry
__unwindfunclet$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z$3:
	lea	ecx, DWORD PTR $T81954[ebp]
	jmp	??1locale@std@@QAE@XZ			; std::locale::~locale
__ehhandler$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx+12]
	mov	ecx, DWORD PTR [edx-56]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z ENDP ; std::basic_ostream<char,std::char_traits<char> >::operator<<
PUBLIC	?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z ; std::basic_ostream<char,std::char_traits<char> >::put
;	COMDAT xdata$x
; File c:\program files\microsoft visual studio 8\vc\include\ios
xdata$x	SEGMENT
__catchsym$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z$9 DD 040H
	DD	00H
	DD	00H
	DD	FLAT:__catch$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z$0
__tryblocktable$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z DD 01H
	DD	01H
	DD	05H
	DD	01H
	DD	FLAT:__catchsym$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z$9
__ehfuncinfo$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z DD 019930522H
	DD	06H
	DD	FLAT:__unwindtable$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z
	DD	01H
	DD	FLAT:__tryblocktable$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z
	DD	2 DUP(00H)
	DD	00H
	DD	01H
__unwindtable$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z$2
	DD	00H
	DD	00H
	DD	00H
	DD	00H
	DD	02H
	DD	00H
	DD	02H
	DD	00H
	DD	02H
	DD	00H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z
_TEXT	SEGMENT
__Ok$ = -32						; size = 8
__State$ = -24						; size = 4
_this$ = -20						; size = 4
__$EHRec$ = -16						; size = 16
__Ch$ = 8						; size = 1
?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z PROC ; std::basic_ostream<char,std::char_traits<char> >::put, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\ostream
; Line 512
	push	ebp
	mov	ebp, esp
	push	-1
	push	__ehhandler$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z
	mov	eax, DWORD PTR fs:0
	push	eax
	sub	esp, 20					; 00000014H
	push	ebx
	push	esi
	push	edi
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, ebp
	push	eax
	lea	eax, DWORD PTR __$EHRec$[ebp+4]
	mov	DWORD PTR fs:0, eax
	mov	DWORD PTR __$EHRec$[ebp], esp
	mov	edi, ecx
	mov	DWORD PTR _this$[ebp], edi
; Line 513
	xor	esi, esi
; Line 514
	push	edi
	lea	ecx, DWORD PTR __Ok$[ebp]
	xor	ebx, ebx
	mov	DWORD PTR __State$[ebp], esi
	call	??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z ; std::basic_ostream<char,std::char_traits<char> >::sentry::sentry
; Line 516
	cmp	BYTE PTR __Ok$[ebp+4], bl
	mov	DWORD PTR __$EHRec$[ebp+12], ebx
	jne	SHORT $LN4@put
; Line 517
	lea	esi, DWORD PTR [ebx+4]
; Line 518
	jmp	$LN11@put
$LN4@put:
; Line 522
	mov	eax, DWORD PTR [edi]
	mov	ecx, DWORD PTR [eax+4]
	mov	ecx, DWORD PTR [ecx+edi+40]
	mov	edx, DWORD PTR [ecx+36]
	cmp	DWORD PTR [edx], ebx
	mov	BYTE PTR __$EHRec$[ebp+12], 1
	je	SHORT $LN18@put
	mov	eax, DWORD PTR [ecx+52]
	cmp	DWORD PTR [eax], ebx
	jle	SHORT $LN18@put
	add	DWORD PTR [eax], -1
	mov	ecx, DWORD PTR [ecx+36]
	mov	eax, DWORD PTR [ecx]
	lea	edx, DWORD PTR [eax+1]
	mov	DWORD PTR [ecx], edx
	mov	cl, BYTE PTR __Ch$[ebp]
	mov	BYTE PTR [eax], cl
	movzx	eax, cl
	jmp	SHORT $LN19@put
$LN18@put:
	movzx	eax, BYTE PTR __Ch$[ebp]
	mov	edx, DWORD PTR [ecx]
	push	eax
	mov	eax, DWORD PTR [edx+4]
	call	eax
$LN19@put:
	cmp	eax, -1
	jne	SHORT $LN1@put
; Line 523
	lea	esi, DWORD PTR [eax+5]
$LN1@put:
; Line 524
	mov	DWORD PTR __$EHRec$[ebp+12], ebx
	jmp	SHORT $LN11@put
__catch$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z$0:
	mov	ecx, DWORD PTR _this$[ebp]
	mov	edx, DWORD PTR [ecx]
	mov	eax, DWORD PTR [edx+4]
	add	eax, ecx
	mov	ecx, DWORD PTR [eax+8]
	or	ecx, 4
	cmp	DWORD PTR [eax+40], 0
	jne	SHORT $LN41@put
	or	ecx, 4
$LN41@put:
	and	ecx, 23					; 00000017H
	test	DWORD PTR [eax+12], ecx
	mov	DWORD PTR [eax+8], ecx
	jne	SHORT $LN50@put
	mov	DWORD PTR __$EHRec$[ebp+12], 0
	mov	eax, $LN79@put
	ret	0
$LN79@put:
	mov	edi, DWORD PTR _this$[ebp]
	mov	esi, DWORD PTR __State$[ebp]
$LN11@put:
; Line 527
	mov	eax, DWORD PTR [edi]
	mov	ecx, DWORD PTR [eax+4]
	add	ecx, edi
	test	esi, esi
	je	SHORT $LN73@put
	mov	eax, DWORD PTR [ecx+8]
	or	eax, esi
	cmp	DWORD PTR [ecx+40], 0
	jne	SHORT $LN75@put
	or	eax, 4
$LN75@put:
	push	0
	push	eax
	call	?clear@ios_base@std@@QAEXH_N@Z		; std::ios_base::clear
$LN73@put:
; Line 528
	lea	ecx, DWORD PTR __Ok$[ebp]
	mov	DWORD PTR __$EHRec$[ebp+12], -1
	call	??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ ; std::basic_ostream<char,std::char_traits<char> >::sentry::~sentry
	mov	eax, edi
; Line 529
	mov	ecx, DWORD PTR __$EHRec$[ebp+4]
	mov	DWORD PTR fs:0, ecx
	pop	ecx
	pop	edi
	pop	esi
	pop	ebx
	mov	esp, ebp
	pop	ebp
	ret	4
; Line 524
$LN50@put:
	push	0
	push	0
	call	__CxxThrowException@8
$LN81@put:
	int	3
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z$2:
	lea	ecx, DWORD PTR __Ok$[ebp]
	jmp	??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ ; std::basic_ostream<char,std::char_traits<char> >::sentry::~sentry
__ehhandler$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z:
	mov	edx, DWORD PTR [esp+8]
	lea	eax, DWORD PTR [edx+12]
	mov	ecx, DWORD PTR [edx-36]
	xor	ecx, eax
	call	@__security_check_cookie@4
	mov	eax, OFFSET __ehfuncinfo$?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z
	jmp	___CxxFrameHandler3
text$x	ENDS
?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z ENDP ; std::basic_ostream<char,std::char_traits<char> >::put
PUBLIC	??_C@_02EAOCLKAK@ld?$AA@			; `string'
PUBLIC	__$ArrayPad$
EXTRN	_sprintf_s:PROC
;	COMDAT ??_C@_02EAOCLKAK@ld?$AA@
; File c:\program files\microsoft visual studio 8\vc\include\xiosbase
CONST	SEGMENT
??_C@_02EAOCLKAK@ld?$AA@ DB 'ld', 00H			; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DJ@Z
_TEXT	SEGMENT
__Fmt$ = -76						; size = 6
__Buf$ = -68						; size = 64
__$ArrayPad$ = -4					; size = 4
___$ReturnUdt$ = 8					; size = 4
__Dest$ = 12						; size = 12
__Iosbase$ = 24						; size = 4
__Fill$ = 28						; size = 1
__Val$ = 32						; size = 4
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DJ@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 962
	sub	esp, 76					; 0000004cH
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	mov	DWORD PTR __$ArrayPad$[esp+76], eax
	push	ebx
	mov	ebx, DWORD PTR __Iosbase$[esp+76]
; Line 967
	mov	eax, DWORD PTR [ebx+16]
	push	esi
	push	edi
	mov	edi, DWORD PTR ___$ReturnUdt$[esp+84]
	mov	esi, ecx
	mov	ecx, DWORD PTR __Val$[esp+84]
	push	ecx
	push	eax
	push	OFFSET ??_C@_02EAOCLKAK@ld?$AA@
	lea	edx, DWORD PTR __Fmt$[esp+100]
	push	edx
	push	esi
	call	?_Ifmt@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABAPADPADPBDH@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Ifmt
	add	esp, 16					; 00000010H
	push	eax
	lea	eax, DWORD PTR __Buf$[esp+96]
	push	64					; 00000040H
	push	eax
	call	_sprintf_s
	mov	edx, DWORD PTR __Fill$[esp+100]
	movq	xmm0, QWORD PTR __Dest$[esp+100]
	add	esp, 16					; 00000010H
	push	eax
	lea	ecx, DWORD PTR __Buf$[esp+92]
	push	ecx
	mov	ecx, DWORD PTR __Dest$[esp+100]
	push	edx
	push	ebx
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	push	edi
	movq	QWORD PTR [eax], xmm0
	push	esi
	mov	DWORD PTR [eax+8], ecx
	call	?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Iput
; Line 968
	mov	ecx, DWORD PTR __$ArrayPad$[esp+124]
	add	esp, 36					; 00000024H
	mov	eax, edi
	pop	edi
	pop	esi
	pop	ebx
	xor	ecx, esp
	call	@__security_check_cookie@4
	add	esp, 76					; 0000004cH
	ret	28					; 0000001cH
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DJ@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
_TEXT	ENDS
PUBLIC	??_C@_02BDDLJJBK@lu?$AA@			; `string'
PUBLIC	__$ArrayPad$
;	COMDAT ??_C@_02BDDLJJBK@lu?$AA@
; File c:\program files\microsoft visual studio 8\vc\include\xiosbase
CONST	SEGMENT
??_C@_02BDDLJJBK@lu?$AA@ DB 'lu', 00H			; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DK@Z
_TEXT	SEGMENT
__Fmt$ = -76						; size = 6
__Buf$ = -68						; size = 64
__$ArrayPad$ = -4					; size = 4
___$ReturnUdt$ = 8					; size = 4
__Dest$ = 12						; size = 12
__Iosbase$ = 24						; size = 4
__Fill$ = 28						; size = 1
__Val$ = 32						; size = 4
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DK@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 972
	sub	esp, 76					; 0000004cH
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	mov	DWORD PTR __$ArrayPad$[esp+76], eax
	push	ebx
	mov	ebx, DWORD PTR __Iosbase$[esp+76]
; Line 977
	mov	eax, DWORD PTR [ebx+16]
	push	esi
	push	edi
	mov	edi, DWORD PTR ___$ReturnUdt$[esp+84]
	mov	esi, ecx
	mov	ecx, DWORD PTR __Val$[esp+84]
	push	ecx
	push	eax
	push	OFFSET ??_C@_02BDDLJJBK@lu?$AA@
	lea	edx, DWORD PTR __Fmt$[esp+100]
	push	edx
	push	esi
	call	?_Ifmt@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABAPADPADPBDH@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Ifmt
	add	esp, 16					; 00000010H
	push	eax
	lea	eax, DWORD PTR __Buf$[esp+96]
	push	64					; 00000040H
	push	eax
	call	_sprintf_s
	mov	edx, DWORD PTR __Fill$[esp+100]
	movq	xmm0, QWORD PTR __Dest$[esp+100]
	add	esp, 16					; 00000010H
	push	eax
	lea	ecx, DWORD PTR __Buf$[esp+92]
	push	ecx
	mov	ecx, DWORD PTR __Dest$[esp+100]
	push	edx
	push	ebx
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	push	edi
	movq	QWORD PTR [eax], xmm0
	push	esi
	mov	DWORD PTR [eax+8], ecx
	call	?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Iput
; Line 978
	mov	ecx, DWORD PTR __$ArrayPad$[esp+124]
	add	esp, 36					; 00000024H
	mov	eax, edi
	pop	edi
	pop	esi
	pop	ebx
	xor	ecx, esp
	call	@__security_check_cookie@4
	add	esp, 76					; 0000004cH
	ret	28					; 0000001cH
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DK@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
_TEXT	ENDS
PUBLIC	??_C@_02HIKPPMOK@Ld?$AA@			; `string'
PUBLIC	__$ArrayPad$
;	COMDAT ??_C@_02HIKPPMOK@Ld?$AA@
; File c:\program files\microsoft visual studio 8\vc\include\xiosbase
CONST	SEGMENT
??_C@_02HIKPPMOK@Ld?$AA@ DB 'Ld', 00H			; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_J@Z
_TEXT	SEGMENT
__Fmt$ = -76						; size = 8
__Buf$ = -68						; size = 64
__$ArrayPad$ = -4					; size = 4
___$ReturnUdt$ = 8					; size = 4
__Dest$ = 12						; size = 12
__Iosbase$ = 24						; size = 4
__Fill$ = 28						; size = 1
__Val$ = 32						; size = 8
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_J@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 983
	sub	esp, 76					; 0000004cH
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	mov	DWORD PTR __$ArrayPad$[esp+76], eax
; Line 988
	mov	edx, DWORD PTR __Val$[esp+72]
	push	ebx
	mov	ebx, DWORD PTR __Iosbase$[esp+76]
	mov	eax, DWORD PTR [ebx+16]
	push	esi
	push	edi
	mov	edi, DWORD PTR ___$ReturnUdt$[esp+84]
	mov	esi, ecx
	mov	ecx, DWORD PTR __Val$[esp+88]
	push	ecx
	push	edx
	push	eax
	push	OFFSET ??_C@_02HIKPPMOK@Ld?$AA@
	lea	eax, DWORD PTR __Fmt$[esp+104]
	push	eax
	push	esi
	call	?_Ifmt@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABAPADPADPBDH@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Ifmt
	add	esp, 16					; 00000010H
	push	eax
	lea	ecx, DWORD PTR __Buf$[esp+100]
	push	64					; 00000040H
	push	ecx
	call	_sprintf_s
	movq	xmm0, QWORD PTR __Dest$[esp+104]
	mov	ecx, DWORD PTR __Dest$[esp+112]
	add	esp, 20					; 00000014H
	push	eax
	mov	eax, DWORD PTR __Fill$[esp+88]
	lea	edx, DWORD PTR __Buf$[esp+92]
	push	edx
	push	eax
	push	ebx
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	push	edi
	movq	QWORD PTR [eax], xmm0
	push	esi
	mov	DWORD PTR [eax+8], ecx
	call	?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Iput
; Line 989
	mov	ecx, DWORD PTR __$ArrayPad$[esp+124]
	add	esp, 36					; 00000024H
	mov	eax, edi
	pop	edi
	pop	esi
	pop	ebx
	xor	ecx, esp
	call	@__security_check_cookie@4
	add	esp, 76					; 0000004cH
	ret	32					; 00000020H
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_J@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
_TEXT	ENDS
PUBLIC	??_C@_02CLHGNPPK@Lu?$AA@			; `string'
PUBLIC	__$ArrayPad$
;	COMDAT ??_C@_02CLHGNPPK@Lu?$AA@
; File c:\program files\microsoft visual studio 8\vc\include\xiosbase
CONST	SEGMENT
??_C@_02CLHGNPPK@Lu?$AA@ DB 'Lu', 00H			; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_K@Z
_TEXT	SEGMENT
__Fmt$ = -76						; size = 8
__Buf$ = -68						; size = 64
__$ArrayPad$ = -4					; size = 4
___$ReturnUdt$ = 8					; size = 4
__Dest$ = 12						; size = 12
__Iosbase$ = 24						; size = 4
__Fill$ = 28						; size = 1
__Val$ = 32						; size = 8
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_K@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put, COMDAT
; _this$ = ecx
; File c:\program files\microsoft visual studio 8\vc\include\xlocnum
; Line 993
	sub	esp, 76					; 0000004cH
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	mov	DWORD PTR __$ArrayPad$[esp+76], eax
; Line 998
	mov	edx, DWORD PTR __Val$[esp+72]
	push	ebx
	mov	ebx, DWORD PTR __Iosbase$[esp+76]
	mov	eax, DWORD PTR [ebx+16]
	push	esi
	push	edi
	mov	edi, DWORD PTR ___$ReturnUdt$[esp+84]
	mov	esi, ecx
	mov	ecx, DWORD PTR __Val$[esp+88]
	push	ecx
	push	edx
	push	eax
	push	OFFSET ??_C@_02CLHGNPPK@Lu?$AA@
	lea	eax, DWORD PTR __Fmt$[esp+104]
	push	eax
	push	esi
	call	?_Ifmt@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABAPADPADPBDH@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Ifmt
	add	esp, 16					; 00000010H
	push	eax
	lea	ecx, DWORD PTR __Buf$[esp+100]
	push	64					; 00000040H
	push	ecx
	call	_sprintf_s
	movq	xmm0, QWORD PTR __Dest$[esp+104]
	mov	ecx, DWORD PTR __Dest$[esp+112]
	add	esp, 20					; 00000014H
	push	eax
	mov	eax, DWORD PTR __Fill$[esp+88]
	lea	edx, DWORD PTR __Buf$[esp+92]
	push	edx
	push	eax
	push	ebx
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	push	edi
	movq	QWORD PTR [eax], xmm0
	push	esi
	mov	DWORD PTR [eax+8], ecx
	call	?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Iput
; Line 999
	mov	ecx, DWORD PTR __$ArrayPad$[esp+124]
	add	esp, 36					; 00000024H
	mov	eax, edi
	pop	edi
	pop	esi
	pop	ebx
	xor	ecx, esp
	call	@__security_check_cookie@4
	add	esp, 76					; 0000004cH
	ret	32					; 00000020H
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@D_K@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
_TEXT	ENDS
PUBLIC	__real@38aa95a5b7f87a0f
PUBLIC	__real@4202a05f20000000
PUBLIC	__real@4733426172c74d82
PUBLIC	__real@8000000000000000
PUBLIC	___$ReturnUdt$GSCopy$
PUBLIC	__$ArrayPad$
;	COMDAT __real@38aa95a5b7f87a0f
CONST	SEGMENT
__real@38aa95a5b7f87a0f DQ 038aa95a5b7f87a0fr	; 1e-035
CONST	ENDS
;	COMDAT __real@4202a05f20000000
CONST	SEGMENT
__real@4202a05f20000000 DQ 04202a05f20000000r	; 1e+010
CONST	ENDS
;	COMDAT __real@4733426172c74d82
CONST	SEGMENT
__real@4733426172c74d82 DQ 04733426172c74d82r	; 1e+035
CONST	ENDS
;	COMDAT __real@8000000000000000
CONST	SEGMENT
__real@8000000000000000 DQ 08000000000000000r	; -0
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DN@Z
_TEXT	SEGMENT
_this$ = -128						; size = 4
___$ReturnUdt$GSCopy$ = -124				; size = 4
__Fmt$ = -120						; size = 8
__Buf$ = -112						; size = 108
__$ArrayPad$ = -4					; size = 4
___$ReturnUdt$ = 8					; size = 4
__Dest$ = 12						; size = 12
__Iosbase$ = 24						; size = 4
__Fill$ = 28						; size = 1
__Val$ = 32						; size = 8
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DN@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put, COMDAT
; _this$ = ecx
; Line 1004
	sub	esp, 128				; 00000080H
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	mov	DWORD PTR __$ArrayPad$[esp+128], eax
	mov	eax, DWORD PTR ___$ReturnUdt$[esp+124]
	push	ebx
	push	ebp
	mov	ebp, DWORD PTR __Iosbase$[esp+132]
; Line 1040
	mov	DWORD PTR ___$ReturnUdt$GSCopy$[esp+136], eax
	mov	eax, DWORD PTR [ebp+20]
	test	eax, eax
	push	esi
	push	edi
	mov	DWORD PTR _this$[esp+144], ecx
	jg	SHORT $LN13@do_put@2
; Line 1009
	test	DWORD PTR [ebp+16], 8192		; 00002000H
	jne	SHORT $LN13@do_put@2
	mov	eax, 6
$LN13@do_put@2:
	mov	esi, eax
; Line 1011
	cmp	esi, 36					; 00000024H
	mov	edx, 36					; 00000024H
	jg	SHORT $LN16@do_put@2
	mov	edx, esi
$LN16@do_put@2:
; Line 1016
	mov	ecx, DWORD PTR [ebp+16]
	mov	eax, ecx
	and	eax, 12288				; 00003000H
	sub	esi, edx
	xor	ebx, ebx
	xor	edi, edi
	cmp	eax, 8192				; 00002000H
	jne	$LN1@do_put@2
; Line 1018
	xorps	xmm3, xmm3
	movsd	xmm0, QWORD PTR __Val$[esp+140]
	comisd	xmm3, xmm0
	movsd	xmm4, QWORD PTR __real@8000000000000000
	jbe	$LN17@do_put@2
; Line 1020
	movapd	xmm1, xmm4
	subsd	xmm1, xmm0
	movapd	xmm0, xmm1
	mov	al, 1
	movsd	QWORD PTR __Val$[esp+140], xmm0
$LN9@do_put@2:
; Line 1022
	movsd	xmm1, QWORD PTR __real@4733426172c74d82
	comisd	xmm0, xmm1
	movsd	xmm2, QWORD PTR __real@4202a05f20000000
	jb	SHORT $LN6@do_put@2
$LL8@do_put@2:
	cmp	ebx, 5000				; 00001388H
	jae	SHORT $LN41@do_put@2
; Line 1023
	divsd	xmm0, xmm2
	add	ebx, 10					; 0000000aH
	comisd	xmm0, xmm1
	jae	SHORT $LL8@do_put@2
$LN41@do_put@2:
	movsd	QWORD PTR __Val$[esp+140], xmm0
$LN6@do_put@2:
; Line 1025
	comisd	xmm0, xmm3
	jbe	SHORT $LN2@do_put@2
; Line 1027
	cmp	esi, 10					; 0000000aH
	jl	SHORT $LN2@do_put@2
	movsd	xmm1, QWORD PTR __real@38aa95a5b7f87a0f
$LL4@do_put@2:
	comisd	xmm1, xmm0
	jb	SHORT $LN43@do_put@2
	cmp	edi, 5000				; 00001388H
	jae	SHORT $LN43@do_put@2
; Line 1030
	sub	esi, 10					; 0000000aH
	add	edi, 10					; 0000000aH
	cmp	esi, 10					; 0000000aH
	mulsd	xmm0, xmm2
	jge	SHORT $LL4@do_put@2
$LN43@do_put@2:
; Line 1029
	movsd	QWORD PTR __Val$[esp+140], xmm0
$LN2@do_put@2:
; Line 1033
	test	al, al
	je	SHORT $LN1@do_put@2
; Line 1034
	subsd	xmm4, xmm0
	movsd	QWORD PTR __Val$[esp+140], xmm4
$LN1@do_put@2:
; Line 1040
	test	cl, 32					; 00000020H
	mov	BYTE PTR __Fmt$[esp+144], 37		; 00000025H
	lea	eax, DWORD PTR __Fmt$[esp+145]
	je	SHORT $LN31@do_put@2
	mov	BYTE PTR __Fmt$[esp+145], 43		; 0000002bH
	lea	eax, DWORD PTR __Fmt$[esp+146]
$LN31@do_put@2:
	test	cl, 16					; 00000010H
	je	SHORT $LN30@do_put@2
	mov	BYTE PTR [eax], 35			; 00000023H
	add	eax, 1
$LN30@do_put@2:
	mov	BYTE PTR [eax], 46			; 0000002eH
	add	eax, 1
	mov	BYTE PTR [eax], 42			; 0000002aH
	and	ecx, 12288				; 00003000H
	add	eax, 1
	cmp	ecx, 8192				; 00002000H
	jne	SHORT $LN34@do_put@2
	mov	cl, 102					; 00000066H
	jmp	SHORT $LN35@do_put@2
$LN17@do_put@2:
; Line 1018
	xor	al, al
; Line 1019
	jmp	$LN9@do_put@2
; Line 1040
$LN34@do_put@2:
	cmp	ecx, 4096				; 00001000H
	setne	cl
	lea	ecx, DWORD PTR [ecx+ecx+101]
$LN35@do_put@2:
	fld	QWORD PTR __Val$[esp+140]
	sub	esp, 8
	fstp	QWORD PTR [esp]
	push	edx
	mov	BYTE PTR [eax], cl
	lea	ecx, DWORD PTR __Fmt$[esp+156]
	push	ecx
	lea	edx, DWORD PTR __Buf$[esp+160]
	push	108					; 0000006cH
	push	edx
	mov	BYTE PTR [eax+1], 0
	call	_sprintf_s
	mov	ecx, DWORD PTR __Fill$[esp+164]
	movq	xmm0, QWORD PTR __Dest$[esp+164]
	mov	edx, DWORD PTR __Dest$[esp+172]
	add	esp, 24					; 00000018H
	push	eax
	push	esi
	mov	esi, DWORD PTR ___$ReturnUdt$GSCopy$[esp+152]
	push	edi
	push	ebx
	lea	eax, DWORD PTR __Buf$[esp+160]
	push	eax
	push	ecx
	push	ebp
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], edx
	mov	eax, DWORD PTR _this$[esp+184]
	push	esi
	push	eax
	call	?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Fput
; Line 1041
	mov	ecx, DWORD PTR __$ArrayPad$[esp+192]
	add	esp, 48					; 00000030H
	pop	edi
	mov	eax, esi
	pop	esi
	pop	ebp
	pop	ebx
	xor	ecx, esp
	call	@__security_check_cookie@4
	add	esp, 128				; 00000080H
	ret	32					; 00000020H
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DN@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
_TEXT	ENDS
PUBLIC	___$ReturnUdt$GSCopy$
PUBLIC	__$ArrayPad$
; Function compile flags: /Ogtpy
;	COMDAT ?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DO@Z
_TEXT	SEGMENT
_this$ = -128						; size = 4
___$ReturnUdt$GSCopy$ = -124				; size = 4
__Fmt$ = -120						; size = 8
__Buf$ = -112						; size = 108
__$ArrayPad$ = -4					; size = 4
___$ReturnUdt$ = 8					; size = 4
__Dest$ = 12						; size = 12
__Iosbase$ = 24						; size = 4
__Fill$ = 28						; size = 1
__Val$ = 32						; size = 8
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DO@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put, COMDAT
; _this$ = ecx
; Line 1045
	sub	esp, 128				; 00000080H
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	mov	DWORD PTR __$ArrayPad$[esp+128], eax
	mov	eax, DWORD PTR ___$ReturnUdt$[esp+124]
	push	ebx
	push	ebp
	mov	ebp, DWORD PTR __Iosbase$[esp+132]
; Line 1081
	mov	DWORD PTR ___$ReturnUdt$GSCopy$[esp+136], eax
	mov	eax, DWORD PTR [ebp+20]
	test	eax, eax
	push	esi
	push	edi
	mov	DWORD PTR _this$[esp+144], ecx
	jg	SHORT $LN13@do_put@3
; Line 1050
	test	DWORD PTR [ebp+16], 8192		; 00002000H
	jne	SHORT $LN13@do_put@3
	mov	eax, 6
$LN13@do_put@3:
	mov	esi, eax
; Line 1052
	cmp	esi, 36					; 00000024H
	mov	edx, 36					; 00000024H
	jg	SHORT $LN16@do_put@3
	mov	edx, esi
$LN16@do_put@3:
; Line 1057
	mov	ecx, DWORD PTR [ebp+16]
	mov	eax, ecx
	and	eax, 12288				; 00003000H
	sub	esi, edx
	xor	ebx, ebx
	xor	edi, edi
	cmp	eax, 8192				; 00002000H
	jne	$LN1@do_put@3
; Line 1059
	xorps	xmm3, xmm3
	movsd	xmm0, QWORD PTR __Val$[esp+140]
	comisd	xmm3, xmm0
	movsd	xmm4, QWORD PTR __real@8000000000000000
	jbe	$LN17@do_put@3
; Line 1061
	movapd	xmm1, xmm4
	subsd	xmm1, xmm0
	movapd	xmm0, xmm1
	mov	al, 1
	movsd	QWORD PTR __Val$[esp+140], xmm0
$LN9@do_put@3:
; Line 1063
	movsd	xmm1, QWORD PTR __real@4733426172c74d82
	comisd	xmm0, xmm1
	movsd	xmm2, QWORD PTR __real@4202a05f20000000
	jb	SHORT $LN6@do_put@3
$LL8@do_put@3:
	cmp	ebx, 5000				; 00001388H
	jae	SHORT $LN41@do_put@3
; Line 1064
	divsd	xmm0, xmm2
	add	ebx, 10					; 0000000aH
	comisd	xmm0, xmm1
	jae	SHORT $LL8@do_put@3
$LN41@do_put@3:
	movsd	QWORD PTR __Val$[esp+140], xmm0
$LN6@do_put@3:
; Line 1066
	comisd	xmm0, xmm3
	jbe	SHORT $LN2@do_put@3
; Line 1068
	cmp	esi, 10					; 0000000aH
	jl	SHORT $LN2@do_put@3
	movsd	xmm1, QWORD PTR __real@38aa95a5b7f87a0f
$LL4@do_put@3:
	comisd	xmm1, xmm0
	jb	SHORT $LN43@do_put@3
	cmp	edi, 5000				; 00001388H
	jae	SHORT $LN43@do_put@3
; Line 1071
	sub	esi, 10					; 0000000aH
	add	edi, 10					; 0000000aH
	cmp	esi, 10					; 0000000aH
	mulsd	xmm0, xmm2
	jge	SHORT $LL4@do_put@3
$LN43@do_put@3:
; Line 1070
	movsd	QWORD PTR __Val$[esp+140], xmm0
$LN2@do_put@3:
; Line 1074
	test	al, al
	je	SHORT $LN1@do_put@3
; Line 1075
	subsd	xmm4, xmm0
	movsd	QWORD PTR __Val$[esp+140], xmm4
$LN1@do_put@3:
; Line 1081
	test	cl, 32					; 00000020H
	mov	BYTE PTR __Fmt$[esp+144], 37		; 00000025H
	lea	eax, DWORD PTR __Fmt$[esp+145]
	je	SHORT $LN31@do_put@3
	mov	BYTE PTR __Fmt$[esp+145], 43		; 0000002bH
	lea	eax, DWORD PTR __Fmt$[esp+146]
$LN31@do_put@3:
	test	cl, 16					; 00000010H
	je	SHORT $LN30@do_put@3
	mov	BYTE PTR [eax], 35			; 00000023H
	add	eax, 1
$LN30@do_put@3:
	mov	BYTE PTR [eax], 46			; 0000002eH
	add	eax, 1
	mov	BYTE PTR [eax], 42			; 0000002aH
	add	eax, 1
	mov	BYTE PTR [eax], 76			; 0000004cH
	and	ecx, 12288				; 00003000H
	add	eax, 1
	cmp	ecx, 8192				; 00002000H
	jne	SHORT $LN34@do_put@3
	mov	cl, 102					; 00000066H
	jmp	SHORT $LN35@do_put@3
$LN17@do_put@3:
; Line 1059
	xor	al, al
; Line 1060
	jmp	$LN9@do_put@3
; Line 1081
$LN34@do_put@3:
	cmp	ecx, 4096				; 00001000H
	setne	cl
	lea	ecx, DWORD PTR [ecx+ecx+101]
$LN35@do_put@3:
	fld	QWORD PTR __Val$[esp+140]
	sub	esp, 8
	fstp	QWORD PTR [esp]
	push	edx
	mov	BYTE PTR [eax], cl
	lea	ecx, DWORD PTR __Fmt$[esp+156]
	push	ecx
	lea	edx, DWORD PTR __Buf$[esp+160]
	push	108					; 0000006cH
	push	edx
	mov	BYTE PTR [eax+1], 0
	call	_sprintf_s
	mov	ecx, DWORD PTR __Fill$[esp+164]
	movq	xmm0, QWORD PTR __Dest$[esp+164]
	mov	edx, DWORD PTR __Dest$[esp+172]
	add	esp, 24					; 00000018H
	push	eax
	push	esi
	mov	esi, DWORD PTR ___$ReturnUdt$GSCopy$[esp+152]
	push	edi
	push	ebx
	lea	eax, DWORD PTR __Buf$[esp+160]
	push	eax
	push	ecx
	push	ebp
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	movq	QWORD PTR [eax], xmm0
	mov	DWORD PTR [eax+8], edx
	mov	eax, DWORD PTR _this$[esp+184]
	push	esi
	push	eax
	call	?_Fput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBDIIII@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Fput
; Line 1082
	mov	ecx, DWORD PTR __$ArrayPad$[esp+192]
	add	esp, 48					; 00000030H
	pop	edi
	mov	eax, esi
	pop	esi
	pop	ebp
	pop	ebx
	xor	ecx, esp
	call	@__security_check_cookie@4
	add	esp, 128				; 00000080H
	ret	32					; 00000020H
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DO@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
_TEXT	ENDS
PUBLIC	??_C@_02BBAHNLBA@?$CFp?$AA@			; `string'
PUBLIC	__$ArrayPad$
;	COMDAT ??_C@_02BBAHNLBA@?$CFp?$AA@
CONST	SEGMENT
??_C@_02BBAHNLBA@?$CFp?$AA@ DB '%p', 00H		; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBX@Z
_TEXT	SEGMENT
__Buf$ = -68						; size = 64
__$ArrayPad$ = -4					; size = 4
___$ReturnUdt$ = 8					; size = 4
__Dest$ = 12						; size = 12
__Iosbase$ = 24						; size = 4
__Fill$ = 28						; size = 1
__Val$ = 32						; size = 4
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBX@Z PROC ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put, COMDAT
; _this$ = ecx
; Line 1086
	sub	esp, 68					; 00000044H
	mov	eax, DWORD PTR ___security_cookie
	xor	eax, esp
	mov	DWORD PTR __$ArrayPad$[esp+68], eax
	mov	eax, DWORD PTR __Val$[esp+64]
	push	ebx
	mov	ebx, DWORD PTR __Iosbase$[esp+68]
	push	esi
	mov	esi, DWORD PTR ___$ReturnUdt$[esp+72]
	push	edi
; Line 1090
	push	eax
	push	OFFSET ??_C@_02BBAHNLBA@?$CFp?$AA@
	lea	eax, DWORD PTR __Buf$[esp+88]
	push	64					; 00000040H
	push	eax
	mov	edi, ecx
	call	_sprintf_s
	mov	edx, DWORD PTR __Fill$[esp+92]
	movq	xmm0, QWORD PTR __Dest$[esp+92]
	add	esp, 16					; 00000010H
	push	eax
	lea	ecx, DWORD PTR __Buf$[esp+84]
	push	ecx
	mov	ecx, DWORD PTR __Dest$[esp+92]
	push	edx
	push	ebx
	sub	esp, 12					; 0000000cH
	mov	eax, esp
	push	esi
	movq	QWORD PTR [eax], xmm0
	push	edi
	mov	DWORD PTR [eax+8], ecx
	call	?_Iput@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@ABA?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPADI@Z ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::_Iput
; Line 1091
	mov	ecx, DWORD PTR __$ArrayPad$[esp+116]
	add	esp, 36					; 00000024H
	pop	edi
	mov	eax, esi
	pop	esi
	pop	ebx
	xor	ecx, esp
	call	@__security_check_cookie@4
	add	esp, 68					; 00000044H
	ret	28					; 0000001cH
?do_put@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@MBE?AV?$ostreambuf_iterator@DU?$char_traits@D@std@@@2@V32@AAVios_base@2@DPBX@Z ENDP ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::do_put
_TEXT	ENDS
PUBLIC	?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z ; std::endl
; Function compile flags: /Ogtpy
;	COMDAT ?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z
_TEXT	SEGMENT
__Ostr$ = 8						; size = 4
?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z PROC ; std::endl, COMDAT
; File c:\program files\microsoft visual studio 8\vc\include\ostream
; Line 970
	push	esi
; Line 971
	mov	esi, DWORD PTR __Ostr$[esp]
	push	10					; 0000000aH
	mov	ecx, esi
	call	?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z ; std::basic_ostream<char,std::char_traits<char> >::put
; Line 972
	mov	ecx, esi
	call	?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@XZ ; std::basic_ostream<char,std::char_traits<char> >::flush
; Line 973
	mov	eax, esi
	pop	esi
; Line 974
	ret	0
?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z ENDP ; std::endl
_TEXT	ENDS
PUBLIC	_main
EXTRN	?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A:BYTE ; std::cout
EXTRN	__imp__SetPriorityClass@8:PROC
EXTRN	__imp__GetCurrentProcess@0:PROC
; Function compile flags: /Ogtpy
;	COMDAT _main
_TEXT	SEGMENT
_y$82712 = -8						; size = 8
_x$82711 = -8						; size = 8
$T82553 = -8						; size = 8
_y$82589 = -8						; size = 8
_x$82588 = -8						; size = 8
_main	PROC						; COMDAT
; File c:\tools\eclipse\workspace\autopilot\test\pow2_test.cpp
; Line 41
	push	ebp
	mov	ebp, esp
	and	esp, -8					; fffffff8H
	sub	esp, 12					; 0000000cH
	push	ebx
	push	esi
	push	edi
; Line 43
	push	256					; 00000100H
	call	DWORD PTR __imp__GetCurrentProcess@0
	push	eax
	call	DWORD PTR __imp__SetPriorityClass@8
; Line 47
	cpuid
	rdtsc
; Line 48
	fld	QWORD PTR __real@400921fb54442d18
	movsd	xmm2, QWORD PTR __real@3ff0000000000000
	mov	edi, edx
	xor	ecx, ecx
	mov	esi, eax
	xor	edx, edx
$LN6@main:
; Line 49
	fst	QWORD PTR _x$82588[esp+24]
	mov	eax, 2
	fld	QWORD PTR _x$82588[esp+24]
	movapd	xmm1, xmm2
	fstp	QWORD PTR $T82553[esp+24]
	movsd	xmm0, QWORD PTR $T82553[esp+24]
$LN19@main:
	test	al, 1
	je	SHORT $LN16@main
	mulsd	xmm1, xmm0
$LN16@main:
	shr	eax, 1
	je	SHORT $LN86@main
	movapd	xmm3, xmm0
	mulsd	xmm3, xmm0
	movapd	xmm0, xmm3
	jmp	SHORT $LN19@main
$LN86@main:
; Line 48
	add	ecx, 1
	adc	edx, 0
; Line 49
	movsd	QWORD PTR _y$82589[esp+24], xmm1
	js	SHORT $LN6@main
; Line 48
	jg	SHORT $LN104@main
	cmp	ecx, 10000000				; 00989680H
	jb	SHORT $LN6@main
$LN104@main:
	fstp	ST(0)
; Line 51
	cpuid
	rdtsc
; Line 53
	sub	eax, esi
	sbb	edx, edi
	push	edx
	push	eax
	mov	ecx, OFFSET ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A ; std::cout
	call	??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z ; std::basic_ostream<char,std::char_traits<char> >::operator<<
	mov	esi, eax
	push	10					; 0000000aH
	mov	ecx, esi
	call	?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z ; std::basic_ostream<char,std::char_traits<char> >::put
	mov	eax, DWORD PTR [esi]
	mov	ecx, DWORD PTR [eax+4]
	lea	eax, DWORD PTR [ecx+esi]
	mov	ecx, DWORD PTR [eax+8]
	xor	edi, edi
	test	cl, 6
	jne	SHORT $LN32@main
	mov	eax, DWORD PTR [eax+40]
	mov	edx, DWORD PTR [eax]
	mov	ecx, eax
	mov	eax, DWORD PTR [edx+48]
	call	eax
	cmp	eax, -1
	jne	SHORT $LN32@main
	mov	edi, 4
$LN32@main:
	mov	ecx, DWORD PTR [esi]
	mov	ecx, DWORD PTR [ecx+4]
	add	ecx, esi
	test	edi, edi
	je	SHORT $LN48@main
	mov	eax, DWORD PTR [ecx+8]
	or	eax, edi
	cmp	DWORD PTR [ecx+40], 0
	jne	SHORT $LN50@main
	or	eax, 4
$LN50@main:
	push	0
	push	eax
	call	?clear@ios_base@std@@QAEXH_N@Z		; std::ios_base::clear
$LN48@main:
; Line 55
	cpuid
	rdtsc
; Line 56
	fld	QWORD PTR __real@400921fb54442d18
	mov	esi, eax
	xor	eax, eax
	mov	edi, edx
	xor	ecx, ecx
$LN3@main:
; Line 57
	fst	QWORD PTR _x$82711[esp+24]
	add	eax, 1
	adc	ecx, 0
	fld	QWORD PTR _x$82711[esp+24]
	fmul	QWORD PTR _x$82711[esp+24]
	fstp	QWORD PTR _y$82712[esp+24]
	js	SHORT $LN3@main
; Line 56
	jg	SHORT $LN111@main
	cmp	eax, 10000000				; 00989680H
	jb	SHORT $LN3@main
$LN111@main:
	fstp	ST(0)
; Line 59
	cpuid
	rdtsc
; Line 61
	sub	eax, esi
	sbb	edx, edi
	push	edx
	push	eax
	mov	ecx, OFFSET ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A ; std::cout
	call	??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@_J@Z ; std::basic_ostream<char,std::char_traits<char> >::operator<<
	mov	esi, eax
	push	10					; 0000000aH
	mov	ecx, esi
	call	?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@D@Z ; std::basic_ostream<char,std::char_traits<char> >::put
	mov	edx, DWORD PTR [esi]
	mov	eax, DWORD PTR [edx+4]
	add	eax, esi
	xor	edi, edi
	test	BYTE PTR [eax+8], 6
	jne	SHORT $LN62@main
	mov	eax, DWORD PTR [eax+40]
	mov	edx, DWORD PTR [eax]
	mov	ecx, eax
	mov	eax, DWORD PTR [edx+48]
	call	eax
	cmp	eax, -1
	jne	SHORT $LN62@main
	mov	edi, 4
$LN62@main:
	mov	ecx, DWORD PTR [esi]
	mov	ecx, DWORD PTR [ecx+4]
	add	ecx, esi
	test	edi, edi
	je	SHORT $LN90@main
	mov	eax, DWORD PTR [ecx+8]
	or	eax, edi
	cmp	DWORD PTR [ecx+40], 0
	jne	SHORT $LN80@main
	or	eax, 4
$LN80@main:
	push	0
	push	eax
	call	?clear@ios_base@std@@QAEXH_N@Z		; std::ios_base::clear
$LN90@main:
; Line 64
	pop	edi
	pop	esi
	xor	eax, eax
	pop	ebx
	mov	esp, ebp
	pop	ebp
	ret	0
_main	ENDP
_TEXT	ENDS
PUBLIC	?id@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@2V0locale@2@A ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::id
PUBLIC	?id@?$numpunct@D@std@@2V0locale@2@A		; std::numpunct<char>::id
;	COMDAT ?id@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@2V0locale@2@A
; File c:\program files\microsoft visual studio 8\vc\include\xlocale
_BSS	SEGMENT
?id@?$num_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@2V0locale@2@A DD 01H DUP (?) ; std::num_put<char,std::ostreambuf_iterator<char,std::char_traits<char> > >::id
_BSS	ENDS
;	COMDAT ?id@?$numpunct@D@std@@2V0locale@2@A
_BSS	SEGMENT
?id@?$numpunct@D@std@@2V0locale@2@A DD 01H DUP (?)	; std::numpunct<char>::id
_BSS	ENDS
END
