/* Metro module 4737; source: unknown; dependencies: [4734, 4731] */ function _fun40878(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#40878, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:6, offset: 0x0110e7cc, size: 506 bytes, params: 8, frame: 16 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_17 = 4 + 'ICC_PROFILE\x00'.length + 1; exports.default = {isJpegFile: isJpegFile, findJpegOffsets: findJpegOffsets}; } function isSOF0Marker(a0, a1) { // fn#40879, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:1675, offset: 0x0110e9c6, size: 30 bytes, params: 3, frame: 11 return a0.getUint16(a1) === env0_19; } function isSOF2Marker(a0, a1) { // fn#40880, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:1728, offset: 0x0110e9e4, size: 30 bytes, params: 3, frame: 11 return a0.getUint16(a1) === env0_20; } function isApp2ICCMarker(a0, a1) { // fn#40881, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:1781, offset: 0x0110ea02, size: 93 bytes, params: 3, frame: 18 return a0.getUint16(a1) === env0_27 && (require(4731) /* metro dependency 4731 */).getStringFromDataView(a0, a1 + env0_6, env0_15.length) === env0_15; } function isApp2MPFMarker(a0, a1) { // fn#40882, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:1896, offset: 0x0110ea5f, size: 93 bytes, params: 3, frame: 18 return a0.getUint16(a1) === env0_27 && (require(4731) /* metro dependency 4731 */).getStringFromDataView(a0, a1 + env0_6, env0_18.length) === env0_18; } function isApp0JfifMarker(a0, a1) { // fn#40883, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:2011, offset: 0x0110eabc, size: 125 bytes, params: 3, frame: 18 var value; const length = env0_32.length; let r0 = a0.getUint16(a1) === env0_25 && (require(4731) /* metro dependency 4731 */).getStringFromDataView(a0, a1 + env0_6, length) === env0_32; if (r0) { value = a0.getUint8(a1 + env0_6 + length); value = value === 0; r0 = value; } return r0; } function isApp1ExifMarker(a0, a1) { // fn#40884, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:2150, offset: 0x0110eb39, size: 125 bytes, params: 3, frame: 18 var value; const length = env0_33.length; let r0 = a0.getUint16(a1) === env0_26 && (require(4731) /* metro dependency 4731 */).getStringFromDataView(a0, a1 + env0_6, length) === env0_33; if (r0) { value = a0.getUint8(a1 + env0_6 + length); value = value === 0; r0 = value; } return r0; } function isApp1XmpMarker(a0, a1) { // fn#40885, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:2289, offset: 0x0110ebb6, size: 93 bytes, params: 3, frame: 18 var r0; var length; let value = a0.getUint16(a1); value = value === env0_26; if (value) { length = env0_34.length; value = require(4731) /* metro dependency 4731 */; value = value.getStringFromDataView(a0, a1 + env0_6, length); value = value === env0_34; r0 = value; } else { r0 = value; } return r0; } function isApp1ExtendedXmpMarker(a0, a1) { // fn#40886, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:2447, offset: 0x0110ec13, size: 93 bytes, params: 3, frame: 18 var r0; var length; let value = a0.getUint16(a1); value = value === env0_26; if (value) { length = env0_35.length; value = require(4731) /* metro dependency 4731 */; value = value.getStringFromDataView(a0, a1 + env0_6, length); value = value === env0_35; r0 = value; } else { r0 = value; } return r0; } function getXmpChunkDetails(a0, a1) { // fn#40887, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:2621, offset: 0x0110ec70, size: 37 bytes, params: 3, frame: 3 return {dataOffset: a0 + env0_11, length: a1 - 31}; } function getExtendedXmpChunkDetails(a0, a1) { // fn#40888, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:2689, offset: 0x0110ec95, size: 37 bytes, params: 3, frame: 3 return {dataOffset: a0 + env0_12, length: a1 - 77}; } function isApp13PhotoshopMarker(a0, a1) { // fn#40889, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:2765, offset: 0x0110ecba, size: 125 bytes, params: 3, frame: 18 var value; const length = env0_36.length; let r0 = a0.getUint16(a1) === env0_28 && (require(4731) /* metro dependency 4731 */).getStringFromDataView(a0, a1 + env0_6, length) === env0_36; if (r0) { value = a0.getUint8(a1 + env0_6 + length); value = value === 0; r0 = value; } return r0; } function isAppMarker(a0, a1) { // fn#40890, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:2910, offset: 0x0110ed37, size: 118 bytes, params: 3, frame: 12 const uint16 = a0.getUint16(a1); let r0 = uint16 >= env0_25 && uint16 <= env0_29; r0 = !r0 ? uint16 === env0_30 : r0; r0 = !r0 ? uint16 === env0_19 : r0; r0 = !r0 ? uint16 === env0_20 : r0; r0 = !r0 ? uint16 === env0_21 : r0; r0 = !r0 ? uint16 === env0_22 : r0; r0 = !r0 ? uint16 === env0_23 : r0; r0 = !r0 ? uint16 === env0_24 : r0; return r0; } function isFillByte(a0, a1) { // fn#40891, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:3024, offset: 0x0110edad, size: 30 bytes, params: 3, frame: 11 return a0.getUint16(a1) === env0_31; } function isJpegFile(a0) { // fn#40892, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:110, offset: 0x0110edcb, size: 58 bytes, params: 2, frame: 12 let value = !!a0; let r0 = a0 ? a0.byteLength >= env0_3 : value; if (r0) { value = a0.getUint16(0); value = value === env0_4; r0 = value; } return r0; } function findJpegOffsets(a0) { // fn#40893, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4915:197, offset: 0x0110ee05, size: 1553 bytes, params: 2, frame: 73 var r16; var r17; var r18; var r19; var r20; var r21; var r22; var r23; var r24; var r59; var r46; var r47; var r48; var r49; var r50; var r51; var r52; var r53; var r54; var r55; var r31; var r32; var r33; var r34; var r35; var r36; var r37; var r38; var r39; var r1; var r2; var r3; var r4; var r5; var r6; var r7; var r8; var r10; var USE_FILE; var USE_JFIF; var USE_EXIF; var USE_XMP; var USE_IPTC; var USE_ICC; var USE_MPF; var value4; var getUint16; var value5; var value6; var value7; var value8; var value9; var value10; var getUint8; var value11; var value12; var object; var push; var value13; var value14; var value15; var value16; var value17; var value18; var value19; var value20; var value21; var value22; var value23; var value24; var value25; var value26; const binding = env0_5; const value2 = binding + env0_6; let byteLength = a0.byteLength; const value3 = undefined; if (value2 + 5 <= byteLength) { r16 = binding; r17 = value3; r18 = value3; r19 = value3; r20 = value3; r21 = value3; r22 = value3; r23 = value3; r24 = value3; reducibleLoop1: while (true) { USE_FILE = (importDefault(4734) /* metro dependency 4734 */).USE_FILE; if (USE_FILE) { reducibleJoin3: while (true) { if (isSOF0Marker(a0, r16)) { getUint16 = a0.getUint16; value23 = Reflect.apply(getUint16, a0, [r16 + env0_7]); value24 = r16 + env0_7; r47 = r17; r48 = r18; r49 = r19; r50 = r20; r51 = r21; r52 = r22; r53 = r23; r54 = value24; r55 = value23; value25 = r16 + (env0_7 + r55); r31 = value25; r32 = r47; r33 = r48; r34 = r49; r35 = r50; r36 = r51; r37 = r52; r38 = r53; r39 = r54; value26 = r31 + env0_6; byteLength = a0.byteLength; if (value26 + 5 <= byteLength) { r16 = r31; r17 = r32; r18 = r33; r19 = r34; r20 = r35; r21 = r36; r22 = r37; r23 = r38; r24 = r39; continue reducibleLoop1; } r1 = r32; r2 = r33; r3 = r34; r4 = r35; r5 = r36; r6 = r37; r7 = r39; r8 = r38; r10 = r31; break reducibleLoop1; } break reducibleJoin3; } } USE_FILE = (importDefault(4734) /* metro dependency 4734 */).USE_FILE; if (USE_FILE) { reducibleJoin5: while (true) { if (isSOF2Marker(a0, r16)) { getUint16 = a0.getUint16; value21 = Reflect.apply(getUint16, a0, [r16 + env0_7]); value22 = r16 + env0_7; r47 = r17; r48 = r18; r49 = r19; r50 = r20; r51 = r21; r52 = r22; r53 = value22; r54 = r24; r55 = value21; value25 = r16 + (env0_7 + r55); r31 = value25; r32 = r47; r33 = r48; r34 = r49; r35 = r50; r36 = r51; r37 = r52; r38 = r53; r39 = r54; value26 = r31 + env0_6; byteLength = a0.byteLength; if (value26 + 5 <= byteLength) { r16 = r31; r17 = r32; r18 = r33; r19 = r34; r20 = r35; r21 = r36; r22 = r37; r23 = r38; r24 = r39; continue reducibleLoop1; } r1 = r32; r2 = r33; r3 = r34; r4 = r35; r5 = r36; r6 = r37; r7 = r39; r8 = r38; r10 = r31; break reducibleLoop1; } break reducibleJoin5; } } USE_JFIF = (importDefault(4734) /* metro dependency 4734 */).USE_JFIF; if (USE_JFIF) { reducibleJoin7: while (true) { if (isApp0JfifMarker(a0, r16)) { getUint16 = a0.getUint16; value19 = Reflect.apply(getUint16, a0, [r16 + env0_7]); value20 = r16 + env0_8; r47 = r17; r48 = r18; r49 = r19; r50 = r20; r51 = r21; r52 = value20; r53 = r23; r54 = r24; r55 = value19; value25 = r16 + (env0_7 + r55); r31 = value25; r32 = r47; r33 = r48; r34 = r49; r35 = r50; r36 = r51; r37 = r52; r38 = r53; r39 = r54; value26 = r31 + env0_6; byteLength = a0.byteLength; if (value26 + 5 <= byteLength) { r16 = r31; r17 = r32; r18 = r33; r19 = r34; r20 = r35; r21 = r36; r22 = r37; r23 = r38; r24 = r39; continue reducibleLoop1; } r1 = r32; r2 = r33; r3 = r34; r4 = r35; r5 = r36; r6 = r37; r7 = r39; r8 = r38; r10 = r31; break reducibleLoop1; } break reducibleJoin7; } } USE_EXIF = (importDefault(4734) /* metro dependency 4734 */).USE_EXIF; if (USE_EXIF) { reducibleJoin9: while (true) { if (isApp1ExifMarker(a0, r16)) { getUint16 = a0.getUint16; value17 = Reflect.apply(getUint16, a0, [r16 + env0_7]); value18 = r16 + env0_9; r47 = r17; r48 = r18; r49 = r19; r50 = r20; r51 = value18; r52 = r22; r53 = r23; r54 = r24; r55 = value17; value25 = r16 + (env0_7 + r55); r31 = value25; r32 = r47; r33 = r48; r34 = r49; r35 = r50; r36 = r51; r37 = r52; r38 = r53; r39 = r54; value26 = r31 + env0_6; byteLength = a0.byteLength; if (value26 + 5 <= byteLength) { r16 = r31; r17 = r32; r18 = r33; r19 = r34; r20 = r35; r21 = r36; r22 = r37; r23 = r38; r24 = r39; continue reducibleLoop1; } r1 = r32; r2 = r33; r3 = r34; r4 = r35; r5 = r36; r6 = r37; r7 = r39; r8 = r38; r10 = r31; break reducibleLoop1; } break reducibleJoin9; } } USE_XMP = (importDefault(4734) /* metro dependency 4734 */).USE_XMP; if (USE_XMP) { reducibleJoin11: while (true) { if (isApp1XmpMarker(a0, r16)) { reducibleJoin33: while (true) { if (r19) { r46 = r19; break reducibleJoin33; } r46 = []; break reducibleJoin33; } getUint16 = a0.getUint16; value16 = Reflect.apply(getUint16, a0, [r16 + env0_7]); push = r46.push; Reflect.apply(push, r46, [getXmpChunkDetails(r16, value16)]); r47 = r17; r48 = r18; r49 = r46; r50 = r20; r51 = r21; r52 = r22; r53 = r23; r54 = r24; r55 = value16; value25 = r16 + (env0_7 + r55); r31 = value25; r32 = r47; r33 = r48; r34 = r49; r35 = r50; r36 = r51; r37 = r52; r38 = r53; r39 = r54; value26 = r31 + env0_6; byteLength = a0.byteLength; if (value26 + 5 <= byteLength) { r16 = r31; r17 = r32; r18 = r33; r19 = r34; r20 = r35; r21 = r36; r22 = r37; r23 = r38; r24 = r39; continue reducibleLoop1; } r1 = r32; r2 = r33; r3 = r34; r4 = r35; r5 = r36; r6 = r37; r7 = r39; r8 = r38; r10 = r31; break reducibleLoop1; } break reducibleJoin11; } } USE_XMP = (importDefault(4734) /* metro dependency 4734 */).USE_XMP; if (USE_XMP) { reducibleJoin13: while (true) { if (isApp1ExtendedXmpMarker(a0, r16)) { reducibleJoin30: while (true) { if (r19) { r46 = r19; break reducibleJoin30; } r46 = []; break reducibleJoin30; } getUint16 = a0.getUint16; value15 = Reflect.apply(getUint16, a0, [r16 + env0_7]); push = r46.push; Reflect.apply(push, r46, [getExtendedXmpChunkDetails(r16, value15)]); r47 = r17; r48 = r18; r49 = r46; r50 = r20; r51 = r21; r52 = r22; r53 = r23; r54 = r24; r55 = value15; value25 = r16 + (env0_7 + r55); r31 = value25; r32 = r47; r33 = r48; r34 = r49; r35 = r50; r36 = r51; r37 = r52; r38 = r53; r39 = r54; value26 = r31 + env0_6; byteLength = a0.byteLength; if (value26 + 5 <= byteLength) { r16 = r31; r17 = r32; r18 = r33; r19 = r34; r20 = r35; r21 = r36; r22 = r37; r23 = r38; r24 = r39; continue reducibleLoop1; } r1 = r32; r2 = r33; r3 = r34; r4 = r35; r5 = r36; r6 = r37; r7 = r39; r8 = r38; r10 = r31; break reducibleLoop1; } break reducibleJoin13; } } USE_IPTC = (importDefault(4734) /* metro dependency 4734 */).USE_IPTC; if (USE_IPTC) { reducibleJoin15: while (true) { if (isApp13PhotoshopMarker(a0, r16)) { getUint16 = a0.getUint16; value13 = Reflect.apply(getUint16, a0, [r16 + env0_7]); value14 = r16 + env0_10; r47 = r17; r48 = r18; r49 = r19; r50 = value14; r51 = r21; r52 = r22; r53 = r23; r54 = r24; r55 = value13; value25 = r16 + (env0_7 + r55); r31 = value25; r32 = r47; r33 = r48; r34 = r49; r35 = r50; r36 = r51; r37 = r52; r38 = r53; r39 = r54; value26 = r31 + env0_6; byteLength = a0.byteLength; if (value26 + 5 <= byteLength) { r16 = r31; r17 = r32; r18 = r33; r19 = r34; r20 = r35; r21 = r36; r22 = r37; r23 = r38; r24 = r39; continue reducibleLoop1; } r1 = r32; r2 = r33; r3 = r34; r4 = r35; r5 = r36; r6 = r37; r7 = r39; r8 = r38; r10 = r31; break reducibleLoop1; } break reducibleJoin15; } } USE_ICC = (importDefault(4734) /* metro dependency 4734 */).USE_ICC; if (USE_ICC) { reducibleJoin17: while (true) { if (isApp2ICCMarker(a0, r16)) { getUint16 = a0.getUint16; value8 = Reflect.apply(getUint16, a0, [r16 + env0_7]); value9 = r16 + env0_13; value10 = value8 - 16; getUint8 = a0.getUint8; value11 = Reflect.apply(getUint8, a0, [r16 + env0_16]); getUint8 = a0.getUint8; value12 = Reflect.apply(getUint8, a0, [r16 + env0_17]); reducibleJoin26: while (true) { if (r18) { r59 = r18; break reducibleJoin26; } r59 = []; break reducibleJoin26; } push = r59.push; Reflect.apply(push, r59, [{offset: value9, length: value10, chunkNumber: value11, chunksTotal: value12}]); r47 = r17; r48 = r59; r49 = r19; r50 = r20; r51 = r21; r52 = r22; r53 = r23; r54 = r24; r55 = value8; value25 = r16 + (env0_7 + r55); r31 = value25; r32 = r47; r33 = r48; r34 = r49; r35 = r50; r36 = r51; r37 = r52; r38 = r53; r39 = r54; value26 = r31 + env0_6; byteLength = a0.byteLength; if (value26 + 5 <= byteLength) { r16 = r31; r17 = r32; r18 = r33; r19 = r34; r20 = r35; r21 = r36; r22 = r37; r23 = r38; r24 = r39; continue reducibleLoop1; } r1 = r32; r2 = r33; r3 = r34; r4 = r35; r5 = r36; r6 = r37; r7 = r39; r8 = r38; r10 = r31; break reducibleLoop1; } break reducibleJoin17; } } USE_MPF = (importDefault(4734) /* metro dependency 4734 */).USE_MPF; if (USE_MPF) { reducibleJoin19: while (true) { if (isApp2MPFMarker(a0, r16)) { getUint16 = a0.getUint16; value6 = Reflect.apply(getUint16, a0, [r16 + env0_7]); value7 = r16 + env0_14; r47 = value7; r48 = r18; r49 = r19; r50 = r20; r51 = r21; r52 = r22; r53 = r23; r54 = r24; r55 = value6; value25 = r16 + (env0_7 + r55); r31 = value25; r32 = r47; r33 = r48; r34 = r49; r35 = r50; r36 = r51; r37 = r52; r38 = r53; r39 = r54; value26 = r31 + env0_6; byteLength = a0.byteLength; if (value26 + 5 <= byteLength) { r16 = r31; r17 = r32; r18 = r33; r19 = r34; r20 = r35; r21 = r36; r22 = r37; r23 = r38; r24 = r39; continue reducibleLoop1; } r1 = r32; r2 = r33; r3 = r34; r4 = r35; r5 = r36; r6 = r37; r7 = r39; r8 = r38; r10 = r31; break reducibleLoop1; } break reducibleJoin19; } } if (isAppMarker(a0, r16)) { getUint16 = a0.getUint16; value5 = Reflect.apply(getUint16, a0, [r16 + env0_7]); r47 = r17; r48 = r18; r49 = r19; r50 = r20; r51 = r21; r52 = r22; r53 = r23; r54 = r24; r55 = value5; value25 = r16 + (env0_7 + r55); r31 = value25; r32 = r47; r33 = r48; r34 = r49; r35 = r50; r36 = r51; r37 = r52; r38 = r53; r39 = r54; } else { reducibleJoin39: while (true) { reducibleJoin41: while (true) { if (isFillByte(a0, r16)) { value4 = typeof r16 === 'bigint' ? r16 + 1n : +r16 + 1; r31 = value4; r32 = r17; r33 = r18; r34 = r19; r35 = r20; r36 = r21; r37 = r22; r38 = r23; r39 = r24; break reducibleJoin39; } r1 = r17; r2 = r18; r3 = r19; r4 = r20; r5 = r21; r6 = r22; r7 = r24; r8 = r23; r10 = r16; break reducibleLoop1; } object.fileDataOffset = r7; object.jfifDataOffset = r6; object.tiffHeaderOffset = r5; object.iptcDataOffset = r4; object.xmpChunks = r3; object.iccChunks = r2; object.mpfDataOffset = r1; return object; } } value26 = r31 + env0_6; byteLength = a0.byteLength; if (value26 + 5 <= byteLength) { r16 = r31; r17 = r32; r18 = r33; r19 = r34; r20 = r35; r21 = r36; r22 = r37; r23 = r38; r24 = r39; continue reducibleLoop1; } r1 = r32; r2 = r33; r3 = r34; r4 = r35; r5 = r36; r6 = r37; r7 = r39; r8 = r38; r10 = r31; break reducibleLoop1; } } else { r1 = value3; r2 = value3; r3 = value3; r4 = value3; r5 = value3; r6 = value3; r7 = value3; r8 = value3; r10 = binding; } r7 = !r7 ? r8 : r7; return {hasAppMarkers: r10 > env0_5, fileDataOffset: r7, jfifDataOffset: r6, tiffHeaderOffset: r5, iptcDataOffset: r4, xmpChunks: r3, iccChunks: r2, mpfDataOffset: r1}; }