Гайд Как снять кал-onial

Начинающий
Статус
Оффлайн
Регистрация
14 Янв 2025
Сообщения
39
Реакции[?]
0
Поинты[?]
0

Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:

  • бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
  • маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
  • приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
  • обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.

Спасибо!

Качаем деобф
Пожалуйста, авторизуйтесь для просмотра ссылки.
noad
создаём папку любое название

открываем через IDE
Нажимаем вот сюда:

пишем названия папки и jar


закидываем jar в папку
не забываем поменять название jar которое указали сверху

запускаем:



все готова идём пастит:
 
Начинающий
Статус
Оффлайн
Регистрация
16 Июн 2024
Сообщения
301
Реакции[?]
9
Поинты[?]
8K
Качаем деобф
Пожалуйста, авторизуйтесь для просмотра ссылки.
noad
создаём папку любое название

открываем через IDE
Нажимаем вот сюда:

пишем названия папки и jar


закидываем jar в папку
не забываем поменять название jar которое указали сверху

запускаем:



все готова идём пастит:
а ты крутой снял наипростецкий флов базой от науруми
 
Начинающий
Статус
Оффлайн
Регистрация
26 Ноя 2024
Сообщения
127
Реакции[?]
10
Поинты[?]
19K
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
17 Фев 2025
Сообщения
60
Реакции[?]
1
Поинты[?]
1K
paster:
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//

package выфцвыфшцощв;

import java.util.Random;

public class aaa extends xj {
static char[] ColonialObfuscator_斂弈憨嬹為凤殹壻勾揣戼挱卛恆涋懎歑氣椣宿椘棐準咆哪淯彺溚崹汪峒愄噊惱漗勍壍桴乃挧憄;

public aaa(wd var1) {
super(var1);
}

public void a(xp var1, ggq var2, fya var3, xp var4, boolean var5) {
var2.Mp().a(var3, this, this.kb());
}

public xp a(xp var1, fle var2, xp var3, gge var4, fya var5, fya var6) {
var4.Mp().a(var5, this, this.kb());
return super.a(var1, var2, var3, var4, var5, var6);
}

public void b(xp var1, hhk var2, fya var3, Random var4) {
String var10000 = "梡帒";
String var10001 = "曯怜";
String var10002 = "唧枔";
var10001 = "勼吕";
if (ak(var2.r(var3.aQj())) && var3.getY() >= 0) {
var10001 = "咧";
boolean var12 = true;
var10001 = "巵多挫檒";
var12 = true;
var10001 = "埩";
var12 = true;
var10001 = "學占怊哘";
var12 = true;
des var5 = new des(var2, (double)var3.getX() + (double)0.5F, (double)var3.getY(), (double)var3.getZ() + (double)0.5F, var2.r(var3));
this.a(var5);
var2.bj(var5);
var10001 = "奻俌忄";
var12 = true;
}

}

protected void a(des var1) {
}

protected int kb() {
return 2;
}

public static boolean ak(xp var0) {
agv var1 = var0.iH();
return var0.iL() || var0.e(ffh.eFs) || var1.kL() || var1.kO();
}

public void a(ggq var1, fya var2, xp var3, xp var4, des var5) {
}

public void a(ggq var1, fya var2, des var3) {
}

public void a(xp var1, ggq var2, fya var3, Random var4) {
String var10001 = "桸愃";
String var10002 = "冚欿";
var10001 = "寗撯";
String var10000 = "寗撯";
var10001 = "椤愛";
if (var4.nextInt(16) == 0) {
fya var5 = var3.aQj();
if (ak(var2.r(var5))) {
double var6 = (double)var3.getX() + var4.nextDouble();
double var12 = (double)var3.getY();
var10002 = "愡漭孈孤";
boolean var10003 = true;
var10002 = "仠棜烟囔";
var10003 = true;
var10002 = "沂槷徛捾";
var10003 = true;
double var8 = var12 - 0.05;
double var10 = (double)var3.getZ() + var4.nextDouble();
var10002 = "渪梈灚";
var10003 = true;
var10002 = "摏嘑枠";
var10003 = true;
var10002 = "嶁斮丨崩";
var10003 = true;
var2.d(new ewz(exg.ejE, var1), var6, var8, var10, (double)0.0F, (double)0.0F, (double)0.0F);
}
}

}

public int l(xp var1, gfw var2, fya var3) {
return -16777216;
}

private static String 厸峼撆洂懦喍帘滟椷乸拋咮愲傫攡宁昌嘟椨乵噴歱嗏浑勅寞沄序具唷灌懶冤勾濣吋暈墠媠欬忖(int var0, int var1, String var2, int var3, int var4) {
String var10002 = "愛旴";
String var10001 = "孱暛";
String var10000 = "匏亸";
var10001 = "沑吞";
var10002 = "愮涂";
var10001 = "得屲";
var10000 = "烷殠";
var10001 = "彩勊";
var10001 = "俒擴炦";
boolean var22 = true;
var10001 = "捂僿懢檆瀳";
var22 = true;
var10001 = "屫囔彾渤俍";
var22 = true;
StringBuilder var5 = new StringBuilder();
int var6 = 0;
char[] var12 = var2.toCharArray();
var10001 = "姶恲愃";
var22 = true;

for(char var7 : var12) {
var5.append((char)(var7 ^ ColonialObfuscator_斂弈憨嬹為凤殹壻勾揣戼挱卛恆涋懎歑氣椣宿椘棐準咆哪淯彺溚崹汪峒愄噊惱漗勍壍桴乃挧憄[var6 % ColonialObfuscator_斂弈憨嬹為凤殹壻勾揣戼挱卛恆涋懎歑氣椣宿椘棐準咆哪淯彺溚崹汪峒愄噊惱漗勍壍桴乃挧憄.length] ^ var0 ^ var3 + var6 ^ var1 ^ var4));
var10001 = "桻";
var22 = true;
++var6;
}

return var5.toString();
}

static {
char[] var10001 = "X\u001a\u001f8D_Lw:\u00111_ENz\u0001\u001c%u保戠喱媨晪慃湪劀慽侑桴泙徬報埅悜檠搎慢揃儾婲梍摕嵺愉叮嗋歮桦懆嫶媌檒埱妕捋捡峺溴坞崟淈嘎昺咬全揬悅潘澴寅煼忘匂挏澦惽殳歉娝敿瀂婱檒垆槀巜徰栚奊兝嚊悾峦幃揼搋滸拀擥厘憺仨櫌洇唭偬氹瀦匬潔卤橞呥惁仚拌少惱尋".toCharArray();
int var10003 = var10001.length;
char[] var10002 = var10001;
int var1 = var10003;

for(int var0 = 0; var1 > var0; ++var0) {
char var10005 = var10002[var0];
byte var10006;
switch (var0 % 7) {
case 0 -> var10006 = 27;
case 1 -> var10006 = 117;
case 2 -> var10006 = 115;
case 3 -> var10006 = 87;
case 4 -> var10006 = 42;
case 5 -> var10006 = 54;
default -> var10006 = 45;
}

var10002[var0] = (char)(var10005 ^ var10006);
}

String var7 = (new String(var10002)).intern();
var1 = -1;
ColonialObfuscator_斂弈憨嬹為凤殹壻勾揣戼挱卛恆涋懎歑氣椣宿椘棐準咆哪淯彺溚崹汪峒愄噊惱漗勍壍桴乃挧憄 = var7.toCharArray();
}
}
Он сделал еще хуже :roflanBuldiga:
 
Начинающий
Статус
Оффлайн
Регистрация
4 Дек 2021
Сообщения
186
Реакции[?]
7
Поинты[?]
4K
как же ты стринги снимеш?
Фикс
Java:
package uwu.narumi.deobfuscator.transformer.impl.colonial.r2;

import org.objectweb.asm.Label;
import org.objectweb.asm.tree.*;
import uwu.narumi.deobfuscator.Deobfuscator;
import uwu.narumi.deobfuscator.transformer.Transformer;

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;

public class ColonialStringTransformer extends Transformer {
    private static char[] chars;
    @Override
    public void transform(Deobfuscator deobfuscator) throws Throwable {
        deobfuscator.classes()
                .forEach(classNode -> {
                    classNode.methods.stream().filter(methodNode -> methodNode.name.equals("<clinit>")).forEach(methodNode -> {
                        try {
                            char[] chars1 = getChars(classNode);
                            if(chars1 != null){
                                if(!getSwitchCases(methodNode).equals("Not Found!")){
                                    int[] switchCases = new int[7];
                                    AtomicInteger i = new AtomicInteger(0);
                                    Arrays.stream(methodNode.instructions.toArray())
                                            .forEach(insn -> {
                                                if(insn.getOpcode() == BIPUSH && insn.getNext().getOpcode() == GOTO){
                                                    switchCases[i.getAndIncrement()] = (int)getNumber(insn);
                                                } else if(insn.getOpcode() == BIPUSH && insn.getNext().getOpcode() != IREM){
                                                    switchCases[i.getAndIncrement()] = (int)getNumber(insn);
                                                }
                                            });

                                    boolean mod = modifedStringEnc(classNode);;

                                    if(!mod){
                                        decStep1(chars1,switchCases);
                                    } else {
                                        decStep2(chars1,switchCases);
                                    }

                                    classNode.methods.forEach(methodNodee -> {
                                        Arrays.stream(methodNodee.instructions.toArray())
                                                .forEach(node -> {
                                                    if (isInteger(node)
                                                            && isInteger(node.getNext())
                                                            && isString(node.getNext().getNext())
                                                            && isInteger(node.getNext().getNext().getNext())
                                                            && isInteger(node.getNext().getNext().getNext().getNext())
                                                            && node.getNext().getNext().getNext().getNext().getNext().getOpcode() == INVOKESTATIC
                                                            && ((MethodInsnNode)node.getNext().getNext().getNext().getNext().getNext()).desc.equals("(IILjava/lang/String;II)Ljava/lang/String;")) {
                                                        int one = getInteger(node);
                                                        int two = getInteger(node.getNext());
                                                        int three = getInteger(node.getNext().getNext().getNext());
                                                        int four = getInteger(node.getNext().getNext().getNext().getNext());
                                                        String enc = getString(node.getNext().getNext());

                                                        String deobfedString = decStepFinal(one,two,enc,three,four,mod);

                                                        methodNodee.instructions.remove(node.getNext().getNext().getNext().getNext().getNext());
                                                        methodNodee.instructions.remove(node.getNext().getNext().getNext().getNext());
                                                        methodNodee.instructions.remove(node.getNext().getNext().getNext());
                                                        methodNodee.instructions.remove(node.getNext().getNext());
                                                        methodNodee.instructions.remove(node.getNext());
                                                        methodNodee.instructions.set(node, new LdcInsnNode(deobfedString));

                                                    }
                                                });
                                        /*for (AbstractInsnNode node : methodNodee.instructions.toArray()) {
                                            if (isInteger(node)
                                                    && isInteger(node.getNext())
                                                    && isString(node.getNext().getNext())
                                                    && isInteger(node.getNext().getNext().getNext())
                                                    && isInteger(node.getNext().getNext().getNext().getNext())
                                                    && node.getNext().getNext().getNext().getNext().getNext().getOpcode() == INVOKESTATIC
                                                    && ((MethodInsnNode)node.getNext().getNext().getNext().getNext().getNext()).desc.equals("(IILjava/lang/String;II)Ljava/lang/String;")) {
                                                int one = getInteger(node);
                                                int two = getInteger(node.getNext());
                                                int three = getInteger(node.getNext().getNext().getNext());
                                                int four = getInteger(node.getNext().getNext().getNext().getNext());
                                                String enc = getString(node.getNext().getNext());

                                                String deobfedString = decStepFinal(one,two,enc,three,four,mod);

                                                methodNodee.instructions.remove(node.getNext().getNext().getNext().getNext().getNext());
                                                methodNodee.instructions.remove(node.getNext().getNext().getNext().getNext());
                                                methodNodee.instructions.remove(node.getNext().getNext().getNext());
                                                methodNodee.instructions.remove(node.getNext().getNext());
                                                methodNodee.instructions.remove(node.getNext());
                                                methodNodee.instructions.set(node, new LdcInsnNode(deobfedString));

                                            }
                                        }*/
                                    });
                                }
                            }
                        } catch (Exception ignored) {}
                    });

                });
    }
    private String getSwitchCases(MethodNode methodNode){
        int[] switchCases = new int[7];
        AtomicInteger i = new AtomicInteger(0);
        Arrays.stream(methodNode.instructions.toArray())
                .forEach(insn -> {
                    if(insn.getOpcode() == BIPUSH && insn.getNext().getOpcode() == GOTO){
                        switchCases[i.getAndIncrement()] = (int)getNumber(insn);
                    } else if(insn.getOpcode() == BIPUSH && insn.getNext().getOpcode() != IREM){
                        switchCases[i.getAndIncrement()] = (int)getNumber(insn);
                    }
                });
        if(i.get() == 7){
            return "Found";
        } else {
            return "Not Found!";
        }
    }
    private char[] getChars(ClassNode classNode) {
        final String[] chars = {""};
        MethodNode methodNode = classNode.methods.stream().filter(methodNode1 -> methodNode1.name.equals("<clinit>")).findFirst().orElse(null);
        assert methodNode != null;
        Arrays.stream(methodNode.instructions.toArray())
                .forEach(insn -> {
                    if(isString(insn) && insn.getNext().getOpcode() == ICONST_M1){
                        chars[0] = new String(getString(insn).getBytes(),StandardCharsets.UTF_8);
                    }
                });

        if(chars[0] != null){
            return chars[0].toCharArray();
        } else {
            return null;
        }
    }
    private void decStep2(char[] encryptedData, int[] switchCases){
        int var10003 = encryptedData.length;
        int var0 = 0;
        while(true) {
            if (var10003 <= var0) {
                String var5 = (new String(encryptedData)).intern();
                chars = var5.toCharArray();
                return;
            }

            char var10005 = encryptedData[var0];
            byte var10006 = switch (var0 % 7) {
                case 0 -> (byte) switchCases[0];
                case 1 -> (byte) switchCases[1];
                case 2 -> (byte) switchCases[2];
                case 3 -> (byte) switchCases[3];
                case 4 -> (byte) switchCases[4];
                case 5 -> (byte) switchCases[5];
                default -> (byte) switchCases[6];
            };

            encryptedData[var0] = (char)(var10005 ^ var10006);
            ++var0;
        }
    }
    private void decStep1(char[] encryptedData, int[] switchCases){
        for(int var0 = 0; encryptedData.length > var0; ++var0) {
            char var10005 = encryptedData[var0];
            byte var10006 = switch (var0 % 7) {
                case 0 -> (byte) switchCases[0];
                case 1 -> (byte) switchCases[1];
                case 2 -> (byte) switchCases[2];
                case 3 -> (byte) switchCases[3];
                case 4 -> (byte) switchCases[4];
                case 5 -> (byte) switchCases[5];
                default -> (byte) switchCases[6];
            };
            encryptedData[var0] = (char)(var10005 ^ var10006);
        }
        String var5 = (new String(encryptedData)).intern();
        chars = var5.toCharArray();
    }
    public static String decStepFinal(int var0, int var1, String var2, int var3, int var4, boolean mod) {
        StringBuilder var5 = new StringBuilder();
        int var6 = 0;
        char[] var10;
        int var9 = (var10 = var2.toCharArray()).length;

        if(!mod){
            for(int var8 = 0; var8 < var9; ++var8) {
                char var7 = var10[var8];
                var5.append((char)(var7 ^ chars[var6 % chars.length] ^ var0 ^ var3 + var6 ^ var1 ^ var4));
                ++var6;
            }
            return var5.toString();
        } else {
            for(int var8 = 0; var8 < var9; ++var8) {
                char var7 = var10[var8];
                var5.append((char)(var7 ^ chars[var6 % chars.length] ^ var0 ^ XOR2(var3, var6) ^ var1 ^ var4));
                ++var6;
            }
            return var5.toString();
        }
    }
    private static int XOR2(int var0, int var1) {
        return ((var0 | var1) << 1) + ~(var0 ^ var1) + 1;
    }
    private boolean modifedStringEnc(ClassNode classNode){
        int[] mod = {0};
        classNode.methods.forEach(methodNode -> {
            Arrays.stream(methodNode.instructions.toArray())
                    .forEach(insn -> {
                        if(insn.getOpcode() == ILOAD
                                && insn.getNext().getOpcode() == ILOAD
                                && insn.getNext().getNext().getOpcode() == INVOKESTATIC){
                            if(((MethodInsnNode)insn.getNext().getNext()).desc.equals("(II)I")){
                                mod[0] = 1;
                            }
                        }
                    });
        });
        return mod[0] == 1;
    }

}
 
Забаненный
Статус
Оффлайн
Регистрация
5 Май 2023
Сообщения
164
Реакции[?]
1
Поинты[?]
1K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
:hearteyes:
 
Сверху Снизу