--- tags: comp-decomp title: Meeting-notes --- # Overview Log meeting notes ## logs ### Day 1: Had meeting with collaborator. Keep the following in mind: ### Day 2: - catching up with the code I was working with.. - working in `compare_score.py` - command: `source curr_command.sh` Working on the function `find_matching_structure` in file `cfg.py`. The aim of the function is to: - create a string of edges. - The edges are traversed in bfs manner - The current function finds the largest matching string - The string contains all edges as: `last_node_instr:first_node_instr` - Limitation: - matches only one subsequence - need multiple matching - Can match only incoming Work: - Added funciton `get_edges_of_node` to extract outgoing edges of a node in terms of string - Will use this to find the CFG at node level - Added `replace_common_strings` function to replace the recurring opcode in string with standard notations ### Day 3: Using command: `python bin/compare_score.py test/initial.pyc \<module\> test/original.pyc foo ` Goal: "Fetching lines from the binary code" Work done: - created `get_source_line` function in CFG class. - created `get_line_no` function in CFGNode class. Testing: - Fetching line numbers and testing whether that works - command: `python bin/test.py` -> Passing right now Next goal: - start perturbation to generate an output file with code. - Get lines from the database - Then add outgoing edges - and then start perturbing ### Day 4: Using command: `python bin/perturb_manually.py` Added feature to manually perturb the following files: - `test/temp.py`: Will be the file that you perturb manually - `test/initial.pyc`: Will be the file that you generate as target Compare the two (`test/temp.png` and `test/initial.png`) cfg to see the whether you are getting closer or farther away. ### Day X: - Completed implementation of environment for manual perturbation - We use the partial matching because reason here --- # Meeting Hamza: - thought of them - Long term: - Scoring algorithm optimized - Meta-data - cover samples and optimize - Short term: - Optimize seed utilization - useful hints from seed