添加项目文件。
This commit is contained in:
77
Etw Syscall/libpeconv-master/tests/main.cpp
Normal file
77
Etw Syscall/libpeconv-master/tests/main.cpp
Normal file
@@ -0,0 +1,77 @@
|
||||
#include <stdio.h>
|
||||
#include <windows.h>
|
||||
|
||||
#include "test_loading.h"
|
||||
#include "test_loading_imps.h"
|
||||
#include "test_crackme_f4_3.h"
|
||||
#include "test_hooking_imps.h"
|
||||
#include "test_crackme_f4_6.h"
|
||||
#include "test_load_ntdll.h"
|
||||
#include "test_replacing_func.h"
|
||||
#include "test_delayed_imps.h"
|
||||
#include "test_imp_list.h"
|
||||
#include "test_hooking_local.h"
|
||||
#include "test_peb_lookup.h"
|
||||
#include "test_imports_mix.h"
|
||||
#include "test_found_base.h"
|
||||
#include "test_fix_dotnet.h"
|
||||
#include "test_format_detect.h"
|
||||
|
||||
int make_test(int test_id, char *test_arg)
|
||||
{
|
||||
switch (test_id) {
|
||||
case 1: return tests::load_self();
|
||||
case 2: return tests::deploy_self();
|
||||
case 3: return tests::brutforce_crackme_f4_3();
|
||||
case 4:
|
||||
{
|
||||
peconv::export_based_resolver *exp_res = new peconv::export_based_resolver();
|
||||
int res = tests::deploy_self_ex((peconv::t_function_resolver*)exp_res);
|
||||
delete exp_res;
|
||||
return res;
|
||||
}
|
||||
case 5: return tests::hook_testcase(test_arg);
|
||||
case 6: return tests::decode_crackme_f4_6(test_arg);
|
||||
case 7: return tests::test_ntdll(NULL); //manual test
|
||||
case 8: return tests::replace_func_testcase(test_arg);
|
||||
case 9: return tests::replace_delayed_imps(test_arg);
|
||||
case 10: return tests::imp_list(test_arg); //manual test
|
||||
case 11: return tests::hook_self_local();
|
||||
case 12: return tests::check_modules();
|
||||
case 13: return tests::imports_mix(test_arg);
|
||||
case 14: return tests::load_and_check_base(test_arg);
|
||||
case 15: return tests::check_finding_jumps();
|
||||
case 16: return tests::check_pe_format(test_arg);
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
void print_banner()
|
||||
{
|
||||
printf("---------------\n");
|
||||
printf("TESTS DEPLOYED!\n");
|
||||
printf("---------------\n");
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
print_banner();
|
||||
if (argc < 2) {
|
||||
printf("Supply the test id!\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
int test_id = atoi(argv[1]);
|
||||
printf("Test ID: %d\n", test_id);
|
||||
|
||||
char *test_arg = NULL;
|
||||
if (argc > 2) {
|
||||
test_arg = argv[2];
|
||||
}
|
||||
int res = make_test(test_id, test_arg);
|
||||
|
||||
if (res == 0) {
|
||||
printf("[+] Test passed!\n");
|
||||
}
|
||||
return res;
|
||||
}
|
||||
Reference in New Issue
Block a user