kernel32: Implement TH32CS_SNAPMODULE32 support for CreateToolhelp32Snapshot.
Intention is to use CreateToolhelp32Snapshot in dbghelp.dll: EnumerateLoadedModulesW64. Right now we can't because CreateToolhelp32Snapshot can't capture 32bit modules in wow64 processes, which is needed to support SYMOPT_INCLUDE_32BIT_MODULES.
The advantage of using CreateToolhelp32Snapshot in mainly performance. Right now EnumerateLoadedModulesW64 is O(n^2), because of each module it calls GetModuleInformation which is itself O(n) w.r.t. number of modules. Whereas with CreateToolhelp32Snapshot there is no need for GetModuleInformation, thus reduce the complexity to just O(n).
P.S. I am also uncomfortable with the amount of similar code between CreateToolhelp32Snapshot and EnumProcessModulesEx. Can something be done here?