Skip to content
This repository was archived by the owner on Aug 18, 2023. It is now read-only.

Support for multiple DLL export functions parsed from a DLL file or comma separated#4

Open
mariolima wants to merge 4 commits intooptiv:mainfrom
mariolima:main
Open

Support for multiple DLL export functions parsed from a DLL file or comma separated#4
mariolima wants to merge 4 commits intooptiv:mainfrom
mariolima:main

Conversation

@mariolima
Copy link
Copy Markdown

Possible uses

./Freeze -I loader.bin -O loader.dll -export SetLnkAUMI,UninstAppUserModelId,UninstShortcut
Will create a loader with the exported the functions SetLnkAUMI,UninstAppUserModelId,UninstShortcut

./Freeze -I loader.bin -O loader.dll -export wer.dll
Will parse the given wer.dll DLL with Binject/debug/pe and use its Export functions in the loader.

Feel free to ignore this PR if it doesn't fit your view of the project btw! :) I just found this super useful for DLL sideloading.

@Tylous
Copy link
Copy Markdown
Contributor

Tylous commented Dec 21, 2022

I will take a look at this and get back to you.

@Tylous
Copy link
Copy Markdown
Contributor

Tylous commented Feb 7, 2023

This doesn't give multiple exports, it actually gives one long. I need to tweak the struct. to allow various different function names. Will adjust in the new version.

- exported functions are now all passed in an array
- exports array defaults to DllRegisterServer, DllGetClassObject, DllUnregisterServer
- ExportsFromFile is not in utils.go
@mariolima
Copy link
Copy Markdown
Author

Ah I see. Thanks for looking into this!

I believe I got it working with all variations:
./Freeze -I loader.bin -O loader.dll -export "SetLnkAUMI,Testing"

image

./Freeze -I loader.bin -O loader.dll -export wdscore.dll
image

./Freeze -I loader.bin -O loader.dll
image

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants