Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // by petter wahlman, http://www.twitter.com/badeip
- // convert ascii hex to binary.
- // usage:
- // gcc tohex.c -o tohex
- // tail -20 level2.txt | sed 's/[^a-f0-9]//g'| tr -d '\n' > level2.tmp
- // tohex level2.tmp > level2.zip
- //
- // ugly code:
- #include <stdlib.h>
- #include <string.h>
- #include <unistd.h>
- #include <fcntl.h>
- #include <sys/types.h>
- #include <sys/stat.h>
- int main(int argc, char **argv)
- {
- unsigned char *buf;
- char *target;
- struct stat st;
- int i;
- int fd;
- target = "./level2.tmp";
- if (argc > 1)
- target = argv[2];
- fd = open(target, O_RDONLY);
- if (-1 == fd) {
- perror(target);
- return 1;
- }
- fstat(fd, &st);
- buf = malloc(st.st_size);
- read(fd, buf, st.st_size);
- for (i = 0; i < st.st_size; i += 2) {
- char tmp[3];
- int val;
- strncpy(tmp, (const char *)&buf[i], 2);
- val = strtoul(tmp, NULL, 16);
- printf("%c", val);
- }
- close(fd);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement