I'm trying to repair a large batch of corrupted .docx files in classic asp. 
(The files are missing bytes at the end - as detailed in this question).
When I look at the file in Sublime (which shows it in a hex view), the corruption can be fixed by adding 0000 to the end of the file.  
But I am struggling to add those 4 zeros onto the end, programmatically.
I am attempting to use the cByteArray class, the usage of which is like this:
With oByte
    Call .AddBytes(LoadBytes(sFilePath))
    Call .AddBytes(HOW DO I GET THE BYTE VALUE OF 0000 HERE?)
    lngBytes = .BytesTotal
    ByteArray = .ReturnBytes
End With
Call SaveBytesToBinaryFile(ByteArray, sNewFilePath)
I can't work out how to get the 0000 value into the .AddBytes() method.
How can I do this? I'm a bit out of my depth and not sure if I'm even approaching this the right way.
In my ignorance, here's what I have tried:
Redimming ByteArray leaving the extra bytes empty (because I think the 0000 represent null values). 
This doesn't seem to change the file at all. The new saved file is identical to the old file.
With oByte
    Call .AddBytes(LoadBytes(sFilePath))
    ByteArray = .ReturnBytes
End With
arrayLength = ubound(ByteArray)
redim ByteArray(arrayLength + 2)
Call SaveBytesToBinaryFile(ByteArray, sNewFilePath)
Converting 0000 from hex to bytes and adding it to the corrupted file bytes. 
Again, this doesn't seem to change the file at all.
dim k, hexString, str, stream, byteArrToAdd
hexString = "000000"
For k = 1 To Len(hexString) Step 2
 str = str & Chr("&h" & Mid(hexString, k, 2))
response.write "<hr />" & str & "<hr />"
Next
Set stream = CreateObject("ADODB.Stream")
With stream
 .Open
 .Type = 2       ' set type "text"
 .WriteText str  
 .Position = 0
 .Type = 1       ' change type to "binary"
 byteArrToAdd = .Read 
 .Close
End With
set stream = nothing
With oByte
    Call .AddBytes(LoadBytes(sFilePath))
    Call .AddBytes(byteArrToAdd)
    ByteArray = .ReturnBytes
End With
Call SaveBytesToBinaryFile(ByteArray, sNewFilePath)
Getting the final byte of the corrupted file, and adding it to 2 new values after redimming ByteArray.
This doesn't seem to change the file at all either!!
With oByte
    Call .AddBytes(LoadBytes(sFilePath))
    ByteArray = .ReturnBytes
End With
arrayLength = ubound(ByteArray)
finalByte = ByteArray(arrayLength)
redim ByteArray(arrayLength + 2)
ByteArray(arrayLength + 1) = finalByte
ByteArray(arrayLength + 2) = finalByte
Call SaveBytesToBinaryFile(ByteArray, sNewFilePath)
