mirror of https://github.com/upx/upx.git
Make it easier to change MAX_ELF_HDR consistently
https://github.com/upx/upx/issues/655 new file: MAX_ELF_HDR.cpp new file: stub/src/MAX_ELF_HDR.S new file: stub/src/MAX_ELF_HDR.c modified: p_lx_elf.cpp modified: stub/arm.v4a-linux.elf-fold.h modified: stub/arm64-linux.elf-fold.h modified: stub/src/amd64-linux.elf-fold.S modified: stub/src/amd64-linux.elf-main.c modified: stub/src/amd64-linux.elf-so_main.c modified: stub/src/arm.v4a-linux.elf-fold.S modified: stub/src/arm.v4a-linux.elf-so_fold.S modified: stub/src/arm64-linux.elf-fold.S modified: stub/src/arm64-linux.elf-so_fold.S modified: stub/src/i386-bsd.elf-fold.S modified: stub/src/i386-bsd.elf-main.c modified: stub/src/i386-linux.elf-fold.S modified: stub/src/i386-linux.elf-main.c modified: stub/src/i386-linux.elf-so_main.c modified: stub/src/i386-linux.elf.interp-fold.S modified: stub/src/i386-linux.elf.interp-main.c modified: stub/src/i386-linux.elf.shell-fold.S modified: stub/src/i386-linux.elf.shell-main.c modified: stub/src/i386-openbsd.elf-fold.S modified: stub/src/i386-openbsd.elf-main.c modified: stub/src/mipsel.r3000-linux.elf-fold.S modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
This commit is contained in:
parent
ff7939c1c0
commit
17526d1132
|
@ -46,12 +46,12 @@ b8c35fa2956da17ca505956e9f5017bb5f3a746322647e24ccb8ff28059cafa4 *powerpc-linux.
|
|||
a0950546dc17fca9437219431d8ddb0249ce5b08e899e0c799a87ac982adee70 *powerpc64le-linux.elf/upx-3.95
|
||||
"
|
||||
expected_sha256sums__t110_compress_ucl_nrv2b_3_no_filter="\
|
||||
8a0875589f986f7d4d6fb84319a8cb5528e00d4d3b77c7c1e5dc54cf4ab138e1 *amd64-linux.elf/upx-3.91
|
||||
726c753e684cdb6d26b6ba75cbfcead54d192fa429cf94d812e6292f345713a5 *amd64-linux.elf/upx-3.95
|
||||
c758bf1dd753a6937e4e7baaf259beadd28bf30a8dc7ad3e50c3a7e18508851c *amd64-linux.elf/upx-3.91
|
||||
0b8be48fa28045a846287bfa29484753817c0003683236ede29100711f869675 *amd64-linux.elf/upx-3.95
|
||||
10c249cd10b4384c8540434b324db4017b722836761fee8033839715d2210e8a *amd64-win64.pe/upx-3.95.exe
|
||||
a73cee4670f6d6a343b56ae2a2070f42b2e2dfc0324e921d74d976f30cb351db *arm-linux.elf/upx-3.95
|
||||
22c35590d10fc4ce294982a8b5996e812ce799636f8084e7f411a5c9a1f8795e *arm-wince.pe/upx-3.91.exe
|
||||
af51de29680727fed32bdfd318591004727da65697dcb5a6726138d623ab3726 *arm64-linux.elf/upx-3.95
|
||||
166532bc75cbd9d4399fe9c7abe2e73d8556caf3f4c8a12fcceef3d14aee12c6 *arm64-linux.elf/upx-3.95
|
||||
36138ec275bb492e21387ac23667b6be02c94aee71faff51a94d24999f7072a8 *armeb-linux.elf/upx-3.91
|
||||
fd0772d3f82dfeacc9582d03c2f34edc70c772ae2bdf14eb5956fe8f8be45325 *armeb-linux.elf/upx-3.95
|
||||
74a88d52307429fddbc53a278fdc49837abf57694fe6fbb0ad6524e20c8f947e *i386-dos32.djgpp2.coff/upx-3.91.exe
|
||||
|
@ -66,15 +66,15 @@ be9ec18e6cfa53598535d62dc1d2e6dd1a13c04ca4b80846f532780a1e1ea452 *i386-dos32.djg
|
|||
923f7e02f2772b50924cf204b29d636cfdc80bc3e90be94e46d68e075ad32236 *mipsel-linux.elf/upx-3.95
|
||||
20c89df7960ca52cc50a9c8414edf3897aef61a8cb715f50f5f887891c720961 *powerpc-linux.elf/upx-3.91
|
||||
15a8e03fedf6665b54f2365948572213878485a8d4805593457f17b308833ee8 *powerpc-linux.elf/upx-3.95
|
||||
bd9bd940729b6c3ffade9826ee2f59d049b0f4895fc44ae045cbc27330effc8d *powerpc64le-linux.elf/upx-3.95
|
||||
274426a3c12f5876ea79cef196d34de2c619ea24d08cb0b7e1a8d05988e3aa89 *powerpc64le-linux.elf/upx-3.95
|
||||
"
|
||||
expected_sha256sums__t120_compress_ucl_nrv2d_3_no_filter="\
|
||||
c6d15db2709bf894251248f7b1b3d9293ee757b25191844d124dc0d2841f9b4a *amd64-linux.elf/upx-3.91
|
||||
7e70e99b67139f7f980121cd44c1976712ac391ba3f57c8a3c7cb2908beaf703 *amd64-linux.elf/upx-3.95
|
||||
97c82a8dedd11ad885f185219bfb6699b92eb61d4519fdd24bed743550d059ea *amd64-linux.elf/upx-3.91
|
||||
9ea9b91c4b74c7f59f3540543925828e688cc3c74b1b9009b51d3cddf2917f62 *amd64-linux.elf/upx-3.95
|
||||
9b84f5db6d353eabfe3baecdf1fa052413b6447c2c265ad9fe0a5a1c47da2854 *amd64-win64.pe/upx-3.95.exe
|
||||
b596ab89f057f23eed54a502b04e687b58fea0a6d48f3631ceab8211016bf5ba *arm-linux.elf/upx-3.95
|
||||
6612b9f0e4195ea745d57d016ce6dd5d039c0143c0fff56dd0a4d258015f9699 *arm-wince.pe/upx-3.91.exe
|
||||
27b1eecf7067d3021caeb8b7a189205dc6fb7217370ed7e0be3fff79a2b3e1f3 *arm64-linux.elf/upx-3.95
|
||||
e2b6d733b797df89bcd7a946591a7dd97e86c63cb613691cfbd0551a7ffbd1ed *arm64-linux.elf/upx-3.95
|
||||
f7df3b5047432f49b806f95eb4236a4cbf63b63ef60b0c6ec62b7defd6fc34fe *armeb-linux.elf/upx-3.91
|
||||
4226dc093e23444e5250fd3565fcfc7b6ae654aa64daee9d5a29048d680fbeda *armeb-linux.elf/upx-3.95
|
||||
a9b78c16954759bb694a633e9e4c95ad325c0e17efee402d8efba1045f9b4f5e *i386-dos32.djgpp2.coff/upx-3.91.exe
|
||||
|
@ -89,15 +89,15 @@ db4de6847df3bcd294a6a5e683ff670706ad09ea241c8344612b6527c402e6cf *m68k-atari.tos
|
|||
0580fbdeb73515588500ccbee3886fc0d8c728a55395e04452a88338346855a6 *mipsel-linux.elf/upx-3.95
|
||||
7ff5e0ed2706435ab7cb34120be3bae71ffd06f28cee3e9dc14645dcdf7fdeb7 *powerpc-linux.elf/upx-3.91
|
||||
b2fc10c0c4652b350db67e26d62a1b15fb4f65e49a03c03a32231746726d6097 *powerpc-linux.elf/upx-3.95
|
||||
7f7e05ec5d2e4fe861992c10ae4d52eec8fe7f1d791cdf46a0d09c9414d6f351 *powerpc64le-linux.elf/upx-3.95
|
||||
8616f4aa86a44d6d422d40bd32b887ac52b37ddca2dd54ba714c4dba79e310a5 *powerpc64le-linux.elf/upx-3.95
|
||||
"
|
||||
expected_sha256sums__t130_compress_ucl_nrv2e_3_no_filter="\
|
||||
604aad36449e2fa1338148a92ac423279773c0125c38542b351aba32bb0d74cc *amd64-linux.elf/upx-3.91
|
||||
19134827f132ded6a002a188d4f289d462b0afb5695bb0bd29a66c5f2fbdbcce *amd64-linux.elf/upx-3.95
|
||||
258f14361e537f23c0fb0cbeaab60041e575cb1ea3a468afda502df1cd772ee4 *amd64-linux.elf/upx-3.91
|
||||
77f1399c78ffbd02ea9d22d3eb5a387f2db40cb97c03762e5d0fae77764baa32 *amd64-linux.elf/upx-3.95
|
||||
c61d1957de3ed6dea8d06918fe437b07eb006e46fc8a79754e28b64d72bd1923 *amd64-win64.pe/upx-3.95.exe
|
||||
633a781913fc71103bbbbf62a4702b5c36a9c6a918f32094948d208464b2b305 *arm-linux.elf/upx-3.95
|
||||
99fff7fd265615e50c815187e6cecc75225f97db813ee675e2e302cbb0215a60 *arm-wince.pe/upx-3.91.exe
|
||||
b6b1888e918d2a5f64f86beed717d6a2d90dfabbdb64c1769263b920e84e4650 *arm64-linux.elf/upx-3.95
|
||||
e1f735119f1308b7fd707e4bc0e46910f4032d36fba326bfb1abc34510a057c6 *arm64-linux.elf/upx-3.95
|
||||
160d2c4df09de8cfba100c422e9bf169f83254f5c69bdc1ac6522c61fa5bb8df *armeb-linux.elf/upx-3.91
|
||||
09511363f3c7e1d54ab44ded9d67f9d8092e42cda8ff5a332281d3c61d1d8b61 *armeb-linux.elf/upx-3.95
|
||||
039c5f378921a30f96d1e5cb394ed6b1726fb75949d8abf0eee30e776a2701b2 *i386-dos32.djgpp2.coff/upx-3.91.exe
|
||||
|
@ -112,15 +112,15 @@ ca5d573e168410bb94de34ea49c9512f558146d4f5b09bc246671a935854d597 *mips-linux.elf
|
|||
d6cb03e0b4eb49327222ec18b5c0b6c94889733f1ab4b99d442796df5f840bc8 *mipsel-linux.elf/upx-3.95
|
||||
1aad39de0512325ffe9e7c2fc5321fb068182fe09af15753e3bd2ba1881f7b4c *powerpc-linux.elf/upx-3.91
|
||||
7cd875c30a0d781c4ea4227c5d5c8c22e90a0653382a11c9d80803c0351299ea *powerpc-linux.elf/upx-3.95
|
||||
df703783b8cf43462f49330a96e729a91569a5ddb41d18e8793a57565026783c *powerpc64le-linux.elf/upx-3.95
|
||||
de1cf94734fac72f31d138157630c06ec40e1d3c073c149bae3f53a26ac1e48e *powerpc64le-linux.elf/upx-3.95
|
||||
"
|
||||
expected_sha256sums__t140_compress_lzma_2_no_filter="\
|
||||
384c1d6770b4cce5fe9e8b8eabc26bb1ec87176addb106e6f8f8d10aafe69fa4 *amd64-linux.elf/upx-3.91
|
||||
d03e6e4c65653387381d3fbba5457b13eb49935d987de72c711bce57dbfb554e *amd64-linux.elf/upx-3.95
|
||||
fce5b55adfa6a5ee68ec5a2f41ccf43769ac159248cfa201c76893faef9368ee *amd64-linux.elf/upx-3.91
|
||||
5017d4339ca1eccdada83409534a2bb6df4e38abdae74ae0977d9b76490660f3 *amd64-linux.elf/upx-3.95
|
||||
2e452434de48446341582a16ff5408ebbf382463c2c9fe779e2db070d11f0be3 *amd64-win64.pe/upx-3.95.exe
|
||||
4a0e187393309b44425c14a1279e03bd4e77ecc5d5d2eb079f9114e4db16b730 *arm-linux.elf/upx-3.95
|
||||
bd6fa52a5eac47662323d5f5dd3632c6273f6e4fab9b996f8349102763e14b47 *arm-wince.pe/upx-3.91.exe
|
||||
7512a3553735711516321463ed5da06335a4ee8e185eeb0c648f847bbf8402b8 *arm64-linux.elf/upx-3.95
|
||||
53f43663a547d343cf07096dfc46ba312431e2bba68d1f6c2fc9ec60f62a2b2b *arm64-linux.elf/upx-3.95
|
||||
492ad8c496d55f75852d9988c91dd0c6abe952417740a130b9e016151da244fb *armeb-linux.elf/upx-3.91
|
||||
f280cc5f024e08c64e70405a28ae4a4d521fc0ce417b4b93447ee2dca08c93db *armeb-linux.elf/upx-3.95
|
||||
2b4df508546ce016ffe08172144ebfa5a9f5de7c09e909a6dfea83d8e733869a *i386-dos32.djgpp2.coff/upx-3.91.exe
|
||||
|
@ -135,15 +135,15 @@ b60124db4b248ac473bf5268df5b603eccd644dc412519685de90d3656eb69ae *mips-linux.elf
|
|||
108e5408b9422e38ba44057cb6c8d4397dccc9057e9429deee5e7356f6e8249a *mipsel-linux.elf/upx-3.95
|
||||
26a7458ced53077777c225070e61275b623cce581c235b546061e95ca07acc9b *powerpc-linux.elf/upx-3.91
|
||||
44a4b0907e41a2a1bb9dba1dbf52eb80e32d4330cc7e25878e2098ca1033363f *powerpc-linux.elf/upx-3.95
|
||||
af125ea99fede83099c45c04bcf60f9f766457eb334c5b01aaf703010b00c855 *powerpc64le-linux.elf/upx-3.95
|
||||
6a3d75532be32ae7ced3f4d4bf2e923184b0eb685c9c27275b9b20cc8bcd6584 *powerpc64le-linux.elf/upx-3.95
|
||||
"
|
||||
expected_sha256sums__t150_compress_ucl_2_all_filters="\
|
||||
9d759450d75191ab74c92d4e47d0c2b233e8bb3751eca87255ce9d99ddc6f976 *amd64-linux.elf/upx-3.91
|
||||
551e5258cf38650864f237e72e0a73ea7c76233f9f5e5053c3c3ce27c56c1791 *amd64-linux.elf/upx-3.95
|
||||
dae5d2033a3b45fff55db752bc35c03edf4a89c0e16c01e5ae15eb6b8990fbf5 *amd64-linux.elf/upx-3.91
|
||||
d6f1746ce42182b5022eae618113793bdfb50e5e2d380b3a580bfa3ef6abe3b6 *amd64-linux.elf/upx-3.95
|
||||
ad15b341d20307332f2350a2645a450faedad76006e035c895e16b04cd3f4f01 *amd64-win64.pe/upx-3.95.exe
|
||||
3cf48c78f071783d4cd2d1d41ea230be5417273dacef9ede72ce6267422d3079 *arm-linux.elf/upx-3.95
|
||||
15dbf7ed4608d9eb0859a07d70eae0ddb1cb17d01a8cca719d85c480a6bfccba *arm-wince.pe/upx-3.91.exe
|
||||
625d2545c2aa79f90cf1e68574e0e064e9bd0889c03ab5b0ab848d1905b4c4d4 *arm64-linux.elf/upx-3.95
|
||||
2b50001d0b1a099175ae744cff454a404084fcaebbc869bfdcf7b79d1d7fddee *arm64-linux.elf/upx-3.95
|
||||
f83dfccd4ec2cb991569ebc07b9a6121317d24ec30b3e921b6684265adaa74d4 *armeb-linux.elf/upx-3.91
|
||||
5f95b344159098a2ef2d903fd45550ee6effa8ffbbde0486a170b4972aa93e97 *armeb-linux.elf/upx-3.95
|
||||
5ec8168062b88fb09488e90db7db2756f1b5260a88a67bbfcd9f27a91caf5b11 *i386-dos32.djgpp2.coff/upx-3.91.exe
|
||||
|
@ -158,15 +158,15 @@ bcca9e59aecb14199eed5e0298d6d2ef415329c246fd993bf95747c5ec971224 *mipsel-linux.e
|
|||
865f43eeb035767a3596c87ad37f7c3d06f75203faffe70e438d4d72fadaefc7 *mipsel-linux.elf/upx-3.95
|
||||
07b40963afdde22d97ef8643793cb9faae7fd3626b2de87191104dfe3b597306 *powerpc-linux.elf/upx-3.91
|
||||
113ed2e2b17219e1465fe9a9d9563cd1e1bcc5d8381fd10fd59b7d79186e8388 *powerpc-linux.elf/upx-3.95
|
||||
7b89d451bba6816d1ba5d5ec912345d20ec9c511efee1cc78690351df578db2e *powerpc64le-linux.elf/upx-3.95
|
||||
d4702a685277122e09319cdc7a8b5e1f8edf5a246725e1d2f38029391357e08a *powerpc64le-linux.elf/upx-3.95
|
||||
"
|
||||
expected_sha256sums__t160_compress_all_methods_1_no_filter="\
|
||||
ef9cd723d29d6c867e0ee4bfb01052dda57a2af0f52319c855153f1949307e27 *amd64-linux.elf/upx-3.91
|
||||
5bbbcbf741c1d0b3d72938624b3f611764f4a6ed6a5df0746818db9582a82ef7 *amd64-linux.elf/upx-3.95
|
||||
016db76d5e8c867adeb06b0ae657a639ffad3124a00ab236a554094600d85318 *amd64-linux.elf/upx-3.91
|
||||
4b1bdd39540f7aaa9af936ed9d6437ad1935545b1002f88fcf685d3f7e2d1bb3 *amd64-linux.elf/upx-3.95
|
||||
d8c5e63e38fa76628fa0b7382bac038b3d490afa0b66b85ab2f3c12f362a81e9 *amd64-win64.pe/upx-3.95.exe
|
||||
2320fbe779ae60a4fdfa2ef4d61f7cf4eadb77c54382f93d2245e7d7285e931c *arm-linux.elf/upx-3.95
|
||||
79fac525c9020641c98faab36ce50cc7b244cf9d47f53b892294807c2a5c5499 *arm-wince.pe/upx-3.91.exe
|
||||
e2b8e912f09fd20f5b02fdd1876e4b5a0561881747d2bb5dfd35c0356577d27c *arm64-linux.elf/upx-3.95
|
||||
a2a18886bfd7d52dfe1514e27a65c2fcf9e2c5b94325372c52f659259d3cc08d *arm64-linux.elf/upx-3.95
|
||||
e0cd92345e1a7ef38716bca06c32deaf1c1e8f281f6b74acdbae75d37a10e983 *armeb-linux.elf/upx-3.91
|
||||
9dba8814b1d8a4117d28dc78b1a49fe0c6b3c6bab4f86244e76733837963a755 *armeb-linux.elf/upx-3.95
|
||||
a518753d85e0b86047454ee0670faa074e7a1202757331266518a2db3a453ceb *i386-dos32.djgpp2.coff/upx-3.91.exe
|
||||
|
@ -181,15 +181,15 @@ fa611285da63c3ca078deec6d3622b231837884a3f580f35986992626f68d133 *i386-win32.pe/
|
|||
cf0d7a5c5ff8eb3a28147d9871d0d606ae81b267022fe32979ae7fbf47d4ab73 *mipsel-linux.elf/upx-3.95
|
||||
4e13eeebe10f926eab800c74c3199464e04f809a8ce473269965dd12b271faa0 *powerpc-linux.elf/upx-3.91
|
||||
29d4e94554572b0f7f293c08765551f7dc8065256e1b1f51829f716005ddf997 *powerpc-linux.elf/upx-3.95
|
||||
cf5af7bb401c8ff205d295028c4c92775922f76a79db1ac7b14226238cb520a7 *powerpc64le-linux.elf/upx-3.95
|
||||
ee521fa100732fa568f37e23598effcfcdbaf435486b4dfb36d031da9f943cad *powerpc64le-linux.elf/upx-3.95
|
||||
"
|
||||
expected_sha256sums__t170_compress_all_methods_no_lzma_5_no_filter="\
|
||||
0ea0a990a5e81c7baa28aa2e540c7e7e7ece8a39f05e967e8c34ef95bf129e60 *amd64-linux.elf/upx-3.91
|
||||
3abee6e9e03707750631def02c369d3ac7c08918eeba80d37c6d3f93f40c0bef *amd64-linux.elf/upx-3.95
|
||||
3b4419c4ae556a22d084118b9d3f9f1862d6f1a99e6ef7cf082843c5c4fdcae7 *amd64-linux.elf/upx-3.91
|
||||
83d17f34690d6cfdf22040dc76f79cef8f01ef50d2779f1176cbe30e96f5432e *amd64-linux.elf/upx-3.95
|
||||
5fef75b0d5934ad148310cb21837cb910572a6c71c9c6ea4c477cfeb42891ce1 *amd64-win64.pe/upx-3.95.exe
|
||||
6a033ccb4c5b735ac48af01bb2a651bc21a493701be6a579be4b8baf8905121a *arm-linux.elf/upx-3.95
|
||||
7f14beec284b7d92726ed753e71a2ad1f47c43e1c05d7a5e70b6fbc649d39e03 *arm-wince.pe/upx-3.91.exe
|
||||
add2eb2a6318e046363f0eb6f0026b51c2cdf843800f4e24c7cd9063684f05be *arm64-linux.elf/upx-3.95
|
||||
324ba3514cea855a104776ca5a3d28c4af05589758827d0686e35c1652a8cd19 *arm64-linux.elf/upx-3.95
|
||||
37c42c6baf75d78e3935ade5630d9e0b6a77e0cc747f6acb833803bce3e381b4 *armeb-linux.elf/upx-3.91
|
||||
b4e5f689507efa360f6c5a2bc79e898d42b1d3c9574bd136f96dbc93e78c4840 *armeb-linux.elf/upx-3.95
|
||||
d72a3534852d8620a6961faefd2fba3f01f02c3f9c5fdae4f15c5b98ef3ee9e0 *i386-dos32.djgpp2.coff/upx-3.91.exe
|
||||
|
@ -204,6 +204,6 @@ e6d04cdbfdd6a56fe1c40ec78f5544a5a07e102e0f87290c08179df3816b182b *mipsel-linux.e
|
|||
b5c1e56b80b9e9c2d336e6528e2b3d00ec12a6ff73dafacbd5e7ab8038493d1a *mipsel-linux.elf/upx-3.95
|
||||
28e597bb3d3311cfe830f2ced3b2e3eba8f3ddf7e426d2373d55e67b870ff6f7 *powerpc-linux.elf/upx-3.91
|
||||
9b0795f8e991f2f594af4207c54c7b329c7bd5ddac49c5fcb8150394f0080e5d *powerpc-linux.elf/upx-3.95
|
||||
4d06bbb5871a2ae4eca105730596059f721cdd5cb5002aea07faca2ad23a088f *powerpc64le-linux.elf/upx-3.95
|
||||
571fba39eadfce3455e1d3c074d91b87b11e35f180eccbdb5cc0a9548e58c2d5 *powerpc64le-linux.elf/upx-3.95
|
||||
"
|
||||
########## end .sha256sums.recreate
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
static unsigned const MAX_ELF_HDR_32(512);
|
||||
static unsigned const MAX_ELF_HDR_64(1024);
|
|
@ -52,8 +52,7 @@
|
|||
#define PT_GNU_RELRO32 Elf32_Phdr::PT_GNU_RELRO
|
||||
#define PT_GNU_RELRO64 Elf64_Phdr::PT_GNU_RELRO
|
||||
|
||||
#define MAX_ELF_HDR_32 (2*512)
|
||||
#define MAX_ELF_HDR_64 (2*1024)
|
||||
#include "MAX_ELF_HDR.cpp"
|
||||
|
||||
//static unsigned const EF_ARM_HASENTRY = 0x02;
|
||||
static unsigned const EF_ARM_EABI_VER4 = 0x04000000;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* arm.v4a-linux.elf-fold.h
|
||||
created from arm.v4a-linux.elf-fold.bin, 6344 (0x18c8) bytes
|
||||
created from arm.v4a-linux.elf-fold.bin, 6404 (0x1904) bytes
|
||||
|
||||
This file is part of the UPX executable compressor.
|
||||
|
||||
|
@ -31,11 +31,11 @@
|
|||
*/
|
||||
|
||||
|
||||
#define STUB_ARM_V4A_LINUX_ELF_FOLD_SIZE 6344
|
||||
#define STUB_ARM_V4A_LINUX_ELF_FOLD_ADLER32 0xe2487c9e
|
||||
#define STUB_ARM_V4A_LINUX_ELF_FOLD_CRC32 0x227e5905
|
||||
#define STUB_ARM_V4A_LINUX_ELF_FOLD_SIZE 6404
|
||||
#define STUB_ARM_V4A_LINUX_ELF_FOLD_ADLER32 0xf2b78936
|
||||
#define STUB_ARM_V4A_LINUX_ELF_FOLD_CRC32 0x0bd57521
|
||||
|
||||
unsigned char stub_arm_v4a_linux_elf_fold[6344] = {
|
||||
unsigned char stub_arm_v4a_linux_elf_fold[6404] = {
|
||||
/* 0x0000 */ 127, 69, 76, 70, 1, 1, 1, 97, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0010 */ 1, 0, 40, 0, 1, 0, 0, 0, 64,128, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0020 */ 16, 11, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 40, 0,
|
||||
|
@ -219,17 +219,17 @@ unsigned char stub_arm_v4a_linux_elf_fold[6344] = {
|
|||
/* 0x0b40 */ 7, 0, 0, 0, 64,128, 0, 0, 52, 0, 0, 0,176, 10, 0, 0,
|
||||
/* 0x0b50 */ 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0b60 */ 27, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0b70 */ 88, 21, 0, 0,112, 3, 0, 0, 5, 0, 0, 0, 1, 0, 0, 0,
|
||||
/* 0x0b70 */ 148, 21, 0, 0,112, 3, 0, 0, 5, 0, 0, 0, 1, 0, 0, 0,
|
||||
/* 0x0b80 */ 4, 0, 0, 0, 8, 0, 0, 0, 37, 0, 0, 0, 8, 0, 0, 0,
|
||||
/* 0x0b90 */ 3, 0, 0, 0, 0, 0, 0, 0,228, 10, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0ba0 */ 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0bb0 */ 17, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0bc0 */ 228, 10, 0, 0, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0bd0 */ 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0,
|
||||
/* 0x0be0 */ 0, 0, 0, 0, 0, 0, 0, 0, 40, 12, 0, 0, 0, 6, 0, 0,
|
||||
/* 0x0bf0 */ 6, 0, 0, 0, 76, 0, 0, 0, 4, 0, 0, 0, 16, 0, 0, 0,
|
||||
/* 0x0be0 */ 0, 0, 0, 0, 0, 0, 0, 0, 40, 12, 0, 0, 32, 6, 0, 0,
|
||||
/* 0x0bf0 */ 6, 0, 0, 0, 78, 0, 0, 0, 4, 0, 0, 0, 16, 0, 0, 0,
|
||||
/* 0x0c00 */ 9, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0c10 */ 40, 18, 0, 0, 45, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0c10 */ 72, 18, 0, 0, 75, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0c20 */ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0c30 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0c40 */ 0, 0, 0, 0, 3, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
|
@ -254,183 +254,187 @@ unsigned char stub_arm_v4a_linux_elf_fold[6344] = {
|
|||
/* 0x0d70 */ 0, 0, 0, 0, 0, 0,241,255,206, 0, 0, 0, 0, 16, 0, 0,
|
||||
/* 0x0d80 */ 0, 0, 0, 0, 0, 0,241,255,216, 0, 0, 0, 0, 16, 0, 0,
|
||||
/* 0x0d90 */ 0, 0, 0, 0, 0, 0,241,255,224, 0, 0, 0, 0, 16, 0, 0,
|
||||
/* 0x0da0 */ 0, 0, 0, 0, 0, 0,241,255,233, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0db0 */ 0, 0, 0, 0, 0, 0, 1, 0,243, 0, 0, 0, 12, 0, 0, 0,
|
||||
/* 0x0dc0 */ 0, 0, 0, 0, 0, 0,241,255,249, 0, 0, 0, 4, 0, 0, 0,
|
||||
/* 0x0dd0 */ 0, 0, 0, 0, 0, 0, 1, 0, 4, 1, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0de0 */ 0, 0, 0, 0, 0, 0,241,255, 11, 1, 0, 0, 4, 0, 0, 0,
|
||||
/* 0x0df0 */ 0, 0, 0, 0, 0, 0,241,255, 18, 1, 0, 0, 8, 0, 0, 0,
|
||||
/* 0x0e00 */ 0, 0, 0, 0, 0, 0,241,255, 28, 1, 0, 0, 12, 0, 0, 0,
|
||||
/* 0x0e10 */ 0, 0, 0, 0, 0, 0,241,255, 33, 1, 0, 0, 16, 0, 0, 0,
|
||||
/* 0x0e20 */ 0, 0, 0, 0, 0, 0,241,255, 40, 1, 0, 0, 20, 0, 0, 0,
|
||||
/* 0x0e30 */ 0, 0, 0, 0, 0, 0,241,255, 47, 1, 0, 0, 24, 0, 0, 0,
|
||||
/* 0x0e40 */ 0, 0, 0, 0, 0, 0,241,255, 55, 1, 0, 0, 24, 0, 0, 0,
|
||||
/* 0x0e50 */ 0, 0, 0, 0, 0, 0,241,255, 64, 1, 0, 0, 28, 0, 0, 0,
|
||||
/* 0x0e60 */ 0, 0, 0, 0, 0, 0,241,255, 72, 1, 0, 0,124, 0, 0, 0,
|
||||
/* 0x0e70 */ 0, 0, 0, 0, 0, 0, 1, 0, 80, 1, 0, 0, 12, 0, 0, 0,
|
||||
/* 0x0e80 */ 0, 0, 0, 0, 0, 0,241,255, 88, 1, 0, 0,196, 1, 0, 0,
|
||||
/* 0x0e90 */ 0, 0, 0, 0, 0, 0, 1, 0, 99, 1, 0, 0,144, 1, 0, 0,
|
||||
/* 0x0ea0 */ 0, 0, 0, 0, 0, 0, 1, 0,105, 1, 0, 0,180, 1, 0, 0,
|
||||
/* 0x0eb0 */ 0, 0, 0, 0, 0, 0, 1, 0,119, 1, 0, 0,194, 1, 0, 0,
|
||||
/* 0x0ec0 */ 0, 0, 0, 0, 0, 0, 1, 0,135, 1, 0, 0,220, 1, 0, 0,
|
||||
/* 0x0ed0 */ 0, 0, 0, 0, 0, 0, 1, 0,143, 1, 0, 0, 4, 2, 0, 0,
|
||||
/* 0x0ee0 */ 0, 0, 0, 0, 0, 0, 1, 0,151, 1, 0, 0, 1, 0,144, 0,
|
||||
/* 0x0ef0 */ 0, 0, 0, 0, 0, 0,241,255,161, 1, 0, 0, 3, 0,144, 0,
|
||||
/* 0x0f00 */ 0, 0, 0, 0, 0, 0,241,255,171, 1, 0, 0, 4, 0,144, 0,
|
||||
/* 0x0f10 */ 0, 0, 0, 0, 0, 0,241,255,182, 1, 0, 0, 5, 0,144, 0,
|
||||
/* 0x0f20 */ 0, 0, 0, 0, 0, 0,241,255,192, 1, 0, 0, 6, 0,144, 0,
|
||||
/* 0x0f30 */ 0, 0, 0, 0, 0, 0,241,255,203, 1, 0, 0, 10, 0,144, 0,
|
||||
/* 0x0f40 */ 0, 0, 0, 0, 0, 0,241,255,215, 1, 0, 0, 20, 0,144, 0,
|
||||
/* 0x0f50 */ 0, 0, 0, 0, 0, 0,241,255,227, 1, 0, 0, 45, 0,144, 0,
|
||||
/* 0x0f60 */ 0, 0, 0, 0, 0, 0,241,255,236, 1, 0, 0, 85, 0,144, 0,
|
||||
/* 0x0f70 */ 0, 0, 0, 0, 0, 0,241,255,250, 1, 0, 0,192, 0,144, 0,
|
||||
/* 0x0f80 */ 0, 0, 0, 0, 0, 0,241,255, 5, 2, 0, 0,125, 0,144, 0,
|
||||
/* 0x0f90 */ 0, 0, 0, 0, 0, 0,241,255, 19, 2, 0, 0, 91, 0,144, 0,
|
||||
/* 0x0fa0 */ 0, 0, 0, 0, 0, 0,241,255, 31, 2, 0, 0, 0, 0,159, 0,
|
||||
/* 0x0fb0 */ 0, 0, 0, 0, 0, 0,241,255, 45, 2, 0, 0, 2, 0,159, 0,
|
||||
/* 0x0fc0 */ 0, 0, 0, 0, 0, 0,241,255, 65, 2, 0, 0, 16, 2, 0, 0,
|
||||
/* 0x0fd0 */ 0, 0, 0, 0, 1, 0, 1, 0, 30, 0, 0, 0, 20, 2, 0, 0,
|
||||
/* 0x0fe0 */ 0, 0, 0, 0, 2, 0, 1, 0, 68, 2, 0, 0,136, 2, 0, 0,
|
||||
/* 0x0ff0 */ 0, 0, 0, 0, 0, 0, 1, 0, 76, 2, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x1000 */ 0, 0, 0, 0, 4, 0,241,255,101, 2, 0, 0, 12, 3, 0, 0,
|
||||
/* 0x1010 */ 32, 0, 0, 0, 2, 0, 1, 0, 30, 0, 0, 0, 12, 3, 0, 0,
|
||||
/* 0x1020 */ 0, 0, 0, 0, 2, 0, 1, 0, 65, 2, 0, 0, 52, 3, 0, 0,
|
||||
/* 0x1030 */ 0, 0, 0, 0, 1, 0, 1, 0,109, 2, 0, 0, 56, 3, 0, 0,
|
||||
/* 0x1040 */ 96, 0, 0, 0, 2, 0, 1, 0, 30, 0, 0, 0, 56, 3, 0, 0,
|
||||
/* 0x1050 */ 0, 0, 0, 0, 2, 0, 1, 0,115, 2, 0, 0,152, 3, 0, 0,
|
||||
/* 0x1060 */ 72, 1, 0, 0, 2, 0, 1, 0, 65, 2, 0, 0,220, 4, 0, 0,
|
||||
/* 0x1070 */ 0, 0, 0, 0, 1, 0, 1, 0,128, 2, 0, 0,224, 4, 0, 0,
|
||||
/* 0x1080 */ 156, 4, 0, 0, 2, 0, 1, 0, 30, 0, 0, 0,224, 4, 0, 0,
|
||||
/* 0x1090 */ 0, 0, 0, 0, 2, 0, 1, 0, 65, 2, 0, 0,116, 9, 0, 0,
|
||||
/* 0x10a0 */ 0, 0, 0, 0, 1, 0, 1, 0, 30, 0, 0, 0,124, 9, 0, 0,
|
||||
/* 0x10b0 */ 0, 0, 0, 0, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x10c0 */ 0, 0, 0, 0, 4, 0,241,255, 65, 2, 0, 0, 64,128, 0, 0,
|
||||
/* 0x10d0 */ 0, 0, 0, 0, 0, 0, 1, 0, 65, 2, 0, 0, 76,131, 0, 0,
|
||||
/* 0x10e0 */ 0, 0, 0, 0, 0, 0, 1, 0,136, 2, 0, 0, 44, 3, 0, 0,
|
||||
/* 0x10f0 */ 12, 0, 0, 0, 18, 0, 1, 0,150, 2, 0, 0, 92, 2, 0, 0,
|
||||
/* 0x1100 */ 0, 0, 0, 0, 16, 0, 1, 0,157, 2, 0, 0,144, 2, 0, 0,
|
||||
/* 0x1110 */ 0, 0, 0, 0, 16, 0, 1, 0,172, 2, 0, 0, 68, 2, 0, 0,
|
||||
/* 0x1120 */ 0, 0, 0, 0, 16, 0, 1, 0,179, 2, 0, 0, 84, 2, 0, 0,
|
||||
/* 0x1130 */ 0, 0, 0, 0, 16, 0, 1, 0,188, 2, 0, 0,176, 2, 0, 0,
|
||||
/* 0x1140 */ 0, 0, 0, 0, 16, 0, 1, 0,198, 2, 0, 0,120, 2, 0, 0,
|
||||
/* 0x1150 */ 0, 0, 0, 0, 16, 0, 1, 0,203, 2, 0, 0,108, 2, 0, 0,
|
||||
/* 0x1160 */ 0, 0, 0, 0, 16, 0, 1, 0,217, 2, 0, 0,152, 2, 0, 0,
|
||||
/* 0x1170 */ 0, 0, 0, 0, 16, 0, 1, 0,231, 2, 0, 0, 36, 2, 0, 0,
|
||||
/* 0x1180 */ 0, 0, 0, 0, 16, 0, 1, 0,237, 2, 0, 0, 28, 2, 0, 0,
|
||||
/* 0x1190 */ 0, 0, 0, 0, 16, 0, 1, 0,242, 2, 0, 0, 60, 2, 0, 0,
|
||||
/* 0x11a0 */ 0, 0, 0, 0, 16, 0, 1, 0,249, 2, 0, 0, 16, 2, 0, 0,
|
||||
/* 0x11b0 */ 0, 0, 0, 0, 16, 0, 1, 0, 1, 3, 0, 0, 24, 2, 0, 0,
|
||||
/* 0x11c0 */ 0, 0, 0, 0, 16, 0, 1, 0, 6, 3, 0, 0,124, 9, 0, 0,
|
||||
/* 0x11d0 */ 52, 1, 0, 0, 18, 0, 1, 0, 15, 3, 0, 0, 76, 2, 0, 0,
|
||||
/* 0x11e0 */ 0, 0, 0, 0, 16, 0, 1, 0, 19, 3, 0, 0, 44, 2, 0, 0,
|
||||
/* 0x11f0 */ 0, 0, 0, 0, 16, 0, 1, 0, 24, 3, 0, 0,176, 2, 0, 0,
|
||||
/* 0x1200 */ 0, 0, 0, 0, 16, 0, 1, 0, 30, 3, 0, 0,100, 2, 0, 0,
|
||||
/* 0x1210 */ 0, 0, 0, 0, 16, 0, 1, 0, 39, 3, 0, 0, 52, 2, 0, 0,
|
||||
/* 0x1220 */ 0, 0, 0, 0, 16, 0, 1, 0, 0,115,114, 99, 47, 97,114,109,
|
||||
/* 0x1230 */ 46,118, 52, 97, 45,108,105,110,117,120, 46,101,108,102, 45,102,
|
||||
/* 0x1240 */ 111,108,100, 46, 83, 0, 36, 97, 0, 95, 95, 78, 82, 95, 83, 89,
|
||||
/* 0x1250 */ 83, 67, 65, 76, 76, 95, 66, 65, 83, 69, 0,115,122, 95, 69,108,
|
||||
/* 0x1260 */ 102, 51, 50, 95, 69,104,100,114, 0,115,122, 95, 69,108,102, 51,
|
||||
/* 0x1270 */ 50, 95, 80,104,100,114, 0,112, 95,118, 97,100,100,114, 0,115,
|
||||
/* 0x1280 */ 122, 95,108, 95,105,110,102,111, 0,115,122, 95,112, 95,105,110,
|
||||
/* 0x1290 */ 102,111, 0,115,122, 95, 98, 95,105,110,102,111, 0,115,122, 95,
|
||||
/* 0x12a0 */ 117,110, 99, 0,115,122, 95, 99,112,114, 0, 98, 95,109,101,116,
|
||||
/* 0x12b0 */ 104,111,100, 0, 77, 65, 80, 95, 65, 78, 79, 78, 89, 77, 79, 85,
|
||||
/* 0x12c0 */ 83, 0, 77, 65, 80, 95, 80, 82, 73, 86, 65, 84, 69, 0, 77, 65,
|
||||
/* 0x12d0 */ 80, 95, 70, 73, 88, 69, 68, 0, 80, 82, 79, 84, 95, 82, 69, 65,
|
||||
/* 0x12e0 */ 68, 0, 79, 95, 82, 68, 79, 78, 76, 89, 0, 80, 65, 71, 69, 95,
|
||||
/* 0x12f0 */ 83, 72, 73, 70, 84, 0, 80, 65, 71, 69, 95, 83, 73, 90, 69, 0,
|
||||
/* 0x1300 */ 80, 65, 84, 72, 77, 65, 88, 0, 80, 65, 84, 72, 95, 77, 65, 88,
|
||||
/* 0x1310 */ 0,109,102,108,103, 95,100, 97,116, 97, 0, 83, 80, 95,102,100,
|
||||
/* 0x1320 */ 0,102,111,108,100, 95, 98,101,103,105,110, 0, 70, 95, 76, 69,
|
||||
/* 0x1330 */ 78, 88, 0, 70, 95, 65, 68, 82, 88, 0, 70, 95,101,108,102, 97,
|
||||
/* 0x1340 */ 100,100,114, 0, 70, 95,102,100, 0, 70, 95, 65, 68, 82, 85, 0,
|
||||
/* 0x1350 */ 70, 95, 76, 69, 78, 85, 0, 70, 95,102, 95,101,120,112, 0, 70,
|
||||
/* 0x1360 */ 95,101, 95, 97,117,120,118, 0, 70, 95,101,110,116,114,121, 0,
|
||||
/* 0x1370 */ 108,105,110,107, 95,111,107, 0, 70, 95,100,101,108,116, 97, 0,
|
||||
/* 0x1380 */ 102, 95,117,110,102,105,108,116,101,114, 0,115,119,101,101,112,
|
||||
/* 0x1390 */ 0,112,114,111, 99, 95,115,101,108,102, 95,101,120,101, 0,112,
|
||||
/* 0x13a0 */ 114,111, 99, 95,115,101,108,102, 95, 97,108,105,103,110, 0,116,
|
||||
/* 0x13b0 */ 111,112, 95,117,110,102, 0,116,115,116, 95,117,110,102, 0, 95,
|
||||
/* 0x13c0 */ 95, 78, 82, 95,101,120,105,116, 0, 95, 95, 78, 82, 95,114,101,
|
||||
/* 0x13d0 */ 97,100, 0, 95, 95, 78, 82, 95,119,114,105,116,101, 0, 95, 95,
|
||||
/* 0x13e0 */ 78, 82, 95,111,112,101,110, 0, 95, 95, 78, 82, 95, 99,108,111,
|
||||
/* 0x13f0 */ 115,101, 0, 95, 95, 78, 82, 95,117,110,108,105,110,107, 0, 95,
|
||||
/* 0x1400 */ 95, 78, 82, 95,103,101,116,112,105,100, 0, 95, 95, 78, 82, 95,
|
||||
/* 0x1410 */ 98,114,107, 0, 95, 95, 78, 82, 95,114,101, 97,100,108,105,110,
|
||||
/* 0x1420 */ 107, 0, 95, 95, 78, 82, 95,109,109, 97,112, 50, 0, 95, 95, 78,
|
||||
/* 0x1430 */ 82, 95,109,112,114,111,116,101, 99,116, 0, 95, 95, 78, 82, 95,
|
||||
/* 0x1440 */ 109,117,110,109, 97,112, 0, 95, 95, 65, 82, 77, 95, 78, 82, 95,
|
||||
/* 0x1450 */ 66, 65, 83, 69, 0, 95, 95, 65, 82, 77, 95, 78, 82, 95, 99, 97,
|
||||
/* 0x1460 */ 99,104,101,102,108,117,115,104, 0, 36,100, 0,109,109, 97,112,
|
||||
/* 0x1470 */ 95,100,111, 0, 97,114,109, 46,118, 52, 97, 45,108,105,110,117,
|
||||
/* 0x1480 */ 120, 46,101,108,102, 45,109, 97,105,110, 46, 99, 0, 97,117,120,
|
||||
/* 0x1490 */ 118, 95,117,112, 0,120,114,101, 97,100, 0,117,110,112, 97, 99,
|
||||
/* 0x14a0 */ 107, 69,120,116,101,110,116, 0,100,111, 95,120,109, 97,112, 0,
|
||||
/* 0x14b0 */ 103,101,116, 95,112, 97,103,101, 95,109, 97,115,107, 0,109,117,
|
||||
/* 0x14c0 */ 110,109, 97,112, 0,103,101,116, 95,115,121,115, 95,109,117,110,
|
||||
/* 0x14d0 */ 109, 97,112, 0,103,101,116,112,105,100, 0,114,101, 97,100,108,
|
||||
/* 0x14e0 */ 105,110,107, 0, 95, 95,117,100,105,118,115,105, 51, 0,109,109,
|
||||
/* 0x14f0 */ 97,112, 0, 95, 95, 99,108,101, 97,114, 95, 99, 97, 99,104,101,
|
||||
/* 0x1500 */ 0,109,109, 97,112, 95,112,114,105,118, 97,110,111,110, 0,119,
|
||||
/* 0x1510 */ 114,105,116,101, 0,114,101, 97,100, 0,117,110,108,105,110,107,
|
||||
/* 0x1520 */ 0,109,121, 95, 98,107,112,116, 0,101,120,105,116, 0,117,112,
|
||||
/* 0x1530 */ 120, 95,109, 97,105,110, 0, 98,114,107, 0,111,112,101,110, 0,
|
||||
/* 0x1540 */ 100,105,118, 49, 48, 0,109,112,114,111,116,101, 99,116, 0, 99,
|
||||
/* 0x1550 */ 108,111,115,101, 0, 0, 0, 0, 36, 0, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1560 */ 60, 0, 0, 0, 1, 1, 0, 0, 80, 0, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1570 */ 108, 0, 0, 0, 1, 80, 0, 0,152, 0, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1580 */ 240, 0, 0, 0, 1, 1, 0, 0, 28, 1, 0, 0, 1, 90, 0, 0,
|
||||
/* 0x1590 */ 60, 1, 0, 0, 1, 77, 0, 0, 92, 1, 0, 0, 1, 82, 0, 0,
|
||||
/* 0x15a0 */ 100, 1, 0, 0, 1, 95, 0, 0,160, 1, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x15b0 */ 236, 1, 0, 0, 1, 1, 0, 0, 8, 2, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x15c0 */ 172, 2, 0, 0, 1, 1, 0, 0, 32, 3, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x15d0 */ 84, 3, 0, 0, 1, 1, 0, 0, 92, 3, 0, 0, 1, 89, 0, 0,
|
||||
/* 0x15e0 */ 120, 3, 0, 0, 1, 1, 0, 0,176, 3, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x15f0 */ 192, 3, 0, 0, 1, 1, 0, 0,208, 3, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1600 */ 220, 3, 0, 0, 1, 1, 0, 0,232, 3, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1610 */ 236, 3, 0, 0, 1, 1, 0, 0,244, 3, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1620 */ 252, 3, 0, 0, 1, 89, 0, 0, 4, 4, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1630 */ 16, 4, 0, 0, 1, 1, 0, 0, 24, 4, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1640 */ 64, 4, 0, 0, 1, 1, 0, 0, 80, 4, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1650 */ 96, 4, 0, 0, 1, 1, 0, 0,104, 4, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1660 */ 116, 4, 0, 0, 1, 1, 0, 0,160, 4, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1670 */ 176, 4, 0, 0, 1, 1, 0, 0,208, 4, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1680 */ 0, 5, 0, 0, 1, 1, 0, 0, 72, 5, 0, 0, 1, 77, 0, 0,
|
||||
/* 0x1690 */ 76, 5, 0, 0, 1, 1, 0, 0,116, 5, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x16a0 */ 128, 5, 0, 0, 1, 1, 0, 0,140, 5, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x16b0 */ 180, 5, 0, 0, 1, 1, 0, 0,228, 5, 0, 0, 1, 84, 0, 0,
|
||||
/* 0x16c0 */ 20, 6, 0, 0, 1, 1, 0, 0, 28, 6, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x16d0 */ 40, 6, 0, 0, 1, 1, 0, 0, 64, 6, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x16e0 */ 68, 6, 0, 0, 1, 1, 0, 0, 80, 6, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x16f0 */ 92, 6, 0, 0, 1, 1, 0, 0,100, 6, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1700 */ 112, 6, 0, 0, 1, 1, 0, 0,144, 6, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1710 */ 160, 6, 0, 0, 1, 1, 0, 0,176, 6, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1720 */ 8, 7, 0, 0, 1, 1, 0, 0, 36, 7, 0, 0, 1, 84, 0, 0,
|
||||
/* 0x1730 */ 44, 7, 0, 0, 1, 1, 0, 0, 72, 7, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1740 */ 76, 7, 0, 0, 1, 1, 0, 0,116, 7, 0, 0, 1, 82, 0, 0,
|
||||
/* 0x1750 */ 124, 7, 0, 0, 1, 1, 0, 0,144, 7, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1760 */ 152, 7, 0, 0, 1, 1, 0, 0,176, 7, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1770 */ 184, 7, 0, 0, 1, 1, 0, 0,188, 7, 0, 0, 1, 78, 0, 0,
|
||||
/* 0x1780 */ 204, 7, 0, 0, 1, 1, 0, 0,216, 7, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1790 */ 236, 7, 0, 0, 1, 1, 0, 0, 20, 8, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x17a0 */ 24, 8, 0, 0, 1, 1, 0, 0, 56, 8, 0, 0, 1, 82, 0, 0,
|
||||
/* 0x17b0 */ 64, 8, 0, 0, 1, 1, 0, 0, 68, 8, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x17c0 */ 92, 8, 0, 0, 1, 83, 0, 0, 96, 8, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x17d0 */ 112, 8, 0, 0, 1, 94, 0, 0,120, 8, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x17e0 */ 128, 8, 0, 0, 1, 89, 0, 0,156, 8, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x17f0 */ 176, 8, 0, 0, 1, 84, 0, 0,184, 8, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1800 */ 188, 8, 0, 0, 1, 1, 0, 0,220, 8, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1810 */ 228, 8, 0, 0, 1, 1, 0, 0,244, 8, 0, 0, 1, 91, 0, 0,
|
||||
/* 0x1820 */ 48, 9, 0, 0, 1, 1, 0, 0, 52, 9, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1830 */ 76, 9, 0, 0, 1, 83, 0, 0, 92, 9, 0, 0, 1, 94, 0, 0,
|
||||
/* 0x1840 */ 108, 9, 0, 0, 1, 1, 0, 0,112, 9, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1850 */ 172, 9, 0, 0, 1, 1, 0, 0,228, 9, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1860 */ 248, 9, 0, 0, 1, 1, 0, 0, 8, 10, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x1870 */ 20, 10, 0, 0, 1, 1, 0, 0, 44, 10, 0, 0, 1, 92, 0, 0,
|
||||
/* 0x1880 */ 52, 10, 0, 0, 1, 1, 0, 0, 64, 10, 0, 0, 1, 86, 0, 0,
|
||||
/* 0x1890 */ 72, 10, 0, 0, 1, 1, 0, 0, 80, 10, 0, 0, 1, 89, 0, 0,
|
||||
/* 0x18a0 */ 112, 10, 0, 0, 1, 1, 0, 0,132, 10, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x18b0 */ 140, 10, 0, 0, 1, 95, 0, 0,144, 10, 0, 0, 1, 1, 0, 0,
|
||||
/* 0x18c0 */ 160, 10, 0, 0, 1, 1, 0, 0
|
||||
/* 0x0da0 */ 0, 0, 0, 0, 0, 0,241,255,233, 0, 0, 0, 0, 2, 0, 0,
|
||||
/* 0x0db0 */ 0, 0, 0, 0, 0, 0,241,255,248, 0, 0, 0, 0, 4, 0, 0,
|
||||
/* 0x0dc0 */ 0, 0, 0, 0, 0, 0,241,255, 7, 1, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0dd0 */ 0, 0, 0, 0, 0, 0, 1, 0, 17, 1, 0, 0, 12, 0, 0, 0,
|
||||
/* 0x0de0 */ 0, 0, 0, 0, 0, 0,241,255, 23, 1, 0, 0, 4, 0, 0, 0,
|
||||
/* 0x0df0 */ 0, 0, 0, 0, 0, 0, 1, 0, 34, 1, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0e00 */ 0, 0, 0, 0, 0, 0,241,255, 41, 1, 0, 0, 4, 0, 0, 0,
|
||||
/* 0x0e10 */ 0, 0, 0, 0, 0, 0,241,255, 48, 1, 0, 0, 8, 0, 0, 0,
|
||||
/* 0x0e20 */ 0, 0, 0, 0, 0, 0,241,255, 58, 1, 0, 0, 12, 0, 0, 0,
|
||||
/* 0x0e30 */ 0, 0, 0, 0, 0, 0,241,255, 63, 1, 0, 0, 16, 0, 0, 0,
|
||||
/* 0x0e40 */ 0, 0, 0, 0, 0, 0,241,255, 70, 1, 0, 0, 20, 0, 0, 0,
|
||||
/* 0x0e50 */ 0, 0, 0, 0, 0, 0,241,255, 77, 1, 0, 0, 24, 0, 0, 0,
|
||||
/* 0x0e60 */ 0, 0, 0, 0, 0, 0,241,255, 85, 1, 0, 0, 24, 0, 0, 0,
|
||||
/* 0x0e70 */ 0, 0, 0, 0, 0, 0,241,255, 94, 1, 0, 0, 28, 0, 0, 0,
|
||||
/* 0x0e80 */ 0, 0, 0, 0, 0, 0,241,255,102, 1, 0, 0,124, 0, 0, 0,
|
||||
/* 0x0e90 */ 0, 0, 0, 0, 0, 0, 1, 0,110, 1, 0, 0, 12, 0, 0, 0,
|
||||
/* 0x0ea0 */ 0, 0, 0, 0, 0, 0,241,255,118, 1, 0, 0,196, 1, 0, 0,
|
||||
/* 0x0eb0 */ 0, 0, 0, 0, 0, 0, 1, 0,129, 1, 0, 0,144, 1, 0, 0,
|
||||
/* 0x0ec0 */ 0, 0, 0, 0, 0, 0, 1, 0,135, 1, 0, 0,180, 1, 0, 0,
|
||||
/* 0x0ed0 */ 0, 0, 0, 0, 0, 0, 1, 0,149, 1, 0, 0,194, 1, 0, 0,
|
||||
/* 0x0ee0 */ 0, 0, 0, 0, 0, 0, 1, 0,165, 1, 0, 0,220, 1, 0, 0,
|
||||
/* 0x0ef0 */ 0, 0, 0, 0, 0, 0, 1, 0,173, 1, 0, 0, 4, 2, 0, 0,
|
||||
/* 0x0f00 */ 0, 0, 0, 0, 0, 0, 1, 0,181, 1, 0, 0, 1, 0,144, 0,
|
||||
/* 0x0f10 */ 0, 0, 0, 0, 0, 0,241,255,191, 1, 0, 0, 3, 0,144, 0,
|
||||
/* 0x0f20 */ 0, 0, 0, 0, 0, 0,241,255,201, 1, 0, 0, 4, 0,144, 0,
|
||||
/* 0x0f30 */ 0, 0, 0, 0, 0, 0,241,255,212, 1, 0, 0, 5, 0,144, 0,
|
||||
/* 0x0f40 */ 0, 0, 0, 0, 0, 0,241,255,222, 1, 0, 0, 6, 0,144, 0,
|
||||
/* 0x0f50 */ 0, 0, 0, 0, 0, 0,241,255,233, 1, 0, 0, 10, 0,144, 0,
|
||||
/* 0x0f60 */ 0, 0, 0, 0, 0, 0,241,255,245, 1, 0, 0, 20, 0,144, 0,
|
||||
/* 0x0f70 */ 0, 0, 0, 0, 0, 0,241,255, 1, 2, 0, 0, 45, 0,144, 0,
|
||||
/* 0x0f80 */ 0, 0, 0, 0, 0, 0,241,255, 10, 2, 0, 0, 85, 0,144, 0,
|
||||
/* 0x0f90 */ 0, 0, 0, 0, 0, 0,241,255, 24, 2, 0, 0,192, 0,144, 0,
|
||||
/* 0x0fa0 */ 0, 0, 0, 0, 0, 0,241,255, 35, 2, 0, 0,125, 0,144, 0,
|
||||
/* 0x0fb0 */ 0, 0, 0, 0, 0, 0,241,255, 49, 2, 0, 0, 91, 0,144, 0,
|
||||
/* 0x0fc0 */ 0, 0, 0, 0, 0, 0,241,255, 61, 2, 0, 0, 0, 0,159, 0,
|
||||
/* 0x0fd0 */ 0, 0, 0, 0, 0, 0,241,255, 75, 2, 0, 0, 2, 0,159, 0,
|
||||
/* 0x0fe0 */ 0, 0, 0, 0, 0, 0,241,255, 95, 2, 0, 0, 16, 2, 0, 0,
|
||||
/* 0x0ff0 */ 0, 0, 0, 0, 1, 0, 1, 0, 30, 0, 0, 0, 20, 2, 0, 0,
|
||||
/* 0x1000 */ 0, 0, 0, 0, 2, 0, 1, 0, 98, 2, 0, 0,136, 2, 0, 0,
|
||||
/* 0x1010 */ 0, 0, 0, 0, 0, 0, 1, 0,106, 2, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x1020 */ 0, 0, 0, 0, 4, 0,241,255,131, 2, 0, 0, 12, 3, 0, 0,
|
||||
/* 0x1030 */ 32, 0, 0, 0, 2, 0, 1, 0, 30, 0, 0, 0, 12, 3, 0, 0,
|
||||
/* 0x1040 */ 0, 0, 0, 0, 2, 0, 1, 0, 95, 2, 0, 0, 52, 3, 0, 0,
|
||||
/* 0x1050 */ 0, 0, 0, 0, 1, 0, 1, 0,139, 2, 0, 0, 56, 3, 0, 0,
|
||||
/* 0x1060 */ 96, 0, 0, 0, 2, 0, 1, 0, 30, 0, 0, 0, 56, 3, 0, 0,
|
||||
/* 0x1070 */ 0, 0, 0, 0, 2, 0, 1, 0,145, 2, 0, 0,152, 3, 0, 0,
|
||||
/* 0x1080 */ 72, 1, 0, 0, 2, 0, 1, 0, 95, 2, 0, 0,220, 4, 0, 0,
|
||||
/* 0x1090 */ 0, 0, 0, 0, 1, 0, 1, 0,158, 2, 0, 0,224, 4, 0, 0,
|
||||
/* 0x10a0 */ 156, 4, 0, 0, 2, 0, 1, 0, 30, 0, 0, 0,224, 4, 0, 0,
|
||||
/* 0x10b0 */ 0, 0, 0, 0, 2, 0, 1, 0, 95, 2, 0, 0,116, 9, 0, 0,
|
||||
/* 0x10c0 */ 0, 0, 0, 0, 1, 0, 1, 0, 30, 0, 0, 0,124, 9, 0, 0,
|
||||
/* 0x10d0 */ 0, 0, 0, 0, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x10e0 */ 0, 0, 0, 0, 4, 0,241,255, 95, 2, 0, 0, 64,128, 0, 0,
|
||||
/* 0x10f0 */ 0, 0, 0, 0, 0, 0, 1, 0, 95, 2, 0, 0, 76,131, 0, 0,
|
||||
/* 0x1100 */ 0, 0, 0, 0, 0, 0, 1, 0,166, 2, 0, 0, 44, 3, 0, 0,
|
||||
/* 0x1110 */ 12, 0, 0, 0, 18, 0, 1, 0,180, 2, 0, 0, 92, 2, 0, 0,
|
||||
/* 0x1120 */ 0, 0, 0, 0, 16, 0, 1, 0,187, 2, 0, 0,144, 2, 0, 0,
|
||||
/* 0x1130 */ 0, 0, 0, 0, 16, 0, 1, 0,202, 2, 0, 0, 68, 2, 0, 0,
|
||||
/* 0x1140 */ 0, 0, 0, 0, 16, 0, 1, 0,209, 2, 0, 0, 84, 2, 0, 0,
|
||||
/* 0x1150 */ 0, 0, 0, 0, 16, 0, 1, 0,218, 2, 0, 0,176, 2, 0, 0,
|
||||
/* 0x1160 */ 0, 0, 0, 0, 16, 0, 1, 0,228, 2, 0, 0,120, 2, 0, 0,
|
||||
/* 0x1170 */ 0, 0, 0, 0, 16, 0, 1, 0,233, 2, 0, 0,108, 2, 0, 0,
|
||||
/* 0x1180 */ 0, 0, 0, 0, 16, 0, 1, 0,247, 2, 0, 0,152, 2, 0, 0,
|
||||
/* 0x1190 */ 0, 0, 0, 0, 16, 0, 1, 0, 5, 3, 0, 0, 36, 2, 0, 0,
|
||||
/* 0x11a0 */ 0, 0, 0, 0, 16, 0, 1, 0, 11, 3, 0, 0, 28, 2, 0, 0,
|
||||
/* 0x11b0 */ 0, 0, 0, 0, 16, 0, 1, 0, 16, 3, 0, 0, 60, 2, 0, 0,
|
||||
/* 0x11c0 */ 0, 0, 0, 0, 16, 0, 1, 0, 23, 3, 0, 0, 16, 2, 0, 0,
|
||||
/* 0x11d0 */ 0, 0, 0, 0, 16, 0, 1, 0, 31, 3, 0, 0, 24, 2, 0, 0,
|
||||
/* 0x11e0 */ 0, 0, 0, 0, 16, 0, 1, 0, 36, 3, 0, 0,124, 9, 0, 0,
|
||||
/* 0x11f0 */ 52, 1, 0, 0, 18, 0, 1, 0, 45, 3, 0, 0, 76, 2, 0, 0,
|
||||
/* 0x1200 */ 0, 0, 0, 0, 16, 0, 1, 0, 49, 3, 0, 0, 44, 2, 0, 0,
|
||||
/* 0x1210 */ 0, 0, 0, 0, 16, 0, 1, 0, 54, 3, 0, 0,176, 2, 0, 0,
|
||||
/* 0x1220 */ 0, 0, 0, 0, 16, 0, 1, 0, 60, 3, 0, 0,100, 2, 0, 0,
|
||||
/* 0x1230 */ 0, 0, 0, 0, 16, 0, 1, 0, 69, 3, 0, 0, 52, 2, 0, 0,
|
||||
/* 0x1240 */ 0, 0, 0, 0, 16, 0, 1, 0, 0,115,114, 99, 47, 97,114,109,
|
||||
/* 0x1250 */ 46,118, 52, 97, 45,108,105,110,117,120, 46,101,108,102, 45,102,
|
||||
/* 0x1260 */ 111,108,100, 46, 83, 0, 36, 97, 0, 95, 95, 78, 82, 95, 83, 89,
|
||||
/* 0x1270 */ 83, 67, 65, 76, 76, 95, 66, 65, 83, 69, 0,115,122, 95, 69,108,
|
||||
/* 0x1280 */ 102, 51, 50, 95, 69,104,100,114, 0,115,122, 95, 69,108,102, 51,
|
||||
/* 0x1290 */ 50, 95, 80,104,100,114, 0,112, 95,118, 97,100,100,114, 0,115,
|
||||
/* 0x12a0 */ 122, 95,108, 95,105,110,102,111, 0,115,122, 95,112, 95,105,110,
|
||||
/* 0x12b0 */ 102,111, 0,115,122, 95, 98, 95,105,110,102,111, 0,115,122, 95,
|
||||
/* 0x12c0 */ 117,110, 99, 0,115,122, 95, 99,112,114, 0, 98, 95,109,101,116,
|
||||
/* 0x12d0 */ 104,111,100, 0, 77, 65, 80, 95, 65, 78, 79, 78, 89, 77, 79, 85,
|
||||
/* 0x12e0 */ 83, 0, 77, 65, 80, 95, 80, 82, 73, 86, 65, 84, 69, 0, 77, 65,
|
||||
/* 0x12f0 */ 80, 95, 70, 73, 88, 69, 68, 0, 80, 82, 79, 84, 95, 82, 69, 65,
|
||||
/* 0x1300 */ 68, 0, 79, 95, 82, 68, 79, 78, 76, 89, 0, 80, 65, 71, 69, 95,
|
||||
/* 0x1310 */ 83, 72, 73, 70, 84, 0, 80, 65, 71, 69, 95, 83, 73, 90, 69, 0,
|
||||
/* 0x1320 */ 80, 65, 84, 72, 77, 65, 88, 0, 80, 65, 84, 72, 95, 77, 65, 88,
|
||||
/* 0x1330 */ 0, 77, 65, 88, 95, 69, 76, 70, 95, 72, 68, 82, 95, 51, 50, 0,
|
||||
/* 0x1340 */ 77, 65, 88, 95, 69, 76, 70, 95, 72, 68, 82, 95, 54, 52, 0,109,
|
||||
/* 0x1350 */ 102,108,103, 95,100, 97,116, 97, 0, 83, 80, 95,102,100, 0,102,
|
||||
/* 0x1360 */ 111,108,100, 95, 98,101,103,105,110, 0, 70, 95, 76, 69, 78, 88,
|
||||
/* 0x1370 */ 0, 70, 95, 65, 68, 82, 88, 0, 70, 95,101,108,102, 97,100,100,
|
||||
/* 0x1380 */ 114, 0, 70, 95,102,100, 0, 70, 95, 65, 68, 82, 85, 0, 70, 95,
|
||||
/* 0x1390 */ 76, 69, 78, 85, 0, 70, 95,102, 95,101,120,112, 0, 70, 95,101,
|
||||
/* 0x13a0 */ 95, 97,117,120,118, 0, 70, 95,101,110,116,114,121, 0,108,105,
|
||||
/* 0x13b0 */ 110,107, 95,111,107, 0, 70, 95,100,101,108,116, 97, 0,102, 95,
|
||||
/* 0x13c0 */ 117,110,102,105,108,116,101,114, 0,115,119,101,101,112, 0,112,
|
||||
/* 0x13d0 */ 114,111, 99, 95,115,101,108,102, 95,101,120,101, 0,112,114,111,
|
||||
/* 0x13e0 */ 99, 95,115,101,108,102, 95, 97,108,105,103,110, 0,116,111,112,
|
||||
/* 0x13f0 */ 95,117,110,102, 0,116,115,116, 95,117,110,102, 0, 95, 95, 78,
|
||||
/* 0x1400 */ 82, 95,101,120,105,116, 0, 95, 95, 78, 82, 95,114,101, 97,100,
|
||||
/* 0x1410 */ 0, 95, 95, 78, 82, 95,119,114,105,116,101, 0, 95, 95, 78, 82,
|
||||
/* 0x1420 */ 95,111,112,101,110, 0, 95, 95, 78, 82, 95, 99,108,111,115,101,
|
||||
/* 0x1430 */ 0, 95, 95, 78, 82, 95,117,110,108,105,110,107, 0, 95, 95, 78,
|
||||
/* 0x1440 */ 82, 95,103,101,116,112,105,100, 0, 95, 95, 78, 82, 95, 98,114,
|
||||
/* 0x1450 */ 107, 0, 95, 95, 78, 82, 95,114,101, 97,100,108,105,110,107, 0,
|
||||
/* 0x1460 */ 95, 95, 78, 82, 95,109,109, 97,112, 50, 0, 95, 95, 78, 82, 95,
|
||||
/* 0x1470 */ 109,112,114,111,116,101, 99,116, 0, 95, 95, 78, 82, 95,109,117,
|
||||
/* 0x1480 */ 110,109, 97,112, 0, 95, 95, 65, 82, 77, 95, 78, 82, 95, 66, 65,
|
||||
/* 0x1490 */ 83, 69, 0, 95, 95, 65, 82, 77, 95, 78, 82, 95, 99, 97, 99,104,
|
||||
/* 0x14a0 */ 101,102,108,117,115,104, 0, 36,100, 0,109,109, 97,112, 95,100,
|
||||
/* 0x14b0 */ 111, 0, 97,114,109, 46,118, 52, 97, 45,108,105,110,117,120, 46,
|
||||
/* 0x14c0 */ 101,108,102, 45,109, 97,105,110, 46, 99, 0, 97,117,120,118, 95,
|
||||
/* 0x14d0 */ 117,112, 0,120,114,101, 97,100, 0,117,110,112, 97, 99,107, 69,
|
||||
/* 0x14e0 */ 120,116,101,110,116, 0,100,111, 95,120,109, 97,112, 0,103,101,
|
||||
/* 0x14f0 */ 116, 95,112, 97,103,101, 95,109, 97,115,107, 0,109,117,110,109,
|
||||
/* 0x1500 */ 97,112, 0,103,101,116, 95,115,121,115, 95,109,117,110,109, 97,
|
||||
/* 0x1510 */ 112, 0,103,101,116,112,105,100, 0,114,101, 97,100,108,105,110,
|
||||
/* 0x1520 */ 107, 0, 95, 95,117,100,105,118,115,105, 51, 0,109,109, 97,112,
|
||||
/* 0x1530 */ 0, 95, 95, 99,108,101, 97,114, 95, 99, 97, 99,104,101, 0,109,
|
||||
/* 0x1540 */ 109, 97,112, 95,112,114,105,118, 97,110,111,110, 0,119,114,105,
|
||||
/* 0x1550 */ 116,101, 0,114,101, 97,100, 0,117,110,108,105,110,107, 0,109,
|
||||
/* 0x1560 */ 121, 95, 98,107,112,116, 0,101,120,105,116, 0,117,112,120, 95,
|
||||
/* 0x1570 */ 109, 97,105,110, 0, 98,114,107, 0,111,112,101,110, 0,100,105,
|
||||
/* 0x1580 */ 118, 49, 48, 0,109,112,114,111,116,101, 99,116, 0, 99,108,111,
|
||||
/* 0x1590 */ 115,101, 0, 0, 36, 0, 0, 0, 1, 1, 0, 0, 60, 0, 0, 0,
|
||||
/* 0x15a0 */ 1, 1, 0, 0, 80, 0, 0, 0, 1, 1, 0, 0,108, 0, 0, 0,
|
||||
/* 0x15b0 */ 1, 82, 0, 0,152, 0, 0, 0, 1, 1, 0, 0,240, 0, 0, 0,
|
||||
/* 0x15c0 */ 1, 1, 0, 0, 28, 1, 0, 0, 1, 92, 0, 0, 60, 1, 0, 0,
|
||||
/* 0x15d0 */ 1, 79, 0, 0, 92, 1, 0, 0, 1, 84, 0, 0,100, 1, 0, 0,
|
||||
/* 0x15e0 */ 1, 97, 0, 0,160, 1, 0, 0, 1, 1, 0, 0,236, 1, 0, 0,
|
||||
/* 0x15f0 */ 1, 1, 0, 0, 8, 2, 0, 0, 1, 1, 0, 0,172, 2, 0, 0,
|
||||
/* 0x1600 */ 1, 1, 0, 0, 32, 3, 0, 0, 1, 1, 0, 0, 84, 3, 0, 0,
|
||||
/* 0x1610 */ 1, 1, 0, 0, 92, 3, 0, 0, 1, 91, 0, 0,120, 3, 0, 0,
|
||||
/* 0x1620 */ 1, 1, 0, 0,176, 3, 0, 0, 1, 1, 0, 0,192, 3, 0, 0,
|
||||
/* 0x1630 */ 1, 1, 0, 0,208, 3, 0, 0, 1, 1, 0, 0,220, 3, 0, 0,
|
||||
/* 0x1640 */ 1, 1, 0, 0,232, 3, 0, 0, 1, 1, 0, 0,236, 3, 0, 0,
|
||||
/* 0x1650 */ 1, 1, 0, 0,244, 3, 0, 0, 1, 1, 0, 0,252, 3, 0, 0,
|
||||
/* 0x1660 */ 1, 91, 0, 0, 4, 4, 0, 0, 1, 1, 0, 0, 16, 4, 0, 0,
|
||||
/* 0x1670 */ 1, 1, 0, 0, 24, 4, 0, 0, 1, 1, 0, 0, 64, 4, 0, 0,
|
||||
/* 0x1680 */ 1, 1, 0, 0, 80, 4, 0, 0, 1, 1, 0, 0, 96, 4, 0, 0,
|
||||
/* 0x1690 */ 1, 1, 0, 0,104, 4, 0, 0, 1, 1, 0, 0,116, 4, 0, 0,
|
||||
/* 0x16a0 */ 1, 1, 0, 0,160, 4, 0, 0, 1, 1, 0, 0,176, 4, 0, 0,
|
||||
/* 0x16b0 */ 1, 1, 0, 0,208, 4, 0, 0, 1, 1, 0, 0, 0, 5, 0, 0,
|
||||
/* 0x16c0 */ 1, 1, 0, 0, 72, 5, 0, 0, 1, 79, 0, 0, 76, 5, 0, 0,
|
||||
/* 0x16d0 */ 1, 1, 0, 0,116, 5, 0, 0, 1, 1, 0, 0,128, 5, 0, 0,
|
||||
/* 0x16e0 */ 1, 1, 0, 0,140, 5, 0, 0, 1, 1, 0, 0,180, 5, 0, 0,
|
||||
/* 0x16f0 */ 1, 1, 0, 0,228, 5, 0, 0, 1, 86, 0, 0, 20, 6, 0, 0,
|
||||
/* 0x1700 */ 1, 1, 0, 0, 28, 6, 0, 0, 1, 1, 0, 0, 40, 6, 0, 0,
|
||||
/* 0x1710 */ 1, 1, 0, 0, 64, 6, 0, 0, 1, 1, 0, 0, 68, 6, 0, 0,
|
||||
/* 0x1720 */ 1, 1, 0, 0, 80, 6, 0, 0, 1, 1, 0, 0, 92, 6, 0, 0,
|
||||
/* 0x1730 */ 1, 1, 0, 0,100, 6, 0, 0, 1, 1, 0, 0,112, 6, 0, 0,
|
||||
/* 0x1740 */ 1, 1, 0, 0,144, 6, 0, 0, 1, 1, 0, 0,160, 6, 0, 0,
|
||||
/* 0x1750 */ 1, 1, 0, 0,176, 6, 0, 0, 1, 1, 0, 0, 8, 7, 0, 0,
|
||||
/* 0x1760 */ 1, 1, 0, 0, 36, 7, 0, 0, 1, 86, 0, 0, 44, 7, 0, 0,
|
||||
/* 0x1770 */ 1, 1, 0, 0, 72, 7, 0, 0, 1, 1, 0, 0, 76, 7, 0, 0,
|
||||
/* 0x1780 */ 1, 1, 0, 0,116, 7, 0, 0, 1, 84, 0, 0,124, 7, 0, 0,
|
||||
/* 0x1790 */ 1, 1, 0, 0,144, 7, 0, 0, 1, 1, 0, 0,152, 7, 0, 0,
|
||||
/* 0x17a0 */ 1, 1, 0, 0,176, 7, 0, 0, 1, 1, 0, 0,184, 7, 0, 0,
|
||||
/* 0x17b0 */ 1, 1, 0, 0,188, 7, 0, 0, 1, 80, 0, 0,204, 7, 0, 0,
|
||||
/* 0x17c0 */ 1, 1, 0, 0,216, 7, 0, 0, 1, 1, 0, 0,236, 7, 0, 0,
|
||||
/* 0x17d0 */ 1, 1, 0, 0, 20, 8, 0, 0, 1, 1, 0, 0, 24, 8, 0, 0,
|
||||
/* 0x17e0 */ 1, 1, 0, 0, 56, 8, 0, 0, 1, 84, 0, 0, 64, 8, 0, 0,
|
||||
/* 0x17f0 */ 1, 1, 0, 0, 68, 8, 0, 0, 1, 1, 0, 0, 92, 8, 0, 0,
|
||||
/* 0x1800 */ 1, 85, 0, 0, 96, 8, 0, 0, 1, 1, 0, 0,112, 8, 0, 0,
|
||||
/* 0x1810 */ 1, 96, 0, 0,120, 8, 0, 0, 1, 1, 0, 0,128, 8, 0, 0,
|
||||
/* 0x1820 */ 1, 91, 0, 0,156, 8, 0, 0, 1, 1, 0, 0,176, 8, 0, 0,
|
||||
/* 0x1830 */ 1, 86, 0, 0,184, 8, 0, 0, 1, 1, 0, 0,188, 8, 0, 0,
|
||||
/* 0x1840 */ 1, 1, 0, 0,220, 8, 0, 0, 1, 1, 0, 0,228, 8, 0, 0,
|
||||
/* 0x1850 */ 1, 1, 0, 0,244, 8, 0, 0, 1, 93, 0, 0, 48, 9, 0, 0,
|
||||
/* 0x1860 */ 1, 1, 0, 0, 52, 9, 0, 0, 1, 1, 0, 0, 76, 9, 0, 0,
|
||||
/* 0x1870 */ 1, 85, 0, 0, 92, 9, 0, 0, 1, 96, 0, 0,108, 9, 0, 0,
|
||||
/* 0x1880 */ 1, 1, 0, 0,112, 9, 0, 0, 1, 1, 0, 0,172, 9, 0, 0,
|
||||
/* 0x1890 */ 1, 1, 0, 0,228, 9, 0, 0, 1, 1, 0, 0,248, 9, 0, 0,
|
||||
/* 0x18a0 */ 1, 1, 0, 0, 8, 10, 0, 0, 1, 1, 0, 0, 20, 10, 0, 0,
|
||||
/* 0x18b0 */ 1, 1, 0, 0, 44, 10, 0, 0, 1, 94, 0, 0, 52, 10, 0, 0,
|
||||
/* 0x18c0 */ 1, 1, 0, 0, 64, 10, 0, 0, 1, 88, 0, 0, 72, 10, 0, 0,
|
||||
/* 0x18d0 */ 1, 1, 0, 0, 80, 10, 0, 0, 1, 91, 0, 0,112, 10, 0, 0,
|
||||
/* 0x18e0 */ 1, 1, 0, 0,132, 10, 0, 0, 1, 1, 0, 0,140, 10, 0, 0,
|
||||
/* 0x18f0 */ 1, 97, 0, 0,144, 10, 0, 0, 1, 1, 0, 0,160, 10, 0, 0,
|
||||
/* 0x1900 */ 1, 1, 0, 0
|
||||
};
|
||||
|
|
|
@ -32,8 +32,8 @@
|
|||
|
||||
|
||||
#define STUB_ARM64_LINUX_ELF_FOLD_SIZE 2776
|
||||
#define STUB_ARM64_LINUX_ELF_FOLD_ADLER32 0x4a2bc8dc
|
||||
#define STUB_ARM64_LINUX_ELF_FOLD_CRC32 0x29e40c30
|
||||
#define STUB_ARM64_LINUX_ELF_FOLD_ADLER32 0xdf4bc8ec
|
||||
#define STUB_ARM64_LINUX_ELF_FOLD_CRC32 0x094b87d4
|
||||
|
||||
unsigned char stub_arm64_linux_elf_fold[2776] = {
|
||||
/* 0x0000 */ 127, 69, 76, 70, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
|
@ -59,9 +59,9 @@ unsigned char stub_arm64_linux_elf_fold[2776] = {
|
|||
/* 0x0140 */ 247, 3, 0,170,225, 3, 6,170,129, 0, 0,249,226, 5, 0, 24,
|
||||
/* 0x0150 */ 34, 68, 0,184,226,255,129, 82,160, 5, 0, 16,100, 0, 0,148,
|
||||
/* 0x0160 */ 31, 4, 64,177, 66, 0, 0, 84, 95,104, 32, 56,231, 3, 20,170,
|
||||
/* 0x0170 */ 230, 3, 25,170,255, 3, 40,209, 37, 5, 0, 16,228, 3, 24,170,
|
||||
/* 0x0170 */ 230, 3, 25,170,255, 3, 48,209, 37, 5, 0, 16,228, 3, 24,170,
|
||||
/* 0x0180 */ 227, 3, 22,170,226, 3, 0,145,225, 3, 29, 42,224, 3, 28,170,
|
||||
/* 0x0190 */ 248, 1, 0,148,255, 3, 40,145,248, 3, 0,170, 33, 83, 64,249,
|
||||
/* 0x0190 */ 248, 1, 0,148,255, 3, 48,145,248, 3, 0,170, 33, 83, 64,249,
|
||||
/* 0x01a0 */ 224, 3, 25,170, 64, 0, 0,148, 5, 0,128,210,228, 3, 21, 42,
|
||||
/* 0x01b0 */ 67, 0,128, 82, 34, 0,128, 82, 1, 0,130,210, 0, 0,128,210,
|
||||
/* 0x01c0 */ 67, 0, 0,148,224, 3, 21, 42, 46, 0, 0,148,254, 3, 24,170,
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
/* Maximum number of bytes for ElfXX_Ehdr and associated ElfXX_Phdr */
|
||||
MAX_ELF_HDR_32= 512 /* one disk block in the early days */
|
||||
MAX_ELF_HDR_64= 1024 /* twice as much because 64-bit addresses */
|
|
@ -0,0 +1,2 @@
|
|||
#define MAX_ELF_HDR_32 512
|
||||
#define MAX_ELF_HDR_64 1024
|
|
@ -51,7 +51,6 @@ PROT_READ= 0x1
|
|||
O_RDONLY= 0
|
||||
|
||||
OVERHEAD=2048
|
||||
MAX_ELF_HDR=1024
|
||||
|
||||
/* 64-bit mode only! */
|
||||
__NR_read= 0
|
||||
|
|
|
@ -86,8 +86,7 @@ static int dprintf(char const *fmt, ...); // forward
|
|||
// it at an address different from it load address: there must be no
|
||||
// static data, and no string constants.
|
||||
|
||||
#define MAX_ELF_HDR 1024 // Elf64_Ehdr + n*Elf64_Phdr must fit in this
|
||||
|
||||
#include "MAX_ELF_HDR.c"
|
||||
|
||||
/*************************************************************************
|
||||
// "file" util
|
||||
|
@ -641,7 +640,7 @@ upx_main( // returns entry address
|
|||
if (0 > fdi) {
|
||||
err_exit(18);
|
||||
}
|
||||
if (MAX_ELF_HDR!=read(fdi, (void *)ehdr, MAX_ELF_HDR)) {
|
||||
if (MAX_ELF_HDR_64!=read(fdi, (void *)ehdr, MAX_ELF_HDR_64)) {
|
||||
ERR_LAB
|
||||
err_exit(19);
|
||||
}
|
||||
|
|
|
@ -100,9 +100,6 @@ void dprint8(
|
|||
// it at an address different from it load address: there must be no
|
||||
// static data, and no string constants.
|
||||
|
||||
#define MAX_ELF_HDR 1024 // Elf64_Ehdr + n*Elf64_Phdr must fit in this
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
// util
|
||||
**************************************************************************/
|
||||
|
|
|
@ -61,8 +61,8 @@ PATH_MAX= 4096
|
|||
#endif /*}*/
|
||||
|
||||
#define OVERHEAD 2048
|
||||
#define MAX_ELF_HDR 512
|
||||
#define call bl
|
||||
#include "MAX_ELF_HDR.S"
|
||||
|
||||
mflg_data: .int MAP_PRIVATE|MAP_ANONYMOUS @ overwritten for QNX vs Linux
|
||||
|
||||
|
@ -161,7 +161,7 @@ link_ok:
|
|||
@ldr r5,[sp,#F_f_exp]
|
||||
ldmia sp!,{r4,r10,r11} @ LENX, ADRX, elfaddr
|
||||
F_delta= 3*4
|
||||
sub sp,sp,#MAX_ELF_HDR + OVERHEAD @ alloca
|
||||
sub sp,sp,#MAX_ELF_HDR_32 + OVERHEAD @ alloca
|
||||
ldr r9,[r10,#sz_cpr] @ xi.size of ELF headers
|
||||
mov r8,sp @ xo.ptr
|
||||
ldr r7,[r10,#sz_unc] @ xo.size
|
||||
|
@ -178,7 +178,7 @@ F_delta= 3*4
|
|||
// xo={sz_unc, &tmp_ehdr}, xi={sz_cpr, &b_info}, elfaddr
|
||||
call upx_main
|
||||
add sp,sp,#(9-4)*4
|
||||
add sp,sp,#MAX_ELF_HDR + OVERHEAD @ un-alloca
|
||||
add sp,sp,#MAX_ELF_HDR_32 + OVERHEAD @ un-alloca
|
||||
#if DEBUG //{
|
||||
stmdb sp!,{TRACE_REGS}; mov r0,#0x14; bl trace
|
||||
#endif //}
|
||||
|
|
|
@ -68,7 +68,6 @@ PATH_MAX= 4096
|
|||
#endif /*}*/
|
||||
|
||||
#define OVERHEAD 2048
|
||||
#define MAX_ELF_HDR 512
|
||||
#define call bl
|
||||
|
||||
mflg_data: .int MAP_PRIVATE|MAP_ANONYMOUS @ overwritten for QNX vs Linux
|
||||
|
|
|
@ -75,7 +75,7 @@ PATH_MAX= 4096
|
|||
//@ are uncompressed.
|
||||
|
||||
#define OVERHEAD 2048
|
||||
#define MAX_ELF_HDR 512
|
||||
#include "MAX_ELF_HDR.S"
|
||||
|
||||
get_page_size:
|
||||
mov x0,#~0 // all 1's; -1
|
||||
|
@ -161,7 +161,7 @@ xPMASK .req x20
|
|||
/* Construct arglist for upx_main */
|
||||
mov x7,xPMASK
|
||||
mov x6,xelfa // Elf64_Ehdr (reloc if ET_DYN and not pre-link)
|
||||
sub sp,sp,#MAX_ELF_HDR + OVERHEAD // alloca
|
||||
sub sp,sp,#MAX_ELF_HDR_64 + OVERHEAD // alloca
|
||||
adr x5,f_unfilter
|
||||
mov x4,xfexp // &f_decompress
|
||||
mov x3,xauxv // new &Elf64_auxv_t
|
||||
|
@ -169,7 +169,7 @@ xPMASK .req x20
|
|||
mov w1,wLENC // total size of compressed data
|
||||
mov x0,xADRC // &b_info
|
||||
call upx_main
|
||||
add sp,sp,#MAX_ELF_HDR + OVERHEAD // un-alloca
|
||||
add sp,sp,#MAX_ELF_HDR_64 + OVERHEAD // un-alloca
|
||||
mov xfexp,x0 // entry address
|
||||
|
||||
// Discard pages of compressed input data (includes [ADRC,+LENC) )
|
||||
|
|
|
@ -62,7 +62,6 @@ PATH_MAX= 4096
|
|||
#endif /*}*/
|
||||
|
||||
#define OVERHEAD 2048
|
||||
#define MAX_ELF_HDR 1024
|
||||
#define call bl
|
||||
|
||||
section SO_HEAD
|
||||
|
|
|
@ -94,9 +94,9 @@ L50:
|
|||
call do_auxv // move; fill new auxv slots with AT_IGNORE
|
||||
|
||||
#define OVERHEAD 2048
|
||||
#define MAX_ELF_HDR 512
|
||||
#include "MAX_ELF_HDR.S"
|
||||
|
||||
sub esp, MAX_ELF_HDR + OVERHEAD // alloca
|
||||
sub esp, MAX_ELF_HDR_32 + OVERHEAD // alloca
|
||||
push ebx // start of unmap region (&Elf32_Ehdr of this stub)
|
||||
|
||||
// Cannot pre-round .p_memsz because kernel requires PF_W to setup .bss,
|
||||
|
@ -127,7 +127,7 @@ L53:
|
|||
add esp, (8 +1)*4 // remove 8 params from pusha, also dynbase
|
||||
pop ecx // end of unmap region
|
||||
pop ebx // start of unmap region (&Elf32_Ehdr of this stub)
|
||||
add esp, MAX_ELF_HDR + OVERHEAD // un-alloca
|
||||
add esp, MAX_ELF_HDR_32 + OVERHEAD // un-alloca
|
||||
pop edx // bread crumb size in pages
|
||||
shl edx,12
|
||||
add ebx,edx // start of unmap region
|
||||
|
|
|
@ -126,8 +126,7 @@ done:
|
|||
}
|
||||
#endif /*}*/
|
||||
|
||||
#define MAX_ELF_HDR 512 // Elf32_Ehdr + n*Elf32_Phdr must fit in this
|
||||
|
||||
#include "MAX_ELF_HDR.c"
|
||||
|
||||
/*************************************************************************
|
||||
// "file" util
|
||||
|
@ -541,7 +540,7 @@ void *upx_main(
|
|||
unsigned const volatile dynbase // value+result: compiler must not change
|
||||
)
|
||||
{
|
||||
Elf32_Ehdr *const ehdr = (Elf32_Ehdr *)(void *)xo.buf; // temp char[MAX_ELF_HDR+OVERHEAD]
|
||||
Elf32_Ehdr *const ehdr = (Elf32_Ehdr *)(void *)xo.buf; // temp char[MAX_ELF_HDR_32+OVERHEAD]
|
||||
Elf32_Phdr const *phdr = (Elf32_Phdr const *)(1+ ehdr);
|
||||
Elf32_Addr reloc;
|
||||
Elf32_Addr entry;
|
||||
|
@ -582,7 +581,7 @@ void *upx_main(
|
|||
if (0 > fdi) {
|
||||
err_exit(18);
|
||||
}
|
||||
if (MAX_ELF_HDR!=read(fdi, (void *)ehdr, MAX_ELF_HDR)) {
|
||||
if (MAX_ELF_HDR_32!=read(fdi, (void *)ehdr, MAX_ELF_HDR_32)) {
|
||||
ERR_LAB
|
||||
err_exit(19);
|
||||
}
|
||||
|
|
|
@ -160,8 +160,8 @@ F_fd= 6*4 // frame offset to fd
|
|||
pop esi // LENX: total_size
|
||||
pop ecx // elfaddr
|
||||
#define OVERHEAD 2048
|
||||
#define MAX_ELF_HDR 512
|
||||
sub esp, MAX_ELF_HDR + OVERHEAD // alloca
|
||||
#include "MAX_ELF_HDR.S"
|
||||
sub esp, MAX_ELF_HDR_32 + OVERHEAD // alloca
|
||||
mov edx, esp // &tmp
|
||||
push ecx // elfaddr (9th arg)
|
||||
mov ebx, [ eax] // length of uncompressed ELF headers
|
||||
|
@ -184,7 +184,7 @@ F_fd= 6*4 // frame offset to fd
|
|||
// Buggy programs may depend on uninit stack being 0, so clear what we used.
|
||||
mov edx,edi // save auxv
|
||||
mov edi,esp
|
||||
mov ecx,((8 +1)*4 + MAX_ELF_HDR + OVERHEAD) >>2 // 8 params, elfaddr, un-alloca
|
||||
mov ecx,((8 +1)*4 + MAX_ELF_HDR_32 + OVERHEAD) >>2 // 8 params, elfaddr, un-alloca
|
||||
xor eax,eax // 0
|
||||
rep stosd // clear frame on exit
|
||||
mov esp,edi // end of frame
|
||||
|
|
|
@ -215,8 +215,7 @@ done:
|
|||
}
|
||||
#endif /*}*/
|
||||
|
||||
#define MAX_ELF_HDR 512 // Elf32_Ehdr + n*Elf32_Phdr must fit in this
|
||||
|
||||
#include "MAX_ELF_HDR.c"
|
||||
|
||||
/*************************************************************************
|
||||
// "file" util
|
||||
|
@ -918,7 +917,7 @@ void *upx_main(
|
|||
#endif //}
|
||||
|
||||
#if !defined(__mips__) && !defined(__powerpc__) /*{*/
|
||||
Elf32_Ehdr *const ehdr = (Elf32_Ehdr *)(void *)xo.buf; // temp char[MAX_ELF_HDR+OVERHEAD]
|
||||
Elf32_Ehdr *const ehdr = (Elf32_Ehdr *)(void *)xo.buf; // temp char[MAX_ELF_HDR_32+OVERHEAD]
|
||||
// sizeof(Ehdr+Phdrs), compressed; including b_info header
|
||||
size_t const sz_first = xi.size;
|
||||
#endif /*}*/
|
||||
|
@ -974,7 +973,7 @@ void *upx_main(
|
|||
if (0 > fdi) {
|
||||
err_exit(18);
|
||||
}
|
||||
if (MAX_ELF_HDR!=read(fdi, (void *)ehdr, MAX_ELF_HDR)) {
|
||||
if (MAX_ELF_HDR_32!=read(fdi, (void *)ehdr, MAX_ELF_HDR_32)) {
|
||||
ERR_LAB
|
||||
err_exit(19);
|
||||
}
|
||||
|
|
|
@ -124,9 +124,6 @@ void dprint8(
|
|||
// it at an address different from it load address: there must be no
|
||||
// static data, and no string constants.
|
||||
|
||||
#define MAX_ELF_HDR 512 // Elf32_Ehdr + n*Elf32_Phdr must fit in this
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
// util
|
||||
**************************************************************************/
|
||||
|
|
|
@ -59,7 +59,7 @@
|
|||
#define __NR_munmap 91
|
||||
|
||||
#define OVERHEAD 2048
|
||||
#define MAX_ELF_HDR 512
|
||||
#include "MAX_ELF_HDR.S"
|
||||
|
||||
pop ebp // get_fexp
|
||||
pop ecx // get_funf
|
||||
|
@ -85,7 +85,7 @@ L330:
|
|||
mov ebx,[a_val + esi]
|
||||
push ebx // save &Elf32_Phdr of compressed data
|
||||
|
||||
sub esp, MAX_ELF_HDR + OVERHEAD // working storage
|
||||
sub esp, MAX_ELF_HDR_32 + OVERHEAD // working storage
|
||||
mov edx, esp
|
||||
push ecx // get_funf 9th param to pti_main
|
||||
lea eax, [2*szElf32_Phdr + szl_info + szp_info + ebx] // 1st &b_info
|
||||
|
@ -97,7 +97,7 @@ L330:
|
|||
pusha // (AT_table, sz_cpr, get_fexp, &tmp_ehdr, {sz_unc, &tmp}, {sz_cpr, &b1st_info} )
|
||||
.extern pti_main
|
||||
call pti_main // returns entry address
|
||||
add esp, 9*4 + MAX_ELF_HDR + OVERHEAD // remove 9 params, temp space
|
||||
add esp, 9*4 + MAX_ELF_HDR_32 + OVERHEAD // remove 9 params, temp space
|
||||
pop ebx // &Elf32_Phdr
|
||||
push eax // save entry address
|
||||
mov ecx,[p_memsz + ebx]
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
// it at an address different from it load address: there must be no
|
||||
// static data, and no string constants.
|
||||
|
||||
#define MAX_ELF_HDR 512 // Elf32_Ehdr + n*Elf32_Phdr must fit in this
|
||||
#include "MAX_ELF_HDR.c"
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
|
@ -380,7 +380,7 @@ void *pti_main(
|
|||
Elf32_auxv_t *const av,
|
||||
unsigned const sz_compressed,
|
||||
f_expand *(*get_fexp(int)),
|
||||
Elf32_Ehdr *const ehdr, // temp char[MAX_ELF_HDR+OVERHEAD]
|
||||
Elf32_Ehdr *const ehdr, // temp char[MAX_ELF_HDR_32+OVERHEAD]
|
||||
struct Extent xo, // {sz_unc, ehdr} for ELF headers
|
||||
struct Extent xi, // {sz_cpr, &b_info} for ELF headers
|
||||
f_unfilter *(*get_funf(int))
|
||||
|
@ -415,7 +415,7 @@ void *pti_main(
|
|||
if (0 > fdi) {
|
||||
err_exit(18);
|
||||
}
|
||||
if (MAX_ELF_HDR!=read(fdi, (void *)ehdr, MAX_ELF_HDR)) {
|
||||
if (MAX_ELF_HDR_32!=read(fdi, (void *)ehdr, MAX_ELF_HDR_32)) {
|
||||
ERR_LAB
|
||||
err_exit(19);
|
||||
}
|
||||
|
|
|
@ -102,9 +102,9 @@ L30: // distribute existing Elf32_auxv into new table
|
|||
L40:
|
||||
|
||||
#define OVERHEAD 2048
|
||||
#define MAX_ELF_HDR 512
|
||||
#include "MAX_ELF_HDR.S"
|
||||
|
||||
sub esp, MAX_ELF_HDR + OVERHEAD
|
||||
sub esp, MAX_ELF_HDR_32 + OVERHEAD
|
||||
|
||||
xchg eax, ebx // eax= uncDst
|
||||
mov ecx, [ edx] // sz_unc
|
||||
|
@ -116,7 +116,7 @@ L40:
|
|||
pop ecx // junk
|
||||
push eax // save entry address
|
||||
popa // edi= entry address; esi= uncDst
|
||||
add esp, MAX_ELF_HDR + OVERHEAD // remove temp space
|
||||
add esp, MAX_ELF_HDR_32 + OVERHEAD // remove temp space
|
||||
|
||||
pop ecx // argc
|
||||
pop edx // $0 filename, to become argv[0]
|
||||
|
@ -141,7 +141,7 @@ L40:
|
|||
// Ulrich Drepper (drepper@cyngus.com) has refused to fix the bugs.
|
||||
// See GNU wwwgnats libc/1165 .
|
||||
|
||||
#define N_STKCLR (0x100 + MAX_ELF_HDR + OVERHEAD)/4
|
||||
#define N_STKCLR (0x100 + MAX_ELF_HDR_32 + OVERHEAD)/4
|
||||
lea edi, [esp - 4*N_STKCLR]
|
||||
pusha // values will be zeroed
|
||||
mov ebx,esp // save
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
// it at an address different from it load address: there must be no
|
||||
// static data, and no string constants.
|
||||
|
||||
#define MAX_ELF_HDR 512 // Elf32_Ehdr + n*Elf32_Phdr must fit in this
|
||||
#include "MAX_ELF_HDR.c"
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
|
@ -289,7 +289,7 @@ getexec(char const *const fname, Elf32_Ehdr *const ehdr, Elf32_auxv_t *const av)
|
|||
err_exit(18);
|
||||
ERR_LAB
|
||||
}
|
||||
if (MAX_ELF_HDR!=read(fdi, (void *)ehdr, MAX_ELF_HDR)) {
|
||||
if (MAX_ELF_HDR_32!=read(fdi, (void *)ehdr, MAX_ELF_HDR_32)) {
|
||||
err_exit(19);
|
||||
}
|
||||
return do_xmap(fdi, ehdr, av);
|
||||
|
@ -306,7 +306,7 @@ void *upx_main(
|
|||
Elf32_auxv_t *const av,
|
||||
unsigned const junk,
|
||||
f_expand *const f_decompress,
|
||||
Elf32_Ehdr *const ehdr, // temp char[MAX_ELF_HDR]
|
||||
Elf32_Ehdr *const ehdr, // temp char[MAX_ELF_HDR_32]
|
||||
struct Extent xi,
|
||||
struct Extent xo
|
||||
) __asm__("upx_main");
|
||||
|
@ -315,7 +315,7 @@ void *upx_main(
|
|||
Elf32_auxv_t *const av,
|
||||
unsigned const junk,
|
||||
f_expand *const f_decompress,
|
||||
Elf32_Ehdr *const ehdr, // temp char[MAX_ELF_HDR]
|
||||
Elf32_Ehdr *const ehdr, // temp char[MAX_ELF_HDR_32]
|
||||
struct Extent xi,
|
||||
struct Extent xo
|
||||
)
|
||||
|
|
|
@ -94,9 +94,9 @@ L50:
|
|||
call do_auxv // move; fill new auxv slots with AT_IGNORE
|
||||
|
||||
#define OVERHEAD 2048
|
||||
#define MAX_ELF_HDR 512
|
||||
#include "MAX_ELF_HDR.S"
|
||||
|
||||
sub esp, MAX_ELF_HDR + OVERHEAD // alloca
|
||||
sub esp, MAX_ELF_HDR_32 + OVERHEAD // alloca
|
||||
push ebx // start of unmap region (&Elf32_Ehdr of this stub)
|
||||
|
||||
// Cannot pre-round .p_memsz because kernel requires PF_W to setup .bss,
|
||||
|
@ -127,7 +127,7 @@ L53:
|
|||
add esp, (8 +1)*4 // remove 8 params from pusha, also dynbase
|
||||
pop ecx // end of unmap region
|
||||
pop ebx // start of unmap region (&Elf32_Ehdr of this stub)
|
||||
add esp, MAX_ELF_HDR + OVERHEAD // un-alloca
|
||||
add esp, MAX_ELF_HDR_32 + OVERHEAD // un-alloca
|
||||
pop edx // bread crumb size in pages
|
||||
shl edx,12
|
||||
add ebx,edx // start of unmap region
|
||||
|
|
|
@ -126,7 +126,7 @@ done:
|
|||
}
|
||||
#endif /*}*/
|
||||
|
||||
#define MAX_ELF_HDR 512 // Elf32_Ehdr + n*Elf32_Phdr must fit in this
|
||||
#include "MAX_ELF_HDR.c"
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
|
@ -546,7 +546,7 @@ void *upx_main(
|
|||
unsigned const volatile dynbase // value+result: compiler must not change
|
||||
)
|
||||
{
|
||||
Elf32_Ehdr *const ehdr = (Elf32_Ehdr *)(void *)xo.buf; // temp char[MAX_ELF_HDR+OVERHEAD]
|
||||
Elf32_Ehdr *const ehdr = (Elf32_Ehdr *)(void *)xo.buf; // temp char[MAX_ELF_HDR_32+OVERHEAD]
|
||||
Elf32_Phdr const *phdr = (Elf32_Phdr const *)(1+ ehdr);
|
||||
Elf32_Addr old_hi[2]= {0u, 0u};
|
||||
Elf32_Addr reloc;
|
||||
|
@ -588,7 +588,7 @@ void *upx_main(
|
|||
if (0 > fdi) {
|
||||
err_exit(18);
|
||||
}
|
||||
if (MAX_ELF_HDR!=read(fdi, (void *)ehdr, MAX_ELF_HDR)) {
|
||||
if (MAX_ELF_HDR_32!=read(fdi, (void *)ehdr, MAX_ELF_HDR_32)) {
|
||||
ERR_LAB
|
||||
err_exit(19);
|
||||
}
|
||||
|
|
|
@ -67,7 +67,7 @@ __NR_write = 4+ __NR_Linux
|
|||
|
||||
PATHSIZE=4096
|
||||
OVERHEAD=2048
|
||||
MAX_ELF_HDR=512
|
||||
#include "MAX_ELF_HDR.S"
|
||||
|
||||
MAP_PRIVATE= 0x002
|
||||
MAP_ANONYMOUS=0x800 # not same as i386
|
||||
|
@ -161,7 +161,7 @@ L30: // copy auxv
|
|||
addu tmp,a1,v0
|
||||
sb $0,(tmp) # null terminate the path
|
||||
0:
|
||||
addiu sp,-MAX_ELF_HDR # alloca
|
||||
addiu sp,-MAX_ELF_HDR_32 # alloca
|
||||
move t3,$r_PMASK # page_mask
|
||||
move t2,$r_elfa # &Elf32_Ehdr of stub
|
||||
move t1,zero # &f_unfilter
|
||||
|
@ -189,7 +189,7 @@ BAL=0x04110000
|
|||
/* entry= upx_main(b_info *a0, total_size a1, Elf32_Ehdr *a2, Elf32_Auxv_t *a3,
|
||||
f_decompr t0, f_unfilter t1, Elf32_Ehdr &t2, page_mask t3 )
|
||||
*/
|
||||
addiu sp,MAX_ELF_HDR # un-alloca
|
||||
addiu sp,MAX_ELF_HDR_32 # un-alloca
|
||||
move $r_fexp,v0 # &entry
|
||||
|
||||
p_vaddr= 4+4
|
||||
|
|
Loading…
Reference in New Issue