void VF_Version(char* szFileName, char* szVersion, cbErrorMessage ErrorMessageCallback) { FILE_STATUS_INFO inFileStatus= {0}; g_szVersion=szVersion; g_fdFileIsDll=false; g_fdProcessInfo=0; g_ErrorMessageCallback=ErrorMessageCallback; IsPE32FileValidEx(szFileName, UE_DEPTH_SURFACE, &inFileStatus); if(inFileStatus.FileIs64Bit) { ErrorMessageCallback((char*)"64-bit files are not (yet) supported!", (char*)"Error!"); return; } HANDLE hFile, fileMap; ULONG_PTR va; DWORD bytes_read=0; StaticFileLoad(szFileName, UE_ACCESS_READ, false, &hFile, &bytes_read, &fileMap, &va); if(!IsArmadilloProtected(va)) { ErrorMessageCallback((char*)"Not armadillo protected...", (char*)"Error!"); return; } StaticFileClose(hFile); g_fdFileIsDll=inFileStatus.FileIsDLL; if(!g_fdFileIsDll) g_fdProcessInfo=(LPPROCESS_INFORMATION)InitDebugEx(szFileName, 0, 0, (void*)cbEntry); else g_fdProcessInfo=(LPPROCESS_INFORMATION)InitDLLDebug(szFileName, false, 0, 0, (void*)cbEntry); if(g_fdProcessInfo) DebugLoop(); else ErrorMessageCallback((char*)"Something went wrong during initialization...", (char*)"Error!"); }
DWORD WINAPI CT_FindCertificates(void* lpvoid) { CT_created_log=false; CT_isdebugging=true; patched_magic_jump=false; fdProcessInfo=0; magic_value_addr=0; encrypted_cert_real=0; encrypted_cert_real_size=0; cert_func_count=0; if(CT_cert_data) { if(CT_cert_data->projectid) free2(CT_cert_data->projectid); if(CT_cert_data->customer_service) free2(CT_cert_data->customer_service); if(CT_cert_data->website) free2(CT_cert_data->website); if(CT_cert_data->unknown_string) free2(CT_cert_data->unknown_string); if(CT_cert_data->stolen_keys) free2(CT_cert_data->stolen_keys); if(CT_cert_data->intercepted_libs) free2(CT_cert_data->intercepted_libs); if(CT_cert_data->raw_data) free2(CT_cert_data->raw_data); if(CT_cert_data->encrypted_data) free2(CT_cert_data->encrypted_data); free2(CT_cert_data); } CT_cert_data=(CERT_DATA*)malloc2(sizeof(CERT_DATA)); memset(CT_cert_data, 0, sizeof(CERT_DATA)); InitVariables(program_dir, (CT_DATA*)CT_cert_data, StopDebug, 1, GetParent(CT_shared)); FILE_STATUS_INFO inFileStatus= {0}; CT_time1=GetTickCount(); IsPE32FileValidEx(CT_szFileName, UE_DEPTH_SURFACE, &inFileStatus); if(inFileStatus.FileIs64Bit) { MessageBoxA(CT_shared, "64-bit files are not (yet) supported!", "Error!", MB_ICONERROR); return 0; } HANDLE hFile, fileMap; ULONG_PTR va; DWORD bytes_read=0; StaticFileLoad(CT_szFileName, UE_ACCESS_READ, false, &hFile, &bytes_read, &fileMap, &va); if(!IsArmadilloProtected(va)) { InitVariables(program_dir, 0, StopDebug, 0, 0); CT_isdebugging=false; MessageBoxA(CT_shared, "Not armadillo protected...", "Error!", MB_ICONERROR); return 0; } StaticFileClose(hFile); fdFileIsDll=inFileStatus.FileIsDLL; if(!fdFileIsDll) fdProcessInfo=(LPPROCESS_INFORMATION)InitDebugEx(CT_szFileName, 0, 0, (void*)CT_cbEntry); else fdProcessInfo=(LPPROCESS_INFORMATION)InitDLLDebug(CT_szFileName, false, 0, 0, (void*)CT_cbEntry); if(fdProcessInfo) { EnableWindow(GetDlgItem(CT_shared, IDC_BTN_START), 0); DebugLoop(); InitVariables(program_dir, 0, StopDebug, 0, 0); CT_ParseCerts(); } else MessageBoxA(CT_shared, "Something went wrong during initialization...", "Error!", MB_ICONERROR); InitVariables(program_dir, 0, StopDebug, 0, 0); CT_isdebugging=false; return 0; }