Program: 94135
Project: 94135
Buggy source:
@Override public void handleLoadPackage(final LoadPackageParam lpparam) throws Throwable {
  if (!lpparam.packageName.equals(Common.PACKAGE_SNAP))   return;
  try {
    XposedUtils.log("String_Node_Str",false);
    Object activityThread=callStaticMethod(findClass("String_Node_Str",null),"String_Node_Str");
    Context context=(Context)callMethod(activityThread,"String_Node_Str");
    PackageInfo piSnapChat=context.getPackageManager().getPackageInfo(lpparam.packageName,0);
    XposedUtils.log("String_Node_Str" + piSnapChat.versionName + "String_Node_Str"+ piSnapChat.versionCode+ "String_Node_Str",false);
    XposedUtils.log("String_Node_Str" + BuildConfig.VERSION_NAME + "String_Node_Str"+ BuildConfig.VERSION_CODE+ "String_Node_Str",false);
  }
 catch (  Exception e) {
    XposedUtils.log("String_Node_Str",e);
    return;
  }
  prefs.reload();
  refreshPreferences();
  printSettings();
  getEditText(lpparam);
  findAndHookMethod(Obfuscator.save.SCREENSHOTDETECTOR_CLASS,lpparam.classLoader,Obfuscator.save.SCREENSHOTDETECTOR_RUN,List.class,XC_MethodReplacement.DO_NOTHING);
  findAndHookMethod(Obfuscator.save.SNAPSTATEMESSAGE_CLASS,lpparam.classLoader,Obfuscator.save.SNAPSTATEMESSAGE_SETSCREENSHOTCOUNT,Long.class,new XC_MethodHook(){
    @Override protected void beforeHookedMethod(    MethodHookParam param) throws Throwable {
      param.args[0]=0L;
      Logger.log("String_Node_Str",true);
    }
  }
);
  findAndHookMethod("String_Node_Str",lpparam.classLoader,"String_Node_Str",Bundle.class,new XC_MethodHook(){
    protected void afterHookedMethod(    MethodHookParam methodHookParam) throws Throwable {
      if (SnapContext == null)       SnapContext=(Activity)methodHookParam.thisObject;
      prefs.reload();
      refreshPreferences();
      Saving.initSaving(lpparam,mResources,SnapContext);
      if (mDiscover == true) {
        DataSaving.initMethod(lpparam,mResources,SnapContext);
      }
      if (mSpeed == true) {
        Spoofing.initSpeed(lpparam,SnapContext);
      }
      if (mLocation == true) {
        Spoofing.initLocation(lpparam,SnapContext);
      }
      PaintTools.initPaint(lpparam,mResources,SnapContext);
    }
  }
);
  String vanillaCaptionEditTextClassName="String_Node_Str";
  hookAllConstructors(findClass(vanillaCaptionEditTextClassName,lpparam.classLoader),new XC_MethodHook(){
    @Override protected void afterHookedMethod(    MethodHookParam param) throws Throwable {
      if (Common.CAPTION_UNLIMITED_VANILLA) {
        XposedUtils.log("String_Node_Str");
        EditText vanillaCaptionEditText=(EditText)param.thisObject;
        vanillaCaptionEditText.setSingleLine(false);
        vanillaCaptionEditText.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI);
        vanillaCaptionEditText.setOnEditorActionListener(null);
        setObjectField(vanillaCaptionEditText,"String_Node_Str",null);
      }
    }
  }
);
  String fatCaptionEditTextClassName="String_Node_Str";
  hookAllConstructors(findClass(fatCaptionEditTextClassName,lpparam.classLoader),new XC_MethodHook(){
    @Override protected void afterHookedMethod(    MethodHookParam param) throws Throwable {
      if (Common.CAPTION_UNLIMITED_FAT) {
        XposedUtils.log("String_Node_Str");
        EditText fatCaptionEditText=(EditText)param.thisObject;
        fatCaptionEditText.setFilters(new InputFilter[0]);
        fatCaptionEditText.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI);
        fatCaptionEditText.setOnEditorActionListener(null);
        setObjectField(fatCaptionEditText,"String_Node_Str",null);
      }
    }
  }
);
  Sharing.initSharing(lpparam,mResources);
  if (hideBf == true) {
    findAndHookMethod("String_Node_Str",lpparam.classLoader,"String_Node_Str",new XC_MethodReplacement(){
      @Override protected Object replaceHookedMethod(      MethodHookParam param) throws Throwable {
        logging("String_Node_Str");
        return false;
      }
    }
);
  }
  if (mCustomFilterBoolean == true) {
    addFilter(lpparam);
  }
  if (selectAll == true) {
    HookSendList.initSelectAll(lpparam);
  }
}

Fixed version (ground truth):
@Override public void handleLoadPackage(final LoadPackageParam lpparam) throws Throwable {
  if (!lpparam.packageName.equals(Common.PACKAGE_SNAP))   return;
  try {
    XposedUtils.log("String_Node_Str",false);
    Object activityThread=callStaticMethod(findClass("String_Node_Str",null),"String_Node_Str");
    Context context=(Context)callMethod(activityThread,"String_Node_Str");
    PackageInfo piSnapChat=context.getPackageManager().getPackageInfo(lpparam.packageName,0);
    XposedUtils.log("String_Node_Str" + piSnapChat.versionName + "String_Node_Str"+ piSnapChat.versionCode+ "String_Node_Str",false);
    XposedUtils.log("String_Node_Str" + BuildConfig.VERSION_NAME + "String_Node_Str"+ BuildConfig.VERSION_CODE+ "String_Node_Str",false);
  }
 catch (  Exception e) {
    XposedUtils.log("String_Node_Str",e);
    return;
  }
  prefs.reload();
  refreshPreferences();
  printSettings();
  getEditText(lpparam);
  findAndHookMethod(Obfuscator.save.SCREENSHOTDETECTOR_CLASS,lpparam.classLoader,Obfuscator.save.SCREENSHOTDETECTOR_RUN,List.class,XC_MethodReplacement.DO_NOTHING);
  findAndHookMethod(Obfuscator.save.SNAPSTATEMESSAGE_CLASS,lpparam.classLoader,Obfuscator.save.SNAPSTATEMESSAGE_SETSCREENSHOTCOUNT,Long.class,new XC_MethodHook(){
    @Override protected void beforeHookedMethod(    MethodHookParam param) throws Throwable {
      param.args[0]=0L;
      Logger.log("String_Node_Str",true);
    }
  }
);
  findAndHookMethod("String_Node_Str",lpparam.classLoader,"String_Node_Str",Bundle.class,new XC_MethodHook(){
    protected void afterHookedMethod(    MethodHookParam methodHookParam) throws Throwable {
      if (SnapContext == null)       SnapContext=(Activity)methodHookParam.thisObject;
      prefs.reload();
      refreshPreferences();
      Saving.initSaving(lpparam,mResources,SnapContext);
      if (mDiscover == true) {
        DataSaving.initMethod(lpparam,mResources,SnapContext);
      }
      if (mSpeed == true) {
        Spoofing.initSpeed(lpparam,SnapContext);
      }
      if (mLocation == true) {
        Spoofing.initLocation(lpparam,SnapContext);
      }
      PaintTools.initPaint(lpparam,mResources);
    }
  }
);
  String vanillaCaptionEditTextClassName="String_Node_Str";
  hookAllConstructors(findClass(vanillaCaptionEditTextClassName,lpparam.classLoader),new XC_MethodHook(){
    @Override protected void afterHookedMethod(    MethodHookParam param) throws Throwable {
      if (Common.CAPTION_UNLIMITED_VANILLA) {
        XposedUtils.log("String_Node_Str");
        EditText vanillaCaptionEditText=(EditText)param.thisObject;
        vanillaCaptionEditText.setSingleLine(false);
        vanillaCaptionEditText.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI);
        vanillaCaptionEditText.setOnEditorActionListener(null);
        setObjectField(vanillaCaptionEditText,"String_Node_Str",null);
      }
    }
  }
);
  String fatCaptionEditTextClassName="String_Node_Str";
  hookAllConstructors(findClass(fatCaptionEditTextClassName,lpparam.classLoader),new XC_MethodHook(){
    @Override protected void afterHookedMethod(    MethodHookParam param) throws Throwable {
      if (Common.CAPTION_UNLIMITED_FAT) {
        XposedUtils.log("String_Node_Str");
        EditText fatCaptionEditText=(EditText)param.thisObject;
        fatCaptionEditText.setFilters(new InputFilter[0]);
        fatCaptionEditText.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI);
        fatCaptionEditText.setOnEditorActionListener(null);
        setObjectField(fatCaptionEditText,"String_Node_Str",null);
      }
    }
  }
);
  Sharing.initSharing(lpparam,mResources);
  if (hideBf == true) {
    findAndHookMethod("String_Node_Str",lpparam.classLoader,"String_Node_Str",new XC_MethodReplacement(){
      @Override protected Object replaceHookedMethod(      MethodHookParam param) throws Throwable {
        logging("String_Node_Str");
        return false;
      }
    }
);
  }
  if (mCustomFilterBoolean == true) {
    addFilter(lpparam);
  }
  if (selectAll == true) {
    HookSendList.initSelectAll(lpparam);
  }
}