Guest User

Untitled

a guest
Apr 20th, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.04 KB | None | 0 0
  1. #!/usr/bin/env bash
  2.  
  3. TABLENAME=symbols
  4. SYMBOL_DB_FILE="symbols"
  5. STRING_SYMBOL_FILE="func.list"
  6. HEAD_FILE="$PROJECT_DIR/$PROJECT_NAME/codeObfuscation.h"
  7. export LC_CTYPE=C
  8.  
  9. #维护数据库方便日后作排重
  10. createTable()
  11. {
  12. echo "create table $TABLENAME(src text, des text);" | sqlite3 $SYMBOL_DB_FILE
  13. }
  14.  
  15. insertValue()
  16. {
  17. echo "insert into $TABLENAME values('$1' ,'$2');" | sqlite3 $SYMBOL_DB_FILE
  18. }
  19.  
  20. query()
  21. {
  22. echo "select * from $TABLENAME where src='$1';" | sqlite3 $SYMBOL_DB_FILE
  23. }
  24.  
  25. ramdomString()
  26. {
  27. openssl rand -base64 64 | tr -cd 'a-zA-Z' |head -c 16
  28. }
  29.  
  30. rm -f $SYMBOL_DB_FILE
  31. rm -f $HEAD_FILE
  32. createTable
  33.  
  34. touch $HEAD_FILE
  35. echo '#ifndef Demo_codeObfuscation_h
  36. #define Demo_codeObfuscation_h' >> $HEAD_FILE
  37. echo "//confuse string at `date`" >> $HEAD_FILE
  38. cat "$STRING_SYMBOL_FILE" | while read -ra line; do
  39. if [[ ! -z "$line" ]]; then
  40. ramdom=`ramdomString`
  41. echo $line $ramdom
  42. insertValue $line $ramdom
  43. echo "#define $line $ramdom" >> $HEAD_FILE
  44. echo "#define _$line _$ramdom" >> $HEAD_FILE
  45. fi
  46. done
  47. echo "#endif" >> $HEAD_FILE
  48.  
  49.  
  50. sqlite3 $SYMBOL_DB_FILE .dump
Add Comment
Please, Sign In to add comment