librex 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (376) hide show
  1. data/README +0 -0
  2. data/lib/rex.rb +0 -0
  3. data/lib/rex.rb.ts.rb +0 -0
  4. data/lib/rex/LICENSE +0 -0
  5. data/lib/rex/arch.rb +0 -0
  6. data/lib/rex/arch/sparc.rb +0 -0
  7. data/lib/rex/arch/sparc.rb.ut.rb +0 -0
  8. data/lib/rex/arch/x86.rb +0 -0
  9. data/lib/rex/arch/x86.rb.ut.rb +0 -0
  10. data/lib/rex/assembly/nasm.rb +0 -0
  11. data/lib/rex/assembly/nasm.rb.ut.rb +0 -0
  12. data/lib/rex/codepage.map +0 -0
  13. data/lib/rex/compat.rb +0 -0
  14. data/lib/rex/constants.rb +0 -0
  15. data/lib/rex/elfparsey.rb +0 -0
  16. data/lib/rex/elfparsey/elf.rb +0 -0
  17. data/lib/rex/elfparsey/elfbase.rb +0 -0
  18. data/lib/rex/elfparsey/exceptions.rb +0 -0
  19. data/lib/rex/elfscan.rb +0 -0
  20. data/lib/rex/elfscan/scanner.rb +0 -0
  21. data/lib/rex/elfscan/search.rb +0 -0
  22. data/lib/rex/encoder/alpha2.rb +0 -0
  23. data/lib/rex/encoder/alpha2/alpha_mixed.rb +0 -0
  24. data/lib/rex/encoder/alpha2/alpha_upper.rb +0 -0
  25. data/lib/rex/encoder/alpha2/generic.rb +0 -0
  26. data/lib/rex/encoder/alpha2/unicode_mixed.rb +0 -0
  27. data/lib/rex/encoder/alpha2/unicode_upper.rb +0 -0
  28. data/lib/rex/encoder/ndr.rb +0 -0
  29. data/lib/rex/encoder/ndr.rb.ut.rb +0 -0
  30. data/lib/rex/encoder/nonalpha.rb +0 -0
  31. data/lib/rex/encoder/nonupper.rb +0 -0
  32. data/lib/rex/encoder/xdr.rb +0 -0
  33. data/lib/rex/encoder/xdr.rb.ut.rb +0 -0
  34. data/lib/rex/encoder/xor.rb +0 -0
  35. data/lib/rex/encoder/xor/dword.rb +0 -0
  36. data/lib/rex/encoder/xor/dword_additive.rb +0 -0
  37. data/lib/rex/encoders/xor_dword.rb +0 -0
  38. data/lib/rex/encoders/xor_dword_additive.rb +0 -0
  39. data/lib/rex/encoders/xor_dword_additive.rb.ut.rb +0 -0
  40. data/lib/rex/encoding/xor.rb +0 -0
  41. data/lib/rex/encoding/xor.rb.ts.rb +0 -0
  42. data/lib/rex/encoding/xor/byte.rb +0 -0
  43. data/lib/rex/encoding/xor/byte.rb.ut.rb +0 -0
  44. data/lib/rex/encoding/xor/dword.rb +0 -0
  45. data/lib/rex/encoding/xor/dword.rb.ut.rb +0 -0
  46. data/lib/rex/encoding/xor/dword_additive.rb +0 -0
  47. data/lib/rex/encoding/xor/dword_additive.rb.ut.rb +0 -0
  48. data/lib/rex/encoding/xor/exceptions.rb +0 -0
  49. data/lib/rex/encoding/xor/generic.rb +0 -0
  50. data/lib/rex/encoding/xor/generic.rb.ut.rb +0 -0
  51. data/lib/rex/encoding/xor/qword.rb +0 -0
  52. data/lib/rex/encoding/xor/word.rb +0 -0
  53. data/lib/rex/encoding/xor/word.rb.ut.rb +0 -0
  54. data/lib/rex/exceptions.rb +0 -0
  55. data/lib/rex/exceptions.rb.ut.rb +0 -0
  56. data/lib/rex/exploitation/cmdstager.rb +0 -0
  57. data/lib/rex/exploitation/cmdstager/base.rb +0 -0
  58. data/lib/rex/exploitation/cmdstager/debug_asm.rb +0 -0
  59. data/lib/rex/exploitation/cmdstager/debug_write.rb +0 -0
  60. data/lib/rex/exploitation/cmdstager/tftp.rb +0 -0
  61. data/lib/rex/exploitation/cmdstager/vbs.rb +0 -0
  62. data/lib/rex/exploitation/egghunter.rb +0 -0
  63. data/lib/rex/exploitation/egghunter.rb.ut.rb +0 -0
  64. data/lib/rex/exploitation/encryptjs.rb +0 -0
  65. data/lib/rex/exploitation/heaplib.js.b64 +0 -0
  66. data/lib/rex/exploitation/heaplib.rb +0 -0
  67. data/lib/rex/exploitation/javascriptosdetect.rb +2 -2
  68. data/lib/rex/exploitation/obfuscatejs.rb +0 -0
  69. data/lib/rex/exploitation/opcodedb.rb +0 -0
  70. data/lib/rex/exploitation/opcodedb.rb.ut.rb +0 -0
  71. data/lib/rex/exploitation/seh.rb +0 -0
  72. data/lib/rex/exploitation/seh.rb.ut.rb +0 -0
  73. data/lib/rex/file.rb +0 -0
  74. data/lib/rex/file.rb.ut.rb +0 -0
  75. data/lib/rex/image_source.rb +0 -0
  76. data/lib/rex/image_source/disk.rb +0 -0
  77. data/lib/rex/image_source/image_source.rb +0 -0
  78. data/lib/rex/image_source/memory.rb +0 -0
  79. data/lib/rex/io/bidirectional_pipe.rb +0 -0
  80. data/lib/rex/io/datagram_abstraction.rb +0 -0
  81. data/lib/rex/io/stream.rb +13 -15
  82. data/lib/rex/io/stream_abstraction.rb +0 -0
  83. data/lib/rex/io/stream_server.rb +0 -0
  84. data/lib/rex/job_container.rb +10 -25
  85. data/lib/rex/logging.rb +0 -0
  86. data/lib/rex/logging/log_dispatcher.rb +0 -0
  87. data/lib/rex/logging/log_sink.rb +0 -0
  88. data/lib/rex/logging/sinks/flatfile.rb +0 -0
  89. data/lib/rex/logging/sinks/stderr.rb +0 -0
  90. data/lib/rex/machparsey.rb +0 -0
  91. data/lib/rex/machparsey/exceptions.rb +0 -0
  92. data/lib/rex/machparsey/mach.rb +1 -1
  93. data/lib/rex/machparsey/machbase.rb +0 -0
  94. data/lib/rex/machscan.rb +0 -0
  95. data/lib/rex/machscan/scanner.rb +0 -0
  96. data/lib/rex/mime.rb +0 -0
  97. data/lib/rex/mime/header.rb +0 -0
  98. data/lib/rex/mime/message.rb +0 -0
  99. data/lib/rex/mime/part.rb +0 -0
  100. data/lib/rex/nop/opty2.rb +0 -0
  101. data/lib/rex/nop/opty2.rb.ut.rb +0 -0
  102. data/lib/rex/nop/opty2_tables.rb +0 -0
  103. data/lib/rex/ole.rb +0 -0
  104. data/lib/rex/ole/clsid.rb +0 -0
  105. data/lib/rex/ole/difat.rb +0 -0
  106. data/lib/rex/ole/directory.rb +0 -0
  107. data/lib/rex/ole/direntry.rb +0 -0
  108. data/lib/rex/ole/fat.rb +0 -0
  109. data/lib/rex/ole/header.rb +0 -0
  110. data/lib/rex/ole/minifat.rb +0 -0
  111. data/lib/rex/ole/storage.rb +0 -0
  112. data/lib/rex/ole/stream.rb +0 -0
  113. data/lib/rex/ole/substorage.rb +0 -0
  114. data/lib/rex/ole/util.rb +0 -0
  115. data/lib/rex/parser/arguments.rb +0 -0
  116. data/lib/rex/parser/arguments.rb.ut.rb +0 -0
  117. data/lib/rex/parser/ini.rb +0 -0
  118. data/lib/rex/parser/ini.rb.ut.rb +0 -0
  119. data/lib/rex/parser/nexpose_xml.rb +0 -0
  120. data/lib/rex/parser/nmap_xml.rb +0 -0
  121. data/lib/rex/payloads.rb +0 -0
  122. data/lib/rex/payloads/win32.rb +0 -0
  123. data/lib/rex/payloads/win32/common.rb +0 -0
  124. data/lib/rex/payloads/win32/kernel.rb +0 -0
  125. data/lib/rex/payloads/win32/kernel/common.rb +0 -0
  126. data/lib/rex/payloads/win32/kernel/migration.rb +0 -0
  127. data/lib/rex/payloads/win32/kernel/recovery.rb +0 -0
  128. data/lib/rex/payloads/win32/kernel/stager.rb +26 -3
  129. data/lib/rex/peparsey.rb +0 -0
  130. data/lib/rex/peparsey/exceptions.rb +0 -0
  131. data/lib/rex/peparsey/pe.rb +0 -0
  132. data/lib/rex/peparsey/pe_memdump.rb +0 -0
  133. data/lib/rex/peparsey/pebase.rb +0 -0
  134. data/lib/rex/peparsey/section.rb +0 -0
  135. data/lib/rex/pescan.rb +0 -0
  136. data/lib/rex/pescan/analyze.rb +0 -0
  137. data/lib/rex/pescan/scanner.rb +0 -0
  138. data/lib/rex/pescan/search.rb +0 -0
  139. data/lib/rex/platforms.rb +0 -0
  140. data/lib/rex/platforms/windows.rb +0 -0
  141. data/lib/rex/poly.rb +0 -0
  142. data/lib/rex/poly/block.rb +0 -0
  143. data/lib/rex/poly/register.rb +0 -0
  144. data/lib/rex/poly/register/x86.rb +0 -0
  145. data/lib/rex/post.rb +0 -0
  146. data/lib/rex/post/dir.rb +0 -0
  147. data/lib/rex/post/file.rb +0 -0
  148. data/lib/rex/post/file_stat.rb +0 -0
  149. data/lib/rex/post/gen.pl +0 -0
  150. data/lib/rex/post/io.rb +0 -0
  151. data/lib/rex/post/meterpreter.rb +0 -0
  152. data/lib/rex/post/meterpreter/channel.rb +0 -0
  153. data/lib/rex/post/meterpreter/channel_container.rb +0 -0
  154. data/lib/rex/post/meterpreter/channels/pool.rb +0 -0
  155. data/lib/rex/post/meterpreter/channels/pools/file.rb +0 -0
  156. data/lib/rex/post/meterpreter/channels/pools/stream_pool.rb +0 -0
  157. data/lib/rex/post/meterpreter/channels/stream.rb +0 -0
  158. data/lib/rex/post/meterpreter/client.rb +0 -0
  159. data/lib/rex/post/meterpreter/client_core.rb +0 -0
  160. data/lib/rex/post/meterpreter/dependencies.rb +0 -0
  161. data/lib/rex/post/meterpreter/extension.rb +0 -0
  162. data/lib/rex/post/meterpreter/extensions/espia/espia.rb +0 -0
  163. data/lib/rex/post/meterpreter/extensions/espia/tlv.rb +0 -0
  164. data/lib/rex/post/meterpreter/extensions/incognito/incognito.rb +0 -0
  165. data/lib/rex/post/meterpreter/extensions/incognito/tlv.rb +0 -0
  166. data/lib/rex/post/meterpreter/extensions/priv/fs.rb +0 -0
  167. data/lib/rex/post/meterpreter/extensions/priv/passwd.rb +0 -0
  168. data/lib/rex/post/meterpreter/extensions/priv/priv.rb +0 -0
  169. data/lib/rex/post/meterpreter/extensions/priv/tlv.rb +0 -0
  170. data/lib/rex/post/meterpreter/extensions/railgun/api.rb +9303 -0
  171. data/lib/rex/post/meterpreter/extensions/railgun/api_constants.rb +38105 -0
  172. data/lib/rex/post/meterpreter/extensions/railgun/def_kernel32.rb +3678 -0
  173. data/lib/rex/post/meterpreter/extensions/railgun/railgun.rb +815 -0
  174. data/lib/rex/post/meterpreter/extensions/railgun/tlv.rb +54 -0
  175. data/lib/rex/post/meterpreter/extensions/sniffer/sniffer.rb +0 -0
  176. data/lib/rex/post/meterpreter/extensions/sniffer/tlv.rb +0 -0
  177. data/lib/rex/post/meterpreter/extensions/stdapi/constants.rb +0 -0
  178. data/lib/rex/post/meterpreter/extensions/stdapi/fs/dir.rb +0 -0
  179. data/lib/rex/post/meterpreter/extensions/stdapi/fs/file.rb +0 -0
  180. data/lib/rex/post/meterpreter/extensions/stdapi/fs/file_stat.rb +0 -0
  181. data/lib/rex/post/meterpreter/extensions/stdapi/fs/io.rb +0 -0
  182. data/lib/rex/post/meterpreter/extensions/stdapi/net/config.rb +0 -0
  183. data/lib/rex/post/meterpreter/extensions/stdapi/net/interface.rb +0 -0
  184. data/lib/rex/post/meterpreter/extensions/stdapi/net/route.rb +0 -0
  185. data/lib/rex/post/meterpreter/extensions/stdapi/net/socket.rb +7 -7
  186. data/lib/rex/post/meterpreter/extensions/stdapi/net/socket_subsystem/tcp_client_channel.rb +21 -8
  187. data/lib/rex/post/meterpreter/extensions/stdapi/net/socket_subsystem/tcp_server_channel.rb +0 -0
  188. data/lib/rex/post/meterpreter/extensions/stdapi/net/socket_subsystem/udp_channel.rb +33 -17
  189. data/lib/rex/post/meterpreter/extensions/stdapi/stdapi.rb +0 -0
  190. data/lib/rex/post/meterpreter/extensions/stdapi/sys/config.rb +0 -0
  191. data/lib/rex/post/meterpreter/extensions/stdapi/sys/event_log.rb +0 -0
  192. data/lib/rex/post/meterpreter/extensions/stdapi/sys/event_log_subsystem/event_record.rb +0 -0
  193. data/lib/rex/post/meterpreter/extensions/stdapi/sys/power.rb +0 -0
  194. data/lib/rex/post/meterpreter/extensions/stdapi/sys/process.rb +0 -0
  195. data/lib/rex/post/meterpreter/extensions/stdapi/sys/process_subsystem/image.rb +0 -0
  196. data/lib/rex/post/meterpreter/extensions/stdapi/sys/process_subsystem/io.rb +0 -0
  197. data/lib/rex/post/meterpreter/extensions/stdapi/sys/process_subsystem/memory.rb +0 -0
  198. data/lib/rex/post/meterpreter/extensions/stdapi/sys/process_subsystem/thread.rb +0 -0
  199. data/lib/rex/post/meterpreter/extensions/stdapi/sys/registry.rb +0 -0
  200. data/lib/rex/post/meterpreter/extensions/stdapi/sys/registry_subsystem/registry_key.rb +0 -0
  201. data/lib/rex/post/meterpreter/extensions/stdapi/sys/registry_subsystem/registry_value.rb +0 -0
  202. data/lib/rex/post/meterpreter/extensions/stdapi/sys/thread.rb +0 -0
  203. data/lib/rex/post/meterpreter/extensions/stdapi/tlv.rb +0 -0
  204. data/lib/rex/post/meterpreter/extensions/stdapi/ui.rb +0 -0
  205. data/lib/rex/post/meterpreter/inbound_packet_handler.rb +0 -0
  206. data/lib/rex/post/meterpreter/object_aliases.rb +0 -0
  207. data/lib/rex/post/meterpreter/packet.rb +0 -0
  208. data/lib/rex/post/meterpreter/packet_dispatcher.rb +0 -0
  209. data/lib/rex/post/meterpreter/packet_parser.rb +0 -0
  210. data/lib/rex/post/meterpreter/packet_response_waiter.rb +0 -0
  211. data/lib/rex/post/meterpreter/ui/console.rb +0 -0
  212. data/lib/rex/post/meterpreter/ui/console/command_dispatcher.rb +0 -0
  213. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/core.rb +0 -0
  214. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/espia.rb +0 -0
  215. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/incognito.rb +0 -0
  216. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/priv.rb +0 -0
  217. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/priv/elevate.rb +0 -0
  218. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/priv/passwd.rb +0 -0
  219. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/priv/timestomp.rb +0 -0
  220. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/railgun.rb +57 -0
  221. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/sniffer.rb +0 -0
  222. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/stdapi.rb +0 -0
  223. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/stdapi/fs.rb +0 -0
  224. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/stdapi/net.rb +0 -0
  225. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/stdapi/sys.rb +0 -0
  226. data/lib/rex/post/meterpreter/ui/console/command_dispatcher/stdapi/ui.rb +0 -0
  227. data/lib/rex/post/meterpreter/ui/console/interactive_channel.rb +0 -0
  228. data/lib/rex/post/permission.rb +0 -0
  229. data/lib/rex/post/process.rb +0 -0
  230. data/lib/rex/post/thread.rb +0 -0
  231. data/lib/rex/post/ui.rb +0 -0
  232. data/lib/rex/proto.rb +0 -0
  233. data/lib/rex/proto.rb.ts.rb +0 -0
  234. data/lib/rex/proto/dcerpc.rb +0 -0
  235. data/lib/rex/proto/dcerpc.rb.ts.rb +0 -0
  236. data/lib/rex/proto/dcerpc/client.rb +45 -44
  237. data/lib/rex/proto/dcerpc/exceptions.rb +0 -0
  238. data/lib/rex/proto/dcerpc/handle.rb +0 -0
  239. data/lib/rex/proto/dcerpc/handle.rb.ut.rb +0 -0
  240. data/lib/rex/proto/dcerpc/ndr.rb +0 -0
  241. data/lib/rex/proto/dcerpc/ndr.rb.ut.rb +0 -0
  242. data/lib/rex/proto/dcerpc/packet.rb +0 -0
  243. data/lib/rex/proto/dcerpc/packet.rb.ut.rb +0 -0
  244. data/lib/rex/proto/dcerpc/response.rb +32 -31
  245. data/lib/rex/proto/dcerpc/response.rb.ut.rb +0 -0
  246. data/lib/rex/proto/dcerpc/uuid.rb +0 -0
  247. data/lib/rex/proto/dcerpc/uuid.rb.ut.rb +0 -0
  248. data/lib/rex/proto/drda.rb +0 -0
  249. data/lib/rex/proto/drda.rb.ts.rb +0 -0
  250. data/lib/rex/proto/drda/constants.rb +0 -0
  251. data/lib/rex/proto/drda/constants.rb.ut.rb +0 -0
  252. data/lib/rex/proto/drda/packet.rb +0 -0
  253. data/lib/rex/proto/drda/packet.rb.ut.rb +0 -0
  254. data/lib/rex/proto/drda/utils.rb +0 -0
  255. data/lib/rex/proto/drda/utils.rb.ut.rb +0 -0
  256. data/lib/rex/proto/http.rb +0 -0
  257. data/lib/rex/proto/http.rb.ts.rb +0 -0
  258. data/lib/rex/proto/http/client.rb +1 -1
  259. data/lib/rex/proto/http/client.rb.ut.rb +0 -0
  260. data/lib/rex/proto/http/handler.rb +0 -0
  261. data/lib/rex/proto/http/handler/erb.rb +0 -0
  262. data/lib/rex/proto/http/handler/erb.rb.ut.rb +0 -0
  263. data/lib/rex/proto/http/handler/erb.rb.ut.rb.rhtml +0 -0
  264. data/lib/rex/proto/http/handler/proc.rb +0 -0
  265. data/lib/rex/proto/http/handler/proc.rb.ut.rb +0 -0
  266. data/lib/rex/proto/http/header.rb +0 -0
  267. data/lib/rex/proto/http/header.rb.ut.rb +0 -0
  268. data/lib/rex/proto/http/packet.rb +0 -0
  269. data/lib/rex/proto/http/packet.rb.ut.rb +0 -0
  270. data/lib/rex/proto/http/request.rb +0 -0
  271. data/lib/rex/proto/http/request.rb.ut.rb +0 -0
  272. data/lib/rex/proto/http/response.rb +0 -0
  273. data/lib/rex/proto/http/response.rb.ut.rb +0 -0
  274. data/lib/rex/proto/http/server.rb +0 -0
  275. data/lib/rex/proto/http/server.rb.ut.rb +0 -0
  276. data/lib/rex/proto/smb.rb +0 -0
  277. data/lib/rex/proto/smb.rb.ts.rb +0 -0
  278. data/lib/rex/proto/smb/client.rb +1 -1
  279. data/lib/rex/proto/smb/client.rb.ut.rb +0 -0
  280. data/lib/rex/proto/smb/constants.rb +0 -0
  281. data/lib/rex/proto/smb/constants.rb.ut.rb +0 -0
  282. data/lib/rex/proto/smb/crypt.rb +0 -0
  283. data/lib/rex/proto/smb/crypt.rb.ut.rb +0 -0
  284. data/lib/rex/proto/smb/evasions.rb +18 -17
  285. data/lib/rex/proto/smb/exceptions.rb +0 -0
  286. data/lib/rex/proto/smb/simpleclient.rb +0 -0
  287. data/lib/rex/proto/smb/simpleclient.rb.ut.rb +0 -0
  288. data/lib/rex/proto/smb/utils.rb +0 -0
  289. data/lib/rex/proto/smb/utils.rb.ut.rb +0 -0
  290. data/lib/rex/proto/sunrpc.rb +0 -0
  291. data/lib/rex/proto/sunrpc/client.rb +0 -0
  292. data/lib/rex/proto/tftp.rb +0 -0
  293. data/lib/rex/proto/tftp/constants.rb +0 -0
  294. data/lib/rex/proto/tftp/server.rb +212 -37
  295. data/lib/rex/script.rb +0 -0
  296. data/lib/rex/script/base.rb +0 -0
  297. data/lib/rex/script/meterpreter.rb +0 -0
  298. data/lib/rex/script/shell.rb +0 -0
  299. data/lib/rex/service.rb +0 -0
  300. data/lib/rex/service_manager.rb +0 -0
  301. data/lib/rex/service_manager.rb.ut.rb +0 -0
  302. data/lib/rex/services/local_relay.rb +0 -0
  303. data/lib/rex/socket.rb +25 -0
  304. data/lib/rex/socket.rb.ut.rb +0 -0
  305. data/lib/rex/socket/comm.rb +0 -0
  306. data/lib/rex/socket/comm/local.rb +0 -0
  307. data/lib/rex/socket/comm/local.rb.ut.rb +0 -0
  308. data/lib/rex/socket/ip.rb +0 -0
  309. data/lib/rex/socket/parameters.rb +0 -0
  310. data/lib/rex/socket/parameters.rb.ut.rb +0 -0
  311. data/lib/rex/socket/range_walker.rb +0 -0
  312. data/lib/rex/socket/range_walker.rb.ut.rb +0 -0
  313. data/lib/rex/socket/ssl_tcp.rb +0 -0
  314. data/lib/rex/socket/ssl_tcp.rb.ut.rb +0 -0
  315. data/lib/rex/socket/ssl_tcp_server.rb +0 -0
  316. data/lib/rex/socket/ssl_tcp_server.rb.ut.rb +0 -0
  317. data/lib/rex/socket/subnet_walker.rb +0 -0
  318. data/lib/rex/socket/subnet_walker.rb.ut.rb +0 -0
  319. data/lib/rex/socket/switch_board.rb +11 -5
  320. data/lib/rex/socket/switch_board.rb.ut.rb +0 -0
  321. data/lib/rex/socket/tcp.rb +0 -0
  322. data/lib/rex/socket/tcp.rb.ut.rb +0 -0
  323. data/lib/rex/socket/tcp_server.rb +0 -0
  324. data/lib/rex/socket/tcp_server.rb.ut.rb +0 -0
  325. data/lib/rex/socket/udp.rb +0 -0
  326. data/lib/rex/socket/udp.rb.ut.rb +0 -0
  327. data/lib/rex/struct2.rb +0 -0
  328. data/lib/rex/struct2/c_struct.rb +0 -0
  329. data/lib/rex/struct2/c_struct_template.rb +0 -0
  330. data/lib/rex/struct2/constant.rb +0 -0
  331. data/lib/rex/struct2/element.rb +0 -0
  332. data/lib/rex/struct2/generic.rb +0 -0
  333. data/lib/rex/struct2/restraint.rb +0 -0
  334. data/lib/rex/struct2/s_string.rb +0 -0
  335. data/lib/rex/struct2/s_struct.rb +0 -0
  336. data/lib/rex/sync.rb +0 -0
  337. data/lib/rex/sync/event.rb +0 -0
  338. data/lib/rex/sync/read_write_lock.rb +0 -0
  339. data/lib/rex/sync/ref.rb +0 -0
  340. data/lib/rex/sync/thread_safe.rb +0 -0
  341. data/lib/rex/test.rb +0 -0
  342. data/lib/rex/text.rb +15 -4
  343. data/lib/rex/text.rb.ut.rb +3 -0
  344. data/lib/rex/time.rb +0 -0
  345. data/lib/rex/transformer.rb +0 -0
  346. data/lib/rex/transformer.rb.ut.rb +0 -0
  347. data/lib/rex/ui.rb +0 -0
  348. data/lib/rex/ui/interactive.rb +0 -0
  349. data/lib/rex/ui/output.rb +0 -0
  350. data/lib/rex/ui/output/none.rb +0 -0
  351. data/lib/rex/ui/progress_tracker.rb +0 -0
  352. data/lib/rex/ui/subscriber.rb +0 -0
  353. data/lib/rex/ui/text/color.rb +0 -0
  354. data/lib/rex/ui/text/color.rb.ut.rb +0 -0
  355. data/lib/rex/ui/text/dispatcher_shell.rb +0 -0
  356. data/lib/rex/ui/text/input.rb +0 -0
  357. data/lib/rex/ui/text/input/buffer.rb +0 -0
  358. data/lib/rex/ui/text/input/readline.rb +0 -0
  359. data/lib/rex/ui/text/input/socket.rb +0 -0
  360. data/lib/rex/ui/text/input/stdio.rb +0 -0
  361. data/lib/rex/ui/text/irb_shell.rb +0 -0
  362. data/lib/rex/ui/text/output.rb +0 -0
  363. data/lib/rex/ui/text/output/buffer.rb +0 -0
  364. data/lib/rex/ui/text/output/file.rb +0 -0
  365. data/lib/rex/ui/text/output/socket.rb +0 -0
  366. data/lib/rex/ui/text/output/stdio.rb +0 -0
  367. data/lib/rex/ui/text/progress_tracker.rb +0 -0
  368. data/lib/rex/ui/text/progress_tracker.rb.ut.rb +0 -0
  369. data/lib/rex/ui/text/shell.rb +0 -0
  370. data/lib/rex/ui/text/table.rb +0 -0
  371. data/lib/rex/ui/text/table.rb.ut.rb +0 -0
  372. data/lib/rex/zip.rb +0 -0
  373. data/lib/rex/zip/archive.rb +0 -0
  374. data/lib/rex/zip/blocks.rb +0 -0
  375. data/lib/rex/zip/entry.rb +0 -0
  376. metadata +414 -347
@@ -0,0 +1,3678 @@
1
+ module Rex
2
+ module Post
3
+ module Meterpreter
4
+ module Extensions
5
+ module Railgun
6
+
7
+ class Def_kernel32
8
+ def self.add_imports(railgun)
9
+ railgun.add_function('kernel32', 'ActivateActCtx', 'BOOL',[
10
+ ["DWORD","hActCtx","inout"],
11
+ ["PBLOB","lpCookie","out"],
12
+ ])
13
+
14
+ railgun.add_function('kernel32', 'AddAtomA', 'WORD',[
15
+ ["PCHAR","lpString","in"],
16
+ ])
17
+
18
+ railgun.add_function('kernel32', 'AddAtomW', 'WORD',[
19
+ ["PWCHAR","lpString","in"],
20
+ ])
21
+
22
+ railgun.add_function('kernel32', 'AddRefActCtx', 'VOID',[
23
+ ["DWORD","hActCtx","inout"],
24
+ ])
25
+
26
+ railgun.add_function('kernel32', 'AddVectoredContinueHandler', 'PBLOB',[
27
+ ["DWORD","First","in"],
28
+ ["PBLOB","Handler","in"],
29
+ ])
30
+
31
+ railgun.add_function('kernel32', 'AddVectoredExceptionHandler', 'PBLOB',[
32
+ ["DWORD","First","in"],
33
+ ["PBLOB","Handler","in"],
34
+ ])
35
+
36
+ railgun.add_function('kernel32', 'AllocateUserPhysicalPages', 'BOOL',[
37
+ ["DWORD","hProcess","in"],
38
+ ["PBLOB","NumberOfPages","inout"],
39
+ ["PBLOB","PageArray","out"],
40
+ ])
41
+
42
+ railgun.add_function('kernel32', 'AreFileApisANSI', 'BOOL',[
43
+ ])
44
+
45
+ railgun.add_function('kernel32', 'AssignProcessToJobObject', 'BOOL',[
46
+ ["DWORD","hJob","in"],
47
+ ["DWORD","hProcess","in"],
48
+ ])
49
+
50
+ railgun.add_function('kernel32', 'BackupRead', 'BOOL',[
51
+ ["DWORD","hFile","in"],
52
+ ["PBLOB","lpBuffer","out"],
53
+ ["DWORD","nNumberOfBytesToRead","in"],
54
+ ["PDWORD","lpNumberOfBytesRead","out"],
55
+ ["BOOL","bAbort","in"],
56
+ ["BOOL","bProcessSecurity","in"],
57
+ ["PBLOB","lpContext","inout"],
58
+ ])
59
+
60
+ railgun.add_function('kernel32', 'BackupSeek', 'BOOL',[
61
+ ["DWORD","hFile","in"],
62
+ ["DWORD","dwLowBytesToSeek","in"],
63
+ ["DWORD","dwHighBytesToSeek","in"],
64
+ ["PDWORD","lpdwLowByteSeeked","out"],
65
+ ["PDWORD","lpdwHighByteSeeked","out"],
66
+ ["PBLOB","lpContext","inout"],
67
+ ])
68
+
69
+ railgun.add_function('kernel32', 'BackupWrite', 'BOOL',[
70
+ ["DWORD","hFile","in"],
71
+ ["PBLOB","lpBuffer","in"],
72
+ ["DWORD","nNumberOfBytesToWrite","in"],
73
+ ["PDWORD","lpNumberOfBytesWritten","out"],
74
+ ["BOOL","bAbort","in"],
75
+ ["BOOL","bProcessSecurity","in"],
76
+ ["PBLOB","lpContext","inout"],
77
+ ])
78
+
79
+ railgun.add_function('kernel32', 'Beep', 'BOOL',[
80
+ ["DWORD","dwFreq","in"],
81
+ ["DWORD","dwDuration","in"],
82
+ ])
83
+
84
+ railgun.add_function('kernel32', 'BeginUpdateResourceA', 'DWORD',[
85
+ ["PCHAR","pFileName","in"],
86
+ ["BOOL","bDeleteExistingResources","in"],
87
+ ])
88
+
89
+ railgun.add_function('kernel32', 'BeginUpdateResourceW', 'DWORD',[
90
+ ["PWCHAR","pFileName","in"],
91
+ ["BOOL","bDeleteExistingResources","in"],
92
+ ])
93
+
94
+ railgun.add_function('kernel32', 'BindIoCompletionCallback', 'BOOL',[
95
+ ["DWORD","FileHandle","in"],
96
+ ["PBLOB","Function","in"],
97
+ ["DWORD","Flags","in"],
98
+ ])
99
+
100
+ railgun.add_function('kernel32', 'BuildCommDCBA', 'BOOL',[
101
+ ["PCHAR","lpDef","in"],
102
+ ["PBLOB","lpDCB","out"],
103
+ ])
104
+
105
+ railgun.add_function('kernel32', 'BuildCommDCBAndTimeoutsA', 'BOOL',[
106
+ ["PCHAR","lpDef","in"],
107
+ ["PBLOB","lpDCB","out"],
108
+ ["PBLOB","lpCommTimeouts","out"],
109
+ ])
110
+
111
+ railgun.add_function('kernel32', 'BuildCommDCBAndTimeoutsW', 'BOOL',[
112
+ ["PWCHAR","lpDef","in"],
113
+ ["PBLOB","lpDCB","out"],
114
+ ["PBLOB","lpCommTimeouts","out"],
115
+ ])
116
+
117
+ railgun.add_function('kernel32', 'BuildCommDCBW', 'BOOL',[
118
+ ["PWCHAR","lpDef","in"],
119
+ ["PBLOB","lpDCB","out"],
120
+ ])
121
+
122
+ railgun.add_function('kernel32', 'CallNamedPipeA', 'BOOL',[
123
+ ["PCHAR","lpNamedPipeName","in"],
124
+ ["PBLOB","lpInBuffer","in"],
125
+ ["DWORD","nInBufferSize","in"],
126
+ ["PBLOB","lpOutBuffer","out"],
127
+ ["DWORD","nOutBufferSize","in"],
128
+ ["PDWORD","lpBytesRead","out"],
129
+ ["DWORD","nTimeOut","in"],
130
+ ])
131
+
132
+ railgun.add_function('kernel32', 'CallNamedPipeW', 'BOOL',[
133
+ ["PWCHAR","lpNamedPipeName","in"],
134
+ ["PBLOB","lpInBuffer","in"],
135
+ ["DWORD","nInBufferSize","in"],
136
+ ["PBLOB","lpOutBuffer","out"],
137
+ ["DWORD","nOutBufferSize","in"],
138
+ ["PDWORD","lpBytesRead","out"],
139
+ ["DWORD","nTimeOut","in"],
140
+ ])
141
+
142
+ railgun.add_function('kernel32', 'CancelDeviceWakeupRequest', 'BOOL',[
143
+ ["DWORD","hDevice","in"],
144
+ ])
145
+
146
+ railgun.add_function('kernel32', 'CancelIo', 'BOOL',[
147
+ ["DWORD","hFile","in"],
148
+ ])
149
+
150
+ railgun.add_function('kernel32', 'CancelTimerQueueTimer', 'BOOL',[
151
+ ["DWORD","TimerQueue","in"],
152
+ ["DWORD","Timer","in"],
153
+ ])
154
+
155
+ railgun.add_function('kernel32', 'CancelWaitableTimer', 'BOOL',[
156
+ ["DWORD","hTimer","in"],
157
+ ])
158
+
159
+ railgun.add_function('kernel32', 'ChangeTimerQueueTimer', 'BOOL',[
160
+ ["DWORD","TimerQueue","in"],
161
+ ["DWORD","Timer","inout"],
162
+ ["DWORD","DueTime","in"],
163
+ ["DWORD","Period","in"],
164
+ ])
165
+
166
+ railgun.add_function('kernel32', 'CheckNameLegalDOS8Dot3A', 'BOOL',[
167
+ ["PCHAR","lpName","in"],
168
+ ["PCHAR","lpOemName","out"],
169
+ ["DWORD","OemNameSize","in"],
170
+ ["PBLOB","pbNameContainsSpaces","out"],
171
+ ["PBLOB","pbNameLegal","out"],
172
+ ])
173
+
174
+ railgun.add_function('kernel32', 'CheckNameLegalDOS8Dot3W', 'BOOL',[
175
+ ["PWCHAR","lpName","in"],
176
+ ["PCHAR","lpOemName","out"],
177
+ ["DWORD","OemNameSize","in"],
178
+ ["PBLOB","pbNameContainsSpaces","out"],
179
+ ["PBLOB","pbNameLegal","out"],
180
+ ])
181
+
182
+ railgun.add_function('kernel32', 'CheckRemoteDebuggerPresent', 'BOOL',[
183
+ ["DWORD","hProcess","in"],
184
+ ["PBLOB","pbDebuggerPresent","out"],
185
+ ])
186
+
187
+ railgun.add_function('kernel32', 'ClearCommBreak', 'BOOL',[
188
+ ["DWORD","hFile","in"],
189
+ ])
190
+
191
+ railgun.add_function('kernel32', 'ClearCommError', 'BOOL',[
192
+ ["DWORD","hFile","in"],
193
+ ["PDWORD","lpErrors","out"],
194
+ ["PBLOB","lpStat","out"],
195
+ ])
196
+
197
+ railgun.add_function('kernel32', 'CloseHandle', 'BOOL',[
198
+ ["DWORD","hObject","in"],
199
+ ])
200
+
201
+ railgun.add_function('kernel32', 'CommConfigDialogA', 'BOOL',[
202
+ ["PCHAR","lpszName","in"],
203
+ ["DWORD","hWnd","in"],
204
+ ["PBLOB","lpCC","inout"],
205
+ ])
206
+
207
+ railgun.add_function('kernel32', 'CommConfigDialogW', 'BOOL',[
208
+ ["PWCHAR","lpszName","in"],
209
+ ["DWORD","hWnd","in"],
210
+ ["PBLOB","lpCC","inout"],
211
+ ])
212
+
213
+ railgun.add_function('kernel32', 'CompareFileTime', 'DWORD',[
214
+ ["PBLOB","lpFileTime1","in"],
215
+ ["PBLOB","lpFileTime2","in"],
216
+ ])
217
+
218
+ railgun.add_function('kernel32', 'ConnectNamedPipe', 'BOOL',[
219
+ ["DWORD","hNamedPipe","in"],
220
+ ["PBLOB","lpOverlapped","inout"],
221
+ ])
222
+
223
+ railgun.add_function('kernel32', 'ContinueDebugEvent', 'BOOL',[
224
+ ["DWORD","dwProcessId","in"],
225
+ ["DWORD","dwThreadId","in"],
226
+ ["DWORD","dwContinueStatus","in"],
227
+ ])
228
+
229
+ railgun.add_function('kernel32', 'ConvertFiberToThread', 'BOOL',[
230
+ ])
231
+
232
+ railgun.add_function('kernel32', 'ConvertThreadToFiber', 'PBLOB',[
233
+ ["PBLOB","lpParameter","in"],
234
+ ])
235
+
236
+ railgun.add_function('kernel32', 'ConvertThreadToFiberEx', 'PBLOB',[
237
+ ["PBLOB","lpParameter","in"],
238
+ ["DWORD","dwFlags","in"],
239
+ ])
240
+
241
+ railgun.add_function('kernel32', 'CopyFileA', 'BOOL',[
242
+ ["PCHAR","lpExistingFileName","in"],
243
+ ["PCHAR","lpNewFileName","in"],
244
+ ["BOOL","bFailIfExists","in"],
245
+ ])
246
+
247
+ railgun.add_function('kernel32', 'CopyFileExA', 'BOOL',[
248
+ ["PCHAR","lpExistingFileName","in"],
249
+ ["PCHAR","lpNewFileName","in"],
250
+ ["PBLOB","lpProgressRoutine","in"],
251
+ ["PBLOB","lpData","in"],
252
+ ["PBLOB","pbCancel","in"],
253
+ ["DWORD","dwCopyFlags","in"],
254
+ ])
255
+
256
+ railgun.add_function('kernel32', 'CopyFileExW', 'BOOL',[
257
+ ["PWCHAR","lpExistingFileName","in"],
258
+ ["PWCHAR","lpNewFileName","in"],
259
+ ["PBLOB","lpProgressRoutine","in"],
260
+ ["PBLOB","lpData","in"],
261
+ ["PBLOB","pbCancel","in"],
262
+ ["DWORD","dwCopyFlags","in"],
263
+ ])
264
+
265
+ railgun.add_function('kernel32', 'CopyFileW', 'BOOL',[
266
+ ["PWCHAR","lpExistingFileName","in"],
267
+ ["PWCHAR","lpNewFileName","in"],
268
+ ["BOOL","bFailIfExists","in"],
269
+ ])
270
+
271
+ railgun.add_function('kernel32', 'CreateActCtxA', 'DWORD',[
272
+ ["PBLOB","pActCtx","in"],
273
+ ])
274
+
275
+ railgun.add_function('kernel32', 'CreateActCtxW', 'DWORD',[
276
+ ["PBLOB","pActCtx","in"],
277
+ ])
278
+
279
+ railgun.add_function('kernel32', 'CreateDirectoryA', 'BOOL',[
280
+ ["PCHAR","lpPathName","in"],
281
+ ["PBLOB","lpSecurityAttributes","in"],
282
+ ])
283
+
284
+ railgun.add_function('kernel32', 'CreateDirectoryExA', 'BOOL',[
285
+ ["PCHAR","lpTemplateDirectory","in"],
286
+ ["PCHAR","lpNewDirectory","in"],
287
+ ["PBLOB","lpSecurityAttributes","in"],
288
+ ])
289
+
290
+ railgun.add_function('kernel32', 'CreateDirectoryExW', 'BOOL',[
291
+ ["PWCHAR","lpTemplateDirectory","in"],
292
+ ["PWCHAR","lpNewDirectory","in"],
293
+ ["PBLOB","lpSecurityAttributes","in"],
294
+ ])
295
+
296
+ railgun.add_function('kernel32', 'CreateDirectoryW', 'BOOL',[
297
+ ["PWCHAR","lpPathName","in"],
298
+ ["PBLOB","lpSecurityAttributes","in"],
299
+ ])
300
+
301
+ railgun.add_function('kernel32', 'CreateEventA', 'DWORD',[
302
+ ["PBLOB","lpEventAttributes","in"],
303
+ ["BOOL","bManualReset","in"],
304
+ ["BOOL","bInitialState","in"],
305
+ ["PCHAR","lpName","in"],
306
+ ])
307
+
308
+ railgun.add_function('kernel32', 'CreateEventW', 'DWORD',[
309
+ ["PBLOB","lpEventAttributes","in"],
310
+ ["BOOL","bManualReset","in"],
311
+ ["BOOL","bInitialState","in"],
312
+ ["PWCHAR","lpName","in"],
313
+ ])
314
+
315
+ railgun.add_function('kernel32', 'CreateFiber', 'PBLOB',[
316
+ ["DWORD","dwStackSize","in"],
317
+ ["PBLOB","lpStartAddress","in"],
318
+ ["PBLOB","lpParameter","in"],
319
+ ])
320
+
321
+ railgun.add_function('kernel32', 'CreateFiberEx', 'PBLOB',[
322
+ ["DWORD","dwStackCommitSize","in"],
323
+ ["DWORD","dwStackReserveSize","in"],
324
+ ["DWORD","dwFlags","in"],
325
+ ["PBLOB","lpStartAddress","in"],
326
+ ["PBLOB","lpParameter","in"],
327
+ ])
328
+
329
+ railgun.add_function('kernel32', 'CreateFileA', 'DWORD',[
330
+ ["PCHAR","lpFileName","in"],
331
+ ["DWORD","dwDesiredAccess","in"],
332
+ ["DWORD","dwShareMode","in"],
333
+ ["PBLOB","lpSecurityAttributes","in"],
334
+ ["DWORD","dwCreationDisposition","in"],
335
+ ["DWORD","dwFlagsAndAttributes","in"],
336
+ ["DWORD","hTemplateFile","in"],
337
+ ])
338
+
339
+ railgun.add_function('kernel32', 'CreateFileMappingA', 'DWORD',[
340
+ ["DWORD","hFile","in"],
341
+ ["PBLOB","lpFileMappingAttributes","in"],
342
+ ["DWORD","flProtect","in"],
343
+ ["DWORD","dwMaximumSizeHigh","in"],
344
+ ["DWORD","dwMaximumSizeLow","in"],
345
+ ["PCHAR","lpName","in"],
346
+ ])
347
+
348
+ railgun.add_function('kernel32', 'CreateFileMappingW', 'DWORD',[
349
+ ["DWORD","hFile","in"],
350
+ ["PBLOB","lpFileMappingAttributes","in"],
351
+ ["DWORD","flProtect","in"],
352
+ ["DWORD","dwMaximumSizeHigh","in"],
353
+ ["DWORD","dwMaximumSizeLow","in"],
354
+ ["PWCHAR","lpName","in"],
355
+ ])
356
+
357
+ railgun.add_function('kernel32', 'CreateFileW', 'DWORD',[
358
+ ["PWCHAR","lpFileName","in"],
359
+ ["DWORD","dwDesiredAccess","in"],
360
+ ["DWORD","dwShareMode","in"],
361
+ ["PBLOB","lpSecurityAttributes","in"],
362
+ ["DWORD","dwCreationDisposition","in"],
363
+ ["DWORD","dwFlagsAndAttributes","in"],
364
+ ["DWORD","hTemplateFile","in"],
365
+ ])
366
+
367
+ railgun.add_function('kernel32', 'CreateHardLinkA', 'BOOL',[
368
+ ["PCHAR","lpFileName","in"],
369
+ ["PCHAR","lpExistingFileName","in"],
370
+ ["PBLOB","lpSecurityAttributes","inout"],
371
+ ])
372
+
373
+ railgun.add_function('kernel32', 'CreateHardLinkW', 'BOOL',[
374
+ ["PWCHAR","lpFileName","in"],
375
+ ["PWCHAR","lpExistingFileName","in"],
376
+ ["PBLOB","lpSecurityAttributes","inout"],
377
+ ])
378
+
379
+ railgun.add_function('kernel32', 'CreateIoCompletionPort', 'DWORD',[
380
+ ["DWORD","FileHandle","in"],
381
+ ["DWORD","ExistingCompletionPort","in"],
382
+ ["PDWORD","CompletionKey","in"],
383
+ ["DWORD","NumberOfConcurrentThreads","in"],
384
+ ])
385
+
386
+ railgun.add_function('kernel32', 'CreateJobObjectA', 'DWORD',[
387
+ ["PBLOB","lpJobAttributes","in"],
388
+ ["PCHAR","lpName","in"],
389
+ ])
390
+
391
+ railgun.add_function('kernel32', 'CreateJobObjectW', 'DWORD',[
392
+ ["PBLOB","lpJobAttributes","in"],
393
+ ["PWCHAR","lpName","in"],
394
+ ])
395
+
396
+ railgun.add_function('kernel32', 'CreateJobSet', 'BOOL',[
397
+ ["DWORD","NumJob","in"],
398
+ ["PBLOB","UserJobSet","in"],
399
+ ["DWORD","Flags","in"],
400
+ ])
401
+
402
+ railgun.add_function('kernel32', 'CreateMailslotA', 'DWORD',[
403
+ ["PCHAR","lpName","in"],
404
+ ["DWORD","nMaxMessageSize","in"],
405
+ ["DWORD","lReadTimeout","in"],
406
+ ["PBLOB","lpSecurityAttributes","in"],
407
+ ])
408
+
409
+ railgun.add_function('kernel32', 'CreateMailslotW', 'DWORD',[
410
+ ["PWCHAR","lpName","in"],
411
+ ["DWORD","nMaxMessageSize","in"],
412
+ ["DWORD","lReadTimeout","in"],
413
+ ["PBLOB","lpSecurityAttributes","in"],
414
+ ])
415
+
416
+ railgun.add_function('kernel32', 'CreateMemoryResourceNotification', 'DWORD',[
417
+ ["PDWORD","NotificationType","in"],
418
+ ])
419
+
420
+ railgun.add_function('kernel32', 'CreateMutexA', 'DWORD',[
421
+ ["PBLOB","lpMutexAttributes","in"],
422
+ ["BOOL","bInitialOwner","in"],
423
+ ["PCHAR","lpName","in"],
424
+ ])
425
+
426
+ railgun.add_function('kernel32', 'CreateMutexW', 'DWORD',[
427
+ ["PBLOB","lpMutexAttributes","in"],
428
+ ["BOOL","bInitialOwner","in"],
429
+ ["PWCHAR","lpName","in"],
430
+ ])
431
+
432
+ railgun.add_function('kernel32', 'CreateNamedPipeA', 'DWORD',[
433
+ ["PCHAR","lpName","in"],
434
+ ["DWORD","dwOpenMode","in"],
435
+ ["DWORD","dwPipeMode","in"],
436
+ ["DWORD","nMaxInstances","in"],
437
+ ["DWORD","nOutBufferSize","in"],
438
+ ["DWORD","nInBufferSize","in"],
439
+ ["DWORD","nDefaultTimeOut","in"],
440
+ ["PBLOB","lpSecurityAttributes","in"],
441
+ ])
442
+
443
+ railgun.add_function('kernel32', 'CreateNamedPipeW', 'DWORD',[
444
+ ["PWCHAR","lpName","in"],
445
+ ["DWORD","dwOpenMode","in"],
446
+ ["DWORD","dwPipeMode","in"],
447
+ ["DWORD","nMaxInstances","in"],
448
+ ["DWORD","nOutBufferSize","in"],
449
+ ["DWORD","nInBufferSize","in"],
450
+ ["DWORD","nDefaultTimeOut","in"],
451
+ ["PBLOB","lpSecurityAttributes","in"],
452
+ ])
453
+
454
+ railgun.add_function('kernel32', 'CreatePipe', 'BOOL',[
455
+ ["PDWORD","hReadPipe","out"],
456
+ ["PDWORD","hWritePipe","out"],
457
+ ["PBLOB","lpPipeAttributes","in"],
458
+ ["DWORD","nSize","in"],
459
+ ])
460
+
461
+ railgun.add_function('kernel32', 'CreateProcessA', 'BOOL',[
462
+ ["PCHAR","lpApplicationName","in"],
463
+ ["PCHAR","lpCommandLine","inout"],
464
+ ["PBLOB","lpProcessAttributes","in"],
465
+ ["PBLOB","lpThreadAttributes","in"],
466
+ ["BOOL","bInheritHandles","in"],
467
+ ["DWORD","dwCreationFlags","in"],
468
+ ["PBLOB","lpEnvironment","in"],
469
+ ["PCHAR","lpCurrentDirectory","in"],
470
+ ["PBLOB","lpStartupInfo","in"],
471
+ ["PBLOB","lpProcessInformation","out"],
472
+ ])
473
+
474
+ railgun.add_function('kernel32', 'CreateProcessW', 'BOOL',[
475
+ ["PWCHAR","lpApplicationName","in"],
476
+ ["PWCHAR","lpCommandLine","inout"],
477
+ ["PBLOB","lpProcessAttributes","in"],
478
+ ["PBLOB","lpThreadAttributes","in"],
479
+ ["BOOL","bInheritHandles","in"],
480
+ ["DWORD","dwCreationFlags","in"],
481
+ ["PBLOB","lpEnvironment","in"],
482
+ ["PWCHAR","lpCurrentDirectory","in"],
483
+ ["PBLOB","lpStartupInfo","in"],
484
+ ["PBLOB","lpProcessInformation","out"],
485
+ ])
486
+
487
+ railgun.add_function('kernel32', 'CreateRemoteThread', 'DWORD',[
488
+ ["DWORD","hProcess","in"],
489
+ ["PBLOB","lpThreadAttributes","in"],
490
+ ["DWORD","dwStackSize","in"],
491
+ ["PBLOB","lpStartAddress","in"],
492
+ ["PBLOB","lpParameter","in"],
493
+ ["DWORD","dwCreationFlags","in"],
494
+ ["PDWORD","lpThreadId","out"],
495
+ ])
496
+
497
+ railgun.add_function('kernel32', 'CreateSemaphoreA', 'DWORD',[
498
+ ["PBLOB","lpSemaphoreAttributes","in"],
499
+ ["DWORD","lInitialCount","in"],
500
+ ["DWORD","lMaximumCount","in"],
501
+ ["PCHAR","lpName","in"],
502
+ ])
503
+
504
+ railgun.add_function('kernel32', 'CreateSemaphoreW', 'DWORD',[
505
+ ["PBLOB","lpSemaphoreAttributes","in"],
506
+ ["DWORD","lInitialCount","in"],
507
+ ["DWORD","lMaximumCount","in"],
508
+ ["PWCHAR","lpName","in"],
509
+ ])
510
+
511
+ railgun.add_function('kernel32', 'CreateTapePartition', 'DWORD',[
512
+ ["DWORD","hDevice","in"],
513
+ ["DWORD","dwPartitionMethod","in"],
514
+ ["DWORD","dwCount","in"],
515
+ ["DWORD","dwSize","in"],
516
+ ])
517
+
518
+ railgun.add_function('kernel32', 'CreateThread', 'DWORD',[
519
+ ["PBLOB","lpThreadAttributes","in"],
520
+ ["DWORD","dwStackSize","in"],
521
+ ["PBLOB","lpStartAddress","in"],
522
+ ["PBLOB","lpParameter","in"],
523
+ ["DWORD","dwCreationFlags","in"],
524
+ ["PDWORD","lpThreadId","out"],
525
+ ])
526
+
527
+ railgun.add_function('kernel32', 'CreateTimerQueue', 'DWORD',[
528
+ ])
529
+
530
+ railgun.add_function('kernel32', 'CreateTimerQueueTimer', 'BOOL',[
531
+ ["PDWORD","phNewTimer","out"],
532
+ ["DWORD","TimerQueue","in"],
533
+ ["PBLOB","Callback","in"],
534
+ ["PBLOB","Parameter","in"],
535
+ ["DWORD","DueTime","in"],
536
+ ["DWORD","Period","in"],
537
+ ["DWORD","Flags","in"],
538
+ ])
539
+
540
+ railgun.add_function('kernel32', 'CreateWaitableTimerA', 'DWORD',[
541
+ ["PBLOB","lpTimerAttributes","in"],
542
+ ["BOOL","bManualReset","in"],
543
+ ["PCHAR","lpTimerName","in"],
544
+ ])
545
+
546
+ railgun.add_function('kernel32', 'CreateWaitableTimerW', 'DWORD',[
547
+ ["PBLOB","lpTimerAttributes","in"],
548
+ ["BOOL","bManualReset","in"],
549
+ ["PWCHAR","lpTimerName","in"],
550
+ ])
551
+
552
+ railgun.add_function('kernel32', 'DeactivateActCtx', 'BOOL',[
553
+ ["DWORD","dwFlags","in"],
554
+ ["PDWORD","ulCookie","in"],
555
+ ])
556
+
557
+ railgun.add_function('kernel32', 'DebugActiveProcess', 'BOOL',[
558
+ ["DWORD","dwProcessId","in"],
559
+ ])
560
+
561
+ railgun.add_function('kernel32', 'DebugActiveProcessStop', 'BOOL',[
562
+ ["DWORD","dwProcessId","in"],
563
+ ])
564
+
565
+ railgun.add_function('kernel32', 'DebugBreak', 'VOID',[
566
+ ])
567
+
568
+ railgun.add_function('kernel32', 'DebugBreakProcess', 'BOOL',[
569
+ ["DWORD","Process","in"],
570
+ ])
571
+
572
+ railgun.add_function('kernel32', 'DebugSetProcessKillOnExit', 'BOOL',[
573
+ ["BOOL","KillOnExit","in"],
574
+ ])
575
+
576
+ railgun.add_function('kernel32', 'DecodePointer', 'PBLOB',[
577
+ ["PBLOB","Ptr","in"],
578
+ ])
579
+
580
+ railgun.add_function('kernel32', 'DecodeSystemPointer', 'PBLOB',[
581
+ ["PBLOB","Ptr","in"],
582
+ ])
583
+
584
+ railgun.add_function('kernel32', 'DefineDosDeviceA', 'BOOL',[
585
+ ["DWORD","dwFlags","in"],
586
+ ["PCHAR","lpDeviceName","in"],
587
+ ["PCHAR","lpTargetPath","in"],
588
+ ])
589
+
590
+ railgun.add_function('kernel32', 'DefineDosDeviceW', 'BOOL',[
591
+ ["DWORD","dwFlags","in"],
592
+ ["PWCHAR","lpDeviceName","in"],
593
+ ["PWCHAR","lpTargetPath","in"],
594
+ ])
595
+
596
+ railgun.add_function('kernel32', 'DeleteAtom', 'WORD',[
597
+ ["WORD","nAtom","in"],
598
+ ])
599
+
600
+ railgun.add_function('kernel32', 'DeleteCriticalSection', 'VOID',[
601
+ ["PBLOB","lpCriticalSection","inout"],
602
+ ])
603
+
604
+ railgun.add_function('kernel32', 'DeleteFiber', 'VOID',[
605
+ ["PBLOB","lpFiber","in"],
606
+ ])
607
+
608
+ railgun.add_function('kernel32', 'DeleteFileA', 'BOOL',[
609
+ ["PCHAR","lpFileName","in"],
610
+ ])
611
+
612
+ railgun.add_function('kernel32', 'DeleteFileW', 'BOOL',[
613
+ ["PWCHAR","lpFileName","in"],
614
+ ])
615
+
616
+ railgun.add_function('kernel32', 'DeleteTimerQueue', 'BOOL',[
617
+ ["DWORD","TimerQueue","in"],
618
+ ])
619
+
620
+ railgun.add_function('kernel32', 'DeleteTimerQueueEx', 'BOOL',[
621
+ ["DWORD","TimerQueue","in"],
622
+ ["DWORD","CompletionEvent","in"],
623
+ ])
624
+
625
+ railgun.add_function('kernel32', 'DeleteTimerQueueTimer', 'BOOL',[
626
+ ["DWORD","TimerQueue","in"],
627
+ ["DWORD","Timer","in"],
628
+ ["DWORD","CompletionEvent","in"],
629
+ ])
630
+
631
+ railgun.add_function('kernel32', 'DeleteVolumeMountPointA', 'BOOL',[
632
+ ["PCHAR","lpszVolumeMountPoint","in"],
633
+ ])
634
+
635
+ railgun.add_function('kernel32', 'DeleteVolumeMountPointW', 'BOOL',[
636
+ ["PWCHAR","lpszVolumeMountPoint","in"],
637
+ ])
638
+
639
+ railgun.add_function('kernel32', 'DeviceIoControl', 'BOOL',[
640
+ ["DWORD","hDevice","in"],
641
+ ["DWORD","dwIoControlCode","in"],
642
+ ["PBLOB","lpInBuffer","in"],
643
+ ["DWORD","nInBufferSize","in"],
644
+ ["PBLOB","lpOutBuffer","out"],
645
+ ["DWORD","nOutBufferSize","in"],
646
+ ["PDWORD","lpBytesReturned","out"],
647
+ ["PBLOB","lpOverlapped","inout"],
648
+ ])
649
+
650
+ railgun.add_function('kernel32', 'DisableThreadLibraryCalls', 'BOOL',[
651
+ ["DWORD","hLibModule","in"],
652
+ ])
653
+
654
+ railgun.add_function('kernel32', 'DisconnectNamedPipe', 'BOOL',[
655
+ ["DWORD","hNamedPipe","in"],
656
+ ])
657
+
658
+ railgun.add_function('kernel32', 'DnsHostnameToComputerNameA', 'BOOL',[
659
+ ["PCHAR","Hostname","in"],
660
+ ["PCHAR","ComputerName","out"],
661
+ ["PDWORD","nSize","inout"],
662
+ ])
663
+
664
+ railgun.add_function('kernel32', 'DnsHostnameToComputerNameW', 'BOOL',[
665
+ ["PWCHAR","Hostname","in"],
666
+ ["PWCHAR","ComputerName","out"],
667
+ ["PDWORD","nSize","inout"],
668
+ ])
669
+
670
+ railgun.add_function('kernel32', 'DosDateTimeToFileTime', 'BOOL',[
671
+ ["WORD","wFatDate","in"],
672
+ ["WORD","wFatTime","in"],
673
+ ["PBLOB","lpFileTime","out"],
674
+ ])
675
+
676
+ railgun.add_function('kernel32', 'DuplicateHandle', 'BOOL',[
677
+ ["DWORD","hSourceProcessHandle","in"],
678
+ ["DWORD","hSourceHandle","in"],
679
+ ["DWORD","hTargetProcessHandle","in"],
680
+ ["PDWORD","lpTargetHandle","out"],
681
+ ["DWORD","dwDesiredAccess","in"],
682
+ ["BOOL","bInheritHandle","in"],
683
+ ["DWORD","dwOptions","in"],
684
+ ])
685
+
686
+ railgun.add_function('kernel32', 'EncodePointer', 'PBLOB',[
687
+ ["PBLOB","Ptr","in"],
688
+ ])
689
+
690
+ railgun.add_function('kernel32', 'EncodeSystemPointer', 'PBLOB',[
691
+ ["PBLOB","Ptr","in"],
692
+ ])
693
+
694
+ railgun.add_function('kernel32', 'EndUpdateResourceA', 'BOOL',[
695
+ ["DWORD","hUpdate","in"],
696
+ ["BOOL","fDiscard","in"],
697
+ ])
698
+
699
+ railgun.add_function('kernel32', 'EndUpdateResourceW', 'BOOL',[
700
+ ["DWORD","hUpdate","in"],
701
+ ["BOOL","fDiscard","in"],
702
+ ])
703
+
704
+ railgun.add_function('kernel32', 'EnterCriticalSection', 'VOID',[
705
+ ["PBLOB","lpCriticalSection","inout"],
706
+ ])
707
+
708
+ railgun.add_function('kernel32', 'EnumResourceLanguagesA', 'BOOL',[
709
+ ["DWORD","hModule","in"],
710
+ ["PCHAR","lpType","in"],
711
+ ["PCHAR","lpName","in"],
712
+ ["PBLOB","lpEnumFunc","in"],
713
+ ["PBLOB","lParam","in"],
714
+ ])
715
+
716
+ railgun.add_function('kernel32', 'EnumResourceLanguagesW', 'BOOL',[
717
+ ["DWORD","hModule","in"],
718
+ ["PWCHAR","lpType","in"],
719
+ ["PWCHAR","lpName","in"],
720
+ ["PBLOB","lpEnumFunc","in"],
721
+ ["PBLOB","lParam","in"],
722
+ ])
723
+
724
+ railgun.add_function('kernel32', 'EnumResourceNamesA', 'BOOL',[
725
+ ["DWORD","hModule","in"],
726
+ ["PCHAR","lpType","in"],
727
+ ["PBLOB","lpEnumFunc","in"],
728
+ ["PBLOB","lParam","in"],
729
+ ])
730
+
731
+ railgun.add_function('kernel32', 'EnumResourceNamesW', 'BOOL',[
732
+ ["DWORD","hModule","in"],
733
+ ["PWCHAR","lpType","in"],
734
+ ["PBLOB","lpEnumFunc","in"],
735
+ ["PBLOB","lParam","in"],
736
+ ])
737
+
738
+ railgun.add_function('kernel32', 'EnumResourceTypesA', 'BOOL',[
739
+ ["DWORD","hModule","in"],
740
+ ["PBLOB","lpEnumFunc","in"],
741
+ ["PBLOB","lParam","in"],
742
+ ])
743
+
744
+ railgun.add_function('kernel32', 'EnumResourceTypesW', 'BOOL',[
745
+ ["DWORD","hModule","in"],
746
+ ["PBLOB","lpEnumFunc","in"],
747
+ ["PBLOB","lParam","in"],
748
+ ])
749
+
750
+ railgun.add_function('kernel32', 'EnumSystemFirmwareTables', 'DWORD',[
751
+ ["DWORD","FirmwareTableProviderSignature","in"],
752
+ ["PBLOB","pFirmwareTableEnumBuffer","out"],
753
+ ["DWORD","BufferSize","in"],
754
+ ])
755
+
756
+ railgun.add_function('kernel32', 'EraseTape', 'DWORD',[
757
+ ["DWORD","hDevice","in"],
758
+ ["DWORD","dwEraseType","in"],
759
+ ["BOOL","bImmediate","in"],
760
+ ])
761
+
762
+ railgun.add_function('kernel32', 'EscapeCommFunction', 'BOOL',[
763
+ ["DWORD","hFile","in"],
764
+ ["DWORD","dwFunc","in"],
765
+ ])
766
+
767
+ railgun.add_function('kernel32', 'ExitProcess', 'VOID',[
768
+ ["DWORD","uExitCode","in"],
769
+ ])
770
+
771
+ railgun.add_function('kernel32', 'ExitThread', 'VOID',[
772
+ ["DWORD","dwExitCode","in"],
773
+ ])
774
+
775
+ railgun.add_function('kernel32', 'ExpandEnvironmentStringsA', 'DWORD',[
776
+ ["PCHAR","lpSrc","in"],
777
+ ["PCHAR","lpDst","out"],
778
+ ["DWORD","nSize","in"],
779
+ ])
780
+
781
+ railgun.add_function('kernel32', 'ExpandEnvironmentStringsW', 'DWORD',[
782
+ ["PWCHAR","lpSrc","in"],
783
+ ["PWCHAR","lpDst","out"],
784
+ ["DWORD","nSize","in"],
785
+ ])
786
+
787
+ railgun.add_function('kernel32', 'FatalAppExitA', 'VOID',[
788
+ ["DWORD","uAction","in"],
789
+ ["PCHAR","lpMessageText","in"],
790
+ ])
791
+
792
+ railgun.add_function('kernel32', 'FatalAppExitW', 'VOID',[
793
+ ["DWORD","uAction","in"],
794
+ ["PWCHAR","lpMessageText","in"],
795
+ ])
796
+
797
+ railgun.add_function('kernel32', 'FatalExit', 'VOID',[
798
+ ["DWORD","ExitCode","in"],
799
+ ])
800
+
801
+ railgun.add_function('kernel32', 'FileTimeToDosDateTime', 'BOOL',[
802
+ ["PBLOB","lpFileTime","in"],
803
+ ["PBLOB","lpFatDate","out"],
804
+ ["PBLOB","lpFatTime","out"],
805
+ ])
806
+
807
+ railgun.add_function('kernel32', 'FileTimeToLocalFileTime', 'BOOL',[
808
+ ["PBLOB","lpFileTime","in"],
809
+ ["PBLOB","lpLocalFileTime","out"],
810
+ ])
811
+
812
+ railgun.add_function('kernel32', 'FileTimeToSystemTime', 'BOOL',[
813
+ ["PBLOB","lpFileTime","in"],
814
+ ["PBLOB","lpSystemTime","out"],
815
+ ])
816
+
817
+ railgun.add_function('kernel32', 'FindActCtxSectionGuid', 'BOOL',[
818
+ ["DWORD","dwFlags","in"],
819
+ ["PBLOB","lpExtensionGuid","inout"],
820
+ ["DWORD","ulSectionId","in"],
821
+ ["PBLOB","lpGuidToFind","in"],
822
+ ["PBLOB","ReturnedData","out"],
823
+ ])
824
+
825
+ railgun.add_function('kernel32', 'FindActCtxSectionStringA', 'BOOL',[
826
+ ["DWORD","dwFlags","in"],
827
+ ["PBLOB","lpExtensionGuid","inout"],
828
+ ["DWORD","ulSectionId","in"],
829
+ ["PCHAR","lpStringToFind","in"],
830
+ ["PBLOB","ReturnedData","out"],
831
+ ])
832
+
833
+ railgun.add_function('kernel32', 'FindActCtxSectionStringW', 'BOOL',[
834
+ ["DWORD","dwFlags","in"],
835
+ ["PBLOB","lpExtensionGuid","inout"],
836
+ ["DWORD","ulSectionId","in"],
837
+ ["PWCHAR","lpStringToFind","in"],
838
+ ["PBLOB","ReturnedData","out"],
839
+ ])
840
+
841
+ railgun.add_function('kernel32', 'FindAtomA', 'WORD',[
842
+ ["PCHAR","lpString","in"],
843
+ ])
844
+
845
+ railgun.add_function('kernel32', 'FindAtomW', 'WORD',[
846
+ ["PWCHAR","lpString","in"],
847
+ ])
848
+
849
+ railgun.add_function('kernel32', 'FindClose', 'BOOL',[
850
+ ["DWORD","hFindFile","inout"],
851
+ ])
852
+
853
+ railgun.add_function('kernel32', 'FindCloseChangeNotification', 'BOOL',[
854
+ ["DWORD","hChangeHandle","in"],
855
+ ])
856
+
857
+ railgun.add_function('kernel32', 'FindFirstChangeNotificationA', 'DWORD',[
858
+ ["PCHAR","lpPathName","in"],
859
+ ["BOOL","bWatchSubtree","in"],
860
+ ["DWORD","dwNotifyFilter","in"],
861
+ ])
862
+
863
+ railgun.add_function('kernel32', 'FindFirstChangeNotificationW', 'DWORD',[
864
+ ["PWCHAR","lpPathName","in"],
865
+ ["BOOL","bWatchSubtree","in"],
866
+ ["DWORD","dwNotifyFilter","in"],
867
+ ])
868
+
869
+ railgun.add_function('kernel32', 'FindFirstFileA', 'DWORD',[
870
+ ["PCHAR","lpFileName","in"],
871
+ ["PBLOB","lpFindFileData","out"],
872
+ ])
873
+
874
+ railgun.add_function('kernel32', 'FindFirstFileExA', 'DWORD',[
875
+ ["PCHAR","lpFileName","in"],
876
+ ["PBLOB","fInfoLevelId","in"],
877
+ ["PBLOB","lpFindFileData","out"],
878
+ ["PBLOB","fSearchOp","in"],
879
+ ["PBLOB","lpSearchFilter","inout"],
880
+ ["DWORD","dwAdditionalFlags","in"],
881
+ ])
882
+
883
+ railgun.add_function('kernel32', 'FindFirstFileExW', 'DWORD',[
884
+ ["PWCHAR","lpFileName","in"],
885
+ ["PBLOB","fInfoLevelId","in"],
886
+ ["PBLOB","lpFindFileData","out"],
887
+ ["PBLOB","fSearchOp","in"],
888
+ ["PBLOB","lpSearchFilter","inout"],
889
+ ["DWORD","dwAdditionalFlags","in"],
890
+ ])
891
+
892
+ railgun.add_function('kernel32', 'FindFirstFileW', 'DWORD',[
893
+ ["PWCHAR","lpFileName","in"],
894
+ ["PBLOB","lpFindFileData","out"],
895
+ ])
896
+
897
+ railgun.add_function('kernel32', 'FindFirstStreamW', 'DWORD',[
898
+ ["PWCHAR","lpFileName","in"],
899
+ ["PBLOB","InfoLevel","in"],
900
+ ["PBLOB","lpFindStreamData","out"],
901
+ ["DWORD","dwFlags","inout"],
902
+ ])
903
+
904
+ railgun.add_function('kernel32', 'FindFirstVolumeA', 'DWORD',[
905
+ ["PCHAR","lpszVolumeName","out"],
906
+ ["DWORD","cchBufferLength","in"],
907
+ ])
908
+
909
+ railgun.add_function('kernel32', 'FindFirstVolumeMountPointA', 'DWORD',[
910
+ ["PCHAR","lpszRootPathName","in"],
911
+ ["PCHAR","lpszVolumeMountPoint","out"],
912
+ ["DWORD","cchBufferLength","in"],
913
+ ])
914
+
915
+ railgun.add_function('kernel32', 'FindFirstVolumeMountPointW', 'DWORD',[
916
+ ["PWCHAR","lpszRootPathName","in"],
917
+ ["PWCHAR","lpszVolumeMountPoint","out"],
918
+ ["DWORD","cchBufferLength","in"],
919
+ ])
920
+
921
+ railgun.add_function('kernel32', 'FindFirstVolumeW', 'DWORD',[
922
+ ["PWCHAR","lpszVolumeName","out"],
923
+ ["DWORD","cchBufferLength","in"],
924
+ ])
925
+
926
+ railgun.add_function('kernel32', 'FindNextChangeNotification', 'BOOL',[
927
+ ["DWORD","hChangeHandle","in"],
928
+ ])
929
+
930
+ railgun.add_function('kernel32', 'FindNextFileA', 'BOOL',[
931
+ ["DWORD","hFindFile","in"],
932
+ ["PBLOB","lpFindFileData","out"],
933
+ ])
934
+
935
+ railgun.add_function('kernel32', 'FindNextFileW', 'BOOL',[
936
+ ["DWORD","hFindFile","in"],
937
+ ["PBLOB","lpFindFileData","out"],
938
+ ])
939
+
940
+ railgun.add_function('kernel32', 'FindNextStreamW', 'BOOL',[
941
+ ["DWORD","hFindStream","in"],
942
+ ["PBLOB","lpFindStreamData","out"],
943
+ ])
944
+
945
+ railgun.add_function('kernel32', 'FindNextVolumeA', 'BOOL',[
946
+ ["DWORD","hFindVolume","inout"],
947
+ ["PCHAR","lpszVolumeName","out"],
948
+ ["DWORD","cchBufferLength","in"],
949
+ ])
950
+
951
+ railgun.add_function('kernel32', 'FindNextVolumeMountPointA', 'BOOL',[
952
+ ["DWORD","hFindVolumeMountPoint","in"],
953
+ ["PCHAR","lpszVolumeMountPoint","out"],
954
+ ["DWORD","cchBufferLength","in"],
955
+ ])
956
+
957
+ railgun.add_function('kernel32', 'FindNextVolumeMountPointW', 'BOOL',[
958
+ ["DWORD","hFindVolumeMountPoint","in"],
959
+ ["PWCHAR","lpszVolumeMountPoint","out"],
960
+ ["DWORD","cchBufferLength","in"],
961
+ ])
962
+
963
+ railgun.add_function('kernel32', 'FindNextVolumeW', 'BOOL',[
964
+ ["DWORD","hFindVolume","inout"],
965
+ ["PWCHAR","lpszVolumeName","out"],
966
+ ["DWORD","cchBufferLength","in"],
967
+ ])
968
+
969
+ railgun.add_function('kernel32', 'FindResourceA', 'DWORD',[
970
+ ["DWORD","hModule","in"],
971
+ ["PCHAR","lpName","in"],
972
+ ["PCHAR","lpType","in"],
973
+ ])
974
+
975
+ railgun.add_function('kernel32', 'FindResourceExA', 'DWORD',[
976
+ ["DWORD","hModule","in"],
977
+ ["PCHAR","lpType","in"],
978
+ ["PCHAR","lpName","in"],
979
+ ["WORD","wLanguage","in"],
980
+ ])
981
+
982
+ railgun.add_function('kernel32', 'FindResourceExW', 'DWORD',[
983
+ ["DWORD","hModule","in"],
984
+ ["PWCHAR","lpType","in"],
985
+ ["PWCHAR","lpName","in"],
986
+ ["WORD","wLanguage","in"],
987
+ ])
988
+
989
+ railgun.add_function('kernel32', 'FindResourceW', 'DWORD',[
990
+ ["DWORD","hModule","in"],
991
+ ["PWCHAR","lpName","in"],
992
+ ["PWCHAR","lpType","in"],
993
+ ])
994
+
995
+ railgun.add_function('kernel32', 'FindVolumeClose', 'BOOL',[
996
+ ["DWORD","hFindVolume","in"],
997
+ ])
998
+
999
+ railgun.add_function('kernel32', 'FindVolumeMountPointClose', 'BOOL',[
1000
+ ["DWORD","hFindVolumeMountPoint","in"],
1001
+ ])
1002
+
1003
+ railgun.add_function('kernel32', 'FlsAlloc', 'DWORD',[
1004
+ ["PBLOB","lpCallback","in"],
1005
+ ])
1006
+
1007
+ railgun.add_function('kernel32', 'FlsFree', 'BOOL',[
1008
+ ["DWORD","dwFlsIndex","in"],
1009
+ ])
1010
+
1011
+ railgun.add_function('kernel32', 'FlsGetValue', 'PBLOB',[
1012
+ ["DWORD","dwFlsIndex","in"],
1013
+ ])
1014
+
1015
+ railgun.add_function('kernel32', 'FlsSetValue', 'BOOL',[
1016
+ ["DWORD","dwFlsIndex","in"],
1017
+ ["PBLOB","lpFlsData","in"],
1018
+ ])
1019
+
1020
+ railgun.add_function('kernel32', 'FlushFileBuffers', 'BOOL',[
1021
+ ["DWORD","hFile","in"],
1022
+ ])
1023
+
1024
+ railgun.add_function('kernel32', 'FlushInstructionCache', 'BOOL',[
1025
+ ["DWORD","hProcess","in"],
1026
+ ["PBLOB","lpBaseAddress","in"],
1027
+ ["DWORD","dwSize","in"],
1028
+ ])
1029
+
1030
+ railgun.add_function('kernel32', 'FlushViewOfFile', 'BOOL',[
1031
+ ["PBLOB","lpBaseAddress","in"],
1032
+ ["DWORD","dwNumberOfBytesToFlush","in"],
1033
+ ])
1034
+
1035
+ railgun.add_function('kernel32', 'FreeEnvironmentStringsA', 'BOOL',[
1036
+ ["PBLOB","param0","in"],
1037
+ ])
1038
+
1039
+ railgun.add_function('kernel32', 'FreeEnvironmentStringsW', 'BOOL',[
1040
+ ["PBLOB","param0","in"],
1041
+ ])
1042
+
1043
+ railgun.add_function('kernel32', 'FreeLibrary', 'BOOL',[
1044
+ ["DWORD","hLibModule","in"],
1045
+ ])
1046
+
1047
+ railgun.add_function('kernel32', 'FreeLibraryAndExitThread', 'VOID',[
1048
+ ["DWORD","hLibModule","in"],
1049
+ ["DWORD","dwExitCode","in"],
1050
+ ])
1051
+
1052
+ railgun.add_function('kernel32', 'FreeResource', 'BOOL',[
1053
+ ["DWORD","hResData","in"],
1054
+ ])
1055
+
1056
+ railgun.add_function('kernel32', 'FreeUserPhysicalPages', 'BOOL',[
1057
+ ["DWORD","hProcess","in"],
1058
+ ["PBLOB","NumberOfPages","inout"],
1059
+ ["PBLOB","PageArray","in"],
1060
+ ])
1061
+
1062
+ railgun.add_function('kernel32', 'GetAtomNameA', 'DWORD',[
1063
+ ["WORD","nAtom","in"],
1064
+ ["PCHAR","lpBuffer","out"],
1065
+ ["DWORD","nSize","in"],
1066
+ ])
1067
+
1068
+ railgun.add_function('kernel32', 'GetAtomNameW', 'DWORD',[
1069
+ ["WORD","nAtom","in"],
1070
+ ["PWCHAR","lpBuffer","out"],
1071
+ ["DWORD","nSize","in"],
1072
+ ])
1073
+
1074
+ railgun.add_function('kernel32', 'GetBinaryTypeA', 'BOOL',[
1075
+ ["PCHAR","lpApplicationName","in"],
1076
+ ["PDWORD","lpBinaryType","out"],
1077
+ ])
1078
+
1079
+ railgun.add_function('kernel32', 'GetBinaryTypeW', 'BOOL',[
1080
+ ["PWCHAR","lpApplicationName","in"],
1081
+ ["PDWORD","lpBinaryType","out"],
1082
+ ])
1083
+
1084
+ railgun.add_function('kernel32', 'GetCommConfig', 'BOOL',[
1085
+ ["DWORD","hCommDev","in"],
1086
+ ["PBLOB","lpCC","out"],
1087
+ ["PDWORD","lpdwSize","inout"],
1088
+ ])
1089
+
1090
+ railgun.add_function('kernel32', 'GetCommMask', 'BOOL',[
1091
+ ["DWORD","hFile","in"],
1092
+ ["PDWORD","lpEvtMask","out"],
1093
+ ])
1094
+
1095
+ railgun.add_function('kernel32', 'GetCommModemStatus', 'BOOL',[
1096
+ ["DWORD","hFile","in"],
1097
+ ["PDWORD","lpModemStat","out"],
1098
+ ])
1099
+
1100
+ railgun.add_function('kernel32', 'GetCommProperties', 'BOOL',[
1101
+ ["DWORD","hFile","in"],
1102
+ ["PBLOB","lpCommProp","out"],
1103
+ ])
1104
+
1105
+ railgun.add_function('kernel32', 'GetCommState', 'BOOL',[
1106
+ ["DWORD","hFile","in"],
1107
+ ["PBLOB","lpDCB","out"],
1108
+ ])
1109
+
1110
+ railgun.add_function('kernel32', 'GetCommTimeouts', 'BOOL',[
1111
+ ["DWORD","hFile","in"],
1112
+ ["PBLOB","lpCommTimeouts","out"],
1113
+ ])
1114
+
1115
+ railgun.add_function('kernel32', 'GetCommandLineA', 'PCHAR',[
1116
+ ])
1117
+
1118
+ railgun.add_function('kernel32', 'GetCommandLineW', 'PWCHAR',[
1119
+ ])
1120
+
1121
+ railgun.add_function('kernel32', 'GetCompressedFileSizeA', 'DWORD',[
1122
+ ["PCHAR","lpFileName","in"],
1123
+ ["PDWORD","lpFileSizeHigh","out"],
1124
+ ])
1125
+
1126
+ railgun.add_function('kernel32', 'GetCompressedFileSizeW', 'DWORD',[
1127
+ ["PWCHAR","lpFileName","in"],
1128
+ ["PDWORD","lpFileSizeHigh","out"],
1129
+ ])
1130
+
1131
+ railgun.add_function('kernel32', 'GetComputerNameA', 'BOOL',[
1132
+ ["PCHAR","lpBuffer","out"],
1133
+ ["PDWORD","nSize","inout"],
1134
+ ])
1135
+
1136
+ railgun.add_function('kernel32', 'GetComputerNameExA', 'BOOL',[
1137
+ ["DWORD","NameType","in"],
1138
+ ["PCHAR","lpBuffer","out"],
1139
+ ["PDWORD","nSize","inout"],
1140
+ ])
1141
+
1142
+ railgun.add_function('kernel32', 'GetComputerNameExW', 'BOOL',[
1143
+ ["DWORD","NameType","in"],
1144
+ ["PWCHAR","lpBuffer","out"],
1145
+ ["PDWORD","nSize","inout"],
1146
+ ])
1147
+
1148
+ railgun.add_function('kernel32', 'GetComputerNameW', 'BOOL',[
1149
+ ["PWCHAR","lpBuffer","out"],
1150
+ ["PDWORD","nSize","inout"],
1151
+ ])
1152
+
1153
+ railgun.add_function('kernel32', 'GetCurrentActCtx', 'BOOL',[
1154
+ ["PDWORD","lphActCtx","out"],
1155
+ ])
1156
+
1157
+ railgun.add_function('kernel32', 'GetCurrentDirectoryA', 'DWORD',[
1158
+ ["DWORD","nBufferLength","in"],
1159
+ ["PCHAR","lpBuffer","out"],
1160
+ ])
1161
+
1162
+ railgun.add_function('kernel32', 'GetCurrentDirectoryW', 'DWORD',[
1163
+ ["DWORD","nBufferLength","in"],
1164
+ ["PWCHAR","lpBuffer","out"],
1165
+ ])
1166
+
1167
+ railgun.add_function('kernel32', 'GetCurrentProcess', 'DWORD',[
1168
+ ])
1169
+
1170
+ railgun.add_function('kernel32', 'GetCurrentProcessId', 'DWORD',[
1171
+ ])
1172
+
1173
+ railgun.add_function('kernel32', 'GetCurrentProcessorNumber', 'DWORD',[
1174
+ ])
1175
+
1176
+ railgun.add_function('kernel32', 'GetCurrentThread', 'DWORD',[
1177
+ ])
1178
+
1179
+ railgun.add_function('kernel32', 'GetCurrentThreadId', 'DWORD',[
1180
+ ])
1181
+
1182
+ railgun.add_function('kernel32', 'GetDefaultCommConfigA', 'BOOL',[
1183
+ ["PCHAR","lpszName","in"],
1184
+ ["PBLOB","lpCC","out"],
1185
+ ["PDWORD","lpdwSize","inout"],
1186
+ ])
1187
+
1188
+ railgun.add_function('kernel32', 'GetDefaultCommConfigW', 'BOOL',[
1189
+ ["PWCHAR","lpszName","in"],
1190
+ ["PBLOB","lpCC","out"],
1191
+ ["PDWORD","lpdwSize","inout"],
1192
+ ])
1193
+
1194
+ railgun.add_function('kernel32', 'GetDevicePowerState', 'BOOL',[
1195
+ ["DWORD","hDevice","in"],
1196
+ ["PBLOB","pfOn","out"],
1197
+ ])
1198
+
1199
+ railgun.add_function('kernel32', 'GetDiskFreeSpaceA', 'BOOL',[
1200
+ ["PCHAR","lpRootPathName","in"],
1201
+ ["PDWORD","lpSectorsPerCluster","out"],
1202
+ ["PDWORD","lpBytesPerSector","out"],
1203
+ ["PDWORD","lpNumberOfFreeClusters","out"],
1204
+ ["PDWORD","lpTotalNumberOfClusters","out"],
1205
+ ])
1206
+
1207
+ railgun.add_function('kernel32', 'GetDiskFreeSpaceExA', 'BOOL',[
1208
+ ["PCHAR","lpDirectoryName","in"],
1209
+ ["PBLOB","lpFreeBytesAvailableToCaller","out"],
1210
+ ["PBLOB","lpTotalNumberOfBytes","out"],
1211
+ ["PBLOB","lpTotalNumberOfFreeBytes","out"],
1212
+ ])
1213
+
1214
+ railgun.add_function('kernel32', 'GetDiskFreeSpaceExW', 'BOOL',[
1215
+ ["PWCHAR","lpDirectoryName","in"],
1216
+ ["PBLOB","lpFreeBytesAvailableToCaller","out"],
1217
+ ["PBLOB","lpTotalNumberOfBytes","out"],
1218
+ ["PBLOB","lpTotalNumberOfFreeBytes","out"],
1219
+ ])
1220
+
1221
+ railgun.add_function('kernel32', 'GetDiskFreeSpaceW', 'BOOL',[
1222
+ ["PWCHAR","lpRootPathName","in"],
1223
+ ["PDWORD","lpSectorsPerCluster","out"],
1224
+ ["PDWORD","lpBytesPerSector","out"],
1225
+ ["PDWORD","lpNumberOfFreeClusters","out"],
1226
+ ["PDWORD","lpTotalNumberOfClusters","out"],
1227
+ ])
1228
+
1229
+ railgun.add_function('kernel32', 'GetDllDirectoryA', 'DWORD',[
1230
+ ["DWORD","nBufferLength","in"],
1231
+ ["PCHAR","lpBuffer","out"],
1232
+ ])
1233
+
1234
+ railgun.add_function('kernel32', 'GetDllDirectoryW', 'DWORD',[
1235
+ ["DWORD","nBufferLength","in"],
1236
+ ["PWCHAR","lpBuffer","out"],
1237
+ ])
1238
+
1239
+ railgun.add_function('kernel32', 'GetDriveTypeA', 'DWORD',[
1240
+ ["PCHAR","lpRootPathName","in"],
1241
+ ])
1242
+
1243
+ railgun.add_function('kernel32', 'GetDriveTypeW', 'DWORD',[
1244
+ ["PWCHAR","lpRootPathName","in"],
1245
+ ])
1246
+
1247
+ railgun.add_function('kernel32', 'GetEnvironmentStrings', 'PBLOB',[
1248
+ ])
1249
+
1250
+ railgun.add_function('kernel32', 'GetEnvironmentStringsW', 'PBLOB',[
1251
+ ])
1252
+
1253
+ railgun.add_function('kernel32', 'GetEnvironmentVariableA', 'DWORD',[
1254
+ ["PCHAR","lpName","in"],
1255
+ ["PCHAR","lpBuffer","out"],
1256
+ ["DWORD","nSize","in"],
1257
+ ])
1258
+
1259
+ railgun.add_function('kernel32', 'GetEnvironmentVariableW', 'DWORD',[
1260
+ ["PWCHAR","lpName","in"],
1261
+ ["PWCHAR","lpBuffer","out"],
1262
+ ["DWORD","nSize","in"],
1263
+ ])
1264
+
1265
+ railgun.add_function('kernel32', 'GetExitCodeProcess', 'BOOL',[
1266
+ ["DWORD","hProcess","in"],
1267
+ ["PDWORD","lpExitCode","out"],
1268
+ ])
1269
+
1270
+ railgun.add_function('kernel32', 'GetExitCodeThread', 'BOOL',[
1271
+ ["DWORD","hThread","in"],
1272
+ ["PDWORD","lpExitCode","out"],
1273
+ ])
1274
+
1275
+ railgun.add_function('kernel32', 'GetFileAttributesA', 'DWORD',[
1276
+ ["PCHAR","lpFileName","in"],
1277
+ ])
1278
+
1279
+ railgun.add_function('kernel32', 'GetFileAttributesExA', 'BOOL',[
1280
+ ["PCHAR","lpFileName","in"],
1281
+ ["PBLOB","fInfoLevelId","in"],
1282
+ ["PBLOB","lpFileInformation","out"],
1283
+ ])
1284
+
1285
+ railgun.add_function('kernel32', 'GetFileAttributesExW', 'BOOL',[
1286
+ ["PWCHAR","lpFileName","in"],
1287
+ ["PBLOB","fInfoLevelId","in"],
1288
+ ["PBLOB","lpFileInformation","out"],
1289
+ ])
1290
+
1291
+ railgun.add_function('kernel32', 'GetFileAttributesW', 'DWORD',[
1292
+ ["PWCHAR","lpFileName","in"],
1293
+ ])
1294
+
1295
+ railgun.add_function('kernel32', 'GetFileInformationByHandle', 'BOOL',[
1296
+ ["DWORD","hFile","in"],
1297
+ ["PBLOB","lpFileInformation","out"],
1298
+ ])
1299
+
1300
+ railgun.add_function('kernel32', 'GetFileSize', 'DWORD',[
1301
+ ["DWORD","hFile","in"],
1302
+ ["PDWORD","lpFileSizeHigh","out"],
1303
+ ])
1304
+
1305
+ railgun.add_function('kernel32', 'GetFileSizeEx', 'BOOL',[
1306
+ ["DWORD","hFile","in"],
1307
+ ["PBLOB","lpFileSize","out"],
1308
+ ])
1309
+
1310
+ railgun.add_function('kernel32', 'GetFileTime', 'BOOL',[
1311
+ ["DWORD","hFile","in"],
1312
+ ["PBLOB","lpCreationTime","out"],
1313
+ ["PBLOB","lpLastAccessTime","out"],
1314
+ ["PBLOB","lpLastWriteTime","out"],
1315
+ ])
1316
+
1317
+ railgun.add_function('kernel32', 'GetFileType', 'DWORD',[
1318
+ ["DWORD","hFile","in"],
1319
+ ])
1320
+
1321
+ railgun.add_function('kernel32', 'GetFirmwareEnvironmentVariableA', 'DWORD',[
1322
+ ["PCHAR","lpName","in"],
1323
+ ["PCHAR","lpGuid","in"],
1324
+ ["PBLOB","pBuffer","out"],
1325
+ ["DWORD","nSize","in"],
1326
+ ])
1327
+
1328
+ railgun.add_function('kernel32', 'GetFirmwareEnvironmentVariableW', 'DWORD',[
1329
+ ["PWCHAR","lpName","in"],
1330
+ ["PWCHAR","lpGuid","in"],
1331
+ ["PBLOB","pBuffer","out"],
1332
+ ["DWORD","nSize","in"],
1333
+ ])
1334
+
1335
+ railgun.add_function('kernel32', 'GetFullPathNameA', 'DWORD',[
1336
+ ["PCHAR","lpFileName","in"],
1337
+ ["DWORD","nBufferLength","in"],
1338
+ ["PCHAR","lpBuffer","out"],
1339
+ ["PBLOB","lpFilePart","out"],
1340
+ ])
1341
+
1342
+ railgun.add_function('kernel32', 'GetFullPathNameW', 'DWORD',[
1343
+ ["PWCHAR","lpFileName","in"],
1344
+ ["DWORD","nBufferLength","in"],
1345
+ ["PWCHAR","lpBuffer","out"],
1346
+ ["PBLOB","lpFilePart","out"],
1347
+ ])
1348
+
1349
+ railgun.add_function('kernel32', 'GetHandleInformation', 'BOOL',[
1350
+ ["DWORD","hObject","in"],
1351
+ ["PDWORD","lpdwFlags","out"],
1352
+ ])
1353
+
1354
+ railgun.add_function('kernel32', 'GetLargePageMinimum', 'DWORD',[
1355
+ ])
1356
+
1357
+ railgun.add_function('kernel32', 'GetLastError', 'DWORD',[
1358
+ ])
1359
+
1360
+ railgun.add_function('kernel32', 'GetLocalTime', 'VOID',[
1361
+ ["PBLOB","lpSystemTime","out"],
1362
+ ])
1363
+
1364
+ railgun.add_function('kernel32', 'GetLogicalDriveStringsA', 'DWORD',[
1365
+ ["DWORD","nBufferLength","in"],
1366
+ ["PCHAR","lpBuffer","out"],
1367
+ ])
1368
+
1369
+ railgun.add_function('kernel32', 'GetLogicalDriveStringsW', 'DWORD',[
1370
+ ["DWORD","nBufferLength","in"],
1371
+ ["PWCHAR","lpBuffer","out"],
1372
+ ])
1373
+
1374
+ railgun.add_function('kernel32', 'GetLogicalDrives', 'DWORD',[
1375
+ ])
1376
+
1377
+ railgun.add_function('kernel32', 'GetLogicalProcessorInformation', 'BOOL',[
1378
+ ["PBLOB","Buffer","out"],
1379
+ ["PDWORD","ReturnedLength","inout"],
1380
+ ])
1381
+
1382
+ railgun.add_function('kernel32', 'GetLongPathNameA', 'DWORD',[
1383
+ ["PCHAR","lpszShortPath","in"],
1384
+ ["PCHAR","lpszLongPath","out"],
1385
+ ["DWORD","cchBuffer","in"],
1386
+ ])
1387
+
1388
+ railgun.add_function('kernel32', 'GetLongPathNameW', 'DWORD',[
1389
+ ["PWCHAR","lpszShortPath","in"],
1390
+ ["PWCHAR","lpszLongPath","out"],
1391
+ ["DWORD","cchBuffer","in"],
1392
+ ])
1393
+
1394
+ railgun.add_function('kernel32', 'GetMailslotInfo', 'BOOL',[
1395
+ ["DWORD","hMailslot","in"],
1396
+ ["PDWORD","lpMaxMessageSize","out"],
1397
+ ["PDWORD","lpNextSize","out"],
1398
+ ["PDWORD","lpMessageCount","out"],
1399
+ ["PDWORD","lpReadTimeout","out"],
1400
+ ])
1401
+
1402
+ railgun.add_function('kernel32', 'GetModuleFileNameA', 'DWORD',[
1403
+ ["DWORD","hModule","in"],
1404
+ ["PBLOB","lpFilename","out"],
1405
+ ["DWORD","nSize","in"],
1406
+ ])
1407
+
1408
+ railgun.add_function('kernel32', 'GetModuleFileNameW', 'DWORD',[
1409
+ ["DWORD","hModule","in"],
1410
+ ["PBLOB","lpFilename","out"],
1411
+ ["DWORD","nSize","in"],
1412
+ ])
1413
+
1414
+ railgun.add_function('kernel32', 'GetModuleHandleA', 'DWORD',[
1415
+ ["PCHAR","lpModuleName","in"],
1416
+ ])
1417
+
1418
+ railgun.add_function('kernel32', 'GetModuleHandleExA', 'BOOL',[
1419
+ ["DWORD","dwFlags","in"],
1420
+ ["PCHAR","lpModuleName","in"],
1421
+ ["PDWORD","phModule","out"],
1422
+ ])
1423
+
1424
+ railgun.add_function('kernel32', 'GetModuleHandleExW', 'BOOL',[
1425
+ ["DWORD","dwFlags","in"],
1426
+ ["PWCHAR","lpModuleName","in"],
1427
+ ["PDWORD","phModule","out"],
1428
+ ])
1429
+
1430
+ railgun.add_function('kernel32', 'GetModuleHandleW', 'DWORD',[
1431
+ ["PWCHAR","lpModuleName","in"],
1432
+ ])
1433
+
1434
+ railgun.add_function('kernel32', 'GetNamedPipeHandleStateA', 'BOOL',[
1435
+ ["DWORD","hNamedPipe","in"],
1436
+ ["PDWORD","lpState","out"],
1437
+ ["PDWORD","lpCurInstances","out"],
1438
+ ["PDWORD","lpMaxCollectionCount","out"],
1439
+ ["PDWORD","lpCollectDataTimeout","out"],
1440
+ ["PCHAR","lpUserName","out"],
1441
+ ["DWORD","nMaxUserNameSize","in"],
1442
+ ])
1443
+
1444
+ railgun.add_function('kernel32', 'GetNamedPipeHandleStateW', 'BOOL',[
1445
+ ["DWORD","hNamedPipe","in"],
1446
+ ["PDWORD","lpState","out"],
1447
+ ["PDWORD","lpCurInstances","out"],
1448
+ ["PDWORD","lpMaxCollectionCount","out"],
1449
+ ["PDWORD","lpCollectDataTimeout","out"],
1450
+ ["PWCHAR","lpUserName","out"],
1451
+ ["DWORD","nMaxUserNameSize","in"],
1452
+ ])
1453
+
1454
+ railgun.add_function('kernel32', 'GetNamedPipeInfo', 'BOOL',[
1455
+ ["DWORD","hNamedPipe","in"],
1456
+ ["PDWORD","lpFlags","out"],
1457
+ ["PDWORD","lpOutBufferSize","out"],
1458
+ ["PDWORD","lpInBufferSize","out"],
1459
+ ["PDWORD","lpMaxInstances","out"],
1460
+ ])
1461
+
1462
+ railgun.add_function('kernel32', 'GetNativeSystemInfo', 'VOID',[
1463
+ ["PBLOB","lpSystemInfo","out"],
1464
+ ])
1465
+
1466
+ railgun.add_function('kernel32', 'GetNumaAvailableMemoryNode', 'BOOL',[
1467
+ ["BYTE","Node","in"],
1468
+ ["PBLOB","AvailableBytes","out"],
1469
+ ])
1470
+
1471
+ railgun.add_function('kernel32', 'GetNumaHighestNodeNumber', 'BOOL',[
1472
+ ["PDWORD","HighestNodeNumber","out"],
1473
+ ])
1474
+
1475
+ railgun.add_function('kernel32', 'GetNumaNodeProcessorMask', 'BOOL',[
1476
+ ["BYTE","Node","in"],
1477
+ ["PBLOB","ProcessorMask","out"],
1478
+ ])
1479
+
1480
+ railgun.add_function('kernel32', 'GetNumaProcessorNode', 'BOOL',[
1481
+ ["BYTE","Processor","in"],
1482
+ ["PBLOB","NodeNumber","out"],
1483
+ ])
1484
+
1485
+ railgun.add_function('kernel32', 'GetOverlappedResult', 'BOOL',[
1486
+ ["DWORD","hFile","in"],
1487
+ ["PBLOB","lpOverlapped","in"],
1488
+ ["PDWORD","lpNumberOfBytesTransferred","out"],
1489
+ ["BOOL","bWait","in"],
1490
+ ])
1491
+
1492
+ railgun.add_function('kernel32', 'GetPriorityClass', 'DWORD',[
1493
+ ["DWORD","hProcess","in"],
1494
+ ])
1495
+
1496
+ railgun.add_function('kernel32', 'GetPrivateProfileIntA', 'DWORD',[
1497
+ ["PCHAR","lpAppName","in"],
1498
+ ["PCHAR","lpKeyName","in"],
1499
+ ["DWORD","nDefault","in"],
1500
+ ["PCHAR","lpFileName","in"],
1501
+ ])
1502
+
1503
+ railgun.add_function('kernel32', 'GetPrivateProfileIntW', 'DWORD',[
1504
+ ["PWCHAR","lpAppName","in"],
1505
+ ["PWCHAR","lpKeyName","in"],
1506
+ ["DWORD","nDefault","in"],
1507
+ ["PWCHAR","lpFileName","in"],
1508
+ ])
1509
+
1510
+ railgun.add_function('kernel32', 'GetPrivateProfileSectionA', 'DWORD',[
1511
+ ["PCHAR","lpAppName","in"],
1512
+ ["PCHAR","lpReturnedString","out"],
1513
+ ["DWORD","nSize","in"],
1514
+ ["PCHAR","lpFileName","in"],
1515
+ ])
1516
+
1517
+ railgun.add_function('kernel32', 'GetPrivateProfileSectionNamesA', 'DWORD',[
1518
+ ["PCHAR","lpszReturnBuffer","out"],
1519
+ ["DWORD","nSize","in"],
1520
+ ["PCHAR","lpFileName","in"],
1521
+ ])
1522
+
1523
+ railgun.add_function('kernel32', 'GetPrivateProfileSectionNamesW', 'DWORD',[
1524
+ ["PWCHAR","lpszReturnBuffer","out"],
1525
+ ["DWORD","nSize","in"],
1526
+ ["PWCHAR","lpFileName","in"],
1527
+ ])
1528
+
1529
+ railgun.add_function('kernel32', 'GetPrivateProfileSectionW', 'DWORD',[
1530
+ ["PWCHAR","lpAppName","in"],
1531
+ ["PWCHAR","lpReturnedString","out"],
1532
+ ["DWORD","nSize","in"],
1533
+ ["PWCHAR","lpFileName","in"],
1534
+ ])
1535
+
1536
+ railgun.add_function('kernel32', 'GetPrivateProfileStringA', 'DWORD',[
1537
+ ["PCHAR","lpAppName","in"],
1538
+ ["PCHAR","lpKeyName","in"],
1539
+ ["PCHAR","lpDefault","in"],
1540
+ ["PCHAR","lpReturnedString","out"],
1541
+ ["DWORD","nSize","in"],
1542
+ ["PCHAR","lpFileName","in"],
1543
+ ])
1544
+
1545
+ railgun.add_function('kernel32', 'GetPrivateProfileStringW', 'DWORD',[
1546
+ ["PWCHAR","lpAppName","in"],
1547
+ ["PWCHAR","lpKeyName","in"],
1548
+ ["PWCHAR","lpDefault","in"],
1549
+ ["PWCHAR","lpReturnedString","out"],
1550
+ ["DWORD","nSize","in"],
1551
+ ["PWCHAR","lpFileName","in"],
1552
+ ])
1553
+
1554
+ railgun.add_function('kernel32', 'GetPrivateProfileStructA', 'BOOL',[
1555
+ ["PCHAR","lpszSection","in"],
1556
+ ["PCHAR","lpszKey","in"],
1557
+ ["PBLOB","lpStruct","out"],
1558
+ ["DWORD","uSizeStruct","in"],
1559
+ ["PCHAR","szFile","in"],
1560
+ ])
1561
+
1562
+ railgun.add_function('kernel32', 'GetPrivateProfileStructW', 'BOOL',[
1563
+ ["PWCHAR","lpszSection","in"],
1564
+ ["PWCHAR","lpszKey","in"],
1565
+ ["PBLOB","lpStruct","out"],
1566
+ ["DWORD","uSizeStruct","in"],
1567
+ ["PWCHAR","szFile","in"],
1568
+ ])
1569
+
1570
+ railgun.add_function('kernel32', 'GetProcAddress', 'PBLOB',[
1571
+ ["DWORD","hModule","in"],
1572
+ ["PCHAR","lpProcName","in"],
1573
+ ])
1574
+
1575
+ railgun.add_function('kernel32', 'GetProcessAffinityMask', 'BOOL',[
1576
+ ["DWORD","hProcess","in"],
1577
+ ["PBLOB","lpProcessAffinityMask","out"],
1578
+ ["PBLOB","lpSystemAffinityMask","out"],
1579
+ ])
1580
+
1581
+ railgun.add_function('kernel32', 'GetProcessHandleCount', 'BOOL',[
1582
+ ["DWORD","hProcess","in"],
1583
+ ["PDWORD","pdwHandleCount","out"],
1584
+ ])
1585
+
1586
+ railgun.add_function('kernel32', 'GetProcessHeap', 'DWORD',[
1587
+ ])
1588
+
1589
+ railgun.add_function('kernel32', 'GetProcessHeaps', 'DWORD',[
1590
+ ["DWORD","NumberOfHeaps","in"],
1591
+ ["PDWORD","ProcessHeaps","out"],
1592
+ ])
1593
+
1594
+ railgun.add_function('kernel32', 'GetProcessId', 'DWORD',[
1595
+ ["DWORD","Process","in"],
1596
+ ])
1597
+
1598
+ railgun.add_function('kernel32', 'GetProcessIdOfThread', 'DWORD',[
1599
+ ["DWORD","Thread","in"],
1600
+ ])
1601
+
1602
+ railgun.add_function('kernel32', 'GetProcessIoCounters', 'BOOL',[
1603
+ ["DWORD","hProcess","in"],
1604
+ ["PBLOB","lpIoCounters","out"],
1605
+ ])
1606
+
1607
+ railgun.add_function('kernel32', 'GetProcessPriorityBoost', 'BOOL',[
1608
+ ["DWORD","hProcess","in"],
1609
+ ["PBLOB","pDisablePriorityBoost","out"],
1610
+ ])
1611
+
1612
+ railgun.add_function('kernel32', 'GetProcessShutdownParameters', 'BOOL',[
1613
+ ["PDWORD","lpdwLevel","out"],
1614
+ ["PDWORD","lpdwFlags","out"],
1615
+ ])
1616
+
1617
+ railgun.add_function('kernel32', 'GetProcessTimes', 'BOOL',[
1618
+ ["DWORD","hProcess","in"],
1619
+ ["PBLOB","lpCreationTime","out"],
1620
+ ["PBLOB","lpExitTime","out"],
1621
+ ["PBLOB","lpKernelTime","out"],
1622
+ ["PBLOB","lpUserTime","out"],
1623
+ ])
1624
+
1625
+ railgun.add_function('kernel32', 'GetProcessVersion', 'DWORD',[
1626
+ ["DWORD","ProcessId","in"],
1627
+ ])
1628
+
1629
+ railgun.add_function('kernel32', 'GetProcessWorkingSetSize', 'BOOL',[
1630
+ ["DWORD","hProcess","in"],
1631
+ ["PDWORD","lpMinimumWorkingSetSize","out"],
1632
+ ["PDWORD","lpMaximumWorkingSetSize","out"],
1633
+ ])
1634
+
1635
+ railgun.add_function('kernel32', 'GetProcessWorkingSetSizeEx', 'BOOL',[
1636
+ ["DWORD","hProcess","in"],
1637
+ ["PDWORD","lpMinimumWorkingSetSize","out"],
1638
+ ["PDWORD","lpMaximumWorkingSetSize","out"],
1639
+ ["PDWORD","Flags","out"],
1640
+ ])
1641
+
1642
+ railgun.add_function('kernel32', 'GetProfileIntA', 'DWORD',[
1643
+ ["PCHAR","lpAppName","in"],
1644
+ ["PCHAR","lpKeyName","in"],
1645
+ ["DWORD","nDefault","in"],
1646
+ ])
1647
+
1648
+ railgun.add_function('kernel32', 'GetProfileIntW', 'DWORD',[
1649
+ ["PWCHAR","lpAppName","in"],
1650
+ ["PWCHAR","lpKeyName","in"],
1651
+ ["DWORD","nDefault","in"],
1652
+ ])
1653
+
1654
+ railgun.add_function('kernel32', 'GetProfileSectionA', 'DWORD',[
1655
+ ["PCHAR","lpAppName","in"],
1656
+ ["PCHAR","lpReturnedString","out"],
1657
+ ["DWORD","nSize","in"],
1658
+ ])
1659
+
1660
+ railgun.add_function('kernel32', 'GetProfileSectionW', 'DWORD',[
1661
+ ["PWCHAR","lpAppName","in"],
1662
+ ["PWCHAR","lpReturnedString","out"],
1663
+ ["DWORD","nSize","in"],
1664
+ ])
1665
+
1666
+ railgun.add_function('kernel32', 'GetProfileStringA', 'DWORD',[
1667
+ ["PCHAR","lpAppName","in"],
1668
+ ["PCHAR","lpKeyName","in"],
1669
+ ["PCHAR","lpDefault","in"],
1670
+ ["PCHAR","lpReturnedString","out"],
1671
+ ["DWORD","nSize","in"],
1672
+ ])
1673
+
1674
+ railgun.add_function('kernel32', 'GetProfileStringW', 'DWORD',[
1675
+ ["PWCHAR","lpAppName","in"],
1676
+ ["PWCHAR","lpKeyName","in"],
1677
+ ["PWCHAR","lpDefault","in"],
1678
+ ["PWCHAR","lpReturnedString","out"],
1679
+ ["DWORD","nSize","in"],
1680
+ ])
1681
+
1682
+ railgun.add_function('kernel32', 'GetQueuedCompletionStatus', 'BOOL',[
1683
+ ["DWORD","CompletionPort","in"],
1684
+ ["PDWORD","lpNumberOfBytesTransferred","out"],
1685
+ ["PBLOB","lpCompletionKey","out"],
1686
+ ["PBLOB","lpOverlapped","out"],
1687
+ ["DWORD","dwMilliseconds","in"],
1688
+ ])
1689
+
1690
+ railgun.add_function('kernel32', 'GetShortPathNameA', 'DWORD',[
1691
+ ["PCHAR","lpszLongPath","in"],
1692
+ ["PCHAR","lpszShortPath","out"],
1693
+ ["DWORD","cchBuffer","in"],
1694
+ ])
1695
+
1696
+ railgun.add_function('kernel32', 'GetShortPathNameW', 'DWORD',[
1697
+ ["PWCHAR","lpszLongPath","in"],
1698
+ ["PWCHAR","lpszShortPath","out"],
1699
+ ["DWORD","cchBuffer","in"],
1700
+ ])
1701
+
1702
+ railgun.add_function('kernel32', 'GetStartupInfoA', 'VOID',[
1703
+ ["PBLOB","lpStartupInfo","out"],
1704
+ ])
1705
+
1706
+ railgun.add_function('kernel32', 'GetStartupInfoW', 'VOID',[
1707
+ ["PBLOB","lpStartupInfo","out"],
1708
+ ])
1709
+
1710
+ railgun.add_function('kernel32', 'GetStdHandle', 'DWORD',[
1711
+ ["DWORD","nStdHandle","in"],
1712
+ ])
1713
+
1714
+ railgun.add_function('kernel32', 'GetSystemDirectoryA', 'DWORD',[
1715
+ ["PCHAR","lpBuffer","out"],
1716
+ ["DWORD","uSize","in"],
1717
+ ])
1718
+
1719
+ railgun.add_function('kernel32', 'GetSystemDirectoryW', 'DWORD',[
1720
+ ["PWCHAR","lpBuffer","out"],
1721
+ ["DWORD","uSize","in"],
1722
+ ])
1723
+
1724
+ railgun.add_function('kernel32', 'GetSystemFileCacheSize', 'BOOL',[
1725
+ ["PDWORD","lpMinimumFileCacheSize","out"],
1726
+ ["PDWORD","lpMaximumFileCacheSize","out"],
1727
+ ["PDWORD","lpFlags","out"],
1728
+ ])
1729
+
1730
+ railgun.add_function('kernel32', 'GetSystemFirmwareTable', 'DWORD',[
1731
+ ["DWORD","FirmwareTableProviderSignature","in"],
1732
+ ["DWORD","FirmwareTableID","in"],
1733
+ ["PBLOB","pFirmwareTableBuffer","out"],
1734
+ ["DWORD","BufferSize","in"],
1735
+ ])
1736
+
1737
+ railgun.add_function('kernel32', 'GetSystemInfo', 'VOID',[
1738
+ ["PBLOB","lpSystemInfo","out"],
1739
+ ])
1740
+
1741
+ railgun.add_function('kernel32', 'GetSystemPowerStatus', 'BOOL',[
1742
+ ["PBLOB","lpSystemPowerStatus","out"],
1743
+ ])
1744
+
1745
+ railgun.add_function('kernel32', 'GetSystemRegistryQuota', 'BOOL',[
1746
+ ["PDWORD","pdwQuotaAllowed","out"],
1747
+ ["PDWORD","pdwQuotaUsed","out"],
1748
+ ])
1749
+
1750
+ railgun.add_function('kernel32', 'GetSystemTime', 'VOID',[
1751
+ ["PBLOB","lpSystemTime","out"],
1752
+ ])
1753
+
1754
+ railgun.add_function('kernel32', 'GetSystemTimeAdjustment', 'BOOL',[
1755
+ ["PDWORD","lpTimeAdjustment","out"],
1756
+ ["PDWORD","lpTimeIncrement","out"],
1757
+ ["PBLOB","lpTimeAdjustmentDisabled","out"],
1758
+ ])
1759
+
1760
+ railgun.add_function('kernel32', 'GetSystemTimeAsFileTime', 'VOID',[
1761
+ ["PBLOB","lpSystemTimeAsFileTime","out"],
1762
+ ])
1763
+
1764
+ railgun.add_function('kernel32', 'GetSystemTimes', 'BOOL',[
1765
+ ["PBLOB","lpIdleTime","out"],
1766
+ ["PBLOB","lpKernelTime","out"],
1767
+ ["PBLOB","lpUserTime","out"],
1768
+ ])
1769
+
1770
+ railgun.add_function('kernel32', 'GetSystemWindowsDirectoryA', 'DWORD',[
1771
+ ["PCHAR","lpBuffer","out"],
1772
+ ["DWORD","uSize","in"],
1773
+ ])
1774
+
1775
+ railgun.add_function('kernel32', 'GetSystemWindowsDirectoryW', 'DWORD',[
1776
+ ["PWCHAR","lpBuffer","out"],
1777
+ ["DWORD","uSize","in"],
1778
+ ])
1779
+
1780
+ railgun.add_function('kernel32', 'GetSystemWow64DirectoryA', 'DWORD',[
1781
+ ["PCHAR","lpBuffer","out"],
1782
+ ["DWORD","uSize","in"],
1783
+ ])
1784
+
1785
+ railgun.add_function('kernel32', 'GetSystemWow64DirectoryW', 'DWORD',[
1786
+ ["PWCHAR","lpBuffer","out"],
1787
+ ["DWORD","uSize","in"],
1788
+ ])
1789
+
1790
+ railgun.add_function('kernel32', 'GetTapeParameters', 'DWORD',[
1791
+ ["DWORD","hDevice","in"],
1792
+ ["DWORD","dwOperation","in"],
1793
+ ["PDWORD","lpdwSize","inout"],
1794
+ ["PBLOB","lpTapeInformation","out"],
1795
+ ])
1796
+
1797
+ railgun.add_function('kernel32', 'GetTapePosition', 'DWORD',[
1798
+ ["DWORD","hDevice","in"],
1799
+ ["DWORD","dwPositionType","in"],
1800
+ ["PDWORD","lpdwPartition","out"],
1801
+ ["PDWORD","lpdwOffsetLow","out"],
1802
+ ["PDWORD","lpdwOffsetHigh","out"],
1803
+ ])
1804
+
1805
+ railgun.add_function('kernel32', 'GetTapeStatus', 'DWORD',[
1806
+ ["DWORD","hDevice","in"],
1807
+ ])
1808
+
1809
+ railgun.add_function('kernel32', 'GetTempFileNameA', 'DWORD',[
1810
+ ["PCHAR","lpPathName","in"],
1811
+ ["PCHAR","lpPrefixString","in"],
1812
+ ["DWORD","uUnique","in"],
1813
+ ["PCHAR","lpTempFileName","out"],
1814
+ ])
1815
+
1816
+ railgun.add_function('kernel32', 'GetTempFileNameW', 'DWORD',[
1817
+ ["PWCHAR","lpPathName","in"],
1818
+ ["PWCHAR","lpPrefixString","in"],
1819
+ ["DWORD","uUnique","in"],
1820
+ ["PWCHAR","lpTempFileName","out"],
1821
+ ])
1822
+
1823
+ railgun.add_function('kernel32', 'GetTempPathA', 'DWORD',[
1824
+ ["DWORD","nBufferLength","in"],
1825
+ ["PCHAR","lpBuffer","out"],
1826
+ ])
1827
+
1828
+ railgun.add_function('kernel32', 'GetTempPathW', 'DWORD',[
1829
+ ["DWORD","nBufferLength","in"],
1830
+ ["PWCHAR","lpBuffer","out"],
1831
+ ])
1832
+
1833
+ railgun.add_function('kernel32', 'GetThreadContext', 'BOOL',[
1834
+ ["DWORD","hThread","in"],
1835
+ ["PBLOB","lpContext","inout"],
1836
+ ])
1837
+
1838
+ railgun.add_function('kernel32', 'GetThreadIOPendingFlag', 'BOOL',[
1839
+ ["DWORD","hThread","in"],
1840
+ ["PBLOB","lpIOIsPending","out"],
1841
+ ])
1842
+
1843
+ railgun.add_function('kernel32', 'GetThreadId', 'DWORD',[
1844
+ ["DWORD","Thread","in"],
1845
+ ])
1846
+
1847
+ railgun.add_function('kernel32', 'GetThreadPriority', 'DWORD',[
1848
+ ["DWORD","hThread","in"],
1849
+ ])
1850
+
1851
+ railgun.add_function('kernel32', 'GetThreadPriorityBoost', 'BOOL',[
1852
+ ["DWORD","hThread","in"],
1853
+ ["PBLOB","pDisablePriorityBoost","out"],
1854
+ ])
1855
+
1856
+ railgun.add_function('kernel32', 'GetThreadSelectorEntry', 'BOOL',[
1857
+ ["DWORD","hThread","in"],
1858
+ ["DWORD","dwSelector","in"],
1859
+ ["PBLOB","lpSelectorEntry","out"],
1860
+ ])
1861
+
1862
+ railgun.add_function('kernel32', 'GetThreadTimes', 'BOOL',[
1863
+ ["DWORD","hThread","in"],
1864
+ ["PBLOB","lpCreationTime","out"],
1865
+ ["PBLOB","lpExitTime","out"],
1866
+ ["PBLOB","lpKernelTime","out"],
1867
+ ["PBLOB","lpUserTime","out"],
1868
+ ])
1869
+
1870
+ railgun.add_function('kernel32', 'GetTickCount', 'DWORD',[
1871
+ ])
1872
+
1873
+ railgun.add_function('kernel32', 'GetTimeZoneInformation', 'DWORD',[
1874
+ ["PBLOB","lpTimeZoneInformation","out"],
1875
+ ])
1876
+
1877
+ railgun.add_function('kernel32', 'GetVersion', 'DWORD',[
1878
+ ])
1879
+
1880
+ railgun.add_function('kernel32', 'GetVersionExA', 'BOOL',[
1881
+ ["PBLOB","lpVersionInformation","inout"],
1882
+ ])
1883
+
1884
+ railgun.add_function('kernel32', 'GetVersionExW', 'BOOL',[
1885
+ ["PBLOB","lpVersionInformation","inout"],
1886
+ ])
1887
+
1888
+ railgun.add_function('kernel32', 'GetVolumeInformationA', 'BOOL',[
1889
+ ["PCHAR","lpRootPathName","in"],
1890
+ ["PCHAR","lpVolumeNameBuffer","out"],
1891
+ ["DWORD","nVolumeNameSize","in"],
1892
+ ["PDWORD","lpVolumeSerialNumber","out"],
1893
+ ["PDWORD","lpMaximumComponentLength","out"],
1894
+ ["PDWORD","lpFileSystemFlags","out"],
1895
+ ["PCHAR","lpFileSystemNameBuffer","out"],
1896
+ ["DWORD","nFileSystemNameSize","in"],
1897
+ ])
1898
+
1899
+ railgun.add_function('kernel32', 'GetVolumeInformationW', 'BOOL',[
1900
+ ["PWCHAR","lpRootPathName","in"],
1901
+ ["PWCHAR","lpVolumeNameBuffer","out"],
1902
+ ["DWORD","nVolumeNameSize","in"],
1903
+ ["PDWORD","lpVolumeSerialNumber","out"],
1904
+ ["PDWORD","lpMaximumComponentLength","out"],
1905
+ ["PDWORD","lpFileSystemFlags","out"],
1906
+ ["PWCHAR","lpFileSystemNameBuffer","out"],
1907
+ ["DWORD","nFileSystemNameSize","in"],
1908
+ ])
1909
+
1910
+ railgun.add_function('kernel32', 'GetVolumeNameForVolumeMountPointA', 'BOOL',[
1911
+ ["PCHAR","lpszVolumeMountPoint","in"],
1912
+ ["PCHAR","lpszVolumeName","out"],
1913
+ ["DWORD","cchBufferLength","in"],
1914
+ ])
1915
+
1916
+ railgun.add_function('kernel32', 'GetVolumeNameForVolumeMountPointW', 'BOOL',[
1917
+ ["PWCHAR","lpszVolumeMountPoint","in"],
1918
+ ["PWCHAR","lpszVolumeName","out"],
1919
+ ["DWORD","cchBufferLength","in"],
1920
+ ])
1921
+
1922
+ railgun.add_function('kernel32', 'GetVolumePathNameA', 'BOOL',[
1923
+ ["PCHAR","lpszFileName","in"],
1924
+ ["PCHAR","lpszVolumePathName","out"],
1925
+ ["DWORD","cchBufferLength","in"],
1926
+ ])
1927
+
1928
+ railgun.add_function('kernel32', 'GetVolumePathNameW', 'BOOL',[
1929
+ ["PWCHAR","lpszFileName","in"],
1930
+ ["PWCHAR","lpszVolumePathName","out"],
1931
+ ["DWORD","cchBufferLength","in"],
1932
+ ])
1933
+
1934
+ railgun.add_function('kernel32', 'GetVolumePathNamesForVolumeNameA', 'BOOL',[
1935
+ ["PCHAR","lpszVolumeName","in"],
1936
+ ["PBLOB","lpszVolumePathNames","out"],
1937
+ ["DWORD","cchBufferLength","in"],
1938
+ ["PDWORD","lpcchReturnLength","out"],
1939
+ ])
1940
+
1941
+ railgun.add_function('kernel32', 'GetVolumePathNamesForVolumeNameW', 'BOOL',[
1942
+ ["PWCHAR","lpszVolumeName","in"],
1943
+ ["PBLOB","lpszVolumePathNames","out"],
1944
+ ["DWORD","cchBufferLength","in"],
1945
+ ["PDWORD","lpcchReturnLength","out"],
1946
+ ])
1947
+
1948
+ railgun.add_function('kernel32', 'GetWindowsDirectoryA', 'DWORD',[
1949
+ ["PCHAR","lpBuffer","out"],
1950
+ ["DWORD","uSize","in"],
1951
+ ])
1952
+
1953
+ railgun.add_function('kernel32', 'GetWindowsDirectoryW', 'DWORD',[
1954
+ ["PWCHAR","lpBuffer","out"],
1955
+ ["DWORD","uSize","in"],
1956
+ ])
1957
+
1958
+ railgun.add_function('kernel32', 'GetWriteWatch', 'DWORD',[
1959
+ ["DWORD","dwFlags","in"],
1960
+ ["PBLOB","lpBaseAddress","in"],
1961
+ ["DWORD","dwRegionSize","in"],
1962
+ ["PBLOB","lpAddresses","out"],
1963
+ ["PBLOB","lpdwCount","inout"],
1964
+ ["PDWORD","lpdwGranularity","out"],
1965
+ ])
1966
+
1967
+ railgun.add_function('kernel32', 'GlobalAddAtomA', 'WORD',[
1968
+ ["PCHAR","lpString","in"],
1969
+ ])
1970
+
1971
+ railgun.add_function('kernel32', 'GlobalAddAtomW', 'WORD',[
1972
+ ["PWCHAR","lpString","in"],
1973
+ ])
1974
+
1975
+ railgun.add_function('kernel32', 'GlobalAlloc', 'DWORD',[
1976
+ ["DWORD","uFlags","in"],
1977
+ ["DWORD","dwBytes","in"],
1978
+ ])
1979
+
1980
+ railgun.add_function('kernel32', 'GlobalCompact', 'DWORD',[
1981
+ ["DWORD","dwMinFree","in"],
1982
+ ])
1983
+
1984
+ railgun.add_function('kernel32', 'GlobalDeleteAtom', 'WORD',[
1985
+ ["WORD","nAtom","in"],
1986
+ ])
1987
+
1988
+ railgun.add_function('kernel32', 'GlobalFindAtomA', 'WORD',[
1989
+ ["PCHAR","lpString","in"],
1990
+ ])
1991
+
1992
+ railgun.add_function('kernel32', 'GlobalFindAtomW', 'WORD',[
1993
+ ["PWCHAR","lpString","in"],
1994
+ ])
1995
+
1996
+ railgun.add_function('kernel32', 'GlobalFix', 'VOID',[
1997
+ ["DWORD","hMem","in"],
1998
+ ])
1999
+
2000
+ railgun.add_function('kernel32', 'GlobalFlags', 'DWORD',[
2001
+ ["DWORD","hMem","in"],
2002
+ ])
2003
+
2004
+ railgun.add_function('kernel32', 'GlobalFree', 'DWORD',[
2005
+ ["DWORD","hMem","in"],
2006
+ ])
2007
+
2008
+ railgun.add_function('kernel32', 'GlobalGetAtomNameA', 'DWORD',[
2009
+ ["WORD","nAtom","in"],
2010
+ ["PCHAR","lpBuffer","out"],
2011
+ ["DWORD","nSize","in"],
2012
+ ])
2013
+
2014
+ railgun.add_function('kernel32', 'GlobalGetAtomNameW', 'DWORD',[
2015
+ ["WORD","nAtom","in"],
2016
+ ["PWCHAR","lpBuffer","out"],
2017
+ ["DWORD","nSize","in"],
2018
+ ])
2019
+
2020
+ railgun.add_function('kernel32', 'GlobalHandle', 'DWORD',[
2021
+ ["PBLOB","pMem","in"],
2022
+ ])
2023
+
2024
+ railgun.add_function('kernel32', 'GlobalLock', 'PBLOB',[
2025
+ ["DWORD","hMem","in"],
2026
+ ])
2027
+
2028
+ railgun.add_function('kernel32', 'GlobalMemoryStatus', 'VOID',[
2029
+ ["PBLOB","lpBuffer","out"],
2030
+ ])
2031
+
2032
+ railgun.add_function('kernel32', 'GlobalMemoryStatusEx', 'BOOL',[
2033
+ ["PBLOB","lpBuffer","out"],
2034
+ ])
2035
+
2036
+ railgun.add_function('kernel32', 'GlobalReAlloc', 'DWORD',[
2037
+ ["DWORD","hMem","in"],
2038
+ ["DWORD","dwBytes","in"],
2039
+ ["DWORD","uFlags","in"],
2040
+ ])
2041
+
2042
+ railgun.add_function('kernel32', 'GlobalSize', 'DWORD',[
2043
+ ["DWORD","hMem","in"],
2044
+ ])
2045
+
2046
+ railgun.add_function('kernel32', 'GlobalUnWire', 'BOOL',[
2047
+ ["DWORD","hMem","in"],
2048
+ ])
2049
+
2050
+ railgun.add_function('kernel32', 'GlobalUnfix', 'VOID',[
2051
+ ["DWORD","hMem","in"],
2052
+ ])
2053
+
2054
+ railgun.add_function('kernel32', 'GlobalUnlock', 'BOOL',[
2055
+ ["DWORD","hMem","in"],
2056
+ ])
2057
+
2058
+ railgun.add_function('kernel32', 'GlobalWire', 'PBLOB',[
2059
+ ["DWORD","hMem","in"],
2060
+ ])
2061
+
2062
+ railgun.add_function('kernel32', 'HeapAlloc', 'PBLOB',[
2063
+ ["DWORD","hHeap","in"],
2064
+ ["DWORD","dwFlags","in"],
2065
+ ["DWORD","dwBytes","in"],
2066
+ ])
2067
+
2068
+ railgun.add_function('kernel32', 'HeapCompact', 'DWORD',[
2069
+ ["DWORD","hHeap","in"],
2070
+ ["DWORD","dwFlags","in"],
2071
+ ])
2072
+
2073
+ railgun.add_function('kernel32', 'HeapCreate', 'DWORD',[
2074
+ ["DWORD","flOptions","in"],
2075
+ ["DWORD","dwInitialSize","in"],
2076
+ ["DWORD","dwMaximumSize","in"],
2077
+ ])
2078
+
2079
+ railgun.add_function('kernel32', 'HeapDestroy', 'BOOL',[
2080
+ ["DWORD","hHeap","in"],
2081
+ ])
2082
+
2083
+ railgun.add_function('kernel32', 'HeapFree', 'BOOL',[
2084
+ ["DWORD","hHeap","inout"],
2085
+ ["DWORD","dwFlags","in"],
2086
+ ["PBLOB","lpMem","in"],
2087
+ ])
2088
+
2089
+ railgun.add_function('kernel32', 'HeapLock', 'BOOL',[
2090
+ ["DWORD","hHeap","in"],
2091
+ ])
2092
+
2093
+ railgun.add_function('kernel32', 'HeapQueryInformation', 'BOOL',[
2094
+ ["DWORD","HeapHandle","in"],
2095
+ ["PDWORD","HeapInformationClass","in"],
2096
+ ["PBLOB","HeapInformation","out"],
2097
+ ["DWORD","HeapInformationLength","in"],
2098
+ ["PDWORD","ReturnLength","out"],
2099
+ ])
2100
+
2101
+ railgun.add_function('kernel32', 'HeapReAlloc', 'PBLOB',[
2102
+ ["DWORD","hHeap","inout"],
2103
+ ["DWORD","dwFlags","in"],
2104
+ ["PBLOB","lpMem","in"],
2105
+ ["DWORD","dwBytes","in"],
2106
+ ])
2107
+
2108
+ railgun.add_function('kernel32', 'HeapSetInformation', 'BOOL',[
2109
+ ["DWORD","HeapHandle","in"],
2110
+ ["PDWORD","HeapInformationClass","in"],
2111
+ ["PBLOB","HeapInformation","in"],
2112
+ ["DWORD","HeapInformationLength","in"],
2113
+ ])
2114
+
2115
+ railgun.add_function('kernel32', 'HeapSize', 'DWORD',[
2116
+ ["DWORD","hHeap","in"],
2117
+ ["DWORD","dwFlags","in"],
2118
+ ["PBLOB","lpMem","in"],
2119
+ ])
2120
+
2121
+ railgun.add_function('kernel32', 'HeapUnlock', 'BOOL',[
2122
+ ["DWORD","hHeap","in"],
2123
+ ])
2124
+
2125
+ railgun.add_function('kernel32', 'HeapValidate', 'BOOL',[
2126
+ ["DWORD","hHeap","in"],
2127
+ ["DWORD","dwFlags","in"],
2128
+ ["PBLOB","lpMem","in"],
2129
+ ])
2130
+
2131
+ railgun.add_function('kernel32', 'HeapWalk', 'BOOL',[
2132
+ ["DWORD","hHeap","in"],
2133
+ ["PBLOB","lpEntry","inout"],
2134
+ ])
2135
+
2136
+ railgun.add_function('kernel32', 'InitAtomTable', 'BOOL',[
2137
+ ["DWORD","nSize","in"],
2138
+ ])
2139
+
2140
+ railgun.add_function('kernel32', 'InitializeCriticalSection', 'VOID',[
2141
+ ["PBLOB","lpCriticalSection","out"],
2142
+ ])
2143
+
2144
+ railgun.add_function('kernel32', 'InitializeCriticalSectionAndSpinCount', 'BOOL',[
2145
+ ["PBLOB","lpCriticalSection","out"],
2146
+ ["DWORD","dwSpinCount","in"],
2147
+ ])
2148
+
2149
+ railgun.add_function('kernel32', 'InitializeSListHead', 'VOID',[
2150
+ ["PBLOB","ListHead","inout"],
2151
+ ])
2152
+
2153
+ railgun.add_function('kernel32', 'InterlockedCompareExchange', 'DWORD',[
2154
+ ["PDWORD","Destination","inout"],
2155
+ ["DWORD","ExChange","in"],
2156
+ ["DWORD","Comperand","in"],
2157
+ ])
2158
+
2159
+ railgun.add_function('kernel32', 'InterlockedCompareExchange64', 'PBLOB',[
2160
+ ["PBLOB","Destination","inout"],
2161
+ ["PBLOB","ExChange","in"],
2162
+ ["PBLOB","Comperand","in"],
2163
+ ])
2164
+
2165
+ railgun.add_function('kernel32', 'InterlockedDecrement', 'DWORD',[
2166
+ ["PDWORD","lpAddend","inout"],
2167
+ ])
2168
+
2169
+ railgun.add_function('kernel32', 'InterlockedExchange', 'DWORD',[
2170
+ ["PDWORD","Target","inout"],
2171
+ ["DWORD","Value","in"],
2172
+ ])
2173
+
2174
+ railgun.add_function('kernel32', 'InterlockedExchangeAdd', 'DWORD',[
2175
+ ["PDWORD","Addend","inout"],
2176
+ ["DWORD","Value","in"],
2177
+ ])
2178
+
2179
+ railgun.add_function('kernel32', 'InterlockedFlushSList', 'PBLOB',[
2180
+ ["PBLOB","ListHead","inout"],
2181
+ ])
2182
+
2183
+ railgun.add_function('kernel32', 'InterlockedIncrement', 'DWORD',[
2184
+ ["PDWORD","lpAddend","inout"],
2185
+ ])
2186
+
2187
+ railgun.add_function('kernel32', 'InterlockedPopEntrySList', 'PBLOB',[
2188
+ ["PBLOB","ListHead","inout"],
2189
+ ])
2190
+
2191
+ railgun.add_function('kernel32', 'InterlockedPushEntrySList', 'PBLOB',[
2192
+ ["PBLOB","ListHead","inout"],
2193
+ ["PBLOB","ListEntry","inout"],
2194
+ ])
2195
+
2196
+ railgun.add_function('kernel32', 'IsBadCodePtr', 'BOOL',[
2197
+ ["PBLOB","lpfn","in"],
2198
+ ])
2199
+
2200
+ railgun.add_function('kernel32', 'IsBadHugeReadPtr', 'BOOL',[
2201
+ ["DWORD","ucb","in"],
2202
+ ])
2203
+
2204
+ railgun.add_function('kernel32', 'IsBadHugeWritePtr', 'BOOL',[
2205
+ ["PBLOB","lp","in"],
2206
+ ["DWORD","ucb","in"],
2207
+ ])
2208
+
2209
+ railgun.add_function('kernel32', 'IsBadReadPtr', 'BOOL',[
2210
+ ["DWORD","ucb","in"],
2211
+ ])
2212
+
2213
+ railgun.add_function('kernel32', 'IsBadStringPtrA', 'BOOL',[
2214
+ ["PCHAR","lpsz","in"],
2215
+ ["DWORD","ucchMax","in"],
2216
+ ])
2217
+
2218
+ railgun.add_function('kernel32', 'IsBadStringPtrW', 'BOOL',[
2219
+ ["PWCHAR","lpsz","in"],
2220
+ ["DWORD","ucchMax","in"],
2221
+ ])
2222
+
2223
+ railgun.add_function('kernel32', 'IsBadWritePtr', 'BOOL',[
2224
+ ["PBLOB","lp","in"],
2225
+ ["DWORD","ucb","in"],
2226
+ ])
2227
+
2228
+ railgun.add_function('kernel32', 'IsDebuggerPresent', 'BOOL',[
2229
+ ])
2230
+
2231
+ railgun.add_function('kernel32', 'IsProcessInJob', 'BOOL',[
2232
+ ["DWORD","ProcessHandle","in"],
2233
+ ["DWORD","JobHandle","in"],
2234
+ ["PBLOB","Result","out"],
2235
+ ])
2236
+
2237
+ railgun.add_function('kernel32', 'IsProcessorFeaturePresent', 'BOOL',[
2238
+ ["DWORD","ProcessorFeature","in"],
2239
+ ])
2240
+
2241
+ railgun.add_function('kernel32', 'IsSystemResumeAutomatic', 'BOOL',[
2242
+ ])
2243
+
2244
+ railgun.add_function('kernel32', 'IsWow64Process', 'BOOL',[
2245
+ ["DWORD","hProcess","in"],
2246
+ ["PBLOB","Wow64Process","out"],
2247
+ ])
2248
+
2249
+ railgun.add_function('kernel32', 'LeaveCriticalSection', 'VOID',[
2250
+ ["PBLOB","lpCriticalSection","inout"],
2251
+ ])
2252
+
2253
+ railgun.add_function('kernel32', 'LoadLibraryA', 'DWORD',[
2254
+ ["PCHAR","lpLibFileName","in"],
2255
+ ])
2256
+
2257
+ railgun.add_function('kernel32', 'LoadLibraryExA', 'DWORD',[
2258
+ ["PCHAR","lpLibFileName","in"],
2259
+ ["DWORD","hFile","inout"],
2260
+ ["DWORD","dwFlags","in"],
2261
+ ])
2262
+
2263
+ railgun.add_function('kernel32', 'LoadLibraryExW', 'DWORD',[
2264
+ ["PWCHAR","lpLibFileName","in"],
2265
+ ["DWORD","hFile","inout"],
2266
+ ["DWORD","dwFlags","in"],
2267
+ ])
2268
+
2269
+ railgun.add_function('kernel32', 'LoadLibraryW', 'DWORD',[
2270
+ ["PWCHAR","lpLibFileName","in"],
2271
+ ])
2272
+
2273
+ railgun.add_function('kernel32', 'LoadModule', 'DWORD',[
2274
+ ["PCHAR","lpModuleName","in"],
2275
+ ["PBLOB","lpParameterBlock","in"],
2276
+ ])
2277
+
2278
+ railgun.add_function('kernel32', 'LoadResource', 'DWORD',[
2279
+ ["DWORD","hModule","in"],
2280
+ ["DWORD","hResInfo","in"],
2281
+ ])
2282
+
2283
+ railgun.add_function('kernel32', 'LocalAlloc', 'DWORD',[
2284
+ ["DWORD","uFlags","in"],
2285
+ ["DWORD","uBytes","in"],
2286
+ ])
2287
+
2288
+ railgun.add_function('kernel32', 'LocalCompact', 'DWORD',[
2289
+ ["DWORD","uMinFree","in"],
2290
+ ])
2291
+
2292
+ railgun.add_function('kernel32', 'LocalFileTimeToFileTime', 'BOOL',[
2293
+ ["PBLOB","lpLocalFileTime","in"],
2294
+ ["PBLOB","lpFileTime","out"],
2295
+ ])
2296
+
2297
+ railgun.add_function('kernel32', 'LocalFlags', 'DWORD',[
2298
+ ["DWORD","hMem","in"],
2299
+ ])
2300
+
2301
+ railgun.add_function('kernel32', 'LocalFree', 'DWORD',[
2302
+ ["DWORD","hMem","in"],
2303
+ ])
2304
+
2305
+ railgun.add_function('kernel32', 'LocalHandle', 'DWORD',[
2306
+ ["PBLOB","pMem","in"],
2307
+ ])
2308
+
2309
+ railgun.add_function('kernel32', 'LocalLock', 'PBLOB',[
2310
+ ["DWORD","hMem","in"],
2311
+ ])
2312
+
2313
+ railgun.add_function('kernel32', 'LocalReAlloc', 'DWORD',[
2314
+ ["DWORD","hMem","in"],
2315
+ ["DWORD","uBytes","in"],
2316
+ ["DWORD","uFlags","in"],
2317
+ ])
2318
+
2319
+ railgun.add_function('kernel32', 'LocalShrink', 'DWORD',[
2320
+ ["DWORD","hMem","in"],
2321
+ ["DWORD","cbNewSize","in"],
2322
+ ])
2323
+
2324
+ railgun.add_function('kernel32', 'LocalSize', 'DWORD',[
2325
+ ["DWORD","hMem","in"],
2326
+ ])
2327
+
2328
+ railgun.add_function('kernel32', 'LocalUnlock', 'BOOL',[
2329
+ ["DWORD","hMem","in"],
2330
+ ])
2331
+
2332
+ railgun.add_function('kernel32', 'LockFile', 'BOOL',[
2333
+ ["DWORD","hFile","in"],
2334
+ ["DWORD","dwFileOffsetLow","in"],
2335
+ ["DWORD","dwFileOffsetHigh","in"],
2336
+ ["DWORD","nNumberOfBytesToLockLow","in"],
2337
+ ["DWORD","nNumberOfBytesToLockHigh","in"],
2338
+ ])
2339
+
2340
+ railgun.add_function('kernel32', 'LockFileEx', 'BOOL',[
2341
+ ["DWORD","hFile","in"],
2342
+ ["DWORD","dwFlags","in"],
2343
+ ["DWORD","dwReserved","inout"],
2344
+ ["DWORD","nNumberOfBytesToLockLow","in"],
2345
+ ["DWORD","nNumberOfBytesToLockHigh","in"],
2346
+ ["PBLOB","lpOverlapped","inout"],
2347
+ ])
2348
+
2349
+ railgun.add_function('kernel32', 'LockResource', 'PBLOB',[
2350
+ ["DWORD","hResData","in"],
2351
+ ])
2352
+
2353
+ railgun.add_function('kernel32', 'MapUserPhysicalPages', 'BOOL',[
2354
+ ["PBLOB","VirtualAddress","in"],
2355
+ ["PDWORD","NumberOfPages","in"],
2356
+ ["PBLOB","PageArray","in"],
2357
+ ])
2358
+
2359
+ railgun.add_function('kernel32', 'MapUserPhysicalPagesScatter', 'BOOL',[
2360
+ ["PBLOB","VirtualAddresses","in"],
2361
+ ["PDWORD","NumberOfPages","in"],
2362
+ ["PBLOB","PageArray","in"],
2363
+ ])
2364
+
2365
+ railgun.add_function('kernel32', 'MapViewOfFile', 'PBLOB',[
2366
+ ["DWORD","hFileMappingObject","in"],
2367
+ ["DWORD","dwDesiredAccess","in"],
2368
+ ["DWORD","dwFileOffsetHigh","in"],
2369
+ ["DWORD","dwFileOffsetLow","in"],
2370
+ ["DWORD","dwNumberOfBytesToMap","in"],
2371
+ ])
2372
+
2373
+ railgun.add_function('kernel32', 'MapViewOfFileEx', 'PBLOB',[
2374
+ ["DWORD","hFileMappingObject","in"],
2375
+ ["DWORD","dwDesiredAccess","in"],
2376
+ ["DWORD","dwFileOffsetHigh","in"],
2377
+ ["DWORD","dwFileOffsetLow","in"],
2378
+ ["DWORD","dwNumberOfBytesToMap","in"],
2379
+ ["PBLOB","lpBaseAddress","in"],
2380
+ ])
2381
+
2382
+ railgun.add_function('kernel32', 'MoveFileA', 'BOOL',[
2383
+ ["PCHAR","lpExistingFileName","in"],
2384
+ ["PCHAR","lpNewFileName","in"],
2385
+ ])
2386
+
2387
+ railgun.add_function('kernel32', 'MoveFileExA', 'BOOL',[
2388
+ ["PCHAR","lpExistingFileName","in"],
2389
+ ["PCHAR","lpNewFileName","in"],
2390
+ ["DWORD","dwFlags","in"],
2391
+ ])
2392
+
2393
+ railgun.add_function('kernel32', 'MoveFileExW', 'BOOL',[
2394
+ ["PWCHAR","lpExistingFileName","in"],
2395
+ ["PWCHAR","lpNewFileName","in"],
2396
+ ["DWORD","dwFlags","in"],
2397
+ ])
2398
+
2399
+ railgun.add_function('kernel32', 'MoveFileW', 'BOOL',[
2400
+ ["PWCHAR","lpExistingFileName","in"],
2401
+ ["PWCHAR","lpNewFileName","in"],
2402
+ ])
2403
+
2404
+ railgun.add_function('kernel32', 'MoveFileWithProgressA', 'BOOL',[
2405
+ ["PCHAR","lpExistingFileName","in"],
2406
+ ["PCHAR","lpNewFileName","in"],
2407
+ ["PBLOB","lpProgressRoutine","in"],
2408
+ ["PBLOB","lpData","in"],
2409
+ ["DWORD","dwFlags","in"],
2410
+ ])
2411
+
2412
+ railgun.add_function('kernel32', 'MoveFileWithProgressW', 'BOOL',[
2413
+ ["PWCHAR","lpExistingFileName","in"],
2414
+ ["PWCHAR","lpNewFileName","in"],
2415
+ ["PBLOB","lpProgressRoutine","in"],
2416
+ ["PBLOB","lpData","in"],
2417
+ ["DWORD","dwFlags","in"],
2418
+ ])
2419
+
2420
+ railgun.add_function('kernel32', 'MulDiv', 'DWORD',[
2421
+ ["DWORD","nNumber","in"],
2422
+ ["DWORD","nNumerator","in"],
2423
+ ["DWORD","nDenominator","in"],
2424
+ ])
2425
+
2426
+ railgun.add_function('kernel32', 'NeedCurrentDirectoryForExePathA', 'BOOL',[
2427
+ ["PCHAR","ExeName","in"],
2428
+ ])
2429
+
2430
+ railgun.add_function('kernel32', 'NeedCurrentDirectoryForExePathW', 'BOOL',[
2431
+ ["PWCHAR","ExeName","in"],
2432
+ ])
2433
+
2434
+ railgun.add_function('kernel32', 'OpenEventA', 'DWORD',[
2435
+ ["DWORD","dwDesiredAccess","in"],
2436
+ ["BOOL","bInheritHandle","in"],
2437
+ ["PCHAR","lpName","in"],
2438
+ ])
2439
+
2440
+ railgun.add_function('kernel32', 'OpenEventW', 'DWORD',[
2441
+ ["DWORD","dwDesiredAccess","in"],
2442
+ ["BOOL","bInheritHandle","in"],
2443
+ ["PWCHAR","lpName","in"],
2444
+ ])
2445
+
2446
+ railgun.add_function('kernel32', 'OpenFile', 'DWORD',[
2447
+ ["PCHAR","lpFileName","in"],
2448
+ ["PBLOB","lpReOpenBuff","inout"],
2449
+ ["DWORD","uStyle","in"],
2450
+ ])
2451
+
2452
+ railgun.add_function('kernel32', 'OpenFileMappingA', 'DWORD',[
2453
+ ["DWORD","dwDesiredAccess","in"],
2454
+ ["BOOL","bInheritHandle","in"],
2455
+ ["PCHAR","lpName","in"],
2456
+ ])
2457
+
2458
+ railgun.add_function('kernel32', 'OpenFileMappingW', 'DWORD',[
2459
+ ["DWORD","dwDesiredAccess","in"],
2460
+ ["BOOL","bInheritHandle","in"],
2461
+ ["PWCHAR","lpName","in"],
2462
+ ])
2463
+
2464
+ railgun.add_function('kernel32', 'OpenJobObjectA', 'DWORD',[
2465
+ ["DWORD","dwDesiredAccess","in"],
2466
+ ["BOOL","bInheritHandle","in"],
2467
+ ["PCHAR","lpName","in"],
2468
+ ])
2469
+
2470
+ railgun.add_function('kernel32', 'OpenJobObjectW', 'DWORD',[
2471
+ ["DWORD","dwDesiredAccess","in"],
2472
+ ["BOOL","bInheritHandle","in"],
2473
+ ["PWCHAR","lpName","in"],
2474
+ ])
2475
+
2476
+ railgun.add_function('kernel32', 'OpenMutexA', 'DWORD',[
2477
+ ["DWORD","dwDesiredAccess","in"],
2478
+ ["BOOL","bInheritHandle","in"],
2479
+ ["PCHAR","lpName","in"],
2480
+ ])
2481
+
2482
+ railgun.add_function('kernel32', 'OpenMutexW', 'DWORD',[
2483
+ ["DWORD","dwDesiredAccess","in"],
2484
+ ["BOOL","bInheritHandle","in"],
2485
+ ["PWCHAR","lpName","in"],
2486
+ ])
2487
+
2488
+ railgun.add_function('kernel32', 'OpenProcess', 'DWORD',[
2489
+ ["DWORD","dwDesiredAccess","in"],
2490
+ ["BOOL","bInheritHandle","in"],
2491
+ ["DWORD","dwProcessId","in"],
2492
+ ])
2493
+
2494
+ railgun.add_function('kernel32', 'OpenSemaphoreA', 'DWORD',[
2495
+ ["DWORD","dwDesiredAccess","in"],
2496
+ ["BOOL","bInheritHandle","in"],
2497
+ ["PCHAR","lpName","in"],
2498
+ ])
2499
+
2500
+ railgun.add_function('kernel32', 'OpenSemaphoreW', 'DWORD',[
2501
+ ["DWORD","dwDesiredAccess","in"],
2502
+ ["BOOL","bInheritHandle","in"],
2503
+ ["PWCHAR","lpName","in"],
2504
+ ])
2505
+
2506
+ railgun.add_function('kernel32', 'OpenThread', 'DWORD',[
2507
+ ["DWORD","dwDesiredAccess","in"],
2508
+ ["BOOL","bInheritHandle","in"],
2509
+ ["DWORD","dwThreadId","in"],
2510
+ ])
2511
+
2512
+ railgun.add_function('kernel32', 'OpenWaitableTimerA', 'DWORD',[
2513
+ ["DWORD","dwDesiredAccess","in"],
2514
+ ["BOOL","bInheritHandle","in"],
2515
+ ["PCHAR","lpTimerName","in"],
2516
+ ])
2517
+
2518
+ railgun.add_function('kernel32', 'OpenWaitableTimerW', 'DWORD',[
2519
+ ["DWORD","dwDesiredAccess","in"],
2520
+ ["BOOL","bInheritHandle","in"],
2521
+ ["PWCHAR","lpTimerName","in"],
2522
+ ])
2523
+
2524
+ railgun.add_function('kernel32', 'OutputDebugStringA', 'VOID',[
2525
+ ["PCHAR","lpOutputString","in"],
2526
+ ])
2527
+
2528
+ railgun.add_function('kernel32', 'OutputDebugStringW', 'VOID',[
2529
+ ["PWCHAR","lpOutputString","in"],
2530
+ ])
2531
+
2532
+ railgun.add_function('kernel32', 'PeekNamedPipe', 'BOOL',[
2533
+ ["DWORD","hNamedPipe","in"],
2534
+ ["PBLOB","lpBuffer","out"],
2535
+ ["DWORD","nBufferSize","in"],
2536
+ ["PDWORD","lpBytesRead","out"],
2537
+ ["PDWORD","lpTotalBytesAvail","out"],
2538
+ ["PDWORD","lpBytesLeftThisMessage","out"],
2539
+ ])
2540
+
2541
+ railgun.add_function('kernel32', 'PostQueuedCompletionStatus', 'BOOL',[
2542
+ ["DWORD","CompletionPort","in"],
2543
+ ["DWORD","dwNumberOfBytesTransferred","in"],
2544
+ ["PDWORD","dwCompletionKey","in"],
2545
+ ["PBLOB","lpOverlapped","in"],
2546
+ ])
2547
+
2548
+ railgun.add_function('kernel32', 'PrepareTape', 'DWORD',[
2549
+ ["DWORD","hDevice","in"],
2550
+ ["DWORD","dwOperation","in"],
2551
+ ["BOOL","bImmediate","in"],
2552
+ ])
2553
+
2554
+ railgun.add_function('kernel32', 'ProcessIdToSessionId', 'BOOL',[
2555
+ ["DWORD","dwProcessId","in"],
2556
+ ["PDWORD","pSessionId","out"],
2557
+ ])
2558
+
2559
+ railgun.add_function('kernel32', 'PulseEvent', 'BOOL',[
2560
+ ["DWORD","hEvent","in"],
2561
+ ])
2562
+
2563
+ railgun.add_function('kernel32', 'PurgeComm', 'BOOL',[
2564
+ ["DWORD","hFile","in"],
2565
+ ["DWORD","dwFlags","in"],
2566
+ ])
2567
+
2568
+ railgun.add_function('kernel32', 'QueryActCtxW', 'BOOL',[
2569
+ ["DWORD","dwFlags","in"],
2570
+ ["DWORD","hActCtx","in"],
2571
+ ["PBLOB","pvSubInstance","in"],
2572
+ ["DWORD","ulInfoClass","in"],
2573
+ ["PBLOB","pvBuffer","out"],
2574
+ ["DWORD","cbBuffer","in"],
2575
+ ["PDWORD","pcbWrittenOrRequired","out"],
2576
+ ])
2577
+
2578
+ railgun.add_function('kernel32', 'QueryDepthSList', 'WORD',[
2579
+ ["PBLOB","ListHead","in"],
2580
+ ])
2581
+
2582
+ railgun.add_function('kernel32', 'QueryDosDeviceA', 'DWORD',[
2583
+ ["PCHAR","lpDeviceName","in"],
2584
+ ["PCHAR","lpTargetPath","out"],
2585
+ ["DWORD","ucchMax","in"],
2586
+ ])
2587
+
2588
+ railgun.add_function('kernel32', 'QueryDosDeviceW', 'DWORD',[
2589
+ ["PWCHAR","lpDeviceName","in"],
2590
+ ["PWCHAR","lpTargetPath","out"],
2591
+ ["DWORD","ucchMax","in"],
2592
+ ])
2593
+
2594
+ railgun.add_function('kernel32', 'QueryInformationJobObject', 'BOOL',[
2595
+ ["DWORD","hJob","in"],
2596
+ ["PBLOB","JobObjectInformationClass","in"],
2597
+ ["PBLOB","lpJobObjectInformation","out"],
2598
+ ["DWORD","cbJobObjectInformationLength","in"],
2599
+ ["PDWORD","lpReturnLength","out"],
2600
+ ])
2601
+
2602
+ railgun.add_function('kernel32', 'QueryMemoryResourceNotification', 'BOOL',[
2603
+ ["DWORD","ResourceNotificationHandle","in"],
2604
+ ["PBLOB","ResourceState","out"],
2605
+ ])
2606
+
2607
+ railgun.add_function('kernel32', 'QueryPerformanceCounter', 'BOOL',[
2608
+ ["PBLOB","lpPerformanceCount","out"],
2609
+ ])
2610
+
2611
+ railgun.add_function('kernel32', 'QueryPerformanceFrequency', 'BOOL',[
2612
+ ["PBLOB","lpFrequency","out"],
2613
+ ])
2614
+
2615
+ railgun.add_function('kernel32', 'QueueUserAPC', 'DWORD',[
2616
+ ["PBLOB","pfnAPC","in"],
2617
+ ["DWORD","hThread","in"],
2618
+ ["PDWORD","dwData","in"],
2619
+ ])
2620
+
2621
+ railgun.add_function('kernel32', 'QueueUserWorkItem', 'BOOL',[
2622
+ ["PBLOB","Function","in"],
2623
+ ["PBLOB","Context","in"],
2624
+ ["DWORD","Flags","in"],
2625
+ ])
2626
+
2627
+ railgun.add_function('kernel32', 'RaiseException', 'VOID',[
2628
+ ["DWORD","dwExceptionCode","in"],
2629
+ ["DWORD","dwExceptionFlags","in"],
2630
+ ["DWORD","nNumberOfArguments","in"],
2631
+ ["PBLOB","lpArguments","in"],
2632
+ ])
2633
+
2634
+ railgun.add_function('kernel32', 'ReOpenFile', 'DWORD',[
2635
+ ["DWORD","hOriginalFile","in"],
2636
+ ["DWORD","dwDesiredAccess","in"],
2637
+ ["DWORD","dwShareMode","in"],
2638
+ ["DWORD","dwFlagsAndAttributes","in"],
2639
+ ])
2640
+
2641
+ railgun.add_function('kernel32', 'ReadDirectoryChangesW', 'BOOL',[
2642
+ ["DWORD","hDirectory","in"],
2643
+ ["PBLOB","lpBuffer","out"],
2644
+ ["DWORD","nBufferLength","in"],
2645
+ ["BOOL","bWatchSubtree","in"],
2646
+ ["DWORD","dwNotifyFilter","in"],
2647
+ ["PDWORD","lpBytesReturned","out"],
2648
+ ["PBLOB","lpOverlapped","inout"],
2649
+ ["PBLOB","lpCompletionRoutine","in"],
2650
+ ])
2651
+
2652
+ railgun.add_function('kernel32', 'ReadFile', 'BOOL',[
2653
+ ["DWORD","hFile","in"],
2654
+ ["PBLOB","lpBuffer","out"],
2655
+ ["DWORD","nNumberOfBytesToRead","in"],
2656
+ ["PDWORD","lpNumberOfBytesRead","out"],
2657
+ ["PBLOB","lpOverlapped","inout"],
2658
+ ])
2659
+
2660
+ railgun.add_function('kernel32', 'ReadFileEx', 'BOOL',[
2661
+ ["DWORD","hFile","in"],
2662
+ ["PBLOB","lpBuffer","out"],
2663
+ ["DWORD","nNumberOfBytesToRead","in"],
2664
+ ["PBLOB","lpOverlapped","inout"],
2665
+ ["PBLOB","lpCompletionRoutine","in"],
2666
+ ])
2667
+
2668
+ railgun.add_function('kernel32', 'ReadFileScatter', 'BOOL',[
2669
+ ["DWORD","hFile","in"],
2670
+ ["PBLOB","aSegmentArray[]","in"],
2671
+ ["DWORD","nNumberOfBytesToRead","in"],
2672
+ ["PDWORD","lpReserved","inout"],
2673
+ ["PBLOB","lpOverlapped","inout"],
2674
+ ])
2675
+
2676
+ railgun.add_function('kernel32', 'ReadProcessMemory', 'BOOL',[
2677
+ ["DWORD","hProcess","in"],
2678
+ ["PBLOB","lpBaseAddress","in"],
2679
+ ["PBLOB","lpBuffer","out"],
2680
+ ["DWORD","nSize","in"],
2681
+ ["PDWORD","lpNumberOfBytesRead","out"],
2682
+ ])
2683
+
2684
+ railgun.add_function('kernel32', 'RegisterWaitForSingleObject', 'BOOL',[
2685
+ ["PDWORD","phNewWaitObject","out"],
2686
+ ["DWORD","hObject","in"],
2687
+ ["PBLOB","Callback","in"],
2688
+ ["PBLOB","Context","in"],
2689
+ ["DWORD","dwMilliseconds","in"],
2690
+ ["DWORD","dwFlags","in"],
2691
+ ])
2692
+
2693
+ railgun.add_function('kernel32', 'RegisterWaitForSingleObjectEx', 'DWORD',[
2694
+ ["DWORD","hObject","in"],
2695
+ ["PBLOB","Callback","in"],
2696
+ ["PBLOB","Context","in"],
2697
+ ["DWORD","dwMilliseconds","in"],
2698
+ ["DWORD","dwFlags","in"],
2699
+ ])
2700
+
2701
+ railgun.add_function('kernel32', 'ReleaseActCtx', 'VOID',[
2702
+ ["DWORD","hActCtx","inout"],
2703
+ ])
2704
+
2705
+ railgun.add_function('kernel32', 'ReleaseMutex', 'BOOL',[
2706
+ ["DWORD","hMutex","in"],
2707
+ ])
2708
+
2709
+ railgun.add_function('kernel32', 'ReleaseSemaphore', 'BOOL',[
2710
+ ["DWORD","hSemaphore","in"],
2711
+ ["DWORD","lReleaseCount","in"],
2712
+ ["PBLOB","lpPreviousCount","out"],
2713
+ ])
2714
+
2715
+ railgun.add_function('kernel32', 'RemoveDirectoryA', 'BOOL',[
2716
+ ["PCHAR","lpPathName","in"],
2717
+ ])
2718
+
2719
+ railgun.add_function('kernel32', 'RemoveDirectoryW', 'BOOL',[
2720
+ ["PWCHAR","lpPathName","in"],
2721
+ ])
2722
+
2723
+ railgun.add_function('kernel32', 'RemoveVectoredContinueHandler', 'DWORD',[
2724
+ ["PBLOB","Handle","in"],
2725
+ ])
2726
+
2727
+ railgun.add_function('kernel32', 'RemoveVectoredExceptionHandler', 'DWORD',[
2728
+ ["PBLOB","Handle","in"],
2729
+ ])
2730
+
2731
+ railgun.add_function('kernel32', 'ReplaceFileA', 'BOOL',[
2732
+ ["PCHAR","lpReplacedFileName","in"],
2733
+ ["PCHAR","lpReplacementFileName","in"],
2734
+ ["PCHAR","lpBackupFileName","in"],
2735
+ ["DWORD","dwReplaceFlags","in"],
2736
+ ["PBLOB","lpExclude","inout"],
2737
+ ["PBLOB","lpReserved","inout"],
2738
+ ])
2739
+
2740
+ railgun.add_function('kernel32', 'ReplaceFileW', 'BOOL',[
2741
+ ["PWCHAR","lpReplacedFileName","in"],
2742
+ ["PWCHAR","lpReplacementFileName","in"],
2743
+ ["PWCHAR","lpBackupFileName","in"],
2744
+ ["DWORD","dwReplaceFlags","in"],
2745
+ ["PBLOB","lpExclude","inout"],
2746
+ ["PBLOB","lpReserved","inout"],
2747
+ ])
2748
+
2749
+ railgun.add_function('kernel32', 'RequestDeviceWakeup', 'BOOL',[
2750
+ ["DWORD","hDevice","in"],
2751
+ ])
2752
+
2753
+ railgun.add_function('kernel32', 'RequestWakeupLatency', 'BOOL',[
2754
+ ["PBLOB","latency","in"],
2755
+ ])
2756
+
2757
+ railgun.add_function('kernel32', 'ResetEvent', 'BOOL',[
2758
+ ["DWORD","hEvent","in"],
2759
+ ])
2760
+
2761
+ railgun.add_function('kernel32', 'ResetWriteWatch', 'DWORD',[
2762
+ ["PBLOB","lpBaseAddress","in"],
2763
+ ["DWORD","dwRegionSize","in"],
2764
+ ])
2765
+
2766
+ railgun.add_function('kernel32', 'RestoreLastError', 'VOID',[
2767
+ ["DWORD","dwErrCode","in"],
2768
+ ])
2769
+
2770
+ railgun.add_function('kernel32', 'ResumeThread', 'DWORD',[
2771
+ ["DWORD","hThread","in"],
2772
+ ])
2773
+
2774
+ railgun.add_function('kernel32', 'SearchPathA', 'DWORD',[
2775
+ ["PCHAR","lpPath","in"],
2776
+ ["PCHAR","lpFileName","in"],
2777
+ ["PCHAR","lpExtension","in"],
2778
+ ["DWORD","nBufferLength","in"],
2779
+ ["PCHAR","lpBuffer","out"],
2780
+ ["PBLOB","lpFilePart","out"],
2781
+ ])
2782
+
2783
+ railgun.add_function('kernel32', 'SearchPathW', 'DWORD',[
2784
+ ["PWCHAR","lpPath","in"],
2785
+ ["PWCHAR","lpFileName","in"],
2786
+ ["PWCHAR","lpExtension","in"],
2787
+ ["DWORD","nBufferLength","in"],
2788
+ ["PWCHAR","lpBuffer","out"],
2789
+ ["PBLOB","lpFilePart","out"],
2790
+ ])
2791
+
2792
+ railgun.add_function('kernel32', 'SetCommBreak', 'BOOL',[
2793
+ ["DWORD","hFile","in"],
2794
+ ])
2795
+
2796
+ railgun.add_function('kernel32', 'SetCommConfig', 'BOOL',[
2797
+ ["DWORD","hCommDev","in"],
2798
+ ["PBLOB","lpCC","in"],
2799
+ ["DWORD","dwSize","in"],
2800
+ ])
2801
+
2802
+ railgun.add_function('kernel32', 'SetCommMask', 'BOOL',[
2803
+ ["DWORD","hFile","in"],
2804
+ ["DWORD","dwEvtMask","in"],
2805
+ ])
2806
+
2807
+ railgun.add_function('kernel32', 'SetCommState', 'BOOL',[
2808
+ ["DWORD","hFile","in"],
2809
+ ["PBLOB","lpDCB","in"],
2810
+ ])
2811
+
2812
+ railgun.add_function('kernel32', 'SetCommTimeouts', 'BOOL',[
2813
+ ["DWORD","hFile","in"],
2814
+ ["PBLOB","lpCommTimeouts","in"],
2815
+ ])
2816
+
2817
+ railgun.add_function('kernel32', 'SetComputerNameA', 'BOOL',[
2818
+ ["PCHAR","lpComputerName","in"],
2819
+ ])
2820
+
2821
+ railgun.add_function('kernel32', 'SetComputerNameExA', 'BOOL',[
2822
+ ["DWORD","NameType","in"],
2823
+ ["PCHAR","lpBuffer","in"],
2824
+ ])
2825
+
2826
+ railgun.add_function('kernel32', 'SetComputerNameExW', 'BOOL',[
2827
+ ["DWORD","NameType","in"],
2828
+ ["PWCHAR","lpBuffer","in"],
2829
+ ])
2830
+
2831
+ railgun.add_function('kernel32', 'SetComputerNameW', 'BOOL',[
2832
+ ["PWCHAR","lpComputerName","in"],
2833
+ ])
2834
+
2835
+ railgun.add_function('kernel32', 'SetCriticalSectionSpinCount', 'DWORD',[
2836
+ ["PBLOB","lpCriticalSection","inout"],
2837
+ ["DWORD","dwSpinCount","in"],
2838
+ ])
2839
+
2840
+ railgun.add_function('kernel32', 'SetCurrentDirectoryA', 'BOOL',[
2841
+ ["PCHAR","lpPathName","in"],
2842
+ ])
2843
+
2844
+ railgun.add_function('kernel32', 'SetCurrentDirectoryW', 'BOOL',[
2845
+ ["PWCHAR","lpPathName","in"],
2846
+ ])
2847
+
2848
+ railgun.add_function('kernel32', 'SetDefaultCommConfigA', 'BOOL',[
2849
+ ["PCHAR","lpszName","in"],
2850
+ ["PBLOB","lpCC","in"],
2851
+ ["DWORD","dwSize","in"],
2852
+ ])
2853
+
2854
+ railgun.add_function('kernel32', 'SetDefaultCommConfigW', 'BOOL',[
2855
+ ["PWCHAR","lpszName","in"],
2856
+ ["PBLOB","lpCC","in"],
2857
+ ["DWORD","dwSize","in"],
2858
+ ])
2859
+
2860
+ railgun.add_function('kernel32', 'SetDllDirectoryA', 'BOOL',[
2861
+ ["PCHAR","lpPathName","in"],
2862
+ ])
2863
+
2864
+ railgun.add_function('kernel32', 'SetDllDirectoryW', 'BOOL',[
2865
+ ["PWCHAR","lpPathName","in"],
2866
+ ])
2867
+
2868
+ railgun.add_function('kernel32', 'SetEndOfFile', 'BOOL',[
2869
+ ["DWORD","hFile","in"],
2870
+ ])
2871
+
2872
+ railgun.add_function('kernel32', 'SetEnvironmentStringsA', 'BOOL',[
2873
+ ["PBLOB","NewEnvironment","in"],
2874
+ ])
2875
+
2876
+ railgun.add_function('kernel32', 'SetEnvironmentStringsW', 'BOOL',[
2877
+ ["PBLOB","NewEnvironment","in"],
2878
+ ])
2879
+
2880
+ railgun.add_function('kernel32', 'SetEnvironmentVariableA', 'BOOL',[
2881
+ ["PCHAR","lpName","in"],
2882
+ ["PCHAR","lpValue","in"],
2883
+ ])
2884
+
2885
+ railgun.add_function('kernel32', 'SetEnvironmentVariableW', 'BOOL',[
2886
+ ["PWCHAR","lpName","in"],
2887
+ ["PWCHAR","lpValue","in"],
2888
+ ])
2889
+
2890
+ railgun.add_function('kernel32', 'SetErrorMode', 'DWORD',[
2891
+ ["DWORD","uMode","in"],
2892
+ ])
2893
+
2894
+ railgun.add_function('kernel32', 'SetEvent', 'BOOL',[
2895
+ ["DWORD","hEvent","in"],
2896
+ ])
2897
+
2898
+ railgun.add_function('kernel32', 'SetFileApisToANSI', 'VOID',[
2899
+ ])
2900
+
2901
+ railgun.add_function('kernel32', 'SetFileApisToOEM', 'VOID',[
2902
+ ])
2903
+
2904
+ railgun.add_function('kernel32', 'SetFileAttributesA', 'BOOL',[
2905
+ ["PCHAR","lpFileName","in"],
2906
+ ["DWORD","dwFileAttributes","in"],
2907
+ ])
2908
+
2909
+ railgun.add_function('kernel32', 'SetFileAttributesW', 'BOOL',[
2910
+ ["PWCHAR","lpFileName","in"],
2911
+ ["DWORD","dwFileAttributes","in"],
2912
+ ])
2913
+
2914
+ railgun.add_function('kernel32', 'SetFilePointer', 'DWORD',[
2915
+ ["DWORD","hFile","in"],
2916
+ ["DWORD","lDistanceToMove","in"],
2917
+ ["PDWORD","lpDistanceToMoveHigh","in"],
2918
+ ["DWORD","dwMoveMethod","in"],
2919
+ ])
2920
+
2921
+ railgun.add_function('kernel32', 'SetFilePointerEx', 'BOOL',[
2922
+ ["DWORD","hFile","in"],
2923
+ ["PBLOB","liDistanceToMove","in"],
2924
+ ["PBLOB","lpNewFilePointer","out"],
2925
+ ["DWORD","dwMoveMethod","in"],
2926
+ ])
2927
+
2928
+ railgun.add_function('kernel32', 'SetFileShortNameA', 'BOOL',[
2929
+ ["DWORD","hFile","in"],
2930
+ ["PCHAR","lpShortName","in"],
2931
+ ])
2932
+
2933
+ railgun.add_function('kernel32', 'SetFileShortNameW', 'BOOL',[
2934
+ ["DWORD","hFile","in"],
2935
+ ["PWCHAR","lpShortName","in"],
2936
+ ])
2937
+
2938
+ railgun.add_function('kernel32', 'SetFileTime', 'BOOL',[
2939
+ ["DWORD","hFile","in"],
2940
+ ["PBLOB","lpCreationTime","in"],
2941
+ ["PBLOB","lpLastAccessTime","in"],
2942
+ ["PBLOB","lpLastWriteTime","in"],
2943
+ ])
2944
+
2945
+ railgun.add_function('kernel32', 'SetFileValidData', 'BOOL',[
2946
+ ["DWORD","hFile","in"],
2947
+ ["PBLOB","ValidDataLength","in"],
2948
+ ])
2949
+
2950
+ railgun.add_function('kernel32', 'SetFirmwareEnvironmentVariableA', 'BOOL',[
2951
+ ["PCHAR","lpName","in"],
2952
+ ["PCHAR","lpGuid","in"],
2953
+ ["PBLOB","pValue","in"],
2954
+ ["DWORD","nSize","in"],
2955
+ ])
2956
+
2957
+ railgun.add_function('kernel32', 'SetFirmwareEnvironmentVariableW', 'BOOL',[
2958
+ ["PWCHAR","lpName","in"],
2959
+ ["PWCHAR","lpGuid","in"],
2960
+ ["PBLOB","pValue","in"],
2961
+ ["DWORD","nSize","in"],
2962
+ ])
2963
+
2964
+ railgun.add_function('kernel32', 'SetHandleCount', 'DWORD',[
2965
+ ["DWORD","uNumber","in"],
2966
+ ])
2967
+
2968
+ railgun.add_function('kernel32', 'SetHandleInformation', 'BOOL',[
2969
+ ["DWORD","hObject","in"],
2970
+ ["DWORD","dwMask","in"],
2971
+ ["DWORD","dwFlags","in"],
2972
+ ])
2973
+
2974
+ railgun.add_function('kernel32', 'SetInformationJobObject', 'BOOL',[
2975
+ ["DWORD","hJob","in"],
2976
+ ["PBLOB","JobObjectInformationClass","in"],
2977
+ ["PBLOB","lpJobObjectInformation","in"],
2978
+ ["DWORD","cbJobObjectInformationLength","in"],
2979
+ ])
2980
+
2981
+ railgun.add_function('kernel32', 'SetLastError', 'VOID',[
2982
+ ["DWORD","dwErrCode","in"],
2983
+ ])
2984
+
2985
+ railgun.add_function('kernel32', 'SetLocalTime', 'BOOL',[
2986
+ ["PBLOB","lpSystemTime","in"],
2987
+ ])
2988
+
2989
+ railgun.add_function('kernel32', 'SetMailslotInfo', 'BOOL',[
2990
+ ["DWORD","hMailslot","in"],
2991
+ ["DWORD","lReadTimeout","in"],
2992
+ ])
2993
+
2994
+ railgun.add_function('kernel32', 'SetMessageWaitingIndicator', 'BOOL',[
2995
+ ["DWORD","hMsgIndicator","in"],
2996
+ ["DWORD","ulMsgCount","in"],
2997
+ ])
2998
+
2999
+ railgun.add_function('kernel32', 'SetNamedPipeHandleState', 'BOOL',[
3000
+ ["DWORD","hNamedPipe","in"],
3001
+ ["PDWORD","lpMode","in"],
3002
+ ["PDWORD","lpMaxCollectionCount","in"],
3003
+ ["PDWORD","lpCollectDataTimeout","in"],
3004
+ ])
3005
+
3006
+ railgun.add_function('kernel32', 'SetPriorityClass', 'BOOL',[
3007
+ ["DWORD","hProcess","in"],
3008
+ ["DWORD","dwPriorityClass","in"],
3009
+ ])
3010
+
3011
+ railgun.add_function('kernel32', 'SetProcessAffinityMask', 'BOOL',[
3012
+ ["DWORD","hProcess","in"],
3013
+ ["PDWORD","dwProcessAffinityMask","in"],
3014
+ ])
3015
+
3016
+ railgun.add_function('kernel32', 'SetProcessPriorityBoost', 'BOOL',[
3017
+ ["DWORD","hProcess","in"],
3018
+ ["BOOL","bDisablePriorityBoost","in"],
3019
+ ])
3020
+
3021
+ railgun.add_function('kernel32', 'SetProcessShutdownParameters', 'BOOL',[
3022
+ ["DWORD","dwLevel","in"],
3023
+ ["DWORD","dwFlags","in"],
3024
+ ])
3025
+
3026
+ railgun.add_function('kernel32', 'SetProcessWorkingSetSize', 'BOOL',[
3027
+ ["DWORD","hProcess","in"],
3028
+ ["DWORD","dwMinimumWorkingSetSize","in"],
3029
+ ["DWORD","dwMaximumWorkingSetSize","in"],
3030
+ ])
3031
+
3032
+ railgun.add_function('kernel32', 'SetProcessWorkingSetSizeEx', 'BOOL',[
3033
+ ["DWORD","hProcess","in"],
3034
+ ["DWORD","dwMinimumWorkingSetSize","in"],
3035
+ ["DWORD","dwMaximumWorkingSetSize","in"],
3036
+ ["DWORD","Flags","in"],
3037
+ ])
3038
+
3039
+ railgun.add_function('kernel32', 'SetStdHandle', 'BOOL',[
3040
+ ["DWORD","nStdHandle","in"],
3041
+ ["DWORD","hHandle","in"],
3042
+ ])
3043
+
3044
+ railgun.add_function('kernel32', 'SetSystemFileCacheSize', 'BOOL',[
3045
+ ["DWORD","MinimumFileCacheSize","in"],
3046
+ ["DWORD","MaximumFileCacheSize","in"],
3047
+ ["DWORD","Flags","in"],
3048
+ ])
3049
+
3050
+ railgun.add_function('kernel32', 'SetSystemPowerState', 'BOOL',[
3051
+ ["BOOL","fSuspend","in"],
3052
+ ["BOOL","fForce","in"],
3053
+ ])
3054
+
3055
+ railgun.add_function('kernel32', 'SetSystemTime', 'BOOL',[
3056
+ ["PBLOB","lpSystemTime","in"],
3057
+ ])
3058
+
3059
+ railgun.add_function('kernel32', 'SetSystemTimeAdjustment', 'BOOL',[
3060
+ ["DWORD","dwTimeAdjustment","in"],
3061
+ ["BOOL","bTimeAdjustmentDisabled","in"],
3062
+ ])
3063
+
3064
+ railgun.add_function('kernel32', 'SetTapeParameters', 'DWORD',[
3065
+ ["DWORD","hDevice","in"],
3066
+ ["DWORD","dwOperation","in"],
3067
+ ["PBLOB","lpTapeInformation","in"],
3068
+ ])
3069
+
3070
+ railgun.add_function('kernel32', 'SetTapePosition', 'DWORD',[
3071
+ ["DWORD","hDevice","in"],
3072
+ ["DWORD","dwPositionMethod","in"],
3073
+ ["DWORD","dwPartition","in"],
3074
+ ["DWORD","dwOffsetLow","in"],
3075
+ ["DWORD","dwOffsetHigh","in"],
3076
+ ["BOOL","bImmediate","in"],
3077
+ ])
3078
+
3079
+ railgun.add_function('kernel32', 'SetThreadAffinityMask', 'PDWORD',[
3080
+ ["DWORD","hThread","in"],
3081
+ ["PDWORD","dwThreadAffinityMask","in"],
3082
+ ])
3083
+
3084
+ railgun.add_function('kernel32', 'SetThreadContext', 'BOOL',[
3085
+ ["DWORD","hThread","in"],
3086
+ ["PBLOB","lpContext","in"],
3087
+ ])
3088
+
3089
+ railgun.add_function('kernel32', 'SetThreadExecutionState', 'DWORD',[
3090
+ ["DWORD","esFlags","in"],
3091
+ ])
3092
+
3093
+ railgun.add_function('kernel32', 'SetThreadIdealProcessor', 'DWORD',[
3094
+ ["DWORD","hThread","in"],
3095
+ ["DWORD","dwIdealProcessor","in"],
3096
+ ])
3097
+
3098
+ railgun.add_function('kernel32', 'SetThreadPriority', 'BOOL',[
3099
+ ["DWORD","hThread","in"],
3100
+ ["DWORD","nPriority","in"],
3101
+ ])
3102
+
3103
+ railgun.add_function('kernel32', 'SetThreadPriorityBoost', 'BOOL',[
3104
+ ["DWORD","hThread","in"],
3105
+ ["BOOL","bDisablePriorityBoost","in"],
3106
+ ])
3107
+
3108
+ railgun.add_function('kernel32', 'SetThreadStackGuarantee', 'BOOL',[
3109
+ ["PDWORD","StackSizeInBytes","inout"],
3110
+ ])
3111
+
3112
+ railgun.add_function('kernel32', 'SetTimeZoneInformation', 'BOOL',[
3113
+ ["PBLOB","lpTimeZoneInformation","in"],
3114
+ ])
3115
+
3116
+ railgun.add_function('kernel32', 'SetTimerQueueTimer', 'DWORD',[
3117
+ ["DWORD","TimerQueue","in"],
3118
+ ["PBLOB","Callback","in"],
3119
+ ["PBLOB","Parameter","in"],
3120
+ ["DWORD","DueTime","in"],
3121
+ ["DWORD","Period","in"],
3122
+ ["BOOL","PreferIo","in"],
3123
+ ])
3124
+
3125
+ railgun.add_function('kernel32', 'SetUnhandledExceptionFilter', 'PBLOB',[
3126
+ ["PBLOB","lpTopLevelExceptionFilter","in"],
3127
+ ])
3128
+
3129
+ railgun.add_function('kernel32', 'SetVolumeLabelA', 'BOOL',[
3130
+ ["PCHAR","lpRootPathName","in"],
3131
+ ["PCHAR","lpVolumeName","in"],
3132
+ ])
3133
+
3134
+ railgun.add_function('kernel32', 'SetVolumeLabelW', 'BOOL',[
3135
+ ["PWCHAR","lpRootPathName","in"],
3136
+ ["PWCHAR","lpVolumeName","in"],
3137
+ ])
3138
+
3139
+ railgun.add_function('kernel32', 'SetVolumeMountPointA', 'BOOL',[
3140
+ ["PCHAR","lpszVolumeMountPoint","in"],
3141
+ ["PCHAR","lpszVolumeName","in"],
3142
+ ])
3143
+
3144
+ railgun.add_function('kernel32', 'SetVolumeMountPointW', 'BOOL',[
3145
+ ["PWCHAR","lpszVolumeMountPoint","in"],
3146
+ ["PWCHAR","lpszVolumeName","in"],
3147
+ ])
3148
+
3149
+ railgun.add_function('kernel32', 'SetWaitableTimer', 'BOOL',[
3150
+ ["DWORD","hTimer","in"],
3151
+ ["PBLOB","lpDueTime","in"],
3152
+ ["DWORD","lPeriod","in"],
3153
+ ["PBLOB","pfnCompletionRoutine","in"],
3154
+ ["PBLOB","lpArgToCompletionRoutine","in"],
3155
+ ["BOOL","fResume","in"],
3156
+ ])
3157
+
3158
+ railgun.add_function('kernel32', 'SetupComm', 'BOOL',[
3159
+ ["DWORD","hFile","in"],
3160
+ ["DWORD","dwInQueue","in"],
3161
+ ["DWORD","dwOutQueue","in"],
3162
+ ])
3163
+
3164
+ railgun.add_function('kernel32', 'SignalObjectAndWait', 'DWORD',[
3165
+ ["DWORD","hObjectToSignal","in"],
3166
+ ["DWORD","hObjectToWaitOn","in"],
3167
+ ["DWORD","dwMilliseconds","in"],
3168
+ ["BOOL","bAlertable","in"],
3169
+ ])
3170
+
3171
+ railgun.add_function('kernel32', 'SizeofResource', 'DWORD',[
3172
+ ["DWORD","hModule","in"],
3173
+ ["DWORD","hResInfo","in"],
3174
+ ])
3175
+
3176
+ railgun.add_function('kernel32', 'Sleep', 'VOID',[
3177
+ ["DWORD","dwMilliseconds","in"],
3178
+ ])
3179
+
3180
+ railgun.add_function('kernel32', 'SleepEx', 'DWORD',[
3181
+ ["DWORD","dwMilliseconds","in"],
3182
+ ["BOOL","bAlertable","in"],
3183
+ ])
3184
+
3185
+ railgun.add_function('kernel32', 'SuspendThread', 'DWORD',[
3186
+ ["DWORD","hThread","in"],
3187
+ ])
3188
+
3189
+ railgun.add_function('kernel32', 'SwitchToFiber', 'VOID',[
3190
+ ["PBLOB","lpFiber","in"],
3191
+ ])
3192
+
3193
+ railgun.add_function('kernel32', 'SwitchToThread', 'BOOL',[
3194
+ ])
3195
+
3196
+ railgun.add_function('kernel32', 'SystemTimeToFileTime', 'BOOL',[
3197
+ ["PBLOB","lpSystemTime","in"],
3198
+ ["PBLOB","lpFileTime","out"],
3199
+ ])
3200
+
3201
+ railgun.add_function('kernel32', 'SystemTimeToTzSpecificLocalTime', 'BOOL',[
3202
+ ["PBLOB","lpTimeZoneInformation","in"],
3203
+ ["PBLOB","lpUniversalTime","in"],
3204
+ ["PBLOB","lpLocalTime","out"],
3205
+ ])
3206
+
3207
+ railgun.add_function('kernel32', 'TerminateJobObject', 'BOOL',[
3208
+ ["DWORD","hJob","in"],
3209
+ ["DWORD","uExitCode","in"],
3210
+ ])
3211
+
3212
+ railgun.add_function('kernel32', 'TerminateProcess', 'BOOL',[
3213
+ ["DWORD","hProcess","in"],
3214
+ ["DWORD","uExitCode","in"],
3215
+ ])
3216
+
3217
+ railgun.add_function('kernel32', 'TerminateThread', 'BOOL',[
3218
+ ["DWORD","hThread","in"],
3219
+ ["DWORD","dwExitCode","in"],
3220
+ ])
3221
+
3222
+ railgun.add_function('kernel32', 'TlsAlloc', 'DWORD',[
3223
+ ])
3224
+
3225
+ railgun.add_function('kernel32', 'TlsFree', 'BOOL',[
3226
+ ["DWORD","dwTlsIndex","in"],
3227
+ ])
3228
+
3229
+ railgun.add_function('kernel32', 'TlsGetValue', 'PBLOB',[
3230
+ ["DWORD","dwTlsIndex","in"],
3231
+ ])
3232
+
3233
+ railgun.add_function('kernel32', 'TlsSetValue', 'BOOL',[
3234
+ ["DWORD","dwTlsIndex","in"],
3235
+ ["PBLOB","lpTlsValue","in"],
3236
+ ])
3237
+
3238
+ railgun.add_function('kernel32', 'TransactNamedPipe', 'BOOL',[
3239
+ ["DWORD","hNamedPipe","in"],
3240
+ ["PBLOB","lpInBuffer","in"],
3241
+ ["DWORD","nInBufferSize","in"],
3242
+ ["PBLOB","lpOutBuffer","out"],
3243
+ ["DWORD","nOutBufferSize","in"],
3244
+ ["PDWORD","lpBytesRead","out"],
3245
+ ["PBLOB","lpOverlapped","inout"],
3246
+ ])
3247
+
3248
+ railgun.add_function('kernel32', 'TransmitCommChar', 'BOOL',[
3249
+ ["DWORD","hFile","in"],
3250
+ ["BYTE","cChar","in"],
3251
+ ])
3252
+
3253
+ railgun.add_function('kernel32', 'TryEnterCriticalSection', 'BOOL',[
3254
+ ["PBLOB","lpCriticalSection","inout"],
3255
+ ])
3256
+
3257
+ railgun.add_function('kernel32', 'TzSpecificLocalTimeToSystemTime', 'BOOL',[
3258
+ ["PBLOB","lpTimeZoneInformation","in"],
3259
+ ["PBLOB","lpLocalTime","in"],
3260
+ ["PBLOB","lpUniversalTime","out"],
3261
+ ])
3262
+
3263
+ railgun.add_function('kernel32', 'UnhandledExceptionFilter', 'DWORD',[
3264
+ ["PBLOB","ExceptionInfo","in"],
3265
+ ])
3266
+
3267
+ railgun.add_function('kernel32', 'UnlockFile', 'BOOL',[
3268
+ ["DWORD","hFile","in"],
3269
+ ["DWORD","dwFileOffsetLow","in"],
3270
+ ["DWORD","dwFileOffsetHigh","in"],
3271
+ ["DWORD","nNumberOfBytesToUnlockLow","in"],
3272
+ ["DWORD","nNumberOfBytesToUnlockHigh","in"],
3273
+ ])
3274
+
3275
+ railgun.add_function('kernel32', 'UnlockFileEx', 'BOOL',[
3276
+ ["DWORD","hFile","in"],
3277
+ ["DWORD","dwReserved","inout"],
3278
+ ["DWORD","nNumberOfBytesToUnlockLow","in"],
3279
+ ["DWORD","nNumberOfBytesToUnlockHigh","in"],
3280
+ ["PBLOB","lpOverlapped","inout"],
3281
+ ])
3282
+
3283
+ railgun.add_function('kernel32', 'UnmapViewOfFile', 'BOOL',[
3284
+ ["PBLOB","lpBaseAddress","in"],
3285
+ ])
3286
+
3287
+ railgun.add_function('kernel32', 'UnregisterWait', 'BOOL',[
3288
+ ["DWORD","WaitHandle","in"],
3289
+ ])
3290
+
3291
+ railgun.add_function('kernel32', 'UnregisterWaitEx', 'BOOL',[
3292
+ ["DWORD","WaitHandle","in"],
3293
+ ["DWORD","CompletionEvent","in"],
3294
+ ])
3295
+
3296
+ railgun.add_function('kernel32', 'UpdateResourceA', 'BOOL',[
3297
+ ["DWORD","hUpdate","in"],
3298
+ ["PCHAR","lpType","in"],
3299
+ ["PCHAR","lpName","in"],
3300
+ ["WORD","wLanguage","in"],
3301
+ ["PBLOB","lpData","in"],
3302
+ ["DWORD","cb","in"],
3303
+ ])
3304
+
3305
+ railgun.add_function('kernel32', 'UpdateResourceW', 'BOOL',[
3306
+ ["DWORD","hUpdate","in"],
3307
+ ["PWCHAR","lpType","in"],
3308
+ ["PWCHAR","lpName","in"],
3309
+ ["WORD","wLanguage","in"],
3310
+ ["PBLOB","lpData","in"],
3311
+ ["DWORD","cb","in"],
3312
+ ])
3313
+
3314
+ railgun.add_function('kernel32', 'VerifyVersionInfoA', 'BOOL',[
3315
+ ["PBLOB","lpVersionInformation","inout"],
3316
+ ["DWORD","dwTypeMask","in"],
3317
+ ["PBLOB","dwlConditionMask","in"],
3318
+ ])
3319
+
3320
+ railgun.add_function('kernel32', 'VerifyVersionInfoW', 'BOOL',[
3321
+ ["PBLOB","lpVersionInformation","inout"],
3322
+ ["DWORD","dwTypeMask","in"],
3323
+ ["PBLOB","dwlConditionMask","in"],
3324
+ ])
3325
+
3326
+ railgun.add_function('kernel32', 'VirtualAlloc', 'PBLOB',[
3327
+ ["PBLOB","lpAddress","in"],
3328
+ ["DWORD","dwSize","in"],
3329
+ ["DWORD","flAllocationType","in"],
3330
+ ["DWORD","flProtect","in"],
3331
+ ])
3332
+
3333
+ railgun.add_function('kernel32', 'VirtualAllocEx', 'PBLOB',[
3334
+ ["DWORD","hProcess","in"],
3335
+ ["PBLOB","lpAddress","in"],
3336
+ ["DWORD","dwSize","in"],
3337
+ ["DWORD","flAllocationType","in"],
3338
+ ["DWORD","flProtect","in"],
3339
+ ])
3340
+
3341
+ railgun.add_function('kernel32', 'VirtualFree', 'BOOL',[
3342
+ ["PBLOB","lpAddress","in"],
3343
+ ["DWORD","dwSize","in"],
3344
+ ["DWORD","dwFreeType","in"],
3345
+ ])
3346
+
3347
+ railgun.add_function('kernel32', 'VirtualFreeEx', 'BOOL',[
3348
+ ["DWORD","hProcess","in"],
3349
+ ["PBLOB","lpAddress","in"],
3350
+ ["DWORD","dwSize","in"],
3351
+ ["DWORD","dwFreeType","in"],
3352
+ ])
3353
+
3354
+ railgun.add_function('kernel32', 'VirtualLock', 'BOOL',[
3355
+ ["PBLOB","lpAddress","in"],
3356
+ ["DWORD","dwSize","in"],
3357
+ ])
3358
+
3359
+ railgun.add_function('kernel32', 'VirtualProtect', 'BOOL',[
3360
+ ["PBLOB","lpAddress","in"],
3361
+ ["DWORD","dwSize","in"],
3362
+ ["DWORD","flNewProtect","in"],
3363
+ ["PDWORD","lpflOldProtect","out"],
3364
+ ])
3365
+
3366
+ railgun.add_function('kernel32', 'VirtualProtectEx', 'BOOL',[
3367
+ ["DWORD","hProcess","in"],
3368
+ ["PBLOB","lpAddress","in"],
3369
+ ["DWORD","dwSize","in"],
3370
+ ["DWORD","flNewProtect","in"],
3371
+ ["PDWORD","lpflOldProtect","out"],
3372
+ ])
3373
+
3374
+ railgun.add_function('kernel32', 'VirtualQuery', 'DWORD',[
3375
+ ["PBLOB","lpAddress","in"],
3376
+ ["PBLOB","lpBuffer","out"],
3377
+ ["DWORD","dwLength","in"],
3378
+ ])
3379
+
3380
+ railgun.add_function('kernel32', 'VirtualQueryEx', 'DWORD',[
3381
+ ["DWORD","hProcess","in"],
3382
+ ["PBLOB","lpAddress","in"],
3383
+ ["PBLOB","lpBuffer","out"],
3384
+ ["DWORD","dwLength","in"],
3385
+ ])
3386
+
3387
+ railgun.add_function('kernel32', 'VirtualUnlock', 'BOOL',[
3388
+ ["PBLOB","lpAddress","in"],
3389
+ ["DWORD","dwSize","in"],
3390
+ ])
3391
+
3392
+ railgun.add_function('kernel32', 'WTSGetActiveConsoleSessionId', 'DWORD',[
3393
+ ])
3394
+
3395
+ railgun.add_function('kernel32', 'WaitCommEvent', 'BOOL',[
3396
+ ["DWORD","hFile","in"],
3397
+ ["PDWORD","lpEvtMask","inout"],
3398
+ ["PBLOB","lpOverlapped","inout"],
3399
+ ])
3400
+
3401
+ railgun.add_function('kernel32', 'WaitForDebugEvent', 'BOOL',[
3402
+ ["PBLOB","lpDebugEvent","in"],
3403
+ ["DWORD","dwMilliseconds","in"],
3404
+ ])
3405
+
3406
+ railgun.add_function('kernel32', 'WaitForMultipleObjects', 'DWORD',[
3407
+ ["DWORD","nCount","in"],
3408
+ ["PDWORD","lpHandles","in"],
3409
+ ["BOOL","bWaitAll","in"],
3410
+ ["DWORD","dwMilliseconds","in"],
3411
+ ])
3412
+
3413
+ railgun.add_function('kernel32', 'WaitForMultipleObjectsEx', 'DWORD',[
3414
+ ["DWORD","nCount","in"],
3415
+ ["PDWORD","lpHandles","in"],
3416
+ ["BOOL","bWaitAll","in"],
3417
+ ["DWORD","dwMilliseconds","in"],
3418
+ ["BOOL","bAlertable","in"],
3419
+ ])
3420
+
3421
+ railgun.add_function('kernel32', 'WaitForSingleObject', 'DWORD',[
3422
+ ["DWORD","hHandle","in"],
3423
+ ["DWORD","dwMilliseconds","in"],
3424
+ ])
3425
+
3426
+ railgun.add_function('kernel32', 'WaitForSingleObjectEx', 'DWORD',[
3427
+ ["DWORD","hHandle","in"],
3428
+ ["DWORD","dwMilliseconds","in"],
3429
+ ["BOOL","bAlertable","in"],
3430
+ ])
3431
+
3432
+ railgun.add_function('kernel32', 'WaitNamedPipeA', 'BOOL',[
3433
+ ["PCHAR","lpNamedPipeName","in"],
3434
+ ["DWORD","nTimeOut","in"],
3435
+ ])
3436
+
3437
+ railgun.add_function('kernel32', 'WaitNamedPipeW', 'BOOL',[
3438
+ ["PWCHAR","lpNamedPipeName","in"],
3439
+ ["DWORD","nTimeOut","in"],
3440
+ ])
3441
+
3442
+ railgun.add_function('kernel32', 'WinExec', 'DWORD',[
3443
+ ["PCHAR","lpCmdLine","in"],
3444
+ ["DWORD","uCmdShow","in"],
3445
+ ])
3446
+
3447
+ railgun.add_function('kernel32', 'Wow64DisableWow64FsRedirection', 'BOOL',[
3448
+ ["PBLOB","OldValue","out"],
3449
+ ])
3450
+
3451
+ railgun.add_function('kernel32', 'Wow64EnableWow64FsRedirection', 'BOOL',[
3452
+ ["BOOL","Wow64FsEnableRedirection","in"],
3453
+ ])
3454
+
3455
+ railgun.add_function('kernel32', 'Wow64RevertWow64FsRedirection', 'BOOL',[
3456
+ ["PBLOB","OlValue","in"],
3457
+ ])
3458
+
3459
+ railgun.add_function('kernel32', 'WriteFile', 'BOOL',[
3460
+ ["DWORD","hFile","in"],
3461
+ ["PBLOB","lpBuffer","in"],
3462
+ ["DWORD","nNumberOfBytesToWrite","in"],
3463
+ ["PDWORD","lpNumberOfBytesWritten","out"],
3464
+ ["PBLOB","lpOverlapped","inout"],
3465
+ ])
3466
+
3467
+ railgun.add_function('kernel32', 'WriteFileEx', 'BOOL',[
3468
+ ["DWORD","hFile","in"],
3469
+ ["PBLOB","lpBuffer","in"],
3470
+ ["DWORD","nNumberOfBytesToWrite","in"],
3471
+ ["PBLOB","lpOverlapped","inout"],
3472
+ ["PBLOB","lpCompletionRoutine","in"],
3473
+ ])
3474
+
3475
+ railgun.add_function('kernel32', 'WriteFileGather', 'BOOL',[
3476
+ ["DWORD","hFile","in"],
3477
+ ["PBLOB","aSegmentArray[]","in"],
3478
+ ["DWORD","nNumberOfBytesToWrite","in"],
3479
+ ["PDWORD","lpReserved","inout"],
3480
+ ["PBLOB","lpOverlapped","inout"],
3481
+ ])
3482
+
3483
+ railgun.add_function('kernel32', 'WritePrivateProfileSectionA', 'BOOL',[
3484
+ ["PCHAR","lpAppName","in"],
3485
+ ["PCHAR","lpString","in"],
3486
+ ["PCHAR","lpFileName","in"],
3487
+ ])
3488
+
3489
+ railgun.add_function('kernel32', 'WritePrivateProfileSectionW', 'BOOL',[
3490
+ ["PWCHAR","lpAppName","in"],
3491
+ ["PWCHAR","lpString","in"],
3492
+ ["PWCHAR","lpFileName","in"],
3493
+ ])
3494
+
3495
+ railgun.add_function('kernel32', 'WritePrivateProfileStringA', 'BOOL',[
3496
+ ["PCHAR","lpAppName","in"],
3497
+ ["PCHAR","lpKeyName","in"],
3498
+ ["PCHAR","lpString","in"],
3499
+ ["PCHAR","lpFileName","in"],
3500
+ ])
3501
+
3502
+ railgun.add_function('kernel32', 'WritePrivateProfileStringW', 'BOOL',[
3503
+ ["PWCHAR","lpAppName","in"],
3504
+ ["PWCHAR","lpKeyName","in"],
3505
+ ["PWCHAR","lpString","in"],
3506
+ ["PWCHAR","lpFileName","in"],
3507
+ ])
3508
+
3509
+ railgun.add_function('kernel32', 'WritePrivateProfileStructA', 'BOOL',[
3510
+ ["PCHAR","lpszSection","in"],
3511
+ ["PCHAR","lpszKey","in"],
3512
+ ["PBLOB","lpStruct","in"],
3513
+ ["DWORD","uSizeStruct","in"],
3514
+ ["PCHAR","szFile","in"],
3515
+ ])
3516
+
3517
+ railgun.add_function('kernel32', 'WritePrivateProfileStructW', 'BOOL',[
3518
+ ["PWCHAR","lpszSection","in"],
3519
+ ["PWCHAR","lpszKey","in"],
3520
+ ["PBLOB","lpStruct","in"],
3521
+ ["DWORD","uSizeStruct","in"],
3522
+ ["PWCHAR","szFile","in"],
3523
+ ])
3524
+
3525
+ railgun.add_function('kernel32', 'WriteProcessMemory', 'BOOL',[
3526
+ ["DWORD","hProcess","in"],
3527
+ ["PBLOB","lpBaseAddress","in"],
3528
+ ["PBLOB","lpBuffer","in"],
3529
+ ["DWORD","nSize","in"],
3530
+ ["PDWORD","lpNumberOfBytesWritten","out"],
3531
+ ])
3532
+
3533
+ railgun.add_function('kernel32', 'WriteProfileSectionA', 'BOOL',[
3534
+ ["PCHAR","lpAppName","in"],
3535
+ ["PCHAR","lpString","in"],
3536
+ ])
3537
+
3538
+ railgun.add_function('kernel32', 'WriteProfileSectionW', 'BOOL',[
3539
+ ["PWCHAR","lpAppName","in"],
3540
+ ["PWCHAR","lpString","in"],
3541
+ ])
3542
+
3543
+ railgun.add_function('kernel32', 'WriteProfileStringA', 'BOOL',[
3544
+ ["PCHAR","lpAppName","in"],
3545
+ ["PCHAR","lpKeyName","in"],
3546
+ ["PCHAR","lpString","in"],
3547
+ ])
3548
+
3549
+ railgun.add_function('kernel32', 'WriteProfileStringW', 'BOOL',[
3550
+ ["PWCHAR","lpAppName","in"],
3551
+ ["PWCHAR","lpKeyName","in"],
3552
+ ["PWCHAR","lpString","in"],
3553
+ ])
3554
+
3555
+ railgun.add_function('kernel32', 'WriteTapemark', 'DWORD',[
3556
+ ["DWORD","hDevice","in"],
3557
+ ["DWORD","dwTapemarkType","in"],
3558
+ ["DWORD","dwTapemarkCount","in"],
3559
+ ["BOOL","bImmediate","in"],
3560
+ ])
3561
+
3562
+ railgun.add_function('kernel32', 'ZombifyActCtx', 'BOOL',[
3563
+ ["DWORD","hActCtx","inout"],
3564
+ ])
3565
+
3566
+ railgun.add_function('kernel32', '_hread', 'DWORD',[
3567
+ ["DWORD","hFile","in"],
3568
+ ["PBLOB","lpBuffer","out"],
3569
+ ["DWORD","lBytes","in"],
3570
+ ])
3571
+
3572
+ railgun.add_function('kernel32', '_hwrite', 'DWORD',[
3573
+ ["DWORD","hFile","in"],
3574
+ ["PBLOB","lpBuffer","in"],
3575
+ ["DWORD","lBytes","in"],
3576
+ ])
3577
+
3578
+ railgun.add_function('kernel32', '_lclose', 'DWORD',[
3579
+ ["DWORD","hFile","in"],
3580
+ ])
3581
+
3582
+ railgun.add_function('kernel32', '_lcreat', 'DWORD',[
3583
+ ["PCHAR","lpPathName","in"],
3584
+ ["DWORD","iAttribute","in"],
3585
+ ])
3586
+
3587
+ railgun.add_function('kernel32', '_llseek', 'DWORD',[
3588
+ ["DWORD","hFile","in"],
3589
+ ["DWORD","lOffset","in"],
3590
+ ["DWORD","iOrigin","in"],
3591
+ ])
3592
+
3593
+ railgun.add_function('kernel32', '_lopen', 'DWORD',[
3594
+ ["PCHAR","lpPathName","in"],
3595
+ ["DWORD","iReadWrite","in"],
3596
+ ])
3597
+
3598
+ railgun.add_function('kernel32', '_lread', 'DWORD',[
3599
+ ["DWORD","hFile","in"],
3600
+ ["PBLOB","lpBuffer","out"],
3601
+ ["DWORD","uBytes","in"],
3602
+ ])
3603
+
3604
+ railgun.add_function('kernel32', '_lwrite', 'DWORD',[
3605
+ ["DWORD","hFile","in"],
3606
+ ["PBLOB","lpBuffer","in"],
3607
+ ["DWORD","uBytes","in"],
3608
+ ])
3609
+
3610
+ railgun.add_function('kernel32', 'lstrcatA', 'PCHAR',[
3611
+ ["PCHAR","lpString1","inout"],
3612
+ ["PCHAR","lpString2","in"],
3613
+ ])
3614
+
3615
+ railgun.add_function('kernel32', 'lstrcatW', 'PWCHAR',[
3616
+ ["PWCHAR","lpString1","inout"],
3617
+ ["PWCHAR","lpString2","in"],
3618
+ ])
3619
+
3620
+ railgun.add_function('kernel32', 'lstrcmpA', 'DWORD',[
3621
+ ["PCHAR","lpString1","in"],
3622
+ ["PCHAR","lpString2","in"],
3623
+ ])
3624
+
3625
+ railgun.add_function('kernel32', 'lstrcmpW', 'DWORD',[
3626
+ ["PWCHAR","lpString1","in"],
3627
+ ["PWCHAR","lpString2","in"],
3628
+ ])
3629
+
3630
+ railgun.add_function('kernel32', 'lstrcmpiA', 'DWORD',[
3631
+ ["PCHAR","lpString1","in"],
3632
+ ["PCHAR","lpString2","in"],
3633
+ ])
3634
+
3635
+ railgun.add_function('kernel32', 'lstrcmpiW', 'DWORD',[
3636
+ ["PWCHAR","lpString1","in"],
3637
+ ["PWCHAR","lpString2","in"],
3638
+ ])
3639
+
3640
+ railgun.add_function('kernel32', 'lstrcpyA', 'PCHAR',[
3641
+ ["PCHAR","lpString1","out"],
3642
+ ["PCHAR","lpString2","in"],
3643
+ ])
3644
+
3645
+ railgun.add_function('kernel32', 'lstrcpyW', 'PWCHAR',[
3646
+ ["PWCHAR","lpString1","out"],
3647
+ ["PWCHAR","lpString2","in"],
3648
+ ])
3649
+
3650
+ railgun.add_function('kernel32', 'lstrcpynA', 'PCHAR',[
3651
+ ["PCHAR","lpString1","out"],
3652
+ ["PCHAR","lpString2","in"],
3653
+ ["DWORD","iMaxLength","in"],
3654
+ ])
3655
+
3656
+ railgun.add_function('kernel32', 'lstrcpynW', 'PWCHAR',[
3657
+ ["PWCHAR","lpString1","out"],
3658
+ ["PWCHAR","lpString2","in"],
3659
+ ["DWORD","iMaxLength","in"],
3660
+ ])
3661
+
3662
+ railgun.add_function('kernel32', 'lstrlenA', 'DWORD',[
3663
+ ["PCHAR","lpString","in"],
3664
+ ])
3665
+
3666
+ railgun.add_function('kernel32', 'lstrlenW', 'DWORD',[
3667
+ ["PWCHAR","lpString","in"],
3668
+ ])
3669
+ end # method
3670
+ end #class
3671
+
3672
+ end # 5x module
3673
+ end
3674
+ end
3675
+ end
3676
+ end
3677
+
3678
+