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

	TITLE	d:\# METIN2\work in progress\source client\Client\EterBase\CPostIt.cpp
	.686P
	.XMM
	include listing.inc
	.model	flat

INCLUDELIB LIBCMT
INCLUDELIB OLDNAMES

PUBLIC	??_C@_0P@GHFPNOJB@bad?5allocation?$AA@		; `string'
PUBLIC	?_Value@?$_Is_swap_move@U_Swap_move_tag@std@@@std@@2_NB ; std::_Is_swap_move<std::_Swap_move_tag>::_Value
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	?hexfloat@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::hexfloat
PUBLIC	?boolalpha@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::boolalpha
PUBLIC	?_Stdio@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::_Stdio
PUBLIC	?adjustfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::adjustfield
PUBLIC	?basefield@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::basefield
PUBLIC	?floatfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::floatfield
PUBLIC	?goodbit@?$_Iosb@H@std@@2W4_Iostate@12@B	; std::_Iosb<int>::goodbit
PUBLIC	?eofbit@?$_Iosb@H@std@@2W4_Iostate@12@B		; std::_Iosb<int>::eofbit
PUBLIC	?failbit@?$_Iosb@H@std@@2W4_Iostate@12@B	; std::_Iosb<int>::failbit
PUBLIC	?badbit@?$_Iosb@H@std@@2W4_Iostate@12@B		; std::_Iosb<int>::badbit
PUBLIC	?_Hardfail@?$_Iosb@H@std@@2W4_Iostate@12@B	; std::_Iosb<int>::_Hardfail
PUBLIC	?in@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::in
PUBLIC	?out@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::out
PUBLIC	?ate@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::ate
PUBLIC	?app@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::app
PUBLIC	?trunc@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::trunc
PUBLIC	?_Nocreate@?$_Iosb@H@std@@2W4_Openmode@12@B	; std::_Iosb<int>::_Nocreate
PUBLIC	?_Noreplace@?$_Iosb@H@std@@2W4_Openmode@12@B	; std::_Iosb<int>::_Noreplace
PUBLIC	?binary@?$_Iosb@H@std@@2W4_Openmode@12@B	; std::_Iosb<int>::binary
PUBLIC	?beg@?$_Iosb@H@std@@2W4_Seekdir@12@B		; std::_Iosb<int>::beg
PUBLIC	?cur@?$_Iosb@H@std@@2W4_Seekdir@12@B		; std::_Iosb<int>::cur
PUBLIC	?end@?$_Iosb@H@std@@2W4_Seekdir@12@B		; std::_Iosb<int>::end
PUBLIC	?value@?$integral_constant@_N$0A@@tr1@std@@2_NB	; std::tr1::integral_constant<bool,0>::value
PUBLIC	?value@?$integral_constant@_N$00@tr1@std@@2_NB	; std::tr1::integral_constant<bool,1>::value
;	COMDAT ?value@?$integral_constant@_N$00@tr1@std@@2_NB
CONST	SEGMENT
?value@?$integral_constant@_N$00@tr1@std@@2_NB DB 01H	; std::tr1::integral_constant<bool,1>::value
CONST	ENDS
;	COMDAT ?value@?$integral_constant@_N$0A@@tr1@std@@2_NB
CONST	SEGMENT
?value@?$integral_constant@_N$0A@@tr1@std@@2_NB DB 00H	; std::tr1::integral_constant<bool,0>::value
CONST	ENDS
;	COMDAT ?end@?$_Iosb@H@std@@2W4_Seekdir@12@B
CONST	SEGMENT
?end@?$_Iosb@H@std@@2W4_Seekdir@12@B DD 02H		; std::_Iosb<int>::end
CONST	ENDS
;	COMDAT ?cur@?$_Iosb@H@std@@2W4_Seekdir@12@B
CONST	SEGMENT
?cur@?$_Iosb@H@std@@2W4_Seekdir@12@B DD 01H		; std::_Iosb<int>::cur
CONST	ENDS
;	COMDAT ?beg@?$_Iosb@H@std@@2W4_Seekdir@12@B
CONST	SEGMENT
?beg@?$_Iosb@H@std@@2W4_Seekdir@12@B DD 00H		; std::_Iosb<int>::beg
CONST	ENDS
;	COMDAT ?binary@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?binary@?$_Iosb@H@std@@2W4_Openmode@12@B DD 020H	; std::_Iosb<int>::binary
CONST	ENDS
;	COMDAT ?_Noreplace@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?_Noreplace@?$_Iosb@H@std@@2W4_Openmode@12@B DD 080H	; std::_Iosb<int>::_Noreplace
CONST	ENDS
;	COMDAT ?_Nocreate@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?_Nocreate@?$_Iosb@H@std@@2W4_Openmode@12@B DD 040H	; std::_Iosb<int>::_Nocreate
CONST	ENDS
;	COMDAT ?trunc@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?trunc@?$_Iosb@H@std@@2W4_Openmode@12@B DD 010H		; std::_Iosb<int>::trunc
CONST	ENDS
;	COMDAT ?app@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?app@?$_Iosb@H@std@@2W4_Openmode@12@B DD 08H		; std::_Iosb<int>::app
CONST	ENDS
;	COMDAT ?ate@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?ate@?$_Iosb@H@std@@2W4_Openmode@12@B DD 04H		; std::_Iosb<int>::ate
CONST	ENDS
;	COMDAT ?out@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?out@?$_Iosb@H@std@@2W4_Openmode@12@B DD 02H		; std::_Iosb<int>::out
CONST	ENDS
;	COMDAT ?in@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?in@?$_Iosb@H@std@@2W4_Openmode@12@B DD 01H		; std::_Iosb<int>::in
CONST	ENDS
;	COMDAT ?_Hardfail@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?_Hardfail@?$_Iosb@H@std@@2W4_Iostate@12@B DD 010H	; std::_Iosb<int>::_Hardfail
CONST	ENDS
;	COMDAT ?badbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?badbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 04H		; std::_Iosb<int>::badbit
CONST	ENDS
;	COMDAT ?failbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?failbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 02H		; std::_Iosb<int>::failbit
CONST	ENDS
;	COMDAT ?eofbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?eofbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 01H		; std::_Iosb<int>::eofbit
CONST	ENDS
;	COMDAT ?goodbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?goodbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 00H		; std::_Iosb<int>::goodbit
CONST	ENDS
;	COMDAT ?floatfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?floatfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 03000H	; std::_Iosb<int>::floatfield
CONST	ENDS
;	COMDAT ?basefield@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?basefield@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0e00H	; std::_Iosb<int>::basefield
CONST	ENDS
;	COMDAT ?adjustfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?adjustfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 01c0H	; std::_Iosb<int>::adjustfield
CONST	ENDS
;	COMDAT ?_Stdio@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?_Stdio@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 08000H	; std::_Iosb<int>::_Stdio
CONST	ENDS
;	COMDAT ?boolalpha@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?boolalpha@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 04000H	; std::_Iosb<int>::boolalpha
CONST	ENDS
;	COMDAT ?hexfloat@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?hexfloat@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 03000H	; std::_Iosb<int>::hexfloat
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
;	COMDAT ?_Value@?$_Is_swap_move@U_Swap_move_tag@std@@@std@@2_NB
CONST	SEGMENT
?_Value@?$_Is_swap_move@U_Swap_move_tag@std@@@std@@2_NB DB 01H ; std::_Is_swap_move<std::_Swap_move_tag>::_Value
CONST	ENDS
PUBLIC	?assign@?$char_traits@D@std@@SAXAADABD@Z	; std::char_traits<char>::assign
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd
;	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

; 425  : 		_Left = _Right;

  00000	8b 44 24 08	 mov	 eax, DWORD PTR __Right$[esp-4]
  00004	8a 08		 mov	 cl, BYTE PTR [eax]
  00006	8b 54 24 04	 mov	 edx, DWORD PTR __Left$[esp-4]
  0000a	88 0a		 mov	 BYTE PTR [edx], cl

; 426  : 		}

  0000c	c3		 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

; 448  : //		_DEBUG_POINTER(_First);
; 449  : 		return (::strlen(_First));

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __First$[esp-4]
  00004	8d 50 01	 lea	 edx, DWORD PTR [eax+1]
$LL3@length:
  00007	8a 08		 mov	 cl, BYTE PTR [eax]
  00009	40		 inc	 eax
  0000a	84 c9		 test	 cl, cl
  0000c	75 f9		 jne	 SHORT $LL3@length
  0000e	2b c2		 sub	 eax, edx

; 450  : 		}

  00010	c3		 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

; 463  : //		_DEBUG_POINTER(_First1);
; 464  : //		_DEBUG_POINTER(_First2);
; 465  : 		_CRT_SECURE_MEMCPY(_First1, _Size_in_bytes, _First2, _Count);

  00000	8b 44 24 10	 mov	 eax, DWORD PTR __Count$[esp-4]
  00004	8b 4c 24 0c	 mov	 ecx, DWORD PTR __First2$[esp-4]
  00008	8b 54 24 08	 mov	 edx, DWORD PTR __Size_in_bytes$[esp-4]
  0000c	56		 push	 esi
  0000d	8b 74 24 08	 mov	 esi, DWORD PTR __First1$[esp]
  00011	50		 push	 eax
  00012	51		 push	 ecx
  00013	52		 push	 edx
  00014	56		 push	 esi
  00015	e8 00 00 00 00	 call	 _memcpy_s
  0001a	83 c4 10	 add	 esp, 16			; 00000010H

; 466  : 		return _First1;

  0001d	8b c6		 mov	 eax, esi
  0001f	5e		 pop	 esi

; 467  : 		}

  00020	c3		 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

; 487  : //		_DEBUG_POINTER(_First1);
; 488  : //		_DEBUG_POINTER(_First2);
; 489  : 		_CRT_SECURE_MEMMOVE(_First1, _Size_in_bytes, _First2, _Count);

  00000	8b 44 24 10	 mov	 eax, DWORD PTR __Count$[esp-4]
  00004	8b 4c 24 0c	 mov	 ecx, DWORD PTR __First2$[esp-4]
  00008	8b 54 24 08	 mov	 edx, DWORD PTR __Size_in_bytes$[esp-4]
  0000c	56		 push	 esi
  0000d	8b 74 24 08	 mov	 esi, DWORD PTR __First1$[esp]
  00011	50		 push	 eax
  00012	51		 push	 ecx
  00013	52		 push	 edx
  00014	56		 push	 esi
  00015	e8 00 00 00 00	 call	 _memmove_s
  0001a	83 c4 10	 add	 esp, 16			; 00000010H

; 490  : 		return _First1;

  0001d	8b c6		 mov	 eax, esi
  0001f	5e		 pop	 esi

; 491  : 		}

  00020	c3		 ret	 0
?_Move_s@?$char_traits@D@std@@SAPADPADIPBDI@Z ENDP	; std::char_traits<char>::_Move_s
_TEXT	ENDS
PUBLIC	??0_Aux_cont@std@@QAE@QBV_Container_base_aux@1@@Z ; std::_Aux_cont::_Aux_cont
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
;	COMDAT ??0_Aux_cont@std@@QAE@QBV_Container_base_aux@1@@Z
_TEXT	SEGMENT
__Pcont$ = 8						; size = 4
??0_Aux_cont@std@@QAE@QBV_Container_base_aux@1@@Z PROC	; std::_Aux_cont::_Aux_cont, COMDAT
; _this$ = ecx

; 364  : 	explicit _Aux_cont(const _Container_base_aux * const _Pcont)

  00000	8b c1		 mov	 eax, ecx
  00002	8b 4c 24 04	 mov	 ecx, DWORD PTR __Pcont$[esp-4]
  00006	89 08		 mov	 DWORD PTR [eax], ecx
  00008	c2 04 00	 ret	 4
??0_Aux_cont@std@@QAE@QBV_Container_base_aux@1@@Z ENDP	; std::_Aux_cont::_Aux_cont
_TEXT	ENDS
PUBLIC	?_Getcont@_Aux_cont@std@@QBEPBV_Container_base_aux@2@XZ ; std::_Aux_cont::_Getcont
; Function compile flags: /Ogtpy
;	COMDAT ?_Getcont@_Aux_cont@std@@QBEPBV_Container_base_aux@2@XZ
_TEXT	SEGMENT
?_Getcont@_Aux_cont@std@@QBEPBV_Container_base_aux@2@XZ PROC ; std::_Aux_cont::_Getcont, COMDAT
; _this$ = ecx

; 369  : 		return _Mycontainer;

  00000	8b 01		 mov	 eax, DWORD PTR [ecx]

; 370  : 		}

  00002	c3		 ret	 0
?_Getcont@_Aux_cont@std@@QBEPBV_Container_base_aux@2@XZ ENDP ; std::_Aux_cont::_Getcont
_TEXT	ENDS
PUBLIC	??0_Container_base_aux@std@@QAE@XZ		; std::_Container_base_aux::_Container_base_aux
; Function compile flags: /Ogtpy
;	COMDAT ??0_Container_base_aux@std@@QAE@XZ
_TEXT	SEGMENT
??0_Container_base_aux@std@@QAE@XZ PROC			; std::_Container_base_aux::_Container_base_aux, COMDAT
; _this$ = ecx

; 379  : 	_Container_base_aux()

  00000	8b c1		 mov	 eax, ecx

; 380  : 		{
; 381  : 		// Do nothing: _Container_base_aux_alloc_real() will construct the aux object.
; 382  : 		}

  00002	c3		 ret	 0
??0_Container_base_aux@std@@QAE@XZ ENDP			; std::_Container_base_aux::_Container_base_aux
_TEXT	ENDS
PUBLIC	??1_Container_base_aux@std@@QAE@XZ		; std::_Container_base_aux::~_Container_base_aux
; Function compile flags: /Ogtpy
;	COMDAT ??1_Container_base_aux@std@@QAE@XZ
_TEXT	SEGMENT
??1_Container_base_aux@std@@QAE@XZ PROC			; std::_Container_base_aux::~_Container_base_aux, COMDAT
; _this$ = ecx

; 403  : 		// Do nothing: ~_Container_base_aux_alloc_real() previously destroyed the aux object.
; 404  : 		}

  00000	c3		 ret	 0
??1_Container_base_aux@std@@QAE@XZ ENDP			; std::_Container_base_aux::~_Container_base_aux
_TEXT	ENDS
PUBLIC	??0_Iterator_base_aux@std@@QAE@XZ		; std::_Iterator_base_aux::_Iterator_base_aux
; Function compile flags: /Ogtpy
;	COMDAT ??0_Iterator_base_aux@std@@QAE@XZ
_TEXT	SEGMENT
??0_Iterator_base_aux@std@@QAE@XZ PROC			; std::_Iterator_base_aux::_Iterator_base_aux, COMDAT
; _this$ = ecx

; 448  : 	_Iterator_base_aux()

  00000	8b c1		 mov	 eax, ecx
  00002	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], 0
  00008	c3		 ret	 0
??0_Iterator_base_aux@std@@QAE@XZ ENDP			; std::_Iterator_base_aux::_Iterator_base_aux
_TEXT	ENDS
PUBLIC	?_Set_container@_Iterator_base_aux@std@@QAEXQBV_Container_base_aux@2@@Z ; std::_Iterator_base_aux::_Set_container
; Function compile flags: /Ogtpy
;	COMDAT ?_Set_container@_Iterator_base_aux@std@@QAEXQBV_Container_base_aux@2@@Z
_TEXT	SEGMENT
__Pcont$ = 8						; size = 4
?_Set_container@_Iterator_base_aux@std@@QAEXQBV_Container_base_aux@2@@Z PROC ; std::_Iterator_base_aux::_Set_container, COMDAT
; _this$ = ecx

; 453  : 		_Myaux = _Pcont->_Myownedaux;

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Pcont$[esp-4]
  00004	8b 10		 mov	 edx, DWORD PTR [eax]
  00006	89 11		 mov	 DWORD PTR [ecx], edx

; 454  : 		}

  00008	c2 04 00	 ret	 4
?_Set_container@_Iterator_base_aux@std@@QAEXQBV_Container_base_aux@2@@Z ENDP ; std::_Iterator_base_aux::_Set_container
_TEXT	ENDS
PUBLIC	?_Getmycont@_Iterator_base_aux@std@@QBEPBV_Container_base_aux@2@XZ ; std::_Iterator_base_aux::_Getmycont
; Function compile flags: /Ogtpy
;	COMDAT ?_Getmycont@_Iterator_base_aux@std@@QBEPBV_Container_base_aux@2@XZ
_TEXT	SEGMENT
?_Getmycont@_Iterator_base_aux@std@@QBEPBV_Container_base_aux@2@XZ PROC ; std::_Iterator_base_aux::_Getmycont, COMDAT
; _this$ = ecx

; 458  : 		return _Myaux ? _Myaux->_Getcont() : 0;

  00000	8b 01		 mov	 eax, DWORD PTR [ecx]
  00002	85 c0		 test	 eax, eax
  00004	74 03		 je	 SHORT $LN3@Getmycont
  00006	8b 00		 mov	 eax, DWORD PTR [eax]

; 459  : 		}

  00008	c3		 ret	 0
$LN3@Getmycont:

; 458  : 		return _Myaux ? _Myaux->_Getcont() : 0;

  00009	33 c0		 xor	 eax, eax

; 459  : 		}

  0000b	c3		 ret	 0
?_Getmycont@_Iterator_base_aux@std@@QBEPBV_Container_base_aux@2@XZ ENDP ; std::_Iterator_base_aux::_Getmycont
_TEXT	ENDS
PUBLIC	?_Same_container@_Iterator_base_aux@std@@QBE_NABV12@@Z ; std::_Iterator_base_aux::_Same_container
; Function compile flags: /Ogtpy
;	COMDAT ?_Same_container@_Iterator_base_aux@std@@QBE_NABV12@@Z
_TEXT	SEGMENT
__Other$ = 8						; size = 4
?_Same_container@_Iterator_base_aux@std@@QBE_NABV12@@Z PROC ; std::_Iterator_base_aux::_Same_container, COMDAT
; _this$ = ecx

; 463  : 		return _Myaux == _Other._Myaux;

  00000	8b 01		 mov	 eax, DWORD PTR [ecx]
  00002	8b 54 24 04	 mov	 edx, DWORD PTR __Other$[esp-4]
  00006	33 c9		 xor	 ecx, ecx
  00008	3b 02		 cmp	 eax, DWORD PTR [edx]
  0000a	0f 94 c1	 sete	 cl
  0000d	8a c1		 mov	 al, cl

; 464  : 		}

  0000f	c2 04 00	 ret	 4
?_Same_container@_Iterator_base_aux@std@@QBE_NABV12@@Z ENDP ; std::_Iterator_base_aux::_Same_container
_TEXT	ENDS
PUBLIC	?_Has_container@_Iterator_base_aux@std@@QBE_NXZ	; std::_Iterator_base_aux::_Has_container
; Function compile flags: /Ogtpy
;	COMDAT ?_Has_container@_Iterator_base_aux@std@@QBE_NXZ
_TEXT	SEGMENT
?_Has_container@_Iterator_base_aux@std@@QBE_NXZ PROC	; std::_Iterator_base_aux::_Has_container, COMDAT
; _this$ = ecx

; 468  : 		return _Myaux != 0;

  00000	33 c0		 xor	 eax, eax
  00002	39 01		 cmp	 DWORD PTR [ecx], eax
  00004	0f 95 c0	 setne	 al

; 469  : 		}

  00007	c3		 ret	 0
?_Has_container@_Iterator_base_aux@std@@QBE_NXZ ENDP	; std::_Iterator_base_aux::_Has_container
_TEXT	ENDS
PUBLIC	??_7bad_alloc@std@@6B@				; std::bad_alloc::`vftable'
PUBLIC	??0bad_alloc@std@@QAE@PBD@Z			; std::bad_alloc::bad_alloc
PUBLIC	??_R4bad_alloc@std@@6B@				; std::bad_alloc::`RTTI Complete Object Locator'
PUBLIC	??_R0?AVbad_alloc@std@@@8			; std::bad_alloc `RTTI Type Descriptor'
PUBLIC	??_R3bad_alloc@std@@8				; std::bad_alloc::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2bad_alloc@std@@8				; std::bad_alloc::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@bad_alloc@std@@8			; std::bad_alloc::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R1A@?0A@EA@exception@std@@8			; std::exception::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVexception@std@@@8			; std::exception `RTTI Type Descriptor'
PUBLIC	??_R3exception@std@@8				; std::exception::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2exception@std@@8				; std::exception::`RTTI Base Class Array'
EXTRN	??0exception@std@@QAE@ABQBD@Z:PROC		; std::exception::exception
EXTRN	??_7type_info@@6B@:QWORD			; type_info::`vftable'
EXTRN	??_Ebad_alloc@std@@UAEPAXI@Z:PROC		; std::bad_alloc::`vector deleting destructor'
EXTRN	?what@exception@std@@UBEPBDXZ:PROC		; std::exception::what
;	COMDAT ??_R2exception@std@@8
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\exception
rdata$r	SEGMENT
??_R2exception@std@@8 DD FLAT:??_R1A@?0A@EA@exception@std@@8 ; std::exception::`RTTI Base Class Array'
rdata$r	ENDS
;	COMDAT ??_R3exception@std@@8
rdata$r	SEGMENT
??_R3exception@std@@8 DD 00H				; std::exception::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	01H
	DD	FLAT:??_R2exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVexception@std@@@8
_DATA	SEGMENT
??_R0?AVexception@std@@@8 DD FLAT:??_7type_info@@6B@	; std::exception `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVexception@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R1A@?0A@EA@exception@std@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@exception@std@@8 DD FLAT:??_R0?AVexception@std@@@8 ; std::exception::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	00H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@bad_alloc@std@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@bad_alloc@std@@8 DD FLAT:??_R0?AVbad_alloc@std@@@8 ; std::bad_alloc::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3bad_alloc@std@@8
rdata$r	ENDS
;	COMDAT ??_R2bad_alloc@std@@8
rdata$r	SEGMENT
??_R2bad_alloc@std@@8 DD FLAT:??_R1A@?0A@EA@bad_alloc@std@@8 ; std::bad_alloc::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R3bad_alloc@std@@8
rdata$r	SEGMENT
??_R3bad_alloc@std@@8 DD 00H				; std::bad_alloc::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2bad_alloc@std@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVbad_alloc@std@@@8
_DATA	SEGMENT
??_R0?AVbad_alloc@std@@@8 DD FLAT:??_7type_info@@6B@	; std::bad_alloc `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVbad_alloc@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R4bad_alloc@std@@6B@
rdata$r	SEGMENT
??_R4bad_alloc@std@@6B@ DD 00H				; std::bad_alloc::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVbad_alloc@std@@@8
	DD	FLAT:??_R3bad_alloc@std@@8
rdata$r	ENDS
;	COMDAT ??_7bad_alloc@std@@6B@
CONST	SEGMENT
??_7bad_alloc@std@@6B@ DD FLAT:??_R4bad_alloc@std@@6B@	; std::bad_alloc::`vftable'
	DD	FLAT:??_Ebad_alloc@std@@UAEPAXI@Z
	DD	FLAT:?what@exception@std@@UBEPBDXZ
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ??0bad_alloc@std@@QAE@PBD@Z
_TEXT	SEGMENT
__Message$ = 8						; size = 4
??0bad_alloc@std@@QAE@PBD@Z PROC			; std::bad_alloc::bad_alloc, COMDAT
; _this$ = ecx

; 371  : 		{	// construct from message string

  00000	56		 push	 esi
  00001	8d 44 24 08	 lea	 eax, DWORD PTR __Message$[esp]
  00005	50		 push	 eax
  00006	8b f1		 mov	 esi, ecx
  00008	e8 00 00 00 00	 call	 ??0exception@std@@QAE@ABQBD@Z ; std::exception::exception
  0000d	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], OFFSET ??_7bad_alloc@std@@6B@

; 372  : 		}

  00013	8b c6		 mov	 eax, esi
  00015	5e		 pop	 esi
  00016	c2 04 00	 ret	 4
??0bad_alloc@std@@QAE@PBD@Z ENDP			; std::bad_alloc::bad_alloc
_TEXT	ENDS
PUBLIC	??1bad_alloc@std@@UAE@XZ			; std::bad_alloc::~bad_alloc
EXTRN	??1exception@std@@UAE@XZ:PROC			; std::exception::~exception
; Function compile flags: /Ogtpy
;	COMDAT ??1bad_alloc@std@@UAE@XZ
_TEXT	SEGMENT
??1bad_alloc@std@@UAE@XZ PROC				; std::bad_alloc::~bad_alloc, COMDAT
; _this$ = ecx

; 380  : 		{	// destroy the object

  00000	c7 01 00 00 00
	00		 mov	 DWORD PTR [ecx], OFFSET ??_7bad_alloc@std@@6B@

; 381  : 		}

  00006	e9 00 00 00 00	 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
  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx
  00003	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], OFFSET ??_7bad_alloc@std@@6B@
  00009	e8 00 00 00 00	 call	 ??1exception@std@@UAE@XZ ; std::exception::~exception
  0000e	f6 44 24 08 01	 test	 BYTE PTR ___flags$[esp], 1
  00013	74 09		 je	 SHORT $LN6@scalar
  00015	56		 push	 esi
  00016	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0001b	83 c4 04	 add	 esp, 4
$LN6@scalar:
  0001e	8b c6		 mov	 eax, esi
  00020	5e		 pop	 esi
  00021	c2 04 00	 ret	 4
??_Gbad_alloc@std@@UAEPAXI@Z ENDP			; std::bad_alloc::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??2@YAPAXIPAX@Z					; operator new
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\new
;	COMDAT ??2@YAPAXIPAX@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
__Where$ = 12						; size = 4
??2@YAPAXIPAX@Z PROC					; operator new, COMDAT

; 59   : 	return (_Where);

  00000	8b 44 24 08	 mov	 eax, DWORD PTR __Where$[esp-4]

; 60   : 	}

  00004	c3		 ret	 0
??2@YAPAXIPAX@Z ENDP					; operator new
_TEXT	ENDS
PUBLIC	??3@YAXPAX0@Z					; operator delete
; Function compile flags: /Ogtpy
;	COMDAT ??3@YAXPAX0@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
___formal$ = 12						; size = 4
??3@YAXPAX0@Z PROC					; operator delete, COMDAT

; 64   : 	}

  00000	c3		 ret	 0
??3@YAXPAX0@Z ENDP					; operator delete
_TEXT	ENDS
PUBLIC	??_C@_04LBFPPOKC@YMCF?$AA@			; `string'
PUBLIC	??_C@_05FEKNMKB@YMCF_?$AA@			; `string'
PUBLIC	?Init@CPostIt@@IAEHPBD@Z			; CPostIt::Init
;	COMDAT ??_C@_04LBFPPOKC@YMCF?$AA@
; File d:\# metin2\work in progress\source client\client\eterbase\cpostit.cpp
CONST	SEGMENT
??_C@_04LBFPPOKC@YMCF?$AA@ DB 'YMCF', 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_05FEKNMKB@YMCF_?$AA@
CONST	SEGMENT
??_C@_05FEKNMKB@YMCF_?$AA@ DB 'YMCF_', 00H		; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?Init@CPostIt@@IAEHPBD@Z
_TEXT	SEGMENT
_szAppName$ = 8						; size = 4
?Init@CPostIt@@IAEHPBD@Z PROC				; CPostIt::Init, COMDAT
; _this$ = ecx

; 40   : 	if( szAppName == NULL || !*szAppName ) {

  00000	8b 44 24 04	 mov	 eax, DWORD PTR _szAppName$[esp-4]
  00004	85 c0		 test	 eax, eax
  00006	74 4b		 je	 SHORT $LN2@Init
  00008	80 38 00	 cmp	 BYTE PTR [eax], 0
  0000b	74 46		 je	 SHORT $LN2@Init

; 42   : 	} else {
; 43   : 		strcpy( m_szClipFormatName, "YMCF_" );

  0000d	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ??_C@_05FEKNMKB@YMCF_?$AA@
  00013	83 c1 04	 add	 ecx, 4
  00016	89 11		 mov	 DWORD PTR [ecx], edx
  00018	66 8b 15 04 00
	00 00		 mov	 dx, WORD PTR ??_C@_05FEKNMKB@YMCF_?$AA@+4
  0001f	56		 push	 esi
  00020	57		 push	 edi
  00021	66 89 51 04	 mov	 WORD PTR [ecx+4], dx

; 44   : 		strcat( m_szClipFormatName, szAppName );

  00025	8b f0		 mov	 esi, eax
$LL6@Init:
  00027	8a 10		 mov	 dl, BYTE PTR [eax]
  00029	40		 inc	 eax
  0002a	84 d2		 test	 dl, dl
  0002c	75 f9		 jne	 SHORT $LL6@Init
  0002e	2b c6		 sub	 eax, esi
  00030	49		 dec	 ecx
$LL7@Init:
  00031	8a 51 01	 mov	 dl, BYTE PTR [ecx+1]
  00034	41		 inc	 ecx
  00035	84 d2		 test	 dl, dl
  00037	75 f8		 jne	 SHORT $LL7@Init
  00039	8b f9		 mov	 edi, ecx
  0003b	8b c8		 mov	 ecx, eax
  0003d	c1 e9 02	 shr	 ecx, 2
  00040	f3 a5		 rep movsd
  00042	8b c8		 mov	 ecx, eax
  00044	83 e1 03	 and	 ecx, 3
  00047	f3 a4		 rep movsb
  00049	5f		 pop	 edi
  0004a	5e		 pop	 esi

; 45   : 	}
; 46   : 	return TRUE;

  0004b	b8 01 00 00 00	 mov	 eax, 1

; 47   : }

  00050	c2 04 00	 ret	 4
$LN2@Init:

; 41   : 		strcpy( m_szClipFormatName, "YMCF" );

  00053	a1 00 00 00 00	 mov	 eax, DWORD PTR ??_C@_04LBFPPOKC@YMCF?$AA@
  00058	89 41 04	 mov	 DWORD PTR [ecx+4], eax
  0005b	8a 15 04 00 00
	00		 mov	 dl, BYTE PTR ??_C@_04LBFPPOKC@YMCF?$AA@+4
  00061	88 51 08	 mov	 BYTE PTR [ecx+8], dl

; 45   : 	}
; 46   : 	return TRUE;

  00064	b8 01 00 00 00	 mov	 eax, 1

; 47   : }

  00069	c2 04 00	 ret	 4
?Init@CPostIt@@IAEHPBD@Z ENDP				; CPostIt::Init
_TEXT	ENDS
PUBLIC	?DestroyHandle@_CPostItMemoryBlock@@QAEHXZ	; _CPostItMemoryBlock::DestroyHandle
EXTRN	__imp__GlobalFree@4:PROC
; Function compile flags: /Ogtpy
;	COMDAT ?DestroyHandle@_CPostItMemoryBlock@@QAEHXZ
_TEXT	SEGMENT
?DestroyHandle@_CPostItMemoryBlock@@QAEHXZ PROC		; _CPostItMemoryBlock::DestroyHandle, COMDAT
; _this$ = ecx

; 229  : {

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 230  : 	::GlobalFree( m_hHandle );

  00003	8b 06		 mov	 eax, DWORD PTR [esi]
  00005	50		 push	 eax
  00006	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GlobalFree@4

; 231  : 	m_hHandle = NULL;

  0000c	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], 0

; 232  : 	return TRUE;

  00012	b8 01 00 00 00	 mov	 eax, 1
  00017	5e		 pop	 esi

; 233  : }

  00018	c3		 ret	 0
?DestroyHandle@_CPostItMemoryBlock@@QAEHXZ ENDP		; _CPostItMemoryBlock::DestroyHandle
_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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 1666 : 		return (_Mysize);

  00000	8b 41 14	 mov	 eax, DWORD PTR [ecx+20]

; 1667 : 		}

  00003	c3		 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	?size@?$list@PADV?$allocator@PAD@std@@@std@@QBEIXZ ; std::list<char *,std::allocator<char *> >::size
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ?size@?$list@PADV?$allocator@PAD@std@@@std@@QBEIXZ
_TEXT	SEGMENT
?size@?$list@PADV?$allocator@PAD@std@@@std@@QBEIXZ PROC	; std::list<char *,std::allocator<char *> >::size, COMDAT
; _this$ = ecx

; 620  : 		return (_Mysize);

  00000	8b 41 18	 mov	 eax, DWORD PTR [ecx+24]

; 621  : 		}

  00003	c3		 ret	 0
?size@?$list@PADV?$allocator@PAD@std@@@std@@QBEIXZ ENDP	; std::list<char *,std::allocator<char *> >::size
_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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 2170 : 		return (_BUF_SIZE <= _Myres ? _Bx._Ptr : _Bx._Buf);

  00000	83 79 18 10	 cmp	 DWORD PTR [ecx+24], 16	; 00000010H
  00004	72 04		 jb	 SHORT $LN3@Myptr
  00006	8b 41 04	 mov	 eax, DWORD PTR [ecx+4]

; 2171 : 		}

  00009	c3		 ret	 0
$LN3@Myptr:

; 2170 : 		return (_BUF_SIZE <= _Myres ? _Bx._Ptr : _Bx._Buf);

  0000a	8d 41 04	 lea	 eax, DWORD PTR [ecx+4]

; 2171 : 		}

  0000d	c3		 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	?_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

; 2175 : 		return (_BUF_SIZE <= _Myres ? _Bx._Ptr : _Bx._Buf);

  00000	83 79 18 10	 cmp	 DWORD PTR [ecx+24], 16	; 00000010H
  00004	72 04		 jb	 SHORT $LN3@Myptr@2
  00006	8b 41 04	 mov	 eax, DWORD PTR [ecx+4]

; 2176 : 		}

  00009	c3		 ret	 0
$LN3@Myptr@2:

; 2175 : 		return (_BUF_SIZE <= _Myres ? _Bx._Ptr : _Bx._Buf);

  0000a	8d 41 04	 lea	 eax, DWORD PTR [ecx+4]

; 2176 : 		}

  0000d	c3		 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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
;	COMDAT ??0?$allocator@D@std@@QAE@XZ
_TEXT	SEGMENT
??0?$allocator@D@std@@QAE@XZ PROC			; std::allocator<char>::allocator<char>, COMDAT
; _this$ = ecx

; 119  : 	allocator() _THROW0()

  00000	8b c1		 mov	 eax, ecx

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

  00002	c3		 ret	 0
??0?$allocator@D@std@@QAE@XZ ENDP			; std::allocator<char>::allocator<char>
_TEXT	ENDS
PUBLIC	?_Nextnode@?$list@PADV?$allocator@PAD@std@@@std@@KAAAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@@Z ; std::list<char *,std::allocator<char *> >::_Nextnode
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ?_Nextnode@?$list@PADV?$allocator@PAD@std@@@std@@KAAAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@@Z
_TEXT	SEGMENT
__Pnode$ = 8						; size = 4
?_Nextnode@?$list@PADV?$allocator@PAD@std@@@std@@KAAAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@@Z PROC ; std::list<char *,std::allocator<char *> >::_Nextnode, COMDAT

; 115  : 		return ((_Nodepref)(*_Pnode)._Next);

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Pnode$[esp-4]

; 116  : 		}

  00004	c3		 ret	 0
?_Nextnode@?$list@PADV?$allocator@PAD@std@@@std@@KAAAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@@Z ENDP ; std::list<char *,std::allocator<char *> >::_Nextnode
_TEXT	ENDS
PUBLIC	?_Prevnode@?$list@PADV?$allocator@PAD@std@@@std@@KAAAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@@Z ; std::list<char *,std::allocator<char *> >::_Prevnode
; Function compile flags: /Ogtpy
;	COMDAT ?_Prevnode@?$list@PADV?$allocator@PAD@std@@@std@@KAAAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@@Z
_TEXT	SEGMENT
__Pnode$ = 8						; size = 4
?_Prevnode@?$list@PADV?$allocator@PAD@std@@@std@@KAAAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@@Z PROC ; std::list<char *,std::allocator<char *> >::_Prevnode, COMDAT

; 120  : 		return ((_Nodepref)(*_Pnode)._Prev);

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Pnode$[esp-4]
  00004	83 c0 04	 add	 eax, 4

; 121  : 		}

  00007	c3		 ret	 0
?_Prevnode@?$list@PADV?$allocator@PAD@std@@@std@@KAAAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@@Z ENDP ; std::list<char *,std::allocator<char *> >::_Prevnode
_TEXT	ENDS
PUBLIC	??0?$allocator@PAD@std@@QAE@XZ			; std::allocator<char *>::allocator<char *>
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
;	COMDAT ??0?$allocator@PAD@std@@QAE@XZ
_TEXT	SEGMENT
??0?$allocator@PAD@std@@QAE@XZ PROC			; std::allocator<char *>::allocator<char *>, COMDAT
; _this$ = ecx

; 119  : 	allocator() _THROW0()

  00000	8b c1		 mov	 eax, ecx

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

  00002	c3		 ret	 0
??0?$allocator@PAD@std@@QAE@XZ ENDP			; std::allocator<char *>::allocator<char *>
_TEXT	ENDS
PUBLIC	?deallocate@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@I@Z ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node>::deallocate
; Function compile flags: /Ogtpy
;	COMDAT ?deallocate@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@I@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
___formal$ = 12						; size = 4
?deallocate@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@I@Z PROC ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node>::deallocate, COMDAT
; _this$ = ecx

; 140  : 		::operator delete(_Ptr);

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Ptr$[esp-4]
  00004	50		 push	 eax
  00005	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0000a	59		 pop	 ecx

; 141  : 		}

  0000b	c2 08 00	 ret	 8
?deallocate@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@I@Z ENDP ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node>::deallocate
_TEXT	ENDS
PUBLIC	??E?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAEAAV012@XZ ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator++
EXTRN	__invalid_parameter_noinfo:PROC
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ??E?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAEAAV012@XZ
_TEXT	SEGMENT
??E?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAEAAV012@XZ PROC ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator++, COMDAT
; _this$ = ecx

; 235  : 			{	// preincrement

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 236  : 
; 237  :  #if _HAS_ITERATOR_DEBUGGING
; 238  : 			if (this->_Mycont == 0
; 239  : 				|| _Ptr == 0
; 240  : 				|| _Ptr == ((_Myt *)this->_Mycont)->_Myhead)
; 241  : 				{
; 242  : 				_DEBUG_ERROR("list iterator not incrementable");
; 243  : 				_SCL_SECURE_TRAITS_OUT_OF_RANGE;
; 244  : 				}
; 245  :  #else
; 246  : 			_SCL_SECURE_TRAITS_VALIDATE(this->_Has_container());

  00003	8b 06		 mov	 eax, DWORD PTR [esi]
  00005	85 c0		 test	 eax, eax
  00007	75 0b		 jne	 SHORT $LN23@operator
  00009	e8 00 00 00 00	 call	 __invalid_parameter_noinfo

; 247  : 			_SCL_SECURE_TRAITS_VALIDATE_RANGE(_Ptr != ((_Myt *)(this->_Getmycont()))->_Myhead);

  0000e	8b 06		 mov	 eax, DWORD PTR [esi]
  00010	85 c0		 test	 eax, eax
  00012	74 04		 je	 SHORT $LN17@operator
$LN23@operator:
  00014	8b 00		 mov	 eax, DWORD PTR [eax]
  00016	eb 02		 jmp	 SHORT $LN18@operator
$LN17@operator:
  00018	33 c0		 xor	 eax, eax
$LN18@operator:
  0001a	8b 4e 04	 mov	 ecx, DWORD PTR [esi+4]
  0001d	3b 48 14	 cmp	 ecx, DWORD PTR [eax+20]
  00020	75 05		 jne	 SHORT $LN3@operator
  00022	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN3@operator:

; 248  :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 249  : 
; 250  : 			_Ptr = _Nextnode(_Ptr);

  00027	8b 56 04	 mov	 edx, DWORD PTR [esi+4]
  0002a	8b 02		 mov	 eax, DWORD PTR [edx]
  0002c	89 46 04	 mov	 DWORD PTR [esi+4], eax

; 251  : 			return (*this);

  0002f	8b c6		 mov	 eax, esi
  00031	5e		 pop	 esi

; 252  : 			}

  00032	c3		 ret	 0
??E?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAEAAV012@XZ ENDP ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator++
_TEXT	ENDS
PUBLIC	??E?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV012@H@Z ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator++
; Function compile flags: /Ogtpy
;	COMDAT ??E?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV012@H@Z
_TEXT	SEGMENT
___$ReturnUdt$ = 8					; size = 4
___formal$ = 12						; size = 4
??E?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV012@H@Z PROC ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator++, COMDAT
; _this$ = ecx

; 255  : 			{	// postincrement

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 256  : 			_Myt_iter _Tmp = *this;

  00003	8b 06		 mov	 eax, DWORD PTR [esi]
  00005	8b 4e 04	 mov	 ecx, DWORD PTR [esi+4]
  00008	57		 push	 edi
  00009	8b 7c 24 0c	 mov	 edi, DWORD PTR ___$ReturnUdt$[esp+4]
  0000d	89 07		 mov	 DWORD PTR [edi], eax
  0000f	89 4f 04	 mov	 DWORD PTR [edi+4], ecx

; 257  : 			++*this;

  00012	85 c0		 test	 eax, eax
  00014	75 0b		 jne	 SHORT $LN25@operator@2
  00016	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  0001b	8b 06		 mov	 eax, DWORD PTR [esi]
  0001d	85 c0		 test	 eax, eax
  0001f	74 04		 je	 SHORT $LN19@operator@2
$LN25@operator@2:
  00021	8b 00		 mov	 eax, DWORD PTR [eax]
  00023	eb 02		 jmp	 SHORT $LN20@operator@2
$LN19@operator@2:
  00025	33 c0		 xor	 eax, eax
$LN20@operator@2:
  00027	8b 56 04	 mov	 edx, DWORD PTR [esi+4]
  0002a	3b 50 14	 cmp	 edx, DWORD PTR [eax+20]
  0002d	75 05		 jne	 SHORT $LN5@operator@2
  0002f	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN5@operator@2:
  00034	8b 46 04	 mov	 eax, DWORD PTR [esi+4]
  00037	8b 08		 mov	 ecx, DWORD PTR [eax]

; 258  : 			return (_Tmp);

  00039	8b c7		 mov	 eax, edi
  0003b	5f		 pop	 edi
  0003c	89 4e 04	 mov	 DWORD PTR [esi+4], ecx
  0003f	5e		 pop	 esi

; 259  : 			}

  00040	c2 08 00	 ret	 8
??E?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV012@H@Z ENDP ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator++
_TEXT	ENDS
PUBLIC	??8?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBE_NABV012@@Z ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator==
; Function compile flags: /Ogtpy
;	COMDAT ??8?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBE_NABV012@@Z
_TEXT	SEGMENT
__Right$ = 8						; size = 4
??8?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBE_NABV012@@Z PROC ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator==, COMDAT
; _this$ = ecx

; 290  : 			{	// test for iterator equality

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 291  : 
; 292  :  #if _HAS_ITERATOR_DEBUGGING
; 293  : 			_Compat(_Right);
; 294  :  #else
; 295  : 			_SCL_SECURE_TRAITS_VALIDATE(this->_Has_container() && this->_Same_container(_Right));

  00003	8b 06		 mov	 eax, DWORD PTR [esi]
  00005	57		 push	 edi
  00006	8b 7c 24 0c	 mov	 edi, DWORD PTR __Right$[esp+4]
  0000a	85 c0		 test	 eax, eax
  0000c	74 04		 je	 SHORT $LN4@operator@3
  0000e	3b 07		 cmp	 eax, DWORD PTR [edi]
  00010	74 05		 je	 SHORT $LN3@operator@3
$LN4@operator@3:
  00012	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN3@operator@3:

; 296  :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 297  : 
; 298  : 			return (_Ptr == _Right._Ptr);

  00017	8b 46 04	 mov	 eax, DWORD PTR [esi+4]
  0001a	33 c9		 xor	 ecx, ecx
  0001c	3b 47 04	 cmp	 eax, DWORD PTR [edi+4]
  0001f	5f		 pop	 edi
  00020	0f 94 c1	 sete	 cl
  00023	8a c1		 mov	 al, cl
  00025	5e		 pop	 esi

; 299  : 			}

  00026	c2 04 00	 ret	 4
??8?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBE_NABV012@@Z ENDP ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator==
_TEXT	ENDS
PUBLIC	?_Mynode@?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@3@XZ ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::_Mynode
; Function compile flags: /Ogtpy
;	COMDAT ?_Mynode@?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@3@XZ
_TEXT	SEGMENT
?_Mynode@?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@3@XZ PROC ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::_Mynode, COMDAT
; _this$ = ecx

; 308  : 			return (_Ptr);

  00000	8b 41 04	 mov	 eax, DWORD PTR [ecx+4]

; 309  : 			}

  00003	c3		 ret	 0
?_Mynode@?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@3@XZ ENDP ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::_Mynode
_TEXT	ENDS
PUBLIC	??0?$_Iterator_with_base@Ubidirectional_iterator_tag@std@@PADHPBQADABQADV_Iterator_base_aux@2@@std@@QAE@XZ ; std::_Iterator_with_base<std::bidirectional_iterator_tag,char *,int,char * const *,char * const &,std::_Iterator_base_aux>::_Iterator_with_base<std::bidirectional_iterator_tag,char *,int,char * const *,char * const &,std::_Iterator_base_aux>
; Function compile flags: /Ogtpy
;	COMDAT ??0?$_Iterator_with_base@Ubidirectional_iterator_tag@std@@PADHPBQADABQADV_Iterator_base_aux@2@@std@@QAE@XZ
_TEXT	SEGMENT
??0?$_Iterator_with_base@Ubidirectional_iterator_tag@std@@PADHPBQADABQADV_Iterator_base_aux@2@@std@@QAE@XZ PROC ; std::_Iterator_with_base<std::bidirectional_iterator_tag,char *,int,char * const *,char * const &,std::_Iterator_base_aux>::_Iterator_with_base<std::bidirectional_iterator_tag,char *,int,char * const *,char * const &,std::_Iterator_base_aux>, COMDAT
; _this$ = ecx
  00000	8b c1		 mov	 eax, ecx
  00002	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], 0
  00008	c3		 ret	 0
??0?$_Iterator_with_base@Ubidirectional_iterator_tag@std@@PADHPBQADABQADV_Iterator_base_aux@2@@std@@QAE@XZ ENDP ; std::_Iterator_with_base<std::bidirectional_iterator_tag,char *,int,char * const *,char * const &,std::_Iterator_base_aux>::_Iterator_with_base<std::bidirectional_iterator_tag,char *,int,char * const *,char * const &,std::_Iterator_base_aux>
_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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 2114 : 		_Traits::assign(_Myptr()[_Mysize = _Newsize], _Elem());

  00000	83 79 18 10	 cmp	 DWORD PTR [ecx+24], 16	; 00000010H
  00004	8b 44 24 04	 mov	 eax, DWORD PTR __Newsize$[esp-4]
  00008	89 41 14	 mov	 DWORD PTR [ecx+20], eax
  0000b	72 0a		 jb	 SHORT $LN5@Eos
  0000d	8b 49 04	 mov	 ecx, DWORD PTR [ecx+4]
  00010	c6 04 01 00	 mov	 BYTE PTR [ecx+eax], 0

; 2115 : 		}

  00014	c2 04 00	 ret	 4

; 2114 : 		_Traits::assign(_Myptr()[_Mysize = _Newsize], _Elem());

$LN5@Eos:
  00017	c6 44 01 04 00	 mov	 BYTE PTR [ecx+eax+4], 0

; 2115 : 		}

  0001c	c2 04 00	 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	??0?$allocator@D@std@@QAE@ABV01@@Z		; std::allocator<char>::allocator<char>
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
;	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

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

  00000	8b c1		 mov	 eax, ecx

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

  00002	c2 04 00	 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

; 140  : 		::operator delete(_Ptr);

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Ptr$[esp-4]
  00004	50		 push	 eax
  00005	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0000a	59		 pop	 ecx

; 141  : 		}

  0000b	c2 08 00	 ret	 8
?deallocate@?$allocator@D@std@@QAEXPADI@Z ENDP		; std::allocator<char>::deallocate
_TEXT	ENDS
PUBLIC	?_Myval@?$list@PADV?$allocator@PAD@std@@@std@@KAAAPADPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@@Z ; std::list<char *,std::allocator<char *> >::_Myval
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ?_Myval@?$list@PADV?$allocator@PAD@std@@@std@@KAAAPADPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@@Z
_TEXT	SEGMENT
__Pnode$ = 8						; size = 4
?_Myval@?$list@PADV?$allocator@PAD@std@@@std@@KAAAPADPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@@Z PROC ; std::list<char *,std::allocator<char *> >::_Myval, COMDAT

; 125  : 		return ((_Vref)(*_Pnode)._Myval);

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Pnode$[esp-4]
  00004	83 c0 08	 add	 eax, 8

; 126  : 		}

  00007	c3		 ret	 0
?_Myval@?$list@PADV?$allocator@PAD@std@@@std@@KAAAPADPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@@Z ENDP ; std::list<char *,std::allocator<char *> >::_Myval
_TEXT	ENDS
PUBLIC	??0?$allocator@PAD@std@@QAE@ABV01@@Z		; std::allocator<char *>::allocator<char *>
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
;	COMDAT ??0?$allocator@PAD@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
??0?$allocator@PAD@std@@QAE@ABV01@@Z PROC		; std::allocator<char *>::allocator<char *>, COMDAT
; _this$ = ecx

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

  00000	8b c1		 mov	 eax, ecx

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

  00002	c2 04 00	 ret	 4
??0?$allocator@PAD@std@@QAE@ABV01@@Z ENDP		; std::allocator<char *>::allocator<char *>
_TEXT	ENDS
PUBLIC	?deallocate@?$allocator@V_Aux_cont@std@@@std@@QAEXPAV_Aux_cont@2@I@Z ; std::allocator<std::_Aux_cont>::deallocate
; Function compile flags: /Ogtpy
;	COMDAT ?deallocate@?$allocator@V_Aux_cont@std@@@std@@QAEXPAV_Aux_cont@2@I@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
___formal$ = 12						; size = 4
?deallocate@?$allocator@V_Aux_cont@std@@@std@@QAEXPAV_Aux_cont@2@I@Z PROC ; std::allocator<std::_Aux_cont>::deallocate, COMDAT
; _this$ = ecx

; 140  : 		::operator delete(_Ptr);

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Ptr$[esp-4]
  00004	50		 push	 eax
  00005	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0000a	59		 pop	 ecx

; 141  : 		}

  0000b	c2 08 00	 ret	 8
?deallocate@?$allocator@V_Aux_cont@std@@@std@@QAEXPAV_Aux_cont@2@I@Z ENDP ; std::allocator<std::_Aux_cont>::deallocate
_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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 2133 : 		{	// test if _Ptr points inside string

  00000	56		 push	 esi
  00001	57		 push	 edi

; 2134 : 		if (_Ptr == 0 || _Ptr < _Myptr() || _Myptr() + _Mysize <= _Ptr)

  00002	8b 7c 24 0c	 mov	 edi, DWORD PTR __Ptr$[esp+4]
  00006	85 ff		 test	 edi, edi
  00008	74 2c		 je	 SHORT $LN2@Inside
  0000a	8b 71 18	 mov	 esi, DWORD PTR [ecx+24]
  0000d	8d 41 04	 lea	 eax, DWORD PTR [ecx+4]
  00010	83 fe 10	 cmp	 esi, 16			; 00000010H
  00013	72 04		 jb	 SHORT $LN8@Inside
  00015	8b 10		 mov	 edx, DWORD PTR [eax]
  00017	eb 02		 jmp	 SHORT $LN9@Inside
$LN8@Inside:
  00019	8b d0		 mov	 edx, eax
$LN9@Inside:
  0001b	3b fa		 cmp	 edi, edx
  0001d	72 17		 jb	 SHORT $LN2@Inside
  0001f	83 fe 10	 cmp	 esi, 16			; 00000010H
  00022	72 02		 jb	 SHORT $LN12@Inside
  00024	8b 00		 mov	 eax, DWORD PTR [eax]
$LN12@Inside:
  00026	8b 49 14	 mov	 ecx, DWORD PTR [ecx+20]
  00029	03 c8		 add	 ecx, eax
  0002b	3b cf		 cmp	 ecx, edi
  0002d	76 07		 jbe	 SHORT $LN2@Inside
  0002f	5f		 pop	 edi

; 2136 : 		else
; 2137 : 			return (true);

  00030	b0 01		 mov	 al, 1
  00032	5e		 pop	 esi

; 2138 : 		}

  00033	c2 04 00	 ret	 4
$LN2@Inside:
  00036	5f		 pop	 edi

; 2135 : 			return (false);	// don't ask

  00037	32 c0		 xor	 al, al
  00039	5e		 pop	 esi

; 2138 : 		}

  0003a	c2 04 00	 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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
;	COMDAT ?max_size@?$allocator@D@std@@QBEIXZ
_TEXT	SEGMENT
?max_size@?$allocator@D@std@@QBEIXZ PROC		; std::allocator<char>::max_size, COMDAT
; _this$ = ecx

; 165  : 		_SIZT _Count = (_SIZT)(-1) / sizeof (_Ty);
; 166  : 		return (0 < _Count ? _Count : 1);

  00000	83 c8 ff	 or	 eax, -1

; 167  : 		}

  00003	c3		 ret	 0
?max_size@?$allocator@D@std@@QBEIXZ ENDP		; std::allocator<char>::max_size
_TEXT	ENDS
PUBLIC	?max_size@?$allocator@PAD@std@@QBEIXZ		; std::allocator<char *>::max_size
; Function compile flags: /Ogtpy
;	COMDAT ?max_size@?$allocator@PAD@std@@QBEIXZ
_TEXT	SEGMENT
?max_size@?$allocator@PAD@std@@QBEIXZ PROC		; std::allocator<char *>::max_size, COMDAT
; _this$ = ecx

; 165  : 		_SIZT _Count = (_SIZT)(-1) / sizeof (_Ty);
; 166  : 		return (0 < _Count ? _Count : 1);

  00000	b8 ff ff ff 3f	 mov	 eax, 1073741823		; 3fffffffH

; 167  : 		}

  00005	c3		 ret	 0
?max_size@?$allocator@PAD@std@@QBEIXZ ENDP		; std::allocator<char *>::max_size
_TEXT	ENDS
PUBLIC	??$_Destroy@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@YAXPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@@Z ; std::_Destroy<std::_List_nod<char *,std::allocator<char *> >::_Node>
; Function compile flags: /Ogtpy
;	COMDAT ??$_Destroy@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@YAXPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
??$_Destroy@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@YAXPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@@Z PROC ; std::_Destroy<std::_List_nod<char *,std::allocator<char *> >::_Node>, COMDAT

; 59   : 	_DESTRUCTOR(_Ty, _Ptr);
; 60   : 	}

  00000	c3		 ret	 0
??$_Destroy@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@YAXPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@@Z ENDP ; std::_Destroy<std::_List_nod<char *,std::allocator<char *> >::_Node>
_TEXT	ENDS
PUBLIC	??$?0PAD@?$allocator@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAE@ABV?$allocator@PAD@1@@Z ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node *>::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node *><char *>
; Function compile flags: /Ogtpy
;	COMDAT ??$?0PAD@?$allocator@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAE@ABV?$allocator@PAD@1@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
??$?0PAD@?$allocator@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAE@ABV?$allocator@PAD@1@@Z PROC ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node *>::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node *><char *>, COMDAT
; _this$ = ecx

; 128  : 		allocator(const allocator<_Other>&) _THROW0()

  00000	8b c1		 mov	 eax, ecx

; 129  : 		{	// construct from a related allocator (do nothing)
; 130  : 		}

  00002	c2 04 00	 ret	 4
??$?0PAD@?$allocator@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAE@ABV?$allocator@PAD@1@@Z ENDP ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node *>::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node *><char *>
_TEXT	ENDS
PUBLIC	__TI2?AVbad_alloc@std@@
PUBLIC	??$_Allocate@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@YAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@IPAU120@@Z ; std::_Allocate<std::_List_nod<char *,std::allocator<char *> >::_Node>
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 (x86)\microsoft visual studio 9.0\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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
xdata$x	ENDS
;	COMDAT ??$_Allocate@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@YAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@IPAU120@@Z
_TEXT	SEGMENT
$T96844 = -12						; size = 12
$T96849 = 8						; size = 4
__Count$ = 8						; size = 4
___formal$ = 12						; size = 4
??$_Allocate@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@YAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@IPAU120@@Z PROC ; std::_Allocate<std::_List_nod<char *,std::allocator<char *> >::_Node>, COMDAT

; 37   : 	if (_Count <= 0)

  00000	8b 4c 24 04	 mov	 ecx, DWORD PTR __Count$[esp-4]
  00004	83 ec 0c	 sub	 esp, 12			; 0000000cH
  00007	85 c9		 test	 ecx, ecx
  00009	77 16		 ja	 SHORT $LN3@Allocate

; 38   : 		_Count = 0;

  0000b	33 c9		 xor	 ecx, ecx
$LN1@Allocate:

; 41   : 
; 42   : 		// allocate storage for _Count elements of type _Ty
; 43   : 	return ((_Ty _FARQ *)::operator new(_Count * sizeof (_Ty)));

  0000d	8d 14 49	 lea	 edx, DWORD PTR [ecx+ecx*2]
  00010	03 d2		 add	 edx, edx
  00012	03 d2		 add	 edx, edx
  00014	52		 push	 edx
  00015	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0001a	83 c4 04	 add	 esp, 4

; 44   : 	}

  0001d	83 c4 0c	 add	 esp, 12			; 0000000cH
  00020	c3		 ret	 0
$LN3@Allocate:

; 39   : 	else if (((_SIZT)(-1) / _Count) < sizeof (_Ty))

  00021	83 c8 ff	 or	 eax, -1
  00024	33 d2		 xor	 edx, edx
  00026	f7 f1		 div	 ecx
  00028	83 f8 0c	 cmp	 eax, 12			; 0000000cH
  0002b	73 e0		 jae	 SHORT $LN1@Allocate

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

  0002d	8d 44 24 10	 lea	 eax, DWORD PTR $T96849[esp+8]
  00031	50		 push	 eax
  00032	8d 4c 24 04	 lea	 ecx, DWORD PTR $T96844[esp+16]
  00036	c7 44 24 14 00
	00 00 00	 mov	 DWORD PTR $T96849[esp+12], 0
  0003e	e8 00 00 00 00	 call	 ??0exception@std@@QAE@ABQBD@Z ; std::exception::exception
  00043	68 00 00 00 00	 push	 OFFSET __TI2?AVbad_alloc@std@@
  00048	8d 4c 24 04	 lea	 ecx, DWORD PTR $T96844[esp+16]
  0004c	51		 push	 ecx
  0004d	c7 44 24 08 00
	00 00 00	 mov	 DWORD PTR $T96844[esp+20], OFFSET ??_7bad_alloc@std@@6B@
  00055	e8 00 00 00 00	 call	 __CxxThrowException@8
$LN9@Allocate:
$LN8@Allocate:
  0005a	cc		 int	 3
??$_Allocate@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@YAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@IPAU120@@Z ENDP ; std::_Allocate<std::_List_nod<char *,std::allocator<char *> >::_Node>
_TEXT	ENDS
PUBLIC	??$_Construct@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@PAU123@@std@@YAXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@ABQAU120@@Z ; std::_Construct<std::_List_nod<char *,std::allocator<char *> >::_Node *,std::_List_nod<char *,std::allocator<char *> >::_Node *>
; Function compile flags: /Ogtpy
;	COMDAT ??$_Construct@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@PAU123@@std@@YAXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@ABQAU120@@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
__Val$ = 12						; size = 4
??$_Construct@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@PAU123@@std@@YAXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@ABQAU120@@Z PROC ; std::_Construct<std::_List_nod<char *,std::allocator<char *> >::_Node *,std::_List_nod<char *,std::allocator<char *> >::_Node *>, COMDAT

; 51   : 	void _FARQ *_Vptr = _Ptr;
; 52   : 	::new (_Vptr) _T1(_Val);

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Ptr$[esp-4]
  00004	85 c0		 test	 eax, eax
  00006	74 08		 je	 SHORT $LN3@Construct
  00008	8b 4c 24 08	 mov	 ecx, DWORD PTR __Val$[esp-4]
  0000c	8b 11		 mov	 edx, DWORD PTR [ecx]
  0000e	89 10		 mov	 DWORD PTR [eax], edx
$LN3@Construct:

; 53   : 	}

  00010	c3		 ret	 0
??$_Construct@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@PAU123@@std@@YAXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@ABQAU120@@Z ENDP ; std::_Construct<std::_List_nod<char *,std::allocator<char *> >::_Node *,std::_List_nod<char *,std::allocator<char *> >::_Node *>
_TEXT	ENDS
PUBLIC	??$_Destroy@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@YAXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@@Z ; std::_Destroy<std::_List_nod<char *,std::allocator<char *> >::_Node *>
; Function compile flags: /Ogtpy
;	COMDAT ??$_Destroy@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@YAXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
??$_Destroy@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@YAXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@@Z PROC ; std::_Destroy<std::_List_nod<char *,std::allocator<char *> >::_Node *>, COMDAT

; 59   : 	_DESTRUCTOR(_Ty, _Ptr);
; 60   : 	}

  00000	c3		 ret	 0
??$_Destroy@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@YAXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@@Z ENDP ; std::_Destroy<std::_List_nod<char *,std::allocator<char *> >::_Node *>
_TEXT	ENDS
PUBLIC	??$?0PAD@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAE@ABV?$allocator@PAD@1@@Z ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node>::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node><char *>
; Function compile flags: /Ogtpy
;	COMDAT ??$?0PAD@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAE@ABV?$allocator@PAD@1@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
??$?0PAD@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAE@ABV?$allocator@PAD@1@@Z PROC ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node>::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node><char *>, COMDAT
; _this$ = ecx

; 128  : 		allocator(const allocator<_Other>&) _THROW0()

  00000	8b c1		 mov	 eax, ecx

; 129  : 		{	// construct from a related allocator (do nothing)
; 130  : 		}

  00002	c2 04 00	 ret	 4
??$?0PAD@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAE@ABV?$allocator@PAD@1@@Z ENDP ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node>::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node><char *>
_TEXT	ENDS
PUBLIC	??$_Construct@PADPAD@std@@YAXPAPADABQAD@Z	; std::_Construct<char *,char *>
; Function compile flags: /Ogtpy
;	COMDAT ??$_Construct@PADPAD@std@@YAXPAPADABQAD@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
__Val$ = 12						; size = 4
??$_Construct@PADPAD@std@@YAXPAPADABQAD@Z PROC		; std::_Construct<char *,char *>, COMDAT

; 51   : 	void _FARQ *_Vptr = _Ptr;
; 52   : 	::new (_Vptr) _T1(_Val);

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Ptr$[esp-4]
  00004	85 c0		 test	 eax, eax
  00006	74 08		 je	 SHORT $LN3@Construct@2
  00008	8b 4c 24 08	 mov	 ecx, DWORD PTR __Val$[esp-4]
  0000c	8b 11		 mov	 edx, DWORD PTR [ecx]
  0000e	89 10		 mov	 DWORD PTR [eax], edx
$LN3@Construct@2:

; 53   : 	}

  00010	c3		 ret	 0
??$_Construct@PADPAD@std@@YAXPAPADABQAD@Z ENDP		; std::_Construct<char *,char *>
_TEXT	ENDS
PUBLIC	??$_Allocate@D@std@@YAPADIPAD@Z			; std::_Allocate<char>
; Function compile flags: /Ogtpy
;	COMDAT ??$_Allocate@D@std@@YAPADIPAD@Z
_TEXT	SEGMENT
$T96879 = -12						; size = 12
$T96883 = 8						; size = 4
__Count$ = 8						; size = 4
___formal$ = 12						; size = 4
??$_Allocate@D@std@@YAPADIPAD@Z PROC			; std::_Allocate<char>, COMDAT

; 37   : 	if (_Count <= 0)

  00000	8b 4c 24 04	 mov	 ecx, DWORD PTR __Count$[esp-4]
  00004	83 ec 0c	 sub	 esp, 12			; 0000000cH
  00007	85 c9		 test	 ecx, ecx
  00009	77 0f		 ja	 SHORT $LN3@Allocate@2

; 38   : 		_Count = 0;

  0000b	33 c9		 xor	 ecx, ecx
$LN1@Allocate@2:

; 41   : 
; 42   : 		// allocate storage for _Count elements of type _Ty
; 43   : 	return ((_Ty _FARQ *)::operator new(_Count * sizeof (_Ty)));

  0000d	51		 push	 ecx
  0000e	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00013	83 c4 04	 add	 esp, 4

; 44   : 	}

  00016	83 c4 0c	 add	 esp, 12			; 0000000cH
  00019	c3		 ret	 0
$LN3@Allocate@2:

; 39   : 	else if (((_SIZT)(-1) / _Count) < sizeof (_Ty))

  0001a	83 c8 ff	 or	 eax, -1
  0001d	33 d2		 xor	 edx, edx
  0001f	f7 f1		 div	 ecx
  00021	83 f8 01	 cmp	 eax, 1
  00024	73 e7		 jae	 SHORT $LN1@Allocate@2

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

  00026	8d 44 24 10	 lea	 eax, DWORD PTR $T96883[esp+8]
  0002a	50		 push	 eax
  0002b	8d 4c 24 04	 lea	 ecx, DWORD PTR $T96879[esp+16]
  0002f	c7 44 24 14 00
	00 00 00	 mov	 DWORD PTR $T96883[esp+12], 0
  00037	e8 00 00 00 00	 call	 ??0exception@std@@QAE@ABQBD@Z ; std::exception::exception
  0003c	68 00 00 00 00	 push	 OFFSET __TI2?AVbad_alloc@std@@
  00041	8d 4c 24 04	 lea	 ecx, DWORD PTR $T96879[esp+16]
  00045	51		 push	 ecx
  00046	c7 44 24 08 00
	00 00 00	 mov	 DWORD PTR $T96879[esp+20], OFFSET ??_7bad_alloc@std@@6B@
  0004e	e8 00 00 00 00	 call	 __CxxThrowException@8
$LN9@Allocate@2:
$LN8@Allocate@2:
  00053	cc		 int	 3
??$_Allocate@D@std@@YAPADIPAD@Z ENDP			; std::_Allocate<char>
_TEXT	ENDS
PUBLIC	??$?0PAD@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@PAD@1@@Z ; std::allocator<std::_Aux_cont>::allocator<std::_Aux_cont><char *>
; Function compile flags: /Ogtpy
;	COMDAT ??$?0PAD@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@PAD@1@@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
??$?0PAD@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@PAD@1@@Z PROC ; std::allocator<std::_Aux_cont>::allocator<std::_Aux_cont><char *>, COMDAT
; _this$ = ecx

; 128  : 		allocator(const allocator<_Other>&) _THROW0()

  00000	8b c1		 mov	 eax, ecx

; 129  : 		{	// construct from a related allocator (do nothing)
; 130  : 		}

  00002	c2 04 00	 ret	 4
??$?0PAD@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@PAD@1@@Z ENDP ; std::allocator<std::_Aux_cont>::allocator<std::_Aux_cont><char *>
_TEXT	ENDS
PUBLIC	??$_Allocate@V_Aux_cont@std@@@std@@YAPAV_Aux_cont@0@IPAV10@@Z ; std::_Allocate<std::_Aux_cont>
; Function compile flags: /Ogtpy
;	COMDAT ??$_Allocate@V_Aux_cont@std@@@std@@YAPAV_Aux_cont@0@IPAV10@@Z
_TEXT	SEGMENT
$T96892 = -12						; size = 12
$T96896 = 8						; size = 4
__Count$ = 8						; size = 4
___formal$ = 12						; size = 4
??$_Allocate@V_Aux_cont@std@@@std@@YAPAV_Aux_cont@0@IPAV10@@Z PROC ; std::_Allocate<std::_Aux_cont>, COMDAT

; 37   : 	if (_Count <= 0)

  00000	8b 4c 24 04	 mov	 ecx, DWORD PTR __Count$[esp-4]
  00004	83 ec 0c	 sub	 esp, 12			; 0000000cH
  00007	85 c9		 test	 ecx, ecx
  00009	77 16		 ja	 SHORT $LN3@Allocate@3

; 38   : 		_Count = 0;

  0000b	33 c9		 xor	 ecx, ecx
$LN1@Allocate@3:

; 41   : 
; 42   : 		// allocate storage for _Count elements of type _Ty
; 43   : 	return ((_Ty _FARQ *)::operator new(_Count * sizeof (_Ty)));

  0000d	8d 14 8d 00 00
	00 00		 lea	 edx, DWORD PTR [ecx*4]
  00014	52		 push	 edx
  00015	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0001a	83 c4 04	 add	 esp, 4

; 44   : 	}

  0001d	83 c4 0c	 add	 esp, 12			; 0000000cH
  00020	c3		 ret	 0
$LN3@Allocate@3:

; 39   : 	else if (((_SIZT)(-1) / _Count) < sizeof (_Ty))

  00021	83 c8 ff	 or	 eax, -1
  00024	33 d2		 xor	 edx, edx
  00026	f7 f1		 div	 ecx
  00028	83 f8 04	 cmp	 eax, 4
  0002b	73 e0		 jae	 SHORT $LN1@Allocate@3

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

  0002d	8d 44 24 10	 lea	 eax, DWORD PTR $T96896[esp+8]
  00031	50		 push	 eax
  00032	8d 4c 24 04	 lea	 ecx, DWORD PTR $T96892[esp+16]
  00036	c7 44 24 14 00
	00 00 00	 mov	 DWORD PTR $T96896[esp+12], 0
  0003e	e8 00 00 00 00	 call	 ??0exception@std@@QAE@ABQBD@Z ; std::exception::exception
  00043	68 00 00 00 00	 push	 OFFSET __TI2?AVbad_alloc@std@@
  00048	8d 4c 24 04	 lea	 ecx, DWORD PTR $T96892[esp+16]
  0004c	51		 push	 ecx
  0004d	c7 44 24 08 00
	00 00 00	 mov	 DWORD PTR $T96892[esp+20], OFFSET ??_7bad_alloc@std@@6B@
  00055	e8 00 00 00 00	 call	 __CxxThrowException@8
$LN9@Allocate@3:
$LN8@Allocate@3:
  0005a	cc		 int	 3
??$_Allocate@V_Aux_cont@std@@@std@@YAPAV_Aux_cont@0@IPAV10@@Z ENDP ; std::_Allocate<std::_Aux_cont>
; 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
  00000	8b 44 24 04	 mov	 eax, DWORD PTR ___that$[esp-4]
  00004	56		 push	 esi
  00005	50		 push	 eax
  00006	8b f1		 mov	 esi, ecx
  00008	e8 00 00 00 00	 call	 ??0exception@std@@QAE@ABV01@@Z ; std::exception::exception
  0000d	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], OFFSET ??_7bad_alloc@std@@6B@
  00013	8b c6		 mov	 eax, esi
  00015	5e		 pop	 esi
  00016	c2 04 00	 ret	 4
??0bad_alloc@std@@QAE@ABV01@@Z ENDP			; std::bad_alloc::bad_alloc
_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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd
;	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

; 575  : 	{

  00000	51		 push	 ecx

; 576  : 		typename _Char_traits_category<_Traits>::_Secure_char_traits _Secure;
; 577  : 		return (_Secure);

  00001	8a 44 24 03	 mov	 al, BYTE PTR __Secure$[esp+4]

; 578  : 	}

  00005	59		 pop	 ecx
  00006	c3		 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

; 597  : 		return _Traits::_Copy_s(_First1, _Size, _First2, _Count);

  00000	8b 44 24 10	 mov	 eax, DWORD PTR __Count$[esp-4]
  00004	8b 4c 24 0c	 mov	 ecx, DWORD PTR __First2$[esp-4]
  00008	8b 54 24 08	 mov	 edx, DWORD PTR __Size$[esp-4]
  0000c	56		 push	 esi
  0000d	8b 74 24 08	 mov	 esi, DWORD PTR __First1$[esp]
  00011	50		 push	 eax
  00012	51		 push	 ecx
  00013	52		 push	 edx
  00014	56		 push	 esi
  00015	e8 00 00 00 00	 call	 _memcpy_s
  0001a	83 c4 10	 add	 esp, 16			; 00000010H
  0001d	8b c6		 mov	 eax, esi
  0001f	5e		 pop	 esi

; 598  : 	}

  00020	c3		 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

; 624  : 		return _Traits::_Move_s(_First1, _Size, _First2, _Count);

  00000	8b 44 24 10	 mov	 eax, DWORD PTR __Count$[esp-4]
  00004	8b 4c 24 0c	 mov	 ecx, DWORD PTR __First2$[esp-4]
  00008	8b 54 24 08	 mov	 edx, DWORD PTR __Size$[esp-4]
  0000c	56		 push	 esi
  0000d	8b 74 24 08	 mov	 esi, DWORD PTR __First1$[esp]
  00011	50		 push	 eax
  00012	51		 push	 ecx
  00013	52		 push	 edx
  00014	56		 push	 esi
  00015	e8 00 00 00 00	 call	 _memmove_s
  0001a	83 c4 10	 add	 esp, 16			; 00000010H
  0001d	8b c6		 mov	 eax, esi
  0001f	5e		 pop	 esi

; 625  : 	}

  00020	c3		 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	??0CPostIt@@QAE@PBD@Z				; CPostIt::CPostIt
; Function compile flags: /Ogtpy
; File d:\# metin2\work in progress\source client\client\eterbase\cpostit.cpp
;	COMDAT ??0CPostIt@@QAE@PBD@Z
_TEXT	SEGMENT
_szAppName$ = 8						; size = 4
??0CPostIt@@QAE@PBD@Z PROC				; CPostIt::CPostIt, COMDAT
; _this$ = ecx

; 30   : 	Init( szAppName );

  00000	8b 44 24 04	 mov	 eax, DWORD PTR _szAppName$[esp-4]
  00004	56		 push	 esi
  00005	8b f1		 mov	 esi, ecx
  00007	50		 push	 eax
  00008	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], 0
  0000e	c7 86 08 01 00
	00 00 00 00 00	 mov	 DWORD PTR [esi+264], 0
  00018	e8 00 00 00 00	 call	 ?Init@CPostIt@@IAEHPBD@Z ; CPostIt::Init

; 31   : }

  0001d	8b c6		 mov	 eax, esi
  0001f	5e		 pop	 esi
  00020	c2 04 00	 ret	 4
??0CPostIt@@QAE@PBD@Z ENDP				; CPostIt::CPostIt
_TEXT	ENDS
PUBLIC	??E?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAEAAV012@XZ ; std::list<char *,std::allocator<char *> >::_Iterator<1>::operator++
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ??E?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAEAAV012@XZ
_TEXT	SEGMENT
??E?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAEAAV012@XZ PROC ; std::list<char *,std::allocator<char *> >::_Iterator<1>::operator++, COMDAT
; _this$ = ecx

; 403  : 			{	// preincrement

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 404  : 			++(*(_Mybase_iter *)this);

  00003	8b 06		 mov	 eax, DWORD PTR [esi]
  00005	85 c0		 test	 eax, eax
  00007	75 0b		 jne	 SHORT $LN25@operator@4
  00009	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  0000e	8b 06		 mov	 eax, DWORD PTR [esi]
  00010	85 c0		 test	 eax, eax
  00012	74 04		 je	 SHORT $LN19@operator@4
$LN25@operator@4:
  00014	8b 00		 mov	 eax, DWORD PTR [eax]
  00016	eb 02		 jmp	 SHORT $LN20@operator@4
$LN19@operator@4:
  00018	33 c0		 xor	 eax, eax
$LN20@operator@4:
  0001a	8b 4e 04	 mov	 ecx, DWORD PTR [esi+4]
  0001d	3b 48 14	 cmp	 ecx, DWORD PTR [eax+20]
  00020	75 05		 jne	 SHORT $LN5@operator@4
  00022	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN5@operator@4:
  00027	8b 56 04	 mov	 edx, DWORD PTR [esi+4]
  0002a	8b 02		 mov	 eax, DWORD PTR [edx]
  0002c	89 46 04	 mov	 DWORD PTR [esi+4], eax

; 405  : 			return (*this);

  0002f	8b c6		 mov	 eax, esi
  00031	5e		 pop	 esi

; 406  : 			}

  00032	c3		 ret	 0
??E?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAEAAV012@XZ ENDP ; std::list<char *,std::allocator<char *> >::_Iterator<1>::operator++
_TEXT	ENDS
PUBLIC	??9?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBE_NABV012@@Z ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator!=
; Function compile flags: /Ogtpy
;	COMDAT ??9?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBE_NABV012@@Z
_TEXT	SEGMENT
__Right$ = 8						; size = 4
??9?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBE_NABV012@@Z PROC ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator!=, COMDAT
; _this$ = ecx

; 302  : 			{	// test for iterator inequality

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 303  : 			return (!(*this == _Right));

  00003	8b 06		 mov	 eax, DWORD PTR [esi]
  00005	57		 push	 edi
  00006	8b 7c 24 0c	 mov	 edi, DWORD PTR __Right$[esp+4]
  0000a	85 c0		 test	 eax, eax
  0000c	74 04		 je	 SHORT $LN6@operator@5
  0000e	3b 07		 cmp	 eax, DWORD PTR [edi]
  00010	74 05		 je	 SHORT $LN5@operator@5
$LN6@operator@5:
  00012	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN5@operator@5:
  00017	8b 46 04	 mov	 eax, DWORD PTR [esi+4]
  0001a	33 c9		 xor	 ecx, ecx
  0001c	3b 47 04	 cmp	 eax, DWORD PTR [edi+4]
  0001f	5f		 pop	 edi
  00020	0f 95 c1	 setne	 cl
  00023	8a c1		 mov	 al, cl
  00025	5e		 pop	 esi

; 304  : 			}

  00026	c2 04 00	 ret	 4
??9?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBE_NABV012@@Z ENDP ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator!=
_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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 472  : 		{	// construct allocator from _Al

  00000	8b c1		 mov	 eax, ecx

; 473  : 		}

  00002	c2 04 00	 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

; 478  : 		{	// copy constructor

  00000	8b c1		 mov	 eax, ecx

; 479  : #if defined(_DEBUG)
; 480  : 		if (_Right._Myfirstiter == _IGNORE_MYITERLIST)
; 481  : 			{
; 482  : 			this->_Myfirstiter = _IGNORE_MYITERLIST;
; 483  : 			}
; 484  : #endif
; 485  : 		}

  00002	c2 04 00	 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	??1?$_Container_base_aux_alloc_real@V?$allocator@PAD@std@@@std@@IAE@XZ ; std::_Container_base_aux_alloc_real<std::allocator<char *> >::~_Container_base_aux_alloc_real<std::allocator<char *> >
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
;	COMDAT ??1?$_Container_base_aux_alloc_real@V?$allocator@PAD@std@@@std@@IAE@XZ
_TEXT	SEGMENT
??1?$_Container_base_aux_alloc_real@V?$allocator@PAD@std@@@std@@IAE@XZ PROC ; std::_Container_base_aux_alloc_real<std::allocator<char *> >::~_Container_base_aux_alloc_real<std::allocator<char *> >, COMDAT
; _this$ = ecx

; 437  : 		_Myownedaux->~_Aux_cont();
; 438  : 
; 439  : 		_Alaux.deallocate(_Myownedaux, 1);

  00000	8b 01		 mov	 eax, DWORD PTR [ecx]
  00002	50		 push	 eax
  00003	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00008	59		 pop	 ecx

; 440  : 		}

  00009	c3		 ret	 0
??1?$_Container_base_aux_alloc_real@V?$allocator@PAD@std@@@std@@IAE@XZ ENDP ; std::_Container_base_aux_alloc_real<std::allocator<char *> >::~_Container_base_aux_alloc_real<std::allocator<char *> >
_TEXT	ENDS
PUBLIC	?destroy@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@@Z ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node>::destroy
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
;	COMDAT ?destroy@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
?destroy@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@@Z PROC ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node>::destroy, COMDAT
; _this$ = ecx

; 160  : 		_Destroy(_Ptr);
; 161  : 		}

  00000	c2 04 00	 ret	 4
?destroy@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@@Z ENDP ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node>::destroy
_TEXT	ENDS
PUBLIC	??D?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBEABQADXZ ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator*
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ??D?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBEABQADXZ
_TEXT	SEGMENT
??D?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBEABQADXZ PROC ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator*, COMDAT
; _this$ = ecx

; 211  : 			{	// return designated value

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 212  : 
; 213  :  #if _HAS_ITERATOR_DEBUGGING
; 214  : 			if (this->_Mycont == 0
; 215  : 				|| _Ptr == 0
; 216  : 				|| _Ptr == ((_Myt *)this->_Mycont)->_Myhead)
; 217  : 				{
; 218  : 				_DEBUG_ERROR("list iterator not dereferencable");
; 219  : 				_SCL_SECURE_TRAITS_OUT_OF_RANGE;
; 220  : 				}
; 221  :  #else
; 222  : 			_SCL_SECURE_TRAITS_VALIDATE(this->_Has_container());

  00003	8b 06		 mov	 eax, DWORD PTR [esi]
  00005	85 c0		 test	 eax, eax
  00007	75 0b		 jne	 SHORT $LN23@operator@6
  00009	e8 00 00 00 00	 call	 __invalid_parameter_noinfo

; 223  : 			_SCL_SECURE_TRAITS_VALIDATE_RANGE(_Ptr != ((_Myt *)(this->_Getmycont()))->_Myhead);

  0000e	8b 06		 mov	 eax, DWORD PTR [esi]
  00010	85 c0		 test	 eax, eax
  00012	74 04		 je	 SHORT $LN17@operator@6
$LN23@operator@6:
  00014	8b 00		 mov	 eax, DWORD PTR [eax]
  00016	eb 02		 jmp	 SHORT $LN18@operator@6
$LN17@operator@6:
  00018	33 c0		 xor	 eax, eax
$LN18@operator@6:
  0001a	8b 4e 04	 mov	 ecx, DWORD PTR [esi+4]
  0001d	3b 48 14	 cmp	 ecx, DWORD PTR [eax+20]
  00020	75 05		 jne	 SHORT $LN3@operator@6
  00022	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN3@operator@6:

; 224  :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 225  : 
; 226  : 			return (_Myval(_Ptr));

  00027	8b 46 04	 mov	 eax, DWORD PTR [esi+4]
  0002a	83 c0 08	 add	 eax, 8
  0002d	5e		 pop	 esi

; 227  : 			}

  0002e	c3		 ret	 0
??D?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBEABQADXZ ENDP ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::operator*
_TEXT	ENDS
PUBLIC	??0?$_Bidit@PADHPBQADABQAD@std@@QAE@XZ		; std::_Bidit<char *,int,char * const *,char * const &>::_Bidit<char *,int,char * const *,char * const &>
; Function compile flags: /Ogtpy
;	COMDAT ??0?$_Bidit@PADHPBQADABQAD@std@@QAE@XZ
_TEXT	SEGMENT
??0?$_Bidit@PADHPBQADABQAD@std@@QAE@XZ PROC		; std::_Bidit<char *,int,char * const *,char * const &>::_Bidit<char *,int,char * const *,char * const &>, COMDAT
; _this$ = ecx
  00000	8b c1		 mov	 eax, ecx
  00002	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], 0
  00008	c3		 ret	 0
??0?$_Bidit@PADHPBQADABQAD@std@@QAE@XZ ENDP		; std::_Bidit<char *,int,char * const *,char * const &>::_Bidit<char *,int,char * const *,char * const &>
_TEXT	ENDS
PUBLIC	?clear@?$list@PADV?$allocator@PAD@std@@@std@@QAEXXZ ; std::list<char *,std::allocator<char *> >::clear
; Function compile flags: /Ogtpy
;	COMDAT ?clear@?$list@PADV?$allocator@PAD@std@@@std@@QAEXXZ
_TEXT	SEGMENT
?clear@?$list@PADV?$allocator@PAD@std@@@std@@QAEXXZ PROC ; std::list<char *,std::allocator<char *> >::clear, COMDAT
; _this$ = ecx

; 825  : 		{	// erase all

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 826  : 
; 827  :  #if _HAS_ITERATOR_DEBUGGING
; 828  : 		this->_Orphan_ptr(*this, 0);
; 829  :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 830  : 
; 831  : 		_Nodeptr _Pnext;
; 832  : 		_Nodeptr _Pnode = _Nextnode(_Myhead);

  00003	8b 4e 14	 mov	 ecx, DWORD PTR [esi+20]
  00006	8b 01		 mov	 eax, DWORD PTR [ecx]

; 833  : 		_Nextnode(_Myhead) = _Myhead;

  00008	89 09		 mov	 DWORD PTR [ecx], ecx

; 834  : 		_Prevnode(_Myhead) = _Myhead;

  0000a	8b 4e 14	 mov	 ecx, DWORD PTR [esi+20]
  0000d	89 49 04	 mov	 DWORD PTR [ecx+4], ecx

; 835  : 		_Mysize = 0;

  00010	c7 46 18 00 00
	00 00		 mov	 DWORD PTR [esi+24], 0

; 836  : 
; 837  : 		for (; _Pnode != _Myhead; _Pnode = _Pnext)

  00017	3b 46 14	 cmp	 eax, DWORD PTR [esi+20]
  0001a	74 17		 je	 SHORT $LN1@clear
  0001c	57		 push	 edi
  0001d	8d 49 00	 npad	 3
$LL3@clear:

; 838  : 			{	// delete an element
; 839  : 			_Pnext = _Nextnode(_Pnode);

  00020	8b 38		 mov	 edi, DWORD PTR [eax]

; 840  : 			this->_Alnod.destroy(_Pnode);
; 841  : 			this->_Alnod.deallocate(_Pnode, 1);

  00022	50		 push	 eax
  00023	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00028	83 c4 04	 add	 esp, 4
  0002b	8b c7		 mov	 eax, edi
  0002d	3b 7e 14	 cmp	 edi, DWORD PTR [esi+20]
  00030	75 ee		 jne	 SHORT $LL3@clear
  00032	5f		 pop	 edi
$LN1@clear:
  00033	5e		 pop	 esi

; 842  : 			}
; 843  : 		}

  00034	c3		 ret	 0
?clear@?$list@PADV?$allocator@PAD@std@@@std@@QAEXXZ ENDP ; std::list<char *,std::allocator<char *> >::clear
_TEXT	ENDS
PUBLIC	?allocate@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@I@Z ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node>::allocate
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
;	COMDAT ?allocate@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@I@Z
_TEXT	SEGMENT
__Count$ = 8						; size = 4
?allocate@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@I@Z PROC ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node>::allocate, COMDAT
; _this$ = ecx

; 145  : 		return (_Allocate(_Count, (pointer)0));

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Count$[esp-4]
  00004	6a 00		 push	 0
  00006	50		 push	 eax
  00007	e8 00 00 00 00	 call	 ??$_Allocate@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@YAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@0@IPAU120@@Z ; std::_Allocate<std::_List_nod<char *,std::allocator<char *> >::_Node>
  0000c	83 c4 08	 add	 esp, 8

; 146  : 		}

  0000f	c2 04 00	 ret	 4
?allocate@?$allocator@U_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@I@Z ENDP ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node>::allocate
_TEXT	ENDS
PUBLIC	?construct@?$allocator@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@ABQAU342@@Z ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node *>::construct
; Function compile flags: /Ogtpy
;	COMDAT ?construct@?$allocator@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@ABQAU342@@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
__Val$ = 12						; size = 4
?construct@?$allocator@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@ABQAU342@@Z PROC ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node *>::construct, COMDAT
; _this$ = ecx

; 155  : 		_Construct(_Ptr, _Val);

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Ptr$[esp-4]
  00004	85 c0		 test	 eax, eax
  00006	74 08		 je	 SHORT $LN5@construct
  00008	8b 4c 24 08	 mov	 ecx, DWORD PTR __Val$[esp-4]
  0000c	8b 11		 mov	 edx, DWORD PTR [ecx]
  0000e	89 10		 mov	 DWORD PTR [eax], edx
$LN5@construct:

; 156  : 		}

  00010	c2 08 00	 ret	 8
?construct@?$allocator@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@ABQAU342@@Z ENDP ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node *>::construct
_TEXT	ENDS
PUBLIC	?destroy@?$allocator@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@@Z ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node *>::destroy
; Function compile flags: /Ogtpy
;	COMDAT ?destroy@?$allocator@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
?destroy@?$allocator@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@@Z PROC ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node *>::destroy, COMDAT
; _this$ = ecx

; 160  : 		_Destroy(_Ptr);
; 161  : 		}

  00000	c2 04 00	 ret	 4
?destroy@?$allocator@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@std@@@std@@QAEXPAPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@@Z ENDP ; std::allocator<std::_List_nod<char *,std::allocator<char *> >::_Node *>::destroy
_TEXT	ENDS
PUBLIC	??0?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PBV12@@Z ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::_Const_iterator<1>
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ??0?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PBV12@@Z
_TEXT	SEGMENT
__Pnode$ = 8						; size = 4
__Plist$ = 12						; size = 4
??0?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PBV12@@Z PROC ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::_Const_iterator<1>, COMDAT
; _this$ = ecx

; 176  : 			{	// construct with node pointer _Pnode

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Pnode$[esp-4]
  00004	56		 push	 esi
  00005	57		 push	 edi

; 177  : 			_SCL_SECURE_TRAITS_VALIDATE(_Plist != NULL);

  00006	8b 7c 24 10	 mov	 edi, DWORD PTR __Plist$[esp+4]
  0000a	8b f1		 mov	 esi, ecx
  0000c	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], 0
  00012	89 46 04	 mov	 DWORD PTR [esi+4], eax
  00015	85 ff		 test	 edi, edi
  00017	75 05		 jne	 SHORT $LN3@Const_iter
  00019	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN3@Const_iter:

; 178  : 			this->_Set_container(_Plist);

  0001e	8b 0f		 mov	 ecx, DWORD PTR [edi]
  00020	5f		 pop	 edi
  00021	89 0e		 mov	 DWORD PTR [esi], ecx

; 179  : 			}

  00023	8b c6		 mov	 eax, esi
  00025	5e		 pop	 esi
  00026	c2 08 00	 ret	 8
??0?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PBV12@@Z ENDP ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::_Const_iterator<1>
_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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 1671 : 		size_type _Num = _Mybase::_Alval.max_size();
; 1672 : 		return (_Num <= 1 ? 1 : _Num - 1);

  00000	b8 fe ff ff ff	 mov	 eax, -2			; fffffffeH

; 1673 : 		}

  00005	c3		 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	?max_size@?$list@PADV?$allocator@PAD@std@@@std@@QBEIXZ ; std::list<char *,std::allocator<char *> >::max_size
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ?max_size@?$list@PADV?$allocator@PAD@std@@@std@@QBEIXZ
_TEXT	SEGMENT
?max_size@?$list@PADV?$allocator@PAD@std@@@std@@QBEIXZ PROC ; std::list<char *,std::allocator<char *> >::max_size, COMDAT
; _this$ = ecx

; 625  : 		return (this->_Alval.max_size());

  00000	b8 ff ff ff 3f	 mov	 eax, 1073741823		; 3fffffffH

; 626  : 		}

  00005	c3		 ret	 0
?max_size@?$list@PADV?$allocator@PAD@std@@@std@@QBEIXZ ENDP ; std::list<char *,std::allocator<char *> >::max_size
_TEXT	ENDS
PUBLIC	?construct@?$allocator@PAD@std@@QAEXPAPADABQAD@Z ; std::allocator<char *>::construct
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
;	COMDAT ?construct@?$allocator@PAD@std@@QAEXPAPADABQAD@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
__Val$ = 12						; size = 4
?construct@?$allocator@PAD@std@@QAEXPAPADABQAD@Z PROC	; std::allocator<char *>::construct, COMDAT
; _this$ = ecx

; 155  : 		_Construct(_Ptr, _Val);

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Ptr$[esp-4]
  00004	85 c0		 test	 eax, eax
  00006	74 08		 je	 SHORT $LN5@construct@2
  00008	8b 4c 24 08	 mov	 ecx, DWORD PTR __Val$[esp-4]
  0000c	8b 11		 mov	 edx, DWORD PTR [ecx]
  0000e	89 10		 mov	 DWORD PTR [eax], edx
$LN5@construct@2:

; 156  : 		}

  00010	c2 08 00	 ret	 8
?construct@?$allocator@PAD@std@@QAEXPAPADABQAD@Z ENDP	; std::allocator<char *>::construct
_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

; 145  : 		return (_Allocate(_Count, (pointer)0));

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Count$[esp-4]
  00004	6a 00		 push	 0
  00006	50		 push	 eax
  00007	e8 00 00 00 00	 call	 ??$_Allocate@D@std@@YAPADIPAD@Z ; std::_Allocate<char>
  0000c	83 c4 08	 add	 esp, 8

; 146  : 		}

  0000f	c2 04 00	 ret	 4
?allocate@?$allocator@D@std@@QAEPADI@Z ENDP		; std::allocator<char>::allocate
_TEXT	ENDS
PUBLIC	?allocate@?$allocator@V_Aux_cont@std@@@std@@QAEPAV_Aux_cont@2@I@Z ; std::allocator<std::_Aux_cont>::allocate
; Function compile flags: /Ogtpy
;	COMDAT ?allocate@?$allocator@V_Aux_cont@std@@@std@@QAEPAV_Aux_cont@2@I@Z
_TEXT	SEGMENT
__Count$ = 8						; size = 4
?allocate@?$allocator@V_Aux_cont@std@@@std@@QAEPAV_Aux_cont@2@I@Z PROC ; std::allocator<std::_Aux_cont>::allocate, COMDAT
; _this$ = ecx

; 145  : 		return (_Allocate(_Count, (pointer)0));

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Count$[esp-4]
  00004	6a 00		 push	 0
  00006	50		 push	 eax
  00007	e8 00 00 00 00	 call	 ??$_Allocate@V_Aux_cont@std@@@std@@YAPAV_Aux_cont@0@IPAV10@@Z ; std::_Allocate<std::_Aux_cont>
  0000c	83 c4 08	 add	 esp, 8

; 146  : 		}

  0000f	c2 04 00	 ret	 4
?allocate@?$allocator@V_Aux_cont@std@@@std@@QAEPAV_Aux_cont@2@I@Z ENDP ; std::allocator<std::_Aux_cont>::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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd
;	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

; 589  : 		return copy_s<_Traits>(_First1, _Size, _First2, _Count, _Char_traits_cat<_Traits>());

  00000	8b 44 24 10	 mov	 eax, DWORD PTR __Count$[esp-4]
  00004	8b 4c 24 0c	 mov	 ecx, DWORD PTR __First2$[esp-4]
  00008	8b 54 24 08	 mov	 edx, DWORD PTR __Size$[esp-4]
  0000c	56		 push	 esi
  0000d	8b 74 24 08	 mov	 esi, DWORD PTR __First1$[esp]
  00011	50		 push	 eax
  00012	51		 push	 ecx
  00013	52		 push	 edx
  00014	56		 push	 esi
  00015	e8 00 00 00 00	 call	 _memcpy_s
  0001a	83 c4 10	 add	 esp, 16			; 00000010H
  0001d	8b c6		 mov	 eax, esi
  0001f	5e		 pop	 esi

; 590  : 	}

  00020	c3		 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

; 616  : 		return move_s<_Traits>(_First1, _Size, _First2, _Count, _Char_traits_cat<_Traits>());

  00000	8b 44 24 10	 mov	 eax, DWORD PTR __Count$[esp-4]
  00004	8b 4c 24 0c	 mov	 ecx, DWORD PTR __First2$[esp-4]
  00008	8b 54 24 08	 mov	 edx, DWORD PTR __Size$[esp-4]
  0000c	56		 push	 esi
  0000d	8b 74 24 08	 mov	 esi, DWORD PTR __First1$[esp]
  00011	50		 push	 eax
  00012	51		 push	 ecx
  00013	52		 push	 edx
  00014	56		 push	 esi
  00015	e8 00 00 00 00	 call	 _memmove_s
  0001a	83 c4 10	 add	 esp, 16			; 00000010H
  0001d	8b c6		 mov	 eax, esi
  0001f	5e		 pop	 esi

; 617  : 	}

  00020	c3		 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	??D?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBEAAPADXZ ; std::list<char *,std::allocator<char *> >::_Iterator<1>::operator*
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ??D?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBEAAPADXZ
_TEXT	SEGMENT
??D?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBEAAPADXZ PROC ; std::list<char *,std::allocator<char *> >::_Iterator<1>::operator*, COMDAT
; _this$ = ecx

; 393  : 			{	// return designated value

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 394  : 			return ((reference)**(_Mybase_iter *)this);

  00003	8b 06		 mov	 eax, DWORD PTR [esi]
  00005	85 c0		 test	 eax, eax
  00007	75 0b		 jne	 SHORT $LN25@operator@7
  00009	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  0000e	8b 06		 mov	 eax, DWORD PTR [esi]
  00010	85 c0		 test	 eax, eax
  00012	74 04		 je	 SHORT $LN19@operator@7
$LN25@operator@7:
  00014	8b 00		 mov	 eax, DWORD PTR [eax]
  00016	eb 02		 jmp	 SHORT $LN20@operator@7
$LN19@operator@7:
  00018	33 c0		 xor	 eax, eax
$LN20@operator@7:
  0001a	8b 4e 04	 mov	 ecx, DWORD PTR [esi+4]
  0001d	3b 48 14	 cmp	 ecx, DWORD PTR [eax+20]
  00020	75 05		 jne	 SHORT $LN5@operator@7
  00022	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN5@operator@7:
  00027	8b 46 04	 mov	 eax, DWORD PTR [esi+4]
  0002a	83 c0 08	 add	 eax, 8
  0002d	5e		 pop	 esi

; 395  : 			}

  0002e	c3		 ret	 0
??D?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QBEAAPADXZ ENDP ; std::list<char *,std::allocator<char *> >::_Iterator<1>::operator*
_TEXT	ENDS
PUBLIC	??1?$_List_nod@PADV?$allocator@PAD@std@@@std@@QAE@XZ ; std::_List_nod<char *,std::allocator<char *> >::~_List_nod<char *,std::allocator<char *> >
; Function compile flags: /Ogtpy
;	COMDAT ??1?$_List_nod@PADV?$allocator@PAD@std@@@std@@QAE@XZ
_TEXT	SEGMENT
??1?$_List_nod@PADV?$allocator@PAD@std@@@std@@QAE@XZ PROC ; std::_List_nod<char *,std::allocator<char *> >::~_List_nod<char *,std::allocator<char *> >, COMDAT
; _this$ = ecx
  00000	8b 01		 mov	 eax, DWORD PTR [ecx]
  00002	50		 push	 eax
  00003	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00008	59		 pop	 ecx
  00009	c3		 ret	 0
??1?$_List_nod@PADV?$allocator@PAD@std@@@std@@QAE@XZ ENDP ; std::_List_nod<char *,std::allocator<char *> >::~_List_nod<char *,std::allocator<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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 2149 : 		if (!_Built)

  00000	80 7c 24 04 00	 cmp	 BYTE PTR __Built$[esp-4], 0
  00005	56		 push	 esi
  00006	57		 push	 edi
  00007	8b 7c 24 10	 mov	 edi, DWORD PTR __Newsize$[esp+4]
  0000b	8b f1		 mov	 esi, ecx
  0000d	74 27		 je	 SHORT $LN15@Tidy

; 2150 : 			;
; 2151 : 		else if (_BUF_SIZE <= _Myres)

  0000f	83 7e 18 10	 cmp	 DWORD PTR [esi+24], 16	; 00000010H
  00013	72 21		 jb	 SHORT $LN15@Tidy

; 2152 : 			{	// copy any leftovers to small buffer and deallocate
; 2153 : 			_Elem *_Ptr = _Bx._Ptr;

  00015	8d 46 04	 lea	 eax, DWORD PTR [esi+4]
  00018	53		 push	 ebx
  00019	8b 18		 mov	 ebx, DWORD PTR [eax]

; 2154 : 			if (0 < _Newsize)

  0001b	85 ff		 test	 edi, edi
  0001d	76 0d		 jbe	 SHORT $LN13@Tidy

; 2155 : 				_Traits_helper::copy_s<_Traits>(_Bx._Buf, _BUF_SIZE, _Ptr, _Newsize);

  0001f	57		 push	 edi
  00020	53		 push	 ebx
  00021	6a 10		 push	 16			; 00000010H
  00023	50		 push	 eax
  00024	e8 00 00 00 00	 call	 _memcpy_s
  00029	83 c4 10	 add	 esp, 16			; 00000010H
$LN13@Tidy:

; 2156 : 			_Mybase::_Alval.deallocate(_Ptr, _Myres + 1);

  0002c	53		 push	 ebx
  0002d	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00032	83 c4 04	 add	 esp, 4
  00035	5b		 pop	 ebx
$LN15@Tidy:

; 2157 : 			}
; 2158 : 		_Myres = _BUF_SIZE - 1;
; 2159 : 		_Eos(_Newsize);

  00036	89 7e 14	 mov	 DWORD PTR [esi+20], edi
  00039	c7 46 18 0f 00
	00 00		 mov	 DWORD PTR [esi+24], 15	; 0000000fH
  00040	c6 44 3e 04 00	 mov	 BYTE PTR [esi+edi+4], 0
  00045	5f		 pop	 edi
  00046	5e		 pop	 esi

; 2160 : 		}

  00047	c2 08 00	 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	?_Buynode@?$list@PADV?$allocator@PAD@std@@@std@@IAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@XZ ; std::list<char *,std::allocator<char *> >::_Buynode
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ?_Buynode@?$list@PADV?$allocator@PAD@std@@@std@@IAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@XZ
_TEXT	SEGMENT
?_Buynode@?$list@PADV?$allocator@PAD@std@@@std@@IAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@XZ PROC ; std::list<char *,std::allocator<char *> >::_Buynode, COMDAT
; _this$ = ecx

; 1172 : 		_Nodeptr _Pnode = this->_Alnod.allocate(1);

  00000	6a 0c		 push	 12			; 0000000cH
  00002	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00007	83 c4 04	 add	 esp, 4

; 1173 : 		int _Linkcnt = 0;
; 1174 : 
; 1175 : 		_TRY_BEGIN
; 1176 : 		this->_Alptr.construct(&_Nextnode(_Pnode), _Pnode);

  0000a	85 c0		 test	 eax, eax
  0000c	74 02		 je	 SHORT $LN26@Buynode
  0000e	89 00		 mov	 DWORD PTR [eax], eax
$LN26@Buynode:

; 1177 : 		++_Linkcnt;
; 1178 : 		this->_Alptr.construct(&_Prevnode(_Pnode), _Pnode);

  00010	8d 48 04	 lea	 ecx, DWORD PTR [eax+4]
  00013	85 c9		 test	 ecx, ecx
  00015	74 02		 je	 SHORT $LN36@Buynode
  00017	89 01		 mov	 DWORD PTR [ecx], eax
$LN36@Buynode:

; 1179 : 		_CATCH_ALL
; 1180 : 		if (0 < _Linkcnt)
; 1181 : 			this->_Alptr.destroy(&_Nextnode(_Pnode));
; 1182 : 		this->_Alnod.deallocate(_Pnode, 1);
; 1183 : 		_RERAISE;
; 1184 : 		_CATCH_END
; 1185 : 		return (_Pnode);
; 1186 : 		}

  00019	c3		 ret	 0
?_Buynode@?$list@PADV?$allocator@PAD@std@@@std@@IAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@XZ ENDP ; std::list<char *,std::allocator<char *> >::_Buynode
_TEXT	ENDS
PUBLIC	?_Tidy@?$list@PADV?$allocator@PAD@std@@@std@@IAEXXZ ; std::list<char *,std::allocator<char *> >::_Tidy
; Function compile flags: /Ogtpy
;	COMDAT ?_Tidy@?$list@PADV?$allocator@PAD@std@@@std@@IAEXXZ
_TEXT	SEGMENT
?_Tidy@?$list@PADV?$allocator@PAD@std@@@std@@IAEXXZ PROC ; std::list<char *,std::allocator<char *> >::_Tidy, COMDAT
; _this$ = ecx

; 1212 : 		{	// free all storage

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 1213 : 		clear();

  00003	8b 4e 14	 mov	 ecx, DWORD PTR [esi+20]
  00006	8b 01		 mov	 eax, DWORD PTR [ecx]
  00008	89 09		 mov	 DWORD PTR [ecx], ecx
  0000a	8b 4e 14	 mov	 ecx, DWORD PTR [esi+20]
  0000d	89 49 04	 mov	 DWORD PTR [ecx+4], ecx
  00010	c7 46 18 00 00
	00 00		 mov	 DWORD PTR [esi+24], 0
  00017	3b 46 14	 cmp	 eax, DWORD PTR [esi+20]
  0001a	74 17		 je	 SHORT $LN3@Tidy@2
  0001c	57		 push	 edi
  0001d	8d 49 00	 npad	 3
$LL5@Tidy@2:
  00020	8b 38		 mov	 edi, DWORD PTR [eax]
  00022	50		 push	 eax
  00023	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00028	83 c4 04	 add	 esp, 4
  0002b	8b c7		 mov	 eax, edi
  0002d	3b 7e 14	 cmp	 edi, DWORD PTR [esi+20]
  00030	75 ee		 jne	 SHORT $LL5@Tidy@2
  00032	5f		 pop	 edi
$LN3@Tidy@2:

; 1214 : 		this->_Alptr.destroy(&_Nextnode(_Myhead));
; 1215 : 		this->_Alptr.destroy(&_Prevnode(_Myhead));
; 1216 : 		this->_Alnod.deallocate(_Myhead, 1);

  00033	8b 46 14	 mov	 eax, DWORD PTR [esi+20]
  00036	50		 push	 eax
  00037	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0003c	83 c4 04	 add	 esp, 4

; 1217 : 		_Myhead = 0;

  0003f	c7 46 14 00 00
	00 00		 mov	 DWORD PTR [esi+20], 0
  00046	5e		 pop	 esi

; 1218 : 		}

  00047	c3		 ret	 0
?_Tidy@?$list@PADV?$allocator@PAD@std@@@std@@IAEXXZ ENDP ; std::list<char *,std::allocator<char *> >::_Tidy
_TEXT	ENDS
PUBLIC	??0?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PBV12@@Z ; std::list<char *,std::allocator<char *> >::_Iterator<1>::_Iterator<1>
; Function compile flags: /Ogtpy
;	COMDAT ??0?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PBV12@@Z
_TEXT	SEGMENT
__Pnode$ = 8						; size = 4
__Plist$ = 12						; size = 4
??0?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PBV12@@Z PROC ; std::list<char *,std::allocator<char *> >::_Iterator<1>::_Iterator<1>, COMDAT
; _this$ = ecx

; 361  : 			{	// construct with node pointer _Pnode

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Pnode$[esp-4]
  00004	56		 push	 esi
  00005	57		 push	 edi
  00006	8b 7c 24 10	 mov	 edi, DWORD PTR __Plist$[esp+4]
  0000a	8b f1		 mov	 esi, ecx
  0000c	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], 0
  00012	89 46 04	 mov	 DWORD PTR [esi+4], eax
  00015	85 ff		 test	 edi, edi
  00017	75 05		 jne	 SHORT $LN5@Iterator
  00019	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN5@Iterator:
  0001e	8b 0f		 mov	 ecx, DWORD PTR [edi]
  00020	5f		 pop	 edi
  00021	89 0e		 mov	 DWORD PTR [esi], ecx

; 362  : 			}

  00023	8b c6		 mov	 eax, esi
  00025	5e		 pop	 esi
  00026	c2 08 00	 ret	 8
??0?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@PAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PBV12@@Z ENDP ; std::list<char *,std::allocator<char *> >::_Iterator<1>::_Iterator<1>
_TEXT	ENDS
PUBLIC	??0?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::_Const_iterator<1>
; Function compile flags: /Ogtpy
;	COMDAT ??0?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ
_TEXT	SEGMENT
??0?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ PROC ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::_Const_iterator<1>, COMDAT
; _this$ = ecx

; 163  : 			{	// construct with null node pointer

  00000	8b c1		 mov	 eax, ecx
  00002	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], 0
  00008	c7 40 04 00 00
	00 00		 mov	 DWORD PTR [eax+4], 0

; 164  : 			}

  0000f	c3		 ret	 0
??0?$_Const_iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ ENDP ; std::list<char *,std::allocator<char *> >::_Const_iterator<1>::_Const_iterator<1>
_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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 1262 : 		{	// erase elements [_Off, _Off + _Count)

  00000	53		 push	 ebx

; 1263 : 		if (_Mysize < _Off)

  00001	8b 5c 24 08	 mov	 ebx, DWORD PTR __Off$[esp]
  00005	56		 push	 esi
  00006	8b f1		 mov	 esi, ecx
  00008	57		 push	 edi
  00009	39 5e 14	 cmp	 DWORD PTR [esi+20], ebx
  0000c	73 05		 jae	 SHORT $LN3@erase

; 1264 : 			_String_base::_Xran();	// _Off off end

  0000e	e8 00 00 00 00	 call	 ?_Xran@_String_base@std@@SAXXZ ; std::_String_base::_Xran
$LN3@erase:

; 1265 : 		if (_Mysize - _Off < _Count)

  00013	8b 46 14	 mov	 eax, DWORD PTR [esi+20]
  00016	8b 7c 24 14	 mov	 edi, DWORD PTR __Count$[esp+8]
  0001a	2b c3		 sub	 eax, ebx
  0001c	3b c7		 cmp	 eax, edi
  0001e	73 02		 jae	 SHORT $LN2@erase

; 1266 : 			_Count = _Mysize - _Off;	// trim _Count

  00020	8b f8		 mov	 edi, eax
$LN2@erase:

; 1267 : 		if (0 < _Count)

  00022	85 ff		 test	 edi, edi
  00024	76 55		 jbe	 SHORT $LN30@erase

; 1268 : 			{	// move elements down
; 1269 : 			_Traits_helper::move_s<_Traits>(_Myptr() + _Off, _Myres - _Off, _Myptr() + _Off + _Count,
; 1270 : 				_Mysize - _Off - _Count);

  00026	8b 4e 18	 mov	 ecx, DWORD PTR [esi+24]
  00029	55		 push	 ebp
  0002a	8d 6e 04	 lea	 ebp, DWORD PTR [esi+4]
  0002d	83 f9 10	 cmp	 ecx, 16			; 00000010H
  00030	72 09		 jb	 SHORT $LN8@erase
  00032	8b 55 00	 mov	 edx, DWORD PTR [ebp]
  00035	89 54 24 14	 mov	 DWORD PTR tv130[esp+12], edx
  00039	eb 04		 jmp	 SHORT $LN9@erase
$LN8@erase:
  0003b	89 6c 24 14	 mov	 DWORD PTR tv130[esp+12], ebp
$LN9@erase:
  0003f	83 f9 10	 cmp	 ecx, 16			; 00000010H
  00042	72 05		 jb	 SHORT $LN12@erase
  00044	8b 55 00	 mov	 edx, DWORD PTR [ebp]
  00047	eb 02		 jmp	 SHORT $LN13@erase
$LN12@erase:
  00049	8b d5		 mov	 edx, ebp
$LN13@erase:
  0004b	2b c7		 sub	 eax, edi
  0004d	50		 push	 eax
  0004e	8b 44 24 18	 mov	 eax, DWORD PTR tv130[esp+16]
  00052	03 c3		 add	 eax, ebx
  00054	03 c7		 add	 eax, edi
  00056	50		 push	 eax
  00057	2b cb		 sub	 ecx, ebx
  00059	51		 push	 ecx
  0005a	03 d3		 add	 edx, ebx
  0005c	52		 push	 edx
  0005d	e8 00 00 00 00	 call	 _memmove_s

; 1271 : 			size_type _Newsize = _Mysize - _Count;

  00062	8b 46 14	 mov	 eax, DWORD PTR [esi+20]
  00065	2b c7		 sub	 eax, edi
  00067	83 c4 10	 add	 esp, 16			; 00000010H

; 1272 : 			_Eos(_Newsize);

  0006a	83 7e 18 10	 cmp	 DWORD PTR [esi+24], 16	; 00000010H
  0006e	89 46 14	 mov	 DWORD PTR [esi+20], eax
  00071	72 03		 jb	 SHORT $LN26@erase
  00073	8b 6d 00	 mov	 ebp, DWORD PTR [ebp]
$LN26@erase:
  00076	c6 04 28 00	 mov	 BYTE PTR [eax+ebp], 0
  0007a	5d		 pop	 ebp
$LN30@erase:
  0007b	5f		 pop	 edi

; 1273 : 			}
; 1274 : 		return (*this);

  0007c	8b c6		 mov	 eax, esi
  0007e	5e		 pop	 esi
  0007f	5b		 pop	 ebx

; 1275 : 		}

  00080	c2 08 00	 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	?_Buynode@?$list@PADV?$allocator@PAD@std@@@std@@IAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@0ABQAD@Z ; std::list<char *,std::allocator<char *> >::_Buynode
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ?_Buynode@?$list@PADV?$allocator@PAD@std@@@std@@IAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@0ABQAD@Z
_TEXT	SEGMENT
__Next$ = 8						; size = 4
__Prev$ = 12						; size = 4
__Val$ = 16						; size = 4
?_Buynode@?$list@PADV?$allocator@PAD@std@@@std@@IAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@0ABQAD@Z PROC ; std::list<char *,std::allocator<char *> >::_Buynode, COMDAT
; _this$ = ecx

; 1191 : 		_Nodeptr _Pnode = this->_Alnod.allocate(1);

  00000	6a 0c		 push	 12			; 0000000cH
  00002	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00007	83 c4 04	 add	 esp, 4

; 1192 : 		int _Linkcnt = 0;
; 1193 : 
; 1194 : 		_TRY_BEGIN
; 1195 : 		this->_Alptr.construct(&_Nextnode(_Pnode), _Next);

  0000a	85 c0		 test	 eax, eax
  0000c	74 06		 je	 SHORT $LN27@Buynode@2
  0000e	8b 4c 24 04	 mov	 ecx, DWORD PTR __Next$[esp-4]
  00012	89 08		 mov	 DWORD PTR [eax], ecx
$LN27@Buynode@2:

; 1196 : 		++_Linkcnt;
; 1197 : 		this->_Alptr.construct(&_Prevnode(_Pnode), _Prev);

  00014	8d 48 04	 lea	 ecx, DWORD PTR [eax+4]
  00017	85 c9		 test	 ecx, ecx
  00019	74 06		 je	 SHORT $LN37@Buynode@2
  0001b	8b 54 24 08	 mov	 edx, DWORD PTR __Prev$[esp-4]
  0001f	89 11		 mov	 DWORD PTR [ecx], edx
$LN37@Buynode@2:

; 1198 : 		++_Linkcnt;
; 1199 : 		this->_Alval.construct(&_Myval(_Pnode), _Val);

  00021	8d 48 08	 lea	 ecx, DWORD PTR [eax+8]
  00024	85 c9		 test	 ecx, ecx
  00026	74 08		 je	 SHORT $LN47@Buynode@2
  00028	8b 54 24 0c	 mov	 edx, DWORD PTR __Val$[esp-4]
  0002c	8b 12		 mov	 edx, DWORD PTR [edx]
  0002e	89 11		 mov	 DWORD PTR [ecx], edx
$LN47@Buynode@2:

; 1200 : 		_CATCH_ALL
; 1201 : 		if (1 < _Linkcnt)
; 1202 : 			this->_Alptr.destroy(&_Prevnode(_Pnode));
; 1203 : 		if (0 < _Linkcnt)
; 1204 : 			this->_Alptr.destroy(&_Nextnode(_Pnode));
; 1205 : 		this->_Alnod.deallocate(_Pnode, 1);
; 1206 : 		_RERAISE;
; 1207 : 		_CATCH_END
; 1208 : 		return (_Pnode);
; 1209 : 		}

  00030	c2 0c 00	 ret	 12			; 0000000cH
?_Buynode@?$list@PADV?$allocator@PAD@std@@@std@@IAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@0ABQAD@Z ENDP ; std::list<char *,std::allocator<char *> >::_Buynode
_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 (x86)\microsoft visual studio 9.0\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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
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

; 2083 : 		{	// copy _Oldlen elements to newly allocated buffer

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 0c	 sub	 esp, 12			; 0000000cH
  00014	53		 push	 ebx
  00015	56		 push	 esi
  00016	57		 push	 edi
  00017	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0001c	33 c5		 xor	 eax, ebp
  0001e	50		 push	 eax
  0001f	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp+4]
  00022	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00028	89 65 f0	 mov	 DWORD PTR __$EHRec$[ebp], esp
  0002b	8b f9		 mov	 edi, ecx
  0002d	89 7d ec	 mov	 DWORD PTR _this$[ebp], edi

; 2084 : 		size_type _Newres = _Newsize | _ALLOC_MASK;

  00030	8b 45 08	 mov	 eax, DWORD PTR __Newsize$[ebp]
  00033	8b f0		 mov	 esi, eax
  00035	83 ce 0f	 or	 esi, 15			; 0000000fH

; 2085 : 		if (max_size() < _Newres)

  00038	83 fe fe	 cmp	 esi, -2			; fffffffeH
  0003b	76 04		 jbe	 SHORT $LN6@Copy

; 2086 : 			_Newres = _Newsize;	// undo roundup if too big

  0003d	8b f0		 mov	 esi, eax

; 2087 : 		else if (_Newres / 3 < _Myres / 2

  0003f	eb 22		 jmp	 SHORT $LN4@Copy
$LN6@Copy:

; 2088 : 			&& _Myres <= max_size() - _Myres / 2)

  00041	8b 5f 18	 mov	 ebx, DWORD PTR [edi+24]
  00044	b8 ab aa aa aa	 mov	 eax, -1431655765	; aaaaaaabH
  00049	f7 e6		 mul	 esi
  0004b	8b cb		 mov	 ecx, ebx
  0004d	d1 e9		 shr	 ecx, 1
  0004f	d1 ea		 shr	 edx, 1
  00051	3b d1		 cmp	 edx, ecx
  00053	73 0e		 jae	 SHORT $LN4@Copy
  00055	b8 fe ff ff ff	 mov	 eax, -2			; fffffffeH
  0005a	2b c1		 sub	 eax, ecx
  0005c	3b d8		 cmp	 ebx, eax
  0005e	77 03		 ja	 SHORT $LN4@Copy

; 2089 : 			_Newres = _Myres + _Myres / 2;	// grow exponentially if possible

  00060	8d 34 19	 lea	 esi, DWORD PTR [ecx+ebx]
$LN4@Copy:

; 2090 : 		_Elem *_Ptr = 0;
; 2091 : 
; 2092 : 		_TRY_BEGIN
; 2093 : 			_Ptr = _Mybase::_Alval.allocate(_Newres + 1);

  00063	8d 4e 01	 lea	 ecx, DWORD PTR [esi+1]
  00066	6a 00		 push	 0
  00068	51		 push	 ecx
  00069	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+12], 0
  00070	e8 00 00 00 00	 call	 ??$_Allocate@D@std@@YAPADIPAD@Z ; std::_Allocate<char>
  00075	83 c4 08	 add	 esp, 8
  00078	89 45 08	 mov	 DWORD PTR __Ptr$[ebp], eax
  0007b	eb 28		 jmp	 SHORT $LN16@Copy
__catch$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$0:

; 2094 : 		_CATCH_ALL
; 2095 : 			_Newres = _Newsize;	// allocation failed, undo roundup and retry

  0007d	8b 45 08	 mov	 eax, DWORD PTR __Newsize$[ebp]
  00080	89 65 f0	 mov	 DWORD PTR __$EHRec$[ebp], esp
  00083	89 45 e8	 mov	 DWORD PTR __Newres$[ebp], eax

; 2096 : 			_TRY_BEGIN
; 2097 : 				_Ptr = _Mybase::_Alval.allocate(_Newres + 1);

  00086	40		 inc	 eax
  00087	6a 00		 push	 0
  00089	50		 push	 eax
  0008a	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+12], 2
  0008e	e8 00 00 00 00	 call	 ??$_Allocate@D@std@@YAPADIPAD@Z ; std::_Allocate<char>
  00093	89 45 08	 mov	 DWORD PTR __Ptr$[ebp], eax
  00096	83 c4 08	 add	 esp, 8

; 2101 : 			_CATCH_END
; 2102 : 		_CATCH_END

  00099	b8 00 00 00 00	 mov	 eax, $LN106@Copy
  0009e	c3		 ret	 0
$LN106@Copy:
  0009f	8b 7d ec	 mov	 edi, DWORD PTR _this$[ebp]
  000a2	8b 75 e8	 mov	 esi, DWORD PTR __Newres$[ebp]
$LN16@Copy:

; 2103 : 
; 2104 : 		if (0 < _Oldlen)

  000a5	8b 5d 0c	 mov	 ebx, DWORD PTR __Oldlen$[ebp]
  000a8	85 db		 test	 ebx, ebx
  000aa	76 20		 jbe	 SHORT $LN71@Copy

; 2105 : 			_Traits_helper::copy_s<_Traits>(_Ptr, _Newres + 1, _Myptr(), _Oldlen);	// copy existing elements

  000ac	83 7f 18 10	 cmp	 DWORD PTR [edi+24], 16	; 00000010H
  000b0	72 05		 jb	 SHORT $LN63@Copy
  000b2	8b 47 04	 mov	 eax, DWORD PTR [edi+4]
  000b5	eb 03		 jmp	 SHORT $LN64@Copy
$LN63@Copy:
  000b7	8d 47 04	 lea	 eax, DWORD PTR [edi+4]
$LN64@Copy:
  000ba	53		 push	 ebx
  000bb	50		 push	 eax
  000bc	8b 45 08	 mov	 eax, DWORD PTR __Ptr$[ebp]
  000bf	8d 56 01	 lea	 edx, DWORD PTR [esi+1]
  000c2	52		 push	 edx
  000c3	50		 push	 eax
  000c4	e8 00 00 00 00	 call	 _memcpy_s
  000c9	83 c4 10	 add	 esp, 16			; 00000010H
$LN71@Copy:

; 2106 : 		_Tidy(true);

  000cc	83 7f 18 10	 cmp	 DWORD PTR [edi+24], 16	; 00000010H
  000d0	72 0c		 jb	 SHORT $LN87@Copy
  000d2	8b 4f 04	 mov	 ecx, DWORD PTR [edi+4]
  000d5	51		 push	 ecx
  000d6	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  000db	83 c4 04	 add	 esp, 4
$LN87@Copy:

; 2107 : 		_Bx._Ptr = _Ptr;

  000de	8b 4d 08	 mov	 ecx, DWORD PTR __Ptr$[ebp]
  000e1	8d 47 04	 lea	 eax, DWORD PTR [edi+4]
  000e4	c6 00 00	 mov	 BYTE PTR [eax], 0
  000e7	89 08		 mov	 DWORD PTR [eax], ecx

; 2108 : 		_Myres = _Newres;

  000e9	89 77 18	 mov	 DWORD PTR [edi+24], esi

; 2109 : 		_Eos(_Oldlen);

  000ec	89 5f 14	 mov	 DWORD PTR [edi+20], ebx
  000ef	83 fe 10	 cmp	 esi, 16			; 00000010H
  000f2	72 02		 jb	 SHORT $LN101@Copy
  000f4	8b c1		 mov	 eax, ecx
$LN101@Copy:
  000f6	c6 04 18 00	 mov	 BYTE PTR [eax+ebx], 0

; 2110 : 		}

  000fa	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp+4]
  000fd	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00104	59		 pop	 ecx
  00105	5f		 pop	 edi
  00106	5e		 pop	 esi
  00107	5b		 pop	 ebx
  00108	8b e5		 mov	 esp, ebp
  0010a	5d		 pop	 ebp
  0010b	c2 08 00	 ret	 8
__catch$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$1:

; 2098 : 			_CATCH_ALL
; 2099 : 			_Tidy(true);	// failed again, discard storage and reraise

  0010e	8b 75 ec	 mov	 esi, DWORD PTR _this$[ebp]
  00111	83 7e 18 10	 cmp	 DWORD PTR [esi+24], 16	; 00000010H
  00115	72 0c		 jb	 SHORT $LN51@Copy
  00117	8b 56 04	 mov	 edx, DWORD PTR [esi+4]
  0011a	52		 push	 edx
  0011b	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00120	83 c4 04	 add	 esp, 4
$LN51@Copy:

; 2100 : 			_RERAISE;

  00123	6a 00		 push	 0
  00125	c7 46 18 0f 00
	00 00		 mov	 DWORD PTR [esi+24], 15	; 0000000fH
  0012c	c7 46 14 00 00
	00 00		 mov	 DWORD PTR [esi+20], 0
  00133	6a 00		 push	 0
  00135	c6 46 04 00	 mov	 BYTE PTR [esi+4], 0
  00139	e8 00 00 00 00	 call	 __CxxThrowException@8
$LN110@Copy:
$LN109@Copy:
  0013e	cc		 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:
  00000	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00004	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00007	8b 4a e4	 mov	 ecx, DWORD PTR [edx-28]
  0000a	33 c8		 xor	 ecx, eax
  0000c	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00011	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z
  00016	e9 00 00 00 00	 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?$_Container_base_aux_alloc_real@V?$allocator@PAD@std@@@std@@IAE@V?$allocator@PAD@1@@Z ; std::_Container_base_aux_alloc_real<std::allocator<char *> >::_Container_base_aux_alloc_real<std::allocator<char *> >
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
;	COMDAT ??0?$_Container_base_aux_alloc_real@V?$allocator@PAD@std@@@std@@IAE@V?$allocator@PAD@1@@Z
_TEXT	SEGMENT
__Al$ = 8						; size = 1
??0?$_Container_base_aux_alloc_real@V?$allocator@PAD@std@@@std@@IAE@V?$allocator@PAD@1@@Z PROC ; std::_Container_base_aux_alloc_real<std::allocator<char *> >::_Container_base_aux_alloc_real<std::allocator<char *> >, COMDAT
; _this$ = ecx

; 419  : 		{

  00000	56		 push	 esi

; 420  : 		_Myownedaux = new (_Alaux.allocate(1)) _Aux_cont(this);

  00001	6a 04		 push	 4
  00003	8b f1		 mov	 esi, ecx
  00005	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0000a	83 c4 04	 add	 esp, 4
  0000d	85 c0		 test	 eax, eax
  0000f	74 0a		 je	 SHORT $LN3@Container_
  00011	89 30		 mov	 DWORD PTR [eax], esi
  00013	89 06		 mov	 DWORD PTR [esi], eax

; 421  : 		}

  00015	8b c6		 mov	 eax, esi
  00017	5e		 pop	 esi
  00018	c2 04 00	 ret	 4
$LN3@Container_:

; 420  : 		_Myownedaux = new (_Alaux.allocate(1)) _Aux_cont(this);

  0001b	33 c0		 xor	 eax, eax
  0001d	89 06		 mov	 DWORD PTR [esi], eax

; 421  : 		}

  0001f	8b c6		 mov	 eax, esi
  00021	5e		 pop	 esi
  00022	c2 04 00	 ret	 4
??0?$_Container_base_aux_alloc_real@V?$allocator@PAD@std@@@std@@IAE@V?$allocator@PAD@1@@Z ENDP ; std::_Container_base_aux_alloc_real<std::allocator<char *> >::_Container_base_aux_alloc_real<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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 905  : 		{	// destroy the string

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 906  : 		_Tidy(true);

  00003	83 7e 18 10	 cmp	 DWORD PTR [esi+24], 16	; 00000010H
  00007	72 0c		 jb	 SHORT $LN17@basic_stri
  00009	8b 46 04	 mov	 eax, DWORD PTR [esi+4]
  0000c	50		 push	 eax
  0000d	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00012	83 c4 04	 add	 esp, 4
$LN17@basic_stri:
  00015	33 c0		 xor	 eax, eax
  00017	c7 46 18 0f 00
	00 00		 mov	 DWORD PTR [esi+24], 15	; 0000000fH
  0001e	89 46 14	 mov	 DWORD PTR [esi+20], eax
  00021	88 46 04	 mov	 BYTE PTR [esi+4], al
  00024	5e		 pop	 esi

; 907  : 		}

  00025	c3		 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	?begin@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@XZ ; std::list<char *,std::allocator<char *> >::begin
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ?begin@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@XZ
_TEXT	SEGMENT
___$ReturnUdt$ = 8					; size = 4
?begin@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@XZ PROC ; std::list<char *,std::allocator<char *> >::begin, COMDAT
; _this$ = ecx

; 534  : 		return (iterator(_Nextnode(_Myhead), this));

  00000	8b 41 14	 mov	 eax, DWORD PTR [ecx+20]
  00003	8b 10		 mov	 edx, DWORD PTR [eax]
  00005	8b 44 24 04	 mov	 eax, DWORD PTR ___$ReturnUdt$[esp-4]
  00009	8b 09		 mov	 ecx, DWORD PTR [ecx]
  0000b	89 50 04	 mov	 DWORD PTR [eax+4], edx
  0000e	89 08		 mov	 DWORD PTR [eax], ecx

; 535  : 		}

  00010	c2 04 00	 ret	 4
?begin@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@XZ ENDP ; std::list<char *,std::allocator<char *> >::begin
_TEXT	ENDS
PUBLIC	?end@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@XZ ; std::list<char *,std::allocator<char *> >::end
; Function compile flags: /Ogtpy
;	COMDAT ?end@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@XZ
_TEXT	SEGMENT
___$ReturnUdt$ = 8					; size = 4
?end@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@XZ PROC ; std::list<char *,std::allocator<char *> >::end, COMDAT
; _this$ = ecx

; 544  : 		return (iterator(_Myhead, this));

  00000	8b 51 14	 mov	 edx, DWORD PTR [ecx+20]
  00003	8b 44 24 04	 mov	 eax, DWORD PTR ___$ReturnUdt$[esp-4]
  00007	8b 09		 mov	 ecx, DWORD PTR [ecx]
  00009	89 50 04	 mov	 DWORD PTR [eax+4], edx
  0000c	89 08		 mov	 DWORD PTR [eax], ecx

; 545  : 		}

  0000e	c2 04 00	 ret	 4
?end@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@XZ ENDP ; std::list<char *,std::allocator<char *> >::end
_TEXT	ENDS
PUBLIC	??0?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ ; std::list<char *,std::allocator<char *> >::_Iterator<1>::_Iterator<1>
; Function compile flags: /Ogtpy
;	COMDAT ??0?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ
_TEXT	SEGMENT
??0?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ PROC ; std::list<char *,std::allocator<char *> >::_Iterator<1>::_Iterator<1>, COMDAT
; _this$ = ecx

; 348  : 		_Iterator()

  00000	8b c1		 mov	 eax, ecx
  00002	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], 0
  00008	c7 40 04 00 00
	00 00		 mov	 DWORD PTR [eax+4], 0

; 349  : 			{	// construct with null node
; 350  : 			}

  0000f	c3		 ret	 0
??0?$_Iterator@$00@?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ ENDP ; std::list<char *,std::allocator<char *> >::_Iterator<1>::_Iterator<1>
_TEXT	ENDS
PUBLIC	??1?$_List_ptr@PADV?$allocator@PAD@std@@@std@@QAE@XZ ; std::_List_ptr<char *,std::allocator<char *> >::~_List_ptr<char *,std::allocator<char *> >
; Function compile flags: /Ogtpy
;	COMDAT ??1?$_List_ptr@PADV?$allocator@PAD@std@@@std@@QAE@XZ
_TEXT	SEGMENT
??1?$_List_ptr@PADV?$allocator@PAD@std@@@std@@QAE@XZ PROC ; std::_List_ptr<char *,std::allocator<char *> >::~_List_ptr<char *,std::allocator<char *> >, COMDAT
; _this$ = ecx
  00000	8b 01		 mov	 eax, DWORD PTR [ecx]
  00002	50		 push	 eax
  00003	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00008	59		 pop	 ecx
  00009	c3		 ret	 0
??1?$_List_ptr@PADV?$allocator@PAD@std@@@std@@QAE@XZ ENDP ; std::_List_ptr<char *,std::allocator<char *> >::~_List_ptr<char *,std::allocator<char *> >
_TEXT	ENDS
PUBLIC	?_Make_iter@?$list@PADV?$allocator@PAD@std@@@std@@QBE?AV?$_Iterator@$00@12@V?$_Const_iterator@$00@12@@Z ; std::list<char *,std::allocator<char *> >::_Make_iter
; Function compile flags: /Ogtpy
;	COMDAT ?_Make_iter@?$list@PADV?$allocator@PAD@std@@@std@@QBE?AV?$_Iterator@$00@12@V?$_Const_iterator@$00@12@@Z
_TEXT	SEGMENT
___$ReturnUdt$ = 8					; size = 4
__Where$ = 12						; size = 8
?_Make_iter@?$list@PADV?$allocator@PAD@std@@@std@@QBE?AV?$_Iterator@$00@12@V?$_Const_iterator@$00@12@@Z PROC ; std::list<char *,std::allocator<char *> >::_Make_iter, COMDAT
; _this$ = ecx

; 554  : 		return (iterator(_Where._Ptr, this));

  00000	8b 44 24 0c	 mov	 eax, DWORD PTR __Where$[esp]
  00004	56		 push	 esi
  00005	8b 74 24 08	 mov	 esi, DWORD PTR ___$ReturnUdt$[esp]
  00009	57		 push	 edi
  0000a	8b f9		 mov	 edi, ecx
  0000c	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], 0
  00012	89 46 04	 mov	 DWORD PTR [esi+4], eax
  00015	85 ff		 test	 edi, edi
  00017	75 05		 jne	 SHORT $LN7@Make_iter
  00019	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN7@Make_iter:
  0001e	8b 0f		 mov	 ecx, DWORD PTR [edi]
  00020	5f		 pop	 edi
  00021	89 0e		 mov	 DWORD PTR [esi], ecx
  00023	8b c6		 mov	 eax, esi
  00025	5e		 pop	 esi

; 555  : 		}

  00026	c2 0c 00	 ret	 12			; 0000000cH
?_Make_iter@?$list@PADV?$allocator@PAD@std@@@std@@QBE?AV?$_Iterator@$00@12@V?$_Const_iterator@$00@12@@Z ENDP ; std::list<char *,std::allocator<char *> >::_Make_iter
_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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 2119 : 		{	// ensure buffer is big enough, trim to size if _Trim is true

  00000	53		 push	 ebx

; 2120 : 			if (max_size() < _Newsize)

  00001	8b 5c 24 08	 mov	 ebx, DWORD PTR __Newsize$[esp]
  00005	56		 push	 esi
  00006	8b f1		 mov	 esi, ecx
  00008	83 fb fe	 cmp	 ebx, -2			; fffffffeH
  0000b	76 05		 jbe	 SHORT $LN6@Grow

; 2121 : 			_String_base::_Xlen();	// result too long

  0000d	e8 00 00 00 00	 call	 ?_Xlen@_String_base@std@@SAXXZ ; std::_String_base::_Xlen
$LN6@Grow:

; 2122 : 		if (_Myres < _Newsize)

  00012	8b 46 18	 mov	 eax, DWORD PTR [esi+24]
  00015	3b c3		 cmp	 eax, ebx
  00017	73 19		 jae	 SHORT $LN5@Grow

; 2123 : 			_Copy(_Newsize, _Mysize);	// reallocate to grow

  00019	8b 46 14	 mov	 eax, DWORD PTR [esi+20]
  0001c	50		 push	 eax
  0001d	53		 push	 ebx
  0001e	8b ce		 mov	 ecx, esi
  00020	e8 00 00 00 00	 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

; 2129 : 		return (0 < _Newsize);	// return true only if more work to do

  00025	33 c9		 xor	 ecx, ecx
  00027	3b cb		 cmp	 ecx, ebx
  00029	1b c0		 sbb	 eax, eax
  0002b	5e		 pop	 esi
  0002c	f7 d8		 neg	 eax
  0002e	5b		 pop	 ebx

; 2130 : 		}

  0002f	c2 08 00	 ret	 8
$LN5@Grow:

; 2124 : 		else if (_Trim && _Newsize < _BUF_SIZE)

  00032	80 7c 24 10 00	 cmp	 BYTE PTR __Trim$[esp+4], 0
  00037	74 52		 je	 SHORT $LN3@Grow
  00039	83 fb 10	 cmp	 ebx, 16			; 00000010H
  0003c	73 4d		 jae	 SHORT $LN3@Grow
  0003e	57		 push	 edi

; 2125 : 			_Tidy(true,	// copy and deallocate if trimming to small string
; 2126 : 				_Newsize < _Mysize ? _Newsize : _Mysize);

  0003f	8b 7e 14	 mov	 edi, DWORD PTR [esi+20]
  00042	3b df		 cmp	 ebx, edi
  00044	73 02		 jae	 SHORT $LN9@Grow
  00046	8b fb		 mov	 edi, ebx
$LN9@Grow:
  00048	83 f8 10	 cmp	 eax, 16			; 00000010H
  0004b	72 21		 jb	 SHORT $LN33@Grow
  0004d	8d 46 04	 lea	 eax, DWORD PTR [esi+4]
  00050	55		 push	 ebp
  00051	8b 28		 mov	 ebp, DWORD PTR [eax]
  00053	85 ff		 test	 edi, edi
  00055	76 0d		 jbe	 SHORT $LN31@Grow
  00057	57		 push	 edi
  00058	55		 push	 ebp
  00059	6a 10		 push	 16			; 00000010H
  0005b	50		 push	 eax
  0005c	e8 00 00 00 00	 call	 _memcpy_s
  00061	83 c4 10	 add	 esp, 16			; 00000010H
$LN31@Grow:
  00064	55		 push	 ebp
  00065	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0006a	83 c4 04	 add	 esp, 4
  0006d	5d		 pop	 ebp
$LN33@Grow:
  0006e	89 7e 14	 mov	 DWORD PTR [esi+20], edi
  00071	c7 46 18 0f 00
	00 00		 mov	 DWORD PTR [esi+24], 15	; 0000000fH

; 2129 : 		return (0 < _Newsize);	// return true only if more work to do

  00078	33 c9		 xor	 ecx, ecx
  0007a	c6 44 3e 04 00	 mov	 BYTE PTR [esi+edi+4], 0
  0007f	3b cb		 cmp	 ecx, ebx
  00081	5f		 pop	 edi
  00082	1b c0		 sbb	 eax, eax
  00084	5e		 pop	 esi
  00085	f7 d8		 neg	 eax
  00087	5b		 pop	 ebx

; 2130 : 		}

  00088	c2 08 00	 ret	 8
$LN3@Grow:

; 2127 : 		else if (_Newsize == 0)

  0008b	85 db		 test	 ebx, ebx
  0008d	75 20		 jne	 SHORT $LN49@Grow

; 2128 : 			_Eos(0);	// new size is zero, just null terminate

  0008f	89 5e 14	 mov	 DWORD PTR [esi+20], ebx
  00092	83 f8 10	 cmp	 eax, 16			; 00000010H
  00095	72 12		 jb	 SHORT $LN47@Grow
  00097	8b 76 04	 mov	 esi, DWORD PTR [esi+4]

; 2129 : 		return (0 < _Newsize);	// return true only if more work to do

  0009a	33 c9		 xor	 ecx, ecx
  0009c	3b cb		 cmp	 ecx, ebx
  0009e	88 1e		 mov	 BYTE PTR [esi], bl
  000a0	1b c0		 sbb	 eax, eax
  000a2	5e		 pop	 esi
  000a3	f7 d8		 neg	 eax
  000a5	5b		 pop	 ebx

; 2130 : 		}

  000a6	c2 08 00	 ret	 8

; 2128 : 			_Eos(0);	// new size is zero, just null terminate

$LN47@Grow:
  000a9	83 c6 04	 add	 esi, 4
  000ac	c6 06 00	 mov	 BYTE PTR [esi], 0
$LN49@Grow:

; 2129 : 		return (0 < _Newsize);	// return true only if more work to do

  000af	33 c9		 xor	 ecx, ecx
  000b1	3b cb		 cmp	 ecx, ebx
  000b3	1b c0		 sbb	 eax, eax
  000b5	5e		 pop	 esi
  000b6	f7 d8		 neg	 eax
  000b8	5b		 pop	 ebx

; 2130 : 		}

  000b9	c2 08 00	 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	??0?$_List_nod@PADV?$allocator@PAD@std@@@std@@IAE@V?$allocator@PAD@1@@Z ; std::_List_nod<char *,std::allocator<char *> >::_List_nod<char *,std::allocator<char *> >
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ??0?$_List_nod@PADV?$allocator@PAD@std@@@std@@IAE@V?$allocator@PAD@1@@Z
_TEXT	SEGMENT
__Al$ = 8						; size = 1
??0?$_List_nod@PADV?$allocator@PAD@std@@@std@@IAE@V?$allocator@PAD@1@@Z PROC ; std::_List_nod<char *,std::allocator<char *> >::_List_nod<char *,std::allocator<char *> >, COMDAT
; _this$ = ecx

; 47   : 		{	// construct allocator from _Al

  00000	56		 push	 esi
  00001	6a 04		 push	 4
  00003	8b f1		 mov	 esi, ecx
  00005	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0000a	83 c4 04	 add	 esp, 4
  0000d	85 c0		 test	 eax, eax
  0000f	74 0a		 je	 SHORT $LN8@List_nod
  00011	89 30		 mov	 DWORD PTR [eax], esi
  00013	89 06		 mov	 DWORD PTR [esi], eax

; 48   : 		}

  00015	8b c6		 mov	 eax, esi
  00017	5e		 pop	 esi
  00018	c2 04 00	 ret	 4

; 47   : 		{	// construct allocator from _Al

$LN8@List_nod:
  0001b	33 c0		 xor	 eax, eax
  0001d	89 06		 mov	 DWORD PTR [esi], eax

; 48   : 		}

  0001f	8b c6		 mov	 eax, esi
  00021	5e		 pop	 esi
  00022	c2 04 00	 ret	 4
??0?$_List_nod@PADV?$allocator@PAD@std@@@std@@IAE@V?$allocator@PAD@1@@Z ENDP ; std::_List_nod<char *,std::allocator<char *> >::_List_nod<char *,std::allocator<char *> >
_TEXT	ENDS
PUBLIC	??_7logic_error@std@@6B@			; std::logic_error::`vftable'
PUBLIC	??1logic_error@std@@UAE@XZ			; std::logic_error::~logic_error
PUBLIC	??_R4logic_error@std@@6B@			; std::logic_error::`RTTI Complete Object Locator'
PUBLIC	??_R0?AVlogic_error@std@@@8			; std::logic_error `RTTI Type Descriptor'
PUBLIC	??_R3logic_error@std@@8				; std::logic_error::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2logic_error@std@@8				; std::logic_error::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@logic_error@std@@8		; std::logic_error::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	?what@logic_error@std@@UBEPBDXZ			; std::logic_error::what
EXTRN	??_Elogic_error@std@@UAEPAXI@Z:PROC		; std::logic_error::`vector deleting destructor'
;	COMDAT ??_R1A@?0A@EA@logic_error@std@@8
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd
rdata$r	SEGMENT
??_R1A@?0A@EA@logic_error@std@@8 DD FLAT:??_R0?AVlogic_error@std@@@8 ; std::logic_error::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3logic_error@std@@8
rdata$r	ENDS
;	COMDAT ??_R2logic_error@std@@8
rdata$r	SEGMENT
??_R2logic_error@std@@8 DD FLAT:??_R1A@?0A@EA@logic_error@std@@8 ; std::logic_error::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R3logic_error@std@@8
rdata$r	SEGMENT
??_R3logic_error@std@@8 DD 00H				; std::logic_error::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2logic_error@std@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVlogic_error@std@@@8
_DATA	SEGMENT
??_R0?AVlogic_error@std@@@8 DD FLAT:??_7type_info@@6B@	; std::logic_error `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVlogic_error@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R4logic_error@std@@6B@
rdata$r	SEGMENT
??_R4logic_error@std@@6B@ DD 00H			; std::logic_error::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVlogic_error@std@@@8
	DD	FLAT:??_R3logic_error@std@@8
rdata$r	ENDS
;	COMDAT ??_7logic_error@std@@6B@
CONST	SEGMENT
??_7logic_error@std@@6B@ DD FLAT:??_R4logic_error@std@@6B@ ; std::logic_error::`vftable'
	DD	FLAT:??_Elogic_error@std@@UAEPAXI@Z
	DD	FLAT:?what@logic_error@std@@UBEPBDXZ
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\stdexcept
CONST	ENDS
;	COMDAT ??1logic_error@std@@UAE@XZ
_TEXT	SEGMENT
??1logic_error@std@@UAE@XZ PROC				; std::logic_error::~logic_error, COMDAT
; _this$ = ecx

; 30   : 		{	// destroy the object

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx
  00003	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], OFFSET ??_7logic_error@std@@6B@

; 31   : 		}

  00009	83 7e 24 10	 cmp	 DWORD PTR [esi+36], 16	; 00000010H
  0000d	72 0c		 jb	 SHORT $LN19@logic_erro
  0000f	8b 46 10	 mov	 eax, DWORD PTR [esi+16]
  00012	50		 push	 eax
  00013	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00018	83 c4 04	 add	 esp, 4
$LN19@logic_erro:
  0001b	33 c0		 xor	 eax, eax
  0001d	c7 46 24 0f 00
	00 00		 mov	 DWORD PTR [esi+36], 15	; 0000000fH
  00024	89 46 20	 mov	 DWORD PTR [esi+32], eax
  00027	88 46 10	 mov	 BYTE PTR [esi+16], al
  0002a	8b ce		 mov	 ecx, esi
  0002c	5e		 pop	 esi
  0002d	e9 00 00 00 00	 jmp	 ??1exception@std@@UAE@XZ ; std::exception::~exception
??1logic_error@std@@UAE@XZ ENDP				; std::logic_error::~logic_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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 1651 : 		return (_Myptr());

  00000	83 79 18 10	 cmp	 DWORD PTR [ecx+24], 16	; 00000010H
  00004	72 04		 jb	 SHORT $LN5@c_str
  00006	8b 41 04	 mov	 eax, DWORD PTR [ecx+4]

; 1652 : 		}

  00009	c3		 ret	 0

; 1651 : 		return (_Myptr());

$LN5@c_str:
  0000a	8d 41 04	 lea	 eax, DWORD PTR [ecx+4]

; 1652 : 		}

  0000d	c3		 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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\stdexcept
_TEXT	ENDS
;	COMDAT ?what@logic_error@std@@UBEPBDXZ
_TEXT	SEGMENT
?what@logic_error@std@@UBEPBDXZ PROC			; std::logic_error::what, COMDAT
; _this$ = ecx

; 35   : 		return (_Str.c_str());

  00000	83 79 24 10	 cmp	 DWORD PTR [ecx+36], 16	; 00000010H
  00004	72 04		 jb	 SHORT $LN7@what
  00006	8b 41 10	 mov	 eax, DWORD PTR [ecx+16]

; 36   : 		}

  00009	c3		 ret	 0

; 35   : 		return (_Str.c_str());

$LN7@what:
  0000a	8d 41 10	 lea	 eax, DWORD PTR [ecx+16]

; 36   : 		}

  0000d	c3		 ret	 0
?what@logic_error@std@@UBEPBDXZ ENDP			; std::logic_error::what
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ??_Glogic_error@std@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_Glogic_error@std@@UAEPAXI@Z PROC			; std::logic_error::`scalar deleting destructor', COMDAT
; _this$ = ecx
  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx
  00003	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], OFFSET ??_7logic_error@std@@6B@
  00009	83 7e 24 10	 cmp	 DWORD PTR [esi+36], 16	; 00000010H
  0000d	72 0c		 jb	 SHORT $LN22@scalar@2
  0000f	8b 46 10	 mov	 eax, DWORD PTR [esi+16]
  00012	50		 push	 eax
  00013	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00018	83 c4 04	 add	 esp, 4
$LN22@scalar@2:
  0001b	33 c0		 xor	 eax, eax
  0001d	c7 46 24 0f 00
	00 00		 mov	 DWORD PTR [esi+36], 15	; 0000000fH
  00024	89 46 20	 mov	 DWORD PTR [esi+32], eax
  00027	8b ce		 mov	 ecx, esi
  00029	88 46 10	 mov	 BYTE PTR [esi+16], al
  0002c	e8 00 00 00 00	 call	 ??1exception@std@@UAE@XZ ; std::exception::~exception
  00031	f6 44 24 08 01	 test	 BYTE PTR ___flags$[esp], 1
  00036	74 09		 je	 SHORT $LN32@scalar@2
  00038	56		 push	 esi
  00039	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0003e	83 c4 04	 add	 esp, 4
$LN32@scalar@2:
  00041	8b c6		 mov	 eax, esi
  00043	5e		 pop	 esi
  00044	c2 04 00	 ret	 4
??_Glogic_error@std@@UAEPAXI@Z ENDP			; std::logic_error::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	?CreateHandle@_CPostItMemoryBlock@@QAEPAXXZ	; _CPostItMemoryBlock::CreateHandle
EXTRN	__imp__GlobalUnlock@4:PROC
EXTRN	__imp__GlobalLock@4:PROC
EXTRN	__imp__GlobalAlloc@8:PROC
EXTRN	_memcpy:PROC
; Function compile flags: /Ogtpy
; File d:\# metin2\work in progress\source client\client\eterbase\cpostit.cpp
;	COMDAT ?CreateHandle@_CPostItMemoryBlock@@QAEPAXXZ
_TEXT	SEGMENT
_this$ = -8						; size = 4
_hBlock$ = -4						; size = 4
?CreateHandle@_CPostItMemoryBlock@@QAEPAXXZ PROC	; _CPostItMemoryBlock::CreateHandle, COMDAT
; _this$ = ecx

; 197  : {

  00000	83 ec 08	 sub	 esp, 8

; 198  : 	if( m_StrList.size() == 0 )

  00003	83 79 1c 00	 cmp	 DWORD PTR [ecx+28], 0
  00007	89 0c 24	 mov	 DWORD PTR _this$[esp+8], ecx
  0000a	75 07		 jne	 SHORT $LN9@CreateHand

; 199  : 		return INVALID_HANDLE_VALUE;

  0000c	83 c8 ff	 or	 eax, -1

; 226  : }

  0000f	83 c4 08	 add	 esp, 8
  00012	c3		 ret	 0
$LN9@CreateHand:

; 200  : 	DWORD dwBlockSize = sizeof( DWORD );
; 201  : 	StrListItr itr;
; 202  : 
; 203  : 	// Calculation for Memory Block Size
; 204  : 	for( itr = m_StrList.begin(); itr != m_StrList.end(); ++itr ) {

  00013	8b 41 18	 mov	 eax, DWORD PTR [ecx+24]
  00016	8b 00		 mov	 eax, DWORD PTR [eax]
  00018	53		 push	 ebx
  00019	55		 push	 ebp
  0001a	56		 push	 esi
  0001b	8b 71 04	 mov	 esi, DWORD PTR [ecx+4]
  0001e	bb 04 00 00 00	 mov	 ebx, 4
  00023	8b e8		 mov	 ebp, eax
  00025	57		 push	 edi
$LL57@CreateHand:
  00026	8b 79 18	 mov	 edi, DWORD PTR [ecx+24]
  00029	8b 41 04	 mov	 eax, DWORD PTR [ecx+4]
  0002c	85 f6		 test	 esi, esi
  0002e	74 04		 je	 SHORT $LN93@CreateHand
  00030	3b f0		 cmp	 esi, eax
  00032	74 05		 je	 SHORT $LN92@CreateHand
$LN93@CreateHand:
  00034	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN92@CreateHand:
  00039	3b ef		 cmp	 ebp, edi
  0003b	74 54		 je	 SHORT $LN6@CreateHand

; 205  : 		dwBlockSize += sizeof( WORD );

  0003d	83 c3 02	 add	 ebx, 2

; 206  : 		dwBlockSize += (DWORD) strlen( *itr );

  00040	85 f6		 test	 esi, esi
  00042	75 45		 jne	 SHORT $LN310@CreateHand
  00044	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  00049	33 c0		 xor	 eax, eax
$LN121@CreateHand:
  0004b	3b 68 14	 cmp	 ebp, DWORD PTR [eax+20]
  0004e	75 05		 jne	 SHORT $LN106@CreateHand
  00050	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN106@CreateHand:
  00055	8b 45 08	 mov	 eax, DWORD PTR [ebp+8]
  00058	8d 50 01	 lea	 edx, DWORD PTR [eax+1]
  0005b	eb 03 8d 49 00	 npad	 5
$LL311@CreateHand:
  00060	8a 08		 mov	 cl, BYTE PTR [eax]
  00062	40		 inc	 eax
  00063	84 c9		 test	 cl, cl
  00065	75 f9		 jne	 SHORT $LL311@CreateHand
  00067	2b c2		 sub	 eax, edx
  00069	03 d8		 add	 ebx, eax
  0006b	85 f6		 test	 esi, esi
  0006d	75 1e		 jne	 SHORT $LN309@CreateHand
  0006f	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  00074	33 c0		 xor	 eax, eax
$LN64@CreateHand:

; 200  : 	DWORD dwBlockSize = sizeof( DWORD );
; 201  : 	StrListItr itr;
; 202  : 
; 203  : 	// Calculation for Memory Block Size
; 204  : 	for( itr = m_StrList.begin(); itr != m_StrList.end(); ++itr ) {

  00076	3b 68 14	 cmp	 ebp, DWORD PTR [eax+20]
  00079	75 05		 jne	 SHORT $LN49@CreateHand
  0007b	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN49@CreateHand:
  00080	8b 6d 00	 mov	 ebp, DWORD PTR [ebp]
  00083	8b 4c 24 10	 mov	 ecx, DWORD PTR _this$[esp+24]
  00087	eb 9d		 jmp	 SHORT $LL57@CreateHand
$LN310@CreateHand:

; 206  : 		dwBlockSize += (DWORD) strlen( *itr );

  00089	8b 06		 mov	 eax, DWORD PTR [esi]
  0008b	eb be		 jmp	 SHORT $LN121@CreateHand
$LN309@CreateHand:

; 200  : 	DWORD dwBlockSize = sizeof( DWORD );
; 201  : 	StrListItr itr;
; 202  : 
; 203  : 	// Calculation for Memory Block Size
; 204  : 	for( itr = m_StrList.begin(); itr != m_StrList.end(); ++itr ) {

  0008d	8b 06		 mov	 eax, DWORD PTR [esi]
  0008f	eb e5		 jmp	 SHORT $LN64@CreateHand
$LN6@CreateHand:

; 207  : 	}
; 208  : 
; 209  : 	HANDLE hBlock = ::GlobalAlloc( GMEM_ZEROINIT | GMEM_MOVEABLE, dwBlockSize );

  00091	53		 push	 ebx
  00092	6a 42		 push	 66			; 00000042H
  00094	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GlobalAlloc@8
  0009a	8b f0		 mov	 esi, eax
  0009c	89 74 24 14	 mov	 DWORD PTR _hBlock$[esp+24], esi

; 210  : 	if( hBlock == NULL )

  000a0	85 f6		 test	 esi, esi

; 211  : 		return INVALID_HANDLE_VALUE;

  000a2	74 14		 je	 SHORT $LN319@CreateHand

; 212  : 	LPBYTE lpBuffer = (LPBYTE) ::GlobalLock( hBlock );

  000a4	56		 push	 esi
  000a5	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GlobalLock@4
  000ab	8b e8		 mov	 ebp, eax

; 213  : 	if( lpBuffer == NULL ) {

  000ad	85 ed		 test	 ebp, ebp
  000af	75 12		 jne	 SHORT $LN4@CreateHand

; 214  : 		::GlobalFree( hBlock );

  000b1	56		 push	 esi
  000b2	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GlobalFree@4
$LN319@CreateHand:
  000b8	5f		 pop	 edi
  000b9	5e		 pop	 esi
  000ba	5d		 pop	 ebp

; 215  : 		return INVALID_HANDLE_VALUE;

  000bb	83 c8 ff	 or	 eax, -1
  000be	5b		 pop	 ebx

; 226  : }

  000bf	83 c4 08	 add	 esp, 8
  000c2	c3		 ret	 0
$LN4@CreateHand:

; 216  : 	}
; 217  : 	*((LPDWORD) lpBuffer) = (DWORD) m_StrList.size();	lpBuffer += sizeof( DWORD );

  000c3	8b 4c 24 10	 mov	 ecx, DWORD PTR _this$[esp+24]
  000c7	8b 51 1c	 mov	 edx, DWORD PTR [ecx+28]
  000ca	89 55 00	 mov	 DWORD PTR [ebp], edx

; 218  : 	for( itr = m_StrList.begin(); itr != m_StrList.end(); ++itr ) {

  000cd	8b 41 18	 mov	 eax, DWORD PTR [ecx+24]
  000d0	8b 00		 mov	 eax, DWORD PTR [eax]
  000d2	8b 71 04	 mov	 esi, DWORD PTR [ecx+4]
  000d5	83 c5 04	 add	 ebp, 4
  000d8	8b d8		 mov	 ebx, eax
  000da	8d 9b 00 00 00
	00		 npad	 6
$LL161@CreateHand:
  000e0	8b 79 18	 mov	 edi, DWORD PTR [ecx+24]
  000e3	8b 41 04	 mov	 eax, DWORD PTR [ecx+4]
  000e6	85 f6		 test	 esi, esi
  000e8	74 04		 je	 SHORT $LN197@CreateHand
  000ea	3b f0		 cmp	 esi, eax
  000ec	74 05		 je	 SHORT $LN196@CreateHand
$LN197@CreateHand:
  000ee	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN196@CreateHand:
  000f3	3b df		 cmp	 ebx, edi
  000f5	0f 84 ea 00 00
	00		 je	 $LN1@CreateHand

; 219  : 		*((LPWORD) lpBuffer) = (WORD) strlen( *itr );	lpBuffer += sizeof( WORD );

  000fb	85 f6		 test	 esi, esi
  000fd	0f 85 c8 00 00
	00		 jne	 $LN308@CreateHand
  00103	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  00108	33 c0		 xor	 eax, eax
$LN225@CreateHand:
  0010a	3b 58 14	 cmp	 ebx, DWORD PTR [eax+20]
  0010d	75 05		 jne	 SHORT $LN210@CreateHand
  0010f	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN210@CreateHand:
  00114	8b 43 08	 mov	 eax, DWORD PTR [ebx+8]
  00117	8d 50 01	 lea	 edx, DWORD PTR [eax+1]
  0011a	8d 9b 00 00 00
	00		 npad	 6
$LL312@CreateHand:
  00120	8a 08		 mov	 cl, BYTE PTR [eax]
  00122	40		 inc	 eax
  00123	84 c9		 test	 cl, cl
  00125	75 f9		 jne	 SHORT $LL312@CreateHand
  00127	2b c2		 sub	 eax, edx
  00129	66 89 45 00	 mov	 WORD PTR [ebp], ax
  0012d	83 c5 02	 add	 ebp, 2

; 220  : 		::CopyMemory( lpBuffer, *itr, strlen( *itr ) );	lpBuffer += strlen( *itr );

  00130	85 f6		 test	 esi, esi
  00132	0f 85 9a 00 00
	00		 jne	 $LN307@CreateHand
  00138	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  0013d	33 c0		 xor	 eax, eax
$LN249@CreateHand:
  0013f	3b 58 14	 cmp	 ebx, DWORD PTR [eax+20]
  00142	75 05		 jne	 SHORT $LN234@CreateHand
  00144	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN234@CreateHand:
  00149	8b 43 08	 mov	 eax, DWORD PTR [ebx+8]
  0014c	8d 50 01	 lea	 edx, DWORD PTR [eax+1]
  0014f	90		 npad	 1
$LL313@CreateHand:
  00150	8a 08		 mov	 cl, BYTE PTR [eax]
  00152	40		 inc	 eax
  00153	84 c9		 test	 cl, cl
  00155	75 f9		 jne	 SHORT $LL313@CreateHand
  00157	2b c2		 sub	 eax, edx
  00159	8b f8		 mov	 edi, eax
  0015b	85 f6		 test	 esi, esi
  0015d	75 7a		 jne	 SHORT $LN306@CreateHand
  0015f	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  00164	33 c0		 xor	 eax, eax
$LN273@CreateHand:
  00166	3b 58 14	 cmp	 ebx, DWORD PTR [eax+20]
  00169	75 05		 jne	 SHORT $LN258@CreateHand
  0016b	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN258@CreateHand:
  00170	8b 4b 08	 mov	 ecx, DWORD PTR [ebx+8]
  00173	57		 push	 edi
  00174	51		 push	 ecx
  00175	55		 push	 ebp
  00176	e8 00 00 00 00	 call	 _memcpy
  0017b	83 c4 0c	 add	 esp, 12			; 0000000cH
  0017e	85 f6		 test	 esi, esi
  00180	75 5b		 jne	 SHORT $LN305@CreateHand
  00182	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  00187	33 c0		 xor	 eax, eax
$LN297@CreateHand:
  00189	3b 58 14	 cmp	 ebx, DWORD PTR [eax+20]
  0018c	75 05		 jne	 SHORT $LN282@CreateHand
  0018e	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN282@CreateHand:
  00193	8b 43 08	 mov	 eax, DWORD PTR [ebx+8]
  00196	8d 50 01	 lea	 edx, DWORD PTR [eax+1]
  00199	8d a4 24 00 00
	00 00		 npad	 7
$LL314@CreateHand:
  001a0	8a 08		 mov	 cl, BYTE PTR [eax]
  001a2	40		 inc	 eax
  001a3	84 c9		 test	 cl, cl
  001a5	75 f9		 jne	 SHORT $LL314@CreateHand
  001a7	2b c2		 sub	 eax, edx
  001a9	03 e8		 add	 ebp, eax
  001ab	85 f6		 test	 esi, esi
  001ad	75 32		 jne	 SHORT $LN304@CreateHand
  001af	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  001b4	33 c0		 xor	 eax, eax
$LN168@CreateHand:

; 218  : 	for( itr = m_StrList.begin(); itr != m_StrList.end(); ++itr ) {

  001b6	3b 58 14	 cmp	 ebx, DWORD PTR [eax+20]
  001b9	75 05		 jne	 SHORT $LN153@CreateHand
  001bb	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN153@CreateHand:
  001c0	8b 1b		 mov	 ebx, DWORD PTR [ebx]
  001c2	8b 4c 24 10	 mov	 ecx, DWORD PTR _this$[esp+24]
  001c6	e9 15 ff ff ff	 jmp	 $LL161@CreateHand
$LN308@CreateHand:

; 219  : 		*((LPWORD) lpBuffer) = (WORD) strlen( *itr );	lpBuffer += sizeof( WORD );

  001cb	8b 06		 mov	 eax, DWORD PTR [esi]
  001cd	e9 38 ff ff ff	 jmp	 $LN225@CreateHand
$LN307@CreateHand:

; 220  : 		::CopyMemory( lpBuffer, *itr, strlen( *itr ) );	lpBuffer += strlen( *itr );

  001d2	8b 06		 mov	 eax, DWORD PTR [esi]
  001d4	e9 66 ff ff ff	 jmp	 $LN249@CreateHand
$LN306@CreateHand:
  001d9	8b 06		 mov	 eax, DWORD PTR [esi]
  001db	eb 89		 jmp	 SHORT $LN273@CreateHand
$LN305@CreateHand:
  001dd	8b 06		 mov	 eax, DWORD PTR [esi]
  001df	eb a8		 jmp	 SHORT $LN297@CreateHand
$LN304@CreateHand:

; 218  : 	for( itr = m_StrList.begin(); itr != m_StrList.end(); ++itr ) {

  001e1	8b 06		 mov	 eax, DWORD PTR [esi]
  001e3	eb d1		 jmp	 SHORT $LN168@CreateHand
$LN1@CreateHand:

; 221  : 	}
; 222  : 	::GlobalUnlock( hBlock );

  001e5	8b 74 24 14	 mov	 esi, DWORD PTR _hBlock$[esp+24]
  001e9	56		 push	 esi
  001ea	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GlobalUnlock@4

; 223  : 
; 224  : 	m_hHandle = hBlock;

  001f0	8b 54 24 10	 mov	 edx, DWORD PTR _this$[esp+24]
  001f4	5f		 pop	 edi
  001f5	89 32		 mov	 DWORD PTR [edx], esi

; 225  : 	return hBlock;

  001f7	8b c6		 mov	 eax, esi
  001f9	5e		 pop	 esi
  001fa	5d		 pop	 ebp
  001fb	5b		 pop	 ebx

; 226  : }

  001fc	83 c4 08	 add	 esp, 8
  001ff	c3		 ret	 0
?CreateHandle@_CPostItMemoryBlock@@QAEPAXXZ ENDP	; _CPostItMemoryBlock::CreateHandle
_TEXT	ENDS
PUBLIC	?Find@_CPostItMemoryBlock@@QAEPADPBD@Z		; _CPostItMemoryBlock::Find
EXTRN	__strnicmp:PROC
; Function compile flags: /Ogtpy
;	COMDAT ?Find@_CPostItMemoryBlock@@QAEPADPBD@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_lpszKeyName$ = 8					; size = 4
?Find@_CPostItMemoryBlock@@QAEPADPBD@Z PROC		; _CPostItMemoryBlock::Find, COMDAT
; _this$ = ecx

; 236  : {

  00000	51		 push	 ecx

; 237  : 	for( StrListItr itr = m_StrList.begin(); itr != m_StrList.end(); ++itr ) {

  00001	8b 41 18	 mov	 eax, DWORD PTR [ecx+24]
  00004	53		 push	 ebx
  00005	8b 18		 mov	 ebx, DWORD PTR [eax]
  00007	55		 push	 ebp
  00008	8b 6c 24 10	 mov	 ebp, DWORD PTR _lpszKeyName$[esp+8]
  0000c	56		 push	 esi
  0000d	57		 push	 edi
  0000e	8b 79 04	 mov	 edi, DWORD PTR [ecx+4]
  00011	89 4c 24 10	 mov	 DWORD PTR _this$[esp+20], ecx
$LL41@Find:
  00015	8b 71 18	 mov	 esi, DWORD PTR [ecx+24]
  00018	8b 41 04	 mov	 eax, DWORD PTR [ecx+4]
  0001b	85 ff		 test	 edi, edi
  0001d	74 04		 je	 SHORT $LN77@Find
  0001f	3b f8		 cmp	 edi, eax
  00021	74 05		 je	 SHORT $LN76@Find
$LN77@Find:
  00023	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN76@Find:
  00028	3b de		 cmp	 ebx, esi
  0002a	0f 84 81 00 00
	00		 je	 $LN3@Find

; 238  : 		LPSTR	lpszText = *itr;

  00030	85 ff		 test	 edi, edi
  00032	75 6b		 jne	 SHORT $LN112@Find
  00034	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  00039	33 c0		 xor	 eax, eax
$LN105@Find:
  0003b	3b 58 14	 cmp	 ebx, DWORD PTR [eax+20]
  0003e	75 05		 jne	 SHORT $LN90@Find
  00040	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN90@Find:
  00045	8b 73 08	 mov	 esi, DWORD PTR [ebx+8]

; 239  : 
; 240  : 		if( _strnicmp( lpszText, lpszKeyName, strlen( lpszKeyName ) ) != 0 )

  00048	8b c5		 mov	 eax, ebp
  0004a	8d 50 01	 lea	 edx, DWORD PTR [eax+1]
  0004d	8d 49 00	 npad	 3
$LL113@Find:
  00050	8a 08		 mov	 cl, BYTE PTR [eax]
  00052	40		 inc	 eax
  00053	84 c9		 test	 cl, cl
  00055	75 f9		 jne	 SHORT $LL113@Find
  00057	2b c2		 sub	 eax, edx
  00059	50		 push	 eax
  0005a	55		 push	 ebp
  0005b	56		 push	 esi
  0005c	e8 00 00 00 00	 call	 __strnicmp
  00061	83 c4 0c	 add	 esp, 12			; 0000000cH
  00064	85 c0		 test	 eax, eax
  00066	75 17		 jne	 SHORT $LN4@Find

; 241  : 			continue;
; 242  : 		if( *(lpszText + strlen( lpszKeyName )) != '=' )

  00068	8b c5		 mov	 eax, ebp
  0006a	8d 50 01	 lea	 edx, DWORD PTR [eax+1]
  0006d	8d 49 00	 npad	 3
$LL114@Find:
  00070	8a 08		 mov	 cl, BYTE PTR [eax]
  00072	40		 inc	 eax
  00073	84 c9		 test	 cl, cl
  00075	75 f9		 jne	 SHORT $LL114@Find
  00077	2b c2		 sub	 eax, edx
  00079	80 3c 30 3d	 cmp	 BYTE PTR [eax+esi], 61	; 0000003dH
  0007d	74 28		 je	 SHORT $LN1@Find
$LN4@Find:

; 237  : 	for( StrListItr itr = m_StrList.begin(); itr != m_StrList.end(); ++itr ) {

  0007f	85 ff		 test	 edi, edi
  00081	75 20		 jne	 SHORT $LN111@Find
  00083	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  00088	33 c0		 xor	 eax, eax
$LN48@Find:
  0008a	3b 58 14	 cmp	 ebx, DWORD PTR [eax+20]
  0008d	75 05		 jne	 SHORT $LN33@Find
  0008f	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN33@Find:
  00094	8b 1b		 mov	 ebx, DWORD PTR [ebx]
  00096	8b 4c 24 10	 mov	 ecx, DWORD PTR _this$[esp+20]
  0009a	e9 76 ff ff ff	 jmp	 $LL41@Find
$LN112@Find:

; 238  : 		LPSTR	lpszText = *itr;

  0009f	8b 07		 mov	 eax, DWORD PTR [edi]
  000a1	eb 98		 jmp	 SHORT $LN105@Find
$LN111@Find:

; 237  : 	for( StrListItr itr = m_StrList.begin(); itr != m_StrList.end(); ++itr ) {

  000a3	8b 07		 mov	 eax, DWORD PTR [edi]
  000a5	eb e3		 jmp	 SHORT $LN48@Find
$LN1@Find:
  000a7	5f		 pop	 edi

; 243  : 			continue;
; 244  : 		return lpszText;

  000a8	8b c6		 mov	 eax, esi
  000aa	5e		 pop	 esi
  000ab	5d		 pop	 ebp
  000ac	5b		 pop	 ebx

; 247  : }

  000ad	59		 pop	 ecx
  000ae	c2 04 00	 ret	 4
$LN3@Find:
  000b1	5f		 pop	 edi
  000b2	5e		 pop	 esi
  000b3	5d		 pop	 ebp

; 245  : 	}
; 246  : 	return NULL;

  000b4	33 c0		 xor	 eax, eax
  000b6	5b		 pop	 ebx

; 247  : }

  000b7	59		 pop	 ecx
  000b8	c2 04 00	 ret	 4
?Find@_CPostItMemoryBlock@@QAEPADPBD@Z ENDP		; _CPostItMemoryBlock::Find
_TEXT	ENDS
PUBLIC	?Get@_CPostItMemoryBlock@@QAEHPBDPADK@Z		; _CPostItMemoryBlock::Get
EXTRN	_strncpy:PROC
EXTRN	_memset:PROC
; Function compile flags: /Ogtpy
;	COMDAT ?Get@_CPostItMemoryBlock@@QAEHPBDPADK@Z
_TEXT	SEGMENT
_lpszKeyName$ = 8					; size = 4
_lpBuffer$ = 12						; size = 4
_nSize$ = 16						; size = 4
?Get@_CPostItMemoryBlock@@QAEHPBDPADK@Z PROC		; _CPostItMemoryBlock::Get, COMDAT
; _this$ = ecx

; 291  : {

  00000	56		 push	 esi

; 292  : 	LPSTR lpszText = Find( lpszKeyName );

  00001	8b 74 24 08	 mov	 esi, DWORD PTR _lpszKeyName$[esp]
  00005	56		 push	 esi
  00006	e8 00 00 00 00	 call	 ?Find@_CPostItMemoryBlock@@QAEPADPBD@Z ; _CPostItMemoryBlock::Find

; 293  : 	if( lpszText == NULL )

  0000b	85 c0		 test	 eax, eax
  0000d	75 04		 jne	 SHORT $LN1@Get
  0000f	5e		 pop	 esi

; 299  : }

  00010	c2 0c 00	 ret	 12			; 0000000cH
$LN1@Get:

; 294  : 		return FALSE;
; 295  : 	lpszText += (strlen( lpszKeyName ) + 1);

  00013	8b ce		 mov	 ecx, esi
  00015	8d 71 01	 lea	 esi, DWORD PTR [ecx+1]
$LL6@Get:
  00018	8a 11		 mov	 dl, BYTE PTR [ecx]
  0001a	41		 inc	 ecx
  0001b	84 d2		 test	 dl, dl
  0001d	75 f9		 jne	 SHORT $LL6@Get
  0001f	53		 push	 ebx

; 296  : 	::ZeroMemory( lpBuffer, nSize );

  00020	8b 5c 24 10	 mov	 ebx, DWORD PTR _lpBuffer$[esp+4]
  00024	57		 push	 edi
  00025	8b 7c 24 18	 mov	 edi, DWORD PTR _nSize$[esp+8]
  00029	57		 push	 edi
  0002a	2b ce		 sub	 ecx, esi
  0002c	6a 00		 push	 0
  0002e	53		 push	 ebx
  0002f	8d 74 08 01	 lea	 esi, DWORD PTR [eax+ecx+1]
  00033	e8 00 00 00 00	 call	 _memset

; 297  : 	strncpy( lpBuffer, lpszText, (nSize < strlen( lpszText )) ? nSize : strlen( lpszText ) );

  00038	8b c6		 mov	 eax, esi
  0003a	83 c4 0c	 add	 esp, 12			; 0000000cH
  0003d	8d 50 01	 lea	 edx, DWORD PTR [eax+1]
$LL7@Get:
  00040	8a 08		 mov	 cl, BYTE PTR [eax]
  00042	40		 inc	 eax
  00043	84 c9		 test	 cl, cl
  00045	75 f9		 jne	 SHORT $LL7@Get
  00047	2b c2		 sub	 eax, edx
  00049	3b f8		 cmp	 edi, eax
  0004b	73 04		 jae	 SHORT $LN4@Get
  0004d	8b c7		 mov	 eax, edi
  0004f	eb 0e		 jmp	 SHORT $LN5@Get
$LN4@Get:
  00051	8b c6		 mov	 eax, esi
  00053	8d 50 01	 lea	 edx, DWORD PTR [eax+1]
$LL8@Get:
  00056	8a 08		 mov	 cl, BYTE PTR [eax]
  00058	40		 inc	 eax
  00059	84 c9		 test	 cl, cl
  0005b	75 f9		 jne	 SHORT $LL8@Get
  0005d	2b c2		 sub	 eax, edx
$LN5@Get:
  0005f	50		 push	 eax
  00060	56		 push	 esi
  00061	53		 push	 ebx
  00062	e8 00 00 00 00	 call	 _strncpy
  00067	83 c4 0c	 add	 esp, 12			; 0000000cH
  0006a	5f		 pop	 edi
  0006b	5b		 pop	 ebx

; 298  : 	return TRUE;

  0006c	b8 01 00 00 00	 mov	 eax, 1
  00071	5e		 pop	 esi

; 299  : }

  00072	c2 0c 00	 ret	 12			; 0000000cH
?Get@_CPostItMemoryBlock@@QAEHPBDPADK@Z ENDP		; _CPostItMemoryBlock::Get
_TEXT	ENDS
PUBLIC	?erase@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@V?$_Const_iterator@$00@12@@Z ; std::list<char *,std::allocator<char *> >::erase
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ?erase@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@V?$_Const_iterator@$00@12@@Z
_TEXT	SEGMENT
$T100143 = -8						; size = 8
___$ReturnUdt$ = 8					; size = 4
__Where$ = 12						; size = 8
?erase@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@V?$_Const_iterator@$00@12@@Z PROC ; std::list<char *,std::allocator<char *> >::erase, COMDAT
; _this$ = ecx

; 786  : 		{	// erase element at _Where

  00000	83 ec 08	 sub	 esp, 8

; 787  : 
; 788  :  #if _HAS_ITERATOR_DEBUGGING
; 789  : 		if (_Where._Mycont != this || _Where._Ptr == _Myhead)
; 790  : 			_DEBUG_ERROR("list erase iterator outside range");
; 791  : 		_Nodeptr _Pnode = (_Where++)._Mynode();
; 792  : 		_Orphan_ptr(*this, _Pnode);
; 793  : 
; 794  :  #else /* _HAS_ITERATOR_DEBUGGING */
; 795  : 		_Nodeptr _Pnode = (_Where++)._Mynode();

  00003	8b 44 24 10	 mov	 eax, DWORD PTR __Where$[esp+4]
  00007	56		 push	 esi
  00008	8b 74 24 18	 mov	 esi, DWORD PTR __Where$[esp+12]
  0000c	57		 push	 edi
  0000d	8b f9		 mov	 edi, ecx
  0000f	89 44 24 08	 mov	 DWORD PTR $T100143[esp+16], eax
  00013	85 c0		 test	 eax, eax
  00015	75 0d		 jne	 SHORT $LN63@erase@2
  00017	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  0001c	8b 44 24 18	 mov	 eax, DWORD PTR __Where$[esp+12]
  00020	85 c0		 test	 eax, eax
  00022	74 04		 je	 SHORT $LN22@erase@2
$LN63@erase@2:
  00024	8b 00		 mov	 eax, DWORD PTR [eax]
  00026	eb 02		 jmp	 SHORT $LN23@erase@2
$LN22@erase@2:
  00028	33 c0		 xor	 eax, eax
$LN23@erase@2:
  0002a	8b 4c 24 1c	 mov	 ecx, DWORD PTR __Where$[esp+16]
  0002e	3b 48 14	 cmp	 ecx, DWORD PTR [eax+20]
  00031	75 05		 jne	 SHORT $LN8@erase@2
  00033	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN8@erase@2:
  00038	8b 54 24 1c	 mov	 edx, DWORD PTR __Where$[esp+16]
  0003c	8b 02		 mov	 eax, DWORD PTR [edx]
  0003e	89 44 24 1c	 mov	 DWORD PTR __Where$[esp+16], eax

; 796  :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 797  : 
; 798  : 		if (_Pnode != _Myhead)

  00042	3b 77 14	 cmp	 esi, DWORD PTR [edi+20]
  00045	74 1b		 je	 SHORT $LN1@erase@2

; 799  : 			{	// not list head, safe to erase
; 800  : 			_Nextnode(_Prevnode(_Pnode)) = _Nextnode(_Pnode);

  00047	8b 4e 04	 mov	 ecx, DWORD PTR [esi+4]
  0004a	8b 16		 mov	 edx, DWORD PTR [esi]
  0004c	89 11		 mov	 DWORD PTR [ecx], edx

; 801  : 			_Prevnode(_Nextnode(_Pnode)) = _Prevnode(_Pnode);

  0004e	8b 06		 mov	 eax, DWORD PTR [esi]
  00050	8b 4e 04	 mov	 ecx, DWORD PTR [esi+4]

; 802  : 			this->_Alnod.destroy(_Pnode);
; 803  : 			this->_Alnod.deallocate(_Pnode, 1);

  00053	56		 push	 esi
  00054	89 48 04	 mov	 DWORD PTR [eax+4], ecx
  00057	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0005c	83 c4 04	 add	 esp, 4

; 804  : 			--_Mysize;

  0005f	ff 4f 18	 dec	 DWORD PTR [edi+24]
$LN1@erase@2:

; 805  : 			}
; 806  : 		return (_Make_iter(_Where));

  00062	8b 0f		 mov	 ecx, DWORD PTR [edi]
  00064	8b 44 24 14	 mov	 eax, DWORD PTR ___$ReturnUdt$[esp+12]
  00068	8b 54 24 1c	 mov	 edx, DWORD PTR __Where$[esp+16]
  0006c	5f		 pop	 edi
  0006d	89 50 04	 mov	 DWORD PTR [eax+4], edx
  00070	89 08		 mov	 DWORD PTR [eax], ecx
  00072	5e		 pop	 esi

; 807  : 		}

  00073	83 c4 08	 add	 esp, 8
  00076	c2 0c 00	 ret	 12			; 0000000cH
?erase@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@V?$_Const_iterator@$00@12@@Z ENDP ; std::list<char *,std::allocator<char *> >::erase
_TEXT	ENDS
PUBLIC	??1?$_List_val@PADV?$allocator@PAD@std@@@std@@QAE@XZ ; std::_List_val<char *,std::allocator<char *> >::~_List_val<char *,std::allocator<char *> >
; Function compile flags: /Ogtpy
;	COMDAT ??1?$_List_val@PADV?$allocator@PAD@std@@@std@@QAE@XZ
_TEXT	SEGMENT
??1?$_List_val@PADV?$allocator@PAD@std@@@std@@QAE@XZ PROC ; std::_List_val<char *,std::allocator<char *> >::~_List_val<char *,std::allocator<char *> >, COMDAT
; _this$ = ecx
  00000	8b 01		 mov	 eax, DWORD PTR [ecx]
  00002	50		 push	 eax
  00003	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00008	59		 pop	 ecx
  00009	c3		 ret	 0
??1?$_List_val@PADV?$allocator@PAD@std@@@std@@QAE@XZ ENDP ; std::_List_val<char *,std::allocator<char *> >::~_List_val<char *,std::allocator<char *> >
_TEXT	ENDS
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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 1046 : 		{	// assign _Right [_Roff, _Roff + _Count)

  00000	53		 push	 ebx

; 1047 : 		if (_Right.size() < _Roff)

  00001	8b 5c 24 08	 mov	 ebx, DWORD PTR __Right$[esp]
  00005	55		 push	 ebp
  00006	8b 6c 24 10	 mov	 ebp, DWORD PTR __Roff$[esp+4]
  0000a	56		 push	 esi
  0000b	57		 push	 edi
  0000c	8b f1		 mov	 esi, ecx
  0000e	39 6b 14	 cmp	 DWORD PTR [ebx+20], ebp
  00011	73 05		 jae	 SHORT $LN5@assign

; 1048 : 			_String_base::_Xran();	// _Roff off end

  00013	e8 00 00 00 00	 call	 ?_Xran@_String_base@std@@SAXXZ ; std::_String_base::_Xran
$LN5@assign:

; 1049 : 		size_type _Num = _Right.size() - _Roff;

  00018	8b 7b 14	 mov	 edi, DWORD PTR [ebx+20]

; 1050 : 		if (_Count < _Num)

  0001b	8b 44 24 1c	 mov	 eax, DWORD PTR __Count$[esp+12]
  0001f	2b fd		 sub	 edi, ebp
  00021	3b c7		 cmp	 eax, edi
  00023	73 02		 jae	 SHORT $LN4@assign

; 1051 : 			_Num = _Count;	// trim _Num to size

  00025	8b f8		 mov	 edi, eax
$LN4@assign:

; 1052 : 
; 1053 : 		if (this == &_Right)

  00027	3b f3		 cmp	 esi, ebx
  00029	75 1f		 jne	 SHORT $LN3@assign

; 1054 : 			erase((size_type)(_Roff + _Num)), erase(0, _Roff);	// substring

  0002b	6a ff		 push	 -1
  0002d	03 fd		 add	 edi, ebp
  0002f	57		 push	 edi
  00030	8b ce		 mov	 ecx, esi
  00032	e8 00 00 00 00	 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
  00037	55		 push	 ebp
  00038	6a 00		 push	 0
  0003a	8b ce		 mov	 ecx, esi
  0003c	e8 00 00 00 00	 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
  00041	5f		 pop	 edi

; 1059 : 			}
; 1060 : 		return (*this);

  00042	8b c6		 mov	 eax, esi
  00044	5e		 pop	 esi
  00045	5d		 pop	 ebp
  00046	5b		 pop	 ebx

; 1061 : 		}

  00047	c2 0c 00	 ret	 12			; 0000000cH
$LN3@assign:

; 1055 : 		else if (_Grow(_Num))

  0004a	83 ff fe	 cmp	 edi, -2			; fffffffeH
  0004d	76 05		 jbe	 SHORT $LN17@assign
  0004f	e8 00 00 00 00	 call	 ?_Xlen@_String_base@std@@SAXXZ ; std::_String_base::_Xlen
$LN17@assign:
  00054	8b 46 18	 mov	 eax, DWORD PTR [esi+24]
  00057	3b c7		 cmp	 eax, edi
  00059	73 1b		 jae	 SHORT $LN16@assign
  0005b	8b 46 14	 mov	 eax, DWORD PTR [esi+20]
  0005e	50		 push	 eax
  0005f	57		 push	 edi
  00060	8b ce		 mov	 ecx, esi
  00062	e8 00 00 00 00	 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
  00067	85 ff		 test	 edi, edi
$LN87@assign:
  00069	76 66		 jbe	 SHORT $LN86@assign

; 1056 : 			{	// make room and assign new stuff
; 1057 : 			_Traits_helper::copy_s<_Traits>(_Myptr(), _Myres, _Right._Myptr() + _Roff, _Num);

  0006b	83 7b 18 10	 cmp	 DWORD PTR [ebx+24], 16	; 00000010H
  0006f	72 2f		 jb	 SHORT $LN64@assign
  00071	8b 53 04	 mov	 edx, DWORD PTR [ebx+4]
  00074	eb 2d		 jmp	 SHORT $LN65@assign

; 1055 : 		else if (_Grow(_Num))

$LN16@assign:
  00076	85 ff		 test	 edi, edi
  00078	75 ef		 jne	 SHORT $LN87@assign
  0007a	89 7e 14	 mov	 DWORD PTR [esi+20], edi
  0007d	83 f8 10	 cmp	 eax, 16			; 00000010H
  00080	72 0f		 jb	 SHORT $LN58@assign
  00082	8b 46 04	 mov	 eax, DWORD PTR [esi+4]
  00085	5f		 pop	 edi
  00086	c6 00 00	 mov	 BYTE PTR [eax], 0

; 1059 : 			}
; 1060 : 		return (*this);

  00089	8b c6		 mov	 eax, esi
  0008b	5e		 pop	 esi
  0008c	5d		 pop	 ebp
  0008d	5b		 pop	 ebx

; 1061 : 		}

  0008e	c2 0c 00	 ret	 12			; 0000000cH

; 1055 : 		else if (_Grow(_Num))

$LN58@assign:
  00091	8d 46 04	 lea	 eax, DWORD PTR [esi+4]
  00094	5f		 pop	 edi
  00095	c6 00 00	 mov	 BYTE PTR [eax], 0

; 1059 : 			}
; 1060 : 		return (*this);

  00098	8b c6		 mov	 eax, esi
  0009a	5e		 pop	 esi
  0009b	5d		 pop	 ebp
  0009c	5b		 pop	 ebx

; 1061 : 		}

  0009d	c2 0c 00	 ret	 12			; 0000000cH

; 1056 : 			{	// make room and assign new stuff
; 1057 : 			_Traits_helper::copy_s<_Traits>(_Myptr(), _Myres, _Right._Myptr() + _Roff, _Num);

$LN64@assign:
  000a0	8d 53 04	 lea	 edx, DWORD PTR [ebx+4]
$LN65@assign:
  000a3	8b 4e 18	 mov	 ecx, DWORD PTR [esi+24]
  000a6	8d 5e 04	 lea	 ebx, DWORD PTR [esi+4]
  000a9	83 f9 10	 cmp	 ecx, 16			; 00000010H
  000ac	72 04		 jb	 SHORT $LN68@assign
  000ae	8b 03		 mov	 eax, DWORD PTR [ebx]
  000b0	eb 02		 jmp	 SHORT $LN69@assign
$LN68@assign:
  000b2	8b c3		 mov	 eax, ebx
$LN69@assign:
  000b4	57		 push	 edi
  000b5	03 d5		 add	 edx, ebp
  000b7	52		 push	 edx
  000b8	51		 push	 ecx
  000b9	50		 push	 eax
  000ba	e8 00 00 00 00	 call	 _memcpy_s
  000bf	83 c4 10	 add	 esp, 16			; 00000010H

; 1058 : 			_Eos(_Num);

  000c2	83 7e 18 10	 cmp	 DWORD PTR [esi+24], 16	; 00000010H
  000c6	89 7e 14	 mov	 DWORD PTR [esi+20], edi
  000c9	72 02		 jb	 SHORT $LN82@assign
  000cb	8b 1b		 mov	 ebx, DWORD PTR [ebx]
$LN82@assign:
  000cd	c6 04 3b 00	 mov	 BYTE PTR [ebx+edi], 0
$LN86@assign:
  000d1	5f		 pop	 edi

; 1059 : 			}
; 1060 : 		return (*this);

  000d2	8b c6		 mov	 eax, esi
  000d4	5e		 pop	 esi
  000d5	5d		 pop	 ebp
  000d6	5b		 pop	 ebx

; 1061 : 		}

  000d7	c2 0c 00	 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
__Count$ = 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

; 1064 : 		{	// assign [_Ptr, _Ptr + _Count)

  00000	55		 push	 ebp

; 1065 : 
; 1066 :  #if _HAS_ITERATOR_DEBUGGING
; 1067 : 		if (_Count != 0)
; 1068 : 			_DEBUG_POINTER(_Ptr);
; 1069 :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 1070 : 
; 1071 : 		if (_Inside(_Ptr))

  00001	8b 6c 24 08	 mov	 ebp, DWORD PTR __Ptr$[esp]
  00005	56		 push	 esi
  00006	57		 push	 edi
  00007	8b f1		 mov	 esi, ecx
  00009	85 ed		 test	 ebp, ebp
  0000b	74 46		 je	 SHORT $LN93@assign@2
  0000d	8b 56 18	 mov	 edx, DWORD PTR [esi+24]
  00010	8d 46 04	 lea	 eax, DWORD PTR [esi+4]
  00013	83 fa 10	 cmp	 edx, 16			; 00000010H
  00016	72 04		 jb	 SHORT $LN12@assign@2
  00018	8b 08		 mov	 ecx, DWORD PTR [eax]
  0001a	eb 02		 jmp	 SHORT $LN13@assign@2
$LN12@assign@2:
  0001c	8b c8		 mov	 ecx, eax
$LN13@assign@2:
  0001e	3b e9		 cmp	 ebp, ecx
  00020	72 31		 jb	 SHORT $LN93@assign@2
  00022	83 fa 10	 cmp	 edx, 16			; 00000010H
  00025	72 04		 jb	 SHORT $LN16@assign@2
  00027	8b 08		 mov	 ecx, DWORD PTR [eax]
  00029	eb 02		 jmp	 SHORT $LN17@assign@2
$LN16@assign@2:
  0002b	8b c8		 mov	 ecx, eax
$LN17@assign@2:
  0002d	8b 7e 14	 mov	 edi, DWORD PTR [esi+20]
  00030	03 f9		 add	 edi, ecx
  00032	3b fd		 cmp	 edi, ebp
  00034	76 1d		 jbe	 SHORT $LN93@assign@2

; 1072 : 			return (assign(*this, _Ptr - _Myptr(), _Count));	// substring

  00036	83 fa 10	 cmp	 edx, 16			; 00000010H
  00039	72 02		 jb	 SHORT $LN20@assign@2
  0003b	8b 00		 mov	 eax, DWORD PTR [eax]
$LN20@assign@2:
  0003d	8b 4c 24 14	 mov	 ecx, DWORD PTR __Count$[esp+8]
  00041	51		 push	 ecx
  00042	2b e8		 sub	 ebp, eax
  00044	55		 push	 ebp
  00045	56		 push	 esi
  00046	8b ce		 mov	 ecx, esi
  00048	e8 00 00 00 00	 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
  0004d	5f		 pop	 edi
  0004e	5e		 pop	 esi
  0004f	5d		 pop	 ebp

; 1080 : 		}

  00050	c2 08 00	 ret	 8
$LN93@assign@2:

; 1073 : 
; 1074 : 		if (_Grow(_Count))

  00053	8b 7c 24 14	 mov	 edi, DWORD PTR __Count$[esp+8]
  00057	83 ff fe	 cmp	 edi, -2			; fffffffeH
  0005a	76 05		 jbe	 SHORT $LN27@assign@2
  0005c	e8 00 00 00 00	 call	 ?_Xlen@_String_base@std@@SAXXZ ; std::_String_base::_Xlen
$LN27@assign@2:
  00061	8b 46 18	 mov	 eax, DWORD PTR [esi+24]
  00064	3b c7		 cmp	 eax, edi
  00066	73 20		 jae	 SHORT $LN26@assign@2
  00068	8b 56 14	 mov	 edx, DWORD PTR [esi+20]
  0006b	52		 push	 edx
  0006c	57		 push	 edi
  0006d	8b ce		 mov	 ecx, esi
  0006f	e8 00 00 00 00	 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
  00074	85 ff		 test	 edi, edi
$LN94@assign@2:
  00076	76 56		 jbe	 SHORT $LN90@assign@2

; 1075 : 			{	// make room and assign new stuff
; 1076 : 			_Traits_helper::copy_s<_Traits>(_Myptr(), _Myres, _Ptr, _Count);

  00078	8b 4e 18	 mov	 ecx, DWORD PTR [esi+24]
  0007b	53		 push	 ebx
  0007c	8d 5e 04	 lea	 ebx, DWORD PTR [esi+4]
  0007f	83 f9 10	 cmp	 ecx, 16			; 00000010H
  00082	72 2c		 jb	 SHORT $LN74@assign@2
  00084	8b 03		 mov	 eax, DWORD PTR [ebx]
  00086	eb 2a		 jmp	 SHORT $LN75@assign@2

; 1073 : 
; 1074 : 		if (_Grow(_Count))

$LN26@assign@2:
  00088	85 ff		 test	 edi, edi
  0008a	75 ea		 jne	 SHORT $LN94@assign@2
  0008c	89 7e 14	 mov	 DWORD PTR [esi+20], edi
  0008f	83 f8 10	 cmp	 eax, 16			; 00000010H
  00092	72 0e		 jb	 SHORT $LN68@assign@2
  00094	8b 46 04	 mov	 eax, DWORD PTR [esi+4]
  00097	5f		 pop	 edi
  00098	c6 00 00	 mov	 BYTE PTR [eax], 0

; 1078 : 			}
; 1079 : 		return (*this);

  0009b	8b c6		 mov	 eax, esi
  0009d	5e		 pop	 esi
  0009e	5d		 pop	 ebp

; 1080 : 		}

  0009f	c2 08 00	 ret	 8

; 1073 : 
; 1074 : 		if (_Grow(_Count))

$LN68@assign@2:
  000a2	8d 46 04	 lea	 eax, DWORD PTR [esi+4]
  000a5	5f		 pop	 edi
  000a6	c6 00 00	 mov	 BYTE PTR [eax], 0

; 1078 : 			}
; 1079 : 		return (*this);

  000a9	8b c6		 mov	 eax, esi
  000ab	5e		 pop	 esi
  000ac	5d		 pop	 ebp

; 1080 : 		}

  000ad	c2 08 00	 ret	 8

; 1075 : 			{	// make room and assign new stuff
; 1076 : 			_Traits_helper::copy_s<_Traits>(_Myptr(), _Myres, _Ptr, _Count);

$LN74@assign@2:
  000b0	8b c3		 mov	 eax, ebx
$LN75@assign@2:
  000b2	57		 push	 edi
  000b3	55		 push	 ebp
  000b4	51		 push	 ecx
  000b5	50		 push	 eax
  000b6	e8 00 00 00 00	 call	 _memcpy_s
  000bb	83 c4 10	 add	 esp, 16			; 00000010H

; 1077 : 			_Eos(_Count);

  000be	83 7e 18 10	 cmp	 DWORD PTR [esi+24], 16	; 00000010H
  000c2	89 7e 14	 mov	 DWORD PTR [esi+20], edi
  000c5	72 02		 jb	 SHORT $LN88@assign@2
  000c7	8b 1b		 mov	 ebx, DWORD PTR [ebx]
$LN88@assign@2:
  000c9	c6 04 3b 00	 mov	 BYTE PTR [ebx+edi], 0
  000cd	5b		 pop	 ebx
$LN90@assign@2:
  000ce	5f		 pop	 edi

; 1078 : 			}
; 1079 : 		return (*this);

  000cf	8b c6		 mov	 eax, esi
  000d1	5e		 pop	 esi
  000d2	5d		 pop	 ebp

; 1080 : 		}

  000d3	c2 08 00	 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?$_List_ptr@PADV?$allocator@PAD@std@@@std@@IAE@V?$allocator@PAD@1@@Z ; std::_List_ptr<char *,std::allocator<char *> >::_List_ptr<char *,std::allocator<char *> >
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ??0?$_List_ptr@PADV?$allocator@PAD@std@@@std@@IAE@V?$allocator@PAD@1@@Z
_TEXT	SEGMENT
__Al$ = 8						; size = 1
??0?$_List_ptr@PADV?$allocator@PAD@std@@@std@@IAE@V?$allocator@PAD@1@@Z PROC ; std::_List_ptr<char *,std::allocator<char *> >::_List_ptr<char *,std::allocator<char *> >, COMDAT
; _this$ = ecx

; 67   : 		{	// construct base, and allocator from _Al

  00000	56		 push	 esi
  00001	6a 04		 push	 4
  00003	8b f1		 mov	 esi, ecx
  00005	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0000a	83 c4 04	 add	 esp, 4
  0000d	85 c0		 test	 eax, eax
  0000f	74 0a		 je	 SHORT $LN13@List_ptr
  00011	89 30		 mov	 DWORD PTR [eax], esi
  00013	89 06		 mov	 DWORD PTR [esi], eax

; 68   : 		}

  00015	8b c6		 mov	 eax, esi
  00017	5e		 pop	 esi
  00018	c2 04 00	 ret	 4

; 67   : 		{	// construct base, and allocator from _Al

$LN13@List_ptr:
  0001b	33 c0		 xor	 eax, eax
  0001d	89 06		 mov	 DWORD PTR [esi], eax

; 68   : 		}

  0001f	8b c6		 mov	 eax, esi
  00021	5e		 pop	 esi
  00022	c2 04 00	 ret	 4
??0?$_List_ptr@PADV?$allocator@PAD@std@@@std@@IAE@V?$allocator@PAD@1@@Z ENDP ; std::_List_ptr<char *,std::allocator<char *> >::_List_ptr<char *,std::allocator<char *> >
_TEXT	ENDS
PUBLIC	?Flush@CPostIt@@QAEHXZ				; CPostIt::Flush
EXTRN	__imp__CloseClipboard@0:PROC
EXTRN	__imp__SetClipboardData@8:PROC
EXTRN	__imp__OpenClipboard@4:PROC
EXTRN	__imp__RegisterClipboardFormatA@4:PROC
; Function compile flags: /Ogtpy
; File d:\# metin2\work in progress\source client\client\eterbase\cpostit.cpp
;	COMDAT ?Flush@CPostIt@@QAEHXZ
_TEXT	SEGMENT
?Flush@CPostIt@@QAEHXZ PROC				; CPostIt::Flush, COMDAT
; _this$ = ecx

; 60   : {

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 61   : 	if( m_bModified == FALSE )

  00003	83 3e 00	 cmp	 DWORD PTR [esi], 0
  00006	75 04		 jne	 SHORT $LN4@Flush
$LN9@Flush:

; 62   : 		return FALSE;

  00008	33 c0		 xor	 eax, eax
  0000a	5e		 pop	 esi

; 80   : }

  0000b	c3		 ret	 0
$LN4@Flush:

; 63   : 	if( m_pMemoryBlock == NULL )

  0000c	83 be 08 01 00
	00 00		 cmp	 DWORD PTR [esi+264], 0

; 64   : 		return FALSE;

  00013	74 f3		 je	 SHORT $LN9@Flush
  00015	57		 push	 edi

; 65   : 	UINT	uDGPFormat;
; 66   : 
; 67   : 	uDGPFormat = ::RegisterClipboardFormatA( m_szClipFormatName );

  00016	8d 46 04	 lea	 eax, DWORD PTR [esi+4]
  00019	50		 push	 eax
  0001a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__RegisterClipboardFormatA@4

; 68   : 	if( ::OpenClipboard( NULL ) == FALSE )

  00020	6a 00		 push	 0
  00022	8b f8		 mov	 edi, eax
  00024	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__OpenClipboard@4
  0002a	85 c0		 test	 eax, eax
  0002c	75 03		 jne	 SHORT $LN2@Flush
  0002e	5f		 pop	 edi
  0002f	5e		 pop	 esi

; 80   : }

  00030	c3		 ret	 0
$LN2@Flush:

; 69   : 		return FALSE;
; 70   : 	if( ::SetClipboardData( uDGPFormat, m_pMemoryBlock->CreateHandle() ) == NULL ) {

  00031	8b 8e 08 01 00
	00		 mov	 ecx, DWORD PTR [esi+264]
  00037	e8 00 00 00 00	 call	 ?CreateHandle@_CPostItMemoryBlock@@QAEPAXXZ ; _CPostItMemoryBlock::CreateHandle
  0003c	50		 push	 eax
  0003d	57		 push	 edi
  0003e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetClipboardData@8
  00044	85 c0		 test	 eax, eax
  00046	75 18		 jne	 SHORT $LN1@Flush

; 71   : //		DWORD dwLastError = ::GetLastError();
; 72   : 		m_pMemoryBlock->DestroyHandle();

  00048	8b 8e 08 01 00
	00		 mov	 ecx, DWORD PTR [esi+264]
  0004e	e8 00 00 00 00	 call	 ?DestroyHandle@_CPostItMemoryBlock@@QAEHXZ ; _CPostItMemoryBlock::DestroyHandle

; 73   : 		::CloseClipboard();

  00053	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__CloseClipboard@0

; 74   : 		m_bModified = FALSE;
; 75   : 		return FALSE;

  00059	33 c0		 xor	 eax, eax
  0005b	5f		 pop	 edi

; 78   : 	m_bModified = FALSE;

  0005c	89 06		 mov	 DWORD PTR [esi], eax
  0005e	5e		 pop	 esi

; 80   : }

  0005f	c3		 ret	 0
$LN1@Flush:

; 76   : 	}
; 77   : 	::CloseClipboard();

  00060	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__CloseClipboard@0
  00066	5f		 pop	 edi

; 78   : 	m_bModified = FALSE;

  00067	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], 0

; 79   : 	return TRUE;

  0006d	b8 01 00 00 00	 mov	 eax, 1
  00072	5e		 pop	 esi

; 80   : }

  00073	c3		 ret	 0
?Flush@CPostIt@@QAEHXZ ENDP				; CPostIt::Flush
_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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 721  : 		{	// construct by copying _Right

  00000	56		 push	 esi

; 722  : 		_Tidy();

  00001	33 c0		 xor	 eax, eax
  00003	8b f1		 mov	 esi, ecx

; 723  : 		assign(_Right, 0, npos);

  00005	6a ff		 push	 -1
  00007	89 46 14	 mov	 DWORD PTR [esi+20], eax
  0000a	c7 46 18 0f 00
	00 00		 mov	 DWORD PTR [esi+24], 15	; 0000000fH
  00011	50		 push	 eax
  00012	88 46 04	 mov	 BYTE PTR [esi+4], al
  00015	8b 44 24 10	 mov	 eax, DWORD PTR __Right$[esp+8]
  00019	50		 push	 eax
  0001a	e8 00 00 00 00	 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

; 724  : 		}

  0001f	8b c6		 mov	 eax, esi
  00021	5e		 pop	 esi
  00022	c2 04 00	 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	??1?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ	; std::list<char *,std::allocator<char *> >::~list<char *,std::allocator<char *> >
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ??1?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ
_TEXT	SEGMENT
??1?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ PROC	; std::list<char *,std::allocator<char *> >::~list<char *,std::allocator<char *> >, COMDAT
; _this$ = ecx

; 520  : 		{	// destroy the object

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 521  : 		_Tidy();

  00003	e8 00 00 00 00	 call	 ?_Tidy@?$list@PADV?$allocator@PAD@std@@@std@@IAEXXZ ; std::list<char *,std::allocator<char *> >::_Tidy

; 522  : 		}

  00008	8b 06		 mov	 eax, DWORD PTR [esi]
  0000a	50		 push	 eax
  0000b	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00010	83 c4 04	 add	 esp, 4
  00013	5e		 pop	 esi
  00014	c3		 ret	 0
??1?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ ENDP	; std::list<char *,std::allocator<char *> >::~list<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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 1083 : 		{	// assign [_Ptr, <null>)

  00000	56		 push	 esi

; 1084 : 		_DEBUG_POINTER(_Ptr);
; 1085 : 		return (assign(_Ptr, _Traits::length(_Ptr)));

  00001	8b 74 24 08	 mov	 esi, DWORD PTR __Ptr$[esp]
  00005	8b c6		 mov	 eax, esi
  00007	57		 push	 edi
  00008	8d 78 01	 lea	 edi, DWORD PTR [eax+1]
  0000b	eb 03 8d 49 00	 npad	 5
$LL5@assign@3:
  00010	8a 10		 mov	 dl, BYTE PTR [eax]
  00012	40		 inc	 eax
  00013	84 d2		 test	 dl, dl
  00015	75 f9		 jne	 SHORT $LL5@assign@3
  00017	2b c7		 sub	 eax, edi
  00019	50		 push	 eax
  0001a	56		 push	 esi
  0001b	e8 00 00 00 00	 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
  00020	5f		 pop	 edi
  00021	5e		 pop	 esi

; 1086 : 		}

  00022	c2 04 00	 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	??0?$_List_val@PADV?$allocator@PAD@std@@@std@@QAE@V?$allocator@PAD@1@@Z ; std::_List_val<char *,std::allocator<char *> >::_List_val<char *,std::allocator<char *> >
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ??0?$_List_val@PADV?$allocator@PAD@std@@@std@@QAE@V?$allocator@PAD@1@@Z
_TEXT	SEGMENT
__Al$ = 8						; size = 1
??0?$_List_val@PADV?$allocator@PAD@std@@@std@@QAE@V?$allocator@PAD@1@@Z PROC ; std::_List_val<char *,std::allocator<char *> >::_List_val<char *,std::allocator<char *> >, COMDAT
; _this$ = ecx

; 85   : 		{	// construct base, and allocator from _Al

  00000	56		 push	 esi
  00001	6a 04		 push	 4
  00003	8b f1		 mov	 esi, ecx
  00005	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0000a	83 c4 04	 add	 esp, 4
  0000d	85 c0		 test	 eax, eax
  0000f	74 0a		 je	 SHORT $LN18@List_val
  00011	89 30		 mov	 DWORD PTR [eax], esi
  00013	89 06		 mov	 DWORD PTR [esi], eax

; 86   : 		}

  00015	8b c6		 mov	 eax, esi
  00017	5e		 pop	 esi
  00018	c2 04 00	 ret	 4

; 85   : 		{	// construct base, and allocator from _Al

$LN18@List_val:
  0001b	33 c0		 xor	 eax, eax
  0001d	89 06		 mov	 DWORD PTR [esi], eax

; 86   : 		}

  0001f	8b c6		 mov	 eax, esi
  00021	5e		 pop	 esi
  00022	c2 04 00	 ret	 4
??0?$_List_val@PADV?$allocator@PAD@std@@@std@@QAE@V?$allocator@PAD@1@@Z ENDP ; std::_List_val<char *,std::allocator<char *> >::_List_val<char *,std::allocator<char *> >
_TEXT	ENDS
PUBLIC	??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::logic_error::logic_error
EXTRN	??0exception@std@@QAE@XZ:PROC			; std::exception::exception
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd
xdata$x	SEGMENT
__unwindtable$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z$0
__ehfuncinfo$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0logic_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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\stdexcept
xdata$x	ENDS
;	COMDAT ??0logic_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
??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z PROC ; std::logic_error::logic_error, COMDAT
; _this$ = ecx

; 26   : 		{	// construct from message string

  00000	6a ff		 push	 -1
  00002	68 00 00 00 00	 push	 __ehhandler$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z
  00007	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  0000d	50		 push	 eax
  0000e	51		 push	 ecx
  0000f	56		 push	 esi
  00010	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00015	33 c4		 xor	 eax, esp
  00017	50		 push	 eax
  00018	8d 44 24 0c	 lea	 eax, DWORD PTR __$EHRec$[esp+24]
  0001c	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00022	8b f1		 mov	 esi, ecx
  00024	89 74 24 08	 mov	 DWORD PTR _this$[esp+24], esi
  00028	e8 00 00 00 00	 call	 ??0exception@std@@QAE@XZ ; std::exception::exception
  0002d	33 c0		 xor	 eax, eax
  0002f	8d 4e 0c	 lea	 ecx, DWORD PTR [esi+12]
  00032	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], OFFSET ??_7logic_error@std@@6B@
  00038	6a ff		 push	 -1
  0003a	89 41 14	 mov	 DWORD PTR [ecx+20], eax
  0003d	c7 41 18 0f 00
	00 00		 mov	 DWORD PTR [ecx+24], 15	; 0000000fH
  00044	50		 push	 eax
  00045	89 44 24 1c	 mov	 DWORD PTR __$EHRec$[esp+40], eax
  00049	88 41 04	 mov	 BYTE PTR [ecx+4], al
  0004c	8b 44 24 24	 mov	 eax, DWORD PTR __Message$[esp+28]
  00050	50		 push	 eax
  00051	e8 00 00 00 00	 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

; 27   : 		}

  00056	8b c6		 mov	 eax, esi
  00058	8b 4c 24 0c	 mov	 ecx, DWORD PTR __$EHRec$[esp+24]
  0005c	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00063	59		 pop	 ecx
  00064	5e		 pop	 esi
  00065	83 c4 10	 add	 esp, 16			; 00000010H
  00068	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1exception@std@@UAE@XZ ; std::exception::~exception
__ehhandler$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 f8	 lea	 eax, DWORD PTR [edx-8]
  0000f	8b 4a f4	 mov	 ecx, DWORD PTR [edx-12]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ENDP ; std::logic_error::logic_error
PUBLIC	??_7length_error@std@@6B@			; std::length_error::`vftable'
PUBLIC	??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::length_error::length_error
PUBLIC	??_R4length_error@std@@6B@			; std::length_error::`RTTI Complete Object Locator'
PUBLIC	??_R0?AVlength_error@std@@@8			; std::length_error `RTTI Type Descriptor'
PUBLIC	??_R3length_error@std@@8			; std::length_error::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2length_error@std@@8			; std::length_error::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@length_error@std@@8		; std::length_error::`RTTI Base Class Descriptor at (0,-1,0,64)'
EXTRN	??_Elength_error@std@@UAEPAXI@Z:PROC		; std::length_error::`vector deleting destructor'
;	COMDAT ??_R1A@?0A@EA@length_error@std@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@length_error@std@@8 DD FLAT:??_R0?AVlength_error@std@@@8 ; std::length_error::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	02H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3length_error@std@@8
rdata$r	ENDS
;	COMDAT ??_R2length_error@std@@8
rdata$r	SEGMENT
??_R2length_error@std@@8 DD FLAT:??_R1A@?0A@EA@length_error@std@@8 ; std::length_error::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@logic_error@std@@8
	DD	FLAT:??_R1A@?0A@EA@exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R3length_error@std@@8
rdata$r	SEGMENT
??_R3length_error@std@@8 DD 00H				; std::length_error::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	03H
	DD	FLAT:??_R2length_error@std@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVlength_error@std@@@8
_DATA	SEGMENT
??_R0?AVlength_error@std@@@8 DD FLAT:??_7type_info@@6B@	; std::length_error `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVlength_error@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R4length_error@std@@6B@
rdata$r	SEGMENT
??_R4length_error@std@@6B@ DD 00H			; std::length_error::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVlength_error@std@@@8
	DD	FLAT:??_R3length_error@std@@8
rdata$r	ENDS
;	COMDAT ??_7length_error@std@@6B@
CONST	SEGMENT
??_7length_error@std@@6B@ DD FLAT:??_R4length_error@std@@6B@ ; std::length_error::`vftable'
	DD	FLAT:??_Elength_error@std@@UAEPAXI@Z
	DD	FLAT:?what@logic_error@std@@UBEPBDXZ
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z
_TEXT	SEGMENT
__Message$ = 8						; size = 4
??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z PROC ; std::length_error::length_error, COMDAT
; _this$ = ecx

; 105  : 		{	// construct from message string

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Message$[esp-4]
  00004	56		 push	 esi
  00005	50		 push	 eax
  00006	8b f1		 mov	 esi, ecx
  00008	e8 00 00 00 00	 call	 ??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::logic_error::logic_error
  0000d	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], OFFSET ??_7length_error@std@@6B@

; 106  : 		}

  00013	8b c6		 mov	 eax, esi
  00015	5e		 pop	 esi
  00016	c2 04 00	 ret	 4
??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ENDP ; std::length_error::length_error
_TEXT	ENDS
PUBLIC	??1length_error@std@@UAE@XZ			; std::length_error::~length_error
; Function compile flags: /Ogtpy
;	COMDAT ??1length_error@std@@UAE@XZ
_TEXT	SEGMENT
??1length_error@std@@UAE@XZ PROC			; std::length_error::~length_error, COMDAT
; _this$ = ecx

; 109  : 		{	// destroy the object

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx

; 110  : 		}

  00003	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], OFFSET ??_7logic_error@std@@6B@
  00009	83 7e 24 10	 cmp	 DWORD PTR [esi+36], 16	; 00000010H
  0000d	72 0c		 jb	 SHORT $LN21@length_err
  0000f	8b 46 10	 mov	 eax, DWORD PTR [esi+16]
  00012	50		 push	 eax
  00013	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00018	83 c4 04	 add	 esp, 4
$LN21@length_err:
  0001b	33 c0		 xor	 eax, eax
  0001d	c7 46 24 0f 00
	00 00		 mov	 DWORD PTR [esi+36], 15	; 0000000fH
  00024	89 46 20	 mov	 DWORD PTR [esi+32], eax
  00027	88 46 10	 mov	 BYTE PTR [esi+16], al
  0002a	8b ce		 mov	 ecx, esi
  0002c	5e		 pop	 esi
  0002d	e9 00 00 00 00	 jmp	 ??1exception@std@@UAE@XZ ; std::exception::~exception
??1length_error@std@@UAE@XZ ENDP			; std::length_error::~length_error
; Function compile flags: /Ogtpy
_TEXT	ENDS
;	COMDAT ??_Glength_error@std@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_Glength_error@std@@UAEPAXI@Z PROC			; std::length_error::`scalar deleting destructor', COMDAT
; _this$ = ecx
  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx
  00003	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], OFFSET ??_7logic_error@std@@6B@
  00009	83 7e 24 10	 cmp	 DWORD PTR [esi+36], 16	; 00000010H
  0000d	72 0c		 jb	 SHORT $LN24@scalar@3
  0000f	8b 46 10	 mov	 eax, DWORD PTR [esi+16]
  00012	50		 push	 eax
  00013	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00018	83 c4 04	 add	 esp, 4
$LN24@scalar@3:
  0001b	33 c0		 xor	 eax, eax
  0001d	c7 46 24 0f 00
	00 00		 mov	 DWORD PTR [esi+36], 15	; 0000000fH
  00024	89 46 20	 mov	 DWORD PTR [esi+32], eax
  00027	8b ce		 mov	 ecx, esi
  00029	88 46 10	 mov	 BYTE PTR [esi+16], al
  0002c	e8 00 00 00 00	 call	 ??1exception@std@@UAE@XZ ; std::exception::~exception
  00031	f6 44 24 08 01	 test	 BYTE PTR ___flags$[esp], 1
  00036	74 09		 je	 SHORT $LN34@scalar@3
  00038	56		 push	 esi
  00039	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0003e	83 c4 04	 add	 esp, 4
$LN34@scalar@3:
  00041	8b c6		 mov	 eax, esi
  00043	5e		 pop	 esi
  00044	c2 04 00	 ret	 4
??_Glength_error@std@@UAEPAXI@Z ENDP			; std::length_error::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??1_CPostItMemoryBlock@@QAE@XZ			; _CPostItMemoryBlock::~_CPostItMemoryBlock
EXTRN	??_V@YAXPAX@Z:PROC				; operator delete[]
; Function compile flags: /Ogtpy
; File d:\# metin2\work in progress\source client\client\eterbase\cpostit.cpp
;	COMDAT ??1_CPostItMemoryBlock@@QAE@XZ
_TEXT	SEGMENT
$T101793 = -8						; size = 8
??1_CPostItMemoryBlock@@QAE@XZ PROC			; _CPostItMemoryBlock::~_CPostItMemoryBlock, COMDAT
; _this$ = ecx

; 165  : 	for( StrListItr itr = m_StrList.begin(); itr != m_StrList.end(); ) {

  00000	8b 41 18	 mov	 eax, DWORD PTR [ecx+24]
  00003	83 ec 08	 sub	 esp, 8
  00006	53		 push	 ebx
  00007	8b 18		 mov	 ebx, DWORD PTR [eax]
  00009	55		 push	 ebp
  0000a	56		 push	 esi
  0000b	8b 71 04	 mov	 esi, DWORD PTR [ecx+4]
  0000e	57		 push	 edi
  0000f	8d 79 04	 lea	 edi, DWORD PTR [ecx+4]
$LL3@CPostItMem:
  00012	8b 6f 14	 mov	 ebp, DWORD PTR [edi+20]
  00015	8b 07		 mov	 eax, DWORD PTR [edi]
  00017	85 f6		 test	 esi, esi
  00019	74 04		 je	 SHORT $LN52@CPostItMem
  0001b	3b f0		 cmp	 esi, eax
  0001d	74 05		 je	 SHORT $LN51@CPostItMem
$LN52@CPostItMem:
  0001f	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN51@CPostItMem:
  00024	3b dd		 cmp	 ebx, ebp
  00026	74 3e		 je	 SHORT $LN2@CPostItMem

; 166  : 		LPSTR	lpszText = *itr;

  00028	85 f6		 test	 esi, esi
  0002a	75 36		 jne	 SHORT $LN100@CPostItMem
  0002c	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  00031	33 c0		 xor	 eax, eax
$LN80@CPostItMem:
  00033	3b 58 14	 cmp	 ebx, DWORD PTR [eax+20]
  00036	75 05		 jne	 SHORT $LN65@CPostItMem
  00038	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN65@CPostItMem:
  0003d	8b 43 08	 mov	 eax, DWORD PTR [ebx+8]

; 167  : 		SAFE_DELETE_ARRAY( lpszText );

  00040	85 c0		 test	 eax, eax
  00042	74 09		 je	 SHORT $LN1@CPostItMem
  00044	50		 push	 eax
  00045	e8 00 00 00 00	 call	 ??_V@YAXPAX@Z		; operator delete[]
  0004a	83 c4 04	 add	 esp, 4
$LN1@CPostItMem:

; 168  : 		itr = m_StrList.erase( itr );

  0004d	53		 push	 ebx
  0004e	56		 push	 esi
  0004f	8d 4c 24 18	 lea	 ecx, DWORD PTR $T101793[esp+32]
  00053	51		 push	 ecx
  00054	8b cf		 mov	 ecx, edi
  00056	e8 00 00 00 00	 call	 ?erase@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@V?$_Const_iterator@$00@12@@Z ; std::list<char *,std::allocator<char *> >::erase
  0005b	8b 30		 mov	 esi, DWORD PTR [eax]
  0005d	8b 58 04	 mov	 ebx, DWORD PTR [eax+4]
  00060	eb b0		 jmp	 SHORT $LL3@CPostItMem
$LN100@CPostItMem:

; 166  : 		LPSTR	lpszText = *itr;

  00062	8b 06		 mov	 eax, DWORD PTR [esi]
  00064	eb cd		 jmp	 SHORT $LN80@CPostItMem
$LN2@CPostItMem:

; 169  : 	}
; 170  : }

  00066	8b cf		 mov	 ecx, edi
  00068	e8 00 00 00 00	 call	 ?_Tidy@?$list@PADV?$allocator@PAD@std@@@std@@IAEXXZ ; std::list<char *,std::allocator<char *> >::_Tidy
  0006d	8b 17		 mov	 edx, DWORD PTR [edi]
  0006f	52		 push	 edx
  00070	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00075	83 c4 04	 add	 esp, 4
  00078	5f		 pop	 edi
  00079	5e		 pop	 esi
  0007a	5d		 pop	 ebp
  0007b	5b		 pop	 ebx
  0007c	83 c4 08	 add	 esp, 8
  0007f	c3		 ret	 0
??1_CPostItMemoryBlock@@QAE@XZ ENDP			; _CPostItMemoryBlock::~_CPostItMemoryBlock
_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
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	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

; 652  : 		_Tidy();
; 653  : 		assign(_Ptr);

  00000	8b 54 24 04	 mov	 edx, DWORD PTR __Ptr$[esp-4]
  00004	56		 push	 esi
  00005	8b f1		 mov	 esi, ecx
  00007	8b c2		 mov	 eax, edx
  00009	57		 push	 edi
  0000a	c7 46 18 0f 00
	00 00		 mov	 DWORD PTR [esi+24], 15	; 0000000fH
  00011	c7 46 14 00 00
	00 00		 mov	 DWORD PTR [esi+20], 0
  00018	c6 46 04 00	 mov	 BYTE PTR [esi+4], 0
  0001c	8d 78 01	 lea	 edi, DWORD PTR [eax+1]
  0001f	90		 npad	 1
$LL37@basic_stri@2:
  00020	8a 08		 mov	 cl, BYTE PTR [eax]
  00022	40		 inc	 eax
  00023	84 c9		 test	 cl, cl
  00025	75 f9		 jne	 SHORT $LL37@basic_stri@2
  00027	2b c7		 sub	 eax, edi
  00029	50		 push	 eax
  0002a	52		 push	 edx
  0002b	8b ce		 mov	 ecx, esi
  0002d	e8 00 00 00 00	 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
  00032	5f		 pop	 edi

; 654  : 		}

  00033	8b c6		 mov	 eax, esi
  00035	5e		 pop	 esi
  00036	c2 04 00	 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	??0?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ	; std::list<char *,std::allocator<char *> >::list<char *,std::allocator<char *> >
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
xdata$x	SEGMENT
__unwindtable$??0?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ$0
__ehfuncinfo$??0?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
xdata$x	ENDS
;	COMDAT ??0?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??0?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ PROC	; std::list<char *,std::allocator<char *> >::list<char *,std::allocator<char *> >, COMDAT
; _this$ = ecx

; 436  : 		{	// construct empty list

  00000	6a ff		 push	 -1
  00002	68 00 00 00 00	 push	 __ehhandler$??0?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ
  00007	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  0000d	50		 push	 eax
  0000e	51		 push	 ecx
  0000f	56		 push	 esi
  00010	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00015	33 c4		 xor	 eax, esp
  00017	50		 push	 eax
  00018	8d 44 24 0c	 lea	 eax, DWORD PTR __$EHRec$[esp+24]
  0001c	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00022	8b f1		 mov	 esi, ecx
  00024	89 74 24 08	 mov	 DWORD PTR _this$[esp+24], esi
  00028	6a 04		 push	 4
  0002a	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0002f	83 c4 04	 add	 esp, 4
  00032	85 c0		 test	 eax, eax
  00034	74 04		 je	 SHORT $LN23@list
  00036	89 30		 mov	 DWORD PTR [eax], esi
  00038	eb 02		 jmp	 SHORT $LN24@list
$LN23@list:
  0003a	33 c0		 xor	 eax, eax
$LN24@list:
  0003c	89 06		 mov	 DWORD PTR [esi], eax
  0003e	8b ce		 mov	 ecx, esi
  00040	c7 44 24 14 00
	00 00 00	 mov	 DWORD PTR __$EHRec$[esp+32], 0
  00048	e8 00 00 00 00	 call	 ?_Buynode@?$list@PADV?$allocator@PAD@std@@@std@@IAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@XZ ; std::list<char *,std::allocator<char *> >::_Buynode
  0004d	89 46 14	 mov	 DWORD PTR [esi+20], eax
  00050	c7 46 18 00 00
	00 00		 mov	 DWORD PTR [esi+24], 0

; 437  : 		}

  00057	8b c6		 mov	 eax, esi
  00059	8b 4c 24 0c	 mov	 ecx, DWORD PTR __$EHRec$[esp+24]
  0005d	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00064	59		 pop	 ecx
  00065	5e		 pop	 esi
  00066	83 c4 10	 add	 esp, 16			; 00000010H
  00069	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$_List_val@PADV?$allocator@PAD@std@@@std@@QAE@XZ
__ehhandler$??0?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 f8	 lea	 eax, DWORD PTR [edx-8]
  0000f	8b 4a f4	 mov	 ecx, DWORD PTR [edx-12]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??0?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ ENDP	; std::list<char *,std::allocator<char *> >::list<char *,std::allocator<char *> >
PUBLIC	__TI3?AVlength_error@std@@
PUBLIC	??_C@_0BB@MOGOBHAF@list?$DMT?$DO?5too?5long?$AA@ ; `string'
PUBLIC	?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z ; std::list<char *,std::allocator<char *> >::_Incsize
PUBLIC	__CTA3?AVlength_error@std@@
PUBLIC	__CT??_R0?AVlength_error@std@@@8??0length_error@std@@QAE@ABV01@@Z40
PUBLIC	??0length_error@std@@QAE@ABV01@@Z		; std::length_error::length_error
PUBLIC	__CT??_R0?AVlogic_error@std@@@8??0logic_error@std@@QAE@ABV01@@Z40
PUBLIC	??0logic_error@std@@QAE@ABV01@@Z		; std::logic_error::logic_error
;	COMDAT __CT??_R0?AVlogic_error@std@@@8??0logic_error@std@@QAE@ABV01@@Z40
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\stdexcept
xdata$x	SEGMENT
__CT??_R0?AVlogic_error@std@@@8??0logic_error@std@@QAE@ABV01@@Z40 DD 00H
	DD	FLAT:??_R0?AVlogic_error@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	028H
	DD	FLAT:??0logic_error@std@@QAE@ABV01@@Z
xdata$x	ENDS
;	COMDAT __CT??_R0?AVlength_error@std@@@8??0length_error@std@@QAE@ABV01@@Z40
xdata$x	SEGMENT
__CT??_R0?AVlength_error@std@@@8??0length_error@std@@QAE@ABV01@@Z40 DD 00H
	DD	FLAT:??_R0?AVlength_error@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	028H
	DD	FLAT:??0length_error@std@@QAE@ABV01@@Z
xdata$x	ENDS
;	COMDAT __CTA3?AVlength_error@std@@
xdata$x	SEGMENT
__CTA3?AVlength_error@std@@ DD 03H
	DD	FLAT:__CT??_R0?AVlength_error@std@@@8??0length_error@std@@QAE@ABV01@@Z40
	DD	FLAT:__CT??_R0?AVlogic_error@std@@@8??0logic_error@std@@QAE@ABV01@@Z40
	DD	FLAT:__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
xdata$x	ENDS
;	COMDAT __TI3?AVlength_error@std@@
xdata$x	SEGMENT
__TI3?AVlength_error@std@@ DD 00H
	DD	FLAT:??1length_error@std@@UAE@XZ
	DD	00H
	DD	FLAT:__CTA3?AVlength_error@std@@
xdata$x	ENDS
;	COMDAT ??_C@_0BB@MOGOBHAF@list?$DMT?$DO?5too?5long?$AA@
CONST	SEGMENT
??_C@_0BB@MOGOBHAF@list?$DMT?$DO?5too?5long?$AA@ DB 'list<T> too long', 00H ; `string'
CONST	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z$0
__ehfuncinfo$?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
xdata$x	ENDS
;	COMDAT ?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z
_TEXT	SEGMENT
$T102456 = -80						; size = 28
$T102455 = -52						; size = 40
__$EHRec$ = -12						; size = 12
__Count$ = 8						; size = 4
?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z PROC ; std::list<char *,std::allocator<char *> >::_Incsize, COMDAT
; _this$ = ecx

; 1239 : 		{	// alter element count, with checking

  00000	6a ff		 push	 -1
  00002	68 00 00 00 00	 push	 __ehhandler$?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z
  00007	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  0000d	50		 push	 eax
  0000e	83 ec 44	 sub	 esp, 68			; 00000044H
  00011	56		 push	 esi
  00012	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00017	33 c4		 xor	 eax, esp
  00019	50		 push	 eax
  0001a	8d 44 24 4c	 lea	 eax, DWORD PTR __$EHRec$[esp+88]
  0001e	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax

; 1240 : 		if (max_size() - _Mysize < _Count)

  00024	8b 41 18	 mov	 eax, DWORD PTR [ecx+24]
  00027	8b 54 24 5c	 mov	 edx, DWORD PTR __Count$[esp+84]
  0002b	be ff ff ff 3f	 mov	 esi, 1073741823		; 3fffffffH
  00030	2b f0		 sub	 esi, eax
  00032	3b f2		 cmp	 esi, edx
  00034	73 52		 jae	 SHORT $LN1@Incsize

; 1241 : 			_THROW(length_error, "list<T> too long");

  00036	6a 10		 push	 16			; 00000010H
  00038	68 00 00 00 00	 push	 OFFSET ??_C@_0BB@MOGOBHAF@list?$DMT?$DO?5too?5long?$AA@
  0003d	8d 4c 24 10	 lea	 ecx, DWORD PTR $T102456[esp+96]
  00041	c7 44 24 28 0f
	00 00 00	 mov	 DWORD PTR $T102456[esp+120], 15 ; 0000000fH
  00049	c7 44 24 24 00
	00 00 00	 mov	 DWORD PTR $T102456[esp+116], 0
  00051	c6 44 24 14 00	 mov	 BYTE PTR $T102456[esp+100], 0
  00056	e8 00 00 00 00	 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
  0005b	8d 44 24 08	 lea	 eax, DWORD PTR $T102456[esp+88]
  0005f	50		 push	 eax
  00060	8d 4c 24 28	 lea	 ecx, DWORD PTR $T102455[esp+92]
  00064	c7 44 24 58 00
	00 00 00	 mov	 DWORD PTR __$EHRec$[esp+100], 0
  0006c	e8 00 00 00 00	 call	 ??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::logic_error::logic_error
  00071	68 00 00 00 00	 push	 OFFSET __TI3?AVlength_error@std@@
  00076	8d 4c 24 28	 lea	 ecx, DWORD PTR $T102455[esp+92]
  0007a	51		 push	 ecx
  0007b	c7 44 24 2c 00
	00 00 00	 mov	 DWORD PTR $T102455[esp+96], OFFSET ??_7length_error@std@@6B@
  00083	e8 00 00 00 00	 call	 __CxxThrowException@8
$LN52@Incsize:
$LN1@Incsize:

; 1242 : 		_Mysize += _Count;

  00088	03 c2		 add	 eax, edx
  0008a	89 41 18	 mov	 DWORD PTR [ecx+24], eax

; 1243 : 		}

  0008d	8b 4c 24 4c	 mov	 ecx, DWORD PTR __$EHRec$[esp+88]
  00091	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00098	59		 pop	 ecx
  00099	5e		 pop	 esi
  0009a	83 c4 50	 add	 esp, 80			; 00000050H
  0009d	c2 04 00	 ret	 4
$LN51@Incsize:
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z$0:
  00000	8d 4d b0	 lea	 ecx, DWORD PTR $T102456[ebp]
  00003	e9 00 00 00 00	 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$?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 b8	 lea	 eax, DWORD PTR [edx-72]
  0000f	8b 4a b4	 mov	 ecx, DWORD PTR [edx-76]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z ENDP ; std::list<char *,std::allocator<char *> >::_Incsize
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0logic_error@std@@QAE@ABV01@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0logic_error@std@@QAE@ABV01@@Z$0
__ehfuncinfo$??0logic_error@std@@QAE@ABV01@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0logic_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 ??0logic_error@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
___that$ = 8						; size = 4
??0logic_error@std@@QAE@ABV01@@Z PROC			; std::logic_error::logic_error, COMDAT
; _this$ = ecx
  00000	6a ff		 push	 -1
  00002	68 00 00 00 00	 push	 __ehhandler$??0logic_error@std@@QAE@ABV01@@Z
  00007	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  0000d	50		 push	 eax
  0000e	51		 push	 ecx
  0000f	56		 push	 esi
  00010	57		 push	 edi
  00011	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00016	33 c4		 xor	 eax, esp
  00018	50		 push	 eax
  00019	8d 44 24 10	 lea	 eax, DWORD PTR __$EHRec$[esp+28]
  0001d	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00023	8b f1		 mov	 esi, ecx
  00025	89 74 24 0c	 mov	 DWORD PTR _this$[esp+28], esi
  00029	8b 7c 24 20	 mov	 edi, DWORD PTR ___that$[esp+24]
  0002d	57		 push	 edi
  0002e	e8 00 00 00 00	 call	 ??0exception@std@@QAE@ABV01@@Z ; std::exception::exception
  00033	33 d2		 xor	 edx, edx
  00035	6a ff		 push	 -1
  00037	8d 4e 0c	 lea	 ecx, DWORD PTR [esi+12]
  0003a	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], OFFSET ??_7logic_error@std@@6B@
  00040	8d 47 0c	 lea	 eax, DWORD PTR [edi+12]
  00043	52		 push	 edx
  00044	c7 41 18 0f 00
	00 00		 mov	 DWORD PTR [ecx+24], 15	; 0000000fH
  0004b	89 51 14	 mov	 DWORD PTR [ecx+20], edx
  0004e	50		 push	 eax
  0004f	89 54 24 24	 mov	 DWORD PTR __$EHRec$[esp+48], edx
  00053	88 51 04	 mov	 BYTE PTR [ecx+4], dl
  00056	e8 00 00 00 00	 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
  0005b	8b c6		 mov	 eax, esi
  0005d	8b 4c 24 10	 mov	 ecx, DWORD PTR __$EHRec$[esp+28]
  00061	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00068	59		 pop	 ecx
  00069	5f		 pop	 edi
  0006a	5e		 pop	 esi
  0006b	83 c4 10	 add	 esp, 16			; 00000010H
  0006e	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0logic_error@std@@QAE@ABV01@@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1exception@std@@UAE@XZ ; std::exception::~exception
__ehhandler$??0logic_error@std@@QAE@ABV01@@Z:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 f4	 lea	 eax, DWORD PTR [edx-12]
  0000f	8b 4a f0	 mov	 ecx, DWORD PTR [edx-16]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??0logic_error@std@@QAE@ABV01@@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0logic_error@std@@QAE@ABV01@@Z ENDP			; std::logic_error::logic_error
; Function compile flags: /Ogtpy
;	COMDAT ??0length_error@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
___that$ = 8						; size = 4
??0length_error@std@@QAE@ABV01@@Z PROC			; std::length_error::length_error, COMDAT
; _this$ = ecx
  00000	8b 44 24 04	 mov	 eax, DWORD PTR ___that$[esp-4]
  00004	56		 push	 esi
  00005	50		 push	 eax
  00006	8b f1		 mov	 esi, ecx
  00008	e8 00 00 00 00	 call	 ??0logic_error@std@@QAE@ABV01@@Z
  0000d	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], OFFSET ??_7length_error@std@@6B@
  00013	8b c6		 mov	 eax, esi
  00015	5e		 pop	 esi
  00016	c2 04 00	 ret	 4
??0length_error@std@@QAE@ABV01@@Z ENDP			; std::length_error::length_error
_TEXT	ENDS
PUBLIC	??_G_CPostItMemoryBlock@@QAEPAXI@Z		; _CPostItMemoryBlock::`scalar deleting destructor'
; Function compile flags: /Ogtpy
;	COMDAT ??_G_CPostItMemoryBlock@@QAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8						; size = 4
??_G_CPostItMemoryBlock@@QAEPAXI@Z PROC			; _CPostItMemoryBlock::`scalar deleting destructor', COMDAT
; _this$ = ecx
  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx
  00003	e8 00 00 00 00	 call	 ??1_CPostItMemoryBlock@@QAE@XZ ; _CPostItMemoryBlock::~_CPostItMemoryBlock
  00008	f6 44 24 08 01	 test	 BYTE PTR ___flags$[esp], 1
  0000d	74 09		 je	 SHORT $LN4@scalar@4
  0000f	56		 push	 esi
  00010	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00015	83 c4 04	 add	 esp, 4
$LN4@scalar@4:
  00018	8b c6		 mov	 eax, esi
  0001a	5e		 pop	 esi
  0001b	c2 04 00	 ret	 4
??_G_CPostItMemoryBlock@@QAEPAXI@Z ENDP			; _CPostItMemoryBlock::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	?Destroy@CPostIt@@IAEXXZ			; CPostIt::Destroy
; Function compile flags: /Ogtpy
; File d:\# metin2\work in progress\source client\client\eterbase\cpostit.cpp
;	COMDAT ?Destroy@CPostIt@@IAEXXZ
_TEXT	SEGMENT
?Destroy@CPostIt@@IAEXXZ PROC				; CPostIt::Destroy, COMDAT
; _this$ = ecx

; 102  : {

  00000	56		 push	 esi
  00001	57		 push	 edi
  00002	8b f1		 mov	 esi, ecx

; 103  : 	Flush();

  00004	e8 00 00 00 00	 call	 ?Flush@CPostIt@@QAEHXZ	; CPostIt::Flush

; 104  : 	SAFE_DELETE( m_pMemoryBlock );

  00009	8b be 08 01 00
	00		 mov	 edi, DWORD PTR [esi+264]
  0000f	85 ff		 test	 edi, edi
  00011	74 1a		 je	 SHORT $LN1@Destroy
  00013	8b cf		 mov	 ecx, edi
  00015	e8 00 00 00 00	 call	 ??1_CPostItMemoryBlock@@QAE@XZ ; _CPostItMemoryBlock::~_CPostItMemoryBlock
  0001a	57		 push	 edi
  0001b	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00020	83 c4 04	 add	 esp, 4
  00023	c7 86 08 01 00
	00 00 00 00 00	 mov	 DWORD PTR [esi+264], 0
$LN1@Destroy:
  0002d	5f		 pop	 edi
  0002e	5e		 pop	 esi

; 105  : }

  0002f	c3		 ret	 0
?Destroy@CPostIt@@IAEXXZ ENDP				; CPostIt::Destroy
_TEXT	ENDS
PUBLIC	??0_CPostItMemoryBlock@@QAE@XZ			; _CPostItMemoryBlock::_CPostItMemoryBlock
; Function compile flags: /Ogtpy
;	COMDAT ??0_CPostItMemoryBlock@@QAE@XZ
_TEXT	SEGMENT
??0_CPostItMemoryBlock@@QAE@XZ PROC			; _CPostItMemoryBlock::_CPostItMemoryBlock, COMDAT
; _this$ = ecx

; 160  : {

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx
  00003	8d 4e 04	 lea	 ecx, DWORD PTR [esi+4]
  00006	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], 0
  0000c	e8 00 00 00 00	 call	 ??0?$list@PADV?$allocator@PAD@std@@@std@@QAE@XZ ; std::list<char *,std::allocator<char *> >::list<char *,std::allocator<char *> >

; 161  : }

  00011	8b c6		 mov	 eax, esi
  00013	5e		 pop	 esi
  00014	c3		 ret	 0
??0_CPostItMemoryBlock@@QAE@XZ ENDP			; _CPostItMemoryBlock::_CPostItMemoryBlock
_TEXT	ENDS
PUBLIC	?_Insert@?$list@PADV?$allocator@PAD@std@@@std@@QAEXV?$_Const_iterator@$00@12@ABQAD@Z ; std::list<char *,std::allocator<char *> >::_Insert
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ?_Insert@?$list@PADV?$allocator@PAD@std@@@std@@QAEXV?$_Const_iterator@$00@12@ABQAD@Z
_TEXT	SEGMENT
__Where$ = 8						; size = 8
__Val$ = 16						; size = 4
?_Insert@?$list@PADV?$allocator@PAD@std@@@std@@QAEXV?$_Const_iterator@$00@12@ABQAD@Z PROC ; std::list<char *,std::allocator<char *> >::_Insert, COMDAT
; _this$ = ecx

; 711  : 
; 712  :  #if _HAS_ITERATOR_DEBUGGING
; 713  : 		if (_Where._Mycont != this)
; 714  : 			_DEBUG_ERROR("list insert iterator outside range");
; 715  :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 716  : 
; 717  : 		_Nodeptr _Pnode = _Where._Mynode();
; 718  : 		_Nodeptr _Newnode = _Buynode(_Pnode, _Prevnode(_Pnode), _Val);

  00000	8b 44 24 08	 mov	 eax, DWORD PTR __Where$[esp]
  00004	8b 50 04	 mov	 edx, DWORD PTR [eax+4]
  00007	53		 push	 ebx
  00008	56		 push	 esi
  00009	57		 push	 edi
  0000a	8b f9		 mov	 edi, ecx
  0000c	8b 4c 24 18	 mov	 ecx, DWORD PTR __Val$[esp+8]
  00010	8d 58 04	 lea	 ebx, DWORD PTR [eax+4]
  00013	51		 push	 ecx
  00014	52		 push	 edx
  00015	50		 push	 eax
  00016	8b cf		 mov	 ecx, edi
  00018	e8 00 00 00 00	 call	 ?_Buynode@?$list@PADV?$allocator@PAD@std@@@std@@IAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@0ABQAD@Z ; std::list<char *,std::allocator<char *> >::_Buynode

; 719  : 		_Incsize(1);

  0001d	6a 01		 push	 1
  0001f	8b cf		 mov	 ecx, edi
  00021	8b f0		 mov	 esi, eax
  00023	e8 00 00 00 00	 call	 ?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z ; std::list<char *,std::allocator<char *> >::_Incsize

; 720  : 		_Prevnode(_Pnode) = _Newnode;

  00028	89 33		 mov	 DWORD PTR [ebx], esi

; 721  : 		_Nextnode(_Prevnode(_Newnode)) = _Newnode;

  0002a	8b 46 04	 mov	 eax, DWORD PTR [esi+4]
  0002d	5f		 pop	 edi
  0002e	89 30		 mov	 DWORD PTR [eax], esi
  00030	5e		 pop	 esi
  00031	5b		 pop	 ebx

; 722  : 		}

  00032	c2 0c 00	 ret	 12			; 0000000cH
?_Insert@?$list@PADV?$allocator@PAD@std@@@std@@QAEXV?$_Const_iterator@$00@12@ABQAD@Z ENDP ; std::list<char *,std::allocator<char *> >::_Insert
_TEXT	ENDS
PUBLIC	??1CPostIt@@QAE@XZ				; CPostIt::~CPostIt
; Function compile flags: /Ogtpy
; File d:\# metin2\work in progress\source client\client\eterbase\cpostit.cpp
;	COMDAT ??1CPostIt@@QAE@XZ
_TEXT	SEGMENT
??1CPostIt@@QAE@XZ PROC					; CPostIt::~CPostIt, COMDAT
; _this$ = ecx

; 35   : 	Destroy();

  00000	e9 00 00 00 00	 jmp	 ?Destroy@CPostIt@@IAEXXZ ; CPostIt::Destroy
??1CPostIt@@QAE@XZ ENDP					; CPostIt::~CPostIt
_TEXT	ENDS
PUBLIC	?Empty@CPostIt@@QAEXXZ				; CPostIt::Empty
EXTRN	__imp__GetClipboardData@4:PROC
; Function compile flags: /Ogtpy
;	COMDAT ?Empty@CPostIt@@QAEXXZ
_TEXT	SEGMENT
?Empty@CPostIt@@QAEXXZ PROC				; CPostIt::Empty, COMDAT
; _this$ = ecx

; 83   : {

  00000	56		 push	 esi
  00001	8b f1		 mov	 esi, ecx
  00003	57		 push	 edi

; 84   : 	SAFE_DELETE( m_pMemoryBlock );

  00004	8b be 08 01 00
	00		 mov	 edi, DWORD PTR [esi+264]
  0000a	85 ff		 test	 edi, edi
  0000c	74 1a		 je	 SHORT $LN3@Empty
  0000e	8b cf		 mov	 ecx, edi
  00010	e8 00 00 00 00	 call	 ??1_CPostItMemoryBlock@@QAE@XZ ; _CPostItMemoryBlock::~_CPostItMemoryBlock
  00015	57		 push	 edi
  00016	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0001b	83 c4 04	 add	 esp, 4
  0001e	c7 86 08 01 00
	00 00 00 00 00	 mov	 DWORD PTR [esi+264], 0
$LN3@Empty:

; 85   : 
; 86   : 	UINT	uDGPFormat;
; 87   : 
; 88   : 	uDGPFormat = ::RegisterClipboardFormatA( m_szClipFormatName );

  00028	8d 46 04	 lea	 eax, DWORD PTR [esi+4]
  0002b	50		 push	 eax
  0002c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__RegisterClipboardFormatA@4

; 89   : 	if( ::OpenClipboard( NULL ) == FALSE )

  00032	6a 00		 push	 0
  00034	8b f8		 mov	 edi, eax
  00036	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__OpenClipboard@4
  0003c	85 c0		 test	 eax, eax
  0003e	74 20		 je	 SHORT $LN4@Empty

; 90   : 		return;
; 91   : 	HANDLE hClipboardMemory = ::GetClipboardData( uDGPFormat );

  00040	57		 push	 edi
  00041	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetClipboardData@4

; 92   : 	if( hClipboardMemory ) {

  00047	85 c0		 test	 eax, eax
  00049	74 09		 je	 SHORT $LN1@Empty

; 93   : //		::GlobalFree( hClipboardMemory );
; 94   : 		::SetClipboardData( uDGPFormat, NULL );

  0004b	6a 00		 push	 0
  0004d	57		 push	 edi
  0004e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetClipboardData@8
$LN1@Empty:

; 95   : 	}
; 96   : 	::CloseClipboard();

  00054	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__CloseClipboard@0

; 97   : 
; 98   : 	m_bModified = FALSE;

  0005a	c7 06 00 00 00
	00		 mov	 DWORD PTR [esi], 0
$LN4@Empty:
  00060	5f		 pop	 edi
  00061	5e		 pop	 esi

; 99   : }

  00062	c3		 ret	 0
?Empty@CPostIt@@QAEXXZ ENDP				; CPostIt::Empty
_TEXT	ENDS
PUBLIC	?push_back@?$list@PADV?$allocator@PAD@std@@@std@@QAEXABQAD@Z ; std::list<char *,std::allocator<char *> >::push_back
; Function compile flags: /Ogtpy
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\list
;	COMDAT ?push_back@?$list@PADV?$allocator@PAD@std@@@std@@QAEXABQAD@Z
_TEXT	SEGMENT
__Val$ = 8						; size = 4
?push_back@?$list@PADV?$allocator@PAD@std@@@std@@QAEXABQAD@Z PROC ; std::list<char *,std::allocator<char *> >::push_back, COMDAT
; _this$ = ecx

; 670  : 		_Insert(end(), _Val);

  00000	8b 44 24 04	 mov	 eax, DWORD PTR __Val$[esp-4]
  00004	53		 push	 ebx
  00005	56		 push	 esi
  00006	57		 push	 edi
  00007	8b f1		 mov	 esi, ecx
  00009	8b 7e 14	 mov	 edi, DWORD PTR [esi+20]
  0000c	8b 4f 04	 mov	 ecx, DWORD PTR [edi+4]
  0000f	50		 push	 eax
  00010	51		 push	 ecx
  00011	57		 push	 edi
  00012	8b ce		 mov	 ecx, esi
  00014	e8 00 00 00 00	 call	 ?_Buynode@?$list@PADV?$allocator@PAD@std@@@std@@IAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@0ABQAD@Z ; std::list<char *,std::allocator<char *> >::_Buynode
  00019	6a 01		 push	 1
  0001b	8b ce		 mov	 ecx, esi
  0001d	8b d8		 mov	 ebx, eax
  0001f	e8 00 00 00 00	 call	 ?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z ; std::list<char *,std::allocator<char *> >::_Incsize
  00024	89 5f 04	 mov	 DWORD PTR [edi+4], ebx
  00027	8b 53 04	 mov	 edx, DWORD PTR [ebx+4]
  0002a	5f		 pop	 edi
  0002b	5e		 pop	 esi
  0002c	89 1a		 mov	 DWORD PTR [edx], ebx
  0002e	5b		 pop	 ebx

; 671  : 		}

  0002f	c2 04 00	 ret	 4
?push_back@?$list@PADV?$allocator@PAD@std@@@std@@QAEXABQAD@Z ENDP ; std::list<char *,std::allocator<char *> >::push_back
_TEXT	ENDS
PUBLIC	?Put@_CPostItMemoryBlock@@QAEHPBD0@Z		; _CPostItMemoryBlock::Put
EXTRN	??_U@YAPAXI@Z:PROC				; operator new[]
; Function compile flags: /Ogtpy
; File d:\# metin2\work in progress\source client\client\eterbase\cpostit.cpp
;	COMDAT ?Put@_CPostItMemoryBlock@@QAEHPBD0@Z
_TEXT	SEGMENT
$T102925 = -12						; size = 8
_lpszText$ = -12					; size = 4
_this$ = -4						; size = 4
_lpszKeyName$ = 8					; size = 4
_lpBuffer$ = 12						; size = 4
?Put@_CPostItMemoryBlock@@QAEHPBD0@Z PROC		; _CPostItMemoryBlock::Put, COMDAT
; _this$ = ecx

; 250  : {

  00000	83 ec 0c	 sub	 esp, 12			; 0000000cH

; 251  : 	LPSTR	lpszText;
; 252  : 
; 253  : 	if( (lpszText = Find( lpszKeyName )) != NULL ) {

  00003	8b 44 24 10	 mov	 eax, DWORD PTR _lpszKeyName$[esp+8]
  00007	53		 push	 ebx
  00008	55		 push	 ebp
  00009	56		 push	 esi
  0000a	57		 push	 edi
  0000b	8b f9		 mov	 edi, ecx
  0000d	50		 push	 eax
  0000e	89 7c 24 1c	 mov	 DWORD PTR _this$[esp+32], edi
  00012	e8 00 00 00 00	 call	 ?Find@_CPostItMemoryBlock@@QAEPADPBD@Z ; _CPostItMemoryBlock::Find
  00017	89 44 24 10	 mov	 DWORD PTR _lpszText$[esp+28], eax
  0001b	85 c0		 test	 eax, eax
  0001d	74 7e		 je	 SHORT $LN156@Put

; 254  : 		for( StrListItr itr = m_StrList.begin(); itr != m_StrList.end(); ++itr ) {

  0001f	8b 4f 18	 mov	 ecx, DWORD PTR [edi+24]
  00022	8b 29		 mov	 ebp, DWORD PTR [ecx]
  00024	8b 77 04	 mov	 esi, DWORD PTR [edi+4]
  00027	83 c7 04	 add	 edi, 4
  0002a	8d 9b 00 00 00
	00		 npad	 6
$LL44@Put:
  00030	8b 5f 14	 mov	 ebx, DWORD PTR [edi+20]
  00033	8b 07		 mov	 eax, DWORD PTR [edi]
  00035	85 f6		 test	 esi, esi
  00037	74 04		 je	 SHORT $LN80@Put
  00039	3b f0		 cmp	 esi, eax
  0003b	74 05		 je	 SHORT $LN79@Put
$LN80@Put:
  0003d	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN79@Put:
  00042	3b eb		 cmp	 ebp, ebx
  00044	74 57		 je	 SHORT $LN156@Put

; 255  : 			if( lpszText == *itr ) {

  00046	85 f6		 test	 esi, esi
  00048	75 34		 jne	 SHORT $LN149@Put
  0004a	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  0004f	33 c0		 xor	 eax, eax
$LN108@Put:
  00051	3b 68 14	 cmp	 ebp, DWORD PTR [eax+20]
  00054	75 05		 jne	 SHORT $LN93@Put
  00056	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN93@Put:
  0005b	8b 44 24 10	 mov	 eax, DWORD PTR _lpszText$[esp+28]
  0005f	3b 45 08	 cmp	 eax, DWORD PTR [ebp+8]
  00062	74 22		 je	 SHORT $LN147@Put

; 254  : 		for( StrListItr itr = m_StrList.begin(); itr != m_StrList.end(); ++itr ) {

  00064	85 f6		 test	 esi, esi
  00066	75 1a		 jne	 SHORT $LN148@Put
  00068	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
  0006d	33 c0		 xor	 eax, eax
$LN51@Put:
  0006f	3b 68 14	 cmp	 ebp, DWORD PTR [eax+20]
  00072	75 05		 jne	 SHORT $LN36@Put
  00074	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN36@Put:
  00079	8b 6d 00	 mov	 ebp, DWORD PTR [ebp]
  0007c	eb b2		 jmp	 SHORT $LL44@Put
$LN149@Put:

; 255  : 			if( lpszText == *itr ) {

  0007e	8b 06		 mov	 eax, DWORD PTR [esi]
  00080	eb cf		 jmp	 SHORT $LN108@Put
$LN148@Put:

; 254  : 		for( StrListItr itr = m_StrList.begin(); itr != m_StrList.end(); ++itr ) {

  00082	8b 06		 mov	 eax, DWORD PTR [esi]
  00084	eb e9		 jmp	 SHORT $LN51@Put
$LN147@Put:

; 256  : 				SAFE_DELETE_ARRAY( lpszText );

  00086	50		 push	 eax
  00087	e8 00 00 00 00	 call	 ??_V@YAXPAX@Z		; operator delete[]
  0008c	83 c4 04	 add	 esp, 4

; 257  : 				m_StrList.erase( itr );

  0008f	55		 push	 ebp
  00090	56		 push	 esi
  00091	8d 54 24 18	 lea	 edx, DWORD PTR $T102925[esp+36]
  00095	52		 push	 edx
  00096	8b cf		 mov	 ecx, edi
  00098	e8 00 00 00 00	 call	 ?erase@?$list@PADV?$allocator@PAD@std@@@std@@QAE?AV?$_Iterator@$00@12@V?$_Const_iterator@$00@12@@Z ; std::list<char *,std::allocator<char *> >::erase
$LN156@Put:

; 258  : 				break;
; 259  : 			}
; 260  : 		}
; 261  : 	}
; 262  : 	if( lpBuffer == NULL || !*lpBuffer )

  0009d	8b 6c 24 24	 mov	 ebp, DWORD PTR _lpBuffer$[esp+24]
  000a1	85 ed		 test	 ebp, ebp
  000a3	0f 84 d4 00 00
	00		 je	 $LN1@Put
  000a9	80 7d 00 00	 cmp	 BYTE PTR [ebp], 0
  000ad	0f 84 ca 00 00
	00		 je	 $LN1@Put

; 263  : 		return TRUE;
; 264  : 	size_t nStrLen	= strlen( lpszKeyName ) + 1 /* '=' */ + strlen( lpBuffer );

  000b3	8b 44 24 20	 mov	 eax, DWORD PTR _lpszKeyName$[esp+24]
  000b7	8d 50 01	 lea	 edx, DWORD PTR [eax+1]
  000ba	8d 9b 00 00 00
	00		 npad	 6
$LL150@Put:
  000c0	8a 08		 mov	 cl, BYTE PTR [eax]
  000c2	40		 inc	 eax
  000c3	84 c9		 test	 cl, cl
  000c5	75 f9		 jne	 SHORT $LL150@Put
  000c7	2b c2		 sub	 eax, edx
  000c9	8b d0		 mov	 edx, eax
  000cb	8b c5		 mov	 eax, ebp
  000cd	8d 70 01	 lea	 esi, DWORD PTR [eax+1]
$LL151@Put:
  000d0	8a 08		 mov	 cl, BYTE PTR [eax]
  000d2	40		 inc	 eax
  000d3	84 c9		 test	 cl, cl
  000d5	75 f9		 jne	 SHORT $LL151@Put
  000d7	2b c6		 sub	 eax, esi
  000d9	8d 5c 10 01	 lea	 ebx, DWORD PTR [eax+edx+1]

; 265  : 	lpszText = new CHAR[ nStrLen + 1 ];

  000dd	8d 43 01	 lea	 eax, DWORD PTR [ebx+1]
  000e0	50		 push	 eax
  000e1	e8 00 00 00 00	 call	 ??_U@YAPAXI@Z		; operator new[]

; 266  : 	::CopyMemory( lpszText, lpszKeyName, strlen( lpszKeyName ) );

  000e6	8b 7c 24 24	 mov	 edi, DWORD PTR _lpszKeyName$[esp+28]
  000ea	8b f0		 mov	 esi, eax
  000ec	8b c7		 mov	 eax, edi
  000ee	83 c4 04	 add	 esp, 4
  000f1	89 74 24 10	 mov	 DWORD PTR _lpszText$[esp+28], esi
  000f5	8d 48 01	 lea	 ecx, DWORD PTR [eax+1]
$LL152@Put:
  000f8	8a 10		 mov	 dl, BYTE PTR [eax]
  000fa	40		 inc	 eax
  000fb	84 d2		 test	 dl, dl
  000fd	75 f9		 jne	 SHORT $LL152@Put
  000ff	2b c1		 sub	 eax, ecx
  00101	50		 push	 eax
  00102	57		 push	 edi
  00103	56		 push	 esi
  00104	e8 00 00 00 00	 call	 _memcpy

; 267  : 	*(lpszText + strlen( lpszKeyName )) = '=';

  00109	8b c7		 mov	 eax, edi
  0010b	83 c4 0c	 add	 esp, 12			; 0000000cH
  0010e	8d 50 01	 lea	 edx, DWORD PTR [eax+1]
$LL153@Put:
  00111	8a 08		 mov	 cl, BYTE PTR [eax]
  00113	40		 inc	 eax
  00114	84 c9		 test	 cl, cl
  00116	75 f9		 jne	 SHORT $LL153@Put
  00118	2b c2		 sub	 eax, edx
  0011a	c6 04 30 3d	 mov	 BYTE PTR [eax+esi], 61	; 0000003dH

; 268  : 	::CopyMemory( lpszText + strlen( lpszKeyName ) + 1, lpBuffer, strlen( lpBuffer ) );

  0011e	8b c5		 mov	 eax, ebp
  00120	8d 50 01	 lea	 edx, DWORD PTR [eax+1]
$LL154@Put:
  00123	8a 08		 mov	 cl, BYTE PTR [eax]
  00125	40		 inc	 eax
  00126	84 c9		 test	 cl, cl
  00128	75 f9		 jne	 SHORT $LL154@Put
  0012a	2b c2		 sub	 eax, edx
  0012c	8b c8		 mov	 ecx, eax
  0012e	8b c7		 mov	 eax, edi
  00130	8d 78 01	 lea	 edi, DWORD PTR [eax+1]
$LL155@Put:
  00133	8a 10		 mov	 dl, BYTE PTR [eax]
  00135	40		 inc	 eax
  00136	84 d2		 test	 dl, dl
  00138	75 f9		 jne	 SHORT $LL155@Put
  0013a	51		 push	 ecx
  0013b	2b c7		 sub	 eax, edi
  0013d	8d 4c 30 01	 lea	 ecx, DWORD PTR [eax+esi+1]
  00141	55		 push	 ebp
  00142	51		 push	 ecx
  00143	e8 00 00 00 00	 call	 _memcpy

; 269  : 	*(lpszText + nStrLen) = '\0';

  00148	c6 04 33 00	 mov	 BYTE PTR [ebx+esi], 0

; 270  : 
; 271  : 	m_StrList.push_back( lpszText );

  0014c	8b 74 24 24	 mov	 esi, DWORD PTR _this$[esp+40]
  00150	8b 7e 18	 mov	 edi, DWORD PTR [esi+24]
  00153	8b 47 04	 mov	 eax, DWORD PTR [edi+4]
  00156	83 c4 0c	 add	 esp, 12			; 0000000cH
  00159	83 c6 04	 add	 esi, 4
  0015c	8d 54 24 10	 lea	 edx, DWORD PTR _lpszText$[esp+28]
  00160	52		 push	 edx
  00161	50		 push	 eax
  00162	57		 push	 edi
  00163	8b ce		 mov	 ecx, esi
  00165	e8 00 00 00 00	 call	 ?_Buynode@?$list@PADV?$allocator@PAD@std@@@std@@IAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@0ABQAD@Z ; std::list<char *,std::allocator<char *> >::_Buynode
  0016a	6a 01		 push	 1
  0016c	8b ce		 mov	 ecx, esi
  0016e	8b d8		 mov	 ebx, eax
  00170	e8 00 00 00 00	 call	 ?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z ; std::list<char *,std::allocator<char *> >::_Incsize
  00175	89 5f 04	 mov	 DWORD PTR [edi+4], ebx
  00178	8b 4b 04	 mov	 ecx, DWORD PTR [ebx+4]
  0017b	89 19		 mov	 DWORD PTR [ecx], ebx
$LN1@Put:
  0017d	5f		 pop	 edi
  0017e	5e		 pop	 esi
  0017f	5d		 pop	 ebp
  00180	b8 01 00 00 00	 mov	 eax, 1
  00185	5b		 pop	 ebx

; 272  : 	return TRUE;
; 273  : }

  00186	83 c4 0c	 add	 esp, 12			; 0000000cH
  00189	c2 08 00	 ret	 8
?Put@_CPostItMemoryBlock@@QAEHPBD0@Z ENDP		; _CPostItMemoryBlock::Put
_TEXT	ENDS
PUBLIC	?Put@_CPostItMemoryBlock@@QAEHPBD@Z		; _CPostItMemoryBlock::Put
; Function compile flags: /Ogtpy
;	COMDAT ?Put@_CPostItMemoryBlock@@QAEHPBD@Z
_TEXT	SEGMENT
_lpszText$ = 8						; size = 4
_lpBuffer$ = 8						; size = 4
?Put@_CPostItMemoryBlock@@QAEHPBD@Z PROC		; _CPostItMemoryBlock::Put, COMDAT
; _this$ = ecx

; 276  : {

  00000	53		 push	 ebx

; 277  : 	LPSTR	lpszText;
; 278  : 
; 279  : 	if( lpBuffer == NULL || !*lpBuffer )

  00001	8b 5c 24 08	 mov	 ebx, DWORD PTR _lpBuffer$[esp]
  00005	55		 push	 ebp
  00006	8b e9		 mov	 ebp, ecx
  00008	85 db		 test	 ebx, ebx
  0000a	74 61		 je	 SHORT $LN1@Put@2
  0000c	80 3b 00	 cmp	 BYTE PTR [ebx], 0
  0000f	74 5c		 je	 SHORT $LN1@Put@2

; 280  : 		return TRUE;
; 281  : 	size_t nStrLen	= strlen( lpBuffer );

  00011	8b c3		 mov	 eax, ebx
  00013	8d 50 01	 lea	 edx, DWORD PTR [eax+1]
$LL38@Put@2:
  00016	8a 08		 mov	 cl, BYTE PTR [eax]
  00018	40		 inc	 eax
  00019	84 c9		 test	 cl, cl
  0001b	75 f9		 jne	 SHORT $LL38@Put@2
  0001d	2b c2		 sub	 eax, edx
  0001f	56		 push	 esi
  00020	8b f0		 mov	 esi, eax

; 282  : 	lpszText = new CHAR[ nStrLen + 1 ];

  00022	8d 46 01	 lea	 eax, DWORD PTR [esi+1]
  00025	57		 push	 edi
  00026	50		 push	 eax
  00027	e8 00 00 00 00	 call	 ??_U@YAPAXI@Z		; operator new[]

; 283  : 	::CopyMemory( lpszText, lpBuffer, nStrLen );

  0002c	56		 push	 esi
  0002d	8b f8		 mov	 edi, eax
  0002f	53		 push	 ebx
  00030	57		 push	 edi
  00031	89 7c 24 24	 mov	 DWORD PTR _lpszText$[esp+28], edi
  00035	e8 00 00 00 00	 call	 _memcpy

; 284  : 	*(lpszText + nStrLen) = '\0';

  0003a	c6 04 37 00	 mov	 BYTE PTR [edi+esi], 0

; 285  : 
; 286  : 	m_StrList.push_back( lpszText );

  0003e	8b 7d 18	 mov	 edi, DWORD PTR [ebp+24]
  00041	8b 57 04	 mov	 edx, DWORD PTR [edi+4]
  00044	83 c4 10	 add	 esp, 16			; 00000010H
  00047	8d 75 04	 lea	 esi, DWORD PTR [ebp+4]
  0004a	8d 4c 24 14	 lea	 ecx, DWORD PTR _lpszText$[esp+12]
  0004e	51		 push	 ecx
  0004f	52		 push	 edx
  00050	57		 push	 edi
  00051	8b ce		 mov	 ecx, esi
  00053	e8 00 00 00 00	 call	 ?_Buynode@?$list@PADV?$allocator@PAD@std@@@std@@IAEPAU_Node@?$_List_nod@PADV?$allocator@PAD@std@@@2@PAU342@0ABQAD@Z ; std::list<char *,std::allocator<char *> >::_Buynode
  00058	6a 01		 push	 1
  0005a	8b ce		 mov	 ecx, esi
  0005c	8b d8		 mov	 ebx, eax
  0005e	e8 00 00 00 00	 call	 ?_Incsize@?$list@PADV?$allocator@PAD@std@@@std@@IAEXI@Z ; std::list<char *,std::allocator<char *> >::_Incsize
  00063	89 5f 04	 mov	 DWORD PTR [edi+4], ebx
  00066	8b 43 04	 mov	 eax, DWORD PTR [ebx+4]
  00069	5f		 pop	 edi
  0006a	89 18		 mov	 DWORD PTR [eax], ebx
  0006c	5e		 pop	 esi
$LN1@Put@2:
  0006d	5d		 pop	 ebp
  0006e	b8 01 00 00 00	 mov	 eax, 1
  00073	5b		 pop	 ebx

; 287  : 	return TRUE;
; 288  : }

  00074	c2 04 00	 ret	 4
?Put@_CPostItMemoryBlock@@QAEHPBD@Z ENDP		; _CPostItMemoryBlock::Put
_TEXT	ENDS
PUBLIC	?Set@CPostIt@@QAEHPBD0@Z			; CPostIt::Set
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?Set@CPostIt@@QAEHPBD0@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Set@CPostIt@@QAEHPBD0@Z$0
__ehfuncinfo$?Set@CPostIt@@QAEHPBD0@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?Set@CPostIt@@QAEHPBD0@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ?Set@CPostIt@@QAEHPBD0@Z
_TEXT	SEGMENT
$T103562 = -16						; size = 4
__$EHRec$ = -12						; size = 12
_lpszKeyName$ = 8					; size = 4
_lpBuffer$ = 12						; size = 4
?Set@CPostIt@@QAEHPBD0@Z PROC				; CPostIt::Set, COMDAT
; _this$ = ecx

; 108  : {

  00000	6a ff		 push	 -1
  00002	68 00 00 00 00	 push	 __ehhandler$?Set@CPostIt@@QAEHPBD0@Z
  00007	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  0000d	50		 push	 eax
  0000e	51		 push	 ecx
  0000f	56		 push	 esi
  00010	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00015	33 c4		 xor	 eax, esp
  00017	50		 push	 eax
  00018	8d 44 24 0c	 lea	 eax, DWORD PTR __$EHRec$[esp+24]
  0001c	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00022	8b f1		 mov	 esi, ecx

; 109  : 	if( m_pMemoryBlock == NULL )

  00024	83 be 08 01 00
	00 00		 cmp	 DWORD PTR [esi+264], 0
  0002b	75 33		 jne	 SHORT $LN1@Set

; 110  : 		m_pMemoryBlock = new _CPostItMemoryBlock;

  0002d	6a 20		 push	 32			; 00000020H
  0002f	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00034	83 c4 04	 add	 esp, 4
  00037	89 44 24 08	 mov	 DWORD PTR $T103562[esp+24], eax
  0003b	c7 44 24 14 00
	00 00 00	 mov	 DWORD PTR __$EHRec$[esp+32], 0
  00043	85 c0		 test	 eax, eax
  00045	74 09		 je	 SHORT $LN4@Set
  00047	8b c8		 mov	 ecx, eax
  00049	e8 00 00 00 00	 call	 ??0_CPostItMemoryBlock@@QAE@XZ ; _CPostItMemoryBlock::_CPostItMemoryBlock
  0004e	eb 02		 jmp	 SHORT $LN5@Set
$LN4@Set:
  00050	33 c0		 xor	 eax, eax
$LN5@Set:
  00052	c7 44 24 14 ff
	ff ff ff	 mov	 DWORD PTR __$EHRec$[esp+32], -1
  0005a	89 86 08 01 00
	00		 mov	 DWORD PTR [esi+264], eax
$LN1@Set:

; 111  : 	m_pMemoryBlock->Put( lpszKeyName, lpBuffer );

  00060	8b 44 24 20	 mov	 eax, DWORD PTR _lpBuffer$[esp+20]
  00064	8b 4c 24 1c	 mov	 ecx, DWORD PTR _lpszKeyName$[esp+20]
  00068	50		 push	 eax
  00069	51		 push	 ecx
  0006a	8b 8e 08 01 00
	00		 mov	 ecx, DWORD PTR [esi+264]
  00070	e8 00 00 00 00	 call	 ?Put@_CPostItMemoryBlock@@QAEHPBD0@Z ; _CPostItMemoryBlock::Put

; 112  : 	m_bModified = TRUE;

  00075	c7 06 01 00 00
	00		 mov	 DWORD PTR [esi], 1

; 113  : 	return TRUE;

  0007b	b8 01 00 00 00	 mov	 eax, 1

; 114  : }

  00080	8b 4c 24 0c	 mov	 ecx, DWORD PTR __$EHRec$[esp+24]
  00084	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0008b	59		 pop	 ecx
  0008c	5e		 pop	 esi
  0008d	83 c4 10	 add	 esp, 16			; 00000010H
  00090	c2 08 00	 ret	 8
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Set@CPostIt@@QAEHPBD0@Z$0:
  00000	8b 45 f0	 mov	 eax, DWORD PTR $T103562[ebp]
  00003	50		 push	 eax
  00004	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00009	59		 pop	 ecx
  0000a	c3		 ret	 0
__ehhandler$?Set@CPostIt@@QAEHPBD0@Z:
  0000b	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000f	8d 42 f8	 lea	 eax, DWORD PTR [edx-8]
  00012	8b 4a f4	 mov	 ecx, DWORD PTR [edx-12]
  00015	33 c8		 xor	 ecx, eax
  00017	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0001c	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Set@CPostIt@@QAEHPBD0@Z
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Set@CPostIt@@QAEHPBD0@Z ENDP				; CPostIt::Set
PUBLIC	??_C@_02DPKJAMEF@?$CFd?$AA@			; `string'
PUBLIC	__$ArrayPad$
PUBLIC	?Set@CPostIt@@QAEHPBDK@Z			; CPostIt::Set
EXTRN	__snprintf:PROC
;	COMDAT ??_C@_02DPKJAMEF@?$CFd?$AA@
CONST	SEGMENT
??_C@_02DPKJAMEF@?$CFd?$AA@ DB '%d', 00H		; `string'
; Function compile flags: /Ogtpy
CONST	ENDS
;	COMDAT ?Set@CPostIt@@QAEHPBDK@Z
_TEXT	SEGMENT
_szValue$ = -16						; size = 12
__$ArrayPad$ = -4					; size = 4
_lpszKeyName$ = 8					; size = 4
_dwValue$ = 12						; size = 4
?Set@CPostIt@@QAEHPBDK@Z PROC				; CPostIt::Set, COMDAT
; _this$ = ecx

; 117  : {

  00000	83 ec 10	 sub	 esp, 16			; 00000010H
  00003	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00008	33 c4		 xor	 eax, esp
  0000a	89 44 24 0c	 mov	 DWORD PTR __$ArrayPad$[esp+16], eax

; 118  : 	CHAR szValue[12];
; 119  : 
; 120  : 	_snprintf( szValue, 12, "%d", dwValue );

  0000e	8b 44 24 18	 mov	 eax, DWORD PTR _dwValue$[esp+12]
  00012	56		 push	 esi
  00013	57		 push	 edi
  00014	8b 7c 24 1c	 mov	 edi, DWORD PTR _lpszKeyName$[esp+20]
  00018	50		 push	 eax
  00019	68 00 00 00 00	 push	 OFFSET ??_C@_02DPKJAMEF@?$CFd?$AA@
  0001e	8b f1		 mov	 esi, ecx
  00020	8d 4c 24 10	 lea	 ecx, DWORD PTR _szValue$[esp+32]
  00024	6a 0c		 push	 12			; 0000000cH
  00026	51		 push	 ecx
  00027	e8 00 00 00 00	 call	 __snprintf
  0002c	83 c4 10	 add	 esp, 16			; 00000010H

; 121  : 	return Set( lpszKeyName, szValue );

  0002f	8d 54 24 08	 lea	 edx, DWORD PTR _szValue$[esp+24]
  00033	52		 push	 edx
  00034	57		 push	 edi
  00035	8b ce		 mov	 ecx, esi
  00037	e8 00 00 00 00	 call	 ?Set@CPostIt@@QAEHPBD0@Z ; CPostIt::Set

; 122  : }

  0003c	8b 4c 24 14	 mov	 ecx, DWORD PTR __$ArrayPad$[esp+24]
  00040	5f		 pop	 edi
  00041	5e		 pop	 esi
  00042	33 cc		 xor	 ecx, esp
  00044	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00049	83 c4 10	 add	 esp, 16			; 00000010H
  0004c	c2 08 00	 ret	 8
?Set@CPostIt@@QAEHPBDK@Z ENDP				; CPostIt::Set
_TEXT	ENDS
PUBLIC	?Set@CPostIt@@QAEHPBD@Z				; CPostIt::Set
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?Set@CPostIt@@QAEHPBD@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Set@CPostIt@@QAEHPBD@Z$0
__ehfuncinfo$?Set@CPostIt@@QAEHPBD@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?Set@CPostIt@@QAEHPBD@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ?Set@CPostIt@@QAEHPBD@Z
_TEXT	SEGMENT
__$EHRec$ = -12						; size = 12
$T103582 = 8						; size = 4
_lpBuffer$ = 8						; size = 4
?Set@CPostIt@@QAEHPBD@Z PROC				; CPostIt::Set, COMDAT
; _this$ = ecx

; 125  : {

  00000	6a ff		 push	 -1
  00002	68 00 00 00 00	 push	 __ehhandler$?Set@CPostIt@@QAEHPBD@Z
  00007	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  0000d	50		 push	 eax
  0000e	56		 push	 esi
  0000f	57		 push	 edi
  00010	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00015	33 c4		 xor	 eax, esp
  00017	50		 push	 eax
  00018	8d 44 24 0c	 lea	 eax, DWORD PTR __$EHRec$[esp+24]
  0001c	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00022	8b f1		 mov	 esi, ecx

; 126  : 	if( lpBuffer == NULL )

  00024	8b 7c 24 1c	 mov	 edi, DWORD PTR _lpBuffer$[esp+20]
  00028	85 ff		 test	 edi, edi
  0002a	75 16		 jne	 SHORT $LN2@Set@2

; 127  : 		return FALSE;

  0002c	33 c0		 xor	 eax, eax

; 133  : }

  0002e	8b 4c 24 0c	 mov	 ecx, DWORD PTR __$EHRec$[esp+24]
  00032	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00039	59		 pop	 ecx
  0003a	5f		 pop	 edi
  0003b	5e		 pop	 esi
  0003c	83 c4 0c	 add	 esp, 12			; 0000000cH
  0003f	c2 04 00	 ret	 4
$LN2@Set@2:

; 128  : 	if( m_pMemoryBlock == NULL )

  00042	83 be 08 01 00
	00 00		 cmp	 DWORD PTR [esi+264], 0
  00049	75 33		 jne	 SHORT $LN1@Set@2

; 129  : 		m_pMemoryBlock = new _CPostItMemoryBlock;

  0004b	6a 20		 push	 32			; 00000020H
  0004d	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00052	83 c4 04	 add	 esp, 4
  00055	89 44 24 1c	 mov	 DWORD PTR $T103582[esp+20], eax
  00059	c7 44 24 14 00
	00 00 00	 mov	 DWORD PTR __$EHRec$[esp+32], 0
  00061	85 c0		 test	 eax, eax
  00063	74 09		 je	 SHORT $LN5@Set@2
  00065	8b c8		 mov	 ecx, eax
  00067	e8 00 00 00 00	 call	 ??0_CPostItMemoryBlock@@QAE@XZ ; _CPostItMemoryBlock::_CPostItMemoryBlock
  0006c	eb 02		 jmp	 SHORT $LN6@Set@2
$LN5@Set@2:
  0006e	33 c0		 xor	 eax, eax
$LN6@Set@2:
  00070	c7 44 24 14 ff
	ff ff ff	 mov	 DWORD PTR __$EHRec$[esp+32], -1
  00078	89 86 08 01 00
	00		 mov	 DWORD PTR [esi+264], eax
$LN1@Set@2:

; 130  : 	m_pMemoryBlock->Put( lpBuffer );

  0007e	8b 8e 08 01 00
	00		 mov	 ecx, DWORD PTR [esi+264]
  00084	57		 push	 edi
  00085	e8 00 00 00 00	 call	 ?Put@_CPostItMemoryBlock@@QAEHPBD@Z ; _CPostItMemoryBlock::Put

; 131  : 	m_bModified = TRUE;

  0008a	c7 06 01 00 00
	00		 mov	 DWORD PTR [esi], 1

; 132  : 	return TRUE;

  00090	b8 01 00 00 00	 mov	 eax, 1

; 133  : }

  00095	8b 4c 24 0c	 mov	 ecx, DWORD PTR __$EHRec$[esp+24]
  00099	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000a0	59		 pop	 ecx
  000a1	5f		 pop	 edi
  000a2	5e		 pop	 esi
  000a3	83 c4 0c	 add	 esp, 12			; 0000000cH
  000a6	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Set@CPostIt@@QAEHPBD@Z$0:
  00000	8b 45 04	 mov	 eax, DWORD PTR $T103582[ebp-4]
  00003	50		 push	 eax
  00004	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00009	59		 pop	 ecx
  0000a	c3		 ret	 0
__ehhandler$?Set@CPostIt@@QAEHPBD@Z:
  0000b	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000f	8d 42 f8	 lea	 eax, DWORD PTR [edx-8]
  00012	8b 4a f4	 mov	 ecx, DWORD PTR [edx-12]
  00015	33 c8		 xor	 ecx, eax
  00017	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0001c	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Set@CPostIt@@QAEHPBD@Z
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Set@CPostIt@@QAEHPBD@Z ENDP				; CPostIt::Set
PUBLIC	?Assign@_CPostItMemoryBlock@@QAEHPAX@Z		; _CPostItMemoryBlock::Assign
; Function compile flags: /Ogtpy
;	COMDAT ?Assign@_CPostItMemoryBlock@@QAEHPAX@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_hBlock$ = 8						; size = 4
?Assign@_CPostItMemoryBlock@@QAEHPAX@Z PROC		; _CPostItMemoryBlock::Assign, COMDAT
; _this$ = ecx

; 173  : {

  00000	51		 push	 ecx
  00001	56		 push	 esi

; 174  : 	if( hBlock == NULL || hBlock == INVALID_HANDLE_VALUE )

  00002	8b 74 24 0c	 mov	 esi, DWORD PTR _hBlock$[esp+4]
  00006	89 4c 24 04	 mov	 DWORD PTR _this$[esp+8], ecx
  0000a	85 f6		 test	 esi, esi
  0000c	74 70		 je	 SHORT $LN5@Assign
  0000e	83 fe ff	 cmp	 esi, -1
  00011	74 6b		 je	 SHORT $LN5@Assign
  00013	57		 push	 edi

; 176  : 	LPBYTE lpBuffer = (LPBYTE) ::GlobalLock( hBlock );

  00014	56		 push	 esi
  00015	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GlobalLock@4
  0001b	8b f8		 mov	 edi, eax

; 177  : 
; 178  : 	if( lpBuffer == NULL )

  0001d	85 ff		 test	 edi, edi
  0001f	75 06		 jne	 SHORT $LN4@Assign
  00021	5f		 pop	 edi
  00022	5e		 pop	 esi

; 194  : }

  00023	59		 pop	 ecx
  00024	c2 04 00	 ret	 4
$LN4@Assign:
  00027	55		 push	 ebp

; 179  : 		return FALSE;
; 180  : 	DWORD dwCount = *((LPDWORD) lpBuffer);				lpBuffer += sizeof( DWORD );

  00028	8b 2f		 mov	 ebp, DWORD PTR [edi]
  0002a	83 c7 04	 add	 edi, 4

; 181  : 	for( DWORD dwI=0; dwI < dwCount; dwI++ ) {

  0002d	85 ed		 test	 ebp, ebp
  0002f	76 3a		 jbe	 SHORT $LN1@Assign
  00031	53		 push	 ebx
$LL3@Assign:

; 182  : 		WORD	wLen = *((LPWORD) lpBuffer);			lpBuffer += sizeof( WORD );

  00032	0f b7 07	 movzx	 eax, WORD PTR [edi]

; 183  : 
; 184  : 		LPSTR	lpszText = new CHAR[ wLen + 1 ];

  00035	0f b7 f0	 movzx	 esi, ax
  00038	8d 46 01	 lea	 eax, DWORD PTR [esi+1]
  0003b	50		 push	 eax
  0003c	83 c7 02	 add	 edi, 2
  0003f	e8 00 00 00 00	 call	 ??_U@YAPAXI@Z		; operator new[]

; 185  : 		::CopyMemory( lpszText, lpBuffer, wLen );

  00044	56		 push	 esi
  00045	8b d8		 mov	 ebx, eax
  00047	57		 push	 edi
  00048	53		 push	 ebx
  00049	e8 00 00 00 00	 call	 _memcpy

; 186  : 		lpszText[ wLen ] = '\0';
; 187  : 
; 188  : 		lpBuffer += wLen;
; 189  : 
; 190  : 		Put( lpszText );

  0004e	8b 4c 24 20	 mov	 ecx, DWORD PTR _this$[esp+36]
  00052	83 c4 10	 add	 esp, 16			; 00000010H
  00055	53		 push	 ebx
  00056	c6 04 1e 00	 mov	 BYTE PTR [esi+ebx], 0
  0005a	03 fe		 add	 edi, esi
  0005c	e8 00 00 00 00	 call	 ?Put@_CPostItMemoryBlock@@QAEHPBD@Z ; _CPostItMemoryBlock::Put
  00061	83 ed 01	 sub	 ebp, 1
  00064	75 cc		 jne	 SHORT $LL3@Assign
  00066	8b 74 24 18	 mov	 esi, DWORD PTR _hBlock$[esp+16]
  0006a	5b		 pop	 ebx
$LN1@Assign:

; 191  : 	}
; 192  : 	::GlobalUnlock( hBlock ); 

  0006b	56		 push	 esi
  0006c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GlobalUnlock@4
  00072	5d		 pop	 ebp
  00073	5f		 pop	 edi

; 193  : 	return TRUE;

  00074	b8 01 00 00 00	 mov	 eax, 1
  00079	5e		 pop	 esi

; 194  : }

  0007a	59		 pop	 ecx
  0007b	c2 04 00	 ret	 4
$LN5@Assign:

; 175  : 		return FALSE;

  0007e	33 c0		 xor	 eax, eax
  00080	5e		 pop	 esi

; 194  : }

  00081	59		 pop	 ecx
  00082	c2 04 00	 ret	 4
?Assign@_CPostItMemoryBlock@@QAEHPAX@Z ENDP		; _CPostItMemoryBlock::Assign
_TEXT	ENDS
PUBLIC	?CopyTo@CPostIt@@QAEHPAV1@PBD@Z			; CPostIt::CopyTo
; Function compile flags: /Ogtpy
;	COMDAT ?CopyTo@CPostIt@@QAEHPAV1@PBD@Z
_TEXT	SEGMENT
_pPostIt$ = 8						; size = 4
_lpszKeyName$ = 12					; size = 4
?CopyTo@CPostIt@@QAEHPAV1@PBD@Z PROC			; CPostIt::CopyTo, COMDAT
; _this$ = ecx

; 51   : 	if( m_pMemoryBlock == NULL )

  00000	8b 89 08 01 00
	00		 mov	 ecx, DWORD PTR [ecx+264]
  00006	85 c9		 test	 ecx, ecx
  00008	75 05		 jne	 SHORT $LN2@CopyTo
$LN5@CopyTo:

; 52   : 		return FALSE;

  0000a	33 c0		 xor	 eax, eax

; 57   : }

  0000c	c2 08 00	 ret	 8
$LN2@CopyTo:

; 53   : 	LPSTR szText = m_pMemoryBlock->Find( lpszKeyName );

  0000f	8b 44 24 08	 mov	 eax, DWORD PTR _lpszKeyName$[esp-4]
  00013	50		 push	 eax
  00014	e8 00 00 00 00	 call	 ?Find@_CPostItMemoryBlock@@QAEPADPBD@Z ; _CPostItMemoryBlock::Find

; 54   : 	if( szText == NULL )

  00019	85 c0		 test	 eax, eax

; 55   : 		return FALSE;

  0001b	74 ed		 je	 SHORT $LN5@CopyTo

; 56   : 	return pPostIt->Set( szText );

  0001d	8b 4c 24 04	 mov	 ecx, DWORD PTR _pPostIt$[esp-4]
  00021	50		 push	 eax
  00022	e8 00 00 00 00	 call	 ?Set@CPostIt@@QAEHPBD@Z	; CPostIt::Set

; 57   : }

  00027	c2 08 00	 ret	 8
?CopyTo@CPostIt@@QAEHPAV1@PBD@Z ENDP			; CPostIt::CopyTo
_TEXT	ENDS
PUBLIC	?Get@CPostIt@@QAEHPBDPADK@Z			; CPostIt::Get
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?Get@CPostIt@@QAEHPBDPADK@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Get@CPostIt@@QAEHPBDPADK@Z$0
__ehfuncinfo$?Get@CPostIt@@QAEHPBDPADK@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?Get@CPostIt@@QAEHPBDPADK@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	01H
; Function compile flags: /Ogtpy
xdata$x	ENDS
;	COMDAT ?Get@CPostIt@@QAEHPBDPADK@Z
_TEXT	SEGMENT
$T103607 = -16						; size = 4
__$EHRec$ = -12						; size = 12
_lpszKeyName$ = 8					; size = 4
_lpBuffer$ = 12						; size = 4
_nSize$ = 16						; size = 4
?Get@CPostIt@@QAEHPBDPADK@Z PROC			; CPostIt::Get, COMDAT
; _this$ = ecx

; 136  : {

  00000	6a ff		 push	 -1
  00002	68 00 00 00 00	 push	 __ehhandler$?Get@CPostIt@@QAEHPBDPADK@Z
  00007	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  0000d	50		 push	 eax
  0000e	51		 push	 ecx
  0000f	56		 push	 esi
  00010	57		 push	 edi
  00011	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00016	33 c4		 xor	 eax, esp
  00018	50		 push	 eax
  00019	8d 44 24 10	 lea	 eax, DWORD PTR __$EHRec$[esp+28]
  0001d	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00023	8b f1		 mov	 esi, ecx

; 137  : 	if( m_pMemoryBlock == NULL ) {

  00025	83 be 08 01 00
	00 00		 cmp	 DWORD PTR [esi+264], 0
  0002c	0f 85 82 00 00
	00		 jne	 $LN3@Get@2

; 138  : 		UINT	uDGPFormat;
; 139  : 
; 140  : 		uDGPFormat = ::RegisterClipboardFormatA( m_szClipFormatName );

  00032	8d 46 04	 lea	 eax, DWORD PTR [esi+4]
  00035	50		 push	 eax
  00036	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__RegisterClipboardFormatA@4

; 141  : 		if( ::OpenClipboard( NULL ) == FALSE )

  0003c	6a 00		 push	 0
  0003e	8b f8		 mov	 edi, eax
  00040	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__OpenClipboard@4
  00046	85 c0		 test	 eax, eax

; 142  : 			return FALSE;

  00048	74 13		 je	 SHORT $LN10@Get@2

; 143  : 
; 144  : 		HANDLE hClipboardMemory = ::GetClipboardData( uDGPFormat );

  0004a	57		 push	 edi
  0004b	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetClipboardData@4
  00051	8b f8		 mov	 edi, eax

; 145  : 
; 146  : 		if( hClipboardMemory == NULL ) {

  00053	85 ff		 test	 edi, edi
  00055	75 1c		 jne	 SHORT $LN1@Get@2

; 147  : 			::CloseClipboard();

  00057	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__CloseClipboard@0
$LN10@Get@2:

; 148  : 			return FALSE;

  0005d	33 c0		 xor	 eax, eax

; 157  : }

  0005f	8b 4c 24 10	 mov	 ecx, DWORD PTR __$EHRec$[esp+28]
  00063	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0006a	59		 pop	 ecx
  0006b	5f		 pop	 edi
  0006c	5e		 pop	 esi
  0006d	83 c4 10	 add	 esp, 16			; 00000010H
  00070	c2 0c 00	 ret	 12			; 0000000cH
$LN1@Get@2:

; 149  : 		}
; 150  : 		m_pMemoryBlock = new _CPostItMemoryBlock;

  00073	6a 20		 push	 32			; 00000020H
  00075	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0007a	83 c4 04	 add	 esp, 4
  0007d	89 44 24 0c	 mov	 DWORD PTR $T103607[esp+28], eax
  00081	c7 44 24 18 00
	00 00 00	 mov	 DWORD PTR __$EHRec$[esp+36], 0
  00089	85 c0		 test	 eax, eax
  0008b	74 09		 je	 SHORT $LN6@Get@2
  0008d	8b c8		 mov	 ecx, eax
  0008f	e8 00 00 00 00	 call	 ??0_CPostItMemoryBlock@@QAE@XZ ; _CPostItMemoryBlock::_CPostItMemoryBlock
  00094	eb 02		 jmp	 SHORT $LN7@Get@2
$LN6@Get@2:
  00096	33 c0		 xor	 eax, eax
$LN7@Get@2:

; 151  : 		m_pMemoryBlock->Assign( hClipboardMemory );

  00098	57		 push	 edi
  00099	8b c8		 mov	 ecx, eax
  0009b	c7 44 24 1c ff
	ff ff ff	 mov	 DWORD PTR __$EHRec$[esp+40], -1
  000a3	89 86 08 01 00
	00		 mov	 DWORD PTR [esi+264], eax
  000a9	e8 00 00 00 00	 call	 ?Assign@_CPostItMemoryBlock@@QAEHPAX@Z ; _CPostItMemoryBlock::Assign

; 152  : 
; 153  : 		::CloseClipboard();

  000ae	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__CloseClipboard@0
$LN3@Get@2:

; 154  : 	}
; 155  : 
; 156  : 	return m_pMemoryBlock->Get( lpszKeyName, lpBuffer, nSize );

  000b4	8b 4c 24 28	 mov	 ecx, DWORD PTR _nSize$[esp+24]
  000b8	8b 54 24 24	 mov	 edx, DWORD PTR _lpBuffer$[esp+24]
  000bc	8b 44 24 20	 mov	 eax, DWORD PTR _lpszKeyName$[esp+24]
  000c0	51		 push	 ecx
  000c1	8b 8e 08 01 00
	00		 mov	 ecx, DWORD PTR [esi+264]
  000c7	52		 push	 edx
  000c8	50		 push	 eax
  000c9	e8 00 00 00 00	 call	 ?Get@_CPostItMemoryBlock@@QAEHPBDPADK@Z ; _CPostItMemoryBlock::Get

; 157  : }

  000ce	8b 4c 24 10	 mov	 ecx, DWORD PTR __$EHRec$[esp+28]
  000d2	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000d9	59		 pop	 ecx
  000da	5f		 pop	 edi
  000db	5e		 pop	 esi
  000dc	83 c4 10	 add	 esp, 16			; 00000010H
  000df	c2 0c 00	 ret	 12			; 0000000cH
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Get@CPostIt@@QAEHPBDPADK@Z$0:
  00000	8b 45 f0	 mov	 eax, DWORD PTR $T103607[ebp]
  00003	50		 push	 eax
  00004	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00009	59		 pop	 ecx
  0000a	c3		 ret	 0
__ehhandler$?Get@CPostIt@@QAEHPBDPADK@Z:
  0000b	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000f	8d 42 f4	 lea	 eax, DWORD PTR [edx-12]
  00012	8b 4a f0	 mov	 ecx, DWORD PTR [edx-16]
  00015	33 c8		 xor	 ecx, eax
  00017	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0001c	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Get@CPostIt@@QAEHPBDPADK@Z
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Get@CPostIt@@QAEHPBDPADK@Z ENDP			; CPostIt::Get
END
