This should do it, but I agree with @Carl, a matrix will be easier to manipulate here if all vectors are the same length
roll <- matrix(runif(170),ncol=2) #lets use a matrix instead
index <- runif(85) #index is your indicator variable when compared to roll
rfree <- rnorm(85) #assign if roll>index
ret <- rnorm(85) #assign if index>roll
#use vector operations when possible, for speed and readability. Look into
#sapply, lapply etc. Apply is useful for column/row operations in matrices
result<-apply(roll,2, function(x){
# we will use an anonymous function here for this,
#but you could define elsewhere if needed
w<-index>x # where is index larger than our roll entries
x[w]<-ret[w] #assign the corresponding ret there
x[!w]<-rfree[!w] #assign the corresponding rfree where appropriate
x
})