Uses of Class
com.pnfsoftware.jeb.core.units.code.android.ir.DexDecEvaluationException
Packages that use DexDecEvaluationException
Package
Description
This package and sub-packages contain all types used by Android code analysis plugins.
This package contains types used to publicly access and manipulate JEB's DEX Decompiler (referred
to as
dexdec
) Intermediate Representation (IR) objects.-
Uses of DexDecEvaluationException in com.pnfsoftware.jeb.core.units.code.android
Methods in com.pnfsoftware.jeb.core.units.code.android that throw DexDecEvaluationExceptionModifier and TypeMethodDescriptionvoid
IGenericUnpacker.attemptUnpack()
Start the unpacking process.IEmulatedAndroid.invokeMethod
(DInvokeType invoketype, String msig, List<IDExpression> args) Convenience method wrapping around thedex emulator
to emulate a method. -
Uses of DexDecEvaluationException in com.pnfsoftware.jeb.core.units.code.android.ir
Subclasses of DexDecEvaluationException in com.pnfsoftware.jeb.core.units.code.android.irModifier and TypeClassDescriptionclass
Those objects are used to wrap throwables raised by the emulated code.class
The emulation of some Dalvik code failed because there was an error reported when translating to IR.class
The emulation is taking too long (maximum iteration count exceeded).class
An error occurred while executing code in the emulator-controlled sandbox.class
An internal exception used when attempting to emulate a method whose body was removed.class
The emulation is taking too long (timeout exceeded).class
An error occurred in code running in a restricted thread not directly managed by the emulator.class
An error occurred while evaluating native code.Methods in com.pnfsoftware.jeb.core.units.code.android.ir that throw DexDecEvaluationExceptionModifier and TypeMethodDescriptionIDState.cloneArray
(IDImm arrayRef) Clone an array.IDState.createArray
(IJavaType type, int len, List<? extends IDImm> initialValues) Create an array.IDState.createNewInstance
(String classSignature) IDState.createNewInstance
(String constructorSignature, Collection<IDExpression> constructorParameters) Create a new instance of an object.boolean
IDEmuFrame.deleteVariable
(int id) Remove (unset) a variable.boolean
IDState.deleteVariable
(int varid) Convenience method to remove a defined variable in the current frame (top frame of the top context).IDExpression.evaluate
(IDGlobalContext g, Map<Integer, IDImm> varmap) Convenience method: evaluate anon-instruction
IR expression using the provided set a variable values.IDExpression.evaluate
(IDMethodContext ctx) Convenience method: Evaluate this expression within the context of the provided method.Evaluate this expression.Convenience method: evaluate the IR instruction using the provided set a variable values.IDState.execute
(DExecutionParameters info) Execute some IR.IDState.executeDexMethod
(IDexMethod m, List<IDExpression> args) Execute (emulate) an IR method within a new context.IDState.getArrayElement
(IDImm arrayRef, int index) Read an array element.IDState.getArrayObject
(IDImm ref) Retrieve an array by reference.int
IDState.getArrayObjectLength
(IDImm ref) Get the length of an array.IDState.getClassReference
(String classname) Retrieve a classref reference by name.IDState.getInstanceField
(String fsig, IDImm instance) Retrieve the value of an instance field.IDState.getNativeLibraries()
Get the list of native libraries loaded in the native emulator.IDState.getObject
(int objid) Convenience method to retrieve an object by its reference id.Retrieve an object value by its reference.Retrieve an object value by its reference.IDState.getObjectClass
(int objid) Retrieve the emulated class object for the provided object.int
IDState.getObjectClassId
(int objid) Retrieve the class object reference id of the provided object.IDState.getStaticField
(String fsig) Retrieve the value of a static field.IDState.getStringObject
(IDImm strOrRef) Retrieve a string by reference.IDEmuFrame.getVariable
(int id) Read a variable.IDEmuFrame.getVariable
(int id, boolean readNullIfUnset) Read a variable.IDState.getVariable
(int varid) Convenience method to read the value of a variable in the current frame (top frame of the top context).IDState.getVariable
(int varid, boolean softFail) Convenience method to read the value of a variable in the current frame (top frame of the top context).boolean
IDEmuFrame.hasVariable
(int id) Determine whether a variable is set (has a value).boolean
IDState.hasVariable
(int varid) Determine whether a variable is set (has a value).IDState.invokeMethod
(DInvokeType invokeType, String methodSignature, IDExpression... methodParameters) Invoke (execute) a method.IDState.invokeMethod
(String methodSignature, Collection<IDExpression> methodParameters, DInvokeType invokeType) Invoke (execute) a method.boolean
IDState.isInstanceOf
(IDImm obj, IDImm clz) Determine whether an object is assignment-compatible with a class type.Class<?>
Find, load and initialize a class.Class<?>
Find a class.IDState.loadNativeLibrary
(IELFUnit lib) Load (or retrieve a reference to an already-loaded) native SO library.IDState.loadNativeLibrary
(String libname) Load (or retrieve a reference to an already-loaded) native SO library.IDState.loadNativeLibrary
(String libname, boolean isPath) Load (or retrieve a reference to an already-loaded) native SO library.IDState.releaseObject
(IDImm ref) Release an object currently living in this State.void
IDState.setArrayElement
(IDImm arrayRef, int index, IDImm val) Write an array element.void
IDState.setInstanceField
(String fsig, IDImm instance, IDImm val) Update the value of an instance field.void
IDState.setStaticField
(String fsig, IDImm val) Update the value of a static field.void
IDEmuFrame.setVariable
(int id, IDImm val) Write a variable.void
IDState.setVariable
(int varid, IDImm value) Convenience method to write the value of a variable in the current frame (top frame of the top context).IDMethodExecutionHelper.simulateExecution
(IDState state, List<IDImm> args) When this method is called, the State's top frame has a PC set at thetarget method
entry-point.double
IDImm.toDouble()
Evaluate this immediate as a double-precision float.float
IDImm.toFloat()
Evaluate this immediate as a single-precision float.long
IDImm.toLong()
Evaluate this immediate as a signed long primitive.long
IDImm.toLong
(boolean treatSregAsInt) Evaluate this immediate as a signed long primitive.long
IDImm.toUnsignedLong()
Evaluate this immediate as an unsigned long.