forked from Print3M/DllShimmer
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.go
More file actions
41 lines (33 loc) · 885 Bytes
/
main.go
File metadata and controls
41 lines (33 loc) · 885 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package main
import (
"dllshimmer/cli"
"dllshimmer/dll"
"dllshimmer/output"
"embed"
"fmt"
"path/filepath"
)
//go:embed templates/*
var templatesFS embed.FS
func main() {
flags := cli.ParseCli()
cli.PrintBanner()
out := output.Output{
Dll: dll.ParseDll(flags.Input, flags.Original),
OutputDir: filepath.Clean(flags.Output),
TemplatesFS: &templatesFS,
}
out.CreateCodeFiles(flags.Mutex, flags.DebugFile, flags.Static)
out.CreateDefFile()
out.CreateCompileScript(flags.Static)
if flags.Static {
out.CreateLibFile()
}
fmt.Println()
fmt.Println("Success! What to do next?")
fmt.Println()
fmt.Printf(" 1. Jump into the '%s/' directory.\n", out.OutputDir)
fmt.Printf(" 2. Add your backdoor to the '%s' file.\n", out.GetCppCodeFileName())
fmt.Printf(" 3. Compile project using the '%s' script.\n", out.GetCompileScriptName())
fmt.Println()
}