Skip to main content

string_analyze/rules/
coding.rs

1// string_analyze/src/rules/coding.rs
2include!("./core/coding.rs");
3
4
5#[cfg(test)]
6mod tests {
7    use crate::analyze_with;
8    use crate::rules::get_rules;
9
10    #[test]
11    fn test() {
12        let input = r#"
13flag{5tgb8uik,0ol}
14deepseek_key = "sk-267afd638c45485789bb3a9b96b576f1";
15"666c61677b68656c6c6f","66 6c 61 67 7b","DEADBEEF0123456789",
16ZmxhZ3toZWxsb19jdGZlcn0=
17(+(+!+[]+[+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]])[+!+[]+[+[]]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]][([][[]]+[])[+!+[]]+(![]+[])[+!+[]]+((+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]+[])[+!+[]+[+!+[]]]+(!![]+[])[!+[]+!+[]+!+[]]]](!+[]+!+[]+[+!+[]])[+!+[]] # JSfuck
18++++++++[>>++>++++>++++++>++++++++>++++++++++>++++++++++++>++++++++++++++>++++++++++++++++>++++++++++++++++++>++++++++++++++++++++>++++++++++++++++++++++>++++++++++++++++++++++++>++++++++++++++++++++++++++>++++++++++++++++++++++++++++>++++++++++++++++++++++++++++++<<<<<<<<<<<<<<<<-]>>>>>>------.+++++++++.>++++++.>+++++.<---.++++++++. # Brainfuck
19..--- ..--- ..--- ..--- ..--- .---- .---- .- ...
20佛曰:楞皤耶诃摩啰咩参墀苏喝穆伊佛阿楞沙卢咩羯伽迦俱佛埵伽埵那咩参呼提陀数豆怛萨啰墀俱写夜吉罚吉陀迦提穆苏菩俱尼娑
21楞皤耶诃摩啰咩参墀苏喝穆伊佛阿楞沙卢咩羯伽迦俱佛埵伽埵那咩参呼提陀数豆怛萨啰墀俱写夜吉罚吉陀迦提穆苏菩俱尼娑
22~呜嗷呜呜呜啊~呜啊嗷啊呜啊啊嗷呜~嗷~呜~啊呜呜嗷嗷啊
23Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook. Ook.  Ook! Ook.
24
25"#;
26        for line in input.lines() {
27            println!("{}", analyze_with(
28                line,
29                &get_rules(|m, _| module_path!().split("::tests").any(|s| s == m)),
30            ))
31        }
32        let input  = String::from_utf8(hex::decode("e99bb6e5aebde5ad97e7aca6e280ace2808ce280acefbbbfefbbbfefbbbfe2808defbbbf556e69636f6465e99a90e58699e69cafe99ba8e88b81e2808de2808de2808defbbbfe2808ce280ace280ace2808ce2808de280ace280acefbbbfe2808de280ace2808de2808ce2808de2808de280ace2808de2808ce2808ce2808de2808ce280ace2808cefbbbfefbbbfe280ace2808de2808cefbbbfe2808de2808de2808ce2808de2808de280ace2808de2808d0ae280ace2808de2808defbbbfe2808ce2808ce2808ce2808ce280ace2808ce280ace2808de280ace2808ce2808ce2808de280ace2808de2808de280ace280ace2808de2808ce2808ce280ace2808ce2808de2808defbbbfe2808cefbbbfefbbbfe2808defbbbfe2808de280ace280ace2808ce2808de2808ce2808de280ace2808de2808de280ace2808ce2808defbbbfe2808de2808de280acefbbbfe2808de2808de2808defbbbf0a").unwrap()).unwrap();
33        println!("{}", analyze_with(
34            &*input,
35            &get_rules(|m, _| module_path!().split("::tests").any(|s| s == m)),
36        ))
37    }
38}