#include #include #include #include unsigned int crc32a(uint8_t *message, unsigned int size); unsigned int fib(unsigned int n) { if (n == 0) { return 0; } unsigned int a = 0; unsigned int b = 1; for (unsigned int i = 1; i < n; i++) { unsigned int next = a + b; a = b; b = next; } return b; } void rot13(char *buf) { while (*buf) { if ((*buf >= 'a' && *buf <= 'm') || (*buf >= 'A' && *buf <= 'M')) { *buf += 13; } else if ((*buf >= 'n' && *buf <= 'z') || (*buf >= 'N' && *buf <= 'Z')) { *buf -= 13; } buf++; } } size_t strlen(const char *buf) { int len = 0; while (buf[len]) len++; return len; } extern void *__malloc_freelist; int main() { __malloc_freelist = 0; volatile int i = 0; int j = 0; char *fox = "The quick brown fox jumps of the lazy dog."; unsigned int checksum = 0; volatile uint32_t i32 = 0xdeadbeef; volatile uint64_t i64 = 0x1122334455667788; start: while (i) j++; rot13(fox); checksum ^= crc32a(fox, strlen(fox)); rot13(fox); checksum ^= crc32a(fox, strlen(fox)); return checksum; }