Exemple #1
0
TValueKeeper* VariableTable::Push(TValueKeeper* keeper)
{
	if (keeper)
	{
		//List* list = nullptr;

		if (!(table[CombineKeys(Key1(keeper->GetName()))]))
		{
			table[CombineKeys(Key1(keeper->GetName()))] = new List(sizeof(TValueKeeper));
		}


		TValueKeeper* temp = (TValueKeeper*)table[CombineKeys(Key1(keeper->GetName()))]->Add(keeper);
		return (temp);
	}

	return nullptr;
}
Exemple #2
0
	void Person (int value)       { Key1 (Household () * Traveler_Scale () + value); }
Exemple #3
0
	void Household (int value)    { Key1 (value * Traveler_Scale () + Person ()); }
Exemple #4
0
	void Traveler (int value)     { Key1 (value); }
Exemple #5
0
	int  Person (void)            { return (Key1 () % Traveler_Scale ()); }
Exemple #6
0
	int  Household (void)         { return (Key1 () / Traveler_Scale ()); }
Exemple #7
0
	int  Traveler (void)          { return (Key1 ()); }
Exemple #8
0
int main(int argc, char* argv[])
{
    wchar_t* ModuleName = L"klick.sys";
    
    ULONG FileSize;

    MyReadFile ( argv[1], g_File, &FileSize );

    PCHAR pKey1, pKey2, pSign;
    ULONG Key1Size, Key2Size, RegSize;
    char *pBasePtr = &g_File[0];

    CheckForSignOld( pBasePtr, g_File.size(), &FileSize );        

    GetCryptoCPtrs( pBasePtr, FileSize, &pKey1, &Key1Size, &pKey2, &Key2Size, &pSign, &RegSize, &FileSize );        
    
    PIMAGE_DOS_HEADER   Dos_header = (PIMAGE_DOS_HEADER)pBasePtr;
    PIMAGE_NT_HEADERS   PE_header = (PIMAGE_NT_HEADERS)( (char*)pBasePtr + Dos_header->e_lfanew );

    PE_header->OptionalHeader.CheckSum = 0;

    bool RetVal = false;
    HDSKM libDSKM;
    ULONG dskm_err = DSKM_ERR_OK ;

    libDSKM = DSKM_InitLibraryEx(Kl1Alloc, Kl1Free, NULL, TRUE) ;

    HDSKMLIST list1;
    dskm_err = DSKM_ParList_Create(&list1);

    CReadObj Key1( pKey1, Key1Size );
    CReadObj Key2( pKey2, Key2Size );
    CReadObj Sign( pSign, RegSize );
    
    HDSKMLISTOBJ param1 = DSKM_ParList_AddBufferedReg(list1, 0, Key1.m_pBase, Key1.m_Size, (pfnDSKM_GetBuffer_CallBack)ReadBuffByFile, &Key1 ) ;
    HDSKMLISTOBJ param2 = DSKM_ParList_AddBufferedReg(list1, 0, Key2.m_pBase, Key2.m_Size, (pfnDSKM_GetBuffer_CallBack)ReadBuffByFile, &Key2 ) ;
    HDSKMLISTOBJ param3 = DSKM_ParList_AddBufferedReg(list1, 0, Sign.m_pBase, Sign.m_Size, (pfnDSKM_GetBuffer_CallBack)ReadBuffByFile, &Sign ) ;

    dskm_err = DSKM_PrepareRegsSet(libDSKM, list1, 0);

    dskm_err = DSKM_ParList_Delete(list1) ;

    // Check

    HDSKMLIST list2 = 0 ;
    DSKM_ParList_Create(&list2);

    CReadObj File( pBasePtr, FileSize );

    HDSKMLISTOBJ param4 = DSKM_ParList_AddBufferedObject(list2, 0, File.m_pBase, File.m_Size, (pfnDSKM_GetBuffer_CallBack)ReadBuffByFile, &File ) ;

    dskm_err = DSKM_ParList_SetObjectHashingProp(list2, param4, ModuleName, 2 *( wcslen ( ModuleName ) + 1 ) ) ;

    dskm_err = DSKM_CheckObjectsUsingRegsSet( libDSKM, list2, 0) ;

    if ( dskm_err == DSKM_ERR_OK )
        RetVal = true;

    DSKM_ParList_Delete(list2) ;

    DSKM_DeInitLibrary( libDSKM, TRUE ) ;

	return 0;
}
Exemple #9
0
 void Node (int value)          {
     Key1 (value);
 }
Exemple #10
0
 int  Node (void)               {
     return (Key1 ());
 }
Exemple #11
0
	void In_Dir (int value)                { Key1 ((In_Link () << 1) + value); }
Exemple #12
0
	void In_Link (int value)               { Key1 ((value << 1) + In_Dir ()); }
Exemple #13
0
	void In_Link_Dir (int value)           { Key1 (value); }
Exemple #14
0
	int  In_Dir (void)                     { return ((Key1 () & 1)); } 
Exemple #15
0
	int  In_Link (void)                    { return ((Key1 () >> 1)); }
Exemple #16
0
	int  In_Link_Dir (void)                { return (Key1 ()); }