| 6 | #pragma comment(lib, "Rpcrt4.lib") |
| 7 | |
| 8 | int main() { |
| 9 | |
| 10 | const char* uuids[] = |
| 11 | { |
| 12 | "e48348fc-e8f0-00c0-0000-415141505251", |
| 13 | "d2314856-4865-528b-6048-8b5218488b52", |
| 14 | "728b4820-4850-b70f-4a4a-4d31c94831c0", |
| 15 | "7c613cac-2c02-4120-c1c9-0d4101c1e2ed", |
| 16 | "48514152-528b-8b20-423c-4801d08b8088", |
| 17 | "48000000-c085-6774-4801-d0508b481844", |
| 18 | "4920408b-d001-56e3-48ff-c9418b348848", |
| 19 | "314dd601-48c9-c031-ac41-c1c90d4101c1", |
| 20 | "f175e038-034c-244c-0845-39d175d85844", |
| 21 | "4924408b-d001-4166-8b0c-48448b401c49", |
| 22 | "8b41d001-8804-0148-d041-5841585e595a", |
| 23 | "59415841-5a41-8348-ec20-4152ffe05841", |
| 24 | "8b485a59-e912-ff57-ffff-5d49be777332", |
| 25 | "0032335f-4100-4956-89e6-4881eca00100", |
| 26 | "e5894900-bc49-0002-04d2-645bb00d4154", |
| 27 | "4ce48949-f189-ba41-4c77-2607ffd54c89", |
| 28 | "010168ea-0000-4159-ba29-806b00ffd550", |
| 29 | "c9314d50-314d-48c0-ffc0-4889c248ffc0", |
| 30 | "41c18948-eaba-df0f-e0ff-d54889c76a10", |
| 31 | "894c5841-48e2-f989-41ba-99a57461ffd5", |
| 32 | "40c48148-0002-4900-b863-6d6400000000", |
| 33 | "41504100-4850-e289-5757-574d31c06a0d", |
| 34 | "e2504159-66fc-44c7-2454-0101488d4424", |
| 35 | "6800c618-8948-56e6-5041-504150415049", |
| 36 | "5041c0ff-ff49-4dc8-89c1-4c89c141ba79", |
| 37 | "ff863fcc-48d5-d231-48ff-ca8b0e41ba08", |
| 38 | "ff601d87-bbd5-1de0-2a0a-41baa695bd9d", |
| 39 | "8348d5ff-28c4-063c-7c0a-80fbe07505bb", |
| 40 | "6f721347-006a-4159-89da-ffd590909090" |
| 41 | }; |
| 42 | |
| 43 | HANDLE hHeap = HeapCreate(HEAP_CREATE_ENABLE_EXECUTE, 0, 0); |
| 44 | void* alloc_mem = HeapAlloc(hHeap, 0, 0x1000); |
| 45 | DWORD_PTR ptr = (DWORD_PTR)alloc_mem; |
| 46 | int init = sizeof(uuids) / sizeof(uuids[0]); |
| 47 | |
| 48 | for (int i = 0; i < init; i++) { |
| 49 | RPC_STATUS status = UuidFromStringA((RPC_CSTR)uuids[i], (UUID*)ptr); |
| 50 | if (status != RPC_S_OK) { |
| 51 | printf("UuidFromStringA != RPC_S_OK\n"); |
| 52 | CloseHandle(alloc_mem); |
| 53 | return -1; |
| 54 | } |
| 55 | ptr += 16; |
| 56 | } |
| 57 | /* |
| 58 | printf("[+] HexDump: \n"); |
| 59 | for (int i = 0; i < init * 16; i++) { |
| 60 | printf("%02X ", ((unsigned char*)alloc_mem)[i]); |
| 61 | } |
| 62 | */ |
| 63 | |
| 64 | //((void(*)())alloc_mem)(); |
| 65 |
nothing calls this directly
no outgoing calls
no test coverage detected