Batch file to embed binary files in a regular batch file

Showing 1-5 of 5 messages
Batch file to embed binary files in a regular batch file EdmSaleBoy 10/22/03 4:52 PM
Hey guys, first time poster here.  Here's a little (sort of) batch
file that:

1. Takes the input file and uses debug to DUMP it to hex.

2. Takes the dumped hex file and reformats it so that it can be
reassembled via debug, and writes this out to a new batch file.

3. You then take the contents of the resulting batch file
(EMBEDDED.BAT) and copy and paste them into your main batch file.
When the contents are executed it will recreate the file on the fly
for you to subsequently use!

Limitations?  Heck yeah:

1. Files that can be embedded are currently limited to 64k (debug
limitation)

2. The batch code that gets created is way bigger than the original
file, so careful if you want to fit it on a floppy disk!

Any questions or comments, just email me.  Thanks!

@echo off


:: Binary file embedding script.  Copyright 2003, Julian Karst

:: Use this at your own risk!

:: Thanks a bunch to: http://www.datainstitute.com/debug1.htm


Echo Working...

REN %1 IN.TXT

:: Get the size of the file in question, and store it.

for /f "tokens=1,2,3,4" %%i in ('dir IN.TXT /-C ^| find /i "IN.TXT"')
do set FILESIZE=%%l


:: Find out how many 128 byte "chunks" we'll need to read

set /a CHUNKS=(FILESIZE/128)+1


:: Now we use a FOR loop and create a debug batch file

echo L >$$$.txt

echo D 0 >>$$$.txt

FOR /L %%i in (2,1,%CHUNKS%) do echo D >>$$$.txt

echo Q >>$$$.txt

debug IN.TXT <$$$.txt >RESULT.TXT

del $$$.txt

REN IN.txt %1

:: Now we need to convert the decimal file size to a hex value.

set HEXNUMS=0123456789ABCDEF

set /a RESULT=%FILESIZE%%%16
echo SET HEX=%%HEXNUMS:~%RESULT%,1%% >$$$.bat
call $$$.bat

set HEXSTRING=%HEX%

set /a FILESIZE=%FILESIZE%/16

set /a RESULT=%FILESIZE%%%16
echo SET HEX=%%HEXNUMS:~%RESULT%,1%% >$$$.bat
call $$$.bat

set HEXSTRING=%HEX%%HEXSTRING%

set /a FILESIZE=%FILESIZE%/16

set /a RESULT=%FILESIZE%%%16
echo SET HEX=%%HEXNUMS:~%RESULT%,1%% >$$$.bat
call $$$.bat

set HEXSTRING=%HEX%%HEXSTRING%

set HEXSTRING=%HEXSTRING: =%


set /a FILESIZE=%FILESIZE%/16

set /a RESULT=%FILESIZE%%%16
echo SET HEX=%%HEXNUMS:~%RESULT%,1%% >$$$.bat
call $$$.bat

set HEXSTRING=%HEX%%HEXSTRING%

set HEXSTRING=%HEXSTRING: =%


echo echo. >embedded.bat

echo echo N OUT.TXT ^>^>$$$.txt >>embedded.bat

type RESULT.TXT | find ":" >RESULT2.TXT

for /f "tokens=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18 delims=:-
" %%a in (result2.txt) do echo echo E %%b %%c %%d %%e %%f %%g %%h %%i
%%j %%k %%l %%m %%n %%o %%p %%q %%r ^>^>$$$.txt >>embedded.bat

echo echo RCX ^>^>$$$.TXT >>embedded.bat
echo echo %HEXSTRING%^>^>$$$.txt >>embedded.bat
echo echo W ^>^>$$$.txt >>embedded.bat
echo echo Q ^>^>$$$.txt >>embedded.bat

echo debug ^<$$$.txt >>embedded.bat

echo del $$$.txt >>embedded.bat


del result?.TXT & del $$$.bat

Batch file to embed binary files in a regular batch file Todd Vargo 10/22/03 9:12 PM

"EdmSaleBoy" <newsacc...@yahoo.com> wrote in message
news:5b77ab07.0310221552.7f206f60@posting.google.com...

> Hey guys, first time poster here.  Here's a little (sort of) batch
> file that:
>
> 1. Takes the input file and uses debug to DUMP it to hex.
>
> 2. Takes the dumped hex file and reformats it so that it can be
> reassembled via debug, and writes this out to a new batch file.
>
> 3. You then take the contents of the resulting batch file
> (EMBEDDED.BAT) and copy and paste them into your main batch file.
> When the contents are executed it will recreate the file on the fly
> for you to subsequently use!
>
> Limitations?  Heck yeah:
>
> 1. Files that can be embedded are currently limited to 64k (debug
> limitation)
>
> 2. The batch code that gets created is way bigger than the original
> file, so careful if you want to fit it on a floppy disk!
>
> Any questions or comments, just email me.  Thanks!
>
> @echo off
>
>
> :: Binary file embedding script.  Copyright 2003, Julian Karst
>
> :: Use this at your own risk!
>
> :: Thanks a bunch to: http://www.datainstitute.com/debug1.htm
>
>
> Echo Working...
>
> REN %1 IN.TXT
>
> :: Get the size of the file in question, and store it.
>
> for /f "tokens=1,2,3,4" %%i in ('dir IN.TXT /-C ^| find /i "IN.TXT"')
> do set FILESIZE=%%l
snip...

Unfortunately, another limitation is that it can NOT be used on any DOS
based systems (even 95/98/ME with Win95cmd.exe).

--
Todd Vargo (body of message must contain my name to reply by email)

Batch file to embed binary files in a regular batch file Herbert Kleebauer 10/23/03 2:25 AM

EdmSaleBoy wrote:
>
> Hey guys, first time poster here.  Here's a little (sort of) batch
> file that:
>
> 1. Takes the input file and uses debug to DUMP it to hex.
>
> 2. Takes the dumped hex file and reformats it so that it can be
> reassembled via debug, and writes this out to a new batch file.
>
> 3. You then take the contents of the resulting batch file
> (EMBEDDED.BAT) and copy and paste them into your main batch file.
> When the contents are executed it will recreate the file on the fly
> for you to subsequently use!

I think there is an easier way to include binaries in a batch file:


@echo off
if exist %0.bat %0.bat
echo Bj@jzh`0X-`/PPPPPPa(DE(DM(DO(Dh(Ls(Lu(LX(LeZRR]EEEUYRX2Dx=>h2b.com
echo 0DxFP,0Xx.t0P,=XtGsB4o@$?PIyU WwX0GwUY Wv;ovBX2Gv0ExGIuht6>>h2b.com
echo ?@}I{uNWEF~NFAa_Lj@KLtH]~CEvEFIKbAa_wN@SuNS`{ECCttasae~BHM>>h2b.com
echo AcjFnvnHAwrvx[}gIKDw??Frt\gqj~{?s?csIsqo{O_KtBve{Sx{nB{Eu@>>h2b.com
echo fq`tkfk?e@oKCA_?_E@?WxAs?agBwRjnLK?s@w`G`LKLAcyA?@xAsZpk`L>>h2b.com
echo ~KxlqLct@vAc_A_yBJ@xAGZp?o?sBXq`LR@xUrFQt=A_E?B?~rB?~r0>>h2b.com

:: generate a popup window for username/password input
h2b "::bi" <%0 >batinput.exe

batinput.exe Aladin>_.bat
call _.bat
del _.bat
:: in NT/2k better use:
:: for /f "tokens=*" %%i in ('batinput.exe Aladin') do %%i

if     [%pass%]==[sesam] echo Password OK
if     [%pass%]==[sesam] echo Hello %user%
if not [%pass%]==[sesam] echo wrong Password
if not [%pass%]==[sesam] echo Hello unknown
echo.
echo Use mouse to fly, press any key to exit
pause

:: generate a simple DOS demo
h2b "::dd" <%0 >dosdemo.com
dosdemo.com

echo.
echo The same program as Windows demo
pause

:: generate a simple Win demo
h2b "::wd" <%0 >windemo.exe
del h2b.com
windemo.exe

:: hex dump of batinput.exe
::bi 4d5a60010100000004000000ffff00006001000000000000400000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi a00000000e1fba0e00b409cd21b8014ccd214e69636520746f206d656574
::bi 20736f6d65626f64792077686f206973207374696c6c207573696e672044
::bi 4f532c0d0a627574206869732070726f6772616d20726571756972657320
::bi 57696e33322e0d0a2400504500004c0101005079a5360000000000000000
::bi e0000f010b01050c000600000000000000000000b4110000001000000020
::bi 000000004000001000000002000004000000000000000400000000000000
::bi 002000000002000000000000030000000000100000100000000010000010
::bi 000000000000100000000000000000000000401000003c00000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000010000040000000000000000000
::bi 0000000000000000000000000000000000002e746578740000002f050000
::bi 001000000006000000020000000000000000000000000000200000e00000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 0000b0100000be100000d8100000ea100000fc1000000811000016110000
::bi 2611000032110000000000006411000072110000821100008e110000a011
::bi 0000000000008810000000000000000000007c100000001000004c110000
::bi 00000000000000003e110000281000000000000000000000000000000000
::bi 0000000000005553455233322e646c6c0000b0100000be100000d8100000
::bi ea100000fc10000008110000161100002611000032110000000000000000
::bi 4d657373616765426f78410000004469616c6f67426f78496e6469726563
::bi 74506172616d41000000476574446c674974656d54657874410000005365
::bi 74446c674974656d5465787441000000456e644469616c6f670000004765
::bi 74446c674974656d00000000476574446c674374726c4944000000004765
::bi 74466f63757300000000536574466f63757300004b45524e454c33322e64
::bi 6c6c00006411000072110000821100008e110000a0110000000000000000
::bi 4578697450726f6365737300000047657453746448616e646c6500000000
::bi 577269746546696c65000000476574436f6d6d616e644c696e6541000000
::bi 4765744d6f64756c6548616e646c654100006800000000ff153810400068
::bi 0000000068eb114000680000000068bc12400050ff150410400050b85014
::bi 4000e8df010000ff15281040008b4424083d100100000f849e0000003d11
::bi 010000740531c0c210008b44240c663d0200747b663d010075ebff151c10
::bi 400050ff15181040003d0f000000751b6a10ff742408ff151410400050ff
::bi 1520104000b801000000c2100060be59144000bf0f0000006a505657ff74
::bi 2430ff150810400001c6c7060d0a7365c7460474207061c7460873733d00
::bi 83c60b4781ff1000000076d0c746f50d0a0000619031c050ff742408ff15
::bi 10104000eba5ff15341040004840803800740680382075f540506a0fff74
::bi 240cff150c104000eb8300000208c0800000000006000a000a00c8005a00
::bi 0000000042006100740063006800200049006e0070007500740000000000
::bi 000001500000000037000a0078000a000f00ffff81000000000000002000
::bi 01500000000037001e0078000a001000ffff810000000000000001000150
::bi 000000007800370028000f000100ffff80004f004b000000000000000000
::bi 0150000000003c00370028000f000200ffff8000430061006e0063006500
::bi 6c0000000000000002000050000000000a000a0023000a000d00ffff8200
::bi 55007300650072006e0061006d0065003a00000000000200005000000000
::bi 0a001e0023000a000e00ffff8200500061007300730077006f0072006400
::bi 3a00000000006089c68a0608c0740846e805000000ebf26190c350a23814
::bi 400031c0030548144000750d6af5ff152c104000a3481440006a00684c14
::bi 40006a01683814400050ff153010400009c0751c6a006839144000683914
::bi 40006a00ff15001040006a00ff1528104000813d4c1440000100000075d8
::bi 58c3007772697465206572726f7200000000000000000000000073657420
::bi 757365723d0d0a73657420706173733d0d0a000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 000000000000000000000000000000000000000000000000000000000000
::bi 0000000000000000

:: hex dump of dosdemo.com
::dd 8cd805001050050010a33b058ee00500108ee80500103b0602007201c3fc
::dd 30e4cd1a80ca018916390531c0cd33400f94063705b81300cd1030c0bac8
::dd 03ee42befc04ad08c074250f98c789c766ad0fb6c866c1e808b303eed1cf
::dd 140028f866c1c808fecb74f279efe2ebebd631db65881fb98080e8f102d0
::dd ed75f931ff658a05c0e80388c2d0ea00d004106488054775ec0fa1650fb6
::dd 15b90700beee04ad89c365021180d600e2f5c1ea036488154775e2640fb6
::dd 05642a450380dc00052000790231c03d3f007603b83f006588054775e066
::dd b8000002008b2e2d058b0e3105c1cd04c1c90489eb88cfc1ed0cc1e90c89
::dd e8fec3fec731f6e8e902b8100029e850fecbe8de025880f10ffec1fecfe8
::dd d30289e8fec3e8cc0289f080c4197303b8ffffa33505bf4b0966b9640000
::dd 00f7d066c1e00a66508e1e3b05665866506631d266f7f1662e8b362d0566
::dd 2e8b2e310566c1e60966c1e5096629c66601c566c1e80789f366c1ee1081
::dd e6ff0066c1ed0881e500ff09ee6689c566c1ed104d30d2a401c311eefeca
::dd 75f74980f9040f85a9ff83c404b80f0fb214b90001f3ab2d01017503b801
::dd 01feca75ef0e1fb8c800bf4705b501f3abc7063d05800c8b363d05a13105
::dd f7d0250f0001c6a1350531d2f7f6056400a33f0531c0ba0100f7f6a34105
::dd b80064e8f201892e4709b800aae8e801892e4909660fb7c666c1e00666a3
::dd 4305833e3d0510750cc7063f05c800c70641050000668b0e2d0566c1e10c
::dd 66c1e0076629c18b16310503163d05c1ea046689cb66c1eb1088d731f603
::dd 0e4305121e4505fec3640fb607fecb642a0780dc0051d1e9f7e90facd007
::dd 640227e87a018bbc470589ac4705fec3658a07fecb652a07f6ed01c06502
::dd 2789c28b8447078994470781ffc7007f4639ef7d42575029ef29d099f7ff
::dd 5a5f4701c209ff782c81ffc7007f2a80cec0393e49097d0c80e6bf393e47
::dd 097d0380f6c05657d1ee81c64b09c1e70801fe88345f5e39ef7cc9594646
::dd 81fe00020f8261ff832e3d05100f85dafebe4b098e062705bf2000b3c8b9
::dd 4000f366a583c740fecb75f30e07b401cd16740a30e4cd16b80300cd10c3
::dd 31c931d2803e3705007405b80b00cd3309c9750409d274d8010e2d052916
::dd 3105e9a2fd5250b8a741f7263905f7362b05891639050fb6c1c1e0024821
::dd c2580fba263905097302f7da01d078093dff007206b0ffeb0231c05a6588
::dd 07c338cd754b53650fb607505300cb5300cb65020780d40089c2d1e85be8
::dd a9ff5b5800cf5300cf65020780d40065021780d600d1e85be890ff00cb53
::dd 00cb00cf65021780d600c1ea025b89d0e87aff5bc3d0e9e8acff00cb00cb
::dd e8a5ff00cf00cfe89eff28cb28cbe897ff28cf28cfd0e1c3f72641058b2e
::dd 3f0529d5c3f6e1640fb617f7e201c6c3010003000001000300ff00fdfeff
::dd 01010100000077770f080818123420282837b5361038383f421240000f00
::dd 1234400f000025344020201f0000a00a00ffff2019000020190000

:: hex dump of windemo.exe
::wd 4d5a60010100000004000000ffff00006001000000000000400000000000
::wd 000000000000000000000000000000000000000000000000000000000000
::wd a00000000e1fba0e00b409cd21b8014ccd214e69636520746f206d656574
::wd 20736f6d65626f64792077686f206973207374696c6c207573696e672044
::wd 4f532c0d0a627574206869732070726f6772616d20726571756972657320
::wd 57696e33322e0d0a2400504500004c0101005079a5360000000000000000
::wd e0000f010b01050c000c0000000000000000000054130000001000000030
::wd 030000004000001000000002000004000000000000000400000000000000
::wd 003003000002000000000000020000000000100000100000000010000010
::wd 000000000000100000000000000000000000741000005000000000000000
::wd 000000000000000000000000000000000000000000000000000000000000
::wd 000000000000000000000000000000000000000000000000000000000000
::wd 000000000000000000000000000000000010000074000000000000000000
::wd 0000000000000000000000000000000000002e7465787400000018180300
::wd 00100000000c000000020000000000000000000000000000200000e00000
::wd 000000000000000000000000000000000000000000000000000000000000
::wd 000000000000000000000000000000000000000000000000000000000000
::wd 0000e210000006110000f210000000000000c8110000001200000e120000
::wd 201200002c1200003a120000da110000ee110000c0110000b0110000a211
::wd 000094110000801100006c11000060110000000000007a12000086120000
::wd 96120000aa120000ba120000ce120000e4120000ee12000000000000d210
::wd 00000000000000000000c410000000100000201100000000000000000000
::wd 14110000101000005612000000000000000000004c120000501000000000
::wd 0000000000000000000000000000000000004b45524e454c33322e646c6c
::wd 0000e210000006110000f21000000000000000004765745469636b436f75
::wd 6e74000000004765744d6f64756c6548616e646c65410000000045786974
::wd 50726f63657373005553455233322e646c6c0000c8110000001200000e12
::wd 0000201200002c1200003a120000da110000ee110000c0110000b0110000
::wd a211000094110000801100006c1100006011000000000000000052656c65
::wd 617365444300000044697370617463684d65737361676541000000005472
::wd 616e736c6174654d657373616765000000004765744d6573736167654100
::wd 000053686f77437572736f7200000000536574437572736f72506f730000
::wd 0000476574444300000043726561746557696e646f774578410000004765
::wd 7453797374656d4d657472696373000000005265676973746572436c6173
::wd 7341000000004c6f6164437572736f724100000044656657696e646f7750
::wd 726f634100000000456e645061696e7400000000426567696e5061696e74
::wd 00000000506f7374517569744d6573736167650047444933322e646c6c00
::wd 7a1200008612000096120000aa120000ba120000ce120000e4120000ee12
::wd 000000000000000044656c65746544430000000044656c6574654f626a65
::wd 637400000000437265617465536f6c696442727573680000000053656c65
::wd 63744f626a6563740000000043726561746544494253656374696f6e0000
::wd 0000437265617465436f6d70617469626c65444300000000426974426c74
::wd 0000000052656374616e676c650003000000d41440000000000000000000
::wd 000000000000000000000000060000000000000022134000657264650000
::wd 280000000001000038ffffff010018000000000000000000e8030000e803
::wd 00000000000000000000000000006800000000ff1508104000a30a134000
::wd 68007f00006a00ff1514104000a31213400068fa124000ff152c10400009
::wd c075086affff15041040006a00ff1528104000a3841b40006a01ff152810
::wd 4000a3881b40006a00ff350a1340006a006a00ff35881b4000ff35841b40
::wd 006a006a006800000090682713400068221340006a00ff151010400009c0
::wd 74a7a38c1b400050ff1530104000a3901b40006a00ff156410400009c074
::wd 8aa3941b40006a006a00689c1b40006a006828134000ff35901b4000ff15
::wd 6010400009c00f8461ffffffa3981b400050ff35941b4000ff155c104000
::wd 09c00f8447ffffff6a00ff1558104000a3a01b400068c800000068c80000
::wd 00ff15341040006a00ff1538104000e8a2010000e8770300006a006a006a
::wd 0068bc274300ff153c10400009c0741868bc274300ff154010400068bc27
::wd 4300ff1544104000ebd3ff35a01b4000ff1554104000ff35981b4000ff15
::wd 54104000ff35941b4000ff1550104000ff35901b40006a00ff1548104000
::wd 6a00ff15041040008b44240883f80f742e83f802741c3d020100000f8410
::wd 0100003d000200000f84a7000000ff25181040006a00ff152410400031c0
::wd c2100068d8274300ff742408ff1520104000a39b154000ff35a01b400050
::wd ff155c104000ff35881b4000ff35841b40006a006a00ff359b154000ff15
::wd 6c104000682000cc006a006a00ff35941b400068c80000006800010000a1
::wd 881b40002dc8000000d1e850a1841b40002d00010000d1e850ff359b1540
::wd 00ff156810400068d8274300ff742408ff151c10400031c0c21000000000
::wd 008b4424103dc800c800744e8b0d781b40008d940138ffffff8b0d7c1b40
::wd 00c1e81029c181e2ffff000081c1c80000008915781b400081e1ffff0000
::wd 890d7c1b400068c800000068c8000000ff153410400060e8ee0100006190
::wd 31c0c210006a00ff152410400031c0c21000ff35a01b4000ff35901b4000
::wd ff155c104000ff35881b4000ff35841b40006a006a00ff35901b4000ff15
::wd 6c104000ff15001040000c01a3a41b4000fcbe0c1b4000bfa81b40008b0e
::wd 83c60409c974158b0683c6048b1683c604890783c70401d0e2f7ebe231db
::wd 889ba81f410066b98080e8d8000000d0ed75f731ff8a87a81f4100c0e803
::wd 88c2d0ea00d004108887a81f4200664775e5660fb697a81f4100b9070000
::wd 00be581b4000ad6601c70297a81f410080d6006629c7e2ee66c1ea038897
::wd a81f4000664775ce660fb687a81f40006683c7032a87a81f400080dc0066
::wd 83ef0366052000790231c06683f83f7602b03f8887a81f4100664775cdc3
::wd 3c32770580f90476415250b8a7410000f725a41b4000f735741b40008915
::wd a41b40000fb6c1c1e0024821c2580fba25a41b4000097302f7da01d0780b
::wd 3dff0000007206b0ffeb0231c05a8883a81f4100c338cd7560530fb683a8
::wd 1f4100505300cb5300cb0283a81f410080d40089c2d1e85be889ffffff5b
::wd 5800cf5300cf0283a81f410080d4000293a81f410080d600d1e85be868ff
::wd ffff00cb5300cb00cf0293a81f410080d600c1ea025b89d0e84dffffff5b
::wd c3d0e9e895ffffff00cb00cbe88cffffff00cf00cfe883ffffff28cb28cb
::wd e87affffff28cf28cfd0e1c38b2d781b40008b0d7c1b4000c1cd04c1c904
::wd 0fb7dd88cfc1ed1cc1e91c89e8fec3fec7f6e10fb693a81f4000f7e289c6
::wd b81000000029e850fecbf6e10fb693a81f4000f7e201c65880f10ffec1fe
::wd cff6e10fb693a81f4000f7e201c689e8fec3f6e10fb693a81f4000f7e201
::wd f080c419730466b8ffffa3801b40008b3d9c1b4000bd6400000035ffff02
::wd 00c1e00a50585031d2f7f58b0d781b40008b1d7c1b4000c1e109c1e30929
::wd c101c3c1e80789c6c1eb0830d289c801f1c1e81088fc0fb680a81f42008b
::wd 0485a81b4000880747c1e808880747882747feca75d9664d83fd0475ac58
::wd b214be10000000b9000200004e790231f68b04b5a81b4000880747c1e808
::wd 880747882747e2ebfeca75ddb8c8000000bfb41f4300b900010000f3abbf
::wd 800c000089fea17c1b4000f7d083e00f01c6a1801b400031d2f7f683c064
::wd a3a81f430031d2b800000100f7f6a3ac1f4300b800640000f725ac1f4300
::wd c1e8108b2da81f430029c5892db4274300b800aa0000f725ac1f4300c1e8
::wd 108b2da81f430029c5892db8274300c1e6068935b01f430083ff107514c7
::wd 05a81f4300c8000000c705ac1f4300000000008b0d781b4000c1e10cc1e6
::wd 0729f18b1d7c1b40006601fb66c1e30431f6030db01f430089c8c1e81088
::wd c3fec30fb683a81f4100fecb0fb693a81f410029d00fb7e90fafc5c1f808
::wd 86d601d0ff34b5b42343008904b5b4234300fec30fb683a81f4000fecb0f
::wd b693a81f400029d00fb7e90fafc5c1f80886d601d0f72dac1f4300c1e810
::wd 8b15a81f430029c28b2cb5b41f43008914b5b41f43005881fdc80000000f
::wd 8d810000003b2cb5b41f43000f8d7400000050552b04b5b4234300992b2c
::wd b5b41f4300f7fd5d5a5153453b2cb5b41f43007f5101c209ed78f081fdc7
::wd 0000007f436681ca00c03b2db82743007e126681e2ffbf3b2db42743007e
::wd 056681f200c089eb86df01f38d1c5b031d9c1b40000fb6ce8b0c8da81b40
::wd 0066890bc1e908886b02eba55b594681fe000100000f82e9feffff83ef10
::wd 0f853cfeffff682000cc006a006a00ff35941b400068c800000068000100
::wd 00a1881b40002dc8000000d1e850a1841b40002d00010000d1e850ff3590
::wd 1b4000ff1568104000c310000000602020000404040020000000e0a0a000
::wd 0102020010000000ffe0e000fefdfd004000000000400000010201004000
::wd 000000004000010202004000000080808000020202000000000001000000
::wd 03000000000100000003000000ffffff00fdfffffeffffffffff0000e803
::wd 0000e8030000000000000000000000000000000000000000000000000000
::wd 000000000000000000000000000000000000000000000000000000000000
::wd 000000000000000000000000000000000000000000000000000000000000
::wd 000000000000000000000000000000000000000000000000000000000000
::wd 0000000000000000000000000000

Batch file to embed binary files in a regular batch file Reinhardt Kern 10/27/03 1:55 PM
Herbert Kleebauer <kl...@unibwm.de> wrote:

>I think there is an easier way to include binaries in a batch file:
>
>
>@echo off
>if exist %0.bat %0.bat
>echo Bj@jzh`0X-`/PPPPPPa(DE(DM(DO(Dh(Ls(Lu(LX(LeZRR]EEEUYRX2Dx=>h2b.com
>echo 0DxFP,0Xx.t0P,=XtGsB4o@$?PIyU WwX0GwUY Wv;ovBX2Gv0ExGIuht6>>h2b.com
>echo ?@}I{uNWEF~NFAa_Lj@KLtH]~CEvEFIKbAa_wN@SuNS`{ECCttasae~BHM>>h2b.com
>echo AcjFnvnHAwrvx[}gIKDw??Frt\gqj~{?s?csIsqo{O_KtBve{Sx{nB{Eu@>>h2b.com
>echo fq`tkfk?e@oKCA_?_E@?WxAs?agBwRjnLK?s@w`G`LKLAcyA?@xAsZpk`L>>h2b.com
>echo ~KxlqLct@vAc_A_yBJ@xAGZp?o?sBXq`LR@xUrFQt=A_E?B?~rB?~r0>>h2b.com


Hello Herbert,
how do you overcome the cmd.exe special characters like ", >, <,
^, % and so on? - Sometimes this characters appear in your
binaries. Then your method fails.

Do you have a converter from binary to batch?

Reinhardt

Batch file to embed binary files in a regular batch file Herbert Kleebauer 10/28/03 3:27 PM

I'm pretty sure, that these characters don't appear in my binaries.
The first two echo lines (which are common to all my ASCII programs) is
a hand written decoder routine for the remaining lines (which is
a ASCII encoded version of a normal com program).

 
> Do you have a converter from binary to batch?

For more information take a look at Laura Fairhead's web page:

>> Assemble .COM file using MASM6+ and convert .COM file
>> to ascii-code using my CM3 utility ( http://lf.8k.com/TOOLS/TOOLS.HTM )

or:

ftp://137.193.64.130/pub/assembler/ube.zip