资源简介
静态过PG
通用补丁过保护和驱动程序签名强制禁用
UPGDSED
Universal PatchGuard and Driver Signature Enforcement Disable
代码片段和文件信息
/*******************************************************************************
*
* (C) COPYRIGHT AUTHORS 2017
*
* title: BCD.C
*
* VERSION: 1.11
*
* DATE: 28 June 2017
*
* Boot Configuration Data related routines.
*
* THIS CODE AND INFORMATION IS PROVIDED “AS IS“ WITHOUT WARRANTY OF
* ANY KIND EITHER EXPRESSED OR IMPLIED INCLUDING BUT NOT LIMITED
* TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
* PARTICULAR PURPOSE.
*
*******************************************************************************/
#include “global.h“
/*
* BcdRtlStrToUl
*
* Purpose:
*
* wcstoul simplified.
*
*/
unsigned long BcdRtlStrToUl(wchar_t *s)
{
unsigned long long a = 0;
wchar_t c;
if (s == 0)
return 0;
while (*s != 0) {
c = *s;
if (_isdigit_w(c))
a = (a * 10) + (c - L‘0‘);
else
break;
if (a > ULONG_MAX)
return ULONG_MAX;
s++;
}
return (unsigned long)a;
}
/*
* BcdOpenKey
*
* Purpose:
*
* Open store key.
*
*/
NTSTATUS BcdOpenKey(
_In_opt_ HANDLE hRootKey
_In_ LPWSTR KeyName
_In_ ACCESS_MASK DesiredAccess
_Out_ HANDLE *hKey
)
{
object_ATTRIBUTES Obja;
UNICODE_STRING usName;
NTSTATUS Status = STATUS_UNSUCCESSFUL;
usName.Buffer = NULL;
usName.Length = 0;
usName.MaximumLength = 0;
RtlInitUnicodeString(&usName KeyName);
InitializeobjectAttributes(&Obja &usName OBJ_CASE_INSENSITIVE hRootKey NULL);
Status = NtOpenKey(hKey DesiredAccess &Obja);
return Status;
}
/*
* BcdReadValue
*
* Purpose:
*
* Read given value to output buffer.
* Returned Buffer must be released with RtlFreeHeap after use.
*
*/
NTSTATUS BcdReadValue(
_In_ HANDLE hKey
_In_ LPWSTR ValueName
_Out_ PVOID *Buffer
_Out_ ULONG *BufferSize
)
{
KEY_VALUE_PARTIAL_INFORMATION *kvpi;
UNICODE_STRING usName;
NTSTATUS Status = STATUS_UNSUCCESSFUL;
ULONG Length = 0;
PVOID CopyBuffer = NULL;
*Buffer = NULL;
*BufferSize = 0;
usName.Buffer = NULL;
usName.Length = 0;
usName.MaximumLength = 0;
RtlInitUnicodeString(&usName ValueName);
Status = NtQueryValueKey(hKey &usName KeyValuePartialInformation NULL 0 &Length);
if (Status == STATUS_BUFFER_TOO_SMALL) {
kvpi = RtlAllocateHeap(NtCurrentPeb()->ProcessHeap HEAP_ZERO_MEMORY Length);
if (kvpi) {
Status = NtQueryValueKey(hKey &usName KeyValuePartialInformation kvpi Length &Length);
if (NT_SUCCESS(Status)) {
CopyBuffer = RtlAllocateHeap(NtCurrentPeb()->ProcessHeap HEAP_ZERO_MEMORY kvpi->DataLength);
if (CopyBuffer) {
RtlCopyMemory(CopyBuffer kvpi->Data kvpi->DataLength);
*Buffer = CopyBuffer;
*BufferSize = kvpi->DataLength;
Status = STATUS_SUCCESS;
}
else
{
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-03-29 10:32 UPGDSED-master\
文件 1059 2019-03-29 10:32 UPGDSED-master\LICENSE.md
文件 1993 2019-03-29 10:32 UPGDSED-master\README.md
文件 6056 2019-03-29 10:32 UPGDSED-master\UPGDSED.sha256
目录 0 2019-03-29 10:32 UPGDSED-master\bin\
文件 1237 2019-03-29 10:32 UPGDSED-master\bin\changelog.txt
文件 1744384 2019-03-29 10:32 UPGDSED-master\bin\patch.exe
目录 0 2019-03-29 10:32 UPGDSED-master\src\
文件 18378 2019-03-29 10:32 UPGDSED-master\src\bcd.c
文件 786 2019-03-29 10:32 UPGDSED-master\src\bcd.h
目录 0 2019-03-29 10:32 UPGDSED-master\src\cui\
文件 2364 2019-03-29 10:32 UPGDSED-master\src\cui\cui.c
文件 740 2019-03-29 10:32 UPGDSED-master\src\cui\cui.h
文件 3200 2019-03-29 10:32 UPGDSED-master\src\global.h
文件 25892 2019-03-29 10:32 UPGDSED-master\src\main.c
目录 0 2019-03-29 10:32 UPGDSED-master\src\minirtl\
文件 2601 2019-03-29 10:32 UPGDSED-master\src\minirtl\_filename.c
文件 757 2019-03-29 10:32 UPGDSED-master\src\minirtl\_filename.h
文件 459 2019-03-29 10:32 UPGDSED-master\src\minirtl\_strcat.c
文件 549 2019-03-29 10:32 UPGDSED-master\src\minirtl\_strcmp.c
文件 592 2019-03-29 10:32 UPGDSED-master\src\minirtl\_strcmpi.c
文件 496 2019-03-29 10:32 UPGDSED-master\src\minirtl\_strcpy.c
文件 243 2019-03-29 10:32 UPGDSED-master\src\minirtl\_strend.c
文件 287 2019-03-29 10:32 UPGDSED-master\src\minirtl\_strlen.c
文件 695 2019-03-29 10:32 UPGDSED-master\src\minirtl\_strncmp.c
文件 737 2019-03-29 10:32 UPGDSED-master\src\minirtl\_strncmpi.c
文件 642 2019-03-29 10:32 UPGDSED-master\src\minirtl\_strncpy.c
文件 2725 2019-03-29 10:32 UPGDSED-master\src\minirtl\cmdline.c
文件 698 2019-03-29 10:32 UPGDSED-master\src\minirtl\cmdline.h
文件 3882 2019-03-29 10:32 UPGDSED-master\src\minirtl\minirtl.h
文件 835 2019-03-29 10:32 UPGDSED-master\src\minirtl\rtltypes.h
............此处省略49个文件信息
相关资源
- USB CY7C86013 FPGA
- 基于FPGA的汉明码的编码与解码的实现
- 基于DDS和FPGA的函数信号发生器设计
- 基于FPGA的PS2接口设计.pdf
- 基于FPGA的数字锁相环设计
- 基于FPGA的频率计的设计
- ADDA等一些芯片的verilog程序
- spi通信 (FPGA和单片机的通信模块)
- FPGA部分动态重配置教程
- fpga pcb图和原理图
- [2010] Hardware Acceleration of EDA Algorithms
- fpga集合 VHDL语言描述
- FPGA 音乐播放器实现
- pg+pgpool+Ubuntu 实现分布式流复制模式
- 基于FPGA的八音符简易音乐播放器
- 解决LOAD DLL (TERASIC_JTAG_DRIVE.dll) FA
- lena 512*512灰度、彩色图bmpmatpgmtiff)
- FPGA流水线个人总结
- FPGA与以太网设计功能实现
- 基于FPGA的数字下变频算法设计
- LT-69公网集群设置软件PG13.rar
- FPGA信号产生信号源
- 基于FPGA的8位抢答器
- 基于VGA显示 和 PS2键盘,用FPGA控制的
- 城镇地籍数据库建立的研究
- Altera FPGA在线重配置实现笔记
- FPGA设计高级进阶--清华讲义
- FPGA单片机4线spi方式驱动OLED有机屏幕
- fpga实现基于verilog语言的4fsk调制解调
- 基于VIP_Board Big的FPGA入门进阶及图像处
评论
共有 条评论