c - Why is my binary filled with paths, empty data and what is all of this? -


i tried create absolutely minimum sized binary in c vc++.

to accomplish removed c runtime library support in settings , used instead of regular old main crt setup comes before it.

this source file:

int winmaincrtstartup() { return 0; } 

i went around , removed find injected inside outputted binary. there few things didn't understand why there.

this output:

mz..................... @...................... ....................... !..l.!this program cann t run in dos mode... $.............d...d...d ..l...d...f...d.rich..d ....................... pe..l......x.........." ....................... . ....@................ .........0............@ ....................... ....................... ....................... . ..p.................. ....................... ....................... .........text.......... .................... .. .rdata....... ......... ............@..@....... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ................3...... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... .......x........q...p . p..........x........... . .............x....... @.... .............x... ................rsds.. ?..n............c:\users\vlind\desktop\minimumexe\release\minimumexe.pd ....................... gctl.........text$mn... . ..p....rdata..p ..... .rdata$zzzdbg.......... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ....................... ........

i'm interested in knowing what's inside executable , why. , purpose of each part. .rdata example? why there path .pd file?...

i'll dump linker flags , compiler flags if happens need them answer question.

compiler:

/gs- /tc /gl /analyze- /w4 /gy /zc:wchar_t /zi /gm- /o2 /ob2 /fd"release\vc140.pdb" /zc:inline /fp:fast /d "_mbcs" /errorreport:prompt /wx- /zc:forscope /gd /oy- /oi /md /fa"release\" /nologo /fo"release\" /c /fp"release\minimumexe.pch"

linker:

/out:"c:\users\vlind\desktop\minimumexe\release\minimumexe.exe" /manifest:no /ltcg:incremental /nxcompat /heap:"0"",0" /pdb:"c:\users\vlind\desktop\minimumexe\release\minimumexe.pdb" /dynamicbase "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /largeaddressaware /debug /ltcg:status /machine:x86 /winmd:no /opt:ref /safeseh:no /pgd:"c:\users\vlind\desktop\minimumexe\release\minimumexe.pgd" /subsystem:windows /manifestuac:no /opt:icf /errorreport:prompt /clrunmanagedcodecheck:no /nologo /verbose /nodefaultlib /tlbid:1


Comments

Popular posts from this blog

java - SSE Emitter : Manage timeouts and complete() -

jquery - uncaught exception: DataTables Editor - remote hosting of code not allowed -

java - How to resolve error - package com.squareup.okhttp3 doesn't exist? -