;
; +-------------------------------------------------------------------------+
; |	This file is generated by The Interactive Disassembler (IDA)	    |
; |	Copyright (c) 2007 by DataRescue sa/nv,	<ida@datarescue.com>	    |
; | Licensed to: 48-377D-7114-93 SRI International, 1 computer,	std, 11/2007 |
; +-------------------------------------------------------------------------+
;
;
; +-------------------------------------------------------------------------+
; |	This file is generated by The Interactive Disassembler (IDA)	    |
; |	Copyright (c) 2007 by DataRescue sa/nv,	<ida@datarescue.com>	    |
; | Licensed to: 48-377D-7114-93 SRI International, 1 computer,	std, 11/2007 |
; +-------------------------------------------------------------------------+
;
; Input	MD5   :	8EDC331D07FCC84B289C41ECBE0E4ED3

; File Name   :	u:\work\8edc331d07fcc84b289c41ecbe0e4ed3_orig.exe
; Format      :	Portable executable for	80386 (PE)
; Imagebase   :	10000
; Section 1. (virtual address 00001000)
; Virtual size			: 00009118 (  37144.)
; Section size in file		: 00009200 (  37376.)
; Offset to raw	data for section: 00000400
; Flags	60000020: Text Executable Readable
; Alignment	: default
; OS type	  :  MS	Windows
; Application type:  Executable	DLL 32bit

		include	uni.inc	; see unicode subdir of	ida for	info on	unicode

		.686p
		.mmx
		.model flat

; ===========================================================================

; Segment type:	Pure code
; Segment permissions: Read/Execute
CODE		segment	para public 'CODE' use32
		assume cs:CODE
		;org 11000h
		assume es:nothing, ss:nothing, ds:CODE,	fs:nothing, gs:nothing
off_11000	dd offset byte_11004	; DATA XREF: CODE:0001442Ao
					; CODE:00014432o ...
byte_11004	db 0Ah			; DATA XREF: CODE:off_11000o
					; LString
		db 6,'String'
off_1100C	dd offset aTobject	; DATA XREF: CODE:000143FCo
					; CODE:00015038o
					; "TObject"
		dd 7 dup(0)
		dd offset aTobject	; "TObject"
unknown_libname_1 dd 4,	0		; BDS 2005-2006	and Delphi6-7 Visual Component Library
		dd offset @System@TObject@SafeCallException$qqrp14System@TObjectpv ; System::TObject::SafeCallException(System::TObject	*,void *)
		dd offset nullsub_2
		dd offset nullsub_3
		dd offset sub_1149C
		dd offset nullsub_4
		dd offset sub_11388
		dd offset sub_1139C
		dd offset @System@TObject@$bdtr$qqrv ; System::TObject::~TObject(void)
aTobject	db 7,'TObject'          ; DATA XREF: CODE:off_1100Co
					; CODE:0001102Co
; [00000006 BYTES: COLLAPSED FUNCTION FreeLibrary. PRESS KEYPAD	"+" TO EXPAND]
		align 4
; [00000006 BYTES: COLLAPSED FUNCTION LocalAlloc. PRESS	KEYPAD "+" TO EXPAND]
		align 10h
; [00000006 BYTES: COLLAPSED FUNCTION LocalFree. PRESS KEYPAD "+" TO EXPAND]
		align 4
; [00000006 BYTES: COLLAPSED FUNCTION TlsAlloc.	PRESS KEYPAD "+" TO EXPAND]
		align 10h
; [00000006 BYTES: COLLAPSED FUNCTION TlsFree. PRESS KEYPAD "+"	TO EXPAND]
		align 4
; [00000006 BYTES: COLLAPSED FUNCTION TlsGetValue. PRESS KEYPAD	"+" TO EXPAND]
		align 10h
; [00000006 BYTES: COLLAPSED FUNCTION TlsSetValue. PRESS KEYPAD	"+" TO EXPAND]
		align 4
; [00000006 BYTES: COLLAPSED FUNCTION RaiseException. PRESS KEYPAD "+" TO EXPAND]
		align 10h
; [00000006 BYTES: COLLAPSED FUNCTION RtlUnwind. PRESS KEYPAD "+" TO EXPAND]
		align 4
; [00000006 BYTES: COLLAPSED FUNCTION UnhandledExceptionFilter.	PRESS KEYPAD "+" TO EXPAND]
		align 10h
; [00000006 BYTES: COLLAPSED FUNCTION ExitProcess. PRESS KEYPAD	"+" TO EXPAND]
		align 4
; [00000006 BYTES: COLLAPSED FUNCTION MultiByteToWideChar. PRESS KEYPAD	"+" TO EXPAND]
		align 10h
; [00000006 BYTES: COLLAPSED FUNCTION WideCharToMultiByte. PRESS KEYPAD	"+" TO EXPAND]
		align 4
; [00000006 BYTES: COLLAPSED FUNCTION SysAllocStringLen. PRESS KEYPAD "+" TO EXPAND]
		align 10h
; [00000006 BYTES: COLLAPSED FUNCTION SysFreeString. PRESS KEYPAD "+" TO EXPAND]
		align 4
; [00000006 BYTES: COLLAPSED FUNCTION LocalReAlloc. PRESS KEYPAD "+" TO	EXPAND]
		align 10h
; [00000006 BYTES: COLLAPSED FUNCTION LocalSize. PRESS KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================


; int __fastcall sub_110E8(SIZE_T uBytes)

sub_110E8	proc near		; CODE XREF: sub_1114C+4p
					; System::__linkproc__ ReallocMem(void *&,int)+3Fp ...
		push	ebx
		mov	ebx, eax
		push	ebx		; uBytes
		push	0		; uFlags
		call	LocalAlloc	; LocalAlloc
		pop	ebx
		retn
sub_110E8	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================


; int __fastcall sub_110F8(HLOCAL hMem)

sub_110F8	proc near		; CODE XREF: sub_11164+4p
					; System::__linkproc__ ReallocMem(void *&,int)+26p
					; DATA XREF: ...
		push	ebx
		mov	ebx, eax
		push	ebx		; hMem
		call	LocalFree	; LocalFree
		pop	ebx
		retn
sub_110F8	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================


; int __fastcall sub_11104(HLOCAL hMem,	SIZE_T uBytes)

sub_11104	proc near		; CODE XREF: System::__linkproc__ ReallocMem(void *&,int)+Dp
					; DATA XREF: DATA:off_1B03Co
		push	ebx
		push	esi
		push	edi
		mov	esi, edx
		mov	edi, eax
		push	0		; uFlags
		push	esi		; uBytes
		push	edi		; hMem
		call	LocalReAlloc	; LocalReAlloc
		mov	ebx, eax
		test	ebx, ebx
		jnz	short loc_11144
		push	esi		; uBytes
		push	0		; uFlags
		call	LocalAlloc	; LocalAlloc
		mov	ebx, eax
		test	ebx, ebx
		jz	short loc_11144
		push	edi		; hMem
		call	LocalSize	; LocalSize
		cmp	esi, eax
		jge	short loc_11134
		mov	eax, esi


loc_11134:				; CODE XREF: sub_11104+2Cj
		mov	edx, ebx
		mov	ecx, edi
		xchg	eax, ecx
		call	sub_11210
		push	edi		; hMem
		call	LocalFree	; LocalFree


loc_11144:				; CODE XREF: sub_11104+14j
					; sub_11104+22j
		mov	eax, ebx
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_11104	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1114C	proc near		; CODE XREF: sub_11388+4p sub_11CC0+8p ...
		test	eax, eax
		jz	short locret_1115A
		call	ds:off_1B034
		or	eax, eax
		jz	short loc_1115B

locret_1115A:				; CODE XREF: sub_1114C+2j
		retn
; ---------------------------------------------------------------------------


loc_1115B:				; CODE XREF: sub_1114C+Cj
		mov	al, 1
		jmp	loc_111CC
sub_1114C	endp

; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_11164	proc near		; CODE XREF: sub_1139C+1Dp
					; sub_11C00+1Bp ...
		test	eax, eax
		jz	short locret_11172
		call	ds:off_1B038
		or	eax, eax
		jnz	short loc_11173

locret_11172:				; CODE XREF: sub_11164+2j
		retn
; ---------------------------------------------------------------------------


loc_11173:				; CODE XREF: sub_11164+Cj
		mov	al, 2
		jmp	loc_111CC
sub_11164	endp

; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 4
; [00000079 BYTES: COLLAPSED FUNCTION System::__linkproc__ ReallocMem(void *&,int). PRESS KEYPAD "+" TO	EXPAND]
byte_111F5	db 0CBh			; DATA XREF: System::__linkproc__ ReallocMem(void *&,int)+61r
aRsu		db 'ÌÈÉ×ÏÈÍÎÛØÊÙÚÜÝÞßàáã',0
		db 0E4h
		dd 0C08BC3E5h

; =============== S U B	R O U T	I N E =======================================



sub_11210	proc near		; CODE XREF: sub_11104+35p
					; sub_11C54+1Bp ...
		cmp	ecx, 4
		jge	short loc_11231
		jcxz	locret_1126F
		cmp	eax, edx
		jz	short locret_1126F
		push	esi
		push	edi
		mov	esi, eax
		mov	edi, edx
		ja	short loc_1122D
		lea	esi, [esi+ecx-1]
		lea	edi, [edi+ecx-1]
		std


loc_1122D:				; CODE XREF: sub_11210+12j
		rep movsb
		jmp	short loc_1125D
; ---------------------------------------------------------------------------


loc_11231:				; CODE XREF: sub_11210+3j
		cmp	eax, edx
		jz	short locret_1126F
		push	esi
		push	edi
		mov	esi, eax
		mov	edi, edx
		mov	eax, ecx
		ja	short loc_1125F
		and	ecx, 3
		lea	esi, [esi+eax-1]
		lea	edi, [edi+eax-1]
		std
		rep movsb
		sar	eax, 2
		mov	ecx, eax
		mov	eax, 3
		sub	esi, eax
		sub	edi, eax
		rep movsd


loc_1125D:				; CODE XREF: sub_11210+1Fj
		cld
		dec	ecx


loc_1125F:				; CODE XREF: sub_11210+2Dj
		sar	ecx, 2
		js	short loc_1126D
		rep movsd
		and	eax, 3
		mov	ecx, eax
		rep movsb


loc_1126D:				; CODE XREF: sub_11210+52j
		pop	edi
		pop	esi

locret_1126F:				; CODE XREF: sub_11210+5j sub_11210+Aj ...
		retn
sub_11210	endp

; [0000000A BYTES: COLLAPSED FUNCTION System::__linkproc__ ROUND(void).	PRESS KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1127C	proc near		; CODE XREF: sub_12EC8+Bp sub_12EF0+Cp ...

var_C		= word ptr -0Ch
var_8		= qword	ptr -8

		sub	esp, 0Ch
		fstcw	[esp+0Ch+var_C]
		wait
		fldcw	ds:word_1B040
		fistp	[esp+0Ch+var_8]
		wait
		fldcw	[esp+0Ch+var_C]
		pop	ecx
		pop	eax
		pop	edx
		retn
sub_1127C	endp

; ---------------------------------------------------------------------------
		align 4
; [0000002F BYTES: COLLAPSED FUNCTION System::__linkproc__ PStrNCat(void). PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn

; =============== S U B	R O U T	I N E =======================================



sub_112C8	proc near		; CODE XREF: sub_13CAC+DBp
					; sub_13CAC+140p ...
		xor	ecx, ecx
		push	esi
		push	edi
		mov	cl, [edx]
		mov	edi, eax
		inc	ecx
		mov	esi, edx
		mov	eax, ecx
		shr	ecx, 2
		and	eax, 3
		rep movsd
		mov	ecx, eax
		rep movsb
		pop	edi
		pop	esi
		retn
sub_112C8	endp

; [0000001F BYTES: COLLAPSED FUNCTION System::__linkproc__ FillChar(void *,int,char). PRESS KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_11304	proc near		; CODE XREF: sub_154D4+1Bp
					; sub_15CA4+90p ...
		imul	edx, ds:dword_1C024, 8088405h
		inc	edx
		mov	ds:dword_1C024,	edx
		mul	edx
		mov	eax, edx
		retn
sub_11304	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1131C	proc near		; CODE XREF: sub_130F0p
		cmp	edx, 1
		jnb	short loc_11322
		retn
; ---------------------------------------------------------------------------


loc_11322:				; CODE XREF: sub_1131C+3j
		push	ecx
		test	eax, eax
		jnz	short loc_1136B
		mov	eax, [edx-8]	; uBytes
		test	eax, eax
		jz	short loc_11364
		push	edx
		call	ds:off_1B034
		pop	edx
		test	eax, eax
		jz	short loc_11360
		push	edi
		mov	ecx, [edx-8]
		mov	edi, eax
		push	eax
		xor	eax, eax
		shr	ecx, 2
		rep stosd
		mov	ecx, [edx-8]
		and	ecx, 3
		rep stosb
		pop	eax
		pop	edi
		mov	ecx, [edx-4]
		test	ecx, ecx
		jl	short loc_1135C
		mov	[eax+ecx], edx


loc_1135C:				; CODE XREF: sub_1131C+3Bj
		test	eax, eax
		pop	ecx
		retn
; ---------------------------------------------------------------------------


loc_11360:				; CODE XREF: sub_1131C+1Cj
		xor	edx, edx
		pop	ecx
		retn
; ---------------------------------------------------------------------------


loc_11364:				; CODE XREF: sub_1131C+10j
		xor	edx, edx
		cmp	eax, 1
		pop	ecx
		retn
; ---------------------------------------------------------------------------


loc_1136B:				; CODE XREF: sub_1131C+9j
		mov	ecx, [edx-4]
		test	ecx, ecx
		jl	short loc_11375
		mov	[eax+ecx], edx


loc_11375:				; CODE XREF: sub_1131C+54j
		xor	edx, edx
		test	eax, eax
		pop	ecx
		retn
sub_1131C	endp

; ---------------------------------------------------------------------------
		align 4
; [0000000A BYTES: COLLAPSED FUNCTION unknown_libname_2. PRESS KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_11388	proc near		; DATA XREF: CODE:0001104Co
					; CODE:00014414o ...
		push	eax
		mov	eax, [eax-28h]
		call	sub_1114C
		mov	edx, eax
		pop	eax
		jmp	sub_11400
sub_11388	endp

; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1139C	proc near		; DATA XREF: CODE:00011050o
					; CODE:00014418o ...
		push	ebx
		push	esi
		mov	ebx, eax
		mov	esi, eax


loc_113A2:				; CODE XREF: sub_1139C+1Bj
		mov	esi, [esi]
		mov	edx, [esi-40h]
		mov	esi, [esi-24h]
		test	edx, edx
		jz	short loc_113B5
		call	sub_122F0
		mov	eax, ebx


loc_113B5:				; CODE XREF: sub_1139C+10j
		test	esi, esi
		jnz	short loc_113A2
		call	sub_11164
		pop	esi
		pop	ebx
		retn
sub_1139C	endp

; ---------------------------------------------------------------------------
		align 4
; [00000020 BYTES: COLLAPSED FUNCTION unknown_libname_3. PRESS KEYPAD "+" TO EXPAND]
; [0000000F BYTES: COLLAPSED FUNCTION System::TObject::~TObject(void). PRESS KEYPAD "+"	TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_113F4	proc near		; CODE XREF: CODE:0001173Aj
					; System::__linkproc__ RaiseAgain(void)+30p ...
		test	eax, eax
		jz	short locret_113FF
		mov	ecx, [eax]
		mov	dl, 1
		call	dword ptr [ecx-4]

locret_113FF:				; CODE XREF: sub_113F4+2j
		retn
sub_113F4	endp


; =============== S U B	R O U T	I N E =======================================



sub_11400	proc near		; CODE XREF: sub_11388+Cj
		push	ebx
		push	esi
		push	edi
		mov	ebx, eax
		mov	edi, edx
		stosd
		mov	ecx, [ebx-28h]
		xor	eax, eax
		push	ecx
		shr	ecx, 2
		dec	ecx
		rep stosd
		pop	ecx
		and	ecx, 3
		rep stosb
		mov	eax, edx
		mov	edx, esp


loc_1141E:				; CODE XREF: sub_11400+2Fj
		mov	ecx, [ebx-48h]
		test	ecx, ecx
		jz	short loc_11426
		push	ecx


loc_11426:				; CODE XREF: sub_11400+23j
		mov	ebx, [ebx-24h]
		test	ebx, ebx
		jz	short loc_11431
		mov	ebx, [ebx]
		jmp	short loc_1141E
; ---------------------------------------------------------------------------


loc_11431:				; CODE XREF: sub_11400+2Bj
		cmp	esp, edx
		jz	short loc_11452


loc_11435:				; CODE XREF: sub_11400+50j
		pop	ebx
		mov	ecx, [ebx]
		add	ebx, 4


loc_1143B:				; CODE XREF: sub_11400+4Cj
		mov	esi, [ebx+10h]
		test	esi, esi
		jz	short loc_11448
		mov	edi, [ebx+14h]
		mov	[eax+edi], esi


loc_11448:				; CODE XREF: sub_11400+40j
		add	ebx, 1Ch
		dec	ecx
		jnz	short loc_1143B
		cmp	esp, edx
		jnz	short loc_11435


loc_11452:				; CODE XREF: sub_11400+33j
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_11400	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_11458	proc near		; CODE XREF: sub_1149C+13p
		push	edi
		xchg	eax, ebx
		jmp	short loc_1145E
; ---------------------------------------------------------------------------


loc_1145C:				; CODE XREF: sub_11458+1Fj
		mov	ebx, [ebx]


loc_1145E:				; CODE XREF: sub_11458+2j
		mov	edi, [ebx-30h]
		test	edi, edi
		jz	short loc_11472
		movzx	ecx, word ptr [edi]
		push	ecx
		add	edi, 2
		repne scasw
		jz	short loc_1147B
		pop	ecx


loc_11472:				; CODE XREF: sub_11458+Bj
		mov	ebx, [ebx-24h]
		test	ebx, ebx
		jnz	short loc_1145C
		pop	edi
		retn
; ---------------------------------------------------------------------------


loc_1147B:				; CODE XREF: sub_11458+17j
		pop	eax
		add	eax, eax
		sub	eax, ecx
		mov	ebx, [edi+eax*2-4]
		pop	edi
		retn
sub_11458	endp

; ---------------------------------------------------------------------------
		align 4
; [00000006 BYTES: COLLAPSED FUNCTION System::TObject::SafeCallException(System::TObject *,void	*). PRESS KEYPAD "+" TO	EXPAND]
		align 10h
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_4. PRESS KEYPAD "+" TO EXPAND]
		align 4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_2. PRESS KEYPAD "+" TO EXPAND]
		align 4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_3. PRESS KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1149C	proc near		; DATA XREF: CODE:00011044o
					; CODE:0001440Co ...
		push	ebx
		mov	bx, [edx]
		or	bx, bx
		jz	short loc_114BC
		cmp	bx, 0C000h
		jnb	short loc_114BC
		push	eax
		mov	eax, [eax]
		call	sub_11458
		pop	eax
		jz	short loc_114BC
		mov	ecx, ebx
		pop	ebx
		jmp	ecx
; ---------------------------------------------------------------------------


loc_114BC:				; CODE XREF: sub_1149C+7j sub_1149C+Ej ...
		pop	ebx
		mov	ecx, [eax]
		jmp	dword ptr [ecx-10h]
sub_1149C	endp

; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 4
; [00000029 BYTES: COLLAPSED FUNCTION System::__linkproc__ ClassCreate(System::TMetaClass *,bool). PRESS KEYPAD	"+" TO EXPAND]
off_114ED	dd offset loc_12AE7+2	; DATA XREF: System::__linkproc__ ClassCreate(System::TMetaClass *,bool)+18o
		align 2
		mov	eax, [esp+2Ch]
		mov	eax, [eax+0Ch]
		test	eax, eax
		jz	short loc_1150B
		mov	ecx, [eax]
		mov	dl, 81h
		push	eax
		call	dword ptr [ecx-4]
		pop	eax
		call	@System@@ClassDestroy$qqrp14System@TObject ; System::__linkproc__ ClassDestroy(System::TObject *)


loc_1150B:				; CODE XREF: CODE:000114FBj
		call	@System@@RaiseAgain$qqrv ; System::__linkproc__	RaiseAgain(void)
		retn
; ---------------------------------------------------------------------------
		align 4
; [00000006 BYTES: COLLAPSED FUNCTION System::__linkproc__ ClassDestroy(System::TObject	*). PRESS KEYPAD "+" TO	EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1151C	proc near		; CODE XREF: unknown_libname_3+10p
					; sub_14448+80p
		push	eax
		mov	edx, [eax]
		call	dword ptr [edx-1Ch]
		pop	eax
		retn
sub_1151C	endp

; [0000000F BYTES: COLLAPSED FUNCTION System::__linkproc__ BeforeDestruction(System::TObject *,signed char). PRESS KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_11534	proc near		; CODE XREF: System::__linkproc__ RaiseAgain(void)+35p
		cmp	ds:byte_1B01C, 1
		jbe	short locret_1154D
		push	0		; lpArguments
		push	0		; nNumberOfArguments
		push	0		; dwExceptionFlags
		push	0EEDFADFh	; dwExceptionCode
		call	RaiseException	; RaiseException

locret_1154D:				; CODE XREF: sub_11534+7j
		retn
sub_11534	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_11550	proc near		; CODE XREF: sub_14510-2EA7p
		cmp	ds:byte_1B01C, 0
		jz	short locret_1156F
		push	eax
		push	eax
		push	edx
		push	esp		; lpArguments
		push	2		; nNumberOfArguments
		push	0		; dwExceptionFlags
		push	0EEDFAE4h	; dwExceptionCode
		call	RaiseException	; RaiseException
		add	esp, 8
		pop	eax

locret_1156F:				; CODE XREF: sub_11550+7j
		retn
sub_11550	endp

; ---------------------------------------------------------------------------
; [00000014 BYTES: COLLAPSED CHUNK OF FUNCTION unknown_libname_4. PRESS	KEYPAD "+" TO EXPAND]
; [00000011 BYTES: COLLAPSED FUNCTION unknown_libname_4. PRESS KEYPAD "+" TO EXPAND]
		align 4
; [0000001E BYTES: COLLAPSED FUNCTION unknown_libname_5. PRESS KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_115B8	proc near		; CODE XREF: sub_12B94-1427p
		cmp	ds:byte_1B01C, 1
		jbe	short locret_115DD
		push	eax
		push	edx
		push	ecx
		call	unknown_libname_5 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		push	ecx
		push	esp		; lpArguments
		push	1		; nNumberOfArguments
		push	0		; dwExceptionFlags
		push	0EEDFAE1h	; dwExceptionCode
		call	RaiseException	; RaiseException
		pop	ecx
		pop	ecx
		pop	edx
		pop	eax

locret_115DD:				; CODE XREF: sub_115B8+7j
		retn
sub_115B8	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_115E0	proc near		; CODE XREF: System::__linkproc__ DoneExcept(void)+28p
		cmp	ds:byte_1B01C, 1
		jbe	short locret_115FA
		push	edx
		push	esp		; lpArguments
		push	1		; nNumberOfArguments
		push	0		; dwExceptionFlags
		push	0EEDFAE2h	; dwExceptionCode
		call	RaiseException	; RaiseException
		pop	edx

locret_115FA:				; CODE XREF: sub_115E0+7j
		retn
sub_115E0	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_115FC	proc near		; CODE XREF: CODE:loc_1193Cp
		push	eax
		push	edx
		cmp	ds:byte_1B01C, 1
		jbe	short loc_11616
		push	esp		; lpArguments
		push	2		; nNumberOfArguments
		push	0		; dwExceptionFlags
		push	0EEDFAE3h	; dwExceptionCode
		call	RaiseException	; RaiseException


loc_11616:				; CODE XREF: sub_115FC+9j
		pop	edx
		pop	eax
		retn
sub_115FC	endp

; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_14510


loc_1161C:				; CODE XREF: sub_14510:loc_145F5j
					; sub_14608:loc_1467Ej	...
		mov	eax, [esp-4+ExceptionInfo.ExceptionRecord]
		test	dword ptr [eax+4], 6
		jnz	loc_1173F
		cmp	dword ptr [eax], 0EEDFADEh
		mov	edx, [eax+18h]
		mov	ecx, [eax+14h]
		jz	short loc_116A9
		cld
		call	unknown_libname_2 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, ds:dword_1C008
		test	edx, edx
		jz	loc_1173F
		call	edx ; dword_1C008
		test	eax, eax
		jz	loc_1173F
		mov	edx, [esp-4+arg_8]
		mov	ecx, [esp-4+ExceptionInfo.ExceptionRecord]
		cmp	dword ptr [ecx], 0EEFFACEh
		jz	short loc_116A0
		call	sub_11550
		cmp	ds:byte_1B020, 0
		jbe	short loc_116A0
		cmp	ds:byte_1B01C, 0
		ja	short loc_116A0
		lea	ecx, [esp-4+ExceptionInfo]
		push	eax
		push	ecx		; ExceptionInfo
		call	UnhandledExceptionFilter	; UnhandledExceptionFilter
		cmp	eax, 0
		pop	eax
		jz	loc_1173F
		mov	edx, eax
		mov	eax, [esp-4+ExceptionInfo.ExceptionRecord]
		mov	ecx, [eax+0Ch]
		jmp	short loc_116D0
; ---------------------------------------------------------------------------


loc_116A0:				; CODE XREF: sub_14510-2EA9j
					; sub_14510-2E9Bj ...
		mov	edx, eax
		mov	eax, [esp-4+ExceptionInfo.ExceptionRecord]
		mov	ecx, [eax+0Ch]


loc_116A9:				; CODE XREF: sub_14510-2ED7j
		cmp	ds:byte_1B020, 1
		jbe	short loc_116D0
		cmp	ds:byte_1B01C, 0
		ja	short loc_116D0
		push	eax
		lea	eax, [esp+ExceptionInfo]
		push	edx
		push	ecx
		push	eax		; ExceptionInfo
		call	UnhandledExceptionFilter	; UnhandledExceptionFilter
		cmp	eax, 0
		pop	ecx
		pop	edx
		pop	eax
		jz	short loc_1173F


loc_116D0:				; CODE XREF: sub_14510-2E72j
					; sub_14510-2E60j ...
		or	dword ptr [eax+4], 2
		push	ebx
		xor	ebx, ebx
		push	esi
		push	edi
		push	ebp
		mov	ebx, fs:[ebx]
		push	ebx
		push	eax
		push	edx
		push	ecx
		mov	edx, [esp+1Ch+ExceptionInfo.ContextRecord]
		push	0
		push	eax
		push	offset loc_116F3
		push	edx
		call	RtlUnwind	; RtlUnwind


loc_116F3:				; DATA XREF: sub_14510-2E28o
		mov	edi, [esp+2Ch+var_4]
		call	sub_1284C
		push	dword ptr [eax+0]
		mov	[eax+0], esp
		mov	ebp, [edi+8]
		mov	ebx, [edi+4]
		mov	dword ptr [edi+4], offset j_unknown_libname_6
		add	ebx, 5
		call	unknown_libname_4 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		jmp	ebx
; END OF FUNCTION CHUNK	FOR sub_14510
; [00000005 BYTES: COLLAPSED FUNCTION j_unknown_libname_6. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		call	sub_1284C
		mov	ecx, [eax+0]
		mov	edx, [ecx]
		mov	[eax+0], edx
		mov	eax, [ecx+8]
		jmp	sub_113F4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_14510


loc_1173F:				; CODE XREF: sub_14510-2EE9j
					; sub_14510-2EC7j ...
		mov	eax, 1
		retn
; END OF FUNCTION CHUNK	FOR sub_14510
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_12B94

unknown_libname_6:			; CODE XREF: j_unknown_libname_6j
					; sub_1272C:loc_12768j	...
		mov	eax, [esp-4+arg_0] ; BDS 2005-2006 and Delphi6-7 Visual	Component Library
		mov	edx, [esp-4+arg_4]
		test	dword ptr [eax+4], 6
		jz	short loc_11778
		mov	ecx, [edx+4]
		mov	dword ptr [edx+4], offset loc_11778
		push	ebx
		push	esi
		push	edi
		push	ebp
		mov	ebp, [edx+8]
		add	ecx, 5
		call	sub_115B8
		call	ecx
		pop	ebp
		pop	edi
		pop	esi
		pop	ebx


loc_11778:				; CODE XREF: sub_12B94-143Dj
					; DATA XREF: sub_12B94-1438o
		mov	eax, 1
		retn
; END OF FUNCTION CHUNK	FOR sub_12B94
; ---------------------------------------------------------------------------
		align 10h
; [00000051 BYTES: COLLAPSED FUNCTION System::__linkproc__ RaiseAgain(void). PRESS KEYPAD "+" TO EXPAND]
		align 4
; [0000002F BYTES: COLLAPSED FUNCTION System::__linkproc__ DoneExcept(void). PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn
; [00000015 BYTES: COLLAPSED FUNCTION System::__linkproc__ TryFinallyExit(void). PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1181C	proc near		; CODE XREF: unknown_libname_7+97p
		mov	[esp+0], edx
		jmp	sub_11BF4
sub_1181C	endp

; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 4
; [000000A0 BYTES: COLLAPSED FUNCTION unknown_libname_7. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------


loc_118C8:				; DATA XREF: sub_11964+12o
		mov	eax, [esp+4]
		test	dword ptr [eax+4], 6
		jnz	loc_11961
		cmp	ds:byte_1B01C, 0
		ja	short loc_118F1
		lea	eax, [esp+4]
		push	eax
		call	UnhandledExceptionFilter	; UnhandledExceptionFilter
		cmp	eax, 0
		jz	short loc_11961


loc_118F1:				; CODE XREF: CODE:000118E0j
		mov	eax, [esp+4]
		cld
		call	unknown_libname_2 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [esp+8]
		push	0
		push	eax
		push	offset loc_1190D
		push	edx
		call	RtlUnwind	; RtlUnwind


loc_1190D:				; DATA XREF: CODE:00011902o
		mov	ebx, [esp+4]
		cmp	dword ptr [ebx], 0EEDFADEh
		mov	edx, [ebx+14h]
		mov	eax, [ebx+18h]
		jz	short loc_1193C
		mov	edx, ds:dword_1C008
		test	edx, edx
		jz	unknown_libname_7 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	eax, ebx
		call	edx ; dword_1C008
		test	eax, eax
		jz	unknown_libname_7 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [ebx+0Ch]


loc_1193C:				; CODE XREF: CODE:0001191Dj
		call	sub_115FC
		mov	ecx, ds:dword_1C000
		test	ecx, ecx
		jz	short loc_1194D
		call	ecx ; dword_1C000


loc_1194D:				; CODE XREF: CODE:00011949j
		mov	ecx, [esp+4]
		mov	eax, 0D9h
		mov	edx, [ecx+14h]
		mov	[esp], edx
		jmp	sub_11BF4
; ---------------------------------------------------------------------------


loc_11961:				; CODE XREF: CODE:000118D3j
					; CODE:000118EFj
		xor	eax, eax
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=0FFFFFFA0h


sub_11964	proc near		; CODE XREF: System::__linkproc__ StartLib(void)+4Fp

arg_4C		= byte ptr  54h

		xor	edx, edx
		push	ebp
		lea	ebp, [esp+60h]
		lea	eax, [ebp-60h+arg_4C]
		mov	ecx, fs:[edx]
		mov	fs:[edx], eax
		mov	[eax], ecx
		mov	dword ptr [eax+4], offset loc_118C8
		mov	[eax+8], ebp
		mov	ds:dword_1C030,	eax
		pop	ebp
		retn
sub_11964	endp


; =============== S U B	R O U T	I N E =======================================



sub_11988	proc near		; CODE XREF: sub_11B04:loc_11B52p
					; DATA XREF: DATA:off_1B010o
		push	ebx
		push	esi
		push	edi
		push	ebp
		mov	edi, offset dword_1C02C
		mov	eax, [edi+8]
		test	eax, eax
		jz	short loc_119B6
		mov	ebx, [edi+0Ch]
		mov	esi, [eax+4]
		test	ebx, ebx
		jle	short loc_119B6


loc_119A2:				; CODE XREF: sub_11988+2Cj
		dec	ebx
		mov	[edi+0Ch], ebx
		mov	eax, [esi+ebx*8+4]
		test	eax, eax
		jz	short loc_119B2
		mov	ebp, eax
		call	ebp


loc_119B2:				; CODE XREF: sub_11988+24j
		test	ebx, ebx
		jg	short loc_119A2


loc_119B6:				; CODE XREF: sub_11988+Ej
					; sub_11988+18j
		pop	ebp
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_11988	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_119BC	proc near		; CODE XREF: sub_119BC+43p
					; sub_11A10+12p
					; DATA XREF: ...
		push	ebx
		push	esi
		push	edi
		push	ebp
		mov	edi, ecx
		mov	ebp, edx
		mov	esi, eax
		mov	eax, offset sub_119BC
		cmp	eax, ds:off_1B00C
		setz	bl
		cmp	edi, ebp
		jle	short loc_11A0B


loc_119D8:				; CODE XREF: sub_119BC+4Dj
		mov	eax, [esi+ebp*8]
		inc	ebp
		mov	ds:dword_1C038,	ebp
		test	eax, eax
		jz	short loc_119E8
		call	eax


loc_119E8:				; CODE XREF: sub_119BC+28j
		test	bl, bl
		jz	short loc_11A07
		mov	eax, offset sub_119BC
		cmp	eax, ds:off_1B00C
		jz	short loc_11A07
		mov	ecx, edi
		mov	edx, ebp
		mov	eax, esi
		call	ds:off_1B00C
		jmp	short loc_11A0B
; ---------------------------------------------------------------------------


loc_11A07:				; CODE XREF: sub_119BC+2Ej
					; sub_119BC+3Bj
		cmp	edi, ebp
		jg	short loc_119D8


loc_11A0B:				; CODE XREF: sub_119BC+1Aj
					; sub_119BC+49j
		pop	ebp
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_119BC	endp


; =============== S U B	R O U T	I N E =======================================



sub_11A10	proc near		; CODE XREF: System::__linkproc__ StartLib(void)+99p
		mov	eax, ds:dword_1C034
		test	eax, eax
		jz	short locret_11A28
		mov	edx, [eax]
		xor	ecx, ecx
		mov	eax, [eax+4]
		xchg	ecx, edx
		call	ds:off_1B00C

locret_11A28:				; CODE XREF: sub_11A10+7j
		retn
sub_11A10	endp

; ---------------------------------------------------------------------------
		align 4
; [000000A1 BYTES: COLLAPSED FUNCTION System::__linkproc__ StartLib(void). PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 10h
; [00000033 BYTES: COLLAPSED FUNCTION sub_11AD0. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: noreturn


sub_11B04	proc near		; CODE XREF: System::__linkproc__ StartLib(void)+93j
					; sub_11BF4-6j	...
		push	ebx
		push	esi
		push	edi
		push	ebp
		mov	ebx, offset dword_1C02C
		mov	esi, offset dword_1C018
		mov	edi, offset dword_1C01C
		cmp	byte ptr [ebx+24h], 0
		jnz	short loc_11B33
		cmp	dword ptr [edi], 0
		jz	short loc_11B33


loc_11B22:				; CODE XREF: sub_11B04+2Dj
		mov	edx, [edi]
		mov	eax, edx
		xor	edx, edx
		mov	[edi], edx
		mov	ebp, eax
		call	ebp
		cmp	dword ptr [edi], 0
		jnz	short loc_11B22


loc_11B33:				; CODE XREF: sub_11B04+17j
					; sub_11B04+1Cj
		cmp	ds:dword_1C020,	0
		jz	short loc_11B42
		call	ds:off_1B044


loc_11B42:				; CODE XREF: sub_11B04+36j
					; sub_11B04+B3j
		cmp	byte ptr [ebx+24h], 2
		jnz	short loc_11B52
		cmp	dword ptr [esi], 0
		jnz	short loc_11B52
		xor	eax, eax
		mov	[ebx+0Ch], eax


loc_11B52:				; CODE XREF: sub_11B04+42j
					; sub_11B04+47j
		call	ds:off_1B010
		cmp	byte ptr [ebx+24h], 1
		jbe	short loc_11B63
		cmp	dword ptr [esi], 0
		jz	short loc_11B81


loc_11B63:				; CODE XREF: sub_11B04+58j
		mov	eax, [ebx+10h]
		test	eax, eax
		jz	short loc_11B81
		call	ds:off_1B02C
		mov	eax, [ebx+10h]
		mov	edx, [eax+10h]
		cmp	edx, [eax+4]
		jz	short loc_11B81
		push	edx		; hLibModule
		call	FreeLibrary	; FreeLibrary


loc_11B81:				; CODE XREF: sub_11B04+5Dj
					; sub_11B04+64j ...
		call	ds:off_1B014
		cmp	byte ptr [ebx+24h], 1
		jnz	short loc_11B90
		call	dword ptr [ebx+28h]


loc_11B90:				; CODE XREF: sub_11B04+87j
		cmp	byte ptr [ebx+24h], 0
		jz	short loc_11B9B
		call	sub_11AD0


loc_11B9B:				; CODE XREF: sub_11B04+90j
		cmp	dword ptr [ebx], 0
		jnz	short loc_11BA8
		mov	eax, [esi]
		push	eax		; uExitCode
		call	ExitProcess	; ExitProcess
; ---------------------------------------------------------------------------


loc_11BA8:				; CODE XREF: sub_11B04+9Aj
		mov	eax, [ebx]
		push	esi
		mov	esi, eax
		mov	edi, ebx
		mov	ecx, 0Bh
		rep movsd
		pop	esi
		jmp	short loc_11B42
sub_11B04	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
aPortionsCopyri	db 'Portions Copyright (c) 1983,99 Borland',0
; ---------------------------------------------------------------------------
		pop	ebp
		pop	edi
		pop	esi
		pop	ebx
		retn
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_11BF4


loc_11BE8:				; CODE XREF: sub_11BF4+6j
		mov	ds:dword_1C018,	eax
		jmp	sub_11B04
; END OF FUNCTION CHUNK	FOR sub_11BF4
; ---------------------------------------------------------------------------
		retn

; =============== S U B	R O U T	I N E =======================================



sub_11BF4	proc near		; CODE XREF: System::__linkproc__ ReallocMem(void *&,int):loc_111F0j
					; sub_1181C+3j	...

; FUNCTION CHUNK AT 00011BE8 SIZE 0000000B BYTES

		pop	ds:dword_1C020
		jmp	loc_11BE8
sub_11BF4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		retn

; =============== S U B	R O U T	I N E =======================================



sub_11C00	proc near		; CODE XREF: System::__linkproc__ LStrFromPCharLen(System::AnsiString &,char *,int)+23p
					; sub_11D14+16p ...
		mov	edx, [eax]
		test	edx, edx
		jz	short locret_11C21
		mov	dword ptr [eax], 0
		mov	ecx, [edx-8]
		dec	ecx
		jl	short locret_11C21
		dec	dword ptr [edx-8]
		jnz	short locret_11C21
		push	eax
		lea	eax, [edx-8]
		call	sub_11164
		pop	eax

locret_11C21:				; CODE XREF: sub_11C00+4j
					; sub_11C00+10j ...
		retn
sub_11C00	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_11C24	proc near		; CODE XREF: sub_1231C+63p
					; sub_12B94+A2p ...
		push	ebx
		push	esi
		mov	ebx, eax
		mov	esi, edx


loc_11C2A:				; CODE XREF: sub_11C24+29j
		mov	edx, [ebx]
		test	edx, edx
		jz	short loc_11C49
		mov	dword ptr [ebx], 0
		mov	ecx, [edx-8]
		dec	ecx
		jl	short loc_11C49
		dec	dword ptr [edx-8]
		jnz	short loc_11C49
		lea	eax, [edx-8]
		call	sub_11164


loc_11C49:				; CODE XREF: sub_11C24+Aj
					; sub_11C24+16j ...
		add	ebx, 4
		dec	esi
		jnz	short loc_11C2A
		pop	esi
		pop	ebx
		retn
sub_11C24	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_11C54	proc near		; CODE XREF: System::__linkproc__ LStrCat(void)+8j
					; System::__linkproc__ LStrCat3(void)+6j ...
		test	edx, edx
		jz	short loc_11C7B
		mov	ecx, [edx-8]
		inc	ecx
		jg	short loc_11C78
		push	eax
		push	edx
		mov	eax, [edx-4]
		call	sub_11CC0
		mov	edx, eax
		pop	eax
		push	edx
		mov	ecx, [eax-4]
		call	sub_11210
		pop	edx
		pop	eax
		jmp	short loc_11C7B
; ---------------------------------------------------------------------------


loc_11C78:				; CODE XREF: sub_11C54+8j
		inc	dword ptr [edx-8]


loc_11C7B:				; CODE XREF: sub_11C54+2j
					; sub_11C54+22j
		xchg	edx, [eax]
		test	edx, edx
		jz	short locret_11C94
		mov	ecx, [edx-8]
		dec	ecx
		jl	short locret_11C94
		dec	dword ptr [edx-8]
		jnz	short locret_11C94
		lea	eax, [edx-8]
		call	sub_11164

locret_11C94:				; CODE XREF: sub_11C54+2Bj
					; sub_11C54+31j ...
		retn
sub_11C54	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_11C98	proc near		; CODE XREF: sub_13A98+24p
					; sub_13F40+2Bp ...
		test	edx, edx
		jz	short loc_11CA5
		mov	ecx, [edx-8]
		inc	ecx
		jle	short loc_11CA5
		inc	dword ptr [edx-8]


loc_11CA5:				; CODE XREF: sub_11C98+2j sub_11C98+8j
		xchg	edx, [eax]
		test	edx, edx
		jz	short locret_11CBE
		mov	ecx, [edx-8]
		dec	ecx
		jl	short locret_11CBE
		dec	dword ptr [edx-8]
		jnz	short locret_11CBE
		lea	eax, [edx-8]
		call	sub_11164

locret_11CBE:				; CODE XREF: sub_11C98+11j
					; sub_11C98+17j ...
		retn
sub_11C98	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_11CC0	proc near		; CODE XREF: sub_11C54+Fp
					; System::__linkproc__ LStrFromPCharLen(System::AnsiString &,char *,int)+Bp ...
		test	eax, eax
		jle	short loc_11CE0
		push	eax
		add	eax, 9
		call	sub_1114C
		add	eax, 8
		pop	edx
		mov	[eax-4], edx
		mov	dword ptr [eax-8], 1
		mov	byte ptr [eax+edx], 0
		retn
; ---------------------------------------------------------------------------


loc_11CE0:				; CODE XREF: sub_11CC0+2j
		xor	eax, eax
		retn
sub_11CC0	endp

; ---------------------------------------------------------------------------
		align 4
; [0000002E BYTES: COLLAPSED FUNCTION System::__linkproc__ LStrFromPCharLen(System::AnsiString &,char *,int). PRESS KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_11D14	proc near		; CODE XREF: System::__linkproc__ LStrFromWStr(System::AnsiString &,System::WideString):loc_11DEBj

MultiByteStr	= byte ptr -810h

		push	ebx
		push	esi
		push	edi
		push	ebp
		add	esp, 0FFFFF800h
		mov	ebx, ecx
		mov	ebp, edx
		mov	edi, eax
		test	ebx, ebx
		jg	short loc_11D31
		mov	eax, edi
		call	sub_11C00
		jmp	short loc_11D98
; ---------------------------------------------------------------------------


loc_11D31:				; CODE XREF: sub_11D14+12j
		cmp	ebx, 400h
		jge	short loc_11D65
		push	0		; lpUsedDefaultChar
		push	0		; lpDefaultChar
		push	800h		; cbMultiByte
		lea	eax, [esp+81Ch+MultiByteStr]
		push	eax		; lpMultiByteStr
		push	ebx		; cchWideChar
		push	ebp		; lpWideCharStr
		push	0		; dwFlags
		push	0		; CodePage
		call	WideCharToMultiByte	; WideCharToMultiByte
		mov	esi, eax
		test	esi, esi
		jle	short loc_11D65
		mov	edx, esp
		mov	eax, edi
		mov	ecx, esi
		call	@System@@LStrFromPCharLen$qqrr17System@AnsiStringpci ; System::__linkproc__ LStrFromPCharLen(System::AnsiString	&,char *,int)
		jmp	short loc_11D98
; ---------------------------------------------------------------------------


loc_11D65:				; CODE XREF: sub_11D14+23j
					; sub_11D14+42j
		push	0		; lpUsedDefaultChar
		push	0		; lpDefaultChar
		push	0		; cbMultiByte
		push	0		; lpMultiByteStr
		push	ebx		; cchWideChar
		push	ebp		; lpWideCharStr
		push	0		; dwFlags
		push	0		; CodePage
		call	WideCharToMultiByte	; WideCharToMultiByte
		mov	esi, eax
		mov	eax, edi
		mov	ecx, esi
		xor	edx, edx
		call	@System@@LStrFromPCharLen$qqrr17System@AnsiStringpci ; System::__linkproc__ LStrFromPCharLen(System::AnsiString	&,char *,int)
		push	0		; lpUsedDefaultChar
		push	0		; lpDefaultChar
		push	esi		; cbMultiByte
		mov	eax, [edi]
		push	eax		; lpMultiByteStr
		push	ebx		; cchWideChar
		push	ebp		; lpWideCharStr
		push	0		; dwFlags
		push	0		; CodePage
		call	WideCharToMultiByte	; WideCharToMultiByte


loc_11D98:				; CODE XREF: sub_11D14+1Bj
					; sub_11D14+4Fj
		add	esp, 800h
		pop	ebp
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_11D14	endp

; ---------------------------------------------------------------------------
		align 4
; [0000002C BYTES: COLLAPSED FUNCTION unknown_libname_8. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 4
; [0000000A BYTES: COLLAPSED FUNCTION unknown_libname_9. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 10h
; [00000010 BYTES: COLLAPSED FUNCTION System::__linkproc__ LStrFromWStr(System::AnsiString &,System::WideString). PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_11DF4	proc near		; CODE XREF: sub_12B94+5Cp
					; sub_13284+3p	...
		test	eax, eax
		jz	short locret_11DFB
		mov	eax, [eax-4]

locret_11DFB:				; CODE XREF: sub_11DF4+2j
		retn
sub_11DF4	endp

; [00000044 BYTES: COLLAPSED FUNCTION System::__linkproc__ LStrCat(void). PRESS	KEYPAD "+" TO EXPAND]
; [00000073 BYTES: COLLAPSED FUNCTION System::__linkproc__ LStrCat3(void). PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn

; =============== S U B	R O U T	I N E =======================================



sub_11EB4	proc near		; CODE XREF: sub_12B94+7Ep
					; sub_15CA4+53p ...
		push	ebx
		push	esi
		push	edx
		push	eax
		mov	ebx, edx
		xor	eax, eax


loc_11EBC:				; CODE XREF: sub_11EB4+14j
		mov	ecx, [esp+edx*4+10h]
		test	ecx, ecx
		jz	short loc_11EC7
		add	eax, [ecx-4]


loc_11EC7:				; CODE XREF: sub_11EB4+Ej
		dec	edx
		jnz	short loc_11EBC
		call	sub_11CC0
		push	eax
		mov	esi, eax


loc_11ED2:				; CODE XREF: sub_11EB4+33j
		mov	eax, [esp+ebx*4+14h]
		mov	edx, esi
		test	eax, eax
		jz	short loc_11EE6
		mov	ecx, [eax-4]
		add	esi, ecx
		call	sub_11210


loc_11EE6:				; CODE XREF: sub_11EB4+26j
		dec	ebx
		jnz	short loc_11ED2
		pop	edx
		pop	eax
		test	edx, edx
		jz	short loc_11EF2
		dec	dword ptr [edx-8]


loc_11EF2:				; CODE XREF: sub_11EB4+39j
		call	sub_11C54
		pop	edx
		pop	esi
		pop	ebx
		pop	eax
		lea	esp, [esp+edx*4]
		jmp	eax
sub_11EB4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 4
; [000000A2 BYTES: COLLAPSED FUNCTION System::__linkproc__ LStrCmp(void). PRESS	KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_11FA8	proc near		; CODE XREF: sub_14448+1Ep
					; sub_152C0+Fp	...
		test	eax, eax
		jz	short locret_11FB5
		mov	edx, [eax-8]
		inc	edx
		jle	short locret_11FB5
		inc	dword ptr [eax-8]

locret_11FB5:				; CODE XREF: sub_11FA8+2j sub_11FA8+8j
		retn
sub_11FA8	endp

; ---------------------------------------------------------------------------
		align 4
; [0000000C BYTES: COLLAPSED FUNCTION System::__linkproc__ LStrToPChar(System::AnsiString). PRESS KEYPAD "+" TO	EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_11FC4	proc near		; CODE XREF: sub_12038+9p
					; sub_13B38+7Bp ...
		mov	edx, [eax]
		test	edx, edx
		jz	short loc_11FF5
		mov	ecx, [edx-8]
		dec	ecx
		jz	short loc_11FF5
		push	ebx
		mov	ebx, eax
		mov	eax, [edx-4]
		call	sub_11CC0
		mov	edx, eax
		mov	eax, [ebx]
		mov	[ebx], edx
		mov	ecx, [eax-8]
		dec	ecx
		jl	short loc_11FEA
		dec	dword ptr [eax-8]


loc_11FEA:				; CODE XREF: sub_11FC4+21j
		mov	ecx, [eax-4]
		call	sub_11210
		mov	edx, [ebx]
		pop	ebx


loc_11FF5:				; CODE XREF: sub_11FC4+4j sub_11FC4+Aj
		mov	eax, edx
		retn
sub_11FC4	endp

; [0000003F BYTES: COLLAPSED FUNCTION System::__linkproc__ LStrCopy(void). PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn

; =============== S U B	R O U T	I N E =======================================



sub_12038	proc near		; CODE XREF: sub_13A98+6Fp
					; sub_13F40+76p
		push	ebx
		push	esi
		push	edi
		mov	ebx, eax
		mov	esi, edx
		mov	edi, ecx
		call	sub_11FC4
		mov	edx, [ebx]
		test	edx, edx
		jz	short loc_1207C
		mov	ecx, [edx-4]
		dec	esi
		jl	short loc_1207C
		cmp	esi, ecx
		jge	short loc_1207C
		test	edi, edi
		jle	short loc_1207C
		sub	ecx, esi
		cmp	edi, ecx
		jle	short loc_12062
		mov	edi, ecx


loc_12062:				; CODE XREF: sub_12038+26j
		sub	ecx, edi
		add	edx, esi
		lea	eax, [edx+edi]
		call	sub_11210
		mov	edx, [ebx]
		mov	eax, ebx
		mov	edx, [edx-4]
		sub	edx, edi
		call	sub_120C8


loc_1207C:				; CODE XREF: sub_12038+12j
					; sub_12038+18j ...
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_12038	endp

; [00000045 BYTES: COLLAPSED FUNCTION unknown_libname_10. PRESS	KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_120C8	proc near		; CODE XREF: System::__linkproc__ LStrCat(void)+21p
					; System::__linkproc__ LStrCat(void):loc_11E34p ...
		push	ebx
		push	esi
		push	edi
		mov	ebx, eax
		mov	esi, edx
		xor	edi, edi
		test	edx, edx
		jz	short loc_1211D
		mov	eax, [ebx]
		test	eax, eax
		jz	short loc_120FE
		cmp	dword ptr [eax-8], 1
		jnz	short loc_120FE
		sub	eax, 8
		add	edx, 9
		push	eax
		mov	eax, esp
		call	@System@@ReallocMem$qqrrpvi ; System::__linkproc__ ReallocMem(void *&,int)
		pop	eax
		add	eax, 8
		mov	[ebx], eax
		mov	[eax-4], esi
		mov	byte ptr [eax+esi], 0
		jmp	short loc_12126
; ---------------------------------------------------------------------------


loc_120FE:				; CODE XREF: sub_120C8+11j
					; sub_120C8+17j
		mov	eax, edx
		call	sub_11CC0
		mov	edi, eax
		mov	eax, [ebx]
		test	eax, eax
		jz	short loc_1211D
		mov	edx, edi
		mov	ecx, [eax-4]
		cmp	ecx, esi
		jl	short loc_12118
		mov	ecx, esi


loc_12118:				; CODE XREF: sub_120C8+4Cj
		call	sub_11210


loc_1211D:				; CODE XREF: sub_120C8+Bj
					; sub_120C8+43j
		mov	eax, ebx
		call	sub_11C00
		mov	[ebx], edi


loc_12126:				; CODE XREF: sub_120C8+34j
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_120C8	endp

; ---------------------------------------------------------------------------
		align 4
; [00000007 BYTES: COLLAPSED CHUNK OF FUNCTION System::__linkproc__ WStrFromPWCharLen(System::WideString &,wchar_t *,int). PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn
; [00000015 BYTES: COLLAPSED FUNCTION System::__linkproc__ WStrClr(void	*). PRESS KEYPAD "+" TO	EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1214C	proc near		; CODE XREF: System::__linkproc__ WStrFromLStr(System::WideString &,System::AnsiString):loc_121FDj

WideCharStr	= word ptr -810h

		push	ebx
		push	esi
		push	edi
		push	ebp
		add	esp, 0FFFFF800h
		mov	ebx, ecx
		mov	ebp, edx
		mov	edi, eax
		test	ebx, ebx
		jg	short loc_12169
		mov	eax, edi
		call	@System@@WStrClr$qqrpv ; System::__linkproc__ WStrClr(void *)
		jmp	short loc_121C4
; ---------------------------------------------------------------------------


loc_12169:				; CODE XREF: sub_1214C+12j
		cmp	ebx, 400h
		jge	short loc_12199
		push	400h		; cchWideChar
		lea	eax, [esp+814h+WideCharStr]
		push	eax		; lpWideCharStr
		push	ebx		; cbMultiByte
		push	ebp		; lpMultiByteStr
		push	0		; dwFlags
		push	0		; CodePage
		call	MultiByteToWideChar	; MultiByteToWideChar
		mov	esi, eax
		test	esi, esi
		jle	short loc_12199
		mov	edx, esp
		mov	eax, edi
		mov	ecx, esi
		call	@System@@WStrFromPWCharLen$qqrr17System@WideStringpbi ;	System::__linkproc__ WStrFromPWCharLen(System::WideString &,wchar_t *,int)
		jmp	short loc_121C4
; ---------------------------------------------------------------------------


loc_12199:				; CODE XREF: sub_1214C+23j
					; sub_1214C+3Ej
		push	0		; cchWideChar
		push	0		; lpWideCharStr
		push	ebx		; cbMultiByte
		push	ebp		; lpMultiByteStr
		push	0		; dwFlags
		push	0		; CodePage
		call	MultiByteToWideChar	; MultiByteToWideChar
		mov	esi, eax
		mov	eax, edi
		mov	ecx, esi
		xor	edx, edx
		call	@System@@WStrFromPWCharLen$qqrr17System@WideStringpbi ;	System::__linkproc__ WStrFromPWCharLen(System::WideString &,wchar_t *,int)
		push	esi		; cchWideChar
		mov	eax, [edi]
		push	eax		; lpWideCharStr
		push	ebx		; cbMultiByte
		push	ebp		; lpMultiByteStr
		push	0		; dwFlags
		push	0		; CodePage
		call	MultiByteToWideChar	; MultiByteToWideChar


loc_121C4:				; CODE XREF: sub_1214C+1Bj
					; sub_1214C+4Bj
		add	esp, 800h
		pop	ebp
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_1214C	endp

; ---------------------------------------------------------------------------
		align 10h
; [00000023 BYTES: COLLAPSED FUNCTION System::__linkproc__ WStrFromPWCharLen(System::WideString	&,wchar_t *,int). PRESS	KEYPAD "+" TO EXPAND]
		align 4
; [0000000E BYTES: COLLAPSED FUNCTION System::__linkproc__ WStrFromLStr(System::WideString &,System::AnsiString). PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 4
; [0000001F BYTES: COLLAPSED FUNCTION System::__linkproc__ WStrAddRef(System::WideString &). PRESS KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_12224	proc near		; CODE XREF: sub_12250+85p
		xor	ecx, ecx
		push	ebx
		mov	cl, [edx+1]
		push	esi
		push	edi
		mov	ebx, eax
		lea	esi, [edx+ecx+0Ah]
		mov	edi, [edx+ecx+6]


loc_12236:				; CODE XREF: sub_12224+24j
		mov	edx, [esi]
		mov	eax, [esi+4]
		add	eax, ebx
		mov	edx, [edx]
		call	unknown_libname_11 ; BDS 2005-2006 and Delphi6-7 Visual	Component Library
		add	esi, 8
		dec	edi
		jg	short loc_12236
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_12224	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_12250	proc near		; CODE XREF: sub_12250+6Fp
					; unknown_libname_11+5j ...
		push	ebx
		push	esi
		push	edi
		mov	ebx, eax
		mov	esi, edx
		mov	edi, ecx
		xor	edx, edx
		mov	al, [esi]
		mov	dl, [esi+1]
		xor	ecx, ecx
		cmp	al, 0Ah
		jz	short loc_1228F
		cmp	al, 0Bh
		jz	short loc_1228F
		cmp	al, 0Ch
		jz	short loc_12299
		cmp	al, 0Dh
		jz	short loc_122AC
		cmp	al, 0Eh
		jz	short loc_122CA
		cmp	al, 0Fh
		jz	short loc_1228F
		cmp	al, 11h
		jz	short loc_1228F
		mov	al, 2
		pop	edi
		pop	esi
		pop	ebx
		jmp	loc_111CC
; ---------------------------------------------------------------------------


loc_1228F:				; CODE XREF: sub_12250+15j
					; sub_12250+1Aj ...
		mov	[ebx], ecx
		add	ebx, 4
		dec	edi
		jg	short loc_1228F
		jmp	short loc_122DE
; ---------------------------------------------------------------------------


loc_12299:				; CODE XREF: sub_12250+1Fj
					; sub_12250+58j
		mov	[ebx], ecx
		mov	[ebx+4], ecx
		mov	[ebx+8], ecx
		mov	[ebx+0Ch], ecx
		add	ebx, 10h
		dec	edi
		jg	short loc_12299
		jmp	short loc_122DE
; ---------------------------------------------------------------------------


loc_122AC:				; CODE XREF: sub_12250+24j
		push	ebp
		mov	ebp, edx


loc_122AF:				; CODE XREF: sub_12250+75j
		mov	edx, [esi+ebp+0Ah]
		mov	eax, ebx
		add	ebx, [esi+ebp+2]
		mov	ecx, [esi+ebp+6]
		mov	edx, [edx]
		call	sub_12250
		dec	edi
		jg	short loc_122AF
		pop	ebp
		jmp	short loc_122DE
; ---------------------------------------------------------------------------


loc_122CA:				; CODE XREF: sub_12250+29j
		push	ebp
		mov	ebp, edx


loc_122CD:				; CODE XREF: sub_12250+8Bj
		mov	eax, ebx
		add	ebx, [esi+ebp+2]
		mov	edx, esi
		call	sub_12224
		dec	edi
		jg	short loc_122CD
		pop	ebp


loc_122DE:				; CODE XREF: sub_12250+47j
					; sub_12250+5Aj ...
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_12250	endp

; ---------------------------------------------------------------------------
		align 4
; [0000000A BYTES: COLLAPSED FUNCTION unknown_libname_11. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_122F0	proc near		; CODE XREF: sub_1139C+12p
					; sub_1231C+BCp
		xor	ecx, ecx
		push	ebx
		mov	cl, [edx+1]
		push	esi
		push	edi
		mov	ebx, eax
		lea	esi, [edx+ecx+0Ah]
		mov	edi, [edx+ecx+6]


loc_12302:				; CODE XREF: sub_122F0+24j
		mov	edx, [esi]
		mov	eax, [esi+4]
		add	eax, ebx
		mov	edx, [edx]
		call	unknown_libname_12 ; BDS 2005-2006 and Delphi6-7 Visual	Component Library
		add	esi, 8
		dec	edi
		jg	short loc_12302
		mov	eax, ebx
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_122F0	endp


; =============== S U B	R O U T	I N E =======================================



sub_1231C	proc near		; CODE XREF: sub_1231C+A6p
					; unknown_libname_12+5j ...
		cmp	ecx, 0
		jz	locret_12405
		push	eax
		push	ebx
		push	esi
		push	edi
		mov	ebx, eax
		mov	esi, edx
		mov	edi, ecx
		xor	edx, edx
		mov	al, [esi]
		mov	dl, [esi+1]
		cmp	al, 0Ah
		jz	short loc_1236C
		cmp	al, 0Bh
		jz	short loc_12386
		cmp	al, 0Ch
		jz	short loc_1239F
		cmp	al, 0Dh
		jz	short loc_123AF
		cmp	al, 0Eh
		jz	short loc_123CD
		cmp	al, 0Fh
		jz	loc_123E3
		cmp	al, 11h
		jz	loc_123F2
		pop	edi
		pop	esi
		pop	ebx
		pop	eax
		mov	al, 2
		jmp	loc_111CC
; ---------------------------------------------------------------------------


loc_1236C:				; CODE XREF: sub_1231C+1Dj
		cmp	ecx, 1
		mov	eax, ebx
		jg	short loc_1237D
		call	sub_11C00
		jmp	loc_12401
; ---------------------------------------------------------------------------


loc_1237D:				; CODE XREF: sub_1231C+55j
		mov	edx, ecx
		call	sub_11C24
		jmp	short loc_12401
; ---------------------------------------------------------------------------


loc_12386:				; CODE XREF: sub_1231C+22j
		cmp	ecx, 1
		mov	eax, ebx
		jg	short loc_12395
		call	ds:off_1B004
		jmp	short loc_12401
; ---------------------------------------------------------------------------


loc_12395:				; CODE XREF: sub_1231C+6Fj
		mov	edx, ecx
		call	ds:off_1B008
		jmp	short loc_12401
; ---------------------------------------------------------------------------


loc_1239F:				; CODE XREF: sub_1231C+27j
					; sub_1231C+8Fj
		mov	eax, ebx
		add	ebx, 10h
		call	ds:off_1B000
		dec	edi
		jg	short loc_1239F
		jmp	short loc_12401
; ---------------------------------------------------------------------------


loc_123AF:				; CODE XREF: sub_1231C+2Cj
		push	ebp
		mov	ebp, edx


loc_123B2:				; CODE XREF: sub_1231C+ACj
		mov	edx, [esi+ebp+0Ah]
		mov	eax, ebx
		add	ebx, [esi+ebp+2]
		mov	ecx, [esi+ebp+6]
		mov	edx, [edx]
		call	sub_1231C
		dec	edi
		jg	short loc_123B2
		pop	ebp
		jmp	short loc_12401
; ---------------------------------------------------------------------------


loc_123CD:				; CODE XREF: sub_1231C+31j
		push	ebp
		mov	ebp, edx


loc_123D0:				; CODE XREF: sub_1231C+C2j
		mov	eax, ebx
		add	ebx, [esi+ebp+2]
		mov	edx, esi
		call	sub_122F0
		dec	edi
		jg	short loc_123D0
		pop	ebp
		jmp	short loc_12401
; ---------------------------------------------------------------------------


loc_123E3:				; CODE XREF: sub_1231C+36j
					; sub_1231C+D2j
		mov	eax, ebx
		add	ebx, 4
		call	@System@@IntfClear$qqrr45System@_DelphiInterface$t17System@IInterface_ ; System::__linkproc__ IntfClear(System::DelphiInterface<System::IInterface> &)
		dec	edi
		jg	short loc_123E3
		jmp	short loc_12401
; ---------------------------------------------------------------------------


loc_123F2:				; CODE XREF: sub_1231C+3Fj
					; sub_1231C+E3j
		mov	eax, ebx
		mov	edx, esi
		add	ebx, 4
		call	sub_12418
		dec	edi
		jg	short loc_123F2


loc_12401:				; CODE XREF: sub_1231C+5Cj
					; sub_1231C+68j ...
		pop	edi
		pop	esi
		pop	ebx
		pop	eax

locret_12405:				; CODE XREF: sub_1231C+3j
		retn
sub_1231C	endp

; ---------------------------------------------------------------------------
		align 4
; [0000000A BYTES: COLLAPSED FUNCTION unknown_libname_12. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_1. PRESS KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_12418	proc near		; CODE XREF: sub_1231C+DDp
		mov	ecx, [eax]
		test	ecx, ecx
		jz	short locret_12450
		mov	dword ptr [eax], 0
		dec	dword ptr [ecx-8]
		jnz	short locret_12450
		push	eax
		mov	eax, ecx
		xor	ecx, ecx
		mov	cl, [edx+1]
		mov	edx, [edx+ecx+6]
		test	edx, edx
		jz	short loc_12447
		mov	ecx, [eax-4]
		test	ecx, ecx
		jz	short loc_12447
		mov	edx, [edx]
		call	sub_1231C


loc_12447:				; CODE XREF: sub_12418+1Fj
					; sub_12418+26j
		sub	eax, 8
		call	sub_11164
		pop	eax

locret_12450:				; CODE XREF: sub_12418+4j sub_12418+Fj
		retn
sub_12418	endp

; ---------------------------------------------------------------------------
		align 4
; [0000000E BYTES: COLLAPSED FUNCTION System::RegisterModule(System::TLibModule	*). PRESS KEYPAD "+" TO	EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_12464	proc near		; CODE XREF: sub_11B04+66p
					; DATA XREF: DATA:off_1B02Co
		push	ebx
		push	esi
		mov	esi, eax
		mov	ebx, ds:dword_1B028
		test	ebx, ebx
		jz	short loc_1247E


loc_12472:				; CODE XREF: sub_12464+18j
		mov	eax, [esi+4]
		call	dword ptr [ebx+4]
		mov	ebx, [ebx]
		test	ebx, ebx
		jnz	short loc_12472


loc_1247E:				; CODE XREF: sub_12464+Cj
		pop	esi
		pop	ebx
		retn
sub_12464	endp

; ---------------------------------------------------------------------------
		align 4
; [00000015 BYTES: COLLAPSED FUNCTION System::__linkproc__ IntfClear(System::DelphiInterface<System::IInterface> &). PRESS KEYPAD "+" TO EXPAND]
		align 4
; [00000006 BYTES: COLLAPSED FUNCTION GetCurrentThreadId. PRESS	KEYPAD "+" TO EXPAND]
		align 4
		push	edx
		push	eax
		mov	eax, [esp+10h]
		mul	dword ptr [esp]
		mov	ecx, eax
		mov	eax, [esp+4]
		mul	dword ptr [esp+0Ch]
		add	ecx, eax
		mov	eax, [esp]
		mul	dword ptr [esp+0Ch]
		add	edx, ecx
		pop	ecx
		pop	ecx
		retn	8
; ---------------------------------------------------------------------------
		push	edx
		push	eax
		mov	eax, [esp+10h]
		mul	dword ptr [esp]
		mov	ecx, eax
		mov	eax, [esp+4]
		mul	dword ptr [esp+0Ch]
		add	ecx, eax
		mov	eax, [esp]
		mul	dword ptr [esp+0Ch]
		add	edx, ecx
		pop	ecx
		pop	ecx
		retn	8

; =============== S U B	R O U T	I N E =======================================



sub_124EA	proc near		; CODE XREF: CODE:0001258Ap

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	ebp
		push	ebx
		push	esi
		push	edi
		xor	edi, edi
		mov	ebx, [esp+10h+arg_0]
		mov	ecx, [esp+10h+arg_4]
		or	ecx, ecx
		jnz	short loc_12504
		or	edx, edx
		jz	short loc_1255C
		or	ebx, ebx
		jz	short loc_1255C


loc_12504:				; CODE XREF: sub_124EA+10j
		or	edx, edx
		jns	short loc_12512
		neg	edx
		neg	eax
		sbb	edx, 0
		or	edi, 1


loc_12512:				; CODE XREF: sub_124EA+1Cj
		or	ecx, ecx
		jns	short loc_12520
		neg	ecx
		neg	ebx
		sbb	ecx, 0
		xor	edi, 1


loc_12520:				; CODE XREF: sub_124EA+2Aj
		mov	ebp, ecx
		mov	ecx, 40h
		push	edi
		xor	edi, edi
		xor	esi, esi


loc_1252C:				; CODE XREF: sub_124EA:loc_12543j
		shl	eax, 1
		rcl	edx, 1
		rcl	esi, 1
		rcl	edi, 1
		cmp	edi, ebp
		jb	short loc_12543
		ja	short loc_1253E
		cmp	esi, ebx
		jb	short loc_12543


loc_1253E:				; CODE XREF: sub_124EA+4Ej
		sub	esi, ebx
		sbb	edi, ebp
		inc	eax


loc_12543:				; CODE XREF: sub_124EA+4Cj
					; sub_124EA+52j
		loop	loc_1252C
		pop	ebx
		test	ebx, 1
		jz	short loc_12555
		neg	edx
		neg	eax
		sbb	edx, 0


loc_12555:				; CODE XREF: sub_124EA+62j
					; sub_124EA+76j
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn	8
; ---------------------------------------------------------------------------


loc_1255C:				; CODE XREF: sub_124EA+14j
					; sub_124EA+18j
		div	ebx
		xor	edx, edx
		jmp	short loc_12555
sub_124EA	endp

; ---------------------------------------------------------------------------
		push	esi
		mov	esi, [esp+0Ch]
		and	esi, [esp+8]
		cmp	esi, 0FFFFFFFFh
		jnz	short loc_12581
		mov	esi, eax
		or	esi, edx
		cmp	esi, 80000000h
		jnz	short loc_12581
		mov	eax, esi
		pop	esi
		dec	eax
		retn
; ---------------------------------------------------------------------------


loc_12581:				; CODE XREF: CODE:0001256Ej
					; CODE:0001257Aj
		pop	esi
		push	dword ptr [esp+8]
		push	dword ptr [esp+8]
		call	sub_124EA
		and	eax, eax
		retn	8
; ---------------------------------------------------------------------------
		push	ebp
		push	ebx
		push	esi
		push	edi
		mov	ebx, [esp+14h]
		mov	ecx, [esp+18h]
		or	ecx, ecx
		jnz	short loc_125AC
		or	edx, edx
		jz	short loc_125D7
		or	ebx, ebx
		jz	short loc_125D7


loc_125AC:				; CODE XREF: CODE:000125A2j
		mov	ebp, ecx
		mov	ecx, 40h
		xor	edi, edi
		xor	esi, esi


loc_125B7:				; CODE XREF: CODE:loc_125CEj
		shl	eax, 1
		rcl	edx, 1
		rcl	esi, 1
		rcl	edi, 1
		cmp	edi, ebp
		jb	short loc_125CE
		ja	short loc_125C9
		cmp	esi, ebx
		jb	short loc_125CE


loc_125C9:				; CODE XREF: CODE:000125C3j
		sub	esi, ebx
		sbb	edi, ebp
		inc	eax


loc_125CE:				; CODE XREF: CODE:000125C1j
					; CODE:000125C7j
		loop	loc_125B7


loc_125D0:				; CODE XREF: CODE:000125DBj
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn	8
; ---------------------------------------------------------------------------


loc_125D7:				; CODE XREF: CODE:000125A6j
					; CODE:000125AAj
		div	ebx
		xor	edx, edx
		jmp	short loc_125D0

; =============== S U B	R O U T	I N E =======================================



sub_125DD	proc near		; CODE XREF: CODE:0001267Fp
					; sub_12EC8+16p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	ebp
		push	ebx
		push	esi
		push	edi
		xor	edi, edi
		mov	ebx, [esp+10h+arg_0]
		mov	ecx, [esp+10h+arg_4]
		or	ecx, ecx
		jnz	short loc_125F7
		or	edx, edx
		jz	short loc_12650
		or	ebx, ebx
		jz	short loc_12650


loc_125F7:				; CODE XREF: sub_125DD+10j
		or	edx, edx
		jns	short loc_12605
		neg	edx
		neg	eax
		sbb	edx, 0
		or	edi, 1


loc_12605:				; CODE XREF: sub_125DD+1Cj
		or	ecx, ecx
		jns	short loc_12610
		neg	ecx
		neg	ebx
		sbb	ecx, 0


loc_12610:				; CODE XREF: sub_125DD+2Aj
		mov	ebp, ecx
		mov	ecx, 40h
		push	edi
		xor	edi, edi
		xor	esi, esi


loc_1261C:				; CODE XREF: sub_125DD:loc_12633j
		shl	eax, 1
		rcl	edx, 1
		rcl	esi, 1
		rcl	edi, 1
		cmp	edi, ebp
		jb	short loc_12633
		ja	short loc_1262E
		cmp	esi, ebx
		jb	short loc_12633


loc_1262E:				; CODE XREF: sub_125DD+4Bj
		sub	esi, ebx
		sbb	edi, ebp
		inc	eax


loc_12633:				; CODE XREF: sub_125DD+49j
					; sub_125DD+4Fj
		loop	loc_1261C
		mov	eax, esi
		mov	edx, edi
		pop	ebx
		test	ebx, 1
		jz	short loc_12649
		neg	edx
		neg	eax
		sbb	edx, 0


loc_12649:				; CODE XREF: sub_125DD+63j
					; sub_125DD+78j
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn	8
; ---------------------------------------------------------------------------


loc_12650:				; CODE XREF: sub_125DD+14j
					; sub_125DD+18j
		div	ebx
		xchg	eax, edx
		xor	edx, edx
		jmp	short loc_12649
sub_125DD	endp

; ---------------------------------------------------------------------------
		push	esi
		mov	esi, [esp+0Ch]
		and	esi, [esp+8]
		cmp	esi, 0FFFFFFFFh
		jnz	short loc_12676
		mov	esi, eax
		or	esi, edx
		cmp	esi, 80000000h
		jnz	short loc_12676
		mov	eax, esi
		pop	esi
		dec	eax
		retn
; ---------------------------------------------------------------------------


loc_12676:				; CODE XREF: CODE:00012663j
					; CODE:0001266Fj
		pop	esi
		push	dword ptr [esp+8]
		push	dword ptr [esp+8]
		call	sub_125DD
		and	eax, eax
		retn	8
; ---------------------------------------------------------------------------
		push	ebp
		push	ebx
		push	esi
		push	edi
		mov	ebx, [esp+14h]
		mov	ecx, [esp+18h]
		or	ecx, ecx
		jnz	short loc_126A1
		or	edx, edx
		jz	short loc_126D0
		or	ebx, ebx
		jz	short loc_126D0


loc_126A1:				; CODE XREF: CODE:00012697j
		mov	ebp, ecx
		mov	ecx, 40h
		xor	edi, edi
		xor	esi, esi


loc_126AC:				; CODE XREF: CODE:loc_126C3j
		shl	eax, 1
		rcl	edx, 1
		rcl	esi, 1
		rcl	edi, 1
		cmp	edi, ebp
		jb	short loc_126C3
		ja	short loc_126BE
		cmp	esi, ebx
		jb	short loc_126C3


loc_126BE:				; CODE XREF: CODE:000126B8j
		sub	esi, ebx
		sbb	edi, ebp
		inc	eax


loc_126C3:				; CODE XREF: CODE:000126B6j
					; CODE:000126BCj
		loop	loc_126AC
		mov	eax, esi
		mov	edx, edi


loc_126C9:				; CODE XREF: CODE:000126D5j
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn	8
; ---------------------------------------------------------------------------


loc_126D0:				; CODE XREF: CODE:0001269Bj
					; CODE:0001269Fj
		div	ebx
		xchg	eax, edx
		xor	edx, edx
		jmp	short loc_126C9
; ---------------------------------------------------------------------------
		cmp	cl, 20h
		jl	short loc_126ED
		cmp	cl, 40h
		jl	short loc_126E6
		xor	edx, edx
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------


loc_126E6:				; CODE XREF: CODE:000126DFj
		mov	edx, eax
		shl	edx, cl
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------


loc_126ED:				; CODE XREF: CODE:000126DAj
		shld	edx, eax, cl
		shl	eax, cl
		retn
; ---------------------------------------------------------------------------
		cmp	cl, 20h
		jl	short loc_12709
		cmp	cl, 40h
		jl	short loc_12703
		sar	edx, 1Fh
		mov	eax, edx
		retn
; ---------------------------------------------------------------------------


loc_12703:				; CODE XREF: CODE:000126FBj
		mov	eax, edx
		cdq
		sar	eax, cl
		retn
; ---------------------------------------------------------------------------


loc_12709:				; CODE XREF: CODE:000126F6j
		shrd	eax, edx, cl
		sar	edx, cl
		retn
; ---------------------------------------------------------------------------
		cmp	cl, 20h
		jl	short loc_12725
		cmp	cl, 40h
		jl	short loc_1271E
		xor	edx, edx
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------


loc_1271E:				; CODE XREF: CODE:00012717j
		mov	eax, edx
		xor	edx, edx
		shr	eax, cl
		retn
; ---------------------------------------------------------------------------


loc_12725:				; CODE XREF: CODE:00012712j
		shrd	eax, edx, cl
		shr	edx, cl
		retn
; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_1272C	proc near		; DATA XREF: CODE:0001A074o
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_12768
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C028
		jnz	short loc_1275A
		cmp	ds:dword_1C058,	0
		jz	short loc_12754
		call	ds:dword_1C058


loc_12754:				; CODE XREF: sub_1272C+20j
		call	ds:off_1B030


loc_1275A:				; CODE XREF: sub_1272C+17j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_1276F


loc_12767:				; CODE XREF: sub_1272C+41j
		retn
; ---------------------------------------------------------------------------


loc_12768:				; DATA XREF: sub_1272C+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_12767
; ---------------------------------------------------------------------------


loc_1276F:				; CODE XREF: sub_1272C:loc_12767j
					; DATA XREF: sub_1272C+36o
		pop	ebp
		retn
sub_1272C	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_12774	proc near		; DATA XREF: CODE:0001A070o
		sub	ds:dword_1C028,	1
		jnb	short locret_12787
		call	GetCurrentThreadId	; GetCurrentThreadId
		mov	ds:dword_1C010,	eax

locret_12787:				; CODE XREF: sub_12774+7j
		retn
sub_12774	endp


; =============== S U B	R O U T	I N E =======================================



sub_12788	proc near		; CODE XREF: sub_127D8:loc_127F9p
					; sub_1284C:loc_12867p
					; DATA XREF: ...
		push	ebx
		mov	eax, 8
		test	eax, eax
		jz	short loc_127D5
		cmp	ds:dwTlsIndex, 0
		jge	short loc_127A5
		mov	eax, 0E2h
		call	sub_11BF4


loc_127A5:				; CODE XREF: sub_12788+11j
		push	8		; uBytes
		push	40h		; uFlags
		call	LocalAlloc	; LocalAlloc
		mov	ebx, eax
		test	ebx, ebx
		jnz	short loc_127C3
		mov	eax, 0E2h
		call	sub_11BF4
		jmp	short loc_127CF
; ---------------------------------------------------------------------------


loc_127C3:				; CODE XREF: sub_12788+2Dj
		push	ebx		; lpTlsValue
		mov	eax, ds:dwTlsIndex
		push	eax		; dwTlsIndex
		call	TlsSetValue	; TlsSetValue


loc_127CF:				; CODE XREF: sub_12788+39j
		mov	ds:dword_1C074,	ebx


loc_127D5:				; CODE XREF: sub_12788+8j
		pop	ebx
		retn
sub_12788	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_127D8	proc near		; DATA XREF: DATA:0001B064o
		mov	eax, 8
		test	eax, eax
		jz	short locret_127FE
		call	TlsAlloc	; TlsAlloc
		mov	ds:dwTlsIndex, eax
		test	eax, eax
		jge	short loc_127F9
		mov	eax, 0E2h
		call	sub_11BF4


loc_127F9:				; CODE XREF: sub_127D8+15j
		call	sub_12788

locret_127FE:				; CODE XREF: sub_127D8+7j
		retn
sub_127D8	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_12800	proc near		; CODE XREF: sub_12828+9p
					; DATA XREF: DATA:0001B06Co
		mov	eax, 8
		test	eax, eax
		jz	short locret_12827
		cmp	ds:dwTlsIndex, 0
		jl	short locret_12827
		mov	eax, ds:dwTlsIndex
		push	eax		; dwTlsIndex
		call	TlsGetValue	; TlsGetValue
		test	eax, eax
		jz	short locret_12827
		push	eax		; hMem
		call	LocalFree	; LocalFree

locret_12827:				; CODE XREF: sub_12800+7j
					; sub_12800+10j ...
		retn
sub_12800	endp


; =============== S U B	R O U T	I N E =======================================



sub_12828	proc near		; DATA XREF: DATA:off_1B060o
		mov	eax, 8
		test	eax, eax
		jz	short locret_1284A
		call	sub_12800
		cmp	ds:dwTlsIndex, 0
		jl	short locret_1284A
		mov	eax, ds:dwTlsIndex
		push	eax		; dwTlsIndex
		call	TlsFree	; TlsFree

locret_1284A:				; CODE XREF: sub_12828+7j
					; sub_12828+15j
		retn
sub_12828	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1284C	proc near		; CODE XREF: System::__linkproc__ ReallocMem(void *&,int)+69p
					; sub_14510-2E19p ...
		mov	cl, ds:byte_1C05C
		mov	eax, ds:dwTlsIndex
		test	cl, cl
		jnz	short loc_12884
		mov	edx, large fs:2Ch
		mov	eax, [edx+eax*4]
		retn
; ---------------------------------------------------------------------------


loc_12867:				; CODE XREF: sub_1284C+40j
		call	sub_12788
		mov	eax, ds:dwTlsIndex
		push	eax		; dwTlsIndex
		call	TlsGetValue	; TlsGetValue
		test	eax, eax
		jz	short loc_1287D
		retn
; ---------------------------------------------------------------------------


loc_1287D:				; CODE XREF: sub_1284C+2Ej
		mov	eax, ds:dword_1C074
		retn
; ---------------------------------------------------------------------------


loc_12884:				; CODE XREF: sub_1284C+Ej
		push	eax		; dwTlsIndex
		call	TlsGetValue	; TlsGetValue
		test	eax, eax
		jz	short loc_12867
		retn
sub_1284C	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_12890	proc near		; CODE XREF: Sysinit::__linkproc__ InitLib(void)+2Ep
		mov	eax, ds:dword_1B04C
		mov	ds:dword_1B058,	eax
		mov	eax, offset dword_1B048
		call	@System@RegisterModule$qqrp17System@TLibModule ; System::RegisterModule(System::TLibModule *)
		retn
sub_12890	endp

; ---------------------------------------------------------------------------
		align 4
; [00000046 BYTES: COLLAPSED FUNCTION Sysinit::__linkproc__ InitLib(void). PRESS KEYPAD	"+" TO EXPAND]
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_128F0	proc near		; DATA XREF: CODE:0001A06Co
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_12915
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C070
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_1291C


loc_12914:				; CODE XREF: sub_128F0+2Aj
		retn
; ---------------------------------------------------------------------------


loc_12915:				; DATA XREF: sub_128F0+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_12914
; ---------------------------------------------------------------------------


loc_1291C:				; CODE XREF: sub_128F0:loc_12914j
					; DATA XREF: sub_128F0+1Fo
		pop	ebp
		retn
sub_128F0	endp

; ---------------------------------------------------------------------------
		align 10h


loc_12920:				; DATA XREF: CODE:off_1A068o
		sub	ds:dword_1C070,	1
		retn
; [00000006 BYTES: COLLAPSED FUNCTION FreeLibrary_0. PRESS KEYPAD "+" TO EXPAND]
		align 10h
; [00000006 BYTES: COLLAPSED FUNCTION GetProcAddress. PRESS KEYPAD "+" TO EXPAND]
		align 4
; [00000012 BYTES: COLLAPSED FUNCTION Windows::MakeWord(uchar,uchar). PRESS KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1294C	proc near		; CODE XREF: sub_14694+39p
					; sub_14694+56p
		shr	eax, 10h
		retn
sub_1294C	endp

; [00000008 BYTES: COLLAPSED FUNCTION Windows::ZeroMemory(void *,uint).	PRESS KEYPAD "+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_12958	proc near		; DATA XREF: CODE:0001A07Co
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_1297D
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C078
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_12984


loc_1297C:				; CODE XREF: sub_12958+2Aj
		retn
; ---------------------------------------------------------------------------


loc_1297D:				; DATA XREF: sub_12958+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_1297C
; ---------------------------------------------------------------------------


loc_12984:				; CODE XREF: sub_12958:loc_1297Cj
					; DATA XREF: sub_12958+1Fo
		pop	ebp
		retn
sub_12958	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_12988	proc near		; DATA XREF: CODE:0001A078o
		sub	ds:dword_1C078,	1
		retn
sub_12988	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_12990	proc near		; DATA XREF: CODE:0001A084o
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_129B5
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C07C
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_129BC


loc_129B4:				; CODE XREF: sub_12990+2Aj
		retn
; ---------------------------------------------------------------------------


loc_129B5:				; DATA XREF: sub_12990+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_129B4
; ---------------------------------------------------------------------------


loc_129BC:				; CODE XREF: sub_12990:loc_129B4j
					; DATA XREF: sub_12990+1Fo
		pop	ebp
		retn
sub_12990	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_129C0	proc near		; DATA XREF: CODE:0001A080o
		sub	ds:dword_1C07C,	1
		retn
sub_129C0	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_129C8	proc near		; DATA XREF: CODE:0001A08Co
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_129ED
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C080
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_129F4


loc_129EC:				; CODE XREF: sub_129C8+2Aj
		retn
; ---------------------------------------------------------------------------


loc_129ED:				; DATA XREF: sub_129C8+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_129EC
; ---------------------------------------------------------------------------


loc_129F4:				; CODE XREF: sub_129C8:loc_129ECj
					; DATA XREF: sub_129C8+1Fo
		pop	ebp
		retn
sub_129C8	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_129F8	proc near		; DATA XREF: CODE:0001A088o
		sub	ds:dword_1C080,	1
		retn
sub_129F8	endp

; ---------------------------------------------------------------------------
off_12A00	dd offset off_12A0C	; DATA XREF: sub_12B14+4r
		dd 28h,	0
off_12A0C	dd offset sub_12A60	; DATA XREF: CODE:off_12A00o
		dd offset @System@@Dispose$qqrpvt1 ; System::__linkproc__ Dispose(void *,void *)
off_12A14	dd offset off_12A20	; DATA XREF: sub_1309C+4r
		dd 2Ah,	0
off_12A20	dd offset sub_130B8	; DATA XREF: CODE:off_12A14o
		dd offset @System@@Dispose$qqrpvt1_0 ; System::__linkproc__ Dispose(void *,void	*)
; [00000006 BYTES: COLLAPSED FUNCTION GetFileAttributesA. PRESS	KEYPAD "+" TO EXPAND]
		align 10h
; [00000006 BYTES: COLLAPSED FUNCTION GetModuleFileNameA. PRESS	KEYPAD "+" TO EXPAND]
		align 4
; [00000006 BYTES: COLLAPSED FUNCTION LoadLibraryA. PRESS KEYPAD "+" TO	EXPAND]
		align 10h
; [00000006 BYTES: COLLAPSED FUNCTION wvsprintfA. PRESS	KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_12A48	proc near		; CODE XREF: sub_13260p sub_13284+Bp ...
		test	eax, eax
		jnz	short locret_12A51
		mov	eax, offset dword_1B0A4

locret_12A51:				; CODE XREF: sub_12A48+2j
		retn
sub_12A48	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_12A54	proc near		; CODE XREF: sub_1326C+1p
					; sub_134B4:loc_134BFp
		test	edx, edx
		jnz	short locret_12A5D
		mov	edx, offset dword_1B0A4

locret_12A5D:				; CODE XREF: sub_12A54+2j
		retn
sub_12A54	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_12A60	proc near		; DATA XREF: CODE:off_12A0Co

var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	[ebp+var_4], eax
		pop	ecx
		pop	ebp
		retn
sub_12A60	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_12A6C	proc near		; CODE XREF: sub_13110+1p

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF0h
		push	ebx
		mov	[ebp+var_C], eax
		mov	eax, [ebp+var_C]
		cmp	word ptr [eax+0Ah], 0
		jz	short loc_12AE4
		mov	ebx, [ebp+var_C]
		mov	edx, [ebp+var_C]
		mov	eax, [ebx+0Ch]
		call	dword ptr [ebx+8]
		mov	eax, [ebp+var_C]
		xor	edx, edx
		mov	[eax+8], edx
		mov	[eax+0Ch], edx
		jmp	short loc_12AE4
; ---------------------------------------------------------------------------


loc_12A99:				; CODE XREF: sub_12A6C+8Bj
		mov	eax, [ebp+var_C]
		mov	eax, [eax+10h]
		mov	eax, [eax+1Ch]
		sub	eax, 2
		mov	[ebp+var_10], eax
		mov	eax, [ebp+var_C]
		mov	eax, [eax+10h]
		mov	edx, [ebp+var_10]
		call	sub_12B58
		mov	[ebp+var_8], eax
		mov	edx, [ebp+var_10]
		inc	edx
		mov	eax, [ebp+var_C]
		mov	eax, [eax+10h]
		call	sub_12B58
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_C]
		mov	eax, [eax+10h]
		mov	ecx, 2
		mov	edx, [ebp+var_10]
		call	sub_13194
		mov	eax, [ebp+var_4]
		call	[ebp+var_8]


loc_12AE4:				; CODE XREF: sub_12A6C+12j
					; sub_12A6C+2Bj
		mov	eax, [ebp+var_C]


loc_12AE7:				; DATA XREF: CODE:off_114EDo
		cmp	dword ptr [eax+10h], 0
		jz	short loc_12AF9
		mov	eax, [ebp+var_C]
		mov	eax, [eax+10h]
		cmp	dword ptr [eax+1Ch], 0
		jg	short loc_12A99


loc_12AF9:				; CODE XREF: sub_12A6C+7Fj
		mov	eax, [ebp+var_C]
		mov	eax, [eax+10h]
		call	sub_13100
		mov	eax, [ebp+var_C]
		xor	edx, edx
		mov	[eax+10h], edx
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_12A6C	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_12B14	proc near		; CODE XREF: sub_13474+Bp
					; sub_134B4+79p

var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	edx, off_12A00
		xor	eax, eax
		call	sub_130F0
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		mov	dword ptr [eax+24h], 4
		mov	eax, [ebp+var_4]
		pop	ecx
		pop	ebp
		retn
sub_12B14	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_12B38	proc near		; CODE XREF: sub_133DC+Dp

var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		mov	ecx, 1
		mov	edx, [ebp+var_8]
		call	sub_13194
		pop	ecx
		pop	ecx
		pop	ebp
		retn
sub_12B38	endp


; =============== S U B	R O U T	I N E =======================================



sub_12B58	proc near		; CODE XREF: sub_12A6C+45p
					; sub_12A6C+57p ...
		test	edx, edx
		jl	short loc_12B68
		cmp	edx, [eax+1Ch]
		jge	short loc_12B68
		mov	eax, [eax+18h]
		mov	eax, [eax+edx*4]
		retn
; ---------------------------------------------------------------------------


loc_12B68:				; CODE XREF: sub_12B58+2j sub_12B58+7j
		xor	eax, eax
		retn
sub_12B58	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_12B6C	proc near		; CODE XREF: sub_132E4+2Fp
		push	edi
		xchg	eax, edi
		xchg	eax, edx
		repne scasb
		xchg	eax, edi
		pop	edi
		retn
sub_12B6C	endp

; [0000001F BYTES: COLLAPSED FUNCTION Sysutils::CompareMem(void	*,void *,int). PRESS KEYPAD "+"	TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_12B94	proc near		; CODE XREF: sub_198F0+4Dp

var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

; FUNCTION CHUNK AT 00011748 SIZE 00000036 BYTES

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE4h
		push	ebx
		xor	ebx, ebx
		mov	[ebp+var_18], ebx
		mov	[ebp+var_1C], ebx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_12C3C
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	edx, [ebp+var_4]
		mov	edx, [edx]
		mov	eax, [ebp+var_8]
		call	unknown_libname_10 ; BDS 2005-2006 and Delphi6-7 Visual	Component Library
		mov	[ebp+var_14], eax
		cmp	[ebp+var_14], 0
		jle	short loc_12C1D
		lea	eax, [ebp+var_18]
		push	eax
		mov	ecx, [ebp+var_14]
		dec	ecx
		mov	eax, [ebp+var_4]
		mov	eax, [eax]
		mov	edx, 1
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		push	[ebp+var_18]
		push	[ebp+var_C]
		mov	eax, [ebp+var_8]
		call	sub_11DF4
		mov	edx, eax
		add	edx, [ebp+var_14]
		lea	ecx, [ebp+var_1C]
		mov	eax, [ebp+var_4]
		mov	eax, [eax]
		call	sub_132BC
		push	[ebp+var_1C]
		mov	eax, [ebp+var_4]
		mov	edx, 3
		call	sub_11EB4
		mov	[ebp+var_D], 1
		jmp	short loc_12C21
; ---------------------------------------------------------------------------


loc_12C1D:				; CODE XREF: sub_12B94+3Aj
		mov	[ebp+var_D], 0


loc_12C21:				; CODE XREF: sub_12B94+87j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_12C43


loc_12C2E:				; CODE XREF: sub_12B94+ADj
		lea	eax, [ebp+var_1C]
		mov	edx, 2
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_12C3C:				; DATA XREF: sub_12B94+1Bo
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_12C2E
; ---------------------------------------------------------------------------


loc_12C43:				; CODE XREF: sub_12B94+A7j
					; DATA XREF: sub_12B94+95o
		mov	al, [ebp+var_D]
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_12B94	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_12C4C	proc near		; CODE XREF: sub_13420+18p
					; sub_13420+38p
		xchg	eax, edi
		xchg	eax, edx
		or	ecx, 0FFFFFFFFh
		xor	eax, eax
		cmp	eax, edi
		jz	short loc_12C5D
		repne scasb
		dec	eax
		dec	eax
		sub	eax, ecx


loc_12C5D:				; CODE XREF: sub_12C4C+9j
		mov	edi, edx
		retn
sub_12C4C	endp

; [0000001C BYTES: COLLAPSED FUNCTION unknown_libname_13. PRESS	KEYPAD "+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

; int __stdcall	sub_12C7C(int, double)

sub_12C7C	proc near		; CODE XREF: sub_12CC8+22p

var_1C		= word ptr -1Ch
var_1A		= word ptr -1Ah
var_18		= word ptr -18h
var_16		= word ptr -16h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= qword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE4h
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		push	dword ptr [ebp+arg_4+4]
		push	dword ptr [ebp+arg_4] ;	double
		lea	eax, [ebp+var_1C]
		call	sub_12EF0
		mov	eax, [ebp+var_4]
		mov	dx, [ebp+var_1C]
		mov	[eax], dx
		mov	eax, [ebp+var_8]
		mov	dx, [ebp+var_1A]
		mov	[eax], dx
		mov	eax, [ebp+var_C]
		mov	dx, [ebp+var_16]
		mov	[eax], dx
		mov	eax, [ebp+arg_0]
		mov	dx, [ebp+var_18]
		mov	[eax], dx
		mov	esp, ebp
		pop	ebp
		retn	0Ch
sub_12C7C	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

; int __stdcall	sub_12CC8(double)

sub_12CC8	proc near		; CODE XREF: Dateutils::DayOf(System::TDateTime)+15p

var_E		= dword	ptr -0Eh
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= qword	ptr  8

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF0h
		mov	[ebp+var_E+2], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		push	dword ptr [ebp+arg_0+4]
		push	dword ptr [ebp+arg_0] ;	double
		lea	eax, [ebp+var_E]
		push	eax		; int
		mov	ecx, [ebp+var_E+2]
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_4]
		call	sub_12C7C
		mov	esp, ebp
		pop	ebp
		retn	8
sub_12CC8	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_12CF8	proc near		; CODE XREF: sub_12D44+21p
					; sub_12EF0+DBp

var_5		= byte ptr -5
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		and	eax, 80000003h
		jns	short loc_12D10
		dec	eax
		or	eax, 0FFFFFFFCh
		inc	eax


loc_12D10:				; CODE XREF: sub_12CF8+11j
		test	eax, eax
		jnz	short loc_12D32
		mov	eax, [ebp+var_4]
		mov	ecx, 64h
		cdq
		idiv	ecx
		test	edx, edx
		jnz	short loc_12D36
		mov	eax, [ebp+var_4]
		mov	ecx, 190h
		cdq
		idiv	ecx
		test	edx, edx
		jz	short loc_12D36


loc_12D32:				; CODE XREF: sub_12CF8+1Aj
		xor	eax, eax
		jmp	short loc_12D38
; ---------------------------------------------------------------------------


loc_12D36:				; CODE XREF: sub_12CF8+29j
					; sub_12CF8+38j
		mov	al, 1


loc_12D38:				; CODE XREF: sub_12CF8+3Cj
		mov	[ebp+var_5], al
		mov	al, [ebp+var_5]
		pop	ecx
		pop	ecx
		pop	ebp
		retn
sub_12CF8	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_12D44	proc near		; CODE XREF: sub_15788+19p

var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_9		= byte ptr -9
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFDCh
		push	ebx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	[ebp+var_9], 0
		mov	eax, [ebp+var_8]
		xor	edx, edx
		mov	[eax], edx
		mov	[eax+4], edx
		mov	eax, [ebp+var_4]
		movzx	eax, word ptr [eax]
		call	sub_12CF8
		and	eax, 7Fh
		lea	eax, [eax+eax*2]
		lea	eax, dword_1B074[eax*8]
		mov	[ebp+var_18], eax
		mov	eax, [ebp+var_4]
		cmp	word ptr [eax],	270Fh
		ja	loc_12EBB
		mov	eax, [ebp+var_4]
		cmp	word ptr [eax+2], 0Ch
		ja	loc_12EBB
		mov	eax, [ebp+var_4]
		movzx	eax, word ptr [eax+2]
		mov	edx, [ebp+var_18]
		mov	ax, [edx+eax*2-2]
		mov	edx, [ebp+var_4]
		cmp	ax, [edx+6]
		jb	loc_12EBB
		mov	eax, [ebp+var_4]
		cmp	word ptr [eax+8], 18h
		jnb	loc_12EBB
		mov	eax, [ebp+var_4]
		cmp	word ptr [eax+0Ah], 3Ch
		jnb	loc_12EBB
		mov	eax, [ebp+var_4]
		cmp	word ptr [eax+0Ch], 3Ch
		jnb	loc_12EBB
		mov	eax, [ebp+var_4]
		cmp	word ptr [eax+0Eh], 3E8h
		jnb	loc_12EBB
		mov	eax, [ebp+var_4]
		movzx	eax, word ptr [eax+6]
		mov	[ebp+var_14], eax
		mov	eax, [ebp+var_4]
		movzx	eax, word ptr [eax+2]
		dec	eax
		test	eax, eax
		jle	short loc_12E21
		mov	[ebp+var_1C], eax
		mov	[ebp+var_10], 1


loc_12E0B:				; CODE XREF: sub_12D44+DBj
		mov	eax, [ebp+var_18]
		mov	edx, [ebp+var_10]
		movzx	eax, word ptr [eax+edx*2-2]
		add	[ebp+var_14], eax
		inc	[ebp+var_10]
		dec	[ebp+var_1C]
		jnz	short loc_12E0B


loc_12E21:				; CODE XREF: sub_12D44+BBj
		mov	eax, [ebp+var_4]
		movzx	eax, word ptr [eax]
		dec	eax
		mov	[ebp+var_10], eax
		cmp	[ebp+var_10], 0
		jge	short loc_12E36
		xor	eax, eax
		mov	[ebp+var_10], eax


loc_12E36:				; CODE XREF: sub_12D44+EBj
		mov	eax, [ebp+var_10]
		mov	ecx, 64h
		cdq
		idiv	ecx
		imul	ecx, [ebp+var_10], 16Dh
		mov	edx, [ebp+var_10]
		test	edx, edx
		jns	short loc_12E52
		add	edx, 3


loc_12E52:				; CODE XREF: sub_12D44+109j
		sar	edx, 2
		add	ecx, edx
		sub	ecx, eax
		mov	eax, [ebp+var_10]
		mov	ebx, 190h
		cdq
		idiv	ebx
		add	ecx, eax
		add	ecx, [ebp+var_14]
		mov	[ebp+var_20], ecx
		fild	[ebp+var_20]
		mov	eax, [ebp+var_4]
		movzx	eax, word ptr [eax+8]
		imul	eax, 36EE80h
		mov	edx, [ebp+var_4]
		movzx	edx, word ptr [edx+0Ah]
		imul	edx, 0EA60h
		add	eax, edx
		mov	edx, [ebp+var_4]
		movzx	edx, word ptr [edx+0Ch]
		imul	edx, 3E8h
		add	eax, edx
		mov	edx, [ebp+var_4]
		movzx	edx, word ptr [edx+0Eh]
		add	eax, edx
		mov	[ebp+var_24], eax
		fild	[ebp+var_24]
		fdiv	flt_12EC4
		faddp	st(1), st
		mov	eax, [ebp+var_8]
		fstp	qword ptr [eax]
		wait
		mov	[ebp+var_9], 1


loc_12EBB:				; CODE XREF: sub_12D44+3Ej
					; sub_12D44+4Cj ...
		mov	al, [ebp+var_9]
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_12D44	endp

; ---------------------------------------------------------------------------
		align 4
flt_12EC4	dd 8.64e7		; DATA XREF: sub_12D44+165r

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

; int __stdcall	sub_12EC8(double)

sub_12EC8	proc near		; CODE XREF: sub_12EF0+145p

var_4		= dword	ptr -4
arg_0		= qword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		push	0
		push	7
		fld	[ebp+arg_0]
		call	sub_1127C
		add	eax, 6
		adc	edx, 0
		call	sub_125DD
		inc	eax
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		pop	ecx
		pop	ebp
		retn	8
sub_12EC8	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

; int __stdcall	sub_12EF0(double)

sub_12EF0	proc near		; CODE XREF: sub_12C7C+18p

var_20		= word ptr -20h
var_1E		= word ptr -1Eh
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= word ptr -14h
var_12		= word ptr -12h
var_10		= word ptr -10h
var_E		= word ptr -0Eh
var_C		= dword	ptr -0Ch
var_5		= byte ptr -5
var_4		= dword	ptr -4
arg_0		= qword	ptr  8

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE0h
		mov	[ebp+var_4], eax
		fld	[ebp+arg_0]
		call	sub_1127C
		mov	[ebp+var_C], eax
		fild	[ebp+var_C]
		fsubr	[ebp+arg_0]
		fmul	flt_13098
		call	@System@@ROUND$qqrv ; System::__linkproc__ ROUND(void)
		mov	[ebp+var_18], eax
		mov	[ebp+var_5], 0
		cmp	[ebp+var_C], 0
		jle	loc_1308C
		dec	[ebp+var_C]
		mov	[ebp+var_E], 1
		cmp	[ebp+var_C], 23AB1h
		jl	short loc_12F4E


loc_12F38:				; CODE XREF: sub_12EF0+5Cj
		sub	[ebp+var_C], 23AB1h
		add	[ebp+var_E], 190h
		cmp	[ebp+var_C], 23AB1h
		jge	short loc_12F38


loc_12F4E:				; CODE XREF: sub_12EF0+46j
		lea	eax, [ebp+var_12]
		push	eax
		lea	ecx, [ebp+var_14]
		mov	dx, 8EACh
		mov	eax, [ebp+var_C]
		call	unknown_libname_13 ; BDS 2005-2006 and Delphi6-7 Visual	Component Library
		cmp	[ebp+var_14], 4
		jnz	short loc_12F72
		dec	[ebp+var_14]
		add	[ebp+var_12], 8EACh


loc_12F72:				; CODE XREF: sub_12EF0+76j
		imul	ax, [ebp+var_14], 64h
		add	[ebp+var_E], ax
		lea	eax, [ebp+var_12]
		push	eax
		lea	ecx, [ebp+var_14]
		movzx	eax, [ebp+var_12]
		mov	dx, 5B5h
		call	unknown_libname_13 ; BDS 2005-2006 and Delphi6-7 Visual	Component Library
		mov	ax, [ebp+var_14]
		shl	eax, 2
		add	[ebp+var_E], ax
		lea	eax, [ebp+var_12]
		push	eax
		lea	ecx, [ebp+var_14]
		movzx	eax, [ebp+var_12]
		mov	dx, 16Dh
		call	unknown_libname_13 ; BDS 2005-2006 and Delphi6-7 Visual	Component Library
		cmp	[ebp+var_14], 4
		jnz	short loc_12FBF
		dec	[ebp+var_14]
		add	[ebp+var_12], 16Dh


loc_12FBF:				; CODE XREF: sub_12EF0+C3j
		mov	ax, [ebp+var_14]
		add	[ebp+var_E], ax
		movzx	eax, [ebp+var_E]
		call	sub_12CF8
		and	eax, 7Fh
		lea	eax, [eax+eax*2]
		lea	eax, dword_1B074[eax*8]
		mov	[ebp+var_1C], eax
		mov	[ebp+var_10], 1


loc_12FE6:				; CODE XREF: sub_12EF0+11Cj
		movzx	eax, [ebp+var_10]
		mov	edx, [ebp+var_1C]
		mov	ax, [edx+eax*2-2]
		mov	[ebp+var_14], ax
		mov	ax, [ebp+var_12]
		cmp	ax, [ebp+var_14]
		jb	short loc_1300E
		mov	ax, [ebp+var_14]
		sub	[ebp+var_12], ax
		inc	[ebp+var_10]
		jmp	short loc_12FE6
; ---------------------------------------------------------------------------


loc_1300E:				; CODE XREF: sub_12EF0+10Ej
		mov	eax, [ebp+var_4]
		mov	dx, [ebp+var_E]
		mov	[eax], dx
		mov	eax, [ebp+var_4]
		mov	dx, [ebp+var_10]
		mov	[eax+2], dx
		mov	ax, [ebp+var_12]
		inc	eax
		mov	edx, [ebp+var_4]
		mov	[edx+6], ax
		push	dword ptr [ebp+arg_0+4]
		push	dword ptr [ebp+arg_0] ;	double
		call	sub_12EC8
		mov	edx, [ebp+var_4]
		mov	[edx+4], ax
		lea	eax, [ebp+var_20]
		push	eax
		lea	ecx, [ebp+var_1E]
		mov	dx, 0EA60h
		mov	eax, [ebp+var_18]
		call	unknown_libname_13 ; BDS 2005-2006 and Delphi6-7 Visual	Component Library
		mov	eax, [ebp+var_4]
		add	eax, 0Ah
		push	eax
		mov	ecx, [ebp+var_4]
		add	ecx, 8
		movzx	eax, [ebp+var_1E]
		mov	dx, 3Ch
		call	unknown_libname_13 ; BDS 2005-2006 and Delphi6-7 Visual	Component Library
		mov	eax, [ebp+var_4]
		add	eax, 0Eh
		push	eax
		mov	ecx, [ebp+var_4]
		add	ecx, 0Ch
		movzx	eax, [ebp+var_20]
		mov	dx, 3E8h
		call	unknown_libname_13 ; BDS 2005-2006 and Delphi6-7 Visual	Component Library
		mov	[ebp+var_5], 1


loc_1308C:				; CODE XREF: sub_12EF0+30j
		mov	al, [ebp+var_5]
		mov	esp, ebp
		pop	ebp
		retn	8
sub_12EF0	endp

; ---------------------------------------------------------------------------
		align 4
flt_13098	dd 8.64e7		; DATA XREF: sub_12EF0+1Ar

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_1309C	proc near		; CODE XREF: sub_13A50+1Ap
					; sub_13A50+24p ...

var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	edx, off_12A14
		xor	eax, eax
		call	sub_130F0
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		pop	ecx
		pop	ebp
		retn
sub_1309C	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_130B8	proc near		; DATA XREF: CODE:off_12A20o

var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		mov	dl, ds:byte_1B070
		mov	[eax+29h], dl
		pop	ecx
		pop	ebp
		retn
sub_130B8	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_130D0	proc near		; CODE XREF: sub_16024+50p
					; sub_165C4+1D4p

var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		xor	ecx, ecx
		mov	edx, [ebp+var_8]
		call	sub_134B4
		pop	ecx
		pop	ecx
		pop	ebp
		retn
sub_130D0	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_130F0	proc near		; CODE XREF: sub_12B14+Cp sub_1309C+Cp
		call	sub_1131C
		jz	short locret_130FD
		push	eax
		mov	edx, [eax]
		call	dword ptr [edx]
		pop	eax

locret_130FD:				; CODE XREF: sub_130F0+5j
		retn
sub_130F0	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_13100	proc near		; CODE XREF: sub_12A6C+93p
					; sub_133AC+29p ...
		test	eax, eax
		jz	short locret_1310F
		sub	dword ptr [eax+4], 2
		jge	short locret_1310F
		mov	edx, [eax]
		push	dword ptr [edx+4]

locret_1310F:				; CODE XREF: sub_13100+2j sub_13100+8j
		retn
sub_13100	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_13110	proc near		; CODE XREF: System::__linkproc__ Dispose(void *,void *)+7p
					; System::__linkproc__ Dispose(void *,void *)+7p
		push	eax
		call	sub_12A6C
		pop	eax
		xor	edx, edx
		call	sub_11164
		retn
sub_13110	endp

; ---------------------------------------------------------------------------
		align 10h
; [0000000D BYTES: COLLAPSED FUNCTION System::__linkproc__ Dispose(void	*,void *). PRESS KEYPAD	"+" TO EXPAND]
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_13130	proc near		; CODE XREF: sub_13164+1Ep
					; sub_134B4+A8p
		cmp	edx, [eax+1Ch]
		jge	short loc_13138
		mov	edx, [eax+1Ch]


loc_13138:				; CODE XREF: sub_13130+3j
		cmp	edx, [eax+20h]
		jz	short locret_1314B
		mov	[eax+20h], edx
		shl	edx, 2
		lea	eax, [eax+18h]
		call	@System@@ReallocMem$qqrrpvi ; System::__linkproc__ ReallocMem(void *&,int)

locret_1314B:				; CODE XREF: sub_13130+Bj
		retn
sub_13130	endp


; =============== S U B	R O U T	I N E =======================================



sub_1314C	proc near		; CODE XREF: System::__linkproc__ Dispose(void *,void *)+1p
		push	dword ptr [eax+18h]
		xor	edx, edx
		mov	[eax+18h], edx
		mov	[eax+1Ch], edx
		mov	[eax+20h], edx
		pop	eax
		call	sub_11164
		retn
sub_1314C	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_13164	proc near		; CODE XREF: sub_131CC+6p
		push	edx
		lea	ecx, [eax+1Ch]
		mov	edx, [ecx]
		inc	dword ptr [ecx]
		push	edx
		cmp	edx, [eax+20h]
		push	eax
		jl	short loc_13187
		mov	ecx, [eax+24h]
		test	ecx, ecx
		jnz	short loc_13180
		mov	ecx, edx
		shr	ecx, 2
		inc	ecx


loc_13180:				; CODE XREF: sub_13164+14j
		add	edx, ecx
		call	sub_13130


loc_13187:				; CODE XREF: sub_13164+Dj
		pop	ecx
		pop	eax
		pop	edx
		mov	ecx, [ecx+18h]
		mov	[ecx+eax*4], edx
		retn
sub_13164	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_13194	proc near		; CODE XREF: sub_12A6C+6Dp
					; sub_12B38+17p
		test	ecx, ecx
		jle	short locret_131CB
		cmp	edx, [eax+1Ch]
		jge	short locret_131CB
		push	ebx
		xchg	eax, ebx
		lea	eax, [edx+ecx]
		cmp	eax, [ebx+1Ch]
		jbe	short loc_131AC
		mov	ecx, [ebx+1Ch]
		sub	ecx, edx


loc_131AC:				; CODE XREF: sub_13194+11j
		mov	eax, [ebx+18h]
		push	dword ptr [ebx+1Ch]
		sub	[ebx+1Ch], ecx
		mov	ebx, edx
		lea	edx, [eax+edx*4]
		lea	eax, [edx+ecx*4]
		add	ebx, ecx
		pop	ecx
		sub	ecx, ebx
		shl	ecx, 2
		call	sub_11210
		pop	ebx

locret_131CB:				; CODE XREF: sub_13194+2j sub_13194+7j
		retn
sub_13194	endp


; =============== S U B	R O U T	I N E =======================================



sub_131CC	proc near		; CODE XREF: sub_13474+36p
		push	ecx
		push	eax
		push	dword ptr [eax+1Ch]
		push	edx
		call	sub_13164
		pop	edx
		pop	eax
		sub	eax, edx
		shl	eax, 2
		mov	ecx, eax
		pop	eax
		mov	eax, [eax+18h]
		lea	eax, [eax+edx*4]
		jl	short loc_131F3
		push	eax
		lea	edx, [eax+4]
		call	sub_11210
		pop	eax


loc_131F3:				; CODE XREF: sub_131CC+1Bj
		pop	ecx
		mov	[eax], ecx
		retn
sub_131CC	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_131F8	proc near		; CODE XREF: sub_161F4+8Dp
					; sub_161F4+B7p ...

var_2		= byte ptr -2

		xor	ecx, ecx
		push	ecx
		add	esp, 0FFFFFFF4h
		push	ebx
		lea	ebx, [esp+13h]
		push	edx
		cmp	eax, ecx
		pushf
		jge	short loc_1320B
		neg	eax


loc_1320B:				; CODE XREF: sub_131F8+Fj
		mov	cl, 0Ah


loc_1320D:				; CODE XREF: sub_131F8+21j
		dec	ebx
		xor	edx, edx
		div	ecx
		add	dl, 30h
		mov	[ebx], dl
		test	eax, eax
		jnz	short loc_1320D
		popf
		jge	short loc_13222
		dec	ebx
		mov	byte ptr [ebx],	2Dh


loc_13222:				; CODE XREF: sub_131F8+24j
		pop	eax
		mov	edx, ebx
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		pop	ebx
		add	esp, 10h
		retn
sub_131F8	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_13230	proc near		; CODE XREF: sub_13260+5p
		xchg	eax, edx
		xor	eax, eax
		test	edx, edx
		jz	short locret_1325F
		xor	ecx, ecx
		mov	cl, [edx]
		inc	edx
		cmp	cl, 2Dh
		pushf
		jz	short loc_13247
		cmp	cl, 2Bh
		jnz	short loc_1324A


loc_13247:				; CODE XREF: sub_13230+10j
					; sub_13230+28j
		mov	cl, [edx]
		inc	edx


loc_1324A:				; CODE XREF: sub_13230+15j
		sub	cl, 30h
		cmp	cl, 9
		ja	short loc_1325A
		lea	eax, [eax+eax*4]
		lea	eax, [ecx+eax*2]
		jmp	short loc_13247
; ---------------------------------------------------------------------------


loc_1325A:				; CODE XREF: sub_13230+20j
		popf
		jnz	short locret_1325F
		neg	eax

locret_1325F:				; CODE XREF: sub_13230+5j
					; sub_13230+2Bj
		retn
sub_13230	endp


; =============== S U B	R O U T	I N E =======================================



sub_13260	proc near		; CODE XREF: sub_17300+3Fp
					; sub_17300+64p
		call	sub_12A48
		call	sub_13230
		retn
sub_13260	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1326C	proc near		; CODE XREF: sub_132AC+9p
		xchg	eax, edx
		call	sub_12A54
		dec	edx


loc_13273:				; CODE XREF: sub_1326C+10j
		inc	edx
		movzx	ecx, byte ptr [edx]
		jecxz	short loc_1327E
		cmp	cl, 20h
		jbe	short loc_13273


loc_1327E:				; CODE XREF: sub_1326C+Bj
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		retn
sub_1326C	endp


; =============== S U B	R O U T	I N E =======================================



sub_13284	proc near		; CODE XREF: sub_132AC+1p

var_C		= dword	ptr -0Ch

		push	edx
		push	eax
		push	eax
		call	sub_11DF4
		xchg	eax, [esp+0Ch+var_C]
		call	sub_12A48
		pop	ecx
		inc	ecx


loc_13296:				; CODE XREF: sub_13284+1Bj
		dec	ecx
		mov	dl, [eax+ecx]
		jl	short loc_132A1
		cmp	dl, 20h
		jbe	short loc_13296


loc_132A1:				; CODE XREF: sub_13284+16j
		inc	ecx
		pop	eax
		xor	edx, edx
		inc	edx
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		retn
sub_13284	endp


; =============== S U B	R O U T	I N E =======================================



sub_132AC	proc near		; CODE XREF: sub_16E1C+14Cp
		push	edx
		call	sub_13284
		pop	edx
		mov	eax, [edx]
		call	sub_1326C
		retn
sub_132AC	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_132BC	proc near		; CODE XREF: sub_12B94+6Ep
		push	ecx
		push	eax
		push	edx
		call	sub_11DF4
		pop	edx
		test	edx, edx
		jg	short loc_132CC
		xor	edx, edx
		inc	edx


loc_132CC:				; CODE XREF: sub_132BC+Bj
		sub	eax, edx
		mov	ecx, eax
		pop	eax
		jge	short loc_132DA
		pop	eax
		jl	sub_11C00


loc_132DA:				; CODE XREF: sub_132BC+15j
		inc	ecx
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		retn
sub_132BC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_132E4	proc near		; CODE XREF: sub_198F0+37p r+6Cp

var_10		= dword	ptr -10h

		push	ebx
		push	esi
		push	edi
		push	eax
		mov	eax, edx
		push	edx
		call	sub_11DF4
		mov	edi, eax
		pop	eax
		call	sub_12A48
		mov	bl, [eax]
		xchg	eax, [esp+10h+var_10]
		call	sub_12A48
		mov	esi, eax
		dec	eax


loc_13305:				; CODE XREF: sub_132E4+46j
		inc	eax
		mov	dl, bl
		mov	ecx, [esi-4]
		sub	ecx, eax
		add	ecx, esi
		cmp	ecx, edi
		jl	short loc_13331
		call	sub_12B6C
		test	eax, eax
		jz	short loc_13333
		dec	eax
		pop	edx
		push	edx
		mov	ecx, edi
		push	eax
		call	@Sysutils@CompareMem$qqrpvt1i ;	Sysutils::CompareMem(void *,void *,int)
		test	al, al
		pop	eax
		jz	short loc_13305
		sub	eax, esi
		inc	eax
		jmp	short loc_13334
; ---------------------------------------------------------------------------


loc_13331:				; CODE XREF: sub_132E4+2Dj
		xor	eax, eax


loc_13333:				; CODE XREF: sub_132E4+36j
		dec	eax


loc_13334:				; CODE XREF: sub_132E4+4Bj
		pop	edx
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_132E4	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

; int __fastcall sub_1333C(LPCSTR, int,	int)

sub_1333C	proc near		; CODE XREF: sub_14694+20Ep r+257p

arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	esi
		push	edi
		push	ebx
		mov	ebx, esp
		add	esp, 0FFFFF800h
		mov	esi, esp
		inc	ecx
		jz	short loc_13356


loc_1334F:				; CODE XREF: sub_1333C+18j
		mov	edi, [edx+ecx*8-8]
		push	edi
		loop	loc_1334F


loc_13356:				; CODE XREF: sub_1333C+11j
		push	esp		; arglist
		push	eax		; LPCSTR
		push	esi		; LPSTR
		call	wvsprintfA	; wvsprintfA
		mov	edx, esi
		mov	eax, [ebp+arg_0]
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	esp, ebx
		pop	ebx
		pop	edi
		pop	esi
		mov	esp, ebp
		pop	ebp
		retn	4
sub_1333C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_13374	proc near		; CODE XREF: sub_161F4+168p
					; sub_161F4+218p ...
		call	sub_12A48
		push	eax		; lpFileName
		call	GetFileAttributesA	; GetFileAttributesA
		inc	eax
		jz	short locret_13388
		dec	eax
		and	al, 10h
		setz	al

locret_13388:				; CODE XREF: sub_13374+Cj
		retn
sub_13374	endp

; ---------------------------------------------------------------------------
		align 4
; [0000000D BYTES: COLLAPSED FUNCTION System::__linkproc__ Dispose(void	*,void *). PRESS KEYPAD	"+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1339C	proc near		; CODE XREF: sub_15B40+F0p
					; sub_15B40+10Dp
		mov	ecx, edx
		mov	edx, [eax+1Ch]
		push	edx
		call	sub_13474
		pop	eax
		retn
sub_1339C	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_133AC	proc near		; CODE XREF: System::__linkproc__ Dispose(void *,void *)+1p
					; sub_134B4+5p	...
		push	ebx
		xchg	eax, ebx
		mov	edx, [ebx+1Ch]


loc_133B1:				; CODE XREF: sub_133AC+11j
		dec	edx
		jl	short loc_133BF
		push	edx
		mov	eax, ebx
		call	sub_133DC
		pop	edx
		jmp	short loc_133B1
; ---------------------------------------------------------------------------


loc_133BF:				; CODE XREF: sub_133AC+6j
		xor	eax, eax
		mov	[ebx+25h], eax
		xchg	eax, [ebx+21h]
		test	eax, eax
		jz	short loc_133D2
		call	sub_11164
		xor	eax, eax


loc_133D2:				; CODE XREF: sub_133AC+1Dj
		xchg	eax, [ebx+18h]
		call	sub_13100
		pop	ebx
		retn
sub_133AC	endp


; =============== S U B	R O U T	I N E =======================================



sub_133DC	proc near		; CODE XREF: sub_133AC+Bp
		dec	dword ptr [eax+1Ch]
		push	eax
		mov	eax, [eax+18h]
		mov	ecx, [eax+18h]
		push	dword ptr [ecx+edx*4]
		call	sub_12B38
		pop	eax
		pop	edx
		mov	ecx, [edx+25h]
		jecxz	short loc_13401
		cmp	eax, [edx+21h]
		jb	short loc_13401
		add	ecx, [edx+21h]
		cmp	eax, ecx
		jb	short locret_13406


loc_13401:				; CODE XREF: sub_133DC+17j
					; sub_133DC+1Cj
		call	sub_11164

locret_13406:				; CODE XREF: sub_133DC+23j
		retn
sub_133DC	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_13408	proc near		; CODE XREF: sub_154D4+45p
					; sub_16024+74p ...
		push	ecx
		mov	eax, [eax+18h]
		test	eax, eax
		jz	short loc_13415
		call	sub_12B58


loc_13415:				; CODE XREF: sub_13408+6j
		xchg	eax, edx
		pop	eax
		jmp	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
sub_13408	endp

; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_13420	proc near		; CODE XREF: sub_165C4+1E6p
		push	esi
		push	edi
		mov	ecx, [eax+1Ch]
		mov	eax, [eax+18h]
		push	ecx
		jecxz	short loc_1342E
		mov	esi, [eax+18h]


loc_1342E:				; CODE XREF: sub_13420+9j
		push	esi
		xchg	eax, edx
		xor	edx, edx
		jecxz	short loc_1344A
		push	eax


loc_13435:				; CODE XREF: sub_13420+23j
		push	ecx
		push	edx
		lodsd
		call	sub_12C4C
		pop	edx
		lea	edx, [edx+eax+2]
		pop	ecx
		loop	loc_13435
		pop	eax
		pop	esi
		xchg	edx, ecx
		push	eax


loc_1344A:				; CODE XREF: sub_13420+12j
		call	@System@@LStrFromPCharLen$qqrr17System@AnsiStringpci ; System::__linkproc__ LStrFromPCharLen(System::AnsiString	&,char *,int)
		pop	edi
		pop	ecx
		jecxz	short loc_1346E
		mov	edi, [edi]


loc_13455:				; CODE XREF: sub_13420+4Aj
		push	ecx
		lodsd
		push	eax
		call	sub_12C4C
		xchg	eax, ecx
		pop	eax
		xchg	eax, esi
		rep movsb
		xchg	eax, esi
		mov	ax, 0A0Dh
		stosw
		pop	ecx
		loop	loc_13455
		xchg	eax, ecx
		stosb


loc_1346E:				; CODE XREF: sub_13420+31j
		pop	edi
		pop	esi
		retn
sub_13420	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_13474	proc near		; CODE XREF: sub_1339C+6p
		push	ebx
		push	edx
		push	ecx
		xchg	eax, ebx
		mov	eax, [ebx+18h]
		test	eax, eax
		jnz	short loc_13487
		call	sub_12B14
		mov	[ebx+18h], eax


loc_13487:				; CODE XREF: sub_13474+9j
		pop	eax
		push	eax
		call	sub_11DF4
		inc	eax
		push	eax
		call	sub_1114C
		mov	byte ptr [eax],	0
		xchg	eax, edx
		pop	ecx
		pop	eax
		push	edx
		test	eax, eax
		jz	short loc_134A5
		call	sub_11210


loc_134A5:				; CODE XREF: sub_13474+2Aj
		pop	ecx
		pop	edx
		mov	eax, [ebx+18h]
		call	sub_131CC
		inc	dword ptr [ebx+1Ch]
		pop	ebx
		retn
sub_13474	endp


; =============== S U B	R O U T	I N E =======================================



sub_134B4	proc near		; CODE XREF: sub_130D0+14p
		dec	cl
		jz	short loc_134BF
		pusha
		call	sub_133AC
		popa


loc_134BF:				; CODE XREF: sub_134B4+2j
		call	sub_12A54
		jz	locret_1358D
		push	ebx
		push	edi
		mov	ebx, eax
		mov	edi, [ebx+25h]
		mov	eax, [edx-4]
		inc	eax
		push	eax
		push	edx
		push	dword ptr [ebx+21h]
		add	eax, [ebx+25h]
		call	sub_1114C
		mov	[ebx+21h], eax
		mov	ecx, edi
		xchg	eax, edx
		pop	eax
		jecxz	short loc_13514
		push	eax
		call	sub_11210
		pop	edx
		push	edx
		push	esi
		mov	esi, [ebx+18h]
		mov	esi, [esi+18h]
		mov	ecx, [ebx+1Ch]


loc_134FD:				; CODE XREF: sub_134B4:loc_1350Bj
		lodsd
		sub	eax, edx
		cmp	eax, [ebx+25h]
		jnb	short loc_1350B
		add	eax, [ebx+21h]
		mov	[esi-4], eax


loc_1350B:				; CODE XREF: sub_134B4+4Fj
		loop	loc_134FD
		pop	esi
		pop	eax
		call	sub_11164


loc_13514:				; CODE XREF: sub_134B4+35j
		pop	eax
		mov	edx, edi
		add	edx, [ebx+21h]
		pop	ecx
		push	ecx
		add	[ebx+25h], ecx
		call	sub_11210
		add	edi, [ebx+21h]
		mov	ecx, [ebx+18h]
		inc	ecx
		loop	loc_13535
		call	sub_12B14
		mov	[ebx+18h], eax


loc_13535:				; CODE XREF: sub_134B4+77j
		pop	ecx
		mov	edx, [ebx+1Ch]
		push	edi
		push	ecx
		mov	al, 0Dh


loc_1353D:				; CODE XREF: sub_134B4+96j
					; sub_134B4+99j
		cmp	byte ptr [edi],	0
		jz	short loc_1354F
		inc	edx
		repne scasb
		jnz	short loc_1354F
		cmp	byte ptr [edi],	0Ah
		jnz	short loc_1353D
		inc	edi
		loop	loc_1353D


loc_1354F:				; CODE XREF: sub_134B4+8Cj
					; sub_134B4+91j
		mov	[ebx+1Ch], edx
		mov	eax, [ebx+18h]
		push	edx
		push	eax
		cmp	edx, [eax+20h]
		jle	short loc_13561
		call	sub_13130


loc_13561:				; CODE XREF: sub_134B4+A6j
		pop	eax
		pop	ecx
		xchg	ecx, [eax+1Ch]
		mov	edx, [eax+18h]
		lea	edx, [edx+ecx*4]
		pop	ecx
		pop	edi
		mov	eax, 0Dh


loc_13573:				; CODE XREF: sub_134B4+D2j
					; sub_134B4+D5j
		cmp	[edi], ah
		jz	short loc_1358B
		mov	[edx], edi
		add	edx, 4
		repne scasb
		jnz	short loc_1358B
		mov	[edi-1], ah
		cmp	byte ptr [edi],	0Ah
		jnz	short loc_13573
		inc	edi
		loop	loc_13573


loc_1358B:				; CODE XREF: sub_134B4+C1j
					; sub_134B4+CAj
		pop	edi
		pop	ebx

locret_1358D:				; CODE XREF: sub_134B4+10j
		retn
sub_134B4	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_13590	proc near		; DATA XREF: CODE:0001A094o
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_135DF
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C088
		jnz	short loc_135D1
		cmp	ds:hLibModule, 0
		jz	short loc_135BD
		mov	eax, ds:hLibModule
		push	eax		; hLibModule
		call	FreeLibrary_0


loc_135BD:				; CODE XREF: sub_13590+20j
		mov	eax, offset dword_1C08C
		call	sub_11C00
		mov	eax, offset dword_1B0A4
		call	sub_11C00


loc_135D1:				; CODE XREF: sub_13590+17j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_135E6


loc_135DE:				; CODE XREF: sub_13590+54j
		retn
; ---------------------------------------------------------------------------


loc_135DF:				; DATA XREF: sub_13590+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_135DE
; ---------------------------------------------------------------------------


loc_135E6:				; CODE XREF: sub_13590:loc_135DEj
					; DATA XREF: sub_13590+49o
		pop	ebp
		retn
sub_13590	endp

; [0000002F BYTES: COLLAPSED FUNCTION unknown_libname_14. PRESS	KEYPAD "+" TO EXPAND]
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_13618	proc near		; DATA XREF: CODE:0001A09Co
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_1363D
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C090
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_13644


loc_1363C:				; CODE XREF: sub_13618+2Aj
		retn
; ---------------------------------------------------------------------------


loc_1363D:				; DATA XREF: sub_13618+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_1363C
; ---------------------------------------------------------------------------


loc_13644:				; CODE XREF: sub_13618:loc_1363Cj
					; DATA XREF: sub_13618+1Fo
		pop	ebp
		retn
sub_13618	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_13648	proc near		; DATA XREF: CODE:0001A098o
		sub	ds:dword_1C090,	1
		retn
sub_13648	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_13650	proc near		; DATA XREF: CODE:0001A0A4o
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_13A45
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C224
		jnz	loc_13A37
		mov	eax, ds:dword_1C1B4
		call	sub_13100
		mov	eax, ds:dword_1C16C
		call	sub_13100
		mov	eax, offset dword_1C220
		call	sub_11C00
		mov	eax, offset dword_1C21C
		call	sub_11C00
		mov	eax, offset dword_1C218
		call	sub_11C00
		mov	eax, offset dword_1C214
		call	sub_11C00
		mov	eax, offset dword_1C210
		call	sub_11C00
		mov	eax, offset dword_1C20C
		call	sub_11C00
		mov	eax, offset dword_1C208
		call	sub_11C00
		mov	eax, offset dword_1C204
		call	sub_11C00
		mov	eax, offset dword_1C200
		call	sub_11C00
		mov	eax, offset dword_1C1FC
		call	sub_11C00
		mov	eax, offset dword_1C1F8
		call	sub_11C00
		mov	eax, offset dword_1C1F4
		call	sub_11C00
		mov	eax, offset dword_1C1F0
		call	sub_11C00
		mov	eax, offset dword_1C1EC
		call	sub_11C00
		mov	eax, offset dword_1C1E8
		call	sub_11C00
		mov	eax, offset dword_1C1E4
		call	sub_11C00
		mov	eax, offset dword_1C1E0
		call	sub_11C00
		mov	eax, offset dword_1C1DC
		call	sub_11C00
		mov	eax, offset dword_1C1D8
		call	sub_11C00
		mov	eax, offset dword_1C1D4
		call	sub_11C00
		mov	eax, offset dword_1C1D0
		call	sub_11C00
		mov	eax, offset dword_1C1CC
		call	sub_11C00
		mov	eax, offset dword_1C1C8
		call	sub_11C00
		mov	eax, offset dword_1C1C4
		call	sub_11C00
		mov	eax, offset dword_1C1C0
		call	sub_11C00
		mov	eax, offset dword_1C1BC
		call	sub_11C00
		mov	eax, offset dword_1C1B8
		call	sub_11C00
		mov	eax, offset dword_1C1B0
		call	sub_11C00
		mov	eax, offset dword_1C1AC
		call	sub_11C00
		mov	eax, offset dword_1C1A8
		call	sub_11C00
		mov	eax, offset dword_1C1A4
		call	sub_11C00
		mov	eax, offset dword_1C1A0
		call	sub_11C00
		mov	eax, offset dword_1C19C
		call	sub_11C00
		mov	eax, offset dword_1C198
		call	sub_11C00
		mov	eax, offset dword_1C194
		call	sub_11C00
		mov	eax, offset dword_1C190
		call	sub_11C00
		mov	eax, offset dword_1C18C
		call	sub_11C00
		mov	eax, offset dword_1C188
		call	sub_11C00
		mov	eax, offset dword_1C184
		call	sub_11C00
		mov	eax, offset dword_1C180
		call	sub_11C00
		mov	eax, offset dword_1C17C
		call	sub_11C00
		mov	eax, offset dword_1C178
		call	sub_11C00
		mov	eax, offset dword_1C170
		call	sub_11C00
		mov	eax, offset dword_1C168
		call	sub_11C00
		mov	eax, offset dword_1C164
		call	sub_11C00
		mov	eax, offset dword_1C160
		call	sub_11C00
		mov	eax, offset dword_1C15C
		call	sub_11C00
		mov	eax, offset dword_1C158
		call	sub_11C00
		mov	eax, offset dword_1C154
		call	sub_11C00
		mov	eax, offset dword_1C150
		call	sub_11C00
		mov	eax, offset dword_1C14C
		call	sub_11C00
		mov	eax, offset dword_1C148
		call	sub_11C00
		mov	eax, offset dword_1C144
		call	sub_11C00
		mov	eax, offset dword_1C140
		call	sub_11C00
		mov	eax, offset dword_1C13C
		call	sub_11C00
		mov	eax, offset dword_1C138
		call	sub_11C00
		mov	eax, offset dword_1C134
		call	sub_11C00
		mov	eax, offset dword_1C130
		call	sub_11C00
		mov	eax, offset dword_1C12C
		call	sub_11C00
		mov	eax, offset dword_1C128
		call	sub_11C00
		mov	eax, offset dword_1C124
		call	sub_11C00
		mov	eax, offset dword_1C120
		call	sub_11C00
		mov	eax, offset dword_1C11C
		call	sub_11C00
		mov	eax, offset dword_1C118
		call	sub_11C00
		mov	eax, offset dword_1C114
		call	sub_11C00
		mov	eax, offset dword_1C110
		call	sub_11C00
		mov	eax, offset dword_1C10C
		call	sub_11C00
		mov	eax, offset dword_1C108
		call	sub_11C00
		mov	eax, offset dword_1C104
		call	sub_11C00
		mov	eax, offset dword_1C100
		call	sub_11C00
		mov	eax, offset dword_1C0FC
		call	sub_11C00
		mov	eax, offset dword_1C0F8
		call	sub_11C00
		mov	eax, offset dword_1C0F4
		call	sub_11C00
		mov	eax, offset dword_1C0F0
		call	sub_11C00
		mov	eax, offset dword_1C0EC
		call	sub_11C00
		mov	eax, offset dword_1C0E8
		call	sub_11C00
		mov	eax, offset dword_1C0E4
		call	sub_11C00
		mov	eax, offset dword_1C0E0
		call	sub_11C00
		mov	eax, offset dword_1C0D4
		call	sub_11C00
		mov	eax, offset dword_1C0D0
		call	sub_11C00
		mov	eax, offset dword_1C0CC
		call	sub_11C00
		mov	eax, offset dword_1C0C8
		call	sub_11C00
		mov	eax, offset dword_1C0C4
		call	sub_11C00
		mov	eax, offset dword_1C0C0
		call	sub_11C00
		mov	eax, offset dword_1C0BC
		call	sub_11C00
		mov	eax, offset dword_1C0B8
		call	sub_11C00
		mov	eax, offset dword_1C0B4
		call	sub_11C00
		mov	eax, offset dword_1C0B0
		call	sub_11C00
		mov	eax, offset dword_1C0AC
		call	sub_11C00
		mov	eax, offset dword_1C0A8
		call	sub_11C00
		mov	eax, offset dword_1C0A4
		call	sub_11C00
		mov	eax, offset dword_1C0A0
		call	sub_11C00
		mov	eax, offset dword_1C09C
		call	sub_11C00
		mov	eax, offset dword_1C098
		call	sub_11C00
		mov	eax, offset dword_1C094
		call	sub_11C00


loc_13A37:				; CODE XREF: sub_13650+17j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_13A4C


loc_13A44:				; CODE XREF: sub_13650+3FAj
		retn
; ---------------------------------------------------------------------------


loc_13A45:				; DATA XREF: sub_13650+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_13A44
; ---------------------------------------------------------------------------


loc_13A4C:				; CODE XREF: sub_13650:loc_13A44j
					; DATA XREF: sub_13650+3EFo
		pop	ebp
		retn
sub_13650	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_13A50	proc near		; DATA XREF: CODE:0001A0A0o
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_13A8C
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		sub	ds:dword_1C224,	1
		jnb	short loc_13A7E
		call	sub_1309C
		mov	ds:dword_1C1B4,	eax
		call	sub_1309C
		mov	ds:dword_1C16C,	eax


loc_13A7E:				; CODE XREF: sub_13A50+18j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_13A93


loc_13A8B:				; CODE XREF: sub_13A50+41j
		retn
; ---------------------------------------------------------------------------


loc_13A8C:				; DATA XREF: sub_13A50+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_13A8B
; ---------------------------------------------------------------------------


loc_13A93:				; CODE XREF: sub_13A50:loc_13A8Bj
					; DATA XREF: sub_13A50+36o
		pop	ebp
		retn
sub_13A50	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_13A98	proc near		; CODE XREF: sub_13C28+3Cp

var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		xor	ecx, ecx
		push	ecx
		push	ecx
		push	ecx
		push	ecx
		push	ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_13B2D
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	eax, [ebp+var_C]
		mov	edx, [ebp+var_4]
		call	sub_11C98
		mov	eax, [ebp+var_8]
		call	sub_11C00
		jmp	short loc_13B0C
; ---------------------------------------------------------------------------


loc_13ACB:				; CODE XREF: sub_13A98+78j
		lea	eax, [ebp+var_14]
		push	eax
		mov	ecx, 4
		mov	edx, 1
		mov	eax, [ebp+var_C]
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		mov	eax, [ebp+var_14]
		lea	edx, [ebp+var_10]
		call	sub_14130
		mov	edx, [ebp+var_10]
		mov	eax, [ebp+var_8]
		call	@System@@LStrCat$qqrv ;	System::__linkproc__ LStrCat(void)
		mov	eax, [ebp+var_8]
		lea	eax, [ebp+var_C]
		mov	ecx, 4
		mov	edx, 1
		call	sub_12038


loc_13B0C:				; CODE XREF: sub_13A98+31j
		cmp	[ebp+var_C], 0
		jnz	short loc_13ACB
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_13B34


loc_13B1F:				; CODE XREF: sub_13A98+9Aj
		lea	eax, [ebp+var_14]
		mov	edx, 3
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_13B2D:				; DATA XREF: sub_13A98+13o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_13B1F
; ---------------------------------------------------------------------------


loc_13B34:				; CODE XREF: sub_13A98+94j
					; DATA XREF: sub_13A98+82o
		mov	esp, ebp
		pop	ebp
		retn
sub_13A98	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_13B38	proc near		; CODE XREF: sub_13C28+57p

var_1E		= word ptr -1Eh
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= word ptr -10h
var_E		= word ptr -0Eh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE0h
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	[ebp+var_14], 45h
		mov	eax, [ebp+var_C]
		mov	edx, [ebp+var_4]
		call	sub_11C54
		mov	[ebp+var_14], 29Ah
		mov	ax, word ptr [ebp+var_8]
		mov	[ebp+var_10], ax
		dec	[ebp+var_14]
		mov	eax, [ebp+var_C]
		mov	eax, [eax]
		call	sub_11DF4
		test	ax, ax
		jbe	loc_13C1B
		mov	[ebp+var_1E], ax
		mov	[ebp+var_E], 1


loc_13B88:				; CODE XREF: sub_13B38+DDj
		mov	[ebp+var_14], 234h
		movzx	eax, [ebp+var_E]
		mov	edx, [ebp+var_C]
		mov	edx, [edx]
		movzx	eax, byte ptr [edx+eax-1]
		mov	[ebp+var_18], eax
		inc	[ebp+var_14]
		movzx	eax, [ebp+var_10]
		shr	eax, 8
		mov	[ebp+var_1C], eax
		dec	[ebp+var_14]
		mov	eax, [ebp+var_C]
		call	sub_11FC4
		movzx	edx, [ebp+var_E]
		mov	cl, byte ptr [ebp+var_18]
		xor	cl, byte ptr [ebp+var_1C]
		mov	[eax+edx-1], cl
		inc	[ebp+var_14]
		dec	[ebp+var_14]
		movzx	eax, [ebp+var_E]
		mov	edx, [ebp+var_4]
		movzx	eax, byte ptr [edx+eax-1]
		movzx	edx, [ebp+var_10]
		add	eax, edx
		mov	[ebp+var_18], eax
		mov	[ebp+var_14], 258h
		imul	eax, [ebp+var_18], 0CE6Dh
		mov	[ebp+var_1C], eax
		dec	[ebp+var_14]
		mov	ax, word ptr [ebp+var_1C]
		mov	[ebp+var_10], ax
		mov	[ebp+var_14], 135h
		add	[ebp+var_10], 58BFh
		dec	[ebp+var_14]
		inc	[ebp+var_E]
		dec	[ebp+var_1E]
		jnz	loc_13B88


loc_13C1B:				; CODE XREF: sub_13B38+40j
		mov	[ebp+var_14], 355h
		mov	esp, ebp
		pop	ebp
		retn
sub_13B38	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_13C28	proc near		; CODE XREF: sub_1432C+3Fp

var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE8h
		push	ebx
		xor	ebx, ebx
		mov	[ebp+var_14], ebx
		mov	[ebp+var_18], ebx
		mov	[ebp+var_10], ebx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_13C9F
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	eax, [ebp+var_18]
		xor	ecx, ecx
		mov	edx, [ebp+var_4]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_18]
		lea	edx, [ebp+var_14]
		call	sub_13A98
		mov	edx, [ebp+var_14]
		lea	eax, [ebp+var_10]
		xor	ecx, ecx
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	ecx, [ebp+var_C]
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_10]
		call	sub_13B38
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_13CA6


loc_13C91:				; CODE XREF: sub_13C28+7Cj
		lea	eax, [ebp+var_18]
		mov	edx, 3
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_13C9F:				; DATA XREF: sub_13C28+1Eo
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_13C91
; ---------------------------------------------------------------------------


loc_13CA6:				; CODE XREF: sub_13C28+76j
					; DATA XREF: sub_13C28+64o
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_13C28	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_13CAC	proc near		; CODE XREF: sub_13F40+56p

var_6C		= byte ptr -6Ch
var_64		= byte ptr -64h
var_60		= byte ptr -60h
var_5C		= byte ptr -5Ch
var_58		= byte ptr -58h
var_54		= byte ptr -54h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFF94h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		mov	[ebp+var_10], eax
		mov	[ebp+var_C], 41h


loc_13CC4:				; CODE XREF: sub_13CAC+2Cj
		mov	eax, [ebp+var_C]
		mov	edx, [ebp+var_10]
		mov	[ebp+edx+var_54], al
		inc	[ebp+var_10]
		inc	[ebp+var_C]
		cmp	[ebp+var_C], 5Bh
		jnz	short loc_13CC4
		mov	[ebp+var_C], 61h


loc_13CE1:				; CODE XREF: sub_13CAC+49j
		mov	eax, [ebp+var_C]
		mov	edx, [ebp+var_10]
		mov	[ebp+edx+var_54], al
		inc	[ebp+var_10]
		inc	[ebp+var_C]
		cmp	[ebp+var_C], 7Bh
		jnz	short loc_13CE1
		mov	[ebp+var_C], 30h


loc_13CFE:				; CODE XREF: sub_13CAC+66j
		mov	eax, [ebp+var_C]
		mov	edx, [ebp+var_10]
		mov	[ebp+edx+var_54], al
		inc	[ebp+var_10]
		inc	[ebp+var_C]
		cmp	[ebp+var_C], 3Ah
		jnz	short loc_13CFE
		mov	eax, [ebp+var_10]
		mov	[ebp+eax+var_54], 2Bh
		inc	[ebp+var_10]
		mov	eax, [ebp+var_10]
		mov	[ebp+eax+var_54], 2Fh
		xor	eax, eax
		mov	[ebp+var_C], eax
		sub	[ebp+var_14], 2Dh
		mov	eax, [ebp+var_4]
		call	sub_11DF4
		push	eax
		mov	eax, [ebp+var_4]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		lea	edx, [ebp+var_C]
		pop	ecx
		call	sub_11210
		mov	eax, [ebp+var_4]
		call	sub_11DF4
		dec	eax
		jz	short loc_13D64
		dec	eax
		jz	short loc_13DC9
		dec	eax
		jz	loc_13E66
		jmp	loc_13F36
; ---------------------------------------------------------------------------


loc_13D64:				; CODE XREF: sub_13CAC+A7j
		lea	eax, [ebp+var_58]
		mov	edx, [ebp+var_C]
		and	edx, 8000003Fh
		jns	short loc_13D77
		dec	edx
		or	edx, 0FFFFFFC0h
		inc	edx


loc_13D77:				; CODE XREF: sub_13CAC+C4j
		mov	dl, [ebp+edx+var_54]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_58]
		lea	eax, [ebp+var_5C]
		call	sub_112C8
		lea	eax, [ebp+var_60]
		mov	edx, [ebp+var_C]
		shr	edx, 6
		and	edx, 8000003Fh
		jns	short loc_13DA2
		dec	edx
		or	edx, 0FFFFFFC0h
		inc	edx


loc_13DA2:				; CODE XREF: sub_13CAC+EFj
		mov	dl, [ebp+edx+var_54]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_60]
		lea	eax, [ebp+var_5C]
		mov	cl, 2
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_5C]
		mov	eax, [ebp+var_8]
		call	unknown_libname_9 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		jmp	loc_13F36
; ---------------------------------------------------------------------------


loc_13DC9:				; CODE XREF: sub_13CAC+AAj
		lea	eax, [ebp+var_58]
		mov	edx, [ebp+var_C]
		and	edx, 8000003Fh
		jns	short loc_13DDC
		dec	edx
		or	edx, 0FFFFFFC0h
		inc	edx


loc_13DDC:				; CODE XREF: sub_13CAC+129j
		mov	dl, [ebp+edx+var_54]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_58]
		lea	eax, [ebp+var_5C]
		call	sub_112C8
		lea	eax, [ebp+var_60]
		mov	edx, [ebp+var_C]
		shr	edx, 6
		and	edx, 8000003Fh
		jns	short loc_13E07
		dec	edx
		or	edx, 0FFFFFFC0h
		inc	edx


loc_13E07:				; CODE XREF: sub_13CAC+154j
		mov	dl, [ebp+edx+var_54]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_60]
		lea	eax, [ebp+var_5C]
		mov	cl, 2
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_5C]
		lea	eax, [ebp+var_64]
		call	sub_112C8
		lea	eax, [ebp+var_60]
		mov	edx, [ebp+var_C]
		shr	edx, 0Ch
		and	edx, 8000003Fh
		jns	short loc_13E3F
		dec	edx
		or	edx, 0FFFFFFC0h
		inc	edx


loc_13E3F:				; CODE XREF: sub_13CAC+18Cj
		mov	dl, [ebp+edx+var_54]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_60]
		lea	eax, [ebp+var_64]
		mov	cl, 3
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_64]
		mov	eax, [ebp+var_8]
		call	unknown_libname_9 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		jmp	loc_13F36
; ---------------------------------------------------------------------------


loc_13E66:				; CODE XREF: sub_13CAC+ADj
		lea	eax, [ebp+var_58]
		mov	edx, [ebp+var_C]
		and	edx, 8000003Fh
		jns	short loc_13E79
		dec	edx
		or	edx, 0FFFFFFC0h
		inc	edx


loc_13E79:				; CODE XREF: sub_13CAC+1C6j
		mov	dl, [ebp+edx+var_54]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_58]
		lea	eax, [ebp+var_5C]
		call	sub_112C8
		lea	eax, [ebp+var_60]
		mov	edx, [ebp+var_C]
		shr	edx, 6
		and	edx, 8000003Fh
		jns	short loc_13EA4
		dec	edx
		or	edx, 0FFFFFFC0h
		inc	edx


loc_13EA4:				; CODE XREF: sub_13CAC+1F1j
		mov	dl, [ebp+edx+var_54]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_60]
		lea	eax, [ebp+var_5C]
		mov	cl, 2
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_5C]
		lea	eax, [ebp+var_64]
		call	sub_112C8
		lea	eax, [ebp+var_60]
		mov	edx, [ebp+var_C]
		shr	edx, 0Ch
		and	edx, 8000003Fh
		jns	short loc_13EDC
		dec	edx
		or	edx, 0FFFFFFC0h
		inc	edx


loc_13EDC:				; CODE XREF: sub_13CAC+229j
		mov	dl, [ebp+edx+var_54]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_60]
		lea	eax, [ebp+var_64]
		mov	cl, 3
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_64]
		lea	eax, [ebp+var_6C]
		call	sub_112C8
		lea	eax, [ebp+var_60]
		mov	edx, [ebp+var_C]
		shr	edx, 12h
		and	edx, 8000003Fh
		jns	short loc_13F14
		dec	edx
		or	edx, 0FFFFFFC0h
		inc	edx


loc_13F14:				; CODE XREF: sub_13CAC+261j
		mov	dl, [ebp+edx+var_54]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_60]
		lea	eax, [ebp+var_6C]
		mov	cl, 4
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_6C]
		mov	eax, [ebp+var_8]
		call	unknown_libname_9 ; BDS	2005-2006 and Delphi6-7	Visual Component Library


loc_13F36:				; CODE XREF: sub_13CAC+B3j
					; sub_13CAC+118j ...
		add	[ebp+var_14], 1Fh
		mov	esp, ebp
		pop	ebp
		retn
sub_13CAC	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_13F40	proc near		; CODE XREF: sub_140D0+39p

var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE8h
		xor	ecx, ecx
		mov	[ebp+var_14], ecx
		mov	[ebp+var_18], ecx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_13FE4
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	eax, [ebp+var_C]
		mov	edx, [ebp+var_4]
		call	sub_11C98
		mov	eax, [ebp+var_8]
		call	sub_11C00
		jmp	short loc_13FBB
; ---------------------------------------------------------------------------


loc_13F7A:				; CODE XREF: sub_13F40+7Fj
		lea	eax, [ebp+var_18]
		push	eax
		mov	ecx, 3
		mov	edx, 1
		mov	eax, [ebp+var_C]
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		mov	eax, [ebp+var_18]
		lea	edx, [ebp+var_14]
		call	sub_13CAC
		mov	edx, [ebp+var_14]
		mov	eax, [ebp+var_8]
		call	@System@@LStrCat$qqrv ;	System::__linkproc__ LStrCat(void)
		mov	eax, [ebp+var_8]
		lea	eax, [ebp+var_C]
		mov	ecx, 3
		mov	edx, 1
		call	sub_12038


loc_13FBB:				; CODE XREF: sub_13F40+38j
		cmp	[ebp+var_C], 0
		jnz	short loc_13F7A
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_13FEB


loc_13FCE:				; CODE XREF: sub_13F40+A9j
		lea	eax, [ebp+var_18]
		mov	edx, 2
		call	sub_11C24
		lea	eax, [ebp+var_C]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_13FE4:				; DATA XREF: sub_13F40+1Ao
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_13FCE
; ---------------------------------------------------------------------------


loc_13FEB:				; CODE XREF: sub_13F40+A3j
					; DATA XREF: sub_13F40+89o
		mov	esp, ebp
		pop	ebp
		retn
sub_13F40	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_13FF0	proc near		; CODE XREF: sub_140D0+2Ep

var_1E		= word ptr -1Eh
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= word ptr -14h
var_12		= word ptr -12h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_6		= word ptr -6
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE0h
		mov	[ebp+var_C], ecx
		mov	[ebp+var_6], dx
		mov	[ebp+var_4], eax
		inc	[ebp+var_10]
		mov	eax, [ebp+var_C]
		mov	edx, [ebp+var_4]
		call	sub_11C54
		add	[ebp+var_10], 47h
		mov	ax, [ebp+var_6]
		mov	[ebp+var_14], ax
		mov	[ebp+var_10], 1D5h
		mov	eax, [ebp+var_C]
		mov	eax, [eax]
		call	sub_11DF4
		test	ax, ax
		jbe	loc_140C7
		mov	[ebp+var_1E], ax
		mov	[ebp+var_12], 1


loc_1403E:				; CODE XREF: sub_13FF0+D1j
		inc	[ebp+var_10]
		movzx	eax, [ebp+var_12]
		mov	edx, [ebp+var_C]
		mov	edx, [edx]
		movzx	eax, byte ptr [edx+eax-1]
		mov	[ebp+var_18], eax
		dec	[ebp+var_10]
		movzx	eax, [ebp+var_14]
		shr	eax, 8
		mov	[ebp+var_1C], eax
		add	[ebp+var_10], 0
		mov	eax, [ebp+var_C]
		call	sub_11FC4
		movzx	edx, [ebp+var_12]
		mov	cl, byte ptr [ebp+var_18]
		xor	cl, byte ptr [ebp+var_1C]
		mov	[eax+edx-1], cl
		sub	[ebp+var_10], 0Bh
		movzx	eax, [ebp+var_12]
		mov	edx, [ebp+var_C]
		mov	edx, [edx]
		movzx	eax, byte ptr [edx+eax-1]
		movzx	edx, [ebp+var_14]
		add	eax, edx
		mov	[ebp+var_18], eax
		inc	[ebp+var_10]
		mov	[ebp+var_1C], 0CE6Dh
		mov	[ebp+var_10], 111h
		mov	ax, word ptr [ebp+var_18]
		imul	word ptr [ebp+var_1C]
		add	ax, 58BFh
		mov	[ebp+var_14], ax
		add	[ebp+var_10], 0Eh
		inc	[ebp+var_12]
		dec	[ebp+var_1E]
		jnz	loc_1403E


loc_140C7:				; CODE XREF: sub_13FF0+3Ej
		sub	[ebp+var_10], 0Fh
		mov	esp, ebp
		pop	ebp
		retn
sub_13FF0	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_140D0	proc near		; CODE XREF: sub_165C4+ACp
					; sub_165C4+37Fp ...

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_6		= word ptr -6
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF0h
		push	ebx
		xor	ebx, ebx
		mov	[ebp+var_10], ebx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_6], dx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_14124
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	ecx, [ebp+var_10]
		mov	dx, [ebp+var_6]
		mov	eax, [ebp+var_4]
		call	sub_13FF0
		mov	eax, [ebp+var_10]
		mov	edx, [ebp+var_C]
		call	sub_13F40
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_1412B


loc_1411B:				; CODE XREF: sub_140D0+59j
		lea	eax, [ebp+var_10]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_14124:				; DATA XREF: sub_140D0+19o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_1411B
; ---------------------------------------------------------------------------


loc_1412B:				; CODE XREF: sub_140D0+53j
					; DATA XREF: sub_140D0+46o
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_140D0	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14130	proc near		; CODE XREF: sub_13A98+4Fp

var_111		= byte ptr -111h
var_E6		= byte ptr -0E6h
var_E2		= byte ptr -0E2h
var_11		= byte ptr -11h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFEECh
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	[ebp+var_11], 0


loc_14143:				; CODE XREF: sub_14130+27j
		xor	eax, eax
		mov	al, [ebp+var_11]
		mov	[ebp+eax+var_111], 0
		inc	[ebp+var_11]
		cmp	[ebp+var_11], 0
		jnz	short loc_14143
		mov	[ebp+var_E6], 3Eh
		mov	[ebp+var_E2], 3Fh
		mov	[ebp+var_10], 30h


loc_1416E:				; CODE XREF: sub_14130+5Aj
		mov	al, byte ptr [ebp+var_10]
		add	al, 4
		mov	edx, [ebp+var_10]
		and	edx, 0FFh
		mov	[ebp+edx+var_111], al
		inc	[ebp+var_10]
		cmp	[ebp+var_10], 3Ah
		jnz	short loc_1416E
		mov	[ebp+var_10], 42h


loc_14193:				; CODE XREF: sub_14130+7Fj
		mov	al, byte ptr [ebp+var_10]
		sub	al, 41h
		mov	edx, [ebp+var_10]
		and	edx, 0FFh
		mov	[ebp+edx+var_111], al
		inc	[ebp+var_10]
		cmp	[ebp+var_10], 5Bh
		jnz	short loc_14193
		mov	[ebp+var_10], 61h


loc_141B8:				; CODE XREF: sub_14130+A4j
		mov	al, byte ptr [ebp+var_10]
		sub	al, 47h
		mov	edx, [ebp+var_10]
		and	edx, 0FFh
		mov	[ebp+edx+var_111], al
		inc	[ebp+var_10]
		cmp	[ebp+var_10], 7Bh
		jnz	short loc_141B8
		mov	eax, [ebp+var_4]
		call	sub_11DF4
		sub	eax, 2
		jz	short loc_141F2
		dec	eax
		jz	short loc_14247
		dec	eax
		jz	loc_142AD
		jmp	loc_14325
; ---------------------------------------------------------------------------


loc_141F2:				; CODE XREF: sub_14130+B1j
		mov	eax, [ebp+var_4]
		movzx	eax, byte ptr [eax]
		movzx	eax, [ebp+eax+var_111]
		mov	edx, [ebp+var_4]
		movzx	edx, byte ptr [edx+1]
		movzx	edx, [ebp+edx+var_111]
		shl	edx, 6
		add	eax, edx
		mov	[ebp+var_C], eax
		mov	eax, [ebp+var_8]
		mov	edx, 1
		call	sub_120C8
		mov	eax, [ebp+var_8]
		mov	eax, [eax]
		call	sub_11DF4
		push	eax
		mov	eax, [ebp+var_8]
		call	sub_11FC4
		mov	edx, eax
		lea	eax, [ebp+var_C]
		pop	ecx
		call	sub_11210
		jmp	loc_14325
; ---------------------------------------------------------------------------


loc_14247:				; CODE XREF: sub_14130+B4j
		mov	eax, [ebp+var_4]
		movzx	eax, byte ptr [eax]
		movzx	eax, [ebp+eax+var_111]
		mov	edx, [ebp+var_4]
		movzx	edx, byte ptr [edx+1]
		movzx	edx, [ebp+edx+var_111]
		shl	edx, 6
		add	eax, edx
		mov	edx, [ebp+var_4]
		movzx	edx, byte ptr [edx+2]
		movzx	edx, [ebp+edx+var_111]
		shl	edx, 0Ch
		add	eax, edx
		mov	[ebp+var_C], eax
		mov	eax, [ebp+var_8]
		mov	edx, 2
		call	sub_120C8
		mov	eax, [ebp+var_8]
		mov	eax, [eax]
		call	sub_11DF4
		push	eax
		mov	eax, [ebp+var_8]
		call	sub_11FC4
		mov	edx, eax
		lea	eax, [ebp+var_C]
		pop	ecx
		call	sub_11210
		jmp	short loc_14325
; ---------------------------------------------------------------------------


loc_142AD:				; CODE XREF: sub_14130+B7j
		mov	eax, [ebp+var_4]
		movzx	eax, byte ptr [eax]
		movzx	eax, [ebp+eax+var_111]
		mov	edx, [ebp+var_4]
		movzx	edx, byte ptr [edx+1]
		movzx	edx, [ebp+edx+var_111]
		shl	edx, 6
		add	eax, edx
		mov	edx, [ebp+var_4]
		movzx	edx, byte ptr [edx+2]
		movzx	edx, [ebp+edx+var_111]
		shl	edx, 0Ch
		add	eax, edx
		mov	edx, [ebp+var_4]
		movzx	edx, byte ptr [edx+3]
		movzx	edx, [ebp+edx+var_111]
		shl	edx, 12h
		add	eax, edx
		mov	[ebp+var_C], eax
		mov	eax, [ebp+var_8]
		mov	edx, 3
		call	sub_120C8
		mov	eax, [ebp+var_8]
		mov	eax, [eax]
		call	sub_11DF4
		push	eax
		mov	eax, [ebp+var_8]
		call	sub_11FC4
		mov	edx, eax
		lea	eax, [ebp+var_C]
		pop	ecx
		call	sub_11210


loc_14325:				; CODE XREF: sub_14130+BDj
					; sub_14130+112j ...
		mov	esp, ebp
		pop	ebp
		retn
sub_14130	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_1432C	proc near		; CODE XREF: sub_15DC4+8Bp
					; sub_17300+37p ...

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF0h
		push	ebx
		xor	ebx, ebx
		mov	[ebp+var_10], ebx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		lea	eax, [ebp+var_C]
		call	@System@@WStrAddRef$qqrr17System@WideString ; System::__linkproc__ WStrAddRef(System::WideString &)
		xor	eax, eax
		push	ebp
		push	offset loc_1438E
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	eax, [ebp+var_10]
		mov	edx, [ebp+var_4]
		call	@System@@LStrFromWStr$qqrr17System@AnsiStringx17System@WideString ; System::__linkproc__ LStrFromWStr(System::AnsiString &,System::WideString)
		mov	eax, [ebp+var_10]
		mov	ecx, [ebp+arg_0]
		mov	edx, [ebp+var_8]
		call	sub_13C28
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_14395


loc_1437D:				; CODE XREF: sub_1432C+67j
		lea	eax, [ebp+var_10]
		call	sub_11C00
		lea	eax, [ebp+var_C]
		call	@System@@WStrClr$qqrpv ; System::__linkproc__ WStrClr(void *)
		retn
; ---------------------------------------------------------------------------


loc_1438E:				; DATA XREF: sub_1432C+20o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_1437D
; ---------------------------------------------------------------------------


loc_14395:				; CODE XREF: sub_1432C+61j
					; DATA XREF: sub_1432C+4Co
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn	4
sub_1432C	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_1439C	proc near		; DATA XREF: CODE:0001A0ACo
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_143C1
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C228
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_143C8


loc_143C0:				; CODE XREF: sub_1439C+2Aj
		retn
; ---------------------------------------------------------------------------


loc_143C1:				; DATA XREF: sub_1439C+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_143C0
; ---------------------------------------------------------------------------


loc_143C8:				; CODE XREF: sub_1439C:loc_143C0j
					; DATA XREF: sub_1439C+1Fo
		pop	ebp
		retn
sub_1439C	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_143CC	proc near		; DATA XREF: CODE:0001A0A8o
		sub	ds:dword_1C228,	1
		retn
sub_143CC	endp

; ---------------------------------------------------------------------------
off_143D4	dd offset dword_14420	; DATA XREF: sub_16B44+6Er
		align 10h
		dd offset dword_14420
		dd 4 dup(0)
		dd offset aMqjefgpyaj	; "mqjefgpyaj"
		dd 20h
		dd offset off_1100C
		dd offset @System@TObject@SafeCallException$qqrp14System@TObjectpv ; System::TObject::SafeCallException(System::TObject	*,void *)
		dd offset nullsub_2
		dd offset nullsub_3
		dd offset sub_1149C
		dd offset nullsub_4
		dd offset sub_11388
		dd offset sub_1139C
		dd offset sub_144E0
dword_14420	dd 0Eh,	20000h						; CODE:000143E0o
		db 2 dup(0)
		dd offset off_11000
unknown_libname_15 dw 0Ch
		db 2 dup(0)
		dd offset off_11000
		dw 1Ch
		db 2 dup(0)
aMqjefgpyaj	db 10,'mqjefgpyaj'      ; DATA XREF: CODE:000143F4o
		align 4
; [00000096 BYTES: COLLAPSED FUNCTION sub_14448. PRESS KEYPAD "+" TO EXPAND]
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_144E0	proc near		; DATA XREF: CODE:0001441Co

var_5		= byte ptr -5
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		call	@System@@BeforeDestruction$qqrp14System@TObjectzc ; System::__linkproc__ BeforeDestruction(System::TObject *,signed char)
		mov	[ebp+var_5], dl
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		mov	eax, [eax+18h]
		call	sub_13100
		cmp	[ebp+var_5], 0
		jle	short loc_1450A
		mov	eax, [ebp+var_4]
		call	@System@@ClassDestroy$qqrp14System@TObject ; System::__linkproc__ ClassDestroy(System::TObject *)


loc_1450A:				; CODE XREF: sub_144E0+20j
		pop	ecx
		pop	ecx
		pop	ebp
		retn
sub_144E0	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

; int __cdecl sub_14510(struct _EXCEPTION_POINTERS ExceptionInfo, int)

sub_14510	proc near		; CODE XREF: sub_14448+4Dp

var_8		= byte ptr -8
var_4		= dword	ptr -4
ExceptionInfo	= _EXCEPTION_POINTERS ptr  8
arg_8		= dword	ptr  10h

; FUNCTION CHUNK AT 0001161C SIZE 00000103 BYTES
; FUNCTION CHUNK AT 0001173F SIZE 00000006 BYTES

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_145F5
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, [ebp+var_4]
		add	eax, 4
		push	eax
		mov	eax, [ebp+var_4]
		mov	eax, [eax+1Ch]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, ds:off_1B2F0
		mov	eax, [eax]
		call	eax
		mov	edx, [ebp+var_4]
		mov	[edx+8], eax
		mov	eax, [ebp+var_4]
		cmp	dword ptr [eax+8], 0
		jg	short loc_14562
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	loc_145FF
; ---------------------------------------------------------------------------


loc_14562:				; CODE XREF: sub_14510+43j
		mov	eax, [ebp+var_4]
		mov	edx, [eax+8]
		mov	eax, [ebp+var_4]
		add	eax, 0Ch
		call	sub_120C8
		mov	eax, [ebp+var_4]
		mov	eax, [eax+0Ch]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_4]
		mov	eax, [eax+8]
		push	eax
		mov	eax, [ebp+var_4]
		mov	eax, [eax+4]
		push	eax
		mov	eax, [ebp+var_4]
		mov	eax, [eax+1Ch]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, ds:off_1B0CC
		mov	eax, [eax]
		call	eax
		test	eax, eax
		jnz	short loc_145B0
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_145FF
; ---------------------------------------------------------------------------


loc_145B0:				; CODE XREF: sub_14510+94j
		lea	eax, [ebp+var_8]
		push	eax
		mov	eax, [ebp+var_4]
		add	eax, 10h
		push	eax
		mov	eax, ds:off_1B27C
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_4]
		mov	eax, [eax+0Ch]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, ds:off_1B240
		mov	eax, [eax]
		call	eax
		test	eax, eax
		jnz	short loc_145EB
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_145FF
; ---------------------------------------------------------------------------


loc_145EB:				; CODE XREF: sub_14510+CFj
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_145FF
; ---------------------------------------------------------------------------


loc_145F5:				; DATA XREF: sub_14510+Fo
		jmp	loc_1161C
; ---------------------------------------------------------------------------
		call	@System@@DoneExcept$qqrv ; System::__linkproc__	DoneExcept(void)


loc_145FF:				; CODE XREF: sub_14510+4Dj
					; sub_14510+9Ej ...
		pop	edi
		pop	esi
		pop	ebx
		pop	ecx
		pop	ecx
		pop	ebp
		retn
sub_14510	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14608	proc near		; CODE XREF: sub_14448+55p

var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_1467E
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, [ebp+var_4]
		mov	eax, [eax+0Ch]
		call	sub_11DF4
		test	eax, eax
		jnz	short loc_1463B
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_14688
; ---------------------------------------------------------------------------


loc_1463B:				; CODE XREF: sub_14608+27j
		lea	eax, [ebp+var_8]
		push	eax
		mov	eax, [ebp+var_4]
		add	eax, 14h
		push	eax
		push	offset dword_14690
		mov	eax, [ebp+var_4]
		mov	eax, [eax+0Ch]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, ds:off_1B240
		mov	eax, [eax]
		call	eax
		test	eax, eax
		jz	short loc_14674
		cmp	[ebp+var_8], 34h
		jnb	short loc_14674
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_14688
; ---------------------------------------------------------------------------


loc_14674:				; CODE XREF: sub_14608+5Aj
					; sub_14608+60j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_14688
; ---------------------------------------------------------------------------


loc_1467E:				; DATA XREF: sub_14608+Fo
		jmp	loc_1161C
; ---------------------------------------------------------------------------
		call	@System@@DoneExcept$qqrv ; System::__linkproc__	DoneExcept(void)


loc_14688:				; CODE XREF: sub_14608+31j
					; sub_14608+6Aj ...
		pop	edi
		pop	esi
		pop	ebx
		pop	ecx
		pop	ecx
		pop	ebp
		retn
sub_14608	endp

; ---------------------------------------------------------------------------
		align 10h
dword_14690	dd 5Ch		
; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14694	proc near		; CODE XREF: sub_148CC+2Dp

var_94		= byte ptr -94h
var_88		= byte ptr -88h
var_7C		= byte ptr -7Ch
var_70		= byte ptr -70h
var_64		= byte ptr -64h
var_5C		= byte ptr -5Ch
var_54		= byte ptr -54h
var_4C		= byte ptr -4Ch
var_44		= byte ptr -44h
var_40		= byte ptr -40h
var_3C		= byte ptr -3Ch
var_38		= byte ptr -38h
var_34		= dword	ptr -34h
var_30		= byte ptr -30h
var_2C		= byte ptr -2Ch
var_28		= dword	ptr -28h
var_24		= byte ptr -24h
var_20		= dword	ptr -20h
var_1C		= byte ptr -1Ch
var_18		= dword	ptr -18h
var_14		= byte ptr -14h
var_F		= byte ptr -0Fh
var_E		= byte ptr -0Eh
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFF6Ch
		push	ebx
		xor	ebx, ebx
		mov	[ebp+var_34], ebx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_148BD
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	[ebp+var_D], 25h
		mov	[ebp+var_E], 64h
		mov	[ebp+var_F], 2Eh
		mov	eax, [ebp+var_C]
		push	eax		; int
		mov	eax, [ebp+var_4]
		call	sub_1294C
		movzx	eax, ax
		mov	dword ptr [ebp+var_30],	eax
		mov	[ebp+var_2C], 0
		movzx	eax, word ptr [ebp+var_4]
		mov	[ebp+var_28], eax
		mov	[ebp+var_24], 0
		mov	eax, [ebp+var_8]
		call	sub_1294C
		movzx	eax, ax
		mov	[ebp+var_20], eax
		mov	[ebp+var_1C], 0
		movzx	eax, word ptr [ebp+var_8]
		mov	[ebp+var_18], eax
		mov	[ebp+var_14], 0
		lea	eax, [ebp+var_30] ; LPCSTR
		push	eax
		lea	eax, [ebp+var_38]
		mov	dl, [ebp+var_D]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_38]
		lea	eax, [ebp+var_3C]
		call	sub_112C8
		lea	eax, [ebp+var_40]
		mov	dl, [ebp+var_E]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_40]
		lea	eax, [ebp+var_3C]
		mov	cl, 2
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_3C]
		lea	eax, [ebp+var_44]
		call	sub_112C8
		lea	eax, [ebp+var_40]
		mov	dl, [ebp+var_F]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_40]
		lea	eax, [ebp+var_44]
		mov	cl, 3
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_44]
		lea	eax, [ebp+var_4C]
		call	sub_112C8
		lea	eax, [ebp+var_40]
		mov	dl, [ebp+var_D]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_40]
		lea	eax, [ebp+var_4C]
		mov	cl, 4
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_4C]
		lea	eax, [ebp+var_54]
		call	sub_112C8
		lea	eax, [ebp+var_40]
		mov	dl, [ebp+var_E]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_40]
		lea	eax, [ebp+var_54]
		mov	cl, 5
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_54]
		lea	eax, [ebp+var_5C]
		call	sub_112C8
		lea	eax, [ebp+var_40]
		mov	dl, [ebp+var_F]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_40]
		lea	eax, [ebp+var_5C]
		mov	cl, 6
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_5C]
		lea	eax, [ebp+var_64]
		call	sub_112C8
		lea	eax, [ebp+var_40]
		mov	dl, [ebp+var_D]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_40]
		lea	eax, [ebp+var_64]
		mov	cl, 7
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_64]
		lea	eax, [ebp+var_70]
		call	sub_112C8
		lea	eax, [ebp+var_40]
		mov	dl, [ebp+var_E]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_40]
		lea	eax, [ebp+var_70]
		mov	cl, 8
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_70]
		lea	eax, [ebp+var_7C]
		call	sub_112C8
		lea	eax, [ebp+var_40]
		mov	dl, [ebp+var_F]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_40]
		lea	eax, [ebp+var_7C]
		mov	cl, 9
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_7C]
		lea	eax, [ebp+var_88]
		call	sub_112C8
		lea	eax, [ebp+var_40]
		mov	dl, [ebp+var_D]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_40]
		lea	eax, [ebp+var_88]
		mov	cl, 0Ah
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_88]
		lea	eax, [ebp+var_94]
		call	sub_112C8
		lea	eax, [ebp+var_40]
		mov	dl, [ebp+var_E]
		mov	[eax+1], dl
		mov	byte ptr [eax],	1
		lea	edx, [ebp+var_40]
		lea	eax, [ebp+var_94]
		mov	cl, 0Bh
		call	@System@@PStrNCat$qqrv ; System::__linkproc__ PStrNCat(void)
		lea	edx, [ebp+var_94]
		lea	eax, [ebp+var_34]
		call	unknown_libname_9 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	eax, [ebp+var_34]
		mov	ecx, 3
		pop	edx
		call	sub_1333C
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_148C4


loc_148B4:				; CODE XREF: sub_14694+22Ej
		lea	eax, [ebp+var_34]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_148BD:				; DATA XREF: sub_14694+1Bo
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_148B4
; ---------------------------------------------------------------------------


loc_148C4:				; CODE XREF: sub_14694+228j
					; DATA XREF: sub_14694+21Bo
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_14694	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_148CC	proc near		; CODE XREF: sub_16B44+81p

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF4h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		cmp	dword ptr [eax+14h], 0
		jz	short loc_148FE
		mov	eax, [ebp+var_4]
		mov	eax, [eax+14h]
		mov	[ebp+var_C], eax
		mov	ecx, [ebp+var_8]
		mov	eax, [ebp+var_C]
		mov	edx, [eax+0Ch]
		mov	eax, [ebp+var_C]
		mov	eax, [eax+8]
		call	sub_14694


loc_148FE:				; CODE XREF: sub_148CC+13j
		mov	esp, ebp
		pop	ebp
		retn
sub_148CC	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14904	proc near		; DATA XREF: CODE:0001A0B4o
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_14929
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C22C
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_14930


loc_14928:				; CODE XREF: sub_14904+2Aj
		retn
; ---------------------------------------------------------------------------


loc_14929:				; DATA XREF: sub_14904+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_14928
; ---------------------------------------------------------------------------


loc_14930:				; CODE XREF: sub_14904:loc_14928j
					; DATA XREF: sub_14904+1Fo
		pop	ebp
		retn
sub_14904	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_14934	proc near		; DATA XREF: CODE:0001A0B0o
		sub	ds:dword_1C22C,	1
		retn
sub_14934	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_1493C	proc near		; DATA XREF: CODE:0001A0BCo
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_14961
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C230
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_14968


loc_14960:				; CODE XREF: sub_1493C+2Aj
		retn
; ---------------------------------------------------------------------------


loc_14961:				; DATA XREF: sub_1493C+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_14960
; ---------------------------------------------------------------------------


loc_14968:				; CODE XREF: sub_1493C:loc_14960j
					; DATA XREF: sub_1493C+1Fo
		pop	ebp
		retn
sub_1493C	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1496C	proc near		; DATA XREF: CODE:0001A0B8o
		sub	ds:dword_1C230,	1
		retn
sub_1496C	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14974	proc near		; DATA XREF: CODE:0001A0C4o
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_14999
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C234
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_149A0


loc_14998:				; CODE XREF: sub_14974+2Aj
		retn
; ---------------------------------------------------------------------------


loc_14999:				; DATA XREF: sub_14974+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_14998
; ---------------------------------------------------------------------------


loc_149A0:				; CODE XREF: sub_14974:loc_14998j
					; DATA XREF: sub_14974+1Fo
		pop	ebp
		retn
sub_14974	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_149A4	proc near		; DATA XREF: CODE:0001A0C0o
		sub	ds:dword_1C234,	1
		retn
sub_149A4	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_149AC	proc near		; DATA XREF: CODE:0001A0CCo
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_149D1
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C238
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_149D8


loc_149D0:				; CODE XREF: sub_149AC+2Aj
		retn
; ---------------------------------------------------------------------------


loc_149D1:				; DATA XREF: sub_149AC+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_149D0
; ---------------------------------------------------------------------------


loc_149D8:				; CODE XREF: sub_149AC:loc_149D0j
					; DATA XREF: sub_149AC+1Fo
		pop	ebp
		retn
sub_149AC	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_149DC	proc near		; DATA XREF: CODE:0001A0C8o
		sub	ds:dword_1C238,	1
		retn
sub_149DC	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_149E4	proc near		; CODE XREF: sub_14A20+2Cp
					; sub_14B48+2Cp

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_1		= byte ptr -1

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF4h
		mov	[ebp+var_8], edx
		mov	[ebp+var_1], al
		mov	eax, [ebp+var_8]
		call	sub_11DF4
		cmp	eax, 1
		jl	short loc_14A18
		mov	[ebp+var_C], eax


loc_14A00:				; CODE XREF: sub_149E4+32j
		mov	eax, [ebp+var_C]
		mov	edx, [ebp+var_8]
		mov	al, [edx+eax-1]
		cmp	al, [ebp+var_1]
		jz	short loc_14A18
		dec	[ebp+var_C]
		cmp	[ebp+var_C], 0
		jnz	short loc_14A00


loc_14A18:				; CODE XREF: sub_149E4+17j
					; sub_149E4+29j
		mov	eax, [ebp+var_C]
		mov	esp, ebp
		pop	ebp
		retn
sub_149E4	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14A20	proc near		; CODE XREF: sub_14CAC+51p
					; sub_14D38+53p ...

var_20		= dword	ptr -20h
var_1C		= byte ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE0h
		push	ebx
		xor	ebx, ebx
		mov	[ebp+var_14], ebx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_14B37
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	[ebp+var_D], 0
		mov	edx, [ebp+var_8]
		mov	al, 5Ch
		call	sub_149E4
		mov	[ebp+var_18], eax
		cmp	[ebp+var_18], 0
		jle	loc_14B21
		lea	eax, [ebp+var_14]
		push	eax
		mov	ecx, [ebp+var_18]
		dec	ecx
		mov	edx, 1
		mov	eax, [ebp+var_8]
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		lea	eax, [ebp+var_1C]
		push	eax
		lea	eax, [ebp+var_20]
		push	eax
		push	0
		push	20006h
		push	0
		push	0
		push	0
		mov	eax, [ebp+var_14]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_4]
		push	eax
		mov	eax, ds:off_1B2A8
		mov	eax, [eax]
		call	eax
		test	eax, eax
		jnz	short loc_14B21
		lea	eax, [ebp+var_14]
		push	eax
		mov	eax, [ebp+var_8]
		call	sub_11DF4
		mov	ecx, eax
		sub	ecx, [ebp+var_18]
		mov	edx, [ebp+var_18]
		inc	edx
		mov	eax, [ebp+var_8]
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		cmp	[ebp+var_14], 0
		jnz	short loc_14AEA
		mov	eax, [ebp+arg_0]
		push	eax
		mov	eax, [ebp+arg_4]
		push	eax
		mov	eax, [ebp+var_C]
		push	eax
		push	0
		push	0
		mov	eax, [ebp+var_20]
		push	eax
		mov	eax, ds:off_1B198
		mov	eax, [eax]
		call	eax
		test	eax, eax
		setz	[ebp+var_D]
		jmp	short loc_14B14
; ---------------------------------------------------------------------------


loc_14AEA:				; CODE XREF: sub_14A20+A3j
		mov	eax, [ebp+arg_0]
		push	eax
		mov	eax, [ebp+arg_4]
		push	eax
		mov	eax, [ebp+var_C]
		push	eax
		push	0
		mov	eax, [ebp+var_14]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_20]
		push	eax
		mov	eax, ds:off_1B198
		mov	eax, [eax]
		call	eax
		test	eax, eax
		setz	[ebp+var_D]


loc_14B14:				; CODE XREF: sub_14A20+C8j
		mov	eax, [ebp+var_20]
		push	eax
		mov	eax, ds:off_1B2C8
		mov	eax, [eax]
		call	eax


loc_14B21:				; CODE XREF: sub_14A20+38j
					; sub_14A20+80j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_14B3E


loc_14B2E:				; CODE XREF: sub_14A20+11Cj
		lea	eax, [ebp+var_14]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_14B37:				; DATA XREF: sub_14A20+18o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_14B2E
; ---------------------------------------------------------------------------


loc_14B3E:				; CODE XREF: sub_14A20+116j
					; DATA XREF: sub_14A20+109o
		mov	al, [ebp+var_D]
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn	8
sub_14A20	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14B48	proc near		; CODE XREF: sub_14E84+2Ep
					; sub_14EF8+2Ep ...

var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFD4h
		push	ebx
		xor	ebx, ebx
		mov	[ebp+var_14], ebx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_14C9B
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	[ebp+var_D], 0
		mov	edx, [ebp+var_8]
		mov	al, 5Ch
		call	sub_149E4
		mov	[ebp+var_18], eax
		cmp	[ebp+var_18], 0
		jle	loc_14C85
		lea	eax, [ebp+var_14]
		push	eax
		mov	ecx, [ebp+var_18]
		dec	ecx
		mov	edx, 1
		mov	eax, [ebp+var_8]
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		lea	eax, [ebp+var_20]
		push	eax
		push	20019h
		push	0
		mov	eax, [ebp+var_14]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_4]
		push	eax
		mov	eax, ds:off_1B2C4
		mov	eax, [eax]
		call	eax
		test	eax, eax
		jnz	loc_14C85
		lea	eax, [ebp+var_14]
		push	eax
		mov	eax, [ebp+var_8]
		call	sub_11DF4
		mov	ecx, eax
		sub	ecx, [ebp+var_18]
		mov	edx, [ebp+var_18]
		inc	edx
		mov	eax, [ebp+var_8]
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		cmp	[ebp+var_14], 0
		jnz	short loc_14BEE
		xor	eax, eax
		mov	[ebp+var_2C], eax
		jmp	short loc_14BF9
; ---------------------------------------------------------------------------


loc_14BEE:				; CODE XREF: sub_14B48+9Dj
		mov	eax, [ebp+var_14]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	[ebp+var_2C], eax


loc_14BF9:				; CODE XREF: sub_14B48+A4j
		lea	eax, [ebp+var_28]
		push	eax
		push	0
		lea	eax, [ebp+var_1C]
		push	eax
		push	0
		mov	eax, [ebp+var_2C]
		push	eax
		mov	eax, [ebp+var_20]
		push	eax
		mov	eax, ds:off_1B170
		mov	eax, [eax]
		call	eax
		test	eax, eax
		jnz	short loc_14C78
		mov	eax, [ebp+var_28]
		call	sub_1114C
		mov	[ebp+var_24], eax
		lea	eax, [ebp+var_28]
		push	eax
		mov	eax, [ebp+var_24]
		push	eax
		lea	eax, [ebp+var_1C]
		push	eax
		push	0
		mov	eax, [ebp+var_2C]
		push	eax
		mov	eax, [ebp+var_20]
		push	eax
		mov	eax, ds:off_1B170
		mov	eax, [eax]
		call	eax
		test	eax, eax
		jnz	short loc_14C70
		mov	eax, [ebp+var_C]
		cmp	eax, [ebp+var_1C]
		jnz	short loc_14C66
		mov	eax, [ebp+arg_4]
		mov	edx, [ebp+var_24]
		mov	[eax], edx
		mov	eax, [ebp+arg_0]
		mov	edx, [ebp+var_28]
		mov	[eax], edx
		mov	[ebp+var_D], 1
		jmp	short loc_14C78
; ---------------------------------------------------------------------------


loc_14C66:				; CODE XREF: sub_14B48+106j
		mov	eax, [ebp+var_24]
		call	sub_11164
		jmp	short loc_14C78
; ---------------------------------------------------------------------------


loc_14C70:				; CODE XREF: sub_14B48+FEj
		mov	eax, [ebp+var_24]
		call	sub_11164


loc_14C78:				; CODE XREF: sub_14B48+D0j
					; sub_14B48+11Cj ...
		mov	eax, [ebp+var_20]
		push	eax
		mov	eax, ds:off_1B2C8
		mov	eax, [eax]
		call	eax


loc_14C85:				; CODE XREF: sub_14B48+38j
					; sub_14B48+76j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_14CA2


loc_14C92:				; CODE XREF: sub_14B48+158j
		lea	eax, [ebp+var_14]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_14C9B:				; DATA XREF: sub_14B48+18o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_14C92
; ---------------------------------------------------------------------------


loc_14CA2:				; CODE XREF: sub_14B48+152j
					; DATA XREF: sub_14B48+145o
		mov	al, [ebp+var_D]
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn	8
sub_14B48	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14CAC	proc near		; CODE XREF: sub_157D4+62p
					; sub_159C0+B8p ...

var_14		= dword	ptr -14h
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFECh
		push	ebx
		xor	ebx, ebx
		mov	[ebp+var_14], ebx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_14D1B
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	eax, [ebp+var_14]
		mov	ecx, offset dword_14D34
		mov	edx, [ebp+var_C]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_14]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_C]
		call	sub_11DF4
		inc	eax
		push	eax
		mov	ecx, 1
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_4]
		call	sub_14A20
		mov	[ebp+var_D], al
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_14D22


loc_14D12:				; CODE XREF: sub_14CAC+74j
		lea	eax, [ebp+var_14]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_14D1B:				; DATA XREF: sub_14CAC+18o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_14D12
; ---------------------------------------------------------------------------


loc_14D22:				; CODE XREF: sub_14CAC+6Ej
					; DATA XREF: sub_14CAC+61o
		mov	al, [ebp+var_D]
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_14CAC	endp

; ---------------------------------------------------------------------------
		align 4
		dd 0FFFFFFFFh, 1
dword_14D34	dd 0		
; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14D38	proc near		; CODE XREF: sub_198F0+66p r+9Dp

var_14		= dword	ptr -14h
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFECh
		push	ebx
		xor	ebx, ebx
		mov	[ebp+var_14], ebx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_14DA9
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	eax, [ebp+var_14]
		mov	ecx, offset dword_14DC0
		mov	edx, [ebp+var_C]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_14]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_C]
		call	sub_11DF4
		add	eax, 2
		push	eax
		mov	ecx, 7
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_4]
		call	sub_14A20
		mov	[ebp+var_D], al
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_14DB0


loc_14DA0:				; CODE XREF: sub_14D38+76j
		lea	eax, [ebp+var_14]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_14DA9:				; DATA XREF: sub_14D38+18o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_14DA0
; ---------------------------------------------------------------------------


loc_14DB0:				; CODE XREF: sub_14D38+70j
					; DATA XREF: sub_14D38+63o
		mov	al, [ebp+var_D]
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_14D38	endp

; ---------------------------------------------------------------------------
		dd 0FFFFFFFFh, 2
dword_14DC0	dd 0		
; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14DC4	proc near		; CODE XREF: r+267p

var_14		= dword	ptr -14h
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFECh
		push	ebx
		xor	ebx, ebx
		mov	[ebp+var_14], ebx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_14E33
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	eax, [ebp+var_14]
		mov	ecx, offset dword_14E4C
		mov	edx, [ebp+var_C]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_14]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_C]
		call	sub_11DF4
		inc	eax
		push	eax
		mov	ecx, 2
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_4]
		call	sub_14A20
		mov	[ebp+var_D], al
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_14E3A


loc_14E2A:				; CODE XREF: sub_14DC4+74j
		lea	eax, [ebp+var_14]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_14E33:				; DATA XREF: sub_14DC4+18o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_14E2A
; ---------------------------------------------------------------------------


loc_14E3A:				; CODE XREF: sub_14DC4+6Ej
					; DATA XREF: sub_14DC4+61o
		mov	al, [ebp+var_D]
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_14DC4	endp

; ---------------------------------------------------------------------------
		align 4
		dd 0FFFFFFFFh, 1
dword_14E4C	dd 0		
; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14E50	proc near		; CODE XREF: sub_159C0+6Ep

var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF0h
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_C]
		push	eax
		mov	eax, [ebp+arg_0]
		inc	eax
		push	eax
		mov	ecx, 3
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_4]
		call	sub_14A20
		mov	[ebp+var_D], al
		mov	al, [ebp+var_D]
		mov	esp, ebp
		pop	ebp
		retn	4
sub_14E50	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14E84	proc near		; CODE XREF: sub_15864+5Ap

var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE8h
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	[ebp+var_D], 0
		mov	eax, [ebp+var_C]
		call	sub_11C00
		lea	eax, [ebp+var_14]
		push	eax
		lea	eax, [ebp+var_18]
		push	eax
		mov	ecx, 1
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_4]
		call	sub_14B48
		test	al, al
		jz	short loc_14EF0
		dec	[ebp+var_18]
		mov	eax, [ebp+var_C]
		mov	edx, [ebp+var_18]
		call	sub_120C8
		cmp	[ebp+var_18], 0
		jbe	short loc_14EE4
		mov	eax, [ebp+var_C]
		call	sub_11FC4
		mov	edx, eax
		mov	eax, [ebp+var_14]
		mov	ecx, [ebp+var_18]
		call	sub_11210


loc_14EE4:				; CODE XREF: sub_14E84+49j
		mov	eax, [ebp+var_14]
		call	sub_11164
		mov	[ebp+var_D], 1


loc_14EF0:				; CODE XREF: sub_14E84+35j
		mov	al, [ebp+var_D]
		mov	esp, ebp
		pop	ebp
		retn
sub_14E84	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14EF8	proc near		; CODE XREF: sub_198F0+23p r+59p

var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE8h
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	[ebp+var_D], 0
		mov	eax, [ebp+var_C]
		call	sub_11C00
		lea	eax, [ebp+var_14]
		push	eax
		lea	eax, [ebp+var_18]
		push	eax
		mov	ecx, 7
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_4]
		call	sub_14B48
		test	al, al
		jz	short loc_14F64
		dec	[ebp+var_18]
		mov	eax, [ebp+var_C]
		mov	edx, [ebp+var_18]
		call	sub_120C8
		cmp	[ebp+var_18], 0
		jbe	short loc_14F58
		mov	eax, [ebp+var_C]
		call	sub_11FC4
		mov	edx, eax
		mov	eax, [ebp+var_14]
		mov	ecx, [ebp+var_18]
		call	sub_11210


loc_14F58:				; CODE XREF: sub_14EF8+49j
		mov	eax, [ebp+var_14]
		call	sub_11164
		mov	[ebp+var_D], 1


loc_14F64:				; CODE XREF: sub_14EF8+35j
		mov	al, [ebp+var_D]
		mov	esp, ebp
		pop	ebp
		retn
sub_14EF8	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14F6C	proc near		; CODE XREF: sub_158F4+52p

var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE8h
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	[ebp+var_D], 0
		mov	eax, [ebp+var_C]
		call	sub_11C00
		lea	eax, [ebp+var_14]
		push	eax
		lea	eax, [ebp+var_18]
		push	eax
		mov	ecx, 3
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_4]
		call	sub_14B48
		test	al, al
		jz	short loc_14FCF
		mov	eax, [ebp+var_C]
		mov	edx, [ebp+var_18]
		call	sub_120C8
		mov	eax, [ebp+var_C]
		call	sub_11FC4
		mov	edx, eax
		mov	eax, [ebp+var_14]
		mov	ecx, [ebp+var_18]
		call	sub_11210
		mov	eax, [ebp+var_14]
		call	sub_11164
		mov	[ebp+var_D], 1


loc_14FCF:				; CODE XREF: sub_14F6C+35j
		mov	al, [ebp+var_D]
		mov	esp, ebp
		pop	ebp
		retn
sub_14F6C	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_14FD8	proc near		; DATA XREF: CODE:0001A0D4o
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_14FFD
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C23C
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_15004


loc_14FFC:				; CODE XREF: sub_14FD8+2Aj
		retn
; ---------------------------------------------------------------------------


loc_14FFD:				; DATA XREF: sub_14FD8+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_14FFC
; ---------------------------------------------------------------------------


loc_15004:				; CODE XREF: sub_14FD8:loc_14FFCj
					; DATA XREF: sub_14FD8+1Fo
		pop	ebp
		retn
sub_14FD8	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_15008	proc near		; DATA XREF: CODE:0001A0D0o
		sub	ds:dword_1C23C,	1
		retn
sub_15008	endp

; ---------------------------------------------------------------------------
off_15010	dd offset dword_1505C	; DATA XREF: sub_15394+3Er
					; sub_15524+33r
		dd 2 dup(0)
		dd offset dword_1505C
		dd 4 dup(0)
		dd offset aSpcqwigwwhlr	; "spcqwigwwhlr"
		dd 10h
		dd offset off_1100C
		dd offset @System@TObject@SafeCallException$qqrp14System@TObjectpv ; System::TObject::SafeCallException(System::TObject	*,void *)
		dd offset nullsub_2
		dd offset nullsub_3
		dd offset sub_1149C
		dd offset nullsub_4
		dd offset sub_11388
		dd offset sub_1139C
		dd offset @System@TObject@$bdtr$qqrv ; System::TObject::~TObject(void)
dword_1505C	dd 0Eh,	10000h						; CODE:0001501Co
		db 2 dup(0)
		dd offset off_11000
		db 8			; Method
		db 0
		db 0			; Procedure
		db 0
aSpcqwigwwhlr	db 12,'spcqwigwwhlr'    ; DATA XREF: CODE:00015030o
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_1507C	proc near		; CODE XREF: sub_15394+6Ep
					; sub_15524+6Bp

var_24		= word ptr -24h
var_22		= word ptr -22h
var_20		= dword	ptr -20h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_5		= byte ptr -5
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFDCh
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_14], edx
		mov	[ebp+var_4], eax
		mov	[ebp+var_5], 0
		xor	eax, eax
		push	ebp
		push	offset loc_151D0
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		push	0
		push	1
		push	2
		mov	eax, ds:off_1B284
		mov	eax, [eax]
		call	eax
		mov	edx, [ebp+var_4]
		mov	[edx+4], eax
		mov	eax, [ebp+var_4]
		cmp	dword ptr [eax+4], 0FFFFFFFFh
		jnz	short loc_150C8
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	loc_151DA
; ---------------------------------------------------------------------------


loc_150C8:				; CODE XREF: sub_1507C+3Dj
		lea	eax, [ebp+var_24]
		mov	edx, 10h
		call	@Windows@ZeroMemory$qqrpvui ; Windows::ZeroMemory(void *,uint)
		mov	[ebp+var_24], 2
		mov	eax, [ebp+var_4]
		mov	ax, [eax+0Ch]
		push	eax
		mov	eax, ds:off_1B2E0
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_22], ax
		mov	eax, [ebp+var_4]
		mov	eax, [eax+8]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, ds:off_1B30C
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_10], eax
		cmp	[ebp+var_10], 0
		jnz	short loc_1511B
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	loc_151DA
; ---------------------------------------------------------------------------


loc_1511B:				; CODE XREF: sub_1507C+90j
		mov	eax, [ebp+var_10]
		mov	eax, [eax+0Ch]
		mov	eax, [eax]
		push	dword ptr [eax]
		mov	eax, ds:off_1B2B4
		mov	eax, [eax]
		call	eax
		push	eax
		mov	eax, ds:off_1B14C
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_20], eax
		push	10h
		lea	eax, [ebp+var_24]
		push	eax
		mov	eax, [ebp+var_4]
		mov	eax, [eax+4]
		push	eax
		mov	eax, ds:off_1B204
		mov	eax, [eax]
		call	eax
		test	eax, eax
		jz	short loc_1515F
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_151DA
; ---------------------------------------------------------------------------


loc_1515F:				; CODE XREF: sub_1507C+D7j
		mov	[ebp+var_C], 7530h
		push	4
		lea	eax, [ebp+var_C]
		push	eax
		push	1005h
		push	0FFFFh
		mov	eax, [ebp+var_4]
		mov	eax, [eax+4]
		push	eax
		mov	eax, ds:off_1B290
		mov	eax, [eax]
		call	eax
		test	eax, eax
		jz	short loc_15194
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_151DA
; ---------------------------------------------------------------------------


loc_15194:				; CODE XREF: sub_1507C+10Cj
		push	4
		lea	eax, [ebp+var_C]
		push	eax
		push	1006h
		push	0FFFFh
		mov	eax, [ebp+var_4]
		mov	eax, [eax+4]
		push	eax
		mov	eax, ds:off_1B290
		mov	eax, [eax]
		call	eax
		test	eax, eax
		jz	short loc_151C2
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_151DA
; ---------------------------------------------------------------------------


loc_151C2:				; CODE XREF: sub_1507C+13Aj
		mov	[ebp+var_5], 1
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_151DA
; ---------------------------------------------------------------------------


loc_151D0:				; DATA XREF: sub_1507C+16o
		jmp	loc_1161C
; ---------------------------------------------------------------------------
		call	@System@@DoneExcept$qqrv ; System::__linkproc__	DoneExcept(void)


loc_151DA:				; CODE XREF: sub_1507C+47j
					; sub_1507C+9Aj ...
		mov	al, [ebp+var_5]
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_1507C	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_151E4	proc near		; CODE XREF: sub_15394+F8p
					; sub_15524+F5p ...

var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		mov	eax, [eax+4]
		push	eax
		mov	eax, ds:off_1B1B0
		mov	eax, [eax]
		call	eax
		pop	ecx
		pop	ebp
		retn
sub_151E4	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15200	proc near		; CODE XREF: sub_156F4+15p

var_11		= byte ptr -11h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFECh
		mov	[ebp+var_11], dl
		mov	[ebp+var_4], eax
		push	0
		push	4
		lea	eax, [ebp+var_C]
		push	eax
		mov	eax, [ebp+var_4]
		mov	eax, [eax+4]
		push	eax
		mov	eax, ds:off_1B300
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_10], eax
		cmp	[ebp+var_10], 4
		jz	short loc_15234
		xor	eax, eax
		mov	[ebp+var_8], eax
		jmp	short loc_15244
; ---------------------------------------------------------------------------


loc_15234:				; CODE XREF: sub_15200+2Bj
		mov	eax, [ebp+var_C]
		push	eax
		mov	eax, ds:off_1B1C0
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_8], eax


loc_15244:				; CODE XREF: sub_15200+32j
		mov	eax, [ebp+var_8]
		mov	esp, ebp
		pop	ebp
		retn
sub_15200	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_1524C	proc near		; CODE XREF: sub_156F4+39p

var_14		= dword	ptr -14h
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFECh
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		mov	[ebp+var_14], eax
		mov	[ebp+var_D], 0
		mov	eax, [ebp+var_C]
		mov	edx, [ebp+var_8]
		call	sub_120C8
		cmp	[ebp+var_8], 0
		jle	short loc_152AE


loc_15275:				; CODE XREF: sub_1524C+60j
		push	0
		mov	eax, [ebp+var_8]
		push	eax
		mov	eax, [ebp+var_C]
		call	sub_11FC4
		mov	edx, [ebp+var_14]
		add	eax, edx
		push	eax
		mov	eax, [ebp+var_4]
		mov	eax, [eax+4]
		push	eax
		mov	eax, ds:off_1B300
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_14], eax
		cmp	[ebp+var_14], 0FFFFFFFFh
		jz	short loc_152AE
		mov	eax, [ebp+var_14]
		sub	[ebp+var_8], eax
		cmp	[ebp+var_8], 0
		jg	short loc_15275


loc_152AE:				; CODE XREF: sub_1524C+27j
					; sub_1524C+54j
		cmp	[ebp+var_8], 0
		jnz	short loc_152B8
		mov	[ebp+var_D], 1


loc_152B8:				; CODE XREF: sub_1524C+66j
		mov	al, [ebp+var_D]
		mov	esp, ebp
		pop	ebp
		retn
sub_1524C	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_152C0	proc near		; CODE XREF: sub_1568C+40p

var_10		= dword	ptr -10h
var_9		= byte ptr -9
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF0h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_8]
		call	sub_11FA8
		xor	eax, eax
		push	ebp
		push	offset loc_15334
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	[ebp+var_9], 0
		push	0
		mov	eax, [ebp+var_8]
		call	sub_11DF4
		push	eax
		lea	eax, [ebp+var_8]
		call	sub_11FC4
		push	eax
		mov	eax, [ebp+var_4]
		mov	eax, [eax+4]
		push	eax
		mov	eax, ds:off_1B2D4
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_10], eax
		mov	eax, [ebp+var_8]
		call	sub_11DF4
		cmp	eax, [ebp+var_10]
		jnz	short loc_1531E
		mov	[ebp+var_9], 1


loc_1531E:				; CODE XREF: sub_152C0+58j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_1533B


loc_1532B:				; CODE XREF: sub_152C0+79j
		lea	eax, [ebp+var_8]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_15334:				; DATA XREF: sub_152C0+17o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_1532B
; ---------------------------------------------------------------------------


loc_1533B:				; CODE XREF: sub_152C0+73j
					; DATA XREF: sub_152C0+66o
		mov	al, [ebp+var_9]
		mov	esp, ebp
		pop	ebp
		retn
sub_152C0	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15344	proc near		; CODE XREF: sub_15660+16p
					; sub_15660+23p ...

var_11		= byte ptr -11h
var_10		= dword	ptr -10h
var_9		= byte ptr -9
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFECh
		mov	[ebp+var_11], cl
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	[ebp+var_9], 0
		mov	eax, [ebp+var_8]
		push	eax
		mov	eax, ds:off_1B1BC
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_8], eax
		push	0
		push	4
		lea	eax, [ebp+var_8]
		push	eax
		mov	eax, [ebp+var_4]
		mov	eax, [eax+4]
		push	eax
		mov	eax, ds:off_1B2D4
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_10], eax
		cmp	[ebp+var_10], 4
		jnz	short loc_1538C
		mov	[ebp+var_9], 1


loc_1538C:				; CODE XREF: sub_15344+42j
		mov	al, [ebp+var_9]
		mov	esp, ebp
		pop	ebp
		retn
sub_15344	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15394	proc near		; CODE XREF: sub_15B40+DFp

var_15		= byte ptr -15h
var_14		= dword	ptr -14h
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE8h
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		call	sub_11FA8
		mov	eax, [ebp+var_C]
		call	sub_11FA8
		xor	eax, eax
		push	ebp
		push	offset loc_154BF
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	[ebp+var_D], 0
		mov	eax, [ebp+arg_0]
		call	sub_11C00
		mov	dl, 1
		mov	eax, off_15010
		call	unknown_libname_3 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	[ebp+var_14], eax
		mov	eax, [ebp+var_14]
		add	eax, 8
		mov	edx, [ebp+var_4]
		call	sub_11C54
		mov	eax, ds:off_1B230
		mov	eax, [eax]
		mov	edx, [ebp+var_14]
		mov	[edx+0Ch], eax
		mov	edx, 1D4C0h
		mov	eax, [ebp+var_14]
		call	sub_1507C
		mov	[ebp+var_15], al
		cmp	[ebp+var_15], 0
		jz	loc_154A1
		xor	eax, eax
		push	ebp
		push	offset loc_1549A
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		xor	eax, eax
		push	ebp
		push	offset loc_15472
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_14]
		call	sub_15660
		mov	edx, [ebp+var_C]
		mov	eax, [ebp+var_14]
		call	sub_1568C
		mov	eax, 12Ch
		call	sub_16B30
		mov	edx, [ebp+arg_0]
		mov	eax, [ebp+var_14]
		call	sub_156F4
		mov	[ebp+var_15], al
		cmp	[ebp+var_15], 0
		jz	short loc_15468
		mov	[ebp+var_D], 1


loc_15468:				; CODE XREF: sub_15394+CEj
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_1547C
; ---------------------------------------------------------------------------


loc_15472:				; DATA XREF: sub_15394+91o
		jmp	loc_1161C
; ---------------------------------------------------------------------------
		call	@System@@DoneExcept$qqrv ; System::__linkproc__	DoneExcept(void)


loc_1547C:				; CODE XREF: sub_15394+DCj
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_154A1


loc_15489:				; CODE XREF: sub_15394+10Bj
		mov	eax, [ebp+var_14]
		call	sub_151E4
		mov	eax, [ebp+var_14]
		call	sub_113F4
		retn
; ---------------------------------------------------------------------------


loc_1549A:				; DATA XREF: sub_15394+83o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_15489
; ---------------------------------------------------------------------------


loc_154A1:				; CODE XREF: sub_15394+7Aj
					; sub_15394+105j
					; DATA XREF: ...
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_154C6


loc_154AE:				; CODE XREF: sub_15394+130j
		lea	eax, [ebp+var_C]
		call	sub_11C00
		lea	eax, [ebp+var_4]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_154BF:				; DATA XREF: sub_15394+25o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_154AE
; ---------------------------------------------------------------------------


loc_154C6:				; CODE XREF: sub_15394+12Aj
					; DATA XREF: sub_15394+115o
		mov	al, [ebp+var_D]
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn	4
sub_15394	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_154D4	proc near		; CODE XREF: sub_15524+43p

var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		call	sub_11C00
		mov	eax, ds:off_1B1F8
		mov	eax, [eax]
		mov	eax, [eax+1Ch]
		call	sub_11304
		mov	[ebp+var_8], eax
		cmp	[ebp+var_8], 0
		jl	short loc_1551E
		mov	eax, ds:off_1B1F8
		mov	eax, [eax]
		mov	eax, [eax+1Ch]
		cmp	eax, [ebp+var_8]
		jle	short loc_1551E
		mov	ecx, [ebp+var_4]
		mov	eax, ds:off_1B1F8
		mov	eax, [eax]
		mov	edx, [ebp+var_8]
		call	sub_13408


loc_1551E:				; CODE XREF: sub_154D4+27j
					; sub_154D4+36j
		pop	ecx
		pop	ecx
		pop	ebp
		retn
sub_154D4	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15524	proc near		; CODE XREF: sub_15CA4+63p
					; sub_15DC4+61p

var_1C		= dword	ptr -1Ch
var_15		= byte ptr -15h
var_14		= dword	ptr -14h
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE4h
		push	ebx
		push	esi
		push	edi
		xor	ebx, ebx
		mov	[ebp+var_1C], ebx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_8]
		call	sub_11FA8
		xor	eax, eax
		push	ebp
		push	offset loc_1564C
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	[ebp+var_D], 0
		mov	dl, 1
		mov	eax, off_15010
		call	unknown_libname_3 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	[ebp+var_14], eax
		lea	eax, [ebp+var_1C]
		call	sub_154D4
		mov	edx, [ebp+var_1C]
		mov	eax, [ebp+var_14]
		add	eax, 8
		call	sub_11C54
		mov	eax, ds:off_1B230
		mov	eax, [eax]
		mov	edx, [ebp+var_14]
		mov	[edx+0Ch], eax
		mov	edx, 1D4C0h
		mov	eax, [ebp+var_14]
		call	sub_1507C
		mov	[ebp+var_15], al
		cmp	[ebp+var_15], 0
		jz	loc_1562E
		xor	eax, eax
		push	ebp
		push	offset loc_15627
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		xor	eax, eax
		push	ebp
		push	offset loc_155FF
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	edx, [ebp+var_4]
		mov	eax, [ebp+var_14]
		call	sub_15660
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_14]
		call	sub_1568C
		mov	eax, 64h
		call	sub_16B30
		mov	edx, [ebp+var_C]
		mov	eax, [ebp+var_14]
		call	sub_156F4
		mov	[ebp+var_15], al
		cmp	[ebp+var_15], 0
		jz	short loc_155F5
		mov	[ebp+var_D], 1


loc_155F5:				; CODE XREF: sub_15524+CBj
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_15609
; ---------------------------------------------------------------------------


loc_155FF:				; DATA XREF: sub_15524+8Eo
		jmp	loc_1161C
; ---------------------------------------------------------------------------
		call	@System@@DoneExcept$qqrv ; System::__linkproc__	DoneExcept(void)


loc_15609:				; CODE XREF: sub_15524+D9j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_1562E


loc_15616:				; CODE XREF: sub_15524+108j
		mov	eax, [ebp+var_14]
		call	sub_151E4
		mov	eax, [ebp+var_14]
		call	sub_113F4
		retn
; ---------------------------------------------------------------------------


loc_15627:				; DATA XREF: sub_15524+80o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_15616
; ---------------------------------------------------------------------------


loc_1562E:				; CODE XREF: sub_15524+77j
					; sub_15524+102j
					; DATA XREF: ...
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_15653


loc_1563B:				; CODE XREF: sub_15524+12Dj
		lea	eax, [ebp+var_1C]
		call	sub_11C00
		lea	eax, [ebp+var_8]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_1564C:				; DATA XREF: sub_15524+22o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_1563B
; ---------------------------------------------------------------------------


loc_15653:				; CODE XREF: sub_15524+127j
					; DATA XREF: sub_15524+112o
		mov	al, [ebp+var_D]
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_15524	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15660	proc near		; CODE XREF: sub_15394+A2p
					; sub_15524+9Fp

var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	cl, 1
		mov	edx, 78E3h
		mov	eax, [ebp+var_4]
		call	sub_15344
		mov	cl, 1
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_4]
		call	sub_15344
		pop	ecx
		pop	ecx
		pop	ebp
		retn
sub_15660	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_1568C	proc near		; CODE XREF: sub_15394+ADp
					; sub_15524+AAp

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF4h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_8]
		call	sub_11FA8
		xor	eax, eax
		push	ebp
		push	offset loc_156E7
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, [ebp+var_8]
		call	sub_11DF4
		mov	[ebp+var_C], eax
		mov	cl, 1
		mov	edx, [ebp+var_C]
		mov	eax, [ebp+var_4]
		call	sub_15344
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_4]
		call	sub_152C0
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_156EE


loc_156DE:				; CODE XREF: sub_1568C+60j
		lea	eax, [ebp+var_8]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_156E7:				; DATA XREF: sub_1568C+17o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_156DE
; ---------------------------------------------------------------------------


loc_156EE:				; CODE XREF: sub_1568C+5Aj
					; DATA XREF: sub_1568C+4Do
		mov	esp, ebp
		pop	ebp
		retn
sub_1568C	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_156F4	proc near		; CODE XREF: sub_15394+C2p
					; sub_15524+BFp

var_10		= dword	ptr -10h
var_9		= byte ptr -9
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF0h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	[ebp+var_9], 0
		mov	dl, 1
		mov	eax, [ebp+var_4]
		call	sub_15200
		mov	[ebp+var_10], eax
		cmp	[ebp+var_10], 5B8D80h
		jle	short loc_15724
		mov	eax, [ebp+var_4]
		call	sub_151E4
		jmp	short loc_15735
; ---------------------------------------------------------------------------


loc_15724:				; CODE XREF: sub_156F4+24j
		mov	ecx, [ebp+var_8]
		mov	edx, [ebp+var_10]
		mov	eax, [ebp+var_4]
		call	sub_1524C
		mov	[ebp+var_9], al


loc_15735:				; CODE XREF: sub_156F4+2Ej
		mov	al, [ebp+var_9]
		mov	esp, ebp
		pop	ebp
		retn
sub_156F4	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_1573C	proc near		; DATA XREF: CODE:0001A0DCo
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_15761
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C240
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_15768


loc_15760:				; CODE XREF: sub_1573C+2Aj
		retn
; ---------------------------------------------------------------------------


loc_15761:				; DATA XREF: sub_1573C+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_15760
; ---------------------------------------------------------------------------


loc_15768:				; CODE XREF: sub_1573C:loc_15760j
					; DATA XREF: sub_1573C+1Fo
		pop	ebp
		retn
sub_1573C	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_1576C	proc near		; DATA XREF: CODE:0001A0D8o
		sub	ds:dword_1C240,	1
		retn
sub_1576C	endp


; =============== S U B	R O U T	I N E =======================================



sub_15774	proc near		; CODE XREF: sub_165C4+3Fp r+2Ap ...
		mov	eax, ds:off_1B294
		mov	eax, [eax]
		call	eax
		mov	edx, ds:off_1B308
		mov	[edx], eax
		retn
sub_15774	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15788	proc near		; CODE XREF: sub_157B0+6p
					; sub_158F4+5Bp ...

var_18		= byte ptr -18h
var_8		= qword	ptr -8

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE8h
		lea	eax, [ebp+var_18]
		push	eax
		mov	eax, ds:off_1B304
		mov	eax, [eax]
		call	eax
		lea	edx, [ebp+var_8]
		lea	eax, [ebp+var_18]
		call	sub_12D44
		fld	[ebp+var_8]
		mov	esp, ebp
		pop	ebp
		retn
sub_15788	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_157B0	proc near		; CODE XREF: sub_165C4:loc_166DCp
					; sub_165C4+3D8p

var_10		= qword	ptr -10h
var_8		= qword	ptr -8

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF0h
		call	sub_15788
		call	sub_1127C
		mov	dword ptr [ebp+var_10],	eax
		mov	dword ptr [ebp+var_10+4], edx
		fild	[ebp+var_10]
		fstp	[ebp+var_8]
		wait
		fld	[ebp+var_8]
		mov	esp, ebp
		pop	ebp
		retn
sub_157B0	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_157D4	proc near		; CODE XREF: sub_165C4+BAp
					; sub_165C4+38Dp ...

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF0h
		xor	ecx, ecx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_10], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		call	sub_11FA8
		mov	eax, [ebp+var_8]
		call	sub_11FA8
		xor	eax, eax
		push	ebp
		push	offset loc_15856
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	edx, ds:off_1B1D0
		mov	edx, [edx]
		lea	eax, [ebp+var_10]
		mov	ecx, [ebp+var_4]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_10]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	edx, eax
		lea	eax, [ebp+var_C]
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [ebp+var_C]
		mov	ecx, [ebp+var_8]
		mov	eax, 80000002h
		call	sub_14CAC
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_1585D


loc_15848:				; CODE XREF: sub_157D4+87j
		lea	eax, [ebp+var_10]
		mov	edx, 4
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_15856:				; DATA XREF: sub_157D4+27o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_15848
; ---------------------------------------------------------------------------


loc_1585D:				; CODE XREF: sub_157D4+81j
					; DATA XREF: sub_157D4+6Fo
		mov	esp, ebp
		pop	ebp
		retn
sub_157D4	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15864	proc near		; CODE XREF: sub_17118+26p

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF0h
		xor	ecx, ecx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_10], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		call	sub_11FA8
		xor	eax, eax
		push	ebp
		push	offset loc_158E6
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	edx, ds:off_1B1D0
		mov	edx, [edx]
		lea	eax, [ebp+var_10]
		mov	ecx, [ebp+var_4]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_10]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	edx, eax
		lea	eax, [ebp+var_C]
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [ebp+var_C]
		mov	ecx, [ebp+var_8]
		mov	eax, 80000002h
		call	sub_14E84
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_158ED


loc_158D0:				; CODE XREF: sub_15864+87j
		lea	eax, [ebp+var_10]
		mov	edx, 2
		call	sub_11C24
		lea	eax, [ebp+var_4]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_158E6:				; DATA XREF: sub_15864+1Fo
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_158D0
; ---------------------------------------------------------------------------


loc_158ED:				; CODE XREF: sub_15864+81j
					; DATA XREF: sub_15864+67o
		mov	esp, ebp
		pop	ebp
		retn
sub_15864	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_158F4	proc near		; CODE XREF: sub_159A0+Dp

var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= qword	ptr -10h
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE4h
		xor	edx, edx
		mov	[ebp+var_18], edx
		mov	[ebp+var_1C], edx
		mov	[ebp+var_14], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_1598E
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	edx, ds:off_1B1D0
		mov	edx, [edx]
		lea	eax, [ebp+var_1C]
		mov	ecx, [ebp+var_4]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_1C]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	edx, eax
		lea	eax, [ebp+var_18]
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [ebp+var_18]
		lea	ecx, [ebp+var_14]
		mov	eax, 80000002h
		call	sub_14F6C
		test	al, al
		jnz	short loc_15960
		call	sub_15788
		fsub	flt_1599C
		fstp	[ebp+var_10]
		wait
		jmp	short loc_15973
; ---------------------------------------------------------------------------


loc_15960:				; CODE XREF: sub_158F4+59j
		mov	eax, [ebp+var_14]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	edx, [eax]
		mov	dword ptr [ebp+var_10],	edx
		mov	edx, [eax+4]
		mov	dword ptr [ebp+var_10+4], edx


loc_15973:				; CODE XREF: sub_158F4+6Aj
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_15995


loc_15980:				; CODE XREF: sub_158F4+9Fj
		lea	eax, [ebp+var_1C]
		mov	edx, 3
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_1598E:				; DATA XREF: sub_158F4+17o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_15980
; ---------------------------------------------------------------------------


loc_15995:				; CODE XREF: sub_158F4+99j
					; DATA XREF: sub_158F4+87o
		fld	[ebp+var_10]
		mov	esp, ebp
		pop	ebp
		retn
sub_158F4	endp

; ---------------------------------------------------------------------------
flt_1599C	dd 1.0e1		; DATA XREF: sub_158F4+60r

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_159A0	proc near		; CODE XREF: sub_15AA4+1Bp

var_8		= qword	ptr -8

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		mov	eax, ds:off_1B320
		mov	eax, [eax]
		call	sub_158F4
		fstp	[ebp+var_8]
		wait
		fld	[ebp+var_8]
		pop	ecx
		pop	ecx
		pop	ebp
		retn
sub_159A0	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_159C0	proc near		; CODE XREF: sub_165C4+191p

var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= byte ptr -10h
var_8		= qword	ptr -8

		push	ebp
		mov	ebp, esp
		mov	ecx, 4


loc_159C8:				; CODE XREF: sub_159C0+Dj
		push	0
		push	0
		dec	ecx
		jnz	short loc_159C8
		push	ecx
		xor	eax, eax
		push	ebp
		push	offset loc_15A98
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		call	sub_15788
		fstp	[ebp+var_8]
		wait
		lea	edx, [ebp+var_10]
		lea	eax, [ebp+var_8]
		mov	ecx, 8
		call	sub_11210
		push	7
		mov	ecx, ds:off_1B320
		mov	ecx, [ecx]
		mov	edx, ds:off_1B1D0
		mov	edx, [edx]
		lea	eax, [ebp+var_1C]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_1C]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	edx, eax
		lea	eax, [ebp+var_18]
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [ebp+var_18]
		lea	ecx, [ebp+var_10]
		mov	eax, 80000002h
		call	sub_14E50
		lea	eax, [ebp+var_14]
		mov	edx, ds:off_1B0D8
		mov	edx, [edx]
		call	sub_11C98
		mov	ecx, ds:off_1B150
		mov	ecx, [ecx]
		mov	edx, ds:off_1B1D0
		mov	edx, [edx]
		lea	eax, [ebp+var_24]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_24]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	edx, eax
		lea	eax, [ebp+var_20]
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [ebp+var_20]
		mov	ecx, [ebp+var_14]
		mov	eax, 80000002h
		call	sub_14CAC
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_15A9F


loc_15A8A:				; CODE XREF: sub_159C0+DDj
		lea	eax, [ebp+var_24]
		mov	edx, 5
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_15A98:				; DATA XREF: sub_159C0+13o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_15A8A
; ---------------------------------------------------------------------------


loc_15A9F:				; CODE XREF: sub_159C0+D7j
					; DATA XREF: sub_159C0+C5o
		mov	esp, ebp
		pop	ebp
		retn
sub_159C0	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15AA4	proc near		; CODE XREF: sub_165C4:loc_16731p

var_38		= qword	ptr -38h
var_18		= qword	ptr -18h
var_10		= qword	ptr -10h
var_1		= byte ptr -1

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE8h
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_1], 0
		xor	eax, eax
		push	ebp
		push	offset loc_15B27
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		call	sub_159A0
		fstp	[ebp+var_10]
		wait
		call	sub_15788
		add	esp, 0FFFFFFF8h
		fstp	[esp+38h+var_38]
		wait
		push	dword ptr [ebp+var_10+4]
		push	dword ptr [ebp+var_10] ; double
		call	sub_16B08
		fstp	[ebp+var_18]
		wait
		fld	[ebp+var_18]
		fcomp	flt_15B3C
		fnstsw	ax
		sahf
		jnb	short loc_15B14
		call	sub_15788
		add	esp, 0FFFFFFF8h
		fstp	[esp+38h+var_38]
		wait
		call	@Dateutils@DayOf$qqrx16System@TDateTime	; Dateutils::DayOf(System::TDateTime)
		mov	ebx, eax
		push	dword ptr [ebp+var_10+4]
		push	dword ptr [ebp+var_10] ; double
		call	@Dateutils@DayOf$qqrx16System@TDateTime	; Dateutils::DayOf(System::TDateTime)
		cmp	bx, ax
		jz	short loc_15B18


loc_15B14:				; CODE XREF: sub_15AA4+4Bj
		xor	eax, eax
		jmp	short loc_15B1A
; ---------------------------------------------------------------------------


loc_15B18:				; CODE XREF: sub_15AA4+6Ej
		mov	al, 1


loc_15B1A:				; CODE XREF: sub_15AA4+72j
		mov	[ebp+var_1], al
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_15B31
; ---------------------------------------------------------------------------


loc_15B27:				; DATA XREF: sub_15AA4+10o
		jmp	loc_1161C
; ---------------------------------------------------------------------------
		call	@System@@DoneExcept$qqrv ; System::__linkproc__	DoneExcept(void)


loc_15B31:				; CODE XREF: sub_15AA4+81j
		mov	al, [ebp+var_1]
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_15AA4	endp

; ---------------------------------------------------------------------------
		align 4
flt_15B3C	dd 1.2e1		; DATA XREF: sub_15AA4+42r

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15B40	proc near		; CODE XREF: sub_165C4+CEp

var_44		= dword	ptr -44h
var_40		= byte ptr -40h
var_3C		= byte ptr -3Ch
var_38		= byte ptr -38h
var_34		= byte ptr -34h
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFBCh
		push	ebx
		push	esi
		push	edi
		xor	ecx, ecx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_10], ecx
		mov	[ebp+var_14], ecx
		mov	[ebp+var_18], edx
		mov	[ebp+var_4], eax
		mov	ecx, 0Bh
		lea	eax, [ebp+var_44]
		mov	edx, off_11000
		call	sub_12250
		xor	eax, eax
		push	ebp
		push	offset loc_15C94
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	eax, [ebp+var_14]
		mov	edx, ds:off_1B1A0
		mov	edx, [edx]
		call	sub_11C98
		xor	eax, eax
		push	ebp
		push	offset loc_15C5C
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	eax, [ebp+var_44]
		mov	edx, ds:off_1B1A0
		mov	edx, [edx]
		call	sub_11C98
		lea	eax, [ebp+var_40]
		mov	edx, ds:off_1B1AC
		mov	edx, [edx]
		call	sub_11C98
		lea	eax, [ebp+var_3C]
		mov	edx, ds:off_1B0E8
		mov	edx, [edx]
		call	sub_11C98
		lea	eax, [ebp+var_38]
		mov	edx, ds:off_1B2DC
		mov	edx, [edx]
		call	sub_11C98
		lea	eax, [ebp+var_34]
		mov	edx, ds:off_1B148
		mov	edx, [edx]
		call	sub_11C98
		mov	eax, [ebp+var_4]
		call	sub_133AC
		xor	eax, eax
		mov	[ebp+var_8], eax


loc_15BF6:				; CODE XREF: sub_15B40+FCj
		lea	eax, [ebp+var_C]
		mov	edx, [ebp+var_8]
		mov	edx, [ebp+edx*4+var_44]
		call	sub_11C98
		cmp	[ebp+var_C], 0
		jz	short loc_15C35
		lea	eax, [ebp+var_10]
		push	eax
		mov	ecx, ds:off_1B25C
		mov	ecx, [ecx]
		mov	edx, 4F95h
		mov	eax, [ebp+var_C]
		call	sub_15394
		cmp	[ebp+var_10], 0
		jz	short loc_15C35
		mov	eax, [ebp+var_4]
		mov	edx, [ebp+var_C]
		call	sub_1339C


loc_15C35:				; CODE XREF: sub_15B40+C9j
					; sub_15B40+E8j
		inc	[ebp+var_8]
		cmp	[ebp+var_8], 6
		jnz	short loc_15BF6
		mov	eax, [ebp+var_4]
		cmp	dword ptr [eax+1Ch], 0
		jnz	short loc_15C52
		mov	eax, [ebp+var_4]
		mov	edx, [ebp+var_14]
		call	sub_1339C


loc_15C52:				; CODE XREF: sub_15B40+105j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_15C66
; ---------------------------------------------------------------------------


loc_15C5C:				; DATA XREF: sub_15B40+4Eo
		jmp	loc_1161C
; ---------------------------------------------------------------------------
		call	@System@@DoneExcept$qqrv ; System::__linkproc__	DoneExcept(void)


loc_15C66:				; CODE XREF: sub_15B40+11Aj
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_15C9B


loc_15C73:				; CODE XREF: sub_15B40+159j
		lea	eax, [ebp+var_44]
		mov	ecx, 0Bh
		mov	edx, off_11000
		call	sub_1231C
		lea	eax, [ebp+var_14]
		mov	edx, 3
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_15C94:				; DATA XREF: sub_15B40+30o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_15C73
; ---------------------------------------------------------------------------


loc_15C9B:				; CODE XREF: sub_15B40+153j
					; DATA XREF: sub_15B40+12Eo
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_15B40	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15CA4	proc near		; CODE XREF: sub_165C4+1C2p

var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_5		= byte ptr -5
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFECh
		xor	edx, edx
		mov	[ebp+var_14], edx
		mov	[ebp+var_10], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_15D6B
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, [ebp+var_4]
		call	sub_11C00


loc_15CCB:				; CODE XREF: sub_15CA4+A7j
		mov	eax, ds:off_1B2D0
		cmp	byte ptr [eax],	0
		jnz	short loc_15D50
		mov	eax, ds:off_1B100
		push	dword ptr [eax]
		mov	eax, ds:off_1B224
		push	dword ptr [eax]
		push	offset _str__.Text
		mov	eax, ds:off_1B1C4
		push	dword ptr [eax]
		lea	eax, [ebp+var_14]
		mov	edx, 4
		call	sub_11EB4
		mov	edx, [ebp+var_14]
		lea	ecx, [ebp+var_10]
		mov	eax, 27B3h
		call	sub_15524
		mov	[ebp+var_5], al
		cmp	[ebp+var_5], 0
		jz	short loc_15D2F
		mov	eax, [ebp+var_4]
		mov	edx, [ebp+var_10]
		call	sub_11C54
		mov	eax, [ebp+var_4]
		mov	eax, [eax]
		call	sub_11DF4
		cmp	eax, 9
		jge	short loc_15D50


loc_15D2F:				; CODE XREF: sub_15CA4+6Fj
		mov	eax, 1Eh
		call	sub_11304
		add	eax, 28h
		mov	[ebp+var_C], eax
		imul	eax, [ebp+var_C], 3E8h
		call	sub_16B30
		jmp	loc_15CCB
; ---------------------------------------------------------------------------


loc_15D50:				; CODE XREF: sub_15CA4+2Fj
					; sub_15CA4+89j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_15D72


loc_15D5D:				; CODE XREF: sub_15CA4+CCj
		lea	eax, [ebp+var_14]
		mov	edx, 2
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_15D6B:				; DATA XREF: sub_15CA4+14o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_15D5D
; ---------------------------------------------------------------------------


loc_15D72:				; CODE XREF: sub_15CA4+C6j
					; DATA XREF: sub_15CA4+B4o
		mov	esp, ebp
		pop	ebp
		retn
sub_15CA4	endp

; ---------------------------------------------------------------------------
		align 4
_str__		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_15CA4+3Fo
		dd 1			; Len
		db '_',0                ; Text
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15D84	proc near		; CODE XREF: sub_165C4+FCp
					; sub_165C4+13Dp ...

var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		call	sub_11FA8
		xor	eax, eax
		push	ebp
		push	offset loc_15DB7
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_15DBE


loc_15DAE:				; CODE XREF: sub_15D84+38j
		lea	eax, [ebp+var_4]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_15DB7:				; DATA XREF: sub_15D84+12o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_15DAE
; ---------------------------------------------------------------------------


loc_15DBE:				; CODE XREF: sub_15D84+32j
					; DATA XREF: sub_15D84+25o
		pop	ecx
		pop	ebp
		retn
sub_15D84	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15DC4	proc near		; CODE XREF: sub_16134+41p

var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_9		= byte ptr -9
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE4h
		xor	edx, edx
		mov	[ebp+var_1C], edx
		mov	[ebp+var_18], edx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_15EA5
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, [ebp+var_4]
		call	sub_11C00
		xor	eax, eax
		mov	[ebp+var_14], eax


loc_15DF3:				; CODE XREF: sub_15DC4+B5j
		mov	eax, ds:off_1B100
		push	dword ptr [eax]
		mov	eax, ds:off_1B224
		push	dword ptr [eax]
		push	offset _str___0.Text
		mov	eax, ds:off_1B1C4
		push	dword ptr [eax]
		lea	eax, [ebp+var_18]
		mov	edx, 4
		call	sub_11EB4
		mov	edx, [ebp+var_18]
		lea	ecx, [ebp+var_8]
		mov	eax, 2ABAh
		call	sub_15524
		mov	[ebp+var_9], al
		cmp	[ebp+var_9], 0
		jz	short loc_15E56
		mov	eax, [ebp+var_4]
		push	eax
		lea	eax, [ebp+var_1C]
		mov	edx, [ebp+var_8]
		call	@System@@WStrFromLStr$qqrr17System@WideStringx17System@AnsiString ; System::__linkproc__ WStrFromLStr(System::WideString &,System::AnsiString)
		mov	eax, [ebp+var_1C]
		mov	edx, ds:off_1B154
		mov	edx, [edx]
		xor	ecx, ecx
		call	sub_1432C
		jmp	short loc_15E7F
; ---------------------------------------------------------------------------


loc_15E56:				; CODE XREF: sub_15DC4+6Dj
		mov	eax, 1Eh
		call	sub_11304
		add	eax, 28h
		mov	[ebp+var_10], eax
		imul	eax, [ebp+var_10], 3E8h
		call	sub_16B30
		inc	[ebp+var_14]
		cmp	[ebp+var_14], 15h
		jnz	loc_15DF3


loc_15E7F:				; CODE XREF: sub_15DC4+90j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_15EAC


loc_15E8C:				; CODE XREF: sub_15DC4+E6j
		lea	eax, [ebp+var_1C]
		call	@System@@WStrClr$qqrpv ; System::__linkproc__ WStrClr(void *)
		lea	eax, [ebp+var_18]
		call	sub_11C00
		lea	eax, [ebp+var_8]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_15EA5:				; DATA XREF: sub_15DC4+17o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_15E8C
; ---------------------------------------------------------------------------


loc_15EAC:				; CODE XREF: sub_15DC4+E0j
					; DATA XREF: sub_15DC4+C3o
		mov	esp, ebp
		pop	ebp
		retn
sub_15DC4	endp

; ---------------------------------------------------------------------------
_str___0	dd 0FFFFFFFFh		; _top ; DATA XREF: sub_15DC4+3Do
		dd 1			; Len
		db '_',0                ; Text
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15EBC	proc near		; CODE XREF: sub_16024+98p

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF0h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		call	sub_11FA8
		xor	eax, eax
		push	ebp
		push	offset loc_15F47
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, [ebp+var_8]
		call	sub_11C00
		mov	eax, [ebp+var_4]
		call	sub_11DF4
		dec	eax
		test	eax, eax
		jle	short loc_15F31
		mov	[ebp+var_10], eax
		mov	[ebp+var_C], 1


loc_15EFD:				; CODE XREF: sub_15EBC+73j
		mov	eax, [ebp+var_4]
		mov	edx, [ebp+var_C]
		cmp	byte ptr [eax+edx-1], 3Dh
		jnz	short loc_15F29
		mov	eax, [ebp+var_8]
		push	eax
		mov	eax, [ebp+var_4]
		call	sub_11DF4
		mov	ecx, eax
		sub	ecx, [ebp+var_C]
		mov	edx, [ebp+var_C]
		inc	edx
		mov	eax, [ebp+var_4]
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		jmp	short loc_15F31
; ---------------------------------------------------------------------------


loc_15F29:				; CODE XREF: sub_15EBC+4Cj
		inc	[ebp+var_C]
		dec	[ebp+var_10]
		jnz	short loc_15EFD


loc_15F31:				; CODE XREF: sub_15EBC+35j
					; sub_15EBC+6Bj
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_15F4E


loc_15F3E:				; CODE XREF: sub_15EBC+90j
		lea	eax, [ebp+var_4]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_15F47:				; DATA XREF: sub_15EBC+17o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_15F3E
; ---------------------------------------------------------------------------


loc_15F4E:				; CODE XREF: sub_15EBC+8Aj
					; DATA XREF: sub_15EBC+7Do
		mov	esp, ebp
		pop	ebp
		retn
sub_15EBC	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15F54	proc near		; CODE XREF: sub_16024+7Fp

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF0h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		call	sub_11FA8
		xor	eax, eax
		push	ebp
		push	offset loc_15FD7
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, [ebp+var_8]
		call	sub_11C00
		mov	eax, [ebp+var_4]
		call	sub_11DF4
		dec	eax
		test	eax, eax
		jle	short loc_15FC1
		mov	[ebp+var_10], eax
		mov	[ebp+var_C], 1


loc_15F95:				; CODE XREF: sub_15F54+6Bj
		mov	eax, [ebp+var_4]
		mov	edx, [ebp+var_C]
		cmp	byte ptr [eax+edx-1], 3Dh
		jnz	short loc_15FB9
		mov	eax, [ebp+var_8]
		push	eax
		mov	ecx, [ebp+var_C]
		dec	ecx
		mov	edx, 1
		mov	eax, [ebp+var_4]
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		jmp	short loc_15FC1
; ---------------------------------------------------------------------------


loc_15FB9:				; CODE XREF: sub_15F54+4Cj
		inc	[ebp+var_C]
		dec	[ebp+var_10]
		jnz	short loc_15F95


loc_15FC1:				; CODE XREF: sub_15F54+35j
					; sub_15F54+63j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_15FDE


loc_15FCE:				; CODE XREF: sub_15F54+88j
		lea	eax, [ebp+var_4]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_15FD7:				; DATA XREF: sub_15F54+17o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_15FCE
; ---------------------------------------------------------------------------


loc_15FDE:				; CODE XREF: sub_15F54+82j
					; DATA XREF: sub_15F54+75o
		mov	esp, ebp
		pop	ebp
		retn
sub_15F54	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_15FE4	proc near		; CODE XREF: sub_16024+A3p

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF4h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		push	0FFFFFFFFh
		mov	eax, [ebp+var_8]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		push	0FFFFFFFFh
		mov	eax, [ebp+var_4]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		push	0
		push	400h
		mov	eax, ds:off_1B0F0
		mov	eax, [eax]
		call	eax
		sub	eax, 2
		mov	[ebp+var_C], eax
		mov	eax, [ebp+var_C]
		mov	esp, ebp
		pop	ebp
		retn
sub_15FE4	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_16024	proc near		; CODE XREF: sub_16134+54p

var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFD8h
		push	ebx
		xor	ebx, ebx
		mov	[ebp+var_28], ebx
		mov	[ebp+var_24], ebx
		mov	[ebp+var_18], ebx
		mov	[ebp+var_1C], ebx
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_16128
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, [ebp+var_C]
		call	sub_11C00
		call	sub_1309C
		mov	[ebp+var_10], eax
		xor	eax, eax
		push	ebp
		push	offset loc_160F9
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, [ebp+var_10]
		mov	edx, [ebp+var_4]
		call	sub_130D0
		mov	eax, [ebp+var_10]
		mov	eax, [eax+1Ch]
		dec	eax
		test	eax, eax
		jl	short loc_160E3
		inc	eax
		mov	[ebp+var_20], eax
		mov	[ebp+var_14], 0


loc_1608F:				; CODE XREF: sub_16024+BDj
		lea	ecx, [ebp+var_24]
		mov	eax, [ebp+var_10]
		mov	edx, [ebp+var_14]
		call	sub_13408
		mov	eax, [ebp+var_24]
		lea	edx, [ebp+var_18]
		call	sub_15F54
		lea	ecx, [ebp+var_28]
		mov	eax, [ebp+var_10]
		mov	edx, [ebp+var_14]
		call	sub_13408
		mov	eax, [ebp+var_28]
		lea	edx, [ebp+var_1C]
		call	sub_15EBC
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_18]
		call	sub_15FE4
		test	eax, eax
		jnz	short loc_160DB
		mov	eax, [ebp+var_C]
		mov	edx, [ebp+var_1C]
		call	sub_11C54


loc_160DB:				; CODE XREF: sub_16024+AAj
		inc	[ebp+var_14]
		dec	[ebp+var_20]
		jnz	short loc_1608F


loc_160E3:				; CODE XREF: sub_16024+5Ej
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_16100


loc_160F0:				; CODE XREF: sub_16024+DAj
		mov	eax, [ebp+var_10]
		call	sub_13100
		retn
; ---------------------------------------------------------------------------


loc_160F9:				; DATA XREF: sub_16024+3Fo
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_160F0
; ---------------------------------------------------------------------------


loc_16100:				; CODE XREF: sub_16024+D4j
					; DATA XREF: sub_16024+C7o
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_1612F


loc_1610D:				; CODE XREF: sub_16024+109j
		lea	eax, [ebp+var_28]
		mov	edx, 2
		call	sub_11C24
		lea	eax, [ebp+var_1C]
		mov	edx, 2
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_16128:				; DATA XREF: sub_16024+21o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_1610D
; ---------------------------------------------------------------------------


loc_1612F:				; CODE XREF: sub_16024+103j
					; DATA XREF: sub_16024+E4o
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_16024	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_16134	proc near		; CODE XREF: sub_165C4+1F9p

var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_5		= byte ptr -5
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		xor	ecx, ecx
		push	ecx
		push	ecx
		push	ecx
		push	ecx
		push	ecx
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_161E2
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, [ebp+var_4]
		mov	byte ptr [eax],	0
		mov	[ebp+var_5], 0
		lea	eax, [ebp+var_14]
		call	sub_11C00
		xor	eax, eax
		push	ebp
		push	offset loc_161BD
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	eax, [ebp+var_14]
		call	sub_15DC4
		lea	ecx, [ebp+var_C]
		mov	edx, ds:off_1B0C8
		mov	edx, [edx]
		mov	eax, [ebp+var_14]
		call	sub_16024
		lea	edx, [ebp+var_10]
		mov	eax, ds:off_1B2B8
		mov	eax, [eax]
		call	sub_16B44
		mov	eax, [ebp+var_C]
		mov	edx, [ebp+var_10]
		call	@System@@LStrCmp$qqrv ;	System::__linkproc__ LStrCmp(void)
		jz	short loc_161AF
		mov	eax, [ebp+var_4]
		mov	byte ptr [eax],	1


loc_161AF:				; CODE XREF: sub_16134+73j
		mov	[ebp+var_5], 1
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_161C7
; ---------------------------------------------------------------------------


loc_161BD:				; DATA XREF: sub_16134+33o
		jmp	loc_1161C
; ---------------------------------------------------------------------------
		call	@System@@DoneExcept$qqrv ; System::__linkproc__	DoneExcept(void)


loc_161C7:				; CODE XREF: sub_16134+87j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_161E9


loc_161D4:				; CODE XREF: sub_16134+B3j
		lea	eax, [ebp+var_14]
		mov	edx, 3
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_161E2:				; DATA XREF: sub_16134+13o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_161D4
; ---------------------------------------------------------------------------


loc_161E9:				; CODE XREF: sub_16134+ADj
					; DATA XREF: sub_16134+9Bo
		mov	al, [ebp+var_5]
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_16134	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_161F4	proc near		; CODE XREF: sub_165C4+249p
					; sub_165C4+2A7p

var_48		= byte ptr -48h
var_44		= dword	ptr -44h
var_40		= dword	ptr -40h
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_A		= byte ptr -0Ah
var_9		= byte ptr -9
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	ecx, 8


loc_161FD:				; CODE XREF: sub_161F4+Ej
		push	0
		push	0
		dec	ecx
		jnz	short loc_161FD
		push	ecx
		xchg	ecx, [ebp+var_4]
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_9], cl
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		call	sub_11FA8
		mov	eax, [ebp+var_8]
		call	sub_11FA8
		xor	eax, eax
		push	ebp
		push	offset loc_164AE
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	[ebp+var_18], 1
		mov	[ebp+var_A], 0
		xor	eax, eax
		push	ebp
		push	offset loc_16467
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, ds:off_1B0D4
		mov	eax, [eax]
		mov	eax, [eax+1Ch]
		dec	eax
		test	eax, eax
		jl	loc_1638C
		inc	eax
		mov	[ebp+var_24], eax
		mov	[ebp+var_1C], 0


loc_16269:				; CODE XREF: sub_161F4+192j
		lea	eax, [ebp+var_28]
		call	sub_16D68
		push	[ebp+var_28]
		mov	eax, ds:off_1B29C
		push	dword ptr [eax]
		lea	edx, [ebp+var_2C]
		mov	eax, [ebp+var_1C]
		call	sub_131F8
		push	[ebp+var_2C]
		lea	eax, [ebp+var_14]
		mov	edx, 3
		call	sub_11EB4
		push	[ebp+var_14]
		push	offset _str___1.Text
		mov	eax, 0DBBA0h
		call	sub_11304
		lea	edx, [ebp+var_30]
		call	sub_131F8
		push	[ebp+var_30]
		mov	eax, 0DBBA0h
		call	sub_11304
		lea	edx, [ebp+var_34]
		call	sub_131F8
		push	[ebp+var_34]
		mov	eax, ds:off_1B2AC
		push	dword ptr [eax]
		lea	eax, [ebp+var_14]
		mov	edx, 5
		call	sub_11EB4
		mov	eax, ds:off_1B2F8
		push	dword ptr [eax]
		lea	ecx, [ebp+var_38]
		mov	eax, ds:off_1B0D4
		mov	eax, [eax]
		mov	edx, [ebp+var_1C]
		call	sub_13408
		push	[ebp+var_38]
		mov	eax, ds:off_1B270
		push	dword ptr [eax]
		push	[ebp+var_4]
		push	offset _str_?.Text
		mov	eax, 0DBBA0h
		call	sub_11304
		lea	edx, [ebp+var_3C]
		call	sub_131F8
		push	[ebp+var_3C]
		lea	eax, [ebp+var_10]
		mov	edx, 6
		call	sub_11EB4
		push	0
		push	0
		mov	eax, [ebp+var_14]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_10]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		push	0
		mov	eax, ds:off_1B2FC
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_18], eax
		cmp	[ebp+var_18], 0
		jnz	short loc_16376
		cmp	[ebp+var_9], 0
		jnz	short loc_16365
		mov	eax, [ebp+var_14]
		call	sub_13374
		test	al, al
		jnz	short loc_1638C


loc_16365:				; CODE XREF: sub_161F4+163j
		lea	edx, [ebp+var_20]
		mov	eax, [ebp+var_14]
		call	sub_16B44
		cmp	[ebp+var_20], 0
		jnz	short loc_1638C


loc_16376:				; CODE XREF: sub_161F4+15Dj
		mov	eax, 1388h
		call	sub_16B30
		inc	[ebp+var_1C]
		dec	[ebp+var_24]
		jnz	loc_16269


loc_1638C:				; CODE XREF: sub_161F4+64j
					; sub_161F4+16Fj ...
		cmp	[ebp+var_18], 0
		jnz	short loc_16409
		mov	ecx, ds:off_1B114
		mov	ecx, [ecx]
		lea	eax, [ebp+var_40]
		mov	edx, [ebp+var_14]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_40]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_8]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, ds:off_1B10C
		mov	eax, [eax]
		call	eax
		mov	eax, [ebp+var_8]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_14]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, ds:off_1B10C
		mov	eax, [eax]
		call	eax
		neg	eax
		sbb	eax, eax
		neg	eax
		mov	[ebp+var_A], al
		mov	ecx, ds:off_1B114
		mov	ecx, [ecx]
		lea	eax, [ebp+var_44]
		mov	edx, [ebp+var_14]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_44]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, ds:off_1B1A8
		mov	eax, [eax]
		call	eax


loc_16409:				; CODE XREF: sub_161F4+19Cj
		mov	eax, [ebp+var_8]
		call	sub_13374
		test	al, al
		jz	short loc_1645D
		cmp	[ebp+var_9], 0
		jnz	short loc_16429
		mov	[ebp+var_A], 1
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_16471
; ---------------------------------------------------------------------------


loc_16429:				; CODE XREF: sub_161F4+225j
		lea	edx, [ebp+var_20]
		mov	eax, [ebp+var_8]
		call	sub_16B44
		cmp	[ebp+var_20], 0
		jz	short loc_1644B
		mov	[ebp+var_A], 1
		lea	edx, [ebp+var_48]
		mov	eax, [ebp+var_8]
		call	sub_17030
		jmp	short loc_1645D
; ---------------------------------------------------------------------------


loc_1644B:				; CODE XREF: sub_161F4+244j
		mov	eax, [ebp+var_8]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, ds:off_1B1A8
		mov	eax, [eax]
		call	eax


loc_1645D:				; CODE XREF: sub_161F4+21Fj
					; sub_161F4+255j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_16471
; ---------------------------------------------------------------------------


loc_16467:				; DATA XREF: sub_161F4+4Co
		jmp	loc_1161C
; ---------------------------------------------------------------------------
		call	@System@@DoneExcept$qqrv ; System::__linkproc__	DoneExcept(void)


loc_16471:				; CODE XREF: sub_161F4+233j
					; sub_161F4+271j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_164B5


loc_1647E:				; CODE XREF: sub_161F4+2BFj
		lea	eax, [ebp+var_48]
		mov	edx, 9
		call	sub_11C24
		lea	eax, [ebp+var_20]
		call	sub_11C00
		lea	eax, [ebp+var_14]
		mov	edx, 2
		call	sub_11C24
		lea	eax, [ebp+var_8]
		mov	edx, 2
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_164AE:				; DATA XREF: sub_161F4+33o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_1647E
; ---------------------------------------------------------------------------


loc_164B5:				; CODE XREF: sub_161F4+2B9j
					; DATA XREF: sub_161F4+285o
		mov	al, [ebp+var_A]
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_161F4	endp

; ---------------------------------------------------------------------------
		align 10h
_str___1	dd 0FFFFFFFFh		; _top ; DATA XREF: sub_161F4+A5o
		dd 1			; Len
		db '_',0                ; Text
		align 4
_str_?		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_161F4+10Eo
		dd 1			; Len
		db '?',0                ; Text
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_164D8	proc near		; CODE XREF: sub_165C4+34Fp

var_68		= dword	ptr -68h
var_3C		= dword	ptr -3Ch
var_38		= word ptr -38h
var_24		= dword	ptr -24h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_5		= byte ptr -5
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFF98h
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		call	sub_11FA8
		xor	eax, eax
		push	ebp
		push	offset loc_165B6
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	[ebp+var_5], 0
		lea	eax, [ebp+var_24]
		mov	edx, 10h
		call	@Windows@ZeroMemory$qqrpvui ; Windows::ZeroMemory(void *,uint)
		lea	eax, [ebp+var_68]
		mov	edx, 44h
		call	@Windows@ZeroMemory$qqrpvui ; Windows::ZeroMemory(void *,uint)
		mov	[ebp+var_68], 44h
		mov	[ebp+var_38], 5
		mov	[ebp+var_3C], 101h
		lea	eax, [ebp+var_24]
		push	eax
		lea	eax, [ebp+var_68]
		push	eax
		mov	eax, ds:off_1B248
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		push	0
		push	30h
		push	0
		push	0
		push	0
		mov	eax, [ebp+var_4]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		push	0
		mov	eax, ds:off_1B298
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_C], eax
		cmp	[ebp+var_C], 0
		jz	short loc_165A0
		mov	eax, [ebp+var_24]
		mov	[ebp+var_10], eax
		push	0DBBA0Dh
		mov	eax, [ebp+var_10]
		push	eax
		mov	eax, ds:off_1B258
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_14], eax
		cmp	[ebp+var_14], 102h
		jnz	short loc_1659C
		mov	eax, [ebp+var_14]
		push	eax
		mov	eax, [ebp+var_10]
		push	eax
		mov	eax, ds:off_1B17C
		mov	eax, [eax]
		call	eax
		jmp	short loc_165A0
; ---------------------------------------------------------------------------


loc_1659C:				; CODE XREF: sub_164D8+AFj
		mov	[ebp+var_5], 1


loc_165A0:				; CODE XREF: sub_164D8+8Bj
					; sub_164D8+C2j
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_165BD


loc_165AD:				; CODE XREF: sub_164D8+E3j
		lea	eax, [ebp+var_4]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_165B6:				; DATA XREF: sub_164D8+14o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_165AD
; ---------------------------------------------------------------------------


loc_165BD:				; CODE XREF: sub_164D8+DDj
					; DATA XREF: sub_164D8+D0o
		mov	al, [ebp+var_5]
		mov	esp, ebp
		pop	ebp
		retn
sub_164D8	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_165C4	proc near		; CODE XREF: ServiceMain:loc_1A00Fp

var_1F8		= dword	ptr -1F8h
var_1F4		= dword	ptr -1F4h
var_1F0		= dword	ptr -1F0h
var_1EC		= dword	ptr -1ECh
var_1E8		= byte ptr -1E8h
var_1E4		= dword	ptr -1E4h
var_1E0		= dword	ptr -1E0h
var_1DC		= dword	ptr -1DCh
var_1D8		= dword	ptr -1D8h
var_1D4		= dword	ptr -1D4h
var_1D0		= dword	ptr -1D0h
var_1CC		= dword	ptr -1CCh
var_1C8		= dword	ptr -1C8h
var_1C4		= dword	ptr -1C4h
var_1C0		= byte ptr -1C0h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_21		= byte ptr -21h
var_20		= dword	ptr -20h
var_1A		= byte ptr -1Ah
var_19		= byte ptr -19h
var_18		= qword	ptr -18h
var_10		= qword	ptr -10h
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		mov	ecx, 3Fh


loc_165CC:				; CODE XREF: sub_165C4+Dj
		push	0
		push	0
		dec	ecx
		jnz	short loc_165CC
		push	ebx
		push	esi
		push	edi
		xor	eax, eax
		push	ebp
		push	offset loc_16A17
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		xor	eax, eax
		mov	[ebp+var_4], eax
		lea	eax, [ebp+var_1C0]
		push	eax
		xor	edx, edx
		mov	al, 2
		call	@Windows@MakeWord$qqrucuc ; Windows::MakeWord(uchar,uchar)
		push	eax
		mov	eax, ds:off_1B15C
		mov	eax, [eax]
		call	eax
		call	sub_15774
		xor	eax, eax
		push	ebp
		push	offset loc_169E2
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	eax, [ebp+var_1C4]
		push	eax
		mov	eax, ds:off_1B0D8
		mov	eax, [eax]
		mov	ecx, 2
		mov	edx, 1
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		mov	ecx, [ebp+var_1C4]
		mov	edx, ds:off_1B128
		mov	edx, [edx]
		lea	eax, [ebp+var_2C]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	edx, ds:off_1B2E4
		mov	edx, [edx]
		lea	eax, [ebp+var_30]
		mov	ecx, offset _str_a.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		lea	ecx, [ebp+var_1C8]
		mov	edx, ds:off_1B154
		mov	dx, [edx]
		mov	eax, [ebp+var_30]
		call	sub_140D0
		mov	edx, [ebp+var_1C8]
		mov	eax, [ebp+var_2C]
		call	sub_157D4
		mov	edx, ds:off_1B230
		mov	edx, [edx]
		mov	eax, ds:off_1B1F8
		mov	eax, [eax]
		call	sub_15B40
		xor	eax, eax
		mov	[ebp+var_4], eax
		xor	eax, eax
		mov	dword ptr [ebp+var_10],	eax
		mov	dword ptr [ebp+var_10+4], eax
		mov	eax, ds:off_1B2D0
		cmp	byte ptr [eax],	0
		jz	short loc_166BB
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	loc_169EC
; ---------------------------------------------------------------------------


loc_166BB:				; CODE XREF: sub_165C4+E8j
		mov	eax, offset _str_1.Text
		call	sub_15D84


loc_166C5:				; CODE XREF: sub_165C4+136j
		mov	eax, ds:off_1B2D0
		cmp	byte ptr [eax],	0
		jz	short loc_166DC
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	loc_169EC
; ---------------------------------------------------------------------------


loc_166DC:				; CODE XREF: sub_165C4+109j
		call	sub_157B0
		fstp	[ebp+var_18]
		wait
		fld	[ebp+var_10]
		fcomp	[ebp+var_18]
		fnstsw	ax
		sahf
		jnz	short loc_166FC
		mov	eax, 7530h
		call	sub_16B30
		jmp	short loc_166C5
; ---------------------------------------------------------------------------


loc_166FC:				; CODE XREF: sub_165C4+12Aj
		mov	eax, offset _str_2.Text
		call	sub_15D84
		mov	eax, 2710h
		call	sub_11304
		add	eax, 7D0h
		call	sub_16B30


loc_1671A:				; CODE XREF: sub_165C4+185j
		mov	eax, ds:off_1B2D0
		cmp	byte ptr [eax],	0
		jz	short loc_16731
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	loc_169EC
; ---------------------------------------------------------------------------


loc_16731:				; CODE XREF: sub_165C4+15Ej
		call	sub_15AA4
		mov	[ebp+var_21], al
		cmp	[ebp+var_21], 0
		jz	short loc_1674B
		mov	eax, 4E21h
		call	sub_16B30
		jmp	short loc_1671A
; ---------------------------------------------------------------------------


loc_1674B:				; CODE XREF: sub_165C4+179j
		mov	eax, offset _str_3.Text
		call	sub_15D84
		call	sub_159C0
		mov	eax, offset _str_4.Text
		call	sub_15D84
		mov	eax, 32h
		call	sub_11304
		add	eax, 0Ah
		mov	[ebp+var_20], eax
		imul	eax, [ebp+var_20], 3E8h
		call	sub_16B30
		lea	eax, [ebp+var_1CC]
		call	sub_15CA4
		mov	edx, [ebp+var_1CC]
		mov	eax, ds:off_1B0D4
		mov	eax, [eax]
		call	sub_130D0
		lea	edx, [ebp+var_1D0]
		mov	eax, ds:off_1B0D4
		mov	eax, [eax]
		call	sub_13420
		mov	eax, [ebp+var_1D0]
		call	sub_15D84
		lea	eax, [ebp+var_19]
		call	sub_16134
		mov	[ebp+var_1A], al
		mov	eax, offset _str_5.Text
		call	sub_15D84
		cmp	[ebp+var_1A], 0
		jz	loc_16899
		cmp	[ebp+var_19], 0
		jz	loc_16899
		mov	ecx, ds:off_1B1B4
		mov	ecx, [ecx]
		mov	edx, ds:off_1B248
		mov	edx, [edx]
		lea	eax, [ebp+var_1D4]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	edx, [ebp+var_1D4]
		mov	eax, ds:off_1B2BC
		mov	eax, [eax]
		mov	cl, 1
		call	sub_161F4
		mov	ecx, ds:off_1B1B4
		mov	ecx, [ecx]
		mov	edx, ds:off_1B248
		mov	edx, [edx]
		lea	eax, [ebp+var_1D8]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_1D8]
		lea	edx, [ebp+var_28]
		call	sub_16B44
		cmp	[ebp+var_28], 0
		jnz	short loc_16899
		mov	ecx, ds:off_1B1B4
		mov	ecx, [ecx]
		mov	edx, ds:off_1B248
		mov	edx, [edx]
		lea	eax, [ebp+var_1DC]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	edx, [ebp+var_1DC]
		mov	eax, ds:off_1B210
		mov	eax, [eax]
		mov	cl, 1
		call	sub_161F4
		mov	ecx, ds:off_1B1B4
		mov	ecx, [ecx]
		mov	edx, ds:off_1B248
		mov	edx, [edx]
		lea	eax, [ebp+var_1E0]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_1E0]
		lea	edx, [ebp+var_28]
		call	sub_16B44


loc_16899:				; CODE XREF: sub_165C4+20Fj
					; sub_165C4+219j ...
		mov	eax, offset _str_6.Text
		call	sub_15D84
		mov	ecx, ds:off_1B1B4
		mov	ecx, [ecx]
		mov	edx, ds:off_1B248
		mov	edx, [edx]
		lea	eax, [ebp+var_1E4]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_1E4]
		lea	edx, [ebp+var_28]
		call	sub_16B44
		cmp	[ebp+var_28], 0
		jz	loc_169D8
		mov	eax, offset _str_7.Text
		call	sub_15D84
		mov	ecx, ds:off_1B1B4
		mov	ecx, [ecx]
		mov	edx, ds:off_1B248
		mov	edx, [edx]
		lea	eax, [ebp+var_1EC]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_1EC]
		lea	edx, [ebp+var_1E8]
		call	sub_17030
		mov	eax, ds:off_1B2B8
		mov	eax, [eax]
		call	sub_164D8
		test	al, al
		jz	short loc_16958
		mov	edx, ds:off_1B2E4
		mov	edx, [edx]
		lea	eax, [ebp+var_30]
		mov	ecx, offset _str_T.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		lea	ecx, [ebp+var_1F0]
		mov	edx, ds:off_1B154
		mov	dx, [edx]
		mov	eax, [ebp+var_30]
		call	sub_140D0
		mov	edx, [ebp+var_1F0]
		mov	eax, [ebp+var_2C]
		call	sub_157D4
		jmp	short loc_16992
; ---------------------------------------------------------------------------


loc_16958:				; CODE XREF: sub_165C4+356j
		mov	edx, ds:off_1B2E4
		mov	edx, [edx]
		lea	eax, [ebp+var_30]
		mov	ecx, offset _str_F.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		lea	ecx, [ebp+var_1F4]
		mov	edx, ds:off_1B154
		mov	dx, [edx]
		mov	eax, [ebp+var_30]
		call	sub_140D0
		mov	edx, [ebp+var_1F4]
		mov	eax, [ebp+var_2C]
		call	sub_157D4


loc_16992:				; CODE XREF: sub_165C4+392j
		mov	eax, offset _str_8.Text
		call	sub_15D84
		call	sub_157B0
		fstp	[ebp+var_10]
		wait
		lea	eax, [ebp+var_1F8]
		push	eax
		mov	eax, ds:off_1B0D8
		mov	eax, [eax]
		mov	ecx, 2
		mov	edx, 1
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		mov	ecx, [ebp+var_1F8]
		mov	edx, ds:off_1B128
		mov	edx, [edx]
		lea	eax, [ebp+var_2C]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)


loc_169D8:				; CODE XREF: sub_165C4+30Cj
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_169EC
; ---------------------------------------------------------------------------


loc_169E2:				; DATA XREF: sub_165C4+47o
		jmp	loc_1161C
; ---------------------------------------------------------------------------
		call	@System@@DoneExcept$qqrv ; System::__linkproc__	DoneExcept(void)


loc_169EC:				; CODE XREF: sub_165C4+F2j
					; sub_165C4+113j ...
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_16A1E


loc_169F9:				; CODE XREF: sub_165C4+458j
		lea	eax, [ebp+var_1F8]
		mov	edx, 0Eh
		call	sub_11C24
		lea	eax, [ebp+var_30]
		mov	edx, 3
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_16A17:				; DATA XREF: sub_165C4+15o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_169F9
; ---------------------------------------------------------------------------


loc_16A1E:				; CODE XREF: sub_165C4+452j
					; DATA XREF: sub_165C4+430o
		mov	eax, [ebp+var_4]
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_165C4	endp

; ---------------------------------------------------------------------------
_str_a		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_165C4+90o
		dd 1			; Len
		db 'a',0                ; Text
		align 4
_str_1		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_165C4:loc_166BBo
		dd 1			; Len
		db '1',0                ; Text
		align 10h
_str_2		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_165C4:loc_166FCo
		dd 1			; Len
		db '2',0                ; Text
		align 4
_str_3		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_165C4:loc_1674Bo
		dd 1			; Len
		db '3',0                ; Text
		align 4
_str_4		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_165C4+196o
		dd 1			; Len
		db '4',0                ; Text
		align 4
_str_5		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_165C4+201o
		dd 1			; Len
		db '5',0                ; Text
		align 10h
_str_6		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_165C4:loc_16899o
		dd 1			; Len
		db '6',0                ; Text
		align 4
_str_7		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_165C4+312o
		dd 1			; Len
		db '7',0                ; Text
		align 4
_str_T		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_165C4+363o
		dd 1			; Len
		db 'T',0                ; Text
		align 4
_str_F		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_165C4+39Fo
		dd 1			; Len
		db 'F',0                ; Text
		align 10h
_str_8		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_165C4:loc_16992o
		dd 1			; Len
		db '8',0                ; Text
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_16AAC	proc near		; DATA XREF: CODE:0001A0E4o
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_16AD1
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C244
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_16AD8


loc_16AD0:				; CODE XREF: sub_16AAC+2Aj
		retn
; ---------------------------------------------------------------------------


loc_16AD1:				; DATA XREF: sub_16AAC+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_16AD0
; ---------------------------------------------------------------------------


loc_16AD8:				; CODE XREF: sub_16AAC:loc_16AD0j
					; DATA XREF: sub_16AAC+1Fo
		pop	ebp
		retn
sub_16AAC	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_16ADC	proc near		; DATA XREF: CODE:0001A0E0o
		sub	ds:dword_1C244,	1
		retn
sub_16ADC	endp

; [00000024 BYTES: COLLAPSED FUNCTION Dateutils::DayOf(System::TDateTime). PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

; int __stdcall	sub_16B08(double, double)

sub_16B08	proc near		; CODE XREF: sub_15AA4+36p

var_8		= qword	ptr -8
arg_0		= qword	ptr  8
arg_8		= qword	ptr  10h

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		fld	[ebp+arg_8]
		fsub	[ebp+arg_0]
		fabs
		fmul	flt_16B2C
		fstp	[ebp+var_8]
		wait
		fld	[ebp+var_8]
		pop	ecx
		pop	ecx
		pop	ebp
		retn	10h
sub_16B08	endp

; ---------------------------------------------------------------------------
		align 4
flt_16B2C	dd 2.4e1		; DATA XREF: sub_16B08+Er

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_16B30	proc near		; CODE XREF: sub_15394+B7p
					; sub_15524+B4p ...

var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		push	eax
		call	ds:dword_1C2C8
		pop	ecx
		pop	ebp
		retn
sub_16B30	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_16B44	proc near		; CODE XREF: sub_16134+63p
					; sub_161F4+177p ...

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF4h
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		call	sub_11FA8
		xor	eax, eax
		push	ebp
		push	offset loc_16C1F
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, [ebp+var_8]
		call	sub_11C00
		xor	eax, eax
		mov	[ebp+var_C], eax
		xor	eax, eax
		push	ebp
		push	offset loc_16C02
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		xor	eax, eax
		push	ebp
		push	offset loc_16BD4
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, [ebp+var_4]
		call	sub_13374
		test	al, al
		jnz	short loc_16BAD
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		call	@System@@TryFinallyExit$qqrv ; System::__linkproc__ TryFinallyExit(void)
		jmp	short loc_16C09
; ---------------------------------------------------------------------------


loc_16BAD:				; CODE XREF: sub_16B44+58j
		mov	ecx, [ebp+var_4]
		mov	dl, 1
		mov	eax, off_143D4
		call	sub_14448
		mov	[ebp+var_C], eax
		mov	edx, [ebp+var_8]
		mov	eax, [ebp+var_C]
		call	sub_148CC
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		jmp	short loc_16BE6
; ---------------------------------------------------------------------------


loc_16BD4:				; DATA XREF: sub_16B44+43o
		jmp	loc_1161C
; ---------------------------------------------------------------------------
		mov	eax, [ebp+var_8]
		call	sub_11C00
		call	@System@@DoneExcept$qqrv ; System::__linkproc__	DoneExcept(void)


loc_16BE6:				; CODE XREF: sub_16B44+8Ej
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_16C09


loc_16BF3:				; CODE XREF: sub_16B44+C3j
		cmp	[ebp+var_C], 0
		jz	short loc_16C01
		mov	eax, [ebp+var_C]
		call	sub_113F4


loc_16C01:				; CODE XREF: sub_16B44+B3j
		retn
; ---------------------------------------------------------------------------


loc_16C02:				; DATA XREF: sub_16B44+35o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_16BF3
; ---------------------------------------------------------------------------


loc_16C09:				; CODE XREF: sub_16B44+67j
					; sub_16B44:loc_16C01j
					; DATA XREF: ...
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_16C26


loc_16C16:				; CODE XREF: sub_16B44+E0j
		lea	eax, [ebp+var_4]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_16C1F:				; DATA XREF: sub_16B44+1Ao
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_16C16
; ---------------------------------------------------------------------------


loc_16C26:				; CODE XREF: sub_16B44+DAj
					; DATA XREF: sub_16B44+CDo
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_16B44	endp

; ---------------------------------------------------------------------------
		align 10h
; [00000088 BYTES: COLLAPSED FUNCTION Adaptreq::TBasicActionResponseImpl::HandleResponse(void).	PRESS KEYPAD "+" TO EXPAND]
_str___2	dd 0FFFFFFFFh		; _top
					; DATA XREF: Adaptreq::TBasicActionResponseImpl::HandleResponse(void)+5Ao
		dd 1			; Len
		db '\',0                ; Text
		align 4
; [000000A2 BYTES: COLLAPSED FUNCTION sub_16CC4. PRESS KEYPAD "+" TO EXPAND]
		align 4
; [000000A7 BYTES: COLLAPSED FUNCTION sub_16D68. PRESS KEYPAD "+" TO EXPAND]
		align 10h
_str___3	dd 0FFFFFFFFh		; _top ; DATA XREF: sub_16D68+6Co
		dd 1			; Len
		db '\',0                ; Text
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_16E1C	proc near		; CODE XREF: sub_191D4+6F0p

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
hLibModule	= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_6		= byte ptr -6
var_5		= byte ptr -5
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE0h
		push	ebx
		xor	edx, edx
		mov	[ebp+var_20], edx
		mov	[ebp+var_1C], edx
		mov	[ebp+var_C], edx
		mov	[ebp+var_14], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_16FA4
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, [ebp+var_4]
		call	sub_11C00
		mov	[ebp+var_5], 0
		xor	eax, eax
		push	ebp
		push	offset loc_16F72
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	[ebp+var_10]
		lea	eax, [ebp+var_C]
		mov	edx, ds:off_1B0F8
		mov	edx, [edx]
		call	sub_11C98
		mov	eax, 4E40h
		call	sub_11304
		mov	ebx, eax
		add	ebx, 2744h
		mov	eax, (offset _str_10140714.Len+1)
		call	sub_11304
		add	ebx, eax
		mov	eax, ebx
		lea	edx, [ebp+var_1C]
		call	sub_131F8
		mov	edx, [ebp+var_1C]
		lea	eax, [ebp+var_C]
		call	@System@@LStrCat$qqrv ;	System::__linkproc__ LStrCat(void)
		lea	eax, [ebp+var_C]
		mov	edx, ds:off_1B1F0
		mov	edx, [edx]
		call	@System@@LStrCat$qqrv ;	System::__linkproc__ LStrCat(void)
		lea	eax, [ebp+var_20]
		call	sub_16D68
		mov	edx, [ebp+var_20]
		lea	eax, [ebp+var_14]
		mov	ecx, [ebp+var_C]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		sub	[ebp+var_10], 51h
		mov	[ebp+var_5], 0
		mov	eax, [ebp+var_14]
		call	sub_16CC4
		mov	[ebp+var_6], al
		cmp	[ebp+var_6], 0
		jz	short loc_16F3C
		mov	eax, [ebp+var_14]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpLibFileName
		call	LoadLibraryA	; LoadLibraryA
		mov	[ebp+hLibModule], eax
		cmp	[ebp+hLibModule], 0
		jz	short loc_16F33
		add	[ebp+var_10], 40h
		mov	eax, ds:off_1B0F4
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hLibModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	ds:dword_1C2A8,	eax
		cmp	ds:dword_1C2A8,	0
		jnz	short loc_16F40
		add	[ebp+var_10], 8
		mov	[ebp+var_5], 1
		mov	eax, [ebp+hLibModule]
		push	eax		; hLibModule
		call	FreeLibrary_0
		jmp	short loc_16F40
; ---------------------------------------------------------------------------


loc_16F33:				; CODE XREF: sub_16E1C+DAj
		inc	[ebp+var_10]
		mov	[ebp+var_5], 1
		jmp	short loc_16F40
; ---------------------------------------------------------------------------


loc_16F3C:				; CODE XREF: sub_16E1C+C3j
		mov	[ebp+var_5], 1


loc_16F40:				; CODE XREF: sub_16E1C+102j
					; sub_16E1C+115j ...
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_16F79


loc_16F4D:				; CODE XREF: sub_16E1C+15Bj
		sub	[ebp+var_10], 3Fh
		lea	eax, [ebp+var_14]
		mov	edx, offset _str______.Text
		call	@System@@LStrCat$qqrv ;	System::__linkproc__ LStrCat(void)
		sub	[ebp+var_10], 2
		mov	edx, [ebp+var_4]
		mov	eax, [ebp+var_14]
		call	sub_132AC
		sub	[ebp+var_10], 36h
		retn
; ---------------------------------------------------------------------------


loc_16F72:				; DATA XREF: sub_16E1C+35o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_16F4D
; ---------------------------------------------------------------------------


loc_16F79:				; CODE XREF: sub_16E1C+155j
					; DATA XREF: sub_16E1C+12Co
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_16FAB


loc_16F86:				; CODE XREF: sub_16E1C+18Dj
		lea	eax, [ebp+var_20]
		mov	edx, 2
		call	sub_11C24
		lea	eax, [ebp+var_14]
		call	sub_11C00
		lea	eax, [ebp+var_C]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_16FA4:				; DATA XREF: sub_16E1C+1Bo
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_16F86
; ---------------------------------------------------------------------------


loc_16FAB:				; CODE XREF: sub_16E1C+187j
					; DATA XREF: sub_16E1C+165o
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_16E1C	endp

; ---------------------------------------------------------------------------
_str______	dd 0FFFFFFFFh		; _top ; DATA XREF: sub_16E1C+138o
		dd 5			; Len
		db '     ',0            ; Text
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_16FC0	proc near		; CODE XREF: sub_17030+8Ep

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF4h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	[ebp+var_C], 0FFFFFFFFh
		mov	eax, [ebp+var_8]
		and	eax, 3
		cmp	eax, 2
		ja	short loc_17029
		mov	eax, [ebp+var_8]
		and	eax, 0F0h
		cmp	eax, 40h
		ja	short loc_17029
		push	0
		push	80h
		push	3
		push	0
		mov	eax, [ebp+var_8]
		and	eax, 0F0h
		shr	eax, 4
		mov	eax, ds:dword_1B0B4[eax*4]
		push	eax
		mov	eax, [ebp+var_8]
		and	eax, 3
		mov	eax, ds:dword_1B0A8[eax*4]
		push	eax
		mov	eax, [ebp+var_4]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		call	ds:dword_1C24C
		mov	[ebp+var_C], eax


loc_17029:				; CODE XREF: sub_16FC0+1Cj
					; sub_16FC0+29j
		mov	eax, [ebp+var_C]
		mov	esp, ebp
		pop	ebp
		retn
sub_16FC0	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_17030	proc near		; CODE XREF: sub_161F4+250p
					; sub_165C4+343p

var_15C		= dword	ptr -15Ch
var_158		= byte ptr -158h
var_144		= dword	ptr -144h
var_140		= dword	ptr -140h
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFEA4h
		xor	ecx, ecx
		mov	[ebp+var_15C], ecx
		mov	[ebp+var_18], edx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		call	sub_11FA8
		xor	eax, eax
		push	ebp
		push	offset loc_1710D
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	eax, [ebp+var_158]
		push	eax
		mov	ecx, ds:off_1B0D0
		mov	ecx, [ecx]
		mov	edx, ds:off_1B248
		mov	edx, [edx]
		lea	eax, [ebp+var_15C]
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_15C]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		call	ds:dword_1C2CC
		mov	[ebp+var_8], eax
		cmp	[ebp+var_8], 0FFFFFFFFh
		jz	short loc_170EC
		mov	eax, [ebp+var_144]
		mov	[ebp+var_14], eax
		mov	eax, [ebp+var_140]
		mov	[ebp+var_10], eax
		mov	eax, [ebp+var_8]
		push	eax
		call	ds:dword_1C2D0
		mov	edx, 41h
		mov	eax, [ebp+var_4]
		call	sub_16FC0
		mov	[ebp+var_C], eax
		cmp	[ebp+var_C], 0
		jbe	short loc_170EC
		lea	eax, [ebp+var_14]
		push	eax
		lea	eax, [ebp+var_14]
		push	eax
		lea	eax, [ebp+var_14]
		push	eax
		mov	eax, [ebp+var_C]
		push	eax
		call	ds:dword_1C2D4
		mov	eax, [ebp+var_C]
		push	eax
		call	ds:dword_1C2D8


loc_170EC:				; CODE XREF: sub_17030+68j
					; sub_17030+9Aj
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_17114


loc_170F9:				; CODE XREF: sub_17030+E2j
		lea	eax, [ebp+var_15C]
		call	sub_11C00
		lea	eax, [ebp+var_4]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_1710D:				; DATA XREF: sub_17030+22o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_170F9
; ---------------------------------------------------------------------------


loc_17114:				; CODE XREF: sub_17030+DCj
					; DATA XREF: sub_17030+C4o
		mov	esp, ebp
		pop	ebp
		retn
sub_17030	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_17118	proc near		; CODE XREF: sub_191D4+6C6p

var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		xor	edx, edx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	ebp
		push	offset loc_1718D
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	edx, [ebp+var_8]
		mov	eax, ds:off_1B138
		mov	eax, [eax]
		call	sub_15864
		cmp	[ebp+var_8], 0
		jz	short loc_17156
		mov	eax, [ebp+var_4]
		mov	edx, [ebp+var_8]
		call	sub_11C54
		jmp	short loc_17177
; ---------------------------------------------------------------------------


loc_17156:				; CODE XREF: sub_17118+2Fj
		mov	eax, [ebp+var_4]
		mov	edx, ds:off_1B2A0
		mov	edx, [edx]
		call	sub_11C54
		mov	edx, [ebp+var_4]
		mov	edx, [edx]
		mov	eax, ds:off_1B138
		mov	eax, [eax]
		call	sub_157D4


loc_17177:				; CODE XREF: sub_17118+3Cj
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_17194


loc_17184:				; CODE XREF: sub_17118+7Aj
		lea	eax, [ebp+var_8]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_1718D:				; DATA XREF: sub_17118+11o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_17184
; ---------------------------------------------------------------------------


loc_17194:				; CODE XREF: sub_17118+74j
					; DATA XREF: sub_17118+67o
		pop	ecx
		pop	ecx
		pop	ebp
		retn
sub_17118	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_17198	proc near		; DATA XREF: CODE:0001A0ECo
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		push	ebp
		push	offset loc_171BD
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		inc	ds:dword_1C318
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_171C4


loc_171BC:				; CODE XREF: sub_17198+2Aj
		retn
; ---------------------------------------------------------------------------


loc_171BD:				; DATA XREF: sub_17198+6o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_171BC
; ---------------------------------------------------------------------------


loc_171C4:				; CODE XREF: sub_17198:loc_171BCj
					; DATA XREF: sub_17198+1Fo
		pop	ebp
		retn
sub_17198	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_171C8	proc near		; DATA XREF: CODE:0001A0E8o
		sub	ds:dword_1C318,	1
		retn
sub_171C8	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_171D0	proc near		; DATA XREF: CODE:0001A108o

var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		pop	ecx
		pop	ebp
		retn
sub_171D0	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_171E0	proc near		; CODE XREF: sub_17240+3Ap
					; sub_17240+53p ...

var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFD4h
		mov	[ebp+var_C], ecx
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		mov	[ebp+var_2C], 20h
		mov	eax, [ebp+var_4]
		mov	ds:dword_1C320,	eax
		mov	eax, [ebp+var_4]
		mov	[ebp+var_28], eax
		mov	[ebp+var_24], 7
		mov	eax, [ebp+var_8]
		mov	[ebp+var_20], eax
		xor	eax, eax
		mov	[ebp+var_1C], eax
		mov	eax, [ebp+var_C]
		mov	[ebp+var_18], eax
		mov	[ebp+var_14], 0BB8h
		lea	eax, [ebp+var_2C]
		push	eax
		mov	eax, ds:dword_1C31C
		push	eax
		mov	eax, ds:off_1B20C
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_10], eax
		mov	eax, [ebp+var_10]
		mov	esp, ebp
		pop	ebp
		retn
sub_171E0	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_17240	proc near		; DATA XREF: ServiceMain+14o

arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		mov	eax, [ebp+arg_0]
		cmp	eax, 5		; switch 6 cases
		ja	loc_172FA	; default
					; jumptable 0001724F case 0
		jmp	off_17256[eax*4] ; switch jump
; ---------------------------------------------------------------------------
off_17256	dd offset loc_172FA	; DATA XREF: sub_17240+Fr
		dd offset loc_1726E	; jump table for switch	statement
		dd offset loc_1729A
		dd offset loc_172BB
		dd offset loc_172DC
		dd offset loc_172EC
; ---------------------------------------------------------------------------


loc_1726E:				; CODE XREF: sub_17240+Fj
					; DATA XREF: sub_17240:off_17256o
		mov	ecx, 1		; jumptable 0001724F case 1
		xor	edx, edx
		mov	eax, 3
		call	sub_171E0
		push	0Ah
		mov	eax, ds:off_1B1E4
		mov	eax, [eax]
		call	eax
		xor	ecx, ecx
		xor	edx, edx
		mov	eax, 1
		call	sub_171E0
		jmp	short loc_172FA	; default
					; jumptable 0001724F case 0
; ---------------------------------------------------------------------------


loc_1729A:				; CODE XREF: sub_17240+Fj
					; DATA XREF: sub_17240:off_17256o
		mov	ecx, 1		; jumptable 0001724F case 2
		xor	edx, edx
		mov	eax, 6
		call	sub_171E0
		xor	ecx, ecx
		xor	edx, edx
		mov	eax, 7
		call	sub_171E0
		jmp	short loc_172FA	; default
					; jumptable 0001724F case 0
; ---------------------------------------------------------------------------


loc_172BB:				; CODE XREF: sub_17240+Fj
					; DATA XREF: sub_17240:off_17256o
		mov	ecx, 1		; jumptable 0001724F case 3
		xor	edx, edx
		mov	eax, 5
		call	sub_171E0
		xor	ecx, ecx
		xor	edx, edx
		mov	eax, 4
		call	sub_171E0
		jmp	short loc_172FA	; default
					; jumptable 0001724F case 0
; ---------------------------------------------------------------------------


loc_172DC:				; CODE XREF: sub_17240+Fj
					; DATA XREF: sub_17240:off_17256o
		xor	ecx, ecx	; jumptable 0001724F case 4
		xor	edx, edx
		mov	eax, ds:dword_1C320
		call	sub_171E0
		jmp	short loc_172FA	; default
					; jumptable 0001724F case 0
; ---------------------------------------------------------------------------


loc_172EC:				; CODE XREF: sub_17240+Fj
					; DATA XREF: sub_17240:off_17256o
		xor	ecx, ecx	; jumptable 0001724F case 5
		xor	edx, edx
		mov	eax, 1
		call	sub_171E0


loc_172FA:				; CODE XREF: sub_17240+9j sub_17240+Fj ...
		pop	ebp		; default
					; jumptable 0001724F case 0
		retn	4
sub_17240	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_17300	proc near		; CODE XREF: r+20p ServiceMain+5p

var_188		= dword	ptr -188h
var_184		= dword	ptr -184h
var_180		= dword	ptr -180h
var_17C		= dword	ptr -17Ch
var_178		= dword	ptr -178h
var_174		= dword	ptr -174h
var_170		= dword	ptr -170h
var_16C		= dword	ptr -16Ch
var_168		= dword	ptr -168h
var_164		= dword	ptr -164h
var_160		= dword	ptr -160h
var_15C		= dword	ptr -15Ch
var_158		= dword	ptr -158h
var_154		= dword	ptr -154h
var_150		= dword	ptr -150h
var_14C		= dword	ptr -14Ch
var_148		= dword	ptr -148h
var_144		= dword	ptr -144h
var_140		= dword	ptr -140h
var_13C		= dword	ptr -13Ch
var_138		= dword	ptr -138h
var_134		= dword	ptr -134h
var_130		= dword	ptr -130h
var_12C		= dword	ptr -12Ch
var_128		= dword	ptr -128h
var_124		= dword	ptr -124h
var_120		= dword	ptr -120h
var_11C		= dword	ptr -11Ch
var_118		= dword	ptr -118h
var_114		= dword	ptr -114h
var_110		= dword	ptr -110h
var_10C		= dword	ptr -10Ch
var_108		= dword	ptr -108h
var_104		= dword	ptr -104h
var_100		= dword	ptr -100h
var_FC		= dword	ptr -0FCh
var_F8		= dword	ptr -0F8h
var_F4		= dword	ptr -0F4h
var_F0		= dword	ptr -0F0h
var_EC		= dword	ptr -0ECh
var_E8		= dword	ptr -0E8h
var_E4		= dword	ptr -0E4h
var_E0		= dword	ptr -0E0h
var_DC		= dword	ptr -0DCh
var_D8		= dword	ptr -0D8h
var_D4		= dword	ptr -0D4h
var_D0		= dword	ptr -0D0h
var_CC		= dword	ptr -0CCh
var_C8		= dword	ptr -0C8h
var_C4		= dword	ptr -0C4h
var_C0		= dword	ptr -0C0h
var_BC		= dword	ptr -0BCh
var_B8		= dword	ptr -0B8h
var_B4		= dword	ptr -0B4h
var_B0		= dword	ptr -0B0h
var_AC		= dword	ptr -0ACh
var_A8		= dword	ptr -0A8h
var_A4		= dword	ptr -0A4h
var_A0		= dword	ptr -0A0h
var_9C		= dword	ptr -9Ch
var_98		= dword	ptr -98h
var_94		= dword	ptr -94h
var_90		= dword	ptr -90h
var_8C		= dword	ptr -8Ch
var_88		= dword	ptr -88h
var_84		= dword	ptr -84h
var_80		= dword	ptr -80h
var_7C		= dword	ptr -7Ch
var_78		= dword	ptr -78h
var_74		= dword	ptr -74h
var_70		= dword	ptr -70h
var_6C		= dword	ptr -6Ch
var_68		= dword	ptr -68h
var_64		= dword	ptr -64h
var_60		= dword	ptr -60h
var_5C		= dword	ptr -5Ch
var_58		= dword	ptr -58h
var_54		= dword	ptr -54h
var_50		= dword	ptr -50h
var_4C		= dword	ptr -4Ch
var_48		= dword	ptr -48h
var_44		= dword	ptr -44h
var_40		= dword	ptr -40h
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		mov	ecx, 31h


loc_17308:				; CODE XREF: sub_17300+Dj
		push	0
		push	0
		dec	ecx
		jnz	short loc_17308
		mov	[ebp+var_10], eax
		xor	eax, eax
		push	ebp
		push	offset loc_181CF
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	[ebp+var_4], 1
		lea	eax, [ebp+var_8]
		push	eax
		xor	ecx, ecx
		mov	edx, 85B2h
		mov	eax, offset a9udbfa ; "9udbfA"
		call	sub_1432C
		mov	eax, [ebp+var_8]
		call	sub_13260
		mov	edx, ds:off_1B230
		mov	[edx], eax
		lea	eax, [ebp+var_C]
		push	eax
		xor	ecx, ecx
		mov	edx, 85B3h
		mov	eax, offset a0wetUf ; "0WEt/UF"
		call	sub_1432C
		mov	eax, [ebp+var_C]
		call	sub_13260
		mov	edx, ds:off_1B154
		mov	[edx], eax
		lea	eax, [ebp+var_14]
		push	eax
		xor	ecx, ecx
		mov	edx, 85B4h
		mov	eax, offset aKp5dpQh8hdty9f ; "kP5dp/Qh8HDty9F9"
		call	sub_1432C
		mov	edx, [ebp+var_14]
		mov	eax, ds:off_1B184
		call	sub_11C54
		lea	eax, [ebp+var_18]
		push	eax
		xor	ecx, ecx
		mov	edx, 85B5h
		mov	eax, offset aXIrfiex5vvgm0c ; "X/iRfiex5VVgm0Cmz8GI"
		call	sub_1432C
		mov	edx, [ebp+var_18]
		mov	eax, ds:off_1B318
		call	sub_11C54
		lea	eax, [ebp+var_1C]
		push	eax
		xor	ecx, ecx
		mov	edx, 85B6h
		mov	eax, offset aX3nxi8gonqlBmx ; "X3nxI8GoNQL/BMX2URG"
		call	sub_1432C
		mov	edx, [ebp+var_1C]
		mov	eax, ds:off_1B1F4
		call	sub_11C54
		lea	eax, [ebp+var_20]
		push	eax
		xor	ecx, ecx
		mov	edx, 85B7h
		mov	eax, offset aXlij4gonh8xdpb ; "XLIJ4GoNh8xDpbG"
		call	sub_1432C
		mov	edx, [ebp+var_20]
		mov	eax, ds:off_1B264
		call	sub_11C54
		lea	eax, [ebp+var_24]
		push	eax
		xor	ecx, ecx
		mov	edx, 85B8h
		mov	eax, offset aXdnprsrjuinbad ; "XDNprsRjUInbAdst3IU0wB"
		call	sub_1432C
		mov	edx, [ebp+var_24]
		mov	eax, ds:off_1B1DC
		call	sub_11C54
		lea	eax, [ebp+var_28]
		push	eax
		xor	ecx, ecx
		mov	edx, 85B9h
		mov	eax, offset aXhedd1pkttsu7p ; "XHedd1pkttSU7pI"
		call	sub_1432C
		mov	edx, [ebp+var_28]
		mov	eax, ds:off_1B1D8
		call	sub_11C54
		lea	eax, [ebp+var_2C]
		push	eax
		xor	ecx, ecx
		mov	edx, 85BAh
		mov	eax, offset aXfzDjhnflqiwet ; "Xfz/DJhNfLQiwETyDA"
		call	sub_1432C
		mov	edx, [ebp+var_2C]
		mov	eax, ds:off_1B260
		call	sub_11C54
		lea	eax, [ebp+var_30]
		push	eax
		xor	ecx, ecx
		mov	edx, 85BBh
		mov	eax, offset aW3x5xloPn3dqa7 ; "W3x5Xlo/pN3DQa7k51w6pckjR9DbZWdqw90hRki"...
		call	sub_1432C
		mov	edx, [ebp+var_30]
		mov	eax, ds:off_1B130
		call	sub_11C54
		lea	eax, [ebp+var_34]
		push	eax
		xor	ecx, ecx
		mov	edx, 85BCh
		mov	eax, offset aGacimveqxypyrw ; "gacimvEQxypyRWa94Tb8HFSm7XhcF5Ct8DeoUqF"...
		call	sub_1432C
		mov	edx, [ebp+var_34]
		mov	eax, ds:off_1B328
		call	sub_11C54
		lea	eax, [ebp+var_38]
		push	eax
		xor	ecx, ecx
		mov	edx, 85BDh
		mov	eax, offset aWdqpu5d7wp6zgq ; "WDqPu5d7WP6zgQTPg/mh6lB9dbhnYgTxhvBplNG"...
		call	sub_1432C
		mov	edx, [ebp+var_38]
		mov	eax, ds:off_1B214
		call	sub_11C54
		lea	eax, [ebp+var_3C]
		push	eax
		xor	ecx, ecx
		mov	edx, 85BEh
		mov	eax, offset aGgmyPd2ozQulpm ; "gGmy/Pd2OZ+qULPmCXrIUEKjuFOH5fiJISLFLNB"...
		call	sub_1432C
		mov	edx, [ebp+var_3C]
		mov	eax, ds:off_1B18C
		call	sub_11C54
		lea	eax, [ebp+var_40]
		push	eax
		xor	ecx, ecx
		mov	edx, 85BFh
		mov	eax, offset aWxtolczhn6hbtr ; "WXtOlcZHN6HbtRyzETO9/RCvkuqTHZx+rF6AH3r"...
		call	sub_1432C
		mov	edx, [ebp+var_40]
		mov	eax, ds:off_1B1C8
		call	sub_11C54
		mov	eax, ds:off_1B1B8
		mov	edx, offset _str_10140714.Text
		call	sub_11C54
		mov	eax, ds:off_1B128
		mov	edx, offset _str_m.Text
		call	sub_11C54
		lea	eax, [ebp+var_44]
		push	eax
		xor	ecx, ecx
		mov	edx, 85C0h
		mov	eax, offset aAvogCr8z4xsa ; "AvOG+cR+8Z4xSA"
		call	sub_1432C
		mov	edx, [ebp+var_44]
		mov	eax, ds:off_1B158
		call	sub_11C54
		lea	eax, [ebp+var_48]
		push	eax
		xor	ecx, ecx
		mov	edx, 85C1h
		mov	eax, offset aHt2ajqhh ;	"HT2AJqHh"
		call	sub_1432C
		mov	edx, [ebp+var_48]
		mov	eax, ds:off_1B0D8
		call	sub_11C54
		lea	eax, [ebp+var_4C]
		push	eax
		mov	eax, ds:off_1B0D8
		mov	eax, [eax]
		mov	ecx, 2
		mov	edx, 1
		call	@System@@LStrCopy$qqrv ; System::__linkproc__ LStrCopy(void)
		mov	edx, [ebp+var_4C]
		mov	ecx, ds:off_1B1B8
		mov	ecx, [ecx]
		mov	eax, ds:off_1B2E4
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		lea	eax, [ebp+var_50]
		push	eax
		xor	ecx, ecx
		mov	edx, 85C2h
		mov	eax, offset aWjlkwziw17zw4r ; "WjLkWZIw17zW4RSAlIx3yidiFVqqa3pw"
		call	sub_1432C
		mov	edx, [ebp+var_50]
		mov	eax, ds:off_1B1D0
		call	sub_11C54
		lea	eax, [ebp+var_54]
		push	eax
		xor	ecx, ecx
		mov	edx, 85C3h
		mov	eax, offset aN3r3r2c2u8o ; "n3R3R2C2U8O"
		call	sub_1432C
		mov	edx, [ebp+var_54]
		mov	eax, ds:off_1B1A0
		call	sub_11C54
		lea	eax, [ebp+var_58]
		push	eax
		xor	ecx, ecx
		mov	edx, 85C4h
		mov	eax, offset a06xbczqyep3h8i ; "06xbCzqyEp3H8ibkfaL"
		call	sub_1432C
		mov	edx, [ebp+var_58]
		mov	eax, ds:off_1B1AC
		call	sub_11C54
		lea	eax, [ebp+var_5C]
		push	eax
		xor	ecx, ecx
		mov	edx, 85C5h
		mov	eax, offset a3olt5mlcimlvbh ; "3Olt5MLcImLvBHCCVB"
		call	sub_1432C
		mov	edx, [ebp+var_5C]
		mov	eax, ds:off_1B0E8
		call	sub_11C54
		lea	eax, [ebp+var_60]
		push	eax
		xor	ecx, ecx
		mov	edx, 85C6h
		mov	eax, offset aVrstxrnwrioqxt ; "vrStxRNwrIOQXT8d0dK"
		call	sub_1432C
		mov	edx, [ebp+var_60]
		mov	eax, ds:off_1B2DC
		call	sub_11C54
		lea	eax, [ebp+var_64]
		push	eax
		xor	ecx, ecx
		mov	edx, 85C7h
		mov	eax, offset aZcpytji4wKmxsj ; "zCPytjI4w/kmxSjvdD"
		call	sub_1432C
		mov	edx, [ebp+var_64]
		mov	eax, ds:off_1B148
		call	sub_11C54
		lea	eax, [ebp+var_68]
		push	eax
		xor	ecx, ecx
		mov	edx, 85C8h
		mov	eax, offset aWzqe ; "wzqE"
		call	sub_1432C
		mov	edx, [ebp+var_68]
		mov	eax, ds:off_1B138
		call	sub_11C54
		lea	eax, [ebp+var_6C]
		push	eax
		xor	ecx, ecx
		mov	edx, 85C9h
		mov	eax, offset aYpe98aaZowfc7l ; "yPE98Aa/zOwfc7L"
		call	sub_1432C
		mov	edx, [ebp+var_6C]
		mov	eax, ds:off_1B1CC
		call	sub_11C54
		lea	eax, [ebp+var_70]
		push	eax
		xor	ecx, ecx
		mov	edx, 85CAh
		mov	eax, offset a2ff3uqs8 ;	"2fF3uQS8"
		call	sub_1432C
		mov	edx, [ebp+var_70]
		mov	eax, ds:off_1B22C
		call	sub_11C54
		lea	eax, [ebp+var_74]
		push	eax
		xor	ecx, ecx
		mov	edx, 85CBh
		mov	eax, offset aThbewih ; "tHbEWiH"
		call	sub_1432C
		mov	edx, [ebp+var_74]
		mov	eax, ds:off_1B28C
		call	sub_11C54
		lea	eax, [ebp+var_78]
		push	eax
		xor	ecx, ecx
		mov	edx, 85CCh
		mov	eax, offset aIhnmnoxrx3rq6q ; "iHNMNOXRx3RQ6Q7jdD"
		call	sub_1432C
		mov	edx, [ebp+var_78]
		mov	eax, ds:off_1B2CC
		call	sub_11C54
		lea	eax, [ebp+var_7C]
		push	eax
		xor	ecx, ecx
		mov	edx, 85CDh
		mov	eax, offset aO3ix ; "o3iX"
		call	sub_1432C
		mov	edx, [ebp+var_7C]
		mov	eax, ds:off_1B0F8
		call	sub_11C54
		lea	eax, [ebp+var_80]
		push	eax
		xor	ecx, ecx
		mov	edx, 85CEh
		mov	eax, offset aRyj3c ; "ryJ/3C"
		call	sub_1432C
		mov	edx, [ebp+var_80]
		mov	eax, ds:off_1B1F0
		call	sub_11C54
		lea	eax, [ebp+var_84]
		push	eax
		xor	ecx, ecx
		mov	edx, 85CFh
		mov	eax, offset aWjbn8fAxwp9ka ; "wjBN8f/aXwP9kA"
		call	sub_1432C
		mov	edx, [ebp+var_84]
		mov	eax, ds:off_1B180
		call	sub_11C54
		lea	eax, [ebp+var_88]
		push	eax
		xor	ecx, ecx
		mov	edx, 85D0h
		mov	eax, offset aQjzpnemssqum2e ; "QjzPnEMSsqUM2eHIUlGsoCdc"
		call	sub_1432C
		mov	edx, [ebp+var_88]
		mov	eax, ds:off_1B0F4
		call	sub_11C54
		lea	eax, [ebp+var_8C]
		push	eax
		xor	ecx, ecx
		mov	edx, 85D1h
		mov	eax, offset aYd9tmo54lvlodz ; "yD9Tmo54lvlODZI"
		call	sub_1432C
		mov	edx, [ebp+var_8C]
		mov	eax, ds:off_1B1CC
		call	sub_11C54
		lea	eax, [ebp+var_90]
		push	eax
		xor	ecx, ecx
		mov	edx, 85D2h
		mov	eax, offset a27c6ja ; "27c6JA"
		call	sub_1432C
		mov	edx, [ebp+var_90]
		mov	eax, ds:off_1B268
		call	sub_11C54
		lea	eax, [ebp+var_94]
		push	eax
		xor	ecx, ecx
		mov	edx, 85D3h
		mov	eax, offset aSdcxoabzfunzsb ; "SDCXoAbZFUnZSB"
		call	sub_1432C
		mov	edx, [ebp+var_94]
		mov	eax, ds:off_1B11C
		call	sub_11C54
		lea	eax, [ebp+var_98]
		push	eax
		xor	ecx, ecx
		mov	edx, 85D4h
		mov	eax, offset aSlbls7x1hzzspc ; "SLBLS7X1hzZsPC"
		call	sub_1432C
		mov	edx, [ebp+var_98]
		mov	eax, ds:off_1B2E8
		call	sub_11C54
		lea	eax, [ebp+var_9C]
		push	eax
		xor	ecx, ecx
		mov	edx, 85D5h
		mov	eax, offset aSzl8erwtqldxih ; "Szl8eRWTqlDXihjl9SF0"
		call	sub_1432C
		mov	edx, [ebp+var_9C]
		mov	eax, ds:off_1B144
		call	sub_11C54
		lea	eax, [ebp+var_A0]
		push	eax
		xor	ecx, ecx
		mov	edx, 85D6h
		mov	eax, offset aIdavaeqq1tozmr ; "iDavAEqQ1TOzmr5S4D"
		call	sub_1432C
		mov	edx, [ebp+var_A0]
		mov	eax, ds:off_1B2CC
		call	sub_11C54
		lea	eax, [ebp+var_A4]
		push	eax
		xor	ecx, ecx
		mov	edx, 85D7h
		mov	eax, offset a2vnzebtf ;	"2vNZeBTF"
		call	sub_1432C
		mov	edx, [ebp+var_A4]
		mov	eax, ds:off_1B22C
		call	sub_11C54
		lea	eax, [ebp+var_A8]
		push	eax
		xor	ecx, ecx
		mov	edx, 85D8h
		mov	eax, offset a2fuoik002ldhga ; "2fuOiK002LdHgA"
		call	sub_1432C
		mov	edx, [ebp+var_A8]
		mov	eax, ds:off_1B238
		call	sub_11C54
		lea	eax, [ebp+var_AC]
		push	eax
		xor	ecx, ecx
		mov	edx, 85D9h
		mov	eax, offset a3rhMc ; "3rH/MC"
		call	sub_1432C
		mov	edx, [ebp+var_AC]
		mov	eax, ds:off_1B2C0
		call	sub_11C54
		lea	eax, [ebp+var_B0]
		push	eax
		xor	ecx, ecx
		mov	edx, 85DAh
		mov	eax, offset aSh2cgpbzijcx ; "sH2CGpbZijcX"
		call	sub_1432C
		mov	edx, [ebp+var_B0]
		mov	eax, ds:off_1B254
		call	sub_11C54
		lea	eax, [ebp+var_B4]
		push	eax
		xor	ecx, ecx
		mov	edx, 85DBh
		mov	eax, offset aSprqknwt4gd ; "sPrQKNWt+4Gd"
		call	sub_1432C
		mov	edx, [ebp+var_B4]
		mov	eax, ds:off_1B108
		call	sub_11C54
		lea	eax, [ebp+var_B8]
		push	eax
		xor	ecx, ecx
		mov	edx, 85DCh
		mov	eax, offset aT7wppaj ; "t7wPpaJ"
		call	sub_1432C
		mov	edx, [ebp+var_B8]
		mov	eax, ds:off_1B28C
		call	sub_11C54
		lea	eax, [ebp+var_BC]
		push	eax
		xor	ecx, ecx
		mov	edx, 85DDh
		mov	eax, offset aMzmiUdaqb ; "mzMi/udaqB"
		call	sub_1432C
		mov	edx, [ebp+var_BC]
		mov	eax, ds:off_1B1D4
		call	sub_11C54
		lea	eax, [ebp+var_C0]
		push	eax
		xor	ecx, ecx
		mov	edx, 85DEh
		mov	eax, offset aR7wpvcn ; "r7wPvCN"
		call	sub_1432C
		mov	edx, [ebp+var_C0]
		mov	eax, ds:off_1B168
		call	sub_11C54
		lea	eax, [ebp+var_C4]
		push	eax
		xor	ecx, ecx
		mov	edx, 85DFh
		mov	eax, offset aThprspf ; "tHprspF"
		call	sub_1432C
		mov	edx, [ebp+var_C4]
		mov	eax, ds:off_1B164
		call	sub_11C54
		lea	eax, [ebp+var_C8]
		push	eax
		xor	ecx, ecx
		mov	edx, 85E0h
		mov	eax, offset aClm8cne566tzdz ; "CLm8cne566tzDzy6"
		call	sub_1432C
		mov	edx, [ebp+var_C8]
		mov	eax, ds:off_1B2D8
		call	sub_11C54
		lea	eax, [ebp+var_CC]
		push	eax
		xor	ecx, ecx
		mov	edx, 85E1h
		mov	eax, offset aCpbbw7wbe9pn1f ; "CPbBW7wbE9Pn1FmMjWgSFP+TRB"
		call	sub_1432C
		mov	edx, [ebp+var_CC]
		mov	eax, ds:off_1B228
		call	sub_11C54
		lea	eax, [ebp+var_D0]
		push	eax
		xor	ecx, ecx
		mov	edx, 85E2h
		mov	eax, offset aGhlqwi2zocsz ; "GHLqWi2zoCsz"
		call	sub_1432C
		mov	edx, [ebp+var_D0]
		mov	eax, ds:off_1B274
		call	sub_11C54
		lea	eax, [ebp+var_D4]
		push	eax
		xor	ecx, ecx
		mov	edx, 85E3h
		mov	eax, offset aZdzicszhb1ba3z ; "zDZiCSzhb1BA3ZC"
		call	sub_1432C
		mov	edx, [ebp+var_D4]
		mov	eax, ds:off_1B178
		call	sub_11C54
		lea	eax, [ebp+var_D8]
		push	eax
		xor	ecx, ecx
		mov	edx, 85E4h
		mov	eax, offset aUnnhprb8zpygOv ; "unNHPRb8Zpyg/OvI"
		call	sub_1432C
		mov	edx, [ebp+var_D8]
		mov	eax, ds:off_1B134
		call	sub_11C54
		lea	eax, [ebp+var_DC]
		push	eax
		xor	ecx, ecx
		mov	edx, 85E5h
		mov	eax, offset aCrwims23tyojf1 ; "CrWimS23tyojF1Xh98Ci/2WkjC8XPjN"
		call	sub_1432C
		mov	edx, [ebp+var_DC]
		mov	eax, ds:off_1B2A4
		call	sub_11C54
		lea	eax, [ebp+var_E0]
		push	eax
		xor	ecx, ecx
		mov	edx, 85E6h
		mov	eax, offset aCvlnmageic14cc ; "CvLnMAGeIC14Cc3XcUHQJaKn/A"
		call	sub_1432C
		mov	edx, [ebp+var_E0]
		mov	eax, ds:off_1B314
		call	sub_11C54
		lea	eax, [ebp+var_E4]
		push	eax
		xor	ecx, ecx
		mov	edx, 85E7h
		mov	eax, offset aTtgrekq4fbaxjw ; "TTgREKQ4FbAXJWToXWH"
		call	sub_1432C
		mov	edx, [ebp+var_E4]
		mov	eax, ds:off_1B1E8
		call	sub_11C54
		lea	eax, [ebp+var_E8]
		push	eax
		xor	ecx, ecx
		mov	edx, 85E8h
		mov	eax, offset aM7onjbuuwroq7a ; "m7OnjBUuwrOQ7AJ"
		call	sub_1432C
		mov	edx, [ebp+var_E8]
		mov	eax, ds:off_1B160
		call	sub_11C54
		lea	eax, [ebp+var_EC]
		push	eax
		xor	ecx, ecx
		mov	edx, 85E9h
		mov	eax, offset aWbqskC ; "WbQsk/C"
		call	sub_1432C
		mov	edx, [ebp+var_EC]
		mov	eax, ds:off_1B19C
		call	sub_11C54
		lea	eax, [ebp+var_F0]
		push	eax
		xor	ecx, ecx
		mov	edx, 85EAh
		mov	eax, offset aGvsjld ; "gvSJlD"
		call	sub_1432C
		mov	edx, [ebp+var_F0]
		mov	eax, ds:off_1B25C
		call	sub_11C54
		lea	eax, [ebp+var_F4]
		push	eax
		xor	ecx, ecx
		mov	edx, 85EBh
		mov	eax, offset aQdevtntc ;	"QDEVtnTc"
		call	sub_1432C
		mov	edx, [ebp+var_F4]
		mov	eax, ds:off_1B320
		call	sub_11C54
		lea	eax, [ebp+var_F8]
		push	eax
		xor	ecx, ecx
		mov	edx, 85ECh
		mov	eax, offset aQl5mra ; "QL5mRA"
		call	sub_1432C
		mov	edx, [ebp+var_F8]
		mov	eax, ds:off_1B150
		call	sub_11C54
		lea	eax, [ebp+var_FC]
		push	eax
		xor	ecx, ecx
		mov	edx, 85EDh
		mov	eax, offset a3qizia ; "3qIziA"
		call	sub_1432C
		mov	edx, [ebp+var_FC]
		mov	eax, ds:off_1B100
		call	sub_11C54
		lea	eax, [ebp+var_100]
		push	eax
		xor	ecx, ecx
		mov	edx, 85EEh
		mov	eax, offset aWfqpc62nea	; "wfQPC62nEA"
		call	sub_1432C
		mov	edx, [ebp+var_100]
		mov	eax, ds:off_1B2A0
		call	sub_11C54
		lea	eax, [ebp+var_104]
		push	eax
		xor	ecx, ecx
		mov	edx, 85EFh
		mov	eax, offset aMj0p4IjajWub ; "mj0P4/ijAJ/wUB"
		call	sub_1432C
		mov	edx, [ebp+var_104]
		mov	eax, ds:off_1B0D0
		call	sub_11C54
		lea	eax, [ebp+var_108]
		push	eax
		xor	ecx, ecx
		mov	edx, 85F0h
		mov	eax, offset aDxn7yx2qOo76qn ; "DXN7yx2q/oo76QNOrBG"
		call	sub_1432C
		mov	edx, [ebp+var_108]
		mov	eax, ds:off_1B140
		call	sub_11C54
		lea	eax, [ebp+var_10C]
		push	eax
		xor	ecx, ecx
		mov	edx, 85F1h
		mov	eax, offset aDlu9fdzrefhw ; "DLu9fdzREfHw"
		call	sub_1432C
		mov	edx, [ebp+var_10C]
		mov	eax, ds:off_1B120
		call	sub_11C54
		lea	eax, [ebp+var_110]
		push	eax
		xor	ecx, ecx
		mov	edx, 85F2h
		mov	eax, offset aW7887qqnm64vmd ; "W7887QqNM64VMDI"
		call	sub_1432C
		mov	edx, [ebp+var_110]
		mov	eax, ds:off_1B0E0
		call	sub_11C54
		lea	eax, [ebp+var_114]
		push	eax
		xor	ecx, ecx
		mov	edx, 85F3h
		mov	eax, offset aGFkeeLsgeuek ; "G/fkEE+/lsGEUeK"
		call	sub_1432C
		mov	edx, [ebp+var_114]
		mov	eax, ds:off_1B234
		call	sub_11C54
		lea	eax, [ebp+var_118]
		push	eax
		xor	ecx, ecx
		mov	edx, 85F4h
		mov	eax, offset aYhlvxq2bo3yoGg ; "yHLVXq2Bo3Yo+GGt"
		call	sub_1432C
		mov	edx, [ebp+var_118]
		mov	eax, ds:off_1B0C8
		call	sub_11C54
		lea	eax, [ebp+var_11C]
		push	eax
		xor	ecx, ecx
		mov	edx, 85F5h
		mov	eax, offset aQfk7v0eoidjp ; "qfk7V0eOIdJp"
		call	sub_1432C
		mov	edx, [ebp+var_11C]
		mov	eax, ds:off_1B1B4
		call	sub_11C54
		lea	eax, [ebp+var_120]
		push	eax
		xor	ecx, ecx
		mov	edx, 85F6h
		mov	eax, offset aXb8t ; "xb8t"
		call	sub_1432C
		mov	edx, [ebp+var_120]
		mov	eax, ds:off_1B29C
		call	sub_11C54
		lea	eax, [ebp+var_124]
		push	eax
		xor	ecx, ecx
		mov	edx, 85F7h
		mov	eax, offset aTvuvipipgc	; "tvUviPIpGC"
		call	sub_1432C
		mov	edx, [ebp+var_124]
		mov	eax, ds:off_1B2F8
		call	sub_11C54
		lea	eax, [ebp+var_128]
		push	eax
		xor	ecx, ecx
		mov	edx, 85F8h
		mov	eax, offset aQwzeiwl ; "qWzEiWL"
		call	sub_1432C
		mov	edx, [ebp+var_128]
		mov	eax, ds:off_1B270
		call	sub_11C54
		lea	eax, [ebp+var_12C]
		push	eax
		xor	ecx, ecx
		mov	edx, 85F9h
		mov	eax, offset aBtaw8azf2mf3i6 ; "BTAW8AzF2Mf3i6O"
		call	sub_1432C
		mov	edx, [ebp+var_12C]
		mov	eax, ds:off_1B208
		call	sub_11C54
		lea	eax, [ebp+var_130]
		push	eax
		xor	ecx, ecx
		mov	edx, 85FAh
		mov	eax, offset aIrrvhmgettz3 ; "IrrvhMGeTTz3"
		call	sub_1432C
		mov	edx, [ebp+var_130]
		mov	eax, ds:off_1B174
		call	sub_11C54
		lea	eax, [ebp+var_134]
		push	eax
		xor	ecx, ecx
		mov	edx, 85FBh
		mov	eax, offset aR6sb7c ; "r6Sb7C"
		call	sub_1432C
		mov	edx, [ebp+var_134]
		mov	eax, ds:off_1B114
		call	sub_11C54
		lea	eax, [ebp+var_138]
		push	eax
		xor	ecx, ecx
		mov	edx, 85FCh
		mov	eax, offset aY73kEf ; "y73k/eF"
		call	sub_1432C
		mov	edx, [ebp+var_138]
		mov	eax, ds:off_1B2BC
		call	sub_11C54
		lea	eax, [ebp+var_13C]
		push	eax
		xor	ecx, ecx
		mov	edx, 85FDh
		mov	eax, offset aYI9jaos ; "y/i9jAoS"
		call	sub_1432C
		mov	edx, [ebp+var_13C]
		mov	eax, ds:off_1B210
		call	sub_11C54
		lea	eax, [ebp+var_140]
		push	eax
		xor	ecx, ecx
		mov	edx, 85FEh
		mov	eax, offset aGdwzhmUoewnlle ; "GDwZHM+UoewNLLeu+FO"
		call	sub_1432C
		mov	edx, [ebp+var_140]
		mov	eax, ds:off_1B244
		call	sub_11C54
		lea	eax, [ebp+var_144]
		push	eax
		xor	ecx, ecx
		mov	edx, 85FFh
		mov	eax, offset aSzi1lkyc5xitio ; "SzI1lKyC5xITIo6SAxJ7NLf2aB"
		call	sub_1432C
		mov	edx, [ebp+var_144]
		mov	eax, ds:off_1B200
		call	sub_11C54
		lea	eax, [ebp+var_148]
		push	eax
		xor	ecx, ecx
		mov	edx, 8600h
		mov	eax, offset aAnhuy2l6rw7iy3 ; "anHuY2L6RW7Iy3n/bKFzSr+xYpglkDOR"
		call	sub_1432C
		mov	edx, [ebp+var_148]
		mov	eax, ds:off_1B27C
		call	sub_11C54
		lea	eax, [ebp+var_14C]
		push	eax
		xor	ecx, ecx
		mov	edx, 8601h
		mov	eax, offset aJjtrl1y50pwkez ; "JjTrl1Y50PWKeZQDLEK"
		call	sub_1432C
		mov	edx, [ebp+var_14C]
		mov	eax, ds:off_1B0EC
		call	sub_11C54
		lea	eax, [ebp+var_150]
		push	eax
		xor	ecx, ecx
		mov	edx, 8602h
		mov	eax, offset aF6it77tthjyqpp ; "F/6iT77TTHJYQpP"
		call	sub_1432C
		mov	edx, [ebp+var_150]
		mov	eax, ds:off_1B1EC
		call	sub_11C54
		lea	eax, [ebp+var_154]
		push	eax
		xor	ecx, ecx
		mov	edx, 8603h
		mov	eax, offset aUhalwh5etjfvjw ; "UHaLWh5EtjfVJwTYa/wOSAL0tMKJ83LD3Gru"
		call	sub_1432C
		mov	edx, [ebp+var_154]
		mov	eax, ds:off_1B2B0
		call	sub_11C54
		lea	eax, [ebp+var_158]
		push	eax
		xor	ecx, ecx
		mov	edx, 8604h
		mov	eax, offset aJtshkc35f9zla2 ; "JTsHKC35f9zLA2d2"
		call	sub_1432C
		mov	edx, [ebp+var_158]
		mov	eax, ds:off_1B24C
		call	sub_11C54
		lea	eax, [ebp+var_15C]
		push	eax
		xor	ecx, ecx
		mov	edx, 8605h
		mov	eax, offset aCjlxcpov2lingn ; "CjLXcpOV2LINgNIGrC"
		call	sub_1432C
		mov	edx, [ebp+var_15C]
		mov	eax, ds:off_1B250
		call	sub_11C54
		lea	eax, [ebp+var_160]
		push	eax
		xor	ecx, ecx
		mov	edx, 8606h
		mov	eax, offset aFxwyhdsp1epcGx ; "FXWyhdsp1EpC/gXR7xL"
		call	sub_1432C
		mov	edx, [ebp+var_160]
		mov	eax, ds:off_1B23C
		call	sub_11C54
		lea	eax, [ebp+var_164]
		push	eax
		xor	ecx, ecx
		mov	edx, 8607h
		mov	eax, offset aB788x09ohaydur ; "B788x09OHaydUROY"
		call	sub_1432C
		mov	edx, [ebp+var_164]
		mov	eax, ds:off_1B0E4
		call	sub_11C54
		lea	eax, [ebp+var_168]
		push	eax
		xor	ecx, ecx
		mov	edx, 8608h
		mov	eax, offset aFvdajlrnvengz3 ; "FvdaJlRNVenGZ3RCLiA"
		call	sub_1432C
		mov	edx, [ebp+var_168]
		mov	eax, ds:off_1B26C
		call	sub_11C54
		lea	eax, [ebp+var_16C]
		push	eax
		xor	ecx, ecx
		mov	edx, 8609h
		mov	eax, offset aF7onjbum0iqwdy ; "F7OnjBUm0iqWDYprBkbHhe+P"
		call	sub_1432C
		mov	edx, [ebp+var_16C]
		mov	eax, ds:off_1B1A4
		call	sub_11C54
		lea	eax, [ebp+var_170]
		push	eax
		xor	ecx, ecx
		mov	edx, 860Ah
		mov	eax, offset aVllh1uuzg7dyol ; "VLlH1UuZg7dYOLuX5gFghA"
		call	sub_1432C
		mov	edx, [ebp+var_170]
		mov	eax, ds:off_1B0DC
		call	sub_11C54
		lea	eax, [ebp+var_174]
		push	eax
		xor	ecx, ecx
		mov	edx, 860Bh
		mov	eax, offset aAxwyl9kvyj54Ci ; "AXWyl9Kvyj54/CI"
		call	sub_1432C
		mov	edx, [ebp+var_174]
		mov	eax, ds:off_1B278
		call	sub_11C54
		lea	eax, [ebp+var_178]
		push	eax
		xor	ecx, ecx
		mov	edx, 860Ch
		mov	eax, offset aFliwzl4brw10mh ; "FLIwZL4Brw10mHbeHSF"
		call	sub_1432C
		mov	edx, [ebp+var_178]
		mov	eax, ds:off_1B220
		call	sub_11C54
		lea	eax, [ebp+var_17C]
		push	eax
		xor	ecx, ecx
		mov	edx, 860Dh
		mov	eax, offset a1bqxah4kr0xh48 ; "1bQXAH4kr0xH48H"
		call	sub_1432C
		mov	edx, [ebp+var_17C]
		mov	eax, ds:off_1B1C4
		call	sub_11C54
		lea	eax, [ebp+var_180]
		push	eax
		xor	ecx, ecx
		mov	edx, 860Eh
		mov	eax, offset aBxtfxmi7tmyy2k ; "BXTFXmi7TMyY2kbL"
		call	sub_1432C
		mov	edx, [ebp+var_180]
		mov	eax, ds:off_1B1E0
		call	sub_11C54
		lea	eax, [ebp+var_184]
		push	eax
		xor	ecx, ecx
		mov	edx, 860Fh
		mov	eax, offset aOsz6 ; "oSZ6"
		call	sub_1432C
		mov	edx, [ebp+var_184]
		mov	eax, ds:off_1B2AC
		call	sub_11C54
		lea	eax, [ebp+var_188]
		push	eax
		xor	ecx, ecx
		mov	edx, 8610h
		mov	eax, offset aBj491n3fucpqaT ; "Bj491n3fucPQA+TS"
		call	sub_1432C
		mov	edx, [ebp+var_188]
		mov	eax, ds:off_1B13C
		call	sub_11C54
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_181D6


loc_181B1:				; CODE XREF: sub_17300+ED4j
		lea	eax, [ebp+var_188]
		mov	edx, 5Eh
		call	sub_11C24
		lea	eax, [ebp+var_C]
		mov	edx, 2
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_181CF:				; DATA XREF: sub_17300+15o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_181B1
; ---------------------------------------------------------------------------


loc_181D6:				; CODE XREF: sub_17300+ECEj
					; DATA XREF: sub_17300+EACo
		mov	eax, [ebp+var_4]
		mov	esp, ebp
		pop	ebp
		retn
sub_17300	endp

; ---------------------------------------------------------------------------
		align 10h
unknown_libname_16 dd 0Ch
a9udbfa:				; DATA XREF: sub_17300+32o
		unicode	0, <9udbfA>,0
		align 4
		dd 0Eh
a0wetUf:				; DATA XREF: sub_17300+57o
		unicode	0, <0WEt/UF>,0
		unicode	0, < >,0
aKp5dpQh8hdty9f:			; DATA XREF: sub_17300+7Co
		unicode	0, <kP5dp/Qh8HDty9F9>,0
		align 10h
		unicode	0, <(>,0
aXIrfiex5vvgm0c:			; DATA XREF: sub_17300+9Eo
		unicode	0, <X/iRfiex5VVgm0Cmz8GI>,0
		align 10h
		unicode	0, <&>,0
aX3nxi8gonqlBmx:			; DATA XREF: sub_17300+C0o
		unicode	0, <X3nxI8GoNQL/BMX2URG>,0
		dd 1Eh
aXlij4gonh8xdpb:			; DATA XREF: sub_17300+E2o
		unicode	0, <XLIJ4GoNh8xDpbG>,0
		unicode	0, <,>,0
aXdnprsrjuinbad:			; DATA XREF: sub_17300+104o
		unicode	0, <XDNprsRjUInbAdst3IU0wB>,0
		align 4
		dd 1Eh
aXhedd1pkttsu7p:			; DATA XREF: sub_17300+126o
		unicode	0, <XHedd1pkttSU7pI>,0
		unicode	0, <$>,0
aXfzDjhnflqiwet:			; DATA XREF: sub_17300+148o
		unicode	0, <Xfz/DJhNfLQiwETyDA>,0
		align 4
		db '´',0
		align 4
aW3x5xloPn3dqa7:			; DATA XREF: sub_17300+16Ao
		unicode	0, <W3x5Xlo/pN3DQa7k51w6pckjR9DbZWdqw90hRkiuywFc8n43Ms3VTSGOh>
		unicode	0, <Uyw1YjEVhbhEhmMOpYdbJdqOumhSNZpCC>,0
		align 10h
aI		db 'ˆ',0
		align 4
aGacimveqxypyrw:			; DATA XREF: sub_17300+18Co
		unicode	0, <gacimvEQxypyRWa94Tb8HFSm7XhcF5Ct8DeoUqFgx1atZmSAUPzvHGOo9>
		unicode	0, <NQ8P4mcBkTU>,0
		align 10h
aA		db ' ',0
		align 4
aWdqpu5d7wp6zgq:			; DATA XREF: sub_17300+1AEo
		unicode	0, <WDqPu5d7WP6zgQTPg/mh6lB9dbhnYgTxhvBplNG8qx31FBcZdhaUgjJR7>
		unicode	0, <YZ9cHoSbI0+jFFAxU9QXTge>,0
		align 4
aV:
		unicode	0, <v>,0
aGgmyPd2ozQulpm:			; DATA XREF: sub_17300+1D0o
		unicode	0, <gGmy/Pd2OZ+qULPmCXrIUEKjuFOH5fiJISLFLNBfgfLJqQAU9XNOVs02k>
		unicode	0, <TG>,0
		db 'œ',0
		align 4
aWxtolczhn6hbtr:			; DATA XREF: sub_17300+1F2o
		unicode	0, <WXtOlcZHN6HbtRyzETO9/RCvkuqTHZx+rF6AH3rzCFnIDmWMgGr5waqLx>
		unicode	0, <oE+vSoAz6sjbJVSY5atOA>,0
		align 4
_str_10140714	dd 0FFFFFFFFh		; _top ; DATA XREF: sub_16E1C+65o
					; sub_17300+20Eo
		dd 8			; Len
		db '10140714',0         ; Text
		align 4
_str_m		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_17300+21Do
		dd 1			; Len
		db 'm',0                ; Text
		align 4
		dd 1Ch
aAvogCr8z4xsa:				; DATA XREF: sub_17300+232o
		unicode	0, <AvOG+cR+8Z4xSA>,0
		align 4
		dd 10h
aHt2ajqhh:				; DATA XREF: sub_17300+254o
		unicode	0, <HT2AJqHh>,0
		align 4
a@:
		unicode	0, <@>,0
aWjlkwziw17zw4r:			; DATA XREF: sub_17300+2A5o
		unicode	0, <WjLkWZIw17zW4RSAlIx3yidiFVqqa3pw>,0
		align 4
		dd 16h
aN3r3r2c2u8o:				; DATA XREF: sub_17300+2C7o
		unicode	0, <n3R3R2C2U8O>,0
		unicode	0, <&>,0
a06xbczqyep3h8i:			; DATA XREF: sub_17300+2E9o
		unicode	0, <06xbCzqyEp3H8ibkfaL>,0
		unicode	0, <$>,0
a3olt5mlcimlvbh:			; DATA XREF: sub_17300+30Bo
		unicode	0, <3Olt5MLcImLvBHCCVB>,0
		align 10h
		unicode	0, <&>,0
aVrstxrnwrioqxt:			; DATA XREF: sub_17300+32Do
		unicode	0, <vrStxRNwrIOQXT8d0dK>,0
		unicode	0, <$>,0
aZcpytji4wKmxsj:			; DATA XREF: sub_17300+34Fo
		unicode	0, <zCPytjI4w/kmxSjvdD>,0
		align 4
		dw 8
		unicode	0, <>,0
aWzqe:					; DATA XREF: sub_17300+371o
		unicode	0, <wzqE>,0
		align 4
		dd 1Eh
aYpe98aaZowfc7l:			; DATA XREF: sub_17300+393o
		unicode	0, <yPE98Aa/zOwfc7L>,0
		dd 10h
a2ff3uqs8:				; DATA XREF: sub_17300+3B5o
		unicode	0, <2fF3uQS8>,0
		align 4
		dd 0Eh
aThbewih:				; DATA XREF: sub_17300+3D7o
		unicode	0, <tHbEWiH>,0
		unicode	0, <$>,0
aIhnmnoxrx3rq6q:			; DATA XREF: sub_17300+3F9o
		unicode	0, <iHNMNOXRx3RQ6Q7jdD>,0
		align 4
		dw 8
		unicode	0, <>,0
aO3ix:					; DATA XREF: sub_17300+41Bo
		unicode	0, <o3iX>,0
		align 4
unknown_libname_17 dd 0Ch
aRyj3c:					; DATA XREF: sub_17300+43Do
		unicode	0, <ryJ/3C>,0
		align 4
		dd 1Ch
aWjbn8fAxwp9ka:				; DATA XREF: sub_17300+462o
		unicode	0, <wjBN8f/aXwP9kA>,0
		align 4
a0:
		unicode	0, <0>,0
aQjzpnemssqum2e:			; DATA XREF: sub_17300+48Ao
		unicode	0, <QjzPnEMSsqUM2eHIUlGsoCdc>,0
		align 4
		dd 1Eh
aYd9tmo54lvlodz:			; DATA XREF: sub_17300+4B2o
		unicode	0, <yD9Tmo54lvlODZI>,0
unknown_libname_18 dd 0Ch
a27c6ja:				; DATA XREF: sub_17300+4DAo
		unicode	0, <27c6JA>,0
		align 4
		dd 1Ch
aSdcxoabzfunzsb:			; DATA XREF: sub_17300+502o
		unicode	0, <SDCXoAbZFUnZSB>,0
		align 10h
		dd 1Ch
aSlbls7x1hzzspc:			; DATA XREF: sub_17300+52Ao
		unicode	0, <SLBLS7X1hzZsPC>,0
		align 4
		unicode	0, <(>,0
aSzl8erwtqldxih:			; DATA XREF: sub_17300+552o
		unicode	0, <Szl8eRWTqlDXihjl9SF0>,0
		align 4
		unicode	0, <$>,0
aIdavaeqq1tozmr:			; DATA XREF: sub_17300+57Ao
		unicode	0, <iDavAEqQ1TOzmr5S4D>,0
		align 10h
		dd 10h
a2vnzebtf:				; DATA XREF: sub_17300+5A2o
		unicode	0, <2vNZeBTF>,0
		align 4
		dd 1Ch
a2fuoik002ldhga:			; DATA XREF: sub_17300+5CAo
		unicode	0, <2fuOiK002LdHgA>,0
		align 4
unknown_libname_19 dd 0Ch
a3rhMc:					; DATA XREF: sub_17300+5F2o
		unicode	0, <3rH/MC>,0
		align 10h
		dd 18h
aSh2cgpbzijcx:				; DATA XREF: sub_17300+61Ao
		unicode	0, <sH2CGpbZijcX>,0
		align 10h
		dd 18h
aSprqknwt4gd:				; DATA XREF: sub_17300+642o
		unicode	0, <sPrQKNWt+4Gd>,0
		align 10h
		dd 0Eh
aT7wppaj:				; DATA XREF: sub_17300+66Ao
		unicode	0, <t7wPpaJ>,0
		dd 14h
aMzmiUdaqb:				; DATA XREF: sub_17300+692o
		unicode	0, <mzMi/udaqB>,0
		align 10h
		dd 0Eh
aR7wpvcn:				; DATA XREF: sub_17300+6BAo
		unicode	0, <r7wPvCN>,0
		dd 0Eh
aThprspf:				; DATA XREF: sub_17300+6E2o
		unicode	0, <tHprspF>,0
		unicode	0, < >,0
aClm8cne566tzdz:			; DATA XREF: sub_17300+70Ao
		unicode	0, <CLm8cne566tzDzy6>,0
		align 10h
a4:
		unicode	0, <4>,0
aCpbbw7wbe9pn1f:			; DATA XREF: sub_17300+732o
		unicode	0, <CPbBW7wbE9Pn1FmMjWgSFP+TRB>,0
		align 4
		dd 18h
aGhlqwi2zocsz:				; DATA XREF: sub_17300+75Ao
		unicode	0, <GHLqWi2zoCsz>,0
		align 4
		dd 1Eh
aZdzicszhb1ba3z:			; DATA XREF: sub_17300+782o
		unicode	0, <zDZiCSzhb1BA3ZC>,0
		unicode	0, < >,0
aUnnhprb8zpygOv:			; DATA XREF: sub_17300+7AAo
		unicode	0, <unNHPRb8Zpyg/OvI>,0
		align 4
		dw 3Eh
		unicode	0, <>,0
aCrwims23tyojf1:			; DATA XREF: sub_17300+7D2o
		unicode	0, <CrWimS23tyojF1Xh98Ci/2WkjC8XPjN>,0
a4_0:
		unicode	0, <4>,0
aCvlnmageic14cc:			; DATA XREF: sub_17300+7FAo
		unicode	0, <CvLnMAGeIC14Cc3XcUHQJaKn/A>,0
		align 4
		unicode	0, <&>,0
aTtgrekq4fbaxjw:			; DATA XREF: sub_17300+822o
		unicode	0, <TTgREKQ4FbAXJWToXWH>,0
		dd 1Eh
aM7onjbuuwroq7a:			; DATA XREF: sub_17300+84Ao
		unicode	0, <m7OnjBUuwrOQ7AJ>,0
		dd 0Eh
aWbqskC:				; DATA XREF: sub_17300+872o
		unicode	0, <WbQsk/C>,0
unknown_libname_20 dd 0Ch
aGvsjld:				; DATA XREF: sub_17300+89Ao
		unicode	0, <gvSJlD>,0
		align 10h
		dd 10h
aQdevtntc:				; DATA XREF: sub_17300+8C2o
		unicode	0, <QDEVtnTc>,0
		align 4
		dd 0Ch
aQl5mra:				; DATA XREF: sub_17300+8EAo
		unicode	0, <QL5mRA>,0
		align 4
unknown_libname_21 dd 0Ch
a3qizia:				; DATA XREF: sub_17300+912o
		unicode	0, <3qIziA>,0
		align 10h
		dd 14h
aWfqpc62nea:				; DATA XREF: sub_17300+93Ao
		unicode	0, <wfQPC62nEA>,0
		align 4
		dd 1Ch
aMj0p4IjajWub:				; DATA XREF: sub_17300+962o
		unicode	0, <mj0P4/ijAJ/wUB>,0
		align 10h
		unicode	0, <&>,0
aDxn7yx2qOo76qn:			; DATA XREF: sub_17300+98Ao
		unicode	0, <DXN7yx2q/oo76QNOrBG>,0
		dd 18h
aDlu9fdzrefhw:				; DATA XREF: sub_17300+9B2o
		unicode	0, <DLu9fdzREfHw>,0
		align 4
		dd 1Eh
aW7887qqnm64vmd:			; DATA XREF: sub_17300+9DAo
		unicode	0, <W7887QqNM64VMDI>,0
		dd 1Eh
aGFkeeLsgeuek:				; DATA XREF: sub_17300+A02o
		unicode	0, <G/fkEE+/lsGEUeK>,0
		unicode	0, < >,0
aYhlvxq2bo3yoGg:			; DATA XREF: sub_17300+A2Ao
		unicode	0, <yHLVXq2Bo3Yo+GGt>,0
		align 4
		dd 18h
aQfk7v0eoidjp:				; DATA XREF: sub_17300+A52o
		unicode	0, <qfk7V0eOIdJp>,0
		align 4
		dw 8
		unicode	0, <>,0
aXb8t:					; DATA XREF: sub_17300+A7Ao
		unicode	0, <xb8t>,0
		align 4
		dd 14h
aTvuvipipgc:				; DATA XREF: sub_17300+AA2o
		unicode	0, <tvUviPIpGC>,0
		align 4
		dd 0Eh
aQwzeiwl:				; DATA XREF: sub_17300+ACAo
		unicode	0, <qWzEiWL>,0
		dd 1Eh
aBtaw8azf2mf3i6:			; DATA XREF: sub_17300+AF2o
		unicode	0, <BTAW8AzF2Mf3i6O>,0
		dd 18h
aIrrvhmgettz3:				; DATA XREF: sub_17300+B1Ao
		unicode	0, <IrrvhMGeTTz3>,0
		align 10h
unknown_libname_22 dd 0Ch
aR6sb7c:				; DATA XREF: sub_17300+B42o
		unicode	0, <r6Sb7C>,0
		align 4
		dd 0Eh
aY73kEf:				; DATA XREF: sub_17300+B6Ao
		unicode	0, <y73k/eF>,0
		dd 10h
aYI9jaos:				; DATA XREF: sub_17300+B92o
		unicode	0, <y/i9jAoS>,0
		align 10h
		unicode	0, <&>,0
aGdwzhmUoewnlle:			; DATA XREF: sub_17300+BBAo
		unicode	0, <GDwZHM+UoewNLLeu+FO>,0
a4_1:
		unicode	0, <4>,0
aSzi1lkyc5xitio:			; DATA XREF: sub_17300+BE2o
		unicode	0, <SzI1lKyC5xITIo6SAxJ7NLf2aB>,0
		align 4
a@_0:
		unicode	0, <@>,0
aAnhuy2l6rw7iy3:			; DATA XREF: sub_17300+C0Ao
		unicode	0, <anHuY2L6RW7Iy3n/bKFzSr+xYpglkDOR>,0
		align 10h
		unicode	0, <&>,0
aJjtrl1y50pwkez:			; DATA XREF: sub_17300+C32o
		unicode	0, <JjTrl1Y50PWKeZQDLEK>,0
		dd 1Eh
aF6it77tthjyqpp:			; DATA XREF: sub_17300+C5Ao
		unicode	0, <F/6iT77TTHJYQpP>,0
		unicode	0, <H>,0
aUhalwh5etjfvjw:			; DATA XREF: sub_17300+C82o
		unicode	0, <UHaLWh5EtjfVJwTYa/wOSAL0tMKJ83LD3Gru>,0
		align 10h
		unicode	0, < >,0
aJtshkc35f9zla2:			; DATA XREF: sub_17300+CAAo
		unicode	0, <JTsHKC35f9zLA2d2>,0
		align 4
		unicode	0, <$>,0
aCjlxcpov2lingn:			; DATA XREF: sub_17300+CD2o
		unicode	0, <CjLXcpOV2LINgNIGrC>,0
		align 4
		unicode	0, <&>,0
aFxwyhdsp1epcGx:			; DATA XREF: sub_17300+CFAo
		unicode	0, <FXWyhdsp1EpC/gXR7xL>,0
		unicode	0, < >,0
aB788x09ohaydur:			; DATA XREF: sub_17300+D22o
		unicode	0, <B788x09OHaydUROY>,0
		align 4
		unicode	0, <&>,0
aFvdajlrnvengz3:			; DATA XREF: sub_17300+D4Ao
		unicode	0, <FvdaJlRNVenGZ3RCLiA>,0
a0_0:
		unicode	0, <0>,0
aF7onjbum0iqwdy:			; DATA XREF: sub_17300+D72o
		unicode	0, <F7OnjBUm0iqWDYprBkbHhe+P>,0
		align 4
		unicode	0, <,>,0
aVllh1uuzg7dyol:			; DATA XREF: sub_17300+D9Ao
		unicode	0, <VLlH1UuZg7dYOLuX5gFghA>,0
		align 10h
		dd 1Eh
aAxwyl9kvyj54Ci:			; DATA XREF: sub_17300+DC2o
		unicode	0, <AXWyl9Kvyj54/CI>,0
		unicode	0, <&>,0
aFliwzl4brw10mh:			; DATA XREF: sub_17300+DEAo
		unicode	0, <FLIwZL4Brw10mHbeHSF>,0
		dd 1Eh
a1bqxah4kr0xh48:			; DATA XREF: sub_17300+E12o
		unicode	0, <1bQXAH4kr0xH48H>,0
		unicode	0, < >,0
aBxtfxmi7tmyy2k:			; DATA XREF: sub_17300+E3Ao
		unicode	0, <BXTFXmi7TMyY2kbL>,0
		align 4
		dw 8
		unicode	0, <>,0
aOsz6:					; DATA XREF: sub_17300+E62o
		unicode	0, <oSZ6>,0
		align 4
		unicode	0, < >,0
aBj491n3fucpqaT:			; DATA XREF: sub_17300+E8Ao
		unicode	0, <Bj491n3fucPQA+TS>,0
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_191D4	proc near		; CODE XREF: r+25p ServiceMain+Ap

var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
hModule		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFE4h
		xor	eax, eax
		mov	[ebp+var_1C], eax
		mov	[ebp+var_18], eax
		mov	[ebp+var_14], eax
		xor	eax, eax
		push	ebp
		push	offset loc_198E4
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		mov	eax, ds:off_1B178
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpLibFileName
		call	LoadLibraryA	; LoadLibraryA
		mov	[ebp+var_10], eax
		mov	eax, ds:off_1B184
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpLibFileName
		call	LoadLibraryA	; LoadLibraryA
		mov	[ebp+hModule], eax
		mov	eax, ds:off_1B134
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpLibFileName
		call	LoadLibraryA	; LoadLibraryA
		mov	[ebp+var_C], eax
		mov	eax, ds:off_1B1CC
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpLibFileName
		call	LoadLibraryA	; LoadLibraryA
		mov	[ebp+var_8], eax
		mov	eax, ds:off_1B0DC
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B20C
		mov	[edx], eax
		mov	eax, ds:off_1B278
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B12C
		mov	[edx], eax
		mov	eax, ds:off_1B318
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B2A8
		mov	[edx], eax
		mov	eax, ds:off_1B1F4
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B198
		mov	[edx], eax
		mov	eax, ds:off_1B264
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B2C8
		mov	[edx], eax
		mov	eax, ds:off_1B1DC
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B170
		mov	[edx], eax
		mov	eax, ds:off_1B1D8
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B21C
		mov	[edx], eax
		mov	eax, ds:off_1B260
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B2C4
		mov	[edx], eax
		mov	eax, ds:off_1B24C
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B104
		mov	[edx], eax
		mov	eax, ds:off_1B250
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B110
		mov	[edx], eax
		mov	eax, ds:off_1B23C
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B0FC
		mov	[edx], eax
		mov	eax, ds:off_1B22C
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B284
		mov	[edx], eax
		mov	eax, ds:off_1B28C
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B2E0
		mov	[edx], eax
		mov	eax, ds:off_1B2CC
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B30C
		mov	[edx], eax
		mov	eax, ds:off_1B268
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B2D4
		mov	[edx], eax
		mov	eax, ds:off_1B11C
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B15C
		mov	[edx], eax
		mov	eax, ds:off_1B2E8
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B324
		mov	[edx], eax
		mov	eax, ds:off_1B144
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B194
		mov	[edx], eax
		mov	eax, ds:off_1B2CC
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B30C
		mov	[edx], eax
		mov	eax, ds:off_1B22C
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B284
		mov	[edx], eax
		mov	eax, ds:off_1B238
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B290
		mov	[edx], eax
		mov	eax, ds:off_1B2C0
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B300
		mov	[edx], eax
		mov	eax, ds:off_1B254
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B2B4
		mov	[edx], eax
		mov	eax, ds:off_1B108
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B14C
		mov	[edx], eax
		mov	eax, ds:off_1B28C
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B2E0
		mov	[edx], eax
		mov	eax, ds:off_1B1D4
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B204
		mov	[edx], eax
		mov	eax, ds:off_1B168
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B1C0
		mov	[edx], eax
		mov	eax, ds:off_1B164
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B1BC
		mov	[edx], eax
		mov	eax, ds:off_1B2D8
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B31C
		mov	[edx], eax
		mov	eax, ds:off_1B0E4
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B218
		mov	[edx], eax
		mov	eax, ds:off_1B228
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B280
		mov	[edx], eax
		mov	eax, ds:off_1B274
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B1FC
		mov	[edx], eax
		mov	eax, ds:off_1B2A4
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_10]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B2F0
		mov	[edx], eax
		mov	eax, ds:off_1B314
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_10]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B0CC
		mov	[edx], eax
		mov	eax, ds:off_1B1E8
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_10]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B240
		mov	[edx], eax
		mov	eax, ds:off_1B160
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_8]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B1B0
		mov	[edx], eax
		mov	eax, ds:off_1B19C
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B1E4
		mov	[edx], eax
		mov	eax, ds:off_1B140
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B190
		mov	[edx], eax
		mov	eax, ds:off_1B120
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B16C
		mov	[edx], eax
		mov	eax, ds:off_1B0E0
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B118
		mov	[edx], eax
		mov	eax, ds:off_1B234
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B288
		mov	[edx], eax
		mov	eax, ds:off_1B174
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B10C
		mov	[edx], eax
		mov	eax, ds:off_1B208
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B1A8
		mov	[edx], eax
		mov	eax, ds:off_1B244
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B298
		mov	[edx], eax
		mov	eax, ds:off_1B200
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B258
		mov	[edx], eax
		mov	eax, ds:off_1B0EC
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B310
		mov	[edx], eax
		mov	ecx, ds:off_1B1B4
		mov	ecx, [ecx]
		mov	edx, ds:off_1B248
		mov	edx, [edx]
		mov	eax, ds:off_1B2B8
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, ds:off_1B1EC
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B188
		mov	[edx], eax
		mov	eax, ds:off_1B2B0
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B2F4
		mov	[edx], eax
		mov	eax, ds:off_1B26C
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B124
		mov	[edx], eax
		mov	eax, ds:off_1B1A4
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+hModule]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B2EC
		mov	[edx], eax
		mov	eax, ds:off_1B220
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B0F0
		mov	[edx], eax
		mov	eax, ds:off_1B1E0
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B304
		mov	[edx], eax
		mov	eax, ds:off_1B13C
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpProcName
		mov	eax, [ebp+var_C]
		push	eax		; hModule
		call	GetProcAddress	; GetProcAddress
		mov	edx, ds:off_1B294
		mov	[edx], eax
		lea	eax, [ebp+var_14]
		call	sub_17118
		mov	edx, [ebp+var_14]
		mov	eax, ds:off_1B224
		call	sub_11C54
		lea	eax, [ebp+var_18]
		call	@Adaptreq@TBasicActionResponseImpl@HandleResponse$qqrv ; Adaptreq::TBasicActionResponseImpl::HandleResponse(void)
		mov	edx, [ebp+var_18]
		mov	eax, ds:off_1B248
		call	sub_11C54
		lea	eax, [ebp+var_1C]
		call	sub_16E1C
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_198EB


loc_198D6:				; CODE XREF: sub_191D4+715j
		lea	eax, [ebp+var_1C]
		mov	edx, 3
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_198E4:				; DATA XREF: sub_191D4+14o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_198D6
; ---------------------------------------------------------------------------


loc_198EB:				; CODE XREF: sub_191D4+70Fj
					; DATA XREF: sub_191D4+6FDo
		mov	esp, ebp
		pop	ebp
		retn
sub_191D4	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_198F0	proc near		; CODE XREF: r+3Fp

var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	0
		xor	eax, eax
		push	ebp
		push	offset loc_19971
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		lea	ecx, [ebp+var_4]
		mov	edx, ds:off_1B130
		mov	edx, [edx]
		mov	eax, 80000002h
		call	sub_14EF8
		test	al, al
		jz	short loc_1995B
		mov	edx, ds:off_1B158
		mov	edx, [edx]
		mov	eax, [ebp+var_4]
		call	sub_132E4
		test	eax, eax
		jl	short loc_1995B
		mov	edx, ds:off_1B158
		mov	edx, [edx]
		lea	eax, [ebp+var_4]
		xor	ecx, ecx
		call	sub_12B94
		test	al, al
		jz	short loc_1995B
		mov	edx, ds:off_1B130
		mov	edx, [edx]
		mov	ecx, [ebp+var_4]
		mov	eax, 80000002h
		call	sub_14D38


loc_1995B:				; CODE XREF: sub_198F0+2Aj
					; sub_198F0+3Ej ...
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_19978


loc_19968:				; CODE XREF: sub_198F0+86j
		lea	eax, [ebp+var_4]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_19971:				; DATA XREF: sub_198F0+8o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_19968
; ---------------------------------------------------------------------------


loc_19978:				; CODE XREF: sub_198F0+80j
					; DATA XREF: sub_198F0+73o
		pop	ecx
		pop	ebp
		retn
sub_198F0	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_1997C	proc near		; CODE XREF: r+44p

var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= byte ptr -24h
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFCCh
		xor	eax, eax
		mov	[ebp+var_28], eax
		mov	[ebp+var_30], eax
		mov	[ebp+var_34], eax
		mov	[ebp+var_2C], eax
		xor	eax, eax
		push	ebp
		push	offset loc_19AAA
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		push	0F003Fh
		push	0
		push	0
		mov	eax, ds:off_1B310
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_4], eax
		cmp	[ebp+var_4], 0
		jbe	loc_19A8F
		push	0F01FFh
		mov	eax, ds:off_1B158
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_4]
		push	eax
		mov	eax, ds:off_1B104
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_8], eax
		cmp	[ebp+var_8], 0
		jbe	loc_19A82
		lea	eax, [ebp+var_24]
		push	eax
		push	1
		mov	eax, [ebp+var_8]
		push	eax
		mov	eax, ds:off_1B124
		mov	eax, [eax]
		call	eax
		push	7D0h
		mov	eax, ds:off_1B1E4
		mov	eax, [eax]
		call	eax
		mov	eax, [ebp+var_8]
		push	eax
		mov	eax, ds:off_1B110
		mov	eax, [eax]
		call	eax
		test	eax, eax
		jnz	short loc_19A75
		mov	eax, ds:off_1B218
		mov	eax, [eax]
		call	eax
		lea	edx, [ebp+var_2C]
		call	sub_131F8
		mov	ecx, [ebp+var_2C]
		lea	eax, [ebp+var_28]
		mov	edx, offset _str_5_0.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_28]
		push	eax
		mov	edx, ds:off_1B1D0
		mov	edx, [edx]
		lea	eax, [ebp+var_34]
		mov	ecx, offset _str_i.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_34]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	edx, eax
		lea	eax, [ebp+var_30]
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [ebp+var_30]
		mov	eax, 80000002h
		pop	ecx
		call	sub_14CAC


loc_19A75:				; CODE XREF: sub_1997C+9Dj
		mov	eax, [ebp+var_8]
		push	eax
		mov	eax, ds:off_1B2EC
		mov	eax, [eax]
		call	eax


loc_19A82:				; CODE XREF: sub_1997C+67j
		mov	eax, [ebp+var_4]
		push	eax
		mov	eax, ds:off_1B2EC
		mov	eax, [eax]
		call	eax


loc_19A8F:				; CODE XREF: sub_1997C+3Bj
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_19AB1


loc_19A9C:				; CODE XREF: sub_1997C+133j
		lea	eax, [ebp+var_34]
		mov	edx, 4
		call	sub_11C24
		retn
; ---------------------------------------------------------------------------


loc_19AAA:				; DATA XREF: sub_1997C+17o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_19A9C
; ---------------------------------------------------------------------------


loc_19AB1:				; CODE XREF: sub_1997C+12Dj
					; DATA XREF: sub_1997C+11Bo
		mov	esp, ebp
		pop	ebp
		retn
sub_1997C	endp

; ---------------------------------------------------------------------------
		align 4
_str_5_0	dd 0FFFFFFFFh		; _top ; DATA XREF: sub_1997C+B6o
		dd 1			; Len
		db '5',0                ; Text
		align 4
_str_i		dd 0FFFFFFFFh		; _top ; DATA XREF: sub_1997C+CFo
		dd 1			; Len
		db 'i',0                ; Text
		align 10h
; Exported entry   2. r

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

		public r

r		proc near

var_94		= dword	ptr -94h
var_90		= dword	ptr -90h
var_8C		= dword	ptr -8Ch
var_88		= dword	ptr -88h
var_84		= dword	ptr -84h
var_80		= dword	ptr -80h
var_7C		= dword	ptr -7Ch
var_78		= dword	ptr -78h
var_74		= dword	ptr -74h
var_70		= dword	ptr -70h
var_6C		= dword	ptr -6Ch
var_68		= dword	ptr -68h
var_64		= dword	ptr -64h
var_60		= dword	ptr -60h
var_5C		= dword	ptr -5Ch
var_58		= dword	ptr -58h
var_54		= dword	ptr -54h
var_50		= dword	ptr -50h
var_4C		= dword	ptr -4Ch
var_48		= byte ptr -48h
var_44		= dword	ptr -44h
var_40		= dword	ptr -40h
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_30		= byte ptr -30h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		mov	ecx, 12h


loc_19AD8:				; CODE XREF: r+Dj
		push	0
		push	0
		dec	ecx
		jnz	short loc_19AD8
		push	ecx
		xor	eax, eax
		push	ebp
		push	offset loc_19F49
		push	dword ptr fs:[eax]
		mov	fs:[eax], esp
		xor	eax, eax
		call	sub_17300
		call	sub_191D4
		call	sub_15774
		lea	eax, [ebp+var_14]
		mov	edx, ds:off_1B0D8
		mov	edx, [edx]
		call	sub_11C98
		call	sub_198F0
		call	sub_1997C
		lea	ecx, [ebp+var_4]
		mov	edx, ds:off_1B214
		mov	edx, [edx]
		mov	eax, 80000002h
		call	sub_14EF8
		test	al, al
		jz	loc_19E97
		mov	edx, [ebp+var_14]
		mov	eax, [ebp+var_4]
		call	sub_132E4
		test	eax, eax
		jge	short loc_19B5D
		push	[ebp+var_14]
		push	offset dword_19F5C
		push	[ebp+var_4]
		lea	eax, [ebp+var_4]
		mov	edx, 3
		call	sub_11EB4


loc_19B5D:				; CODE XREF: r+73j
		mov	edx, ds:off_1B214
		mov	edx, [edx]
		mov	ecx, [ebp+var_4]
		mov	eax, 80000002h
		call	sub_14D38
		test	al, al
		jz	loc_19E35
		push	0F003Fh
		push	0
		push	0
		mov	eax, ds:off_1B310
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_8], eax
		cmp	[ebp+var_8], 0
		jbe	loc_19C67
		push	0F01FFh
		mov	eax, [ebp+var_14]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_8]
		push	eax
		mov	eax, ds:off_1B104
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_C], eax
		cmp	[ebp+var_C], 0
		jbe	loc_19C5A
		lea	eax, [ebp+var_30]
		push	eax
		push	1
		mov	eax, [ebp+var_C]
		push	eax
		mov	eax, ds:off_1B124
		mov	eax, [eax]
		call	eax
		push	7D0h
		mov	eax, ds:off_1B1E4
		mov	eax, [eax]
		call	eax
		mov	eax, [ebp+var_C]
		push	eax
		mov	eax, ds:off_1B110
		mov	eax, [eax]
		call	eax
		test	eax, eax
		jnz	short loc_19C4D
		mov	eax, ds:off_1B218
		mov	eax, [eax]
		call	eax
		lea	edx, [ebp+var_38]
		call	sub_131F8
		mov	ecx, [ebp+var_38]
		lea	eax, [ebp+var_34]
		mov	edx, offset _str_5_1.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_34]
		push	eax
		mov	edx, ds:off_1B1D0
		mov	edx, [edx]
		lea	eax, [ebp+var_40]
		mov	ecx, offset _str_i_0.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_40]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	edx, eax
		lea	eax, [ebp+var_3C]
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [ebp+var_3C]
		mov	eax, 80000002h
		pop	ecx
		call	sub_14CAC


loc_19C4D:				; CODE XREF: r+121j
		mov	eax, [ebp+var_C]
		push	eax
		mov	eax, ds:off_1B2EC
		mov	eax, [eax]
		call	eax


loc_19C5A:				; CODE XREF: r+EBj
		mov	eax, [ebp+var_8]
		push	eax
		mov	eax, ds:off_1B2EC
		mov	eax, [eax]
		call	eax


loc_19C67:				; CODE XREF: r+C3j
		push	0F003Fh
		push	0
		push	0
		mov	eax, ds:off_1B310
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_8], eax
		cmp	[ebp+var_8], 0
		jbe	loc_19DD6
		push	0
		push	0
		push	0
		push	0
		push	0
		mov	eax, ds:off_1B18C
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		push	1
		push	2
		push	10h
		push	0F01FFh
		push	0
		mov	eax, [ebp+var_14]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, [ebp+var_8]
		push	eax
		mov	eax, ds:off_1B0FC
		mov	eax, [eax]
		call	eax
		mov	[ebp+var_C], eax
		cmp	[ebp+var_C], 0
		jbe	loc_19D77
		mov	eax, [ebp+var_C]
		push	eax
		mov	eax, ds:off_1B2EC
		mov	eax, [eax]
		call	eax
		mov	eax, [ebp+var_8]
		push	eax
		mov	eax, ds:off_1B2EC
		mov	eax, [eax]
		call	eax
		lea	eax, [ebp+var_10]
		mov	edx, 0FFh
		call	sub_120C8
		push	0FFh		; nSize
		mov	eax, [ebp+var_10]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax		; lpFilename
		mov	eax, ds:hModule
		push	eax		; hModule
		call	GetModuleFileNameA	; GetModuleFileNameA
		lea	eax, [ebp+var_44]
		push	eax		; int
		mov	eax, [ebp+var_14]
		mov	[ebp+var_4C], eax
		mov	[ebp+var_48], 0Bh
		lea	edx, [ebp+var_4C] ; int
		mov	eax, ds:off_1B1C8
		mov	eax, [eax]	; LPCSTR
		xor	ecx, ecx
		call	sub_1333C
		mov	edx, [ebp+var_44]
		mov	ecx, [ebp+var_10]
		mov	eax, 80000002h
		call	sub_14DC4
		mov	edx, ds:off_1B1D0
		mov	edx, [edx]
		lea	eax, [ebp+var_54]
		mov	ecx, offset _str_i_0.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_54]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	edx, eax
		lea	eax, [ebp+var_50]
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [ebp+var_50]
		xor	ecx, ecx
		mov	eax, 80000002h
		call	sub_14CAC
		jmp	loc_19F09
; ---------------------------------------------------------------------------


loc_19D77:				; CODE XREF: r+1F7j
		mov	eax, ds:off_1B218
		mov	eax, [eax]
		call	eax
		lea	edx, [ebp+var_5C]
		call	sub_131F8
		mov	ecx, [ebp+var_5C]
		lea	eax, [ebp+var_58]
		mov	edx, offset _str_1_0.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_58]
		push	eax
		mov	edx, ds:off_1B1D0
		mov	edx, [edx]
		lea	eax, [ebp+var_64]
		mov	ecx, offset _str_i_0.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_64]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	edx, eax
		lea	eax, [ebp+var_60]
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [ebp+var_60]
		mov	eax, 80000002h
		pop	ecx
		call	sub_14CAC
		jmp	loc_19F09
; ---------------------------------------------------------------------------


loc_19DD6:				; CODE XREF: r+1B0j
		mov	eax, ds:off_1B218
		mov	eax, [eax]
		call	eax
		lea	edx, [ebp+var_6C]
		call	sub_131F8
		mov	ecx, [ebp+var_6C]
		lea	eax, [ebp+var_68]
		mov	edx, offset _str_2_0.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_68]
		push	eax
		mov	edx, ds:off_1B1D0
		mov	edx, [edx]
		lea	eax, [ebp+var_74]
		mov	ecx, offset _str_i_0.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_74]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	edx, eax
		lea	eax, [ebp+var_70]
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [ebp+var_70]
		mov	eax, 80000002h
		pop	ecx
		call	sub_14CAC
		jmp	loc_19F09
; ---------------------------------------------------------------------------


loc_19E35:				; CODE XREF: r+A4j
		mov	eax, ds:off_1B218
		mov	eax, [eax]
		call	eax
		lea	edx, [ebp+var_7C]
		call	sub_131F8
		mov	ecx, [ebp+var_7C]
		lea	eax, [ebp+var_78]
		mov	edx, offset _str_3_0.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_78]
		push	eax
		mov	edx, ds:off_1B1D0
		mov	edx, [edx]
		lea	eax, [ebp+var_84]
		mov	ecx, offset _str_i_0.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_84]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	edx, eax
		lea	eax, [ebp+var_80]
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [ebp+var_80]
		mov	eax, 80000002h
		pop	ecx
		call	sub_14CAC
		jmp	short loc_19F09
; ---------------------------------------------------------------------------


loc_19E97:				; CODE XREF: r+60j
		mov	eax, ds:off_1B218
		mov	eax, [eax]
		call	eax
		lea	edx, [ebp+var_8C]
		call	sub_131F8
		mov	ecx, [ebp+var_8C]
		lea	eax, [ebp+var_88]
		mov	edx, offset _str_4_0.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_88]
		push	eax
		mov	edx, ds:off_1B1D0
		mov	edx, [edx]
		lea	eax, [ebp+var_94]
		mov	ecx, offset _str_i_0.Text
		call	@System@@LStrCat3$qqrv ; System::__linkproc__ LStrCat3(void)
		mov	eax, [ebp+var_94]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		mov	edx, eax
		lea	eax, [ebp+var_90]
		call	unknown_libname_8 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
		mov	edx, [ebp+var_90]
		mov	eax, 80000002h
		pop	ecx
		call	sub_14CAC


loc_19F09:				; CODE XREF: r+2A2j r+301j ...
		xor	eax, eax
		pop	edx
		pop	ecx
		pop	ecx
		mov	fs:[eax], edx
		push	offset loc_19F50


loc_19F16:				; CODE XREF: r+47Ej
		lea	eax, [ebp+var_94]
		mov	edx, 12h
		call	sub_11C24
		lea	eax, [ebp+var_44]
		mov	edx, 5
		call	sub_11C24
		lea	eax, [ebp+var_14]
		mov	edx, 2
		call	sub_11C24
		lea	eax, [ebp+var_4]
		call	sub_11C00
		retn
; ---------------------------------------------------------------------------


loc_19F49:				; DATA XREF: r+13o
		jmp	unknown_libname_6 ; BDS	2005-2006 and Delphi6-7	Visual Component Library
; ---------------------------------------------------------------------------
		jmp	short loc_19F16
; ---------------------------------------------------------------------------


loc_19F50:				; CODE XREF: r+478j
					; DATA XREF: r+441o
		mov	esp, ebp
		pop	ebp
		retn
r		endp

; ---------------------------------------------------------------------------
		dd 0FFFFFFFFh, 1
dword_19F5C	dd 0		_str_5_1	dd 0FFFFFFFFh		; _top ; DATA XREF: r+13Ao
		dd 1			; Len
		db '5',0                ; Text
		align 4
_str_i_0	dd 0FFFFFFFFh		; _top ; DATA XREF: r+153o r+277o ...
		dd 1			; Len
		db 'i',0                ; Text
		align 4
_str_1_0	dd 0FFFFFFFFh		; _top ; DATA XREF: r+2BEo
		dd 1			; Len
		db '1',0                ; Text
		align 4
_str_2_0	dd 0FFFFFFFFh		; _top ; DATA XREF: r+31Do
		dd 1			; Len
		db '2',0                ; Text
		align 10h
_str_3_0	dd 0FFFFFFFFh		; _top ; DATA XREF: r+37Co
		dd 1			; Len
		db '3',0                ; Text
		align 4
_str_4_0	dd 0FFFFFFFFh		; _top ; DATA XREF: r+3E7o
		dd 1			; Len
		db '4',0                ; Text
		align 4
; Exported entry   1. ServiceMain

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

		public ServiceMain

ServiceMain	proc near
		push	ebp
		mov	ebp, esp
		xor	eax, eax
		call	sub_17300
		call	sub_191D4
		call	sub_15774
		push	offset sub_17240
		mov	eax, ds:off_1B0D8
		mov	eax, [eax]
		call	@System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
		push	eax
		mov	eax, ds:off_1B2F4
		mov	eax, [eax]
		call	eax
		mov	ds:dword_1C31C,	eax
		cmp	ds:dword_1C31C,	0
		jz	short loc_1A034
		mov	eax, ds:off_1B12C
		mov	eax, [eax]
		call	eax
		mov	ecx, 1
		xor	edx, edx
		mov	eax, 2
		call	sub_171E0
		xor	ecx, ecx
		xor	edx, edx
		mov	eax, 4
		call	sub_171E0
		jmp	short loc_1A022
; ---------------------------------------------------------------------------


loc_1A00F:				; CODE XREF: ServiceMain+8Aj
		call	sub_165C4
		push	927C0h
		mov	eax, ds:off_1B1E4
		mov	eax, [eax]
		call	eax


loc_1A022:				; CODE XREF: ServiceMain+65j
		cmp	ds:dword_1C320,	3
		jz	short loc_1A034
		cmp	ds:dword_1C320,	1
		jnz	short loc_1A00F


loc_1A034:				; CODE XREF: ServiceMain+3Bj
					; ServiceMain+81j
		pop	ebp
		retn	8
ServiceMain	endp

; [00000028 BYTES: COLLAPSED FUNCTION unknown_libname_23. PRESS	KEYPAD "+" TO EXPAND]
dword_1A060	dd 12h				dd offset off_1A068
off_1A068	dd offset loc_12920	; DATA XREF: CODE:0001A064o
		dd offset sub_128F0
		dd offset sub_12774
		dd offset sub_1272C
		dd offset sub_12988
		dd offset sub_12958
		dd offset sub_129C0
		dd offset sub_12990
		dd offset sub_129F8
		dd offset sub_129C8
		dd offset unknown_libname_14 ; BDS 2005-2006 and Delphi6-7 Visual Component Library
		dd offset sub_13590
		dd offset sub_13648
		dd offset sub_13618
		dd offset sub_13A50
		dd offset sub_13650
		dd offset sub_143CC
		dd offset sub_1439C
		dd offset sub_14934
		dd offset sub_14904
		dd offset sub_1496C
		dd offset sub_1493C
		dd offset sub_149A4
		dd offset sub_14974
		dd offset sub_149DC
		dd offset sub_149AC
		dd offset sub_15008
		dd offset sub_14FD8
		dd offset sub_1576C
		dd offset sub_1573C
		dd offset sub_16ADC
		dd offset sub_16AAC
		dd offset sub_171C8
		dd offset sub_17198
		dd 0
		dd offset unknown_libname_23 ; BDS 2005-2006 and Delphi6-7 Visual Component Library
; ---------------------------------------------------------------------------

; BOOL __stdcall DllEntryPoint(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpReserved)
		public DllEntryPoint
DllEntryPoint:
		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFB4h
		mov	eax, offset dword_1A060
		call	@Sysinit@@InitLib$qqrv ; Sysinit::__linkproc__ InitLib(void)
		mov	ds:dword_1C06C,	offset sub_171D0
		call	sub_11B04
; ---------------------------------------------------------------------------
		align 100h
CODE		ends

; Section 2. (virtual address 0000B000)
; Virtual size			: 0000032C (	812.)
; Section size in file		: 00000400 (   1024.)
; Offset to raw	data for section: 00009600
; Flags	C0000040: Data Readable	Writable
; Alignment	: default
; ===========================================================================

; Segment type:	Pure data
; Segment permissions: Read/Write
DATA		segment	para public 'DATA' use32
		assume cs:DATA
		;org 1B000h
off_1B000	dd offset nullsub_1	; DATA XREF: sub_1231C+88r
off_1B004	dd offset nullsub_1	; DATA XREF: sub_1231C+71r
off_1B008	dd offset nullsub_1	; DATA XREF: sub_1231C+7Br
off_1B00C	dd offset sub_119BC	; DATA XREF: sub_119BC+Fr
					; sub_119BC+35r ...
off_1B010	dd offset sub_11988	; DATA XREF: sub_11B04:loc_11B52r
off_1B014	dd offset nullsub_1	; DATA XREF: sub_11B04:loc_11B81r
word_1B018	dw 1332h		; DATA XREF: unknown_libname_2+3r
					; System::__linkproc__ StartLib(void)+89w
		dw 0C08Bh
byte_1B01C	db 0			; DATA XREF: sub_11534r sub_11550r ...
		db 8Dh,	40h, 0
byte_1B020	db 0			; DATA XREF: sub_14510-2EA2r
					; sub_14510:loc_116A9r
		db 8Dh,	40h, 0
dword_1B024	dd 0							; System::RegisterModule(System::TLibModule *)+8w
dword_1B028	dd 0		off_1B02C	dd offset sub_12464	; DATA XREF: sub_11B04+66r
off_1B030	dd offset nullsub_1	; DATA XREF: sub_1272C:loc_12754r
off_1B034	dd offset sub_110E8	; DATA XREF: sub_1114C+4r
					; System::__linkproc__ ReallocMem(void *&,int)+3Fr ...
off_1B038	dd offset sub_110F8	; DATA XREF: sub_11164+4r
					; System::__linkproc__ ReallocMem(void *&,int)+26r
off_1B03C	dd offset sub_11104	; DATA XREF: System::__linkproc__ ReallocMem(void *&,int)+Dr
word_1B040	dw 1F32h		; DATA XREF: sub_1127C+8r
		dw 0C08Bh
off_1B044	dd offset nullsub_1	; DATA XREF: sub_11B04+38r
dword_1B048	dd 0							; Sysinit::__linkproc__	InitLib(void)o
dword_1B04C	dd 0				dd 2 dup(0)
dword_1B058	dd 0				align 10h
off_1B060	dd offset sub_12828	; DATA XREF: Sysinit::__linkproc__ InitLib(void)+3Bo
		dd offset sub_127D8
		dd offset sub_12788
		dd offset sub_12800
byte_1B070	db 3Dh			; DATA XREF: sub_130B8+Ar
		db 8Dh,	40h, 0
dword_1B074	dd 1C001Fh, 2 dup(1E001Fh), 1F001Fh, 2 dup(1F001Eh), 1D001Fh
					; DATA XREF: sub_12D44+2Co
					; sub_12EF0+E6o
		dd 2 dup(1E001Fh), 1F001Fh, 2 dup(1F001Eh)
dword_1B0A4	dd 0		dword_1B0A8	dd 80000000h			dd 40000000h, 0C0000000h
dword_1B0B4	dd 0				dd 0
		dd 1, 2, 3
off_1B0C8	dd offset dword_1C1A8	; DATA XREF: sub_16134+49r
					; sub_17300+A3Ar
off_1B0CC	dd offset dword_1C2BC	; DATA XREF: sub_14510+89r
					; sub_191D4+467r
off_1B0D0	dd offset dword_1C18C	; DATA XREF: sub_17030+34r
					; sub_17300+972r
off_1B0D4	dd offset dword_1C1B4	; DATA XREF: sub_161F4+57r
					; sub_161F4+F2r ...
off_1B0D8	dd offset dword_1C0CC	; DATA XREF: sub_159C0+76r
					; sub_165C4+59r ...
off_1B0DC	dd offset dword_1C20C	; DATA XREF: sub_17300+DAAr
					; sub_191D4+73r
off_1B0E0	dd offset dword_1C198	; DATA XREF: sub_17300+9EAr
					; sub_191D4+505r
off_1B0E4	dd offset dword_1C200	; DATA XREF: sub_17300+D32r
					; sub_191D4+3D9r
off_1B0E8	dd offset dword_1C0E8	; DATA XREF: sub_15B40+7Cr
					; sub_17300+318r
off_1B0EC	dd offset dword_1C1E4	; DATA XREF: sub_17300+C42r
					; sub_191D4+5B9r
off_1B0F0	dd offset dword_1C30C	; DATA XREF: sub_15FE4+29r
					; sub_191D4+67Fr
off_1B0F4	dd offset dword_1C114	; DATA XREF: sub_16E1C+E0r
					; sub_17300+49Ar
off_1B0F8	dd offset dword_1C108	; DATA XREF: sub_16E1C+46r
					; sub_17300+428r
off_1B0FC	dd offset dword_1C2F4	; DATA XREF: sub_191D4+1B5r r+1E7r
off_1B100	dd offset dword_1C180	; DATA XREF: sub_15CA4+31r
					; sub_15DC4:loc_15DF3r	...
off_1B104	dd offset dword_1C2EC	; DATA XREF: sub_191D4+179r
					; sub_1997C+57r ...
off_1B108	dd offset dword_1C134	; DATA XREF: sub_17300+652r
					; sub_191D4+325r
off_1B10C	dd offset dword_1C2DC	; DATA XREF: sub_161F4+1C3r
					; sub_161F4+1DEr ...
off_1B110	dd offset dword_1C2F0	; DATA XREF: sub_191D4+197r
					; sub_1997C+92r ...
off_1B114	dd offset dword_1C1C8	; DATA XREF: sub_161F4+19Er
					; sub_161F4+1F0r ...
off_1B118	dd offset dword_1C2D4	; DATA XREF: sub_191D4+51Br
off_1B11C	dd offset dword_1C11C	; DATA XREF: sub_17300+512r
					; sub_191D4+235r
off_1B120	dd offset dword_1C194	; DATA XREF: sub_17300+9C2r
					; sub_191D4+4E7r
off_1B124	dd offset dword_1C2FC	; DATA XREF: sub_191D4+643r
					; sub_1997C+77r ...
off_1B128	dd offset dword_1C0C4	; DATA XREF: sub_165C4+75r
					; sub_165C4+404r ...
off_1B12C	dd offset dword_1C308	; DATA XREF: sub_191D4+A7r
					; ServiceMain+3Dr
off_1B130	dd offset dword_1C0B0	; DATA XREF: sub_17300+177r
					; sub_198F0+16r ...
off_1B134	dd offset dword_1C154	; DATA XREF: sub_17300+7BAr
					; sub_191D4+49r
off_1B138	dd offset dword_1C1F0	; DATA XREF: sub_17118+1Fr
					; sub_17118+53r ...
off_1B13C	dd offset dword_1C220	; DATA XREF: sub_17300+E9Ar
					; sub_191D4+6A5r
off_1B140	dd offset dword_1C190	; DATA XREF: sub_17300+99Ar
					; sub_191D4+4C9r
off_1B144	dd offset dword_1C124	; DATA XREF: sub_17300+562r
					; sub_191D4+271r
off_1B148	dd offset dword_1C0F0	; DATA XREF: sub_15B40+9Cr
					; sub_17300+35Cr
off_1B14C	dd offset dword_1C294	; DATA XREF: sub_1507C+B3r
					; sub_191D4+33Br
off_1B150	dd offset dword_1C17C	; DATA XREF: sub_159C0+83r
					; sub_17300+8FAr
off_1B154	dd offset dword_1C0DC	; DATA XREF: sub_15DC4+81r
					; sub_165C4+A0r ...
off_1B158	dd offset dword_1C0C8	; DATA XREF: sub_17300+23Fr
					; sub_198F0+2Cr ...
off_1B15C	dd offset dword_1C27C	; DATA XREF: sub_165C4+36r
					; sub_191D4+24Br
off_1B160	dd offset dword_1C164	; DATA XREF: sub_17300+85Ar
					; sub_191D4+48Dr
off_1B164	dd offset dword_1C140	; DATA XREF: sub_17300+6F2r
					; sub_191D4+39Dr
off_1B168	dd offset dword_1C13C	; DATA XREF: sub_17300+6CAr
					; sub_191D4+37Fr
off_1B16C	dd offset dword_1C2D0	; DATA XREF: sub_191D4+4FDr
off_1B170	dd offset dword_1C25C	; DATA XREF: sub_14B48+C5r
					; sub_14B48+F3r ...
off_1B174	dd offset dword_1C1C4	; DATA XREF: sub_17300+B2Ar
					; sub_191D4+541r
off_1B178	dd offset dword_1C150	; DATA XREF: sub_17300+792r
					; sub_191D4+1Fr
off_1B17C	dd offset dword_1C2A4	; DATA XREF: sub_164D8+B9r
off_1B180	dd offset dword_1C110	; DATA XREF: sub_16CC4+3Ar
					; sub_17300+472r
off_1B184	dd offset dword_1C094	; DATA XREF: sub_17300+89r
					; sub_191D4+34r
off_1B188	dd offset dword_1C24C	; DATA XREF: sub_191D4+607r
off_1B18C	dd offset dword_1C0BC	; DATA XREF: sub_17300+1DDr r+1C0r
off_1B190	dd offset dword_1C2CC	; DATA XREF: sub_191D4+4DFr
off_1B194	dd offset dword_1C284	; DATA XREF: sub_191D4+287r
off_1B198	dd offset dword_1C258	; DATA XREF: sub_14A20+B9r
					; sub_14A20+E5r ...
off_1B19C	dd offset dword_1C168	; DATA XREF: sub_17300+882r
					; sub_191D4+4ABr
off_1B1A0	dd offset dword_1C0E0	; DATA XREF: sub_15B40+3Er
					; sub_15B40+5Cr ...
off_1B1A4	dd offset dword_1C208	; DATA XREF: sub_17300+D82r
					; sub_191D4+64Br
off_1B1A8	dd offset dword_1C2E0	; DATA XREF: sub_161F4+20Cr
					; sub_161F4+260r ...
off_1B1AC	dd offset dword_1C0E4	; DATA XREF: sub_15B40+6Cr
					; sub_17300+2F6r
off_1B1B0	dd offset dword_1C2C4	; DATA XREF: sub_151E4+Er
					; sub_191D4+4A3r
off_1B1B4	dd offset dword_1C1B0	; DATA XREF: sub_165C4+21Fr
					; sub_165C4+24Er ...
off_1B1B8	dd offset dword_1C0F4	; DATA XREF: sub_17300+209r
					; sub_17300+288r
off_1B1BC	dd offset dword_1C29C	; DATA XREF: sub_15344+17r
					; sub_191D4+3B3r
off_1B1C0	dd offset dword_1C298	; DATA XREF: sub_15200+38r
					; sub_191D4+395r
off_1B1C4	dd offset dword_1C1A4	; DATA XREF: sub_15CA4+44r
					; sub_15DC4+42r ...
off_1B1C8	dd offset dword_1C0C0	; DATA XREF: sub_17300+1FFr r+24Er
off_1B1CC	dd offset dword_1C0F8	; DATA XREF: sub_17300+3A0r
					; sub_17300+4C2r ...
off_1B1D0	dd offset dword_1C0D4	; DATA XREF: sub_157D4+32r
					; sub_15864+2Ar ...
off_1B1D4	dd offset dword_1C138	; DATA XREF: sub_17300+6A2r
					; sub_191D4+361r
off_1B1D8	dd offset dword_1C0A8	; DATA XREF: sub_17300+133r
					; sub_191D4+127r
off_1B1DC	dd offset dword_1C0A4	; DATA XREF: sub_17300+111r
					; sub_191D4+109r
off_1B1E0	dd offset dword_1C218	; DATA XREF: sub_17300+E4Ar
					; sub_191D4+687r
off_1B1E4	dd offset dword_1C2C8	; DATA XREF: sub_17240+41r
					; sub_191D4+4C1r ...
off_1B1E8	dd offset dword_1C160	; DATA XREF: sub_17300+832r
					; sub_191D4+46Fr
off_1B1EC	dd offset dword_1C1E8	; DATA XREF: sub_17300+C6Ar
					; sub_191D4+5F1r
off_1B1F0	dd offset dword_1C10C	; DATA XREF: sub_16E1C+89r
					; sub_17300+44Ar
off_1B1F4	dd offset dword_1C09C	; DATA XREF: sub_17300+CDr
					; sub_191D4+CDr
off_1B1F8	dd offset dword_1C16C	; DATA XREF: sub_154D4+11r
					; sub_154D4+29r ...
off_1B1FC	dd offset dword_1C2B4	; DATA XREF: sub_191D4+42Br
off_1B200	dd offset dword_1C1DC	; DATA XREF: sub_17300+BF2r
					; sub_191D4+59Br
off_1B204	dd offset dword_1C2A0	; DATA XREF: sub_1507C+CCr
					; sub_191D4+377r
off_1B208	dd offset dword_1C1CC	; DATA XREF: sub_17300+B02r
					; sub_191D4+55Fr
off_1B20C	dd offset dword_1C304	; DATA XREF: sub_171E0+4Dr
					; sub_191D4+89r
off_1B210	dd offset dword_1C1D4	; DATA XREF: sub_165C4+29Er
					; sub_17300+BA2r
off_1B214	dd offset dword_1C0B8	; DATA XREF: sub_17300+1BBr r+4Cr ...
off_1B218	dd offset dword_1C2F8	; DATA XREF: sub_191D4+3EFr
					; sub_1997C+9Fr ...
off_1B21C	dd offset dword_1C264	; DATA XREF: sub_191D4+13Dr
off_1B220	dd offset dword_1C214	; DATA XREF: sub_17300+DFAr
					; sub_191D4+669r
off_1B224	dd offset dword_1C1A0	; DATA XREF: sub_15CA4+38r
					; sub_15DC4+36r ...
off_1B228	dd offset dword_1C148	; DATA XREF: sub_17300+742r
					; sub_191D4+3F7r
off_1B22C	dd offset dword_1C0FC	; DATA XREF: sub_17300+3C2r
					; sub_17300+5B2r ...
off_1B230	dd offset dword_1C0D8	; DATA XREF: sub_15394+59r
					; sub_15524+56r ...
off_1B234	dd offset dword_1C19C	; DATA XREF: sub_17300+A12r
					; sub_191D4+523r
off_1B238	dd offset dword_1C128	; DATA XREF: sub_17300+5DAr
					; sub_191D4+2CBr
off_1B23C	dd offset dword_1C1FC	; DATA XREF: sub_17300+D0Ar
					; sub_191D4+19Fr
off_1B240	dd offset dword_1C2C0	; DATA XREF: sub_14510+C4r
					; sub_14608+4Fr ...
off_1B244	dd offset dword_1C1D8	; DATA XREF: sub_17300+BCAr
					; sub_191D4+57Dr
off_1B248	dd offset dword_1C188	; DATA XREF: sub_164D8+59r
					; sub_165C4+227r ...
off_1B24C	dd offset dword_1C1F4	; DATA XREF: sub_17300+CBAr
					; sub_191D4+163r
off_1B250	dd offset dword_1C1F8	; DATA XREF: sub_17300+CE2r
					; sub_191D4+181r
off_1B254	dd offset dword_1C130	; DATA XREF: sub_17300+62Ar
					; sub_191D4+307r
off_1B258	dd offset dword_1C2E8	; DATA XREF: sub_164D8+9Cr
					; sub_191D4+5B1r
off_1B25C	dd offset dword_1C170	; DATA XREF: sub_15B40+CFr
					; sub_17300+8AAr
off_1B260	dd offset dword_1C0AC	; DATA XREF: sub_17300+155r
					; sub_191D4+145r
off_1B264	dd offset dword_1C0A0	; DATA XREF: sub_17300+EFr
					; sub_191D4+EBr
off_1B268	dd offset dword_1C118	; DATA XREF: sub_17300+4EAr
					; sub_191D4+217r
off_1B26C	dd offset dword_1C204	; DATA XREF: sub_17300+D5Ar
					; sub_191D4+62Dr
off_1B270	dd offset dword_1C1C0	; DATA XREF: sub_161F4+104r
					; sub_17300+ADAr
off_1B274	dd offset dword_1C14C	; DATA XREF: sub_17300+76Ar
					; sub_191D4+415r
off_1B278	dd offset dword_1C210	; DATA XREF: sub_17300+DD2r
					; sub_191D4+91r
off_1B27C	dd offset dword_1C1E0	; DATA XREF: sub_14510+ABr
					; sub_17300+C1Ar
off_1B280	dd offset dword_1C2B0	; DATA XREF: sub_191D4+40Dr
off_1B284	dd offset dword_1C270	; DATA XREF: sub_1507C+27r
					; sub_191D4+1D3r ...
off_1B288	dd offset dword_1C2D8	; DATA XREF: sub_191D4+539r
off_1B28C	dd offset dword_1C100	; DATA XREF: sub_17300+3E4r
					; sub_17300+67Ar ...
off_1B290	dd offset dword_1C288	; DATA XREF: sub_1507C+101r
					; sub_1507C+12Fr ...
off_1B294	dd offset dword_1C314	; DATA XREF: sub_15774r sub_191D4+6BBr
off_1B298	dd offset dword_1C2E4	; DATA XREF: sub_164D8+7Br
					; sub_191D4+593r
off_1B29C	dd offset dword_1C1B8	; DATA XREF: sub_161F4+80r
					; sub_17300+A8Ar
off_1B2A0	dd offset dword_1C184	; DATA XREF: sub_17118+41r
					; sub_17300+94Ar
off_1B2A4	dd offset dword_1C158	; DATA XREF: sub_17300+7E2r
					; sub_191D4+433r
off_1B2A8	dd offset dword_1C254	; DATA XREF: sub_14A20+75r
					; sub_191D4+C5r
off_1B2AC	dd offset dword_1C21C	; DATA XREF: sub_161F4+D4r
					; sub_17300+E72r
off_1B2B0	dd offset dword_1C1EC	; DATA XREF: sub_17300+C92r
					; sub_191D4+60Fr
off_1B2B4	dd offset dword_1C290	; DATA XREF: sub_1507C+A9r
					; sub_191D4+31Dr
off_1B2B8	dd offset dword_1C1AC	; DATA XREF: sub_16134+5Cr
					; sub_165C4+348r ...
off_1B2BC	dd offset dword_1C1D0	; DATA XREF: sub_165C4+240r
					; sub_17300+B7Ar
off_1B2C0	dd offset dword_1C12C	; DATA XREF: sub_17300+602r
					; sub_191D4+2E9r
off_1B2C4	dd offset dword_1C268	; DATA XREF: sub_14B48+6Br
					; sub_191D4+15Br
off_1B2C8	dd offset dword_1C260	; DATA XREF: sub_14A20+F8r
					; sub_14B48+134r ...
off_1B2CC	dd offset dword_1C104	; DATA XREF: sub_17300+406r
					; sub_17300+58Ar ...
off_1B2D0	dd offset dword_1C174	; DATA XREF: sub_15CA4:loc_15CCBr
					; sub_165C4+E0r ...
off_1B2D4	dd offset dword_1C278	; DATA XREF: sub_152C0+41r
					; sub_15344+32r ...
off_1B2D8	dd offset dword_1C144	; DATA XREF: sub_17300+71Ar
					; sub_191D4+3BBr
off_1B2DC	dd offset dword_1C0EC	; DATA XREF: sub_15B40+8Cr
					; sub_17300+33Ar
off_1B2E0	dd offset dword_1C26C	; DATA XREF: sub_1507C+67r
					; sub_191D4+1F1r ...
off_1B2E4	dd offset dword_1C0D0	; DATA XREF: sub_165C4+85r
					; sub_165C4+358r ...
off_1B2E8	dd offset dword_1C120	; DATA XREF: sub_17300+53Ar
					; sub_191D4+253r
off_1B2EC	dd offset dword_1C300	; DATA XREF: sub_191D4+661r
					; sub_1997C+FDr ...
off_1B2F0	dd offset dword_1C2B8	; DATA XREF: sub_14510+2Dr
					; sub_191D4+449r
off_1B2F4	dd offset dword_1C248	; DATA XREF: sub_191D4+625r
					; ServiceMain+26r
off_1B2F8	dd offset dword_1C1BC	; DATA XREF: sub_161F4+E8r
					; sub_17300+AB2r
off_1B2FC	dd offset dword_1C2A8	; DATA XREF: sub_161F4+14Dr
off_1B300	dd offset dword_1C28C	; DATA XREF: sub_15200+1Br
					; sub_1524C+44r ...
off_1B304	dd offset dword_1C310	; DATA XREF: sub_15788+Ar
					; sub_191D4+69Dr
off_1B308	dd offset dword_1C024	; DATA XREF: sub_15774+9r
off_1B30C	dd offset dword_1C274	; DATA XREF: sub_1507C+80r
					; sub_191D4+20Fr ...
off_1B310	dd offset dword_1C250	; DATA XREF: sub_191D4+5CFr
					; sub_1997C+2Br ...
off_1B314	dd offset dword_1C15C	; DATA XREF: sub_17300+80Ar
					; sub_191D4+451r
off_1B318	dd offset dword_1C098	; DATA XREF: sub_17300+ABr
					; sub_191D4+AFr
off_1B31C	dd offset dword_1C2AC	; DATA XREF: sub_191D4+3D1r
off_1B320	dd offset dword_1C178	; DATA XREF: sub_159A0+6r
					; sub_159C0+39r ...
off_1B324	dd offset dword_1C280	; DATA XREF: sub_191D4+269r
off_1B328	dd offset dword_1C0B4	; DATA XREF: sub_17300+199r
		align 100h
DATA		ends

; Section 3. (virtual address 0000C000)
; Virtual size			: 00000325 (	805.)
; Section size in file		: 00000000 (	  0.)
; Offset to raw	data for section: 00009A00
; Flags	C0000000: Readable Writable
; Alignment	: default
; ===========================================================================

; Segment type:	Regular
; Segment permissions: Read/Write
BSS		segment	para public '' use32
		assume cs:BSS
		;org 1C000h
		assume es:nothing, ss:nothing, ds:CODE,	fs:nothing, gs:nothing
dword_1C000	dd ?		dword_1C004	dd ?		dword_1C008	dd ?							; CODE:0001191Fr
dword_1C00C	dd ?		dword_1C010	dd ?		byte_1C014	db ?			; DATA XREF: System::__linkproc__ StartLib(void)+82w
		align 4
dword_1C018	dd ?							; sub_11B04+9o	...
dword_1C01C	dd ?		dword_1C020	dd ?							; sub_11BF4w
dword_1C024	dd ?		dword_1C028	dd ?		dword_1C02C	dd ?							; System::__linkproc__ StartLib(void)+3o ...
dword_1C030	dd ?		dword_1C034	dd ?							; System::__linkproc__ StartLib(void)+2Aw
dword_1C038	dd ?							; System::__linkproc__ StartLib(void):loc_11A75w
dword_1C03C	dd ?		dword_1C040	dd ?							; sub_11AD0+Br
dword_1C044	dd ?							; sub_11AD0+5r
dword_1C048	dd ?		dword_1C04C	dd ?		byte_1C050	db ?			; DATA XREF: System::__linkproc__ StartLib(void)+58w
		align 4
dword_1C054	dd ?		dword_1C058	dd ?							; sub_1272C+22r
byte_1C05C	db ?			; DATA XREF: sub_1284Cr
					; Sysinit::__linkproc__	InitLib(void)+Dw
		align 10h
; DWORD	dwTlsIndex
dwTlsIndex	dd ?			; DATA XREF: sub_12788+Ar
					; sub_12788+3Cr ...
		align 8
; HMODULE hModule
hModule		dd ?			; DATA XREF: Sysinit::__linkproc__ InitLib(void)+17w
					; r+232r
dword_1C06C	dd ?							; CODE:0001A108w
dword_1C070	dd ?							; CODE:loc_12920w
dword_1C074	dd ?							; sub_1284C:loc_1287Dr
dword_1C078	dd ?		dword_1C07C	dd ?		dword_1C080	dd ?		; HMODULE hLibModule
hLibModule	dd ?			; DATA XREF: sub_13590+19r
					; sub_13590+22r
dword_1C088	dd ?							; unknown_libname_14+11w
dword_1C08C	dd ?		dword_1C090	dd ?		dword_1C094	dd ?							; DATA:off_1B184o
dword_1C098	dd ?							; DATA:off_1B318o
dword_1C09C	dd ?							; DATA:off_1B1F4o
dword_1C0A0	dd ?							; DATA:off_1B264o
dword_1C0A4	dd ?							; DATA:off_1B1DCo
dword_1C0A8	dd ?							; DATA:off_1B1D8o
dword_1C0AC	dd ?							; DATA:off_1B260o
dword_1C0B0	dd ?							; DATA:off_1B130o
dword_1C0B4	dd ?							; DATA:off_1B328o
dword_1C0B8	dd ?							; DATA:off_1B214o
dword_1C0BC	dd ?							; DATA:off_1B18Co
dword_1C0C0	dd ?							; DATA:off_1B1C8o
dword_1C0C4	dd ?							; DATA:off_1B128o
dword_1C0C8	dd ?							; DATA:off_1B158o
dword_1C0CC	dd ?							; DATA:off_1B0D8o
dword_1C0D0	dd ?							; DATA:off_1B2E4o
dword_1C0D4	dd ?							; DATA:off_1B1D0o
dword_1C0D8	dd ?		dword_1C0DC	dd ?		dword_1C0E0	dd ?							; DATA:off_1B1A0o
dword_1C0E4	dd ?							; DATA:off_1B1ACo
dword_1C0E8	dd ?							; DATA:off_1B0E8o
dword_1C0EC	dd ?							; DATA:off_1B2DCo
dword_1C0F0	dd ?							; DATA:off_1B148o
dword_1C0F4	dd ?							; DATA:off_1B1B8o
dword_1C0F8	dd ?							; DATA:off_1B1CCo
dword_1C0FC	dd ?							; DATA:off_1B22Co
dword_1C100	dd ?							; DATA:off_1B28Co
dword_1C104	dd ?							; DATA:off_1B2CCo
dword_1C108	dd ?							; DATA:off_1B0F8o
dword_1C10C	dd ?							; DATA:off_1B1F0o
dword_1C110	dd ?							; DATA:off_1B180o
dword_1C114	dd ?							; DATA:off_1B0F4o
dword_1C118	dd ?							; DATA:off_1B268o
dword_1C11C	dd ?							; DATA:off_1B11Co
dword_1C120	dd ?							; DATA:off_1B2E8o
dword_1C124	dd ?							; DATA:off_1B144o
dword_1C128	dd ?							; DATA:off_1B238o
dword_1C12C	dd ?							; DATA:off_1B2C0o
dword_1C130	dd ?							; DATA:off_1B254o
dword_1C134	dd ?							; DATA:off_1B108o
dword_1C138	dd ?							; DATA:off_1B1D4o
dword_1C13C	dd ?							; DATA:off_1B168o
dword_1C140	dd ?							; DATA:off_1B164o
dword_1C144	dd ?							; DATA:off_1B2D8o
dword_1C148	dd ?							; DATA:off_1B228o
dword_1C14C	dd ?							; DATA:off_1B274o
dword_1C150	dd ?							; DATA:off_1B178o
dword_1C154	dd ?							; DATA:off_1B134o
dword_1C158	dd ?							; DATA:off_1B2A4o
dword_1C15C	dd ?							; DATA:off_1B314o
dword_1C160	dd ?							; DATA:off_1B1E8o
dword_1C164	dd ?							; DATA:off_1B160o
dword_1C168	dd ?							; DATA:off_1B19Co
dword_1C16C	dd ?							; sub_13A50+29w ...
dword_1C170	dd ?							; DATA:off_1B25Co
dword_1C174	dd ?		dword_1C178	dd ?							; DATA:off_1B320o
dword_1C17C	dd ?							; DATA:off_1B150o
dword_1C180	dd ?							; DATA:off_1B100o
dword_1C184	dd ?							; DATA:off_1B2A0o
dword_1C188	dd ?							; DATA:off_1B248o
dword_1C18C	dd ?							; DATA:off_1B0D0o
dword_1C190	dd ?							; DATA:off_1B140o
dword_1C194	dd ?							; DATA:off_1B120o
dword_1C198	dd ?							; DATA:off_1B0E0o
dword_1C19C	dd ?							; DATA:off_1B234o
dword_1C1A0	dd ?							; DATA:off_1B224o
dword_1C1A4	dd ?							; DATA:off_1B1C4o
dword_1C1A8	dd ?							; DATA:off_1B0C8o
dword_1C1AC	dd ?							; DATA:off_1B2B8o
dword_1C1B0	dd ?							; DATA:off_1B1B4o
dword_1C1B4	dd ?							; sub_13A50+1Fw ...
dword_1C1B8	dd ?							; DATA:off_1B29Co
dword_1C1BC	dd ?							; DATA:off_1B2F8o
dword_1C1C0	dd ?							; DATA:off_1B270o
dword_1C1C4	dd ?							; DATA:off_1B174o
dword_1C1C8	dd ?							; DATA:off_1B114o
dword_1C1CC	dd ?							; DATA:off_1B208o
dword_1C1D0	dd ?							; DATA:off_1B2BCo
dword_1C1D4	dd ?							; DATA:off_1B210o
dword_1C1D8	dd ?							; DATA:off_1B244o
dword_1C1DC	dd ?							; DATA:off_1B200o
dword_1C1E0	dd ?							; DATA:off_1B27Co
dword_1C1E4	dd ?							; DATA:off_1B0ECo
dword_1C1E8	dd ?							; DATA:off_1B1ECo
dword_1C1EC	dd ?							; DATA:off_1B2B0o
dword_1C1F0	dd ?							; DATA:off_1B138o
dword_1C1F4	dd ?							; DATA:off_1B24Co
dword_1C1F8	dd ?							; DATA:off_1B250o
dword_1C1FC	dd ?							; DATA:off_1B23Co
dword_1C200	dd ?							; DATA:off_1B0E4o
dword_1C204	dd ?							; DATA:off_1B26Co
dword_1C208	dd ?							; DATA:off_1B1A4o
dword_1C20C	dd ?							; DATA:off_1B0DCo
dword_1C210	dd ?							; DATA:off_1B278o
dword_1C214	dd ?							; DATA:off_1B220o
dword_1C218	dd ?							; DATA:off_1B1E0o
dword_1C21C	dd ?							; DATA:off_1B2ACo
dword_1C220	dd ?							; DATA:off_1B13Co
dword_1C224	dd ?							; sub_13A50+11w
dword_1C228	dd ?		dword_1C22C	dd ?		dword_1C230	dd ?		dword_1C234	dd ?		dword_1C238	dd ?		dword_1C23C	dd ?		dword_1C240	dd ?		dword_1C244	dd ?		dword_1C248	dd ?		dword_1C24C	dd ?							; DATA:off_1B188o
dword_1C250	dd ?		dword_1C254	dd ?		dword_1C258	dd ?		dword_1C25C	dd ?		dword_1C260	dd ?		dword_1C264	dd ?		dword_1C268	dd ?		dword_1C26C	dd ?		dword_1C270	dd ?		dword_1C274	dd ?		dword_1C278	dd ?		dword_1C27C	dd ?		dword_1C280	dd ?		dword_1C284	dd ?		dword_1C288	dd ?		dword_1C28C	dd ?		dword_1C290	dd ?		dword_1C294	dd ?		dword_1C298	dd ?		dword_1C29C	dd ?		dword_1C2A0	dd ?		dword_1C2A4	dd ?		dword_1C2A8	dd ?							; sub_16E1C+FBr ...
dword_1C2AC	dd ?							; DATA:off_1B31Co
dword_1C2B0	dd ?							; DATA:off_1B280o
dword_1C2B4	dd ?							; DATA:off_1B1FCo
dword_1C2B8	dd ?		dword_1C2BC	dd ?		dword_1C2C0	dd ?		dword_1C2C4	dd ?		dword_1C2C8	dd ?							; DATA:off_1B1E4o
dword_1C2CC	dd ?							; DATA:off_1B190o
dword_1C2D0	dd ?							; DATA:off_1B16Co
dword_1C2D4	dd ?							; DATA:off_1B118o
dword_1C2D8	dd ?							; DATA:off_1B288o
dword_1C2DC	dd ?		dword_1C2E0	dd ?		dword_1C2E4	dd ?		dword_1C2E8	dd ?		dword_1C2EC	dd ?		dword_1C2F0	dd ?		dword_1C2F4	dd ?		dword_1C2F8	dd ?		dword_1C2FC	dd ?		dword_1C300	dd ?		dword_1C304	dd ?		dword_1C308	dd ?		dword_1C30C	dd ?		dword_1C310	dd ?		dword_1C314	dd ?		dword_1C318	dd ?		dword_1C31C	dd ?							; ServiceMain+2Fw ...
dword_1C320	dd ?							; sub_17240+A0r ...
		align 100h
BSS		ends

;
; Imports from kernel32.dll
;
; Section 4. (virtual address 0000D000)
; Virtual size			: 000002BE (	702.)
; Section size in file		: 00000400 (   1024.)
; Offset to raw	data for section: 00009A00
; Flags	C0000040: Data Readable	Writable
; Alignment	: default
; ===========================================================================

; Segment type:	Externs
; _idata
; DWORD	GetCurrentThreadId(void)
		extrn __imp_GetCurrentThreadId:dword ; DATA XREF: GetCurrentThreadIdr
; SIZE_T __stdcall LocalSize(HLOCAL hMem)
		extrn __imp_LocalSize:dword ; DATA XREF: LocalSizer
; HLOCAL __stdcall LocalReAlloc(HLOCAL hMem, SIZE_T uBytes, UINT uFlags)
		extrn __imp_LocalReAlloc:dword ; DATA XREF: LocalReAllocr
; int __stdcall	WideCharToMultiByte(UINT CodePage, DWORD dwFlags, LPCWSTR lpWideCharStr, int cchWideChar, LPSTR	lpMultiByteStr,	int cbMultiByte, LPCSTR	lpDefaultChar, LPBOOL lpUsedDefaultChar)
		extrn __imp_WideCharToMultiByte:dword ;	DATA XREF: WideCharToMultiByter
; int __stdcall	MultiByteToWideChar(UINT CodePage, DWORD dwFlags, LPCSTR lpMultiByteStr, int cbMultiByte, LPWSTR lpWideCharStr,	int cchWideChar)
		extrn __imp_MultiByteToWideChar:dword ;	DATA XREF: MultiByteToWideCharr
; void __stdcall ExitProcess(UINT uExitCode)
		extrn __imp_ExitProcess:dword ;	DATA XREF: ExitProcessr
; LONG __stdcall UnhandledExceptionFilter(struct _EXCEPTION_POINTERS *ExceptionInfo)
		extrn __imp_UnhandledExceptionFilter:dword
					; DATA XREF: UnhandledExceptionFilterr
		extrn __imp_RtlUnwind:dword ; DATA XREF: RtlUnwindr
; void __stdcall RaiseException(DWORD dwExceptionCode, DWORD dwExceptionFlags, DWORD nNumberOfArguments, const ULONG_PTR *lpArguments)
		extrn __imp_RaiseException:dword ; DATA	XREF: RaiseExceptionr
; BOOL __stdcall TlsSetValue(DWORD dwTlsIndex, LPVOID lpTlsValue)
		extrn __imp_TlsSetValue:dword ;	DATA XREF: TlsSetValuer
; LPVOID __stdcall TlsGetValue(DWORD dwTlsIndex)
		extrn __imp_TlsGetValue:dword ;	DATA XREF: TlsGetValuer
; BOOL __stdcall TlsFree(DWORD dwTlsIndex)
		extrn __imp_TlsFree:dword ; DATA XREF: TlsFreer
; DWORD	TlsAlloc(void)
		extrn __imp_TlsAlloc:dword ; DATA XREF:	TlsAllocr
; HLOCAL __stdcall LocalFree(HLOCAL hMem)
		extrn __imp_LocalFree:dword ; DATA XREF: LocalFreer
; HLOCAL __stdcall LocalAlloc(UINT uFlags, SIZE_T uBytes)
		extrn __imp_LocalAlloc:dword ; DATA XREF: LocalAllocr
; BOOL __stdcall FreeLibrary(HMODULE hLibModule)
		extrn __imp_FreeLibrary:dword ;	DATA XREF: FreeLibraryr

;
; Imports from oleaut32.dll
;
; void __stdcall SysFreeString(BSTR)
		extrn __imp_SysFreeString:dword	; DATA XREF: SysFreeStringr
; BSTR __stdcall SysAllocStringLen(const OLECHAR *, UINT)
		extrn __imp_SysAllocStringLen:dword ; DATA XREF: SysAllocStringLenr

;
; Imports from kernel32.dll
;
; FARPROC __stdcall GetProcAddress(HMODULE hModule, LPCSTR lpProcName)
		extrn __imp_GetProcAddress:dword ; DATA	XREF: GetProcAddressr
; BOOL __stdcall FreeLibrary_0(HMODULE hLibModule)
		extrn __imp_FreeLibrary_0:dword	; DATA XREF: FreeLibrary_0r

;
; Imports from user32.dll
;
; int __stdcall	wvsprintfA(LPSTR, LPCSTR, va_list arglist)
		extrn __imp_wvsprintfA:dword ; DATA XREF: wvsprintfAr

;
; Imports from kernel32.dll
;
; HMODULE __stdcall LoadLibraryA(LPCSTR	lpLibFileName)
		extrn __imp_LoadLibraryA:dword ; DATA XREF: LoadLibraryAr
; DWORD	__stdcall GetModuleFileNameA(HMODULE hModule, LPSTR lpFilename,	DWORD nSize)
		extrn __imp_GetModuleFileNameA:dword ; DATA XREF: GetModuleFileNameAr
; DWORD	__stdcall GetFileAttributesA(LPCSTR lpFileName)
		extrn __imp_GetFileAttributesA:dword ; DATA XREF: GetFileAttributesAr


		end DllEntryPoint