@Override
    protected boolean execute(
            CtClass inputClass,
            String inputClassName,
            MethodCall methodCall)
            throws CannotCompileException, NotFoundException {

        if (methodCall.isSuper()) {
            return false;
        }

        String insnClassName = methodCall.getClassName();
        String insnName = methodCall.getMethodName();
        String insnSignature = methodCall.getSignature();

        CtClass insnClass = tryGetClass(insnClassName, inputClassName);
        if (insnClass == null) {
            return false;
        }

        if (!isMatchSourceMethod(insnClass, insnName, insnSignature, false)) {
            return false;
        }
        String before = getTargetBefore();
        String after = getTargetAfter();

        Logger.warning(getPrettyName() + " by: " + before + " $proceed($$) " + after
                + " at " + inputClassName + ".java" + ":" + methodCall.getLineNumber());

        String proceed = isVoidSourceReturnType() ? "$proceed($$);" : "$_ =$proceed($$);";
        String statement = "{" + before + proceed + after + "}";

        replaceInstrument(inputClassName, methodCall, statement);

        return true;
    }
Transform that adds code before and after the method call simultaneously.
plugin/src/main/groovy/com/didichuxing/tools/droidassist/transform/around/MethodCallAroundTransformer.java