Function at 0x467b70
Capabilities:
Accept command line arguments
Get common file path
Get session user name

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xb3
push 0
push 0
dec ecx
jne 0x467b78
push ecx
push ebx
push esi
push edi
mov esi, edx
mov dword [ebp - 0x1c], eax
xor eax, eax
push ebp
push 0x468e5c
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x1c]
cmp dword [eax + 0x3a0], 0
jne 0x467bcc
mov dl, 1
mov eax, dword [0x43f934]
call fcn.00449a44
mov ebx, eax
mov eax, dword [ebp - 0x1c]
mov dword [ebx + 0xc], eax
mov eax, dword [ebp - 0x1c]
add eax, 0x3a0
mov edx, ebx
test edx, edx
je 0x467bc7
sub edx, 0xffffffc0
call sub.rtl250.bpl__System__IntfCopy_qqrr44System__DelphiInterface_17System_IInterface_x44System__DelphiInterface_17System_IInterf
mov eax, esi
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x3a0]
call sub.rtl250.bpl__System__IntfCopy_qqrr44System__DelphiInterface_17System_IInterface_x44System__DelphiInterface_17System_IInterf
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x3c4], 0
je 0x468d2c
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x3a0]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jne 0x468d2c
lea eax, [ebp - 0x18]
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x3a0]
call sub.rtl250.bpl__System__IntfCopy_qqrr44System__DelphiInterface_17System_IInterface_x44System__DelphiInterface_17System_IInterf
lea eax, [ebp - 0x49c]
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x3a0]
mov ecx, 0x468e70
call sub.rtl250.bpl__System__IntfCast_qqrr44System__DelphiInterface_17System_IInterface_x44System__DelphiInterface_17System_IInterf
mov eax, dword [ebp - 0x49c]
mov edx, dword [eax]
call dword [edx + 0x18]
xor eax, eax
mov dword [ebp - 0xc], eax
xor eax, eax
push ebp
push 0x467d9c
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4a4]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x424]
mov cx, 0x30
mov edx, 4
call fcn.00408af8
push dword [ebp - 0x4a4]
push 0x468e8c
lea eax, [ebp - 0x4a8]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x426]
mov cx, 0x30
mov edx, 2
call fcn.00408af8
push dword [ebp - 0x4a8]
push 0x468e8c
lea eax, [ebp - 0x4ac]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x42a]
mov cx, 0x30
mov edx, 2
call fcn.00408af8
push dword [ebp - 0x4ac]
push 0x468e9c
lea eax, [ebp - 0x4b0]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x42c]
mov cx, 0x30
mov edx, 2
call fcn.00408af8
push dword [ebp - 0x4b0]
push 0x468eb0
lea eax, [ebp - 0x4b4]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x42e]
mov cx, 0x30
mov edx, 2
call fcn.00408af8
push dword [ebp - 0x4b4]
push 0x468eb0
lea eax, [ebp - 0x4b8]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x430]
mov cx, 0x30
mov edx, 2
call fcn.00408af8
push dword [ebp - 0x4b8]
push 0x468e9c
lea eax, [ebp - 0x4bc]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x432]
mov cx, 0x30
mov edx, 1
call fcn.00408af8
push dword [ebp - 0x4bc]
push 0x468ec0
lea eax, [ebp - 0x4a0]
mov edx, 0xe
call sub.rtl250.bpl__System__UStrCatN_qqrv
mov edx, dword [ebp - 0x4a0]
mov eax, 0x468ed4
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x467da6
xor eax, eax
push ebp
push 0x467ddb
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4c0]
call fcn.004341c0
mov edx, dword [ebp - 0x4c0]
mov eax, 0x468ef4
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x467de5
xor eax, eax
push ebp
push 0x467e1a
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4c4]
call fcn.004663bc
mov edx, dword [ebp - 0x4c4]
mov eax, 0x468f1c
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x467e24
xor eax, eax
push ebp
push 0x467ec3
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x20], 0x104
call sub.kernel32.dll_GetVersion
test eax, 0x80000000
jne 0x467e6a
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x236]
push eax
call sub.advapi32.dll_GetUserNameW
lea eax, [ebp - 0x10]
lea edx, [ebp - 0x236]
mov ecx, 0x105
call sub.rtl250.bpl__System__UStrFromWArray_qqrr20System_UnicodeStringpbi
jmp 0x467e94
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x236]
push eax
call sub.advapi32.dll_GetUserNameA
lea eax, [ebp - 0x10]
lea edx, [ebp - 0x236]
mov dword [ebp - 0x4c8], edx
mov edx, dword [ebp - 0x4c8]
call sub.rtl250.bpl__System__UStrFromLStr_qqrr20System_UnicodeStringx27System__AnsiStringT_us_i0__
call fcn.004662f8
test al, al
je 0x467eaa
lea eax, [ebp - 0x10]
mov edx, 0x468f48
call sub.rtl250.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
mov edx, dword [ebp - 0x10]
mov eax, 0x468f68
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x467ecd
xor eax, eax
push ebp
push 0x467fb2
push dword fs:[eax]
mov dword fs:[eax], esp
call sub.kernel32.dll_GetVersion
test eax, 0x80000000
jne 0x467ef6
lea eax, [ebp - 0x10]
mov edx, 0x468f88
call sub.rtl250.bpl__System__UStrLAsg_qqrr20System_UnicodeStringx20System_UnicodeString
jmp 0x467efe
lea eax, [ebp - 0x10]
call sub.rtl250.bpl__System__UStrClr_qqrpv
lea eax, [ebp - 0x14]
push eax
push 0x468f9c
push dword [ebp - 0x10]
push 0x468fe0
lea eax, [ebp - 0x4cc]
mov edx, 3
call sub.rtl250.bpl__System__UStrCatN_qqrv
mov edx, dword [ebp - 0x4cc]
mov ecx, 0x46900c
mov eax, 0x80000002
call fcn.00434274
lea eax, [ebp - 0x4d0]
push eax
push 0x468f9c
push dword [ebp - 0x10]
push 0x468fe0
lea eax, [ebp - 0x4d4]
mov edx, 3
call sub.rtl250.bpl__System__UStrCatN_qqrv
mov edx, dword [ebp - 0x4d4]
mov ecx, 0x469048
mov eax, 0x80000002
call fcn.00434274
mov edx, dword [ebp - 0x4d0]
lea eax, [ebp - 0x10]
call sub.rtl250.bpl__System__UStrLAsg_qqrr20System_UnicodeStringx20System_UnicodeString
cmp dword [ebp - 0x14], 0
je 0x467f99
push dword [ebp - 0x10]
push 0x469074
push dword [ebp - 0x14]
lea eax, [ebp - 0x10]
mov edx, 3
call sub.rtl250.bpl__System__UStrCatN_qqrv
push ebp
mov edx, dword [ebp - 0x10]
mov eax, 0x469088
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x467fbc
xor eax, eax
push ebp
push 0x467ff1
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4d8]
call fcn.00466770
mov edx, dword [ebp - 0x4d8]
mov eax, 0x4690b8
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x467ffb
xor eax, eax
push ebp
push 0x468030
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4dc]
call fcn.00466828
mov edx, dword [ebp - 0x4dc]
mov eax, 0x4690e8
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46803a
xor eax, eax
push ebp
push 0x46806f
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4e0]
call fcn.004668f8
mov edx, dword [ebp - 0x4e0]
mov eax, 0x469114
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x468079
xor eax, eax
push ebp
push 0x4680ae
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4e4]
call fcn.00466950
mov edx, dword [ebp - 0x4e4]
mov eax, 0x469140
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4680b8
xor eax, eax
push ebp
push 0x468145
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x10]
call fcn.00466a64
cmp dword [ebp - 0x10], 0
je 0x46813b
call fcn.00466b68
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 1
jne 0x4680f3
push ebp
mov edx, dword [ebp - 0x10]
mov eax, 0x46916c
call fcn.00467acc
pop ecx
jmp 0x46813b
push ebp
lea eax, [ebp - 0x4ec]
push eax
mov cx, 0x30
mov edx, 1
mov eax, dword [ebp - 0x24]
call fcn.004089fc
push dword [ebp - 0x4ec]
push 0x46918c
push dword [ebp - 0x10]
lea eax, [ebp - 0x4e8]
mov edx, 3
call sub.rtl250.bpl__System__UStrCatN_qqrv
mov edx, dword [ebp - 0x4e8]
mov eax, 0x4691a0
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46814f
xor eax, eax
push ebp
push 0x468184
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4f0]
call fcn.00466c9c
mov edx, dword [ebp - 0x4f0]
mov eax, 0x4691c4
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46818e
call sub.kernel32.dll_GetVersion
test eax, 0x80000000
je 0x4681d9
xor eax, eax
push ebp
push 0x4681cf
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4f4]
call fcn.00466e30
mov edx, dword [ebp - 0x4f4]
mov eax, 0x4691f0
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4681d9
xor eax, eax
push ebp
push 0x468319
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x469214
push 0x46923c
call sub.kernel32.dll_GetModuleHandleW
push eax
call fcn.004035c4
mov dword [ebp - 8], eax
push 0x104
lea eax, [ebp - 0x236]
push eax
call sub.kernel32.dll_GetWindowsDirectoryA
lea edx, [ebp - 0x10]
xor eax, eax
call fcn.004339d8
mov ebx, dword [0x53fcb4]
mov ebx, dword [ebx]
mov eax, dword [ebp - 0x10]
movzx eax, byte [eax]
call ebx
mov ebx, eax
mov esi, dword [0x53fcb4]
mov esi, dword [esi]
lea eax, [ebp - 0x236]
movzx eax, byte [eax]
call esi
cmp bl, al
je 0x4682d1
push ebp
push ebp
lea eax, [ebp - 0x500]
lea edx, [ebp - 0x236]
movzx edx, byte [edx]
mov ecx, 0
call sub.rtl250.bpl__System__LStrFromChar_qqrr27System__AnsiStringT_us_i0__cus
mov eax, dword [ebp - 0x500]
lea edx, [ebp - 0x4fc]
call fcn.00467938
pop ecx
push dword [ebp - 0x4fc]
push 0x469264
push ebp
lea eax, [ebp - 0x508]
mov edx, dword [ebp - 0x10]
movzx edx, byte [edx]
mov ecx, 0
call sub.rtl250.bpl__System__LStrFromChar_qqrr27System__AnsiStringT_us_i0__cus
mov eax, dword [ebp - 0x508]
lea edx, [ebp - 0x504]
call fcn.00467938
pop ecx
push dword [ebp - 0x504]
lea eax, [ebp - 0x4f8]
mov edx, 3
call sub.rtl250.bpl__System__UStrCatN_qqrv
mov edx, dword [ebp - 0x4f8]
mov eax, 0x469274
call fcn.00467acc
pop ecx
jmp 0x46830f
push ebp
push ebp
lea eax, [ebp - 0x510]
lea edx, [ebp - 0x236]
movzx edx, byte [edx]
mov ecx, 0
call sub.rtl250.bpl__System__LStrFromChar_qqrr27System__AnsiStringT_us_i0__cus
mov eax, dword [ebp - 0x510]
lea edx, [ebp - 0x50c]
call fcn.00467938
pop ecx
mov edx, dword [ebp - 0x50c]
mov eax, 0x469274
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x468323
xor eax, eax
push ebp
push 0x468358
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x514]
call fcn.00466efc
mov edx, dword [ebp - 0x514]
mov eax, 0x4692a0
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x468362
xor eax, eax
push ebp
push 0x4683a6
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x518]
push eax
call sub.kernel32.dll_GetCurrentProcessId
mov cx, 0x30
mov edx, 1
call fcn.00408b88
mov edx, dword [ebp - 0x518]
mov eax, 0x4692c8
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4683b0
xor eax, eax
push ebp
push 0x4683e5
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x51c]
call fcn.004670e4
mov edx, dword [ebp - 0x51c]
mov eax, 0x4692ec
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4683ef
xor eax, eax
push ebp
push 0x468424
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x520]
call fcn.00467108
mov edx, dword [ebp - 0x520]
mov eax, 0x46931c
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46842e
xor eax, eax
push ebp
push 0x4684c4
push dword fs:[eax]
mov dword fs:[eax], esp
cmp byte [0x53e554], 0
je 0x4684ba
call sub.rtl250.bpl__System_ParamCount_qqrv
test eax, eax
jle 0x4684ba
call sub.kernel32.dll_GetVersion
test eax, 0x80000000
jne 0x468480
push ebp
call sub.kernel32.dll_GetCommandLineW
mov edx, eax
lea eax, [ebp - 0x524]
call sub.rtl250.bpl__System__UStrFromPWChar_qqrr20System_UnicodeStringpb
mov edx, dword [ebp - 0x524]
mov eax, 0x469350
call fcn.00467acc
pop ecx
jmp 0x4684ba
push ebp
call sub.kernel32.dll_GetCommandLineA
mov edx, eax
lea eax, [ebp - 0x52c]
mov ecx, 0
call sub.rtl250.bpl__System__LStrFromPChar_qqrr27System__AnsiStringT_us_i0__pcus
mov edx, dword [ebp - 0x52c]
lea eax, [ebp - 0x528]
call sub.rtl250.bpl__System__UStrFromLStr_qqrr20System_UnicodeStringx27System__AnsiStringT_us_i0__
mov edx, dword [ebp - 0x528]
mov eax, 0x469350
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4684ce
xor eax, eax
push ebp
push 0x468516
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea edx, [ebp - 0x534]
xor eax, eax
call fcn.004339d8
mov eax, dword [ebp - 0x534]
lea edx, [ebp - 0x530]
call fcn.00409fb4
mov edx, dword [ebp - 0x530]
mov eax, 0x469378
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x468520
xor eax, eax
push ebp
push 0x46857a
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
call sub.kernel32.dll_GetModuleHandleW
cmp eax, dword [0x53e64c]
je 0x468570
push ebp
lea edx, [ebp - 0x53c]
mov eax, dword [0x53e64c]
call fcn.004339d8
mov eax, dword [ebp - 0x53c]
lea edx, [ebp - 0x538]
call fcn.00409fb4
mov edx, dword [ebp - 0x538]
mov eax, 0x46939c
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x468584
xor edx, edx
push ebp
push 0x4687f8
push dword fs:[edx]
mov dword fs:[edx], esp
cmp byte [0x53e658], 0
je 0x4685a7
lea edx, [ebp - 0x10]
xor eax, eax
call fcn.004339d8
jmp 0x4685b4
lea edx, [ebp - 0x10]
mov eax, dword [0x53e64c]
call fcn.004339d8
call sub.kernel32.dll_GetVersion
test eax, 0x80000000
jne 0x4685d7
lea eax, [ebp - 0x488]
push eax
mov eax, dword [ebp - 0x10]
call sub.rtl250.bpl__System__UStrToPWChar_qqrx20System_UnicodeString
push eax
call sub.kernel32.dll_FindFirstFileW
jmp 0x468602
lea eax, [ebp - 0x488]
push eax
lea eax, [ebp - 0x540]
mov edx, dword [ebp - 0x10]
mov ecx, 0
call sub.rtl250.bpl__System__LStrFromUStr_qqrr27System__AnsiStringT_us_i0__x20System_UnicodeStringus
mov eax, dword [ebp - 0x540]
call sub.rtl250.bpl__System__LStrToPChar_qqrx27System__AnsiStringT_us_i0__
push eax
call sub.kernel32.dll_FindFirstFileA
cmp eax, 0xffffffff
je 0x4687ee
push eax
call sub.kernel32.dll_FindClose
xor eax, eax
push ebp
push 0x46877a
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0x474]
lea eax, [ebp - 0x474]
call fcn.00403418
lea edx, [ebp - 0x498]
lea eax, [ebp - 0x474]
call fcn.00403428
cmp byte [0x53e658], 0
jne 0x468659
push 0
call sub.kernel32.dll_GetModuleHandleW
cmp eax, dword [0x53e64c]
jne 0x468668
lea eax, [ebp - 0x14]
mov edx, 0x4693c8
call sub.rtl250.bpl__System__UStrLAsg_qqrr20System_UnicodeStringx20System_UnicodeString
jmp 0x468675
lea eax, [ebp - 0x14]
mov edx, 0x4693e0
call sub.rtl250.bpl__System__UStrLAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push ebp
lea eax, [ebp - 0x548]
push eax
movzx eax, word [ebp - 0x498]
mov cx, 0x30
mov edx, 4
call fcn.00408af8
push dword [ebp - 0x548]
push 0x468e8c
lea eax, [ebp - 0x54c]
push eax
movzx eax, word [ebp - 0x496]
mov cx, 0x30
mov edx, 2
call fcn.00408af8
push dword [ebp - 0x54c]
push 0x468e8c
lea eax, [ebp - 0x550]
push eax
movzx eax, word [ebp - 0x492]
mov cx, 0x30
mov edx, 2
call fcn.00408af8
push dword [ebp - 0x550]
push 0x469264
lea eax, [ebp - 0x554]
push eax
movzx eax, word [ebp - 0x490]
mov cx, 0x30
mov edx, 2
call fcn.00408af8
push dword [ebp - 0x554]
push 0x468eb0
lea eax, [ebp - 0x558]
push eax
movzx eax, word [ebp - 0x48e]
mov cx, 0x30
mov edx, 2
call fcn.00408af8
push dword [ebp - 0x558]
push 0x4693fc
lea eax, [ebp - 0x544]
mov edx, 0xa
call sub.rtl250.bpl__System__UStrCatN_qqrv
mov eax, dword [ebp - 0x544]
push eax
lea eax, [ebp - 0x55c]
mov ecx, 0x469410
mov edx, dword [ebp - 0x14]
call sub.rtl250.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x55c]
pop edx
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x468784
lea edx, [ebp - 0x560]
mov eax, dword [ebp - 0x1c]
call fcn.0044607c
cmp dword [ebp - 0x560], 0
jne 0x4687ce
lea edx, [ebp - 0x564]
mov eax, dword [ebp - 0x10]
call fcn.0040d5bc
mov edx, dword [ebp - 0x564]
lea eax, [ebp - 0x10]
call sub.rtl250.bpl__System__UStrLAsg_qqrr20System_UnicodeStringx20System_UnicodeString
cmp dword [ebp - 0x10], 0
je 0x4687ee
push ebp
mov edx, dword [ebp - 0x10]
mov eax, 0x469434
call fcn.00467acc
pop ecx
jmp 0x4687ee
push ebp
lea edx, [ebp - 0x568]
mov eax, dword [ebp - 0x1c]
call fcn.0044607c
mov edx, dword [ebp - 0x568]
mov eax, 0x469434
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x468802
xor eax, eax
push ebp
push 0x46885f
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x469444
call sub.kernel32.dll_GetModuleHandleW
mov ebx, eax
test ebx, ebx
je 0x468855
lea edx, [ebp - 0x56c]
mov eax, ebx
call fcn.004339d8
mov eax, dword [ebp - 0x56c]
mov ebx, dword [0x53fb60]
mov ebx, dword [ebx]
lea edx, [ebp - 0x10]
call ebx
cmp dword [ebp - 0x10], 0
je 0x468855
push ebp
mov edx, dword [ebp - 0x10]
mov eax, 0x469468
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x468869
xor eax, eax
push ebp
push 0x468921
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x4688c3
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x53e64c]
call fcn.0040e400
cmp byte [eax + 0x1a], 2
je 0x4688a8
push ebp
mov edx, 0x46948c
mov eax, 0x4694b8
call fcn.00467acc
pop ecx
jmp 0x4688b9
push ebp
mov edx, 0x4694e0
mov eax, 0x4694b8
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4688de
push ebp
lea eax, [ebp - 0x574]
mov edx, dword [0x53e544]
mov ecx, 0
call sub.rtl250.bpl__System__LStrFromPChar_qqrr27System__AnsiStringT_us_i0__pcus
mov edx, dword [ebp - 0x574]
lea eax, [ebp - 0x570]
call sub.rtl250.bpl__System__UStrFromLStr_qqrr20System_UnicodeStringx27System__AnsiStringT_us_i0__
mov edx, dword [ebp - 0x570]
mov eax, 0x469510
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46892b
lea ecx, [ebp - 0x14]
mov edx, 0x469540
mov eax, dword [ebp - 0x1c]
call fcn.00448448
mov ebx, dword [0x53fc80]
mov ebx, dword [ebx]
mov dl, 0x7c
mov eax, dword [ebp - 0x14]
call ebx
test eax, eax
jle 0x468b04
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x24], 1
xor eax, eax
push ebp
push 0x468aee
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x10]
push eax
mov ebx, dword [0x53fcc8]
mov ebx, dword [ebx]
mov cl, 0x7c
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
call ebx
mov eax, dword [0x543450]
call sub.rtl250.bpl__System__DynArrayHigh_qqrpxv
mov ebx, eax
test ebx, ebx
jl 0x468ae4
inc ebx
mov dword [ebp - 0x28], 0
mov esi, dword [ebp - 0x28]
mov eax, esi
add esi, esi
add esi, esi
add esi, esi
sub esi, eax
mov eax, dword [0x543450]
mov eax, dword [eax + esi*4]
mov edi, dword [0x53fab0]
mov edi, dword [edi]
mov edx, dword [ebp - 0x10]
call edi
test al, al
je 0x468ada
mov eax, dword [0x543450]
cmp byte [eax + esi*4 + 0x18], 0
jne 0x468ae4
mov eax, dword [0x543450]
cmp dword [eax + esi*4 + 8], 0
je 0x468a1e
push ebp
mov eax, dword [0x543450]
mov ebx, dword [eax + esi*4 + 8]
lea eax, [ebp - 0x57c]
call ebx
mov edx, dword [ebp - 0x57c]
lea eax, [ebp - 0x578]
call sub.rtl250.bpl__System__UStrFromLStr_qqrr20System_UnicodeStringx27System__AnsiStringT_us_i0__
mov edx, dword [ebp - 0x578]
mov eax, dword [0x543450]
mov eax, dword [eax + esi*4]
call fcn.00467acc
pop ecx
jmp 0x468ae4
mov eax, dword [0x543450]
cmp dword [eax + esi*4 + 0xc], 0
je 0x468a55
push ebp
mov eax, dword [0x543450]
mov ebx, dword [eax + esi*4 + 0xc]
lea eax, [ebp - 0x580]
call ebx
mov edx, dword [ebp - 0x580]
mov eax, dword [0x543450]
mov eax, dword [eax + esi*4]
call fcn.00467acc
pop ecx
jmp 0x468ae4
mov eax, dword [0x543450]
cmp dword [eax + esi*4 + 0x10], 0
je 0x468aa6
push ebp
mov eax, dword [0x543450]
mov ebx, dword [eax + esi*4 + 0x10]
lea edx, [ebp - 0x588]
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x468a7d
sub eax, 0xfffffbc0
call ebx
mov edx, dword [ebp - 0x588]
lea eax, [ebp - 0x584]
call sub.rtl250.bpl__System__UStrFromLStr_qqrr20System_UnicodeStringx27System__AnsiStringT_us_i0__
mov edx, dword [ebp - 0x584]
mov eax, dword [0x543450]
mov eax, dword [eax + esi*4]
call fcn.00467acc
pop ecx
jmp 0x468ae4
push ebp
mov eax, dword [0x543450]
mov ebx, dword [eax + esi*4 + 0x14]
lea edx, [ebp - 0x58c]
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x468ac2
sub eax, 0xfffffbc0
call ebx
mov edx, dword [ebp - 0x58c]
mov eax, dword [0x543450]
mov eax, dword [eax + esi*4]
call fcn.00467acc
pop ecx
jmp 0x468ae4
inc dword [ebp - 0x28]
dec ebx
jne 0x46899c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x468af8
inc dword [ebp - 0x24]
dec dword [ebp - 0x2c]
jne 0x46895c
mov eax, dword [ebp - 0xc]
dec eax
mov dword [ebp - 0x28], eax
xor eax, eax
push ebp
push 0x468b34
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov edx, 0x469554
mov eax, 0x469590
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x468b3e
xor eax, eax
push ebp
push 0x468b96
push dword fs:[eax]
mov dword fs:[eax], esp
add dword [0x53efb8], 1
adc dword [0x53efbc], 0
push ebp
push dword [0x53efbc]
push dword [0x53efb8]
lea ecx, [ebp - 0x590]
mov dx, 0x30
mov eax, 1
call fcn.00408b44
mov edx, dword [ebp - 0x590]
mov eax, 0x4695b8
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x468ba0
xor eax, eax
push ebp
push 0x468c93
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x4f], 1
je 0x468c69
lea edx, [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
call fcn.0046770c
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
call fcn.0046766c
push ebp
mov edx, dword [ebp - 0x14]
mov eax, 0x4695e8
call fcn.00467acc
pop ecx
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
call sub.rtl250.bpl__System__UStrEqual_qqrv
je 0x468c89
lea edx, [ebp - 0x594]
mov eax, dword [ebp - 0x10]
call fcn.00436b68
mov edx, dword [ebp - 0x594]
lea eax, [ebp - 0x10]
call sub.rtl250.bpl__System__UStrLAsg_qqrr20System_UnicodeStringx20System_UnicodeString
push 0
mov ebx, dword [0x53fbc0]
mov ebx, dword [ebx]
lea eax, [ebp - 0x10]
mov ecx, 0x469264
mov edx, 0x469614
call ebx
push 0
mov ebx, dword [0x53fbc0]
mov ebx, dword [ebx]
lea eax, [ebp - 0x10]
mov ecx, 0x469264
mov edx, 0x469624
call ebx
push 1
mov ebx, dword [0x53fbc0]
mov ebx, dword [ebx]
lea eax, [ebp - 0x10]
mov ecx, 0x469264
mov edx, 0x469634
call ebx
push ebp
mov edx, dword [ebp - 0x10]
mov eax, 0x469648
call fcn.00467acc
pop ecx
jmp 0x468c89
push ebp
lea edx, [ebp - 0x598]
mov eax, dword [ebp - 0x1c]
call fcn.004460f0
mov edx, dword [ebp - 0x598]
mov eax, 0x469648
call fcn.00467acc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x468c9d
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0xc]
xor eax, eax
push ebp
push 0x468d1a
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
dec eax
test eax, eax
jl 0x468ce9
inc eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x24], 0
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x24]
mov ecx, dword [eax + edx*8 + 4]
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x24]
mov edx, dword [eax + edx*8]
mov eax, dword [ebp - 0x18]
mov ebx, dword [eax]
call dword [ebx + 0x28]
inc dword [ebp - 0x24]
dec dword [ebp - 0x2c]
jne 0x468cc6
lea eax, [ebp - 0x59c]
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x3a0]
mov ecx, 0x468e70
call sub.rtl250.bpl__System__IntfCast_qqrr44System__DelphiInterface_17System_IInterface_x44System__DelphiInterface_17System_IInterf
mov eax, dword [ebp - 0x59c]
mov edx, dword [ebp - 0x28]
mov ecx, dword [eax]
call dword [ecx + 0x14]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x468d24
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x10]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x468e66
lea eax, [ebp - 0x59c]
call sub.rtl250.bpl__System__IntfClear_qqrr44System__DelphiInterface_17System_IInterface_
lea eax, [ebp - 0x598]
mov edx, 4
call sub.rtl250.bpl__System__UStrArrayClr_qqrpvi
lea eax, [ebp - 0x588]
call sub.rtl250.bpl__System__LStrClr_qqrpv
lea eax, [ebp - 0x584]
mov edx, 2
call sub.rtl250.bpl__System__UStrArrayClr_qqrpvi
lea eax, [ebp - 0x57c]
call sub.rtl250.bpl__System__LStrClr_qqrpv
lea eax, [ebp - 0x578]
call sub.rtl250.bpl__System__UStrClr_qqrpv
lea eax, [ebp - 0x574]
call sub.rtl250.bpl__System__LStrClr_qqrpv
lea eax, [ebp - 0x570]
mov edx, 0xc
call sub.rtl250.bpl__System__UStrArrayClr_qqrpvi
lea eax, [ebp - 0x540]
call sub.rtl250.bpl__System__LStrClr_qqrpv
lea eax, [ebp - 0x53c]
mov edx, 4
call sub.rtl250.bpl__System__UStrArrayClr_qqrpvi
lea eax, [ebp - 0x52c]
call sub.rtl250.bpl__System__LStrClr_qqrpv
lea eax, [ebp - 0x528]
mov edx, 6
call sub.rtl250.bpl__System__UStrArrayClr_qqrpvi
lea eax, [ebp - 0x510]
call sub.rtl250.bpl__System__LStrClr_qqrpv
lea eax, [ebp - 0x50c]
call sub.rtl250.bpl__System__UStrClr_qqrpv
lea eax, [ebp - 0x508]
call sub.rtl250.bpl__System__LStrClr_qqrpv
lea eax, [ebp - 0x504]
call sub.rtl250.bpl__System__UStrClr_qqrpv
lea eax, [ebp - 0x500]
call sub.rtl250.bpl__System__LStrClr_qqrpv
lea eax, [ebp - 0x4fc]
mov edx, 0xd
call sub.rtl250.bpl__System__UStrArrayClr_qqrpvi
lea eax, [ebp - 0x4c4]
mov edx, 0xa
call sub.rtl250.bpl__System__UStrArrayClr_qqrpvi
lea eax, [ebp - 0x49c]
call sub.rtl250.bpl__System__IntfClear_qqrr44System__DelphiInterface_17System_IInterface_
lea eax, [ebp - 0x18]
call sub.rtl250.bpl__System__IntfClear_qqrr44System__DelphiInterface_17System_IInterface_
lea eax, [ebp - 0x14]
mov edx, 2
call sub.rtl250.bpl__System__UStrArrayClr_qqrpvi
lea eax, [ebp - 4]
mov edx, dword [0x467900]
call sub.rtl250.bpl__System__DynArrayClear_qqrrpvpv
ret