163 lines
5.7 KiB
JavaScript
163 lines
5.7 KiB
JavaScript
// Module ID: 4791
|
|
// Function ID: 41672
|
|
// Name: getImageNumberValue
|
|
// Dependencies: [4751, 4766, 4767, 4763, 4746]
|
|
|
|
// Module 4791 (getImageNumberValue)
|
|
const require = arg1;
|
|
const module = arg2;
|
|
const dependencyMap = arg6;
|
|
function getImageNumberValue(value, arg1, typeSize, arg3) {
|
|
if (arg3 === module(4751).LITTLE_ENDIAN) {
|
|
let num7 = 0;
|
|
let num8 = 0;
|
|
let num9 = 0;
|
|
if (0 < typeSize) {
|
|
do {
|
|
num7 = num7 + (value[arg1 + num8] << 8 * num8);
|
|
num8 = num8 + 1;
|
|
num9 = num7;
|
|
} while (num8 < typeSize);
|
|
}
|
|
return num9;
|
|
} else {
|
|
let num3 = 0;
|
|
let num4 = 0;
|
|
let num5 = 0;
|
|
if (0 < typeSize) {
|
|
do {
|
|
num3 = num3 + (value[arg1 + num4] << 8 * (typeSize - 1 - num4));
|
|
num4 = num4 + 1;
|
|
num5 = num3;
|
|
} while (num4 < typeSize);
|
|
}
|
|
return num5;
|
|
}
|
|
}
|
|
function getImageFlags(arg0) {
|
|
const items = [arg0 >> 31 & 1, arg0 >> 30 & 1, arg0 >> 29 & 1];
|
|
const items1 = [];
|
|
if (items[0]) {
|
|
items1.push("Dependent Parent Image");
|
|
}
|
|
if (items[1]) {
|
|
items1.push("Dependent Child Image");
|
|
}
|
|
if (items[2]) {
|
|
items1.push("Representative Image");
|
|
}
|
|
const obj = { value: items, description: items1.join(", ") || "None" };
|
|
return obj;
|
|
}
|
|
function getImageFormat(arg0) {
|
|
const obj = { value: arg0 >> 24 & 7 };
|
|
let str = "Unknown";
|
|
if (0 === (arg0 >> 24 & 7)) {
|
|
str = "JPEG";
|
|
}
|
|
obj.description = str;
|
|
return obj;
|
|
}
|
|
function getImageType(arg0) {
|
|
const value = 16777215 & arg0;
|
|
const description = { 196608: "Baseline MP Primary Image", 65537: "Large Thumbnail (VGA equivalent)", 65538: "Large Thumbnail (Full HD equivalent)", 131073: "Multi-Frame Image (Panorama)", 131074: "Multi-Frame Image (Disparity)", 131075: "Multi-Frame Image (Multi-Angle)", 0: "Undefined" }[value] || "Unknown";
|
|
return { value, description };
|
|
}
|
|
function getImageOffset(arg0, value) {
|
|
let num = 0;
|
|
if (0 !== arg0) {
|
|
value = value.value;
|
|
const result = arg0 * c3;
|
|
num = getImageNumberValue(value, result + 8, module(4763).getTypeSize("LONG"), arg2) + arg3;
|
|
const obj = module(4763);
|
|
}
|
|
return num;
|
|
}
|
|
let c3 = 16;
|
|
arg5.default = {
|
|
read(getUint16, sum1) {
|
|
const byteOrder = module(4751).getByteOrder(getUint16, sum1);
|
|
let obj = module(4751);
|
|
let obj2 = require(4766) /* readTag */;
|
|
const ifd = obj2.readIfd(getUint16, require(4767) /* IFD_TYPE_0TH */.IFD_TYPE_MPF, sum1, require(4766) /* readTag */.get0thIfdOffset(getUint16, sum1, byteOrder), byteOrder, arg2);
|
|
(function addMpfImages(buffer, sum1, ifd, byteOrder) {
|
|
let rounded;
|
|
if (ifd.MPEntry) {
|
|
const items = [];
|
|
const _Math = Math;
|
|
let num = 0;
|
|
if (0 < Math.ceil(ifd.MPEntry.value.length / outer1_3)) {
|
|
do {
|
|
items[num] = {};
|
|
let tmp3 = outer1_4;
|
|
let value = ifd.MPEntry.value;
|
|
let tmp4 = outer1_3;
|
|
let tmp6 = outer1_1;
|
|
let tmp7 = outer1_2;
|
|
let result = num * outer1_3;
|
|
let obj = outer1_1(outer1_2[3]);
|
|
let tmp8 = value;
|
|
let tmp9 = byteOrder;
|
|
let tmp10 = outer1_4(value, result, obj.getTypeSize("LONG"), byteOrder);
|
|
let tmp11 = outer1_5;
|
|
items[num].ImageFlags = outer1_5(tmp10);
|
|
let tmp12 = outer1_6;
|
|
items[num].ImageFormat = outer1_6(tmp10);
|
|
let tmp13 = outer1_7;
|
|
items[num].ImageType = outer1_7(tmp10);
|
|
value = ifd.MPEntry.value;
|
|
let tmp14 = outer1_3;
|
|
let result1 = num * outer1_3;
|
|
let obj1 = outer1_1(outer1_2[3]);
|
|
let tmp16 = value;
|
|
let tmp17 = byteOrder;
|
|
let tmp18 = outer1_4(value, result1 + 4, obj1.getTypeSize("LONG"), byteOrder);
|
|
obj = { value: tmp18, description: "" + tmp18 };
|
|
items[num].ImageSize = obj;
|
|
let tmp19 = outer1_8;
|
|
let tmp20 = num;
|
|
let tmp21 = byteOrder;
|
|
let tmp22 = sum1;
|
|
let tmp23 = outer1_8(num, ifd.MPEntry, byteOrder, sum1);
|
|
obj = { value: tmp23, description: "" + tmp23 };
|
|
items[num].ImageOffset = obj;
|
|
value = ifd.MPEntry.value;
|
|
let tmp24 = outer1_3;
|
|
let result2 = num * outer1_3;
|
|
let obj5 = outer1_1(outer1_2[3]);
|
|
let tmp26 = value;
|
|
let tmp27 = byteOrder;
|
|
let tmp28 = outer1_4(value, result2 + 12, obj5.getTypeSize("SHORT"), byteOrder);
|
|
obj1 = { value: tmp28, description: "" + tmp28 };
|
|
items[num].DependentImage1EntryNumber = obj1;
|
|
let value1 = ifd.MPEntry.value;
|
|
let tmp29 = outer1_3;
|
|
let result3 = num * outer1_3;
|
|
let obj7 = outer1_1(outer1_2[3]);
|
|
let tmp31 = value1;
|
|
let tmp32 = byteOrder;
|
|
let tmp33 = outer1_4(value1, result3 + 14, obj7.getTypeSize("SHORT"), byteOrder);
|
|
let obj2 = { value: tmp33, description: "" + tmp33 };
|
|
items[num].DependentImage2EntryNumber = obj2;
|
|
buffer = buffer.buffer;
|
|
items[num].image = buffer.slice(tmp23, tmp23 + tmp18);
|
|
let tmp34 = outer1_0;
|
|
let obj9 = outer1_0(outer1_2[4]);
|
|
let deferInitResult = obj9.deferInit(items[num], "base64", function() {
|
|
return outer2_0(outer2_2[4]).getBase64Image(this.image);
|
|
});
|
|
num = num + 1;
|
|
let _Math2 = Math;
|
|
let tmp36 = outer1_3;
|
|
rounded = Math.ceil(ifd.MPEntry.value.length / outer1_3);
|
|
} while (num < rounded);
|
|
}
|
|
ifd.Images = items;
|
|
return ifd;
|
|
} else {
|
|
return ifd;
|
|
}
|
|
})(getUint16, sum1, ifd, byteOrder);
|
|
return ifd;
|
|
}
|
|
};
|