mirror of
https://github.com/reactos/reactos.git
synced 2025-04-28 01:11:35 +00:00

vcruntime contains the code that is linked into ucrtbase (in VS it is also provided as vcruntime140.dll) vcstartup contains the code that is statically linked into executables that link to ucrtbase.dll. In Visual Studio this is part of msvcrt.lib (the import library for msvcrt), similar to our current msvcrtex, and it gets linked when you link to ucrtbase as well. The name is based on the folder name in the library. Both libraries share some code, but each file is only compiled once.
27 lines
526 B
ArmAsm
27 lines
526 B
ArmAsm
//
|
|
// __security_check_cookie.asm
|
|
//
|
|
// Copyright (c) 2024 Timo Kreuzer
|
|
//
|
|
// Implementation of __security_check_cookie for x86.
|
|
//
|
|
// SPDX-License-Identifier: MIT
|
|
//
|
|
|
|
#include <asm.inc>
|
|
|
|
EXTERN ___security_cookie:QWORD
|
|
EXTERN ___report_gsfailure:PROC
|
|
|
|
.code
|
|
|
|
// This function must not clobber any registers!
|
|
PUBLIC ___security_check_cookie
|
|
___security_check_cookie:
|
|
cmp ecx, dword ptr [___security_cookie]
|
|
jne ___security_check_cookie_fail
|
|
ret
|
|
___security_check_cookie_fail:
|
|
jmp ___report_gsfailure
|
|
|
|
END
|