It's not entirely clear what output you're trying to get. Would something like this help?
WITH cte As
(
SELECT
EmpID,
CAST(_Date As date) As DateAttendance,
Times_In,
Times_Out,
ROW_NUMBER() OVER (PARTITION BY EmpID, CAST(_Date As date) ORDER BY Times_In) As RNI,
ROW_NUMBER() OVER (PARTITION BY EmpID, CAST(_Date As date) ORDER BY Times_Out DESC) As RNO
FROM
dbo.Emp_Attendance
WHERE
Month(Times_Out) = 6
And
EmpID = 35
)
SELECT
EmpID,
DateAttendance,
Max(CASE WHEN RNI = 1 THEN Times_In ELSE Null END) As FirstTimeIn,
Max(CASE WHEN RNI = 2 THEN Times_In ELSE Null END) As SecondTimeIn,
Max(CASE WHEN RNO = 2 THEN Times_Out ELSE Null END) As SecondLastTimeOut,
Max(CASE WHEN RNO = 1 THEN Times_Out ELSE Null END) As LastTimeOut
FROM
cteRawData
GROUP BY
EmpID,
DateAttendance
;