FNamePool Enumeration

Bu kullanıcıyla herhangi bir iş veya ticaret yapmak istiyorsanız, forumdan uzaklaştırıldığını sakın unutmayın.
15 değilmiydi la ne ara 16 oldu bu paster
nIyPTba.png
 
forumda her konu kuymak peyniri gibi uzuyor.
konu kilit yeterli bence
 
Bu kullanıcıyla herhangi bir iş veya ticaret yapmak istiyorsanız, forumdan uzaklaştırıldığını sakın unutmayın.
kimlik kullanmadan ajan ve silah adlarını almak için basit bir yazı.
ön uyarı: bu, kopyala ve yapıştır yoluyla çalışmaz. ayrıca, temizlemeye başlamadığım için kod korkunç görünüyor.

Daha önce yayınladığım şifre çözme rutini:
Kod:
__forceinline __int64
game::decrypt_xor_keys(const uint32_t key, const uintptr_t* state)
{  
    __int64 v2;
    unsigned __int64 v3;
    unsigned __int64 v4;
    unsigned __int64 v5;
    unsigned int v6;
    __int64 v7;
    unsigned int v8;
    int v9;
    unsigned int v10;
    unsigned __int64 v11;
 
    v2 = (unsigned int)(key << 25);
    v3 = 2685821657736338717i64 * ((unsigned int)key ^ v2 ^ (((unsigned int)key ^ ((unsigned __int64)(unsigned int)key >> 15)) >> 12)) % 7;
    v4 = state[v3];
    v5 = (2685821657736338717i64 * ((unsigned int)key ^ v2 ^ (((unsigned int)key ^ ((unsigned __int64)(unsigned int)key >> 15)) >> 12))) >> 32;
    v6 = (unsigned int)v3 % 7;
    if (!((unsigned int)v3 % 7))
    {
        v7 = 2 * ((2 * v4) ^ ((2 * v4) ^ (v4 >> 1)) & 0x5555555555555555i64);
        v4 = v7 ^ (v7 ^ (((2 * v4) ^ ((2 * v4) ^ (v4 >> 1)) & 0x5555555555555555i64) >> 1)) & 0x5555555555555555i64;
        goto LABEL_5;
    }
    if (v6 == 1)
    {
        v9 = 2 * v3;
        v8 = v5 + v3;
        v4 = ~(unsigned __int64)(unsigned int)(v5 + v3) ^ (v4 - (unsigned int)(v5 + 2 * v3));
    }
    else
    {
    LABEL_5:
        v8 = v5 + v3;
        v9 = 2 * v3;
    }
    if (v6 == 2)
    {
        v4 = __ROL8__((2 * v4) ^ ((2 * v4) ^ (v4 >> 1)) & 0x5555555555555555i64, (unsigned __int8)(v8 % 0x3F) + 1);
        goto LABEL_8;
    }
    if (v6 == 3)
    {
        v10 = v5 + v9;
        v4 = __ROL8__((unsigned int)(v5 + v9) + v4, (unsigned __int8)(v8 % 0x3F) + 1);
    }
    else
    {
    LABEL_8:
        v10 = v9 + v5;
    }
    if (v6 == 4)
    {
        v4 ^= v8;
    LABEL_11:
        if (v6 == 6)
        {
            v11 = __ROL8__(v4, (unsigned __int8)(v10 % 0x3F) + 1);
            v4 = (2 * v11) ^ ((2 * v11) ^ (v11 >> 1)) & 0x5555555555555555i64;
        }
 
    }
    else
    {
        if (v6 != 5)
            goto LABEL_11;
        v4 += v8 - (unsigned __int64)v10;
 
    }
    this->xor_key = v4 ^ key;
    return (v4 ^ key);
 
}

az önce yayınladığım şifre çözme rutinini kullanarak xor_key elde etme işlevi - neredeyse uworld ile aynı:


Kod:
bool
game::decrypt_name_key(uintptr_t valorant_base, uintptr_t* returned_xor)
{
    uintptr_t namepoolkey;
    engine->rvpm(engine->val_base + names_key, sizeof(uintptr_t), (unsigned char*)&namepoolkey);
    if (!namepoolkey)
    {
        printf("[-] offset name_pool_key invalid!\n");
        return false;
 
    }
 
    #pragma pack(push, 1)
        struct state
        {
            uintptr_t keys[7];
 
        };
    #pragma pack(pop)
 
    state xor_state;
    engine->rvpm(engine->val_base + names_state, sizeof(state), (unsigned char*)&xor_state);
 
    const auto address = decrypt_xor_keys(namepoolkey, (uintptr_t*)&xor_state);
 
    uintptr_t xors;
    engine->rvpm(address, sizeof(uintptr_t), (unsigned char*)&xors);
 
    if (xors)
    {
        printf("[+] returned xor_address!\n");
        *returned_xor = xors;
        return true;
 
    }
    else
    {
        printf("[-] failed to return xor_address!\n");
        return false;
 
    }
 
}

giriş için okuma zinciri (silah(lar) için):


Kod:
uintptr_t inv;
engine->rvpm(entities[i].entity + inventory, sizeof(uintptr_t), (unsigned char*)&inv);
 
uintptr_t eq;
engine->rvpm(inv + equippable, sizeof(uintptr_t), (unsigned char*)&eq);
 
int gun_id;
engine->rvpm(eq + objectid, sizeof(int), (unsigned char*)&gun_id);

-


Kod:
const uintptr_t names_state = 0x8CDEF40;
const uintptr_t names_key = names_state + 0x38;
const uintptr_t fnameentry = 0x8CABF80;

-Konu tamamen bana aittir. Herhangi bir forumda paylaşılmasını istemiyorum. Tek tek kendim yazdım(!)
çok yararlı bir post eline sağlık
 

  Şuanda konuyu görüntüleyen kullanıcılar


Üst Alt