You can simply use the same function adding the hours difference between EST and UTC
Let's say that EST is UTC less 5 then you could use something like this
Uses
DateUtils;
{add a TDateTimePicker to the form}
procedure TForm1.Button1Click(Sender: TObject);
var
ESTTime: TDateTime;
function ESTToSystemTime(EST: TDateTime): TDateTime;
var
TimeZoneInf: _TIME_ZONE_INFORMATION;
ESTTime, LocalTime: TSystemTime;
begin
EST := IncHour(EST, -5);
if GetTimeZoneInformation(TimeZoneInf) < $FFFFFFFF then
begin
DatetimetoSystemTime(EST, ESTTime);
if SystemTimeToTzSpecificLocalTime(@TimeZoneInf, ESTTime, LocalTime) then
begin
result := SystemTimeToDateTime(LocalTime);
end
else
result := EST;
end
else
result := EST;
end;
begin
ESTTime := ESTToSystemTime(DateTimePicker1.DateTime);
end;