# Class: com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.EVarCopyFinder

Retrieve variables underlying variable copies generated after an SSA pass.

## Constructor: EVarCopyFinder
- parameter: `ctx`, type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.IERoutineContext`
- parameter: `entry`, type: `com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry`
- parameter: `filters`, type: `java.util.Collection<java.lang.Integer>`
- parameter: `irOffset`, type: `java.lang.Long`

Description: 
parameter: ctx: 
parameter: entry: 
parameter: filters: **ordered** set of variables to check against \(the order matters, refer [IDFA](IDFA)\)
parameter: irOffset: 

## Method: getIRForSlicedReg
- parameter: `createIfNotFound`, type: `boolean`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IEGeneric`


## Method: getVarForRegPair
- parameter: `createIfNotFound`, type: `boolean`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IEVar`


## Method: getVarToSubstitute
- parameter: `index`, type: `int`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IEVar`


## Method: getVarsToSubstitute
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IEVar[]`


## Method: wasCreated
- return type: `boolean`


## Static Method: retrieveVariableForRegister
- parameter: `ctx`, type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.IERoutineContext`
- parameter: `exp`, type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IEGeneric`
- parameter: `filters`, type: `java.util.Collection<java.lang.Integer>`
- parameter: `createIfNotFound`, type: `boolean`
- parameter: `irOffset`, type: `java.lang.Long`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IEGeneric`


