private static String getPackageBaseAddr(WinNT.HANDLE processID,int packageBaseAdd){
// [[[0x13890D0]+0xC58+0x4]+1] MAIN
// [[[0x13890D4]+0xC58+4]+1] SECOND
String firstAddr=JnaProcess.readMemoryFromProcessAll(processID,packageBaseAdd,4);
int firstAddrAfterOffset=Integer.parseInt(firstAddr,16)+0xC58+4;
String secondAddr=JnaProcess.readMemoryFromProcessAll(processID,firstAddrAfterOffset,4);
int secondAddrAfterOffset=Integer.parseInt(secondAddr,16)+1;
return String.format("%08x", secondAddrAfterOffset);
}
public static String getMainFirstPackageAddr(WinNT.HANDLE processID){
return getPackageBaseAddr(processID,PLAYER_BASEADDR_MAINPACKAGE);
}
public static String getSecondFirstPackageAddr(WinNT.HANDLE processID){
return getPackageBaseAddr(processID,SUB_PLAYER_BASEADDR_SECONDPACKAGE);
}
public static String getCurrentMa
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20