malware-m2-2026/Malware/Malware/tree.h

42 lines
No EOL
1.1 KiB
C++

#include <cstddef>
#include <cstdlib>
class Node {
public:
Node* left;
Node* right;
char value;
Node* l(){
return left;
}
Node* r(){
return right;
}
char v(){
return value;
}
bool is_leaf(){
return left == NULL && right == NULL;
}
Node(){
left = NULL;
right = NULL;
prepare_value();
}
private:
void prepare_value(){ // uses tons of xor to init value to 0
value = 0xff; // 11111111
for(int j = 0; j < 139163; j++){ // can add a digit to have a long compute time
for(int i = 0; i < 231; i++){
if(i<99 && i%3 == 0){ // happens 33 times
value^= 0xca; // 11001010
} else if (i%7 == 1){ // happens 33 times too
value^= 0x25; // 00100101
}
}
value ^= 0x10; // 00010000
}
}
};
char* gen_boop();