trietptm / optimice Goto Github PK
View Code? Open in Web Editor NEWAutomatically exported from code.google.com/p/optimice
Automatically exported from code.google.com/p/optimice
Author: Branko Spasojevic Mail: gljiva[at]gmail[dot]com URL: http://code.google.com/p/optimice/ Tested with IDA 6.1 (should work in 6+, but differences in IDApython API are possible, if you run into problems drop me a mail). For quick intro check files in Usage section. Usage: ------ Video version: http://optimice.googlecode.com/files/optimice.zip FAQ: docs\FAQ.pdf Any ideas, request and bug reports are welcome.
IDA 6.0.0110224
Alt+O is reserved for Options menu. Binding to, say, Alt + N works
Original issue reported on code.google.com by [email protected]
on 4 Mar 2011 at 11:19
What steps will reproduce the problem?
Part of the Input code:
push small 85Eh
mov bx, 7Bh
mov eax, 1
pop bx
What is the expected output?
No Fault
What do you see instead?
Failed to assemble [MOV bx, small 85Eh]
What version of the product are you using? On what operating system?
V 0.13
Please provide any additional information below.
It seems that the small modifier is handled as part of the operand value and
passed thru the optimisation.
Original issue reported on code.google.com by [email protected]
on 12 Dec 2011 at 11:29
Starting optimization @ [0040d62c]
NOTE: INSTRUCTION NOT RECOGNIZED [PUSHFW] @ [0040d62d] [['PUSHFW']]
PUSHFW
[]
-------------
Traceback (most recent call last):
File "E:/Programme/ida61adv/Optimice v0.13/code/Main.py", line 64, in wrapper
optimice()
File "E:/Programme/ida61adv/Optimice v0.13/code/Main.py", line 19, in optimice
f = Function.Function(ea)
File "E:/Programme/ida61adv/Optimice v0.13/code\Function.py", line 92, in __init__
self.startAnalysis(self.start_ea)
File "E:/Programme/ida61adv/Optimice v0.13/code\Function.py", line 468, in startAnalysis
modified |= dead_code.ReduceBB(self.basic_blocks[prev_block_ea])
File "E:/Programme/ida61adv/Optimice v0.13/code\CodeOptimization.py", line 108, in ReduceBB
delta_taint = bb[delta].GetTaintInfo()
File "E:/Programme/ida61adv/Optimice v0.13/code\Instruction.py", line 82, in GetTaintInfo
self.taint = self.CalculateInstructionTaint()
File "E:/Programme/ida61adv/Optimice v0.13/code\Instruction.py", line 448, in CalculateInstructionTaint
if x86InstructionData[mnem].has_key(op):
KeyError: 'PUSHFW'
-------------
Original issue reported on code.google.com by [email protected]
on 14 Dec 2011 at 11:10
What steps will reproduce the problem?
The code:
push ebp ; OPTY@[00001060];
mov ebp, esp
push ebx
push esi
push edi
pop eax
cmp ecx, eax
pushf
xor eax, eax
pop edi
pop esi
pop ebx
pop ebp
retn
will be optimised to:
push ebp ; Origin@[00401010];
mov ebp, esp
push ebx
push esi
mov eax, edi
pushf
xor eax, eax
pop edi
pop esi
pop ebx
pop ebp
retn
What is the expected output? What do you see instead?
push ebp ; Origin@[00401010];
mov ebp, esp
push ebx
push esi
mov eax, edi
cmp ecx, eax
pushf
xor eax, eax
pop edi
pop esi
pop ebx
pop ebp
retn
What version of the product are you using? On what operating system?
V0.13
Please provide any additional information below.
The CMP instruction is changing the FLAGS, that are pushed next.
So I thing the CMP shall not be removed as "dead code"
Original issue reported on code.google.com by [email protected]
on 12 Dec 2011 at 11:34
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.