Function at 0x642098
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x3e
push 0
push 0
dec ecx
jne 0x6420a1
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov ebx, ecx
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x44], eax
xor eax, eax
push ebp
push 0x643239
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov dl, 1
mov eax, 0x643258
call fcn.00641b2c
pop ecx
mov dword [ebp - 0x48], 0xffffffff
call fcn.00522aa0
test al, al
jne 0x64213c
push ebp
mov dl, 1
mov eax, 0x643284
call fcn.00641b2c
pop ecx
push ebp
push 0x6432d8
call sub.kernel32.dll_GetLastError
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x7c]
call sub.rtl120.bpl__Sysutils_IntToStr_qqrj
push dword [ebp - 0x7c]
push 0x643300
call sub.kernel32.dll_GetLastError
lea edx, [ebp - 0x80]
call sub.rtl120.bpl__Sysutils_SysErrorMessage_qqrui
push dword [ebp - 0x80]
lea eax, [ebp - 0x78]
mov edx, 4
call sub.rtl120.bpl__System__UStrCatN_qqrv
mov eax, dword [ebp - 0x78]
mov dl, 1
call fcn.00641b2c
pop ecx
jmp 0x64320e
xor eax, eax
push ebp
push 0x643207
push dword fs:[eax]
mov dword fs:[eax], esp
push ebx
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.00523340
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0xffffffff
jne 0x6421d0
push ebp
mov dl, 1
mov eax, 0x643314
call fcn.00641b2c
pop ecx
push ebp
push 0x6432d8
call sub.kernel32.dll_GetLastError
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x88]
call sub.rtl120.bpl__Sysutils_IntToStr_qqrj
push dword [ebp - 0x88]
push 0x643300
call sub.kernel32.dll_GetLastError
lea edx, [ebp - 0x8c]
call sub.rtl120.bpl__Sysutils_SysErrorMessage_qqrui
push dword [ebp - 0x8c]
lea eax, [ebp - 0x84]
mov edx, 4
call sub.rtl120.bpl__System__UStrCatN_qqrv
mov eax, dword [ebp - 0x84]
mov dl, 1
call fcn.00641b2c
pop ecx
call sub.rtl120.bpl__System__TryFinallyExit_qqrv
jmp 0x64320e
lea eax, [ebp - 0x34]
mov edx, 0x1c
call fcn.00402518
mov dword [ebp - 0x34], 0x1c
xor eax, eax
mov dword [ebp - 0x48], eax
xor eax, eax
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x90]
call fcn.0040d004
mov edx, dword [ebp - 0x90]
lea eax, [ebp - 0x3c]
mov ecx, 0x64335c
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
jmp 0x64316f
inc dword [ebp - 0x50]
push ebp
xor edx, edx
xor eax, eax
call fcn.00641b2c
pop ecx
push ebp
lea edx, [ebp - 0x98]
mov eax, dword [ebp - 0x50]
call sub.rtl120.bpl__Sysutils_IntToStr_qqri
mov ecx, dword [ebp - 0x98]
lea eax, [ebp - 0x94]
mov edx, 0x643374
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x94]
xor edx, edx
call fcn.00641b2c
pop ecx
mov edx, dword [0x4136d4]
mov eax, 0x9d
call sub.rtl120.bpl__System__New_qqripv
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
call fcn.00414470
push ebp
lea edx, [ebp - 0xa0]
mov eax, 8
call fcn.00641bc0
pop ecx
mov eax, dword [ebp - 0xa0]
lea edx, [ebp - 0x9c]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov edx, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x4c]
add eax, 8
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 8]
lea eax, [ebp - 0xa4]
mov edx, 0x643384
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0xa4]
xor edx, edx
call fcn.00641b2c
pop ecx
push ebp
lea edx, [ebp - 0xac]
mov eax, 7
call fcn.00641bc0
pop ecx
mov eax, dword [ebp - 0xac]
lea edx, [ebp - 0xa8]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov edx, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x4c]
add eax, 0xc
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 0xc], 0
jne 0x642313
mov eax, dword [ebp - 0x4c]
add eax, 0xc
mov edx, 0x6433a4
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0xc]
lea eax, [ebp - 0xb0]
mov edx, 0x6433c0
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0xb0]
xor edx, edx
call fcn.00641b2c
pop ecx
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0xc]
mov edx, 0x6433e8
call sub.rtl120.bpl__Sysutils_SameText_qqrx20System_UnicodeStringt1
test al, al
jne 0x642374
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0xc]
mov edx, 0x643410
call sub.rtl120.bpl__Sysutils_SameText_qqrx20System_UnicodeStringt1
test al, al
jne 0x642374
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0xc]
mov edx, 0x64342c
call sub.rtl120.bpl__Sysutils_SameText_qqrx20System_UnicodeStringt1
test al, al
je 0x64237e
mov eax, dword [ebp - 0x4c]
mov byte [eax + 0x93], 1
push ebp
lea edx, [ebp - 0xb4]
mov eax, 9
call fcn.00641bc0
pop ecx
mov eax, dword [ebp - 0xb4]
lea edx, [ebp - 0x38]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
lea eax, [ebp - 0x38]
mov ecx, dword [ebp - 0x38]
mov edx, 0x643458
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
push ebp
lea eax, [ebp - 0xb8]
mov ecx, dword [ebp - 0x38]
mov edx, 0x6434b4
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0xb8]
xor edx, edx
call fcn.00641b2c
pop ecx
lea eax, [ebp - 0xbc]
push eax
mov ecx, dword [0x807204]
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x18]
call fcn.00640ff4
mov edx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0x4c]
add eax, 0x54
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 0x54], 0
jne 0x64242e
push 0
lea eax, [ebp - 0xc0]
push eax
mov ecx, 0x6434e0
mov edx, dword [ebp - 0x38]
mov eax, 0x80000002
call fcn.0040b760
mov edx, dword [ebp - 0xc0]
mov eax, dword [ebp - 0x4c]
add eax, 0x54
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
lea edx, [ebp - 0xc8]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x54]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov eax, dword [ebp - 0xc8]
lea edx, [ebp - 0xc4]
call sub.rtl120.bpl__Sysutils_UpperCase_qqrx20System_UnicodeString
mov edx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x4c]
add eax, 0x54
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x54]
lea eax, [ebp - 0xcc]
mov edx, 0x643510
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0xcc]
xor edx, edx
call fcn.00641b2c
pop ecx
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x54]
call fcn.00641e70
test al, al
je 0x6424a8
mov eax, dword [ebp - 0x4c]
mov edx, dword [eax + 0x54]
mov eax, 0x643534
call fcn.0040bae4
dec eax
jne 0x6424b2
mov eax, dword [ebp - 0x4c]
mov byte [eax + 0x93], 1
push ebp
mov eax, dword [ebp - 0x4c]
lea edx, [eax + 0x68]
mov eax, 0x1b
call fcn.00641c48
pop ecx
push ebp
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x68]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0xd4]
call sub.rtl120.bpl__Sysutils_IntToStr_qqrj
mov ecx, dword [ebp - 0xd4]
lea eax, [ebp - 0xd0]
mov edx, 0x643544
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0xd0]
xor edx, edx
call fcn.00641b2c
pop ecx
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 0x68], 0
je 0x64253f
mov eax, dword [ebp - 0x4c]
mov esi, dword [eax + 0x68]
test esi, 8
jne 0x642535
test esi, 0x20
jne 0x642535
test esi, 0x40
jne 0x642535
test esi, 0x1000
jne 0x642535
test esi, 0x2000
je 0x64253f
mov eax, dword [ebp - 0x4c]
mov byte [eax + 0x93], 1
push ebp
lea edx, [ebp - 0xdc]
mov eax, 0xc
call fcn.00641bc0
pop ecx
mov eax, dword [ebp - 0xdc]
lea edx, [ebp - 0xd8]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov edx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0x4c]
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax]
lea eax, [ebp - 0xe0]
mov edx, 0x64356c
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0xe0]
xor edx, edx
call fcn.00641b2c
pop ecx
push ebp
lea edx, [ebp - 0xe8]
xor eax, eax
call fcn.00641bc0
pop ecx
mov eax, dword [ebp - 0xe8]
lea edx, [ebp - 0xe4]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov edx, dword [ebp - 0xe4]
mov eax, dword [ebp - 0x4c]
add eax, 4
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 4]
lea eax, [ebp - 0xec]
mov edx, 0x64358c
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0xec]
xor edx, edx
call fcn.00641b2c
pop ecx
mov eax, dword [ebp - 0x4c]
cmp dword [eax], 0
jne 0x642600
mov eax, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x4c]
mov edx, dword [edx + 4]
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
lea edx, [ebp - 0xf4]
mov eax, 0xb
call fcn.00641bc0
pop ecx
mov eax, dword [ebp - 0xf4]
lea edx, [ebp - 0xf0]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov edx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0x4c]
add eax, 0x18
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x18]
lea eax, [ebp - 0xf8]
mov edx, 0x6435ac
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0xf8]
xor edx, edx
call fcn.00641b2c
pop ecx
push ebp
lea edx, [ebp - 0x100]
mov eax, 0xd
call fcn.00641bc0
pop ecx
mov eax, dword [ebp - 0x100]
lea edx, [ebp - 0xfc]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov edx, dword [ebp - 0xfc]
mov eax, dword [ebp - 0x4c]
add eax, 0x50
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x50]
lea eax, [ebp - 0x104]
mov edx, 0x6435d0
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x104]
xor edx, edx
call fcn.00641b2c
pop ecx
push ebp
mov eax, dword [ebp - 0x4c]
lea edx, [eax + 0x64]
mov eax, 0x19
call fcn.00641c48
pop ecx
push ebp
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x64]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x10c]
call sub.rtl120.bpl__Sysutils_IntToStr_qqrj
mov ecx, dword [ebp - 0x10c]
lea eax, [ebp - 0x108]
mov edx, 0x6435f8
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x108]
xor edx, edx
call fcn.00641b2c
pop ecx
push ebp
mov eax, dword [ebp - 0x4c]
lea edx, [eax + 0x6c]
mov eax, 0x1c
call fcn.00641c48
pop ecx
push ebp
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x6c]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x114]
call sub.rtl120.bpl__Sysutils_IntToStr_qqrj
mov ecx, dword [ebp - 0x114]
lea eax, [ebp - 0x110]
mov edx, 0x643620
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x110]
xor edx, edx
call fcn.00641b2c
pop ecx
mov eax, dword [ebp - 0x4c]
mov edi, dword [ebp - 0x20]
mov dword [eax + 0x74], edi
push ebp
mov eax, edi
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x11c]
call sub.rtl120.bpl__Sysutils_IntToStr_qqrj
mov ecx, dword [ebp - 0x11c]
lea eax, [ebp - 0x118]
mov edx, 0x643644
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x118]
xor edx, edx
call fcn.00641b2c
pop ecx
push ebp
lea edx, [ebp - 0x68]
mov eax, 0x22
call fcn.00641c48
pop ecx
movzx eax, byte [ebp - 0x68]
mov edx, dword [ebp - 0x4c]
mov dword [edx + 0x7c], eax
push ebp
lea edx, [ebp - 0x124]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x7c]
call sub.rtl120.bpl__Sysutils_IntToStr_qqri
mov ecx, dword [ebp - 0x124]
lea eax, [ebp - 0x120]
mov edx, 0x64366c
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x120]
xor edx, edx
call fcn.00641b2c
pop ecx
push ebp
lea ecx, [ebp - 0x12c]
mov dx, 0x2c
mov eax, 2
call fcn.00641cc4
pop ecx
mov eax, dword [ebp - 0x12c]
lea edx, [ebp - 0x128]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov edx, dword [ebp - 0x128]
mov eax, dword [ebp - 0x4c]
add eax, 0x5c
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x5c]
lea eax, [ebp - 0x130]
mov edx, 0x643694
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x130]
xor edx, edx
call fcn.00641b2c
pop ecx
push ebp
lea ecx, [ebp - 0x138]
mov dx, 0x2c
mov eax, 1
call fcn.00641cc4
pop ecx
mov eax, dword [ebp - 0x138]
lea edx, [ebp - 0x134]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov edx, dword [ebp - 0x134]
mov eax, dword [ebp - 0x4c]
add eax, 0x60
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x60]
lea eax, [ebp - 0x13c]
mov edx, 0x6436b8
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x13c]
xor edx, edx
call fcn.00641b2c
pop ecx
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 0x60], 0
jne 0x6428a5
mov eax, dword [ebp - 0x4c]
mov byte [eax + 0x93], 1
mov eax, dword [ebp - 0x4c]
add eax, 0x78
xor edx, edx
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
mov eax, dword [ebp - 0x4c]
mov edx, dword [eax + 0x74]
lea eax, [ebp - 0x58]
xor ecx, ecx
call fcn.005236d8
mov ebx, eax
test ebx, ebx
jne 0x64290b
cmp dword [ebp - 0x58], 0
jbe 0x64290b
inc dword [ebp - 0x58]
mov eax, dword [ebp - 0x58]
call sub.rtl120.bpl__Sysutils_StrAlloc_qqrui
mov dword [ebp - 0x54], eax
push 0
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x74]
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x54]
call fcn.005236a4
mov ebx, eax
test ebx, ebx
jne 0x642903
mov eax, dword [ebp - 0x4c]
add eax, 0x78
mov edx, dword [ebp - 0x54]
call sub.rtl120.bpl__System__UStrFromPWChar_qqrr20System_UnicodeStringpb
mov eax, dword [ebp - 0x54]
call sub.rtl120.bpl__Sysutils_StrDispose_qqrpb
lea edx, [ebp - 0x140]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x78]
call sub.rtl120.bpl__Sysutils_UpperCase_qqrx20System_UnicodeString
mov edx, dword [ebp - 0x140]
mov eax, 0x6436dc
call fcn.0040bae4
dec eax
jne 0x642939
mov eax, dword [ebp - 0x4c]
mov byte [eax + 0x93], 1
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x78]
mov edx, 0x6436f4
call sub.rtl120.bpl__Sysutils_SameText_qqrx20System_UnicodeStringt1
test al, al
je 0x642957
mov eax, dword [ebp - 0x4c]
mov byte [eax + 0x91], 0
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x78]
lea eax, [ebp - 0x144]
mov edx, 0x643728
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x144]
xor edx, edx
call fcn.00641b2c
pop ecx
lea edx, [ebp - 0x148]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x78]
call fcn.00415f28
mov edx, dword [ebp - 0x148]
mov eax, dword [ebp - 0x4c]
add eax, 0x99
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push 0
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x74]
lea edx, [ebp - 0x60]
lea eax, [ebp - 0x5c]
call fcn.00523700
mov ebx, eax
cmp ebx, 0xd
setne al
mov edx, dword [ebp - 0x4c]
mov byte [edx + 0x80], al
push ebp
lea ecx, [ebp - 0x150]
mov eax, dword [ebp - 0x4c]
movzx eax, byte [eax + 0x80]
mov dl, 1
call sub.rtl120.bpl__Sysutils_BoolToStr_qqroo
mov ecx, dword [ebp - 0x150]
lea eax, [ebp - 0x14c]
mov edx, 0x643750
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x14c]
xor edx, edx
call fcn.00641b2c
pop ecx
push ebp
lea edx, [ebp - 0x64]
mov eax, 0xa
call fcn.00641c48
pop ecx
test al, al
jne 0x642a29
mov eax, dword [ebp - 0x4c]
cmp byte [eax + 0x80], 0
jne 0x642a29
mov eax, dword [ebp - 0x4c]
mov byte [eax + 0x93], 1
mov eax, dword [ebp - 0x64]
and eax, 0x20
cmp eax, 0x20
jne 0x642a3e
mov eax, dword [ebp - 0x4c]
mov byte [eax + 0x8e], 1
push ebp
lea ecx, [ebp - 0x158]
mov eax, dword [ebp - 0x4c]
movzx eax, byte [eax + 0x8e]
mov dl, 1
call sub.rtl120.bpl__Sysutils_BoolToStr_qqroo
mov ecx, dword [ebp - 0x158]
lea eax, [ebp - 0x154]
mov edx, 0x643778
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x154]
xor edx, edx
call fcn.00641b2c
pop ecx
mov eax, dword [ebp - 0x4c]
xor edx, edx
mov dword [eax + 0x81], edx
test ebx, ebx
jne 0x642aa4
mov eax, dword [ebp - 0x5c]
and eax, 0x400
cmp eax, 0x400
jne 0x642aa4
mov eax, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x60]
mov dword [eax + 0x81], edx
push ebp
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x81]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x160]
call sub.rtl120.bpl__Sysutils_IntToStr_qqrj
mov ecx, dword [ebp - 0x160]
lea eax, [ebp - 0x15c]
mov edx, 0x6437a0
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x15c]
xor edx, edx
call fcn.00641b2c
pop ecx
lea eax, [ebp - 0x164]
push eax
mov ecx, dword [0x80738c]
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x18]
call fcn.00640ff4
mov ecx, dword [ebp - 0x164]
mov eax, dword [ebp - 0x4c]
add eax, 0x70
mov edx, dword [ebp - 0x3c]
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x70]
mov edx, dword [ebp - 0x3c]
call sub.rtl120.bpl__System__UStrEqual_qqrv
jne 0x642b5d
push 0
lea eax, [ebp - 0x16c]
push eax
mov ecx, 0x6437c8
mov edx, dword [ebp - 0x38]
mov eax, 0x80000002
call fcn.0040b760
mov eax, dword [ebp - 0x16c]
lea edx, [ebp - 0x168]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov ecx, dword [ebp - 0x168]
mov eax, dword [ebp - 0x4c]
add eax, 0x70
mov edx, dword [ebp - 0x3c]
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x70]
lea eax, [ebp - 0x170]
mov edx, 0x6437e4
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x170]
xor edx, edx
call fcn.00641b2c
pop ecx
lea eax, [ebp - 0x174]
push eax
mov ecx, dword [0x806710]
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x18]
call fcn.00640ff4
mov edx, dword [ebp - 0x174]
mov eax, dword [ebp - 0x4c]
add eax, 0x20
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 0x20], 0
jne 0x642bf1
push 0
lea eax, [ebp - 0x17c]
push eax
mov ecx, 0x643808
mov edx, dword [ebp - 0x38]
mov eax, 0x80000002
call fcn.0040b760
mov eax, dword [ebp - 0x17c]
lea edx, [ebp - 0x178]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov edx, dword [ebp - 0x178]
mov eax, dword [ebp - 0x4c]
add eax, 0x20
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x20]
lea eax, [ebp - 0x180]
mov edx, 0x64382c
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x180]
xor edx, edx
call fcn.00641b2c
pop ecx
lea eax, [ebp - 0x184]
push eax
mov ecx, dword [0x80660c]
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x18]
call fcn.00640ff4
mov edx, dword [ebp - 0x184]
mov eax, dword [ebp - 0x4c]
add eax, 0x1c
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 0x1c], 0
jne 0x642c85
push 0
lea eax, [ebp - 0x18c]
push eax
mov ecx, 0x643858
mov edx, dword [ebp - 0x38]
mov eax, 0x80000002
call fcn.0040b760
mov eax, dword [ebp - 0x18c]
lea edx, [ebp - 0x188]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov edx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x4c]
add eax, 0x1c
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x1c]
lea eax, [ebp - 0x190]
mov edx, 0x643880
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x190]
xor edx, edx
call fcn.00641b2c
pop ecx
lea eax, [ebp - 0x194]
push eax
mov ecx, dword [0x806878]
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x18]
call fcn.00640ff4
mov edx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x4c]
add eax, 0x24
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 0x24], 0
jne 0x642d19
push 0
lea eax, [ebp - 0x19c]
push eax
mov ecx, 0x6438a8
mov edx, dword [ebp - 0x38]
mov eax, 0x80000002
call fcn.0040b760
mov eax, dword [ebp - 0x19c]
lea edx, [ebp - 0x198]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov edx, dword [ebp - 0x198]
mov eax, dword [ebp - 0x4c]
add eax, 0x24
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x24]
lea eax, [ebp - 0x1a0]
mov edx, 0x6438d0
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x1a0]
xor edx, edx
call fcn.00641b2c
pop ecx
mov ecx, dword [0x8071e0]
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x18]
call fcn.00641064
mov eax, dword [ebp - 0x4c]
fstp qword [eax + 0x28]
wait
mov eax, dword [ebp - 0x4c]
fld qword [eax + 0x28]
fcomp dword [0x6438ec]
wait
fnstsw ax
sahf
jne 0x642d81
mov ecx, 0x6438fc
mov edx, dword [ebp - 0x38]
mov eax, 0x80000002
call fcn.00641d70
mov eax, dword [ebp - 0x4c]
fstp qword [eax + 0x28]
wait
push ebp
mov eax, dword [ebp - 0x4c]
fld qword [eax + 0x28]
add esp, 0xfffffff4
fstp xword [esp]
wait
lea eax, [ebp - 0x1a8]
call sub.rtl120.bpl__Sysutils_FloatToStr_qqrg
mov ecx, dword [ebp - 0x1a8]
lea eax, [ebp - 0x1a4]
mov edx, 0x643928
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x1a4]
xor edx, edx
call fcn.00641b2c
pop ecx
mov ecx, dword [0x806964]
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x18]
call fcn.006411a4
mov edx, dword [ebp - 0x4c]
mov dword [edx + 0x85], eax
mov ecx, dword [0x8064d0]
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x18]
call fcn.00641104
mov eax, dword [ebp - 0x4c]
fstp qword [eax + 0x3c]
wait
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 0x24], 0
jne 0x642e0b
mov eax, dword [ebp - 0x4c]
fld qword [eax + 0x28]
fcomp dword [0x6438ec]
wait
fnstsw ax
sahf
je 0x642e15
mov eax, dword [ebp - 0x4c]
mov byte [eax + 0x92], 1
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 8], 0
jne 0x642e2e
mov eax, dword [ebp - 0x4c]
add eax, 8
mov edx, 0x643950
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 8]
lea eax, [ebp - 0x1ac]
mov edx, 0x6439ac
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x1ac]
xor edx, edx
call fcn.00641b2c
pop ecx
xor eax, eax
push ebp
push 0x642e79
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0x10]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 8]
call sub.rtl120.bpl__Sysutils_StringToGUID_qqrx20System_UnicodeString
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x642e83
push ebp
lea edx, [ebp - 0x1b0]
lea eax, [ebp - 0x10]
call fcn.00641e1c
pop ecx
mov edx, dword [ebp - 0x1b0]
mov eax, dword [ebp - 0x4c]
add eax, 0x10
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x10]
lea eax, [ebp - 0x1b4]
mov edx, 0x6439d4
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x1b4]
xor edx, edx
call fcn.00641b2c
pop ecx
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 0x10], 0
jne 0x642ee3
mov eax, dword [ebp - 0x4c]
add eax, 0x10
mov edx, dword [ebp - 0x4c]
mov edx, dword [edx + 0xc]
call sub.rtl120.bpl__System__UStrAsg_qqrr20System_UnicodeStringx20System_UnicodeString
mov eax, dword [ebp - 0x4c]
lea ecx, [eax + 0x14]
lea edx, [ebp - 0x10]
lea eax, [ebp - 0x74]
call fcn.0052343c
mov eax, dword [ebp - 0x4c]
cmp byte [eax + 0x80], 0
je 0x642f2b
xor edx, edx
xor eax, eax
call fcn.00413a14
push eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x78]
call sub.rtl120.bpl__System__UStrToPWChar_qqrx20System_UnicodeString
mov ecx, eax
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x18]
call fcn.00641390
mov edx, dword [ebp - 0x4c]
mov byte [edx + 0x8f], al
push ebp
lea ecx, [ebp - 0x1bc]
mov eax, dword [ebp - 0x4c]
movzx eax, byte [eax + 0x8f]
mov dl, 1
call sub.rtl120.bpl__Sysutils_BoolToStr_qqroo
mov ecx, dword [ebp - 0x1bc]
lea eax, [ebp - 0x1b8]
mov edx, 0x6439fc
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x1b8]
xor edx, edx
call fcn.00641b2c
pop ecx
cmp byte [0x8019d0], 0
jne 0x643082
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0xc]
mov edx, 0x643a24
call sub.rtl120.bpl__Sysutils_SameText_qqrx20System_UnicodeStringt1
test al, al
je 0x643082
lea edx, [ebp - 0x1c0]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x18]
call sub.rtl120.bpl__Sysutils_LowerCase_qqrx20System_UnicodeString
mov eax, dword [ebp - 0x1c0]
push eax
lea edx, [ebp - 0x1c4]
mov eax, dword [0x806a20]
mov eax, dword [eax]
call sub.rtl120.bpl__Sysutils_LowerCase_qqrx20System_UnicodeString
mov eax, dword [ebp - 0x1c4]
pop edx
call fcn.0040bae4
dec eax
je 0x64307b
lea edx, [ebp - 0x1c8]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x18]
call sub.rtl120.bpl__Sysutils_LowerCase_qqrx20System_UnicodeString
mov eax, dword [ebp - 0x1c8]
push eax
lea edx, [ebp - 0x1cc]
mov eax, dword [0x806a20]
mov eax, dword [eax + 4]
call sub.rtl120.bpl__Sysutils_LowerCase_qqrx20System_UnicodeString
mov eax, dword [ebp - 0x1cc]
pop edx
call fcn.0040bae4
dec eax
je 0x64307b
lea edx, [ebp - 0x1d0]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x18]
call sub.rtl120.bpl__Sysutils_LowerCase_qqrx20System_UnicodeString
mov eax, dword [ebp - 0x1d0]
push eax
lea edx, [ebp - 0x1d4]
mov eax, dword [0x806a20]
mov eax, dword [eax + 8]
call sub.rtl120.bpl__Sysutils_LowerCase_qqrx20System_UnicodeString
mov eax, dword [ebp - 0x1d4]
pop edx
call fcn.0040bae4
dec eax
je 0x64307b
lea edx, [ebp - 0x1d8]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x18]
call sub.rtl120.bpl__Sysutils_LowerCase_qqrx20System_UnicodeString
mov eax, dword [ebp - 0x1d8]
push eax
lea edx, [ebp - 0x1dc]
mov eax, dword [0x806a20]
mov eax, dword [eax + 0xc]
call sub.rtl120.bpl__Sysutils_LowerCase_qqrx20System_UnicodeString
mov eax, dword [ebp - 0x1dc]
pop edx
call fcn.0040bae4
dec eax
je 0x64307b
xor eax, eax
jmp 0x64307d
mov al, 1
mov byte [0x8019d0], al
cmp byte [0x8019d4], 0
jne 0x6430dd
mov edx, 0x643a24
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0xc]
call sub.rtl120.bpl__Sysutils_SameText_qqrx20System_UnicodeStringt1
test al, al
je 0x6430dd
lea edx, [ebp - 0x1e0]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x18]
call sub.rtl120.bpl__Sysutils_LowerCase_qqrx20System_UnicodeString
mov eax, dword [ebp - 0x1e0]
push eax
lea edx, [ebp - 0x1e4]
mov eax, dword [0x806d04]
mov eax, dword [eax]
call sub.rtl120.bpl__Sysutils_LowerCase_qqrx20System_UnicodeString
mov eax, dword [ebp - 0x1e4]
pop edx
call fcn.0040bae4
dec eax
sete byte [0x8019d4]
push ebp
lea edx, [ebp - 0x1e8]
mov eax, 4
call fcn.00641bc0
pop ecx
mov eax, dword [ebp - 0x1e8]
lea edx, [ebp - 0x40]
call sub.rtl120.bpl__Sysutils_Trim_qqrx20System_UnicodeString
mov eax, dword [ebp - 0x40]
call fcn.00641f60
test al, al
je 0x643113
mov eax, dword [ebp - 0x4c]
mov byte [eax + 0x98], 1
mov edx, 0x643a24
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0xc]
call sub.rtl120.bpl__Sysutils_SameText_qqrx20System_UnicodeStringt1
test al, al
je 0x64313d
mov eax, dword [ebp - 0x4c]
cmp byte [eax + 0x80], 0
jne 0x64313d
mov eax, dword [ebp - 0x4c]
mov byte [eax + 0x93], 1
cmp byte [ebp + 8], 0
je 0x64315f
mov eax, dword [ebp - 0x4c]
cmp byte [eax + 0x93], 0
je 0x64315f
mov edx, dword [0x4136d4]
mov eax, dword [ebp - 0x4c]
call sub.rtl120.bpl__System__Dispose_qqrpvt1
jmp 0x64316f
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov edx, dword [ebp - 0x4c]
call fcn.00643c6c
inc dword [ebp - 0x48]
lea ecx, [ebp - 0x34]
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x18]
call fcn.00523370
test eax, eax
jne 0x642211
push ebp
push 0x643a40
call sub.kernel32.dll_GetLastError
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x1f0]
call sub.rtl120.bpl__Sysutils_IntToStr_qqrj
push dword [ebp - 0x1f0]
push 0x643300
call sub.kernel32.dll_GetLastError
lea edx, [ebp - 0x1f4]
call sub.rtl120.bpl__Sysutils_SysErrorMessage_qqrui
push dword [ebp - 0x1f4]
lea eax, [ebp - 0x1ec]
mov edx, 4
call sub.rtl120.bpl__System__UStrCatN_qqrv
mov eax, dword [ebp - 0x1ec]
mov dl, 1
call fcn.00641b2c
pop ecx
mov eax, dword [ebp - 0x18]
call fcn.005233d0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x64320e
call fcn.005232d8
push ebp
mov dl, 1
mov eax, 0x643a70
call fcn.00641b2c
pop ecx
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x643240
lea eax, [ebp - 0x1f4]
mov edx, 0x60
call sub.rtl120.bpl__System__UStrArrayClr_qqrpvi
lea eax, [ebp - 0x40]
mov edx, 3
call sub.rtl120.bpl__System__UStrArrayClr_qqrpvi
ret