'Call another SimProcedure in-line to retrieve its return value.
Returns an instance of the procedure with the ret_expr property set.
:param procedure:       The class of the procedure to execute
:param arguments:       Any additional positional args will be used as arguments to the
procedure call
:param sim_kwargs:      Any additional keyword args will be passed as sim_kwargs to the
procedure construtor'

def inline_call(self, procedure, *arguments, **kwargs):

    e_args = [(self.state.se.BVV(a, self.state.arch.bits) if isinstance(a, (int, long)) else a) for a in arguments]
    p = procedure(project=self.project, **kwargs)
    return p.execute(self.state, None, arguments=e_args)
