Login Register






[4dots Software]: Raw String Dump Script (VB.NET & C#) filter_list
Author
Message
[4dots Software]: Raw String Dump Script (VB.NET & C#) #1
This small script allows the dump of string present in the resources of an obfuscated application, especially 4dots software's ones

You will need to get the "string caller of the application" (the function which is used to get the string from), when you fond it, replace "%string_caller%" by it

Do not use a value to high compared to the starting number, you will easily end up with a file being a few hundred MBs or even GBs,
a gap of a few thousand will normally be enough

Screenshots:
Spoiler:
[Image: ECdITIkxTBKvoU6KZne-nA.png]
[Image: 8jWwspt1T5WOCNcmju7ITA.png]
[Image: zkESf_2LRtyeK4dsTx8VwQ.png]
[Image: KmDRkpv_RfuN2oDEpONuAQ.png]
[Image: ZrC6-XpdSkasNyrhARArLg.png]


VB.NET:
Spoiler:
Code:
Dim strFile As New SaveFileDialog() if strFile.ShowDialog() = dialogresult.ok Then Dim str_n As Integer = InputBox("Start from: (example: 0)") Dim end_n As Integer = inputbox("End when reached: (example: 50000)" & vbcrlf & "Note: The dump file will be bigger the higher the number is!") Dim skip_ As Integer Try For x = str_n To end_n try File.AppendAllText(strFile.FileName, x & ": " & %string_caller%(x)) Catch e_ As FileLoadException Throw Catch ex As Exception skip_ += 1 End Try Next Catch ex As Exception Throw End try MessageBox.Show("Finished!" & vbcrlf & vbcrlf & "Dumped " & (str_n + end_n) - skip_ & " (skipped " & skip_ & ")") End If


C#:
Spoiler:
Code:
SaveFileDialog strFile = new SaveFileDialog(); checked { if (strFile.ShowDialog() == DialogResult.OK) { int str_n = Interaction.InputBox("Start from: (example: 0)", "", "", -1, -1)); int end_n = Interaction.InputBox("End when reached: (example: 50000)\r\nNote: The dump file will be bigger the higher the number is!", "", "", -1, -1)); int skip_; try { int num = str_n; int num2 = end_n; for (int x = num; x <= num2; x++) { try { File.AppendAllText(strFile.FileName, x + ": " + %string_caller%(x)); } catch (FileLoadException projectError) { throw; } catch (Exception projectError2) { skip_++; } } } catch (Exception projectError3) { throw; } MessageBox.Show(string.Concat(new string[] { "Finished!\r\n\r\nDumped ", Conversions.ToString(str_n + end_n - skip_), " (skipped ", Conversions.ToString(skip_), ")" })); }

Reply