发个Flexlm filter 辅助程序, 下面是代码,原理就不说了,很多地方都介绍过了。
感谢 Nolan Blender和Hex-Rays作者。
/*****************************************
Dump the filter_gen matrix of flexlm
code by Phydora
I am not able to use the idc script, so I have to use my way to get the filter_gen. I'm a Fresh man.
tools: IDA disassembler and Hex-Rays decompiler
借用他人的话说,Hex-Rays这工具很强大,很邪恶!
Use IDA disassmble the program that use flexlm,
search the instruction " push 4Ah ", usually there are only little.
you will find out it quickly, the address of the flexlm filter is above the instruction "push 4Ah"
for example :
push offset sub_XXXXXXXX //filter
push 4Ah
when you have the address of the filter,you cane use the Hex-Rays to decompiler it.
and chang some names of the variable,
static int num3 = 3;
static int bit0 = 0x2801;
static int num10 = 10;
static int num2 = 2;
static int num9 = 9;
static int num1 = 1;
static int num15 = 15;
static int num0 = 0;
static int num16 = 16;
static int num4 = 4;
static int num6 = 6;
static int num20 = 20;
static int num13 = 13;
static int num5 = 5;
static int num8 = 8;
static int num12 = 12;
static int bit1 = 0x102;
static int num7 = 7;
static int bit5 = 0xa720;
static int bit3 = 0x3108;
static int num18 = 18;
static int bit6 = 0x740;
static int bit7 = 0xcc80;
static int num17 = 17;
static int bit2 = 0x2704;
static int num14 = 14;
static int bit4 = 0x3210;
static int num11 = 11;
static int num19 = 19;