Advertisement
Guest User

Untitled

a guest
Nov 28th, 2012
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VB.NET 4.73 KB | None | 0 0
  1. Private Shared Sub WriteChaoSaveChecksum(a1 As Byte())
  2.     Dim v1 As UInteger
  3.     Dim rand As New Random()
  4.  
  5.     a1(&Hfaa9) = 0
  6.     a1(&Hfaa4) = 0
  7.     a1(&Hfaab) = 0
  8.     a1(&Hfaa6) = 0
  9.     a1(&Hfaa7) = 0
  10.     a1(&Hfaa5) = CByte(Math.Truncate(rand.NextDouble() * 0.000030517578125 * 255.999893188477))
  11.     a1(&Hfaa8) = CByte(Math.Truncate(rand.NextDouble() * 0.000030517578125 * 255.999893188477))
  12.     a1(&Hfaaa) = CByte(Math.Truncate(rand.NextDouble() * 0.000030517578125 * 255.999893188477))
  13.     v1 = CalcChaoSaveChecksum(a1)
  14.     a1(&Hfaa9) = CByte(v1)
  15.     a1(&Hfaa4) = CByte(v1 >> 8)
  16.     a1(&Hfaab) = CByte(v1 >> 16)
  17.     a1(&Hfaa6) = CByte(v1 >> 24)
  18.     a1(&Hfaa7) = CByte(Math.Truncate(rand.NextDouble() * 0.000030517578125 * 255.999893188477))
  19. End Sub
  20.  
  21. Private Shared Function CalcChaoSaveChecksum(a1 As Byte()) As UInteger
  22.     Dim v1 As UInteger
  23.     Dim v2 As UInteger
  24.     Dim i As Integer = &H3040
  25.  
  26.     v2 = &Hca6cUI
  27.     v1 = &H6368616fUI
  28.     Do
  29.         v1 = dword_8A6FF8(a1(i) Xor CByte(v1)) Xor (CUInt(v1) >> 8)
  30.         i += 1
  31.         v2 -= 1
  32.     Loop While v2 <> 0
  33.     Return v1 Xor &H686f6765
  34. End Function
  35.  
  36. Shared dword_8A6FF8 As UInteger() = {0, &Hc9073096UI, &H920e612cUI, &Ha50951baUI, &Hff6dc419UI, &Hca6af48fUI, _
  37.     &H9163a535UI, &Ha66495a3UI, &Hfedb8832UI, &Hcfdcb8a4UI, &H94d5e91eUI, &Ha3d2d988UI, _
  38.     &Hf9b64c2bUI, &Hccb17cbdUI, &H97b82d07UI, &Ha0bf1d91UI, &Hfdb71064UI, &Hc4b020f2UI, _
  39.     &H9fb97148UI, &Ha8be41deUI, &Hf2dad47dUI, &Hc7dde4ebUI, &H9cd4b551UI, &Habd385c7UI, _
  40.     &Hf36c9856UI, &Hc26ba8c0UI, &H9962f97aUI, &Hae65c9ecUI, &Hf4015c4fUI, &Hc1066cd9UI, _
  41.     &H9a0f3d63UI, &Had080df5UI, &Hfb6e20c8UI, &Hd269105eUI, &H896041e4UI, &Hbe677172UI, _
  42.     &He403e4d1UI, &Hd104d447UI, &H8a0d85fdUI, &Hbd0ab56bUI, &He5b5a8faUI, &Hd4b2986cUI, _
  43.     &H8fbbc9d6UI, &Hb8bcf940UI, &He2d86ce3UI, &Hd7df5c75UI, &H8cd60dcfUI, &Hbbd13d59UI, _
  44.     &He6d930acUI, &Hdfde003aUI, &H84d75180UI, &Hb3d06116UI, &He9b4f4b5UI, &Hdcb3c423UI, _
  45.     &H87ba9599UI, &Hb0bda50fUI, &He802b89eUI, &Hd9058808UI, &H820cd9b2UI, &Hb50be924UI, _
  46.     &Hef6f7c87UI, &Hda684c11UI, &H81611dabUI, &Hb6662d3dUI, &Hf6dc4190UI, &Hffdb7106UI, _
  47.     &Ha4d220bcUI, &H93d5102aUI, &Hc9b18589UI, &Hfcb6b51fUI, &Ha7bfe4a5UI, &H90b8d433UI, _
  48.     &Hc807c9a2UI, &Hf900f934UI, &Ha209a88eUI, &H950e9818UI, &Hcf6a0dbbUI, &Hfa6d3d2dUI, _
  49.     &Ha1646c97UI, &H96635c01UI, &Hcb6b51f4UI, &Hf26c6162UI, &Ha96530d8UI, &H9e62004eUI, _
  50.     &Hc40695edUI, &Hf101a57bUI, &Haa08f4c1UI, &H9d0fc457UI, &Hc5b0d9c6UI, &Hf4b7e950UI, _
  51.     &Hafbeb8eaUI, &H98b9887cUI, &Hc2dd1ddfUI, &Hf7da2d49UI, &Hacd37cf3UI, &H9bd44c65UI, _
  52.     &Hcdb26158UI, &He4b551ceUI, &Hbfbc0074UI, &H88bb30e2UI, &Hd2dfa541UI, &He7d895d7UI, _
  53.     &Hbcd1c46dUI, &H8bd6f4fbUI, &Hd369e96aUI, &He26ed9fcUI, &Hb9678846UI, &H8e60b8d0UI, _
  54.     &Hd4042d73UI, &He1031de5UI, &Hba0a4c5fUI, &H8d0d7cc9UI, &Hd005713cUI, &He90241aaUI, _
  55.     &Hb20b1010UI, &H850c2086UI, &Hdf68b525UI, &Hea6f85b3UI, &Hb166d409UI, &H8661e49fUI, _
  56.     &Hdedef90eUI, &Hefd9c998UI, &Hb4d09822UI, &H83d7a8b4UI, &Hd9b33d17UI, &Hecb40d81UI, _
  57.     &Hb7bd5c3bUI, &H80ba6cadUI, &Hedb88320UI, &Ha4bfb3b6UI, &Hffb6e20cUI, &Hc8b1d29aUI, _
  58.     &H92d54739UI, &Ha7d277afUI, &Hfcdb2615UI, &Hcbdc1683UI, &H93630b12UI, &Ha2643b84UI, _
  59.     &Hf96d6a3eUI, &Hce6a5aa8UI, &H940ecf0bUI, &Ha109ff9dUI, &Hfa00ae27UI, &Hcd079eb1UI, _
  60.     &H900f9344UI, &Ha908a3d2UI, &Hf201f268UI, &Hc506c2feUI, &H9f62575dUI, &Haa6567cbUI, _
  61.     &Hf16c3671UI, &Hc66b06e7UI, &H9ed41b76UI, &Hafd32be0UI, &Hf4da7a5aUI, &Hc3dd4accUI, _
  62.     &H99b9df6fUI, &Hacbeeff9UI, &Hf7b7be43UI, &Hc0b08ed5UI, &H96d6a3e8UI, &Hbfd1937eUI, _
  63.     &He4d8c2c4UI, &Hd3dff252UI, &H89bb67f1UI, &Hbcbc5767UI, &He7b506ddUI, &Hd0b2364bUI, _
  64.     &H880d2bdaUI, &Hb90a1b4cUI, &He2034af6UI, &Hd5047a60UI, &H8f60efc3UI, &Hba67df55UI, _
  65.     &He16e8eefUI, &Hd669be79UI, &H8b61b38cUI, &Hb266831aUI, &He96fd2a0UI, &Hde68e236UI, _
  66.     &H840c7795UI, &Hb10b4703UI, &Hea0216b9UI, &Hdd05262fUI, &H85ba3bbeUI, &Hb4bd0b28UI, _
  67.     &Hefb45a92UI, &Hd8b36a04UI, &H82d7ffa7UI, &Hb7d0cf31UI, &Hecd99e8bUI, &Hdbdeae1dUI, _
  68.     &H9b64c2b0UI, &H9263f226UI, &Hc96aa39cUI, &Hfe6d930aUI, &Ha40906a9UI, &H910e363fUI, _
  69.     &Hca076785UI, &Hfd005713UI, &Ha5bf4a82UI, &H94b87a14UI, &Hcfb12baeUI, &Hf8b61b38UI, _
  70.     &Ha2d28e9bUI, &H97d5be0dUI, &Hccdcefb7UI, &Hfbdbdf21UI, &Ha6d3d2d4UI, &H9fd4e242UI, _
  71.     &Hc4ddb3f8UI, &Hf3da836eUI, &Ha9be16cdUI, &H9cb9265bUI, &Hc7b077e1UI, &Hf0b74777UI, _
  72.     &Ha8085ae6UI, &H990f6a70UI, &Hc2063bcaUI, &Hf5010b5cUI, &Haf659effUI, &H9a62ae69UI, _
  73.     &Hc16bffd3UI, &Hf66ccf45UI, &Ha00ae278UI, &H890dd2eeUI, &Hd2048354UI, &He503b3c2UI, _
  74.     &Hbf672661UI, &H8a6016f7UI, &Hd169474dUI, &He66e77dbUI, &Hbed16a4aUI, &H8fd65adcUI, _
  75.     &Hd4df0b66UI, &He3d83bf0UI, &Hb9bcae53UI, &H8cbb9ec5UI, &Hd7b2cf7fUI, &He0b5ffe9UI, _
  76.     &Hbdbdf21cUI, &H84bac28aUI, &Hdfb39330UI, &He8b4a3a6UI, &Hb2d03605UI, &H87d70693UI, _
  77.     &Hdcde5729UI, &Hebd967bfUI, &Hb3667a2eUI, &H82614ab8UI, &Hd9681b02UI, &Hee6f2b94UI, _
  78.     &Hb40bbe37UI, &H810c8ea1UI, &Hda05df1bUI, &Hed02ef8dUI}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement