Advertisement
Guest User

Untitled

a guest
Jan 24th, 2019
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.65 KB | None | 0 0
  1. getSigData = function (src:IDataInput, forcePosition:Boolean=true):Object
  2. {
  3. var swfHeader:String;
  4. var swfFlashVersion:uint;
  5. var swfLength:uint;
  6. var nbBits:int;
  7. var swfFrameRate:uint;
  8. var swfFrameCount:uint;
  9. var tagInfo:int;
  10. var tagType:int;
  11. var tagLen:int;
  12. var sigResult:Object;
  13. var metadata:String;
  14. try
  15. {
  16. if (forcePosition)
  17. {
  18. src["position"] = 0;
  19. };
  20. src["endian"] = Endian["LITTLE_ENDIAN"];
  21. swfHeader = src["readUTFBytes"](3);
  22. swfFlashVersion = src["readUnsignedByte"]();
  23. swfLength = src["readUnsignedInt"]();
  24. nbBits = (src["readUnsignedByte"]() >> 3);
  25. src["position"] = (src["position"] + Math["ceil"](((nbBits * 4) / 8)));
  26. swfFrameRate = ((src["readUnsignedByte"]() / 0xFF) + src["readByte"]());
  27. swfFrameCount = src["readUnsignedShort"]();
  28. while (src["bytesAvailable"] != 0)
  29. {
  30. tagInfo = src["readUnsignedShort"]();
  31. tagType = (tagInfo >> 6);
  32. tagLen = (tagInfo & ((1 << 6) - 1));
  33. if (tagLen == 63)
  34. {
  35. tagLen = src["readInt"]();
  36. };
  37. if (tagType == 77)
  38. {
  39. sigResult = new Object();
  40. metadata = src["readUTFBytes"](tagLen);
  41. if (metadata["substr"](0, 4) == "SMD%")
  42. {
  43. sigResult["signature"] = _SELOGWMWOGX["decodeToByteArray"](metadata["substr"](4));
  44. sigResult["signedData"] = new (getDefinitionByName("flash.utils.ByteArray"))();
  45. var _local_4:* = src;
  46. (_local_4["readBytes"](sigResult["signedData"]));
  47. return (sigResult);
  48. };
  49. }
  50. else
  51. {
  52. src["position"] = (src["position"] + tagLen);
  53. };
  54. if (((tagType == 0) || (tagType == 82)))
  55. {
  56. return (null);
  57. };
  58. };
  59. return (null);
  60. }
  61. catch(err:MemoryError)
  62. {
  63. panic();
  64. return (null);
  65. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement