'Returns a bitvector expression representing the nth argument of a function.
`stack_base` is an optional pointer to the top of the stack at the function start. If it is not
specified, use the current stack pointer.
WARNING: this assumes that none of the arguments are floating-point and they\'re all single-word-sized, unless
you\'ve customized this CC.'

def arg(self, state, index, stack_base=None):

    session = self.arg_session
    if (self.args is None):
        arg_loc = [session.next_arg(False) for _ in xrange((index + 1))][(-1)]
    else:
        arg_loc = self.args[index]
    return arg_loc.get_value(state, stack_base=stack_base)
