Function at 0x67dea4
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ebx
push esi
mov ebx, edx
mov esi, eax
xor eax, eax
push ebp
push 0x67e21d
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0xc]
xor edx, edx
call sub.rtl120.bpl__System__UStrLAsg_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e238
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e248
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e258
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e268
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e278
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e288
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e298
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e2a8
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e288
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e258
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e2a8
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e2b8
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e2c8
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e2d8
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e288
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e2e8
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e2f8
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e2a8
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea eax, [ebp - 0xc]
mov edx, 0x67e308
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
lea edx, [ebp - 0x14]
xor eax, eax
call sub.rtl120.bpl__System_ParamStr_qqri
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 0x10]
call sub.rtl120.bpl__Sysutils_ExtractFilePath_qqrx20System_UnicodeString
mov edx, dword [ebp - 0x10]
lea eax, [ebp - 4]
mov ecx, 0x67e318
call sub.rtl120.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
movzx eax, byte [esi + 0x41f]
sub al, 1
jb 0x67e010
je 0x67e0d7
dec al
je 0x67e131
dec al
je 0x67e16d
jmp 0x67e1bf
xor edx, edx
mov eax, 0x67e34c
call fcn.005465f0
jmp 0x67e202
push 0x67e370
mov eax, dword [0x806df4]
push dword [eax]
push 0x67e390
push 0x67e3a4
push 0x67e3c8
push 0x67e3d8
lea eax, [ebp - 8]
mov edx, 6
call sub.rtl120.bpl__System__UStrCatN_qqrv
cmp byte [esi + 0x419], 0
je 0x67e11f
lea eax, [ebp - 8]
mov edx, 0x67e470
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
jmp 0x67e1bf
lea eax, [ebp - 8]
mov edx, 0x67e4b8
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
jmp 0x67e1bf
push 0x67e370
mov eax, dword [0x806df4]
push dword [eax]
push 0x67e390
push 0x67e3a4
push 0x67e3c8
push 0x67e3d8
lea eax, [ebp - 8]
mov edx, 6
call sub.rtl120.bpl__System__UStrCatN_qqrv
lea eax, [ebp - 8]
mov edx, 0x67e500
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
jmp 0x67e1bf
push 0x67e370
mov eax, dword [0x806df4]
push dword [eax]
push 0x67e390
push 0x67e3a4
push 0x67e3c8
push 0x67e3d8
lea eax, [ebp - 8]
mov edx, 6
call sub.rtl120.bpl__System__UStrCatN_qqrv
cmp bl, 1
jne 0x67e1ae
lea eax, [ebp - 8]
mov edx, 0x67e544
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
jmp 0x67e1bf
test bl, bl
jne 0x67e1bf
lea eax, [ebp - 8]
mov edx, 0x67e58c
call sub.rtl120.bpl__System__UStrCat_qqrr20System_UnicodeStringx20System_UnicodeString
cmp dword [esi + 0x2a4], 1
jne 0x67e1d1
cmp byte [esi + 0x41c], 0
je 0x67e202
push 1
push 0
mov eax, dword [ebp - 8]
call sub.rtl120.bpl__System__UStrToPWChar_qqrx20System_UnicodeString
push eax
mov eax, dword [ebp - 4]
call sub.rtl120.bpl__System__UStrToPWChar_qqrx20System_UnicodeString
push eax
push 0x67e5c8
push 0
call sub.shell32.dll_ShellExecuteW
cmp eax, 0x20
jbe 0x67e202
mov dword [esi + 0x2a4], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x67e224
lea eax, [ebp - 0x1c]
mov edx, 7
call sub.rtl120.bpl__System__UStrArrayClr_qqrpvi
ret