Silica

@SilicaDevs

Make's homebrew for PSVita (and PSM i guess) Oh and im making a game in RPG Maker MV. and learning how to draw (kinda) NOT a PS4 DEV!

Joined December 2014
Born August 29

Tweets

You blocked @SilicaDevs

Are you sure you want to view these Tweets? Viewing Tweets won't unblock @SilicaDevs

  1. 1 hour ago

    LOL i laughed so hard at this xD

    Undo
  2. 1 hour ago

    Is secretly ? Would explain the quality of there games xD (Don't you guys have phones?)

    Undo
  3. 8 hours ago
    Undo
  4. 8 hours ago

    its acturally the function that ends up writing the encrypted files to disk :D

    Show this thread
    Undo
  5. 8 hours ago

    psm_encryptor_32.dll about 60% reversed ? probably > - > i just have "one" more function left to RE, but this function acturally calls like 300 other functions with like 3000 variables and crap. but whatever,

    Show this thread
    Undo
  6. May 30

    i love how i made a PSSE decryptor without knowing anything about how PSSE works.. xD but now i wanna decrypt on PC soo im acturally reversing it

    Undo
  7. May 30

    lmfao psm_encryptor_32.dll runs memset(decodedKey, 0x00, 0xc4); before doing free(decodedKey); xDDD is that meant to stop me from finding it?

    Undo
  8. May 29

    full src-so-far xD

    Show this thread
    Undo
  9. May 29

    increment dstHandle by 4, repeat 10 times and you got your "blob2" decoded xD result = same as real psm_encryptor_32.dll!

    Show this thread
    Undo
  10. May 29

    after that set the value of dstHandle[3] to "result" then dstHandle[4] to "result" xor'd by *dstHandle and dstHandle[5] to "result" xor'd by *dstHandle xor'd by dstHandle[1] finally, dstHandle[6] to dstHandle[5] xor'd by dstHandle[2] set lastResult to "dstHandle[6]" and~

    Show this thread
    Undo
  11. May 29

    for (int i = 0; i < 10; i++) { result = *(dstHandle - 1) ^ (((khappModifierArray[(*((byte*)&(lastResult)+2))] | (((khappModifierArray[(byte)lastResult] << 8) | khappModifierArray[lastResult >> 24]) << 8)) << 8) | enuArray[i] ^ khappModifierArray[(*((byte*)&(lastResult)+1))]);

    Show this thread
    Undo
  12. May 29

    and also, store the contents of blob2[3] into another variable i'll call "lastResult" okaaaaay soo the really crazy part xD

    Show this thread
    Undo
  13. May 29

    copy the first 12 bytes from blob2 into there, (note, both are int32's,) *dst = *blob2; dst[1] = blob2[1]; dst[2] = blob2[2]; dst[3] = blob2[3]; then setup a handle for accessing dst + 1 like so dstHandle = dst + 1;

    Show this thread
    Undo
  14. May 29

    now to decode that "blob2" take your "charArray" buffer from before and go 0x20 bytes in. and cast it into a uint32_t * uint32_t *dst = (uint32_t *)(charArray + 20)

    Show this thread
    Undo
  15. May 29

    for decoding "blob2" there are TWO arrays, you need to be aware of first these effectively act as a key, but its constant (atleast with dev-psse it is) check @ for them now with these you can decode the "blob2" part i mentioned .-.

    Show this thread
    Undo
  16. May 29

    initalize the first 0x4 bytes with an int32 (seems like 0x2 is the only one used?) then copy the bytes from "blob1" into our "charArray" + 4 (to account for the int32) like so: for(int i = 0x00; i<0x10; i++) { charArray[i + 4] = blob1[i]; } now the annoyingly complicated part

    Show this thread
    Undo
  17. May 29

    PSSE Encryptor 101: RSA decrypt 0x200 bytes in khapp @ 0x100 using publisher key (kdev.p12, password is "password") next take 0x10 bytes from 0x2c0 & 0x2d0 lets call it "blob1" & "blob2" to decode allocate a buffer of 0xD4 bytes, lets just be generic and call it "charArray"~

    Show this thread
    Undo
  18. May 29

    PSSE .-.

    Show this thread
    Undo
  19. May 29

    anyway, swapped them for uint_8 and it works now .. and then on the second iteration of the loop ittttttt doesnt work and 3rd its a complete clusterfuck BUT IT WORKS BETTER xDDD

    Show this thread
    Undo
  20. May 29

    Now im DWORD aligned.. xD

    Show this thread
    Undo

Loading seems to be taking a while.

Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.

    You may also like

    ·