# dwmcore.dll 22621.3527 vs 22621.3593 (CVE-2024-30051, manual pair)

# TOC

* [Visual Chart Diff](#visual-chart-diff)
* [Metadata](#metadata)
	* [Ghidra Diff Engine](#ghidra-diff-engine)
		* [Command Line](#command-line)
	* [Binary Metadata Diff](#binary-metadata-diff)
	* [Program Options](#program-options)
	* [Diff Stats](#diff-stats)
	* [Strings](#strings)
* [Deleted](#deleted)
	* [FUN_18013f0dc](#fun_18013f0dc)
	* [switchD_180071930::caseD_0](#switchd_180071930cased_0)
	* [FUN_1801475a1](#fun_1801475a1)
	* [FUN_180147647](#fun_180147647)
	* [FUN_180147bc6](#fun_180147bc6)
	* [switchD_180086845::caseD_b](#switchd_180086845cased_b)
	* [FUN_18014dfb7](#fun_18014dfb7)
* [Added](#added)
	* [`dynamic_initializer_for_'CExpressionValueStack::s_emptyValue''](#dynamic_initializer_for_cexpressionvaluestacks_emptyvalue)
	* [DynArray<ConditionalBasicBlock,1>::AddMultipleAndSet](#dynarrayconditionalbasicblock1addmultipleandset)
	* [CExpressionValueStack::PeekStackValue](#cexpressionvaluestackpeekstackvalue)
	* [DynArray<CExpressionValue,1>::operator[]](#dynarraycexpressionvalue1operator)
	* [wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState](#wildetailsfeatureimpl__wilfeaturetraits_feature_704565565getcachedfeatureenabledstate)
	* [wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCurrentFeatureEnabledState](#wildetailsfeatureimpl__wilfeaturetraits_feature_704565565getcurrentfeatureenabledstate)
	* [wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::ReportUsage](#wildetailsfeatureimpl__wilfeaturetraits_feature_704565565reportusage)
	* [wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::__private_IsEnabled](#wildetailsfeatureimpl__wilfeaturetraits_feature_704565565__private_isenabled)
	* [wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState](#wildetailsfeatureimpl__wilfeaturetraits_feature_1849091389getcachedfeatureenabledstate)
	* [wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCurrentFeatureEnabledState](#wildetailsfeatureimpl__wilfeaturetraits_feature_1849091389getcurrentfeatureenabledstate)
	* [wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::ReportUsage](#wildetailsfeatureimpl__wilfeaturetraits_feature_1849091389reportusage)
	* [wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled](#wildetailsfeatureimpl__wilfeaturetraits_feature_1849091389__private_isenabled)
	* [CPrimitiveGroup::ClearPrimitiveContent](#cprimitivegroupclearprimitivecontent)
	* [wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState](#wildetailsfeatureimpl__wilfeaturetraits_feature_2986246461getcachedfeatureenabledstate)
	* [wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCurrentFeatureEnabledState](#wildetailsfeatureimpl__wilfeaturetraits_feature_2986246461getcurrentfeatureenabledstate)
	* [wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::ReportUsage](#wildetailsfeatureimpl__wilfeaturetraits_feature_2986246461reportusage)
	* [CPrimitiveGroup::ResolveSharedMemoryBufferNew](#cprimitivegroupresolvesharedmemorybuffernew)
	* [wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled](#wildetailsfeatureimpl__wilfeaturetraits_feature_2986246461__private_isenabled)
	* [SAFE_DELETE_ARRAY<D2D1_COMPOSITOR_DRAWING_STATE>](#safe_delete_arrayd2d1_compositor_drawing_state)
	* [`dynamic_atexit_destructor_for_'CExpressionValueStack::s_emptyValue''](#dynamic_atexit_destructor_for_cexpressionvaluestacks_emptyvalue)
* [Modified](#modified)
	* [CExpressionValueStack::Sqrt](#cexpressionvaluestacksqrt)
	* [CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter](#cexpressionvaluestackmatrix4x4fromperspectiveoffcenter)
	* [CKeyframeAnimation::ApplyPlaybackStateChanges](#ckeyframeanimationapplyplaybackstatechanges)
	* [CExpressionValueStack::ToDegrees](#cexpressionvaluestacktodegrees)
	* [CExpressionValueStack::Transform](#cexpressionvaluestacktransform)
	* [CExpressionValueStack::QuaternionFromLerp](#cexpressionvaluestackquaternionfromlerp)
	* [CConditionalExpression::CalculateConditionValue](#cconditionalexpressioncalculateconditionvalue)
	* [CD2DBitmapCache::GetCachedTexture](#cd2dbitmapcachegetcachedtexture)
	* [CExpressionValueStack::Swizzle](#cexpressionvaluestackswizzle)
	* [CConditionalExpression::~CConditionalExpression](#cconditionalexpressioncconditionalexpression)
	* [CExpressionValueStack::LengthSquared](#cexpressionvaluestacklengthsquared)
	* [CExpressionValueStack::QuaternionFromYawPitchRoll](#cexpressionvaluestackquaternionfromyawpitchroll)
	* [CExpressionValueStack::Min](#cexpressionvaluestackmin)
	* [CExpressionValueStack::Vector3](#cexpressionvaluestackvector3)
	* [CExpressionValueStack::Vector4](#cexpressionvaluestackvector4)
	* [CExpressionValueStack::TimeSpanFrom](#cexpressionvaluestacktimespanfrom)
	* [CExpressionValueStack::Matrix3x2FromRotation](#cexpressionvaluestackmatrix3x2fromrotation)
	* [CExpressionValueStack::GreaterThanEquals](#cexpressionvaluestackgreaterthanequals)
	* [CExpressionValueStack::QuaternionFromAxisAngle](#cexpressionvaluestackquaternionfromaxisangle)
	* [CExpressionValueStack::Asin](#cexpressionvaluestackasin)
	* [CExpressionValueStack::ColorLerpRgb](#cexpressionvaluestackcolorlerprgb)
	* [CExpressionValueStack::Vector4Transform](#cexpressionvaluestackvector4transform)
	* [CExpressionValueStack::Matrix3x2FromSkew](#cexpressionvaluestackmatrix3x2fromskew)
	* [CExpressionValueStack::Negate](#cexpressionvaluestacknegate)
	* [CNaturalAnimationScalarForceAdapater::Update](#cnaturalanimationscalarforceadapaterupdate)
	* [CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated](#cscrollscalekeyframeanimationensurechainingconfigupdated)
	* [CExpressionValueStack::Matrix3x2FromScale](#cexpressionvaluestackmatrix3x2fromscale)
	* [CExpressionValueStack::Scale](#cexpressionvaluestackscale)
	* [CExpressionValueStack::Matrix4x4FromQuaternion](#cexpressionvaluestackmatrix4x4fromquaternion)
	* [CExpressionValueStack::Lerp](#cexpressionvaluestacklerp)
	* [CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView](#cexpressionvaluestackmatrix4x4fromperspectivefieldofview)
	* [CExpressionValueStack::Matrix4x4](#cexpressionvaluestackmatrix4x4)
	* [CExpressionValueStack::Vector2Dot](#cexpressionvaluestackvector2dot)
	* [CExpressionValueStack::Ceil](#cexpressionvaluestackceil)
	* [CExpressionValueStack::Matrix4x4FromRotationY](#cexpressionvaluestackmatrix4x4fromrotationy)
	* [CExpressionValueStack::Matrix4x4FromYawPitchRoll](#cexpressionvaluestackmatrix4x4fromyawpitchroll)
	* [CExpressionValueStack::DistanceSquared](#cexpressionvaluestackdistancesquared)
	* [CKeyframeAnimation::CalculateValueWorker](#ckeyframeanimationcalculatevalueworker)
	* [CExpressionValueStack::Conditional](#cexpressionvaluestackconditional)
	* [CExpressionValueStack::GreaterThan](#cexpressionvaluestackgreaterthan)
	* [CExpressionValueStack::Vector3Transform](#cexpressionvaluestackvector3transform)
	* [CExpressionValueStack::Vector2TransformNormal](#cexpressionvaluestackvector2transformnormal)
	* [CExpressionValueStack::Square](#cexpressionvaluestacksquare)
	* [CExpressionValueStack::ColorHsl](#cexpressionvaluestackcolorhsl)
	* [CExpressionValueStack::Ln](#cexpressionvaluestackln)
	* [CExpressionValueStack::ToRadians](#cexpressionvaluestacktoradians)
	* [CExpressionValueStack::Max](#cexpressionvaluestackmax)
	* [CPrimitiveGroup::GenerateDrawList](#cprimitivegroupgeneratedrawlist)
	* [CCommandBuffer::Initialize](#ccommandbufferinitialize)
	* [CExpressionValueStack::Clamp](#cexpressionvaluestackclamp)
	* [CExpressionValueStack::Concatenate](#cexpressionvaluestackconcatenate)
	* [CExpressionValueStack::LessThanEquals](#cexpressionvaluestacklessthanequals)
	* [CExpressionValueStack::Add](#cexpressionvaluestackadd)
	* [CExpressionValueStack::Round](#cexpressionvaluestackround)
	* [CExpressionValueStack::Vector3Dot](#cexpressionvaluestackvector3dot)
	* [CExpressionValueStack::Divide](#cexpressionvaluestackdivide)
	* [CExpressionValueStack::Vector4Dot](#cexpressionvaluestackvector4dot)
	* [CExpressionValueStack::LessThan](#cexpressionvaluestacklessthan)
	* [CExpressionValueStack::Inverse](#cexpressionvaluestackinverse)
	* [CExpressionValueStack::Subtract](#cexpressionvaluestacksubtract)
	* [CExpressionValueStack::Vector3Cross](#cexpressionvaluestackvector3cross)
	* [CExpressionValueStack::ColorLerpHsl](#cexpressionvaluestackcolorlerphsl)
	* [CExpressionValueStack::Distance](#cexpressionvaluestackdistance)
	* [CExpressionValueStack::Matrix4x4FromTranslation](#cexpressionvaluestackmatrix4x4fromtranslation)
	* [CExpressionValueStack::NotEquals](#cexpressionvaluestacknotequals)
	* [CExpressionValueStack::Equals](#cexpressionvaluestackequals)
	* [CExpressionValueStack::Matrix4x4FromPerspective](#cexpressionvaluestackmatrix4x4fromperspective)
	* [CBaseExpression::CalculateValue](#cbaseexpressioncalculatevalue)
	* [CExpressionValueStack::QuaternionFromRotationMatrix](#cexpressionvaluestackquaternionfromrotationmatrix)
	* [CExpressionValueStack::Absolute](#cexpressionvaluestackabsolute)
	* [CExpressionValueStack::Matrix4x4FromRotationZ](#cexpressionvaluestackmatrix4x4fromrotationz)
	* [CExpressionValueStack::Length](#cexpressionvaluestacklength)
	* [CExpressionValueStack::Matrix4x4FromAxisAngle](#cexpressionvaluestackmatrix4x4fromaxisangle)
	* [CConditionalExpression::GetValue](#cconditionalexpressiongetvalue)
	* [CNaturalAnimation::PeekStackValue](#cnaturalanimationpeekstackvalue)
	* [CExpressionValueStack::Vector2Transform](#cexpressionvaluestackvector2transform)
	* [CKeyframeAnimation::ProcessSetBindingBroken](#ckeyframeanimationprocesssetbindingbroken)
	* [CExpressionValueStack::Normalize](#cexpressionvaluestacknormalize)
	* [CExpressionValueStack::Log10](#cexpressionvaluestacklog10)
	* [CExpressionValueStack::Pow](#cexpressionvaluestackpow)
	* [CExpressionValueStack::And](#cexpressionvaluestackand)
	* [CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated](#cscrollpositionkeyframeanimationensurechainingconfigupdated)
	* [CConditionalExpression::AddStackValueToSum](#cconditionalexpressionaddstackvaluetosum)
	* [CExpressionValueStack::Acos](#cexpressionvaluestackacos)
	* [CExpressionValueStack::Atan](#cexpressionvaluestackatan)
	* [CExpressionValueStack::Multiply](#cexpressionvaluestackmultiply)
	* [CPrimitiveGroup::ProcessAddPrimitives](#cprimitivegroupprocessaddprimitives)
	* [CExpressionValueStack::Or](#cexpressionvaluestackor)
	* [CExpressionValueStack::Not](#cexpressionvaluestacknot)
	* [CExpressionValueStack::Vector3TransformNormal](#cexpressionvaluestackvector3transformnormal)
	* [CExpressionValueStack::Quaternion](#cexpressionvaluestackquaternion)
	* [CExpression::CalculateValueWorker](#cexpressioncalculatevalueworker)
	* [CExpressionValueStack::Matrix4x4FromRotationX](#cexpressionvaluestackmatrix4x4fromrotationx)
	* [CExpressionValueStack::Matrix3x2](#cexpressionvaluestackmatrix3x2)
	* [CExpressionValueStack::Modulus](#cexpressionvaluestackmodulus)
	* [CExpressionValueStack::Slerp](#cexpressionvaluestackslerp)
	* [CExpressionValueStack::Floor](#cexpressionvaluestackfloor)
	* [CPropertySet::operator_new](#cpropertysetoperator_new)
	* [CExpressionValueStack::ColorRgb](#cexpressionvaluestackcolorrgb)
	* [CExpressionValueStack::Matrix4x4FromScale](#cexpressionvaluestackmatrix4x4fromscale)
	* [CExpressionValueStack::Tan](#cexpressionvaluestacktan)
	* [CProxyGeometry::operator_new](#cproxygeometryoperator_new)
	* [FUN_1801195c4](#fun_1801195c4)
	* [D3DXQuaternionMultiply](#d3dxquaternionmultiply)
* [Modified (No Code Changes)](#modified-no-code-changes)
	* [_Delete_this](#_delete_this)
	* [EnsureExpressionIsUnregistered](#ensureexpressionisunregistered)
	* [InternalRelease](#internalrelease)
	* [__GSHandlerCheck](#__gshandlercheck)
	* [atexit](#atexit)
	* [WilApi_GetFeatureEnabledState](#wilapi_getfeatureenabledstate)
	* [RegisterWithSurfaceManager](#registerwithsurfacemanager)
	* [lock_exclusive](#lock_exclusive)
	* [FlushData](#flushdata)
	* [~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>](#com_ptr_tcatlasbitmapresourcewilerr_returncode_policy)
	* [ReleaseInterface<ID2D1Geometry>](#releaseinterfaceid2d1geometry)
	* [push_back](#push_back)
	* [~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>](#unique_storagewildetailsresource_policy_rtl_srwlock___ptr64void___cdecl_rtl_srwlock___ptr64void___cdecl_releasesrwlockexclusivestruct__rtl_srwlock___ptr64wistdintegral_constantunsigned___int641_rtl_srwlock___ptr64_rtl_srwlock___ptr640stdnullptr_t_)
	* [Free](#free)
	* [operator_new[]](#operator_new)
	* [API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::SetEvent](#api-ms-win-core-synch-l1-1-0dllsetevent)
	* [SetProduct](#setproduct)
	* [ResolveAllocation](#resolveallocation)
	* [MilInstrumentationCheckHR_MaybeFailFast](#milinstrumentationcheckhr_maybefailfast)
	* [operator=](#operator)
	* [API-MS-WIN-CORE-HANDLE-L1-1-0.DLL::CloseHandle](#api-ms-win-core-handle-l1-1-0dllclosehandle)
	* [API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::CreateEventW](#api-ms-win-core-synch-l1-1-0dllcreateeventw)
	* [ResolveSharedMemoryBuffer](#resolvesharedmemorybuffer)

# Visual Chart Diff



```mermaid

flowchart LR

CExpressionValueStackSqrt-1-old<--Match 74%-->CExpressionValueStackSqrt-1-new
CExpressionValueStackMatrix4x4FromPerspectiveOffCenter-1-old<--Match 31%-->CExpressionValueStackMatrix4x4FromPerspectiveOffCenter-1-new
CKeyframeAnimationApplyPlaybackStateChanges-2-old<--Match 12%-->CKeyframeAnimationApplyPlaybackStateChanges-2-new
CExpressionValueStackToDegrees-1-old<--Match 68%-->CExpressionValueStackToDegrees-1-new
CExpressionValueStackTransform-1-old<--Match 70%-->CExpressionValueStackTransform-1-new
CExpressionValueStackQuaternionFromLerp-1-old<--Match 59%-->CExpressionValueStackQuaternionFromLerp-1-new
CConditionalExpressionCalculateConditionValue-5-old<--Match 78%-->CConditionalExpressionCalculateConditionValue-5-new
CD2DBitmapCacheGetCachedTexture-3-old<--Match 69%-->CD2DBitmapCacheGetCachedTexture-3-new
CExpressionValueStackSwizzle-2-old<--Match 62%-->CExpressionValueStackSwizzle-2-new
CConditionalExpressionCConditionalExpression-1-old<--Match 62%-->CConditionalExpressionCConditionalExpression-1-new
CExpressionValueStackLengthSquared-1-old<--Match 88%-->CExpressionValueStackLengthSquared-1-new
CExpressionValueStackQuaternionFromYawPitchRoll-1-old<--Match 57%-->CExpressionValueStackQuaternionFromYawPitchRoll-1-new
CExpressionValueStackMin-1-old<--Match 77%-->CExpressionValueStackMin-1-new
CExpressionValueStackVector3-1-old<--Match 35%-->CExpressionValueStackVector3-1-new
CExpressionValueStackVector4-1-old<--Match 43%-->CExpressionValueStackVector4-1-new
CExpressionValueStackTimeSpanFrom-2-old<--Match 70%-->CExpressionValueStackTimeSpanFrom-2-new
CExpressionValueStackMatrix3x2FromRotation-2-old<--Match 66%-->CExpressionValueStackMatrix3x2FromRotation-2-new
CExpressionValueStackGreaterThanEquals-1-old<--Match 56%-->CExpressionValueStackGreaterThanEquals-1-new
CExpressionValueStackQuaternionFromAxisAngle-1-old<--Match 60%-->CExpressionValueStackQuaternionFromAxisAngle-1-new
CExpressionValueStackAsin-1-old<--Match 76%-->CExpressionValueStackAsin-1-new
CExpressionValueStackColorLerpRgb-1-old<--Match 60%-->CExpressionValueStackColorLerpRgb-1-new
CExpressionValueStackVector4Transform-1-old<--Match 78%-->CExpressionValueStackVector4Transform-1-new
CExpressionValueStackMatrix3x2FromSkew-2-old<--Match 45%-->CExpressionValueStackMatrix3x2FromSkew-2-new
CExpressionValueStackNegate-1-old<--Match 46%-->CExpressionValueStackNegate-1-new
CNaturalAnimationScalarForceAdapaterUpdate-4-old<--Match 61%-->CNaturalAnimationScalarForceAdapaterUpdate-4-new
CScrollScaleKeyframeAnimationEnsureChainingConfigUpdated-3-old<--Match 46%-->CScrollScaleKeyframeAnimationEnsureChainingConfigUpdated-3-new
dwmcore-10.0.22621.3527.dll<--79ommited-->dwmcore-10.0.22621.3593.dll

subgraph dwmcore-10.0.22621.3593.dll
    CExpressionValueStackSqrt-1-new
CExpressionValueStackMatrix4x4FromPerspectiveOffCenter-1-new
CKeyframeAnimationApplyPlaybackStateChanges-2-new
CExpressionValueStackToDegrees-1-new
CExpressionValueStackTransform-1-new
CExpressionValueStackQuaternionFromLerp-1-new
CConditionalExpressionCalculateConditionValue-5-new
CD2DBitmapCacheGetCachedTexture-3-new
CExpressionValueStackSwizzle-2-new
CConditionalExpressionCConditionalExpression-1-new
CExpressionValueStackLengthSquared-1-new
CExpressionValueStackQuaternionFromYawPitchRoll-1-new
CExpressionValueStackMin-1-new
CExpressionValueStackVector3-1-new
CExpressionValueStackVector4-1-new
CExpressionValueStackTimeSpanFrom-2-new
CExpressionValueStackMatrix3x2FromRotation-2-new
CExpressionValueStackGreaterThanEquals-1-new
CExpressionValueStackQuaternionFromAxisAngle-1-new
CExpressionValueStackAsin-1-new
CExpressionValueStackColorLerpRgb-1-new
CExpressionValueStackVector4Transform-1-new
CExpressionValueStackMatrix3x2FromSkew-2-new
CExpressionValueStackNegate-1-new
CNaturalAnimationScalarForceAdapaterUpdate-4-new
CScrollScaleKeyframeAnimationEnsureChainingConfigUpdated-3-new
    subgraph Added
direction LR
dynamic_initializer_for_CExpressionValueStack-s_emptyValue
    DynArrayConditionalBasicBlock1-AddMultipleAndSet
    CExpressionValueStack-PeekStackValue
    DynArrayCExpressionValue1-operator
    wil-details-FeatureImpl__WilFeatureTraits_Feature_704565565-GetCachedFeatureEnabledState
    wil-details-FeatureImpl__WilFeatureTraits_Feature_704565565-GetCurrentFeatureEnabledState
    wil-details-FeatureImpl__WilFeatureTraits_Feature_704565565-ReportUsage
    wil-details-FeatureImpl__WilFeatureTraits_Feature_704565565-__private_IsEnabled
    wil-details-FeatureImpl__WilFeatureTraits_Feature_1849091389-GetCachedFeatureEnabledState
    wil-details-FeatureImpl__WilFeatureTraits_Feature_1849091389-GetCurrentFeatureEnabledState
    wil-details-FeatureImpl__WilFeatureTraits_Feature_1849091389-ReportUsage
    wil-details-FeatureImpl__WilFeatureTraits_Feature_1849091389-__private_IsEnabled
    CPrimitiveGroup-ClearPrimitiveContent
    wil-details-FeatureImpl__WilFeatureTraits_Feature_2986246461-GetCachedFeatureEnabledState
    wil-details-FeatureImpl__WilFeatureTraits_Feature_2986246461-GetCurrentFeatureEnabledState
    wil-details-FeatureImpl__WilFeatureTraits_Feature_2986246461-ReportUsage
    CPrimitiveGroup-ResolveSharedMemoryBufferNew
    wil-details-FeatureImpl__WilFeatureTraits_Feature_2986246461-__private_IsEnabled
    SAFE_DELETE_ARRAYD2D1_COMPOSITOR_DRAWING_STATE
    dynamic_atexit_destructor_for_CExpressionValueStack-s_emptyValue
end
end

subgraph dwmcore-10.0.22621.3527.dll
    CExpressionValueStackSqrt-1-old
CExpressionValueStackMatrix4x4FromPerspectiveOffCenter-1-old
CKeyframeAnimationApplyPlaybackStateChanges-2-old
CExpressionValueStackToDegrees-1-old
CExpressionValueStackTransform-1-old
CExpressionValueStackQuaternionFromLerp-1-old
CConditionalExpressionCalculateConditionValue-5-old
CD2DBitmapCacheGetCachedTexture-3-old
CExpressionValueStackSwizzle-2-old
CConditionalExpressionCConditionalExpression-1-old
CExpressionValueStackLengthSquared-1-old
CExpressionValueStackQuaternionFromYawPitchRoll-1-old
CExpressionValueStackMin-1-old
CExpressionValueStackVector3-1-old
CExpressionValueStackVector4-1-old
CExpressionValueStackTimeSpanFrom-2-old
CExpressionValueStackMatrix3x2FromRotation-2-old
CExpressionValueStackGreaterThanEquals-1-old
CExpressionValueStackQuaternionFromAxisAngle-1-old
CExpressionValueStackAsin-1-old
CExpressionValueStackColorLerpRgb-1-old
CExpressionValueStackVector4Transform-1-old
CExpressionValueStackMatrix3x2FromSkew-2-old
CExpressionValueStackNegate-1-old
CNaturalAnimationScalarForceAdapaterUpdate-4-old
CScrollScaleKeyframeAnimationEnsureChainingConfigUpdated-3-old
    subgraph Deleted
direction LR
FUN_18013f0dc
    switchD_180071930-caseD_0
    FUN_1801475a1
    FUN_180147647
    FUN_180147bc6
    switchD_180086845-caseD_b
    FUN_18014dfb7
end
end

```


```mermaid
pie showData
    title Function Matches - 99.9045%
"unmatched_funcs_len" : 27
"matched_funcs_len" : 28248
```



```mermaid
pie showData
    title Matched Function Similarity - 99.5256%
"matched_funcs_with_code_changes_len" : 104
"matched_funcs_with_non_code_changes_len" : 30
"matched_funcs_no_changes_len" : 28114
```

# Metadata

## Ghidra Diff Engine

### Command Line

#### Captured Command Line


```
ghidriff --project-location C:\tools\hugo\patchpalooza\ghidriff\CVE-2024-30051\ghidra_projects --project-name CVE-2024-30051 --symbols-path C:\tools\hugo\patchpalooza\ghidriff\CVE-2024-30051\symbols --gzfs-path gzfs --threaded --log-level INFO --file-log-level INFO --log-path ghidriff.log --min-func-len 10 --gdt [] --bsim --max-ram-percent 60.0 --max-section-funcs 200 --md-title dwmcore.dll 22621.3527 vs 22621.3593 (CVE-2024-30051, manual pair) dwmcore-10.0.22621.3527.dll dwmcore-10.0.22621.3593.dll
```


#### Verbose Args


<details>

```
--old ['C:\\tools\\hugo\\patchpalooza\\ghidriff\\CVE-2024-30051\\dwmcore-10.0.22621.3527.dll'] --new [['C:\\tools\\hugo\\patchpalooza\\ghidriff\\CVE-2024-30051\\dwmcore-10.0.22621.3593.dll']] --engine VersionTrackingDiff --output-path C:\tools\hugo\patchpalooza\ghidriff\CVE-2024-30051\output --summary False --project-location C:\tools\hugo\patchpalooza\ghidriff\CVE-2024-30051\ghidra_projects --project-name CVE-2024-30051 --symbols-path C:\tools\hugo\patchpalooza\ghidriff\CVE-2024-30051\symbols --gzfs-path gzfs --base-address None --program-options None --threaded True --force-analysis False --force-diff False --no-symbols False --log-level INFO --file-log-level INFO --log-path ghidriff.log --va False --min-func-len 10 --use-calling-counts False --gdt [] --bsim True --bsim-full False --max-ram-percent 60.0 --print-flags False --jvm-args None --side-by-side False --max-section-funcs 200 --md-title dwmcore.dll 22621.3527 vs 22621.3593 (CVE-2024-30051, manual pair)
```


</details>

#### Download Original PEs


```
wget https://msdl.microsoft.com/download/symbols/dwmcore/B172F7BD410000/dwmcore -O dwmcore.x64.10.0.22621.3527
wget https://msdl.microsoft.com/download/symbols/dwmcore/EBEAB23C415000/dwmcore -O dwmcore.x64.10.0.22621.3593
```


## Binary Metadata Diff


```diff
--- dwmcore-10.0.22621.3527.dll Meta
+++ dwmcore-10.0.22621.3593.dll Meta
@@ -1,44 +1,44 @@
-Program Name: dwmcore-10.0.22621.3527.dll
+Program Name: dwmcore-10.0.22621.3593.dll
 Language ID: x86:LE:64:default (4.7)
 Compiler ID: windows
 Processor: x86
 Endian: Little
 Address Size: 64
 Minimum Address: 180000000
 Maximum Address: ff0000184f
-# of Bytes: 4263304
+# of Bytes: 4283968
 # of Memory Blocks: 9
-# of Instructions: 646565
+# of Instructions: 652072
 # of Defined Data: 54873
-# of Functions: 14139
-# of Symbols: 110736
-# of Data Types: 6723
+# of Functions: 14136
+# of Symbols: 111111
+# of Data Types: 6735
 # of Data Type Categories: 397
 Analyzed: true
 Compiler: visualstudio:unknown
 Created With Ghidra Version: 12.1.2
-Date Created: Mon Jul 27 23:17:53 SGT 2026
+Date Created: Mon Jul 27 23:18:07 SGT 2026
 Executable Format: Portable Executable (PE)
-Executable Location: /C:/tools/hugo/patchpalooza/ghidriff/CVE-2024-30051/dwmcore-10.0.22621.3527.dll
-Executable MD5: 2b2e151d19e1bbdf8256c5c2d4acb18a
-Executable SHA256: 185c580813d23513858530d79a1e88435b882e8db0daae77518910a8c6f05d7a
-FSRL: file:///C:/tools/hugo/patchpalooza/ghidriff/CVE-2024-30051/dwmcore-10.0.22621.3527.dll?MD5=2b2e151d19e1bbdf8256c5c2d4acb18a
+Executable Location: /C:/tools/hugo/patchpalooza/ghidriff/CVE-2024-30051/dwmcore-10.0.22621.3593.dll
+Executable MD5: a5d011801b22c784e1ac502c19eb3fa1
+Executable SHA256: e4f3333a592560b0b1131e25c7505eb8bd7bb6a7012ce698d901056bb389574d
+FSRL: file:///C:/tools/hugo/patchpalooza/ghidriff/CVE-2024-30051/dwmcore-10.0.22621.3593.dll?MD5=a5d011801b22c784e1ac502c19eb3fa1
 PDB Age: 1
 PDB File: dwmcore.pdb
-PDB GUID: 7d5bcc3a-80da-0328-1957-e3819e1299dc
+PDB GUID: e8c86504-cc61-5652-8b47-2fbacc43d299
 PDB Loaded: true
 PDB Version: RSDS
 PE Property[CompanyName]: Microsoft Corporation
 PE Property[FileDescription]: Microsoft DWM Core Library
-PE Property[FileVersion]: 10.0.22621.3527 (WinBuild.160101.0800)
+PE Property[FileVersion]: 10.0.22621.3593 (WinBuild.160101.0800)
 PE Property[InternalName]: dwmcore
 PE Property[LegalCopyright]: © Microsoft Corporation. All rights reserved.
 PE Property[OriginalFilename]: dwmcore
 PE Property[ProductName]: Microsoft® Windows® Operating System
-PE Property[ProductVersion]: 10.0.22621.3527
+PE Property[ProductVersion]: 10.0.22621.3593
 PE Property[Translation]: 4b00409
 Preferred Root Namespace Category: 
 RTTI Found: true
 Relocatable: true
 SectionAlignment: 4096
 Should Ask To Analyze: false

```


## Program Options


<details>
<summary>Ghidra dwmcore-10.0.22621.3527.dll Decompiler Options</summary>


|Decompiler Option|Value|
| :---: | :---: |
|Prototype Evaluation|__fastcall|

</details>


<details>
<summary>Ghidra dwmcore-10.0.22621.3527.dll Specification extensions Options</summary>


|Specification extensions Option|Value|
| :---: | :---: |
|FormatVersion|0|
|VersionCounter|0|

</details>


<details>
<summary>Ghidra dwmcore-10.0.22621.3527.dll Analyzers Options</summary>


|Analyzers Option|Value|
| :---: | :---: |
|ASCII Strings|true|
|ASCII Strings.Create Strings Containing Existing Strings|true|
|ASCII Strings.Create Strings Containing References|true|
|ASCII Strings.Force Model Reload|false|
|ASCII Strings.Minimum String Length|LEN_5|
|ASCII Strings.Model File|StringModel.sng|
|ASCII Strings.Require Null Termination for String|true|
|ASCII Strings.Search Only in Accessible Memory Blocks|true|
|ASCII Strings.String Start Alignment|ALIGN_1|
|ASCII Strings.String end alignment|4|
|Aggressive Instruction Finder|false|
|Aggressive Instruction Finder.Create Analysis Bookmarks|true|
|Apply Data Archives|true|
|Apply Data Archives.Archive Chooser|[Auto-Detect]|
|Apply Data Archives.Create Analysis Bookmarks|true|
|Apply Data Archives.GDT User File Archive Path|None|
|Apply Data Archives.User Project Archive Path|None|
|Call Convention ID|true|
|Call Convention ID.Analysis Decompiler Timeout (sec)|60|
|Call-Fixup Installer|true|
|Condense Filler Bytes|false|
|Condense Filler Bytes.Filler Value|Auto|
|Condense Filler Bytes.Minimum number of sequential bytes|1|
|Create Address Tables|true|
|Create Address Tables.Allow Offcut References|false|
|Create Address Tables.Auto Label Table|false|
|Create Address Tables.Create Analysis Bookmarks|true|
|Create Address Tables.Maxmimum Pointer Distance|16777215|
|Create Address Tables.Minimum Pointer Address|4132|
|Create Address Tables.Minimum Table Size|2|
|Create Address Tables.Pointer Alignment|1|
|Create Address Tables.Relocation Table Guide|true|
|Create Address Tables.Table Alignment|4|
|Data Reference|true|
|Data Reference.Address Table Alignment|1|
|Data Reference.Address Table Minimum Size|2|
|Data Reference.Align End of Strings|false|
|Data Reference.Ascii String References|true|
|Data Reference.Create Address Tables|true|
|Data Reference.Minimum String Length|5|
|Data Reference.References to Pointers|true|
|Data Reference.Relocation Table Guide|true|
|Data Reference.Respect Execute Flag|true|
|Data Reference.Subroutine References|true|
|Data Reference.Switch Table References|false|
|Data Reference.Unicode String References|true|
|Decompiler Parameter ID|false|
|Decompiler Parameter ID.Analysis Clear Level|ANALYSIS|
|Decompiler Parameter ID.Analysis Decompiler Timeout (sec)|60|
|Decompiler Parameter ID.Commit Data Types|true|
|Decompiler Parameter ID.Commit Void Return Values|false|
|Decompiler Parameter ID.Prototype Evaluation|__fastcall|
|Decompiler Switch Analysis|true|
|Decompiler Switch Analysis.Analysis Decompiler Timeout (sec)|60|
|Demangler Microsoft|true|
|Demangler Microsoft.msdApplyOptions|{
	interpretation: FUNCTION_IF_EXISTS,
	applyCallingConvention: true,
	applySignature: true,
	demangleOnlyKnownPatterns: true,
	doDisassembly: true
}|
|Demangler Microsoft.msdOutputOptions|ghidra.app.util.demangler.microsoft.options.MsdOutputOption@9e5b|
|Disassemble Entry Points|true|
|Disassemble Entry Points.Respect Execute Flag|true|
|Embedded Media|true|
|Embedded Media.Create Analysis Bookmarks|true|
|External Entry References|true|
|Function ID|true|
|Function ID.Always Apply FID Labels|false|
|Function ID.Create Analysis Bookmarks|true|
|Function ID.Instruction Count Threshold|14.6|
|Function ID.Multiple Match Threshold|30.0|
|Function Start Search|true|
|Function Start Search.Bookmark Functions|false|
|Function Start Search.Search Data Blocks|false|
|Non-Returning Functions - Discovered|true|
|Non-Returning Functions - Discovered.Create Analysis Bookmarks|true|
|Non-Returning Functions - Discovered.Function Non-return Threshold|3|
|Non-Returning Functions - Discovered.Repair Flow Damage|true|
|Non-Returning Functions - Known|true|
|Non-Returning Functions - Known.Create Analysis Bookmarks|true|
|PDB MSDIA|false|
|PDB MSDIA.Search untrusted symbol servers|false|
|PDB Universal|true|
|PDB Universal.Import Source Line Info|true|
|PDB Universal.Search untrusted symbol servers|false|
|Reference|true|
|Reference.Address Table Alignment|1|
|Reference.Address Table Minimum Size|2|
|Reference.Align End of Strings|false|
|Reference.Ascii String References|true|
|Reference.Create Address Tables|true|
|Reference.Minimum String Length|5|
|Reference.References to Pointers|true|
|Reference.Relocation Table Guide|true|
|Reference.Respect Execute Flag|true|
|Reference.Subroutine References|true|
|Reference.Switch Table References|false|
|Reference.Unicode String References|true|
|Scalar Operand References|true|
|Scalar Operand References.Relocation Table Guide|true|
|Shared Return Calls|true|
|Shared Return Calls.Allow Conditional Jumps|false|
|Shared Return Calls.Assume Contiguous Functions Only|true|
|Stack|true|
|Stack.Create Local Variables|true|
|Stack.Create Param Variables|false|
|Stack.Max Threads|2|
|Subroutine References|true|
|Subroutine References.Create Thunks Early|true|
|Variadic Function Signature Override|false|
|Variadic Function Signature Override.Create Analysis Bookmarks|false|
|Windows x86 PE Exception Handling|true|
|Windows x86 PE RTTI Analyzer|true|
|Windows x86 Thread Environment Block (TEB) Analyzer|true|
|Windows x86 Thread Environment Block (TEB) Analyzer.Starting Address of the TEB||
|Windows x86 Thread Environment Block (TEB) Analyzer.Windows OS Version|Windows 7|
|WindowsPE x86 Propagate External Parameters|false|
|WindowsResourceReference|true|
|WindowsResourceReference.Create Analysis Bookmarks|true|
|x86 Constant Reference Analyzer|true|
|x86 Constant Reference Analyzer.Create Data from pointer|false|
|x86 Constant Reference Analyzer.Function parameter/return Pointer analysis|true|
|x86 Constant Reference Analyzer.Max Threads|2|
|x86 Constant Reference Analyzer.Min absolute reference|4|
|x86 Constant Reference Analyzer.Require pointer param data type|false|
|x86 Constant Reference Analyzer.Speculative reference max|256|
|x86 Constant Reference Analyzer.Speculative reference min|1024|
|x86 Constant Reference Analyzer.Stored Value Pointer analysis|true|
|x86 Constant Reference Analyzer.Trust values read from writable memory|true|

</details>


<details>
<summary>Ghidra dwmcore-10.0.22621.3593.dll Decompiler Options</summary>


|Decompiler Option|Value|
| :---: | :---: |
|Prototype Evaluation|__fastcall|

</details>


<details>
<summary>Ghidra dwmcore-10.0.22621.3593.dll Specification extensions Options</summary>


|Specification extensions Option|Value|
| :---: | :---: |
|FormatVersion|0|
|VersionCounter|0|

</details>


<details>
<summary>Ghidra dwmcore-10.0.22621.3593.dll Analyzers Options</summary>


|Analyzers Option|Value|
| :---: | :---: |
|ASCII Strings|true|
|ASCII Strings.Create Strings Containing Existing Strings|true|
|ASCII Strings.Create Strings Containing References|true|
|ASCII Strings.Force Model Reload|false|
|ASCII Strings.Minimum String Length|LEN_5|
|ASCII Strings.Model File|StringModel.sng|
|ASCII Strings.Require Null Termination for String|true|
|ASCII Strings.Search Only in Accessible Memory Blocks|true|
|ASCII Strings.String Start Alignment|ALIGN_1|
|ASCII Strings.String end alignment|4|
|Aggressive Instruction Finder|false|
|Aggressive Instruction Finder.Create Analysis Bookmarks|true|
|Apply Data Archives|true|
|Apply Data Archives.Archive Chooser|[Auto-Detect]|
|Apply Data Archives.Create Analysis Bookmarks|true|
|Apply Data Archives.GDT User File Archive Path|None|
|Apply Data Archives.User Project Archive Path|None|
|Call Convention ID|true|
|Call Convention ID.Analysis Decompiler Timeout (sec)|60|
|Call-Fixup Installer|true|
|Condense Filler Bytes|false|
|Condense Filler Bytes.Filler Value|Auto|
|Condense Filler Bytes.Minimum number of sequential bytes|1|
|Create Address Tables|true|
|Create Address Tables.Allow Offcut References|false|
|Create Address Tables.Auto Label Table|false|
|Create Address Tables.Create Analysis Bookmarks|true|
|Create Address Tables.Maxmimum Pointer Distance|16777215|
|Create Address Tables.Minimum Pointer Address|4132|
|Create Address Tables.Minimum Table Size|2|
|Create Address Tables.Pointer Alignment|1|
|Create Address Tables.Relocation Table Guide|true|
|Create Address Tables.Table Alignment|4|
|Data Reference|true|
|Data Reference.Address Table Alignment|1|
|Data Reference.Address Table Minimum Size|2|
|Data Reference.Align End of Strings|false|
|Data Reference.Ascii String References|true|
|Data Reference.Create Address Tables|true|
|Data Reference.Minimum String Length|5|
|Data Reference.References to Pointers|true|
|Data Reference.Relocation Table Guide|true|
|Data Reference.Respect Execute Flag|true|
|Data Reference.Subroutine References|true|
|Data Reference.Switch Table References|false|
|Data Reference.Unicode String References|true|
|Decompiler Parameter ID|false|
|Decompiler Parameter ID.Analysis Clear Level|ANALYSIS|
|Decompiler Parameter ID.Analysis Decompiler Timeout (sec)|60|
|Decompiler Parameter ID.Commit Data Types|true|
|Decompiler Parameter ID.Commit Void Return Values|false|
|Decompiler Parameter ID.Prototype Evaluation|__fastcall|
|Decompiler Switch Analysis|true|
|Decompiler Switch Analysis.Analysis Decompiler Timeout (sec)|60|
|Demangler Microsoft|true|
|Demangler Microsoft.msdApplyOptions|{
	interpretation: FUNCTION_IF_EXISTS,
	applyCallingConvention: true,
	applySignature: true,
	demangleOnlyKnownPatterns: true,
	doDisassembly: true
}|
|Demangler Microsoft.msdOutputOptions|ghidra.app.util.demangler.microsoft.options.MsdOutputOption@9e5b|
|Disassemble Entry Points|true|
|Disassemble Entry Points.Respect Execute Flag|true|
|Embedded Media|true|
|Embedded Media.Create Analysis Bookmarks|true|
|External Entry References|true|
|Function ID|true|
|Function ID.Always Apply FID Labels|false|
|Function ID.Create Analysis Bookmarks|true|
|Function ID.Instruction Count Threshold|14.6|
|Function ID.Multiple Match Threshold|30.0|
|Function Start Search|true|
|Function Start Search.Bookmark Functions|false|
|Function Start Search.Search Data Blocks|false|
|Non-Returning Functions - Discovered|true|
|Non-Returning Functions - Discovered.Create Analysis Bookmarks|true|
|Non-Returning Functions - Discovered.Function Non-return Threshold|3|
|Non-Returning Functions - Discovered.Repair Flow Damage|true|
|Non-Returning Functions - Known|true|
|Non-Returning Functions - Known.Create Analysis Bookmarks|true|
|PDB MSDIA|false|
|PDB MSDIA.Search untrusted symbol servers|false|
|PDB Universal|true|
|PDB Universal.Import Source Line Info|true|
|PDB Universal.Search untrusted symbol servers|false|
|Reference|true|
|Reference.Address Table Alignment|1|
|Reference.Address Table Minimum Size|2|
|Reference.Align End of Strings|false|
|Reference.Ascii String References|true|
|Reference.Create Address Tables|true|
|Reference.Minimum String Length|5|
|Reference.References to Pointers|true|
|Reference.Relocation Table Guide|true|
|Reference.Respect Execute Flag|true|
|Reference.Subroutine References|true|
|Reference.Switch Table References|false|
|Reference.Unicode String References|true|
|Scalar Operand References|true|
|Scalar Operand References.Relocation Table Guide|true|
|Shared Return Calls|true|
|Shared Return Calls.Allow Conditional Jumps|false|
|Shared Return Calls.Assume Contiguous Functions Only|true|
|Stack|true|
|Stack.Create Local Variables|true|
|Stack.Create Param Variables|false|
|Stack.Max Threads|2|
|Subroutine References|true|
|Subroutine References.Create Thunks Early|true|
|Variadic Function Signature Override|false|
|Variadic Function Signature Override.Create Analysis Bookmarks|false|
|Windows x86 PE Exception Handling|true|
|Windows x86 PE RTTI Analyzer|true|
|Windows x86 Thread Environment Block (TEB) Analyzer|true|
|Windows x86 Thread Environment Block (TEB) Analyzer.Starting Address of the TEB||
|Windows x86 Thread Environment Block (TEB) Analyzer.Windows OS Version|Windows 7|
|WindowsPE x86 Propagate External Parameters|false|
|WindowsResourceReference|true|
|WindowsResourceReference.Create Analysis Bookmarks|true|
|x86 Constant Reference Analyzer|true|
|x86 Constant Reference Analyzer.Create Data from pointer|false|
|x86 Constant Reference Analyzer.Function parameter/return Pointer analysis|true|
|x86 Constant Reference Analyzer.Max Threads|2|
|x86 Constant Reference Analyzer.Min absolute reference|4|
|x86 Constant Reference Analyzer.Require pointer param data type|false|
|x86 Constant Reference Analyzer.Speculative reference max|256|
|x86 Constant Reference Analyzer.Speculative reference min|1024|
|x86 Constant Reference Analyzer.Stored Value Pointer analysis|true|
|x86 Constant Reference Analyzer.Trust values read from writable memory|true|

</details>

## Diff Stats



|Stat|Value|
| :---: | :---: |
|added_funcs_len|20|
|deleted_funcs_len|7|
|modified_funcs_len|134|
|added_symbols_len|1|
|deleted_symbols_len|0|
|diff_time|54.28865027427673|
|deleted_strings_len|1|
|added_strings_len|0|
|match_types|Counter({'SymbolsHash': 13482, 'StructuralGraphHash': 513, 'ExactInstructionsFunctionHasher': 410, 'ExternalsName': 358, 'ExactBytesFunctionHasher': 57, 'BSIM': 27, 'SigCallingCalledHasher': 3, 'StructuralGraphExactHash': 2, 'Implied Match': 1})|
|items_to_process|162|
|diff_types|Counter({'address': 131, 'length': 108, 'called': 104, 'code': 104, 'calling': 89, 'refcount': 57, 'fullname': 4, 'name': 3, 'sig': 3, 'parent': 2})|
|unmatched_funcs_len|27|
|total_funcs_len|28275|
|matched_funcs_len|28248|
|matched_funcs_with_code_changes_len|104|
|matched_funcs_with_non_code_changes_len|30|
|matched_funcs_no_changes_len|28114|
|match_func_similarity_percent|99.5256%|
|func_match_overall_percent|99.9045%|
|first_matches|Counter({'SymbolsHash': 13482, 'StructuralGraphHash': 513, 'ExactInstructionsFunctionHasher': 410, 'ExactBytesFunctionHasher': 57, 'BSIM': 26, 'SigCallingCalledHasher': 3, 'StructuralGraphExactHash': 2, 'Implied Match': 1})|



```mermaid
pie showData
    title All Matches
"SymbolsHash" : 13482
"ExternalsName" : 358
"BSIM" : 27
"ExactBytesFunctionHasher" : 57
"ExactInstructionsFunctionHasher" : 410
"StructuralGraphExactHash" : 2
"SigCallingCalledHasher" : 3
"StructuralGraphHash" : 513
"Implied-Match" : 1
```



```mermaid
pie showData
    title First Matches
"SymbolsHash" : 13482
"ExactBytesFunctionHasher" : 57
"ExactInstructionsFunctionHasher" : 410
"StructuralGraphExactHash" : 2
"BSIM" : 26
"SigCallingCalledHasher" : 3
"StructuralGraphHash" : 513
"Implied-Match" : 1
```



```mermaid
pie showData
    title Diff Stats
"added_funcs_len" : 20
"deleted_funcs_len" : 7
"modified_funcs_len" : 134
```



```mermaid
pie showData
    title Symbols
"added_symbols_len" : 1
"deleted_symbols_len" : 0
```

## Strings



```mermaid
pie showData
    title Strings
"deleted_strings_len" : 1
"added_strings_len" : 0
```

### Strings Diff


```diff
--- deleted strings
+++ added strings
@@ -1 +0,0 @@
-u_%s%I64x

```


### String References

#### Old



|String|Ref Count|Ref Func|
| :---: | :---: | :---: |
|u_%s%I64x_1803aff60|1|OpenDxBltEvent|

#### New



|String|Ref Count|Ref Func|
| :---: | :---: | :---: |

# Deleted

## FUN_18013f0dc

### Function Meta



|Key|dwmcore-10.0.22621.3527.dll|
| :---: | :---: |
|name|FUN_18013f0dc|
|fullname|FUN_18013f0dc|
|refcount|1|
|length|34|
|called|MilInstrumentationCheckHR_MaybeFailFast|
|calling|CKeyframeAnimation::ApplyPlaybackStateChanges|
|paramcount|0|
|address|18013f0dc|
|sig|undefined FUN_18013f0dc(void)|
|sym_type|Function|
|sym_source|DEFAULT|
|external|False|


```diff
--- FUN_18013f0dc
+++ FUN_18013f0dc
@@ -1,11 +0,0 @@
-
-undefined4 FUN_18013f0dc(ulong param_1)
-
-{
-  long in_EAX;
-  undefined4 unaff_EDI;
-  
-  MilInstrumentationCheckHR_MaybeFailFast(param_1,(long *)0x0,0,in_EAX,0x372,(void *)0x0);
-  return unaff_EDI;
-}
-

```


## switchD_180071930::caseD_0

### Function Meta



|Key|dwmcore-10.0.22621.3527.dll|
| :---: | :---: |
|name|caseD_0|
|fullname|switchD_180071930::caseD_0|
|refcount|2|
|length|3775|
|called|<details><summary>Expand for full list:<br>CExpressionValueStack::Absolute<br>CExpressionValueStack::Acos<br>CExpressionValueStack::And<br>CExpressionValueStack::Asin<br>CExpressionValueStack::Atan<br>CExpressionValueStack::Ceil<br>CExpressionValueStack::ColorHsl<br>CExpressionValueStack::ColorLerpHsl<br>CExpressionValueStack::ColorLerpRgb<br>CExpressionValueStack::Concatenate<br>CExpressionValueStack::Distance</summary>CExpressionValueStack::DistanceSquared<br>CExpressionValueStack::Equals<br>CExpressionValueStack::Floor<br>CExpressionValueStack::GreaterThanEquals<br>CExpressionValueStack::Inverse<br>CExpressionValueStack::Length<br>CExpressionValueStack::LengthSquared<br>CExpressionValueStack::Lerp<br>CExpressionValueStack::Ln<br>CExpressionValueStack::Log10<br>CExpressionValueStack::Matrix3x2FromRotation<br>CExpressionValueStack::Matrix3x2FromSkew<br>CExpressionValueStack::Matrix4x4FromAxisAngle<br>CExpressionValueStack::Matrix4x4FromPerspective<br>CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView<br>CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter<br>CExpressionValueStack::Matrix4x4FromQuaternion<br>CExpressionValueStack::Matrix4x4FromRotationX<br>CExpressionValueStack::Matrix4x4FromRotationY<br>CExpressionValueStack::Matrix4x4FromRotationZ<br>CExpressionValueStack::Matrix4x4FromScale<br>CExpressionValueStack::Matrix4x4FromYawPitchRoll<br>CExpressionValueStack::Max<br>CExpressionValueStack::Min<br>CExpressionValueStack::Modulus<br>CExpressionValueStack::Normalize<br>CExpressionValueStack::Not<br>CExpressionValueStack::NotEquals<br>CExpressionValueStack::Or<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::Quaternion<br>CExpressionValueStack::QuaternionFromAxisAngle<br>CExpressionValueStack::QuaternionFromLerp<br>CExpressionValueStack::QuaternionFromRotationMatrix<br>CExpressionValueStack::QuaternionFromYawPitchRoll<br>CExpressionValueStack::Round<br>CExpressionValueStack::Scale<br>CExpressionValueStack::Slerp<br>CExpressionValueStack::Sqrt<br>CExpressionValueStack::Swizzle<br>CExpressionValueStack::Tan<br>CExpressionValueStack::TimeSpanFrom<br>CExpressionValueStack::ToDegrees<br>CExpressionValueStack::ToRadians<br>CExpressionValueStack::Transform<br>CExpressionValueStack::Vector2Dot<br>CExpressionValueStack::Vector2Transform<br>CExpressionValueStack::Vector2TransformNormal<br>CExpressionValueStack::Vector3Cross<br>CExpressionValueStack::Vector3Dot<br>CExpressionValueStack::Vector3Transform<br>CExpressionValueStack::Vector3TransformNormal<br>CExpressionValueStack::Vector4<br>CExpressionValueStack::Vector4Dot<br>CExpressionValueStack::Vector4Transform<br>MilInstrumentationCheckHR_MaybeFailFast</details>|
|calling||
|paramcount|0|
|address|180146242|
|sig|undefined caseD_0(void)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- switchD_180071930::caseD_0
+++ switchD_180071930::caseD_0
@@ -1,1380 +0,0 @@
-
-/* PDB: Separated code (from the compiler): 180146242 - 1801477ea for parent address: 180071850 */
-
-ulonglong switchD_180071930::caseD_0(CExpressionValueStack *param_1,undefined8 param_2,uint param_3)
-
-{
-  int iVar1;
-  undefined4 uVar2;
-  undefined4 uVar3;
-  longlong lVar4;
-  char cVar5;
-  long lVar6;
-  uint uVar7;
-  ulonglong uVar8;
-  ulong uVar9;
-  CExpressionValueStack *pCVar10;
-  DynArray<CExpressionValue,1> *this;
-  ComPtr<CPathData> *this_00;
-  ExpressionConditionalNode *pEVar11;
-  float *pfVar12;
-  uint unaff_EBP;
-  CExpressionValueStack *unaff_RSI;
-  ExpressionNode *unaff_RDI;
-  longlong lVar13;
-  _GUID *p_Var14;
-  _GUID *p_Var15;
-  longlong unaff_R13;
-  int iVar16;
-  CBaseExpression *unaff_R15;
-  float fVar17;
-  uint uVar18;
-  bool in_stack_00000040;
-  uint uStack0000000000000048;
-  int iStack000000000000004c;
-  uint in_stack_00000050;
-  undefined4 uStack0000000000000054;
-  undefined8 in_stack_000000a0;
-  undefined4 uStack00000000000000a8;
-  undefined1 uStack00000000000000ac;
-  
-code_r0x000180146242:
-  uVar9 = (ulong)param_1;
-  iVar16 = 8;
-  if (param_3 < 8) {
-    uVar7 = 0x80004005;
-    uVar18 = 0x290;
-LAB_18014775f:
-    p_Var15 = (_GUID *)(ulonglong)uVar7;
-  }
-  else {
-    param_1 = unaff_RSI;
-    uVar7 = CExpressionValueStack::PushConstant(unaff_RSI,(bool)unaff_RDI[4]);
-    uVar9 = (ulong)param_1;
-    if (-1 < (int)uVar7) {
-LAB_1800719bc:
-      do {
-        while( true ) {
-          while( true ) {
-            uVar9 = (ulong)param_1;
-            unaff_EBP = unaff_EBP + iVar16;
-            if (*(uint *)(unaff_R15 + 0x17c) <= unaff_EBP) {
-              do {
-                iVar16 = *(int *)(unaff_R15 + 0x198);
-                if (iVar16 == 0) {
-                  return 0;
-                }
-                uVar9 = iVar16 - 1;
-                uVar7 = *(uint *)(*(longlong *)(unaff_R15 + 0x180) + (ulonglong)(iVar16 - 1) * 8);
-                *(uint *)(unaff_R15 + 0x17c) = uVar7;
-                unaff_EBP = *(uint *)(*(longlong *)(unaff_R15 + 0x180) + 4 + (ulonglong)uVar9 * 8);
-                *(ulong *)(unaff_R15 + 0x198) = uVar9;
-              } while (uVar7 <= unaff_EBP);
-            }
-            iVar16 = 4;
-            param_3 = *(int *)(unaff_R15 + 0x158) - unaff_EBP;
-            if (param_3 < 4) {
-              uVar7 = 0x80004005;
-              uVar18 = 0x286;
-              goto LAB_18014775f;
-            }
-            unaff_RDI = (ExpressionNode *)((ulonglong)unaff_EBP + unaff_R13);
-            uVar7 = *(uint *)unaff_RDI;
-            if (uVar7 != 9) break;
-            iVar16 = 8;
-            if (param_3 < 8) {
-              uVar7 = 0x80004005;
-              uVar18 = 0x2f3;
-              goto LAB_18014775f;
-            }
-            param_1 = unaff_RSI;
-            uVar7 = CExpressionValueStack::ProcessReferenceNode
-                              (unaff_RSI,(CExpression *)unaff_R15,
-                               (ExpressionReferenceNode *)unaff_RDI,0x180000000);
-            uVar9 = (ulong)param_1;
-            if ((int)uVar7 < 0) {
-              p_Var15 = (_GUID *)(ulonglong)uVar7;
-              uVar18 = 0x301;
-              goto LAB_180071d5b;
-            }
-          }
-          if (uVar7 != 1) break;
-          iVar16 = 8;
-          if (param_3 < 8) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x29b;
-            goto LAB_18014775f;
-          }
-          uVar9 = *(ulong *)(unaff_RSI + 0x10);
-          uVar2 = *(undefined4 *)(unaff_RDI + 4);
-          if (~uVar9 < 5) {
-            uVar7 = 0x8000ffff;
-            MilInstrumentationCheckHR_MaybeFailFast
-                      (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                       -0x7fff0001,0x52,(void *)0x0);
-LAB_1801476c3:
-            MilInstrumentationCheckHR_MaybeFailFast
-                      (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,uVar7,
-                       0x1c2,(void *)0x0);
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x29f;
-            goto LAB_180071d5b;
-          }
-          if (*(ulong *)(unaff_RSI + 0x30) == uVar9) {
-            uVar7 = 0;
-            memset(&stack0x00000060,0,0x40);
-            this = (DynArray<CExpressionValue,1> *)(unaff_RSI + 0x18);
-            in_stack_000000a0 = 0;
-            uStack00000000000000a8 = 0x12;
-            uStack00000000000000ac = 0;
-            uVar7 = DynArray<CExpressionValue,1>::AddAndSet
-                              (this,uVar7,(CExpressionValue *)&stack0x00000060);
-            if ((int)uVar7 < 0) {
-              MilInstrumentationCheckHR_MaybeFailFast
-                        ((ulong)this,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1
-                         ,uVar7,0x5b,(void *)0x0);
-              this_00 = (ComPtr<CPathData> *)&stack0x000000a0;
-              Microsoft::WRL::ComPtr<CPathData>::InternalRelease(this_00);
-              uVar9 = (ulong)this_00;
-              goto LAB_1801476c3;
-            }
-            Microsoft::WRL::ComPtr<CPathData>::InternalRelease
-                      ((ComPtr<CPathData> *)&stack0x000000a0);
-          }
-          uVar7 = *(uint *)(unaff_RSI + 0x10);
-          *(uint *)(unaff_RSI + 0x10) = uVar7 + 1;
-          param_1 = (CExpressionValueStack *)
-                    ((ulonglong)uVar7 * 0x50 + *(longlong *)(unaff_RSI + 0x18));
-          *(undefined4 *)param_1 = uVar2;
-          *(undefined4 *)(param_1 + 0x48) = 0x12;
-          param_1[0x4c] = (CExpressionValueStack)0x1;
-        }
-        if (uVar7 == 0xf) {
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Multiply(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_180147647();
-            return uVar8;
-          }
-          goto LAB_1800719bc;
-        }
-        if (0x66 < uVar7) {
-switchD_180071930_caseD_1:
-          uVar7 = 0x80004005;
-          uVar18 = 0x4e5;
-          goto LAB_18014775f;
-        }
-        param_1 = (CExpressionValueStack *)
-                  ((ulonglong)(&switchdataD_180071f8c)[(int)uVar7] + 0x180000000);
-        uVar9 = (ulong)param_1;
-        switch(uVar7) {
-        case 0:
-          goto code_r0x000180146242;
-        default:
-          goto switchD_180071930_caseD_1;
-        case 2:
-          iVar16 = 0xc;
-          if (param_3 < 0xc) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x2a6;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::PushConstant(unaff_RSI,(D2DVector2 *)(unaff_RDI + 4));
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x2aa;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 3:
-          iVar16 = 0x10;
-          if (param_3 < 0x10) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x2b1;
-            goto LAB_18014775f;
-          }
-          pCVar10 = unaff_RSI;
-          uVar7 = CExpressionValueStack::EnsureAvailablePushSpace(unaff_RSI);
-          uVar9 = (ulong)pCVar10;
-          if ((int)uVar7 < 0) {
-            MilInstrumentationCheckHR_MaybeFailFast
-                      (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,uVar7,
-                       0x1e4,(void *)0x0);
-            uVar18 = 0x2b5;
-            goto LAB_18014775f;
-          }
-          uVar7 = *(uint *)(unaff_RSI + 0x10);
-          *(uint *)(unaff_RSI + 0x10) = uVar7 + 1;
-          param_1 = (CExpressionValueStack *)
-                    ((ulonglong)uVar7 * 0x50 + *(longlong *)(unaff_RSI + 0x18));
-          *(undefined4 *)(param_1 + 0x48) = 0x34;
-          *(undefined8 *)param_1 = *(undefined8 *)(unaff_RDI + 4);
-          *(undefined4 *)(param_1 + 8) = *(undefined4 *)(unaff_RDI + 0xc);
-          param_1[0x4c] = (CExpressionValueStack)0x1;
-          break;
-        case 4:
-          iVar16 = 0x14;
-          if (param_3 < 0x14) {
-            uVar7 = 0x80004005;
-            uVar18 = 700;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::PushConstant(unaff_RSI,(D2DVector4 *)(unaff_RDI + 4));
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x2c0;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 5:
-          iVar16 = 0x14;
-          if (param_3 < 0x14) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x2c7;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::PushConstant(unaff_RSI,(_D3DCOLORVALUE *)(unaff_RDI + 4));
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x2cb;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 6:
-          iVar16 = 0x14;
-          if (param_3 < 0x14) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x2d2;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::PushConstant(unaff_RSI,(D2DQuaternion *)(unaff_RDI + 4));
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x2d6;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 7:
-          iVar16 = 0x1c;
-          if (param_3 < 0x1c) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x2dd;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::PushConstant(unaff_RSI,(D2D_MATRIX_3X2_F *)(unaff_RDI + 4))
-          ;
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x2e1;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 8:
-          iVar16 = 0x44;
-          if (param_3 < 0x44) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x2e8;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::PushConstant(unaff_RSI,(D2DMatrix *)(unaff_RDI + 4));
-          if (lVar6 < 0) {
-            uVar8 = FUN_180147101();
-            return uVar8;
-          }
-          break;
-        case 0xb:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Absolute(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x306;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0xc:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Negate(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_180147135();
-            return uVar8;
-          }
-          break;
-        case 0xd:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Add(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_18014714e();
-            return uVar8;
-          }
-          break;
-        case 0xe:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Subtract(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_180147167();
-            return uVar8;
-          }
-          break;
-        case 0x10:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Divide(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_180147180();
-            return uVar8;
-          }
-          break;
-        case 0x11:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Modulus(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x31e;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x12:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Min(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x346;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x13:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Max(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x34a;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x14:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Clamp(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_1801471e4();
-            return uVar8;
-          }
-          break;
-        case 0x15:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Scale(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x352;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x16:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Transform(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x356;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x17:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Inverse(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x35a;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x18:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Lerp(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x35e;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x19:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::ColorLerpHsl(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_1801471fd();
-            return uVar8;
-          }
-          break;
-        case 0x1a:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::ColorLerpHsl(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x366;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x1b:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::ColorLerpRgb(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x36a;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x1c:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Length(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x36e;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x1d:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::LengthSquared(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x372;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x1e:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Distance(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x376;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x1f:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::DistanceSquared(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x37a;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x20:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Normalize(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x37e;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x21:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Slerp(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x382;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x22:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Concatenate(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x386;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x23:
-          if (*(int *)(unaff_RSI + 0x10) == 0) {
-            uVar7 = 0xfd0;
-          }
-          else {
-            pfVar12 = (float *)((ulonglong)(*(int *)(unaff_RSI + 0x10) - 1) * 0x50 +
-                               *(longlong *)(unaff_RSI + 0x18));
-            if (pfVar12[0x12] == 2.52234e-44) {
-              pfVar12[0x12] = 2.52234e-44;
-              fVar17 = sinf(*pfVar12);
-              *pfVar12 = fVar17;
-              *(undefined1 *)(pfVar12 + 0x13) = 1;
-              break;
-            }
-            uVar7 = 0xfea;
-          }
-          MilInstrumentationCheckHR_MaybeFailFast
-                    (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                     -0x7fffbffb,uVar7,(void *)0x0);
-          uVar7 = 0x80004005;
-          p_Var15 = (_GUID *)&DAT_80004005;
-          uVar18 = 0x38a;
-          goto LAB_180071d5b;
-        case 0x24:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Asin(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x38e;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x25:
-          if (*(int *)(unaff_RSI + 0x10) == 0) {
-            uVar7 = 0x1058;
-          }
-          else {
-            pfVar12 = (float *)((ulonglong)(*(int *)(unaff_RSI + 0x10) - 1) * 0x50 +
-                               *(longlong *)(unaff_RSI + 0x18));
-            if (pfVar12[0x12] == 2.52234e-44) {
-              pfVar12[0x12] = 2.52234e-44;
-              fVar17 = cosf(*pfVar12);
-              *pfVar12 = fVar17;
-              *(undefined1 *)(pfVar12 + 0x13) = 1;
-              break;
-            }
-            uVar7 = 0x1074;
-          }
-          MilInstrumentationCheckHR_MaybeFailFast
-                    (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                     -0x7fffbffb,uVar7,(void *)0x0);
-          uVar7 = 0x80004005;
-          p_Var15 = (_GUID *)&DAT_80004005;
-          uVar18 = 0x392;
-          goto LAB_180071d5b;
-        case 0x26:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Acos(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x396;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x27:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Tan(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x39a;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x28:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Atan(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x39e;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x29:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Ceil(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x3a2;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x2a:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Floor(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x3a6;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x2b:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Round(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x3aa;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x2c:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Sqrt(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x3ae;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x2d:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Pow(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_1801472ca();
-            return uVar8;
-          }
-          break;
-        case 0x2e:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Square(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_1801472e3();
-            return uVar8;
-          }
-          break;
-        case 0x2f:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Log10(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x3ba;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x30:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Ln(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x3be;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x31:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::ToDegrees(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x3c2;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x32:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::ToRadians(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x3c6;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x33:
-          if (param_3 < 0xc) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x4b4;
-            goto LAB_18014775f;
-          }
-          uVar7 = *(int *)(unaff_RDI + 4) + 0xc + *(int *)(unaff_RDI + 8);
-          iVar1 = uVar7 + unaff_EBP;
-          if (param_3 < uVar7) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x4be;
-            goto LAB_18014775f;
-          }
-          uStack0000000000000048 = *(uint *)(unaff_R15 + 0x17c);
-          uVar18 = *(uint *)(unaff_R15 + 0x198);
-          uVar7 = uVar18 + 1;
-          iStack000000000000004c = iVar1;
-          if (uVar7 < uVar18) {
-            uVar7 = 0x80070216;
-            MilInstrumentationCheckHR_MaybeFailFast
-                      (uVar9,(long *)0x0,0,-0x7ff8fdea,0xb5,(void *)0x0);
-            p_Var15 = (_GUID *)0x80070216;
-            uVar18 = 0x4c7;
-            goto LAB_180071d5b;
-          }
-          if (*(uint *)(unaff_R15 + 0x194) < uVar7) {
-            pEVar11 = (ExpressionConditionalNode *)0x8;
-            lVar6 = DynArrayImpl<1>::AddMultipleAndSet
-                              ((DynArrayImpl<1> *)(unaff_R15 + 0x180),8,param_3,&stack0x00000048);
-            if (lVar6 < 0) {
-              uVar8 = FUN_1801475a1();
-              return uVar8;
-            }
-          }
-          else {
-            pEVar11 = (ExpressionConditionalNode *)(ulonglong)uVar18;
-            *(ulonglong *)(*(longlong *)(unaff_R15 + 0x180) + (longlong)pEVar11 * 8) =
-                 CONCAT44(iVar1,uStack0000000000000048);
-            *(uint *)(unaff_R15 + 0x198) = uVar7;
-          }
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Conditional(unaff_RSI,pEVar11,&stack0x00000040);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x4ca;
-            goto LAB_180071d5b;
-          }
-          if (in_stack_00000040 == false) {
-            iVar16 = *(int *)(unaff_RDI + 4) + 0xc;
-            *(int *)(unaff_R15 + 0x17c) = iVar1;
-          }
-          else {
-            iVar16 = 0xc;
-            *(uint *)(unaff_R15 + 0x17c) = unaff_EBP + 0xc + *(int *)(unaff_RDI + 4);
-          }
-          break;
-        case 0x35:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Equals(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x322;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x36:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::NotEquals(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x326;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x37:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::LessThan(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_180147199();
-            return uVar8;
-          }
-          break;
-        case 0x38:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::LessThanEquals(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_1801471b2();
-            return uVar8;
-          }
-          break;
-        case 0x39:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::GreaterThan(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_1801471cb();
-            return uVar8;
-          }
-          break;
-        case 0x3a:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::GreaterThanEquals(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x336;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x3b:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::And(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x33a;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x3c:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Or(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x33e;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x3d:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Not(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x342;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x3e:
-          uVar7 = *(uint *)(unaff_RSI + 0x10);
-          if (uVar7 < 2) {
-            uVar7 = 0x13fc;
-          }
-          else {
-            lVar4 = *(longlong *)(unaff_RSI + 0x18);
-            lVar13 = (ulonglong)(uVar7 - 2) * 0x50 + lVar4;
-            if ((*(int *)(lVar13 + 0x48) == 0x12) &&
-               (*(int *)(lVar4 + 0x48 + (ulonglong)(uVar7 - 1) * 0x50) == 0x12)) {
-              *(undefined4 *)(lVar13 + 4) = *(undefined4 *)(lVar4 + (ulonglong)(uVar7 - 1) * 0x50);
-              *(undefined4 *)(lVar13 + 0x48) = 0x23;
-              *(undefined1 *)(lVar13 + 0x4c) = 1;
-              *(int *)(unaff_RSI + 0x10) = *(int *)(unaff_RSI + 0x10) + -1;
-              break;
-            }
-            uVar7 = 0x140a;
-          }
-          MilInstrumentationCheckHR_MaybeFailFast
-                    (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                     -0x7fffbffb,uVar7,(void *)0x0);
-          uVar7 = 0x80004005;
-          p_Var15 = (_GUID *)&DAT_80004005;
-          uVar18 = 0x3ca;
-          goto LAB_180071d5b;
-        case 0x3f:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Vector3(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_180147356();
-            return uVar8;
-          }
-          break;
-        case 0x40:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Vector4(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x3d2;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x41:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::ColorHsl(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x3d6;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x42:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::ColorRgb(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_18014736f();
-            return uVar8;
-          }
-          break;
-        case 0x43:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Quaternion(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x3de;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x44:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Matrix3x2(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_180147388();
-            return uVar8;
-          }
-          break;
-        case 0x45:
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Matrix4x4(unaff_RSI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_1801473a1();
-            return uVar8;
-          }
-          break;
-        case 0x46:
-          iVar16 = 8;
-          if (param_3 < 8) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x41e;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Matrix3x2FromRotation(unaff_RSI,*(uint *)(unaff_RDI + 4));
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x421;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x47:
-          iVar16 = 8;
-          if (param_3 < 8) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x400;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Matrix3x2FromScale(unaff_RSI,*(uint *)(unaff_RDI + 4));
-          if (lVar6 < 0) {
-            uVar8 = FUN_180147463();
-            return uVar8;
-          }
-          break;
-        case 0x48:
-          iVar16 = 8;
-          if (param_3 < 8) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x414;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Matrix3x2FromSkew(unaff_RSI,*(uint *)(unaff_RDI + 4));
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x417;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x49:
-          iVar16 = 8;
-          if (param_3 < 8) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x3ec;
-            goto LAB_18014775f;
-          }
-          uVar7 = *(uint *)(unaff_RDI + 4);
-          uVar18 = *(uint *)(unaff_RSI + 0x10);
-          if (uVar18 < uVar7) {
-            uVar7 = 0x161d;
-          }
-          else {
-            if (uVar7 == 1) {
-              param_1 = *(CExpressionValueStack **)(unaff_RSI + 0x18);
-              uVar8 = (ulonglong)(uVar18 - 1);
-              if (*(int *)(param_1 + uVar8 * 0x50 + 0x48) == 0x23) {
-                uVar2 = *(undefined4 *)(param_1 + uVar8 * 0x50);
-                uVar3 = *(undefined4 *)(param_1 + uVar8 * 0x50 + 4);
-                *(undefined4 *)(param_1 + uVar8 * 0x50 + 0x48) = 0x68;
-                *(undefined8 *)(param_1 + uVar8 * 0x50) = 0x3f800000;
-                *(undefined4 *)(param_1 + uVar8 * 0x50 + 8) = 0;
-                *(undefined4 *)(param_1 + uVar8 * 0x50 + 0xc) = 0x3f800000;
-                *(undefined4 *)(param_1 + uVar8 * 0x50 + 0x10) = uVar2;
-                *(undefined4 *)(param_1 + uVar8 * 0x50 + 0x14) = uVar3;
-                param_1[uVar8 * 0x50 + 0x4c] = (CExpressionValueStack)0x1;
-LAB_180071afd:
-                *(uint *)(unaff_RSI + 0x10) = *(int *)(unaff_RSI + 0x10) + (1 - uVar7);
-                break;
-              }
-            }
-            else if (uVar7 == 2) {
-              lVar4 = *(longlong *)(unaff_RSI + 0x18);
-              uVar8 = (ulonglong)(uVar18 - 2);
-              if ((*(int *)(lVar4 + 0x48 + uVar8 * 0x50) == 0x12) &&
-                 (*(int *)(lVar4 + 0x48 + (ulonglong)(uVar18 - 1) * 0x50) == 0x12)) {
-                uVar2 = *(undefined4 *)(lVar4 + uVar8 * 0x50);
-                uVar3 = *(undefined4 *)(lVar4 + (ulonglong)(uVar18 - 1) * 0x50);
-                *(undefined4 *)(lVar4 + 0x48 + uVar8 * 0x50) = 0x68;
-                *(undefined8 *)(lVar4 + uVar8 * 0x50) = 0x3f800000;
-                *(undefined4 *)(lVar4 + 8 + uVar8 * 0x50) = 0;
-                *(undefined4 *)(lVar4 + 0xc + uVar8 * 0x50) = 0x3f800000;
-                *(undefined4 *)(lVar4 + 0x10 + uVar8 * 0x50) = uVar2;
-                *(undefined4 *)(lVar4 + 0x14 + uVar8 * 0x50) = uVar3;
-                *(undefined1 *)(lVar4 + 0x4c + uVar8 * 0x50) = 1;
-                goto LAB_180071afd;
-              }
-            }
-            uVar9 = (ulong)param_1;
-            uVar7 = 0x1646;
-          }
-          MilInstrumentationCheckHR_MaybeFailFast
-                    (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                     -0x7fffbffb,uVar7,(void *)0x0);
-          uVar7 = 0x80004005;
-          p_Var15 = (_GUID *)&DAT_80004005;
-          uVar18 = 0x3ef;
-          goto LAB_180071d5b;
-        case 0x4a:
-          iVar16 = 8;
-          if (param_3 < 8) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x40a;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Matrix4x4FromScale(unaff_RSI,*(uint *)(unaff_RDI + 4));
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x40d;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x4b:
-          iVar16 = 8;
-          if (param_3 < 8) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x3f6;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Matrix4x4FromTranslation
-                            (unaff_RSI,*(uint *)(unaff_RDI + 4));
-          if (lVar6 < 0) {
-            uVar8 = FUN_18014742f();
-            return uVar8;
-          }
-          break;
-        case 0x4c:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Matrix4x4FromAxisAngle(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x426;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x4d:
-          iVar16 = 8;
-          if (param_3 < 8) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x42c;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Matrix4x4FromRotationX(unaff_RSI,*(uint *)(unaff_RDI + 4));
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x42f;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x4e:
-          iVar16 = 8;
-          if (param_3 < 8) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x436;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Matrix4x4FromRotationY(unaff_RSI,*(uint *)(unaff_RDI + 4));
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x439;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x4f:
-          iVar16 = 8;
-          if (param_3 < 8) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x440;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Matrix4x4FromRotationZ(unaff_RSI,*(uint *)(unaff_RDI + 4));
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x443;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x50:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Matrix4x4FromPerspective(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x448;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x51:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x44c;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x52:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x450;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x53:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Matrix4x4FromQuaternion(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x454;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x54:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Matrix4x4FromYawPitchRoll(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x458;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x55:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::QuaternionFromAxisAngle(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x45c;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x56:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::QuaternionFromLerp(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x460;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x57:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::QuaternionFromRotationMatrix(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x464;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x58:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::QuaternionFromYawPitchRoll(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x468;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x59:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::TimeSpanFrom(unaff_RSI,1);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x46c;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x5a:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::TimeSpanFrom(unaff_RSI,1000);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x470;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x5b:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::TimeSpanFrom(unaff_RSI,60000);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x474;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x5c:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Vector2Dot(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x478;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x5d:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Vector2Transform(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x47c;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x5e:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Vector2TransformNormal(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x480;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x5f:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Vector3Cross(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x484;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x60:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Vector3Dot(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x488;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x61:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Vector3Transform(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x48c;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x62:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Vector3TransformNormal(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x490;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 99:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Vector4Dot(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x494;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 100:
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Vector4Transform(unaff_RSI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x498;
-            goto LAB_180071d5b;
-          }
-          break;
-        case 0x65:
-          iVar16 = 0x10;
-          if (param_3 < 0x10) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x49e;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          lVar6 = CExpressionValueStack::Swizzle(unaff_RSI,unaff_RDI);
-          if (lVar6 < 0) {
-            uVar8 = FUN_180147539();
-            return uVar8;
-          }
-          break;
-        case 0x66:
-          iVar16 = 0x18;
-          if (param_3 < 0x18) {
-            uVar7 = 0x80004005;
-            uVar18 = 0x4a9;
-            goto LAB_18014775f;
-          }
-          param_1 = unaff_RSI;
-          uVar7 = CExpressionValueStack::Swizzle(unaff_RSI,unaff_RDI);
-          uVar9 = (ulong)param_1;
-          if ((int)uVar7 < 0) {
-            p_Var15 = (_GUID *)(ulonglong)uVar7;
-            uVar18 = 0x4ad;
-            goto LAB_180071d5b;
-          }
-        }
-      } while( true );
-    }
-    p_Var15 = (_GUID *)(ulonglong)uVar7;
-    uVar18 = 0x294;
-  }
-LAB_180071d5b:
-  p_Var14 = (_GUID *)0x2;
-  MilInstrumentationCheckHR_MaybeFailFast
-            (uVar9,(long *)&DAT_1802d6418,2,(long)p_Var15,uVar18,(void *)0x0);
-  if (((((*(uint *)(*(longlong *)(unaff_R15 + 0x148) + 4) & 0x40000000) != 0) &&
-       (unaff_EBP < *(uint *)(unaff_R15 + 0x158))) && (4 < DAT_1803da798)) &&
-     (cVar5 = _tlgKeywordOn(&DAT_1803da798,4), cVar5 != '\0')) {
-    uStack0000000000000054 = *(undefined4 *)((ulonglong)unaff_EBP + unaff_R13);
-    in_stack_00000050 = uVar7;
-    uStack0000000000000048 = CBaseExpression::GetTracingCookie(unaff_R15);
-    _tlgWriteTemplate<long___cdecl(_tlgProvider_t_const*___ptr64,void_const*___ptr64,_GUID_const*___ptr64,_GUID_const*___ptr64,unsigned_int,_EVENT_DATA_DESCRIPTOR*___ptr64),&long___cdecl__tlgWriteTransfer_EventWriteTransfer(struct__tlgProvider_t_const*___ptr64,void_const*___ptr64,struct__GUID_const*___ptr64,struct__GUID_const*___ptr64,unsigned_int,struct__EVENT_DATA_DESCRIPTOR*___ptr64),_GUID_const*___ptr64,_GUID_const*___ptr64>
-    ::Write<_tlgWrapperByVal<4>,_tlgWrapperByVal<4>,_tlgWrapperByVal<4>_>
-              ((_tlgProvider_t *)&DAT_1803da798,&DAT_1803774cc,p_Var14,p_Var15,
-               (_tlgWrapperByVal<4> *)&stack0x00000048,(_tlgWrapperByVal<4> *)&stack0x00000054,
-               (_tlgWrapperByVal<4> *)&stack0x00000050);
-  }
-  return (ulonglong)uVar7;
-}
-

```


## FUN_1801475a1

### Function Meta



|Key|dwmcore-10.0.22621.3527.dll|
| :---: | :---: |
|name|FUN_1801475a1|
|fullname|FUN_1801475a1|
|refcount|1|
|length|57|
|called|MilInstrumentationCheckHR_MaybeFailFast|
|calling|CExpression::CalculateValueWorker|
|paramcount|0|
|address|1801475a1|
|sig|undefined FUN_1801475a1(void)|
|sym_type|Function|
|sym_source|DEFAULT|
|external|False|


```diff
--- FUN_1801475a1
+++ FUN_1801475a1
@@ -1,38 +0,0 @@
-
-undefined4 FUN_1801475a1(ulong param_1)
-
-{
-  char cVar1;
-  long in_EAX;
-  undefined4 unaff_EBX;
-  uint unaff_EBP;
-  _GUID *p_Var2;
-  _GUID *p_Var3;
-  longlong unaff_R13;
-  uint unaff_R14D;
-  CBaseExpression *unaff_R15;
-  uint in_stack_00000048;
-  undefined4 in_stack_00000050;
-  undefined4 uStack0000000000000054;
-  
-  MilInstrumentationCheckHR_MaybeFailFast(param_1,(long *)0x0,0,in_EAX,0xc0,(void *)0x0);
-  p_Var3 = (_GUID *)(ulonglong)unaff_R14D;
-  p_Var2 = (_GUID *)0x2;
-  MilInstrumentationCheckHR_MaybeFailFast
-            (param_1,(long *)&DAT_1802d6418,2,unaff_R14D,0x4c7,(void *)0x0);
-  if ((((*(uint *)(*(longlong *)(unaff_R15 + 0x148) + 4) & 0x40000000) != 0) &&
-      (unaff_EBP < *(uint *)(unaff_R15 + 0x158))) && (4 < DAT_1803da798)) {
-    cVar1 = _tlgKeywordOn(&DAT_1803da798,4);
-    if (cVar1 != '\0') {
-      uStack0000000000000054 = *(undefined4 *)((ulonglong)unaff_EBP + unaff_R13);
-      in_stack_00000048 = CBaseExpression::GetTracingCookie(unaff_R15);
-      _tlgWriteTemplate<long___cdecl(_tlgProvider_t_const*___ptr64,void_const*___ptr64,_GUID_const*___ptr64,_GUID_const*___ptr64,unsigned_int,_EVENT_DATA_DESCRIPTOR*___ptr64),&long___cdecl__tlgWriteTransfer_EventWriteTransfer(struct__tlgProvider_t_const*___ptr64,void_const*___ptr64,struct__GUID_const*___ptr64,struct__GUID_const*___ptr64,unsigned_int,struct__EVENT_DATA_DESCRIPTOR*___ptr64),_GUID_const*___ptr64,_GUID_const*___ptr64>
-      ::Write<_tlgWrapperByVal<4>,_tlgWrapperByVal<4>,_tlgWrapperByVal<4>_>
-                ((_tlgProvider_t *)&DAT_1803da798,&DAT_1803774cc,p_Var2,p_Var3,
-                 (_tlgWrapperByVal<4> *)&stack0x00000048,(_tlgWrapperByVal<4> *)&stack0x00000054,
-                 (_tlgWrapperByVal<4> *)&stack0x00000050);
-    }
-  }
-  return unaff_EBX;
-}
-

```


## FUN_180147647

### Function Meta



|Key|dwmcore-10.0.22621.3527.dll|
| :---: | :---: |
|name|FUN_180147647|
|fullname|FUN_180147647|
|refcount|1|
|length|157|
|called|CBaseExpression::GetTracingCookie<br>_tlgKeywordOn<br>_tlgWriteTemplate<long___cdecl(_tlgProvider_t_const*___ptr64,void_const*___ptr64,_GUID_const*___ptr64,_GUID_const*___ptr64,unsigned_int,_EVENT_DATA_DESCRIPTOR*___ptr64),&long___cdecl__tlgWriteTransfer_EventWriteTransfer(struct__tlgProvider_t_const*___ptr64,void_const*___ptr64,struct__GUID_const*___ptr64,struct__GUID_const*___ptr64,unsigned_int,struct__EVENT_DATA_DESCRIPTOR*___ptr64),_GUID_const*___ptr64,_GUID_const*___ptr64>::Write<_tlgWrapperByVal<4>,_tlgWrapperByVal<4>,_tlgWrapperByVal<4>_>|
|calling|CExpression::CalculateValueWorker|
|paramcount|0|
|address|180147647|
|sig|undefined FUN_180147647(void)|
|sym_type|Function|
|sym_source|DEFAULT|
|external|False|


```diff
--- FUN_180147647
+++ FUN_180147647
@@ -1,36 +0,0 @@
-
-undefined4 FUN_180147647(ulong param_1)
-
-{
-  char cVar1;
-  uint in_EAX;
-  undefined4 unaff_EBX;
-  uint unaff_EBP;
-  _GUID *p_Var2;
-  _GUID *p_Var3;
-  longlong unaff_R13;
-  CBaseExpression *unaff_R15;
-  uint in_stack_00000048;
-  undefined4 in_stack_00000050;
-  undefined4 uStack0000000000000054;
-  
-  p_Var3 = (_GUID *)(ulonglong)in_EAX;
-  p_Var2 = (_GUID *)0x2;
-  MilInstrumentationCheckHR_MaybeFailFast(param_1,(long *)&DAT_1802d6418,2,in_EAX,0x316,(void *)0x0)
-  ;
-  if ((((*(uint *)(*(longlong *)(unaff_R15 + 0x148) + 4) & 0x40000000) != 0) &&
-      (unaff_EBP < *(uint *)(unaff_R15 + 0x158))) && (4 < DAT_1803da798)) {
-    cVar1 = _tlgKeywordOn(&DAT_1803da798,4);
-    if (cVar1 != '\0') {
-      uStack0000000000000054 = *(undefined4 *)((ulonglong)unaff_EBP + unaff_R13);
-      in_stack_00000048 = CBaseExpression::GetTracingCookie(unaff_R15);
-      _tlgWriteTemplate<long___cdecl(_tlgProvider_t_const*___ptr64,void_const*___ptr64,_GUID_const*___ptr64,_GUID_const*___ptr64,unsigned_int,_EVENT_DATA_DESCRIPTOR*___ptr64),&long___cdecl__tlgWriteTransfer_EventWriteTransfer(struct__tlgProvider_t_const*___ptr64,void_const*___ptr64,struct__GUID_const*___ptr64,struct__GUID_const*___ptr64,unsigned_int,struct__EVENT_DATA_DESCRIPTOR*___ptr64),_GUID_const*___ptr64,_GUID_const*___ptr64>
-      ::Write<_tlgWrapperByVal<4>,_tlgWrapperByVal<4>,_tlgWrapperByVal<4>_>
-                ((_tlgProvider_t *)&DAT_1803da798,&DAT_1803774cc,p_Var2,p_Var3,
-                 (_tlgWrapperByVal<4> *)&stack0x00000048,(_tlgWrapperByVal<4> *)&stack0x00000054,
-                 (_tlgWrapperByVal<4> *)&stack0x00000050);
-    }
-  }
-  return unaff_EBX;
-}
-

```


## FUN_180147bc6

### Function Meta



|Key|dwmcore-10.0.22621.3527.dll|
| :---: | :---: |
|name|FUN_180147bc6|
|fullname|FUN_180147bc6|
|refcount|1|
|length|41|
|called|MilInstrumentationCheckHR_MaybeFailFast|
|calling|CExpressionValueStack::Multiply|
|paramcount|0|
|address|180147bc6|
|sig|undefined FUN_180147bc6(void)|
|sym_type|Function|
|sym_source|DEFAULT|
|external|False|


```diff
--- FUN_180147bc6
+++ FUN_180147bc6
@@ -1,15 +0,0 @@
-
-/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
-
-undefined4 FUN_180147bc6(ulong param_1)
-
-{
-  long in_EAX;
-  undefined4 unaff_EBX;
-  
-  MilInstrumentationCheckHR_MaybeFailFast
-            (param_1,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,in_EAX,0x4a3,
-             (void *)0x0);
-  return unaff_EBX;
-}
-

```


## switchD_180086845::caseD_b

### Function Meta



|Key|dwmcore-10.0.22621.3527.dll|
| :---: | :---: |
|name|caseD_b|
|fullname|switchD_180086845::caseD_b|
|refcount|1|
|length|295|
|called|?StringCchPrintfW@@YAJPEAG_KPEBGZZ<br>CBaseExpression::GetTracingCookie<br>CBaseExpression::LogSetOutputValue<br>CExpressionPerformanceCounter::AddDurationSample<br>Microsoft::WRL::ComPtr<CPathData>::operator=<br>MilInstrumentationCheckHR_MaybeFailFast<br>QpcStopwatch::GetElapsed|
|calling||
|paramcount|0|
|address|18014de90|
|sig|undefined caseD_b(void)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- switchD_180086845::caseD_b
+++ switchD_180086845::caseD_b
@@ -1,91 +0,0 @@
-
-/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
-
-ulonglong switchD_180086845::caseD_b(void)
-
-{
-  CResource *pCVar1;
-  CPathData *pCVar2;
-  uint uVar3;
-  ulonglong uVar4;
-  HANDLE hEvent;
-  __int64 _Var5;
-  ulong uVar6;
-  ComPtr<CPathData> *this;
-  STRSAFE_LPWSTR pszDest;
-  longlong unaff_RBX;
-  longlong unaff_RSI;
-  longlong unaff_RDI;
-  char unaff_R12B;
-  CExpressionPerformanceCounter *unaff_R13;
-  CBaseExpression *unaff_R14;
-  longlong unaff_R15;
-  uint uVar7;
-  CExpressionPerformanceCounter *in_stack_00000038;
-  uint in_stack_00000050;
-  
-  pCVar2 = *(CPathData **)(unaff_RSI + 0x40);
-  this = (ComPtr<CPathData> *)(unaff_R14 + 0x88);
-  *(undefined4 *)(unaff_R14 + 0x90) = 0xb;
-  unaff_R14[0x94] = (CBaseExpression)0x1;
-  Microsoft::WRL::ComPtr<CPathData>::operator=(this,pCVar2);
-  uVar6 = (ulong)this;
-  if (unaff_R12B == '\0') {
-LAB_180086754:
-    if (((byte)unaff_R14[0xd8] & 3) != 3) {
-LAB_180086794:
-      if (unaff_RBX != 0) {
-        _Var5 = QpcStopwatch::GetElapsed((QpcStopwatch *)&stack0x00000040);
-        CExpressionPerformanceCounter::AddDurationSample(unaff_R13,5,_Var5);
-      }
-      *(int *)(unaff_R15 + 0x10) = *(int *)(unaff_R15 + 0x10) + -1;
-      uVar4 = 0;
-      goto LAB_1800867a3;
-    }
-    if ((*(longlong *)(unaff_R14 + 0xb8) == 0) ||
-       (pCVar1 = *(CResource **)(*(longlong *)(unaff_R14 + 0xb8) + 0x10), pCVar1 == (CResource *)0x0
-       )) {
-      uVar4 = 0x80070006;
-      uVar3 = 0x80070006;
-      uVar7 = 0x25e;
-    }
-    else {
-      uVar3 = CBaseExpression::SetOutputValueOnTarget(unaff_R14,pCVar1);
-      uVar6 = (ulong)unaff_R14;
-      uVar4 = (ulonglong)uVar3;
-      if (-1 < (int)uVar3) goto LAB_180086794;
-      uVar7 = 0x25f;
-    }
-  }
-  else {
-    CBaseExpression::LogSetOutputValue(unaff_R14);
-    uVar3 = CBaseExpression::GetTracingCookie(unaff_R14);
-    pszDest = (STRSAFE_LPWSTR)&stack0x00000070;
-    uVar3 = _StringCchPrintfW__YAJPEAG_KPEBGZZ
-                      (pszDest,0x3c,L"DwmExpression_SetValue_%d",(ulonglong)uVar3);
-    uVar6 = (ulong)pszDest;
-    uVar4 = (ulonglong)uVar3;
-    if (-1 < (int)uVar3) {
-      hEvent = CreateEventW((LPSECURITY_ATTRIBUTES)0x0,1,0,(LPCWSTR)&stack0x00000070);
-      SetEvent(hEvent);
-      CloseHandle(hEvent);
-      uVar6 = (ulong)hEvent;
-      goto LAB_180086754;
-    }
-    uVar7 = 0x24d;
-  }
-  MilInstrumentationCheckHR_MaybeFailFast(uVar6,(long *)0x0,0,uVar3,uVar7,(void *)0x0);
-  MilInstrumentationCheckHR_MaybeFailFast(uVar6,(long *)&DAT_1802d6418,2,uVar3,0x4e3,(void *)0x0);
-  unaff_R13 = in_stack_00000038;
-  if (in_stack_00000050 < *(uint *)(unaff_R15 + 0x10)) {
-    uVar4 = FUN_18014dfb7();
-    return uVar4;
-  }
-LAB_1800867a3:
-  if (unaff_RDI != 0) {
-    _Var5 = QpcStopwatch::GetElapsed((QpcStopwatch *)&stack0x00000058);
-    CExpressionPerformanceCounter::AddDurationSample(unaff_R13,0,_Var5);
-  }
-  return uVar4;
-}
-

```


## FUN_18014dfb7

### Function Meta



|Key|dwmcore-10.0.22621.3527.dll|
| :---: | :---: |
|name|FUN_18014dfb7|
|fullname|FUN_18014dfb7|
|refcount|1|
|length|52|
|called|CExpressionPerformanceCounter::AddDurationSample<br>QpcStopwatch::GetElapsed|
|calling|CBaseExpression::CalculateValue|
|paramcount|0|
|address|18014dfb7|
|sig|undefined FUN_18014dfb7(void)|
|sym_type|Function|
|sym_source|DEFAULT|
|external|False|


```diff
--- FUN_18014dfb7
+++ FUN_18014dfb7
@@ -1,26 +0,0 @@
-
-/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
-
-undefined4 FUN_18014dfb7(int param_1,int param_2)
-
-{
-  __int64 _Var1;
-  ulonglong uVar2;
-  undefined4 unaff_ESI;
-  longlong unaff_RDI;
-  longlong unaff_R15;
-  CExpressionPerformanceCounter *in_stack_00000038;
-  
-  uVar2 = (ulonglong)(uint)(param_1 - param_2);
-  do {
-    param_1 = param_1 + -1;
-    uVar2 = uVar2 - 1;
-  } while (uVar2 != 0);
-  *(int *)(unaff_R15 + 0x10) = param_1;
-  if (unaff_RDI != 0) {
-    _Var1 = QpcStopwatch::GetElapsed((QpcStopwatch *)&stack0x00000058);
-    CExpressionPerformanceCounter::AddDurationSample(in_stack_00000038,0,_Var1);
-  }
-  return unaff_ESI;
-}
-

```


# Added

## `dynamic_initializer_for_'CExpressionValueStack::s_emptyValue''

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|s_emptyValue''|
|fullname|`dynamic_initializer_for_'CExpressionValueStack::s_emptyValue''|
|refcount|3|
|length|32|
|called|CExpressionValue::CExpressionValue<br>atexit|
|calling||
|paramcount|0|
|address|1800031e0|
|sig|undefined s_emptyValue''(void)|
|sym_type|Function|
|sym_source|IMPORTED|
|external|False|


```diff
--- `dynamic_initializer_for_'CExpressionValueStack::s_emptyValue''
+++ `dynamic_initializer_for_'CExpressionValueStack::s_emptyValue''
@@ -0,0 +1,9 @@
+
+void `dynamic_initializer_for_'CExpressionValueStack::s_emptyValue__(void)
+
+{
+  CExpressionValue::CExpressionValue(&CExpressionValueStack::s_emptyValue);
+  atexit(`dynamic_atexit_destructor_for_'CExpressionValueStack::s_emptyValue__);
+  return;
+}
+

```


## DynArray<ConditionalBasicBlock,1>::AddMultipleAndSet

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|AddMultipleAndSet|
|fullname|DynArray<ConditionalBasicBlock,1>::AddMultipleAndSet|
|refcount|3|
|length|108|
|called|DynArrayImpl<1>::AddMultipleAndSet<br>FUN_18011daee|
|calling|CExpression::CalculateValueWorker|
|paramcount|3|
|address|1800275b0|
|sig|long __thiscall AddMultipleAndSet(DynArray<ConditionalBasicBlock,1> * this, ConditionalBasicBlock * param_1, uint param_2)|
|sym_type|Function|
|sym_source|IMPORTED|
|external|False|


```diff
--- DynArray<ConditionalBasicBlock,1>::AddMultipleAndSet
+++ DynArray<ConditionalBasicBlock,1>::AddMultipleAndSet
@@ -0,0 +1,36 @@
+
+/* public: long __cdecl DynArray<struct ConditionalBasicBlock,1>::AddMultipleAndSet(struct
+   ConditionalBasicBlock const __unaligned * __ptr64,unsigned int) __ptr64 */
+
+long __thiscall
+DynArray<ConditionalBasicBlock,1>::AddMultipleAndSet
+          (DynArray<ConditionalBasicBlock,1> *this,ConditionalBasicBlock *param_1,uint param_2)
+
+{
+  uint uVar1;
+  uint uVar2;
+  long lVar3;
+  
+  uVar2 = *(uint *)(this + 0x18);
+  uVar1 = uVar2 + 1;
+  if (uVar1 < uVar2) {
+    lVar3 = -0x7ff8fdea;
+    MilInstrumentationCheckHR_MaybeFailFast((ulong)this,(long *)0x0,0,-0x7ff8fdea,0xb5,(void *)0x0);
+  }
+  else {
+    lVar3 = 0;
+    if (*(uint *)(this + 0x14) < uVar1) {
+      lVar3 = DynArrayImpl<1>::AddMultipleAndSet((DynArrayImpl<1> *)this,8,(ulong)this,param_1);
+      if (lVar3 < 0) {
+        lVar3 = FUN_18011daee();
+        return lVar3;
+      }
+    }
+    else {
+      *(undefined8 *)(*(longlong *)this + (ulonglong)uVar2 * 8) = *(undefined8 *)param_1;
+      *(uint *)(this + 0x18) = uVar1;
+    }
+  }
+  return lVar3;
+}
+

```


## CExpressionValueStack::PeekStackValue

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|PeekStackValue|
|fullname|CExpressionValueStack::PeekStackValue|
|refcount|4|
|length|116|
|called|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CBaseExpression::CalculateValue|
|paramcount|2|
|address|180054bf8|
|sig|CExpressionValue * __thiscall PeekStackValue(CExpressionValueStack * this, int param_1)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- CExpressionValueStack::PeekStackValue
+++ CExpressionValueStack::PeekStackValue
@@ -0,0 +1,31 @@
+
+/* public: class CExpressionValue * __ptr64 __cdecl CExpressionValueStack::PeekStackValue(int)
+   __ptr64 */
+
+CExpressionValue * __thiscall
+CExpressionValueStack::PeekStackValue(CExpressionValueStack *this,int param_1)
+
+{
+  bool bVar1;
+  CExpressionValue *pCVar2;
+  uint uVar3;
+  CExpressionValue local_58 [80];
+  
+  bVar1 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  uVar3 = param_1 + -1 + *(int *)(this + 0x10);
+  if ((bVar1) && (*(uint *)(this + 0x30) <= uVar3)) {
+    pCVar2 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+    CExpressionValue::operator=(&s_emptyValue,pCVar2);
+    CExpressionValue::~CExpressionValue(local_58);
+    pCVar2 = &s_emptyValue;
+  }
+  else {
+    pCVar2 = DynArray<CExpressionValue,1>::operator[]
+                       ((DynArray<CExpressionValue,1> *)(this + 0x18),uVar3);
+  }
+  return pCVar2;
+}
+

```


## DynArray<CExpressionValue,1>::operator[]

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|operator[]|
|fullname|DynArray<CExpressionValue,1>::operator[]|
|refcount|205|
|length|14|
|called||
|calling|<details><summary>Expand for full list:<br>CConditionalExpression::AddStackValueToSum<br>CConditionalExpression::CalculateConditionValue<br>CConditionalExpression::GetValue<br>CExpression::CalculateValueWorker<br>CExpressionValueStack::Absolute<br>CExpressionValueStack::Acos<br>CExpressionValueStack::Add<br>CExpressionValueStack::And<br>CExpressionValueStack::Asin<br>CExpressionValueStack::Atan<br>CExpressionValueStack::Ceil</summary>CExpressionValueStack::Clamp<br>CExpressionValueStack::ColorHsl<br>CExpressionValueStack::ColorLerpHsl<br>CExpressionValueStack::ColorLerpRgb<br>CExpressionValueStack::ColorRgb<br>CExpressionValueStack::Concatenate<br>CExpressionValueStack::Conditional<br>CExpressionValueStack::Distance<br>CExpressionValueStack::DistanceSquared<br>CExpressionValueStack::Divide<br>CExpressionValueStack::Equals<br>CExpressionValueStack::Floor<br>CExpressionValueStack::GreaterThan<br>CExpressionValueStack::GreaterThanEquals<br>CExpressionValueStack::Inverse<br>CExpressionValueStack::Length<br>CExpressionValueStack::LengthSquared<br>CExpressionValueStack::Lerp<br>CExpressionValueStack::LessThan<br>CExpressionValueStack::LessThanEquals<br>CExpressionValueStack::Ln<br>CExpressionValueStack::Log10<br>CExpressionValueStack::Matrix3x2<br>CExpressionValueStack::Matrix3x2FromRotation<br>CExpressionValueStack::Matrix3x2FromScale<br>CExpressionValueStack::Matrix3x2FromSkew<br>CExpressionValueStack::Matrix4x4<br>CExpressionValueStack::Matrix4x4FromAxisAngle<br>CExpressionValueStack::Matrix4x4FromPerspective<br>CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView<br>CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter<br>CExpressionValueStack::Matrix4x4FromQuaternion<br>CExpressionValueStack::Matrix4x4FromRotationX<br>CExpressionValueStack::Matrix4x4FromRotationY<br>CExpressionValueStack::Matrix4x4FromRotationZ<br>CExpressionValueStack::Matrix4x4FromScale<br>CExpressionValueStack::Matrix4x4FromTranslation<br>CExpressionValueStack::Matrix4x4FromYawPitchRoll<br>CExpressionValueStack::Max<br>CExpressionValueStack::Min<br>CExpressionValueStack::Modulus<br>CExpressionValueStack::Multiply<br>CExpressionValueStack::Negate<br>CExpressionValueStack::Normalize<br>CExpressionValueStack::Not<br>CExpressionValueStack::NotEquals<br>CExpressionValueStack::Or<br>CExpressionValueStack::PeekStackValue<br>CExpressionValueStack::Pow<br>CExpressionValueStack::Quaternion<br>CExpressionValueStack::QuaternionFromAxisAngle<br>CExpressionValueStack::QuaternionFromLerp<br>CExpressionValueStack::QuaternionFromRotationMatrix<br>CExpressionValueStack::QuaternionFromYawPitchRoll<br>CExpressionValueStack::Round<br>CExpressionValueStack::Scale<br>CExpressionValueStack::Slerp<br>CExpressionValueStack::Sqrt<br>CExpressionValueStack::Square<br>CExpressionValueStack::Subtract<br>CExpressionValueStack::Swizzle<br>CExpressionValueStack::Tan<br>CExpressionValueStack::TimeSpanFrom<br>CExpressionValueStack::ToDegrees<br>CExpressionValueStack::ToRadians<br>CExpressionValueStack::Transform<br>CExpressionValueStack::Vector2Dot<br>CExpressionValueStack::Vector2Transform<br>CExpressionValueStack::Vector2TransformNormal<br>CExpressionValueStack::Vector3<br>CExpressionValueStack::Vector3Cross<br>CExpressionValueStack::Vector3Dot<br>CExpressionValueStack::Vector3Transform<br>CExpressionValueStack::Vector3TransformNormal<br>CExpressionValueStack::Vector4<br>CExpressionValueStack::Vector4Dot<br>CExpressionValueStack::Vector4Transform<br>CKeyframeAnimation::ApplyPlaybackStateChanges<br>CKeyframeAnimation::ProcessSetBindingBroken<br>CNaturalAnimation::PeekStackValue<br>CNaturalAnimationScalarForceAdapater::Update<br>CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated<br>CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated</details>|
|paramcount|2|
|address|1800c3be0|
|sig|CExpressionValue * __thiscall operator[](DynArray<CExpressionValue,1> * this, uint param_1)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- DynArray<CExpressionValue,1>::operator[]
+++ DynArray<CExpressionValue,1>::operator[]
@@ -0,0 +1,11 @@
+
+/* public: class CExpressionValue & __ptr64 __cdecl DynArray<class
+   CExpressionValue,1>::operator[](unsigned int)const __ptr64 */
+
+CExpressionValue * __thiscall
+DynArray<CExpressionValue,1>::operator[](DynArray<CExpressionValue,1> *this,uint param_1)
+
+{
+  return (CExpressionValue *)((ulonglong)param_1 * 0x50 + *(longlong *)this);
+}
+

```


## wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|GetCachedFeatureEnabledState|
|fullname|wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState|
|refcount|3|
|length|267|
|called|wil::details::EnabledStateManager::EnsureSubscribedToFeatureConfigurationChangesImpl<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCurrentFeatureEnabledState<br>wil::details::unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>::~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_><br>wil::details_abi::heap_buffer::push_back<br>wil::srwlock::lock_exclusive|
|calling|wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::ReportUsage<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::__private_IsEnabled|
|paramcount|1|
|address|180111e98|
|sig|wil_details_FeatureStateCache __thiscall GetCachedFeatureEnabledState(FeatureImpl<__WilFeatureTraits_Feature_704565565> * this)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState
+++ wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState
@@ -0,0 +1,86 @@
+
+/* private: union wil_details_FeatureStateCache __cdecl wil::details::FeatureImpl<struct
+   __WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState(void) __ptr64 */
+
+void __thiscall
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState
+          (FeatureImpl<__WilFeatureTraits_Feature_704565565> *this)
+
+{
+  uint uVar1;
+  uint uVar2;
+  uint uVar3;
+  shutdown_aware_object<wil::details::EnabledStateManager> *this_00;
+  uint uVar4;
+  uint *in_RDX;
+  bool bVar5;
+  int local_res8;
+  uint local_res10 [2];
+  unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>
+  local_res18 [16];
+  undefined4 local_28 [2];
+  FeatureImpl<__WilFeatureTraits_Feature_704565565> *local_20;
+  
+  uVar1 = *(uint *)this;
+  *in_RDX = uVar1;
+  if (((byte)uVar1 & 3) == 3) {
+    return;
+  }
+  this_00 = (shutdown_aware_object<wil::details::EnabledStateManager> *)this;
+  uVar1 = DAT_1803e1dec;
+  if (DAT_1803e1dec == 0) {
+    this_00 = &g_enabledStateManager;
+    uVar1 = EnabledStateManager::EnsureSubscribedToFeatureConfigurationChangesImpl
+                      ((EnabledStateManager *)&g_enabledStateManager);
+  }
+  GetCurrentFeatureEnabledState
+            ((FeatureImpl<__WilFeatureTraits_Feature_704565565> *)this_00,(int *)local_res10);
+  uVar2 = *in_RDX;
+  do {
+    uVar4 = uVar2;
+    *in_RDX = uVar4;
+    uVar3 = uVar4;
+    if ((local_res8 != 0) && ((uVar4 & 1) == 0)) {
+      uVar3 = (uVar4 ^ local_res10[0]) & 0x278 ^ uVar4 | 1;
+      *in_RDX = uVar3;
+    }
+    if ((uVar4 & 2) == 0) {
+      uVar3 = uVar3 ^ (uVar3 ^ local_res10[0]) & 0x100 | 2;
+      *in_RDX = uVar3;
+    }
+    LOCK();
+    uVar2 = *(uint *)this;
+    bVar5 = uVar4 == uVar2;
+    if (bVar5) {
+      *(uint *)this = uVar3;
+      uVar2 = uVar4;
+    }
+    UNLOCK();
+  } while (!bVar5);
+  if (((uVar4 & 2) != 0) ||
+     (g_enabledStateManager == (shutdown_aware_object<wil::details::EnabledStateManager>)0x0))
+  goto LAB_180111f86;
+  srwlock::lock_exclusive((srwlock *)&DAT_1803e1dd8);
+  if ((uVar1 == 0) || (uVar1 != DAT_1803e1dec)) {
+LAB_180111f78:
+    LOCK();
+    *(uint *)this = *(uint *)this & 0xfffffffd;
+    UNLOCK();
+  }
+  else {
+    local_28[0] = 3;
+    local_20 = this;
+    bVar5 = details_abi::heap_buffer::push_back((heap_buffer *)&DAT_1803e1e20,local_28,0x10);
+    if (!bVar5) goto LAB_180111f78;
+  }
+  unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>
+  ::
+  ~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>
+            (local_res18);
+LAB_180111f86:
+  if ((*in_RDX & 1) == 0) {
+    *in_RDX = *in_RDX ^ (*in_RDX ^ local_res10[0]) & 0x278;
+  }
+  return;
+}
+

```


## wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCurrentFeatureEnabledState

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|GetCurrentFeatureEnabledState|
|fullname|wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCurrentFeatureEnabledState|
|refcount|2|
|length|203|
|called|wil::details::WilApi_GetFeatureEnabledState|
|calling|wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState|
|paramcount|2|
|address|180111fac|
|sig|wil_details_FeatureStateCache __thiscall GetCurrentFeatureEnabledState(FeatureImpl<__WilFeatureTraits_Feature_704565565> * this, int * param_1)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCurrentFeatureEnabledState
+++ wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCurrentFeatureEnabledState
@@ -0,0 +1,34 @@
+
+/* private: union wil_details_FeatureStateCache __cdecl wil::details::FeatureImpl<struct
+   __WilFeatureTraits_Feature_704565565>::GetCurrentFeatureEnabledState(int * __ptr64) __ptr64 */
+
+int * __thiscall
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCurrentFeatureEnabledState
+          (FeatureImpl<__WilFeatureTraits_Feature_704565565> *this,int *param_1)
+
+{
+  FEATURE_ENABLED_STATE FVar1;
+  int *in_R8;
+  uint uVar2;
+  uint uVar3;
+  
+  FVar1 = WilApi_GetFeatureEnabledState(0x2e82114,3,in_R8);
+  uVar3 = 0;
+  param_1[0] = 0;
+  param_1[1] = 0;
+  uVar2 = (FVar1 & 3) << 5 ^
+          (-(uint)((FVar1 & 0x80) != 0) & 0x100 | -(uint)((FVar1 & 0x40) != 0) & 0x200);
+  *param_1 = uVar2;
+  if ((FVar1 & 0xffffff3f) == 0) {
+    uVar2 = uVar2 | 0x10;
+  }
+  else {
+    if ((FVar1 & 0xffffff3f) == 2) {
+      uVar3 = 0x10;
+    }
+    uVar2 = uVar3 | uVar2;
+  }
+  *param_1 = uVar2 >> 1 & 8 ^ uVar2;
+  return param_1;
+}
+

```


## wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::ReportUsage

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|ReportUsage|
|fullname|wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::ReportUsage|
|refcount|2|
|length|125|
|called|wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState<br>wil::details::ReportUsageToService|
|calling|wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::__private_IsEnabled|
|paramcount|4|
|address|180112080|
|sig|void __thiscall ReportUsage(FeatureImpl<__WilFeatureTraits_Feature_704565565> * this, bool param_1, ReportingKind param_2, __uint64 param_3)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::ReportUsage
+++ wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::ReportUsage
@@ -0,0 +1,31 @@
+
+/* public: void __cdecl wil::details::FeatureImpl<struct
+   __WilFeatureTraits_Feature_704565565>::ReportUsage(bool,enum wil::ReportingKind,unsigned __int64)
+   __ptr64 */
+
+void __thiscall
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::ReportUsage
+          (FeatureImpl<__WilFeatureTraits_Feature_704565565> *this,bool param_1,
+          ReportingKind param_2,__uint64 param_3)
+
+{
+  ulonglong *puVar1;
+  ulonglong uVar2;
+  undefined4 local_res8;
+  undefined1 local_resc;
+  __uint64 in_stack_ffffffffffffffe0;
+  
+  uVar2 = (ulonglong)*(uint *)this;
+  if ((*(uint *)this & 2) == 0) {
+    puVar1 = (ulonglong *)GetCachedFeatureEnabledState(this);
+    uVar2 = *puVar1;
+  }
+  local_res8 = 0;
+  local_resc = 2;
+  ReportUsageToService
+            ((wil_details_FeatureReportingCache *)(this + 8),0x2e82114,(uint)uVar2 >> 8 & 1,
+             (uint)(uVar2 >> 9) & 1,(FEATURE_LOGGED_TRAITS *)&local_res8,(uint)param_1,3,
+             in_stack_ffffffffffffffe0);
+  return;
+}
+

```


## wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::__private_IsEnabled

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|__private_IsEnabled|
|fullname|wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::__private_IsEnabled|
|refcount|2|
|length|56|
|called|wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::ReportUsage|
|calling|CConditionalExpression::~CConditionalExpression|
|paramcount|1|
|address|180112104|
|sig|bool __thiscall __private_IsEnabled(FeatureImpl<__WilFeatureTraits_Feature_704565565> * this)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::__private_IsEnabled
+++ wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::__private_IsEnabled
@@ -0,0 +1,20 @@
+
+/* public: bool __cdecl wil::details::FeatureImpl<struct
+   __WilFeatureTraits_Feature_704565565>::__private_IsEnabled(void) __ptr64 */
+
+bool __thiscall
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::__private_IsEnabled
+          (FeatureImpl<__WilFeatureTraits_Feature_704565565> *this)
+
+{
+  bool bVar1;
+  ReportingKind in_R8D;
+  __uint64 in_R9;
+  undefined4 local_res10;
+  
+  GetCachedFeatureEnabledState(this);
+  bVar1 = (bool)((byte)(local_res10 >> 3) & 1);
+  ReportUsage(this,bVar1,in_R8D,in_R9);
+  return bVar1;
+}
+

```


## wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|GetCachedFeatureEnabledState|
|fullname|wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState|
|refcount|3|
|length|267|
|called|wil::details::EnabledStateManager::EnsureSubscribedToFeatureConfigurationChangesImpl<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCurrentFeatureEnabledState<br>wil::details::unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>::~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_><br>wil::details_abi::heap_buffer::push_back<br>wil::srwlock::lock_exclusive|
|calling|wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::ReportUsage<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|paramcount|1|
|address|1801121ac|
|sig|wil_details_FeatureStateCache __thiscall GetCachedFeatureEnabledState(FeatureImpl<__WilFeatureTraits_Feature_1849091389> * this)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState
+++ wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState
@@ -0,0 +1,86 @@
+
+/* private: union wil_details_FeatureStateCache __cdecl wil::details::FeatureImpl<struct
+   __WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState(void) __ptr64 */
+
+void __thiscall
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState
+          (FeatureImpl<__WilFeatureTraits_Feature_1849091389> *this)
+
+{
+  uint uVar1;
+  uint uVar2;
+  uint uVar3;
+  shutdown_aware_object<wil::details::EnabledStateManager> *this_00;
+  uint uVar4;
+  uint *in_RDX;
+  bool bVar5;
+  int local_res8;
+  uint local_res10 [2];
+  unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>
+  local_res18 [16];
+  undefined4 local_28 [2];
+  FeatureImpl<__WilFeatureTraits_Feature_1849091389> *local_20;
+  
+  uVar1 = *(uint *)this;
+  *in_RDX = uVar1;
+  if (((byte)uVar1 & 3) == 3) {
+    return;
+  }
+  this_00 = (shutdown_aware_object<wil::details::EnabledStateManager> *)this;
+  uVar1 = DAT_1803e1dec;
+  if (DAT_1803e1dec == 0) {
+    this_00 = &g_enabledStateManager;
+    uVar1 = EnabledStateManager::EnsureSubscribedToFeatureConfigurationChangesImpl
+                      ((EnabledStateManager *)&g_enabledStateManager);
+  }
+  GetCurrentFeatureEnabledState
+            ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)this_00,(int *)local_res10);
+  uVar2 = *in_RDX;
+  do {
+    uVar4 = uVar2;
+    *in_RDX = uVar4;
+    uVar3 = uVar4;
+    if ((local_res8 != 0) && ((uVar4 & 1) == 0)) {
+      uVar3 = (uVar4 ^ local_res10[0]) & 0x278 ^ uVar4 | 1;
+      *in_RDX = uVar3;
+    }
+    if ((uVar4 & 2) == 0) {
+      uVar3 = uVar3 ^ (uVar3 ^ local_res10[0]) & 0x100 | 2;
+      *in_RDX = uVar3;
+    }
+    LOCK();
+    uVar2 = *(uint *)this;
+    bVar5 = uVar4 == uVar2;
+    if (bVar5) {
+      *(uint *)this = uVar3;
+      uVar2 = uVar4;
+    }
+    UNLOCK();
+  } while (!bVar5);
+  if (((uVar4 & 2) != 0) ||
+     (g_enabledStateManager == (shutdown_aware_object<wil::details::EnabledStateManager>)0x0))
+  goto LAB_18011229a;
+  srwlock::lock_exclusive((srwlock *)&DAT_1803e1dd8);
+  if ((uVar1 == 0) || (uVar1 != DAT_1803e1dec)) {
+LAB_18011228c:
+    LOCK();
+    *(uint *)this = *(uint *)this & 0xfffffffd;
+    UNLOCK();
+  }
+  else {
+    local_28[0] = 3;
+    local_20 = this;
+    bVar5 = details_abi::heap_buffer::push_back((heap_buffer *)&DAT_1803e1e20,local_28,0x10);
+    if (!bVar5) goto LAB_18011228c;
+  }
+  unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>
+  ::
+  ~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>
+            (local_res18);
+LAB_18011229a:
+  if ((*in_RDX & 1) == 0) {
+    *in_RDX = *in_RDX ^ (*in_RDX ^ local_res10[0]) & 0x278;
+  }
+  return;
+}
+

```


## wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCurrentFeatureEnabledState

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|GetCurrentFeatureEnabledState|
|fullname|wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCurrentFeatureEnabledState|
|refcount|2|
|length|203|
|called|wil::details::WilApi_GetFeatureEnabledState|
|calling|wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState|
|paramcount|2|
|address|1801122c0|
|sig|wil_details_FeatureStateCache __thiscall GetCurrentFeatureEnabledState(FeatureImpl<__WilFeatureTraits_Feature_1849091389> * this, int * param_1)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCurrentFeatureEnabledState
+++ wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCurrentFeatureEnabledState
@@ -0,0 +1,34 @@
+
+/* private: union wil_details_FeatureStateCache __cdecl wil::details::FeatureImpl<struct
+   __WilFeatureTraits_Feature_1849091389>::GetCurrentFeatureEnabledState(int * __ptr64) __ptr64 */
+
+int * __thiscall
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCurrentFeatureEnabledState
+          (FeatureImpl<__WilFeatureTraits_Feature_1849091389> *this,int *param_1)
+
+{
+  FEATURE_ENABLED_STATE FVar1;
+  int *in_R8;
+  uint uVar2;
+  uint uVar3;
+  
+  FVar1 = WilApi_GetFeatureEnabledState(0x2e5d305,3,in_R8);
+  uVar3 = 0;
+  param_1[0] = 0;
+  param_1[1] = 0;
+  uVar2 = (FVar1 & 3) << 5 ^
+          (-(uint)((FVar1 & 0x80) != 0) & 0x100 | -(uint)((FVar1 & 0x40) != 0) & 0x200);
+  *param_1 = uVar2;
+  if ((FVar1 & 0xffffff3f) == 0) {
+    uVar2 = uVar2 | 0x10;
+  }
+  else {
+    if ((FVar1 & 0xffffff3f) == 2) {
+      uVar3 = 0x10;
+    }
+    uVar2 = uVar3 | uVar2;
+  }
+  *param_1 = uVar2 >> 1 & 8 ^ uVar2;
+  return param_1;
+}
+

```


## wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::ReportUsage

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|ReportUsage|
|fullname|wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::ReportUsage|
|refcount|2|
|length|125|
|called|wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState<br>wil::details::ReportUsageToService|
|calling|wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|paramcount|4|
|address|180112394|
|sig|void __thiscall ReportUsage(FeatureImpl<__WilFeatureTraits_Feature_1849091389> * this, bool param_1, ReportingKind param_2, __uint64 param_3)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::ReportUsage
+++ wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::ReportUsage
@@ -0,0 +1,31 @@
+
+/* public: void __cdecl wil::details::FeatureImpl<struct
+   __WilFeatureTraits_Feature_1849091389>::ReportUsage(bool,enum wil::ReportingKind,unsigned
+   __int64) __ptr64 */
+
+void __thiscall
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::ReportUsage
+          (FeatureImpl<__WilFeatureTraits_Feature_1849091389> *this,bool param_1,
+          ReportingKind param_2,__uint64 param_3)
+
+{
+  ulonglong *puVar1;
+  ulonglong uVar2;
+  undefined4 local_res8;
+  undefined1 local_resc;
+  __uint64 in_stack_ffffffffffffffe0;
+  
+  uVar2 = (ulonglong)*(uint *)this;
+  if ((*(uint *)this & 2) == 0) {
+    puVar1 = (ulonglong *)GetCachedFeatureEnabledState(this);
+    uVar2 = *puVar1;
+  }
+  local_res8 = 0;
+  local_resc = 2;
+  ReportUsageToService
+            ((wil_details_FeatureReportingCache *)(this + 8),0x2e5d305,(uint)uVar2 >> 8 & 1,
+             (uint)(uVar2 >> 9) & 1,(FEATURE_LOGGED_TRAITS *)&local_res8,(uint)param_1,3,
+             in_stack_ffffffffffffffe0);
+  return;
+}
+

```


## wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|__private_IsEnabled|
|fullname|wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|refcount|207|
|length|56|
|called|wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::ReportUsage|
|calling|<details><summary>Expand for full list:<br>CBaseExpression::CalculateValue<br>CConditionalExpression::AddStackValueToSum<br>CConditionalExpression::CalculateConditionValue<br>CConditionalExpression::GetValue<br>CExpression::CalculateValueWorker<br>CExpressionValueStack::Absolute<br>CExpressionValueStack::Acos<br>CExpressionValueStack::Add<br>CExpressionValueStack::And<br>CExpressionValueStack::Asin<br>CExpressionValueStack::Atan</summary>CExpressionValueStack::Ceil<br>CExpressionValueStack::Clamp<br>CExpressionValueStack::ColorHsl<br>CExpressionValueStack::ColorLerpHsl<br>CExpressionValueStack::ColorLerpRgb<br>CExpressionValueStack::ColorRgb<br>CExpressionValueStack::Concatenate<br>CExpressionValueStack::Conditional<br>CExpressionValueStack::Distance<br>CExpressionValueStack::DistanceSquared<br>CExpressionValueStack::Divide<br>CExpressionValueStack::Equals<br>CExpressionValueStack::Floor<br>CExpressionValueStack::GreaterThan<br>CExpressionValueStack::GreaterThanEquals<br>CExpressionValueStack::Inverse<br>CExpressionValueStack::Length<br>CExpressionValueStack::LengthSquared<br>CExpressionValueStack::Lerp<br>CExpressionValueStack::LessThan<br>CExpressionValueStack::LessThanEquals<br>CExpressionValueStack::Ln<br>CExpressionValueStack::Log10<br>CExpressionValueStack::Matrix3x2<br>CExpressionValueStack::Matrix3x2FromRotation<br>CExpressionValueStack::Matrix3x2FromScale<br>CExpressionValueStack::Matrix3x2FromSkew<br>CExpressionValueStack::Matrix4x4<br>CExpressionValueStack::Matrix4x4FromAxisAngle<br>CExpressionValueStack::Matrix4x4FromPerspective<br>CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView<br>CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter<br>CExpressionValueStack::Matrix4x4FromQuaternion<br>CExpressionValueStack::Matrix4x4FromRotationX<br>CExpressionValueStack::Matrix4x4FromRotationY<br>CExpressionValueStack::Matrix4x4FromRotationZ<br>CExpressionValueStack::Matrix4x4FromScale<br>CExpressionValueStack::Matrix4x4FromTranslation<br>CExpressionValueStack::Matrix4x4FromYawPitchRoll<br>CExpressionValueStack::Max<br>CExpressionValueStack::Min<br>CExpressionValueStack::Modulus<br>CExpressionValueStack::Multiply<br>CExpressionValueStack::Negate<br>CExpressionValueStack::Normalize<br>CExpressionValueStack::Not<br>CExpressionValueStack::NotEquals<br>CExpressionValueStack::Or<br>CExpressionValueStack::PeekStackValue<br>CExpressionValueStack::Pow<br>CExpressionValueStack::Quaternion<br>CExpressionValueStack::QuaternionFromAxisAngle<br>CExpressionValueStack::QuaternionFromLerp<br>CExpressionValueStack::QuaternionFromRotationMatrix<br>CExpressionValueStack::QuaternionFromYawPitchRoll<br>CExpressionValueStack::Round<br>CExpressionValueStack::Scale<br>CExpressionValueStack::Slerp<br>CExpressionValueStack::Sqrt<br>CExpressionValueStack::Square<br>CExpressionValueStack::Subtract<br>CExpressionValueStack::Swizzle<br>CExpressionValueStack::Tan<br>CExpressionValueStack::TimeSpanFrom<br>CExpressionValueStack::ToDegrees<br>CExpressionValueStack::ToRadians<br>CExpressionValueStack::Transform<br>CExpressionValueStack::Vector2Dot<br>CExpressionValueStack::Vector2Transform<br>CExpressionValueStack::Vector2TransformNormal<br>CExpressionValueStack::Vector3<br>CExpressionValueStack::Vector3Cross<br>CExpressionValueStack::Vector3Dot<br>CExpressionValueStack::Vector3Transform<br>CExpressionValueStack::Vector3TransformNormal<br>CExpressionValueStack::Vector4<br>CExpressionValueStack::Vector4Dot<br>CExpressionValueStack::Vector4Transform<br>CKeyframeAnimation::ApplyPlaybackStateChanges<br>CKeyframeAnimation::ProcessSetBindingBroken<br>CNaturalAnimation::PeekStackValue<br>CNaturalAnimationScalarForceAdapater::Update<br>CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated<br>CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated</details>|
|paramcount|1|
|address|180112418|
|sig|bool __thiscall __private_IsEnabled(FeatureImpl<__WilFeatureTraits_Feature_1849091389> * this)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+++ wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
@@ -0,0 +1,20 @@
+
+/* public: bool __cdecl wil::details::FeatureImpl<struct
+   __WilFeatureTraits_Feature_1849091389>::__private_IsEnabled(void) __ptr64 */
+
+bool __thiscall
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+          (FeatureImpl<__WilFeatureTraits_Feature_1849091389> *this)
+
+{
+  bool bVar1;
+  ReportingKind in_R8D;
+  __uint64 in_R9;
+  undefined4 local_res10;
+  
+  GetCachedFeatureEnabledState(this);
+  bVar1 = (bool)((byte)(local_res10 >> 3) & 1);
+  ReportUsage(this,bVar1,in_R8D,in_R9);
+  return bVar1;
+}
+

```


## CPrimitiveGroup::ClearPrimitiveContent

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|ClearPrimitiveContent|
|fullname|CPrimitiveGroup::ClearPrimitiveContent|
|refcount|2|
|length|85|
|called||
|calling|CPrimitiveGroup::GenerateDrawList<br>CPrimitiveGroup::ResolveSharedMemoryBufferNew|
|paramcount|1|
|address|180112458|
|sig|void __thiscall ClearPrimitiveContent(CPrimitiveGroup * this)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- CPrimitiveGroup::ClearPrimitiveContent
+++ CPrimitiveGroup::ClearPrimitiveContent
@@ -0,0 +1,21 @@
+
+/* private: void __cdecl CPrimitiveGroup::ClearPrimitiveContent(void) __ptr64 */
+
+void __thiscall CPrimitiveGroup::ClearPrimitiveContent(CPrimitiveGroup *this)
+
+{
+  *(undefined4 *)(this + 0x21c) = 0xffffffff;
+  *(undefined8 *)(this + 400) = 0;
+  *(undefined8 *)(this + 0x1d8) = 0;
+  *(undefined8 *)(this + 0x1e0) = 0;
+  *(undefined8 *)(this + 0x1e8) = 0;
+  *(undefined8 *)(this + 0x1f0) = 0;
+  *(undefined8 *)(this + 0x1f8) = 0;
+  *(undefined8 *)(this + 0x200) = 0;
+  *(undefined8 *)(this + 0x208) = 0;
+  this[0x220] = (CPrimitiveGroup)0x0;
+  *(undefined8 *)(this + 0x214) = 0;
+  *(undefined4 *)(this + 0x210) = 0;
+  return;
+}
+

```


## wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|GetCachedFeatureEnabledState|
|fullname|wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState|
|refcount|3|
|length|267|
|called|wil::details::EnabledStateManager::EnsureSubscribedToFeatureConfigurationChangesImpl<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCurrentFeatureEnabledState<br>wil::details::unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>::~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_><br>wil::details_abi::heap_buffer::push_back<br>wil::srwlock::lock_exclusive|
|calling|wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::ReportUsage<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled|
|paramcount|1|
|address|1801124b4|
|sig|wil_details_FeatureStateCache __thiscall GetCachedFeatureEnabledState(FeatureImpl<__WilFeatureTraits_Feature_2986246461> * this)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState
+++ wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState
@@ -0,0 +1,86 @@
+
+/* private: union wil_details_FeatureStateCache __cdecl wil::details::FeatureImpl<struct
+   __WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState(void) __ptr64 */
+
+void __thiscall
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState
+          (FeatureImpl<__WilFeatureTraits_Feature_2986246461> *this)
+
+{
+  uint uVar1;
+  uint uVar2;
+  uint uVar3;
+  shutdown_aware_object<wil::details::EnabledStateManager> *this_00;
+  uint uVar4;
+  uint *in_RDX;
+  bool bVar5;
+  int local_res8;
+  uint local_res10 [2];
+  unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>
+  local_res18 [16];
+  undefined4 local_28 [2];
+  FeatureImpl<__WilFeatureTraits_Feature_2986246461> *local_20;
+  
+  uVar1 = *(uint *)this;
+  *in_RDX = uVar1;
+  if (((byte)uVar1 & 3) == 3) {
+    return;
+  }
+  this_00 = (shutdown_aware_object<wil::details::EnabledStateManager> *)this;
+  uVar1 = DAT_1803e1dec;
+  if (DAT_1803e1dec == 0) {
+    this_00 = &g_enabledStateManager;
+    uVar1 = EnabledStateManager::EnsureSubscribedToFeatureConfigurationChangesImpl
+                      ((EnabledStateManager *)&g_enabledStateManager);
+  }
+  GetCurrentFeatureEnabledState
+            ((FeatureImpl<__WilFeatureTraits_Feature_2986246461> *)this_00,(int *)local_res10);
+  uVar2 = *in_RDX;
+  do {
+    uVar4 = uVar2;
+    *in_RDX = uVar4;
+    uVar3 = uVar4;
+    if ((local_res8 != 0) && ((uVar4 & 1) == 0)) {
+      uVar3 = (uVar4 ^ local_res10[0]) & 0x278 ^ uVar4 | 1;
+      *in_RDX = uVar3;
+    }
+    if ((uVar4 & 2) == 0) {
+      uVar3 = uVar3 ^ (uVar3 ^ local_res10[0]) & 0x100 | 2;
+      *in_RDX = uVar3;
+    }
+    LOCK();
+    uVar2 = *(uint *)this;
+    bVar5 = uVar4 == uVar2;
+    if (bVar5) {
+      *(uint *)this = uVar3;
+      uVar2 = uVar4;
+    }
+    UNLOCK();
+  } while (!bVar5);
+  if (((uVar4 & 2) != 0) ||
+     (g_enabledStateManager == (shutdown_aware_object<wil::details::EnabledStateManager>)0x0))
+  goto LAB_1801125a2;
+  srwlock::lock_exclusive((srwlock *)&DAT_1803e1dd8);
+  if ((uVar1 == 0) || (uVar1 != DAT_1803e1dec)) {
+LAB_180112594:
+    LOCK();
+    *(uint *)this = *(uint *)this & 0xfffffffd;
+    UNLOCK();
+  }
+  else {
+    local_28[0] = 3;
+    local_20 = this;
+    bVar5 = details_abi::heap_buffer::push_back((heap_buffer *)&DAT_1803e1e20,local_28,0x10);
+    if (!bVar5) goto LAB_180112594;
+  }
+  unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>
+  ::
+  ~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>
+            (local_res18);
+LAB_1801125a2:
+  if ((*in_RDX & 1) == 0) {
+    *in_RDX = *in_RDX ^ (*in_RDX ^ local_res10[0]) & 0x278;
+  }
+  return;
+}
+

```


## wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCurrentFeatureEnabledState

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|GetCurrentFeatureEnabledState|
|fullname|wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCurrentFeatureEnabledState|
|refcount|2|
|length|203|
|called|wil::details::WilApi_GetFeatureEnabledState|
|calling|wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState|
|paramcount|2|
|address|1801125c8|
|sig|wil_details_FeatureStateCache __thiscall GetCurrentFeatureEnabledState(FeatureImpl<__WilFeatureTraits_Feature_2986246461> * this, int * param_1)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCurrentFeatureEnabledState
+++ wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCurrentFeatureEnabledState
@@ -0,0 +1,34 @@
+
+/* private: union wil_details_FeatureStateCache __cdecl wil::details::FeatureImpl<struct
+   __WilFeatureTraits_Feature_2986246461>::GetCurrentFeatureEnabledState(int * __ptr64) __ptr64 */
+
+int * __thiscall
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCurrentFeatureEnabledState
+          (FeatureImpl<__WilFeatureTraits_Feature_2986246461> *this,int *param_1)
+
+{
+  FEATURE_ENABLED_STATE FVar1;
+  int *in_R8;
+  uint uVar2;
+  uint uVar3;
+  
+  FVar1 = WilApi_GetFeatureEnabledState(0x2fc2132,3,in_R8);
+  uVar3 = 0;
+  param_1[0] = 0;
+  param_1[1] = 0;
+  uVar2 = (FVar1 & 3) << 5 ^
+          (-(uint)((FVar1 & 0x80) != 0) & 0x100 | -(uint)((FVar1 & 0x40) != 0) & 0x200);
+  *param_1 = uVar2;
+  if ((FVar1 & 0xffffff3f) == 0) {
+    uVar2 = uVar2 | 0x10;
+  }
+  else {
+    if ((FVar1 & 0xffffff3f) == 2) {
+      uVar3 = 0x10;
+    }
+    uVar2 = uVar3 | uVar2;
+  }
+  *param_1 = uVar2 >> 1 & 8 ^ uVar2;
+  return param_1;
+}
+

```


## wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::ReportUsage

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|ReportUsage|
|fullname|wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::ReportUsage|
|refcount|2|
|length|125|
|called|wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState<br>wil::details::ReportUsageToService|
|calling|wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled|
|paramcount|4|
|address|18011269c|
|sig|void __thiscall ReportUsage(FeatureImpl<__WilFeatureTraits_Feature_2986246461> * this, bool param_1, ReportingKind param_2, __uint64 param_3)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::ReportUsage
+++ wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::ReportUsage
@@ -0,0 +1,31 @@
+
+/* public: void __cdecl wil::details::FeatureImpl<struct
+   __WilFeatureTraits_Feature_2986246461>::ReportUsage(bool,enum wil::ReportingKind,unsigned
+   __int64) __ptr64 */
+
+void __thiscall
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::ReportUsage
+          (FeatureImpl<__WilFeatureTraits_Feature_2986246461> *this,bool param_1,
+          ReportingKind param_2,__uint64 param_3)
+
+{
+  ulonglong *puVar1;
+  ulonglong uVar2;
+  undefined4 local_res8;
+  undefined1 local_resc;
+  __uint64 in_stack_ffffffffffffffe0;
+  
+  uVar2 = (ulonglong)*(uint *)this;
+  if ((*(uint *)this & 2) == 0) {
+    puVar1 = (ulonglong *)GetCachedFeatureEnabledState(this);
+    uVar2 = *puVar1;
+  }
+  local_res8 = 0;
+  local_resc = 2;
+  ReportUsageToService
+            ((wil_details_FeatureReportingCache *)(this + 8),0x2fc2132,(uint)uVar2 >> 8 & 1,
+             (uint)(uVar2 >> 9) & 1,(FEATURE_LOGGED_TRAITS *)&local_res8,(uint)param_1,3,
+             in_stack_ffffffffffffffe0);
+  return;
+}
+

```


## CPrimitiveGroup::ResolveSharedMemoryBufferNew

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|ResolveSharedMemoryBufferNew|
|fullname|CPrimitiveGroup::ResolveSharedMemoryBufferNew|
|refcount|2|
|length|552|
|called|CPrimitiveGroup::BuildHeatMap<br>CPrimitiveGroup::ClearPrimitiveContent<br>CSharedSectionBase::ResolveAllocation<br>ReleaseInterface<ID2D1Geometry>|
|calling|CPrimitiveGroup::ProcessAddPrimitives|
|paramcount|1|
|address|180112720|
|sig|void __thiscall ResolveSharedMemoryBufferNew(CPrimitiveGroup * this)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- CPrimitiveGroup::ResolveSharedMemoryBufferNew
+++ CPrimitiveGroup::ResolveSharedMemoryBufferNew
@@ -0,0 +1,131 @@
+
+/* private: void __cdecl CPrimitiveGroup::ResolveSharedMemoryBufferNew(void) __ptr64 */
+
+void __thiscall CPrimitiveGroup::ResolveSharedMemoryBufferNew(CPrimitiveGroup *this)
+
+{
+  ulonglong uVar1;
+  undefined8 uVar2;
+  undefined1 auVar3 [16];
+  undefined1 auVar4 [16];
+  undefined4 uVar5;
+  CPrimitiveGroup CVar6;
+  CPrimitiveGroup CVar7;
+  CPrimitiveGroup CVar8;
+  CPrimitiveGroup CVar9;
+  CPrimitiveGroup CVar10;
+  CPrimitiveGroup CVar11;
+  CPrimitiveGroup CVar12;
+  CPrimitiveGroup CVar13;
+  CPrimitiveGroup CVar14;
+  CPrimitiveGroup CVar15;
+  CPrimitiveGroup CVar16;
+  CPrimitiveGroup CVar17;
+  CPrimitiveGroup CVar18;
+  CPrimitiveGroup CVar19;
+  CPrimitiveGroup CVar20;
+  CPrimitiveGroup CVar21;
+  uint uVar22;
+  undefined1 (*pauVar23) [16];
+  int iVar24;
+  ulonglong uVar25;
+  uint uVar26;
+  ulonglong uVar27;
+  ulonglong uVar28;
+  ulonglong uVar29;
+  undefined4 local_28;
+  undefined4 uStack_24;
+  
+  ReleaseInterface<ID2D1Geometry>((ID2D1Geometry **)(this + 0x58));
+  ReleaseInterface<ID2D1Geometry>((ID2D1Geometry **)(this + 0x60));
+  uVar25 = (ulonglong)*(uint *)(this + 400);
+  this[0x68] = (CPrimitiveGroup)0x0;
+  pauVar23 = CSharedSectionBase::ResolveAllocation
+                       (*(CSharedSectionBase **)(this + 0x188),(ulonglong)*(uint *)(this + 0x194),
+                        uVar25);
+  if (pauVar23 != (undefined1 (*) [16])0x0) {
+    auVar3 = pauVar23[1];
+    uVar5 = *(undefined4 *)(pauVar23[3] + 8);
+    auVar4 = *pauVar23;
+    uVar2 = *(undefined8 *)pauVar23[3];
+    CVar6 = *(CPrimitiveGroup *)(pauVar23 + 2);
+    CVar7 = *(CPrimitiveGroup *)(pauVar23[2] + 1);
+    CVar8 = *(CPrimitiveGroup *)(pauVar23[2] + 2);
+    CVar9 = *(CPrimitiveGroup *)(pauVar23[2] + 3);
+    CVar10 = *(CPrimitiveGroup *)(pauVar23[2] + 4);
+    CVar11 = *(CPrimitiveGroup *)(pauVar23[2] + 5);
+    CVar12 = *(CPrimitiveGroup *)(pauVar23[2] + 6);
+    CVar13 = *(CPrimitiveGroup *)(pauVar23[2] + 7);
+    CVar14 = *(CPrimitiveGroup *)(pauVar23[2] + 8);
+    CVar15 = *(CPrimitiveGroup *)(pauVar23[2] + 9);
+    CVar16 = *(CPrimitiveGroup *)(pauVar23[2] + 10);
+    CVar17 = *(CPrimitiveGroup *)(pauVar23[2] + 0xb);
+    CVar18 = *(CPrimitiveGroup *)(pauVar23[2] + 0xc);
+    CVar19 = *(CPrimitiveGroup *)(pauVar23[2] + 0xd);
+    CVar20 = *(CPrimitiveGroup *)(pauVar23[2] + 0xe);
+    CVar21 = *(CPrimitiveGroup *)(pauVar23[2] + 0xf);
+    uVar29 = auVar3._0_8_ >> 0x20;
+    uVar22 = auVar3._0_4_;
+    uVar27 = auVar4._8_8_ >> 0x20;
+    uVar28 = (ulonglong)uVar22 + 0x3c;
+    if ((((0x3b < uVar28) && (uVar1 = uVar27 + uVar28, uVar28 <= uVar1)) &&
+        (uVar28 = uVar29 + uVar1, uVar1 <= uVar28)) && (uVar28 <= uVar25)) {
+      uVar26 = auVar4._12_4_;
+      iVar24 = (int)(uVar27 * 0xbacf914d >> 0x20);
+      uVar25 = (ulonglong)(iVar24 + (uVar26 - iVar24 >> 1) >> 7);
+      uVar28 = auVar3._8_4_ + uVar25;
+      if ((uVar25 <= uVar28) &&
+         ((auVar3._12_4_ == 0xffffffff || ((0x93 < uVar26 && (auVar3._12_4_ <= uVar26 - 0x94)))))) {
+        *(undefined1 (*) [16])(this + 0x198) = auVar4;
+        *(ulonglong *)(this + 0x1e0) = (ulonglong)uVar22;
+        *(undefined1 (*) [16])(this + 0x1a8) = auVar3;
+        *(undefined1 **)(this + 0x1d8) = pauVar23[3] + 0xc;
+        *(undefined1 **)(this + 0x1e8) = pauVar23[3] + (ulonglong)uVar22 + 0xc;
+        this[0x1b8] = CVar6;
+        this[0x1b9] = CVar7;
+        this[0x1ba] = CVar8;
+        this[0x1bb] = CVar9;
+        this[0x1bc] = CVar10;
+        this[0x1bd] = CVar11;
+        this[0x1be] = CVar12;
+        this[0x1bf] = CVar13;
+        this[0x1c0] = CVar14;
+        this[0x1c1] = CVar15;
+        this[0x1c2] = CVar16;
+        this[0x1c3] = CVar17;
+        this[0x1c4] = CVar18;
+        this[0x1c5] = CVar19;
+        this[0x1c6] = CVar20;
+        this[0x1c7] = CVar21;
+        *(ulonglong *)(this + 0x1f0) = uVar27;
+        *(undefined1 **)(this + 0x1f8) = pauVar23[3] + (uVar1 - 0x30);
+        uStack_24 = (undefined4)((ulonglong)uVar2 >> 0x20);
+        this[0x21c] = CVar10;
+        this[0x21d] = CVar11;
+        this[0x21e] = CVar12;
+        this[0x21f] = CVar13;
+        local_28 = (undefined4)uVar2;
+        *(undefined4 *)(this + 0x210) = local_28;
+        *(undefined8 *)(this + 0x1c8) = uVar2;
+        this[0x220] = (CPrimitiveGroup)(CVar14 != (CPrimitiveGroup)0x0);
+        this[0x20c] = CVar18;
+        this[0x20d] = CVar19;
+        this[0x20e] = CVar20;
+        this[0x20f] = CVar21;
+        *(undefined4 *)(this + 0x214) = uStack_24;
+        *(undefined4 *)(this + 0x218) = uVar5;
+        *(undefined4 *)(this + 0x1d0) = uVar5;
+        *(ulonglong *)(this + 0x200) = uVar29;
+        *(int *)(this + 0x208) = (int)uVar28;
+        goto LAB_180112918;
+      }
+    }
+  }
+  ClearPrimitiveContent(this);
+LAB_180112918:
+  if (this[0x221] != (CPrimitiveGroup)0x0) {
+    BuildHeatMap(this);
+  }
+  return;
+}
+

```


## wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|__private_IsEnabled|
|fullname|wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled|
|refcount|5|
|length|56|
|called|wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::ReportUsage|
|calling|CCommandBuffer::Initialize<br>CPrimitiveGroup::GenerateDrawList<br>CPrimitiveGroup::ProcessAddPrimitives|
|paramcount|1|
|address|180112c18|
|sig|bool __thiscall __private_IsEnabled(FeatureImpl<__WilFeatureTraits_Feature_2986246461> * this)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled
+++ wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled
@@ -0,0 +1,20 @@
+
+/* public: bool __cdecl wil::details::FeatureImpl<struct
+   __WilFeatureTraits_Feature_2986246461>::__private_IsEnabled(void) __ptr64 */
+
+bool __thiscall
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled
+          (FeatureImpl<__WilFeatureTraits_Feature_2986246461> *this)
+
+{
+  bool bVar1;
+  ReportingKind in_R8D;
+  __uint64 in_R9;
+  undefined4 local_res10;
+  
+  GetCachedFeatureEnabledState(this);
+  bVar1 = (bool)((byte)(local_res10 >> 3) & 1);
+  ReportUsage(this,bVar1,in_R8D,in_R9);
+  return bVar1;
+}
+

```


## SAFE_DELETE_ARRAY<D2D1_COMPOSITOR_DRAWING_STATE>

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|SAFE_DELETE_ARRAY<D2D1_COMPOSITOR_DRAWING_STATE>|
|fullname|SAFE_DELETE_ARRAY<D2D1_COMPOSITOR_DRAWING_STATE>|
|refcount|2|
|length|32|
|called|DefaultHeap::Free|
|calling|CCommandBuffer::Initialize|
|paramcount|1|
|address|180113ff0|
|sig|void __cdecl SAFE_DELETE_ARRAY<D2D1_COMPOSITOR_DRAWING_STATE>(D2D1_COMPOSITOR_DRAWING_STATE * * param_1)|
|sym_type|Function|
|sym_source|ANALYSIS|
|external|False|


```diff
--- SAFE_DELETE_ARRAY<D2D1_COMPOSITOR_DRAWING_STATE>
+++ SAFE_DELETE_ARRAY<D2D1_COMPOSITOR_DRAWING_STATE>
@@ -0,0 +1,15 @@
+
+/* void __cdecl SAFE_DELETE_ARRAY<struct D2D1_COMPOSITOR_DRAWING_STATE>(struct
+   D2D1_COMPOSITOR_DRAWING_STATE * __ptr64 & __ptr64) */
+
+void __cdecl
+SAFE_DELETE_ARRAY<D2D1_COMPOSITOR_DRAWING_STATE>(D2D1_COMPOSITOR_DRAWING_STATE **param_1)
+
+{
+  if (*param_1 != (D2D1_COMPOSITOR_DRAWING_STATE *)0x0) {
+    DefaultHeap::Free(*param_1);
+    *param_1 = (D2D1_COMPOSITOR_DRAWING_STATE *)0x0;
+  }
+  return;
+}
+

```


## `dynamic_atexit_destructor_for_'CExpressionValueStack::s_emptyValue''

### Function Meta



|Key|dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|name|s_emptyValue''|
|fullname|`dynamic_atexit_destructor_for_'CExpressionValueStack::s_emptyValue''|
|refcount|2|
|length|12|
|called|Microsoft::WRL::ComPtr<CPathData>::InternalRelease|
|calling||
|paramcount|0|
|address|18011ce70|
|sig|undefined s_emptyValue''(void)|
|sym_type|Function|
|sym_source|IMPORTED|
|external|False|


```diff
--- `dynamic_atexit_destructor_for_'CExpressionValueStack::s_emptyValue''
+++ `dynamic_atexit_destructor_for_'CExpressionValueStack::s_emptyValue''
@@ -0,0 +1,8 @@
+
+void `dynamic_atexit_destructor_for_'CExpressionValueStack::s_emptyValue__(void)
+
+{
+  Microsoft::WRL::ComPtr<CPathData>::InternalRelease((ComPtr<CPathData> *)&DAT_1803e2180);
+  return;
+}
+

```


# Modified


*Modified functions contain code changes*
## CExpressionValueStack::Sqrt

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.38|
|i_ratio|0.35|
|m_ratio|0.8|
|b_ratio|0.74|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Sqrt|Sqrt|
|fullname|CExpressionValueStack::Sqrt|CExpressionValueStack::Sqrt|
|refcount|2|2|
|`length`|152|231|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>sqrtf|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>sqrtf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180258ce0|18025cac8|
|sig|long __thiscall Sqrt(CExpressionValueStack * this)|long __thiscall Sqrt(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Sqrt Called Diff


```diff
--- CExpressionValueStack::Sqrt called
+++ CExpressionValueStack::Sqrt called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Sqrt Calling Diff


```diff
--- CExpressionValueStack::Sqrt calling
+++ CExpressionValueStack::Sqrt calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Sqrt Diff


```diff
--- CExpressionValueStack::Sqrt
+++ CExpressionValueStack::Sqrt
@@ -1,34 +1,54 @@
 
 /* public: long __cdecl CExpressionValueStack::Sqrt(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Sqrt(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  float fVar2;
-  uint uVar3;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  float fVar5;
+  uint uVar6;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar3 = 0x1238;
+    uVar6 = 0x1248;
   }
   else {
-    pfVar1 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar1[0x12] == 2.52234e-44) {
-      if (0.0 <= *pfVar1) {
-        pfVar1[0x12] = 2.52234e-44;
-        fVar2 = sqrtf(*pfVar1);
-        *pfVar1 = fVar2;
-        *(undefined1 *)(pfVar1 + 0x13) = 1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+      if (0.0 <= *(float *)pCVar4) {
+        *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+        fVar5 = sqrtf(*(float *)pCVar4);
+        *(float *)pCVar4 = fVar5;
+        pCVar4[0x4c] = (CExpressionValue)0x1;
         return 0;
       }
-      uVar3 = 0x124e;
+      uVar6 = 0x125e;
     }
     else {
-      uVar3 = 0x125d;
+      uVar6 = 0x126d;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar3,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.23|
|i_ratio|0.06|
|m_ratio|0.62|
|b_ratio|0.31|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix4x4FromPerspectiveOffCenter|Matrix4x4FromPerspectiveOffCenter|
|fullname|CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter|CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter|
|refcount|2|2|
|`length`|474|904|
|`called`|D2DMatrixPerspectiveOffCenter<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrixPerspectiveOffCenter<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180256c9c|1802598dc|
|sig|long __thiscall Matrix4x4FromPerspectiveOffCenter(CExpressionValueStack * this)|long __thiscall Matrix4x4FromPerspectiveOffCenter(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter Called Diff


```diff
--- CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter called
+++ CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter Calling Diff


```diff
--- CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter calling
+++ CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter Diff


```diff
--- CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter
+++ CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter
@@ -1,96 +1,177 @@
 
 /* public: long __cdecl CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter(void) __ptr64 */
 
 long __thiscall
 CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
-  ulonglong uVar2;
-  D2DMatrix *pDVar3;
-  D2DMatrix *pDVar4;
-  longlong lVar5;
-  longlong lVar6;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  D2DMatrix *pDVar5;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar6;
+  CExpressionValue *local_res8;
+  CExpressionValue *local_res10;
+  CExpressionValue *local_res18;
+  CExpressionValue *local_res20;
   uint uVar7;
-  undefined8 local_48;
-  undefined8 uStack_40;
-  undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
+  undefined8 local_88;
+  undefined8 uStack_80;
+  undefined8 local_78;
+  undefined8 uStack_70;
+  undefined8 local_68;
+  undefined8 uStack_60;
+  undefined8 local_58;
+  undefined8 uStack_50;
   
-  uVar7 = *(uint *)(this + 0x10);
-  if (uVar7 < 6) {
-    uVar7 = 0x1a5b;
-    pDVar4 = (D2DMatrix *)this;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 6) {
+    uVar7 = 0x1a6b;
   }
   else {
-    lVar5 = *(longlong *)(this + 0x18);
-    uVar2 = (ulonglong)(uVar7 - 6);
-    pDVar4 = (D2DMatrix *)0x12;
-    lVar6 = uVar2 * 10;
-    if (*(int *)(lVar5 + 0x48 + uVar2 * 0x50) == 0x12) {
-      if (*(int *)(lVar5 + 0x48 + (ulonglong)(uVar7 - 5) * 0x50) == 0x12) {
-        if (*(int *)(lVar5 + 0x48 + (ulonglong)(uVar7 - 4) * 0x50) == 0x12) {
-          if (*(int *)(lVar5 + 0x48 + (ulonglong)(uVar7 - 3) * 0x50) == 0x12) {
-            if (*(int *)(lVar5 + 0x48 + (ulonglong)(uVar7 - 2) * 0x50) == 0x12) {
-              if (*(int *)(lVar5 + 0x48 + (ulonglong)(uVar7 - 1) * 0x50) == 0x12) {
-                pDVar4 = (D2DMatrix *)&local_48;
-                pDVar3 = D2DMatrixPerspectiveOffCenter
-                                   (pDVar4,*(float *)(lVar5 + uVar2 * 0x50),
-                                    *(float *)(lVar5 + (ulonglong)(uVar7 - 5) * 0x50),
-                                    *(float *)(lVar5 + (ulonglong)(uVar7 - 4) * 0x50),
-                                    *(float *)(lVar5 + (ulonglong)(uVar7 - 3) * 0x50),
-                                    *(float *)(lVar5 + (ulonglong)(uVar7 - 2) * 0x50),
-                                    *(float *)(lVar5 + (ulonglong)(uVar7 - 1) * 0x50));
-                if (pDVar3 != (D2DMatrix *)0x0) {
-                  *(undefined4 *)(lVar5 + 0x48 + lVar6 * 8) = 0x109;
-                  puVar1 = (undefined8 *)(lVar5 + lVar6 * 8);
-                  *puVar1 = local_48;
-                  puVar1[1] = uStack_40;
-                  puVar1 = (undefined8 *)(lVar5 + 0x10 + lVar6 * 8);
-                  *puVar1 = local_38;
-                  puVar1[1] = uStack_30;
-                  puVar1 = (undefined8 *)(lVar5 + 0x20 + lVar6 * 8);
-                  *puVar1 = local_28;
-                  puVar1[1] = uStack_20;
-                  puVar1 = (undefined8 *)(lVar5 + 0x30 + lVar6 * 8);
-                  *puVar1 = local_18;
-                  puVar1[1] = uStack_10;
-                  *(undefined1 *)(lVar5 + 0x4c + lVar6 * 8) = 1;
-                  *(int *)(this + 0x10) = *(int *)(this + 0x10) + -5;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 6)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_88)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_88);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 6);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 5)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_88)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_88);
+      local_res8 = &s_emptyValue;
+    }
+    else {
+      local_res8 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 5);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 4)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_88)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_88);
+      local_res10 = &s_emptyValue;
+    }
+    else {
+      local_res10 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 4);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_88)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_88);
+      local_res18 = &s_emptyValue;
+    }
+    else {
+      local_res18 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 3);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_88)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_88);
+      local_res20 = &s_emptyValue;
+    }
+    else {
+      local_res20 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_88)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this = (CExpressionValueStack *)&local_88;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+      this = (CExpressionValueStack *)this_00;
+    }
+    if (*(float *)(pCVar3 + 0x48) == 2.52234e-44) {
+      if (*(float *)(local_res8 + 0x48) == 2.52234e-44) {
+        if (*(float *)(local_res10 + 0x48) == 2.52234e-44) {
+          this = (CExpressionValueStack *)local_res18;
+          if (*(int *)(local_res18 + 0x48) == 0x12) {
+            if (*(float *)(local_res20 + 0x48) == 2.52234e-44) {
+              if (*(float *)(pCVar6 + 0x48) == 2.52234e-44) {
+                this = (CExpressionValueStack *)&local_88;
+                pDVar5 = D2DMatrixPerspectiveOffCenter
+                                   ((D2DMatrix *)this,*(float *)pCVar3,*(float *)local_res8,
+                                    *(float *)local_res10,*(float *)local_res18,
+                                    *(float *)local_res20,*(float *)pCVar6);
+                if (pDVar5 != (D2DMatrix *)0x0) {
+                  *(float *)(pCVar3 + 0x48) = 3.71344e-43;
+                  *(undefined8 *)pCVar3 = local_88;
+                  *(undefined8 *)(pCVar3 + 8) = uStack_80;
+                  *(undefined8 *)(pCVar3 + 0x10) = local_78;
+                  *(undefined8 *)(pCVar3 + 0x18) = uStack_70;
+                  *(undefined8 *)(pCVar3 + 0x20) = local_68;
+                  *(undefined8 *)(pCVar3 + 0x28) = uStack_60;
+                  *(undefined8 *)(pCVar3 + 0x30) = local_58;
+                  *(undefined8 *)(pCVar3 + 0x38) = uStack_50;
+                  pCVar3[0x4c] = (CExpressionValue)0x1;
+                  *(uint *)pCVar1 = *(uint *)pCVar1 - 5;
                   return 0;
                 }
-                uVar7 = 0x1a86;
+                uVar7 = 0x1a96;
               }
               else {
-                uVar7 = 0x1a6a;
+                uVar7 = 0x1a7a;
               }
             }
             else {
-              uVar7 = 0x1a69;
+              uVar7 = 0x1a79;
             }
           }
           else {
-            uVar7 = 0x1a68;
+            uVar7 = 0x1a78;
           }
         }
         else {
-          uVar7 = 0x1a67;
+          uVar7 = 0x1a77;
         }
       }
       else {
-        uVar7 = 0x1a66;
+        uVar7 = 0x1a76;
       }
     }
     else {
-      uVar7 = 0x1a65;
+      uVar7 = 0x1a75;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pDVar4,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CKeyframeAnimation::ApplyPlaybackStateChanges

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.45|
|i_ratio|0.23|
|m_ratio|0.99|
|b_ratio|0.12|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|ApplyPlaybackStateChanges|ApplyPlaybackStateChanges|
|fullname|CKeyframeAnimation::ApplyPlaybackStateChanges|CKeyframeAnimation::ApplyPlaybackStateChanges|
|`refcount`|9|7|
|`length`|2303|2250|
|`called`|<details><summary>Expand for full list:<br>CBaseExpression::NotifyAnimationCompleted<br>CBaseExpression::SetOutputValue<br>CExpressionManager::GetGlobalPlaybackRate<br>CKeyframeAnimation::GetTimePositionWithinIteration<br>CKeyframeAnimation::Pause<br>CKeyframeAnimation::Play<br>CKeyframeAnimation::Reset<br>CKeyframeAnimation::TimeSeek<br>CKeyframeAnimation::UpdateTime<br>FUN_18013f0dc<br>KeyframeSequence::ConfigureTimer</summary>MilInstrumentationCheckHR_MaybeFailFast<br>ModuleFailFastForHRESULT<br>TimeDelta::ToMilliseconds<br>fmod<br>wil::details::in1diag3::Return_Hr</details>|<details><summary>Expand for full list:<br>CBaseExpression::NotifyAnimationCompleted<br>CBaseExpression::SetOutputValue<br>CExpressionManager::GetGlobalPlaybackRate<br>CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>CKeyframeAnimation::GetTimePositionWithinIteration<br>CKeyframeAnimation::Pause<br>CKeyframeAnimation::Play<br>CKeyframeAnimation::Reset<br>CKeyframeAnimation::TimeSeek</summary>CKeyframeAnimation::UpdateTime<br>DynArray<CExpressionValue,1>::operator[]<br>KeyframeSequence::ConfigureTimer<br>MilInstrumentationCheckHR_MaybeFailFast<br>ModuleFailFastForHRESULT<br>TimeDelta::ToMilliseconds<br>fmod<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled<br>wil::details::in1diag3::Return_Hr</details>|
|calling|CKeyframeAnimation::CalculateValueWorker|CKeyframeAnimation::CalculateValueWorker|
|paramcount|2|2|
|`address`|18005bca0|180056fb0|
|sig|long __thiscall ApplyPlaybackStateChanges(CKeyframeAnimation * this, CExpressionValueStack * param_1)|long __thiscall ApplyPlaybackStateChanges(CKeyframeAnimation * this, CExpressionValueStack * param_1)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CKeyframeAnimation::ApplyPlaybackStateChanges Called Diff


```diff
--- CKeyframeAnimation::ApplyPlaybackStateChanges called
+++ CKeyframeAnimation::ApplyPlaybackStateChanges called
@@ -3,0 +4,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -10 +13 @@
-FUN_18013f0dc
+DynArray<CExpressionValue,1>::operator[]
@@ -15,0 +19 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CKeyframeAnimation::ApplyPlaybackStateChanges Diff


```diff
--- CKeyframeAnimation::ApplyPlaybackStateChanges
+++ CKeyframeAnimation::ApplyPlaybackStateChanges
@@ -1,315 +1,331 @@
 
 /* private: long __cdecl CKeyframeAnimation::ApplyPlaybackStateChanges(class CExpressionValueStack *
    __ptr64) __ptr64 */
 
 long __thiscall
 CKeyframeAnimation::ApplyPlaybackStateChanges
           (CKeyframeAnimation *this,CExpressionValueStack *param_1)
 
 {
   byte *pbVar1;
   CKeyframeAnimation CVar2;
   int iVar3;
   longlong lVar4;
   undefined1 auVar5 [16];
   undefined1 auVar6 [16];
-  int iVar7;
-  long lVar8;
+  bool bVar7;
+  int iVar8;
   long lVar9;
-  ulonglong uVar10;
-  byte bVar11;
-  int iVar12;
-  uint uVar13;
-  CKeyframeAnimation *pCVar14;
-  KeyframeSequence *pKVar15;
-  undefined4 uVar16;
-  uint uVar17;
-  float fVar18;
-  float fVar19;
+  long lVar10;
+  CExpressionValue *pCVar11;
+  ulonglong uVar12;
+  byte bVar13;
+  int iVar14;
+  uint uVar15;
+  CKeyframeAnimation *pCVar16;
+  KeyframeSequence *pKVar17;
+  uint uVar18;
+  CExpressionValue *pCVar19;
   float extraout_XMM0_Da;
-  double dVar20;
-  float fVar21;
+  float fVar20;
+  double dVar21;
+  float fVar22;
+  float fVar23;
   void *unaff_retaddr;
   longlong local_res8;
+  CExpressionValue local_b8 [160];
   
-  iVar7 = *(int *)(this + 0x234);
-  iVar12 = *(int *)(this + 0x230);
-  if (iVar7 == iVar12) goto LAB_0;
-  if (iVar12 == 0) {
-    if (iVar7 == 0) {
+  iVar8 = *(int *)(this + 0x234);
+  iVar14 = *(int *)(this + 0x230);
+  if (iVar8 == iVar14) goto LAB_0;
+  if (iVar14 == 0) {
+    if (iVar8 == 0) {
 LAB_1:
       Play(this,param_1);
       *(undefined8 *)(this + 0x1f8) = *(undefined8 *)(*(longlong *)(this + 0x10) + 0x260);
     }
     else {
       Play(this,param_1);
       local_res8 = *(longlong *)(*(longlong *)(this + 0x10) + 0x260) - *(longlong *)(this + 0x1f0);
       CExpressionManager::GetGlobalPlaybackRate
                 (*(CExpressionManager **)(*(longlong *)(this + 0x10) + 0x1a8),
                  *(CChannelContext **)(this + 0x30));
-      iVar7 = TimeDelta::ToMilliseconds((TimeDelta *)&local_res8);
-      if (0.0 < extraout_XMM0_Da * (float)iVar7 * *(float *)(this + 0x210)) {
+      iVar8 = TimeDelta::ToMilliseconds((TimeDelta *)&local_res8);
+      if (0.0 < extraout_XMM0_Da * (float)iVar8 * *(float *)(this + 0x210)) {
         UpdateTime(this,0);
       }
       if (*(int *)(this + 0x234) == 2) {
         Pause(this);
       }
     }
   }
-  else if (iVar7 == 0) {
+  else if (iVar8 == 0) {
     if ((*(longlong *)(this + 0xb8) != 0) && (*(longlong *)(*(longlong *)(this + 0xb8) + 0x10) != 0)
        ) {
-      iVar7 = *(int *)(param_1 + 0x10);
-      pCVar14 = this;
+      iVar8 = *(int *)(param_1 + 0x10);
+      pCVar16 = this;
       lVar9 = Reset(this,true,param_1);
       if (lVar9 < 0) {
         MilInstrumentationCheckHR_MaybeFailFast
-                  ((ulong)pCVar14,(long *)0x0,0,lVar9,0x35b,(void *)0x0);
+                  ((ulong)pCVar16,(long *)0x0,0,lVar9,0x35b,(void *)0x0);
         return lVar9;
       }
-      if (*(int *)(param_1 + 0x10) == iVar7 + 1) {
-        pCVar14 = this;
-        lVar9 = CBaseExpression::SetOutputValue
-                          ((CBaseExpression *)this,
-                           (CExpressionValue *)
-                           ((ulonglong)(*(int *)(param_1 + 0x10) - 1) * 0x50 +
-                           *(longlong *)(param_1 + 0x18)));
+      if (*(int *)(param_1 + 0x10) == iVar8 + 1) {
+        bVar7 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                    &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                     ::__l2::impl);
+        if ((bVar7) && (*(uint *)(param_1 + 0x30) <= *(int *)(param_1 + 0x10) - 1U)) {
+          pCVar11 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_b8);
+          pCVar19 = &CExpressionValueStack::s_emptyValue;
+          CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar11);
+          CExpressionValue::~CExpressionValue(local_b8);
+        }
+        else {
+          pCVar19 = DynArray<CExpressionValue,1>::operator[]
+                              ((DynArray<CExpressionValue,1> *)(param_1 + 0x18),
+                               *(int *)(param_1 + 0x10) - 1);
+        }
+        pCVar16 = this;
+        lVar9 = CBaseExpression::SetOutputValue((CBaseExpression *)this,pCVar19);
         if (lVar9 < 0) {
           MilInstrumentationCheckHR_MaybeFailFast
-                    ((ulong)pCVar14,(long *)0x0,0,lVar9,0x369,(void *)0x0);
+                    ((ulong)pCVar16,(long *)0x0,0,lVar9,0x369,(void *)0x0);
           return lVar9;
         }
         *(int *)(param_1 + 0x10) = *(int *)(param_1 + 0x10) + -1;
       }
     }
     if (((*(longlong *)(this + 0x1c0) != 0) &&
         (*(char *)(*(longlong *)(this + 0x1c0) + 0x7a) != '\0')) &&
-       (lVar9 = CBaseExpression::NotifyAnimationCompleted((CBaseExpression *)this), lVar9 < 0)) {
-      lVar9 = FUN_18013f0dc();
+       (pCVar16 = this, lVar9 = CBaseExpression::NotifyAnimationCompleted((CBaseExpression *)this),
+       lVar9 < 0)) {
+      MilInstrumentationCheckHR_MaybeFailFast((ulong)pCVar16,(long *)0x0,0,lVar9,0x372,(void *)0x0);
       return lVar9;
     }
   }
   else {
-    if (iVar7 != 2) goto LAB_1;
+    if (iVar8 != 2) goto LAB_1;
     Pause(this);
   }
   this[0x244] = (CKeyframeAnimation)((byte)this[0x244] & 0xfe);
   if (*(int *)(this + 0x234) == 1) {
     pbVar1 = (byte *)(*(longlong *)(*(longlong *)(this + 0x10) + 0x1a8) + 0x1c0);
     *pbVar1 = *pbVar1 | 2;
     this[0x244] = (CKeyframeAnimation)((byte)this[0x244] | 1);
   }
-  iVar12 = *(int *)(this + 0x234);
-  *(int *)(this + 0x230) = iVar12;
+  iVar14 = *(int *)(this + 0x234);
+  *(int *)(this + 0x230) = iVar14;
 LAB_0:
   lVar9 = 0;
-  uVar16 = 0;
-  if (iVar12 != 0) {
-    bVar11 = (byte)this[0x244] & 4;
+  if (iVar14 != 0) {
+    bVar13 = (byte)this[0x244] & 4;
     if (((byte)this[0x244] & 2) == 0) {
-      if (bVar11 != 0) {
-        fVar21 = *(float *)(this + 0x214);
-        if ((fVar21 < 0.0) || (1.0 < fVar21)) {
+      if (bVar13 != 0) {
+        fVar22 = *(float *)(this + 0x214);
+        if ((fVar22 < 0.0) || (1.0 < fVar22)) {
+          lVar9 = -0x7ff8ffa9;
           wil::details::in1diag3::Return_Hr
                     (unaff_retaddr,0xa50,
                      "onecoreuap\\windows\\dwm\\dwmcore\\resources\\keyframeanimation.cpp",
                      -0x7ff8ffa9);
           MilInstrumentationCheckHR_MaybeFailFast
                     ((ulong)unaff_retaddr,(long *)0x0,0,-0x7ff8ffa9,0x3c3,(void *)0x0);
-          lVar9 = -0x7ff8ffa9;
         }
         else {
           CVar2 = this[0x245];
           if ((((byte)CVar2 & 1) != 0) && (((byte)CVar2 & 2) == 0)) {
+            fVar20 = 0.0;
             lVar4 = *(longlong *)(this + 0x188);
-            fVar19 = 0.0;
-            iVar7 = *(int *)(lVar4 + 0x70);
-            if (0 < iVar7) {
-              fVar19 = (float)*(uint *)(*(longlong *)(lVar4 + 0x68) + (ulonglong)(iVar7 - 1) * 0x18)
+            iVar8 = *(int *)(lVar4 + 0x70);
+            if (0 < iVar8) {
+              fVar20 = (float)*(uint *)(*(longlong *)(lVar4 + 0x68) + (ulonglong)(iVar8 - 1) * 0x18)
                        / 1000.0;
             }
-            fVar19 = fVar19 * 1000.0;
-            if ((uint)ABS(fVar19) < 0x497ffff1) {
-              iVar12 = ((int)(fVar19 + 6291456.0) << 10) >> 0xb;
+            fVar20 = fVar20 * 1000.0;
+            if ((uint)ABS(fVar20) < 0x497ffff1) {
+              iVar14 = ((int)(fVar20 + 6291456.0) << 10) >> 0xb;
             }
             else {
-              iVar12 = (int)ROUND(fVar19) + (uint)((float)(int)ROUND(fVar19) - fVar19 <= -0.5);
+              iVar14 = (int)ROUND(fVar20) + (uint)((float)(int)ROUND(fVar20) - fVar20 <= -0.5);
             }
             iVar3 = *(int *)(this + 0x220);
             if (0 < iVar3) {
-              iVar12 = iVar12 * (iVar3 + 1);
-            }
-            uVar17 = 0;
-            if ((*(int *)(this + 0x218) == 1) && (*(uint *)(this + 0x1e8) != 0)) {
-              uVar17 = *(uint *)(this + 0x1e8);
-            }
-            fVar19 = 0.0;
-            fVar21 = (float)(iVar12 + uVar17) * fVar21;
-            if (0 < iVar7) {
-              fVar19 = (float)*(uint *)(*(longlong *)(lVar4 + 0x68) + (ulonglong)(iVar7 - 1) * 0x18)
+              iVar14 = iVar14 * (iVar3 + 1);
+            }
+            uVar18 = 0;
+            if (*(int *)(this + 0x218) == 1) {
+              uVar18 = 0;
+              if (*(uint *)(this + 0x1e8) != 0) {
+                uVar18 = *(uint *)(this + 0x1e8);
+              }
+            }
+            fVar20 = 0.0;
+            fVar22 = (float)(iVar14 + uVar18) * fVar22;
+            if (0 < iVar8) {
+              fVar20 = (float)*(uint *)(*(longlong *)(lVar4 + 0x68) + (ulonglong)(iVar8 - 1) * 0x18)
                        / 1000.0;
             }
-            fVar19 = fVar19 * 1000.0;
-            if ((uint)ABS(fVar19) < 0x497ffff1) {
-              local_res8._0_4_ = fVar19 + 6291456.0;
-              uVar13 = ((int)(float)local_res8 << 10) >> 0xb;
+            fVar20 = fVar20 * 1000.0;
+            if ((uint)ABS(fVar20) < 0x497ffff1) {
+              local_res8._0_4_ = fVar20 + 6291456.0;
+              uVar15 = ((int)(float)local_res8 << 10) >> 0xb;
             }
             else {
-              uVar13 = (uint)((float)(int)ROUND(fVar19) - fVar19 <= -0.5);
-              local_res8._0_4_ = (float)-uVar13;
-              uVar13 = (int)ROUND(fVar19) + uVar13;
-            }
-            fVar19 = (fVar21 - (float)uVar17) / (float)uVar13;
-            dVar20 = fmod((double)(fVar21 - (float)uVar17),(double)uVar13);
-            if ((float)dVar20 == 0.0) {
-              fVar18 = fVar19 - 1.0;
-              fVar19 = 0.0;
-              if (0.0 <= fVar18) {
-                fVar19 = fVar18;
-              }
-            }
-            iVar7 = (int)(longlong)fVar19;
-            *(int *)(this + 0x21c) = iVar7;
+              uVar15 = (uint)((float)(int)ROUND(fVar20) - fVar20 <= -0.5);
+              local_res8._0_4_ = (float)-uVar15;
+              uVar15 = (int)ROUND(fVar20) + uVar15;
+            }
+            fVar20 = (fVar22 - (float)uVar18) / (float)uVar15;
+            dVar21 = fmod((double)(fVar22 - (float)uVar18),(double)uVar15);
+            if ((float)dVar21 == 0.0) {
+              fVar23 = fVar20 - 1.0;
+              fVar20 = 0.0;
+              if (0.0 <= fVar23) {
+                fVar20 = fVar23;
+              }
+            }
+            iVar8 = (int)(longlong)fVar20;
+            *(int *)(this + 0x21c) = iVar8;
             if (0 < iVar3) {
-              *(int *)(this + 0x224) = iVar3 - iVar7;
-            }
-            fVar18 = 1.0;
+              *(int *)(this + 0x224) = iVar3 - iVar8;
+            }
+            fVar23 = 1.0;
             if (*(int *)(this + 0x23c) == 0) {
-              bVar11 = (byte)CVar2 >> 3;
+              bVar13 = (byte)CVar2 >> 3;
             }
             else if (*(int *)(this + 0x23c) == 2) {
-              bVar11 = (byte)this[0x245] >> 3;
-              if (((longlong)fVar19 & 1U) != 0) {
-                bVar11 = ~((byte)this[0x245] >> 3);
+              bVar13 = (byte)this[0x245] >> 3;
+              if (((longlong)fVar20 & 1U) != 0) {
+                bVar13 = ~((byte)this[0x245] >> 3);
               }
             }
             else {
-              bVar11 = 0;
-            }
-            if (((-1 < iVar3) && (iVar7 == iVar3)) && (*(float *)(this + 0x228) != 1.0)) {
-              fVar18 = *(float *)(this + 0x228);
+              bVar13 = 0;
+            }
+            if (((-1 < iVar3) && (iVar8 == iVar3)) && (*(float *)(this + 0x228) != 1.0)) {
+              fVar23 = *(float *)(this + 0x228);
             }
             *(byte *)(lVar4 + 0x8c) =
-                 *(byte *)(lVar4 + 0x8c) ^ (bVar11 << 3 ^ *(byte *)(lVar4 + 0x8c)) & 8;
+                 *(byte *)(lVar4 + 0x8c) ^ (bVar13 << 3 ^ *(byte *)(lVar4 + 0x8c)) & 8;
             lVar4 = *(longlong *)(this + 0x188);
-            if (*(float *)(this + 0x210) <= 0.0 && *(float *)(this + 0x210) != 0.0) {
-              bVar11 = 0x10;
-            }
-            else {
-              bVar11 = 0;
-            }
-            *(byte *)(lVar4 + 0x8c) = *(byte *)(lVar4 + 0x8c) & 0xef | bVar11;
-            *(byte *)(lVar4 + 0x60) = bVar11 >> 4;
+            uVar18 = 0x10;
+            if (0.0 < *(float *)(this + 0x210) || *(float *)(this + 0x210) == 0.0) {
+              uVar18 = 0;
+            }
+            *(byte *)(lVar4 + 0x8c) = (byte)uVar18 | *(byte *)(lVar4 + 0x8c) & 0xef;
+            *(byte *)(lVar4 + 0x60) = (byte)uVar18 >> 4;
             *(undefined4 *)(*(longlong *)(this + 0x188) + 0x84) = 0;
-            *(float *)(*(longlong *)(this + 0x188) + 0x88) = fVar18;
-            if ((*(int *)(this + 0x218) == 1) && (iVar7 = *(int *)(this + 0x1e8), iVar7 != 0)) {
-              if ((float)iVar7 < fVar21) {
-                *(int *)(this + 0x1ec) = iVar7;
-                fVar21 = GetTimePositionWithinIteration(this,fVar21 - (float)iVar7);
-                pKVar15 = *(KeyframeSequence **)(this + 0x188);
-                KeyframeSequence::ConfigureTimer(pKVar15);
-                *(int *)(pKVar15 + 0x5c) = (int)(longlong)fVar21;
+            *(float *)(*(longlong *)(this + 0x188) + 0x88) = fVar23;
+            if ((*(int *)(this + 0x218) == 1) && (iVar8 = *(int *)(this + 0x1e8), iVar8 != 0)) {
+              if ((float)iVar8 < fVar22) {
+                *(int *)(this + 0x1ec) = iVar8;
+                fVar22 = GetTimePositionWithinIteration(this,fVar22 - (float)iVar8);
+                pKVar17 = *(KeyframeSequence **)(this + 0x188);
+                KeyframeSequence::ConfigureTimer(pKVar17);
+                *(int *)(pKVar17 + 0x5c) = (int)(longlong)fVar22;
               }
               else {
                 this[0x244] = (CKeyframeAnimation)((byte)this[0x244] & 0xbf);
-                pKVar15 = *(KeyframeSequence **)(this + 0x188);
-                bVar11 = 0;
-                if (iVar7 <= *(int *)(this + 0x1ec)) {
-                  bVar11 = 0x40;
-                }
-                this[0x244] = (CKeyframeAnimation)((byte)this[0x244] | bVar11);
-                *(int *)(this + 0x1ec) = (int)fVar21;
-                KeyframeSequence::ConfigureTimer(pKVar15);
-                *(undefined4 *)(pKVar15 + 0x5c) = 0;
+                pKVar17 = *(KeyframeSequence **)(this + 0x188);
+                bVar13 = 0;
+                if (iVar8 <= *(int *)(this + 0x1ec)) {
+                  bVar13 = 0x40;
+                }
+                this[0x244] = (CKeyframeAnimation)((byte)this[0x244] | bVar13);
+                *(int *)(this + 0x1ec) = (int)fVar22;
+                KeyframeSequence::ConfigureTimer(pKVar17);
+                *(undefined4 *)(pKVar17 + 0x5c) = 0;
               }
             }
             else {
-              if (fVar21 == 0.0) {
-                fVar21 = 0.0;
+              if (fVar22 == 0.0) {
+                fVar22 = 0.0;
               }
               else {
-                fVar19 = 0.0;
-                iVar7 = *(int *)(*(longlong *)(this + 0x188) + 0x70);
-                if (0 < iVar7) {
-                  fVar19 = (float)*(uint *)(*(longlong *)(*(longlong *)(this + 0x188) + 0x68) +
-                                           (ulonglong)(iVar7 - 1) * 0x18) / 1000.0;
-                }
-                fVar19 = fVar19 * 1000.0;
-                if ((uint)ABS(fVar19) < 0x497ffff1) {
-                  fVar18 = fVar19 + 6291456.0;
-                  uVar17 = ((int)fVar18 << 10) >> 0xb;
+                fVar20 = 0.0;
+                iVar8 = *(int *)(*(longlong *)(this + 0x188) + 0x70);
+                if (0 < iVar8) {
+                  fVar20 = (float)*(uint *)(*(longlong *)(*(longlong *)(this + 0x188) + 0x68) +
+                                           (ulonglong)(iVar8 - 1) * 0x18) / 1000.0;
+                }
+                fVar20 = fVar20 * 1000.0;
+                if ((uint)ABS(fVar20) < 0x497ffff1) {
+                  fVar23 = fVar20 + 6291456.0;
+                  uVar18 = ((int)fVar23 << 10) >> 0xb;
                 }
                 else {
-                  uVar17 = (uint)((float)(int)ROUND(fVar19) - fVar19 <= -0.5);
-                  fVar18 = (float)-uVar17;
-                  uVar17 = (int)ROUND(fVar19) + uVar17;
-                }
-                local_res8 = CONCAT44(local_res8._4_4_,fVar18);
-                dVar20 = fmod((double)fVar21,(double)uVar17);
-                fVar21 = (float)dVar20;
-                if (fVar21 == 0.0) {
-                  fVar21 = (float)uVar17;
+                  uVar18 = (uint)((float)(int)ROUND(fVar20) - fVar20 <= -0.5);
+                  fVar23 = (float)-uVar18;
+                  uVar18 = (int)ROUND(fVar20) + uVar18;
+                }
+                local_res8 = CONCAT44(local_res8._4_4_,fVar23);
+                dVar21 = fmod((double)fVar22,(double)uVar18);
+                fVar22 = (float)dVar21;
+                if (fVar22 == 0.0) {
+                  fVar22 = (float)uVar18;
                 }
               }
               lVar4 = *(longlong *)(this + 0x188);
               if (*(float *)(lVar4 + 0x88) == 1.0) {
-                iVar7 = *(int *)(lVar4 + 0x78);
-                iVar12 = iVar7;
+                iVar8 = *(int *)(lVar4 + 0x78);
+                iVar14 = iVar8;
               }
               else {
-                iVar7 = *(int *)(lVar4 + 0x78);
-                iVar12 = (int)(longlong)((float)iVar7 * *(float *)(lVar4 + 0x88));
-              }
+                iVar14 = *(int *)(lVar4 + 0x78);
+                iVar8 = (int)(longlong)((float)iVar14 * *(float *)(lVar4 + 0x88));
+              }
+              lVar10 = lVar9;
               if (*(float *)(lVar4 + 0x84) != 0.0) {
-                uVar16 = (undefined4)(longlong)((float)iVar7 * *(float *)(lVar4 + 0x84));
+                lVar10 = (long)(longlong)((float)iVar14 * *(float *)(lVar4 + 0x84));
               }
               *(byte *)(lVar4 + 0x60) = *(byte *)(lVar4 + 0x8c) >> 4 & 1;
-              *(undefined4 *)(lVar4 + 0x50) = uVar16;
-              *(int *)(lVar4 + 0x54) = iVar12;
-              *(int *)(lVar4 + 0x58) = iVar7;
-              *(undefined4 *)(lVar4 + 0x5c) = uVar16;
+              *(long *)(lVar4 + 0x50) = lVar10;
+              *(int *)(lVar4 + 0x54) = iVar8;
+              *(int *)(lVar4 + 0x58) = iVar14;
+              *(long *)(lVar4 + 0x5c) = lVar10;
               *(byte *)(lVar4 + 0x8c) = *(byte *)(lVar4 + 0x8c) | 0x20;
-              *(int *)(lVar4 + 0x5c) = (int)(longlong)fVar21;
+              *(int *)(lVar4 + 0x5c) = (int)(longlong)fVar22;
               this[0x244] = (CKeyframeAnimation)((byte)this[0x244] | 0x40);
             }
           }
         }
       }
     }
     else {
-      if (bVar11 != 0) {
+      if (bVar13 != 0) {
                     /* WARNING: Subroutine does not return */
         ModuleFailFastForHRESULT(0x8000ffff,unaff_retaddr);
       }
-      fVar21 = (float)*(ulonglong *)(this + 0x208) / 1e+07;
+      fVar22 = (float)*(ulonglong *)(this + 0x208) / 1e+07;
       if (*(longlong *)(this + 0x200) != *(longlong *)(*(longlong *)(this + 0x10) + 0x260)) {
         auVar5._8_8_ = 0;
         auVar5._0_8_ = g_qpcFrequency.QuadPart;
         auVar6._8_8_ = 0;
         auVar6._0_8_ = *(longlong *)(*(longlong *)(this + 0x10) + 0x260) -
                        *(longlong *)(this + 0x200);
-        uVar10 = SUB168(auVar6 / auVar5,0);
-        if ((longlong)uVar10 < 0) {
-          fVar19 = (float)(uVar10 >> 1 | (ulonglong)(SUB164(auVar6 / auVar5,0) & 1));
-          fVar19 = fVar19 + fVar19;
+        uVar12 = SUB168(auVar6 / auVar5,0);
+        if ((longlong)uVar12 < 0) {
+          fVar20 = (float)(uVar12 >> 1 | (ulonglong)(SUB164(auVar6 / auVar5,0) & 1));
+          fVar20 = fVar20 + fVar20;
         }
         else {
-          fVar19 = (float)(longlong)uVar10;
-        }
-        fVar21 = fVar21 + fVar19;
-      }
-      pCVar14 = this;
-      lVar8 = TimeSeek(this,fVar21);
-      if (lVar8 < 0) {
+          fVar20 = (float)(longlong)uVar12;
+        }
+        fVar22 = fVar22 + fVar20;
+      }
+      pCVar16 = this;
+      lVar10 = TimeSeek(this,fVar22);
+      if (lVar10 < 0) {
         MilInstrumentationCheckHR_MaybeFailFast
-                  ((ulong)pCVar14,(long *)0x0,0,lVar8,0x3bb,(void *)0x0);
-        lVar9 = lVar8;
+                  ((ulong)pCVar16,(long *)0x0,0,lVar10,0x3bb,(void *)0x0);
+        lVar9 = lVar10;
       }
       else {
         *(undefined8 *)(this + 0x1f8) = *(undefined8 *)(*(longlong *)(this + 0x10) + 0x260);
       }
     }
   }
   return lVar9;
 }
 

```


## CExpressionValueStack::ToDegrees

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.38|
|i_ratio|0.17|
|m_ratio|0.78|
|b_ratio|0.68|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|ToDegrees|ToDegrees|
|fullname|CExpressionValueStack::ToDegrees|CExpressionValueStack::ToDegrees|
|refcount|2|2|
|`length`|130|212|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180258ec8|18025cdb0|
|sig|long __thiscall ToDegrees(CExpressionValueStack * this)|long __thiscall ToDegrees(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::ToDegrees Called Diff


```diff
--- CExpressionValueStack::ToDegrees called
+++ CExpressionValueStack::ToDegrees called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::ToDegrees Calling Diff


```diff
--- CExpressionValueStack::ToDegrees calling
+++ CExpressionValueStack::ToDegrees calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::ToDegrees Diff


```diff
--- CExpressionValueStack::ToDegrees
+++ CExpressionValueStack::ToDegrees
@@ -1,27 +1,47 @@
 
 /* public: long __cdecl CExpressionValueStack::ToDegrees(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::ToDegrees(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  uint uVar2;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  uint uVar5;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar2 = 0x1390;
+    uVar5 = 0x13a0;
   }
   else {
-    pfVar1 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar1[0x12] == 2.52234e-44) {
-      pfVar1[0x12] = 2.52234e-44;
-      *(undefined1 *)(pfVar1 + 0x13) = 1;
-      *pfVar1 = *pfVar1 * 57.295776;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+      *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+      pCVar4[0x4c] = (CExpressionValue)0x1;
+      *(float *)pCVar4 = *(float *)pCVar4 * 57.295776;
       return 0;
     }
-    uVar2 = 0x13aa;
+    uVar5 = 0x13ba;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar2,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Transform

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.3|
|i_ratio|0.15|
|m_ratio|0.75|
|b_ratio|0.7|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Transform|Transform|
|fullname|CExpressionValueStack::Transform|CExpressionValueStack::Transform|
|refcount|2|2|
|`length`|344|526|
|`called`|D3DXVec4TransformArray<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXVec4TransformArray<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180258fe0|18025cf68|
|sig|long __thiscall Transform(CExpressionValueStack * this)|long __thiscall Transform(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Transform Called Diff


```diff
--- CExpressionValueStack::Transform called
+++ CExpressionValueStack::Transform called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Transform Calling Diff


```diff
--- CExpressionValueStack::Transform calling
+++ CExpressionValueStack::Transform calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Transform Diff


```diff
--- CExpressionValueStack::Transform
+++ CExpressionValueStack::Transform
@@ -1,82 +1,109 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CExpressionValueStack::Transform(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Transform(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
+  CExpressionValueStack *pCVar1;
   float fVar2;
   float fVar3;
   float fVar4;
   float fVar5;
   float fVar6;
   float fVar7;
   float fVar8;
-  float fVar9;
-  ulonglong uVar10;
-  D2DMatrix *pDVar11;
-  longlong lVar12;
-  longlong lVar13;
-  undefined1 auStackY_68 [32];
-  uint uVar14;
-  uint in_stack_ffffffffffffffc0;
+  bool bVar9;
+  CExpressionValue *pCVar10;
+  CExpressionValue *pCVar11;
+  DynArray<CExpressionValue,1> *this_00;
+  uint uVar12;
+  CExpressionValue *pCVar13;
+  uint in_R9D;
+  undefined1 auStackY_c8 [32];
+  uint in_stack_ffffffffffffff60;
+  CExpressionValue local_98 [80];
+  undefined8 local_48;
+  undefined8 uStack_40;
   undefined8 local_38;
   undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  ulonglong local_18;
+  ulonglong local_28;
   
-  local_18 = __security_cookie ^ (ulonglong)auStackY_68;
-  uVar14 = *(uint *)(this + 0x10);
-  if (uVar14 < 2) {
-    uVar14 = 0xad7;
+  local_28 = __security_cookie ^ (ulonglong)auStackY_c8;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar12 = 0xae7;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
 LAB_0:
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar14,(void *)0x0);
+              ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar12,
+               (void *)0x0);
     return -0x7fffbffb;
   }
-  lVar13 = *(longlong *)(this + 0x18);
-  uVar10 = (ulonglong)(uVar14 - 2);
-  lVar12 = uVar10 * 10;
-  pDVar11 = (D2DMatrix *)((ulonglong)(uVar14 - 1) * 0x50 + lVar13);
-  if (*(int *)(lVar13 + 0x48 + uVar10 * 0x50) == 0x23) {
-    if (*(int *)(pDVar11 + 0x48) != 0x68) {
-      uVar14 = 0xb10;
+  bVar9 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+  pCVar13 = &s_emptyValue;
+  if ((bVar9) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+    pCVar10 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+    CExpressionValue::operator=(&s_emptyValue,pCVar10);
+    CExpressionValue::~CExpressionValue(local_98);
+    pCVar10 = &s_emptyValue;
+  }
+  else {
+    pCVar10 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+  }
+  bVar9 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  uVar12 = *(uint *)pCVar1 - 1;
+  if ((bVar9) && (*(uint *)(this + 0x30) <= uVar12)) {
+    pCVar11 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+    CExpressionValue::operator=(&s_emptyValue,pCVar11);
+    uVar12 = (uint)pCVar11;
+    this_00 = (DynArray<CExpressionValue,1> *)local_98;
+    CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+  }
+  else {
+    pCVar13 = DynArray<CExpressionValue,1>::operator[](this_00,uVar12);
+  }
+  if (*(float *)(pCVar10 + 0x48) == 4.90454e-44) {
+    if (*(int *)(pCVar13 + 0x48) != 0x68) {
+      uVar12 = 0xb20;
       goto LAB_0;
     }
-    fVar2 = *(float *)(lVar13 + uVar10 * 0x50);
-    fVar3 = *(float *)(lVar13 + 4 + uVar10 * 0x50);
-    fVar4 = *(float *)(pDVar11 + 4);
-    fVar5 = *(float *)(pDVar11 + 8);
-    fVar6 = *(float *)pDVar11;
-    fVar7 = *(float *)(pDVar11 + 0xc);
-    fVar8 = *(float *)(pDVar11 + 0x10);
-    fVar9 = *(float *)(pDVar11 + 0x14);
-    *(undefined4 *)(lVar13 + 0x48 + uVar10 * 0x50) = 0x23;
-    *(float *)(lVar13 + uVar10 * 0x50) = fVar3 * fVar5 + fVar2 * fVar6 + fVar8;
-    *(float *)(lVar13 + 4 + uVar10 * 0x50) = fVar2 * fVar4 + fVar3 * fVar7 + fVar9;
+    fVar2 = *(float *)pCVar10;
+    fVar3 = *(float *)(pCVar13 + 4);
+    fVar4 = *(float *)(pCVar13 + 8);
+    fVar5 = *(float *)pCVar13;
+    fVar6 = *(float *)(pCVar13 + 0xc);
+    fVar7 = *(float *)(pCVar13 + 0x10);
+    fVar8 = *(float *)(pCVar13 + 0x14);
+    *(float *)(pCVar10 + 0x48) = 4.90454e-44;
+    *(float *)pCVar10 = *(float *)(pCVar10 + 4) * fVar4 + fVar2 * fVar5 + fVar7;
+    *(float *)(pCVar10 + 4) = fVar2 * fVar3 + *(float *)(pCVar10 + 4) * fVar6 + fVar8;
   }
   else {
-    if (*(int *)(lVar13 + 0x48 + uVar10 * 0x50) != 0x45) goto LAB_1;
-    if (*(int *)(pDVar11 + 0x48) != 0x109) {
-      uVar14 = 0xaf1;
+    if (*(float *)(pCVar10 + 0x48) != 9.66896e-44) goto LAB_1;
+    if (*(int *)(pCVar13 + 0x48) != 0x109) {
+      uVar12 = 0xb01;
       goto LAB_0;
     }
-    puVar1 = (undefined8 *)(lVar13 + uVar10 * 0x50);
-    local_38 = *puVar1;
-    uStack_30 = puVar1[1];
+    local_48 = *(undefined8 *)pCVar10;
+    uStack_40 = *(undefined8 *)(pCVar10 + 8);
     D3DXVec4TransformArray
-              ((D2DVector4 *)&local_28,(uint)lVar12,(D2DVector4 *)&local_38,(uint)lVar13,pDVar11,
-               in_stack_ffffffffffffffc0);
-    *(undefined4 *)(lVar13 + 0x48 + lVar12 * 8) = 0x45;
-    puVar1 = (undefined8 *)(lVar13 + lVar12 * 8);
-    *puVar1 = local_28;
-    puVar1[1] = uStack_20;
+              ((D2DVector4 *)&local_38,uVar12,(D2DVector4 *)&local_48,in_R9D,(D2DMatrix *)pCVar13,
+               in_stack_ffffffffffffff60);
+    *(float *)(pCVar10 + 0x48) = 9.66896e-44;
+    *(undefined8 *)pCVar10 = local_38;
+    *(undefined8 *)(pCVar10 + 8) = uStack_30;
   }
-  *(undefined1 *)(lVar13 + 0x4c + lVar12 * 8) = 1;
+  pCVar10[0x4c] = (CExpressionValue)0x1;
 LAB_1:
-  *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+  *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
   return 0;
 }
 

```


## CExpressionValueStack::QuaternionFromLerp

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.23|
|i_ratio|0.12|
|m_ratio|0.64|
|b_ratio|0.59|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|QuaternionFromLerp|QuaternionFromLerp|
|fullname|CExpressionValueStack::QuaternionFromLerp|CExpressionValueStack::QuaternionFromLerp|
|refcount|2|2|
|`length`|271|520|
|`called`|D3DXQuaternionLerp<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXQuaternionLerp<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1802587a0|18025c208|
|sig|long __thiscall QuaternionFromLerp(CExpressionValueStack * this)|long __thiscall QuaternionFromLerp(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::QuaternionFromLerp Called Diff


```diff
--- CExpressionValueStack::QuaternionFromLerp called
+++ CExpressionValueStack::QuaternionFromLerp called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::QuaternionFromLerp Calling Diff


```diff
--- CExpressionValueStack::QuaternionFromLerp calling
+++ CExpressionValueStack::QuaternionFromLerp calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::QuaternionFromLerp Diff


```diff
--- CExpressionValueStack::QuaternionFromLerp
+++ CExpressionValueStack::QuaternionFromLerp
@@ -1,59 +1,102 @@
 
 /* public: long __cdecl CExpressionValueStack::QuaternionFromLerp(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::QuaternionFromLerp(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
-  longlong lVar2;
-  ulonglong uVar3;
-  uint uVar4;
-  undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
+  uint uVar7;
+  undefined8 local_a8;
+  undefined8 uStack_a0;
+  undefined8 local_98;
+  undefined8 uStack_90;
+  undefined8 local_88;
+  undefined8 uStack_80;
+  CExpressionValue local_78 [80];
   
-  uVar4 = *(uint *)(this + 0x10);
-  if (uVar4 < 3) {
-    uVar4 = 0x1b51;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 3) {
+    uVar7 = 0x1b61;
+    pCVar5 = (CExpressionValue *)this;
   }
   else {
-    lVar2 = *(longlong *)(this + 0x18);
-    uVar3 = (ulonglong)(uVar4 - 3);
-    if (*(int *)(lVar2 + 0x48 + uVar3 * 0x50) == 0x47) {
-      if (*(int *)(lVar2 + 0x48 + (ulonglong)(uVar4 - 2) * 0x50) == 0x47) {
-        if (*(int *)(lVar2 + 0x48 + (ulonglong)(uVar4 - 1) * 0x50) == 0x12) {
-          puVar1 = (undefined8 *)(lVar2 + (ulonglong)(uVar4 - 2) * 0x50);
-          local_38 = *puVar1;
-          uStack_30 = puVar1[1];
-          puVar1 = (undefined8 *)(lVar2 + uVar3 * 0x50);
-          local_28 = *puVar1;
-          uStack_20 = puVar1[1];
-          D3DXQuaternionLerp((D2DQuaternion *)&local_18,(D2DQuaternion *)&local_28,
-                             (D2DQuaternion *)&local_38,
-                             *(float *)(lVar2 + (ulonglong)(uVar4 - 1) * 0x50));
-          *(undefined4 *)(lVar2 + 0x48 + uVar3 * 0x50) = 0x47;
-          *(undefined1 *)(lVar2 + 0x4c + uVar3 * 0x50) = 1;
-          puVar1 = (undefined8 *)(lVar2 + uVar3 * 0x50);
-          *puVar1 = local_18;
-          puVar1[1] = uStack_10;
-          *(int *)(this + 0x10) = *(int *)(this + 0x10) + -2;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar5 = (CExpressionValue *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_78);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 3);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_78);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      pCVar5 = local_78;
+      CExpressionValue::~CExpressionValue(pCVar5);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 1);
+    }
+    if (*(int *)(pCVar3 + 0x48) == 0x47) {
+      if (*(int *)(pCVar4 + 0x48) == 0x47) {
+        if (*(float *)(pCVar6 + 0x48) == 2.52234e-44) {
+          local_98 = *(undefined8 *)pCVar3;
+          uStack_90 = *(undefined8 *)(pCVar3 + 8);
+          local_a8 = *(undefined8 *)pCVar4;
+          uStack_a0 = *(undefined8 *)(pCVar4 + 8);
+          D3DXQuaternionLerp((D2DQuaternion *)&local_88,(D2DQuaternion *)&local_98,
+                             (D2DQuaternion *)&local_a8,*(float *)pCVar6);
+          *(undefined4 *)(pCVar3 + 0x48) = 0x47;
+          pCVar3[0x4c] = (CExpressionValue)0x1;
+          *(undefined8 *)pCVar3 = local_88;
+          *(undefined8 *)(pCVar3 + 8) = uStack_80;
+          *(uint *)pCVar1 = *(uint *)pCVar1 - 2;
           return 0;
         }
-        uVar4 = 0x1b5a;
+        uVar7 = 0x1b6a;
       }
       else {
-        uVar4 = 0x1b59;
+        uVar7 = 0x1b69;
       }
     }
     else {
-      uVar4 = 7000;
+      uVar7 = 0x1b68;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar4,(void *)0x0);
+            ((ulong)pCVar5,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CConditionalExpression::CalculateConditionValue

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,called|
|ratio|0.24|
|i_ratio|0.37|
|m_ratio|0.85|
|b_ratio|0.78|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|CalculateConditionValue|CalculateConditionValue|
|fullname|CConditionalExpression::CalculateConditionValue|CConditionalExpression::CalculateConditionValue|
|refcount|3|3|
|`length`|179|264|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>_guard_xfg_dispatch_icall_nop|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>_guard_xfg_dispatch_icall_nop<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CConditionalExpression::CalculateValueWorker<br>CConditionalExpression::IsAnyConditionSatisfied|CConditionalExpression::CalculateValueWorker<br>CConditionalExpression::IsAnyConditionSatisfied|
|paramcount|5|5|
|`address`|180220170|180221cdc|
|sig|long __thiscall CalculateConditionValue(CConditionalExpression * this, uint param_1, CExpressionValueStack * param_2, __uint64 param_3, bool * param_4)|long __thiscall CalculateConditionValue(CConditionalExpression * this, uint param_1, CExpressionValueStack * param_2, __uint64 param_3, bool * param_4)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CConditionalExpression::CalculateConditionValue Called Diff


```diff
--- CConditionalExpression::CalculateConditionValue called
+++ CConditionalExpression::CalculateConditionValue called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CConditionalExpression::CalculateConditionValue Diff


```diff
--- CConditionalExpression::CalculateConditionValue
+++ CConditionalExpression::CalculateConditionValue
@@ -1,37 +1,59 @@
 
 /* WARNING: Function: _guard_xfg_dispatch_icall_nop replaced with injection: guard_dispatch_icall */
 /* private: long __cdecl CConditionalExpression::CalculateConditionValue(unsigned int,class
    CExpressionValueStack * __ptr64,unsigned __int64,bool * __ptr64) __ptr64 */
 
 long __thiscall
 CConditionalExpression::CalculateConditionValue
           (CConditionalExpression *this,uint param_1,CExpressionValueStack *param_2,__uint64 param_3
           ,bool *param_4)
 
 {
-  longlong lVar1;
-  int iVar2;
-  longlong *plVar3;
-  uint uVar4;
+  CExpressionValue CVar1;
+  bool bVar2;
+  int iVar3;
+  CExpressionValue *pCVar4;
+  ulong uVar5;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar7;
+  uint uVar8;
+  CExpressionValue local_58 [80];
+  longlong *plVar6;
   
-  plVar3 = *(longlong **)(*(longlong *)(this + 0x158) + (ulonglong)param_1 * 0x10);
-  iVar2 = (**(code **)(*plVar3 + 0x100))();
-  if (iVar2 < 0) {
-    uVar4 = 0x156;
+  plVar6 = *(longlong **)(*(longlong *)(this + 0x158) + (ulonglong)param_1 * 0x10);
+  iVar3 = (**(code **)(*plVar6 + 0x100))();
+  uVar5 = (ulong)plVar6;
+  if (iVar3 < 0) {
+    uVar8 = 0x161;
   }
   else {
-    plVar3 = (longlong *)
-             ((ulonglong)(*(int *)(param_2 + 0x10) - 1U) * 0x50 + *(longlong *)(param_2 + 0x18));
-    if ((int)plVar3[9] == 0x11) {
-      lVar1 = *plVar3;
-      *(uint *)(param_2 + 0x10) = *(int *)(param_2 + 0x10) - 1U;
-      *param_4 = SUB81(lVar1,0);
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(param_2 + 0x30) <= *(int *)(param_2 + 0x10) - 1U)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar7 = &CExpressionValueStack::s_emptyValue;
+      CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar4);
+      pCVar4 = local_58;
+      CExpressionValue::~CExpressionValue(pCVar4);
+      uVar5 = (ulong)pCVar4;
+    }
+    else {
+      this_00 = (DynArray<CExpressionValue,1> *)(param_2 + 0x18);
+      pCVar7 = DynArray<CExpressionValue,1>::operator[](this_00,*(int *)(param_2 + 0x10) - 1U);
+      uVar5 = (ulong)this_00;
+    }
+    if (*(int *)(pCVar7 + 0x48) == 0x11) {
+      CVar1 = *pCVar7;
+      *(int *)(param_2 + 0x10) = *(int *)(param_2 + 0x10) + -1;
+      *param_4 = (bool)CVar1;
       return 0;
     }
-    iVar2 = -0x7ff8ffa9;
-    uVar4 = 0x15c;
+    iVar3 = -0x7ff8ffa9;
+    uVar8 = 0x167;
   }
-  MilInstrumentationCheckHR_MaybeFailFast((ulong)plVar3,(long *)0x0,0,iVar2,uVar4,(void *)0x0);
-  return iVar2;
+  MilInstrumentationCheckHR_MaybeFailFast(uVar5,(long *)0x0,0,iVar3,uVar8,(void *)0x0);
+  return iVar3;
 }
 

```


## CD2DBitmapCache::GetCachedTexture

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,called|
|ratio|0.36|
|i_ratio|0.38|
|m_ratio|0.91|
|b_ratio|0.69|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|GetCachedTexture|GetCachedTexture|
|fullname|CD2DBitmapCache::GetCachedTexture|CD2DBitmapCache::GetCachedTexture|
|refcount|7|7|
|`length`|195|155|
|`called`|CD2DBitmapCache::GetBitmapInternal<br>MilInstrumentationCheckHR_MaybeFailFast<br>_guard_xfg_dispatch_icall_nop|CD2DBitmapCache::GetBitmapInternal<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>::~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>|
|calling|CColorKeyBitmapRealization::GetDeviceTexture<br>CDxHandleStereoBitmapRealization::GetDeviceTexture<br>CSectionBitmapRealization::GetDeviceTexture<br>CWICBitmapRealization::GetDeviceTexture|CColorKeyBitmapRealization::GetDeviceTexture<br>CDxHandleStereoBitmapRealization::GetDeviceTexture<br>CSectionBitmapRealization::GetDeviceTexture<br>CWICBitmapRealization::GetDeviceTexture|
|paramcount|3|3|
|`address`|180037bc0|180033ec0|
|sig|long __thiscall GetCachedTexture(CD2DBitmapCache * this, RenderTargetInfo * param_1, IDeviceTexture * * param_2)|long __thiscall GetCachedTexture(CD2DBitmapCache * this, RenderTargetInfo * param_1, IDeviceTexture * * param_2)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|False|False|

### CD2DBitmapCache::GetCachedTexture Called Diff


```diff
--- CD2DBitmapCache::GetCachedTexture called
+++ CD2DBitmapCache::GetCachedTexture called
@@ -3 +3 @@
-_guard_xfg_dispatch_icall_nop
+wil::com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>::~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>
```


### CD2DBitmapCache::GetCachedTexture Diff


```diff
--- CD2DBitmapCache::GetCachedTexture
+++ CD2DBitmapCache::GetCachedTexture
@@ -1,27 +1,37 @@
 
-/* WARNING: Function: _guard_xfg_dispatch_icall_nop replaced with injection: guard_dispatch_icall */
-/* WARNING: Removing unreachable block (ram,0x000180037c06) */
-/* WARNING: Removing unreachable block (ram,0x0001801309a5) */
 /* public: long __cdecl CD2DBitmapCache::GetCachedTexture(class RenderTargetInfo const &
    __ptr64,class IDeviceTexture * __ptr64 * __ptr64) __ptr64 */
 
 long __thiscall
 CD2DBitmapCache::GetCachedTexture
           (CD2DBitmapCache *this,RenderTargetInfo *param_1,IDeviceTexture **param_2)
 
 {
-  long lVar1;
-  ulong uVar2;
+  longlong lVar1;
+  long lVar2;
+  ulong uVar3;
+  IDeviceTexture *pIVar4;
+  longlong local_res10;
   
-  uVar2 = (ulong)this;
+  uVar3 = (ulong)this;
+  pIVar4 = (IDeviceTexture *)0x0;
   *param_2 = (IDeviceTexture *)0x0;
-  lVar1 = GetBitmapInternal();
-  if (lVar1 < 0) {
-    MilInstrumentationCheckHR_MaybeFailFast(uVar2,(long *)0x0,0,lVar1,0x60,(void *)0x0);
+  local_res10 = 0;
+  lVar2 = GetBitmapInternal();
+  lVar1 = local_res10;
+  if (lVar2 < 0) {
+    MilInstrumentationCheckHR_MaybeFailFast(uVar3,(long *)0x0,0,lVar2,0x60,(void *)0x0);
   }
   else {
-    *param_2 = (IDeviceTexture *)0x0;
+    local_res10 = 0;
+    if (lVar1 != 0) {
+      pIVar4 = (IDeviceTexture *)(lVar1 + 8 + (longlong)*(int *)(*(longlong *)(lVar1 + 8) + 0x14));
+    }
+    *param_2 = pIVar4;
   }
-  return lVar1;
+  wil::com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>::
+  ~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>
+            ((com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy> *)&local_res10);
+  return lVar2;
 }
 

```


## CExpressionValueStack::Swizzle

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,calling,called|
|ratio|0.45|
|i_ratio|0.16|
|m_ratio|0.96|
|b_ratio|0.62|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Swizzle|Swizzle|
|fullname|CExpressionValueStack::Swizzle|CExpressionValueStack::Swizzle|
|`refcount`|4|3|
|`length`|748|775|
|`called`|CExpressionValue::CopyIntoFloatArray<br>GetExpressionTypeChannelCount<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>memset|CExpressionValue::CExpressionValue<br>CExpressionValue::CopyIntoFloatArray<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>GetExpressionTypeChannelCount<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>memset<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|CExpression::CalculateValueWorker<br>switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|2|2|
|`address`|180087de8|1800c1a68|
|sig|long __thiscall Swizzle(CExpressionValueStack * this, ExpressionNode * param_1)|long __thiscall Swizzle(CExpressionValueStack * this, ExpressionNode * param_1)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Swizzle Called Diff


```diff
--- CExpressionValueStack::Swizzle called
+++ CExpressionValueStack::Swizzle called
@@ -0,0 +1 @@
+CExpressionValue::CExpressionValue
@@ -1,0 +3,3 @@
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -5,0 +10 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Swizzle Calling Diff


```diff
--- CExpressionValueStack::Swizzle calling
+++ CExpressionValueStack::Swizzle calling
@@ -2 +1,0 @@
-switchD_180071930::caseD_0
```


### CExpressionValueStack::Swizzle Diff


```diff
--- CExpressionValueStack::Swizzle
+++ CExpressionValueStack::Swizzle
@@ -1,153 +1,162 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CExpressionValueStack::Swizzle(struct ExpressionNode * __ptr64) __ptr64 */
 
 long __thiscall CExpressionValueStack::Swizzle(CExpressionValueStack *this,ExpressionNode *param_1)
 
 {
   ExpressionNode EVar1;
-  float fVar2;
-  CExpressionValueStack *pCVar3;
-  uint uVar4;
-  float fVar5;
+  long lVar2;
+  bool bVar3;
+  long lVar4;
+  CExpressionValue *pCVar5;
   uint uVar6;
   ulong uVar7;
-  CExpressionValue *pCVar8;
+  uint uVar8;
+  uint uVar9;
   CExpressionValue *this_00;
-  uint uVar9;
   uint uVar10;
-  uint uVar11;
+  ulonglong uVar11;
   longlong lVar12;
-  undefined1 auStackY_f8 [32];
-  float local_b8 [4];
-  undefined4 local_a8;
-  undefined4 uStack_a4;
+  undefined1 auStackY_108 [32];
+  uint uVar13;
+  long local_c8 [4];
+  undefined4 local_b8;
+  undefined4 uStack_b4;
+  undefined8 uStack_b0;
+  undefined8 local_a8;
   undefined8 uStack_a0;
   undefined8 local_98;
   undefined8 uStack_90;
-  undefined8 local_88;
-  undefined8 uStack_80;
-  float local_78 [16];
+  CExpressionValue local_88 [80];
   ulonglong local_38;
   
-  local_38 = __security_cookie ^ (ulonglong)auStackY_f8;
+  local_38 = __security_cookie ^ (ulonglong)auStackY_108;
   if (*(int *)(this + 0x10) == 0) {
-    uVar4 = 0x1e85;
+    uVar13 = 0x1e95;
 LAB_0:
     uVar7 = (ulong)this;
-    fVar5 = -2.29659e-41;
+    lVar4 = -0x7fffbffb;
 LAB_1:
     MilInstrumentationCheckHR_MaybeFailFast
-              (uVar7,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,(long)fVar5,uVar4,(void *)0x0);
-    return (long)fVar5;
+              (uVar7,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,lVar4,uVar13,(void *)0x0);
+    return lVar4;
   }
   if (*(int *)param_1 == 0x65) {
     lVar12 = 4;
   }
   else {
     if (*(int *)param_1 != 0x66) {
-      uVar4 = 0x1e9e;
+      uVar13 = 0x1eae;
       goto LAB_0;
     }
     lVar12 = 8;
   }
-  this_00 = (CExpressionValue *)
-            ((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-  memset(local_78,0,0x40);
-  uVar9 = 0;
-  memset(local_b8,0,0x40);
-  uVar4 = GetExpressionTypeChannelCount(*(DCOMPOSITION_EXPRESSION_TYPE *)(this_00 + 0x48));
+  bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  if ((bVar3) && (*(uint *)(this + 0x30) <= *(int *)(this + 0x10) - 1U)) {
+    pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_88);
+    this_00 = &s_emptyValue;
+    CExpressionValue::operator=(&s_emptyValue,pCVar5);
+    CExpressionValue::~CExpressionValue(local_88);
+  }
+  else {
+    this_00 = DynArray<CExpressionValue,1>::operator[]
+                        ((DynArray<CExpressionValue,1> *)(this + 0x18),*(int *)(this + 0x10) - 1U);
+  }
+  memset(local_88,0,0x40);
+  uVar8 = 0;
+  memset(local_c8,0,0x40);
+  uVar13 = GetExpressionTypeChannelCount(*(DCOMPOSITION_EXPRESSION_TYPE *)(this_00 + 0x48));
   EVar1 = param_1[lVar12 + 4];
-  pCVar8 = this_00;
-  fVar5 = (float)CExpressionValue::CopyIntoFloatArray(this_00,uVar9,local_78);
-  uVar7 = (ulong)pCVar8;
-  if ((int)fVar5 < 0) {
-    uVar4 = 0x1eb3;
+  this = (CExpressionValueStack *)this_00;
+  lVar4 = CExpressionValue::CopyIntoFloatArray(this_00,uVar8,(float *)local_88);
+  uVar7 = (ulong)this;
+  if (lVar4 < 0) {
+    uVar13 = 0x1ec3;
     goto LAB_1;
   }
-  uVar9 = (uint)(byte)EVar1;
-  this = (CExpressionValueStack *)pCVar8;
-  pCVar3 = (CExpressionValueStack *)0x0;
-  fVar2 = fVar5;
+  uVar11 = 0;
+  uVar8 = (uint)(byte)EVar1;
+  lVar2 = lVar4;
   if (EVar1 != (ExpressionNode)0x0) {
     do {
-      pCVar8 = (CExpressionValue *)pCVar3;
-      uVar11 = (uint)pCVar8;
+      uVar10 = (uint)uVar11;
       if (*(int *)(param_1 + lVar12) == 1) {
-        uVar6 = CONCAT31((int3)((uint)fVar2 >> 8),(char)param_1[lVar12 + 4] - (char)pCVar8) * 2 - 2;
-        uVar10 = (byte)param_1[lVar12 + 8] >> ((byte)uVar6 & 0x1f) & 3;
+        uVar6 = CONCAT31((int3)((uint)lVar2 >> 8),(char)param_1[lVar12 + 4] - (char)uVar11) * 2 - 2;
+        uVar9 = (byte)param_1[lVar12 + 8] >> ((byte)uVar6 & 0x1f) & 3;
       }
       else {
         if (*(int *)(param_1 + lVar12) != 2) {
-          uVar4 = 0x1ecd;
+          uVar13 = 0x1edd;
           goto LAB_0;
         }
-        uVar6 = ((byte)param_1[lVar12 + 4] - uVar11) * 4 - 4;
-        uVar10 = (uint)(*(ulonglong *)(param_1 + lVar12 + 8) >> ((byte)uVar6 & 0x3f)) & 0xf;
+        uVar6 = ((byte)param_1[lVar12 + 4] - uVar10) * 4 - 4;
+        uVar9 = (uint)(*(ulonglong *)(param_1 + lVar12 + 8) >> ((byte)uVar6 & 0x3f)) & 0xf;
       }
       this = (CExpressionValueStack *)(ulonglong)uVar6;
-      if (uVar4 <= uVar10) {
-        uVar4 = 0x1ed8;
+      if (uVar13 <= uVar9) {
+        uVar13 = 0x1ee8;
         goto LAB_0;
       }
-      if (0xf < uVar11) {
-        uVar4 = 0x1ee3;
+      if (0xf < uVar10) {
+        uVar13 = 0x1ef3;
         goto LAB_0;
       }
-      fVar2 = local_78[uVar10];
-      local_b8[(longlong)pCVar8] = fVar2;
-      this = (CExpressionValueStack *)pCVar8;
-      pCVar3 = (CExpressionValueStack *)(ulonglong)(uVar11 + 1);
-    } while (uVar11 + 1 < uVar9);
+      lVar2 = *(long *)(local_88 + (ulonglong)uVar9 * 4);
+      local_c8[uVar11] = lVar2;
+      uVar11 = (ulonglong)(uVar10 + 1);
+    } while (uVar10 + 1 < uVar8);
   }
-  if (uVar9 == 1) {
+  if (uVar8 == 1) {
     *(undefined4 *)(this_00 + 0x48) = 0x12;
   }
   else {
-    if (uVar9 != 2) {
-      if (uVar9 == 3) {
+    if (uVar8 != 2) {
+      if (uVar8 == 3) {
         *(undefined4 *)(this_00 + 0x48) = 0x34;
-        *(float *)this_00 = local_b8[0];
-        *(float *)(this_00 + 4) = local_b8[1];
-        *(float *)(this_00 + 8) = local_b8[2];
+        *(long *)this_00 = local_c8[0];
+        *(long *)(this_00 + 4) = local_c8[1];
+        *(long *)(this_00 + 8) = local_c8[2];
         goto LAB_2;
       }
-      if (uVar9 == 4) {
+      if (uVar8 == 4) {
         *(undefined4 *)(this_00 + 0x48) = 0x45;
-        *(ulonglong *)this_00 = CONCAT44(local_b8[1],local_b8[0]);
-        *(ulonglong *)(this_00 + 8) = CONCAT44(local_b8[3],local_b8[2]);
+        *(ulonglong *)this_00 = CONCAT44(local_c8[1],local_c8[0]);
+        *(ulonglong *)(this_00 + 8) = CONCAT44(local_c8[3],local_c8[2]);
         goto LAB_2;
       }
-      if (uVar9 == 6) {
+      if (uVar8 == 6) {
         *(undefined4 *)(this_00 + 0x48) = 0x68;
-        *(ulonglong *)this_00 = CONCAT44(local_b8[1],local_b8[0]);
-        *(ulonglong *)(this_00 + 8) = CONCAT44(local_b8[3],local_b8[2]);
-        *(undefined4 *)(this_00 + 0x10) = local_a8;
-        *(undefined4 *)(this_00 + 0x14) = uStack_a4;
+        *(ulonglong *)this_00 = CONCAT44(local_c8[1],local_c8[0]);
+        *(ulonglong *)(this_00 + 8) = CONCAT44(local_c8[3],local_c8[2]);
+        *(undefined4 *)(this_00 + 0x10) = local_b8;
+        *(undefined4 *)(this_00 + 0x14) = uStack_b4;
         goto LAB_2;
       }
-      if (uVar9 == 0x10) {
-        *(ulonglong *)this_00 = CONCAT44(local_b8[1],local_b8[0]);
-        *(ulonglong *)(this_00 + 8) = CONCAT44(local_b8[3],local_b8[2]);
+      if (uVar8 == 0x10) {
+        *(ulonglong *)this_00 = CONCAT44(local_c8[1],local_c8[0]);
+        *(ulonglong *)(this_00 + 8) = CONCAT44(local_c8[3],local_c8[2]);
         *(undefined4 *)(this_00 + 0x48) = 0x109;
-        *(ulonglong *)(this_00 + 0x10) = CONCAT44(uStack_a4,local_a8);
-        *(undefined8 *)(this_00 + 0x18) = uStack_a0;
-        *(undefined8 *)(this_00 + 0x20) = local_98;
-        *(undefined8 *)(this_00 + 0x28) = uStack_90;
-        *(undefined8 *)(this_00 + 0x30) = local_88;
-        *(undefined8 *)(this_00 + 0x38) = uStack_80;
+        *(ulonglong *)(this_00 + 0x10) = CONCAT44(uStack_b4,local_b8);
+        *(undefined8 *)(this_00 + 0x18) = uStack_b0;
+        *(undefined8 *)(this_00 + 0x20) = local_a8;
+        *(undefined8 *)(this_00 + 0x28) = uStack_a0;
+        *(undefined8 *)(this_00 + 0x30) = local_98;
+        *(undefined8 *)(this_00 + 0x38) = uStack_90;
         goto LAB_2;
       }
-      uVar4 = 0x1f11;
-      this = (CExpressionValueStack *)pCVar8;
+      uVar13 = 0x1f21;
       goto LAB_0;
     }
-    *(float *)(this_00 + 4) = local_b8[1];
+    *(long *)(this_00 + 4) = local_c8[1];
     *(undefined4 *)(this_00 + 0x48) = 0x23;
   }
-  *(float *)this_00 = local_b8[0];
+  *(long *)this_00 = local_c8[0];
 LAB_2:
   this_00[0x4c] = (CExpressionValue)0x1;
-  return (long)fVar5;
+  return lVar4;
 }
 

```


## CConditionalExpression::~CConditionalExpression

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,called|
|ratio|0.78|
|i_ratio|0.43|
|m_ratio|0.69|
|b_ratio|0.62|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|~CConditionalExpression|~CConditionalExpression|
|fullname|CConditionalExpression::~CConditionalExpression|CConditionalExpression::~CConditionalExpression|
|refcount|2|2|
|`length`|151|274|
|`called`|CBaseExpression::~CBaseExpression<br>Microsoft::WRL::ComPtr<IDXGIDevice1>::InternalRelease<br>std::_Deallocate<16,0><br>std::_Destroy_range<std::allocator<CConditionalExpression::ConditionExpressionListEntry>_>|CBaseExpression::~CBaseExpression<br>Microsoft::WRL::ComPtr<IDXGIDevice1>::InternalRelease<br>_guard_xfg_dispatch_icall_nop<br>std::_Deallocate<16,0><br>std::_Destroy_range<std::allocator<CConditionalExpression::ConditionExpressionListEntry>_><br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::__private_IsEnabled|
|calling|CConditionalExpression::`scalar_deleting_destructor'|CConditionalExpression::`scalar_deleting_destructor'|
|paramcount|1|1|
|`address`|18021fddc|18022187c|
|sig|void __thiscall ~CConditionalExpression(CConditionalExpression * this)|void __thiscall ~CConditionalExpression(CConditionalExpression * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CConditionalExpression::~CConditionalExpression Called Diff


```diff
--- CConditionalExpression::~CConditionalExpression called
+++ CConditionalExpression::~CConditionalExpression called
@@ -2,0 +3 @@
+_guard_xfg_dispatch_icall_nop
@@ -4,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::__private_IsEnabled
```


### CConditionalExpression::~CConditionalExpression Diff


```diff
--- CConditionalExpression::~CConditionalExpression
+++ CConditionalExpression::~CConditionalExpression
@@ -1,30 +1,45 @@
 
+/* WARNING: Function: _guard_xfg_dispatch_icall_nop replaced with injection: guard_dispatch_icall */
 /* public: virtual __cdecl CConditionalExpression::~CConditionalExpression(void) __ptr64 */
 
 void __thiscall CConditionalExpression::~CConditionalExpression(CConditionalExpression *this)
 
 {
+  undefined8 *puVar1;
+  bool bVar2;
+  undefined8 *puVar3;
   allocator<CConditionalExpression::ConditionExpressionListEntry> *in_R8;
   
   *(undefined ***)this = &_vftable_;
+  bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_704565565> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_704565565>::GetImpl(void)'
+                      ::__l2::impl);
+  if (bVar2) {
+    puVar1 = *(undefined8 **)(this + 0x160);
+    for (puVar3 = *(undefined8 **)(this + 0x158); puVar3 != puVar1; puVar3 = puVar3 + 2) {
+      (**(code **)(*(longlong *)*puVar3 + 0xd8))((longlong *)*puVar3,0);
+      (**(code **)(*(longlong *)puVar3[1] + 0xd8))();
+    }
+  }
   std::_Destroy_range<std::allocator<CConditionalExpression::ConditionExpressionListEntry>_>
             (*(ConditionExpressionListEntry **)(this + 0x158),
              *(ConditionExpressionListEntry **)(this + 0x160),in_R8);
   *(undefined8 *)(this + 0x160) = *(undefined8 *)(this + 0x158);
   Microsoft::WRL::ComPtr<IDXGIDevice1>::InternalRelease((ComPtr<IDXGIDevice1> *)(this + 0x170));
   if (*(ConditionExpressionListEntry **)(this + 0x158) != (ConditionExpressionListEntry *)0x0) {
     std::_Destroy_range<std::allocator<CConditionalExpression::ConditionExpressionListEntry>_>
               (*(ConditionExpressionListEntry **)(this + 0x158),
                *(ConditionExpressionListEntry **)(this + 0x160),in_R8);
     std::_Deallocate<16,0>
               (*(void **)(this + 0x158),
                *(longlong *)(this + 0x168) - (longlong)*(void **)(this + 0x158) & 0xfffffffffffffff0
               );
     *(undefined8 *)(this + 0x158) = 0;
     *(undefined8 *)(this + 0x160) = 0;
     *(undefined8 *)(this + 0x168) = 0;
   }
   CBaseExpression::~CBaseExpression((CBaseExpression *)this);
   return;
 }
 

```


## CExpressionValueStack::LengthSquared

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.27|
|i_ratio|0.41|
|m_ratio|0.91|
|b_ratio|0.88|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|LengthSquared|LengthSquared|
|fullname|CExpressionValueStack::LengthSquared|CExpressionValueStack::LengthSquared|
|refcount|2|2|
|`length`|386|445|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180255b80|1802580c8|
|sig|long __thiscall LengthSquared(CExpressionValueStack * this)|long __thiscall LengthSquared(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::LengthSquared Called Diff


```diff
--- CExpressionValueStack::LengthSquared called
+++ CExpressionValueStack::LengthSquared called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::LengthSquared Calling Diff


```diff
--- CExpressionValueStack::LengthSquared calling
+++ CExpressionValueStack::LengthSquared calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::LengthSquared Diff


```diff
--- CExpressionValueStack::LengthSquared
+++ CExpressionValueStack::LengthSquared
@@ -1,67 +1,77 @@
 
 /* public: long __cdecl CExpressionValueStack::LengthSquared(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::LengthSquared(CExpressionValueStack *this)
 
 {
-  CExpressionValueStack *pCVar1;
-  int iVar2;
-  ulonglong uVar3;
+  float fVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
   long lVar4;
-  uint uVar5;
-  float local_18;
-  float fStack_14;
+  CExpressionValue *pCVar5;
+  uint uVar6;
+  float local_68;
+  float fStack_64;
+  CExpressionValue local_58 [80];
   
-  pCVar1 = this + 0x10;
-  if (*(int *)pCVar1 == 0) {
-    uVar5 = 0xd87;
+  if (*(int *)(this + 0x10) == 0) {
+    uVar6 = 0xd97;
 LAB_0:
     lVar4 = -0x7fffbffb;
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
+              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   }
   else {
-    this = *(CExpressionValueStack **)(this + 0x18);
-    uVar3 = (ulonglong)(*(int *)pCVar1 - 1);
-    iVar2 = *(int *)(this + uVar3 * 0x50 + 0x48);
-    if (iVar2 == 0x12) {
-      *(float *)(this + uVar3 * 0x50) =
-           *(float *)(this + uVar3 * 0x50) * *(float *)(this + uVar3 * 0x50);
-    }
-    else if (iVar2 == 0x23) {
-      *(float *)(this + uVar3 * 0x50) =
-           *(float *)(this + uVar3 * 0x50) * *(float *)(this + uVar3 * 0x50) +
-           *(float *)(this + uVar3 * 0x50 + 4) * *(float *)(this + uVar3 * 0x50 + 4);
-    }
-    else if (iVar2 == 0x34) {
-      fStack_14 = (float)((ulonglong)*(undefined8 *)(this + uVar3 * 0x50) >> 0x20);
-      local_18 = (float)*(undefined8 *)(this + uVar3 * 0x50);
-      *(float *)(this + uVar3 * 0x50) =
-           fStack_14 * fStack_14 + local_18 * local_18 +
-           *(float *)(this + uVar3 * 0x50 + 8) * *(float *)(this + uVar3 * 0x50 + 8);
-    }
-    else if (iVar2 == 0x45) {
-      pCVar1 = this + uVar3 * 0x50;
-      *(float *)(this + uVar3 * 0x50) =
-           *(float *)(pCVar1 + 4) * *(float *)(pCVar1 + 4) + *(float *)pCVar1 * *(float *)pCVar1 +
-           *(float *)(pCVar1 + 8) * *(float *)(pCVar1 + 8) +
-           *(float *)(pCVar1 + 0xc) * *(float *)(pCVar1 + 0xc);
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)(this + 0x10) - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar5 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_58);
     }
     else {
-      if (iVar2 != 0x47) {
-        uVar5 = 0xdc3;
+      pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)(this + 0x18),*(int *)(this + 0x10) - 1U);
+    }
+    fVar1 = *(float *)(pCVar5 + 0x48);
+    this = (CExpressionValueStack *)0x12;
+    if (fVar1 == 2.52234e-44) {
+      *(float *)pCVar5 = *(float *)pCVar5 * *(float *)pCVar5;
+    }
+    else if (fVar1 == 4.90454e-44) {
+      *(float *)pCVar5 =
+           *(float *)pCVar5 * *(float *)pCVar5 + *(float *)(pCVar5 + 4) * *(float *)(pCVar5 + 4);
+    }
+    else if (fVar1 == 7.28675e-44) {
+      fStack_64 = (float)((ulonglong)*(undefined8 *)pCVar5 >> 0x20);
+      local_68 = (float)*(undefined8 *)pCVar5;
+      *(float *)pCVar5 =
+           fStack_64 * fStack_64 + local_68 * local_68 +
+           *(float *)(pCVar5 + 8) * *(float *)(pCVar5 + 8);
+    }
+    else if (fVar1 == 9.66896e-44) {
+      *(float *)pCVar5 =
+           *(float *)(pCVar5 + 4) * *(float *)(pCVar5 + 4) + *(float *)pCVar5 * *(float *)pCVar5 +
+           *(float *)(pCVar5 + 8) * *(float *)(pCVar5 + 8) +
+           *(float *)(pCVar5 + 0xc) * *(float *)(pCVar5 + 0xc);
+    }
+    else {
+      if (fVar1 != 9.94922e-44) {
+        uVar6 = 0xdd3;
         goto LAB_0;
       }
-      *(float *)(this + uVar3 * 0x50) =
-           *(float *)(this + uVar3 * 0x50) * *(float *)(this + uVar3 * 0x50) +
-           *(float *)(this + uVar3 * 0x50 + 4) * *(float *)(this + uVar3 * 0x50 + 4) +
-           *(float *)(this + uVar3 * 0x50 + 8) * *(float *)(this + uVar3 * 0x50 + 8) +
-           *(float *)(this + uVar3 * 0x50 + 0xc) * *(float *)(this + uVar3 * 0x50 + 0xc);
+      *(float *)pCVar5 =
+           *(float *)pCVar5 * *(float *)pCVar5 + *(float *)(pCVar5 + 4) * *(float *)(pCVar5 + 4) +
+           *(float *)(pCVar5 + 8) * *(float *)(pCVar5 + 8) +
+           *(float *)(pCVar5 + 0xc) * *(float *)(pCVar5 + 0xc);
     }
-    *(undefined4 *)(this + uVar3 * 0x50 + 0x48) = 0x12;
+    *(float *)(pCVar5 + 0x48) = 2.52234e-44;
+    pCVar5[0x4c] = (CExpressionValue)0x1;
     lVar4 = 0;
-    this[uVar3 * 0x50 + 0x4c] = (CExpressionValueStack)0x1;
   }
   return lVar4;
 }
 

```


## CExpressionValueStack::QuaternionFromYawPitchRoll

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.27|
|i_ratio|0.15|
|m_ratio|0.64|
|b_ratio|0.58|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|QuaternionFromYawPitchRoll|QuaternionFromYawPitchRoll|
|fullname|CExpressionValueStack::QuaternionFromYawPitchRoll|CExpressionValueStack::QuaternionFromYawPitchRoll|
|refcount|2|2|
|`length`|251|507|
|`called`|D3DXQuaternionRotationYawPitchRoll<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXQuaternionRotationYawPitchRoll<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1802589ac|18025c544|
|sig|long __thiscall QuaternionFromYawPitchRoll(CExpressionValueStack * this)|long __thiscall QuaternionFromYawPitchRoll(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::QuaternionFromYawPitchRoll Called Diff


```diff
--- CExpressionValueStack::QuaternionFromYawPitchRoll called
+++ CExpressionValueStack::QuaternionFromYawPitchRoll called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::QuaternionFromYawPitchRoll Calling Diff


```diff
--- CExpressionValueStack::QuaternionFromYawPitchRoll calling
+++ CExpressionValueStack::QuaternionFromYawPitchRoll calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::QuaternionFromYawPitchRoll Diff


```diff
--- CExpressionValueStack::QuaternionFromYawPitchRoll
+++ CExpressionValueStack::QuaternionFromYawPitchRoll
@@ -1,50 +1,92 @@
 
 /* public: long __cdecl CExpressionValueStack::QuaternionFromYawPitchRoll(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::QuaternionFromYawPitchRoll(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
-  longlong lVar2;
-  ulonglong uVar3;
-  uint uVar4;
-  undefined8 local_18;
-  undefined8 uStack_10;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar6;
+  uint uVar7;
+  undefined8 local_78;
+  undefined8 uStack_70;
+  CExpressionValue local_68 [80];
   
-  uVar4 = *(uint *)(this + 0x10);
-  if (uVar4 < 3) {
-    uVar4 = 0x1bb4;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 3) {
+    uVar7 = 0x1bc4;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    lVar2 = *(longlong *)(this + 0x18);
-    uVar3 = (ulonglong)(uVar4 - 3);
-    if (*(int *)(lVar2 + 0x48 + uVar3 * 0x50) == 0x12) {
-      if (*(int *)(lVar2 + 0x48 + (ulonglong)(uVar4 - 2) * 0x50) == 0x12) {
-        if (*(int *)(lVar2 + 0x48 + (ulonglong)(uVar4 - 1) * 0x50) == 0x12) {
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 3);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if (*(float *)(pCVar3 + 0x48) == 2.52234e-44) {
+      if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+        if (*(float *)(pCVar6 + 0x48) == 2.52234e-44) {
           D3DXQuaternionRotationYawPitchRoll
-                    ((D2DQuaternion *)&local_18,*(float *)(lVar2 + uVar3 * 0x50),
-                     *(float *)(lVar2 + (ulonglong)(uVar4 - 2) * 0x50),
-                     *(float *)(lVar2 + (ulonglong)(uVar4 - 1) * 0x50));
-          *(undefined4 *)(lVar2 + 0x48 + uVar3 * 0x50) = 0x47;
-          *(undefined1 *)(lVar2 + 0x4c + uVar3 * 0x50) = 1;
-          puVar1 = (undefined8 *)(lVar2 + uVar3 * 0x50);
-          *puVar1 = local_18;
-          puVar1[1] = uStack_10;
-          *(int *)(this + 0x10) = *(int *)(this + 0x10) + -2;
+                    ((D2DQuaternion *)&local_78,*(float *)pCVar3,*(float *)pCVar4,*(float *)pCVar6);
+          *(float *)(pCVar3 + 0x48) = 9.94922e-44;
+          pCVar3[0x4c] = (CExpressionValue)0x1;
+          *(undefined8 *)pCVar3 = local_78;
+          *(undefined8 *)(pCVar3 + 8) = uStack_70;
+          *(uint *)pCVar1 = *(uint *)pCVar1 - 2;
           return 0;
         }
-        uVar4 = 0x1bbd;
+        uVar7 = 0x1bcd;
       }
       else {
-        uVar4 = 0x1bbc;
+        uVar7 = 0x1bcc;
       }
     }
     else {
-      uVar4 = 0x1bbb;
+      uVar7 = 0x1bcb;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar4,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Min

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.24|
|i_ratio|0.21|
|m_ratio|0.8|
|b_ratio|0.77|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Min|Min|
|fullname|CExpressionValueStack::Min|CExpressionValueStack::Min|
|refcount|2|2|
|`length`|488|624|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180257a30|18025af88|
|sig|long __thiscall Min(CExpressionValueStack * this)|long __thiscall Min(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Min Called Diff


```diff
--- CExpressionValueStack::Min called
+++ CExpressionValueStack::Min called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Min Calling Diff


```diff
--- CExpressionValueStack::Min calling
+++ CExpressionValueStack::Min calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Min Diff


```diff
--- CExpressionValueStack::Min
+++ CExpressionValueStack::Min
@@ -1,126 +1,143 @@
 
 /* public: long __cdecl CExpressionValueStack::Min(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Min(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  undefined8 *puVar2;
-  undefined8 uVar3;
-  undefined8 uVar4;
-  int iVar5;
-  longlong lVar6;
+  CExpressionValueStack *pCVar1;
+  float fVar2;
+  bool bVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
   float fVar7;
-  ulonglong uVar8;
-  ulonglong uVar9;
+  float fVar8;
+  float fVar9;
   float fVar10;
-  float fVar11;
-  float fVar12;
-  float fVar13;
-  uint uVar14;
-  float local_28;
-  float fStack_24;
-  undefined8 local_18;
+  uint uVar11;
+  float local_88;
+  float fStack_84;
+  undefined8 local_78;
+  CExpressionValue local_68 [80];
   
-  uVar14 = *(uint *)(this + 0x10);
-  if (uVar14 < 2) {
-    uVar14 = 0x8fa;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar11 = 0x90a;
+    pCVar5 = (CExpressionValue *)this;
   }
   else {
-    lVar6 = *(longlong *)(this + 0x18);
-    uVar8 = (ulonglong)(uVar14 - 2);
-    uVar9 = (ulonglong)(uVar14 - 1);
-    iVar5 = *(int *)(lVar6 + 0x48 + uVar8 * 0x50);
-    if (iVar5 == *(int *)(lVar6 + 0x48 + uVar9 * 0x50)) {
-      if (iVar5 == 0x12) {
-        fVar12 = *(float *)(lVar6 + uVar9 * 0x50);
-        fVar11 = *(float *)(lVar6 + uVar8 * 0x50);
-        if (fVar12 <= fVar11) {
-          fVar11 = fVar12;
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar5 = (CExpressionValue *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 2);
+    }
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      pCVar5 = local_68;
+      CExpressionValue::~CExpressionValue(pCVar5);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 1);
+    }
+    fVar9 = *(float *)(pCVar4 + 0x48);
+    if (fVar9 == *(float *)(pCVar6 + 0x48)) {
+      if (fVar9 == 2.52234e-44) {
+        fVar9 = *(float *)pCVar4;
+        if (*(float *)pCVar6 <= *(float *)pCVar4) {
+          fVar9 = *(float *)pCVar6;
         }
-        *(undefined4 *)(lVar6 + 0x48 + uVar8 * 0x50) = 0x12;
-        *(float *)(lVar6 + uVar8 * 0x50) = fVar11;
+        *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+        *(float *)pCVar4 = fVar9;
       }
-      else if (iVar5 == 0x23) {
-        fVar12 = *(float *)(lVar6 + uVar8 * 0x50);
-        fVar11 = *(float *)(lVar6 + uVar9 * 0x50);
-        if (fVar11 <= fVar12) {
-          fVar12 = fVar11;
+      else if (fVar9 == 4.90454e-44) {
+        fVar9 = *(float *)pCVar4;
+        if (*(float *)pCVar6 <= *(float *)pCVar4) {
+          fVar9 = *(float *)pCVar6;
         }
-        fVar11 = *(float *)(lVar6 + 4 + uVar8 * 0x50);
-        fVar13 = *(float *)(lVar6 + 4 + uVar9 * 0x50);
-        if (fVar13 <= fVar11) {
-          fVar11 = fVar13;
+        fVar8 = *(float *)(pCVar4 + 4);
+        if (*(float *)(pCVar6 + 4) <= *(float *)(pCVar4 + 4)) {
+          fVar8 = *(float *)(pCVar6 + 4);
         }
-        *(undefined4 *)(lVar6 + 0x48 + uVar8 * 0x50) = 0x23;
-        *(float *)(lVar6 + uVar8 * 0x50) = fVar12;
-        *(float *)(lVar6 + 4 + uVar8 * 0x50) = fVar11;
+        *(float *)(pCVar4 + 0x48) = 4.90454e-44;
+        *(float *)pCVar4 = fVar9;
+        *(float *)(pCVar4 + 4) = fVar8;
       }
-      else if (iVar5 == 0x34) {
-        uVar3 = *(undefined8 *)(lVar6 + uVar8 * 0x50);
-        fVar12 = *(float *)(lVar6 + 8 + uVar8 * 0x50);
-        uVar4 = *(undefined8 *)(lVar6 + uVar9 * 0x50);
-        fStack_24 = (float)((ulonglong)uVar3 >> 0x20);
-        local_28 = (float)uVar3;
-        local_18._0_4_ = (float)uVar4;
-        if ((float)local_18 <= local_28) {
-          local_28 = (float)local_18;
+      else if (fVar9 == 7.28675e-44) {
+        fStack_84 = (float)((ulonglong)*(undefined8 *)pCVar4 >> 0x20);
+        local_88 = (float)*(undefined8 *)pCVar4;
+        local_78._0_4_ = (float)*(undefined8 *)pCVar6;
+        if ((float)local_78 <= local_88) {
+          local_88 = (float)local_78;
         }
-        local_18._4_4_ = (float)((ulonglong)uVar4 >> 0x20);
-        if (local_18._4_4_ <= fStack_24) {
-          fStack_24 = local_18._4_4_;
+        local_78._4_4_ = (float)((ulonglong)*(undefined8 *)pCVar6 >> 0x20);
+        if (local_78._4_4_ <= fStack_84) {
+          fStack_84 = local_78._4_4_;
         }
-        fVar11 = *(float *)(lVar6 + 8 + uVar9 * 0x50);
-        if (fVar11 <= fVar12) {
-          fVar12 = fVar11;
+        fVar9 = *(float *)(pCVar4 + 8);
+        if (*(float *)(pCVar6 + 8) <= *(float *)(pCVar4 + 8)) {
+          fVar9 = *(float *)(pCVar6 + 8);
         }
-        *(undefined4 *)(lVar6 + 0x48 + uVar8 * 0x50) = 0x34;
-        *(float *)(lVar6 + uVar8 * 0x50) = local_28;
-        *(float *)(lVar6 + 4 + uVar8 * 0x50) = fStack_24;
-        *(float *)(lVar6 + 8 + uVar8 * 0x50) = fVar12;
+        *(float *)(pCVar4 + 0x48) = 7.28675e-44;
+        *(float *)pCVar4 = local_88;
+        *(float *)(pCVar4 + 4) = fStack_84;
+        *(float *)(pCVar4 + 8) = fVar9;
       }
       else {
-        if (iVar5 != 0x45) {
-          uVar14 = 0x94a;
+        if (fVar9 != 9.66896e-44) {
+          uVar11 = 0x95a;
           goto LAB_0;
         }
-        pfVar1 = (float *)(lVar6 + uVar9 * 0x50);
-        fVar12 = *pfVar1;
-        fVar11 = pfVar1[1];
-        fVar13 = pfVar1[2];
-        fVar7 = pfVar1[3];
-        *(undefined4 *)(lVar6 + 0x48 + uVar8 * 0x50) = 0x45;
-        pfVar1 = (float *)(lVar6 + uVar8 * 0x50);
-        fVar10 = *pfVar1;
-        if (fVar12 <= *pfVar1) {
-          fVar10 = fVar12;
+        fVar9 = *(float *)pCVar6;
+        fVar8 = *(float *)(pCVar6 + 4);
+        fVar10 = *(float *)(pCVar6 + 8);
+        fVar2 = *(float *)(pCVar6 + 0xc);
+        *(float *)(pCVar4 + 0x48) = 9.66896e-44;
+        fVar7 = *(float *)pCVar4;
+        if (fVar9 <= *(float *)pCVar4) {
+          fVar7 = fVar9;
         }
-        fVar12 = pfVar1[1];
-        if (fVar11 <= pfVar1[1]) {
-          fVar12 = fVar11;
+        fVar9 = *(float *)(pCVar4 + 4);
+        if (fVar8 <= *(float *)(pCVar4 + 4)) {
+          fVar9 = fVar8;
         }
-        fVar11 = pfVar1[2];
-        if (fVar13 <= pfVar1[2]) {
-          fVar11 = fVar13;
+        fVar8 = *(float *)(pCVar4 + 8);
+        if (fVar10 <= *(float *)(pCVar4 + 8)) {
+          fVar8 = fVar10;
         }
-        fVar13 = pfVar1[3];
-        if (fVar7 <= pfVar1[3]) {
-          fVar13 = fVar7;
+        fVar10 = *(float *)(pCVar4 + 0xc);
+        if (fVar2 <= *(float *)(pCVar4 + 0xc)) {
+          fVar10 = fVar2;
         }
-        local_18 = CONCAT44(fVar12,fVar10);
-        puVar2 = (undefined8 *)(lVar6 + uVar8 * 0x50);
-        *puVar2 = local_18;
-        puVar2[1] = CONCAT44(fVar13,fVar11);
+        local_78 = CONCAT44(fVar9,fVar7);
+        *(undefined8 *)pCVar4 = local_78;
+        *(ulonglong *)(pCVar4 + 8) = CONCAT44(fVar10,fVar8);
       }
-      *(undefined1 *)(lVar6 + 0x4c + uVar8 * 0x50) = 1;
-      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+      pCVar4[0x4c] = (CExpressionValue)0x1;
+      *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
       return 0;
     }
-    uVar14 = 0x912;
+    uVar11 = 0x922;
   }
 LAB_0:
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar14,(void *)0x0);
+            ((ulong)pCVar5,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar11,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Vector3

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.21|
|i_ratio|0.06|
|m_ratio|0.57|
|b_ratio|0.35|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Vector3|Vector3|
|fullname|CExpressionValueStack::Vector3|CExpressionValueStack::Vector3|
|`refcount`|3|2|
|`length`|217|451|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1800eb344|1800bced8|
|sig|long __thiscall Vector3(CExpressionValueStack * this)|long __thiscall Vector3(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Vector3 Called Diff


```diff
--- CExpressionValueStack::Vector3 called
+++ CExpressionValueStack::Vector3 called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Vector3 Diff


```diff
--- CExpressionValueStack::Vector3
+++ CExpressionValueStack::Vector3
@@ -1,39 +1,84 @@
 
 /* public: long __cdecl CExpressionValueStack::Vector3(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Vector3(CExpressionValueStack *this)
 
 {
-  undefined4 uVar1;
+  CExpressionValueStack *pCVar1;
   undefined4 uVar2;
-  longlong lVar3;
-  ulonglong uVar4;
-  uint uVar5;
+  undefined4 uVar3;
+  bool bVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
+  CExpressionValue *pCVar7;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar8;
+  uint uVar9;
+  CExpressionValue local_68 [80];
   
-  uVar5 = *(uint *)(this + 0x10);
-  if (uVar5 < 3) {
-    uVar5 = 0x1433;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 3) {
+    uVar9 = 0x1443;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    lVar3 = *(longlong *)(this + 0x18);
-    uVar4 = (ulonglong)(uVar5 - 3);
-    if (((*(int *)(lVar3 + 0x48 + uVar4 * 0x50) == 0x12) &&
-        (*(int *)(lVar3 + 0x48 + (ulonglong)(uVar5 - 2) * 0x50) == 0x12)) &&
-       (*(int *)(lVar3 + 0x48 + (ulonglong)(uVar5 - 1) * 0x50) == 0x12)) {
-      uVar1 = *(undefined4 *)(lVar3 + (ulonglong)(uVar5 - 1) * 0x50);
-      uVar2 = *(undefined4 *)(lVar3 + (ulonglong)(uVar5 - 2) * 0x50);
-      *(undefined4 *)(lVar3 + 0x48 + uVar4 * 0x50) = 0x34;
-      *(undefined4 *)(lVar3 + uVar4 * 0x50) = *(undefined4 *)(lVar3 + uVar4 * 0x50);
-      *(undefined4 *)(lVar3 + 4 + uVar4 * 0x50) = uVar2;
-      *(undefined4 *)(lVar3 + 8 + uVar4 * 0x50) = uVar1;
-      *(undefined1 *)(lVar3 + 0x4c + uVar4 * 0x50) = 1;
-      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -2;
+    bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar8 = &s_emptyValue;
+    if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar5 = &s_emptyValue;
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 3);
+    }
+    bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar6 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar6);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar6 = &s_emptyValue;
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar7 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar7);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar8 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if (((*(int *)(pCVar5 + 0x48) == 0x12) && (*(int *)(pCVar6 + 0x48) == 0x12)) &&
+       (*(int *)(pCVar8 + 0x48) == 0x12)) {
+      uVar2 = *(undefined4 *)pCVar6;
+      uVar3 = *(undefined4 *)pCVar8;
+      *(undefined4 *)(pCVar5 + 0x48) = 0x34;
+      *(undefined4 *)pCVar5 = *(undefined4 *)pCVar5;
+      *(undefined4 *)(pCVar5 + 4) = uVar2;
+      *(undefined4 *)(pCVar5 + 8) = uVar3;
+      pCVar5[0x4c] = (CExpressionValue)0x1;
+      *(uint *)pCVar1 = *(uint *)pCVar1 - 2;
       return 0;
     }
-    uVar5 = 0x1443;
+    uVar9 = 0x1453;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar9,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Vector4

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.2|
|i_ratio|0.08|
|m_ratio|0.55|
|b_ratio|0.43|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Vector4|Vector4|
|fullname|CExpressionValueStack::Vector4|CExpressionValueStack::Vector4|
|refcount|2|2|
|`length`|250|562|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1802599a0|18025dea0|
|sig|long __thiscall Vector4(CExpressionValueStack * this)|long __thiscall Vector4(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Vector4 Called Diff


```diff
--- CExpressionValueStack::Vector4 called
+++ CExpressionValueStack::Vector4 called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Vector4 Calling Diff


```diff
--- CExpressionValueStack::Vector4 calling
+++ CExpressionValueStack::Vector4 calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Vector4 Diff


```diff
--- CExpressionValueStack::Vector4
+++ CExpressionValueStack::Vector4
@@ -1,41 +1,102 @@
 
 /* public: long __cdecl CExpressionValueStack::Vector4(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Vector4(CExpressionValueStack *this)
 
 {
-  undefined4 uVar1;
+  CExpressionValueStack *pCVar1;
   undefined4 uVar2;
   undefined4 uVar3;
-  longlong lVar4;
-  undefined8 *puVar5;
-  uint uVar6;
+  undefined4 uVar4;
+  bool bVar5;
+  CExpressionValue *pCVar6;
+  CExpressionValue *pCVar7;
+  CExpressionValue *pCVar8;
+  CExpressionValue *pCVar9;
+  CExpressionValue *local_res8;
+  uint uVar10;
+  CExpressionValue local_78 [80];
   
-  uVar6 = *(uint *)(this + 0x10);
-  if (uVar6 < 4) {
-    uVar6 = 0x146c;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 4) {
+    uVar10 = 0x147c;
+    pCVar8 = (CExpressionValue *)this;
   }
   else {
-    lVar4 = *(longlong *)(this + 0x18);
-    puVar5 = (undefined8 *)((ulonglong)(uVar6 - 4) * 0x50 + lVar4);
-    if ((((*(int *)(puVar5 + 9) == 0x12) &&
-         (*(int *)(lVar4 + 0x48 + (ulonglong)(uVar6 - 3) * 0x50) == 0x12)) &&
-        (*(int *)(lVar4 + 0x48 + (ulonglong)(uVar6 - 2) * 0x50) == 0x12)) &&
-       (*(int *)(lVar4 + 0x48 + (ulonglong)(uVar6 - 1) * 0x50) == 0x12)) {
-      uVar1 = *(undefined4 *)(lVar4 + (ulonglong)(uVar6 - 3) * 0x50);
-      uVar2 = *(undefined4 *)(lVar4 + (ulonglong)(uVar6 - 2) * 0x50);
-      uVar3 = *(undefined4 *)(lVar4 + (ulonglong)(uVar6 - 1) * 0x50);
-      *(undefined4 *)(puVar5 + 9) = 0x45;
-      *(undefined1 *)((longlong)puVar5 + 0x4c) = 1;
-      *puVar5 = CONCAT44(uVar1,*(undefined4 *)puVar5);
-      puVar5[1] = CONCAT44(uVar3,uVar2);
-      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -3;
+    bVar5 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar8 = (CExpressionValue *)(this + 0x18);
+    pCVar9 = &s_emptyValue;
+    if ((bVar5) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 4)) {
+      pCVar6 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar6);
+      CExpressionValue::~CExpressionValue(local_78);
+      pCVar6 = &s_emptyValue;
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar8,*(uint *)pCVar1 - 4);
+    }
+    bVar5 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar5) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar7 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar7);
+      CExpressionValue::~CExpressionValue(local_78);
+      local_res8 = &s_emptyValue;
+    }
+    else {
+      local_res8 = DynArray<CExpressionValue,1>::operator[]
+                             ((DynArray<CExpressionValue,1> *)pCVar8,*(uint *)pCVar1 - 3);
+    }
+    bVar5 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar5) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar7 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar7);
+      CExpressionValue::~CExpressionValue(local_78);
+      pCVar7 = &s_emptyValue;
+    }
+    else {
+      pCVar7 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar8,*(uint *)pCVar1 - 2);
+    }
+    bVar5 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar5) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar8);
+      pCVar8 = local_78;
+      CExpressionValue::~CExpressionValue(pCVar8);
+    }
+    else {
+      pCVar9 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar8,*(uint *)pCVar1 - 1);
+    }
+    if ((((*(int *)(pCVar6 + 0x48) == 0x12) && (*(int *)(local_res8 + 0x48) == 0x12)) &&
+        (*(int *)(pCVar7 + 0x48) == 0x12)) && (*(int *)(pCVar9 + 0x48) == 0x12)) {
+      uVar2 = *(undefined4 *)local_res8;
+      uVar3 = *(undefined4 *)pCVar7;
+      uVar4 = *(undefined4 *)pCVar9;
+      *(undefined4 *)(pCVar6 + 0x48) = 0x45;
+      pCVar6[0x4c] = (CExpressionValue)0x1;
+      *(ulonglong *)pCVar6 = CONCAT44(uVar2,*(undefined4 *)pCVar6);
+      *(ulonglong *)(pCVar6 + 8) = CONCAT44(uVar4,uVar3);
+      *(uint *)pCVar1 = *(uint *)pCVar1 - 3;
       return 0;
     }
-    uVar6 = 0x147e;
+    uVar10 = 0x148e;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
+            ((ulong)pCVar8,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar10,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::TimeSpanFrom

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.38|
|i_ratio|0.14|
|m_ratio|0.77|
|b_ratio|0.7|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|TimeSpanFrom|TimeSpanFrom|
|fullname|CExpressionValueStack::TimeSpanFrom|CExpressionValueStack::TimeSpanFrom|
|refcount|4|4|
|`length`|133|226|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|2|2|
|`address`|180258e3c|18025ccc4|
|sig|long __thiscall TimeSpanFrom(CExpressionValueStack * this, uint param_1)|long __thiscall TimeSpanFrom(CExpressionValueStack * this, uint param_1)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::TimeSpanFrom Called Diff


```diff
--- CExpressionValueStack::TimeSpanFrom called
+++ CExpressionValueStack::TimeSpanFrom called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::TimeSpanFrom Calling Diff


```diff
--- CExpressionValueStack::TimeSpanFrom calling
+++ CExpressionValueStack::TimeSpanFrom calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::TimeSpanFrom Diff


```diff
--- CExpressionValueStack::TimeSpanFrom
+++ CExpressionValueStack::TimeSpanFrom
@@ -1,27 +1,47 @@
 
 /* public: long __cdecl CExpressionValueStack::TimeSpanFrom(unsigned int) __ptr64 */
 
 long __thiscall CExpressionValueStack::TimeSpanFrom(CExpressionValueStack *this,uint param_1)
 
 {
-  float *pfVar1;
-  uint uVar2;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  uint uVar5;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar2 = 0x1c17;
+    uVar5 = 0x1c27;
   }
   else {
-    pfVar1 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar1[0x12] == 2.52234e-44) {
-      pfVar1[0x12] = 5.88545e-44;
-      *(undefined1 *)(pfVar1 + 0x13) = 1;
-      *pfVar1 = (float)param_1 * *pfVar1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+      *(float *)(pCVar4 + 0x48) = 5.88545e-44;
+      pCVar4[0x4c] = (CExpressionValue)0x1;
+      *(float *)pCVar4 = (float)param_1 * *(float *)pCVar4;
       return 0;
     }
-    uVar2 = 0x1c23;
+    uVar5 = 0x1c33;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar2,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Matrix3x2FromRotation

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.24|
|i_ratio|0.14|
|m_ratio|0.76|
|b_ratio|0.66|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix3x2FromRotation|Matrix3x2FromRotation|
|fullname|CExpressionValueStack::Matrix3x2FromRotation|CExpressionValueStack::Matrix3x2FromRotation|
|refcount|2|2|
|`length`|400|652|
|`called`|D2D1.DLL::D2D1MakeRotateMatrix<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2D1.DLL::D2D1MakeRotateMatrix<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|2|2|
|`address`|18025654c|180258bf0|
|sig|long __thiscall Matrix3x2FromRotation(CExpressionValueStack * this, uint param_1)|long __thiscall Matrix3x2FromRotation(CExpressionValueStack * this, uint param_1)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix3x2FromRotation Called Diff


```diff
--- CExpressionValueStack::Matrix3x2FromRotation called
+++ CExpressionValueStack::Matrix3x2FromRotation called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix3x2FromRotation Calling Diff


```diff
--- CExpressionValueStack::Matrix3x2FromRotation calling
+++ CExpressionValueStack::Matrix3x2FromRotation calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Matrix3x2FromRotation Diff


```diff
--- CExpressionValueStack::Matrix3x2FromRotation
+++ CExpressionValueStack::Matrix3x2FromRotation
@@ -1,69 +1,115 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CExpressionValueStack::Matrix3x2FromRotation(unsigned int) __ptr64 */
 
 long __thiscall
 CExpressionValueStack::Matrix3x2FromRotation(CExpressionValueStack *this,uint param_1)
 
 {
-  bool bVar1;
-  undefined8 *puVar2;
-  CExpressionValueStack *pCVar3;
-  long lVar4;
-  float *pfVar5;
-  undefined1 auStackY_68 [32];
-  uint uVar6;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  bool bVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  long lVar6;
+  CExpressionValue *pCVar7;
+  undefined1 auStackY_d8 [32];
+  uint uVar8;
+  CExpressionValue local_98 [80];
+  undefined8 local_48;
+  undefined8 uStack_40;
   undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  ulonglong local_20;
+  ulonglong local_30;
   
-  local_20 = __security_cookie ^ (ulonglong)auStackY_68;
-  bVar1 = false;
-  uVar6 = *(uint *)(this + 0x10);
-  pCVar3 = this;
-  if (uVar6 < param_1) {
-    uVar6 = 0x179e;
+  local_30 = __security_cookie ^ (ulonglong)auStackY_d8;
+  pCVar1 = this + 0x10;
+  bVar2 = false;
+  pCVar4 = (CExpressionValue *)this;
+  if (*(uint *)pCVar1 < param_1) {
+    uVar8 = 0x17ae;
 LAB_0:
-    lVar4 = -0x7fffbffb;
+    lVar6 = -0x7fffbffb;
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)pCVar3,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0)
+              ((ulong)pCVar4,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar8,(void *)0x0)
     ;
   }
   else {
     if (param_1 == 1) {
-      pfVar5 = (float *)((ulonglong)(uVar6 - 1) * 0x50 + *(longlong *)(this + 0x18));
-      bVar1 = false;
-      if (pfVar5[0x12] == 2.52234e-44) {
-        bVar1 = true;
-        D2D1MakeRotateMatrix(*pfVar5 * 57.295776,0,&local_38);
-        pfVar5[0x12] = 1.45735e-43;
-        *(undefined8 *)pfVar5 = local_38;
-        *(undefined8 *)(pfVar5 + 2) = uStack_30;
-        *(undefined1 *)(pfVar5 + 0x13) = 1;
-        *(undefined8 *)(pfVar5 + 4) = local_28;
+      bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+        pCVar7 = &s_emptyValue;
+        CExpressionValue::operator=(&s_emptyValue,pCVar4);
+        pCVar4 = local_98;
+        CExpressionValue::~CExpressionValue(pCVar4);
+      }
+      else {
+        pCVar4 = (CExpressionValue *)(this + 0x18);
+        pCVar7 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar4,*(uint *)pCVar1 - 1);
+      }
+      if (*(float *)(pCVar7 + 0x48) == 2.52234e-44) {
+        bVar2 = true;
+        D2D1MakeRotateMatrix(*(float *)pCVar7 * 57.295776,0,&local_48);
+        *(float *)(pCVar7 + 0x48) = 1.45735e-43;
+        *(undefined8 *)pCVar7 = local_48;
+        *(undefined8 *)(pCVar7 + 8) = uStack_40;
+        pCVar7[0x4c] = (CExpressionValue)0x1;
+        *(undefined8 *)(pCVar7 + 0x10) = local_38;
       }
 LAB_1:
-      if (!bVar1) {
-        uVar6 = 0x17c8;
+      if (!bVar2) {
+        uVar8 = 0x17d8;
         goto LAB_0;
       }
     }
     else {
       if (param_1 != 2) goto LAB_1;
-      pfVar5 = (float *)((ulonglong)(uVar6 - 2) * 0x50 + *(longlong *)(this + 0x18));
-      puVar2 = (undefined8 *)((ulonglong)(uVar6 - 1) * 0x50 + *(longlong *)(this + 0x18));
-      if ((pfVar5[0x12] != 2.52234e-44) || (*(int *)(puVar2 + 9) != 0x23)) goto LAB_1;
-      D2D1MakeRotateMatrix(*pfVar5 * 57.295776,*puVar2,&local_38);
-      pfVar5[0x12] = 1.45735e-43;
-      *(undefined8 *)pfVar5 = local_38;
-      *(undefined8 *)(pfVar5 + 2) = uStack_30;
-      *(undefined1 *)(pfVar5 + 0x13) = 1;
-      *(undefined8 *)(pfVar5 + 4) = local_28;
+      bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      pCVar4 = (CExpressionValue *)(this + 0x18);
+      pCVar7 = &s_emptyValue;
+      if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+        pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+        CExpressionValue::operator=(&s_emptyValue,pCVar5);
+        CExpressionValue::~CExpressionValue(local_98);
+        pCVar5 = &s_emptyValue;
+      }
+      else {
+        pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar4,*(uint *)pCVar1 - 2);
+      }
+      bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+        CExpressionValue::operator=(&s_emptyValue,pCVar4);
+        pCVar4 = local_98;
+        CExpressionValue::~CExpressionValue(pCVar4);
+      }
+      else {
+        pCVar7 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar4,*(uint *)pCVar1 - 1);
+      }
+      if ((*(float *)(pCVar5 + 0x48) != 2.52234e-44) || (*(int *)(pCVar7 + 0x48) != 0x23))
+      goto LAB_1;
+      D2D1MakeRotateMatrix(*(float *)pCVar5 * 57.295776,*(undefined8 *)pCVar7,&local_48);
+      *(float *)(pCVar5 + 0x48) = 1.45735e-43;
+      *(undefined8 *)pCVar5 = local_48;
+      *(undefined8 *)(pCVar5 + 8) = uStack_40;
+      pCVar5[0x4c] = (CExpressionValue)0x1;
+      *(undefined8 *)(pCVar5 + 0x10) = local_38;
     }
-    lVar4 = 0;
-    *(uint *)(this + 0x10) = *(int *)(this + 0x10) + (1 - param_1);
+    lVar6 = 0;
+    *(uint *)pCVar1 = *(uint *)pCVar1 + (1 - param_1);
   }
-  return lVar4;
+  return lVar6;
 }
 

```


## CExpressionValueStack::GreaterThanEquals

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.27|
|i_ratio|0.13|
|m_ratio|0.64|
|b_ratio|0.56|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|GreaterThanEquals|GreaterThanEquals|
|fullname|CExpressionValueStack::GreaterThanEquals|CExpressionValueStack::GreaterThanEquals|
|refcount|2|2|
|`length`|175|363|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1802557dc|180257bec|
|sig|long __thiscall GreaterThanEquals(CExpressionValueStack * this)|long __thiscall GreaterThanEquals(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::GreaterThanEquals Called Diff


```diff
--- CExpressionValueStack::GreaterThanEquals called
+++ CExpressionValueStack::GreaterThanEquals called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::GreaterThanEquals Calling Diff


```diff
--- CExpressionValueStack::GreaterThanEquals calling
+++ CExpressionValueStack::GreaterThanEquals calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::GreaterThanEquals Diff


```diff
--- CExpressionValueStack::GreaterThanEquals
+++ CExpressionValueStack::GreaterThanEquals
@@ -1,42 +1,70 @@
 
 /* public: long __cdecl CExpressionValueStack::GreaterThanEquals(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::GreaterThanEquals(CExpressionValueStack *this)
 
 {
-  float fVar1;
-  float *pfVar2;
-  CExpressionValueStack *pCVar3;
-  float *pfVar4;
-  uint uVar5;
+  CExpressionValueStack *pCVar1;
+  float fVar2;
+  bool bVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar6;
+  uint uVar7;
+  CExpressionValue local_68 [80];
   
-  uVar5 = *(uint *)(this + 0x10);
-  if (uVar5 < 2) {
-    uVar5 = 0x7c1;
-    pCVar3 = this;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar7 = 0x7d1;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    pfVar4 = (float *)((ulonglong)(uVar5 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar2 = (float *)((ulonglong)(uVar5 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    fVar1 = pfVar4[0x12];
-    pCVar3 = (CExpressionValueStack *)(ulonglong)(uint)fVar1;
-    if (fVar1 == pfVar2[0x12]) {
-      if (fVar1 == 2.52234e-44) {
-        fVar1 = *pfVar2;
-        pfVar4[0x12] = 2.38221e-44;
-        *(undefined1 *)(pfVar4 + 0x13) = 1;
-        *(bool *)pfVar4 = fVar1 <= *pfVar4;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if (*(float *)(pCVar4 + 0x48) == *(float *)(pCVar6 + 0x48)) {
+      if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+        fVar2 = *(float *)pCVar6;
+        *(float *)(pCVar4 + 0x48) = 2.38221e-44;
+        pCVar4[0x4c] = (CExpressionValue)0x1;
+        *pCVar4 = (CExpressionValue)(fVar2 <= *(float *)pCVar4);
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar5 = 0x7f1;
+      uVar7 = 0x801;
     }
     else {
-      uVar5 = 0x7dd;
+      uVar7 = 0x7ed;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pCVar3,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::QuaternionFromAxisAngle

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.23|
|i_ratio|0.17|
|m_ratio|0.71|
|b_ratio|0.6|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|QuaternionFromAxisAngle|QuaternionFromAxisAngle|
|fullname|CExpressionValueStack::QuaternionFromAxisAngle|CExpressionValueStack::QuaternionFromAxisAngle|
|refcount|2|2|
|`length`|219|376|
|`called`|D3DXQuaternionRotationAxis<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXQuaternionRotationAxis<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1802586bc|18025c088|
|sig|long __thiscall QuaternionFromAxisAngle(CExpressionValueStack * this)|long __thiscall QuaternionFromAxisAngle(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::QuaternionFromAxisAngle Called Diff


```diff
--- CExpressionValueStack::QuaternionFromAxisAngle called
+++ CExpressionValueStack::QuaternionFromAxisAngle called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::QuaternionFromAxisAngle Calling Diff


```diff
--- CExpressionValueStack::QuaternionFromAxisAngle calling
+++ CExpressionValueStack::QuaternionFromAxisAngle calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::QuaternionFromAxisAngle Diff


```diff
--- CExpressionValueStack::QuaternionFromAxisAngle
+++ CExpressionValueStack::QuaternionFromAxisAngle
@@ -1,44 +1,72 @@
 
 /* public: long __cdecl CExpressionValueStack::QuaternionFromAxisAngle(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::QuaternionFromAxisAngle(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
-  longlong lVar2;
-  ulonglong uVar3;
-  uint uVar4;
-  undefined8 local_28;
-  undefined4 local_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar5;
+  uint uVar6;
+  undefined8 local_88;
+  undefined4 local_80;
+  undefined8 local_78;
+  undefined8 uStack_70;
+  CExpressionValue local_68 [80];
   
-  uVar4 = *(uint *)(this + 0x10);
-  if (uVar4 < 2) {
-    uVar4 = 0x1b14;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar6 = 0x1b24;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    lVar2 = *(longlong *)(this + 0x18);
-    uVar3 = (ulonglong)(uVar4 - 2);
-    if ((*(int *)(lVar2 + 0x48 + uVar3 * 0x50) == 0x34) &&
-       (*(int *)(lVar2 + 0x48 + (ulonglong)(uVar4 - 1) * 0x50) == 0x12)) {
-      local_28 = *(undefined8 *)(lVar2 + uVar3 * 0x50);
-      local_20 = *(undefined4 *)(lVar2 + 8 + uVar3 * 0x50);
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar5 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if ((*(int *)(pCVar3 + 0x48) == 0x34) && (*(float *)(pCVar5 + 0x48) == 2.52234e-44)) {
+      local_88 = *(undefined8 *)pCVar3;
+      local_80 = *(undefined4 *)(pCVar3 + 8);
       D3DXQuaternionRotationAxis
-                ((D2DQuaternion *)&local_18,(D2DVector3 *)&local_28,
-                 *(float *)(lVar2 + (ulonglong)(uVar4 - 1) * 0x50));
-      *(undefined4 *)(lVar2 + 0x48 + uVar3 * 0x50) = 0x47;
-      *(undefined1 *)(lVar2 + 0x4c + uVar3 * 0x50) = 1;
-      puVar1 = (undefined8 *)(lVar2 + uVar3 * 0x50);
-      *puVar1 = local_18;
-      puVar1[1] = uStack_10;
-      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+                ((D2DQuaternion *)&local_78,(D2DVector3 *)&local_88,*(float *)pCVar5);
+      *(undefined4 *)(pCVar3 + 0x48) = 0x47;
+      pCVar3[0x4c] = (CExpressionValue)0x1;
+      *(undefined8 *)pCVar3 = local_78;
+      *(undefined8 *)(pCVar3 + 8) = uStack_70;
+      *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
       return 0;
     }
-    uVar4 = 0x1b22;
+    uVar6 = 0x1b32;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar4,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Asin

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.38|
|i_ratio|0.35|
|m_ratio|0.82|
|b_ratio|0.76|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Asin|Asin|
|fullname|CExpressionValueStack::Asin|CExpressionValueStack::Asin|
|refcount|2|2|
|`length`|165|244|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>asinf|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>asinf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180254c04|180256a50|
|sig|long __thiscall Asin(CExpressionValueStack * this)|long __thiscall Asin(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Asin Called Diff


```diff
--- CExpressionValueStack::Asin called
+++ CExpressionValueStack::Asin called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Asin Calling Diff


```diff
--- CExpressionValueStack::Asin calling
+++ CExpressionValueStack::Asin calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Asin Diff


```diff
--- CExpressionValueStack::Asin
+++ CExpressionValueStack::Asin
@@ -1,35 +1,55 @@
 
 /* public: long __cdecl CExpressionValueStack::Asin(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Asin(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  float fVar2;
-  uint uVar3;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  float fVar5;
+  uint uVar6;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar3 = 0x100c;
+    uVar6 = 0x101c;
   }
   else {
-    pfVar1 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar1[0x12] == 2.52234e-44) {
-      fVar2 = *pfVar1;
-      if ((-1.0 <= fVar2) && (fVar2 <= 1.0)) {
-        pfVar1[0x12] = 2.52234e-44;
-        fVar2 = asinf(fVar2);
-        *pfVar1 = fVar2;
-        *(undefined1 *)(pfVar1 + 0x13) = 1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+      fVar5 = *(float *)pCVar4;
+      if ((-1.0 <= fVar5) && (fVar5 <= 1.0)) {
+        *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+        fVar5 = asinf(fVar5);
+        *(float *)pCVar4 = fVar5;
+        pCVar4[0x4c] = (CExpressionValue)0x1;
         return 0;
       }
-      uVar3 = 0x1027;
+      uVar6 = 0x1037;
     }
     else {
-      uVar3 = 0x1036;
+      uVar6 = 0x1046;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar3,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::ColorLerpRgb

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.23|
|i_ratio|0.32|
|m_ratio|0.7|
|b_ratio|0.6|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|ColorLerpRgb|ColorLerpRgb|
|fullname|CExpressionValueStack::ColorLerpRgb|CExpressionValueStack::ColorLerpRgb|
|refcount|2|2|
|`length`|352|609|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180254f20|180256f54|
|sig|long __thiscall ColorLerpRgb(CExpressionValueStack * this)|long __thiscall ColorLerpRgb(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::ColorLerpRgb Called Diff


```diff
--- CExpressionValueStack::ColorLerpRgb called
+++ CExpressionValueStack::ColorLerpRgb called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::ColorLerpRgb Calling Diff


```diff
--- CExpressionValueStack::ColorLerpRgb calling
+++ CExpressionValueStack::ColorLerpRgb calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::ColorLerpRgb Diff


```diff
--- CExpressionValueStack::ColorLerpRgb
+++ CExpressionValueStack::ColorLerpRgb
@@ -1,65 +1,107 @@
 
 /* public: long __cdecl CExpressionValueStack::ColorLerpRgb(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::ColorLerpRgb(CExpressionValueStack *this)
 
 {
-  float fVar1;
+  CExpressionValueStack *pCVar1;
   float fVar2;
   float fVar3;
   float fVar4;
-  float *pfVar5;
-  CExpressionValueStack *pCVar6;
-  float *pfVar7;
-  float *pfVar8;
-  float fVar9;
-  float fVar10;
-  uint uVar11;
+  float fVar5;
+  bool bVar6;
+  CExpressionValue *pCVar7;
+  CExpressionValue *pCVar8;
+  CExpressionValue *pCVar9;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar10;
+  float fVar11;
+  float fVar12;
+  uint uVar13;
+  CExpressionValue local_68 [80];
   
-  uVar11 = *(uint *)(this + 0x10);
-  if (uVar11 < 3) {
-    uVar11 = 0xccf;
-    pCVar6 = this;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 3) {
+    uVar13 = 0xcdf;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    pfVar8 = (float *)((ulonglong)(uVar11 - 3) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar7 = (float *)((ulonglong)(uVar11 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar5 = (float *)((ulonglong)(uVar11 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    fVar1 = pfVar8[0x12];
-    pCVar6 = (CExpressionValueStack *)(ulonglong)(uint)fVar1;
-    fVar9 = *pfVar5;
-    if ((pfVar5[0x12] == 2.52234e-44) && (fVar1 == pfVar7[0x12])) {
-      if (fVar1 == 9.80909e-44) {
-        if (1.0 <= fVar9) {
-          fVar9 = 1.0;
+    bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar10 = &s_emptyValue;
+    if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar7 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar7);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar7 = &s_emptyValue;
+    }
+    else {
+      pCVar7 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 3);
+    }
+    bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar8);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar8 = &s_emptyValue;
+    }
+    else {
+      pCVar8 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar9 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar9);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar10 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    fVar11 = *(float *)pCVar10;
+    if ((*(float *)(pCVar10 + 0x48) == 2.52234e-44) &&
+       (*(float *)(pCVar7 + 0x48) == *(float *)(pCVar8 + 0x48))) {
+      if (*(float *)(pCVar7 + 0x48) == 9.80909e-44) {
+        if (1.0 <= fVar11) {
+          fVar11 = 1.0;
         }
-        fVar1 = *pfVar7;
-        fVar2 = pfVar7[1];
-        fVar3 = pfVar7[2];
-        fVar4 = pfVar7[3];
-        pfVar8[0x12] = 9.80909e-44;
-        *(undefined1 *)(pfVar8 + 0x13) = 1;
-        fVar10 = 0.0;
-        if (0.0 <= fVar9) {
-          fVar10 = fVar9;
+        fVar2 = *(float *)pCVar8;
+        fVar3 = *(float *)(pCVar8 + 4);
+        fVar4 = *(float *)(pCVar8 + 8);
+        fVar5 = *(float *)(pCVar8 + 0xc);
+        *(float *)(pCVar7 + 0x48) = 9.80909e-44;
+        pCVar7[0x4c] = (CExpressionValue)0x1;
+        fVar12 = 0.0;
+        if (0.0 <= fVar11) {
+          fVar12 = fVar11;
         }
-        *(ulonglong *)pfVar8 =
-             CONCAT44((fVar2 - pfVar8[1]) * fVar10 + pfVar8[1],(fVar1 - *pfVar8) * fVar10 + *pfVar8)
-        ;
-        *(ulonglong *)(pfVar8 + 2) =
-             CONCAT44((fVar4 - pfVar8[3]) * fVar10 + pfVar8[3],
-                      (fVar3 - pfVar8[2]) * fVar10 + pfVar8[2]);
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -2;
+        *(ulonglong *)pCVar7 =
+             CONCAT44((fVar3 - *(float *)(pCVar7 + 4)) * fVar12 + *(float *)(pCVar7 + 4),
+                      (fVar2 - *(float *)pCVar7) * fVar12 + *(float *)pCVar7);
+        *(ulonglong *)(pCVar7 + 8) =
+             CONCAT44((fVar5 - *(float *)(pCVar7 + 0xc)) * fVar12 + *(float *)(pCVar7 + 0xc),
+                      (fVar4 - *(float *)(pCVar7 + 8)) * fVar12 + *(float *)(pCVar7 + 8));
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 2;
         return 0;
       }
-      uVar11 = 0xd08;
+      uVar13 = 0xd18;
     }
     else {
-      uVar11 = 0xce9;
+      uVar13 = 0xcf9;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pCVar6,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar11,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar13,(void *)0x0)
+  ;
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Vector4Transform

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.28|
|i_ratio|0.06|
|m_ratio|0.85|
|b_ratio|0.78|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Vector4Transform|Vector4Transform|
|fullname|CExpressionValueStack::Vector4Transform|CExpressionValueStack::Vector4Transform|
|refcount|2|2|
|`length`|553|723|
|`called`|D3DXVec4Transform<br>D3DXVec4Transform<br>D3DXVec4Transform<br>D3DXVec4Transform<br>D3DXVec4Transform<br>D3DXVec4Transform<br>MilInstrumentationCheckHR_MaybeFailFast|<details><summary>Expand for full list:<br>CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXVec4Transform<br>D3DXVec4Transform<br>D3DXVec4Transform<br>D3DXVec4Transform<br>D3DXVec4Transform<br>D3DXVec4Transform<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast</summary>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled</details>|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180259ba0|18025e298|
|sig|long __thiscall Vector4Transform(CExpressionValueStack * this)|long __thiscall Vector4Transform(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Vector4Transform Called Diff


```diff
--- CExpressionValueStack::Vector4Transform called
+++ CExpressionValueStack::Vector4Transform called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -6,0 +10 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -7,0 +12 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Vector4Transform Calling Diff


```diff
--- CExpressionValueStack::Vector4Transform calling
+++ CExpressionValueStack::Vector4Transform calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Vector4Transform Diff


```diff
--- CExpressionValueStack::Vector4Transform
+++ CExpressionValueStack::Vector4Transform
@@ -1,130 +1,156 @@
 
 /* public: long __cdecl CExpressionValueStack::Vector4Transform(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Vector4Transform(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
+  CExpressionValueStack *pCVar1;
   int iVar2;
-  ulonglong uVar3;
-  CExpressionValueStack *pCVar4;
-  undefined8 *puVar5;
-  longlong lVar6;
-  longlong lVar7;
+  bool bVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar6;
   undefined8 local_res8;
-  uint uVar8;
+  uint uVar7;
+  undefined8 local_a8;
+  undefined8 uStack_a0;
+  undefined8 local_98;
+  undefined8 uStack_90;
+  undefined8 local_88;
+  undefined8 uStack_80;
   undefined8 local_78;
   undefined8 uStack_70;
   undefined8 local_68;
   undefined8 uStack_60;
   undefined8 local_58;
   undefined8 uStack_50;
   undefined8 local_48;
   undefined8 uStack_40;
-  undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
   
-  uVar8 = *(uint *)(this + 0x10);
-  pCVar4 = this;
-  if (uVar8 < 2) {
-    uVar8 = 0x1e13;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar7 = 0x1e23;
   }
   else {
-    lVar7 = *(longlong *)(this + 0x18);
-    uVar3 = (ulonglong)(uVar8 - 2);
-    lVar6 = uVar3 * 10;
-    puVar5 = (undefined8 *)((ulonglong)(uVar8 - 1) * 0x50 + lVar7);
-    iVar2 = *(int *)(lVar7 + 0x48 + uVar3 * 0x50);
-    if (((iVar2 == 0x23) || (iVar2 == 0x34)) || (iVar2 == 0x45)) {
-      uVar8 = *(uint *)(puVar5 + 9);
-      pCVar4 = (CExpressionValueStack *)(ulonglong)uVar8;
-      if ((uVar8 == 0x47) || (uVar8 == 0x109)) {
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_78);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      this = (CExpressionValueStack *)&local_78;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+      this = (CExpressionValueStack *)this_00;
+    }
+    iVar2 = *(int *)(pCVar4 + 0x48);
+    if ((iVar2 - 0x23U < 0x23) &&
+       (this = (CExpressionValueStack *)0x400020001,
+       (0x400020001U >> ((ulonglong)(iVar2 - 0x23U) & 0x3f) & 1) != 0)) {
+      uVar7 = *(uint *)(pCVar6 + 0x48);
+      this = (CExpressionValueStack *)(ulonglong)uVar7;
+      if ((uVar7 == 0x47) || (uVar7 == 0x109)) {
         if (iVar2 == 0x23) {
-          local_res8 = *(undefined8 *)(lVar7 + uVar3 * 0x50);
-          if (uVar8 == 0x109) {
-            local_48 = *puVar5;
-            uStack_40 = puVar5[1];
-            local_38 = puVar5[2];
-            uStack_30 = puVar5[3];
-            local_28 = puVar5[4];
-            uStack_20 = puVar5[5];
-            local_18 = puVar5[6];
-            uStack_10 = puVar5[7];
-            D3DXVec4Transform((D2DVector4 *)&local_68,(D2DVector2 *)&local_res8,
-                              (D2DMatrix *)&local_48);
+          local_res8 = *(undefined8 *)pCVar4;
+          if (uVar7 == 0x109) {
+            local_78 = *(undefined8 *)pCVar6;
+            uStack_70 = *(undefined8 *)(pCVar6 + 8);
+            local_68 = *(undefined8 *)(pCVar6 + 0x10);
+            uStack_60 = *(undefined8 *)(pCVar6 + 0x18);
+            local_58 = *(undefined8 *)(pCVar6 + 0x20);
+            uStack_50 = *(undefined8 *)(pCVar6 + 0x28);
+            local_48 = *(undefined8 *)(pCVar6 + 0x30);
+            uStack_40 = *(undefined8 *)(pCVar6 + 0x38);
+            D3DXVec4Transform((D2DVector4 *)&local_98,(D2DVector2 *)&local_res8,
+                              (D2DMatrix *)&local_78);
           }
-          else if (uVar8 == 0x47) {
-            local_78 = *puVar5;
-            uStack_70 = puVar5[1];
-            D3DXVec4Transform((D2DVector4 *)&local_68,(D2DVector2 *)&local_res8,
-                              (D2DQuaternion *)&local_78);
+          else if (uVar7 == 0x47) {
+            local_a8 = *(undefined8 *)pCVar6;
+            uStack_a0 = *(undefined8 *)(pCVar6 + 8);
+            D3DXVec4Transform((D2DVector4 *)&local_98,(D2DVector2 *)&local_res8,
+                              (D2DQuaternion *)&local_a8);
           }
         }
         else if (iVar2 == 0x34) {
-          local_78 = *(undefined8 *)(lVar7 + uVar3 * 0x50);
-          uStack_70 = CONCAT44(uStack_70._4_4_,*(undefined4 *)(lVar7 + 8 + uVar3 * 0x50));
-          if (uVar8 == 0x109) {
-            local_48 = *puVar5;
-            uStack_40 = puVar5[1];
-            local_38 = puVar5[2];
-            uStack_30 = puVar5[3];
-            local_28 = puVar5[4];
-            uStack_20 = puVar5[5];
-            local_18 = puVar5[6];
-            uStack_10 = puVar5[7];
-            D3DXVec4Transform((D2DVector4 *)&local_68,(D2DVector3 *)&local_78,(D2DMatrix *)&local_48
+          local_a8 = *(undefined8 *)pCVar4;
+          uStack_a0 = CONCAT44(uStack_a0._4_4_,*(undefined4 *)(pCVar4 + 8));
+          if (uVar7 == 0x109) {
+            local_78 = *(undefined8 *)pCVar6;
+            uStack_70 = *(undefined8 *)(pCVar6 + 8);
+            local_68 = *(undefined8 *)(pCVar6 + 0x10);
+            uStack_60 = *(undefined8 *)(pCVar6 + 0x18);
+            local_58 = *(undefined8 *)(pCVar6 + 0x20);
+            uStack_50 = *(undefined8 *)(pCVar6 + 0x28);
+            local_48 = *(undefined8 *)(pCVar6 + 0x30);
+            uStack_40 = *(undefined8 *)(pCVar6 + 0x38);
+            D3DXVec4Transform((D2DVector4 *)&local_98,(D2DVector3 *)&local_a8,(D2DMatrix *)&local_78
                              );
           }
-          else if (uVar8 == 0x47) {
-            local_58 = *puVar5;
-            uStack_50 = puVar5[1];
-            D3DXVec4Transform((D2DVector4 *)&local_68,(D2DVector3 *)&local_78,
-                              (D2DQuaternion *)&local_58);
+          else if (uVar7 == 0x47) {
+            local_88 = *(undefined8 *)pCVar6;
+            uStack_80 = *(undefined8 *)(pCVar6 + 8);
+            D3DXVec4Transform((D2DVector4 *)&local_98,(D2DVector3 *)&local_a8,
+                              (D2DQuaternion *)&local_88);
           }
         }
         else if (iVar2 == 0x45) {
-          puVar1 = (undefined8 *)(lVar7 + uVar3 * 0x50);
-          local_78 = *puVar1;
-          uStack_70 = puVar1[1];
-          if (uVar8 == 0x109) {
-            local_48 = *puVar5;
-            uStack_40 = puVar5[1];
-            local_38 = puVar5[2];
-            uStack_30 = puVar5[3];
-            local_28 = puVar5[4];
-            uStack_20 = puVar5[5];
-            local_18 = puVar5[6];
-            uStack_10 = puVar5[7];
-            D3DXVec4Transform((D2DVector4 *)&local_68,(D2DVector4 *)&local_78,(D2DMatrix *)&local_48
+          local_a8 = *(undefined8 *)pCVar4;
+          uStack_a0 = *(undefined8 *)(pCVar4 + 8);
+          if (uVar7 == 0x109) {
+            local_78 = *(undefined8 *)pCVar6;
+            uStack_70 = *(undefined8 *)(pCVar6 + 8);
+            local_68 = *(undefined8 *)(pCVar6 + 0x10);
+            uStack_60 = *(undefined8 *)(pCVar6 + 0x18);
+            local_58 = *(undefined8 *)(pCVar6 + 0x20);
+            uStack_50 = *(undefined8 *)(pCVar6 + 0x28);
+            local_48 = *(undefined8 *)(pCVar6 + 0x30);
+            uStack_40 = *(undefined8 *)(pCVar6 + 0x38);
+            D3DXVec4Transform((D2DVector4 *)&local_98,(D2DVector4 *)&local_a8,(D2DMatrix *)&local_78
                              );
           }
-          else if (uVar8 == 0x47) {
-            local_58 = *puVar5;
-            uStack_50 = puVar5[1];
-            D3DXVec4Transform((D2DVector4 *)&local_68,(D2DVector4 *)&local_78,
-                              (D2DQuaternion *)&local_58);
+          else if (uVar7 == 0x47) {
+            local_88 = *(undefined8 *)pCVar6;
+            uStack_80 = *(undefined8 *)(pCVar6 + 8);
+            D3DXVec4Transform((D2DVector4 *)&local_98,(D2DVector4 *)&local_a8,
+                              (D2DQuaternion *)&local_88);
           }
         }
-        *(undefined4 *)(lVar7 + 0x48 + lVar6 * 8) = 0x45;
-        *(undefined1 *)(lVar7 + 0x4c + lVar6 * 8) = 1;
-        puVar5 = (undefined8 *)(lVar7 + lVar6 * 8);
-        *puVar5 = local_68;
-        puVar5[1] = uStack_60;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+        *(undefined4 *)(pCVar4 + 0x48) = 0x45;
+        pCVar4[0x4c] = (CExpressionValue)0x1;
+        *(undefined8 *)pCVar4 = local_98;
+        *(undefined8 *)(pCVar4 + 8) = uStack_90;
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar8 = 0x1e2a;
+      uVar7 = 0x1e3a;
     }
     else {
-      uVar8 = 0x1e21;
+      uVar7 = 0x1e31;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pCVar4,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar8,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Matrix3x2FromSkew

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.19|
|i_ratio|0.11|
|m_ratio|0.68|
|b_ratio|0.45|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix3x2FromSkew|Matrix3x2FromSkew|
|fullname|CExpressionValueStack::Matrix3x2FromSkew|CExpressionValueStack::Matrix3x2FromSkew|
|refcount|2|2|
|`length`|469|862|
|`called`|D2D1.DLL::D2D1MakeSkewMatrix<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2D1.DLL::D2D1MakeSkewMatrix<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|2|2|
|`address`|1802566e4|180258e84|
|sig|long __thiscall Matrix3x2FromSkew(CExpressionValueStack * this, uint param_1)|long __thiscall Matrix3x2FromSkew(CExpressionValueStack * this, uint param_1)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix3x2FromSkew Called Diff


```diff
--- CExpressionValueStack::Matrix3x2FromSkew called
+++ CExpressionValueStack::Matrix3x2FromSkew called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix3x2FromSkew Calling Diff


```diff
--- CExpressionValueStack::Matrix3x2FromSkew calling
+++ CExpressionValueStack::Matrix3x2FromSkew calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Matrix3x2FromSkew Diff


```diff
--- CExpressionValueStack::Matrix3x2FromSkew
+++ CExpressionValueStack::Matrix3x2FromSkew
@@ -1,71 +1,147 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CExpressionValueStack::Matrix3x2FromSkew(unsigned int) __ptr64 */
 
 long __thiscall CExpressionValueStack::Matrix3x2FromSkew(CExpressionValueStack *this,uint param_1)
 
 {
-  bool bVar1;
-  float *pfVar2;
-  undefined8 *puVar3;
-  CExpressionValueStack *pCVar4;
-  long lVar5;
-  float *pfVar6;
-  undefined1 auStackY_68 [32];
-  uint uVar7;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  bool bVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  long lVar6;
+  CExpressionValue *pCVar7;
+  undefined1 auStackY_e8 [32];
+  uint uVar8;
+  CExpressionValue *local_b0;
+  CExpressionValue *local_a8;
+  CExpressionValue local_98 [80];
+  undefined8 local_48;
+  undefined8 uStack_40;
   undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  ulonglong local_20;
+  ulonglong local_30;
   
-  local_20 = __security_cookie ^ (ulonglong)auStackY_68;
-  bVar1 = false;
-  uVar7 = *(uint *)(this + 0x10);
-  pCVar4 = this;
-  if (uVar7 < param_1) {
-    uVar7 = 0x173e;
+  local_30 = __security_cookie ^ (ulonglong)auStackY_e8;
+  pCVar1 = this + 0x10;
+  bVar2 = false;
+  pCVar5 = (CExpressionValue *)this;
+  if (*(uint *)pCVar1 < param_1) {
+    uVar8 = 0x174e;
 LAB_0:
-    lVar5 = -0x7fffbffb;
+    lVar6 = -0x7fffbffb;
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)pCVar4,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0)
+              ((ulong)pCVar5,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar8,(void *)0x0)
     ;
   }
   else {
     if (param_1 == 2) {
-      pfVar6 = (float *)((ulonglong)(uVar7 - 2) * 0x50 + *(longlong *)(this + 0x18));
-      pfVar2 = (float *)((ulonglong)(uVar7 - 1) * 0x50 + *(longlong *)(this + 0x18));
-      if ((pfVar6[0x12] == 2.52234e-44) && (pfVar2[0x12] == 2.52234e-44)) {
-        bVar1 = true;
-        D2D1MakeSkewMatrix(*pfVar6 * 57.295776,*pfVar2 * 57.295776,0,&local_38);
-        pfVar6[0x12] = 1.45735e-43;
-        *(undefined8 *)pfVar6 = local_38;
-        *(undefined8 *)(pfVar6 + 2) = uStack_30;
-        *(undefined1 *)(pfVar6 + 0x13) = 1;
-        *(undefined8 *)(pfVar6 + 4) = local_28;
+      bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      pCVar5 = (CExpressionValue *)(this + 0x18);
+      pCVar7 = &s_emptyValue;
+      if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+        pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+        CExpressionValue::operator=(&s_emptyValue,pCVar4);
+        CExpressionValue::~CExpressionValue(local_98);
+        pCVar4 = &s_emptyValue;
+      }
+      else {
+        pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 2);
+      }
+      bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+        CExpressionValue::operator=(&s_emptyValue,pCVar5);
+        pCVar5 = local_98;
+        CExpressionValue::~CExpressionValue(pCVar5);
+      }
+      else {
+        pCVar7 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 1);
+      }
+      if ((*(float *)(pCVar4 + 0x48) == 2.52234e-44) && (*(float *)(pCVar7 + 0x48) == 2.52234e-44))
+      {
+        bVar2 = true;
+        D2D1MakeSkewMatrix(*(float *)pCVar4 * 57.295776,*(float *)pCVar7 * 57.295776,0,&local_48);
+        *(float *)(pCVar4 + 0x48) = 1.45735e-43;
+        *(undefined8 *)pCVar4 = local_48;
+        *(undefined8 *)(pCVar4 + 8) = uStack_40;
+        pCVar4[0x4c] = (CExpressionValue)0x1;
+        *(undefined8 *)(pCVar4 + 0x10) = local_38;
       }
 LAB_1:
-      if (!bVar1) {
-        uVar7 = 0x177c;
+      if (!bVar2) {
+        uVar8 = 0x178c;
         goto LAB_0;
       }
     }
     else {
       if (param_1 != 3) goto LAB_1;
-      pfVar2 = (float *)((ulonglong)(uVar7 - 3) * 0x50 + *(longlong *)(this + 0x18));
-      pfVar6 = (float *)((ulonglong)(uVar7 - 2) * 0x50 + *(longlong *)(this + 0x18));
-      puVar3 = (undefined8 *)((ulonglong)(uVar7 - 1) * 0x50 + *(longlong *)(this + 0x18));
-      if (((pfVar2[0x12] != 2.52234e-44) || (pfVar6[0x12] != 2.52234e-44)) ||
-         (*(int *)(puVar3 + 9) != 0x23)) goto LAB_1;
-      D2D1MakeSkewMatrix(*pfVar2 * 57.295776,*pfVar6 * 57.295776,*puVar3,&local_38);
-      pfVar2[0x12] = 1.45735e-43;
-      *(undefined8 *)pfVar2 = local_38;
-      *(undefined8 *)(pfVar2 + 2) = uStack_30;
-      *(undefined1 *)(pfVar2 + 0x13) = 1;
-      *(undefined8 *)(pfVar2 + 4) = local_28;
+      bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      pCVar5 = (CExpressionValue *)(this + 0x18);
+      pCVar7 = &s_emptyValue;
+      if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+        pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+        CExpressionValue::operator=(&s_emptyValue,pCVar4);
+        CExpressionValue::~CExpressionValue(local_98);
+        local_b0 = &s_emptyValue;
+      }
+      else {
+        local_b0 = DynArray<CExpressionValue,1>::operator[]
+                             ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 3);
+      }
+      bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+        pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+        CExpressionValue::operator=(&s_emptyValue,pCVar4);
+        CExpressionValue::~CExpressionValue(local_98);
+        local_a8 = &s_emptyValue;
+      }
+      else {
+        local_a8 = DynArray<CExpressionValue,1>::operator[]
+                             ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 2);
+      }
+      bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+        CExpressionValue::operator=(&s_emptyValue,pCVar5);
+        pCVar5 = local_98;
+        CExpressionValue::~CExpressionValue(pCVar5);
+      }
+      else {
+        pCVar7 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 1);
+      }
+      if (((*(float *)(local_b0 + 0x48) != 2.52234e-44) ||
+          (*(float *)(local_a8 + 0x48) != 2.52234e-44)) || (*(int *)(pCVar7 + 0x48) != 0x23))
+      goto LAB_1;
+      D2D1MakeSkewMatrix(*(float *)local_b0 * 57.295776,*(float *)local_a8 * 57.295776,
+                         *(undefined8 *)pCVar7,&local_48);
+      *(float *)(local_b0 + 0x48) = 1.45735e-43;
+      *(undefined8 *)local_b0 = local_48;
+      *(undefined8 *)(local_b0 + 8) = uStack_40;
+      local_b0[0x4c] = (CExpressionValue)0x1;
+      *(undefined8 *)(local_b0 + 0x10) = local_38;
     }
-    lVar5 = 0;
-    *(uint *)(this + 0x10) = *(int *)(this + 0x10) + (1 - param_1);
+    lVar6 = 0;
+    *(uint *)pCVar1 = *(uint *)pCVar1 + (1 - param_1);
   }
-  return lVar5;
+  return lVar6;
 }
 

```


## CExpressionValueStack::Negate

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.4|
|i_ratio|0.26|
|m_ratio|0.94|
|b_ratio|0.46|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Negate|Negate|
|fullname|CExpressionValueStack::Negate|CExpressionValueStack::Negate|
|`refcount`|3|2|
|`length`|450|525|
|`called`|D2DMatrix::operator-<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrix::operator-<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|18006fdf4|1800c12b8|
|sig|long __thiscall Negate(CExpressionValueStack * this)|long __thiscall Negate(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Negate Called Diff


```diff
--- CExpressionValueStack::Negate called
+++ CExpressionValueStack::Negate called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Negate Diff


```diff
--- CExpressionValueStack::Negate
+++ CExpressionValueStack::Negate
@@ -1,82 +1,104 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CExpressionValueStack::Negate(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Negate(CExpressionValueStack *this)
 
 {
-  int iVar1;
-  undefined8 uVar2;
-  undefined8 *puVar3;
-  D2DMatrix *this_00;
-  long lVar4;
-  uint uVar5;
+  CExpressionValueStack *pCVar1;
+  int iVar2;
+  undefined8 uVar3;
+  bool bVar4;
+  CExpressionValue *pCVar5;
+  undefined8 *puVar6;
+  long lVar7;
+  CExpressionValue *this_00;
+  undefined1 auStackY_a8 [32];
+  uint uVar8;
+  CExpressionValue local_68 [80];
+  ulonglong local_18;
   
+  local_18 = __security_cookie ^ (ulonglong)auStackY_a8;
   if (*(int *)(this + 0x10) == 0) {
-    uVar5 = 0x2ed;
+    uVar8 = 0x2fd;
 LAB_0:
-    lVar4 = -0x7fffbffb;
+    lVar7 = -0x7fffbffb;
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
+              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar8,(void *)0x0);
   }
   else {
-    this_00 = (D2DMatrix *)
-              ((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    iVar1 = *(int *)(this_00 + 0x48);
-    if (iVar1 == 0x23) {
+    bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar4) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      this_00 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      this = (CExpressionValueStack *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      this_00 = DynArray<CExpressionValue,1>::operator[]
+                          ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    iVar2 = *(int *)(this_00 + 0x48);
+    if (iVar2 == 0x12) {
+      *(uint *)this_00 = *(uint *)this_00 ^ 0x80000000;
+      *(undefined4 *)(this_00 + 0x48) = 0x12;
+    }
+    else if (iVar2 == 0x23) {
       *(uint *)this_00 = *(uint *)this_00 ^ 0x80000000;
       *(uint *)(this_00 + 4) = *(uint *)(this_00 + 4) ^ 0x80000000;
       *(undefined4 *)(this_00 + 0x48) = 0x23;
     }
-    else if (iVar1 == 0x12) {
+    else if (iVar2 == 0x34) {
       *(uint *)this_00 = *(uint *)this_00 ^ 0x80000000;
-      *(undefined4 *)(this_00 + 0x48) = 0x12;
+      *(uint *)(this_00 + 8) = *(uint *)(this_00 + 8) ^ 0x80000000;
+      *(uint *)(this_00 + 4) = *(uint *)(this_00 + 4) ^ 0x80000000;
+      *(undefined4 *)(this_00 + 0x48) = 0x34;
     }
-    else if (iVar1 == 0x34) {
-      *(undefined4 *)(this_00 + 0x48) = 0x34;
-      *(uint *)this_00 = *(uint *)this_00 ^ 0x80000000;
-      *(uint *)(this_00 + 4) = *(uint *)(this_00 + 4) ^ 0x80000000;
-      *(uint *)(this_00 + 8) = *(uint *)(this_00 + 8) ^ 0x80000000;
-    }
-    else if (iVar1 == 0x45) {
+    else if (iVar2 == 0x45) {
       *(undefined4 *)(this_00 + 0x48) = 0x45;
       *(uint *)this_00 = *(uint *)this_00 ^ 0x80000000;
       *(uint *)(this_00 + 4) = *(uint *)(this_00 + 4) ^ 0x80000000;
       *(uint *)(this_00 + 8) = *(uint *)(this_00 + 8) ^ 0x80000000;
       *(uint *)(this_00 + 0xc) = *(uint *)(this_00 + 0xc) ^ 0x80000000;
     }
-    else if (iVar1 == 0x68) {
+    else if (iVar2 == 0x68) {
       *(undefined4 *)(this_00 + 0x48) = 0x68;
       *(uint *)this_00 = *(uint *)this_00 ^ 0x80000000;
       *(uint *)(this_00 + 4) = *(uint *)(this_00 + 4) ^ 0x80000000;
       *(uint *)(this_00 + 8) = *(uint *)(this_00 + 8) ^ 0x80000000;
       *(uint *)(this_00 + 0xc) = *(uint *)(this_00 + 0xc) ^ 0x80000000;
       *(uint *)(this_00 + 0x10) = *(uint *)(this_00 + 0x10) ^ 0x80000000;
       *(uint *)(this_00 + 0x14) = *(uint *)(this_00 + 0x14) ^ 0x80000000;
     }
     else {
-      if (iVar1 != 0x109) {
-        uVar5 = 0x32b;
+      if (iVar2 != 0x109) {
+        uVar8 = 0x33b;
         goto LAB_0;
       }
-      puVar3 = (undefined8 *)D2DMatrix::operator-(this_00);
+      puVar6 = (undefined8 *)D2DMatrix::operator-((D2DMatrix *)this_00);
       *(undefined4 *)(this_00 + 0x48) = 0x109;
-      uVar2 = puVar3[1];
-      *(undefined8 *)this_00 = *puVar3;
-      *(undefined8 *)(this_00 + 8) = uVar2;
-      uVar2 = puVar3[3];
-      *(undefined8 *)(this_00 + 0x10) = puVar3[2];
-      *(undefined8 *)(this_00 + 0x18) = uVar2;
-      uVar2 = puVar3[5];
-      *(undefined8 *)(this_00 + 0x20) = puVar3[4];
-      *(undefined8 *)(this_00 + 0x28) = uVar2;
-      uVar2 = puVar3[7];
-      *(undefined8 *)(this_00 + 0x30) = puVar3[6];
-      *(undefined8 *)(this_00 + 0x38) = uVar2;
+      uVar3 = puVar6[1];
+      *(undefined8 *)this_00 = *puVar6;
+      *(undefined8 *)(this_00 + 8) = uVar3;
+      uVar3 = puVar6[3];
+      *(undefined8 *)(this_00 + 0x10) = puVar6[2];
+      *(undefined8 *)(this_00 + 0x18) = uVar3;
+      uVar3 = puVar6[5];
+      *(undefined8 *)(this_00 + 0x20) = puVar6[4];
+      *(undefined8 *)(this_00 + 0x28) = uVar3;
+      uVar3 = puVar6[7];
+      *(undefined8 *)(this_00 + 0x30) = puVar6[6];
+      *(undefined8 *)(this_00 + 0x38) = uVar3;
     }
-    this_00[0x4c] = (D2DMatrix)0x1;
-    lVar4 = 0;
+    *(D2DMatrix *)(this_00 + 0x4c) = (D2DMatrix)0x1;
+    lVar7 = 0;
   }
-  return lVar4;
+  return lVar7;
 }
 

```


## CNaturalAnimationScalarForceAdapater::Update

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,called|
|ratio|0.2|
|i_ratio|0.27|
|m_ratio|0.76|
|b_ratio|0.61|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Update|Update|
|fullname|CNaturalAnimationScalarForceAdapater::Update|CNaturalAnimationScalarForceAdapater::Update|
|refcount|3|3|
|`length`|209|365|
|`called`|ModuleFailFastForHRESULT<br>_guard_xfg_dispatch_icall_nop|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>ModuleFailFastForHRESULT<br>_guard_xfg_dispatch_icall_nop<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|||
|paramcount|4|4|
|`address`|18026e270|180272ab0|
|sig|float __thiscall Update(CNaturalAnimationScalarForceAdapater * this, float param_1, CExpressionValueStack * param_2, __uint64 param_3)|float __thiscall Update(CNaturalAnimationScalarForceAdapater * this, float param_1, CExpressionValueStack * param_2, __uint64 param_3)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CNaturalAnimationScalarForceAdapater::Update Called Diff


```diff
--- CNaturalAnimationScalarForceAdapater::Update called
+++ CNaturalAnimationScalarForceAdapater::Update called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CNaturalAnimationScalarForceAdapater::Update Diff


```diff
--- CNaturalAnimationScalarForceAdapater::Update
+++ CNaturalAnimationScalarForceAdapater::Update
@@ -1,50 +1,82 @@
 
 /* WARNING: Function: _guard_xfg_dispatch_icall_nop replaced with injection: guard_dispatch_icall */
 /* public: virtual float __cdecl CNaturalAnimationScalarForceAdapater::Update(float,class
    CExpressionValueStack * __ptr64,unsigned __int64) __ptr64 */
 
 float __thiscall
 CNaturalAnimationScalarForceAdapater::Update
           (CNaturalAnimationScalarForceAdapater *this,float param_1,CExpressionValueStack *param_2,
           __uint64 param_3)
 
 {
-  int iVar1;
-  longlong lVar2;
-  longlong *plVar3;
-  float fVar4;
+  bool bVar1;
+  int iVar2;
+  longlong lVar3;
+  CExpressionValue *pCVar4;
+  longlong *plVar5;
+  CExpressionValue *pCVar6;
+  float fVar7;
   undefined8 unaff_retaddr;
   undefined1 local_res8 [8];
+  CExpressionValue local_58 [80];
   
-  plVar3 = (longlong *)0x0;
+  plVar5 = (longlong *)0x0;
   if (*(longlong *)(this + 0x20) != 0) {
-    plVar3 = *(longlong **)(*(longlong *)(this + 0x20) + 0x10);
+    plVar5 = *(longlong **)(*(longlong *)(this + 0x20) + 0x10);
   }
-  iVar1 = (**(code **)(*plVar3 + 0x100))(plVar3,param_2,param_3,local_res8);
-  if (iVar1 < 0) {
+  iVar2 = (**(code **)(*plVar5 + 0x100))(plVar5,param_2,param_3,local_res8);
+  if (-1 < iVar2) {
+    lVar3 = 0;
+    if (*(longlong *)(this + 0x20) != 0) {
+      lVar3 = *(longlong *)(*(longlong *)(this + 0x20) + 0x10);
+    }
+    if (*(int *)(lVar3 + 0x98) == 0x12) {
+      bVar1 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar1) && (*(uint *)(param_2 + 0x30) <= *(int *)(param_2 + 0x10) - 1U)) {
+        pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+        pCVar6 = &CExpressionValueStack::s_emptyValue;
+        CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar4);
+        CExpressionValue::~CExpressionValue(local_58);
+      }
+      else {
+        pCVar6 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)(param_2 + 0x18),
+                            *(int *)(param_2 + 0x10) - 1U);
+      }
+      fVar7 = *(float *)pCVar6;
+    }
+    else {
+      if (*(int *)(lVar3 + 0x98) != 0x23) {
                     /* WARNING: Subroutine does not return */
-    ModuleFailFastForHRESULT(iVar1,unaff_retaddr);
+        ModuleFailFastForHRESULT(&DAT_0,unaff_retaddr);
+      }
+      bVar1 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar1) && (*(uint *)(param_2 + 0x30) <= *(int *)(param_2 + 0x10) - 1U)) {
+        pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+        pCVar6 = &CExpressionValueStack::s_emptyValue;
+        CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar4);
+        CExpressionValue::~CExpressionValue(local_58);
+      }
+      else {
+        pCVar6 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)(param_2 + 0x18),
+                            *(int *)(param_2 + 0x10) - 1U);
+      }
+      fVar7 = *(float *)pCVar6;
+      if (*(int *)(this + 0x10) != 0) {
+        fVar7 = *(float *)(pCVar6 + 4);
+      }
+    }
+    *(int *)(param_2 + 0x10) = *(int *)(param_2 + 0x10) + -1;
+    return fVar7;
   }
-  lVar2 = 0;
-  if (*(longlong *)(this + 0x20) != 0) {
-    lVar2 = *(longlong *)(*(longlong *)(this + 0x20) + 0x10);
-  }
-  if (*(int *)(lVar2 + 0x98) == 0x12) {
-    iVar1 = *(int *)(param_2 + 0x10);
-    fVar4 = *(float *)(*(longlong *)(param_2 + 0x18) + (ulonglong)(iVar1 - 1) * 0x50);
-  }
-  else {
-    if (*(int *)(lVar2 + 0x98) != 0x23) {
                     /* WARNING: Subroutine does not return */
-      ModuleFailFastForHRESULT(&DAT_0,unaff_retaddr);
-    }
-    iVar1 = *(int *)(param_2 + 0x10);
-    fVar4 = *(float *)(*(longlong *)(param_2 + 0x18) + (ulonglong)(iVar1 - 1) * 0x50);
-    if (*(int *)(this + 0x10) != 0) {
-      fVar4 = *(float *)(*(longlong *)(param_2 + 0x18) + 4 + (ulonglong)(iVar1 - 1) * 0x50);
-    }
-  }
-  *(int *)(param_2 + 0x10) = iVar1 + -1;
-  return fVar4;
+  ModuleFailFastForHRESULT(iVar2,unaff_retaddr);
 }
 

```


## CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,called|
|ratio|0.27|
|i_ratio|0.04|
|m_ratio|0.61|
|b_ratio|0.46|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|EnsureChainingConfigUpdated|EnsureChainingConfigUpdated|
|fullname|CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated|CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated|
|refcount|3|3|
|`length`|68|151|
|`called`|CInteractionTracker::BoundaryFromValue<br>CScrollKeyframeAnimation::UpdateChainingConfigIfBoundaryStateChanges|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>CInteractionTracker::BoundaryFromValue<br>CScrollKeyframeAnimation::UpdateChainingConfigIfBoundaryStateChanges<br>DynArray<CExpressionValue,1>::operator[]<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|||
|paramcount|3|3|
|`address`|18025cd90|180261580|
|sig|void __thiscall EnsureChainingConfigUpdated(CScrollScaleKeyframeAnimation * this, CExpressionValueStack * param_1, __uint64 param_2)|void __thiscall EnsureChainingConfigUpdated(CScrollScaleKeyframeAnimation * this, CExpressionValueStack * param_1, __uint64 param_2)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated Called Diff


```diff
--- CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated called
+++ CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -2,0 +6,2 @@
+DynArray<CExpressionValue,1>::operator[]
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated Diff


```diff
--- CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated
+++ CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated
@@ -1,22 +1,39 @@
 
 /* protected: virtual void __cdecl CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated(class
    CExpressionValueStack * __ptr64,unsigned __int64) __ptr64 */
 
 void __thiscall
 CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated
           (CScrollScaleKeyframeAnimation *this,CExpressionValueStack *param_1,__uint64 param_2)
 
 {
-  Boundary BVar1;
-  ScrollAxis SVar2;
+  bool bVar1;
+  Boundary BVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  ScrollAxis SVar5;
+  CExpressionValue local_58 [80];
   
-  SVar2 = 2;
-  BVar1 = CInteractionTracker::BoundaryFromValue
-                    (*(CInteractionTracker **)(this + 0x248),
-                     *(float *)(*(longlong *)(param_1 + 0x18) +
-                               (ulonglong)(*(int *)(param_1 + 0x10) - 1) * 0x50),2);
+  bVar1 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  if ((bVar1) && (*(uint *)(param_1 + 0x30) <= *(int *)(param_1 + 0x10) - 1U)) {
+    pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+    pCVar4 = &CExpressionValueStack::s_emptyValue;
+    CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar3);
+    CExpressionValue::~CExpressionValue(local_58);
+  }
+  else {
+    pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                       ((DynArray<CExpressionValue,1> *)(param_1 + 0x18),
+                        *(int *)(param_1 + 0x10) - 1U);
+  }
+  SVar5 = 2;
+  BVar2 = CInteractionTracker::BoundaryFromValue
+                    (*(CInteractionTracker **)(this + 0x248),*(float *)pCVar4,2);
   CScrollKeyframeAnimation::UpdateChainingConfigIfBoundaryStateChanges
-            ((CScrollKeyframeAnimation *)this,SVar2,BVar1);
+            ((CScrollKeyframeAnimation *)this,SVar5,BVar2);
   return;
 }
 

```


## CExpressionValueStack::Matrix3x2FromScale

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.19|
|i_ratio|0.11|
|m_ratio|0.73|
|b_ratio|0.16|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix3x2FromScale|Matrix3x2FromScale|
|fullname|CExpressionValueStack::Matrix3x2FromScale|CExpressionValueStack::Matrix3x2FromScale|
|`refcount`|3|2|
|`length`|827|1233|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|2|2|
|`address`|1800f1430|1800f430c|
|sig|long __thiscall Matrix3x2FromScale(CExpressionValueStack * this, uint param_1)|long __thiscall Matrix3x2FromScale(CExpressionValueStack * this, uint param_1)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix3x2FromScale Called Diff


```diff
--- CExpressionValueStack::Matrix3x2FromScale called
+++ CExpressionValueStack::Matrix3x2FromScale called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix3x2FromScale Diff


```diff
--- CExpressionValueStack::Matrix3x2FromScale
+++ CExpressionValueStack::Matrix3x2FromScale
@@ -1,133 +1,218 @@
 
 /* public: long __cdecl CExpressionValueStack::Matrix3x2FromScale(unsigned int) __ptr64 */
 
 long __thiscall CExpressionValueStack::Matrix3x2FromScale(CExpressionValueStack *this,uint param_1)
 
 {
-  float fVar1;
+  CExpressionValueStack *pCVar1;
   float fVar2;
-  undefined4 uVar3;
+  float fVar3;
   float fVar4;
   float fVar5;
-  longlong lVar6;
-  ulonglong uVar7;
-  CExpressionValueStack *pCVar8;
-  ulonglong uVar9;
-  long lVar10;
-  uint uVar11;
+  bool bVar6;
+  CExpressionValue *pCVar7;
+  CExpressionValue *pCVar8;
+  CExpressionValue *pCVar9;
+  CExpressionValue *pCVar10;
+  long lVar11;
+  uint uVar12;
+  CExpressionValue *local_98;
+  CExpressionValue local_78 [80];
   
-  uVar11 = *(uint *)(this + 0x10);
-  if (uVar11 < param_1) {
-    uVar11 = 0x16bc;
+  pCVar1 = this + 0x10;
+  pCVar7 = (CExpressionValue *)this;
+  if (*(uint *)pCVar1 < param_1) {
+    uVar12 = 0x16cc;
 LAB_0:
-    lVar10 = -0x7fffbffb;
+    lVar11 = -0x7fffbffb;
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar11,(void *)0x0);
+              ((ulong)pCVar7,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar12,(void *)0x0
+              );
   }
   else {
-    lVar10 = 0;
     if (param_1 == 1) {
-      pCVar8 = *(CExpressionValueStack **)(this + 0x18);
-      uVar7 = (ulonglong)(uVar11 - 1);
-      if (*(int *)(pCVar8 + uVar7 * 0x50 + 0x48) == 0x12) {
-        uVar3 = *(undefined4 *)(pCVar8 + uVar7 * 0x50);
-        *(undefined4 *)(pCVar8 + uVar7 * 0x50 + 0x48) = 0x68;
-        *(undefined4 *)(pCVar8 + uVar7 * 0x50) = uVar3;
-        *(undefined8 *)(pCVar8 + uVar7 * 0x50 + 4) = 0;
-        *(undefined4 *)(pCVar8 + uVar7 * 0x50 + 0xc) = uVar3;
-        *(undefined8 *)(pCVar8 + uVar7 * 0x50 + 0x10) = 0;
-        pCVar8[uVar7 * 0x50 + 0x4c] = (CExpressionValueStack)0x1;
-      }
-      else {
-        if (*(int *)(pCVar8 + uVar7 * 0x50 + 0x48) != 0x23) goto LAB_1;
-        fVar1 = *(float *)(pCVar8 + uVar7 * 0x50);
-        fVar2 = *(float *)(pCVar8 + uVar7 * 0x50 + 4);
-        *(undefined4 *)(pCVar8 + uVar7 * 0x50 + 0x48) = 0x68;
-        *(float *)(pCVar8 + uVar7 * 0x50) = fVar1;
-        *(undefined8 *)(pCVar8 + uVar7 * 0x50 + 4) = 0;
-        *(float *)(pCVar8 + uVar7 * 0x50 + 0xc) = fVar2;
-        *(float *)(pCVar8 + uVar7 * 0x50 + 0x10) = 0.0 - fVar1 * 0.0;
-        *(float *)(pCVar8 + uVar7 * 0x50 + 0x14) = 0.0 - fVar2 * 0.0;
-        pCVar8[uVar7 * 0x50 + 0x4c] = (CExpressionValueStack)0x1;
+      bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar7 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+        pCVar10 = &s_emptyValue;
+        CExpressionValue::operator=(&s_emptyValue,pCVar7);
+        pCVar7 = local_78;
+        CExpressionValue::~CExpressionValue(pCVar7);
+      }
+      else {
+        pCVar7 = (CExpressionValue *)(this + 0x18);
+        pCVar10 = DynArray<CExpressionValue,1>::operator[]
+                            ((DynArray<CExpressionValue,1> *)pCVar7,*(uint *)pCVar1 - 1);
+      }
+      if (*(float *)(pCVar10 + 0x48) == 2.52234e-44) {
+        fVar2 = *(float *)pCVar10;
+        *(float *)pCVar10 = fVar2;
+        *(float *)(pCVar10 + 0x48) = 1.45735e-43;
+        *(undefined8 *)(pCVar10 + 4) = 0;
+        *(float *)(pCVar10 + 0xc) = fVar2;
+        *(undefined8 *)(pCVar10 + 0x10) = 0;
+        pCVar10[0x4c] = (CExpressionValue)0x1;
+      }
+      else {
+        if (*(float *)(pCVar10 + 0x48) != 4.90454e-44) goto LAB_1;
+        fVar2 = *(float *)pCVar10;
+        fVar3 = *(float *)(pCVar10 + 4);
+        *(float *)(pCVar10 + 0x48) = 1.45735e-43;
+        *(float *)pCVar10 = fVar2;
+        *(undefined8 *)(pCVar10 + 4) = 0;
+        *(float *)(pCVar10 + 0xc) = fVar3;
+        *(float *)(pCVar10 + 0x10) = 0.0 - fVar2 * 0.0;
+        *(float *)(pCVar10 + 0x14) = 0.0 - fVar3 * 0.0;
+        pCVar10[0x4c] = (CExpressionValue)0x1;
       }
     }
     else {
       if (param_1 != 2) {
-        pCVar8 = this;
         if (param_1 == 3) {
-          lVar6 = *(longlong *)(this + 0x18);
-          uVar7 = (ulonglong)(uVar11 - 3);
-          uVar9 = (ulonglong)(uVar11 - 1);
-          if (((*(int *)(lVar6 + 0x48 + uVar7 * 0x50) == 0x12) &&
-              (*(int *)(lVar6 + 0x48 + (ulonglong)(uVar11 - 2) * 0x50) == 0x12)) &&
-             (*(int *)(lVar6 + 0x48 + uVar9 * 0x50) == 0x23)) {
-            fVar1 = *(float *)(lVar6 + uVar9 * 0x50);
-            fVar2 = *(float *)(lVar6 + 4 + uVar9 * 0x50);
-            fVar4 = *(float *)(lVar6 + uVar7 * 0x50);
-            fVar5 = *(float *)(lVar6 + (ulonglong)(uVar11 - 2) * 0x50);
-            *(undefined4 *)(lVar6 + 0x48 + uVar7 * 0x50) = 0x68;
-            *(float *)(lVar6 + uVar7 * 0x50) = fVar4;
-            *(undefined8 *)(lVar6 + 4 + uVar7 * 0x50) = 0;
-            *(float *)(lVar6 + 0xc + uVar7 * 0x50) = fVar5;
-            *(float *)(lVar6 + 0x10 + uVar7 * 0x50) = fVar1 - fVar4 * fVar1;
-            *(float *)(lVar6 + 0x14 + uVar7 * 0x50) = fVar2 - fVar5 * fVar2;
-            *(undefined1 *)(lVar6 + 0x4c + uVar7 * 0x50) = 1;
+          bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          pCVar7 = (CExpressionValue *)(this + 0x18);
+          pCVar10 = &s_emptyValue;
+          if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+            pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+            CExpressionValue::operator=(&s_emptyValue,pCVar8);
+            CExpressionValue::~CExpressionValue(local_78);
+            pCVar8 = &s_emptyValue;
+          }
+          else {
+            pCVar8 = DynArray<CExpressionValue,1>::operator[]
+                               ((DynArray<CExpressionValue,1> *)pCVar7,*(uint *)pCVar1 - 3);
+          }
+          bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+            pCVar9 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+            CExpressionValue::operator=(&s_emptyValue,pCVar9);
+            CExpressionValue::~CExpressionValue(local_78);
+            local_98 = &s_emptyValue;
+          }
+          else {
+            local_98 = DynArray<CExpressionValue,1>::operator[]
+                                 ((DynArray<CExpressionValue,1> *)pCVar7,*(uint *)pCVar1 - 2);
+          }
+          bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+            pCVar7 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+            CExpressionValue::operator=(&s_emptyValue,pCVar7);
+            pCVar7 = local_78;
+            CExpressionValue::~CExpressionValue(pCVar7);
+          }
+          else {
+            pCVar10 = DynArray<CExpressionValue,1>::operator[]
+                                ((DynArray<CExpressionValue,1> *)pCVar7,*(uint *)pCVar1 - 1);
+          }
+          if (((*(float *)(pCVar8 + 0x48) == 2.52234e-44) &&
+              (*(float *)(local_98 + 0x48) == 2.52234e-44)) &&
+             (*(float *)(pCVar10 + 0x48) == 4.90454e-44)) {
+            fVar2 = *(float *)pCVar10;
+            fVar3 = *(float *)(pCVar10 + 4);
+            fVar4 = *(float *)pCVar8;
+            fVar5 = *(float *)local_98;
+            *(float *)(pCVar8 + 0x48) = 1.45735e-43;
+            *(float *)pCVar8 = fVar4;
+            *(undefined8 *)(pCVar8 + 4) = 0;
+            *(float *)(pCVar8 + 0xc) = fVar5;
+            *(float *)(pCVar8 + 0x10) = fVar2 - fVar2 * fVar4;
+            *(float *)(pCVar8 + 0x14) = fVar3 - fVar3 * fVar5;
             goto LAB_2;
           }
         }
 LAB_1:
-        uVar11 = 0x171d;
-        this = pCVar8;
+        uVar12 = 0x172d;
         goto LAB_0;
       }
-      lVar6 = *(longlong *)(this + 0x18);
-      uVar7 = (ulonglong)(uVar11 - 2);
-      pCVar8 = (CExpressionValueStack *)((ulonglong)(uVar11 - 1) * 0x50 + lVar6);
-      if (*(int *)(lVar6 + 0x48 + uVar7 * 0x50) == 0x12) {
-        if (*(float *)(pCVar8 + 0x48) == 2.52234e-44) {
-          fVar1 = *(float *)(lVar6 + uVar7 * 0x50);
+      bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      pCVar7 = (CExpressionValue *)(this + 0x18);
+      pCVar10 = &s_emptyValue;
+      if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+        pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+        CExpressionValue::operator=(&s_emptyValue,pCVar8);
+        CExpressionValue::~CExpressionValue(local_78);
+        pCVar8 = &s_emptyValue;
+      }
+      else {
+        pCVar8 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar7,*(uint *)pCVar1 - 2);
+      }
+      bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar7 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+        CExpressionValue::operator=(&s_emptyValue,pCVar7);
+        pCVar7 = local_78;
+        CExpressionValue::~CExpressionValue(pCVar7);
+      }
+      else {
+        pCVar10 = DynArray<CExpressionValue,1>::operator[]
+                            ((DynArray<CExpressionValue,1> *)pCVar7,*(uint *)pCVar1 - 1);
+      }
+      pCVar9 = pCVar10 + 0x48;
+      if (*(float *)(pCVar8 + 0x48) == 2.52234e-44) {
+        if (*(float *)pCVar9 == 2.52234e-44) {
           fVar2 = *(float *)pCVar8;
-          *(undefined4 *)(lVar6 + 0x48 + uVar7 * 0x50) = 0x68;
-          *(float *)(lVar6 + uVar7 * 0x50) = fVar1;
-          *(undefined8 *)(lVar6 + 4 + uVar7 * 0x50) = 0;
-          *(float *)(lVar6 + 0xc + uVar7 * 0x50) = fVar2;
-          *(float *)(lVar6 + 0x10 + uVar7 * 0x50) = 0.0 - fVar1 * 0.0;
-          *(float *)(lVar6 + 0x14 + uVar7 * 0x50) = 0.0 - fVar2 * 0.0;
+          fVar3 = *(float *)pCVar10;
+          *(float *)(pCVar8 + 0x48) = 1.45735e-43;
+          *(float *)pCVar8 = fVar2;
+          *(undefined8 *)(pCVar8 + 4) = 0;
+          *(float *)(pCVar8 + 0xc) = fVar3;
+          *(float *)(pCVar8 + 0x10) = 0.0 - fVar2 * 0.0;
+          *(float *)(pCVar8 + 0x14) = 0.0 - fVar3 * 0.0;
         }
         else {
-          if (*(float *)(pCVar8 + 0x48) != 4.90454e-44) goto LAB_3;
-          fVar1 = *(float *)(lVar6 + uVar7 * 0x50);
-          fVar2 = *(float *)(pCVar8 + 4);
-          fVar4 = *(float *)pCVar8;
-          *(undefined4 *)(lVar6 + 0x48 + uVar7 * 0x50) = 0x68;
-          *(float *)(lVar6 + uVar7 * 0x50) = fVar1;
-          *(undefined8 *)(lVar6 + 4 + uVar7 * 0x50) = 0;
-          *(float *)(lVar6 + 0xc + uVar7 * 0x50) = fVar1;
-          *(float *)(lVar6 + 0x10 + uVar7 * 0x50) = (1.0 - fVar1) * fVar4;
-          *(float *)(lVar6 + 0x14 + uVar7 * 0x50) = (1.0 - fVar1) * fVar2;
+          if (*(float *)pCVar9 != 4.90454e-44) goto LAB_3;
+          fVar2 = *(float *)pCVar8;
+          fVar3 = *(float *)(pCVar10 + 4);
+          fVar4 = *(float *)pCVar10;
+          *(float *)(pCVar8 + 0x48) = 1.45735e-43;
+          *(float *)pCVar8 = fVar2;
+          *(undefined8 *)(pCVar8 + 4) = 0;
+          *(float *)(pCVar8 + 0xc) = fVar2;
+          *(float *)(pCVar8 + 0x10) = (1.0 - fVar2) * fVar4;
+          *(float *)(pCVar8 + 0x14) = (1.0 - fVar2) * fVar3;
         }
-        *(undefined1 *)(lVar6 + 0x4c + uVar7 * 0x50) = 1;
+LAB_2:
+        pCVar8[0x4c] = (CExpressionValue)0x1;
       }
       else {
 LAB_3:
-        if ((*(int *)(lVar6 + 0x48 + uVar7 * 0x50) != 0x23) ||
-           (*(float *)(pCVar8 + 0x48) != 4.90454e-44)) goto LAB_1;
-        fVar1 = *(float *)pCVar8;
-        fVar2 = *(float *)(pCVar8 + 4);
-        fVar4 = *(float *)(lVar6 + uVar7 * 0x50);
-        fVar5 = *(float *)(lVar6 + 4 + uVar7 * 0x50);
-        *(undefined4 *)(lVar6 + 0x48 + uVar7 * 0x50) = 0x68;
-        *(float *)(lVar6 + uVar7 * 0x50) = fVar4;
-        *(undefined8 *)(lVar6 + 4 + uVar7 * 0x50) = 0;
-        *(float *)(lVar6 + 0xc + uVar7 * 0x50) = fVar5;
-        *(float *)(lVar6 + 0x10 + uVar7 * 0x50) = fVar1 - fVar4 * fVar1;
-        *(float *)(lVar6 + 0x14 + uVar7 * 0x50) = fVar2 - fVar5 * fVar2;
-        *(undefined1 *)(lVar6 + 0x4c + uVar7 * 0x50) = 1;
+        if ((*(float *)(pCVar8 + 0x48) != 4.90454e-44) || (*(float *)pCVar9 != 4.90454e-44))
+        goto LAB_1;
+        fVar2 = *(float *)pCVar10;
+        fVar3 = *(float *)(pCVar10 + 4);
+        fVar4 = *(float *)pCVar8;
+        fVar5 = *(float *)(pCVar8 + 4);
+        *(float *)(pCVar8 + 0x48) = 1.45735e-43;
+        *(float *)pCVar8 = fVar4;
+        *(undefined8 *)(pCVar8 + 4) = 0;
+        *(float *)(pCVar8 + 0xc) = fVar5;
+        *(float *)(pCVar8 + 0x10) = fVar2 - fVar4 * fVar2;
+        *(float *)(pCVar8 + 0x14) = fVar3 - fVar5 * fVar3;
+        pCVar8[0x4c] = (CExpressionValue)0x1;
       }
     }
-LAB_2:
-    *(uint *)(this + 0x10) = *(int *)(this + 0x10) + (1 - param_1);
+    lVar11 = 0;
+    *(uint *)pCVar1 = *(uint *)pCVar1 + (1 - param_1);
   }
-  return lVar10;
+  return lVar11;
 }
 

```


## CExpressionValueStack::Scale

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,calling,called|
|ratio|0.15|
|i_ratio|0.16|
|m_ratio|0.84|
|b_ratio|0.43|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Scale|Scale|
|fullname|CExpressionValueStack::Scale|CExpressionValueStack::Scale|
|`refcount`|4|3|
|`length`|579|731|
|`called`|D2DMatrix::operator*<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrix::operator*<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|CExpressionValueStack::Multiply<br>switchD_180071930::caseD_0|CExpression::CalculateValueWorker<br>CExpressionValueStack::Multiply|
|paramcount|1|1|
|`address`|180013ac0|180014dbc|
|sig|long __thiscall Scale(CExpressionValueStack * this)|long __thiscall Scale(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Scale Called Diff


```diff
--- CExpressionValueStack::Scale called
+++ CExpressionValueStack::Scale called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Scale Calling Diff


```diff
--- CExpressionValueStack::Scale calling
+++ CExpressionValueStack::Scale calling
@@ -0,0 +1 @@
+CExpression::CalculateValueWorker
@@ -2 +2,0 @@
-switchD_180071930::caseD_0
```


### CExpressionValueStack::Scale Diff


```diff
--- CExpressionValueStack::Scale
+++ CExpressionValueStack::Scale
@@ -1,126 +1,151 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CExpressionValueStack::Scale(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Scale(CExpressionValueStack *this)
 
 {
   CExpressionValueStack *pCVar1;
   float fVar2;
   float fVar3;
   float fVar4;
   float fVar5;
   int iVar6;
   float fVar7;
   float fVar8;
   float fVar9;
   undefined8 uVar10;
-  undefined8 uVar11;
-  undefined8 *puVar12;
-  D2DMatrix *this_00;
-  D2DMatrix *pDVar13;
-  D2DMatrix *pDVar14;
+  bool bVar11;
+  CExpressionValue *pCVar12;
+  CExpressionValue *pCVar13;
+  undefined8 *puVar14;
+  CExpressionValue *pCVar15;
   float in_XMM1_Da;
-  uint uVar15;
+  undefined1 auStackY_d8 [32];
+  uint uVar16;
+  CExpressionValue local_98 [80];
+  ulonglong local_48;
   
-  uVar15 = *(uint *)(this + 0x10);
-  if (uVar15 < 2) {
-    uVar15 = 0xa55;
-LAB_0:
-    MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar15,(void *)0x0);
-    return -0x7fffbffb;
-  }
-  pDVar14 = (D2DMatrix *)((ulonglong)(uVar15 - 2) * 0x50 + *(longlong *)(this + 0x18));
-  pDVar13 = (D2DMatrix *)((ulonglong)(uVar15 - 1) * 0x50 + *(longlong *)(this + 0x18));
-  pCVar1 = (CExpressionValueStack *)(pDVar14 + 0x48);
-  this_00 = pDVar14;
-  if ((*(float *)(pDVar13 + 0x48) != 2.52234e-44) &&
-     (this_00 = pDVar13, pDVar13 = pDVar14, *(float *)pCVar1 != 2.52234e-44)) {
-    uVar15 = 0xa77;
-    this = pCVar1;
-    goto LAB_0;
-  }
-  iVar6 = *(int *)(this_00 + 0x48);
-  if (iVar6 == 0x12) {
-    fVar2 = *(float *)this_00;
-    fVar3 = *(float *)pDVar13;
-    *(float *)pCVar1 = 2.52234e-44;
-    *(float *)pDVar14 = fVar3 * fVar2;
-  }
-  else if (iVar6 == 0x34) {
-    fVar2 = *(float *)pDVar13;
-    fVar3 = *(float *)this_00;
-    fVar4 = *(float *)(this_00 + 4);
-    fVar5 = *(float *)(this_00 + 8);
-    *(float *)pCVar1 = 7.28675e-44;
-    *(float *)pDVar14 = fVar3 * fVar2;
-    *(float *)(pDVar14 + 4) = fVar2 * fVar4;
-    *(float *)(pDVar14 + 8) = fVar2 * fVar5;
-  }
-  else if (iVar6 == 0x23) {
-    fVar2 = *(float *)pDVar13;
-    fVar3 = *(float *)(this_00 + 4);
-    fVar4 = *(float *)this_00;
-    *(float *)pCVar1 = 4.90454e-44;
-    *(float *)(pDVar14 + 4) = fVar2 * fVar3;
-    *(float *)pDVar14 = fVar2 * fVar4;
-  }
-  else if (iVar6 == 0x45) {
-    fVar2 = *(float *)pDVar13;
-    fVar3 = *(float *)this_00;
-    fVar4 = *(float *)(this_00 + 4);
-    fVar5 = *(float *)(this_00 + 8);
-    fVar7 = *(float *)(this_00 + 0xc);
-    *(float *)(pDVar14 + 0x48) = 9.66896e-44;
-    *(float *)pDVar14 = fVar3 * fVar2;
-    *(float *)(pDVar14 + 4) = fVar4 * fVar2;
-    *(float *)(pDVar14 + 8) = fVar5 * fVar2;
-    *(float *)(pDVar14 + 0xc) = fVar7 * fVar2;
+  local_48 = __security_cookie ^ (ulonglong)auStackY_d8;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar16 = 0xa65;
   }
   else {
-    if (iVar6 != 0x68) {
-      if (iVar6 != 0x109) {
-        uVar15 = 0xab6;
-        this = pCVar1;
-        goto LAB_0;
+    bVar11 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                       ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                        &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                         ::__l2::impl);
+    pCVar15 = &s_emptyValue;
+    if ((bVar11) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar12 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+      CExpressionValue::operator=(&s_emptyValue,pCVar12);
+      CExpressionValue::~CExpressionValue(local_98);
+      pCVar12 = &s_emptyValue;
+    }
+    else {
+      pCVar12 = DynArray<CExpressionValue,1>::operator[]
+                          ((DynArray<CExpressionValue,1> *)(this + 0x18),*(uint *)pCVar1 - 2);
+    }
+    bVar11 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                       ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                        &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                         ::__l2::impl);
+    if ((bVar11) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar13 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+      CExpressionValue::operator=(&s_emptyValue,pCVar13);
+      CExpressionValue::~CExpressionValue(local_98);
+    }
+    else {
+      pCVar15 = DynArray<CExpressionValue,1>::operator[]
+                          ((DynArray<CExpressionValue,1> *)(this + 0x18),*(uint *)pCVar1 - 1);
+    }
+    this = (CExpressionValueStack *)(pCVar12 + 0x48);
+    pCVar13 = pCVar12;
+    if ((*(float *)(pCVar15 + 0x48) == 2.52234e-44) ||
+       (pCVar13 = pCVar15, pCVar15 = pCVar12, *(float *)this == 2.52234e-44)) {
+      iVar6 = *(int *)(pCVar13 + 0x48);
+      if (iVar6 == 0x12) {
+        fVar2 = *(float *)pCVar13;
+        fVar3 = *(float *)pCVar15;
+        *(float *)this = 2.52234e-44;
+        *(float *)pCVar12 = fVar3 * fVar2;
       }
-      puVar12 = (undefined8 *)D2DMatrix::operator*(this_00,in_XMM1_Da);
-      *(float *)(pDVar14 + 0x48) = 3.71344e-43;
-      uVar10 = puVar12[1];
-      *(undefined8 *)pDVar14 = *puVar12;
-      *(undefined8 *)(pDVar14 + 8) = uVar10;
-      uVar10 = puVar12[3];
-      *(undefined8 *)(pDVar14 + 0x10) = puVar12[2];
-      *(undefined8 *)(pDVar14 + 0x18) = uVar10;
-      uVar10 = puVar12[5];
-      *(undefined8 *)(pDVar14 + 0x20) = puVar12[4];
-      *(undefined8 *)(pDVar14 + 0x28) = uVar10;
-      uVar10 = puVar12[6];
-      uVar11 = puVar12[7];
-      pDVar14[0x4c] = (D2DMatrix)0x1;
-      *(undefined8 *)(pDVar14 + 0x30) = uVar10;
-      *(undefined8 *)(pDVar14 + 0x38) = uVar11;
-      goto LAB_1;
+      else if (iVar6 == 0x23) {
+        fVar2 = *(float *)pCVar15;
+        fVar3 = *(float *)(pCVar13 + 4);
+        fVar4 = *(float *)pCVar13;
+        *(float *)this = 4.90454e-44;
+        *(float *)(pCVar12 + 4) = fVar2 * fVar3;
+        *(float *)pCVar12 = fVar2 * fVar4;
+      }
+      else if (iVar6 == 0x34) {
+        fVar2 = *(float *)pCVar15;
+        fVar3 = *(float *)pCVar13;
+        fVar4 = *(float *)(pCVar13 + 4);
+        fVar5 = *(float *)(pCVar13 + 8);
+        *(float *)this = 7.28675e-44;
+        *(float *)pCVar12 = fVar3 * fVar2;
+        *(float *)(pCVar12 + 4) = fVar2 * fVar4;
+        *(float *)(pCVar12 + 8) = fVar2 * fVar5;
+      }
+      else if (iVar6 == 0x45) {
+        fVar2 = *(float *)pCVar15;
+        fVar3 = *(float *)pCVar13;
+        fVar4 = *(float *)(pCVar13 + 4);
+        fVar5 = *(float *)(pCVar13 + 8);
+        fVar7 = *(float *)(pCVar13 + 0xc);
+        *(float *)(pCVar12 + 0x48) = 9.66896e-44;
+        *(float *)pCVar12 = fVar3 * fVar2;
+        *(float *)(pCVar12 + 4) = fVar4 * fVar2;
+        *(float *)(pCVar12 + 8) = fVar5 * fVar2;
+        *(float *)(pCVar12 + 0xc) = fVar7 * fVar2;
+      }
+      else if (iVar6 == 0x68) {
+        fVar2 = *(float *)pCVar15;
+        fVar5 = *(float *)(pCVar13 + 4);
+        fVar7 = *(float *)(pCVar13 + 8);
+        fVar8 = *(float *)(pCVar13 + 0xc);
+        fVar9 = *(float *)(pCVar13 + 0x10);
+        fVar3 = *(float *)pCVar13;
+        fVar4 = *(float *)(pCVar13 + 0x14);
+        *(float *)(pCVar12 + 0x48) = 1.45735e-43;
+        *(float *)pCVar12 = fVar3 * fVar2;
+        *(float *)(pCVar12 + 4) = fVar5 * fVar2;
+        *(float *)(pCVar12 + 8) = fVar7 * fVar2;
+        *(float *)(pCVar12 + 0xc) = fVar8 * fVar2;
+        *(float *)(pCVar12 + 0x10) = fVar9 * fVar2;
+        *(float *)(pCVar12 + 0x14) = fVar2 * fVar4;
+      }
+      else {
+        if (iVar6 != 0x109) {
+          uVar16 = 0xac6;
+          goto LAB_0;
+        }
+        puVar14 = (undefined8 *)D2DMatrix::operator*((D2DMatrix *)pCVar13,in_XMM1_Da);
+        *(float *)(pCVar12 + 0x48) = 3.71344e-43;
+        uVar10 = puVar14[1];
+        *(undefined8 *)pCVar12 = *puVar14;
+        *(undefined8 *)(pCVar12 + 8) = uVar10;
+        uVar10 = puVar14[3];
+        *(undefined8 *)(pCVar12 + 0x10) = puVar14[2];
+        *(undefined8 *)(pCVar12 + 0x18) = uVar10;
+        uVar10 = puVar14[5];
+        *(undefined8 *)(pCVar12 + 0x20) = puVar14[4];
+        *(undefined8 *)(pCVar12 + 0x28) = uVar10;
+        uVar10 = puVar14[7];
+        *(undefined8 *)(pCVar12 + 0x30) = puVar14[6];
+        *(undefined8 *)(pCVar12 + 0x38) = uVar10;
+      }
+      pCVar12[0x4c] = (CExpressionValue)0x1;
+      *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
+      return 0;
     }
-    fVar2 = *(float *)pDVar13;
-    fVar5 = *(float *)(this_00 + 4);
-    fVar7 = *(float *)(this_00 + 8);
-    fVar8 = *(float *)(this_00 + 0xc);
-    fVar9 = *(float *)(this_00 + 0x10);
-    fVar3 = *(float *)this_00;
-    fVar4 = *(float *)(this_00 + 0x14);
-    *(float *)(pDVar14 + 0x48) = 1.45735e-43;
-    *(float *)pDVar14 = fVar3 * fVar2;
-    *(float *)(pDVar14 + 4) = fVar5 * fVar2;
-    *(float *)(pDVar14 + 8) = fVar7 * fVar2;
-    *(float *)(pDVar14 + 0xc) = fVar8 * fVar2;
-    *(float *)(pDVar14 + 0x10) = fVar9 * fVar2;
-    *(float *)(pDVar14 + 0x14) = fVar2 * fVar4;
+    uVar16 = 0xa87;
   }
-  pDVar14[0x4c] = (D2DMatrix)0x1;
-LAB_1:
-  *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
-  return 0;
+LAB_0:
+  MilInstrumentationCheckHR_MaybeFailFast
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar16,(void *)0x0);
+  return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Matrix4x4FromQuaternion

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.34|
|i_ratio|0.25|
|m_ratio|0.83|
|b_ratio|0.78|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix4x4FromQuaternion|Matrix4x4FromQuaternion|
|fullname|CExpressionValueStack::Matrix4x4FromQuaternion|CExpressionValueStack::Matrix4x4FromQuaternion|
|refcount|2|2|
|`length`|196|255|
|`called`|D2DMatrixRotationQuaternion<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrixRotationQuaternion<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180256e80|180259c6c|
|sig|long __thiscall Matrix4x4FromQuaternion(CExpressionValueStack * this)|long __thiscall Matrix4x4FromQuaternion(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix4x4FromQuaternion Called Diff


```diff
--- CExpressionValueStack::Matrix4x4FromQuaternion called
+++ CExpressionValueStack::Matrix4x4FromQuaternion called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix4x4FromQuaternion Calling Diff


```diff
--- CExpressionValueStack::Matrix4x4FromQuaternion calling
+++ CExpressionValueStack::Matrix4x4FromQuaternion calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Matrix4x4FromQuaternion Diff


```diff
--- CExpressionValueStack::Matrix4x4FromQuaternion
+++ CExpressionValueStack::Matrix4x4FromQuaternion
@@ -1,59 +1,67 @@
 
 /* public: long __cdecl CExpressionValueStack::Matrix4x4FromQuaternion(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Matrix4x4FromQuaternion(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
-  ulonglong uVar2;
-  longlong lVar3;
-  longlong lVar4;
-  undefined1 uVar5;
-  uint uVar6;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  uint uVar5;
+  undefined8 local_68;
+  undefined8 uStack_60;
   undefined8 local_58;
   undefined8 uStack_50;
   undefined8 local_48;
   undefined8 uStack_40;
   undefined8 local_38;
   undefined8 uStack_30;
   undefined8 local_28;
   undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
   
-  uVar5 = 1;
   if (*(int *)(this + 0x10) == 0) {
-    uVar6 = 0x1aac;
+    uVar5 = 0x1abc;
   }
   else {
-    lVar4 = *(longlong *)(this + 0x18);
-    uVar2 = (ulonglong)(*(int *)(this + 0x10) - 1);
-    lVar3 = uVar2 * 10;
-    if (*(int *)(lVar4 + 0x48 + uVar2 * 0x50) == 0x47) {
-      puVar1 = (undefined8 *)(lVar4 + uVar2 * 0x50);
-      local_58 = *puVar1;
-      uStack_50 = puVar1[1];
-      D2DMatrixRotationQuaternion((D2DMatrix *)&local_48,(D2DQuaternion *)&local_58);
-      *(undefined4 *)(lVar4 + 0x48 + lVar3 * 8) = 0x109;
-      puVar1 = (undefined8 *)(lVar4 + lVar3 * 8);
-      *puVar1 = local_48;
-      puVar1[1] = uStack_40;
-      *(undefined1 *)(lVar4 + 0x4c + lVar3 * 8) = uVar5;
-      puVar1 = (undefined8 *)(lVar4 + 0x10 + lVar3 * 8);
-      *puVar1 = local_38;
-      puVar1[1] = uStack_30;
-      puVar1 = (undefined8 *)(lVar4 + 0x20 + lVar3 * 8);
-      *puVar1 = local_28;
-      puVar1[1] = uStack_20;
-      puVar1 = (undefined8 *)(lVar4 + 0x30 + lVar3 * 8);
-      *puVar1 = local_18;
-      puVar1[1] = uStack_10;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_58)
+      ;
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)&local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(int *)(pCVar4 + 0x48) == 0x47) {
+      local_68 = *(undefined8 *)pCVar4;
+      uStack_60 = *(undefined8 *)(pCVar4 + 8);
+      D2DMatrixRotationQuaternion((D2DMatrix *)&local_58,(D2DQuaternion *)&local_68);
+      *(undefined4 *)(pCVar4 + 0x48) = 0x109;
+      *(undefined8 *)pCVar4 = local_58;
+      *(undefined8 *)(pCVar4 + 8) = uStack_50;
+      pCVar4[0x4c] = (CExpressionValue)0x1;
+      *(undefined8 *)(pCVar4 + 0x10) = local_48;
+      *(undefined8 *)(pCVar4 + 0x18) = uStack_40;
+      *(undefined8 *)(pCVar4 + 0x20) = local_38;
+      *(undefined8 *)(pCVar4 + 0x28) = uStack_30;
+      *(undefined8 *)(pCVar4 + 0x30) = local_28;
+      *(undefined8 *)(pCVar4 + 0x38) = uStack_20;
       return 0;
     }
-    uVar6 = 0x1ab1;
+    uVar5 = 0x1ac1;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Lerp

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.09|
|i_ratio|0.49|
|m_ratio|0.91|
|b_ratio|0.82|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Lerp|Lerp|
|fullname|CExpressionValueStack::Lerp|CExpressionValueStack::Lerp|
|refcount|2|2|
|`length`|1727|1861|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180255d0c|18025828c|
|sig|long __thiscall Lerp(CExpressionValueStack * this)|long __thiscall Lerp(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Lerp Called Diff


```diff
--- CExpressionValueStack::Lerp called
+++ CExpressionValueStack::Lerp called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Lerp Calling Diff


```diff
--- CExpressionValueStack::Lerp calling
+++ CExpressionValueStack::Lerp calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Lerp Diff


```diff
--- CExpressionValueStack::Lerp
+++ CExpressionValueStack::Lerp
@@ -1,259 +1,258 @@
 
 /* public: long __cdecl CExpressionValueStack::Lerp(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Lerp(CExpressionValueStack *this)
 
 {
-  longlong lVar1;
-  float *pfVar2;
-  float *pfVar3;
-  undefined8 *puVar4;
-  float *pfVar5;
-  undefined8 uVar6;
+  CExpressionValueStack *pCVar1;
+  undefined8 uVar2;
+  float fVar3;
+  float fVar4;
+  float fVar5;
+  float fVar6;
   undefined8 uVar7;
-  uint uVar8;
-  float fVar9;
-  longlong lVar10;
-  float fVar11;
-  float fVar12;
+  bool bVar8;
+  CExpressionValue *pCVar9;
+  CExpressionValue *pCVar10;
+  CExpressionValue *pCVar11;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar12;
   float fVar13;
   float fVar14;
   float fVar15;
   float fVar16;
   float fVar17;
   float fVar18;
-  float fVar19;
-  float fVar20;
-  float fVar21;
-  float fVar22;
-  float fVar23;
-  float fVar24;
-  float fVar25;
-  float fVar26;
-  undefined8 uVar27;
-  undefined8 uVar28;
-  ulonglong uVar29;
-  ulonglong uVar30;
-  CExpressionValueStack *pCVar31;
-  float fVar32;
-  float fVar33;
-  float fVar34;
-  float fVar35;
-  float fVar36;
-  uint uVar37;
-  float local_e8;
-  float fStack_e4;
-  float fStack_e0;
-  float fStack_dc;
-  undefined8 local_d8;
-  undefined8 uStack_d0;
-  float local_c8;
-  float fStack_c4;
-  float local_b0;
-  float fStack_ac;
+  uint uVar19;
+  undefined8 local_158;
+  undefined8 uStack_150;
+  float local_148;
+  float fStack_144;
+  float local_140;
+  float fStack_13c;
+  float fStack_138;
+  float fStack_134;
+  float local_120;
+  float fStack_11c;
+  CExpressionValue local_118 [240];
   
-  uVar37 = *(uint *)(this + 0x10);
-  if (uVar37 < 3) {
-    uVar37 = 0xba4;
-    pCVar31 = this;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 3) {
+    uVar19 = 0xbb4;
   }
   else {
-    lVar10 = *(longlong *)(this + 0x18);
-    uVar29 = (ulonglong)(uVar37 - 3);
-    uVar30 = (ulonglong)(uVar37 - 2);
-    uVar8 = *(uint *)(lVar10 + 0x48 + uVar29 * 0x50);
-    pCVar31 = (CExpressionValueStack *)(ulonglong)uVar8;
-    fVar35 = *(float *)(lVar10 + (ulonglong)(uVar37 - 1) * 0x50);
-    if ((*(int *)(lVar10 + 0x48 + (ulonglong)(uVar37 - 1) * 0x50) == 0x12) &&
-       (uVar8 == *(uint *)(lVar10 + 0x48 + uVar30 * 0x50))) {
-      if (uVar8 == 0x12) {
-        fVar9 = *(float *)(lVar10 + uVar30 * 0x50);
-        if (1.0 <= fVar35) {
-          fVar35 = 1.0;
-        }
-        *(undefined4 *)(lVar10 + 0x48 + uVar29 * 0x50) = 0x12;
-        fVar33 = 0.0;
-        if (0.0 <= fVar35) {
-          fVar33 = fVar35;
-        }
-        *(float *)(lVar10 + uVar29 * 0x50) =
-             fVar33 * (fVar9 - *(float *)(lVar10 + uVar29 * 0x50)) +
-             *(float *)(lVar10 + uVar29 * 0x50);
-      }
-      else if (uVar8 == 0x23) {
-        fVar9 = *(float *)(lVar10 + uVar30 * 0x50);
-        fVar33 = *(float *)(lVar10 + 4 + uVar30 * 0x50);
-        if (1.0 <= fVar35) {
-          fVar35 = 1.0;
-        }
-        *(undefined4 *)(lVar10 + 0x48 + uVar29 * 0x50) = 0x23;
-        fVar32 = 0.0;
-        if (0.0 <= fVar35) {
-          fVar32 = fVar35;
-        }
-        *(float *)(lVar10 + uVar29 * 0x50) =
-             (fVar9 - *(float *)(lVar10 + uVar29 * 0x50)) * fVar32 +
-             *(float *)(lVar10 + uVar29 * 0x50);
-        *(float *)(lVar10 + 4 + uVar29 * 0x50) =
-             (fVar33 - *(float *)(lVar10 + 4 + uVar29 * 0x50)) * fVar32 +
-             *(float *)(lVar10 + 4 + uVar29 * 0x50);
-      }
-      else if (uVar8 == 0x34) {
-        uVar6 = *(undefined8 *)(lVar10 + uVar29 * 0x50);
-        fVar9 = *(float *)(lVar10 + 8 + uVar29 * 0x50);
-        if (1.0 <= fVar35) {
-          fVar35 = 1.0;
-        }
-        uVar7 = *(undefined8 *)(lVar10 + uVar30 * 0x50);
-        local_d8._0_4_ = (float)uVar7;
-        local_e8 = (float)uVar6;
-        local_d8._4_4_ = (float)((ulonglong)uVar7 >> 0x20);
-        fVar33 = 0.0;
-        if (0.0 <= fVar35) {
-          fVar33 = fVar35;
-        }
-        fStack_e4 = (float)((ulonglong)uVar6 >> 0x20);
-        fVar35 = *(float *)(lVar10 + 8 + uVar30 * 0x50);
-        *(undefined4 *)(lVar10 + 0x48 + uVar29 * 0x50) = 0x34;
-        *(float *)(lVar10 + uVar29 * 0x50) = ((float)local_d8 - local_e8) * fVar33 + local_e8;
-        *(float *)(lVar10 + 4 + uVar29 * 0x50) = (local_d8._4_4_ - fStack_e4) * fVar33 + fStack_e4;
-        *(float *)(lVar10 + 8 + uVar29 * 0x50) = (fVar35 - fVar9) * fVar33 + fVar9;
-      }
-      else if (uVar8 == 0x45) {
-        pfVar2 = (float *)(lVar10 + uVar30 * 0x50);
-        fVar9 = *pfVar2;
-        fVar33 = pfVar2[1];
-        fVar32 = pfVar2[2];
-        fVar11 = pfVar2[3];
-        *(undefined4 *)(lVar10 + 0x48 + uVar29 * 0x50) = 0x45;
-        pfVar2 = (float *)(lVar10 + uVar29 * 0x50);
-        if (1.0 <= fVar35) {
-          fVar35 = 1.0;
-        }
-        fVar34 = 0.0;
-        if (0.0 <= fVar35) {
-          fVar34 = fVar35;
-        }
-        local_d8 = CONCAT44((fVar33 - pfVar2[1]) * fVar34 + pfVar2[1],
-                            (fVar9 - *pfVar2) * fVar34 + *pfVar2);
-        uStack_d0 = CONCAT44((fVar11 - pfVar2[3]) * fVar34 + pfVar2[3],
-                             (fVar32 - pfVar2[2]) * fVar34 + pfVar2[2]);
-        puVar4 = (undefined8 *)(lVar10 + uVar29 * 0x50);
-        *puVar4 = local_d8;
-        puVar4[1] = uStack_d0;
-      }
-      else if (uVar8 == 0x68) {
-        pfVar2 = (float *)(lVar10 + uVar29 * 0x50);
-        fVar9 = pfVar2[1];
-        fVar33 = pfVar2[2];
-        fVar32 = pfVar2[3];
-        pfVar3 = (float *)(lVar10 + uVar30 * 0x50);
-        fVar11 = *pfVar3;
-        fVar34 = pfVar3[1];
-        fVar12 = pfVar3[2];
-        fVar13 = pfVar3[3];
-        uVar6 = *(undefined8 *)(lVar10 + 0x10 + uVar29 * 0x50);
-        if (1.0 <= fVar35) {
-          fVar35 = 1.0;
-        }
-        uVar7 = *(undefined8 *)(lVar10 + 0x10 + uVar30 * 0x50);
-        local_c8 = (float)uVar7;
-        local_b0 = (float)uVar6;
+    bVar8 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar12 = &s_emptyValue;
+    if ((bVar8) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar9 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_118);
+      CExpressionValue::operator=(&s_emptyValue,pCVar9);
+      CExpressionValue::~CExpressionValue(local_118);
+      pCVar9 = &s_emptyValue;
+    }
+    else {
+      pCVar9 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 3);
+    }
+    bVar8 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar8) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar10 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_118);
+      CExpressionValue::operator=(&s_emptyValue,pCVar10);
+      CExpressionValue::~CExpressionValue(local_118);
+      pCVar10 = &s_emptyValue;
+    }
+    else {
+      pCVar10 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar8 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar8) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar11 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_118);
+      CExpressionValue::operator=(&s_emptyValue,pCVar11);
+      this = (CExpressionValueStack *)local_118;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      pCVar12 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+      this = (CExpressionValueStack *)this_00;
+    }
+    fVar15 = *(float *)(pCVar9 + 0x48);
+    fVar17 = *(float *)pCVar12;
+    if ((*(float *)(pCVar12 + 0x48) == 2.52234e-44) && (fVar15 == *(float *)(pCVar10 + 0x48))) {
+      if (fVar15 == 2.52234e-44) {
+        fVar15 = *(float *)pCVar10;
+        if (1.0 <= fVar17) {
+          fVar17 = 1.0;
+        }
+        *(float *)(pCVar9 + 0x48) = 2.52234e-44;
         fVar14 = 0.0;
-        if (0.0 <= fVar35) {
-          fVar14 = fVar35;
-        }
-        *(undefined4 *)(lVar10 + 0x48 + uVar29 * 0x50) = 0x68;
-        fStack_c4 = (float)((ulonglong)uVar7 >> 0x20);
-        fStack_ac = (float)((ulonglong)uVar6 >> 0x20);
-        *(float *)(lVar10 + uVar29 * 0x50) = (fVar11 - *pfVar2) * fVar14 + *pfVar2;
-        *(float *)(lVar10 + 4 + uVar29 * 0x50) = (fVar34 - fVar9) * fVar14 + fVar9;
-        *(float *)(lVar10 + 8 + uVar29 * 0x50) = (fVar12 - fVar33) * fVar14 + fVar33;
-        *(float *)(lVar10 + 0xc + uVar29 * 0x50) = (fVar13 - fVar32) * fVar14 + fVar32;
-        *(float *)(lVar10 + 0x10 + uVar29 * 0x50) = (local_c8 - local_b0) * fVar14 + local_b0;
-        *(float *)(lVar10 + 0x14 + uVar29 * 0x50) = (fStack_c4 - fStack_ac) * fVar14 + fStack_ac;
+        if (0.0 <= fVar17) {
+          fVar14 = fVar17;
+        }
+        *(float *)pCVar9 = fVar14 * (fVar15 - *(float *)pCVar9) + *(float *)pCVar9;
+      }
+      else if (fVar15 == 4.90454e-44) {
+        fVar15 = *(float *)pCVar10;
+        fVar14 = *(float *)(pCVar10 + 4);
+        if (1.0 <= fVar17) {
+          fVar17 = 1.0;
+        }
+        *(float *)(pCVar9 + 0x48) = 4.90454e-44;
+        fVar13 = 0.0;
+        if (0.0 <= fVar17) {
+          fVar13 = fVar17;
+        }
+        *(float *)pCVar9 = (fVar15 - *(float *)pCVar9) * fVar13 + *(float *)pCVar9;
+        *(float *)(pCVar9 + 4) = (fVar14 - *(float *)(pCVar9 + 4)) * fVar13 + *(float *)(pCVar9 + 4)
+        ;
+      }
+      else if (fVar15 == 7.28675e-44) {
+        if (1.0 <= fVar17) {
+          fVar17 = 1.0;
+        }
+        local_158._0_4_ = (float)*(undefined8 *)pCVar10;
+        local_140 = (float)*(undefined8 *)pCVar9;
+        local_158._4_4_ = (float)((ulonglong)*(undefined8 *)pCVar10 >> 0x20);
+        fVar15 = 0.0;
+        if (0.0 <= fVar17) {
+          fVar15 = fVar17;
+        }
+        fStack_13c = (float)((ulonglong)*(undefined8 *)pCVar9 >> 0x20);
+        fVar17 = *(float *)(pCVar10 + 8);
+        *(float *)(pCVar9 + 0x48) = 7.28675e-44;
+        *(float *)pCVar9 = ((float)local_158 - local_140) * fVar15 + local_140;
+        *(float *)(pCVar9 + 4) = (local_158._4_4_ - fStack_13c) * fVar15 + fStack_13c;
+        *(float *)(pCVar9 + 8) = (fVar17 - *(float *)(pCVar9 + 8)) * fVar15 + *(float *)(pCVar9 + 8)
+        ;
+      }
+      else if (fVar15 == 9.66896e-44) {
+        fVar15 = *(float *)pCVar10;
+        fVar14 = *(float *)(pCVar10 + 4);
+        fVar13 = *(float *)(pCVar10 + 8);
+        fVar3 = *(float *)(pCVar10 + 0xc);
+        *(float *)(pCVar9 + 0x48) = 9.66896e-44;
+        if (1.0 <= fVar17) {
+          fVar17 = 1.0;
+        }
+        fVar16 = 0.0;
+        if (0.0 <= fVar17) {
+          fVar16 = fVar17;
+        }
+        local_158 = CONCAT44((fVar14 - *(float *)(pCVar9 + 4)) * fVar16 + *(float *)(pCVar9 + 4),
+                             (fVar15 - *(float *)pCVar9) * fVar16 + *(float *)pCVar9);
+        uStack_150 = CONCAT44((fVar3 - *(float *)(pCVar9 + 0xc)) * fVar16 + *(float *)(pCVar9 + 0xc)
+                              ,(fVar13 - *(float *)(pCVar9 + 8)) * fVar16 + *(float *)(pCVar9 + 8));
+        *(undefined8 *)pCVar9 = local_158;
+        *(undefined8 *)(pCVar9 + 8) = uStack_150;
+      }
+      else if (fVar15 == 1.45735e-43) {
+        fVar15 = *(float *)pCVar10;
+        fVar14 = *(float *)(pCVar10 + 4);
+        fVar13 = *(float *)(pCVar10 + 8);
+        fVar3 = *(float *)(pCVar10 + 0xc);
+        if (1.0 <= fVar17) {
+          fVar17 = 1.0;
+        }
+        uVar2 = *(undefined8 *)(pCVar10 + 0x10);
+        local_148 = (float)uVar2;
+        local_120 = (float)*(undefined8 *)(pCVar9 + 0x10);
+        fVar16 = 0.0;
+        if (0.0 <= fVar17) {
+          fVar16 = fVar17;
+        }
+        *(float *)(pCVar9 + 0x48) = 1.45735e-43;
+        fStack_144 = (float)((ulonglong)uVar2 >> 0x20);
+        fStack_11c = (float)((ulonglong)*(undefined8 *)(pCVar9 + 0x10) >> 0x20);
+        *(float *)pCVar9 = (fVar15 - *(float *)pCVar9) * fVar16 + *(float *)pCVar9;
+        *(float *)(pCVar9 + 4) = (fVar14 - *(float *)(pCVar9 + 4)) * fVar16 + *(float *)(pCVar9 + 4)
+        ;
+        *(float *)(pCVar9 + 8) = (fVar13 - *(float *)(pCVar9 + 8)) * fVar16 + *(float *)(pCVar9 + 8)
+        ;
+        *(float *)(pCVar9 + 0xc) =
+             (fVar3 - *(float *)(pCVar9 + 0xc)) * fVar16 + *(float *)(pCVar9 + 0xc);
+        *(float *)(pCVar9 + 0x10) = (local_148 - local_120) * fVar16 + local_120;
+        *(float *)(pCVar9 + 0x14) = (fStack_144 - fStack_11c) * fVar16 + fStack_11c;
       }
       else {
-        if (uVar8 != 0x109) {
-          uVar37 = 0xc2b;
+        this = (CExpressionValueStack *)0x109;
+        if (fVar15 != 3.71344e-43) {
+          uVar19 = 0xc3b;
           goto LAB_0;
         }
-        lVar1 = lVar10 + uVar29 * 0x50;
-        fVar9 = *(float *)(lVar1 + 4);
-        fVar33 = *(float *)(lVar1 + 8);
-        fVar32 = *(float *)(lVar1 + 0xc);
-        pfVar2 = (float *)(lVar10 + uVar30 * 0x50);
-        fVar11 = *pfVar2;
-        fVar34 = pfVar2[1];
-        fVar12 = pfVar2[2];
-        fVar13 = pfVar2[3];
-        if (1.0 <= fVar35) {
-          fVar35 = 1.0;
-        }
-        pfVar2 = (float *)(lVar10 + 0x10 + uVar29 * 0x50);
-        fVar14 = pfVar2[1];
-        fVar15 = pfVar2[2];
-        fVar16 = pfVar2[3];
-        pfVar3 = (float *)(lVar10 + 0x10 + uVar30 * 0x50);
-        fVar17 = *pfVar3;
-        fVar18 = pfVar3[1];
-        fVar19 = pfVar3[2];
-        fVar20 = pfVar3[3];
-        pfVar3 = (float *)(lVar10 + 0x20 + uVar29 * 0x50);
-        fVar21 = pfVar3[1];
-        fVar22 = pfVar3[2];
-        fVar23 = pfVar3[3];
-        puVar4 = (undefined8 *)(lVar10 + 0x20 + uVar30 * 0x50);
-        uVar6 = *puVar4;
-        uVar7 = puVar4[1];
-        pfVar5 = (float *)(lVar10 + 0x30 + uVar29 * 0x50);
-        fVar24 = pfVar5[1];
-        fVar25 = pfVar5[2];
-        fVar26 = pfVar5[3];
-        puVar4 = (undefined8 *)(lVar10 + 0x30 + uVar30 * 0x50);
-        uVar27 = *puVar4;
-        uVar28 = puVar4[1];
-        fVar36 = 0.0;
-        if (0.0 <= fVar35) {
-          fVar36 = fVar35;
-        }
-        local_e8 = (float)uVar6;
-        fStack_e4 = (float)((ulonglong)uVar6 >> 0x20);
-        fStack_e0 = (float)uVar7;
-        fStack_dc = (float)((ulonglong)uVar7 >> 0x20);
-        *(undefined4 *)(lVar10 + 0x48 + uVar29 * 0x50) = 0x109;
-        local_d8._0_4_ = (float)uVar27;
-        local_d8._4_4_ = (float)((ulonglong)uVar27 >> 0x20);
-        uStack_d0._0_4_ = (float)uVar28;
-        uStack_d0._4_4_ = (float)((ulonglong)uVar28 >> 0x20);
-        fVar35 = *(float *)(lVar10 + uVar29 * 0x50);
-        *(float *)(lVar10 + uVar29 * 0x50) = (fVar11 - fVar35) * fVar36 + fVar35;
-        *(float *)(lVar10 + 4 + uVar29 * 0x50) = (fVar34 - fVar9) * fVar36 + fVar9;
-        *(float *)(lVar10 + 8 + uVar29 * 0x50) = (fVar12 - fVar33) * fVar36 + fVar33;
-        *(float *)(lVar10 + 0xc + uVar29 * 0x50) = (fVar13 - fVar32) * fVar36 + fVar32;
-        *(float *)(lVar10 + 0x10 + uVar29 * 0x50) = (fVar17 - *pfVar2) * fVar36 + *pfVar2;
-        *(float *)(lVar10 + 0x14 + uVar29 * 0x50) = (fVar18 - fVar14) * fVar36 + fVar14;
-        *(float *)(lVar10 + 0x18 + uVar29 * 0x50) = (fVar19 - fVar15) * fVar36 + fVar15;
-        *(float *)(lVar10 + 0x1c + uVar29 * 0x50) = (fVar20 - fVar16) * fVar36 + fVar16;
-        *(float *)(lVar10 + 0x20 + uVar29 * 0x50) = (local_e8 - *pfVar3) * fVar36 + *pfVar3;
-        *(float *)(lVar10 + 0x24 + uVar29 * 0x50) = (fStack_e4 - fVar21) * fVar36 + fVar21;
-        *(float *)(lVar10 + 0x28 + uVar29 * 0x50) = (fStack_e0 - fVar22) * fVar36 + fVar22;
-        *(float *)(lVar10 + 0x2c + uVar29 * 0x50) = (fStack_dc - fVar23) * fVar36 + fVar23;
-        *(float *)(lVar10 + 0x30 + uVar29 * 0x50) = ((float)local_d8 - *pfVar5) * fVar36 + *pfVar5;
-        *(float *)(lVar10 + 0x34 + uVar29 * 0x50) = (local_d8._4_4_ - fVar24) * fVar36 + fVar24;
-        *(float *)(lVar10 + 0x38 + uVar29 * 0x50) = ((float)uStack_d0 - fVar25) * fVar36 + fVar25;
-        *(float *)(lVar10 + 0x3c + uVar29 * 0x50) = (uStack_d0._4_4_ - fVar26) * fVar36 + fVar26;
-      }
-      *(undefined1 *)(lVar10 + 0x4c + uVar29 * 0x50) = 1;
-      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -2;
+        fVar15 = *(float *)pCVar10;
+        fVar14 = *(float *)(pCVar10 + 4);
+        fVar13 = *(float *)(pCVar10 + 8);
+        fVar3 = *(float *)(pCVar10 + 0xc);
+        if (1.0 <= fVar17) {
+          fVar17 = 1.0;
+        }
+        fVar16 = *(float *)(pCVar10 + 0x10);
+        fVar4 = *(float *)(pCVar10 + 0x14);
+        fVar5 = *(float *)(pCVar10 + 0x18);
+        fVar6 = *(float *)(pCVar10 + 0x1c);
+        uVar2 = *(undefined8 *)(pCVar10 + 0x30);
+        uVar7 = *(undefined8 *)(pCVar10 + 0x38);
+        fVar18 = 0.0;
+        if (0.0 <= fVar17) {
+          fVar18 = fVar17;
+        }
+        local_140 = (float)*(undefined8 *)(pCVar10 + 0x20);
+        fStack_13c = (float)((ulonglong)*(undefined8 *)(pCVar10 + 0x20) >> 0x20);
+        fStack_138 = (float)*(undefined8 *)(pCVar10 + 0x28);
+        fStack_134 = (float)((ulonglong)*(undefined8 *)(pCVar10 + 0x28) >> 0x20);
+        *(float *)(pCVar9 + 0x48) = 3.71344e-43;
+        local_158._0_4_ = (float)uVar2;
+        local_158._4_4_ = (float)((ulonglong)uVar2 >> 0x20);
+        uStack_150._0_4_ = (float)uVar7;
+        uStack_150._4_4_ = (float)((ulonglong)uVar7 >> 0x20);
+        *(float *)pCVar9 = (fVar15 - *(float *)pCVar9) * fVar18 + *(float *)pCVar9;
+        *(float *)(pCVar9 + 4) = (fVar14 - *(float *)(pCVar9 + 4)) * fVar18 + *(float *)(pCVar9 + 4)
+        ;
+        *(float *)(pCVar9 + 8) = (fVar13 - *(float *)(pCVar9 + 8)) * fVar18 + *(float *)(pCVar9 + 8)
+        ;
+        *(float *)(pCVar9 + 0xc) =
+             (fVar3 - *(float *)(pCVar9 + 0xc)) * fVar18 + *(float *)(pCVar9 + 0xc);
+        *(float *)(pCVar9 + 0x10) =
+             (fVar16 - *(float *)(pCVar9 + 0x10)) * fVar18 + *(float *)(pCVar9 + 0x10);
+        *(float *)(pCVar9 + 0x14) =
+             (fVar4 - *(float *)(pCVar9 + 0x14)) * fVar18 + *(float *)(pCVar9 + 0x14);
+        *(float *)(pCVar9 + 0x18) =
+             (fVar5 - *(float *)(pCVar9 + 0x18)) * fVar18 + *(float *)(pCVar9 + 0x18);
+        *(float *)(pCVar9 + 0x1c) =
+             (fVar6 - *(float *)(pCVar9 + 0x1c)) * fVar18 + *(float *)(pCVar9 + 0x1c);
+        *(float *)(pCVar9 + 0x20) =
+             (local_140 - *(float *)(pCVar9 + 0x20)) * fVar18 + *(float *)(pCVar9 + 0x20);
+        *(float *)(pCVar9 + 0x24) =
+             (fStack_13c - *(float *)(pCVar9 + 0x24)) * fVar18 + *(float *)(pCVar9 + 0x24);
+        *(float *)(pCVar9 + 0x28) =
+             (fStack_138 - *(float *)(pCVar9 + 0x28)) * fVar18 + *(float *)(pCVar9 + 0x28);
+        *(float *)(pCVar9 + 0x2c) =
+             (fStack_134 - *(float *)(pCVar9 + 0x2c)) * fVar18 + *(float *)(pCVar9 + 0x2c);
+        *(float *)(pCVar9 + 0x30) =
+             ((float)local_158 - *(float *)(pCVar9 + 0x30)) * fVar18 + *(float *)(pCVar9 + 0x30);
+        *(float *)(pCVar9 + 0x34) =
+             (local_158._4_4_ - *(float *)(pCVar9 + 0x34)) * fVar18 + *(float *)(pCVar9 + 0x34);
+        *(float *)(pCVar9 + 0x38) =
+             ((float)uStack_150 - *(float *)(pCVar9 + 0x38)) * fVar18 + *(float *)(pCVar9 + 0x38);
+        *(float *)(pCVar9 + 0x3c) =
+             (uStack_150._4_4_ - *(float *)(pCVar9 + 0x3c)) * fVar18 + *(float *)(pCVar9 + 0x3c);
+      }
+      pCVar9[0x4c] = (CExpressionValue)0x1;
+      *(uint *)pCVar1 = *(uint *)pCVar1 - 2;
       return 0;
     }
-    uVar37 = 0xbbe;
+    uVar19 = 0xbce;
   }
 LAB_0:
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pCVar31,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar37,(void *)0x0)
-  ;
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar19,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.25|
|i_ratio|0.09|
|m_ratio|0.65|
|b_ratio|0.58|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix4x4FromPerspectiveFieldOfView|Matrix4x4FromPerspectiveFieldOfView|
|fullname|CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView|CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView|
|refcount|2|2|
|`length`|354|671|
|`called`|D2DMatrixPerspectiveFieldOfView<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrixPerspectiveFieldOfView<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180256b30|180259634|
|sig|long __thiscall Matrix4x4FromPerspectiveFieldOfView(CExpressionValueStack * this)|long __thiscall Matrix4x4FromPerspectiveFieldOfView(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView Called Diff


```diff
--- CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView called
+++ CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView Calling Diff


```diff
--- CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView calling
+++ CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView Diff


```diff
--- CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView
+++ CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView
@@ -1,81 +1,136 @@
 
 /* public: long __cdecl CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView(void) __ptr64 */
 
 long __thiscall
 CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
-  longlong lVar2;
-  ulonglong uVar3;
-  D2DMatrix *pDVar4;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
   D2DMatrix *pDVar5;
-  uint uVar6;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar6;
+  CExpressionValue *local_res8;
+  CExpressionValue *local_res10;
+  uint uVar7;
+  undefined8 local_78;
+  undefined8 uStack_70;
+  undefined8 local_68;
+  undefined8 uStack_60;
+  undefined8 local_58;
+  undefined8 uStack_50;
   undefined8 local_48;
   undefined8 uStack_40;
-  undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
   
-  uVar6 = *(uint *)(this + 0x10);
-  pDVar5 = (D2DMatrix *)this;
-  if (uVar6 < 4) {
-    uVar6 = 0x1a11;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 4) {
+    uVar7 = 0x1a21;
   }
   else {
-    lVar2 = *(longlong *)(this + 0x18);
-    uVar3 = (ulonglong)(uVar6 - 4);
-    if (*(int *)(lVar2 + 0x48 + uVar3 * 0x50) == 0x12) {
-      if (*(int *)(lVar2 + 0x48 + (ulonglong)(uVar6 - 3) * 0x50) == 0x12) {
-        if (*(int *)(lVar2 + 0x48 + (ulonglong)(uVar6 - 2) * 0x50) == 0x12) {
-          if (*(int *)(lVar2 + 0x48 + (ulonglong)(uVar6 - 1) * 0x50) == 0x12) {
-            pDVar5 = (D2DMatrix *)&local_48;
-            pDVar4 = D2DMatrixPerspectiveFieldOfView
-                               (pDVar5,*(float *)(lVar2 + uVar3 * 0x50),
-                                *(float *)(lVar2 + (ulonglong)(uVar6 - 3) * 0x50),
-                                *(float *)(lVar2 + (ulonglong)(uVar6 - 2) * 0x50),
-                                *(float *)(lVar2 + (ulonglong)(uVar6 - 1) * 0x50));
-            if (pDVar4 != (D2DMatrix *)0x0) {
-              *(undefined4 *)(lVar2 + 0x48 + uVar3 * 0x50) = 0x109;
-              puVar1 = (undefined8 *)(lVar2 + uVar3 * 0x50);
-              *puVar1 = local_48;
-              puVar1[1] = uStack_40;
-              puVar1 = (undefined8 *)(lVar2 + 0x10 + uVar3 * 0x50);
-              *puVar1 = local_38;
-              puVar1[1] = uStack_30;
-              puVar1 = (undefined8 *)(lVar2 + 0x20 + uVar3 * 0x50);
-              *puVar1 = local_28;
-              puVar1[1] = uStack_20;
-              puVar1 = (undefined8 *)(lVar2 + 0x30 + uVar3 * 0x50);
-              *puVar1 = local_18;
-              puVar1[1] = uStack_10;
-              *(undefined1 *)(lVar2 + 0x4c + uVar3 * 0x50) = 1;
-              *(int *)(this + 0x10) = *(int *)(this + 0x10) + -3;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 4)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_78);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 4);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_78);
+      local_res8 = &s_emptyValue;
+    }
+    else {
+      local_res8 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 3);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_78);
+      local_res10 = &s_emptyValue;
+    }
+    else {
+      local_res10 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this = (CExpressionValueStack *)&local_78;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+      this = (CExpressionValueStack *)this_00;
+    }
+    if (*(float *)(pCVar3 + 0x48) == 2.52234e-44) {
+      this = (CExpressionValueStack *)local_res8;
+      if (*(int *)(local_res8 + 0x48) == 0x12) {
+        if (*(float *)(local_res10 + 0x48) == 2.52234e-44) {
+          if (*(float *)(pCVar6 + 0x48) == 2.52234e-44) {
+            this = (CExpressionValueStack *)&local_78;
+            pDVar5 = D2DMatrixPerspectiveFieldOfView
+                               ((D2DMatrix *)this,*(float *)pCVar3,*(float *)local_res8,
+                                *(float *)local_res10,*(float *)pCVar6);
+            if (pDVar5 != (D2DMatrix *)0x0) {
+              *(float *)(pCVar3 + 0x48) = 3.71344e-43;
+              *(undefined8 *)pCVar3 = local_78;
+              *(undefined8 *)(pCVar3 + 8) = uStack_70;
+              *(undefined8 *)(pCVar3 + 0x10) = local_68;
+              *(undefined8 *)(pCVar3 + 0x18) = uStack_60;
+              *(undefined8 *)(pCVar3 + 0x20) = local_58;
+              *(undefined8 *)(pCVar3 + 0x28) = uStack_50;
+              *(undefined8 *)(pCVar3 + 0x30) = local_48;
+              *(undefined8 *)(pCVar3 + 0x38) = uStack_40;
+              pCVar3[0x4c] = (CExpressionValue)0x1;
+              *(uint *)pCVar1 = *(uint *)pCVar1 - 3;
               return 0;
             }
-            uVar6 = 0x1a35;
+            uVar7 = 0x1a45;
           }
           else {
-            uVar6 = 0x1a1c;
+            uVar7 = 0x1a2c;
           }
         }
         else {
-          uVar6 = 0x1a1b;
+          uVar7 = 0x1a2b;
         }
       }
       else {
-        uVar6 = 0x1a1a;
+        uVar7 = 0x1a2a;
       }
     }
     else {
-      uVar6 = 0x1a19;
+      uVar7 = 0x1a29;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pDVar5,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Matrix4x4

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.34|
|i_ratio|0.21|
|m_ratio|0.89|
|b_ratio|0.62|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix4x4|Matrix4x4|
|fullname|CExpressionValueStack::Matrix4x4|CExpressionValueStack::Matrix4x4|
|`refcount`|3|2|
|`length`|776|892|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1800e15d4|1800c1664|
|sig|long __thiscall Matrix4x4(CExpressionValueStack * this)|long __thiscall Matrix4x4(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix4x4 Called Diff


```diff
--- CExpressionValueStack::Matrix4x4 called
+++ CExpressionValueStack::Matrix4x4 called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix4x4 Diff


```diff
--- CExpressionValueStack::Matrix4x4
+++ CExpressionValueStack::Matrix4x4
@@ -1,138 +1,172 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CExpressionValueStack::Matrix4x4(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Matrix4x4(CExpressionValueStack *this)
 
 {
   undefined4 uVar1;
   undefined4 uVar2;
   undefined4 uVar3;
   undefined4 uVar4;
   undefined4 uVar5;
   undefined4 uVar6;
   undefined4 uVar7;
   undefined4 uVar8;
   undefined4 uVar9;
   undefined4 uVar10;
   undefined4 uVar11;
   undefined4 uVar12;
   undefined4 uVar13;
   undefined4 uVar14;
   undefined4 uVar15;
-  longlong lVar16;
-  ulonglong uVar17;
-  CExpressionValueStack *pCVar18;
+  int iVar16;
+  bool bVar17;
+  CExpressionValue *pCVar18;
+  DynArray<CExpressionValue,1> *this_00;
   int iVar19;
-  undefined4 **ppuVar20;
-  undefined1 auStackY_168 [32];
+  CExpressionValue **ppCVar20;
+  undefined1 auStackY_1c8 [32];
   uint uVar21;
-  undefined4 *local_138 [4];
+  CExpressionValue local_198 [80];
+  CExpressionValue *local_148 [4];
+  undefined4 *local_128;
+  undefined4 *local_120;
   undefined4 *local_118;
   undefined4 *local_110;
   undefined4 *local_108;
   undefined4 *local_100;
   undefined4 *local_f8;
   undefined4 *local_f0;
   undefined4 *local_e8;
   undefined4 *local_e0;
   undefined4 *local_d8;
   undefined4 *local_d0;
-  undefined4 *local_c8;
-  undefined4 *local_c0;
-  ulonglong local_b8;
+  ulonglong local_c8;
   
-  local_b8 = __security_cookie ^ (ulonglong)auStackY_168;
-  uVar21 = *(uint *)(this + 0x10);
-  iVar19 = 0;
-  if (uVar21 == 0) {
-    uVar21 = 0x15c0;
+  local_c8 = __security_cookie ^ (ulonglong)auStackY_1c8;
+  if (*(int *)(this + 0x10) == 0) {
+    uVar21 = 0x15d0;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    lVar16 = *(longlong *)(this + 0x18);
-    uVar17 = (ulonglong)(uVar21 - 1);
-    if (*(int *)(lVar16 + 0x48 + uVar17 * 0x50) == 0x68) {
-      uVar1 = *(undefined4 *)(lVar16 + 8 + uVar17 * 0x50);
-      uVar2 = *(undefined4 *)(lVar16 + 0x10 + uVar17 * 0x50);
-      uVar3 = *(undefined4 *)(lVar16 + 0x14 + uVar17 * 0x50);
-      *(undefined4 *)(lVar16 + 0x48 + uVar17 * 0x50) = 0x109;
-      *(undefined4 *)(lVar16 + uVar17 * 0x50) = *(undefined4 *)(lVar16 + uVar17 * 0x50);
-      *(undefined4 *)(lVar16 + 4 + uVar17 * 0x50) = *(undefined4 *)(lVar16 + 4 + uVar17 * 0x50);
-      *(undefined8 *)(lVar16 + 8 + uVar17 * 0x50) = 0;
-      *(undefined4 *)(lVar16 + 0x10 + uVar17 * 0x50) = uVar1;
-      *(undefined4 *)(lVar16 + 0x14 + uVar17 * 0x50) = *(undefined4 *)(lVar16 + 0xc + uVar17 * 0x50)
-      ;
-      *(undefined8 *)(lVar16 + 0x18 + uVar17 * 0x50) = 0;
-      *(undefined8 *)(lVar16 + 0x20 + uVar17 * 0x50) = 0;
-      *(undefined8 *)(lVar16 + 0x28 + uVar17 * 0x50) = 0x3f800000;
-      *(undefined4 *)(lVar16 + 0x30 + uVar17 * 0x50) = uVar2;
-      *(undefined4 *)(lVar16 + 0x34 + uVar17 * 0x50) = uVar3;
-      *(undefined4 *)(lVar16 + 0x38 + uVar17 * 0x50) = 0;
-      *(undefined4 *)(lVar16 + 0x3c + uVar17 * 0x50) = 0x3f800000;
-      *(undefined1 *)(lVar16 + 0x4c + uVar17 * 0x50) = 1;
-      return 0;
+    bVar17 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                       ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                        &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                         ::__l2::impl);
+    if ((bVar17) && (*(uint *)(this + 0x30) <= *(int *)(this + 0x10) - 1U)) {
+      pCVar18 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_198);
+      CExpressionValue::operator=(&s_emptyValue,pCVar18);
+      this_00 = (DynArray<CExpressionValue,1> *)local_198;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+      local_148[0] = &s_emptyValue;
     }
-    if (*(int *)(lVar16 + 0x48 + uVar17 * 0x50) == 0x12) {
-      if (uVar21 < 0x10) {
-        uVar21 = 0x15ce;
+    else {
+      this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+      local_148[0] = DynArray<CExpressionValue,1>::operator[](this_00,*(int *)(this + 0x10) - 1U);
+    }
+    if (*(int *)(local_148[0] + 0x48) == 0x12) {
+      if (*(uint *)(this + 0x10) < 0x10) {
+        uVar21 = 0x15de;
       }
       else {
-        ppuVar20 = local_138;
+        iVar19 = 0;
+        ppCVar20 = local_148;
         while( true ) {
-          pCVar18 = (CExpressionValueStack *)((ulonglong)((uVar21 - 0x10) + iVar19) * 0x50 + lVar16)
-          ;
-          *ppuVar20 = (undefined4 *)pCVar18;
-          if (*(int *)(pCVar18 + 0x48) != 0x12) break;
+          bVar17 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                   __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                        ::__l2::impl);
+          uVar21 = *(int *)(this + 0x10) + -0x10 + iVar19;
+          if ((bVar17) && (*(uint *)(this + 0x30) <= uVar21)) {
+            pCVar18 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_198);
+            CExpressionValue::operator=(&s_emptyValue,pCVar18);
+            this_00 = (DynArray<CExpressionValue,1> *)local_198;
+            CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+            pCVar18 = &s_emptyValue;
+          }
+          else {
+            this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+            pCVar18 = DynArray<CExpressionValue,1>::operator[](this_00,uVar21);
+          }
+          iVar16 = *(int *)(pCVar18 + 0x48);
+          *ppCVar20 = pCVar18;
+          if (iVar16 != 0x12) break;
           iVar19 = iVar19 + 1;
-          ppuVar20 = ppuVar20 + 1;
+          ppCVar20 = ppCVar20 + 1;
           if (0xf < iVar19) {
-            uVar1 = *local_138[1];
-            uVar2 = *local_138[2];
-            uVar3 = *local_138[3];
-            uVar4 = *local_118;
-            uVar5 = *local_110;
-            uVar6 = *local_108;
-            uVar7 = *local_100;
-            uVar8 = *local_f8;
-            uVar9 = *local_f0;
-            uVar10 = *local_e8;
-            uVar11 = *local_e0;
-            uVar12 = *local_d8;
-            uVar13 = *local_d0;
-            uVar14 = *local_c8;
-            uVar15 = *local_c0;
-            local_138[0][0x12] = 0x109;
-            *local_138[0] = *local_138[0];
-            local_138[0][1] = uVar1;
-            local_138[0][2] = uVar2;
-            local_138[0][3] = uVar3;
-            local_138[0][4] = uVar4;
-            local_138[0][5] = uVar5;
-            local_138[0][6] = uVar6;
-            local_138[0][7] = uVar7;
-            local_138[0][8] = uVar8;
-            local_138[0][9] = uVar9;
-            local_138[0][10] = uVar10;
-            local_138[0][0xb] = uVar11;
-            local_138[0][0xc] = uVar12;
-            local_138[0][0xd] = uVar13;
-            local_138[0][0xe] = uVar14;
-            local_138[0][0xf] = uVar15;
-            *(undefined1 *)(local_138[0] + 0x13) = 1;
+            uVar1 = *(undefined4 *)local_148[1];
+            uVar2 = *(undefined4 *)local_148[2];
+            uVar3 = *(undefined4 *)local_148[3];
+            uVar4 = *local_128;
+            uVar5 = *local_120;
+            uVar6 = *local_118;
+            uVar7 = *local_110;
+            uVar8 = *local_108;
+            uVar9 = *local_100;
+            uVar10 = *local_f8;
+            uVar11 = *local_f0;
+            uVar12 = *local_e8;
+            uVar13 = *local_e0;
+            uVar14 = *local_d8;
+            uVar15 = *local_d0;
+            *(undefined4 *)(local_148[0] + 0x48) = 0x109;
+            *(undefined4 *)local_148[0] = *(undefined4 *)local_148[0];
+            *(undefined4 *)(local_148[0] + 4) = uVar1;
+            *(undefined4 *)(local_148[0] + 8) = uVar2;
+            *(undefined4 *)(local_148[0] + 0xc) = uVar3;
+            *(undefined4 *)(local_148[0] + 0x10) = uVar4;
+            *(undefined4 *)(local_148[0] + 0x14) = uVar5;
+            *(undefined4 *)(local_148[0] + 0x18) = uVar6;
+            *(undefined4 *)(local_148[0] + 0x1c) = uVar7;
+            *(undefined4 *)(local_148[0] + 0x20) = uVar8;
+            *(undefined4 *)(local_148[0] + 0x24) = uVar9;
+            *(undefined4 *)(local_148[0] + 0x28) = uVar10;
+            *(undefined4 *)(local_148[0] + 0x2c) = uVar11;
+            *(undefined4 *)(local_148[0] + 0x30) = uVar12;
+            *(undefined4 *)(local_148[0] + 0x34) = uVar13;
+            *(undefined4 *)(local_148[0] + 0x38) = uVar14;
+            *(undefined4 *)(local_148[0] + 0x3c) = uVar15;
+            local_148[0][0x4c] = (CExpressionValue)0x1;
             *(int *)(this + 0x10) = *(int *)(this + 0x10) + -0xf;
             return 0;
           }
         }
-        uVar21 = 0x15dc;
-        this = pCVar18;
+        uVar21 = 0x15ec;
       }
     }
     else {
-      uVar21 = 0x1602;
+      if (*(int *)(local_148[0] + 0x48) == 0x68) {
+        uVar1 = *(undefined4 *)(local_148[0] + 8);
+        uVar2 = *(undefined4 *)(local_148[0] + 0xc);
+        uVar3 = *(undefined4 *)(local_148[0] + 0x10);
+        uVar4 = *(undefined4 *)(local_148[0] + 0x14);
+        *(undefined4 *)(local_148[0] + 0x48) = 0x109;
+        *(undefined4 *)local_148[0] = *(undefined4 *)local_148[0];
+        *(undefined4 *)(local_148[0] + 4) = *(undefined4 *)(local_148[0] + 4);
+        *(undefined4 *)(local_148[0] + 8) = 0;
+        *(undefined4 *)(local_148[0] + 0xc) = 0;
+        *(undefined4 *)(local_148[0] + 0x10) = uVar1;
+        *(undefined4 *)(local_148[0] + 0x14) = uVar2;
+        *(undefined4 *)(local_148[0] + 0x18) = 0;
+        *(undefined4 *)(local_148[0] + 0x1c) = 0;
+        *(undefined4 *)(local_148[0] + 0x20) = 0;
+        *(undefined4 *)(local_148[0] + 0x24) = 0;
+        *(undefined4 *)(local_148[0] + 0x28) = 0x3f800000;
+        *(undefined4 *)(local_148[0] + 0x2c) = 0;
+        *(undefined4 *)(local_148[0] + 0x30) = uVar3;
+        *(undefined4 *)(local_148[0] + 0x34) = uVar4;
+        *(undefined4 *)(local_148[0] + 0x38) = 0;
+        *(undefined4 *)(local_148[0] + 0x3c) = 0x3f800000;
+        local_148[0][0x4c] = (CExpressionValue)0x1;
+        return 0;
+      }
+      uVar21 = 0x1612;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar21,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar21,(void *)0x0)
+  ;
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Vector2Dot

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.28|
|i_ratio|0.15|
|m_ratio|0.64|
|b_ratio|0.6|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Vector2Dot|Vector2Dot|
|fullname|CExpressionValueStack::Vector2Dot|CExpressionValueStack::Vector2Dot|
|refcount|2|2|
|`length`|205|385|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180259140|18025d180|
|sig|long __thiscall Vector2Dot(CExpressionValueStack * this)|long __thiscall Vector2Dot(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Vector2Dot Called Diff


```diff
--- CExpressionValueStack::Vector2Dot called
+++ CExpressionValueStack::Vector2Dot called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Vector2Dot Calling Diff


```diff
--- CExpressionValueStack::Vector2Dot calling
+++ CExpressionValueStack::Vector2Dot calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Vector2Dot Diff


```diff
--- CExpressionValueStack::Vector2Dot
+++ CExpressionValueStack::Vector2Dot
@@ -1,44 +1,72 @@
 
 /* public: long __cdecl CExpressionValueStack::Vector2Dot(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Vector2Dot(CExpressionValueStack *this)
 
 {
-  float fVar1;
+  CExpressionValueStack *pCVar1;
   float fVar2;
-  longlong lVar3;
-  ulonglong uVar4;
-  ulonglong uVar5;
-  uint uVar6;
+  float fVar3;
+  bool bVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar7;
+  uint uVar8;
+  CExpressionValue local_68 [80];
   
-  uVar6 = *(uint *)(this + 0x10);
-  if (uVar6 < 2) {
-    uVar6 = 0x1c45;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar8 = 0x1c55;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    lVar3 = *(longlong *)(this + 0x18);
-    uVar4 = (ulonglong)(uVar6 - 2);
-    uVar5 = (ulonglong)(uVar6 - 1);
-    if (*(int *)(lVar3 + 0x48 + uVar4 * 0x50) == 0x23) {
-      if (*(int *)(lVar3 + 0x48 + uVar5 * 0x50) == 0x23) {
-        fVar1 = *(float *)(lVar3 + uVar5 * 0x50);
-        fVar2 = *(float *)(lVar3 + 4 + uVar5 * 0x50);
-        *(undefined4 *)(lVar3 + 0x48 + uVar4 * 0x50) = 0x12;
-        *(undefined1 *)(lVar3 + 0x4c + uVar4 * 0x50) = 1;
-        *(float *)(lVar3 + uVar4 * 0x50) =
-             *(float *)(lVar3 + uVar4 * 0x50) * fVar1 + *(float *)(lVar3 + 4 + uVar4 * 0x50) * fVar2
-        ;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+    bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar7 = &s_emptyValue;
+    if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar5 = &s_emptyValue;
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar6 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar6);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar7 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if (*(float *)(pCVar5 + 0x48) == 4.90454e-44) {
+      if (*(float *)(pCVar7 + 0x48) == 4.90454e-44) {
+        fVar2 = *(float *)pCVar7;
+        fVar3 = *(float *)(pCVar7 + 4);
+        *(float *)(pCVar5 + 0x48) = 2.52234e-44;
+        pCVar5[0x4c] = (CExpressionValue)0x1;
+        *(float *)pCVar5 = *(float *)pCVar5 * fVar2 + *(float *)(pCVar5 + 4) * fVar3;
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar6 = 0x1c4c;
+      uVar8 = 0x1c5c;
     }
     else {
-      uVar6 = 0x1c4b;
+      uVar8 = 0x1c5b;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar8,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Ceil

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.35|
|i_ratio|0.37|
|m_ratio|0.78|
|b_ratio|0.71|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Ceil|Ceil|
|fullname|CExpressionValueStack::Ceil|CExpressionValueStack::Ceil|
|refcount|2|2|
|`length`|127|209|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>ceilf|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>ceilf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180254d38|180256c24|
|sig|long __thiscall Ceil(CExpressionValueStack * this)|long __thiscall Ceil(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Ceil Called Diff


```diff
--- CExpressionValueStack::Ceil called
+++ CExpressionValueStack::Ceil called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Ceil Calling Diff


```diff
--- CExpressionValueStack::Ceil calling
+++ CExpressionValueStack::Ceil calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Ceil Diff


```diff
--- CExpressionValueStack::Ceil
+++ CExpressionValueStack::Ceil
@@ -1,29 +1,49 @@
 
 /* public: long __cdecl CExpressionValueStack::Ceil(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Ceil(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  float fVar2;
-  uint uVar3;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  float fVar5;
+  uint uVar6;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar3 = 0x116d;
+    uVar6 = 0x117d;
   }
   else {
-    pfVar1 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar1[0x12] == 2.52234e-44) {
-      pfVar1[0x12] = 2.52234e-44;
-      fVar2 = ceilf(*pfVar1);
-      *pfVar1 = fVar2;
-      *(undefined1 *)(pfVar1 + 0x13) = 1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+      *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+      fVar5 = ceilf(*(float *)pCVar4);
+      *(float *)pCVar4 = fVar5;
+      pCVar4[0x4c] = (CExpressionValue)0x1;
       return 0;
     }
-    uVar3 = 0x1189;
+    uVar6 = 0x1199;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar3,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Matrix4x4FromRotationY

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.24|
|i_ratio|0.07|
|m_ratio|0.69|
|b_ratio|0.53|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix4x4FromRotationY|Matrix4x4FromRotationY|
|fullname|CExpressionValueStack::Matrix4x4FromRotationY|CExpressionValueStack::Matrix4x4FromRotationY|
|refcount|2|2|
|`length`|313|598|
|`called`|D2DMatrixRotationY<br>D2DMatrixRotationY<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrixRotationY<br>D2DMatrixRotationY<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|2|2|
|`address`|18025708c|180259fd4|
|sig|long __thiscall Matrix4x4FromRotationY(CExpressionValueStack * this, uint param_1)|long __thiscall Matrix4x4FromRotationY(CExpressionValueStack * this, uint param_1)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix4x4FromRotationY Called Diff


```diff
--- CExpressionValueStack::Matrix4x4FromRotationY called
+++ CExpressionValueStack::Matrix4x4FromRotationY called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -2,0 +6 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix4x4FromRotationY Calling Diff


```diff
--- CExpressionValueStack::Matrix4x4FromRotationY calling
+++ CExpressionValueStack::Matrix4x4FromRotationY calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Matrix4x4FromRotationY Diff


```diff
--- CExpressionValueStack::Matrix4x4FromRotationY
+++ CExpressionValueStack::Matrix4x4FromRotationY
@@ -1,62 +1,122 @@
 
 /* public: long __cdecl CExpressionValueStack::Matrix4x4FromRotationY(unsigned int) __ptr64 */
 
 long __thiscall
 CExpressionValueStack::Matrix4x4FromRotationY(CExpressionValueStack *this,uint param_1)
 
 {
-  undefined8 *puVar1;
-  float *pfVar2;
-  uint uVar3;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  uint uVar6;
+  undefined8 local_88;
+  undefined4 local_80;
+  undefined8 local_78;
+  undefined8 uStack_70;
+  undefined8 local_68;
+  undefined8 uStack_60;
   undefined8 local_58;
-  undefined4 local_50;
+  undefined8 uStack_50;
   undefined8 local_48;
   undefined8 uStack_40;
-  undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
   
-  uVar3 = *(uint *)(this + 0x10);
-  if (uVar3 < param_1) {
-    uVar3 = 0x1920;
+  pCVar1 = this + 0x10;
+  pCVar3 = (CExpressionValue *)this;
+  if (*(uint *)pCVar1 < param_1) {
+    uVar6 = 0x1930;
   }
   else {
     if (param_1 == 1) {
-      pfVar2 = (float *)((ulonglong)(uVar3 - 1) * 0x50 + *(longlong *)(this + 0x18));
-      if (pfVar2[0x12] == 2.52234e-44) {
-        D2DMatrixRotationY((D2DMatrix *)&local_48,*pfVar2);
+      bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar3 = (CExpressionValue *)
+                 CExpressionValue::CExpressionValue((CExpressionValue *)&local_78);
+        pCVar5 = &s_emptyValue;
+        CExpressionValue::operator=(&s_emptyValue,pCVar3);
+        pCVar3 = (CExpressionValue *)&local_78;
+        CExpressionValue::~CExpressionValue(pCVar3);
+      }
+      else {
+        pCVar3 = (CExpressionValue *)(this + 0x18);
+        pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar3,*(uint *)pCVar1 - 1);
+      }
+      if (*(float *)(pCVar5 + 0x48) == 2.52234e-44) {
+        D2DMatrixRotationY((D2DMatrix *)&local_78,*(float *)pCVar5);
+        *(undefined8 *)pCVar5 = local_78;
+        *(undefined8 *)(pCVar5 + 8) = uStack_70;
+        *(float *)(pCVar5 + 0x48) = 3.71344e-43;
+        *(undefined8 *)(pCVar5 + 0x10) = local_68;
+        *(undefined8 *)(pCVar5 + 0x18) = uStack_60;
+        pCVar5[0x4c] = (CExpressionValue)0x1;
+        *(undefined8 *)(pCVar5 + 0x20) = local_58;
+        *(undefined8 *)(pCVar5 + 0x28) = uStack_50;
+        *(undefined8 *)(pCVar5 + 0x30) = local_48;
+        *(undefined8 *)(pCVar5 + 0x38) = uStack_40;
 LAB_0:
-        *(undefined8 *)pfVar2 = local_48;
-        *(undefined8 *)(pfVar2 + 2) = uStack_40;
-        *(undefined8 *)(pfVar2 + 4) = local_38;
-        *(undefined8 *)(pfVar2 + 6) = uStack_30;
-        *(undefined8 *)(pfVar2 + 8) = local_28;
-        *(undefined8 *)(pfVar2 + 10) = uStack_20;
-        *(undefined1 *)(pfVar2 + 0x13) = 1;
-        *(undefined8 *)(pfVar2 + 0xc) = local_18;
-        *(undefined8 *)(pfVar2 + 0xe) = uStack_10;
-        pfVar2[0x12] = 3.71344e-43;
-        *(uint *)(this + 0x10) = *(int *)(this + 0x10) + (1 - param_1);
+        *(uint *)pCVar1 = *(uint *)pCVar1 + (1 - param_1);
         return 0;
       }
     }
     else if (param_1 == 2) {
-      pfVar2 = (float *)((ulonglong)(uVar3 - 2) * 0x50 + *(longlong *)(this + 0x18));
-      puVar1 = (undefined8 *)((ulonglong)(uVar3 - 1) * 0x50 + *(longlong *)(this + 0x18));
-      if ((pfVar2[0x12] == 2.52234e-44) && (*(int *)(puVar1 + 9) == 0x34)) {
-        local_58 = *puVar1;
-        local_50 = *(undefined4 *)(puVar1 + 1);
-        D2DMatrixRotationY(&local_48,*pfVar2,&local_58);
+      bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      pCVar3 = (CExpressionValue *)(this + 0x18);
+      pCVar5 = &s_emptyValue;
+      if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+        pCVar4 = (CExpressionValue *)
+                 CExpressionValue::CExpressionValue((CExpressionValue *)&local_78);
+        CExpressionValue::operator=(&s_emptyValue,pCVar4);
+        CExpressionValue::~CExpressionValue((CExpressionValue *)&local_78);
+        pCVar4 = &s_emptyValue;
+      }
+      else {
+        pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar3,*(uint *)pCVar1 - 2);
+      }
+      bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar3 = (CExpressionValue *)
+                 CExpressionValue::CExpressionValue((CExpressionValue *)&local_78);
+        CExpressionValue::operator=(&s_emptyValue,pCVar3);
+        pCVar3 = (CExpressionValue *)&local_78;
+        CExpressionValue::~CExpressionValue(pCVar3);
+      }
+      else {
+        pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar3,*(uint *)pCVar1 - 1);
+      }
+      if ((*(int *)(pCVar4 + 0x48) == 0x12) && (*(int *)(pCVar5 + 0x48) == 0x34)) {
+        local_88 = *(undefined8 *)pCVar5;
+        local_80 = *(undefined4 *)(pCVar5 + 8);
+        D2DMatrixRotationY(&local_78,*(undefined4 *)pCVar4,&local_88);
+        *(undefined4 *)(pCVar4 + 0x48) = 0x109;
+        *(undefined8 *)pCVar4 = local_78;
+        *(undefined8 *)(pCVar4 + 8) = uStack_70;
+        pCVar4[0x4c] = (CExpressionValue)0x1;
+        *(undefined8 *)(pCVar4 + 0x10) = local_68;
+        *(undefined8 *)(pCVar4 + 0x18) = uStack_60;
+        *(undefined8 *)(pCVar4 + 0x20) = local_58;
+        *(undefined8 *)(pCVar4 + 0x28) = uStack_50;
+        *(undefined8 *)(pCVar4 + 0x30) = local_48;
+        *(undefined8 *)(pCVar4 + 0x38) = uStack_40;
         goto LAB_0;
       }
     }
-    uVar3 = 0x194e;
+    uVar6 = 0x195e;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar3,(void *)0x0);
+            ((ulong)pCVar3,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Matrix4x4FromYawPitchRoll

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.24|
|i_ratio|0.14|
|m_ratio|0.67|
|b_ratio|0.63|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix4x4FromYawPitchRoll|Matrix4x4FromYawPitchRoll|
|fullname|CExpressionValueStack::Matrix4x4FromYawPitchRoll|CExpressionValueStack::Matrix4x4FromYawPitchRoll|
|refcount|2|2|
|`length`|303|543|
|`called`|D2DMatrixRotationQuaternion<br>D3DXQuaternionRotationYawPitchRoll<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrixRotationQuaternion<br>D3DXQuaternionRotationYawPitchRoll<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180257708|18025aae8|
|sig|long __thiscall Matrix4x4FromYawPitchRoll(CExpressionValueStack * this)|long __thiscall Matrix4x4FromYawPitchRoll(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix4x4FromYawPitchRoll Called Diff


```diff
--- CExpressionValueStack::Matrix4x4FromYawPitchRoll called
+++ CExpressionValueStack::Matrix4x4FromYawPitchRoll called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -2,0 +6 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix4x4FromYawPitchRoll Calling Diff


```diff
--- CExpressionValueStack::Matrix4x4FromYawPitchRoll calling
+++ CExpressionValueStack::Matrix4x4FromYawPitchRoll calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Matrix4x4FromYawPitchRoll Diff


```diff
--- CExpressionValueStack::Matrix4x4FromYawPitchRoll
+++ CExpressionValueStack::Matrix4x4FromYawPitchRoll
@@ -1,67 +1,110 @@
 
 /* public: long __cdecl CExpressionValueStack::Matrix4x4FromYawPitchRoll(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Matrix4x4FromYawPitchRoll(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
-  longlong lVar2;
-  ulonglong uVar3;
-  uint uVar4;
-  D2DQuaternion local_58 [16];
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
+  uint uVar7;
+  D2DQuaternion local_88 [16];
+  undefined8 local_78;
+  undefined8 uStack_70;
+  undefined8 local_68;
+  undefined8 uStack_60;
+  undefined8 local_58;
+  undefined8 uStack_50;
   undefined8 local_48;
   undefined8 uStack_40;
-  undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
   
-  uVar4 = *(uint *)(this + 0x10);
-  if (uVar4 < 3) {
-    uVar4 = 0x1ad8;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 3) {
+    uVar7 = 0x1ae8;
+    pCVar5 = (CExpressionValue *)this;
   }
   else {
-    lVar2 = *(longlong *)(this + 0x18);
-    uVar3 = (ulonglong)(uVar4 - 3);
-    if (*(int *)(lVar2 + 0x48 + uVar3 * 0x50) == 0x12) {
-      if (*(int *)(lVar2 + 0x48 + (ulonglong)(uVar4 - 2) * 0x50) == 0x12) {
-        if (*(int *)(lVar2 + 0x48 + (ulonglong)(uVar4 - 1) * 0x50) == 0x12) {
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar5 = (CExpressionValue *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_78);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 3);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_78);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      pCVar5 = (CExpressionValue *)&local_78;
+      CExpressionValue::~CExpressionValue(pCVar5);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 1);
+    }
+    if (*(float *)(pCVar3 + 0x48) == 2.52234e-44) {
+      if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+        if (*(float *)(pCVar6 + 0x48) == 2.52234e-44) {
           D3DXQuaternionRotationYawPitchRoll
-                    (local_58,*(float *)(lVar2 + uVar3 * 0x50),
-                     *(float *)(lVar2 + (ulonglong)(uVar4 - 2) * 0x50),
-                     *(float *)(lVar2 + (ulonglong)(uVar4 - 1) * 0x50));
-          D2DMatrixRotationQuaternion((D2DMatrix *)&local_48,local_58);
-          *(undefined4 *)(lVar2 + 0x48 + uVar3 * 0x50) = 0x109;
-          puVar1 = (undefined8 *)(lVar2 + uVar3 * 0x50);
-          *puVar1 = local_48;
-          puVar1[1] = uStack_40;
-          *(undefined1 *)(lVar2 + 0x4c + uVar3 * 0x50) = 1;
-          puVar1 = (undefined8 *)(lVar2 + 0x10 + uVar3 * 0x50);
-          *puVar1 = local_38;
-          puVar1[1] = uStack_30;
-          puVar1 = (undefined8 *)(lVar2 + 0x20 + uVar3 * 0x50);
-          *puVar1 = local_28;
-          puVar1[1] = uStack_20;
-          puVar1 = (undefined8 *)(lVar2 + 0x30 + uVar3 * 0x50);
-          *puVar1 = local_18;
-          puVar1[1] = uStack_10;
-          *(int *)(this + 0x10) = *(int *)(this + 0x10) + -2;
+                    (local_88,*(float *)pCVar3,*(float *)pCVar4,*(float *)pCVar6);
+          D2DMatrixRotationQuaternion((D2DMatrix *)&local_78,local_88);
+          *(float *)(pCVar3 + 0x48) = 3.71344e-43;
+          *(undefined8 *)pCVar3 = local_78;
+          *(undefined8 *)(pCVar3 + 8) = uStack_70;
+          pCVar3[0x4c] = (CExpressionValue)0x1;
+          *(undefined8 *)(pCVar3 + 0x10) = local_68;
+          *(undefined8 *)(pCVar3 + 0x18) = uStack_60;
+          *(undefined8 *)(pCVar3 + 0x20) = local_58;
+          *(undefined8 *)(pCVar3 + 0x28) = uStack_50;
+          *(undefined8 *)(pCVar3 + 0x30) = local_48;
+          *(undefined8 *)(pCVar3 + 0x38) = uStack_40;
+          *(uint *)pCVar1 = *(uint *)pCVar1 - 2;
           return 0;
         }
-        uVar4 = 0x1ae1;
+        uVar7 = 0x1af1;
       }
       else {
-        uVar4 = 0x1ae0;
+        uVar7 = 0x1af0;
       }
     }
     else {
-      uVar4 = 0x1adf;
+      uVar7 = 0x1aef;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar4,(void *)0x0);
+            ((ulong)pCVar5,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::DistanceSquared

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.22|
|i_ratio|0.33|
|m_ratio|0.8|
|b_ratio|0.77|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|DistanceSquared|DistanceSquared|
|fullname|CExpressionValueStack::DistanceSquared|CExpressionValueStack::DistanceSquared|
|refcount|2|2|
|`length`|465|621|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180255328|1802575b0|
|sig|long __thiscall DistanceSquared(CExpressionValueStack * this)|long __thiscall DistanceSquared(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::DistanceSquared Called Diff


```diff
--- CExpressionValueStack::DistanceSquared called
+++ CExpressionValueStack::DistanceSquared called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::DistanceSquared Calling Diff


```diff
--- CExpressionValueStack::DistanceSquared calling
+++ CExpressionValueStack::DistanceSquared calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::DistanceSquared Diff


```diff
--- CExpressionValueStack::DistanceSquared
+++ CExpressionValueStack::DistanceSquared
@@ -1,81 +1,102 @@
 
 /* public: long __cdecl CExpressionValueStack::DistanceSquared(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::DistanceSquared(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  float *pfVar2;
-  undefined8 uVar3;
-  undefined8 uVar4;
-  int iVar5;
-  longlong lVar6;
-  ulonglong uVar7;
-  ulonglong uVar8;
-  CExpressionValueStack *pCVar9;
-  float fVar10;
-  float fVar11;
-  uint uVar12;
-  float local_28;
-  float fStack_24;
-  float local_18;
-  float fStack_14;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar5;
+  float fVar6;
+  uint uVar7;
+  float local_88;
+  float fStack_84;
+  float local_78;
+  float fStack_74;
+  CExpressionValue local_68 [80];
   
-  uVar12 = *(uint *)(this + 0x10);
-  pCVar9 = this;
-  if (uVar12 < 2) {
-    uVar12 = 0xe55;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar7 = 0xe65;
   }
   else {
-    lVar6 = *(longlong *)(this + 0x18);
-    uVar7 = (ulonglong)(uVar12 - 2);
-    uVar8 = (ulonglong)(uVar12 - 1);
-    iVar5 = *(int *)(lVar6 + 0x48 + uVar7 * 0x50);
-    if (iVar5 == *(int *)(lVar6 + 0x48 + uVar8 * 0x50)) {
-      pCVar9 = (CExpressionValueStack *)0x12;
-      if (iVar5 == 0x12) {
-        fVar11 = *(float *)(lVar6 + uVar7 * 0x50) - *(float *)(lVar6 + uVar8 * 0x50);
-        fVar11 = fVar11 * fVar11;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar5 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this = (CExpressionValueStack *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+      this = (CExpressionValueStack *)this_00;
+    }
+    fVar6 = *(float *)(pCVar3 + 0x48);
+    if (fVar6 == *(float *)(pCVar5 + 0x48)) {
+      this = (CExpressionValueStack *)0x12;
+      if (fVar6 == 2.52234e-44) {
+        fVar6 = (*(float *)pCVar3 - *(float *)pCVar5) * (*(float *)pCVar3 - *(float *)pCVar5);
       }
-      else if (iVar5 == 0x23) {
-        fVar10 = *(float *)(lVar6 + 4 + uVar7 * 0x50) - *(float *)(lVar6 + 4 + uVar8 * 0x50);
-        fVar11 = *(float *)(lVar6 + uVar7 * 0x50) - *(float *)(lVar6 + uVar8 * 0x50);
-        fVar11 = fVar10 * fVar10 + fVar11 * fVar11;
+      else if (fVar6 == 4.90454e-44) {
+        fVar6 = (*(float *)(pCVar3 + 4) - *(float *)(pCVar5 + 4)) *
+                (*(float *)(pCVar3 + 4) - *(float *)(pCVar5 + 4)) +
+                (*(float *)pCVar3 - *(float *)pCVar5) * (*(float *)pCVar3 - *(float *)pCVar5);
       }
-      else if (iVar5 == 0x34) {
-        uVar3 = *(undefined8 *)(lVar6 + uVar7 * 0x50);
-        uVar4 = *(undefined8 *)(lVar6 + uVar8 * 0x50);
-        fStack_24 = (float)((ulonglong)uVar3 >> 0x20);
-        local_28 = (float)uVar3;
-        fStack_14 = (float)((ulonglong)uVar4 >> 0x20);
-        local_18 = (float)uVar4;
-        fVar11 = *(float *)(lVar6 + 8 + uVar7 * 0x50) - *(float *)(lVar6 + 8 + uVar8 * 0x50);
-        fVar11 = (fStack_24 - fStack_14) * (fStack_24 - fStack_14) +
-                 (local_28 - local_18) * (local_28 - local_18) + fVar11 * fVar11;
+      else if (fVar6 == 7.28675e-44) {
+        fStack_84 = (float)((ulonglong)*(undefined8 *)pCVar3 >> 0x20);
+        local_88 = (float)*(undefined8 *)pCVar3;
+        fStack_74 = (float)((ulonglong)*(undefined8 *)pCVar5 >> 0x20);
+        local_78 = (float)*(undefined8 *)pCVar5;
+        fVar6 = (fStack_84 - fStack_74) * (fStack_84 - fStack_74) +
+                (local_88 - local_78) * (local_88 - local_78) +
+                (*(float *)(pCVar3 + 8) - *(float *)(pCVar5 + 8)) *
+                (*(float *)(pCVar3 + 8) - *(float *)(pCVar5 + 8));
       }
       else {
-        if (iVar5 != 0x45) {
-          uVar12 = 0xea8;
+        if (fVar6 != 9.66896e-44) {
+          uVar7 = 0xeb8;
           goto LAB_0;
         }
-        pfVar1 = (float *)(lVar6 + uVar7 * 0x50);
-        pfVar2 = (float *)(lVar6 + uVar8 * 0x50);
-        fVar11 = (pfVar1[1] - pfVar2[1]) * (pfVar1[1] - pfVar2[1]) +
-                 (*pfVar1 - *pfVar2) * (*pfVar1 - *pfVar2) +
-                 (pfVar1[2] - pfVar2[2]) * (pfVar1[2] - pfVar2[2]) +
-                 (pfVar1[3] - pfVar2[3]) * (pfVar1[3] - pfVar2[3]);
+        fVar6 = (*(float *)(pCVar3 + 4) - *(float *)(pCVar5 + 4)) *
+                (*(float *)(pCVar3 + 4) - *(float *)(pCVar5 + 4)) +
+                (*(float *)pCVar3 - *(float *)pCVar5) * (*(float *)pCVar3 - *(float *)pCVar5) +
+                (*(float *)(pCVar3 + 8) - *(float *)(pCVar5 + 8)) *
+                (*(float *)(pCVar3 + 8) - *(float *)(pCVar5 + 8)) +
+                (*(float *)(pCVar3 + 0xc) - *(float *)(pCVar5 + 0xc)) *
+                (*(float *)(pCVar3 + 0xc) - *(float *)(pCVar5 + 0xc));
       }
-      *(undefined1 *)(lVar6 + 0x4c + uVar7 * 0x50) = 1;
-      *(undefined4 *)(lVar6 + 0x48 + uVar7 * 0x50) = 0x12;
-      *(float *)(lVar6 + uVar7 * 0x50) = fVar11;
-      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+      pCVar3[0x4c] = (CExpressionValue)0x1;
+      *(float *)(pCVar3 + 0x48) = 2.52234e-44;
+      *(float *)pCVar3 = fVar6;
+      *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
       return 0;
     }
-    uVar12 = 0xe6c;
+    uVar7 = 0xe7c;
   }
 LAB_0:
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pCVar9,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar12,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CKeyframeAnimation::CalculateValueWorker

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,called|
|ratio|0.97|
|i_ratio|0.75|
|m_ratio|0.97|
|b_ratio|0.97|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|CalculateValueWorker|CalculateValueWorker|
|fullname|CKeyframeAnimation::CalculateValueWorker|CKeyframeAnimation::CalculateValueWorker|
|refcount|5|5|
|`length`|2199|2059|
|`called`|<details><summary>Expand for full list:<br>CExpressionValue::CopyFrom<br>CKeyframeAnimation::ApplyPlaybackStateChanges<br>CKeyframeAnimation::Calculate<br>CKeyframeAnimation::ProcessExpressionKeyFrames<br>CKeyframeAnimation::Reset<br>CKeyframeAnimation::SampleStartingValue<br>FUN_1801195c4<br>FUN_180119749<br>FUN_180119756<br>FUN_180119b9f<br>__security_check_cookie</summary>_guard_xfg_dispatch_icall_nop</details>|<details><summary>Expand for full list:<br>CExpressionValue::CopyFrom<br>CKeyframeAnimation::ApplyPlaybackStateChanges<br>CKeyframeAnimation::Calculate<br>CKeyframeAnimation::ProcessExpressionKeyFrames<br>CKeyframeAnimation::Reset<br>CKeyframeAnimation::SampleStartingValue<br>FUN_18012109a<br>FUN_18012121f<br>FUN_18012122c<br>FUN_180121675<br>__security_check_cookie</summary>_guard_xfg_dispatch_icall_nop</details>|
|calling|CScrollKeyframeAnimation::CalculateValueWorker|CScrollKeyframeAnimation::CalculateValueWorker|
|paramcount|4|4|
|`address`|18005b360|180056670|
|sig|long __thiscall CalculateValueWorker(CKeyframeAnimation * this, CExpressionValueStack * param_1, __uint64 param_2, bool * param_3)|long __thiscall CalculateValueWorker(CKeyframeAnimation * this, CExpressionValueStack * param_1, __uint64 param_2, bool * param_3)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|False|False|

### CKeyframeAnimation::CalculateValueWorker Called Diff


```diff
--- CKeyframeAnimation::CalculateValueWorker called
+++ CKeyframeAnimation::CalculateValueWorker called
@@ -7,4 +7,4 @@
-FUN_1801195c4
-FUN_180119749
-FUN_180119756
-FUN_180119b9f
+FUN_18012109a
+FUN_18012121f
+FUN_18012122c
+FUN_180121675
```


### CKeyframeAnimation::CalculateValueWorker Diff


```diff
--- CKeyframeAnimation::CalculateValueWorker
+++ CKeyframeAnimation::CalculateValueWorker
@@ -1,536 +1,536 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* WARNING: Function: _guard_xfg_dispatch_icall_nop replaced with injection: guard_dispatch_icall */
 /* public: virtual long __cdecl CKeyframeAnimation::CalculateValueWorker(class CExpressionValueStack
    * __ptr64,unsigned __int64,bool * __ptr64) __ptr64 */
 
 long __thiscall
 CKeyframeAnimation::CalculateValueWorker
           (CKeyframeAnimation *this,CExpressionValueStack *param_1,__uint64 param_2,bool *param_3)
 
 {
   int *piVar1;
   ulong uVar2;
   undefined8 *puVar3;
   KeyframeSequence *this_00;
   CPathData *pCVar4;
   undefined8 uVar5;
   long lVar6;
   longlong lVar7;
   int iVar8;
   ulong uVar9;
   CKeyframeAnimation *pCVar10;
   DynArray<CExpressionValue,1> *pDVar11;
   ComPtr<CPathData> *pCVar12;
   CKeyframeAnimation CVar13;
   undefined4 uVar14;
   int iVar15;
   longlong lVar16;
   undefined8 *puVar17;
   ulonglong uVar18;
   int iVar19;
   float fVar20;
   undefined8 unaff_retaddr;
   undefined1 auStackY_118 [32];
   uint uVar21;
   undefined8 local_d8;
   undefined8 uStack_d0;
   undefined8 local_c8;
   undefined8 uStack_c0;
   undefined8 local_b8;
   undefined8 uStack_b0;
   undefined8 local_a8;
   undefined8 uStack_a0;
   CPathData *local_98;
   int local_90;
   undefined1 local_8c;
   CExpressionValue aCStack_88 [64];
   undefined8 uStack_48;
   undefined4 uStack_40;
   undefined1 uStack_3c;
   ulonglong local_38;
   
   local_38 = __security_cookie ^ (ulonglong)auStackY_118;
   *param_3 = false;
   if ((*(char *)(*(longlong *)(*(longlong *)(this + 0x10) + 0xd8) + 0x245) != '\0') &&
      (*(char *)(*(longlong *)(*(longlong *)(this + 0x10) + 0xd8) + 0x246) == '\0')) {
-    lVar6 = FUN_1801195c4();
+    lVar6 = FUN_18012109a();
     return lVar6;
   }
   pCVar10 = this;
   lVar6 = ApplyPlaybackStateChanges(this,param_1);
   uVar9 = (ulong)pCVar10;
   if (lVar6 < 0) {
     uVar21 = 0x5e9;
     goto LAB_0;
   }
   uVar2 = *(ulong *)(param_1 + 0x10);
   lVar16 = *(longlong *)(*(longlong *)(this + 0x10) + 0x260) - *(longlong *)(this + 0x1f8);
   if (lVar16 < 0) goto LAB_1;
   if (((byte)this[0x245] & 1) != 0) {
     if ((*(int *)(this + 0x230) != 2) &&
        (lVar7 = (**(code **)(*(longlong *)this + 0xa0))(this), lVar7 != 0)) {
       *(int *)(lVar7 + 0x28) = *(int *)(lVar7 + 0x28) + 1;
     }
     CVar13 = this[0x244];
     if ((((byte)CVar13 & 6) == 0) && (this[0x94] != (CKeyframeAnimation)0x0)) {
       if (*(int *)(this + 0x230) != 2) {
 LAB_2:
         if (lVar16 == 0x7fffffffffffffff) {
           iVar8 = 0x7fffffff;
         }
         else {
           lVar16 = lVar16 * 1000000;
           if (Time::s_luFreq == 10000000) {
             lVar16 = SUB168(SEXT816(-0x29406b2a1a85bd43) * SEXT816(lVar16),8) + lVar16;
             lVar16 = (lVar16 >> 0x17) - (lVar16 >> 0x3f);
           }
           else {
             lVar16 = lVar16 / (longlong)Time::s_luFreq;
           }
           lVar7 = 500;
           if (lVar16 < 0) {
             lVar7 = -500;
           }
           iVar8 = (int)((lVar7 + lVar16) / 1000);
         }
         uVar18 = *(ulonglong *)(this + 0x30);
         lVar16 = *(longlong *)(*(longlong *)(this + 0x10) + 0x1a8);
         if (uVar18 == 0) {
 LAB_3:
           fVar20 = 1.0;
         }
         else {
           uVar18 = *(ulonglong *)(lVar16 + 0x200) &
                    ((((((((uVar18 & 0xff ^ 0xcbf29ce484222325) * 0x100000001b3 ^ uVar18 >> 8 & 0xff)
                          * 0x100000001b3 ^ uVar18 >> 0x10 & 0xff) * 0x100000001b3 ^
                        uVar18 >> 0x18 & 0xff) * 0x100000001b3 ^ uVar18 >> 0x20 & 0xff) *
                       0x100000001b3 ^ uVar18 >> 0x28 & 0xff) * 0x100000001b3 ^ uVar18 >> 0x30 & 0xff
                     ) * 0x100000001b3 ^ uVar18 >> 0x38) * 0x100000001b3;
           lVar7 = *(longlong *)(*(longlong *)(lVar16 + 0x1e8) + 8 + uVar18 * 0x10);
           if (lVar7 == *(longlong *)(lVar16 + 0x1d8)) {
 LAB_4:
             lVar7 = 0;
           }
           else {
             for (; *(longlong *)(this + 0x30) != *(longlong *)(lVar7 + 0x10);
                 lVar7 = *(longlong *)(lVar7 + 8)) {
               if (lVar7 == *(longlong *)(*(longlong *)(lVar16 + 0x1e8) + uVar18 * 0x10))
               goto LAB_4;
             }
           }
           if ((lVar7 == 0) || (lVar7 == *(longlong *)(lVar16 + 0x1d8))) goto LAB_3;
           fVar20 = *(float *)(lVar7 + 0x18);
         }
         iVar8 = (int)((float)iVar8 * *(float *)(this + 0x210) * fVar20);
         if ((char)this[0x244] < '\0') {
           if (*(int *)(this + 0x23c) == 4) {
             lVar16 = *(longlong *)(this + 0x188);
             fVar20 = 0.0;
             if (0 < *(int *)(lVar16 + 0x70)) {
               fVar20 = (float)*(uint *)(*(longlong *)(lVar16 + 0x68) +
                                        (ulonglong)(*(int *)(lVar16 + 0x70) - 1) * 0x18) / 1000.0;
             }
             fVar20 = fVar20 * *(float *)(this + 0x22c) * 1000.0;
             if ((uint)ABS(fVar20) < 0x497ffff1) {
               iVar8 = ((int)(fVar20 + 6291456.0) << 10) >> 0xb;
             }
             else {
               iVar8 = (int)ROUND(fVar20) + (uint)((float)(int)ROUND(fVar20) - fVar20 <= -0.5);
             }
             if (*(float *)(lVar16 + 0x88) == 1.0) {
               iVar19 = *(int *)(lVar16 + 0x78);
               iVar15 = iVar19;
             }
             else {
               iVar19 = *(int *)(lVar16 + 0x78);
               iVar15 = (int)(longlong)((float)iVar19 * *(float *)(lVar16 + 0x88));
             }
             if (*(float *)(lVar16 + 0x84) == 0.0) {
               uVar14 = 0;
             }
             else {
               uVar14 = (undefined4)(longlong)((float)iVar19 * *(float *)(lVar16 + 0x84));
             }
             *(undefined4 *)(lVar16 + 0x50) = uVar14;
             *(int *)(lVar16 + 0x54) = iVar15;
             *(int *)(lVar16 + 0x58) = iVar19;
             *(byte *)(lVar16 + 0x60) = *(byte *)(lVar16 + 0x8c) >> 4 & 1;
             *(undefined4 *)(lVar16 + 0x5c) = uVar14;
             *(byte *)(lVar16 + 0x8c) = *(byte *)(lVar16 + 0x8c) | 0x20;
             *(int *)(lVar16 + 0x5c) = iVar8;
           }
           else {
             iVar19 = *(int *)(this + 0x1ec);
             if (iVar19 < *(int *)(this + 0x1e8)) {
               iVar15 = *(int *)(this + 0x1e8) - iVar19;
               if (iVar8 < iVar15) {
                 iVar15 = iVar8;
               }
               *(int *)(this + 0x1ec) = iVar19 + iVar15;
               iVar8 = iVar8 - iVar15;
             }
             if ((*(byte *)(*(longlong *)(this + 0x188) + 0x8c) & 2) != 0) {
               piVar1 = (int *)(*(longlong *)(this + 0x188) + 0x5c);
               *piVar1 = *piVar1 + iVar8;
             }
           }
         }
       }
     }
     else {
       if (*(int *)(this + 0x230) != 2) goto LAB_2;
       if (((byte)this[0x245] & 1) == 0) {
         *(undefined4 *)(this + 0x21c) = 0;
         PrepareSequenceForIteration(this,0);
         KeyframeSequence::Play(*(KeyframeSequence **)(this + 0x188));
         this[0x244] = (CKeyframeAnimation)((byte)this[0x244] | 0x80);
         this[0x245] = (CKeyframeAnimation)((byte)this[0x245] & 0xfd | 1);
         *(undefined4 *)(this + 0x224) = *(undefined4 *)(this + 0x220);
         OnAnimationEvent(this,4,param_1);
         this[0x245] = (CKeyframeAnimation)((byte)this[0x245] | 4);
       }
       else if ((-1 < (char)CVar13) && (((byte)this[0x245] & 2) == 0)) {
         this_00 = *(KeyframeSequence **)(this + 0x188);
         this[0x244] = (CKeyframeAnimation)((byte)CVar13 | 0x80);
         if (((byte)this_00[0x8c] & 1) == 0) {
           KeyframeSequence::SortKeyFrames(this_00);
           KeyframeSequence::ConfigureTimer(this_00);
           uVar18 = 0;
           if (*(uint *)(this_00 + 0x70) != 0) {
             do {
               iVar8 = *(int *)(*(longlong *)(*(longlong *)(this_00 + 0x68) + 8 + uVar18 * 0x18) +
                               0x14);
               if (((iVar8 != 1) && (iVar8 != 2)) && (iVar8 != 3)) {
                     /* WARNING: Subroutine does not return */
                 ModuleFailFastForHRESULT(0x8000ffff,unaff_retaddr);
               }
               uVar21 = (int)uVar18 + 1;
               uVar18 = (ulonglong)uVar21;
             } while (uVar21 < *(uint *)(this_00 + 0x70));
           }
           this_00[0x8c] = (KeyframeSequence)((byte)this_00[0x8c] | 3);
         }
         else {
           this_00[0x8c] = (KeyframeSequence)((byte)this_00[0x8c] | 2);
         }
       }
       this[0x244] = (CKeyframeAnimation)((byte)this[0x244] | 0x20);
     }
     *(undefined8 *)(this + 0x1f8) = *(undefined8 *)(*(longlong *)(this + 0x10) + 0x260);
     if (((((byte)this[0x245] & 1) != 0) && (*(int *)(this + 0x1ec) < *(int *)(this + 0x1e8))) &&
        (((byte)this[0x244] & 0x40) == 0)) {
       if (*(int *)(this + 0x238) == 1) {
-        lVar6 = FUN_180119749();
+        lVar6 = FUN_18012121f();
         return lVar6;
       }
-      goto switchD_18005ba39_caseD_c;
+      goto switchD_180056d49_caseD_c;
     }
     if (((byte)this[0x244] & 8) == 0) {
       ProcessExpressionKeyFrames(this,param_1);
       if ((*(longlong *)(this + 0x180) != 0) && (lVar6 = SampleStartingValue(this), lVar6 < 0)) {
-        lVar6 = FUN_180119756();
+        lVar6 = FUN_18012122c();
         return lVar6;
       }
       this[0x244] = (CKeyframeAnimation)((byte)this[0x244] | 8);
     }
     pCVar10 = this;
     lVar6 = Calculate(this,param_1);
     uVar9 = (ulong)pCVar10;
     if (lVar6 < 0) {
       uVar21 = 0x62b;
       goto LAB_0;
     }
     puVar3 = *(undefined8 **)(this + 0x188);
     if (*(char *)((longlong)puVar3 + 0x4c) == '\0') goto LAB_5;
     uVar9 = *(ulong *)(param_1 + 0x10);
     if (~uVar9 < 5) {
       lVar6 = -0x7fff0001;
       MilInstrumentationCheckHR_MaybeFailFast
                 (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,-0x7fff0001,
-                 0x52,(void *)0x0);
+                 0x53,(void *)0x0);
 LAB_6:
       MilInstrumentationCheckHR_MaybeFailFast
-                (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,lVar6,0x271,
+                (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,lVar6,0x281,
                  (void *)0x0);
       uVar21 = 0x638;
       goto LAB_0;
     }
     if (*(ulong *)(param_1 + 0x30) == uVar9) {
       uVar21 = 0;
       memset(&local_d8,0,0x40);
       pDVar11 = (DynArray<CExpressionValue,1> *)(param_1 + 0x18);
       local_98 = (CPathData *)0x0;
       local_90 = 0x12;
       local_8c = 0;
       lVar6 = DynArray<CExpressionValue,1>::AddAndSet(pDVar11,uVar21,(CExpressionValue *)&local_d8);
       if (lVar6 < 0) {
         MilInstrumentationCheckHR_MaybeFailFast
                   ((ulong)pDVar11,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                   lVar6,0x5b,(void *)0x0);
+                   lVar6,0x5c,(void *)0x0);
         pCVar12 = (ComPtr<CPathData> *)&local_98;
         Microsoft::WRL::ComPtr<CPathData>::InternalRelease(pCVar12);
         uVar9 = (ulong)pCVar12;
         goto LAB_6;
       }
       Microsoft::WRL::ComPtr<CPathData>::InternalRelease((ComPtr<CPathData> *)&local_98);
     }
     uVar21 = *(uint *)(param_1 + 0x10);
     *(uint *)(param_1 + 0x10) = uVar21 + 1;
     iVar8 = *(int *)(puVar3 + 9);
     puVar17 = (undefined8 *)((ulonglong)uVar21 * 0x50 + *(longlong *)(param_1 + 0x18));
     if (iVar8 == 0x12) {
       *(undefined4 *)puVar17 = *(undefined4 *)puVar3;
       *(undefined4 *)(puVar17 + 9) = 0x12;
       goto LAB_7;
     }
     if (iVar8 == 0x11) {
       *(undefined1 *)puVar17 = *(undefined1 *)puVar3;
       *(undefined4 *)(puVar17 + 9) = 0x11;
       goto LAB_7;
     }
     if (iVar8 == 0x23) {
       *(undefined4 *)(puVar17 + 9) = 0x23;
       *puVar17 = *puVar3;
       goto LAB_7;
     }
     switch(iVar8) {
     case 0xb:
       pCVar4 = (CPathData *)puVar3[8];
       *(undefined4 *)(puVar17 + 9) = 0xb;
       *(undefined1 *)((longlong)puVar17 + 0x4c) = 1;
       Microsoft::WRL::ComPtr<CPathData>::operator=((ComPtr<CPathData> *)(puVar17 + 8),pCVar4);
     default:
-      goto switchD_18005ba39_caseD_c;
+      goto switchD_180056d49_caseD_c;
     case 0x2a:
       *(undefined4 *)(puVar17 + 9) = 0x2a;
       *(undefined4 *)puVar17 = *(undefined4 *)puVar3;
       break;
     case 0x34:
       *(undefined4 *)(puVar17 + 9) = 0x34;
       *puVar17 = *puVar3;
       *(undefined4 *)(puVar17 + 1) = *(undefined4 *)(puVar3 + 1);
       break;
     case 0x45:
       *(undefined4 *)(puVar17 + 9) = 0x45;
       uVar5 = puVar3[1];
       *puVar17 = *puVar3;
       puVar17[1] = uVar5;
       break;
     case 0x46:
       *(undefined4 *)(puVar17 + 9) = 0x46;
       uVar5 = puVar3[1];
       *puVar17 = *puVar3;
       puVar17[1] = uVar5;
       break;
     case 0x47:
       *(undefined4 *)(puVar17 + 9) = 0x47;
       uVar5 = puVar3[1];
       *puVar17 = *puVar3;
       puVar17[1] = uVar5;
       break;
     case 0x68:
       *(undefined4 *)(puVar17 + 9) = 0x68;
       uVar5 = puVar3[1];
       *puVar17 = *puVar3;
       puVar17[1] = uVar5;
       puVar17[2] = puVar3[2];
       break;
     case 0x109:
       *(undefined4 *)(puVar17 + 9) = 0x109;
       uVar5 = puVar3[1];
       *puVar17 = *puVar3;
       puVar17[1] = uVar5;
       uVar5 = puVar3[3];
       puVar17[2] = puVar3[2];
       puVar17[3] = uVar5;
       uVar5 = puVar3[5];
       puVar17[4] = puVar3[4];
       puVar17[5] = uVar5;
       uVar5 = puVar3[7];
       puVar17[6] = puVar3[6];
       puVar17[7] = uVar5;
     }
 LAB_7:
     *(undefined1 *)((longlong)puVar17 + 0x4c) = 1;
-switchD_18005ba39_caseD_c:
+switchD_180056d49_caseD_c:
     CVar13 = this[0x244];
     if ((((byte)CVar13 >> 5 & (byte)this[0x245] & 1) != 0) && ((char)CVar13 < '\0')) {
       this[0x244] = (CKeyframeAnimation)((byte)CVar13 & 0x7f);
       *(byte *)(*(longlong *)(this + 0x188) + 0x8c) =
            *(byte *)(*(longlong *)(this + 0x188) + 0x8c) & 0xfd;
       CVar13 = this[0x244];
     }
     if (((byte)this[0x245] & 2) == 0) {
       if ((((byte)this[0x245] & 1) == 0) || (*(int *)(this + 0x1e8) <= *(int *)(this + 0x1ec)))
       goto LAB_1;
       if ((*(int *)(this + 0x238) == 1) && (((byte)CVar13 & 0x10) == 0)) {
         this[0x244] = (CKeyframeAnimation)((byte)CVar13 | 0x10);
         goto LAB_1;
       }
       if (((byte)CVar13 & 0x40) != 0) goto LAB_1;
       goto LAB_5;
     }
     *(int *)(param_1 + 0x10) = *(int *)(param_1 + 0x10) + -1;
     pCVar10 = this;
     lVar6 = Reset(this,true,param_1);
     uVar9 = (ulong)pCVar10;
     if (-1 < lVar6) {
       CVar13 = this[0x244];
       this[0x244] = (CKeyframeAnimation)((byte)CVar13 & 0xfe);
       if (((byte)CVar13 & 0x20) == 0) {
         *(undefined8 *)(this + 0x230) = 0;
       }
       else {
         Play(this,param_1);
         Pause(this);
       }
       goto LAB_1;
     }
     uVar21 = 0x649;
     goto LAB_0;
   }
   if (this[0x94] == (CKeyframeAnimation)0x0) goto LAB_5;
   local_98 = (CPathData *)0x0;
   local_90 = 0x12;
   local_8c = 0;
   local_d8 = 0;
   uStack_d0 = 0;
   local_c8 = 0;
   uStack_c0 = 0;
   local_b8 = 0;
   uStack_b0 = 0;
   local_a8 = 0;
   uStack_a0 = 0;
   CExpressionValue::CopyFrom((CExpressionValue *)&local_d8,(CExpressionValue *)(this + 0x48));
   uVar9 = *(ulong *)(param_1 + 0x10);
   if (~uVar9 < 5) {
     MilInstrumentationCheckHR_MaybeFailFast
               (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,-0x7fff0001,
-               0x52,(void *)0x0);
+               0x53,(void *)0x0);
     lVar6 = -0x7fff0001;
 LAB_8:
     MilInstrumentationCheckHR_MaybeFailFast
-              (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,lVar6,0x271,
+              (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,lVar6,0x281,
                (void *)0x0);
     MilInstrumentationCheckHR_MaybeFailFast(uVar9,(long *)0x0,0,lVar6,0x67c,(void *)0x0);
     Microsoft::WRL::ComPtr<CPathData>::InternalRelease((ComPtr<CPathData> *)&local_98);
     goto LAB_9;
   }
   if (*(ulong *)(param_1 + 0x30) == uVar9) {
     uVar21 = 0;
     memset(aCStack_88,0,0x40);
     pDVar11 = (DynArray<CExpressionValue,1> *)(param_1 + 0x18);
     uStack_48 = 0;
     uStack_40 = 0x12;
     uStack_3c = 0;
     lVar6 = DynArray<CExpressionValue,1>::AddAndSet(pDVar11,uVar21,aCStack_88);
     if (lVar6 < 0) {
       MilInstrumentationCheckHR_MaybeFailFast
                 ((ulong)pDVar11,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                 lVar6,0x5b,(void *)0x0);
+                 lVar6,0x5c,(void *)0x0);
       pCVar12 = (ComPtr<CPathData> *)&uStack_48;
       Microsoft::WRL::ComPtr<CPathData>::InternalRelease(pCVar12);
       uVar9 = (ulong)pCVar12;
       goto LAB_8;
     }
     Microsoft::WRL::ComPtr<CPathData>::InternalRelease((ComPtr<CPathData> *)&uStack_48);
   }
   pCVar4 = local_98;
   uVar21 = *(uint *)(param_1 + 0x10);
   *(uint *)(param_1 + 0x10) = uVar21 + 1;
   lVar16 = *(longlong *)(param_1 + 0x18);
   lVar7 = (ulonglong)uVar21 * 0x50;
   if (local_90 == 0x46) {
     *(undefined4 *)(lVar7 + 0x48 + lVar16) = 0x46;
     goto LAB_10;
   }
   if (local_90 == 0x12) {
     *(undefined4 *)(lVar7 + lVar16) = (undefined4)local_d8;
     *(undefined4 *)(lVar7 + 0x48 + lVar16) = 0x12;
     goto LAB_11;
   }
   if (local_90 == 0x34) {
     *(undefined4 *)(lVar7 + 0x48 + lVar16) = 0x34;
     *(undefined8 *)(lVar7 + lVar16) = local_d8;
     *(undefined4 *)(lVar7 + 8 + lVar16) = (undefined4)uStack_d0;
     goto LAB_11;
   }
   switch(local_90) {
   case 0xb:
     *(undefined4 *)(lVar7 + 0x48 + lVar16) = 0xb;
     *(undefined1 *)(lVar7 + 0x4c + lVar16) = 1;
     Microsoft::WRL::ComPtr<CPathData>::operator=
               ((ComPtr<CPathData> *)(lVar7 + 0x40 + lVar16),local_98);
   default:
-    goto switchD_180119aad_caseD_c;
+    goto switchD_180121583_caseD_c;
   case 0x11:
     *(CExpressionValue *)(lVar7 + lVar16) = local_d8._0_1_;
     *(undefined4 *)(lVar7 + 0x48 + lVar16) = 0x11;
     break;
   case 0x23:
     *(undefined4 *)(lVar7 + lVar16) = (undefined4)local_d8;
     *(undefined4 *)(lVar7 + 4 + lVar16) = local_d8._4_4_;
     *(undefined4 *)(lVar7 + 0x48 + lVar16) = 0x23;
     break;
   case 0x2a:
     *(undefined4 *)(lVar7 + lVar16) = (undefined4)local_d8;
     *(undefined4 *)(lVar7 + 0x48 + lVar16) = 0x2a;
     break;
   case 0x45:
     *(undefined4 *)(lVar7 + 0x48 + lVar16) = 0x45;
     goto LAB_10;
   case 0x47:
     *(undefined4 *)(lVar7 + 0x48 + lVar16) = 0x47;
 LAB_10:
     *(undefined8 *)(lVar7 + lVar16) = local_d8;
     ((undefined8 *)(lVar7 + lVar16))[1] = uStack_d0;
     break;
   case 0x68:
     *(undefined8 *)(lVar7 + lVar16) = local_d8;
     ((undefined8 *)(lVar7 + lVar16))[1] = uStack_d0;
     *(undefined4 *)(lVar7 + 0x48 + lVar16) = 0x68;
     *(undefined8 *)(lVar7 + 0x10 + lVar16) = local_c8;
     break;
   case 0x109:
     *(undefined8 *)(lVar7 + lVar16) = local_d8;
     ((undefined8 *)(lVar7 + lVar16))[1] = uStack_d0;
     *(undefined4 *)(lVar7 + 0x48 + lVar16) = 0x109;
     puVar3 = (undefined8 *)(lVar7 + 0x10 + lVar16);
     *puVar3 = local_c8;
     puVar3[1] = uStack_c0;
     puVar3 = (undefined8 *)(lVar7 + 0x20 + lVar16);
     *puVar3 = local_b8;
     puVar3[1] = uStack_b0;
     puVar3 = (undefined8 *)(lVar7 + 0x30 + lVar16);
     *puVar3 = local_a8;
     puVar3[1] = uStack_a0;
   }
 LAB_11:
   *(undefined1 *)(lVar7 + 0x4c + lVar16) = 1;
-switchD_180119aad_caseD_c:
+switchD_180121583_caseD_c:
   if (pCVar4 != (CPathData *)0x0) {
-    lVar6 = FUN_180119b9f();
+    lVar6 = FUN_180121675();
     return lVar6;
   }
 LAB_1:
   uVar9 = *(ulong *)(param_1 + 0x10);
   if (uVar9 == uVar2 + 1) {
     lVar6 = 0;
   }
   else if (uVar9 == uVar2) {
 LAB_5:
     lVar6 = 1;
   }
   else {
     lVar6 = -0x7fff0001;
     uVar21 = 0x699;
 LAB_0:
     MilInstrumentationCheckHR_MaybeFailFast(uVar9,(long *)0x0,0,lVar6,uVar21,(void *)0x0);
   }
 LAB_9:
   *param_3 = (bool)((byte)this[0x244] & 1);
   this[0x244] = (CKeyframeAnimation)((byte)this[0x244] & 0x99);
   return lVar6;
 }
 

```


## CExpressionValueStack::Conditional

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.37|
|i_ratio|0.02|
|m_ratio|0.75|
|b_ratio|0.33|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Conditional|Conditional|
|fullname|CExpressionValueStack::Conditional|CExpressionValueStack::Conditional|
|`refcount`|3|2|
|`length`|135|222|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|3|3|
|`address`|1800e46a8|1800c1dc8|
|sig|long __thiscall Conditional(CExpressionValueStack * this, ExpressionConditionalNode * param_1, bool * param_2)|long __thiscall Conditional(CExpressionValueStack * this, ExpressionConditionalNode * param_1, bool * param_2)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Conditional Called Diff


```diff
--- CExpressionValueStack::Conditional called
+++ CExpressionValueStack::Conditional called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Conditional Diff


```diff
--- CExpressionValueStack::Conditional
+++ CExpressionValueStack::Conditional
@@ -1,31 +1,50 @@
 
 /* public: long __cdecl CExpressionValueStack::Conditional(struct ExpressionConditionalNode *
    __ptr64,bool * __ptr64) __ptr64 */
 
 long __thiscall
 CExpressionValueStack::Conditional
           (CExpressionValueStack *this,ExpressionConditionalNode *param_1,bool *param_2)
 
 {
-  CExpressionValueStack *pCVar1;
-  uint uVar2;
+  CExpressionValue CVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar4;
+  uint uVar5;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar2 = 0x1f31;
+    uVar5 = 0x1f41;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    uVar2 = *(int *)(this + 0x10) - 1;
-    pCVar1 = (CExpressionValueStack *)((ulonglong)uVar2 * 0x50 + *(longlong *)(this + 0x18));
-    if (*(int *)(pCVar1 + 0x48) == 0x11) {
-      *param_2 = (bool)*pCVar1;
-      *(uint *)(this + 0x10) = uVar2;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)(this + 0x10) - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this_00 = (DynArray<CExpressionValue,1> *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+      pCVar4 = DynArray<CExpressionValue,1>::operator[](this_00,*(int *)(this + 0x10) - 1U);
+    }
+    if (*(int *)(pCVar4 + 0x48) == 0x11) {
+      CVar1 = *pCVar4;
+      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+      *param_2 = (bool)CVar1;
       return 0;
     }
-    uVar2 = 0x1f44;
-    this = pCVar1;
+    uVar5 = 0x1f54;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar2,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::GreaterThan

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.29|
|i_ratio|0.06|
|m_ratio|0.65|
|b_ratio|0.23|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|GreaterThan|GreaterThan|
|fullname|CExpressionValueStack::GreaterThan|CExpressionValueStack::GreaterThan|
|`refcount`|3|2|
|`length`|192|363|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|18001eefc|1800201d4|
|sig|long __thiscall GreaterThan(CExpressionValueStack * this)|long __thiscall GreaterThan(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::GreaterThan Called Diff


```diff
--- CExpressionValueStack::GreaterThan called
+++ CExpressionValueStack::GreaterThan called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::GreaterThan Diff


```diff
--- CExpressionValueStack::GreaterThan
+++ CExpressionValueStack::GreaterThan
@@ -1,43 +1,72 @@
 
 /* public: long __cdecl CExpressionValueStack::GreaterThan(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::GreaterThan(CExpressionValueStack *this)
 
 {
-  float fVar1;
+  CExpressionValueStack *pCVar1;
   float fVar2;
-  float *pfVar3;
-  float *pfVar4;
-  uint uVar5;
+  bool bVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar7;
+  uint uVar8;
+  CExpressionValue local_68 [80];
+  float fVar3;
   
-  uVar5 = *(uint *)(this + 0x10);
-  if (uVar5 < 2) {
-    uVar5 = 0x770;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar8 = 0x780;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    pfVar4 = (float *)((ulonglong)(uVar5 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar3 = (float *)((ulonglong)(uVar5 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    fVar2 = pfVar4[0x12];
-    if (fVar2 == pfVar3[0x12]) {
-      if (fVar2 == 2.52234e-44) {
-        fVar2 = *pfVar3;
-        fVar1 = *pfVar3;
-        pfVar4[0x12] = 2.38221e-44;
-        *(undefined1 *)(pfVar4 + 0x13) = 1;
-        *(bool *)pfVar4 = fVar1 <= *pfVar4 && *pfVar4 != fVar2;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+    bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar7 = &s_emptyValue;
+    if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar5 = &s_emptyValue;
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar6 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar6);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar7 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if (*(float *)(pCVar5 + 0x48) == *(float *)(pCVar7 + 0x48)) {
+      if (*(float *)(pCVar5 + 0x48) == 2.52234e-44) {
+        fVar2 = *(float *)pCVar7;
+        fVar3 = *(float *)pCVar7;
+        *(float *)(pCVar5 + 0x48) = 2.38221e-44;
+        pCVar5[0x4c] = (CExpressionValue)0x1;
+        *pCVar5 = (CExpressionValue)(fVar3 <= *(float *)pCVar5 && *(float *)pCVar5 != fVar2);
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar5 = 0x7a0;
-      this = (CExpressionValueStack *)(ulonglong)(uint)fVar2;
+      uVar8 = 0x7b0;
     }
     else {
-      uVar5 = 0x78c;
-      this = (CExpressionValueStack *)(ulonglong)(uint)fVar2;
+      uVar8 = 0x79c;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar8,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Vector3Transform

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.27|
|i_ratio|0.15|
|m_ratio|0.75|
|b_ratio|0.72|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Vector3Transform|Vector3Transform|
|fullname|CExpressionValueStack::Vector3Transform|CExpressionValueStack::Vector3Transform|
|refcount|2|2|
|`length`|332|488|
|`called`|D3DXVec3Transform<br>D3DXVec3Transform<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXVec3Transform<br>D3DXVec3Transform<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|18025972c|18025dae4|
|sig|long __thiscall Vector3Transform(CExpressionValueStack * this)|long __thiscall Vector3Transform(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Vector3Transform Called Diff


```diff
--- CExpressionValueStack::Vector3Transform called
+++ CExpressionValueStack::Vector3Transform called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -2,0 +6 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Vector3Transform Calling Diff


```diff
--- CExpressionValueStack::Vector3Transform calling
+++ CExpressionValueStack::Vector3Transform calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Vector3Transform Diff


```diff
--- CExpressionValueStack::Vector3Transform
+++ CExpressionValueStack::Vector3Transform
@@ -1,84 +1,106 @@
 
 /* public: long __cdecl CExpressionValueStack::Vector3Transform(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Vector3Transform(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
-  ulonglong uVar2;
-  ulonglong uVar3;
-  CExpressionValueStack *pCVar4;
-  longlong lVar5;
-  longlong lVar6;
-  uint uVar7;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  uint uVar6;
+  undefined8 local_98;
+  undefined4 local_90;
+  undefined8 local_88;
+  undefined4 local_80;
   undefined8 local_78;
-  undefined4 local_70;
+  undefined8 uStack_70;
   undefined8 local_68;
-  undefined4 local_60;
+  undefined8 uStack_60;
   undefined8 local_58;
   undefined8 uStack_50;
   undefined8 local_48;
   undefined8 uStack_40;
   undefined8 local_38;
   undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
   
-  uVar7 = *(uint *)(this + 0x10);
-  pCVar4 = this;
-  if (uVar7 < 2) {
-    uVar7 = 0x1d6c;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar6 = 0x1d7c;
+    pCVar4 = (CExpressionValue *)this;
   }
   else {
-    lVar5 = *(longlong *)(this + 0x18);
-    uVar2 = (ulonglong)(uVar7 - 2);
-    uVar3 = (ulonglong)(uVar7 - 1);
-    lVar6 = uVar2 * 10;
-    if (*(int *)(lVar5 + 0x48 + uVar2 * 0x50) == 0x34) {
-      uVar7 = *(uint *)(lVar5 + 0x48 + uVar3 * 0x50);
-      pCVar4 = (CExpressionValueStack *)(ulonglong)uVar7;
-      if ((uVar7 == 0x47) || (uVar7 == 0x109)) {
-        local_78 = *(undefined8 *)(lVar5 + uVar2 * 0x50);
-        local_70 = *(undefined4 *)(lVar5 + 8 + uVar2 * 0x50);
-        if (uVar7 == 0x109) {
-          puVar1 = (undefined8 *)(lVar5 + uVar3 * 0x50);
-          local_48 = *puVar1;
-          uStack_40 = puVar1[1];
-          puVar1 = (undefined8 *)(lVar5 + 0x10 + uVar3 * 0x50);
-          local_38 = *puVar1;
-          uStack_30 = puVar1[1];
-          puVar1 = (undefined8 *)(lVar5 + 0x20 + uVar3 * 0x50);
-          local_28 = *puVar1;
-          uStack_20 = puVar1[1];
-          puVar1 = (undefined8 *)(lVar5 + 0x30 + uVar3 * 0x50);
-          local_18 = *puVar1;
-          uStack_10 = puVar1[1];
-          D3DXVec3Transform((D2DVector3 *)&local_68,(D2DVector3 *)&local_78,(D2DMatrix *)&local_48);
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar4 = (CExpressionValue *)(this + 0x18);
+    pCVar5 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_68)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_68);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar4,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_68)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      pCVar4 = (CExpressionValue *)&local_68;
+      CExpressionValue::~CExpressionValue(pCVar4);
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar4,*(uint *)pCVar1 - 1);
+    }
+    if (*(int *)(pCVar3 + 0x48) == 0x34) {
+      uVar6 = *(uint *)(pCVar5 + 0x48);
+      pCVar4 = (CExpressionValue *)(ulonglong)uVar6;
+      if ((uVar6 == 0x47) || (uVar6 == 0x109)) {
+        local_98 = *(undefined8 *)pCVar3;
+        local_90 = *(undefined4 *)(pCVar3 + 8);
+        if (uVar6 == 0x109) {
+          local_68 = *(undefined8 *)pCVar5;
+          uStack_60 = *(undefined8 *)(pCVar5 + 8);
+          local_58 = *(undefined8 *)(pCVar5 + 0x10);
+          uStack_50 = *(undefined8 *)(pCVar5 + 0x18);
+          local_48 = *(undefined8 *)(pCVar5 + 0x20);
+          uStack_40 = *(undefined8 *)(pCVar5 + 0x28);
+          local_38 = *(undefined8 *)(pCVar5 + 0x30);
+          uStack_30 = *(undefined8 *)(pCVar5 + 0x38);
+          D3DXVec3Transform((D2DVector3 *)&local_88,(D2DVector3 *)&local_98,(D2DMatrix *)&local_68);
         }
-        else if (uVar7 == 0x47) {
-          puVar1 = (undefined8 *)(lVar5 + uVar3 * 0x50);
-          local_58 = *puVar1;
-          uStack_50 = puVar1[1];
-          D3DXVec3Transform((D2DVector3 *)&local_68,(D2DVector3 *)&local_78,
-                            (D2DQuaternion *)&local_58);
+        else if (uVar6 == 0x47) {
+          local_78 = *(undefined8 *)pCVar5;
+          uStack_70 = *(undefined8 *)(pCVar5 + 8);
+          D3DXVec3Transform((D2DVector3 *)&local_88,(D2DVector3 *)&local_98,
+                            (D2DQuaternion *)&local_78);
         }
-        *(undefined4 *)(lVar5 + 0x48 + lVar6 * 8) = 0x34;
-        *(undefined8 *)(lVar5 + lVar6 * 8) = local_68;
-        *(undefined4 *)(lVar5 + 8 + lVar6 * 8) = local_60;
-        *(undefined1 *)(lVar5 + 0x4c + lVar6 * 8) = 1;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+        *(undefined4 *)(pCVar3 + 0x48) = 0x34;
+        *(undefined8 *)pCVar3 = local_88;
+        *(undefined4 *)(pCVar3 + 8) = local_80;
+        pCVar3[0x4c] = (CExpressionValue)0x1;
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar7 = 0x1d7a;
+      uVar6 = 0x1d8a;
     }
     else {
-      uVar7 = 0x1d72;
+      uVar6 = 0x1d82;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pCVar4,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
+            ((ulong)pCVar4,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Vector2TransformNormal

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.26|
|i_ratio|0.16|
|m_ratio|0.73|
|b_ratio|0.66|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Vector2TransformNormal|Vector2TransformNormal|
|fullname|CExpressionValueStack::Vector2TransformNormal|CExpressionValueStack::Vector2TransformNormal|
|refcount|2|2|
|`length`|331|514|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1802593d0|18025d55c|
|sig|long __thiscall Vector2TransformNormal(CExpressionValueStack * this)|long __thiscall Vector2TransformNormal(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Vector2TransformNormal Called Diff


```diff
--- CExpressionValueStack::Vector2TransformNormal called
+++ CExpressionValueStack::Vector2TransformNormal called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Vector2TransformNormal Calling Diff


```diff
--- CExpressionValueStack::Vector2TransformNormal calling
+++ CExpressionValueStack::Vector2TransformNormal calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Vector2TransformNormal Diff


```diff
--- CExpressionValueStack::Vector2TransformNormal
+++ CExpressionValueStack::Vector2TransformNormal
@@ -1,73 +1,92 @@
 
 /* public: long __cdecl CExpressionValueStack::Vector2TransformNormal(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Vector2TransformNormal(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  float *pfVar2;
+  CExpressionValueStack *pCVar1;
+  float fVar2;
   float fVar3;
-  int iVar4;
-  longlong lVar5;
-  ulonglong uVar6;
-  ulonglong uVar7;
-  CExpressionValueStack *pCVar8;
-  float fVar9;
+  float fVar4;
+  float fVar5;
+  bool bVar6;
+  CExpressionValue *pCVar7;
+  CExpressionValue *pCVar8;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar9;
   float fVar10;
-  float fVar11;
-  float fVar12;
   float local_res8;
-  uint uVar13;
+  uint uVar11;
+  CExpressionValue local_78 [96];
   
-  uVar13 = *(uint *)(this + 0x10);
-  pCVar8 = this;
-  if (uVar13 < 2) {
-    uVar13 = 0x1cc2;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar11 = 0x1cd2;
 LAB_0:
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)pCVar8,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar13,(void *)0x0
-              );
+              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar11,(void *)0x0);
     return -0x7fffbffb;
   }
-  lVar5 = *(longlong *)(this + 0x18);
-  uVar6 = (ulonglong)(uVar13 - 2);
-  uVar7 = (ulonglong)(uVar13 - 1);
-  if (*(int *)(lVar5 + 0x48 + uVar6 * 0x50) != 0x23) {
-    uVar13 = 0x1cc8;
+  bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+  pCVar9 = &s_emptyValue;
+  if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+    pCVar7 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+    CExpressionValue::operator=(&s_emptyValue,pCVar7);
+    CExpressionValue::~CExpressionValue(local_78);
+    pCVar7 = &s_emptyValue;
+  }
+  else {
+    pCVar7 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+  }
+  bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+    pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+    CExpressionValue::operator=(&s_emptyValue,pCVar8);
+    this = (CExpressionValueStack *)local_78;
+    CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+  }
+  else {
+    pCVar9 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    this = (CExpressionValueStack *)this_00;
+  }
+  if (*(float *)(pCVar7 + 0x48) != 4.90454e-44) {
+    uVar11 = 0x1cd8;
     goto LAB_0;
   }
-  iVar4 = *(int *)(lVar5 + 0x48 + uVar7 * 0x50);
-  pCVar8 = (CExpressionValueStack *)0x109;
-  if ((iVar4 != 0x68) && (iVar4 != 0x109)) {
-    uVar13 = 0x1cd0;
+  fVar4 = *(float *)(pCVar9 + 0x48);
+  this = (CExpressionValueStack *)0x109;
+  if ((fVar4 != 1.45735e-43) && (fVar4 != 3.71344e-43)) {
+    uVar11 = 0x1ce0;
     goto LAB_0;
   }
-  fVar3 = *(float *)(lVar5 + uVar6 * 0x50);
-  if (iVar4 == 0x68) {
-    pfVar1 = (float *)(lVar5 + uVar7 * 0x50);
-    fVar10 = pfVar1[1];
-    fVar12 = pfVar1[3];
-    fVar9 = fVar3 * *pfVar1;
-    fVar11 = *(float *)(lVar5 + 4 + uVar6 * 0x50) * pfVar1[2];
+  fVar2 = *(float *)pCVar7;
+  fVar3 = *(float *)(pCVar7 + 4);
+  if (fVar4 == 1.45735e-43) {
+    fVar4 = *(float *)(pCVar9 + 4);
+    fVar5 = *(float *)(pCVar9 + 0xc);
+    fVar10 = fVar3 * *(float *)(pCVar9 + 8) + fVar2 * *(float *)pCVar9;
   }
   else {
-    fVar12 = local_res8;
-    if (iVar4 != 0x109) goto LAB_1;
-    pfVar1 = (float *)(lVar5 + uVar7 * 0x50);
-    fVar10 = pfVar1[1];
-    pfVar2 = (float *)(lVar5 + 0x10 + uVar7 * 0x50);
-    fVar12 = pfVar2[1];
-    fVar11 = *pfVar1 * fVar3;
-    fVar9 = *pfVar2 * *(float *)(lVar5 + 4 + uVar6 * 0x50);
+    fVar10 = local_res8;
+    if (fVar4 != 3.71344e-43) goto LAB_1;
+    fVar4 = *(float *)(pCVar9 + 4);
+    fVar5 = *(float *)(pCVar9 + 0x14);
+    fVar10 = fVar3 * *(float *)(pCVar9 + 0x10) + fVar2 * *(float *)pCVar9;
   }
-  local_res8 = fVar10 * fVar3 + fVar12 * *(float *)(lVar5 + 4 + uVar6 * 0x50);
-  fVar12 = fVar11 + fVar9;
+  local_res8 = fVar3 * fVar5 + fVar2 * fVar4;
 LAB_1:
-  *(undefined4 *)(lVar5 + 0x48 + uVar6 * 0x50) = 0x23;
-  *(float *)(lVar5 + uVar6 * 0x50) = fVar12;
-  *(float *)(lVar5 + 4 + uVar6 * 0x50) = local_res8;
-  *(undefined1 *)(lVar5 + 0x4c + uVar6 * 0x50) = 1;
-  *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+  *(float *)(pCVar7 + 0x48) = 4.90454e-44;
+  *(float *)pCVar7 = fVar10;
+  *(float *)(pCVar7 + 4) = local_res8;
+  pCVar7[0x4c] = (CExpressionValue)0x1;
+  *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
   return 0;
 }
 

```


## CExpressionValueStack::Square

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.38|
|i_ratio|0.14|
|m_ratio|0.8|
|b_ratio|0.39|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Square|Square|
|fullname|CExpressionValueStack::Square|CExpressionValueStack::Square|
|`refcount`|3|2|
|`length`|138|208|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|18001c748|18001d954|
|sig|long __thiscall Square(CExpressionValueStack * this)|long __thiscall Square(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Square Called Diff


```diff
--- CExpressionValueStack::Square called
+++ CExpressionValueStack::Square called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Square Diff


```diff
--- CExpressionValueStack::Square
+++ CExpressionValueStack::Square
@@ -1,27 +1,47 @@
 
 /* public: long __cdecl CExpressionValueStack::Square(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Square(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  uint uVar2;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  uint uVar5;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar2 = 0x12d2;
+    uVar5 = 0x12e2;
   }
   else {
-    pfVar1 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar1[0x12] == 2.52234e-44) {
-      pfVar1[0x12] = 2.52234e-44;
-      *(undefined1 *)(pfVar1 + 0x13) = 1;
-      *pfVar1 = *pfVar1 * *pfVar1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+      *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+      pCVar4[0x4c] = (CExpressionValue)0x1;
+      *(float *)pCVar4 = *(float *)pCVar4 * *(float *)pCVar4;
       return 0;
     }
-    uVar2 = 0x12ed;
+    uVar5 = 0x12fd;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar2,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::ColorHsl

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.21|
|i_ratio|0.23|
|m_ratio|0.71|
|b_ratio|0.63|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|ColorHsl|ColorHsl|
|fullname|CExpressionValueStack::ColorHsl|CExpressionValueStack::ColorHsl|
|refcount|2|2|
|`length`|344|591|
|`called`|ColorSpaceHelpers::Color_RGBAfromHSLA<br>MilInstrumentationCheckHR_MaybeFailFast<br>fmodf|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>ColorSpaceHelpers::Color_RGBAfromHSLA<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>fmodf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180254dc0|180256cfc|
|sig|long __thiscall ColorHsl(CExpressionValueStack * this)|long __thiscall ColorHsl(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::ColorHsl Called Diff


```diff
--- CExpressionValueStack::ColorHsl called
+++ CExpressionValueStack::ColorHsl called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::ColorHsl Calling Diff


```diff
--- CExpressionValueStack::ColorHsl calling
+++ CExpressionValueStack::ColorHsl calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::ColorHsl Diff


```diff
--- CExpressionValueStack::ColorHsl
+++ CExpressionValueStack::ColorHsl
@@ -1,58 +1,103 @@
 
 /* public: long __cdecl CExpressionValueStack::ColorHsl(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::ColorHsl(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  float *pfVar2;
-  float *pfVar3;
-  float fVar4;
-  float fVar5;
-  float fVar6;
-  uint uVar7;
-  undefined8 local_38;
-  undefined8 uStack_30;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar6;
+  float fVar7;
+  float fVar8;
+  float fVar9;
+  uint uVar10;
+  undefined8 local_98;
+  undefined8 uStack_90;
+  CExpressionValue local_88 [112];
   
-  uVar7 = *(uint *)(this + 0x10);
-  if (uVar7 < 3) {
-    uVar7 = 0x14fd;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 3) {
+    uVar10 = 0x150d;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    pfVar2 = (float *)((ulonglong)(uVar7 - 3) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar3 = (float *)((ulonglong)(uVar7 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar1 = (float *)((ulonglong)(uVar7 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (((pfVar2[0x12] == 2.52234e-44) && (pfVar3[0x12] == 2.52234e-44)) &&
-       (pfVar1[0x12] == 2.52234e-44)) {
-      fVar6 = *pfVar1;
-      fVar5 = *pfVar3;
-      if (1.0 <= fVar6) {
-        fVar6 = 1.0;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_88);
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_88);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 3);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_88);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_88);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_88);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      this_00 = (DynArray<CExpressionValue,1> *)local_88;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if (((*(float *)(pCVar3 + 0x48) == 2.52234e-44) && (*(float *)(pCVar4 + 0x48) == 2.52234e-44))
+       && (*(float *)(pCVar6 + 0x48) == 2.52234e-44)) {
+      fVar9 = *(float *)pCVar6;
+      fVar8 = *(float *)pCVar4;
+      if (1.0 <= fVar9) {
+        fVar9 = 1.0;
       }
-      if (1.0 <= fVar5) {
-        fVar5 = 1.0;
+      if (1.0 <= fVar8) {
+        fVar8 = 1.0;
       }
-      if (fVar6 <= 0.0) {
-        fVar6 = 0.0;
+      if (fVar9 <= 0.0) {
+        fVar9 = 0.0;
       }
-      if (fVar5 <= 0.0) {
-        fVar5 = 0.0;
+      if (fVar8 <= 0.0) {
+        fVar8 = 0.0;
       }
-      fVar4 = fmodf(*pfVar2,6.2831855);
+      fVar7 = fmodf(*(float *)pCVar3,6.2831855);
       ColorSpaceHelpers::Color_RGBAfromHSLA
-                (fVar4,fVar5,fVar6,1.0,(float *)&local_38,(float *)((longlong)&local_38 + 4),
-                 (float *)&uStack_30,(float *)((longlong)&uStack_30 + 4));
-      pfVar2[0x12] = 9.80909e-44;
-      *(undefined1 *)(pfVar2 + 0x13) = 1;
-      *(undefined8 *)pfVar2 = local_38;
-      *(undefined8 *)(pfVar2 + 2) = uStack_30;
-      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -2;
+                (fVar7,fVar8,fVar9,1.0,(float *)&local_98,(float *)((longlong)&local_98 + 4),
+                 (float *)&uStack_90,(float *)((longlong)&uStack_90 + 4));
+      *(float *)(pCVar3 + 0x48) = 9.80909e-44;
+      pCVar3[0x4c] = (CExpressionValue)0x1;
+      *(undefined8 *)pCVar3 = local_98;
+      *(undefined8 *)(pCVar3 + 8) = uStack_90;
+      *(uint *)pCVar1 = *(uint *)pCVar1 - 2;
       return 0;
     }
-    uVar7 = 0x150d;
+    uVar10 = 0x151d;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar10,(void *)0x0)
+  ;
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Ln

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.36|
|i_ratio|0.36|
|m_ratio|0.82|
|b_ratio|0.77|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Ln|Ln|
|fullname|CExpressionValueStack::Ln|CExpressionValueStack::Ln|
|refcount|2|2|
|`length`|179|260|
|`called`|API-MS-WIN-CRT-MATH-L1-1-0.DLL::_isnan<br>MilInstrumentationCheckHR_MaybeFailFast<br>logf|API-MS-WIN-CRT-MATH-L1-1-0.DLL::_isnan<br>CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>logf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1802563d4|1802589d8|
|sig|long __thiscall Ln(CExpressionValueStack * this)|long __thiscall Ln(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Ln Called Diff


```diff
--- CExpressionValueStack::Ln called
+++ CExpressionValueStack::Ln called
@@ -1,0 +2,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Ln Calling Diff


```diff
--- CExpressionValueStack::Ln calling
+++ CExpressionValueStack::Ln calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Ln Diff


```diff
--- CExpressionValueStack::Ln
+++ CExpressionValueStack::Ln
@@ -1,38 +1,56 @@
 
 /* public: long __cdecl CExpressionValueStack::Ln(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Ln(CExpressionValueStack *this)
 
 {
-  int iVar1;
-  ulong uVar2;
-  float *pfVar3;
-  float fVar4;
-  uint uVar5;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  int iVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  float fVar6;
+  uint uVar7;
+  CExpressionValue local_68 [96];
   
-  uVar2 = (ulong)this;
   if (*(int *)(this + 0x10) == 0) {
-    uVar5 = 0x134c;
+    uVar7 = 0x135c;
   }
   else {
-    pfVar3 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar3[0x12] == 2.52234e-44) {
-      fVar4 = logf(*pfVar3);
-      iVar1 = _isnan((double)fVar4);
-      if (iVar1 == 0) {
-        *pfVar3 = fVar4;
-        pfVar3[0x12] = 2.52234e-44;
-        *(undefined1 *)(pfVar3 + 0x13) = 1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      pCVar5 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this = (CExpressionValueStack *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar5 + 0x48) == 2.52234e-44) {
+      fVar6 = logf(*(float *)pCVar5);
+      iVar3 = _isnan((double)fVar6);
+      if (iVar3 == 0) {
+        *(float *)pCVar5 = fVar6;
+        *(float *)(pCVar5 + 0x48) = 2.52234e-44;
+        pCVar5[0x4c] = (CExpressionValue)0x1;
         return 0;
       }
-      uVar5 = 0x1366;
+      uVar7 = 0x1376;
     }
     else {
-      uVar5 = 0x1375;
+      uVar7 = 0x1385;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            (uVar2,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::ToRadians

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.38|
|i_ratio|0.17|
|m_ratio|0.78|
|b_ratio|0.68|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|ToRadians|ToRadians|
|fullname|CExpressionValueStack::ToRadians|CExpressionValueStack::ToRadians|
|refcount|2|2|
|`length`|130|212|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180258f54|18025ce8c|
|sig|long __thiscall ToRadians(CExpressionValueStack * this)|long __thiscall ToRadians(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::ToRadians Called Diff


```diff
--- CExpressionValueStack::ToRadians called
+++ CExpressionValueStack::ToRadians called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::ToRadians Calling Diff


```diff
--- CExpressionValueStack::ToRadians calling
+++ CExpressionValueStack::ToRadians calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::ToRadians Diff


```diff
--- CExpressionValueStack::ToRadians
+++ CExpressionValueStack::ToRadians
@@ -1,27 +1,47 @@
 
 /* public: long __cdecl CExpressionValueStack::ToRadians(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::ToRadians(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  uint uVar2;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  uint uVar5;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar2 = 0x13c4;
+    uVar5 = 0x13d4;
   }
   else {
-    pfVar1 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar1[0x12] == 2.52234e-44) {
-      pfVar1[0x12] = 2.52234e-44;
-      *(undefined1 *)(pfVar1 + 0x13) = 1;
-      *pfVar1 = *pfVar1 * 0.017453292;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+      *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+      pCVar4[0x4c] = (CExpressionValue)0x1;
+      *(float *)pCVar4 = *(float *)pCVar4 * 0.017453292;
       return 0;
     }
-    uVar2 = 0x13df;
+    uVar5 = 0x13ef;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar2,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Max

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.24|
|i_ratio|0.21|
|m_ratio|0.8|
|b_ratio|0.77|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Max|Max|
|fullname|CExpressionValueStack::Max|CExpressionValueStack::Max|
|refcount|2|2|
|`length`|488|624|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180257840|18025ad10|
|sig|long __thiscall Max(CExpressionValueStack * this)|long __thiscall Max(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Max Called Diff


```diff
--- CExpressionValueStack::Max called
+++ CExpressionValueStack::Max called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Max Calling Diff


```diff
--- CExpressionValueStack::Max calling
+++ CExpressionValueStack::Max calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Max Diff


```diff
--- CExpressionValueStack::Max
+++ CExpressionValueStack::Max
@@ -1,126 +1,143 @@
 
 /* public: long __cdecl CExpressionValueStack::Max(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Max(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  undefined8 *puVar2;
-  undefined8 uVar3;
-  undefined8 uVar4;
-  int iVar5;
-  longlong lVar6;
+  CExpressionValueStack *pCVar1;
+  float fVar2;
+  bool bVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
   float fVar7;
-  ulonglong uVar8;
-  ulonglong uVar9;
+  float fVar8;
+  float fVar9;
   float fVar10;
-  float fVar11;
-  float fVar12;
-  float fVar13;
-  uint uVar14;
-  float local_28;
-  float fStack_24;
-  undefined8 local_18;
+  uint uVar11;
+  float local_88;
+  float fStack_84;
+  undefined8 local_78;
+  CExpressionValue local_68 [80];
   
-  uVar14 = *(uint *)(this + 0x10);
-  if (uVar14 < 2) {
-    uVar14 = 0x96b;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar11 = 0x97b;
+    pCVar5 = (CExpressionValue *)this;
   }
   else {
-    lVar6 = *(longlong *)(this + 0x18);
-    uVar8 = (ulonglong)(uVar14 - 2);
-    uVar9 = (ulonglong)(uVar14 - 1);
-    iVar5 = *(int *)(lVar6 + 0x48 + uVar8 * 0x50);
-    if (iVar5 == *(int *)(lVar6 + 0x48 + uVar9 * 0x50)) {
-      if (iVar5 == 0x12) {
-        fVar12 = *(float *)(lVar6 + uVar9 * 0x50);
-        fVar11 = *(float *)(lVar6 + uVar8 * 0x50);
-        if (fVar11 <= fVar12) {
-          fVar11 = fVar12;
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar5 = (CExpressionValue *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 2);
+    }
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      pCVar5 = local_68;
+      CExpressionValue::~CExpressionValue(pCVar5);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 1);
+    }
+    fVar9 = *(float *)(pCVar4 + 0x48);
+    if (fVar9 == *(float *)(pCVar6 + 0x48)) {
+      if (fVar9 == 2.52234e-44) {
+        fVar9 = *(float *)pCVar4;
+        if (*(float *)pCVar4 <= *(float *)pCVar6) {
+          fVar9 = *(float *)pCVar6;
         }
-        *(undefined4 *)(lVar6 + 0x48 + uVar8 * 0x50) = 0x12;
-        *(float *)(lVar6 + uVar8 * 0x50) = fVar11;
+        *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+        *(float *)pCVar4 = fVar9;
       }
-      else if (iVar5 == 0x23) {
-        fVar12 = *(float *)(lVar6 + uVar8 * 0x50);
-        fVar11 = *(float *)(lVar6 + uVar9 * 0x50);
-        if (fVar12 <= fVar11) {
-          fVar12 = fVar11;
+      else if (fVar9 == 4.90454e-44) {
+        fVar9 = *(float *)pCVar4;
+        if (*(float *)pCVar4 <= *(float *)pCVar6) {
+          fVar9 = *(float *)pCVar6;
         }
-        fVar11 = *(float *)(lVar6 + 4 + uVar8 * 0x50);
-        fVar13 = *(float *)(lVar6 + 4 + uVar9 * 0x50);
-        if (fVar11 <= fVar13) {
-          fVar11 = fVar13;
+        fVar8 = *(float *)(pCVar4 + 4);
+        if (*(float *)(pCVar4 + 4) <= *(float *)(pCVar6 + 4)) {
+          fVar8 = *(float *)(pCVar6 + 4);
         }
-        *(undefined4 *)(lVar6 + 0x48 + uVar8 * 0x50) = 0x23;
-        *(float *)(lVar6 + uVar8 * 0x50) = fVar12;
-        *(float *)(lVar6 + 4 + uVar8 * 0x50) = fVar11;
+        *(float *)(pCVar4 + 0x48) = 4.90454e-44;
+        *(float *)pCVar4 = fVar9;
+        *(float *)(pCVar4 + 4) = fVar8;
       }
-      else if (iVar5 == 0x34) {
-        uVar3 = *(undefined8 *)(lVar6 + uVar8 * 0x50);
-        fVar12 = *(float *)(lVar6 + 8 + uVar8 * 0x50);
-        uVar4 = *(undefined8 *)(lVar6 + uVar9 * 0x50);
-        fStack_24 = (float)((ulonglong)uVar3 >> 0x20);
-        local_28 = (float)uVar3;
-        local_18._0_4_ = (float)uVar4;
-        if (local_28 <= (float)local_18) {
-          local_28 = (float)local_18;
+      else if (fVar9 == 7.28675e-44) {
+        fStack_84 = (float)((ulonglong)*(undefined8 *)pCVar4 >> 0x20);
+        local_88 = (float)*(undefined8 *)pCVar4;
+        local_78._0_4_ = (float)*(undefined8 *)pCVar6;
+        if (local_88 <= (float)local_78) {
+          local_88 = (float)local_78;
         }
-        local_18._4_4_ = (float)((ulonglong)uVar4 >> 0x20);
-        if (fStack_24 <= local_18._4_4_) {
-          fStack_24 = local_18._4_4_;
+        local_78._4_4_ = (float)((ulonglong)*(undefined8 *)pCVar6 >> 0x20);
+        if (fStack_84 <= local_78._4_4_) {
+          fStack_84 = local_78._4_4_;
         }
-        fVar11 = *(float *)(lVar6 + 8 + uVar9 * 0x50);
-        if (fVar12 <= fVar11) {
-          fVar12 = fVar11;
+        fVar9 = *(float *)(pCVar4 + 8);
+        if (*(float *)(pCVar4 + 8) <= *(float *)(pCVar6 + 8)) {
+          fVar9 = *(float *)(pCVar6 + 8);
         }
-        *(undefined4 *)(lVar6 + 0x48 + uVar8 * 0x50) = 0x34;
-        *(float *)(lVar6 + uVar8 * 0x50) = local_28;
-        *(float *)(lVar6 + 4 + uVar8 * 0x50) = fStack_24;
-        *(float *)(lVar6 + 8 + uVar8 * 0x50) = fVar12;
+        *(float *)(pCVar4 + 0x48) = 7.28675e-44;
+        *(float *)pCVar4 = local_88;
+        *(float *)(pCVar4 + 4) = fStack_84;
+        *(float *)(pCVar4 + 8) = fVar9;
       }
       else {
-        if (iVar5 != 0x45) {
-          uVar14 = 0x9ba;
+        if (fVar9 != 9.66896e-44) {
+          uVar11 = 0x9ca;
           goto LAB_0;
         }
-        pfVar1 = (float *)(lVar6 + uVar9 * 0x50);
-        fVar12 = *pfVar1;
-        fVar11 = pfVar1[1];
-        fVar13 = pfVar1[2];
-        fVar7 = pfVar1[3];
-        *(undefined4 *)(lVar6 + 0x48 + uVar8 * 0x50) = 0x45;
-        pfVar1 = (float *)(lVar6 + uVar8 * 0x50);
-        fVar10 = *pfVar1;
-        if (*pfVar1 <= fVar12) {
-          fVar10 = fVar12;
+        fVar9 = *(float *)pCVar6;
+        fVar8 = *(float *)(pCVar6 + 4);
+        fVar10 = *(float *)(pCVar6 + 8);
+        fVar2 = *(float *)(pCVar6 + 0xc);
+        *(float *)(pCVar4 + 0x48) = 9.66896e-44;
+        fVar7 = *(float *)pCVar4;
+        if (*(float *)pCVar4 <= fVar9) {
+          fVar7 = fVar9;
         }
-        fVar12 = pfVar1[1];
-        if (pfVar1[1] <= fVar11) {
-          fVar12 = fVar11;
+        fVar9 = *(float *)(pCVar4 + 4);
+        if (*(float *)(pCVar4 + 4) <= fVar8) {
+          fVar9 = fVar8;
         }
-        fVar11 = pfVar1[2];
-        if (pfVar1[2] <= fVar13) {
-          fVar11 = fVar13;
+        fVar8 = *(float *)(pCVar4 + 8);
+        if (*(float *)(pCVar4 + 8) <= fVar10) {
+          fVar8 = fVar10;
         }
-        fVar13 = pfVar1[3];
-        if (pfVar1[3] <= fVar7) {
-          fVar13 = fVar7;
+        fVar10 = *(float *)(pCVar4 + 0xc);
+        if (*(float *)(pCVar4 + 0xc) <= fVar2) {
+          fVar10 = fVar2;
         }
-        local_18 = CONCAT44(fVar12,fVar10);
-        puVar2 = (undefined8 *)(lVar6 + uVar8 * 0x50);
-        *puVar2 = local_18;
-        puVar2[1] = CONCAT44(fVar13,fVar11);
+        local_78 = CONCAT44(fVar9,fVar7);
+        *(undefined8 *)pCVar4 = local_78;
+        *(ulonglong *)(pCVar4 + 8) = CONCAT44(fVar10,fVar8);
       }
-      *(undefined1 *)(lVar6 + 0x4c + uVar8 * 0x50) = 1;
-      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+      pCVar4[0x4c] = (CExpressionValue)0x1;
+      *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
       return 0;
     }
-    uVar14 = 0x982;
+    uVar11 = 0x992;
   }
 LAB_0:
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar14,(void *)0x0);
+            ((ulong)pCVar5,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar11,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CPrimitiveGroup::GenerateDrawList

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.35|
|i_ratio|0.51|
|m_ratio|0.85|
|b_ratio|0.6|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|GenerateDrawList|GenerateDrawList|
|fullname|CPrimitiveGroup::GenerateDrawList|CPrimitiveGroup::GenerateDrawList|
|`refcount`|4|3|
|`length`|156|205|
|`called`|CPrimitiveGroup::EnsureDrawListGenerator<br>CPrimitiveGroupDrawListGenerator::GenerateDrawList<br>MilInstrumentationCheckHR_MaybeFailFast|CPrimitiveGroup::ClearPrimitiveContent<br>CPrimitiveGroup::EnsureDrawListGenerator<br>CPrimitiveGroupDrawListGenerator::GenerateDrawList<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled|
|calling|||
|paramcount|4|4|
|`address`|18000f520|180010140|
|sig|long __thiscall GenerateDrawList(CPrimitiveGroup * this, CDrawingContext * param_1, D2D_SIZE_F * param_2, CDrawListCache * param_3)|long __thiscall GenerateDrawList(CPrimitiveGroup * this, CDrawingContext * param_1, D2D_SIZE_F * param_2, CDrawListCache * param_3)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CPrimitiveGroup::GenerateDrawList Called Diff


```diff
--- CPrimitiveGroup::GenerateDrawList called
+++ CPrimitiveGroup::GenerateDrawList called
@@ -0,0 +1 @@
+CPrimitiveGroup::ClearPrimitiveContent
@@ -3,0 +5 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled
```


### CPrimitiveGroup::GenerateDrawList Diff


```diff
--- CPrimitiveGroup::GenerateDrawList
+++ CPrimitiveGroup::GenerateDrawList
@@ -1,39 +1,54 @@
 
 /* public: virtual long __cdecl CPrimitiveGroup::GenerateDrawList(class CDrawingContext *
    __ptr64,struct D2D_SIZE_F const & __ptr64,class CDrawListCache * __ptr64) __ptr64 */
 
 long __thiscall
 CPrimitiveGroup::GenerateDrawList
           (CPrimitiveGroup *this,CDrawingContext *param_1,D2D_SIZE_F *param_2,
           CDrawListCache *param_3)
 
 {
-  long lVar1;
-  ulong uVar2;
-  CPrimitiveGroup *pCVar3;
-  uint uVar4;
+  bool bVar1;
+  long lVar2;
+  ulong uVar3;
+  CPrimitiveGroup *pCVar4;
   CPrimitiveGroupDrawListGenerator *this_00;
+  uint uVar5;
   
   if (*(longlong *)(this + 0x1d8) == 0) {
 LAB_0:
-    lVar1 = 0;
+    lVar2 = 0;
   }
   else {
-    pCVar3 = this;
-    lVar1 = EnsureDrawListGenerator(this);
-    uVar2 = (ulong)pCVar3;
-    if (lVar1 < 0) {
-      uVar4 = 0x7e;
+    bVar1 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_2986246461> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_2986246461>::GetImpl(void)'
+                        ::__l2::impl);
+    if (bVar1) {
+      lVar2 = EnsureDrawListGenerator(this);
+      if (lVar2 < 0) {
+        ClearPrimitiveContent(this);
+        uVar3 = (ulong)this;
+        uVar5 = 0x87;
+      }
+      else {
+LAB_1:
+        this_00 = *(CPrimitiveGroupDrawListGenerator **)(this + 0x80);
+        lVar2 = CPrimitiveGroupDrawListGenerator::GenerateDrawList(this_00,param_1,param_3);
+        uVar3 = (ulong)this_00;
+        if (-1 < lVar2) goto LAB_0;
+        uVar5 = 0x8f;
+      }
     }
     else {
-      this_00 = *(CPrimitiveGroupDrawListGenerator **)(this + 0x80);
-      lVar1 = CPrimitiveGroupDrawListGenerator::GenerateDrawList(this_00,param_1,param_3);
-      uVar2 = (ulong)this_00;
-      if (-1 < lVar1) goto LAB_0;
-      uVar4 = 0x7f;
+      pCVar4 = this;
+      lVar2 = EnsureDrawListGenerator(this);
+      uVar3 = (ulong)pCVar4;
+      if (-1 < lVar2) goto LAB_1;
+      uVar5 = 0x8c;
     }
-    MilInstrumentationCheckHR_MaybeFailFast(uVar2,(long *)0x0,0,lVar1,uVar4,(void *)0x0);
+    MilInstrumentationCheckHR_MaybeFailFast(uVar3,(long *)0x0,0,lVar2,uVar5,(void *)0x0);
   }
-  return lVar1;
+  return lVar2;
 }
 

```


## CCommandBuffer::Initialize

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.12|
|i_ratio|0.3|
|m_ratio|0.57|
|b_ratio|0.43|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Initialize|Initialize|
|fullname|CCommandBuffer::Initialize|CCommandBuffer::Initialize|
|`refcount`|3|2|
|`length`|247|617|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>_guard_xfg_dispatch_icall_nop<br>memcpy<br>operator_new[]|MilInstrumentationCheckHR_MaybeFailFast<br>SAFE_DELETE_ARRAY<D2D1_COMPOSITOR_DRAWING_STATE><br>_guard_xfg_dispatch_icall_nop<br>memcpy<br>operator_new[]<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled|
|calling|CPrimitiveGroupDrawListGenerator::Create|CPrimitiveGroupDrawListGenerator::Create|
|paramcount|2|2|
|`address`|1800106b8|180011454|
|sig|long __thiscall Initialize(CCommandBuffer * this, ID2D1PrivateCompositorBuffer * param_1)|long __thiscall Initialize(CCommandBuffer * this, ID2D1PrivateCompositorBuffer * param_1)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CCommandBuffer::Initialize Called Diff


```diff
--- CCommandBuffer::Initialize called
+++ CCommandBuffer::Initialize called
@@ -1,0 +2 @@
+SAFE_DELETE_ARRAY<D2D1_COMPOSITOR_DRAWING_STATE>
@@ -4,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled
```


### CCommandBuffer::Initialize Diff


```diff
--- CCommandBuffer::Initialize
+++ CCommandBuffer::Initialize
@@ -1,39 +1,105 @@
 
 /* WARNING: Function: _guard_xfg_dispatch_icall_nop replaced with injection: guard_dispatch_icall */
 /* public: long __cdecl CCommandBuffer::Initialize(struct ID2D1PrivateCompositorBuffer * __ptr64)
    __ptr64 */
 
 long __thiscall
 CCommandBuffer::Initialize(CCommandBuffer *this,ID2D1PrivateCompositorBuffer *param_1)
 
 {
   undefined1 auVar1 [16];
-  uint uVar2;
-  __uint64 _Var3;
-  void *pvVar4;
-  long lVar5;
+  undefined1 auVar2 [16];
+  bool bVar3;
+  __uint64 _Var4;
+  D2D1_COMPOSITOR_DRAWING_STATE *_Dst;
+  D2D1_COMPOSITOR_DRAWING_STATE *pDVar5;
+  void *pvVar6;
+  uint uVar7;
+  long lVar8;
+  D2D1_COMPOSITOR_DRAWING_STATE *local_res18 [2];
+  uint uVar9;
   
-  lVar5 = 0;
-  uVar2 = (**(code **)(*(longlong *)param_1 + 0x20))(param_1);
-  auVar1._8_8_ = 0;
-  auVar1._0_8_ = (ulonglong)uVar2 / 0x90;
-  *(int *)(this + 8) = (int)((ulonglong)uVar2 / 0x90);
-  _Var3 = SUB168(ZEXT816(0x90) * auVar1,0);
-  if (SUB168(ZEXT816(0x90) * auVar1,8) != 0) {
-    _Var3 = 0xffffffffffffffff;
-  }
-  pvVar4 = operator_new__(_Var3);
-  *(void **)this = pvVar4;
-  if (pvVar4 == (void *)0x0) {
-    lVar5 = -0x7ff8fff2;
-    MilInstrumentationCheckHR_MaybeFailFast((ulong)_Var3,(long *)0x0,0,-0x7ff8fff2,0x20,(void *)0x0)
-    ;
+  lVar8 = 0;
+  local_res18[0] = (D2D1_COMPOSITOR_DRAWING_STATE *)0x0;
+  bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_2986246461> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_2986246461>::GetImpl(void)'
+                      ::__l2::impl);
+  if (bVar3) {
+    uVar7 = (**(code **)(*(longlong *)param_1 + 0x20))(param_1);
+    if ((ulonglong)uVar7 == ((ulonglong)uVar7 / 0x90) * 0x90) {
+      uVar7 = (**(code **)(*(longlong *)param_1 + 0x20))(param_1);
+      uVar9 = (uint)((ulonglong)uVar7 / 0x90);
+      auVar1._8_8_ = 0;
+      auVar1._0_8_ = (ulonglong)uVar7 / 0x90;
+      _Var4 = SUB168(ZEXT816(0x90) * auVar1,0);
+      if (SUB168(ZEXT816(0x90) * auVar1,8) != 0) {
+        _Var4 = 0xffffffffffffffff;
+      }
+      _Dst = operator_new__(_Var4);
+      uVar7 = (uint)_Var4;
+      local_res18[0] = _Dst;
+      if (_Dst != (D2D1_COMPOSITOR_DRAWING_STATE *)0x0) {
+        uVar7 = (**(code **)(*(longlong *)param_1 + 0x20))(param_1);
+        pvVar6 = (void *)(**(code **)(*(longlong *)param_1 + 0x18))(param_1);
+        memcpy(_Dst,pvVar6,(ulonglong)uVar7);
+        uVar7 = 0;
+        pDVar5 = _Dst;
+        if (uVar9 != 0) {
+          do {
+            if ((3 < *(uint *)pDVar5) || (7 < *(uint *)(pDVar5 + 0xc))) {
+              uVar9 = 0x36;
+              goto LAB_0;
+            }
+            uVar7 = uVar7 + 1;
+            pDVar5 = pDVar5 + 0x90;
+          } while (uVar7 < uVar9);
+        }
+        local_res18[0] = (D2D1_COMPOSITOR_DRAWING_STATE *)0x0;
+        *(uint *)(this + 8) = uVar9;
+        lVar8 = 0;
+        *(D2D1_COMPOSITOR_DRAWING_STATE **)this = _Dst;
+        goto LAB_1;
+      }
+      lVar8 = -0x7ff8fff2;
+      uVar9 = 0x29;
+    }
+    else {
+      uVar9 = 0x24;
+LAB_0:
+      lVar8 = -0x7ff8ffa9;
+    }
   }
   else {
-    uVar2 = (**(code **)(*(longlong *)param_1 + 0x20))(param_1);
-    pvVar4 = (void *)(**(code **)(*(longlong *)param_1 + 0x18))(param_1);
-    memcpy(*(void **)this,pvVar4,(ulonglong)uVar2);
+    uVar7 = (**(code **)(*(longlong *)param_1 + 0x20))(param_1);
+    auVar2._8_8_ = 0;
+    auVar2._0_8_ = (ulonglong)uVar7 / 0x90;
+    _Var4 = SUB168(ZEXT816(0x90) * auVar2,0);
+    *(int *)(this + 8) = (int)((ulonglong)uVar7 / 0x90);
+    if (SUB168(ZEXT816(0x90) * auVar2,8) != 0) {
+      _Var4 = 0xffffffffffffffff;
+    }
+    pvVar6 = operator_new__(_Var4);
+    uVar7 = (uint)_Var4;
+    *(void **)this = pvVar6;
+    if (pvVar6 != (void *)0x0) {
+      uVar7 = (**(code **)(*(longlong *)param_1 + 0x20))(param_1);
+      pvVar6 = (void *)(**(code **)(*(longlong *)param_1 + 0x18))(param_1);
+      memcpy(*(void **)this,pvVar6,(ulonglong)uVar7);
+      goto LAB_1;
+    }
+    lVar8 = -0x7ff8fff2;
+    uVar9 = 0x45;
   }
-  return lVar5;
+  MilInstrumentationCheckHR_MaybeFailFast(uVar7,(long *)0x0,0,lVar8,uVar9,(void *)0x0);
+LAB_1:
+  bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_2986246461> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_2986246461>::GetImpl(void)'
+                      ::__l2::impl);
+  if (bVar3) {
+    SAFE_DELETE_ARRAY<D2D1_COMPOSITOR_DRAWING_STATE>(local_res18);
+  }
+  return lVar8;
 }
 

```


## CExpressionValueStack::Clamp

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.11|
|i_ratio|0.19|
|m_ratio|0.78|
|b_ratio|0.11|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Clamp|Clamp|
|fullname|CExpressionValueStack::Clamp|CExpressionValueStack::Clamp|
|`refcount`|3|2|
|`length`|626|815|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|18001e2b4|18001f5ec|
|sig|long __thiscall Clamp(CExpressionValueStack * this)|long __thiscall Clamp(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Clamp Called Diff


```diff
--- CExpressionValueStack::Clamp called
+++ CExpressionValueStack::Clamp called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Clamp Diff


```diff
--- CExpressionValueStack::Clamp
+++ CExpressionValueStack::Clamp
@@ -1,180 +1,205 @@
 
 /* public: long __cdecl CExpressionValueStack::Clamp(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Clamp(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  undefined8 *puVar2;
-  undefined8 uVar3;
-  undefined8 uVar4;
-  undefined8 uVar5;
-  int iVar6;
-  longlong lVar7;
-  float fVar8;
-  float fVar9;
-  float fVar10;
-  float fVar11;
+  CExpressionValueStack *pCVar1;
+  float fVar2;
+  float fVar3;
+  float fVar4;
+  float fVar5;
+  float fVar6;
+  bool bVar7;
+  CExpressionValue *pCVar8;
+  CExpressionValue *pCVar9;
+  CExpressionValue *pCVar10;
+  CExpressionValue *pCVar11;
   float fVar12;
-  ulonglong uVar13;
-  ulonglong uVar14;
-  ulonglong uVar15;
-  float fVar16;
-  float fVar17;
-  float fVar18;
-  float fVar19;
-  uint uVar20;
-  float local_48;
-  float fStack_44;
-  float local_38;
-  float fStack_34;
-  undefined8 local_28;
+  float fVar13;
+  float fVar14;
+  float fVar15;
+  uint uVar16;
+  undefined8 local_b8;
+  float local_a8;
+  float fStack_a4;
+  float local_98;
+  float fStack_94;
+  CExpressionValue local_88 [96];
   
-  uVar20 = *(uint *)(this + 0x10);
-  if (uVar20 < 3) {
-    uVar20 = 0x9dc;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 3) {
+    uVar16 = 0x9ec;
+    pCVar10 = (CExpressionValue *)this;
 LAB_0:
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar20,(void *)0x0);
+              ((ulong)pCVar10,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar16,
+               (void *)0x0);
     return -0x7fffbffb;
   }
-  lVar7 = *(longlong *)(this + 0x18);
-  uVar13 = (ulonglong)(uVar20 - 3);
-  uVar14 = (ulonglong)(uVar20 - 2);
-  uVar15 = (ulonglong)(uVar20 - 1);
-  iVar6 = *(int *)(lVar7 + 0x48 + uVar13 * 0x50);
-  if ((iVar6 != *(int *)(lVar7 + 0x48 + uVar14 * 0x50)) ||
-     (iVar6 != *(int *)(lVar7 + 0x48 + uVar15 * 0x50))) {
-    uVar20 = 0x9f5;
+  bVar7 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  pCVar10 = (CExpressionValue *)(this + 0x18);
+  pCVar11 = &s_emptyValue;
+  if ((bVar7) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+    pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_88);
+    CExpressionValue::operator=(&s_emptyValue,pCVar8);
+    CExpressionValue::~CExpressionValue(local_88);
+    pCVar8 = &s_emptyValue;
+  }
+  else {
+    pCVar8 = DynArray<CExpressionValue,1>::operator[]
+                       ((DynArray<CExpressionValue,1> *)pCVar10,*(uint *)pCVar1 - 3);
+  }
+  bVar7 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  if ((bVar7) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+    pCVar9 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_88);
+    CExpressionValue::operator=(&s_emptyValue,pCVar9);
+    CExpressionValue::~CExpressionValue(local_88);
+    pCVar9 = &s_emptyValue;
+  }
+  else {
+    pCVar9 = DynArray<CExpressionValue,1>::operator[]
+                       ((DynArray<CExpressionValue,1> *)pCVar10,*(uint *)pCVar1 - 2);
+  }
+  bVar7 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  if ((bVar7) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+    pCVar10 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_88);
+    CExpressionValue::operator=(&s_emptyValue,pCVar10);
+    pCVar10 = local_88;
+    CExpressionValue::~CExpressionValue(pCVar10);
+  }
+  else {
+    pCVar11 = DynArray<CExpressionValue,1>::operator[]
+                        ((DynArray<CExpressionValue,1> *)pCVar10,*(uint *)pCVar1 - 1);
+  }
+  fVar13 = *(float *)(pCVar8 + 0x48);
+  if ((fVar13 != *(float *)(pCVar9 + 0x48)) || (fVar13 != *(float *)(pCVar11 + 0x48))) {
+    uVar16 = 0xa05;
     goto LAB_0;
   }
-  if (iVar6 == 0x12) {
-    fVar17 = *(float *)(lVar7 + uVar15 * 0x50);
-    fVar18 = *(float *)(lVar7 + uVar13 * 0x50);
-    fVar19 = *(float *)(lVar7 + uVar14 * 0x50);
-    if (fVar18 <= fVar19) {
-      fVar18 = fVar19;
-    }
-    *(undefined4 *)(lVar7 + 0x48 + uVar13 * 0x50) = 0x12;
-    if (fVar17 <= fVar18) {
-      fVar18 = fVar17;
-    }
-  }
-  else {
-    if (iVar6 != 0x23) {
-      if (iVar6 == 0x34) {
-        uVar3 = *(undefined8 *)(lVar7 + uVar13 * 0x50);
-        fVar17 = *(float *)(lVar7 + 8 + uVar13 * 0x50);
-        uVar4 = *(undefined8 *)(lVar7 + uVar14 * 0x50);
-        fStack_44 = (float)((ulonglong)uVar3 >> 0x20);
-        uVar5 = *(undefined8 *)(lVar7 + uVar15 * 0x50);
-        fStack_34 = (float)((ulonglong)uVar4 >> 0x20);
-        if (fStack_44 <= fStack_34) {
-          fStack_44 = fStack_34;
-        }
-        local_48 = (float)uVar3;
-        local_38 = (float)uVar4;
-        if (local_48 <= local_38) {
-          local_48 = local_38;
-        }
-        fVar18 = *(float *)(lVar7 + 8 + uVar14 * 0x50);
-        local_28._4_4_ = (float)((ulonglong)uVar5 >> 0x20);
-        if (local_28._4_4_ <= fStack_44) {
-          fStack_44 = local_28._4_4_;
-        }
-        local_28._0_4_ = (float)uVar5;
-        if ((float)local_28 <= local_48) {
-          local_48 = (float)local_28;
-        }
-        fVar19 = *(float *)(lVar7 + 8 + uVar15 * 0x50);
-        if (fVar17 <= fVar18) {
-          fVar17 = fVar18;
-        }
-        *(undefined4 *)(lVar7 + 0x48 + uVar13 * 0x50) = 0x34;
-        if (fVar19 <= fVar17) {
-          fVar17 = fVar19;
-        }
-        *(float *)(lVar7 + uVar13 * 0x50) = local_48;
-        *(float *)(lVar7 + 4 + uVar13 * 0x50) = fStack_44;
-        *(float *)(lVar7 + 8 + uVar13 * 0x50) = fVar17;
+  if (fVar13 == 2.52234e-44) {
+    fVar13 = *(float *)pCVar11;
+    fVar14 = *(float *)pCVar8;
+    if (*(float *)pCVar8 <= *(float *)pCVar9) {
+      fVar14 = *(float *)pCVar9;
+    }
+    *(float *)(pCVar8 + 0x48) = 2.52234e-44;
+    if (fVar13 <= fVar14) {
+      fVar14 = fVar13;
+    }
+  }
+  else {
+    if (fVar13 != 4.90454e-44) {
+      if (fVar13 == 7.28675e-44) {
+        fStack_a4 = (float)((ulonglong)*(undefined8 *)pCVar8 >> 0x20);
+        fStack_94 = (float)((ulonglong)*(undefined8 *)pCVar9 >> 0x20);
+        if (fStack_a4 <= fStack_94) {
+          fStack_a4 = fStack_94;
+        }
+        local_a8 = (float)*(undefined8 *)pCVar8;
+        local_98 = (float)*(undefined8 *)pCVar9;
+        if (local_a8 <= local_98) {
+          local_a8 = local_98;
+        }
+        local_b8._4_4_ = (float)((ulonglong)*(undefined8 *)pCVar11 >> 0x20);
+        if (local_b8._4_4_ <= fStack_a4) {
+          fStack_a4 = local_b8._4_4_;
+        }
+        local_b8._0_4_ = (float)*(undefined8 *)pCVar11;
+        if ((float)local_b8 <= local_a8) {
+          local_a8 = (float)local_b8;
+        }
+        fVar13 = *(float *)(pCVar11 + 8);
+        fVar14 = *(float *)(pCVar8 + 8);
+        if (*(float *)(pCVar8 + 8) <= *(float *)(pCVar9 + 8)) {
+          fVar14 = *(float *)(pCVar9 + 8);
+        }
+        *(float *)(pCVar8 + 0x48) = 7.28675e-44;
+        if (fVar13 <= fVar14) {
+          fVar14 = fVar13;
+        }
+        *(float *)pCVar8 = local_a8;
+        *(float *)(pCVar8 + 4) = fStack_a4;
+        *(float *)(pCVar8 + 8) = fVar14;
       }
       else {
-        if (iVar6 != 0x45) {
-          uVar20 = 0xa34;
+        if (fVar13 != 9.66896e-44) {
+          uVar16 = 0xa44;
           goto LAB_0;
         }
-        pfVar1 = (float *)(lVar7 + uVar14 * 0x50);
-        fVar17 = *pfVar1;
-        fVar18 = pfVar1[1];
-        fVar19 = pfVar1[2];
-        fVar8 = pfVar1[3];
-        pfVar1 = (float *)(lVar7 + uVar15 * 0x50);
-        fVar9 = *pfVar1;
-        fVar10 = pfVar1[1];
-        fVar11 = pfVar1[2];
-        fVar12 = pfVar1[3];
-        *(undefined4 *)(lVar7 + 0x48 + uVar13 * 0x50) = 0x45;
-        pfVar1 = (float *)(lVar7 + uVar13 * 0x50);
-        fVar16 = *pfVar1;
-        if (*pfVar1 <= fVar17) {
-          fVar16 = fVar17;
-        }
-        if (fVar9 <= fVar16) {
-          fVar16 = fVar9;
-        }
-        fVar17 = pfVar1[1];
-        if (pfVar1[1] <= fVar18) {
-          fVar17 = fVar18;
-        }
-        fVar18 = pfVar1[2];
-        if (pfVar1[2] <= fVar19) {
-          fVar18 = fVar19;
-        }
-        fVar19 = pfVar1[3];
-        if (pfVar1[3] <= fVar8) {
-          fVar19 = fVar8;
-        }
-        if (fVar10 <= fVar17) {
-          fVar17 = fVar10;
-        }
-        if (fVar11 <= fVar18) {
-          fVar18 = fVar11;
-        }
-        if (fVar12 <= fVar19) {
-          fVar19 = fVar12;
-        }
-        local_28 = CONCAT44(fVar17,fVar16);
-        puVar2 = (undefined8 *)(lVar7 + uVar13 * 0x50);
-        *puVar2 = local_28;
-        puVar2[1] = CONCAT44(fVar19,fVar18);
+        fVar13 = *(float *)pCVar9;
+        fVar14 = *(float *)(pCVar9 + 4);
+        fVar15 = *(float *)(pCVar9 + 8);
+        fVar2 = *(float *)(pCVar9 + 0xc);
+        fVar3 = *(float *)pCVar11;
+        fVar4 = *(float *)(pCVar11 + 4);
+        fVar5 = *(float *)(pCVar11 + 8);
+        fVar6 = *(float *)(pCVar11 + 0xc);
+        *(float *)(pCVar8 + 0x48) = 9.66896e-44;
+        fVar12 = *(float *)pCVar8;
+        if (*(float *)pCVar8 <= fVar13) {
+          fVar12 = fVar13;
+        }
+        if (fVar3 <= fVar12) {
+          fVar12 = fVar3;
+        }
+        fVar13 = *(float *)(pCVar8 + 4);
+        if (*(float *)(pCVar8 + 4) <= fVar14) {
+          fVar13 = fVar14;
+        }
+        fVar14 = *(float *)(pCVar8 + 8);
+        if (*(float *)(pCVar8 + 8) <= fVar15) {
+          fVar14 = fVar15;
+        }
+        fVar15 = *(float *)(pCVar8 + 0xc);
+        if (*(float *)(pCVar8 + 0xc) <= fVar2) {
+          fVar15 = fVar2;
+        }
+        if (fVar4 <= fVar13) {
+          fVar13 = fVar4;
+        }
+        if (fVar5 <= fVar14) {
+          fVar14 = fVar5;
+        }
+        if (fVar6 <= fVar15) {
+          fVar15 = fVar6;
+        }
+        local_b8 = CONCAT44(fVar13,fVar12);
+        *(undefined8 *)pCVar8 = local_b8;
+        *(ulonglong *)(pCVar8 + 8) = CONCAT44(fVar15,fVar14);
       }
       goto LAB_1;
     }
-    fVar17 = *(float *)(lVar7 + 4 + uVar13 * 0x50);
-    fVar18 = *(float *)(lVar7 + 4 + uVar14 * 0x50);
-    if (fVar17 <= fVar18) {
-      fVar17 = fVar18;
-    }
-    fVar18 = *(float *)(lVar7 + uVar13 * 0x50);
-    fVar19 = *(float *)(lVar7 + uVar14 * 0x50);
-    if (fVar18 <= fVar19) {
-      fVar18 = fVar19;
-    }
-    fVar19 = *(float *)(lVar7 + 4 + uVar15 * 0x50);
-    if (fVar19 <= fVar17) {
-      fVar17 = fVar19;
-    }
-    fVar19 = *(float *)(lVar7 + uVar15 * 0x50);
-    if (fVar19 <= fVar18) {
-      fVar18 = fVar19;
-    }
-    *(undefined4 *)(lVar7 + 0x48 + uVar13 * 0x50) = 0x23;
-    *(float *)(lVar7 + 4 + uVar13 * 0x50) = fVar17;
-  }
-  *(float *)(lVar7 + uVar13 * 0x50) = fVar18;
+    fVar13 = *(float *)(pCVar8 + 4);
+    if (*(float *)(pCVar8 + 4) <= *(float *)(pCVar9 + 4)) {
+      fVar13 = *(float *)(pCVar9 + 4);
+    }
+    fVar14 = *(float *)pCVar8;
+    if (*(float *)pCVar8 <= *(float *)pCVar9) {
+      fVar14 = *(float *)pCVar9;
+    }
+    if (*(float *)(pCVar11 + 4) <= fVar13) {
+      fVar13 = *(float *)(pCVar11 + 4);
+    }
+    if (*(float *)pCVar11 <= fVar14) {
+      fVar14 = *(float *)pCVar11;
+    }
+    *(float *)(pCVar8 + 0x48) = 4.90454e-44;
+    *(float *)(pCVar8 + 4) = fVar13;
+  }
+  *(float *)pCVar8 = fVar14;
 LAB_1:
-  *(undefined1 *)(lVar7 + 0x4c + uVar13 * 0x50) = 1;
-  *(int *)(this + 0x10) = *(int *)(this + 0x10) + -2;
+  pCVar8[0x4c] = (CExpressionValue)0x1;
+  *(uint *)pCVar1 = *(uint *)pCVar1 - 2;
   return 0;
 }
 

```


## CExpressionValueStack::Concatenate

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.27|
|i_ratio|0.15|
|m_ratio|0.63|
|b_ratio|0.55|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Concatenate|Concatenate|
|fullname|CExpressionValueStack::Concatenate|CExpressionValueStack::Concatenate|
|refcount|2|2|
|`length`|183|377|
|`called`|D3DXQuaternionMultiply<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXQuaternionMultiply<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180255088|1802571bc|
|sig|long __thiscall Concatenate(CExpressionValueStack * this)|long __thiscall Concatenate(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Concatenate Called Diff


```diff
--- CExpressionValueStack::Concatenate called
+++ CExpressionValueStack::Concatenate called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Concatenate Calling Diff


```diff
--- CExpressionValueStack::Concatenate calling
+++ CExpressionValueStack::Concatenate calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Concatenate Diff


```diff
--- CExpressionValueStack::Concatenate
+++ CExpressionValueStack::Concatenate
@@ -1,40 +1,73 @@
 
 /* public: long __cdecl CExpressionValueStack::Concatenate(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Concatenate(CExpressionValueStack *this)
 
 {
-  D2DQuaternion *pDVar1;
-  D2DQuaternion *pDVar2;
-  uint uVar3;
-  undefined8 local_18;
-  undefined8 uStack_10;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar5;
+  uint uVar6;
+  undefined8 local_78;
+  undefined8 uStack_70;
+  CExpressionValue local_68 [80];
   
-  uVar3 = *(uint *)(this + 0x10);
-  if (uVar3 < 2) {
-    uVar3 = 0xf77;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar6 = 0xf87;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    pDVar1 = (D2DQuaternion *)((ulonglong)(uVar3 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pDVar2 = (D2DQuaternion *)((ulonglong)(uVar3 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (*(int *)(pDVar1 + 0x48) == *(int *)(pDVar2 + 0x48)) {
-      if (*(int *)(pDVar1 + 0x48) == 0x47) {
-        D3DXQuaternionMultiply((D2DQuaternion *)&local_18,pDVar1,pDVar2);
-        *(undefined4 *)(pDVar1 + 0x48) = 0x47;
-        pDVar1[0x4c] = (D2DQuaternion)0x1;
-        *(undefined8 *)pDVar1 = local_18;
-        *(undefined8 *)(pDVar1 + 8) = uStack_10;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar5 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if (*(int *)(pCVar3 + 0x48) == *(int *)(pCVar5 + 0x48)) {
+      if (*(int *)(pCVar3 + 0x48) == 0x47) {
+        D3DXQuaternionMultiply
+                  ((D2DQuaternion *)&local_78,(D2DQuaternion *)pCVar3,(D2DQuaternion *)pCVar5);
+        *(undefined4 *)(pCVar3 + 0x48) = 0x47;
+        *(D2DQuaternion *)(pCVar3 + 0x4c) = (D2DQuaternion)0x1;
+        *(undefined8 *)pCVar3 = local_78;
+        *(undefined8 *)(pCVar3 + 8) = uStack_70;
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar3 = 0xfac;
+      uVar6 = 0xfbc;
     }
     else {
-      uVar3 = 0xf8e;
+      uVar6 = 0xf9e;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar3,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::LessThanEquals

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.28|
|i_ratio|0.06|
|m_ratio|0.65|
|b_ratio|0.23|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|LessThanEquals|LessThanEquals|
|fullname|CExpressionValueStack::LessThanEquals|CExpressionValueStack::LessThanEquals|
|`refcount`|3|2|
|`length`|192|363|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|18001ee84|180020018|
|sig|long __thiscall LessThanEquals(CExpressionValueStack * this)|long __thiscall LessThanEquals(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::LessThanEquals Called Diff


```diff
--- CExpressionValueStack::LessThanEquals called
+++ CExpressionValueStack::LessThanEquals called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::LessThanEquals Diff


```diff
--- CExpressionValueStack::LessThanEquals
+++ CExpressionValueStack::LessThanEquals
@@ -1,41 +1,70 @@
 
 /* public: long __cdecl CExpressionValueStack::LessThanEquals(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::LessThanEquals(CExpressionValueStack *this)
 
 {
-  float fVar1;
-  float *pfVar2;
-  float *pfVar3;
-  uint uVar4;
+  CExpressionValueStack *pCVar1;
+  float fVar2;
+  bool bVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar6;
+  uint uVar7;
+  CExpressionValue local_68 [80];
   
-  uVar4 = *(uint *)(this + 0x10);
-  if (uVar4 < 2) {
-    uVar4 = 0x71f;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar7 = 0x72f;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    pfVar3 = (float *)((ulonglong)(uVar4 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar2 = (float *)((ulonglong)(uVar4 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    fVar1 = pfVar3[0x12];
-    if (fVar1 == pfVar2[0x12]) {
-      if (fVar1 == 2.52234e-44) {
-        fVar1 = *pfVar2;
-        pfVar3[0x12] = 2.38221e-44;
-        *(undefined1 *)(pfVar3 + 0x13) = 1;
-        *(bool *)pfVar3 = *pfVar3 <= fVar1;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if (*(float *)(pCVar4 + 0x48) == *(float *)(pCVar6 + 0x48)) {
+      if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+        fVar2 = *(float *)pCVar6;
+        *(float *)(pCVar4 + 0x48) = 2.38221e-44;
+        pCVar4[0x4c] = (CExpressionValue)0x1;
+        *pCVar4 = (CExpressionValue)(*(float *)pCVar4 <= fVar2);
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar4 = 0x74f;
-      this = (CExpressionValueStack *)(ulonglong)(uint)fVar1;
+      uVar7 = 0x75f;
     }
     else {
-      uVar4 = 0x73b;
-      this = (CExpressionValueStack *)(ulonglong)(uint)fVar1;
+      uVar7 = 0x74b;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar4,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Add

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.13|
|i_ratio|0.19|
|m_ratio|0.87|
|b_ratio|0.48|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Add|Add|
|fullname|CExpressionValueStack::Add|CExpressionValueStack::Add|
|`refcount`|3|2|
|`length`|599|748|
|`called`|D2DMatrix::operator+<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrix::operator+<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1800132ac|180013f58|
|sig|long __thiscall Add(CExpressionValueStack * this)|long __thiscall Add(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Add Called Diff


```diff
--- CExpressionValueStack::Add called
+++ CExpressionValueStack::Add called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Add Diff


```diff
--- CExpressionValueStack::Add
+++ CExpressionValueStack::Add
@@ -1,112 +1,143 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CExpressionValueStack::Add(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Add(CExpressionValueStack *this)
 
 {
-  float fVar1;
+  CExpressionValueStack *pCVar1;
   float fVar2;
   float fVar3;
   float fVar4;
   float fVar5;
-  float fVar6;
-  undefined8 uVar7;
-  float *pfVar8;
-  undefined8 *puVar9;
-  D2DMatrix *this_00;
-  undefined1 auStackY_98 [32];
-  uint uVar10;
-  D2DMatrix local_58 [64];
-  ulonglong local_18;
+  undefined8 uVar6;
+  bool bVar7;
+  CExpressionValue *pCVar8;
+  CExpressionValue *pCVar9;
+  undefined8 *puVar10;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar11;
+  float fVar12;
+  undefined1 auStackY_b8 [32];
+  uint uVar13;
+  CExpressionValue local_78 [80];
+  ulonglong local_28;
   
-  local_18 = __security_cookie ^ (ulonglong)auStackY_98;
-  uVar10 = *(uint *)(this + 0x10);
-  if (uVar10 < 2) {
-    uVar10 = 0x349;
+  local_28 = __security_cookie ^ (ulonglong)auStackY_b8;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar13 = 0x359;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
+LAB_0:
+    MilInstrumentationCheckHR_MaybeFailFast
+              ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar13,
+               (void *)0x0);
+    return -0x7fffbffb;
+  }
+  bVar7 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+  pCVar11 = &s_emptyValue;
+  if ((bVar7) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+    pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+    CExpressionValue::operator=(&s_emptyValue,pCVar8);
+    CExpressionValue::~CExpressionValue(local_78);
+    pCVar8 = &s_emptyValue;
   }
   else {
-    this_00 = (D2DMatrix *)((ulonglong)(uVar10 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar8 = (float *)((ulonglong)(uVar10 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    fVar6 = *(float *)(this_00 + 0x48);
-    if (fVar6 == pfVar8[0x12]) {
-      if (fVar6 == 7.28675e-44) {
-        fVar6 = *pfVar8;
-        fVar1 = pfVar8[1];
-        fVar2 = pfVar8[2];
-        *(undefined4 *)(this_00 + 0x48) = 0x34;
-        *(float *)this_00 = fVar6 + *(float *)this_00;
-        *(float *)(this_00 + 4) = fVar1 + *(float *)(this_00 + 4);
-        *(float *)(this_00 + 8) = fVar2 + *(float *)(this_00 + 8);
+    pCVar8 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+  }
+  bVar7 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  if ((bVar7) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+    pCVar9 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+    CExpressionValue::operator=(&s_emptyValue,pCVar9);
+    this_00 = (DynArray<CExpressionValue,1> *)local_78;
+    CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+  }
+  else {
+    pCVar11 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+  }
+  fVar12 = *(float *)(pCVar8 + 0x48);
+  if (fVar12 != *(float *)(pCVar11 + 0x48)) {
+    uVar13 = 0x375;
+    goto LAB_0;
+  }
+  if (fVar12 == 2.52234e-44) {
+    fVar12 = *(float *)pCVar11;
+    *(undefined4 *)(pCVar8 + 0x48) = 0x12;
+  }
+  else {
+    if (fVar12 == 4.90454e-44) {
+      fVar12 = *(float *)pCVar11;
+      fVar2 = *(float *)(pCVar11 + 4);
+      *(undefined4 *)(pCVar8 + 0x48) = 0x23;
+      *(float *)pCVar8 = fVar12 + *(float *)pCVar8;
+      *(float *)(pCVar8 + 4) = fVar2 + *(float *)(pCVar8 + 4);
+      goto LAB_1;
+    }
+    if (fVar12 == 7.28675e-44) {
+      fVar2 = *(float *)(pCVar11 + 4);
+      fVar3 = *(float *)(pCVar11 + 8);
+      fVar12 = *(float *)pCVar11;
+      *(undefined4 *)(pCVar8 + 0x48) = 0x34;
+      *(float *)(pCVar8 + 4) = fVar2 + *(float *)(pCVar8 + 4);
+      *(float *)(pCVar8 + 8) = fVar3 + *(float *)(pCVar8 + 8);
+    }
+    else {
+      if (fVar12 == 9.66896e-44) {
+        fVar12 = *(float *)pCVar11;
+        fVar2 = *(float *)(pCVar11 + 4);
+        fVar3 = *(float *)(pCVar11 + 8);
+        fVar4 = *(float *)(pCVar11 + 0xc);
+        *(undefined4 *)(pCVar8 + 0x48) = 0x45;
+        *(ulonglong *)pCVar8 = CONCAT44(fVar2 + *(float *)(pCVar8 + 4),fVar12 + *(float *)pCVar8);
+        *(ulonglong *)(pCVar8 + 8) =
+             CONCAT44(fVar4 + *(float *)(pCVar8 + 0xc),fVar3 + *(float *)(pCVar8 + 8));
+        goto LAB_1;
       }
-      else if (fVar6 == 4.90454e-44) {
-        fVar6 = *pfVar8;
-        fVar1 = pfVar8[1];
-        *(undefined4 *)(this_00 + 0x48) = 0x23;
-        *(float *)this_00 = fVar6 + *(float *)this_00;
-        *(float *)(this_00 + 4) = fVar1 + *(float *)(this_00 + 4);
-      }
-      else if (fVar6 == 2.52234e-44) {
-        fVar6 = *pfVar8;
-        *(undefined4 *)(this_00 + 0x48) = 0x12;
-        *(float *)this_00 = fVar6 + *(float *)this_00;
-      }
-      else if (fVar6 == 9.66896e-44) {
-        fVar6 = *pfVar8;
-        fVar1 = pfVar8[1];
-        fVar2 = pfVar8[2];
-        fVar3 = pfVar8[3];
-        *(undefined4 *)(this_00 + 0x48) = 0x45;
-        *(ulonglong *)this_00 = CONCAT44(fVar1 + *(float *)(this_00 + 4),fVar6 + *(float *)this_00);
-        *(ulonglong *)(this_00 + 8) =
-             CONCAT44(fVar3 + *(float *)(this_00 + 0xc),fVar2 + *(float *)(this_00 + 8));
-      }
-      else if (fVar6 == 1.45735e-43) {
-        fVar6 = *pfVar8;
-        fVar1 = pfVar8[1];
-        fVar2 = pfVar8[2];
-        fVar3 = pfVar8[3];
-        fVar4 = pfVar8[4];
-        fVar5 = pfVar8[5];
-        *(undefined4 *)(this_00 + 0x48) = 0x68;
-        *(float *)this_00 = fVar6 + *(float *)this_00;
-        *(float *)(this_00 + 4) = fVar1 + *(float *)(this_00 + 4);
-        *(float *)(this_00 + 8) = fVar2 + *(float *)(this_00 + 8);
-        *(float *)(this_00 + 0xc) = fVar3 + *(float *)(this_00 + 0xc);
-        *(float *)(this_00 + 0x10) = fVar4 + *(float *)(this_00 + 0x10);
-        *(float *)(this_00 + 0x14) = fVar5 + *(float *)(this_00 + 0x14);
-      }
-      else {
-        if (fVar6 != 3.71344e-43) {
-          uVar10 = 0x39c;
-          this = (CExpressionValueStack *)(ulonglong)(uint)fVar6;
+      if (fVar12 != 1.45735e-43) {
+        if (fVar12 != 3.71344e-43) {
+          uVar13 = 0x3ac;
           goto LAB_0;
         }
-        puVar9 = (undefined8 *)D2DMatrix::operator+(this_00,local_58);
-        *(undefined4 *)(this_00 + 0x48) = 0x109;
-        uVar7 = puVar9[1];
-        *(undefined8 *)this_00 = *puVar9;
-        *(undefined8 *)(this_00 + 8) = uVar7;
-        uVar7 = puVar9[3];
-        *(undefined8 *)(this_00 + 0x10) = puVar9[2];
-        *(undefined8 *)(this_00 + 0x18) = uVar7;
-        uVar7 = puVar9[5];
-        *(undefined8 *)(this_00 + 0x20) = puVar9[4];
-        *(undefined8 *)(this_00 + 0x28) = uVar7;
-        uVar7 = puVar9[7];
-        *(undefined8 *)(this_00 + 0x30) = puVar9[6];
-        *(undefined8 *)(this_00 + 0x38) = uVar7;
+        puVar10 = (undefined8 *)D2DMatrix::operator+((D2DMatrix *)pCVar8,(D2DMatrix *)local_78);
+        *(undefined4 *)(pCVar8 + 0x48) = 0x109;
+        uVar6 = puVar10[1];
+        *(undefined8 *)pCVar8 = *puVar10;
+        *(undefined8 *)(pCVar8 + 8) = uVar6;
+        uVar6 = puVar10[3];
+        *(undefined8 *)(pCVar8 + 0x10) = puVar10[2];
+        *(undefined8 *)(pCVar8 + 0x18) = uVar6;
+        uVar6 = puVar10[5];
+        *(undefined8 *)(pCVar8 + 0x20) = puVar10[4];
+        *(undefined8 *)(pCVar8 + 0x28) = uVar6;
+        uVar6 = puVar10[7];
+        *(undefined8 *)(pCVar8 + 0x30) = puVar10[6];
+        *(undefined8 *)(pCVar8 + 0x38) = uVar6;
+        goto LAB_1;
       }
-      this_00[0x4c] = (D2DMatrix)0x1;
-      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
-      return 0;
+      fVar2 = *(float *)(pCVar11 + 8);
+      fVar3 = *(float *)(pCVar11 + 0xc);
+      fVar4 = *(float *)(pCVar11 + 0x10);
+      fVar5 = *(float *)(pCVar11 + 0x14);
+      fVar12 = *(float *)pCVar11;
+      *(float *)(pCVar8 + 4) = *(float *)(pCVar11 + 4) + *(float *)(pCVar8 + 4);
+      *(float *)(pCVar8 + 8) = fVar2 + *(float *)(pCVar8 + 8);
+      *(float *)(pCVar8 + 0xc) = fVar3 + *(float *)(pCVar8 + 0xc);
+      *(float *)(pCVar8 + 0x10) = fVar4 + *(float *)(pCVar8 + 0x10);
+      *(float *)(pCVar8 + 0x14) = fVar5 + *(float *)(pCVar8 + 0x14);
+      *(undefined4 *)(pCVar8 + 0x48) = 0x68;
     }
-    uVar10 = 0x365;
-    this = (CExpressionValueStack *)(ulonglong)(uint)fVar6;
   }
-LAB_0:
-  MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar10,(void *)0x0);
-  return -0x7fffbffb;
+  *(float *)pCVar8 = fVar12 + *(float *)pCVar8;
+LAB_1:
+  *(D2DMatrix *)(pCVar8 + 0x4c) = (D2DMatrix)0x1;
+  *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
+  return 0;
 }
 

```


## CExpressionValueStack::Round

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.38|
|i_ratio|0.23|
|m_ratio|0.89|
|b_ratio|0.83|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Round|Round|
|fullname|CExpressionValueStack::Round|CExpressionValueStack::Round|
|refcount|2|2|
|`length`|317|404|
|`called`|API-MS-WIN-CRT-MATH-L1-1-0.DLL::modff<br>MilInstrumentationCheckHR_MaybeFailFast<br>ceilf<br>floorf|API-MS-WIN-CRT-MATH-L1-1-0.DLL::modff<br>CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>ceilf<br>floorf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180258ab0|18025c748|
|sig|long __thiscall Round(CExpressionValueStack * this)|long __thiscall Round(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Round Called Diff


```diff
--- CExpressionValueStack::Round called
+++ CExpressionValueStack::Round called
@@ -1,0 +2,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -4,0 +9 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Round Calling Diff


```diff
--- CExpressionValueStack::Round calling
+++ CExpressionValueStack::Round calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Round Diff


```diff
--- CExpressionValueStack::Round
+++ CExpressionValueStack::Round
@@ -1,48 +1,68 @@
 
 /* public: long __cdecl CExpressionValueStack::Round(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Round(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  float fVar2;
-  float fVar3;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  float fVar5;
+  float fVar6;
   float local_res8 [2];
-  uint uVar4;
+  uint uVar7;
+  CExpressionValue local_68 [96];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar4 = 0x11e9;
+    uVar7 = 0x11f9;
   }
   else {
-    pfVar1 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar1[0x12] == 2.52234e-44) {
-      fVar3 = *pfVar1;
-      fVar2 = modff(fVar3,local_res8);
-      if ((((longlong)ABS(local_res8[0]) & 1U) == 0) && (ABS(fVar2) == 0.5)) {
-        if (fVar3 < 0.0) {
-          fVar3 = ceilf(fVar3 - 0.5);
-          fVar3 = fVar3 + 1.0;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+      fVar6 = *(float *)pCVar4;
+      fVar5 = modff(fVar6,local_res8);
+      if ((((longlong)ABS(local_res8[0]) & 1U) == 0) && (ABS(fVar5) == 0.5)) {
+        if (fVar6 < 0.0) {
+          fVar6 = ceilf(fVar6 - 0.5);
+          fVar6 = fVar6 + 1.0;
         }
         else {
-          fVar3 = floorf(fVar3 + 0.5);
-          fVar3 = fVar3 - 1.0;
+          fVar6 = floorf(fVar6 + 0.5);
+          fVar6 = fVar6 - 1.0;
         }
       }
-      else if (fVar3 < 0.0) {
-        fVar3 = ceilf(fVar3 - 0.5);
+      else if (fVar6 < 0.0) {
+        fVar6 = ceilf(fVar6 - 0.5);
       }
       else {
-        fVar3 = floorf(fVar3 + 0.5);
+        fVar6 = floorf(fVar6 + 0.5);
       }
-      pfVar1[0x12] = 2.52234e-44;
-      *pfVar1 = fVar3;
-      *(undefined1 *)(pfVar1 + 0x13) = 1;
+      *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+      *(float *)pCVar4 = fVar6;
+      pCVar4[0x4c] = (CExpressionValue)0x1;
       return 0;
     }
-    uVar4 = 0x1216;
+    uVar7 = 0x1226;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar4,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Vector3Dot

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.24|
|i_ratio|0.13|
|m_ratio|0.67|
|b_ratio|0.63|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Vector3Dot|Vector3Dot|
|fullname|CExpressionValueStack::Vector3Dot|CExpressionValueStack::Vector3Dot|
|refcount|2|2|
|`length`|256|439|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180259624|18025d924|
|sig|long __thiscall Vector3Dot(CExpressionValueStack * this)|long __thiscall Vector3Dot(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Vector3Dot Called Diff


```diff
--- CExpressionValueStack::Vector3Dot called
+++ CExpressionValueStack::Vector3Dot called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Vector3Dot Calling Diff


```diff
--- CExpressionValueStack::Vector3Dot calling
+++ CExpressionValueStack::Vector3Dot calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Vector3Dot Diff


```diff
--- CExpressionValueStack::Vector3Dot
+++ CExpressionValueStack::Vector3Dot
@@ -1,54 +1,80 @@
 
 /* public: long __cdecl CExpressionValueStack::Vector3Dot(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Vector3Dot(CExpressionValueStack *this)
 
 {
-  undefined8 uVar1;
-  undefined8 uVar2;
-  float fVar3;
-  longlong lVar4;
-  ulonglong uVar5;
-  ulonglong uVar6;
+  CExpressionValueStack *pCVar1;
+  float fVar2;
+  bool bVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
   uint uVar7;
-  float local_28;
-  float fStack_24;
-  float local_18;
-  float fStack_14;
+  float local_88;
+  float fStack_84;
+  float local_78;
+  float fStack_74;
+  CExpressionValue local_68 [80];
   
-  uVar7 = *(uint *)(this + 0x10);
-  if (uVar7 < 2) {
-    uVar7 = 0x1d3c;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar7 = 0x1d4c;
+    pCVar5 = (CExpressionValue *)this;
   }
   else {
-    lVar4 = *(longlong *)(this + 0x18);
-    uVar5 = (ulonglong)(uVar7 - 2);
-    uVar6 = (ulonglong)(uVar7 - 1);
-    if (*(int *)(lVar4 + 0x48 + uVar5 * 0x50) == 0x34) {
-      if (*(int *)(lVar4 + 0x48 + uVar6 * 0x50) == 0x34) {
-        uVar1 = *(undefined8 *)(lVar4 + uVar5 * 0x50);
-        uVar2 = *(undefined8 *)(lVar4 + uVar6 * 0x50);
-        fStack_14 = (float)((ulonglong)uVar1 >> 0x20);
-        fStack_24 = (float)((ulonglong)uVar2 >> 0x20);
-        fVar3 = *(float *)(lVar4 + 8 + uVar6 * 0x50);
-        local_28 = (float)uVar2;
-        local_18 = (float)uVar1;
-        *(undefined4 *)(lVar4 + 0x48 + uVar5 * 0x50) = 0x12;
-        *(undefined1 *)(lVar4 + 0x4c + uVar5 * 0x50) = 1;
-        *(float *)(lVar4 + uVar5 * 0x50) =
-             fStack_14 * fStack_24 + local_28 * local_18 +
-             fVar3 * *(float *)(lVar4 + 8 + uVar5 * 0x50);
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar5 = (CExpressionValue *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 2);
+    }
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      pCVar5 = local_68;
+      CExpressionValue::~CExpressionValue(pCVar5);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar5,*(uint *)pCVar1 - 1);
+    }
+    if (*(int *)(pCVar4 + 0x48) == 0x34) {
+      if (*(int *)(pCVar6 + 0x48) == 0x34) {
+        fStack_74 = (float)((ulonglong)*(undefined8 *)pCVar4 >> 0x20);
+        fStack_84 = (float)((ulonglong)*(undefined8 *)pCVar6 >> 0x20);
+        fVar2 = *(float *)(pCVar6 + 8);
+        local_88 = (float)*(undefined8 *)pCVar6;
+        local_78 = (float)*(undefined8 *)pCVar4;
+        *(undefined4 *)(pCVar4 + 0x48) = 0x12;
+        pCVar4[0x4c] = (CExpressionValue)0x1;
+        *(float *)pCVar4 =
+             fStack_74 * fStack_84 + local_88 * local_78 + fVar2 * *(float *)(pCVar4 + 8);
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar7 = 0x1d43;
+      uVar7 = 0x1d53;
     }
     else {
-      uVar7 = 0x1d42;
+      uVar7 = 0x1d52;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
+            ((ulong)pCVar5,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Divide

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.24|
|i_ratio|0.02|
|m_ratio|0.89|
|b_ratio|0.06|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Divide|Divide|
|fullname|CExpressionValueStack::Divide|CExpressionValueStack::Divide|
|`refcount`|3|2|
|`length`|831|958|
|`called`|D3DXQuaternionInverse<br>D3DXQuaternionMultiply<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXQuaternionInverse<br>D3DXQuaternionMultiply<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180072980|1800c0ef0|
|sig|long __thiscall Divide(CExpressionValueStack * this)|long __thiscall Divide(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Divide Called Diff


```diff
--- CExpressionValueStack::Divide called
+++ CExpressionValueStack::Divide called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -2,0 +6 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Divide Diff


```diff
--- CExpressionValueStack::Divide
+++ CExpressionValueStack::Divide
@@ -1,146 +1,167 @@
 
 /* public: long __cdecl CExpressionValueStack::Divide(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Divide(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  undefined8 *puVar2;
+  CExpressionValueStack *pCVar1;
+  float fVar2;
   undefined8 uVar3;
   undefined8 uVar4;
-  int iVar5;
-  float fVar6;
-  float fVar7;
-  ulonglong uVar8;
-  ulonglong uVar9;
-  longlong lVar10;
-  longlong lVar11;
-  float fVar12;
-  uint uVar13;
-  undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  D2DQuaternion local_18 [16];
+  float fVar5;
+  bool bVar6;
+  CExpressionValue *pCVar7;
+  CExpressionValue *pCVar8;
+  CExpressionValue *pCVar9;
+  float fVar10;
+  uint uVar11;
+  undefined8 local_a8;
+  undefined8 uStack_a0;
+  undefined8 local_98;
+  undefined8 uStack_90;
+  D2DQuaternion local_88 [16];
+  CExpressionValue local_78 [80];
   
-  uVar13 = *(uint *)(this + 0x10);
-  if (uVar13 < 2) {
-    uVar13 = 0x4ca;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar11 = 0x4da;
+    pCVar8 = (CExpressionValue *)this;
 LAB_0:
     MilInstrumentationCheckHR_MaybeFailFast
-              (0,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar13,(void *)0x0);
+              ((ulong)pCVar8,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar11,(void *)0x0
+              );
     return -0x7fffbffb;
   }
-  lVar10 = *(longlong *)(this + 0x18);
-  uVar8 = (ulonglong)(uVar13 - 2);
-  uVar9 = (ulonglong)(uVar13 - 1);
-  lVar11 = uVar8 * 10;
-  iVar5 = *(int *)(lVar10 + 0x48 + uVar8 * 0x50);
-  if (iVar5 != *(int *)(lVar10 + 0x48 + uVar9 * 0x50)) {
-    uVar13 = 0x4e1;
+  bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  pCVar8 = (CExpressionValue *)(this + 0x18);
+  pCVar9 = &s_emptyValue;
+  if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+    pCVar7 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+    CExpressionValue::operator=(&s_emptyValue,pCVar7);
+    CExpressionValue::~CExpressionValue(local_78);
+    pCVar7 = &s_emptyValue;
+  }
+  else {
+    pCVar7 = DynArray<CExpressionValue,1>::operator[]
+                       ((DynArray<CExpressionValue,1> *)pCVar8,*(uint *)pCVar1 - 2);
+  }
+  bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+    pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+    CExpressionValue::operator=(&s_emptyValue,pCVar8);
+    pCVar8 = local_78;
+    CExpressionValue::~CExpressionValue(pCVar8);
+  }
+  else {
+    pCVar9 = DynArray<CExpressionValue,1>::operator[]
+                       ((DynArray<CExpressionValue,1> *)pCVar8,*(uint *)pCVar1 - 1);
+  }
+  fVar10 = *(float *)(pCVar7 + 0x48);
+  if (fVar10 != *(float *)(pCVar9 + 0x48)) {
+    uVar11 = 0x4f1;
     goto LAB_0;
   }
-  if (iVar5 == 0x12) {
-    fVar12 = *(float *)(lVar10 + uVar9 * 0x50);
-    if (fVar12 == 0.0) {
-      uVar13 = 0x4ee;
+  if (fVar10 == 2.52234e-44) {
+    if (*(float *)pCVar9 == 0.0) {
+      uVar11 = 0x4fe;
       goto LAB_0;
     }
-    fVar12 = *(float *)(lVar10 + uVar8 * 0x50) / fVar12;
-    *(undefined4 *)(lVar10 + 0x48 + uVar8 * 0x50) = 0x12;
+    fVar10 = *(float *)pCVar7 / *(float *)pCVar9;
+    *(float *)(pCVar7 + 0x48) = 2.52234e-44;
   }
   else {
-    if (iVar5 != 0x23) {
-      if (iVar5 == 0x34) {
-        uVar3 = *(undefined8 *)(lVar10 + uVar8 * 0x50);
-        fVar12 = *(float *)(lVar10 + 8 + uVar8 * 0x50);
-        uVar4 = *(undefined8 *)(lVar10 + uVar9 * 0x50);
-        local_38._0_4_ = (float)uVar4;
-        uStack_20 = CONCAT44(uStack_20._4_4_,fVar12);
-        fVar6 = *(float *)(lVar10 + 8 + uVar9 * 0x50);
-        uStack_30 = CONCAT44(uStack_30._4_4_,fVar6);
-        if ((((float)local_38 == 0.0) ||
-            (local_38._4_4_ = (float)((ulonglong)uVar4 >> 0x20), local_38._4_4_ == 0.0)) ||
-           (fVar6 == 0.0)) {
-          uVar13 = 0x516;
-          local_38 = uVar4;
-          local_28 = uVar3;
+    if (fVar10 != 4.90454e-44) {
+      if (fVar10 == 7.28675e-44) {
+        uVar3 = *(undefined8 *)pCVar7;
+        uVar4 = *(undefined8 *)pCVar9;
+        local_98._0_4_ = (float)uVar4;
+        uStack_a0 = CONCAT44(uStack_a0._4_4_,*(float *)(pCVar7 + 8));
+        fVar10 = *(float *)(pCVar9 + 8);
+        uStack_90 = CONCAT44(uStack_90._4_4_,fVar10);
+        if ((((float)local_98 == 0.0) ||
+            (local_98._4_4_ = (float)((ulonglong)uVar4 >> 0x20), local_98._4_4_ == 0.0)) ||
+           (fVar10 == 0.0)) {
+          uVar11 = 0x526;
+          local_a8 = uVar3;
+          local_98 = uVar4;
           goto LAB_0;
         }
-        local_28._4_4_ = (float)((ulonglong)uVar3 >> 0x20);
-        local_28._0_4_ = (float)uVar3;
-        *(undefined4 *)(lVar10 + 0x48 + uVar8 * 0x50) = 0x34;
-        *(float *)(lVar10 + uVar8 * 0x50) = (float)local_28 / (float)local_38;
-        *(float *)(lVar10 + 4 + uVar8 * 0x50) = local_28._4_4_ / local_38._4_4_;
-        *(float *)(lVar10 + 8 + uVar8 * 0x50) = fVar12 / fVar6;
+        local_a8._4_4_ = (float)((ulonglong)uVar3 >> 0x20);
+        local_a8._0_4_ = (float)uVar3;
+        *(float *)(pCVar7 + 0x48) = 7.28675e-44;
+        *(float *)pCVar7 = (float)local_a8 / (float)local_98;
+        *(float *)(pCVar7 + 4) = local_a8._4_4_ / local_98._4_4_;
+        *(float *)(pCVar7 + 8) = *(float *)(pCVar7 + 8) / fVar10;
       }
       else {
-        if (iVar5 == 0x45) {
-          puVar2 = (undefined8 *)(lVar10 + uVar8 * 0x50);
-          uVar3 = *puVar2;
-          uStack_20 = puVar2[1];
-          pfVar1 = (float *)(lVar10 + uVar9 * 0x50);
-          fVar12 = pfVar1[1];
-          fVar6 = pfVar1[2];
-          fVar7 = pfVar1[3];
-          uStack_30 = *(undefined8 *)(pfVar1 + 2);
-          if (((*pfVar1 == 0.0) || (fVar12 == 0.0)) || ((fVar6 == 0.0 || (fVar7 == 0.0)))) {
-            uVar13 = 0x52d;
-            local_38 = *(undefined8 *)pfVar1;
-            local_28 = uVar3;
+        if (fVar10 == 9.66896e-44) {
+          uVar3 = *(undefined8 *)pCVar7;
+          uStack_a0 = *(undefined8 *)(pCVar7 + 8);
+          fVar10 = *(float *)(pCVar9 + 4);
+          fVar2 = *(float *)(pCVar9 + 8);
+          fVar5 = *(float *)(pCVar9 + 0xc);
+          uStack_90 = *(undefined8 *)(pCVar9 + 8);
+          if (((*(float *)pCVar9 == 0.0) || (fVar10 == 0.0)) || ((fVar2 == 0.0 || (fVar5 == 0.0))))
+          {
+            uVar11 = 0x53d;
+            local_a8 = uVar3;
+            local_98 = *(undefined8 *)pCVar9;
             goto LAB_0;
           }
-          local_28._0_4_ = (float)uVar3;
-          local_28._0_4_ = (float)local_28 / *pfVar1;
-          *(undefined4 *)(lVar10 + 0x48 + uVar8 * 0x50) = 0x45;
-          local_28._4_4_ = (float)((ulonglong)uVar3 >> 0x20);
-          local_28._4_4_ = local_28._4_4_ / fVar12;
-          uStack_20._4_4_ = (float)((ulonglong)uStack_20 >> 0x20);
-          uStack_20._0_4_ = (float)uStack_20 / fVar6;
-          uStack_20._4_4_ = uStack_20._4_4_ / fVar7;
+          local_a8._0_4_ = (float)uVar3;
+          local_a8._0_4_ = (float)local_a8 / *(float *)pCVar9;
+          *(float *)(pCVar7 + 0x48) = 9.66896e-44;
+          local_a8._4_4_ = (float)((ulonglong)uVar3 >> 0x20);
+          local_a8._4_4_ = local_a8._4_4_ / fVar10;
+          uStack_a0._4_4_ = (float)((ulonglong)uStack_a0 >> 0x20);
+          uStack_a0._0_4_ = (float)uStack_a0 / fVar2;
+          uStack_a0._4_4_ = uStack_a0._4_4_ / fVar5;
         }
         else {
-          if (iVar5 != 0x47) {
-            uVar13 = 0x561;
+          if (fVar10 != 9.94922e-44) {
+            uVar11 = 0x571;
             goto LAB_0;
           }
-          pfVar1 = (float *)(lVar10 + uVar9 * 0x50);
-          local_28 = *(undefined8 *)pfVar1;
-          uStack_20 = *(undefined8 *)(pfVar1 + 2);
-          puVar2 = (undefined8 *)(lVar10 + uVar8 * 0x50);
-          local_38 = *puVar2;
-          uStack_30 = puVar2[1];
-          if (((*pfVar1 == 0.0) || (pfVar1[1] == 0.0)) || ((pfVar1[2] == 0.0 || (pfVar1[3] == 0.0)))
-             ) {
-            uVar13 = 0x545;
+          local_a8 = *(undefined8 *)pCVar9;
+          uStack_a0 = *(undefined8 *)(pCVar9 + 8);
+          local_98 = *(undefined8 *)pCVar7;
+          uStack_90 = *(undefined8 *)(pCVar7 + 8);
+          if (((*(float *)pCVar9 == 0.0) || (*(float *)(pCVar9 + 4) == 0.0)) ||
+             ((*(float *)(pCVar9 + 8) == 0.0 || (*(float *)(pCVar9 + 0xc) == 0.0)))) {
+            uVar11 = 0x555;
             goto LAB_0;
           }
-          D3DXQuaternionInverse(local_18,(D2DQuaternion *)&local_28);
-          D3DXQuaternionMultiply((D2DQuaternion *)&local_28,local_18,(D2DQuaternion *)&local_38);
-          *(undefined4 *)(lVar10 + 0x48 + lVar11 * 8) = 0x47;
+          D3DXQuaternionInverse(local_88,(D2DQuaternion *)&local_a8);
+          D3DXQuaternionMultiply((D2DQuaternion *)&local_a8,local_88,(D2DQuaternion *)&local_98);
+          *(float *)(pCVar7 + 0x48) = 9.94922e-44;
         }
-        pfVar1 = (float *)(lVar10 + lVar11 * 8);
-        *pfVar1 = (float)local_28;
-        pfVar1[1] = local_28._4_4_;
-        pfVar1[2] = (float)uStack_20;
-        pfVar1[3] = uStack_20._4_4_;
+        *(float *)pCVar7 = (float)local_a8;
+        *(float *)(pCVar7 + 4) = local_a8._4_4_;
+        *(float *)(pCVar7 + 8) = (float)uStack_a0;
+        *(float *)(pCVar7 + 0xc) = uStack_a0._4_4_;
       }
       goto LAB_1;
     }
-    fVar12 = *(float *)(lVar10 + uVar9 * 0x50);
-    fVar6 = *(float *)(lVar10 + 4 + uVar9 * 0x50);
-    if ((fVar12 == 0.0) || (fVar6 == 0.0)) {
-      uVar13 = 0x501;
+    fVar10 = *(float *)pCVar9;
+    fVar2 = *(float *)(pCVar9 + 4);
+    if ((fVar10 == 0.0) || (fVar2 == 0.0)) {
+      uVar11 = 0x511;
       goto LAB_0;
     }
-    *(undefined4 *)(lVar10 + 0x48 + uVar8 * 0x50) = 0x23;
-    fVar12 = *(float *)(lVar10 + uVar8 * 0x50) / fVar12;
-    *(float *)(lVar10 + 4 + uVar8 * 0x50) = *(float *)(lVar10 + 4 + uVar8 * 0x50) / fVar6;
+    *(float *)(pCVar7 + 0x48) = 4.90454e-44;
+    fVar10 = *(float *)pCVar7 / fVar10;
+    *(float *)(pCVar7 + 4) = *(float *)(pCVar7 + 4) / fVar2;
   }
-  *(float *)(lVar10 + uVar8 * 0x50) = fVar12;
+  *(float *)pCVar7 = fVar10;
 LAB_1:
-  *(undefined1 *)(lVar10 + 0x4c + lVar11 * 8) = 1;
-  *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+  pCVar7[0x4c] = (CExpressionValue)0x1;
+  *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
   return 0;
 }
 

```


## CExpressionValueStack::Vector4Dot

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.26|
|i_ratio|0.31|
|m_ratio|0.69|
|b_ratio|0.66|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Vector4Dot|Vector4Dot|
|fullname|CExpressionValueStack::Vector4Dot|CExpressionValueStack::Vector4Dot|
|refcount|2|2|
|`length`|245|435|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180259aa4|18025e0dc|
|sig|long __thiscall Vector4Dot(CExpressionValueStack * this)|long __thiscall Vector4Dot(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Vector4Dot Called Diff


```diff
--- CExpressionValueStack::Vector4Dot called
+++ CExpressionValueStack::Vector4Dot called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Vector4Dot Calling Diff


```diff
--- CExpressionValueStack::Vector4Dot calling
+++ CExpressionValueStack::Vector4Dot calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Vector4Dot Diff


```diff
--- CExpressionValueStack::Vector4Dot
+++ CExpressionValueStack::Vector4Dot
@@ -1,55 +1,79 @@
 
 /* public: long __cdecl CExpressionValueStack::Vector4Dot(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Vector4Dot(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  float *pfVar2;
-  longlong lVar3;
+  CExpressionValueStack *pCVar1;
+  float fVar2;
+  float fVar3;
   float fVar4;
   float fVar5;
-  float fVar6;
-  float fVar7;
-  float fVar8;
-  float fVar9;
-  float fVar10;
-  ulonglong uVar11;
-  uint uVar12;
+  bool bVar6;
+  CExpressionValue *pCVar7;
+  CExpressionValue *pCVar8;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar9;
+  uint uVar10;
+  CExpressionValue local_68 [80];
   
-  uVar12 = *(uint *)(this + 0x10);
-  if (uVar12 < 2) {
-    uVar12 = 0x1de3;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar10 = 0x1df3;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    lVar3 = *(longlong *)(this + 0x18);
-    uVar11 = (ulonglong)(uVar12 - 2);
-    if (*(int *)(lVar3 + 0x48 + uVar11 * 0x50) == 0x45) {
-      if (*(int *)(lVar3 + 0x48 + (ulonglong)(uVar12 - 1) * 0x50) == 0x45) {
-        pfVar1 = (float *)(lVar3 + uVar11 * 0x50);
-        fVar4 = pfVar1[1];
-        fVar5 = pfVar1[2];
-        fVar6 = pfVar1[3];
-        pfVar2 = (float *)(lVar3 + (ulonglong)(uVar12 - 1) * 0x50);
-        fVar7 = *pfVar2;
-        fVar8 = pfVar2[1];
-        fVar9 = pfVar2[2];
-        fVar10 = pfVar2[3];
-        *(undefined4 *)(lVar3 + 0x48 + uVar11 * 0x50) = 0x12;
-        *(undefined1 *)(lVar3 + 0x4c + uVar11 * 0x50) = 1;
-        *(float *)(lVar3 + uVar11 * 0x50) =
-             *pfVar1 * fVar7 + fVar4 * fVar8 + fVar5 * fVar9 + fVar10 * fVar6;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+    bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar9 = &s_emptyValue;
+    if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar7 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar7);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar7 = &s_emptyValue;
+    }
+    else {
+      pCVar7 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar6 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar6) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar8);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar9 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if (*(float *)(pCVar7 + 0x48) == 9.66896e-44) {
+      if (*(float *)(pCVar9 + 0x48) == 9.66896e-44) {
+        fVar2 = *(float *)pCVar9;
+        fVar3 = *(float *)(pCVar9 + 4);
+        fVar4 = *(float *)(pCVar9 + 8);
+        fVar5 = *(float *)(pCVar9 + 0xc);
+        *(float *)(pCVar7 + 0x48) = 2.52234e-44;
+        pCVar7[0x4c] = (CExpressionValue)0x1;
+        *(float *)pCVar7 =
+             *(float *)pCVar7 * fVar2 + *(float *)(pCVar7 + 4) * fVar3 +
+             *(float *)(pCVar7 + 8) * fVar4 + fVar5 * *(float *)(pCVar7 + 0xc);
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar12 = 0x1dea;
+      uVar10 = 0x1dfa;
     }
     else {
-      uVar12 = 0x1de9;
+      uVar10 = 0x1df9;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar12,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar10,(void *)0x0)
+  ;
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::LessThan

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.28|
|i_ratio|0.06|
|m_ratio|0.65|
|b_ratio|0.23|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|LessThan|LessThan|
|fullname|CExpressionValueStack::LessThan|CExpressionValueStack::LessThan|
|`refcount`|3|2|
|`length`|192|363|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1800e2500|1800c1eb0|
|sig|long __thiscall LessThan(CExpressionValueStack * this)|long __thiscall LessThan(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::LessThan Called Diff


```diff
--- CExpressionValueStack::LessThan called
+++ CExpressionValueStack::LessThan called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::LessThan Diff


```diff
--- CExpressionValueStack::LessThan
+++ CExpressionValueStack::LessThan
@@ -1,41 +1,70 @@
 
 /* public: long __cdecl CExpressionValueStack::LessThan(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::LessThan(CExpressionValueStack *this)
 
 {
-  float fVar1;
-  float *pfVar2;
-  float *pfVar3;
-  uint uVar4;
+  CExpressionValueStack *pCVar1;
+  float fVar2;
+  bool bVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar6;
+  uint uVar7;
+  CExpressionValue local_68 [80];
   
-  uVar4 = *(uint *)(this + 0x10);
-  if (uVar4 < 2) {
-    uVar4 = 0x6ce;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar7 = 0x6de;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    pfVar3 = (float *)((ulonglong)(uVar4 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar2 = (float *)((ulonglong)(uVar4 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    fVar1 = pfVar3[0x12];
-    if (fVar1 == pfVar2[0x12]) {
-      if (fVar1 == 2.52234e-44) {
-        fVar1 = *pfVar2;
-        pfVar3[0x12] = 2.38221e-44;
-        *(undefined1 *)(pfVar3 + 0x13) = 1;
-        *(bool *)pfVar3 = *pfVar3 <= fVar1 && fVar1 != *pfVar3;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if (*(float *)(pCVar4 + 0x48) == *(float *)(pCVar6 + 0x48)) {
+      if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+        fVar2 = *(float *)pCVar6;
+        *(float *)(pCVar4 + 0x48) = 2.38221e-44;
+        pCVar4[0x4c] = (CExpressionValue)0x1;
+        *pCVar4 = (CExpressionValue)(*(float *)pCVar4 <= fVar2 && fVar2 != *(float *)pCVar4);
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar4 = 0x6fe;
-      this = (CExpressionValueStack *)(ulonglong)(uint)fVar1;
+      uVar7 = 0x70e;
     }
     else {
-      uVar4 = 0x6ea;
-      this = (CExpressionValueStack *)(ulonglong)(uint)fVar1;
+      uVar7 = 0x6fa;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar4,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Inverse

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.38|
|i_ratio|0.45|
|m_ratio|0.9|
|b_ratio|0.86|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Inverse|Inverse|
|fullname|CExpressionValueStack::Inverse|CExpressionValueStack::Inverse|
|refcount|2|2|
|`length`|340|408|
|`called`|D2D1.DLL::D2D1InvertMatrix<br>D2DMatrixInverse<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2D1.DLL::D2D1InvertMatrix<br>D2DMatrixInverse<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180255894|180257d60|
|sig|long __thiscall Inverse(CExpressionValueStack * this)|long __thiscall Inverse(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Inverse Called Diff


```diff
--- CExpressionValueStack::Inverse called
+++ CExpressionValueStack::Inverse called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -2,0 +6 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -4,0 +9 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Inverse Calling Diff


```diff
--- CExpressionValueStack::Inverse calling
+++ CExpressionValueStack::Inverse calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Inverse Diff


```diff
--- CExpressionValueStack::Inverse
+++ CExpressionValueStack::Inverse
@@ -1,80 +1,99 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CExpressionValueStack::Inverse(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Inverse(CExpressionValueStack *this)
 
 {
-  int iVar1;
-  D2DMatrix *pDVar2;
-  undefined1 auStackY_a8 [32];
-  uint uVar3;
-  float local_78 [4];
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  int iVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  undefined1 auStackY_b8 [32];
+  uint uVar6;
+  float local_88 [4];
+  undefined8 local_78;
+  undefined8 uStack_70;
   undefined8 local_68;
   undefined8 uStack_60;
   undefined8 local_58;
   undefined8 uStack_50;
   undefined8 local_48;
   undefined8 uStack_40;
-  undefined8 local_38;
-  undefined8 uStack_30;
   undefined4 local_28;
   undefined4 uStack_24;
   undefined4 uStack_20;
   undefined4 uStack_1c;
   undefined8 local_18;
   ulonglong local_10;
   
-  local_10 = __security_cookie ^ (ulonglong)auStackY_a8;
+  local_10 = __security_cookie ^ (ulonglong)auStackY_b8;
   if (*(int *)(this + 0x10) == 0) {
-    uVar3 = 0xb44;
+    uVar6 = 0xb54;
   }
   else {
-    pDVar2 = (D2DMatrix *)
-             ((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (*(int *)(pDVar2 + 0x48) == 0x68) {
-      local_28 = *(undefined4 *)pDVar2;
-      uStack_24 = *(undefined4 *)(pDVar2 + 4);
-      uStack_20 = *(undefined4 *)(pDVar2 + 8);
-      uStack_1c = *(undefined4 *)(pDVar2 + 0xc);
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      pCVar5 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this = (CExpressionValueStack *)&local_78;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(int *)(pCVar5 + 0x48) == 0x68) {
+      local_28 = *(undefined4 *)pCVar5;
+      uStack_24 = *(undefined4 *)(pCVar5 + 4);
+      uStack_20 = *(undefined4 *)(pCVar5 + 8);
+      uStack_1c = *(undefined4 *)(pCVar5 + 0xc);
       this = (CExpressionValueStack *)&local_28;
-      local_18 = *(undefined8 *)(pDVar2 + 0x10);
-      iVar1 = D2D1InvertMatrix();
-      if (iVar1 != 0) {
-        *(undefined4 *)(pDVar2 + 0x48) = 0x68;
-        *(ulonglong *)pDVar2 = CONCAT44(uStack_24,local_28);
-        *(ulonglong *)(pDVar2 + 8) = CONCAT44(uStack_1c,uStack_20);
-        *(undefined8 *)(pDVar2 + 0x10) = local_18;
+      local_18 = *(undefined8 *)(pCVar5 + 0x10);
+      iVar3 = D2D1InvertMatrix();
+      if (iVar3 != 0) {
+        *(undefined4 *)(pCVar5 + 0x48) = 0x68;
+        *(ulonglong *)pCVar5 = CONCAT44(uStack_24,local_28);
+        *(ulonglong *)(pCVar5 + 8) = CONCAT44(uStack_1c,uStack_20);
+        *(undefined8 *)(pCVar5 + 0x10) = local_18;
 LAB_0:
-        pDVar2[0x4c] = (D2DMatrix)0x1;
+        *(D2DMatrix *)(pCVar5 + 0x4c) = (D2DMatrix)0x1;
         return 0;
       }
-      uVar3 = 0xb5e;
+      uVar6 = 0xb6e;
     }
-    else if (*(int *)(pDVar2 + 0x48) == 0x109) {
-      local_78[0] = 0.0;
-      this = (CExpressionValueStack *)&local_68;
-      D2DMatrixInverse((D2DMatrix *)this,local_78,pDVar2);
-      if (local_78[0] != 0.0) {
-        *(undefined8 *)pDVar2 = local_68;
-        *(undefined8 *)(pDVar2 + 8) = uStack_60;
-        *(undefined4 *)(pDVar2 + 0x48) = 0x109;
-        *(undefined8 *)(pDVar2 + 0x10) = local_58;
-        *(undefined8 *)(pDVar2 + 0x18) = uStack_50;
-        *(undefined8 *)(pDVar2 + 0x20) = local_48;
-        *(undefined8 *)(pDVar2 + 0x28) = uStack_40;
-        *(undefined8 *)(pDVar2 + 0x30) = local_38;
-        *(undefined8 *)(pDVar2 + 0x38) = uStack_30;
+    else if (*(int *)(pCVar5 + 0x48) == 0x109) {
+      local_88[0] = 0.0;
+      this = (CExpressionValueStack *)&local_78;
+      D2DMatrixInverse((D2DMatrix *)this,local_88,(D2DMatrix *)pCVar5);
+      if (local_88[0] != 0.0) {
+        *(undefined8 *)pCVar5 = local_78;
+        *(undefined8 *)(pCVar5 + 8) = uStack_70;
+        *(undefined4 *)(pCVar5 + 0x48) = 0x109;
+        *(undefined8 *)(pCVar5 + 0x10) = local_68;
+        *(undefined8 *)(pCVar5 + 0x18) = uStack_60;
+        *(undefined8 *)(pCVar5 + 0x20) = local_58;
+        *(undefined8 *)(pCVar5 + 0x28) = uStack_50;
+        *(undefined8 *)(pCVar5 + 0x30) = local_48;
+        *(undefined8 *)(pCVar5 + 0x38) = uStack_40;
         goto LAB_0;
       }
-      uVar3 = 0xb76;
+      uVar6 = 0xb86;
     }
     else {
-      uVar3 = 0xb85;
+      uVar6 = 0xb95;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar3,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Subtract

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.21|
|i_ratio|0.24|
|m_ratio|0.85|
|b_ratio|0.62|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Subtract|Subtract|
|fullname|CExpressionValueStack::Subtract|CExpressionValueStack::Subtract|
|`refcount`|3|2|
|`length`|643|813|
|`called`|D2DMatrix::operator-<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrix::operator-<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1800168d4|180018bd8|
|sig|long __thiscall Subtract(CExpressionValueStack * this)|long __thiscall Subtract(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Subtract Called Diff


```diff
--- CExpressionValueStack::Subtract called
+++ CExpressionValueStack::Subtract called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Subtract Diff


```diff
--- CExpressionValueStack::Subtract
+++ CExpressionValueStack::Subtract
@@ -1,112 +1,142 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CExpressionValueStack::Subtract(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Subtract(CExpressionValueStack *this)
 
 {
-  float fVar1;
+  CExpressionValueStack *pCVar1;
   float fVar2;
   float fVar3;
   float fVar4;
   float fVar5;
   float fVar6;
-  undefined8 uVar7;
-  float *pfVar8;
-  undefined8 *puVar9;
-  D2DMatrix *this_00;
-  undefined1 auStackY_a8 [32];
-  uint uVar10;
-  D2DMatrix local_68 [64];
-  ulonglong local_28;
+  float fVar7;
+  undefined8 uVar8;
+  bool bVar9;
+  CExpressionValue *pCVar10;
+  CExpressionValue *pCVar11;
+  undefined8 *puVar12;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar13;
+  undefined1 auStackY_c8 [32];
+  uint uVar14;
+  CExpressionValue local_88 [80];
+  ulonglong local_38;
   
-  local_28 = __security_cookie ^ (ulonglong)auStackY_a8;
-  uVar10 = *(uint *)(this + 0x10);
-  if (uVar10 < 2) {
-    uVar10 = 0x3bd;
+  local_38 = __security_cookie ^ (ulonglong)auStackY_c8;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar14 = 0x3cd;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    this_00 = (D2DMatrix *)((ulonglong)(uVar10 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar8 = (float *)((ulonglong)(uVar10 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    fVar6 = *(float *)(this_00 + 0x48);
-    if (fVar6 == pfVar8[0x12]) {
-      if (fVar6 == 2.52234e-44) {
-        fVar6 = *pfVar8;
-        *(undefined4 *)(this_00 + 0x48) = 0x12;
-        *(float *)this_00 = *(float *)this_00 - fVar6;
+    bVar9 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar13 = &s_emptyValue;
+    if ((bVar9) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar10 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_88);
+      CExpressionValue::operator=(&s_emptyValue,pCVar10);
+      CExpressionValue::~CExpressionValue(local_88);
+      pCVar10 = &s_emptyValue;
+    }
+    else {
+      pCVar10 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar9 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar9) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar11 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_88);
+      CExpressionValue::operator=(&s_emptyValue,pCVar11);
+      this_00 = (DynArray<CExpressionValue,1> *)local_88;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar13 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    fVar7 = *(float *)(pCVar10 + 0x48);
+    if (fVar7 == *(float *)(pCVar13 + 0x48)) {
+      if (fVar7 == 2.52234e-44) {
+        fVar7 = *(float *)pCVar13;
+        *(undefined4 *)(pCVar10 + 0x48) = 0x12;
+        *(float *)pCVar10 = *(float *)pCVar10 - fVar7;
       }
-      else if (fVar6 == 4.90454e-44) {
-        fVar6 = *pfVar8;
-        fVar1 = pfVar8[1];
-        *(undefined4 *)(this_00 + 0x48) = 0x23;
-        *(float *)this_00 = *(float *)this_00 - fVar6;
-        *(float *)(this_00 + 4) = *(float *)(this_00 + 4) - fVar1;
+      else if (fVar7 == 4.90454e-44) {
+        fVar7 = *(float *)pCVar13;
+        fVar2 = *(float *)(pCVar13 + 4);
+        *(undefined4 *)(pCVar10 + 0x48) = 0x23;
+        *(float *)pCVar10 = *(float *)pCVar10 - fVar7;
+        *(float *)(pCVar10 + 4) = *(float *)(pCVar10 + 4) - fVar2;
       }
-      else if (fVar6 == 7.28675e-44) {
-        fVar6 = *pfVar8;
-        fVar1 = pfVar8[1];
-        fVar2 = pfVar8[2];
-        *(undefined4 *)(this_00 + 0x48) = 0x34;
-        *(float *)this_00 = *(float *)this_00 - fVar6;
-        *(float *)(this_00 + 4) = *(float *)(this_00 + 4) - fVar1;
-        *(float *)(this_00 + 8) = *(float *)(this_00 + 8) - fVar2;
+      else if (fVar7 == 7.28675e-44) {
+        fVar7 = *(float *)pCVar13;
+        fVar2 = *(float *)(pCVar13 + 4);
+        fVar3 = *(float *)(pCVar13 + 8);
+        *(undefined4 *)(pCVar10 + 0x48) = 0x34;
+        *(float *)pCVar10 = *(float *)pCVar10 - fVar7;
+        *(float *)(pCVar10 + 4) = *(float *)(pCVar10 + 4) - fVar2;
+        *(float *)(pCVar10 + 8) = *(float *)(pCVar10 + 8) - fVar3;
       }
-      else if (fVar6 == 9.66896e-44) {
-        fVar6 = *pfVar8;
-        fVar1 = pfVar8[1];
-        fVar2 = pfVar8[2];
-        fVar3 = pfVar8[3];
-        *(undefined4 *)(this_00 + 0x48) = 0x45;
-        *(ulonglong *)this_00 = CONCAT44(*(float *)(this_00 + 4) - fVar1,*(float *)this_00 - fVar6);
-        *(ulonglong *)(this_00 + 8) =
-             CONCAT44(*(float *)(this_00 + 0xc) - fVar3,*(float *)(this_00 + 8) - fVar2);
+      else if (fVar7 == 9.66896e-44) {
+        fVar7 = *(float *)pCVar13;
+        fVar2 = *(float *)(pCVar13 + 4);
+        fVar3 = *(float *)(pCVar13 + 8);
+        fVar4 = *(float *)(pCVar13 + 0xc);
+        *(undefined4 *)(pCVar10 + 0x48) = 0x45;
+        *(ulonglong *)pCVar10 = CONCAT44(*(float *)(pCVar10 + 4) - fVar2,*(float *)pCVar10 - fVar7);
+        *(ulonglong *)(pCVar10 + 8) =
+             CONCAT44(*(float *)(pCVar10 + 0xc) - fVar4,*(float *)(pCVar10 + 8) - fVar3);
       }
-      else if (fVar6 == 1.45735e-43) {
-        fVar6 = *pfVar8;
-        fVar1 = pfVar8[1];
-        fVar2 = pfVar8[2];
-        fVar3 = pfVar8[3];
-        fVar4 = pfVar8[4];
-        fVar5 = pfVar8[5];
-        *(undefined4 *)(this_00 + 0x48) = 0x68;
-        *(float *)this_00 = *(float *)this_00 - fVar6;
-        *(float *)(this_00 + 4) = *(float *)(this_00 + 4) - fVar1;
-        *(float *)(this_00 + 8) = *(float *)(this_00 + 8) - fVar2;
-        *(float *)(this_00 + 0xc) = *(float *)(this_00 + 0xc) - fVar3;
-        *(float *)(this_00 + 0x10) = *(float *)(this_00 + 0x10) - fVar4;
-        *(float *)(this_00 + 0x14) = *(float *)(this_00 + 0x14) - fVar5;
+      else if (fVar7 == 1.45735e-43) {
+        fVar7 = *(float *)pCVar13;
+        fVar2 = *(float *)(pCVar13 + 4);
+        fVar3 = *(float *)(pCVar13 + 8);
+        fVar4 = *(float *)(pCVar13 + 0xc);
+        fVar5 = *(float *)(pCVar13 + 0x10);
+        fVar6 = *(float *)(pCVar13 + 0x14);
+        *(undefined4 *)(pCVar10 + 0x48) = 0x68;
+        *(float *)pCVar10 = *(float *)pCVar10 - fVar7;
+        *(float *)(pCVar10 + 4) = *(float *)(pCVar10 + 4) - fVar2;
+        *(float *)(pCVar10 + 8) = *(float *)(pCVar10 + 8) - fVar3;
+        *(float *)(pCVar10 + 0xc) = *(float *)(pCVar10 + 0xc) - fVar4;
+        *(float *)(pCVar10 + 0x10) = *(float *)(pCVar10 + 0x10) - fVar5;
+        *(float *)(pCVar10 + 0x14) = *(float *)(pCVar10 + 0x14) - fVar6;
       }
       else {
-        if (fVar6 != 3.71344e-43) {
-          uVar10 = 0x40a;
-          this = (CExpressionValueStack *)(ulonglong)(uint)fVar6;
+        if (fVar7 != 3.71344e-43) {
+          uVar14 = 0x41a;
           goto LAB_0;
         }
-        puVar9 = (undefined8 *)D2DMatrix::operator-(this_00,local_68);
-        *(undefined4 *)(this_00 + 0x48) = 0x109;
-        uVar7 = puVar9[1];
-        *(undefined8 *)this_00 = *puVar9;
-        *(undefined8 *)(this_00 + 8) = uVar7;
-        uVar7 = puVar9[3];
-        *(undefined8 *)(this_00 + 0x10) = puVar9[2];
-        *(undefined8 *)(this_00 + 0x18) = uVar7;
-        uVar7 = puVar9[5];
-        *(undefined8 *)(this_00 + 0x20) = puVar9[4];
-        *(undefined8 *)(this_00 + 0x28) = uVar7;
-        uVar7 = puVar9[7];
-        *(undefined8 *)(this_00 + 0x30) = puVar9[6];
-        *(undefined8 *)(this_00 + 0x38) = uVar7;
+        puVar12 = (undefined8 *)D2DMatrix::operator-((D2DMatrix *)pCVar10,(D2DMatrix *)local_88);
+        *(undefined4 *)(pCVar10 + 0x48) = 0x109;
+        uVar8 = puVar12[1];
+        *(undefined8 *)pCVar10 = *puVar12;
+        *(undefined8 *)(pCVar10 + 8) = uVar8;
+        uVar8 = puVar12[3];
+        *(undefined8 *)(pCVar10 + 0x10) = puVar12[2];
+        *(undefined8 *)(pCVar10 + 0x18) = uVar8;
+        uVar8 = puVar12[5];
+        *(undefined8 *)(pCVar10 + 0x20) = puVar12[4];
+        *(undefined8 *)(pCVar10 + 0x28) = uVar8;
+        uVar8 = puVar12[7];
+        *(undefined8 *)(pCVar10 + 0x30) = puVar12[6];
+        *(undefined8 *)(pCVar10 + 0x38) = uVar8;
       }
-      this_00[0x4c] = (D2DMatrix)0x1;
-      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+      *(D2DMatrix *)(pCVar10 + 0x4c) = (D2DMatrix)0x1;
+      *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
       return 0;
     }
-    uVar10 = 0x3d4;
-    this = (CExpressionValueStack *)(ulonglong)(uint)fVar6;
+    uVar14 = 0x3e4;
   }
 LAB_0:
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar10,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar14,(void *)0x0)
+  ;
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Vector3Cross

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.23|
|i_ratio|0.11|
|m_ratio|0.67|
|b_ratio|0.63|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Vector3Cross|Vector3Cross|
|fullname|CExpressionValueStack::Vector3Cross|CExpressionValueStack::Vector3Cross|
|refcount|2|2|
|`length`|247|434|
|`called`|D3DXVec3Cross<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXVec3Cross<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180259524|18025d768|
|sig|long __thiscall Vector3Cross(CExpressionValueStack * this)|long __thiscall Vector3Cross(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Vector3Cross Called Diff


```diff
--- CExpressionValueStack::Vector3Cross called
+++ CExpressionValueStack::Vector3Cross called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Vector3Cross Calling Diff


```diff
--- CExpressionValueStack::Vector3Cross calling
+++ CExpressionValueStack::Vector3Cross calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Vector3Cross Diff


```diff
--- CExpressionValueStack::Vector3Cross
+++ CExpressionValueStack::Vector3Cross
@@ -1,52 +1,81 @@
 
 /* public: long __cdecl CExpressionValueStack::Vector3Cross(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Vector3Cross(CExpressionValueStack *this)
 
 {
-  ulonglong uVar1;
-  ulonglong uVar2;
-  longlong lVar3;
-  longlong lVar4;
-  uint uVar5;
-  undefined8 local_38;
-  undefined4 local_30;
-  undefined8 local_28;
-  undefined4 local_20;
-  undefined8 local_18;
-  undefined4 local_10;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  uint uVar6;
+  undefined8 local_98;
+  undefined4 local_90;
+  undefined8 local_88;
+  undefined4 local_80;
+  undefined8 local_78;
+  undefined4 local_70;
+  CExpressionValue local_68 [80];
   
-  uVar5 = *(uint *)(this + 0x10);
-  if (uVar5 < 2) {
-    uVar5 = 0x1d08;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar6 = 0x1d18;
+    pCVar4 = (CExpressionValue *)this;
   }
   else {
-    lVar3 = *(longlong *)(this + 0x18);
-    uVar1 = (ulonglong)(uVar5 - 2);
-    uVar2 = (ulonglong)(uVar5 - 1);
-    lVar4 = uVar1 * 10;
-    if (*(int *)(lVar3 + 0x48 + uVar1 * 0x50) == 0x34) {
-      if (*(int *)(lVar3 + 0x48 + uVar2 * 0x50) == 0x34) {
-        local_28 = *(undefined8 *)(lVar3 + uVar1 * 0x50);
-        local_20 = *(undefined4 *)(lVar3 + 8 + uVar1 * 0x50);
-        local_38 = *(undefined8 *)(lVar3 + uVar2 * 0x50);
-        local_30 = *(undefined4 *)(lVar3 + 8 + uVar2 * 0x50);
-        D3DXVec3Cross((D2DVector3 *)&local_18,(D2DVector3 *)&local_28,(D2DVector3 *)&local_38);
-        *(undefined4 *)(lVar3 + 0x48 + lVar4 * 8) = 0x34;
-        *(undefined8 *)(lVar3 + lVar4 * 8) = local_18;
-        *(undefined4 *)(lVar3 + 8 + lVar4 * 8) = local_10;
-        *(undefined1 *)(lVar3 + 0x4c + lVar4 * 8) = 1;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar4 = (CExpressionValue *)(this + 0x18);
+    pCVar5 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar4,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      pCVar4 = local_68;
+      CExpressionValue::~CExpressionValue(pCVar4);
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar4,*(uint *)pCVar1 - 1);
+    }
+    if (*(int *)(pCVar3 + 0x48) == 0x34) {
+      if (*(int *)(pCVar5 + 0x48) == 0x34) {
+        local_88 = *(undefined8 *)pCVar3;
+        local_80 = *(undefined4 *)(pCVar3 + 8);
+        local_98 = *(undefined8 *)pCVar5;
+        local_90 = *(undefined4 *)(pCVar5 + 8);
+        D3DXVec3Cross((D2DVector3 *)&local_78,(D2DVector3 *)&local_88,(D2DVector3 *)&local_98);
+        *(undefined4 *)(pCVar3 + 0x48) = 0x34;
+        *(undefined8 *)pCVar3 = local_78;
+        *(undefined4 *)(pCVar3 + 8) = local_70;
+        pCVar3[0x4c] = (CExpressionValue)0x1;
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar5 = 0x1d0f;
+      uVar6 = 0x1d1f;
     }
     else {
-      uVar5 = 0x1d0e;
+      uVar6 = 0x1d1e;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
+            ((ulong)pCVar4,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::ColorLerpHsl

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,calling,called|
|ratio|0.21|
|i_ratio|0.22|
|m_ratio|0.8|
|b_ratio|0.61|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|ColorLerpHsl|ColorLerpHsl|
|fullname|CExpressionValueStack::ColorLerpHsl|CExpressionValueStack::ColorLerpHsl|
|`refcount`|4|3|
|`length`|550|768|
|`called`|ColorSpaceHelpers::Color_HSLAfromRGBA<br>ColorSpaceHelpers::Color_RGBAfromHSLA<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>ColorSpaceHelpers::Color_HSLAfromRGBA<br>ColorSpaceHelpers::Color_RGBAfromHSLA<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|CExpression::CalculateValueWorker<br>switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1800152a4|180015e44|
|sig|long __thiscall ColorLerpHsl(CExpressionValueStack * this)|long __thiscall ColorLerpHsl(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::ColorLerpHsl Called Diff


```diff
--- CExpressionValueStack::ColorLerpHsl called
+++ CExpressionValueStack::ColorLerpHsl called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -2,0 +6 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::ColorLerpHsl Calling Diff


```diff
--- CExpressionValueStack::ColorLerpHsl calling
+++ CExpressionValueStack::ColorLerpHsl calling
@@ -2 +1,0 @@
-switchD_180071930::caseD_0
```


### CExpressionValueStack::ColorLerpHsl Diff


```diff
--- CExpressionValueStack::ColorLerpHsl
+++ CExpressionValueStack::ColorLerpHsl
@@ -1,81 +1,126 @@
 
 /* public: long __cdecl CExpressionValueStack::ColorLerpHsl(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::ColorLerpHsl(CExpressionValueStack *this)
 
 {
-  float fVar1;
-  float *pfVar2;
-  float *pfVar3;
-  float *pfVar4;
-  float fVar5;
-  float fVar6;
-  float fVar7;
+  CExpressionValueStack *pCVar1;
+  float fVar2;
+  bool bVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
+  CExpressionValue *pCVar7;
   float fVar8;
   float fVar9;
-  uint uVar10;
-  float local_48;
-  float local_44;
-  float local_40;
-  float local_3c;
-  undefined8 local_38;
-  undefined8 uStack_30;
+  float fVar10;
+  float fVar11;
+  float fVar12;
+  uint uVar13;
+  float local_b8;
+  float local_b4;
+  float local_b0;
+  float local_ac;
+  undefined8 local_a8;
+  undefined8 uStack_a0;
+  CExpressionValue local_98 [112];
   
-  uVar10 = *(uint *)(this + 0x10);
-  if (uVar10 < 3) {
-    uVar10 = 0xc5f;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 3) {
+    uVar13 = 0xc6f;
+    pCVar6 = (CExpressionValue *)this;
   }
   else {
-    pfVar4 = (float *)((ulonglong)(uVar10 - 3) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar3 = (float *)((ulonglong)(uVar10 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar2 = (float *)((ulonglong)(uVar10 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    fVar5 = pfVar4[0x12];
-    fVar9 = *pfVar2;
-    if ((pfVar2[0x12] == 2.52234e-44) && (fVar5 == pfVar3[0x12])) {
-      if (fVar5 == 9.80909e-44) {
-        fVar5 = *pfVar3;
-        fVar6 = pfVar3[1];
-        fVar7 = pfVar3[2];
-        fVar8 = pfVar3[3];
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar6 = (CExpressionValue *)(this + 0x18);
+    pCVar7 = &s_emptyValue;
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_98);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar6,*(uint *)pCVar1 - 3);
+    }
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      CExpressionValue::~CExpressionValue(local_98);
+      pCVar5 = &s_emptyValue;
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar6,*(uint *)pCVar1 - 2);
+    }
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar6 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+      CExpressionValue::operator=(&s_emptyValue,pCVar6);
+      pCVar6 = local_98;
+      CExpressionValue::~CExpressionValue(pCVar6);
+    }
+    else {
+      pCVar7 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar6,*(uint *)pCVar1 - 1);
+    }
+    fVar12 = *(float *)pCVar7;
+    if ((*(float *)(pCVar7 + 0x48) == 2.52234e-44) &&
+       (*(float *)(pCVar4 + 0x48) == *(float *)(pCVar5 + 0x48))) {
+      if (*(float *)(pCVar4 + 0x48) == 9.80909e-44) {
+        fVar8 = *(float *)pCVar5;
+        fVar9 = *(float *)(pCVar5 + 4);
+        fVar10 = *(float *)(pCVar5 + 8);
+        fVar11 = *(float *)(pCVar5 + 0xc);
         ColorSpaceHelpers::Color_HSLAfromRGBA
-                  (*pfVar4,pfVar4[1],pfVar4[2],pfVar4[3],&local_48,&local_44,&local_40,&local_3c);
+                  (*(float *)pCVar4,*(float *)(pCVar4 + 4),*(float *)(pCVar4 + 8),
+                   *(float *)(pCVar4 + 0xc),&local_b8,&local_b4,&local_b0,&local_ac);
         ColorSpaceHelpers::Color_HSLAfromRGBA
-                  (fVar5,fVar6,fVar7,fVar8,(float *)&local_38,(float *)((longlong)&local_38 + 4),
-                   (float *)&uStack_30,(float *)((longlong)&uStack_30 + 4));
-        fVar8 = (float)local_38 - local_48;
-        fVar5 = local_38._4_4_ - local_44;
-        fVar6 = (float)uStack_30 - local_40;
-        fVar7 = uStack_30._4_4_ - local_3c;
-        if (1.0 <= fVar9) {
-          fVar9 = 1.0;
+                  (fVar8,fVar9,fVar10,fVar11,(float *)&local_a8,(float *)((longlong)&local_a8 + 4),
+                   (float *)&uStack_a0,(float *)((longlong)&uStack_a0 + 4));
+        fVar11 = (float)local_a8 - local_b8;
+        fVar8 = local_a8._4_4_ - local_b4;
+        fVar9 = (float)uStack_a0 - local_b0;
+        fVar10 = uStack_a0._4_4_ - local_ac;
+        if (1.0 <= fVar12) {
+          fVar12 = 1.0;
         }
-        local_38 = 0;
-        uStack_30 = 0;
-        fVar1 = 0.0;
-        if (0.0 <= fVar9) {
-          fVar1 = fVar9;
+        local_a8 = 0;
+        uStack_a0 = 0;
+        fVar2 = 0.0;
+        if (0.0 <= fVar12) {
+          fVar2 = fVar12;
         }
         ColorSpaceHelpers::Color_RGBAfromHSLA
-                  (fVar8 * fVar1 + local_48,fVar5 * fVar1 + local_44,fVar6 * fVar1 + local_40,
-                   fVar7 * fVar1 + local_3c,(float *)&local_38,(float *)((longlong)&local_38 + 4),
-                   (float *)&uStack_30,(float *)((longlong)&uStack_30 + 4));
-        pfVar4[0x12] = 9.80909e-44;
-        *(undefined1 *)(pfVar4 + 0x13) = 1;
-        *(undefined8 *)pfVar4 = local_38;
-        *(undefined8 *)(pfVar4 + 2) = uStack_30;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -2;
+                  (fVar11 * fVar2 + local_b8,fVar8 * fVar2 + local_b4,fVar9 * fVar2 + local_b0,
+                   fVar10 * fVar2 + local_ac,(float *)&local_a8,(float *)((longlong)&local_a8 + 4),
+                   (float *)&uStack_a0,(float *)((longlong)&uStack_a0 + 4));
+        *(float *)(pCVar4 + 0x48) = 9.80909e-44;
+        pCVar4[0x4c] = (CExpressionValue)0x1;
+        *(undefined8 *)pCVar4 = local_a8;
+        *(undefined8 *)(pCVar4 + 8) = uStack_a0;
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 2;
         return 0;
       }
-      uVar10 = 0xcad;
-      this = (CExpressionValueStack *)(ulonglong)(uint)fVar5;
+      uVar13 = 0xcbd;
     }
     else {
-      uVar10 = 0xc79;
-      this = (CExpressionValueStack *)(ulonglong)(uint)fVar5;
+      uVar13 = 0xc89;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar10,(void *)0x0);
+            ((ulong)pCVar6,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar13,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Distance

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.24|
|i_ratio|0.3|
|m_ratio|0.83|
|b_ratio|0.8|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Distance|Distance|
|fullname|CExpressionValueStack::Distance|CExpressionValueStack::Distance|
|refcount|2|2|
|`length`|472|619|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>sqrtf|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>sqrtf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180255148|18025733c|
|sig|long __thiscall Distance(CExpressionValueStack * this)|long __thiscall Distance(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Distance Called Diff


```diff
--- CExpressionValueStack::Distance called
+++ CExpressionValueStack::Distance called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Distance Calling Diff


```diff
--- CExpressionValueStack::Distance calling
+++ CExpressionValueStack::Distance calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Distance Diff


```diff
--- CExpressionValueStack::Distance
+++ CExpressionValueStack::Distance
@@ -1,88 +1,109 @@
 
 /* public: long __cdecl CExpressionValueStack::Distance(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Distance(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  float *pfVar2;
-  undefined8 uVar3;
-  undefined8 uVar4;
-  int iVar5;
-  longlong lVar6;
-  ulonglong uVar7;
-  ulonglong uVar8;
-  CExpressionValueStack *pCVar9;
-  float fVar10;
-  float fVar11;
-  uint uVar12;
-  float local_28;
-  float fStack_24;
-  float local_18;
-  float fStack_14;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar5;
+  float fVar6;
+  float fVar7;
+  uint uVar8;
+  float local_88;
+  float fStack_84;
+  float local_78;
+  float fStack_74;
+  CExpressionValue local_68 [80];
   
-  uVar12 = *(uint *)(this + 0x10);
-  pCVar9 = this;
-  if (uVar12 < 2) {
-    uVar12 = 0xde1;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar8 = 0xdf1;
 LAB_0:
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)pCVar9,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar12,(void *)0x0
-              );
+              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar8,(void *)0x0);
     return -0x7fffbffb;
   }
-  lVar6 = *(longlong *)(this + 0x18);
-  uVar7 = (ulonglong)(uVar12 - 2);
-  uVar8 = (ulonglong)(uVar12 - 1);
-  iVar5 = *(int *)(lVar6 + 0x48 + uVar7 * 0x50);
-  if (iVar5 != *(int *)(lVar6 + 0x48 + uVar8 * 0x50)) {
-    uVar12 = 0xdf8;
+  bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+  pCVar5 = &s_emptyValue;
+  if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+    pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+    CExpressionValue::operator=(&s_emptyValue,pCVar3);
+    CExpressionValue::~CExpressionValue(local_68);
+    pCVar3 = &s_emptyValue;
+  }
+  else {
+    pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+  }
+  bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+    pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+    CExpressionValue::operator=(&s_emptyValue,pCVar4);
+    this = (CExpressionValueStack *)local_68;
+    CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+  }
+  else {
+    pCVar5 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    this = (CExpressionValueStack *)this_00;
+  }
+  fVar7 = *(float *)(pCVar3 + 0x48);
+  if (fVar7 != *(float *)(pCVar5 + 0x48)) {
+    uVar8 = 0xe08;
     goto LAB_0;
   }
-  pCVar9 = (CExpressionValueStack *)0x12;
-  if (iVar5 == 0x12) {
-    fVar11 = *(float *)(lVar6 + uVar8 * 0x50);
-    *(undefined4 *)(lVar6 + 0x48 + uVar7 * 0x50) = 0x12;
-    fVar11 = ABS(*(float *)(lVar6 + uVar7 * 0x50) - fVar11);
+  this = (CExpressionValueStack *)0x12;
+  if (fVar7 == 2.52234e-44) {
+    fVar7 = *(float *)pCVar5;
+    *(float *)(pCVar3 + 0x48) = 2.52234e-44;
+    fVar7 = ABS(*(float *)pCVar3 - fVar7);
     goto LAB_1;
   }
-  if (iVar5 == 0x23) {
-    fVar11 = *(float *)(lVar6 + 4 + uVar7 * 0x50) - *(float *)(lVar6 + 4 + uVar8 * 0x50);
-    fVar10 = *(float *)(lVar6 + uVar7 * 0x50) - *(float *)(lVar6 + uVar8 * 0x50);
-    fVar11 = fVar11 * fVar11;
+  if (fVar7 == 4.90454e-44) {
+    fVar6 = *(float *)pCVar3 - *(float *)pCVar5;
+    fVar7 = (*(float *)(pCVar3 + 4) - *(float *)(pCVar5 + 4)) *
+            (*(float *)(pCVar3 + 4) - *(float *)(pCVar5 + 4));
 LAB_2:
-    fVar11 = fVar11 + fVar10 * fVar10;
+    fVar7 = fVar7 + fVar6 * fVar6;
   }
   else {
-    if (iVar5 == 0x34) {
-      uVar3 = *(undefined8 *)(lVar6 + uVar7 * 0x50);
-      uVar4 = *(undefined8 *)(lVar6 + uVar8 * 0x50);
-      local_28 = (float)uVar3;
-      fStack_24 = (float)((ulonglong)uVar3 >> 0x20);
-      fStack_14 = (float)((ulonglong)uVar4 >> 0x20);
-      local_18 = (float)uVar4;
-      fVar10 = *(float *)(lVar6 + 8 + uVar7 * 0x50) - *(float *)(lVar6 + 8 + uVar8 * 0x50);
-      fVar11 = (fStack_24 - fStack_14) * (fStack_24 - fStack_14) +
-               (local_28 - local_18) * (local_28 - local_18);
+    if (fVar7 == 7.28675e-44) {
+      local_88 = (float)*(undefined8 *)pCVar3;
+      fStack_84 = (float)((ulonglong)*(undefined8 *)pCVar3 >> 0x20);
+      fStack_74 = (float)((ulonglong)*(undefined8 *)pCVar5 >> 0x20);
+      local_78 = (float)*(undefined8 *)pCVar5;
+      fVar6 = *(float *)(pCVar3 + 8) - *(float *)(pCVar5 + 8);
+      fVar7 = (fStack_84 - fStack_74) * (fStack_84 - fStack_74) +
+              (local_88 - local_78) * (local_88 - local_78);
       goto LAB_2;
     }
-    if (iVar5 != 0x45) {
-      uVar12 = 0xe34;
+    if (fVar7 != 9.66896e-44) {
+      uVar8 = 0xe44;
       goto LAB_0;
     }
-    pfVar1 = (float *)(lVar6 + uVar7 * 0x50);
-    pfVar2 = (float *)(lVar6 + uVar8 * 0x50);
-    fVar11 = (pfVar1[1] - pfVar2[1]) * (pfVar1[1] - pfVar2[1]) +
-             (*pfVar1 - *pfVar2) * (*pfVar1 - *pfVar2) +
-             (pfVar1[2] - pfVar2[2]) * (pfVar1[2] - pfVar2[2]) +
-             (pfVar1[3] - pfVar2[3]) * (pfVar1[3] - pfVar2[3]);
+    fVar7 = (*(float *)(pCVar3 + 4) - *(float *)(pCVar5 + 4)) *
+            (*(float *)(pCVar3 + 4) - *(float *)(pCVar5 + 4)) +
+            (*(float *)pCVar3 - *(float *)pCVar5) * (*(float *)pCVar3 - *(float *)pCVar5) +
+            (*(float *)(pCVar3 + 8) - *(float *)(pCVar5 + 8)) *
+            (*(float *)(pCVar3 + 8) - *(float *)(pCVar5 + 8)) +
+            (*(float *)(pCVar3 + 0xc) - *(float *)(pCVar5 + 0xc)) *
+            (*(float *)(pCVar3 + 0xc) - *(float *)(pCVar5 + 0xc));
   }
-  *(undefined4 *)(lVar6 + 0x48 + uVar7 * 0x50) = 0x12;
-  fVar11 = sqrtf(fVar11);
+  *(float *)(pCVar3 + 0x48) = 2.52234e-44;
+  fVar7 = sqrtf(fVar7);
 LAB_1:
-  *(float *)(lVar6 + uVar7 * 0x50) = fVar11;
-  *(undefined1 *)(lVar6 + 0x4c + uVar7 * 0x50) = 1;
-  *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+  *(float *)pCVar3 = fVar7;
+  pCVar3[0x4c] = (CExpressionValue)0x1;
+  *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
   return 0;
 }
 

```


## CExpressionValueStack::Matrix4x4FromTranslation

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.18|
|i_ratio|0.03|
|m_ratio|0.7|
|b_ratio|0.52|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix4x4FromTranslation|Matrix4x4FromTranslation|
|fullname|CExpressionValueStack::Matrix4x4FromTranslation|CExpressionValueStack::Matrix4x4FromTranslation|
|`refcount`|3|2|
|`length`|473|743|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|2|2|
|`address`|1800e412c|1800bdc4c|
|sig|long __thiscall Matrix4x4FromTranslation(CExpressionValueStack * this, uint param_1)|long __thiscall Matrix4x4FromTranslation(CExpressionValueStack * this, uint param_1)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix4x4FromTranslation Called Diff


```diff
--- CExpressionValueStack::Matrix4x4FromTranslation called
+++ CExpressionValueStack::Matrix4x4FromTranslation called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix4x4FromTranslation Diff


```diff
--- CExpressionValueStack::Matrix4x4FromTranslation
+++ CExpressionValueStack::Matrix4x4FromTranslation
@@ -1,89 +1,155 @@
 
 /* public: long __cdecl CExpressionValueStack::Matrix4x4FromTranslation(unsigned int) __ptr64 */
 
 long __thiscall
 CExpressionValueStack::Matrix4x4FromTranslation(CExpressionValueStack *this,uint param_1)
 
 {
-  undefined4 uVar1;
+  CExpressionValueStack *pCVar1;
   undefined4 uVar2;
   undefined4 uVar3;
-  longlong lVar4;
+  undefined4 uVar4;
   bool bVar5;
-  ulonglong uVar6;
-  CExpressionValueStack *pCVar7;
-  long lVar8;
-  uint uVar9;
-  undefined4 local_18;
-  undefined4 uStack_14;
+  CExpressionValue *pCVar6;
+  CExpressionValue *pCVar7;
+  CExpressionValue *pCVar8;
+  long lVar9;
+  CExpressionValue *pCVar10;
+  char local_res8;
+  CExpressionValue *local_res18;
+  uint uVar11;
+  void *pvVar12;
+  undefined4 local_98;
+  undefined4 uStack_94;
+  CExpressionValue local_88 [80];
   
-  uVar9 = *(uint *)(this + 0x10);
-  bVar5 = false;
-  if (uVar9 < param_1) {
-    uVar9 = 0x1668;
+  pvVar12 = (void *)0x0;
+  pCVar1 = this + 0x10;
+  local_res8 = '\0';
+  pCVar6 = (CExpressionValue *)this;
+  if (*(uint *)pCVar1 < param_1) {
+    pvVar12 = (void *)0x0;
+    uVar11 = 0x1678;
 LAB_0:
-    lVar8 = -0x7fffbffb;
+    lVar9 = -0x7fffbffb;
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar9,(void *)0x0);
+              ((ulong)pCVar6,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar11,pvVar12);
   }
   else {
     if (param_1 == 1) {
-      pCVar7 = *(CExpressionValueStack **)(this + 0x18);
-      uVar6 = (ulonglong)(uVar9 - 1);
-      if (*(int *)(pCVar7 + uVar6 * 0x50 + 0x48) == 0x34) {
-        uVar3 = *(undefined4 *)(pCVar7 + uVar6 * 0x50 + 8);
-        local_18 = (undefined4)*(undefined8 *)(pCVar7 + uVar6 * 0x50);
-        uStack_14 = (undefined4)((ulonglong)*(undefined8 *)(pCVar7 + uVar6 * 0x50) >> 0x20);
-        *(undefined4 *)(pCVar7 + uVar6 * 0x50 + 0x48) = 0x109;
-        *(undefined8 *)(pCVar7 + uVar6 * 0x50) = 0x3f800000;
-        *(undefined8 *)(pCVar7 + uVar6 * 0x50 + 8) = 0;
-        *(undefined4 *)(pCVar7 + uVar6 * 0x50 + 0x10) = 0;
-        *(undefined8 *)(pCVar7 + uVar6 * 0x50 + 0x14) = 0x3f800000;
-        *(undefined8 *)(pCVar7 + uVar6 * 0x50 + 0x1c) = 0;
-        *(undefined4 *)(pCVar7 + uVar6 * 0x50 + 0x24) = 0;
-        *(undefined8 *)(pCVar7 + uVar6 * 0x50 + 0x28) = 0x3f800000;
-        *(undefined4 *)(pCVar7 + uVar6 * 0x50 + 0x30) = local_18;
-        *(undefined4 *)(pCVar7 + uVar6 * 0x50 + 0x34) = uStack_14;
-        *(undefined4 *)(pCVar7 + uVar6 * 0x50 + 0x38) = uVar3;
-        *(undefined4 *)(pCVar7 + uVar6 * 0x50 + 0x3c) = 0x3f800000;
-        pCVar7[uVar6 * 0x50 + 0x4c] = (CExpressionValueStack)0x1;
-        bVar5 = true;
+      bVar5 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      pvVar12 = (void *)0x0;
+      if ((bVar5) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar6 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_88);
+        pCVar10 = &s_emptyValue;
+        CExpressionValue::operator=(&s_emptyValue,pCVar6);
+        pCVar6 = local_88;
+        CExpressionValue::~CExpressionValue(pCVar6);
+        pvVar12 = (void *)0x0;
+      }
+      else {
+        pCVar6 = (CExpressionValue *)(this + 0x18);
+        pCVar10 = DynArray<CExpressionValue,1>::operator[]
+                            ((DynArray<CExpressionValue,1> *)pCVar6,*(uint *)pCVar1 - 1);
+      }
+      if (*(int *)(pCVar10 + 0x48) == 0x34) {
+        uVar4 = *(undefined4 *)(pCVar10 + 8);
+        local_98 = (undefined4)*(undefined8 *)pCVar10;
+        uStack_94 = (undefined4)((ulonglong)*(undefined8 *)pCVar10 >> 0x20);
+        *(undefined4 *)(pCVar10 + 0x48) = 0x109;
+        *(undefined8 *)pCVar10 = 0x3f800000;
+        *(undefined8 *)(pCVar10 + 8) = 0;
+        *(int *)(pCVar10 + 0x10) = (int)pvVar12;
+        *(undefined8 *)(pCVar10 + 0x14) = 0x3f800000;
+        *(undefined8 *)(pCVar10 + 0x1c) = 0;
+        *(int *)(pCVar10 + 0x24) = (int)pvVar12;
+        *(undefined8 *)(pCVar10 + 0x28) = 0x3f800000;
+        *(undefined4 *)(pCVar10 + 0x30) = local_98;
+        *(undefined4 *)(pCVar10 + 0x34) = uStack_94;
+        *(undefined4 *)(pCVar10 + 0x38) = uVar4;
+        *(undefined4 *)(pCVar10 + 0x3c) = 0x3f800000;
+        pCVar10[0x4c] = (CExpressionValue)0x1;
+        local_res8 = '\x01';
       }
 LAB_1:
-      if (!bVar5) {
-        uVar9 = 0x169a;
-        this = pCVar7;
+      if (local_res8 == (char)pvVar12) {
+        uVar11 = 0x16aa;
         goto LAB_0;
       }
     }
     else {
-      pCVar7 = this;
       if (param_1 != 3) goto LAB_1;
-      lVar4 = *(longlong *)(this + 0x18);
-      uVar6 = (ulonglong)(uVar9 - 3);
-      if (((*(int *)(lVar4 + 0x48 + uVar6 * 0x50) != 0x12) ||
-          (*(int *)(lVar4 + 0x48 + (ulonglong)(uVar9 - 2) * 0x50) != 0x12)) ||
-         (*(int *)(lVar4 + 0x48 + (ulonglong)(uVar9 - 1) * 0x50) != 0x12)) goto LAB_1;
-      uVar3 = *(undefined4 *)(lVar4 + (ulonglong)(uVar9 - 1) * 0x50);
-      uVar1 = *(undefined4 *)(lVar4 + uVar6 * 0x50);
-      uVar2 = *(undefined4 *)(lVar4 + (ulonglong)(uVar9 - 2) * 0x50);
-      *(undefined4 *)(lVar4 + 0x48 + uVar6 * 0x50) = 0x109;
-      *(undefined8 *)(lVar4 + uVar6 * 0x50) = 0x3f800000;
-      *(undefined8 *)(lVar4 + 8 + uVar6 * 0x50) = 0;
-      *(undefined4 *)(lVar4 + 0x10 + uVar6 * 0x50) = 0;
-      *(undefined8 *)(lVar4 + 0x14 + uVar6 * 0x50) = 0x3f800000;
-      *(undefined8 *)(lVar4 + 0x1c + uVar6 * 0x50) = 0;
-      *(undefined4 *)(lVar4 + 0x24 + uVar6 * 0x50) = 0;
-      *(undefined8 *)(lVar4 + 0x28 + uVar6 * 0x50) = 0x3f800000;
-      *(undefined4 *)(lVar4 + 0x30 + uVar6 * 0x50) = uVar1;
-      *(undefined4 *)(lVar4 + 0x34 + uVar6 * 0x50) = uVar2;
-      *(undefined4 *)(lVar4 + 0x38 + uVar6 * 0x50) = uVar3;
-      *(undefined4 *)(lVar4 + 0x3c + uVar6 * 0x50) = 0x3f800000;
-      *(undefined1 *)(lVar4 + 0x4c + uVar6 * 0x50) = 1;
+      bVar5 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      pCVar6 = (CExpressionValue *)(this + 0x18);
+      pCVar10 = &s_emptyValue;
+      if ((bVar5) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+        pCVar7 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_88);
+        CExpressionValue::operator=(&s_emptyValue,pCVar7);
+        CExpressionValue::~CExpressionValue(local_88);
+        pCVar7 = &s_emptyValue;
+      }
+      else {
+        pCVar7 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar6,*(uint *)pCVar1 - 3);
+      }
+      bVar5 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar5) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+        pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_88);
+        CExpressionValue::operator=(&s_emptyValue,pCVar8);
+        CExpressionValue::~CExpressionValue(local_88);
+        local_res18 = &s_emptyValue;
+      }
+      else {
+        local_res18 = DynArray<CExpressionValue,1>::operator[]
+                                ((DynArray<CExpressionValue,1> *)pCVar6,*(uint *)pCVar1 - 2);
+      }
+      bVar5 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      pvVar12 = (void *)0x0;
+      if ((bVar5) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar6 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_88);
+        CExpressionValue::operator=(&s_emptyValue,pCVar6);
+        pCVar6 = local_88;
+        CExpressionValue::~CExpressionValue(pCVar6);
+        pvVar12 = (void *)0x0;
+      }
+      else {
+        pCVar10 = DynArray<CExpressionValue,1>::operator[]
+                            ((DynArray<CExpressionValue,1> *)pCVar6,*(uint *)pCVar1 - 1);
+      }
+      if (((*(int *)(pCVar7 + 0x48) != 0x12) || (*(int *)(local_res18 + 0x48) != 0x12)) ||
+         (*(int *)(pCVar10 + 0x48) != 0x12)) goto LAB_1;
+      uVar4 = *(undefined4 *)local_res18;
+      uVar2 = *(undefined4 *)pCVar10;
+      uVar3 = *(undefined4 *)pCVar7;
+      *(undefined4 *)(pCVar7 + 0x48) = 0x109;
+      *(undefined8 *)pCVar7 = 0x3f800000;
+      *(undefined8 *)(pCVar7 + 8) = 0;
+      *(int *)(pCVar7 + 0x10) = (int)pvVar12;
+      *(undefined8 *)(pCVar7 + 0x14) = 0x3f800000;
+      *(undefined8 *)(pCVar7 + 0x1c) = 0;
+      *(int *)(pCVar7 + 0x24) = (int)pvVar12;
+      *(undefined8 *)(pCVar7 + 0x28) = 0x3f800000;
+      *(undefined4 *)(pCVar7 + 0x30) = uVar3;
+      *(undefined4 *)(pCVar7 + 0x34) = uVar4;
+      *(undefined4 *)(pCVar7 + 0x38) = uVar2;
+      *(undefined4 *)(pCVar7 + 0x3c) = 0x3f800000;
+      pCVar7[0x4c] = (CExpressionValue)0x1;
     }
-    lVar8 = 0;
-    *(uint *)(this + 0x10) = *(int *)(this + 0x10) + (1 - param_1);
+    lVar9 = (long)pvVar12;
+    *(uint *)pCVar1 = *(uint *)pCVar1 + (1 - param_1);
   }
-  return lVar8;
+  return lVar9;
 }
 

```


## CExpressionValueStack::NotEquals

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.33|
|i_ratio|0.36|
|m_ratio|0.87|
|b_ratio|0.82|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|NotEquals|NotEquals|
|fullname|CExpressionValueStack::NotEquals|CExpressionValueStack::NotEquals|
|refcount|2|2|
|`length`|545|699|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>memcmp|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>memcmp<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180257e8c|18025b5c4|
|sig|long __thiscall NotEquals(CExpressionValueStack * this)|long __thiscall NotEquals(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::NotEquals Called Diff


```diff
--- CExpressionValueStack::NotEquals called
+++ CExpressionValueStack::NotEquals called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::NotEquals Calling Diff


```diff
--- CExpressionValueStack::NotEquals calling
+++ CExpressionValueStack::NotEquals calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::NotEquals Diff


```diff
--- CExpressionValueStack::NotEquals
+++ CExpressionValueStack::NotEquals
@@ -1,106 +1,137 @@
 
 /* public: long __cdecl CExpressionValueStack::NotEquals(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::NotEquals(CExpressionValueStack *this)
 
 {
-  float fVar1;
-  int iVar2;
-  longlong lVar3;
-  CExpressionValueStack *pCVar4;
-  float *_Buf1;
-  float *_Buf2;
-  bool bVar5;
-  bool bVar6;
-  bool bVar7;
-  uint uVar8;
+  CExpressionValueStack *pCVar1;
+  float fVar2;
+  bool bVar3;
+  int iVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
+  longlong lVar7;
+  CExpressionValue *_Buf2;
+  CExpressionValue CVar8;
+  bool bVar9;
+  uint uVar10;
+  CExpressionValue local_68 [80];
   
-  uVar8 = *(uint *)(this + 0x10);
-  bVar6 = false;
-  if (uVar8 < 2) {
-    uVar8 = 0x654;
-    pCVar4 = this;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar10 = 0x664;
 LAB_0:
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)pCVar4,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar8,(void *)0x0)
-    ;
+              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar10,(void *)0x0);
     return -0x7fffbffb;
   }
-  _Buf1 = (float *)((ulonglong)(uVar8 - 2) * 0x50 + *(longlong *)(this + 0x18));
-  _Buf2 = (float *)((ulonglong)(uVar8 - 1) * 0x50 + *(longlong *)(this + 0x18));
-  fVar1 = _Buf1[0x12];
-  pCVar4 = (CExpressionValueStack *)(ulonglong)(uint)fVar1;
-  if (fVar1 != _Buf2[0x12]) {
-    uVar8 = 0x670;
+  bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  CVar8 = (CExpressionValue)0x0;
+  _Buf2 = &s_emptyValue;
+  if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+    pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+    CExpressionValue::operator=(&s_emptyValue,pCVar5);
+    CExpressionValue::~CExpressionValue(local_68);
+    pCVar5 = &s_emptyValue;
+  }
+  else {
+    pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                       ((DynArray<CExpressionValue,1> *)(this + 0x18),*(uint *)pCVar1 - 2);
+  }
+  bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+    pCVar6 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+    CExpressionValue::operator=(&s_emptyValue,pCVar6);
+    CExpressionValue::~CExpressionValue(local_68);
+  }
+  else {
+    _Buf2 = DynArray<CExpressionValue,1>::operator[]
+                      ((DynArray<CExpressionValue,1> *)(this + 0x18),*(uint *)pCVar1 - 1);
+  }
+  fVar2 = *(float *)(pCVar5 + 0x48);
+  this = (CExpressionValueStack *)(ulonglong)(uint)fVar2;
+  if (fVar2 != *(float *)(_Buf2 + 0x48)) {
+    uVar10 = 0x680;
     goto LAB_0;
   }
-  if (fVar1 == 2.38221e-44) {
-    bVar6 = *(char *)_Buf1 == *(char *)_Buf2;
+  if (fVar2 == 2.38221e-44) {
+    bVar3 = *pCVar5 == *_Buf2;
   }
   else {
-    if (fVar1 == 2.52234e-44) {
-      bVar5 = NAN(*_Buf1) || NAN(*_Buf2);
-      bVar7 = *_Buf1 == *_Buf2;
+    if (fVar2 == 2.52234e-44) {
+      bVar9 = NAN(*(float *)pCVar5) || NAN(*(float *)_Buf2);
+      bVar3 = *(float *)pCVar5 == *(float *)_Buf2;
       goto LAB_1;
     }
-    if (fVar1 == 4.90454e-44) {
-      bVar6 = *(longlong *)_Buf1 == *(longlong *)_Buf2;
+    if (fVar2 == 4.90454e-44) {
+      bVar3 = *(longlong *)pCVar5 == *(longlong *)_Buf2;
     }
-    else if (fVar1 == 7.28675e-44) {
-      lVar3 = *(longlong *)_Buf1 - *(longlong *)_Buf2;
-      if (lVar3 == 0) {
-        lVar3 = (ulonglong)(uint)_Buf1[2] - (ulonglong)(uint)_Buf2[2];
+    else if (fVar2 == 7.28675e-44) {
+      lVar7 = *(longlong *)pCVar5 - *(longlong *)_Buf2;
+      if (lVar7 == 0) {
+        lVar7 = (ulonglong)(uint)*(float *)(pCVar5 + 8) - (ulonglong)(uint)*(float *)(_Buf2 + 8);
       }
-      bVar6 = lVar3 == 0;
+      bVar3 = lVar7 == 0;
     }
     else {
-      if (fVar1 != 9.66896e-44) {
-        if (fVar1 == 9.80909e-44) {
-          if (((*_Buf1 == *_Buf2) && (_Buf1[1] == _Buf2[1])) && (_Buf1[2] == _Buf2[2])) {
-            bVar5 = NAN(_Buf1[3]) || NAN(_Buf2[3]);
-            bVar7 = _Buf1[3] == _Buf2[3];
+      if (fVar2 != 9.66896e-44) {
+        if (fVar2 == 9.80909e-44) {
+          if (((*(float *)pCVar5 == *(float *)_Buf2) &&
+              (*(float *)(pCVar5 + 4) == *(float *)(_Buf2 + 4))) &&
+             (*(float *)(pCVar5 + 8) == *(float *)(_Buf2 + 8))) {
+            bVar9 = NAN(*(float *)(pCVar5 + 0xc)) || NAN(*(float *)(_Buf2 + 0xc));
+            bVar3 = *(float *)(pCVar5 + 0xc) == *(float *)(_Buf2 + 0xc);
 LAB_1:
-            if ((!bVar5) && (bVar7)) goto LAB_2;
+            if ((!bVar9) && (bVar3)) goto LAB_2;
           }
         }
         else {
-          if (fVar1 == 9.94922e-44) goto LAB_3;
-          uVar8 = (int)fVar1 - 0x68;
-          pCVar4 = (CExpressionValueStack *)(ulonglong)uVar8;
-          if (uVar8 != 0) {
-            if (uVar8 != 0xa1) {
-              uVar8 = 0x6ad;
+          if (fVar2 == 9.94922e-44) goto LAB_3;
+          uVar10 = (int)fVar2 - 0x68;
+          this = (CExpressionValueStack *)(ulonglong)uVar10;
+          if (uVar10 != 0) {
+            if (uVar10 != 0xa1) {
+              uVar10 = 0x6bd;
               goto LAB_0;
             }
-            iVar2 = memcmp(_Buf1,_Buf2,0x40);
-            bVar6 = iVar2 == 0;
+            iVar4 = memcmp(pCVar5,_Buf2,0x40);
+            bVar3 = iVar4 == 0;
             goto LAB_4;
           }
-          if (((*_Buf1 == *_Buf2) && (_Buf1[1] == _Buf2[1])) &&
-             ((_Buf1[2] == _Buf2[2] && ((_Buf1[3] == _Buf2[3] && (_Buf1[4] == _Buf2[4])))))) {
-            bVar5 = NAN(_Buf1[5]) || NAN(_Buf2[5]);
-            bVar7 = _Buf1[5] == _Buf2[5];
+          if (((*(float *)pCVar5 == *(float *)_Buf2) &&
+              (*(float *)(pCVar5 + 4) == *(float *)(_Buf2 + 4))) &&
+             ((*(float *)(pCVar5 + 8) == *(float *)(_Buf2 + 8) &&
+              ((*(float *)(pCVar5 + 0xc) == *(float *)(_Buf2 + 0xc) &&
+               (*(float *)(pCVar5 + 0x10) == *(float *)(_Buf2 + 0x10))))))) {
+            bVar9 = NAN(*(float *)(pCVar5 + 0x14)) || NAN(*(float *)(_Buf2 + 0x14));
+            bVar3 = *(float *)(pCVar5 + 0x14) == *(float *)(_Buf2 + 0x14);
             goto LAB_1;
           }
         }
-        bVar6 = true;
+        CVar8 = (CExpressionValue)0x1;
         goto LAB_2;
       }
 LAB_3:
-      lVar3 = *(longlong *)_Buf1 - *(longlong *)_Buf2;
-      if (lVar3 == 0) {
-        lVar3 = *(longlong *)(_Buf1 + 2) - *(longlong *)(_Buf2 + 2);
+      lVar7 = *(longlong *)pCVar5 - *(longlong *)_Buf2;
+      if (lVar7 == 0) {
+        lVar7 = *(longlong *)(pCVar5 + 8) - *(longlong *)(_Buf2 + 8);
       }
-      bVar6 = lVar3 == 0;
+      bVar3 = lVar7 == 0;
     }
   }
 LAB_4:
-  bVar6 = !bVar6;
+  CVar8 = (CExpressionValue)!bVar3;
 LAB_2:
-  _Buf1[0x12] = 2.38221e-44;
-  *(undefined1 *)(_Buf1 + 0x13) = 1;
-  *(bool *)_Buf1 = bVar6;
-  *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+  *(float *)(pCVar5 + 0x48) = 2.38221e-44;
+  pCVar5[0x4c] = (CExpressionValue)0x1;
+  *pCVar5 = CVar8;
+  *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
   return 0;
 }
 

```


## CExpressionValueStack::Equals

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.3|
|i_ratio|0.36|
|m_ratio|0.87|
|b_ratio|0.82|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Equals|Equals|
|fullname|CExpressionValueStack::Equals|CExpressionValueStack::Equals|
|refcount|2|2|
|`length`|589|743|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>memcmp|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>memcmp<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180255500|180257824|
|sig|long __thiscall Equals(CExpressionValueStack * this)|long __thiscall Equals(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Equals Called Diff


```diff
--- CExpressionValueStack::Equals called
+++ CExpressionValueStack::Equals called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Equals Calling Diff


```diff
--- CExpressionValueStack::Equals calling
+++ CExpressionValueStack::Equals calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Equals Diff


```diff
--- CExpressionValueStack::Equals
+++ CExpressionValueStack::Equals
@@ -1,108 +1,137 @@
 
 /* public: long __cdecl CExpressionValueStack::Equals(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Equals(CExpressionValueStack *this)
 
 {
-  float fVar1;
-  int iVar2;
-  longlong lVar3;
-  CExpressionValueStack *pCVar4;
-  float *_Buf1;
-  bool bVar5;
-  float *_Buf2;
-  bool bVar6;
-  bool bVar7;
-  bool bVar8;
-  uint uVar9;
+  CExpressionValueStack *pCVar1;
+  float fVar2;
+  bool bVar3;
+  int iVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
+  longlong lVar7;
+  CExpressionValue *_Buf2;
+  CExpressionValue CVar8;
+  bool bVar9;
+  CExpressionValue CVar10;
+  uint uVar11;
+  CExpressionValue local_68 [80];
   
-  uVar9 = *(uint *)(this + 0x10);
-  bVar5 = false;
-  if (uVar9 < 2) {
-    uVar9 = 0x5d9;
-    pCVar4 = this;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar11 = 0x5e9;
 LAB_0:
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)pCVar4,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar9,(void *)0x0)
-    ;
+              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar11,(void *)0x0);
     return -0x7fffbffb;
   }
-  _Buf1 = (float *)((ulonglong)(uVar9 - 2) * 0x50 + *(longlong *)(this + 0x18));
-  _Buf2 = (float *)((ulonglong)(uVar9 - 1) * 0x50 + *(longlong *)(this + 0x18));
-  fVar1 = _Buf1[0x12];
-  pCVar4 = (CExpressionValueStack *)(ulonglong)(uint)fVar1;
-  if (fVar1 != _Buf2[0x12]) {
-    uVar9 = 0x5f5;
+  bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  CVar8 = (CExpressionValue)0x0;
+  _Buf2 = &s_emptyValue;
+  if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+    pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+    CExpressionValue::operator=(&s_emptyValue,pCVar5);
+    CExpressionValue::~CExpressionValue(local_68);
+    pCVar5 = &s_emptyValue;
+  }
+  else {
+    pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                       ((DynArray<CExpressionValue,1> *)(this + 0x18),*(uint *)pCVar1 - 2);
+  }
+  bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  if ((bVar3) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+    pCVar6 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+    CExpressionValue::operator=(&s_emptyValue,pCVar6);
+    CExpressionValue::~CExpressionValue(local_68);
+  }
+  else {
+    _Buf2 = DynArray<CExpressionValue,1>::operator[]
+                      ((DynArray<CExpressionValue,1> *)(this + 0x18),*(uint *)pCVar1 - 1);
+  }
+  fVar2 = *(float *)(pCVar5 + 0x48);
+  this = (CExpressionValueStack *)(ulonglong)(uint)fVar2;
+  if (fVar2 != *(float *)(_Buf2 + 0x48)) {
+    uVar11 = 0x605;
     goto LAB_0;
   }
-  if (fVar1 == 2.38221e-44) {
-    bVar7 = *(char *)_Buf1 == *(char *)_Buf2;
+  if (fVar2 == 2.38221e-44) {
+    CVar10 = (CExpressionValue)(*pCVar5 == *_Buf2);
     goto LAB_1;
   }
-  bVar7 = bVar5;
-  if (fVar1 == 2.52234e-44) {
-    bVar6 = NAN(*_Buf1) || NAN(*_Buf2);
-    bVar8 = *_Buf1 == *_Buf2;
+  CVar10 = CVar8;
+  if (fVar2 == 2.52234e-44) {
+    bVar9 = NAN(*(float *)pCVar5) || NAN(*(float *)_Buf2);
+    bVar3 = *(float *)pCVar5 == *(float *)_Buf2;
     goto LAB_2;
   }
-  if (fVar1 == 4.90454e-44) {
-    bVar7 = *(longlong *)_Buf1 == *(longlong *)_Buf2;
+  if (fVar2 == 4.90454e-44) {
+    CVar10 = (CExpressionValue)(*(longlong *)pCVar5 == *(longlong *)_Buf2);
     goto LAB_1;
   }
-  if (fVar1 == 7.28675e-44) {
-    lVar3 = *(longlong *)_Buf1 - *(longlong *)_Buf2;
-    if (lVar3 == 0) {
-      lVar3 = (ulonglong)(uint)_Buf1[2] - (ulonglong)(uint)_Buf2[2];
+  if (fVar2 == 7.28675e-44) {
+    lVar7 = *(longlong *)pCVar5 - *(longlong *)_Buf2;
+    if (lVar7 == 0) {
+      lVar7 = (ulonglong)(uint)*(float *)(pCVar5 + 8) - (ulonglong)(uint)*(float *)(_Buf2 + 8);
     }
-    bVar7 = lVar3 == 0;
+    CVar10 = (CExpressionValue)(lVar7 == 0);
     goto LAB_1;
   }
-  if (fVar1 == 9.66896e-44) {
+  if (fVar2 == 9.66896e-44) {
 LAB_3:
-    lVar3 = *(longlong *)_Buf1 - *(longlong *)_Buf2;
-    if (lVar3 == 0) {
-      lVar3 = *(longlong *)(_Buf1 + 2) - *(longlong *)(_Buf2 + 2);
+    lVar7 = *(longlong *)pCVar5 - *(longlong *)_Buf2;
+    if (lVar7 == 0) {
+      lVar7 = *(longlong *)(pCVar5 + 8) - *(longlong *)(_Buf2 + 8);
     }
-    bVar7 = lVar3 == 0;
+    CVar10 = (CExpressionValue)(lVar7 == 0);
   }
   else {
-    if (fVar1 == 9.80909e-44) {
-      if (((*_Buf1 != *_Buf2) || (_Buf1[1] != _Buf2[1])) || (_Buf1[2] != _Buf2[2]))
-      goto LAB_1;
-      bVar6 = NAN(_Buf1[3]) || NAN(_Buf2[3]);
-      bVar8 = _Buf1[3] == _Buf2[3];
+    if (fVar2 == 9.80909e-44) {
+      if (((*(float *)pCVar5 != *(float *)_Buf2) ||
+          (*(float *)(pCVar5 + 4) != *(float *)(_Buf2 + 4))) ||
+         (*(float *)(pCVar5 + 8) != *(float *)(_Buf2 + 8))) goto LAB_1;
+      bVar9 = NAN(*(float *)(pCVar5 + 0xc)) || NAN(*(float *)(_Buf2 + 0xc));
+      bVar3 = *(float *)(pCVar5 + 0xc) == *(float *)(_Buf2 + 0xc);
     }
     else {
-      if (fVar1 == 9.94922e-44) goto LAB_3;
-      uVar9 = (int)fVar1 - 0x68;
-      pCVar4 = (CExpressionValueStack *)(ulonglong)uVar9;
-      if (uVar9 != 0) {
-        if (uVar9 != 0xa1) {
-          uVar9 = 0x633;
+      if (fVar2 == 9.94922e-44) goto LAB_3;
+      uVar11 = (int)fVar2 - 0x68;
+      this = (CExpressionValueStack *)(ulonglong)uVar11;
+      if (uVar11 != 0) {
+        if (uVar11 != 0xa1) {
+          uVar11 = 0x643;
           goto LAB_0;
         }
-        iVar2 = memcmp(_Buf1,_Buf2,0x40);
-        bVar7 = iVar2 == 0;
+        iVar4 = memcmp(pCVar5,_Buf2,0x40);
+        CVar10 = (CExpressionValue)(iVar4 == 0);
         goto LAB_1;
       }
-      bVar7 = false;
-      if (((*_Buf1 != *_Buf2) || (bVar7 = bVar5, _Buf1[1] != _Buf2[1])) ||
-         ((_Buf1[2] != _Buf2[2] || ((_Buf1[3] != _Buf2[3] || (_Buf1[4] != _Buf2[4]))))))
-      goto LAB_1;
-      bVar6 = NAN(_Buf1[5]) || NAN(_Buf2[5]);
-      bVar8 = _Buf1[5] == _Buf2[5];
+      CVar10 = (CExpressionValue)0x0;
+      if (((*(float *)pCVar5 != *(float *)_Buf2) ||
+          (CVar10 = CVar8, *(float *)(pCVar5 + 4) != *(float *)(_Buf2 + 4))) ||
+         ((*(float *)(pCVar5 + 8) != *(float *)(_Buf2 + 8) ||
+          ((*(float *)(pCVar5 + 0xc) != *(float *)(_Buf2 + 0xc) ||
+           (*(float *)(pCVar5 + 0x10) != *(float *)(_Buf2 + 0x10))))))) goto LAB_1;
+      bVar9 = NAN(*(float *)(pCVar5 + 0x14)) || NAN(*(float *)(_Buf2 + 0x14));
+      bVar3 = *(float *)(pCVar5 + 0x14) == *(float *)(_Buf2 + 0x14);
     }
 LAB_2:
-    bVar7 = bVar5;
-    if ((!bVar6) && (bVar8)) {
-      bVar7 = true;
+    CVar10 = CVar8;
+    if ((!bVar9) && (bVar3)) {
+      CVar10 = (CExpressionValue)0x1;
     }
   }
 LAB_1:
-  _Buf1[0x12] = 2.38221e-44;
-  *(undefined1 *)(_Buf1 + 0x13) = 1;
-  *(bool *)_Buf1 = bVar7;
-  *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+  *(float *)(pCVar5 + 0x48) = 2.38221e-44;
+  pCVar5[0x4c] = (CExpressionValue)0x1;
+  *pCVar5 = CVar10;
+  *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
   return 0;
 }
 

```


## CExpressionValueStack::Matrix4x4FromPerspective

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.25|
|i_ratio|0.09|
|m_ratio|0.62|
|b_ratio|0.54|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix4x4FromPerspective|Matrix4x4FromPerspective|
|fullname|CExpressionValueStack::Matrix4x4FromPerspective|CExpressionValueStack::Matrix4x4FromPerspective|
|refcount|2|2|
|`length`|347|671|
|`called`|D2DMatrixPerspectiveRH<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrixPerspectiveRH<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1802569cc|18025938c|
|sig|long __thiscall Matrix4x4FromPerspective(CExpressionValueStack * this)|long __thiscall Matrix4x4FromPerspective(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix4x4FromPerspective Called Diff


```diff
--- CExpressionValueStack::Matrix4x4FromPerspective called
+++ CExpressionValueStack::Matrix4x4FromPerspective called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix4x4FromPerspective Calling Diff


```diff
--- CExpressionValueStack::Matrix4x4FromPerspective calling
+++ CExpressionValueStack::Matrix4x4FromPerspective calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Matrix4x4FromPerspective Diff


```diff
--- CExpressionValueStack::Matrix4x4FromPerspective
+++ CExpressionValueStack::Matrix4x4FromPerspective
@@ -1,82 +1,135 @@
 
 /* public: long __cdecl CExpressionValueStack::Matrix4x4FromPerspective(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Matrix4x4FromPerspective(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
-  ulonglong uVar2;
-  D2DMatrix *pDVar3;
-  D2DMatrix *pDVar4;
-  longlong lVar5;
-  longlong lVar6;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  D2DMatrix *pDVar5;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar6;
+  CExpressionValue *local_res8;
+  CExpressionValue *local_res10;
   uint uVar7;
+  undefined8 local_78;
+  undefined8 uStack_70;
+  undefined8 local_68;
+  undefined8 uStack_60;
+  undefined8 local_58;
+  undefined8 uStack_50;
   undefined8 local_48;
   undefined8 uStack_40;
-  undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
   
-  uVar7 = *(uint *)(this + 0x10);
-  pDVar4 = (D2DMatrix *)this;
-  if (uVar7 < 4) {
-    uVar7 = 0x19c4;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 4) {
+    uVar7 = 0x19d4;
   }
   else {
-    lVar5 = *(longlong *)(this + 0x18);
-    uVar2 = (ulonglong)(uVar7 - 4);
-    lVar6 = uVar2 * 10;
-    if (*(int *)(lVar5 + 0x48 + uVar2 * 0x50) == 0x12) {
-      if (*(int *)(lVar5 + 0x48 + (ulonglong)(uVar7 - 3) * 0x50) == 0x12) {
-        if (*(int *)(lVar5 + 0x48 + (ulonglong)(uVar7 - 2) * 0x50) == 0x12) {
-          if (*(int *)(lVar5 + 0x48 + (ulonglong)(uVar7 - 1) * 0x50) == 0x12) {
-            pDVar4 = (D2DMatrix *)&local_48;
-            pDVar3 = D2DMatrixPerspectiveRH
-                               (pDVar4,*(float *)(lVar5 + uVar2 * 0x50),
-                                *(float *)(lVar5 + (ulonglong)(uVar7 - 3) * 0x50),
-                                *(float *)(lVar5 + (ulonglong)(uVar7 - 2) * 0x50),
-                                *(float *)(lVar5 + (ulonglong)(uVar7 - 1) * 0x50));
-            if (pDVar3 != (D2DMatrix *)0x0) {
-              *(undefined4 *)(lVar5 + 0x48 + lVar6 * 8) = 0x109;
-              puVar1 = (undefined8 *)(lVar5 + lVar6 * 8);
-              *puVar1 = local_48;
-              puVar1[1] = uStack_40;
-              puVar1 = (undefined8 *)(lVar5 + 0x10 + lVar6 * 8);
-              *puVar1 = local_38;
-              puVar1[1] = uStack_30;
-              puVar1 = (undefined8 *)(lVar5 + 0x20 + lVar6 * 8);
-              *puVar1 = local_28;
-              puVar1[1] = uStack_20;
-              puVar1 = (undefined8 *)(lVar5 + 0x30 + lVar6 * 8);
-              *puVar1 = local_18;
-              puVar1[1] = uStack_10;
-              *(undefined1 *)(lVar5 + 0x4c + lVar6 * 8) = 1;
-              *(int *)(this + 0x10) = *(int *)(this + 0x10) + -3;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 4)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_78);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 4);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_78);
+      local_res8 = &s_emptyValue;
+    }
+    else {
+      local_res8 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 3);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_78);
+      local_res10 = &s_emptyValue;
+    }
+    else {
+      local_res10 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_78)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this = (CExpressionValueStack *)&local_78;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+      this = (CExpressionValueStack *)this_00;
+    }
+    if (*(float *)(pCVar3 + 0x48) == 2.52234e-44) {
+      this = (CExpressionValueStack *)local_res8;
+      if (*(int *)(local_res8 + 0x48) == 0x12) {
+        if (*(float *)(local_res10 + 0x48) == 2.52234e-44) {
+          if (*(float *)(pCVar6 + 0x48) == 2.52234e-44) {
+            this = (CExpressionValueStack *)&local_78;
+            pDVar5 = D2DMatrixPerspectiveRH
+                               ((D2DMatrix *)this,*(float *)pCVar3,*(float *)local_res8,
+                                *(float *)local_res10,*(float *)pCVar6);
+            if (pDVar5 != (D2DMatrix *)0x0) {
+              *(float *)(pCVar3 + 0x48) = 3.71344e-43;
+              *(undefined8 *)pCVar3 = local_78;
+              *(undefined8 *)(pCVar3 + 8) = uStack_70;
+              *(undefined8 *)(pCVar3 + 0x10) = local_68;
+              *(undefined8 *)(pCVar3 + 0x18) = uStack_60;
+              *(undefined8 *)(pCVar3 + 0x20) = local_58;
+              *(undefined8 *)(pCVar3 + 0x28) = uStack_50;
+              *(undefined8 *)(pCVar3 + 0x30) = local_48;
+              *(undefined8 *)(pCVar3 + 0x38) = uStack_40;
+              pCVar3[0x4c] = (CExpressionValue)0x1;
+              *(uint *)pCVar1 = *(uint *)pCVar1 - 3;
               return 0;
             }
-            uVar7 = 0x19ea;
+            uVar7 = 0x19fa;
           }
           else {
-            uVar7 = 0x19cf;
+            uVar7 = 0x19df;
           }
         }
         else {
-          uVar7 = 0x19ce;
+          uVar7 = 0x19de;
         }
       }
       else {
-        uVar7 = 0x19cd;
+        uVar7 = 0x19dd;
       }
     }
     else {
-      uVar7 = 0x19cc;
+      uVar7 = 0x19dc;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pDVar4,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CBaseExpression::CalculateValue

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.28|
|i_ratio|0.13|
|m_ratio|0.92|
|b_ratio|0.13|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|CalculateValue|CalculateValue|
|fullname|CBaseExpression::CalculateValue|CBaseExpression::CalculateValue|
|`refcount`|14|11|
|`length`|1929|2155|
|`called`|<details><summary>Expand for full list:<br>API-MS-WIN-CORE-PROFILE-L1-1-0.DLL::QueryPerformanceCounter<br>CBaseExpression::CalculateValue<br>CBaseExpression::EnsureExpressionIsUnregistered<br>CBaseExpression::IsExpressionValueValid<br>CBaseExpression::NotifyAnimationStarted<br>CBaseExpression::SetOutputValueOnTarget<br>CExpressionPerformanceCounter::AddDurationSample<br>CExpressionValue::ApplyMaskToValue<br>CExpressionValue::CopyFrom<br>CExpressionValue::operator==<br>CExpressionValueStack::PushConstant</summary>FUN_18014dfb7<br>Microsoft::WRL::ComPtr<CPathData>::InternalRelease<br>MilInstrumentationCheckHR_MaybeFailFast<br>QpcStopwatch::GetElapsed<br>__security_check_cookie<br>_guard_xfg_dispatch_icall_nop<br>memset</details>|<details><summary>Expand for full list:<br>?StringCchPrintfW@@YAJPEAG_KPEBGZZ<br>API-MS-WIN-CORE-HANDLE-L1-1-0.DLL::CloseHandle<br>API-MS-WIN-CORE-PROFILE-L1-1-0.DLL::QueryPerformanceCounter<br>API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::CreateEventW<br>API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::SetEvent<br>CBaseExpression::CalculateValue<br>CBaseExpression::EnsureExpressionIsUnregistered<br>CBaseExpression::GetTracingCookie<br>CBaseExpression::IsExpressionValueValid<br>CBaseExpression::LogSetOutputValue<br>CBaseExpression::NotifyAnimationStarted</summary>CBaseExpression::SetOutputValueOnTarget<br>CExpressionPerformanceCounter::AddDurationSample<br>CExpressionValue::ApplyMaskToValue<br>CExpressionValue::CopyFrom<br>CExpressionValue::operator==<br>CExpressionValueStack::PeekStackValue<br>CExpressionValueStack::PushConstant<br>Microsoft::WRL::ComPtr<CPathData>::InternalRelease<br>Microsoft::WRL::ComPtr<CPathData>::operator=<br>MilInstrumentationCheckHR_MaybeFailFast<br>QpcStopwatch::GetElapsed<br>__security_check_cookie<br>_guard_xfg_dispatch_icall_nop<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled</details>|
|calling|CBaseExpression::CalculateValue<br>CExpressionManager::UpdateExpressionsWorker<br>CInteractionTracker::DestroyDefaultAnimations<br>CInteractionTracker::TransitionToInertia<br>CKeyframeAnimation::ProcessExpressionKeyFrames<br>CKeyframeAnimation::ProcessInnerExpression<br>KeyframeValue::GetValue|CBaseExpression::CalculateValue<br>CExpressionManager::UpdateExpressionsWorker<br>CInteractionTracker::DestroyDefaultAnimations<br>CInteractionTracker::TransitionToInertia<br>CKeyframeAnimation::ProcessExpressionKeyFrames<br>CKeyframeAnimation::ProcessInnerExpression<br>KeyframeValue::GetValue|
|paramcount|4|4|
|`address`|180086550|180054250|
|sig|long __thiscall CalculateValue(CBaseExpression * this, CExpressionValueStack * param_1, __uint64 param_2, bool * param_3)|long __thiscall CalculateValue(CBaseExpression * this, CExpressionValueStack * param_1, __uint64 param_2, bool * param_3)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CBaseExpression::CalculateValue Called Diff


```diff
--- CBaseExpression::CalculateValue called
+++ CBaseExpression::CalculateValue called
@@ -0,0 +1,2 @@
+?StringCchPrintfW@@YAJPEAG_KPEBGZZ
+API-MS-WIN-CORE-HANDLE-L1-1-0.DLL::CloseHandle
@@ -1,0 +4,2 @@
+API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::CreateEventW
+API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::SetEvent
@@ -3,0 +8 @@
+CBaseExpression::GetTracingCookie
@@ -4,0 +10 @@
+CBaseExpression::LogSetOutputValue
@@ -10,0 +17 @@
+CExpressionValueStack::PeekStackValue
@@ -12 +18,0 @@
-FUN_18014dfb7
@@ -13,0 +20 @@
+Microsoft::WRL::ComPtr<CPathData>::operator=
@@ -18 +25 @@
-memset
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CBaseExpression::CalculateValue Diff


```diff
--- CBaseExpression::CalculateValue
+++ CBaseExpression::CalculateValue
@@ -1,388 +1,414 @@
 
 /* WARNING: Function: _guard_xfg_dispatch_icall_nop replaced with injection: guard_dispatch_icall */
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CBaseExpression::CalculateValue(class CExpressionValueStack *
    __ptr64,unsigned __int64,bool * __ptr64) __ptr64 */
 
 long __thiscall
 CBaseExpression::CalculateValue
           (CBaseExpression *this,CExpressionValueStack *param_1,__uint64 param_2,bool *param_3)
 
 {
   int *piVar1;
-  int iVar2;
-  CResource *pCVar3;
-  SubchannelMaskInfo *pSVar4;
-  longlong lVar5;
-  CPathData *pCVar6;
+  longlong lVar2;
+  SubchannelMaskInfo *pSVar3;
+  CPathData *pCVar4;
+  CResource *pCVar5;
+  undefined8 uVar6;
   undefined8 uVar7;
   LARGE_INTEGER LVar8;
-  LARGE_INTEGER LVar9;
-  bool bVar10;
-  bool bVar11;
-  long lVar12;
-  BOOL BVar13;
+  bool bVar9;
+  BOOL BVar10;
+  long lVar11;
+  CExpressionValue *pCVar12;
+  CExpressionValue *pCVar13;
   HANDLE hEvent;
   __int64 _Var14;
   ulong uVar15;
-  longlong *plVar16;
+  CBaseExpression *pCVar16;
   CExpressionValueStack *pCVar17;
-  LARGE_INTEGER *pLVar18;
-  CExpressionValue *this_00;
-  ComPtr<CPathData> *this_01;
-  LARGE_INTEGER LVar19;
-  CExpressionValue *pCVar20;
-  LARGE_INTEGER *this_02;
+  longlong *plVar18;
+  ComPtr<CPathData> *pCVar19;
+  STRSAFE_LPWSTR pszDest;
+  LARGE_INTEGER LVar20;
+  longlong lVar21;
+  ulonglong uVar22;
+  CExpressionPerformanceCounter *this_00;
+  uint uVar23;
+  bool bVar24;
   undefined1 auStackY_148 [32];
-  uint uVar21;
   char local_118;
   bool local_117 [7];
-  LARGE_INTEGER *local_110;
-  LARGE_INTEGER local_108;
-  ulonglong local_100;
-  uint local_f8;
+  LARGE_INTEGER local_110;
+  CExpressionPerformanceCounter *local_108;
+  uint local_100;
+  __uint64 local_f8;
   LARGE_INTEGER local_f0;
   LARGE_INTEGER local_e8;
-  ulonglong local_e0;
-  CExpressionValue local_d8 [64];
-  LARGE_INTEGER local_98;
+  longlong local_e0;
+  undefined8 local_d8;
+  undefined8 uStack_d0;
+  undefined8 local_c8;
+  undefined8 uStack_c0;
+  undefined8 local_b8;
+  undefined8 uStack_b0;
+  undefined8 local_a8;
+  undefined8 uStack_a0;
+  undefined8 local_98;
   int local_90;
   undefined1 local_8c;
   ulonglong local_58;
   
   local_58 = __security_cookie ^ (ulonglong)auStackY_148;
-  LVar19.QuadPart = 0;
+  LVar20.QuadPart = 0;
+  lVar21 = 0;
   *param_3 = false;
-  local_f0.QuadPart = 0;
-  local_108.QuadPart = 0;
-  local_110 = (LARGE_INTEGER *)0x0;
+  local_108 = (CExpressionPerformanceCounter *)0x0;
+  local_e0 = 0;
+  local_110.QuadPart = 0;
+  local_f8 = param_2;
   local_e8 = (LARGE_INTEGER)param_3;
   if (((*(uint *)(*(longlong *)(this + 0x148) + 4) & 0x40000000) == 0) &&
      (CCommonRegistryData::LogExpressionPerfStats == (CRegistryKey<bool,bool>)0x0)) {
-    bVar11 = false;
-    LVar9.QuadPart = local_f0.QuadPart;
+    bVar9 = false;
   }
   else {
-    bVar11 = true;
-    local_110 = (LARGE_INTEGER *)(*(longlong *)(*(longlong *)(this + 0x10) + 0x1a8) + 0x58);
-    BVar13 = QueryPerformanceCounter(&local_f0);
-    LVar9.QuadPart = 0;
-    if (BVar13 != 0) {
-      LVar9 = local_f0;
-    }
-  }
-  local_f0 = LVar9;
-  LVar9 = local_f0;
-  local_f8 = *(uint *)(param_1 + 0x10);
-  iVar2 = *(int *)(this + 0x120);
-  local_100 = 0x10;
+    bVar9 = true;
+    local_108 = (CExpressionPerformanceCounter *)
+                (*(longlong *)(*(longlong *)(this + 0x10) + 0x1a8) + 0x58);
+    BVar10 = QueryPerformanceCounter(&local_f0);
+    if (BVar10 != 0) {
+      lVar21 = CONCAT44(local_f0.s.HighPart,local_f0.s.LowPart);
+      local_e0 = lVar21;
+    }
+  }
+  local_100 = *(uint *)(param_1 + 0x10);
+  local_f0.s.LowPart = *(undefined4 *)(this + 0x120);
   if (*(longlong *)(this + 0x128) == 0) {
-    *(__uint64 *)(this + 0x128) = param_2;
+    *(__uint64 *)(this + 0x128) = local_f8;
   }
   (**(code **)(*(longlong *)this + 0x118))(this);
-  if ((local_118 == '\0') && (this[0x94] != (CBaseExpression)0x0)) {
-    lVar12 = 0;
-    this_02 = local_110;
+  this_00 = local_108;
+  if ((this[0x94] != (CBaseExpression)0x0) && (local_118 == '\0')) {
+    lVar11 = 0;
     goto LAB_0;
   }
-  *(__uint64 *)(this + 0xa8) = param_2;
-  if ((bVar11) && (((byte)this[0xd8] & 2) != 0)) {
-    lVar5 = *(longlong *)(*(longlong *)(this + local_100) + 0x1a8);
-    uVar21 = *(uint *)(*(longlong *)(this + 0x148) + 4);
-    piVar1 = (int *)(lVar5 + 0x1c4);
+  *(__uint64 *)(this + 0xa8) = local_f8;
+  if ((bVar9) && (((byte)this[0xd8] & 2) != 0)) {
+    lVar2 = *(longlong *)(*(longlong *)(this + 0x10) + 0x1a8);
+    uVar23 = *(uint *)(*(longlong *)(this + 0x148) + 4);
+    piVar1 = (int *)(lVar2 + 0x1c4);
     *piVar1 = *piVar1 + 1;
-    if ((uVar21 >> 0x1e & 1) != 0) {
-      piVar1 = (int *)(lVar5 + 0x1c8);
+    if ((uVar23 >> 0x1e & 1) != 0) {
+      piVar1 = (int *)(lVar2 + 0x1c8);
       *piVar1 = *piVar1 + 1;
     }
   }
-  LVar8 = local_108;
-  if ((local_110 != (LARGE_INTEGER *)0x0) &&
-     (BVar13 = QueryPerformanceCounter(&local_108), LVar8.QuadPart = LVar19.QuadPart, BVar13 != 0))
+  LVar8 = local_110;
+  if ((local_108 != (CExpressionPerformanceCounter *)0x0) &&
+     (BVar10 = QueryPerformanceCounter(&local_110), LVar8.QuadPart = LVar20.QuadPart, BVar10 != 0))
   {
-    LVar19 = local_108;
-    LVar8 = local_108;
-  }
-  local_108 = LVar8;
+    LVar20 = local_110;
+    LVar8 = local_110;
+  }
+  local_110 = LVar8;
   if (((byte)this[0xe8] & 2) == 0) {
-    uVar21 = 0;
-    local_100 = local_100 & 0xffffffff00000000;
+    uVar22 = 0;
     if (*(int *)(this + 0x108) != 0) {
       do {
-        local_e0 = (ulonglong)uVar21;
         local_117[0] = false;
-        pLVar18 = *(LARGE_INTEGER **)(*(longlong *)(this + 0xf0) + local_e0 * 8);
-        lVar12 = CalculateValue((CBaseExpression *)&pLVar18->s,param_1,*(__uint64 *)(this + 0xa8),
-                                local_117);
-        if (lVar12 < 0) {
-          MilInstrumentationCheckHR_MaybeFailFast
-                    ((ulong)pLVar18,(long *)0x0,0,lVar12,0x31a,(void *)0x0);
-          uVar21 = 0x48f;
+        pCVar16 = *(CBaseExpression **)(*(longlong *)(this + 0xf0) + uVar22 * 8);
+        lVar11 = CalculateValue(pCVar16,param_1,*(__uint64 *)(this + 0xa8),local_117);
+        uVar15 = (ulong)pCVar16;
+        if (lVar11 < 0) {
+          MilInstrumentationCheckHR_MaybeFailFast(uVar15,(long *)0x0,0,lVar11,0x31b,(void *)0x0);
+          uVar23 = 0x490;
           goto LAB_1;
         }
         EnsureExpressionIsUnregistered
-                  (*(CBaseExpression **)(*(longlong *)(this + 0xf0) + local_e0 * 8));
-        uVar21 = (int)local_100 + 1;
-        local_100 = CONCAT44(local_100._4_4_,uVar21);
-      } while (uVar21 < *(uint *)(this + 0x108));
+                  (*(CBaseExpression **)(*(longlong *)(this + 0xf0) + uVar22 * 8));
+        uVar23 = (int)uVar22 + 1;
+        uVar22 = (ulonglong)uVar23;
+      } while (uVar23 < *(uint *)(this + 0x108));
     }
     this[0xe8] = (CBaseExpression)((byte)this[0xe8] | 2);
   }
-  if (iVar2 == 0) {
+  if (local_f0.s.LowPart == 0) {
     NotifyAnimationStarted(this);
   }
-  pLVar18 = (LARGE_INTEGER *)this;
-  lVar12 = (**(code **)(*(longlong *)this + 0x100))(this,param_1,param_2,local_e8.QuadPart);
-  if (lVar12 < 0) {
-    uVar21 = 0x496;
-LAB_1:
-    uVar15 = (ulong)pLVar18;
-    goto LAB_2;
-  }
-  bVar11 = true;
-  this_02 = local_110;
-  if ((bool *)LVar19.QuadPart != (bool *)0x0) {
-    _Var14 = QpcStopwatch::GetElapsed((QpcStopwatch *)&local_108.s);
-    this_02 = local_110;
-    pLVar18 = local_110;
-    CExpressionPerformanceCounter::AddDurationSample
-              ((CExpressionPerformanceCounter *)&local_110->s,1,_Var14);
-    local_108.QuadPart = 0;
-  }
-  if (lVar12 == 1) {
+  pCVar16 = this;
+  lVar11 = (**(code **)(*(longlong *)this + 0x100))();
+  uVar15 = (ulong)pCVar16;
+  if (lVar11 < 0) {
+    uVar23 = 0x497;
+    goto LAB_1;
+  }
+  if ((bool *)LVar20.QuadPart != (bool *)0x0) {
+    _Var14 = QpcStopwatch::GetElapsed((QpcStopwatch *)&local_110.s);
+    CExpressionPerformanceCounter::AddDurationSample(this_00,1,_Var14);
+    local_110.QuadPart = 0;
+  }
+  bVar24 = lVar11 == 1;
+  uVar15 = 0x803e2438;
+  bVar9 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  if (bVar9) {
+    if (lVar11 != 1) {
+      if (*(int *)(param_1 + 0x10) != 0) goto LAB_2;
+      EnsureExpressionIsUnregistered(this);
+      uVar15 = (ulong)this;
+      lVar11 = -0x7fffbffb;
+      uVar23 = 0x4b3;
+      goto LAB_1;
+    }
 LAB_3:
-    memset(local_d8,0,0x40);
-    local_98.QuadPart = 0;
+    bVar9 = false;
+  }
+  else {
+    if (lVar11 == 1) goto LAB_3;
+LAB_2:
+    pCVar17 = param_1;
+    pCVar12 = CExpressionValueStack::PeekStackValue(param_1,0);
+    bVar9 = IsExpressionValueValid((CBaseExpression *)pCVar17,pCVar12);
+    uVar15 = (ulong)pCVar17;
+  }
+  if ((bVar24) || (bVar9 == false)) {
     local_90 = 0x12;
+    local_98 = 0;
     local_8c = 0;
-    if ((*(longlong *)(this + 0xb8) == 0) ||
-       (plVar16 = *(longlong **)(*(longlong *)(this + 0xb8) + 0x10), plVar16 == (longlong *)0x0)) {
+    local_d8 = 0;
+    uStack_d0 = 0;
+    local_c8 = 0;
+    uStack_c0 = 0;
+    local_b8 = 0;
+    uStack_b0 = 0;
+    local_a8 = 0;
+    uStack_a0 = 0;
+    if (*(longlong *)(this + 0xb8) == 0) {
+LAB_4:
+      lVar11 = -0x7ff8fffa;
+      uVar23 = 0x4c2;
+    }
+    else {
+      plVar18 = *(longlong **)(*(longlong *)(this + 0xb8) + 0x10);
       uVar15 = 0;
-      lVar12 = -0x7ff8fffa;
-      uVar21 = 0x4b0;
-    }
-    else {
-      lVar12 = (**(code **)(*plVar16 + 0x88))(plVar16,*(undefined4 *)(this + 0xc0));
-      uVar15 = (ulong)plVar16;
-      if (lVar12 < 0) {
-        uVar21 = 0x4b2;
+      if (plVar18 == (longlong *)0x0) goto LAB_4;
+      lVar11 = (**(code **)(*plVar18 + 0x88))(plVar18,*(undefined4 *)(this + 0xc0));
+      uVar15 = (ulong)plVar18;
+      if (lVar11 < 0) {
+        uVar23 = 0x4c4;
       }
       else {
-        pSVar4 = *(SubchannelMaskInfo **)(this + 200);
-        if ((pSVar4 != (SubchannelMaskInfo *)0x0) && (pSVar4[4] != (SubchannelMaskInfo)0x0)) {
-          pCVar20 = local_d8;
-          lVar12 = CExpressionValue::ApplyMaskToValue(pCVar20,pSVar4);
-          uVar15 = (ulong)pCVar20;
-          if (lVar12 < 0) {
-            uVar21 = 0x4b8;
-            goto LAB_4;
+        pSVar3 = *(SubchannelMaskInfo **)(this + 200);
+        if ((pSVar3 != (SubchannelMaskInfo *)0x0) && (pSVar3[4] != (SubchannelMaskInfo)0x0)) {
+          pCVar12 = (CExpressionValue *)&local_d8;
+          lVar11 = CExpressionValue::ApplyMaskToValue(pCVar12,pSVar3);
+          uVar15 = (ulong)pCVar12;
+          if (lVar11 < 0) {
+            uVar23 = 0x4ca;
+            goto LAB_5;
           }
         }
         if (local_90 == *(int *)(this + 0x98)) {
-          if (bVar11) {
+          if (bVar24) {
             pCVar17 = param_1;
-            lVar12 = CExpressionValueStack::PushConstant(param_1,local_d8);
+            lVar11 = CExpressionValueStack::PushConstant(param_1,(CExpressionValue *)&local_d8);
             uVar15 = (ulong)pCVar17;
-            if (lVar12 < 0) {
-              uVar21 = 0x4c2;
-              goto LAB_4;
+            if (lVar11 < 0) {
+              uVar23 = 0x4d4;
+              goto LAB_5;
             }
           }
           else {
-            CExpressionValue::CopyFrom
-                      ((CExpressionValue *)
-                       ((ulonglong)(*(int *)(param_1 + 0x10) - 1) * 0x50 +
-                       *(longlong *)(param_1 + 0x18)),local_d8);
+            pCVar12 = CExpressionValueStack::PeekStackValue(param_1,0);
+            CExpressionValue::CopyFrom(pCVar12,(CExpressionValue *)&local_d8);
           }
-          pLVar18 = &local_98;
-          Microsoft::WRL::ComPtr<CPathData>::InternalRelease((ComPtr<CPathData> *)&pLVar18->s);
-          goto LAB_5;
+          pCVar19 = (ComPtr<CPathData> *)&local_98;
+          Microsoft::WRL::ComPtr<CPathData>::InternalRelease(pCVar19);
+          uVar15 = (ulong)pCVar19;
+          goto LAB_6;
         }
-        lVar12 = -0x7ff8ffa9;
-        uVar21 = 0x4bd;
+        lVar11 = -0x7ff8ffa9;
+        uVar23 = 0x4cf;
       }
     }
-LAB_4:
+LAB_5:
     MilInstrumentationCheckHR_MaybeFailFast
-              (uVar15,(long *)&DAT_6,2,lVar12,uVar21,(void *)0x0);
-    Microsoft::WRL::ComPtr<CPathData>::InternalRelease((ComPtr<CPathData> *)&local_98.s);
-    goto LAB_7;
-  }
-  bVar11 = false;
-  bVar10 = IsExpressionValueValid
-                     ((CBaseExpression *)&pLVar18->s,
-                      (CExpressionValue *)
-                      ((ulonglong)(*(int *)(param_1 + 0x10) - 1) * 0x50 +
-                      *(longlong *)(param_1 + 0x18)));
-  if (!bVar10) goto LAB_3;
-LAB_5:
-  uVar15 = (ulong)pLVar18;
-  if (*(int *)(param_1 + 0x10) != local_f8 + 1) {
-    lVar12 = -0x7fffbffb;
-    uVar21 = 0x4d6;
+              (uVar15,(long *)&DAT_7,2,lVar11,uVar23,(void *)0x0);
+    Microsoft::WRL::ComPtr<CPathData>::InternalRelease((ComPtr<CPathData> *)&local_98);
+    goto LAB_8;
+  }
+LAB_6:
+  if (*(int *)(param_1 + 0x10) != local_100 + 1) {
+    lVar11 = -0x7fffbffb;
+    uVar23 = 0x4e8;
     goto LAB_1;
   }
-  LVar19.QuadPart = 0;
-  if (this_02 != (LARGE_INTEGER *)0x0) {
-    pLVar18 = &local_e8;
-    BVar13 = QueryPerformanceCounter(pLVar18);
-    uVar15 = (ulong)pLVar18;
-    local_108.QuadPart = 0;
-    LVar19.QuadPart = local_108.QuadPart;
-    if (BVar13 != 0) {
-      LVar19 = local_e8;
-      local_108 = local_e8;
-    }
-  }
-  bVar11 = false;
-  pCVar20 = (CExpressionValue *)
-            ((ulonglong)(*(int *)(param_1 + 0x10) - 1) * 0x50 + *(longlong *)(param_1 + 0x18));
-  if ((*(uint *)(*(longlong *)(this + 0x148) + 4) & 0x40000000) != 0) {
-    this_00 = (CExpressionValue *)(this + 0x48);
-    bVar11 = CExpressionValue::operator==(this_00,pCVar20);
-    uVar15 = (ulong)this_00;
-    bVar11 = !bVar11;
-  }
-  iVar2 = *(int *)(pCVar20 + 0x48);
-  if (iVar2 == 0x12) {
-    *(undefined4 *)(this + 0x48) = *(undefined4 *)pCVar20;
+  LVar20.QuadPart = 0;
+  if (this_00 != (CExpressionPerformanceCounter *)0x0) {
+    BVar10 = QueryPerformanceCounter(&local_e8);
+    local_110.QuadPart = 0;
+    LVar20.QuadPart = local_110.QuadPart;
+    if (BVar10 != 0) {
+      LVar20 = local_e8;
+      local_110 = local_e8;
+    }
+  }
+  pCVar13 = CExpressionValueStack::PeekStackValue(param_1,0);
+  pCVar12 = *(CExpressionValue **)(this + 0x148);
+  bVar9 = false;
+  if ((*(uint *)(pCVar12 + 4) & 0x40000000) != 0) {
+    pCVar12 = (CExpressionValue *)(this + 0x48);
+    bVar24 = CExpressionValue::operator==(pCVar12,pCVar13);
+    bVar9 = false;
+    if (!bVar24) {
+      bVar9 = true;
+    }
+  }
+  uVar15 = (ulong)pCVar12;
+  uVar23 = *(int *)(pCVar13 + 0x48) - 0xb;
+  if (0xfe < uVar23) goto switchD_18005471c_caseD_c;
+  uVar15 = (&switchD_18005471c::switchdataD_180054ac0)
+           [(&switchD_18005471c::switchdataD_180054af0)[(int)uVar23]] + 0x80000000;
+  switch(*(int *)(pCVar13 + 0x48)) {
+  case 0xb:
+    pCVar4 = *(CPathData **)(pCVar13 + 0x40);
+    pCVar19 = (ComPtr<CPathData> *)(this + 0x88);
+    *(undefined4 *)(this + 0x90) = 0xb;
+    this[0x94] = (CBaseExpression)0x1;
+    Microsoft::WRL::ComPtr<CPathData>::operator=(pCVar19,pCVar4);
+    uVar15 = (ulong)pCVar19;
+    break;
+  case 0x11:
+    *(CExpressionValue *)(this + 0x48) = *pCVar13;
+    *(undefined4 *)(this + 0x90) = 0x11;
+    this[0x94] = (CBaseExpression)0x1;
+    break;
+  case 0x12:
+    *(undefined4 *)(this + 0x48) = *(undefined4 *)pCVar13;
     *(undefined4 *)(this + 0x90) = 0x12;
-    goto LAB_8;
-  }
-  if (iVar2 == 0x11) {
-    this[0x48] = *(CBaseExpression *)pCVar20;
-    *(undefined4 *)(this + 0x90) = 0x11;
-    goto LAB_8;
-  }
-  if (iVar2 == 0x23) {
+    this[0x94] = (CBaseExpression)0x1;
+    break;
+  case 0x23:
     *(undefined4 *)(this + 0x90) = 0x23;
-    *(undefined8 *)(this + 0x48) = *(undefined8 *)pCVar20;
-    goto LAB_8;
-  }
-  if (0xfe < iVar2 - 0xbU) goto switchD_180086845_caseD_c;
-  uVar15 = (&switchD_180086845::switchdataD_180086a0c)
-           [(&switchD_180086845::switchdataD_180086a30)[(int)(iVar2 - 0xbU)]] + 0x80000000;
-  switch(iVar2) {
-  case 0xb:
-    pCVar6 = *(CPathData **)(pCVar20 + 0x40);
-    this_01 = (ComPtr<CPathData> *)(this + 0x88);
-    *(undefined4 *)(this + 0x90) = 0xb;
-    this[0x94] = (CBaseExpression)0x1;
-    Microsoft::WRL::ComPtr<CPathData>::operator=(this_01,pCVar6);
-    uVar15 = (ulong)this_01;
-  default:
-    goto switchD_180086845_caseD_c;
+    *(undefined8 *)(this + 0x48) = *(undefined8 *)pCVar13;
+    this[0x94] = (CBaseExpression)0x1;
+    break;
   case 0x2a:
     *(undefined4 *)(this + 0x90) = 0x2a;
-    *(undefined4 *)(this + 0x48) = *(undefined4 *)pCVar20;
+    *(undefined4 *)(this + 0x48) = *(undefined4 *)pCVar13;
+    this[0x94] = (CBaseExpression)0x1;
     break;
   case 0x34:
     *(undefined4 *)(this + 0x90) = 0x34;
-    *(undefined8 *)(this + 0x48) = *(undefined8 *)pCVar20;
-    *(undefined4 *)(this + 0x50) = *(undefined4 *)(pCVar20 + 8);
+    *(undefined8 *)(this + 0x48) = *(undefined8 *)pCVar13;
+    *(undefined4 *)(this + 0x50) = *(undefined4 *)(pCVar13 + 8);
+    this[0x94] = (CBaseExpression)0x1;
     break;
   case 0x45:
     *(undefined4 *)(this + 0x90) = 0x45;
-    uVar7 = *(undefined8 *)(pCVar20 + 8);
-    *(undefined8 *)(this + 0x48) = *(undefined8 *)pCVar20;
-    *(undefined8 *)(this + 0x50) = uVar7;
-    break;
+    goto LAB_9;
   case 0x46:
     *(undefined4 *)(this + 0x90) = 0x46;
-    uVar7 = *(undefined8 *)(pCVar20 + 8);
-    *(undefined8 *)(this + 0x48) = *(undefined8 *)pCVar20;
-    *(undefined8 *)(this + 0x50) = uVar7;
-    break;
+    goto LAB_9;
   case 0x47:
     *(undefined4 *)(this + 0x90) = 0x47;
-    uVar7 = *(undefined8 *)(pCVar20 + 8);
-    *(undefined8 *)(this + 0x48) = *(undefined8 *)pCVar20;
+LAB_9:
+    uVar6 = *(undefined8 *)pCVar13;
+    uVar7 = *(undefined8 *)(pCVar13 + 8);
+    this[0x94] = (CBaseExpression)0x1;
+    *(undefined8 *)(this + 0x48) = uVar6;
     *(undefined8 *)(this + 0x50) = uVar7;
     break;
   case 0x68:
     *(undefined4 *)(this + 0x90) = 0x68;
-    uVar7 = *(undefined8 *)(pCVar20 + 8);
-    *(undefined8 *)(this + 0x48) = *(undefined8 *)pCVar20;
-    *(undefined8 *)(this + 0x50) = uVar7;
-    *(undefined8 *)(this + 0x58) = *(undefined8 *)(pCVar20 + 0x10);
+    uVar6 = *(undefined8 *)(pCVar13 + 8);
+    *(undefined8 *)(this + 0x48) = *(undefined8 *)pCVar13;
+    *(undefined8 *)(this + 0x50) = uVar6;
+    *(undefined8 *)(this + 0x58) = *(undefined8 *)(pCVar13 + 0x10);
+    this[0x94] = (CBaseExpression)0x1;
     break;
   case 0x109:
     *(undefined4 *)(this + 0x90) = 0x109;
-    uVar7 = *(undefined8 *)(pCVar20 + 8);
-    *(undefined8 *)(this + 0x48) = *(undefined8 *)pCVar20;
-    *(undefined8 *)(this + 0x50) = uVar7;
-    uVar7 = *(undefined8 *)(pCVar20 + 0x18);
-    *(undefined8 *)(this + 0x58) = *(undefined8 *)(pCVar20 + 0x10);
-    *(undefined8 *)(this + 0x60) = uVar7;
-    uVar7 = *(undefined8 *)(pCVar20 + 0x28);
-    *(undefined8 *)(this + 0x68) = *(undefined8 *)(pCVar20 + 0x20);
-    *(undefined8 *)(this + 0x70) = uVar7;
-    uVar7 = *(undefined8 *)(pCVar20 + 0x38);
-    *(undefined8 *)(this + 0x78) = *(undefined8 *)(pCVar20 + 0x30);
+    uVar6 = *(undefined8 *)(pCVar13 + 8);
+    *(undefined8 *)(this + 0x48) = *(undefined8 *)pCVar13;
+    *(undefined8 *)(this + 0x50) = uVar6;
+    uVar6 = *(undefined8 *)(pCVar13 + 0x18);
+    *(undefined8 *)(this + 0x58) = *(undefined8 *)(pCVar13 + 0x10);
+    *(undefined8 *)(this + 0x60) = uVar6;
+    uVar6 = *(undefined8 *)(pCVar13 + 0x28);
+    *(undefined8 *)(this + 0x68) = *(undefined8 *)(pCVar13 + 0x20);
+    *(undefined8 *)(this + 0x70) = uVar6;
+    uVar6 = *(undefined8 *)(pCVar13 + 0x30);
+    uVar7 = *(undefined8 *)(pCVar13 + 0x38);
+    this[0x94] = (CBaseExpression)0x1;
+    *(undefined8 *)(this + 0x78) = uVar6;
     *(undefined8 *)(this + 0x80) = uVar7;
   }
-LAB_8:
-  this[0x94] = (CBaseExpression)0x1;
-switchD_180086845_caseD_c:
-  if (bVar11) {
+switchD_18005471c_caseD_c:
+  if (bVar9) {
     LogSetOutputValue(this);
-    uVar21 = GetTracingCookie(this);
-    pCVar20 = local_d8;
-    lVar12 = _StringCchPrintfW__YAJPEAG_KPEBGZZ
-                       ((STRSAFE_LPWSTR)pCVar20,0x3c,L"DwmExpression_SetValue_%d",(ulonglong)uVar21)
-    ;
-    uVar15 = (ulong)pCVar20;
-    if (-1 < lVar12) {
-      hEvent = CreateEventW((LPSECURITY_ATTRIBUTES)0x0,1,0,(LPCWSTR)local_d8);
+    uVar23 = GetTracingCookie(this);
+    pszDest = (STRSAFE_LPWSTR)&local_d8;
+    lVar11 = _StringCchPrintfW__YAJPEAG_KPEBGZZ
+                       (pszDest,0x3c,L"DwmExpression_SetValue_%d",(ulonglong)uVar23);
+    uVar15 = (ulong)pszDest;
+    if (-1 < lVar11) {
+      hEvent = CreateEventW((LPSECURITY_ATTRIBUTES)0x0,1,0,(LPCWSTR)&local_d8);
       SetEvent(hEvent);
       CloseHandle(hEvent);
       uVar15 = (ulong)hEvent;
-      goto LAB_9;
-    }
-    uVar21 = 0x24d;
+      goto LAB_10;
+    }
+    uVar23 = 0x24e;
   }
   else {
-LAB_9:
+LAB_10:
     if (((byte)this[0xd8] & 3) != 3) {
-LAB_10:
-      if ((bool *)LVar19.QuadPart != (bool *)0x0) {
-        _Var14 = QpcStopwatch::GetElapsed((QpcStopwatch *)&local_108.s);
-        CExpressionPerformanceCounter::AddDurationSample
-                  ((CExpressionPerformanceCounter *)&this_02->s,5,_Var14);
+LAB_11:
+      if ((bool *)LVar20.QuadPart != (bool *)0x0) {
+        _Var14 = QpcStopwatch::GetElapsed((QpcStopwatch *)&local_110.s);
+        CExpressionPerformanceCounter::AddDurationSample(this_00,5,_Var14);
       }
       *(int *)(param_1 + 0x10) = *(int *)(param_1 + 0x10) + -1;
-      lVar12 = 0;
+      lVar11 = 0;
       goto LAB_0;
     }
     if ((*(longlong *)(this + 0xb8) == 0) ||
-       (pCVar3 = *(CResource **)(*(longlong *)(this + 0xb8) + 0x10), pCVar3 == (CResource *)0x0)) {
-      lVar12 = -0x7ff8fffa;
-      uVar21 = 0x25e;
+       (pCVar5 = *(CResource **)(*(longlong *)(this + 0xb8) + 0x10), pCVar5 == (CResource *)0x0)) {
+      lVar11 = -0x7ff8fffa;
+      uVar23 = 0x25f;
     }
     else {
-      lVar12 = SetOutputValueOnTarget(this,pCVar3);
+      lVar11 = SetOutputValueOnTarget(this,pCVar5);
       uVar15 = (ulong)this;
-      if (-1 < lVar12) goto LAB_10;
-      uVar21 = 0x25f;
-    }
-  }
-  MilInstrumentationCheckHR_MaybeFailFast(uVar15,(long *)0x0,0,lVar12,uVar21,(void *)0x0);
-  uVar21 = 0x4e3;
-LAB_2:
-  MilInstrumentationCheckHR_MaybeFailFast(uVar15,(long *)&DAT_6,2,lVar12,uVar21,(void *)0x0)
+      if (-1 < lVar11) goto LAB_11;
+      uVar23 = 0x260;
+    }
+  }
+  MilInstrumentationCheckHR_MaybeFailFast(uVar15,(long *)0x0,0,lVar11,uVar23,(void *)0x0);
+  uVar23 = 0x4f5;
+LAB_1:
+  MilInstrumentationCheckHR_MaybeFailFast(uVar15,(long *)&DAT_7,2,lVar11,uVar23,(void *)0x0)
   ;
-LAB_7:
-  this_02 = local_110;
-  if (local_f8 < *(uint *)(param_1 + 0x10)) {
-    lVar12 = FUN_18014dfb7();
-    return lVar12;
+LAB_8:
+  uVar23 = *(uint *)(param_1 + 0x10);
+  this_00 = local_108;
+  if (local_100 < uVar23) {
+    uVar22 = (ulonglong)(uVar23 - local_100);
+    do {
+      uVar23 = uVar23 - 1;
+      uVar22 = uVar22 - 1;
+    } while (uVar22 != 0);
+    *(uint *)(param_1 + 0x10) = uVar23;
   }
 LAB_0:
-  if (LVar9.QuadPart != 0) {
-    _Var14 = QpcStopwatch::GetElapsed((QpcStopwatch *)&local_f0.s);
-    CExpressionPerformanceCounter::AddDurationSample
-              ((CExpressionPerformanceCounter *)&this_02->s,0,_Var14);
-  }
-  return lVar12;
+  if (lVar21 != 0) {
+    _Var14 = QpcStopwatch::GetElapsed((QpcStopwatch *)&local_e0);
+    CExpressionPerformanceCounter::AddDurationSample(this_00,0,_Var14);
+  }
+  return lVar11;
 }
 

```


## CExpressionValueStack::QuaternionFromRotationMatrix

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.36|
|i_ratio|0.29|
|m_ratio|0.86|
|b_ratio|0.79|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|QuaternionFromRotationMatrix|QuaternionFromRotationMatrix|
|fullname|CExpressionValueStack::QuaternionFromRotationMatrix|CExpressionValueStack::QuaternionFromRotationMatrix|
|refcount|2|2|
|`length`|235|292|
|`called`|D3DXQuaternionRotationMatrix<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXQuaternionRotationMatrix<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1802588b8|18025c418|
|sig|long __thiscall QuaternionFromRotationMatrix(CExpressionValueStack * this)|long __thiscall QuaternionFromRotationMatrix(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::QuaternionFromRotationMatrix Called Diff


```diff
--- CExpressionValueStack::QuaternionFromRotationMatrix called
+++ CExpressionValueStack::QuaternionFromRotationMatrix called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::QuaternionFromRotationMatrix Calling Diff


```diff
--- CExpressionValueStack::QuaternionFromRotationMatrix calling
+++ CExpressionValueStack::QuaternionFromRotationMatrix calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::QuaternionFromRotationMatrix Diff


```diff
--- CExpressionValueStack::QuaternionFromRotationMatrix
+++ CExpressionValueStack::QuaternionFromRotationMatrix
@@ -1,59 +1,71 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CExpressionValueStack::QuaternionFromRotationMatrix(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::QuaternionFromRotationMatrix(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
-  longlong lVar2;
-  ulonglong uVar3;
-  undefined1 auStackY_98 [32];
-  uint uVar4;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  undefined1 auStackY_a8 [32];
+  uint uVar5;
+  undefined8 local_78;
+  undefined8 uStack_70;
   undefined8 local_68;
   undefined8 uStack_60;
   undefined8 local_58;
   undefined8 uStack_50;
   undefined8 local_48;
   undefined8 uStack_40;
   undefined8 local_38;
   undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
   ulonglong local_18;
   
-  local_18 = __security_cookie ^ (ulonglong)auStackY_98;
+  local_18 = __security_cookie ^ (ulonglong)auStackY_a8;
   if (*(int *)(this + 0x10) == 0) {
-    uVar4 = 0x1b87;
+    uVar5 = 0x1b97;
   }
   else {
-    lVar2 = *(longlong *)(this + 0x18);
-    uVar3 = (ulonglong)(*(int *)(this + 0x10) - 1);
-    if (*(int *)(lVar2 + 0x48 + uVar3 * 0x50) == 0x109) {
-      puVar1 = (undefined8 *)(lVar2 + uVar3 * 0x50);
-      local_58 = *puVar1;
-      uStack_50 = puVar1[1];
-      puVar1 = (undefined8 *)(lVar2 + 0x10 + uVar3 * 0x50);
-      local_48 = *puVar1;
-      uStack_40 = puVar1[1];
-      puVar1 = (undefined8 *)(lVar2 + 0x20 + uVar3 * 0x50);
-      local_38 = *puVar1;
-      uStack_30 = puVar1[1];
-      puVar1 = (undefined8 *)(lVar2 + 0x30 + uVar3 * 0x50);
-      local_28 = *puVar1;
-      uStack_20 = puVar1[1];
-      D3DXQuaternionRotationMatrix((D2DQuaternion *)&local_68,(D2DMatrix *)&local_58);
-      *(undefined4 *)(lVar2 + 0x48 + uVar3 * 0x50) = 0x47;
-      *(undefined1 *)(lVar2 + 0x4c + uVar3 * 0x50) = 1;
-      puVar1 = (undefined8 *)(lVar2 + uVar3 * 0x50);
-      *puVar1 = local_68;
-      puVar1[1] = uStack_60;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_68)
+      ;
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)&local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(int *)(pCVar4 + 0x48) == 0x109) {
+      local_68 = *(undefined8 *)pCVar4;
+      uStack_60 = *(undefined8 *)(pCVar4 + 8);
+      local_58 = *(undefined8 *)(pCVar4 + 0x10);
+      uStack_50 = *(undefined8 *)(pCVar4 + 0x18);
+      local_48 = *(undefined8 *)(pCVar4 + 0x20);
+      uStack_40 = *(undefined8 *)(pCVar4 + 0x28);
+      local_38 = *(undefined8 *)(pCVar4 + 0x30);
+      uStack_30 = *(undefined8 *)(pCVar4 + 0x38);
+      D3DXQuaternionRotationMatrix((D2DQuaternion *)&local_78,(D2DMatrix *)&local_68);
+      *(undefined4 *)(pCVar4 + 0x48) = 0x47;
+      pCVar4[0x4c] = (CExpressionValue)0x1;
+      *(undefined8 *)pCVar4 = local_78;
+      *(undefined8 *)(pCVar4 + 8) = uStack_70;
       return 0;
     }
-    uVar4 = 0x1b8c;
+    uVar5 = 0x1b9c;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar4,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Absolute

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.27|
|i_ratio|0.19|
|m_ratio|0.88|
|b_ratio|0.86|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Absolute|Absolute|
|fullname|CExpressionValueStack::Absolute|CExpressionValueStack::Absolute|
|refcount|2|2|
|`length`|381|446|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180254918|180256608|
|sig|long __thiscall Absolute(CExpressionValueStack * this)|long __thiscall Absolute(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Absolute Called Diff


```diff
--- CExpressionValueStack::Absolute called
+++ CExpressionValueStack::Absolute called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Absolute Calling Diff


```diff
--- CExpressionValueStack::Absolute calling
+++ CExpressionValueStack::Absolute calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Absolute Diff


```diff
--- CExpressionValueStack::Absolute
+++ CExpressionValueStack::Absolute
@@ -1,63 +1,74 @@
 
 /* public: long __cdecl CExpressionValueStack::Absolute(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Absolute(CExpressionValueStack *this)
 
 {
   CExpressionValueStack *pCVar1;
-  int iVar2;
-  ulonglong uVar3;
-  ulonglong uVar4;
-  long lVar5;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  long lVar4;
+  CExpressionValue *pCVar5;
   uint uVar6;
-  undefined8 local_18;
+  undefined8 local_68;
+  CExpressionValue local_58 [80];
   
-  pCVar1 = this + 0x10;
-  if (*(int *)pCVar1 == 0) {
-    uVar6 = 0x292;
+  if (*(int *)(this + 0x10) == 0) {
+    uVar6 = 0x2a2;
 LAB_0:
-    lVar5 = -0x7fffbffb;
+    lVar4 = -0x7fffbffb;
     MilInstrumentationCheckHR_MaybeFailFast
               ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   }
   else {
-    this = *(CExpressionValueStack **)(this + 0x18);
-    uVar4 = (ulonglong)(*(int *)pCVar1 - 1);
-    iVar2 = *(int *)(this + uVar4 * 0x50 + 0x48);
-    if (iVar2 == 0x12) {
-      *(uint *)(this + uVar4 * 0x50) = *(uint *)(this + uVar4 * 0x50) & 0x7fffffff;
-      *(undefined4 *)(this + uVar4 * 0x50 + 0x48) = 0x12;
-    }
-    else if (iVar2 == 0x23) {
-      uVar6 = *(uint *)(this + uVar4 * 0x50 + 4);
-      *(uint *)(this + uVar4 * 0x50) = *(uint *)(this + uVar4 * 0x50) & 0x7fffffff;
-      *(uint *)(this + uVar4 * 0x50 + 4) = uVar6 & 0x7fffffff;
-      *(undefined4 *)(this + uVar4 * 0x50 + 0x48) = 0x23;
-    }
-    else if (iVar2 == 0x34) {
-      uVar6 = *(uint *)(this + uVar4 * 0x50 + 8);
-      local_18._0_4_ = (uint)*(undefined8 *)(this + uVar4 * 0x50);
-      local_18._4_4_ = (uint)((ulonglong)*(undefined8 *)(this + uVar4 * 0x50) >> 0x20);
-      *(undefined4 *)(this + uVar4 * 0x50 + 0x48) = 0x34;
-      *(uint *)(this + uVar4 * 0x50) = (uint)local_18 & 0x7fffffff;
-      *(uint *)(this + uVar4 * 0x50 + 4) = local_18._4_4_ & 0x7fffffff;
-      *(uint *)(this + uVar4 * 0x50 + 8) = uVar6 & 0x7fffffff;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar5 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
     }
     else {
-      if (iVar2 != 0x45) {
-        uVar6 = 0x2cc;
+      this = this + 0x18;
+      pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    uVar6 = *(uint *)(pCVar5 + 0x48);
+    if (uVar6 == 0x12) {
+      *(uint *)pCVar5 = *(uint *)pCVar5 & 0x7fffffff;
+      *(uint *)(pCVar5 + 0x48) = 0x12;
+    }
+    else if (uVar6 == 0x23) {
+      *(uint *)pCVar5 = *(uint *)pCVar5 & 0x7fffffff;
+      *(uint *)(pCVar5 + 4) = *(uint *)(pCVar5 + 4) & 0x7fffffff;
+      *(uint *)(pCVar5 + 0x48) = 0x23;
+    }
+    else if (uVar6 == 0x34) {
+      local_68._0_4_ = (uint)*(ulonglong *)pCVar5;
+      local_68._4_4_ = (uint)(*(ulonglong *)pCVar5 >> 0x20);
+      *(uint *)(pCVar5 + 0x48) = 0x34;
+      *(uint *)pCVar5 = (uint)local_68 & 0x7fffffff;
+      *(uint *)(pCVar5 + 4) = local_68._4_4_ & 0x7fffffff;
+      *(uint *)(pCVar5 + 8) = *(uint *)(pCVar5 + 8) & 0x7fffffff;
+    }
+    else {
+      if (uVar6 != 0x45) {
+        uVar6 = 0x2dc;
         goto LAB_0;
       }
-      local_18 = *(ulonglong *)(this + uVar4 * 0x50);
-      uVar3 = *(ulonglong *)(this + uVar4 * 0x50 + 8);
-      *(undefined4 *)(this + uVar4 * 0x50 + 0x48) = 0x45;
-      local_18 = local_18 & 0x7fffffff7fffffff;
-      *(ulonglong *)(this + uVar4 * 0x50) = local_18;
-      *(ulonglong *)(this + uVar4 * 0x50 + 8) = uVar3 & 0x7fffffff7fffffff;
+      *(uint *)(pCVar5 + 0x48) = 0x45;
+      local_68 = *(ulonglong *)pCVar5 & 0x7fffffff7fffffff;
+      *(ulonglong *)pCVar5 = local_68;
+      *(ulonglong *)(pCVar5 + 8) = *(ulonglong *)(pCVar5 + 8) & 0x7fffffff7fffffff;
     }
-    this[uVar4 * 0x50 + 0x4c] = (CExpressionValueStack)0x1;
-    lVar5 = 0;
+    pCVar5[0x4c] = (CExpressionValue)0x1;
+    lVar4 = 0;
   }
-  return lVar5;
+  return lVar4;
 }
 

```


## CExpressionValueStack::Matrix4x4FromRotationZ

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.24|
|i_ratio|0.07|
|m_ratio|0.69|
|b_ratio|0.53|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix4x4FromRotationZ|Matrix4x4FromRotationZ|
|fullname|CExpressionValueStack::Matrix4x4FromRotationZ|CExpressionValueStack::Matrix4x4FromRotationZ|
|refcount|2|2|
|`length`|313|598|
|`called`|D2DMatrixRotationZ<br>D2DMatrixRotationZ<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrixRotationZ<br>D2DMatrixRotationZ<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|2|2|
|`address`|1802571cc|18025a234|
|sig|long __thiscall Matrix4x4FromRotationZ(CExpressionValueStack * this, uint param_1)|long __thiscall Matrix4x4FromRotationZ(CExpressionValueStack * this, uint param_1)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix4x4FromRotationZ Called Diff


```diff
--- CExpressionValueStack::Matrix4x4FromRotationZ called
+++ CExpressionValueStack::Matrix4x4FromRotationZ called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -2,0 +6 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix4x4FromRotationZ Calling Diff


```diff
--- CExpressionValueStack::Matrix4x4FromRotationZ calling
+++ CExpressionValueStack::Matrix4x4FromRotationZ calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Matrix4x4FromRotationZ Diff


```diff
--- CExpressionValueStack::Matrix4x4FromRotationZ
+++ CExpressionValueStack::Matrix4x4FromRotationZ
@@ -1,62 +1,122 @@
 
 /* public: long __cdecl CExpressionValueStack::Matrix4x4FromRotationZ(unsigned int) __ptr64 */
 
 long __thiscall
 CExpressionValueStack::Matrix4x4FromRotationZ(CExpressionValueStack *this,uint param_1)
 
 {
-  undefined8 *puVar1;
-  float *pfVar2;
-  uint uVar3;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  uint uVar6;
+  undefined8 local_88;
+  undefined4 local_80;
+  undefined8 local_78;
+  undefined8 uStack_70;
+  undefined8 local_68;
+  undefined8 uStack_60;
   undefined8 local_58;
-  undefined4 local_50;
+  undefined8 uStack_50;
   undefined8 local_48;
   undefined8 uStack_40;
-  undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
   
-  uVar3 = *(uint *)(this + 0x10);
-  if (uVar3 < param_1) {
-    uVar3 = 0x1973;
+  pCVar1 = this + 0x10;
+  pCVar3 = (CExpressionValue *)this;
+  if (*(uint *)pCVar1 < param_1) {
+    uVar6 = 0x1983;
   }
   else {
     if (param_1 == 1) {
-      pfVar2 = (float *)((ulonglong)(uVar3 - 1) * 0x50 + *(longlong *)(this + 0x18));
-      if (pfVar2[0x12] == 2.52234e-44) {
-        D2DMatrixRotationZ((D2DMatrix *)&local_48,*pfVar2);
+      bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar3 = (CExpressionValue *)
+                 CExpressionValue::CExpressionValue((CExpressionValue *)&local_78);
+        pCVar5 = &s_emptyValue;
+        CExpressionValue::operator=(&s_emptyValue,pCVar3);
+        pCVar3 = (CExpressionValue *)&local_78;
+        CExpressionValue::~CExpressionValue(pCVar3);
+      }
+      else {
+        pCVar3 = (CExpressionValue *)(this + 0x18);
+        pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar3,*(uint *)pCVar1 - 1);
+      }
+      if (*(float *)(pCVar5 + 0x48) == 2.52234e-44) {
+        D2DMatrixRotationZ((D2DMatrix *)&local_78,*(float *)pCVar5);
+        *(undefined8 *)pCVar5 = local_78;
+        *(undefined8 *)(pCVar5 + 8) = uStack_70;
+        *(float *)(pCVar5 + 0x48) = 3.71344e-43;
+        *(undefined8 *)(pCVar5 + 0x10) = local_68;
+        *(undefined8 *)(pCVar5 + 0x18) = uStack_60;
+        pCVar5[0x4c] = (CExpressionValue)0x1;
+        *(undefined8 *)(pCVar5 + 0x20) = local_58;
+        *(undefined8 *)(pCVar5 + 0x28) = uStack_50;
+        *(undefined8 *)(pCVar5 + 0x30) = local_48;
+        *(undefined8 *)(pCVar5 + 0x38) = uStack_40;
 LAB_0:
-        *(undefined8 *)pfVar2 = local_48;
-        *(undefined8 *)(pfVar2 + 2) = uStack_40;
-        *(undefined8 *)(pfVar2 + 4) = local_38;
-        *(undefined8 *)(pfVar2 + 6) = uStack_30;
-        *(undefined8 *)(pfVar2 + 8) = local_28;
-        *(undefined8 *)(pfVar2 + 10) = uStack_20;
-        *(undefined1 *)(pfVar2 + 0x13) = 1;
-        *(undefined8 *)(pfVar2 + 0xc) = local_18;
-        *(undefined8 *)(pfVar2 + 0xe) = uStack_10;
-        pfVar2[0x12] = 3.71344e-43;
-        *(uint *)(this + 0x10) = *(int *)(this + 0x10) + (1 - param_1);
+        *(uint *)pCVar1 = *(uint *)pCVar1 + (1 - param_1);
         return 0;
       }
     }
     else if (param_1 == 2) {
-      pfVar2 = (float *)((ulonglong)(uVar3 - 2) * 0x50 + *(longlong *)(this + 0x18));
-      puVar1 = (undefined8 *)((ulonglong)(uVar3 - 1) * 0x50 + *(longlong *)(this + 0x18));
-      if ((pfVar2[0x12] == 2.52234e-44) && (*(int *)(puVar1 + 9) == 0x34)) {
-        local_58 = *puVar1;
-        local_50 = *(undefined4 *)(puVar1 + 1);
-        D2DMatrixRotationZ(&local_48,*pfVar2,&local_58);
+      bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      pCVar3 = (CExpressionValue *)(this + 0x18);
+      pCVar5 = &s_emptyValue;
+      if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+        pCVar4 = (CExpressionValue *)
+                 CExpressionValue::CExpressionValue((CExpressionValue *)&local_78);
+        CExpressionValue::operator=(&s_emptyValue,pCVar4);
+        CExpressionValue::~CExpressionValue((CExpressionValue *)&local_78);
+        pCVar4 = &s_emptyValue;
+      }
+      else {
+        pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar3,*(uint *)pCVar1 - 2);
+      }
+      bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar3 = (CExpressionValue *)
+                 CExpressionValue::CExpressionValue((CExpressionValue *)&local_78);
+        CExpressionValue::operator=(&s_emptyValue,pCVar3);
+        pCVar3 = (CExpressionValue *)&local_78;
+        CExpressionValue::~CExpressionValue(pCVar3);
+      }
+      else {
+        pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar3,*(uint *)pCVar1 - 1);
+      }
+      if ((*(int *)(pCVar4 + 0x48) == 0x12) && (*(int *)(pCVar5 + 0x48) == 0x34)) {
+        local_88 = *(undefined8 *)pCVar5;
+        local_80 = *(undefined4 *)(pCVar5 + 8);
+        D2DMatrixRotationZ(&local_78,*(undefined4 *)pCVar4,&local_88);
+        *(undefined4 *)(pCVar4 + 0x48) = 0x109;
+        *(undefined8 *)pCVar4 = local_78;
+        *(undefined8 *)(pCVar4 + 8) = uStack_70;
+        pCVar4[0x4c] = (CExpressionValue)0x1;
+        *(undefined8 *)(pCVar4 + 0x10) = local_68;
+        *(undefined8 *)(pCVar4 + 0x18) = uStack_60;
+        *(undefined8 *)(pCVar4 + 0x20) = local_58;
+        *(undefined8 *)(pCVar4 + 0x28) = uStack_50;
+        *(undefined8 *)(pCVar4 + 0x30) = local_48;
+        *(undefined8 *)(pCVar4 + 0x38) = uStack_40;
         goto LAB_0;
       }
     }
-    uVar3 = 0x19a1;
+    uVar6 = 0x19b1;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar3,(void *)0x0);
+            ((ulong)pCVar3,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Length

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.27|
|i_ratio|0.48|
|m_ratio|0.92|
|b_ratio|0.88|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Length|Length|
|fullname|CExpressionValueStack::Length|CExpressionValueStack::Length|
|refcount|2|2|
|`length`|393|446|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>sqrtf|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>sqrtf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1802559f0|180257f00|
|sig|long __thiscall Length(CExpressionValueStack * this)|long __thiscall Length(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Length Called Diff


```diff
--- CExpressionValueStack::Length called
+++ CExpressionValueStack::Length called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Length Calling Diff


```diff
--- CExpressionValueStack::Length calling
+++ CExpressionValueStack::Length calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Length Diff


```diff
--- CExpressionValueStack::Length
+++ CExpressionValueStack::Length
@@ -1,75 +1,81 @@
 
 /* public: long __cdecl CExpressionValueStack::Length(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Length(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  float fVar2;
-  float fVar3;
-  float fVar4;
-  undefined8 uVar5;
-  int iVar6;
-  longlong lVar7;
-  ulonglong uVar8;
-  long lVar9;
-  float fVar10;
-  uint uVar11;
-  float local_18;
-  float fStack_14;
+  bool bVar1;
+  CExpressionValue *pCVar2;
+  long lVar3;
+  CExpressionValue *pCVar4;
+  float fVar5;
+  uint uVar6;
+  float local_68;
+  float fStack_64;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar11 = 0xd2c;
+    uVar6 = 0xd3c;
 LAB_0:
-    lVar9 = -0x7fffbffb;
+    lVar3 = -0x7fffbffb;
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar11,(void *)0x0);
+              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   }
   else {
-    lVar7 = *(longlong *)(this + 0x18);
-    uVar8 = (ulonglong)(*(int *)(this + 0x10) - 1);
-    this = (CExpressionValueStack *)0x12;
-    iVar6 = *(int *)(lVar7 + 0x48 + uVar8 * 0x50);
-    if (iVar6 == 0x12) {
-      fVar10 = ABS(*(float *)(lVar7 + uVar8 * 0x50));
-      *(undefined4 *)(lVar7 + 0x48 + uVar8 * 0x50) = 0x12;
+    bVar1 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar1) && (*(uint *)(this + 0x30) <= *(int *)(this + 0x10) - 1U)) {
+      pCVar2 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar2);
+      CExpressionValue::~CExpressionValue(local_58);
     }
     else {
-      if (iVar6 == 0x23) {
-        fVar10 = *(float *)(lVar7 + uVar8 * 0x50);
-        fVar2 = *(float *)(lVar7 + 4 + uVar8 * 0x50);
-        fVar10 = fVar10 * fVar10 + fVar2 * fVar2;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)(this + 0x18),*(int *)(this + 0x10) - 1U);
+    }
+    fVar5 = *(float *)(pCVar4 + 0x48);
+    this = (CExpressionValueStack *)0x12;
+    if (fVar5 == 2.52234e-44) {
+      fVar5 = ABS(*(float *)pCVar4);
+      *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+    }
+    else {
+      if (fVar5 == 4.90454e-44) {
+        fVar5 = *(float *)pCVar4 * *(float *)pCVar4 +
+                *(float *)(pCVar4 + 4) * *(float *)(pCVar4 + 4);
       }
-      else if (iVar6 == 0x34) {
-        uVar5 = *(undefined8 *)(lVar7 + uVar8 * 0x50);
-        fVar10 = *(float *)(lVar7 + 8 + uVar8 * 0x50);
-        fStack_14 = (float)((ulonglong)uVar5 >> 0x20);
-        local_18 = (float)uVar5;
-        fVar10 = fStack_14 * fStack_14 + local_18 * local_18 + fVar10 * fVar10;
+      else if (fVar5 == 7.28675e-44) {
+        fStack_64 = (float)((ulonglong)*(undefined8 *)pCVar4 >> 0x20);
+        local_68 = (float)*(undefined8 *)pCVar4;
+        fVar5 = fStack_64 * fStack_64 + local_68 * local_68 +
+                *(float *)(pCVar4 + 8) * *(float *)(pCVar4 + 8);
       }
-      else if (iVar6 == 0x45) {
-        pfVar1 = (float *)(lVar7 + uVar8 * 0x50);
-        fVar10 = pfVar1[1] * pfVar1[1] + *pfVar1 * *pfVar1 + pfVar1[2] * pfVar1[2] +
-                 pfVar1[3] * pfVar1[3];
+      else if (fVar5 == 9.66896e-44) {
+        fVar5 = *(float *)(pCVar4 + 4) * *(float *)(pCVar4 + 4) +
+                *(float *)pCVar4 * *(float *)pCVar4 +
+                *(float *)(pCVar4 + 8) * *(float *)(pCVar4 + 8) +
+                *(float *)(pCVar4 + 0xc) * *(float *)(pCVar4 + 0xc);
       }
       else {
-        if (iVar6 != 0x47) {
-          uVar11 = 0xd66;
+        if (fVar5 != 9.94922e-44) {
+          uVar6 = 0xd76;
           goto LAB_0;
         }
-        fVar10 = *(float *)(lVar7 + 4 + uVar8 * 0x50);
-        fVar2 = *(float *)(lVar7 + uVar8 * 0x50);
-        fVar3 = *(float *)(lVar7 + 8 + uVar8 * 0x50);
-        fVar4 = *(float *)(lVar7 + 0xc + uVar8 * 0x50);
-        fVar10 = fVar2 * fVar2 + fVar10 * fVar10 + fVar3 * fVar3 + fVar4 * fVar4;
+        fVar5 = *(float *)pCVar4 * *(float *)pCVar4 +
+                *(float *)(pCVar4 + 4) * *(float *)(pCVar4 + 4) +
+                *(float *)(pCVar4 + 8) * *(float *)(pCVar4 + 8) +
+                *(float *)(pCVar4 + 0xc) * *(float *)(pCVar4 + 0xc);
       }
-      *(undefined4 *)(lVar7 + 0x48 + uVar8 * 0x50) = 0x12;
-      fVar10 = sqrtf(fVar10);
+      *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+      fVar5 = sqrtf(fVar5);
     }
-    *(float *)(lVar7 + uVar8 * 0x50) = fVar10;
-    *(undefined1 *)(lVar7 + 0x4c + uVar8 * 0x50) = 1;
-    lVar9 = 0;
+    *(float *)pCVar4 = fVar5;
+    pCVar4[0x4c] = (CExpressionValue)0x1;
+    lVar3 = 0;
   }
-  return lVar9;
+  return lVar3;
 }
 

```


## CExpressionValueStack::Matrix4x4FromAxisAngle

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.24|
|i_ratio|0.12|
|m_ratio|0.72|
|b_ratio|0.66|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix4x4FromAxisAngle|Matrix4x4FromAxisAngle|
|fullname|CExpressionValueStack::Matrix4x4FromAxisAngle|CExpressionValueStack::Matrix4x4FromAxisAngle|
|refcount|2|2|
|`length`|258|407|
|`called`|D2DMatrixRotationAxis<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrixRotationAxis<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1802568c0|1802591ec|
|sig|long __thiscall Matrix4x4FromAxisAngle(CExpressionValueStack * this)|long __thiscall Matrix4x4FromAxisAngle(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix4x4FromAxisAngle Called Diff


```diff
--- CExpressionValueStack::Matrix4x4FromAxisAngle called
+++ CExpressionValueStack::Matrix4x4FromAxisAngle called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix4x4FromAxisAngle Calling Diff


```diff
--- CExpressionValueStack::Matrix4x4FromAxisAngle calling
+++ CExpressionValueStack::Matrix4x4FromAxisAngle calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Matrix4x4FromAxisAngle Diff


```diff
--- CExpressionValueStack::Matrix4x4FromAxisAngle
+++ CExpressionValueStack::Matrix4x4FromAxisAngle
@@ -1,59 +1,85 @@
 
 /* public: long __cdecl CExpressionValueStack::Matrix4x4FromAxisAngle(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Matrix4x4FromAxisAngle(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
-  longlong lVar2;
-  ulonglong uVar3;
-  uint uVar4;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  uint uVar6;
+  undefined8 local_78;
+  undefined4 local_70;
+  undefined8 local_68;
+  undefined8 uStack_60;
   undefined8 local_58;
-  undefined4 local_50;
+  undefined8 uStack_50;
   undefined8 local_48;
   undefined8 uStack_40;
   undefined8 local_38;
   undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
   
-  uVar4 = *(uint *)(this + 0x10);
-  if (uVar4 < 2) {
-    uVar4 = 0x17ed;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar6 = 0x17fd;
+    pCVar4 = (CExpressionValue *)this;
   }
   else {
-    lVar2 = *(longlong *)(this + 0x18);
-    uVar3 = (ulonglong)(uVar4 - 2);
-    if ((*(int *)(lVar2 + 0x48 + uVar3 * 0x50) == 0x34) &&
-       (*(int *)(lVar2 + 0x48 + (ulonglong)(uVar4 - 1) * 0x50) == 0x12)) {
-      local_58 = *(undefined8 *)(lVar2 + uVar3 * 0x50);
-      local_50 = *(undefined4 *)(lVar2 + 8 + uVar3 * 0x50);
-      D2DMatrixRotationAxis
-                ((D2DMatrix *)&local_48,(D2DVector3 *)&local_58,
-                 *(float *)(lVar2 + (ulonglong)(uVar4 - 1) * 0x50));
-      *(undefined4 *)(lVar2 + 0x48 + uVar3 * 0x50) = 0x109;
-      puVar1 = (undefined8 *)(lVar2 + uVar3 * 0x50);
-      *puVar1 = local_48;
-      puVar1[1] = uStack_40;
-      puVar1 = (undefined8 *)(lVar2 + 0x10 + uVar3 * 0x50);
-      *puVar1 = local_38;
-      puVar1[1] = uStack_30;
-      puVar1 = (undefined8 *)(lVar2 + 0x20 + uVar3 * 0x50);
-      *puVar1 = local_28;
-      puVar1[1] = uStack_20;
-      puVar1 = (undefined8 *)(lVar2 + 0x30 + uVar3 * 0x50);
-      *puVar1 = local_18;
-      puVar1[1] = uStack_10;
-      *(undefined1 *)(lVar2 + 0x4c + uVar3 * 0x50) = 1;
-      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar4 = (CExpressionValue *)(this + 0x18);
+    pCVar5 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_68)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_68);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar4,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_68)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      pCVar4 = (CExpressionValue *)&local_68;
+      CExpressionValue::~CExpressionValue(pCVar4);
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar4,*(uint *)pCVar1 - 1);
+    }
+    if ((*(int *)(pCVar3 + 0x48) == 0x34) && (*(float *)(pCVar5 + 0x48) == 2.52234e-44)) {
+      local_78 = *(undefined8 *)pCVar3;
+      local_70 = *(undefined4 *)(pCVar3 + 8);
+      D2DMatrixRotationAxis((D2DMatrix *)&local_68,(D2DVector3 *)&local_78,*(float *)pCVar5);
+      *(undefined4 *)(pCVar3 + 0x48) = 0x109;
+      *(undefined8 *)pCVar3 = local_68;
+      *(undefined8 *)(pCVar3 + 8) = uStack_60;
+      *(undefined8 *)(pCVar3 + 0x10) = local_58;
+      *(undefined8 *)(pCVar3 + 0x18) = uStack_50;
+      *(undefined8 *)(pCVar3 + 0x20) = local_48;
+      *(undefined8 *)(pCVar3 + 0x28) = uStack_40;
+      *(undefined8 *)(pCVar3 + 0x30) = local_38;
+      *(undefined8 *)(pCVar3 + 0x38) = uStack_30;
+      pCVar3[0x4c] = (CExpressionValue)0x1;
+      *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
       return 0;
     }
-    uVar4 = 0x17fb;
+    uVar6 = 0x180b;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar4,(void *)0x0);
+            ((ulong)pCVar4,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CConditionalExpression::GetValue

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,called|
|ratio|0.44|
|i_ratio|0.44|
|m_ratio|0.88|
|b_ratio|0.84|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|GetValue|GetValue|
|fullname|CConditionalExpression::GetValue|CConditionalExpression::GetValue|
|refcount|4|4|
|`length`|248|333|
|`called`|CAnimationLoggingManager::LogDebugPropertyUpdate<br>CBaseExpression::GetAnimationLoggingManagerNoRef<br>CConditionalExpression::GetDebugTargetInfo<br>MilInstrumentationCheckHR_MaybeFailFast<br>_guard_xfg_dispatch_icall_nop|CAnimationLoggingManager::LogDebugPropertyUpdate<br>CBaseExpression::GetAnimationLoggingManagerNoRef<br>CConditionalExpression::GetDebugTargetInfo<br>CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>_guard_xfg_dispatch_icall_nop<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CConditionalExpression::ProcessConditionalExpression<br>CExpressionForce::Accelerate<br>CInteractionTracker::SelectInertiaModifierForAxis|CConditionalExpression::ProcessConditionalExpression<br>CExpressionForce::Accelerate<br>CInteractionTracker::SelectInertiaModifierForAxis|
|paramcount|4|4|
|`address`|1802205e0|1802221a0|
|sig|long __thiscall GetValue(CConditionalExpression * this, CExpressionValueStack * param_1, __uint64 param_2, float * param_3)|long __thiscall GetValue(CConditionalExpression * this, CExpressionValueStack * param_1, __uint64 param_2, float * param_3)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CConditionalExpression::GetValue Called Diff


```diff
--- CConditionalExpression::GetValue called
+++ CConditionalExpression::GetValue called
@@ -3,0 +4,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -5,0 +10 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CConditionalExpression::GetValue Diff


```diff
--- CConditionalExpression::GetValue
+++ CConditionalExpression::GetValue
@@ -1,42 +1,56 @@
 
 /* WARNING: Function: _guard_xfg_dispatch_icall_nop replaced with injection: guard_dispatch_icall */
 /* public: long __cdecl CConditionalExpression::GetValue(class CExpressionValueStack *
    __ptr64,unsigned __int64,float * __ptr64) __ptr64 */
 
 long __thiscall
 CConditionalExpression::GetValue
           (CConditionalExpression *this,CExpressionValueStack *param_1,__uint64 param_2,
           float *param_3)
 
 {
-  longlong lVar1;
+  bool bVar1;
   int iVar2;
+  CExpressionValue *pCVar3;
   CAnimationLoggingManager *this_00;
-  CConditionalExpression *pCVar3;
-  CExpressionValue *pCVar4;
-  uint local_28;
-  uint local_24;
+  CConditionalExpression *pCVar4;
+  CExpressionValue *pCVar5;
+  uint local_78;
+  uint local_74;
+  CExpressionValue local_68 [80];
   
   *param_3 = 0.0;
-  pCVar3 = this;
+  pCVar4 = this;
   iVar2 = (**(code **)(*(longlong *)this + 0x100))();
   if (iVar2 < 0) {
-    MilInstrumentationCheckHR_MaybeFailFast((ulong)pCVar3,(long *)0x0,0,iVar2,0x1d2,(void *)0x0);
+    MilInstrumentationCheckHR_MaybeFailFast((ulong)pCVar4,(long *)0x0,0,iVar2,0x1dd,(void *)0x0);
   }
   else {
-    pCVar4 = (CExpressionValue *)
-             ((ulonglong)(*(int *)(param_1 + 0x10) - 1U) * 0x50 + *(longlong *)(param_1 + 0x18));
-    *(uint *)(param_1 + 0x10) = *(int *)(param_1 + 0x10) - 1U;
-    lVar1 = *(longlong *)(this + 0x148);
-    *param_3 = *(float *)pCVar4;
-    if (*(int *)(lVar1 + 4) < 0) {
+    bVar1 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar1) && (*(uint *)(param_1 + 0x30) <= *(int *)(param_1 + 0x10) - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      pCVar5 = &CExpressionValueStack::s_emptyValue;
+      CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_68);
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)(param_1 + 0x18),
+                          *(int *)(param_1 + 0x10) - 1U);
+    }
+    *(int *)(param_1 + 0x10) = *(int *)(param_1 + 0x10) + -1;
+    *param_3 = *(float *)pCVar5;
+    if (*(int *)(*(longlong *)(this + 0x148) + 4) < 0) {
       GetDebugTargetInfo(this);
       this_00 = CBaseExpression::GetAnimationLoggingManagerNoRef((CBaseExpression *)this);
       CAnimationLoggingManager::LogDebugPropertyUpdate
-                (this_00,(CResource *)this,2,param_2,0x5a,local_28,local_24,
-                 *(SubchannelMaskInfo **)(this + 200),pCVar4);
+                (this_00,(CResource *)this,2,param_2,0x5a,local_78,local_74,
+                 *(SubchannelMaskInfo **)(this + 200),pCVar5);
     }
   }
   return iVar2;
 }
 

```


## CNaturalAnimation::PeekStackValue

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,called|
|ratio|0.42|
|i_ratio|0.11|
|m_ratio|0.6|
|b_ratio|0.51|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|PeekStackValue|PeekStackValue|
|fullname|CNaturalAnimation::PeekStackValue|CNaturalAnimation::PeekStackValue|
|refcount|2|2|
|`length`|141|367|
|`called`|ModuleFailFastForHRESULT|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>ModuleFailFastForHRESULT<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CNaturalAnimation::CalculateValue|CNaturalAnimation::CalculateValue|
|paramcount|2|2|
|`address`|180235b84|180237794|
|sig|InternalValue __thiscall PeekStackValue(CNaturalAnimation * this, CExpressionValueStack * param_1)|InternalValue __thiscall PeekStackValue(CNaturalAnimation * this, CExpressionValueStack * param_1)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CNaturalAnimation::PeekStackValue Called Diff


```diff
--- CNaturalAnimation::PeekStackValue called
+++ CNaturalAnimation::PeekStackValue called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CNaturalAnimation::PeekStackValue Diff


```diff
--- CNaturalAnimation::PeekStackValue
+++ CNaturalAnimation::PeekStackValue
@@ -1,40 +1,84 @@
 
 /* private: union CNaturalAnimation::InternalValue __cdecl CNaturalAnimation::PeekStackValue(class
    CExpressionValueStack * __ptr64) __ptr64 */
 
 CExpressionValueStack * __thiscall
 CNaturalAnimation::PeekStackValue(CNaturalAnimation *this,CExpressionValueStack *param_1)
 
 {
   int iVar1;
   undefined4 uVar2;
-  ulonglong uVar3;
+  bool bVar3;
+  CExpressionValue *pCVar4;
+  uint uVar5;
+  CExpressionValue *pCVar6;
   longlong in_R8;
   undefined8 unaff_retaddr;
+  CExpressionValue local_58 [80];
   
   *(undefined8 *)param_1 = 0;
   *(undefined4 *)(param_1 + 8) = 0;
   iVar1 = *(int *)(this + 0x98);
   if (iVar1 == 0x12) {
-    *(undefined4 *)param_1 =
-         *(undefined4 *)
-          (*(longlong *)(in_R8 + 0x18) + (ulonglong)(*(int *)(in_R8 + 0x10) - 1) * 0x50);
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    uVar5 = *(int *)(in_R8 + 0x10) - 1;
+    if ((bVar3) && (*(uint *)(in_R8 + 0x30) <= uVar5)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar6 = &CExpressionValueStack::s_emptyValue;
+      CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_58);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)(in_R8 + 0x18),uVar5);
+    }
+    *(undefined4 *)param_1 = *(undefined4 *)pCVar6;
   }
   else if (iVar1 == 0x23) {
-    *(undefined8 *)param_1 =
-         *(undefined8 *)
-          (*(longlong *)(in_R8 + 0x18) + (ulonglong)(*(int *)(in_R8 + 0x10) - 1) * 0x50);
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    uVar5 = *(int *)(in_R8 + 0x10) - 1;
+    if ((bVar3) && (*(uint *)(in_R8 + 0x30) <= uVar5)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar6 = &CExpressionValueStack::s_emptyValue;
+      CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_58);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)(in_R8 + 0x18),uVar5);
+    }
+    *(undefined8 *)param_1 = *(undefined8 *)pCVar6;
   }
   else {
     if (iVar1 != 0x34) {
                     /* WARNING: Subroutine does not return */
       ModuleFailFastForHRESULT(&DAT_0,unaff_retaddr);
     }
-    uVar3 = (ulonglong)(*(int *)(in_R8 + 0x10) - 1);
-    uVar2 = *(undefined4 *)(*(longlong *)(in_R8 + 0x18) + 8 + uVar3 * 0x50);
-    *(undefined8 *)param_1 = *(undefined8 *)(*(longlong *)(in_R8 + 0x18) + uVar3 * 0x50);
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    uVar5 = *(int *)(in_R8 + 0x10) - 1;
+    if ((bVar3) && (*(uint *)(in_R8 + 0x30) <= uVar5)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar6 = &CExpressionValueStack::s_emptyValue;
+      CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_58);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)(in_R8 + 0x18),uVar5);
+    }
+    uVar2 = *(undefined4 *)(pCVar6 + 8);
+    *(undefined8 *)param_1 = *(undefined8 *)pCVar6;
     *(undefined4 *)(param_1 + 8) = uVar2;
   }
   return param_1;
 }
 

```


## CExpressionValueStack::Vector2Transform

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.24|
|i_ratio|0.39|
|m_ratio|0.81|
|b_ratio|0.78|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Vector2Transform|Vector2Transform|
|fullname|CExpressionValueStack::Vector2Transform|CExpressionValueStack::Vector2Transform|
|refcount|2|2|
|`length`|437|588|
|`called`|D3DXVec2Transform<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXVec2Transform<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180259214|18025d308|
|sig|long __thiscall Vector2Transform(CExpressionValueStack * this)|long __thiscall Vector2Transform(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Vector2Transform Called Diff


```diff
--- CExpressionValueStack::Vector2Transform called
+++ CExpressionValueStack::Vector2Transform called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Vector2Transform Calling Diff


```diff
--- CExpressionValueStack::Vector2Transform calling
+++ CExpressionValueStack::Vector2Transform calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Vector2Transform Diff


```diff
--- CExpressionValueStack::Vector2Transform
+++ CExpressionValueStack::Vector2Transform
@@ -1,83 +1,103 @@
 
 /* public: long __cdecl CExpressionValueStack::Vector2Transform(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Vector2Transform(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  undefined8 *puVar2;
-  float *pfVar3;
-  float *pfVar4;
-  undefined8 uVar5;
-  int iVar6;
-  ulonglong uVar7;
-  ulonglong uVar8;
-  CExpressionValueStack *pCVar9;
-  longlong lVar10;
-  longlong lVar11;
+  CExpressionValueStack *pCVar1;
+  undefined8 uVar2;
+  float fVar3;
+  bool bVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar7;
   undefined8 local_res8;
   float local_res10;
   float fStackX_14;
-  uint uVar12;
-  undefined8 local_68;
-  undefined8 uStack_60;
-  float local_58;
-  float fStack_54;
+  uint uVar8;
+  undefined8 local_98;
+  undefined8 uStack_90;
+  float local_88;
+  float fStack_84;
+  CExpressionValue local_78 [80];
   
-  uVar12 = *(uint *)(this + 0x10);
-  pCVar9 = this;
-  if (uVar12 < 2) {
-    uVar12 = 0x1c75;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar8 = 0x1c85;
   }
   else {
-    lVar10 = *(longlong *)(this + 0x18);
-    uVar7 = (ulonglong)(uVar12 - 2);
-    uVar8 = (ulonglong)(uVar12 - 1);
-    lVar11 = uVar7 * 10;
-    if (*(int *)(lVar10 + 0x48 + uVar7 * 0x50) == 0x23) {
-      iVar6 = *(int *)(lVar10 + 0x48 + uVar8 * 0x50);
-      pCVar9 = (CExpressionValueStack *)0x109;
-      if (((iVar6 == 0x47) || (iVar6 == 0x68)) || (iVar6 == 0x109)) {
-        uVar5 = *(undefined8 *)(lVar10 + uVar7 * 0x50);
-        local_res8._4_4_ = (float)((ulonglong)uVar5 >> 0x20);
-        local_res8._0_4_ = (float)uVar5;
-        if (iVar6 == 0x68) {
-          pfVar1 = (float *)(lVar10 + uVar8 * 0x50);
-          uVar5 = *(undefined8 *)(lVar10 + 0x10 + uVar8 * 0x50);
-          local_58 = (float)uVar5;
-          local_res10 = pfVar1[2] * local_res8._4_4_ + (float)local_res8 * *pfVar1 + local_58;
-          fStack_54 = (float)((ulonglong)uVar5 >> 0x20);
-          fStackX_14 = pfVar1[3] * local_res8._4_4_ + pfVar1[1] * (float)local_res8 + fStack_54;
+    bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar7 = &s_emptyValue;
+    if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      CExpressionValue::~CExpressionValue(local_78);
+      pCVar5 = &s_emptyValue;
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar6 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar6);
+      this = (CExpressionValueStack *)local_78;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      pCVar7 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+      this = (CExpressionValueStack *)this_00;
+    }
+    if (*(int *)(pCVar5 + 0x48) == 0x23) {
+      fVar3 = *(float *)(pCVar7 + 0x48);
+      this = (CExpressionValueStack *)0x109;
+      if (((fVar3 == 9.94922e-44) || (fVar3 == 1.45735e-43)) || (fVar3 == 3.71344e-43)) {
+        uVar2 = *(undefined8 *)pCVar5;
+        local_res8._4_4_ = (float)((ulonglong)uVar2 >> 0x20);
+        local_res8._0_4_ = (float)uVar2;
+        if (fVar3 == 1.45735e-43) {
+          local_88 = (float)*(undefined8 *)(pCVar7 + 0x10);
+          local_res10 = *(float *)(pCVar7 + 8) * local_res8._4_4_ +
+                        (float)local_res8 * *(float *)pCVar7 + local_88;
+          fStack_84 = (float)((ulonglong)*(undefined8 *)(pCVar7 + 0x10) >> 0x20);
+          fStackX_14 = *(float *)(pCVar7 + 0xc) * local_res8._4_4_ +
+                       *(float *)(pCVar7 + 4) * (float)local_res8 + fStack_84;
         }
-        else if (iVar6 == 0x109) {
-          pfVar1 = (float *)(lVar10 + uVar8 * 0x50);
-          pfVar3 = (float *)(lVar10 + 0x10 + uVar8 * 0x50);
-          pfVar4 = (float *)(lVar10 + 0x30 + uVar8 * 0x50);
-          local_res10 = *pfVar3 * local_res8._4_4_ + *pfVar1 * (float)local_res8 + *pfVar4;
-          fStackX_14 = pfVar3[1] * local_res8._4_4_ + pfVar1[1] * (float)local_res8 + pfVar4[1];
+        else if (fVar3 == 3.71344e-43) {
+          local_res10 = *(float *)(pCVar7 + 0x10) * local_res8._4_4_ +
+                        *(float *)pCVar7 * (float)local_res8 + *(float *)(pCVar7 + 0x30);
+          fStackX_14 = *(float *)(pCVar7 + 0x14) * local_res8._4_4_ +
+                       *(float *)(pCVar7 + 4) * (float)local_res8 + *(float *)(pCVar7 + 0x34);
         }
-        else if (iVar6 == 0x47) {
-          puVar2 = (undefined8 *)(lVar10 + uVar8 * 0x50);
-          local_68 = *puVar2;
-          uStack_60 = puVar2[1];
-          local_res8 = uVar5;
+        else if (fVar3 == 9.94922e-44) {
+          local_98 = *(undefined8 *)pCVar7;
+          uStack_90 = *(undefined8 *)(pCVar7 + 8);
+          local_res8 = uVar2;
           D3DXVec2Transform((D2DVector2 *)&local_res10,(D2DVector2 *)&local_res8,
-                            (D2DQuaternion *)&local_68);
+                            (D2DQuaternion *)&local_98);
         }
-        *(undefined4 *)(lVar10 + 0x48 + lVar11 * 8) = 0x23;
-        *(ulonglong *)(lVar10 + lVar11 * 8) = CONCAT44(fStackX_14,local_res10);
-        *(undefined1 *)(lVar10 + 0x4c + lVar11 * 8) = 1;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+        *(undefined4 *)(pCVar5 + 0x48) = 0x23;
+        *(ulonglong *)pCVar5 = CONCAT44(fStackX_14,local_res10);
+        pCVar5[0x4c] = (CExpressionValue)0x1;
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar12 = 0x1c84;
+      uVar8 = 0x1c94;
     }
     else {
-      uVar12 = 0x1c7b;
+      uVar8 = 0x1c8b;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pCVar9,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar12,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar8,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CKeyframeAnimation::ProcessSetBindingBroken

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,called|
|ratio|0.32|
|i_ratio|0.46|
|m_ratio|0.93|
|b_ratio|0.89|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|ProcessSetBindingBroken|ProcessSetBindingBroken|
|fullname|CKeyframeAnimation::ProcessSetBindingBroken|CKeyframeAnimation::ProcessSetBindingBroken|
|refcount|6|6|
|`length`|431|507|
|`called`|CBaseExpression::EnsureExpressionIsUnregistered<br>CBaseExpression::NotifyAnimationDisconnected<br>CBaseExpression::SetOutputValue<br>CKeyframeAnimation::Reset<br>DynArrayImpl<1>::~DynArrayImpl<1><br>MilInstrumentationCheckHR_MaybeFailFast<br>_guard_xfg_dispatch_icall_nop<br>_tlgKeywordOn<br>_tlgWriteTemplate<long___cdecl(_tlgProvider_t_const*___ptr64,void_const*___ptr64,_GUID_const*___ptr64,_GUID_const*___ptr64,unsigned_int,_EVENT_DATA_DESCRIPTOR*___ptr64),&long___cdecl__tlgWriteTransfer_EventWriteTransfer(struct__tlgProvider_t_const*___ptr64,void_const*___ptr64,struct__GUID_const*___ptr64,struct__GUID_const*___ptr64,unsigned_int,struct__EVENT_DATA_DESCRIPTOR*___ptr64),_GUID_const*___ptr64,_GUID_const*___ptr64>::Write<_tlgWrapperByVal<4>,_tlgWrapperByVal<4>_>|<details><summary>Expand for full list:<br>CBaseExpression::EnsureExpressionIsUnregistered<br>CBaseExpression::NotifyAnimationDisconnected<br>CBaseExpression::SetOutputValue<br>CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>CKeyframeAnimation::Reset<br>DynArray<CExpressionValue,1>::operator[]<br>DynArrayImpl<1>::~DynArrayImpl<1><br>MilInstrumentationCheckHR_MaybeFailFast<br>_guard_xfg_dispatch_icall_nop</summary>_tlgKeywordOn<br>_tlgWriteTemplate<long___cdecl(_tlgProvider_t_const*___ptr64,void_const*___ptr64,_GUID_const*___ptr64,_GUID_const*___ptr64,unsigned_int,_EVENT_DATA_DESCRIPTOR*___ptr64),&long___cdecl__tlgWriteTransfer_EventWriteTransfer(struct__tlgProvider_t_const*___ptr64,void_const*___ptr64,struct__GUID_const*___ptr64,struct__GUID_const*___ptr64,unsigned_int,struct__EVENT_DATA_DESCRIPTOR*___ptr64),_GUID_const*___ptr64,_GUID_const*___ptr64>::Write<_tlgWrapperByVal<4>,_tlgWrapperByVal<4>_><br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled</details>|
|calling|||
|paramcount|3|3|
|`address`|180034af0|1800bd980|
|sig|long __thiscall ProcessSetBindingBroken(CKeyframeAnimation * this, CResourceTable * param_1, tagMILCMD_BASEEXPRESSION_SETBINDINGBROKEN * param_2)|long __thiscall ProcessSetBindingBroken(CKeyframeAnimation * this, CResourceTable * param_1, tagMILCMD_BASEEXPRESSION_SETBINDINGBROKEN * param_2)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CKeyframeAnimation::ProcessSetBindingBroken Called Diff


```diff
--- CKeyframeAnimation::ProcessSetBindingBroken called
+++ CKeyframeAnimation::ProcessSetBindingBroken called
@@ -3,0 +4,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -4,0 +8 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -9,0 +14 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CKeyframeAnimation::ProcessSetBindingBroken Diff


```diff
--- CKeyframeAnimation::ProcessSetBindingBroken
+++ CKeyframeAnimation::ProcessSetBindingBroken
@@ -1,86 +1,103 @@
 
 /* WARNING: Function: _guard_xfg_dispatch_icall_nop replaced with injection: guard_dispatch_icall */
 /* public: virtual long __cdecl CKeyframeAnimation::ProcessSetBindingBroken(class CResourceTable *
    __ptr64,struct tagMILCMD_BASEEXPRESSION_SETBINDINGBROKEN const * __ptr64) __ptr64 */
 
 long __thiscall
 CKeyframeAnimation::ProcessSetBindingBroken
           (CKeyframeAnimation *this,CResourceTable *param_1,
           tagMILCMD_BASEEXPRESSION_SETBINDINGBROKEN *param_2)
 
 {
-  char cVar1;
-  long lVar2;
-  ulong uVar3;
-  CKeyframeAnimation *pCVar4;
-  _GUID *p_Var5;
+  bool bVar1;
+  char cVar2;
+  long lVar3;
+  CExpressionValue *pCVar4;
+  ulong uVar5;
+  CKeyframeAnimation *pCVar6;
+  CExpressionValue *pCVar7;
+  _GUID *p_Var8;
   _GUID *in_R9;
   undefined4 local_res8 [2];
   undefined4 local_res20 [2];
-  uint uVar6;
-  undefined **local_58;
-  uchar local_50 [8];
-  int local_48;
-  longlong local_40 [2];
-  undefined4 local_30;
-  undefined4 local_2c;
-  undefined4 local_28;
+  uint uVar9;
+  undefined **local_a8;
+  uchar local_a0 [8];
+  int local_98;
+  undefined8 local_90;
+  undefined8 uStack_88;
+  undefined4 local_80;
+  undefined4 local_7c;
+  uint local_78;
+  CExpressionValue local_68 [80];
   
   this[0x244] = (CKeyframeAnimation)((byte)this[0x244] & 0xfe);
-  p_Var5 = (_GUID *)param_2;
+  p_Var8 = (_GUID *)param_2;
   if (((byte)this[0xd8] & 2) != 0) {
-    pCVar4 = this;
-    lVar2 = CBaseExpression::NotifyAnimationDisconnected((CBaseExpression *)this);
-    if (lVar2 < 0) {
-      MilInstrumentationCheckHR_MaybeFailFast((ulong)pCVar4,(long *)0x0,0,lVar2,0x210,(void *)0x0);
-      return lVar2;
+    pCVar6 = this;
+    lVar3 = CBaseExpression::NotifyAnimationDisconnected((CBaseExpression *)this);
+    if (lVar3 < 0) {
+      MilInstrumentationCheckHR_MaybeFailFast((ulong)pCVar6,(long *)0x0,0,lVar3,0x210,(void *)0x0);
+      return lVar3;
     }
     if ((param_2[8] != (tagMILCMD_BASEEXPRESSION_SETBINDINGBROKEN)0x0) &&
        (*(int *)(this + 0x230) - 1U < 2)) {
-      p_Var5 = (_GUID *)&local_58;
-      local_50 = *(uchar (*) [8])(*(longlong *)(this + 0x10) + 0x1a8);
-      local_48 = 0;
-      local_30 = 0;
-      local_2c = 0;
-      local_28 = 0;
-      local_58 = &CExpressionValueStack::_vftable_;
-      local_40[0] = 0;
-      local_40[1] = 0;
-      pCVar4 = this;
-      lVar2 = Reset(this,true,(CExpressionValueStack *)p_Var5);
-      uVar3 = (ulong)pCVar4;
-      if (lVar2 < 0) {
-        uVar6 = 0x219;
+      p_Var8 = (_GUID *)&local_a8;
+      local_a0 = *(uchar (*) [8])(*(longlong *)(this + 0x10) + 0x1a8);
+      local_98 = 0;
+      local_80 = 0;
+      local_7c = 0;
+      local_78 = 0;
+      local_a8 = &CExpressionValueStack::_vftable_;
+      local_90 = 0;
+      uStack_88 = 0;
+      pCVar6 = this;
+      lVar3 = Reset(this,true,(CExpressionValueStack *)p_Var8);
+      uVar5 = (ulong)pCVar6;
+      if (lVar3 < 0) {
+        uVar9 = 0x219;
 LAB_0:
-        MilInstrumentationCheckHR_MaybeFailFast(uVar3,(long *)0x0,0,lVar2,uVar6,(void *)0x0);
-        local_58 = &CExpressionValueStack::_vftable_;
-        DynArrayImpl<1>::~DynArrayImpl<1>((DynArrayImpl<1> *)local_40);
-        return lVar2;
+        MilInstrumentationCheckHR_MaybeFailFast(uVar5,(long *)0x0,0,lVar3,uVar9,(void *)0x0);
+        local_a8 = &CExpressionValueStack::_vftable_;
+        DynArrayImpl<1>::~DynArrayImpl<1>((DynArrayImpl<1> *)&local_90);
+        return lVar3;
       }
-      pCVar4 = this;
-      lVar2 = CBaseExpression::SetOutputValue
-                        ((CBaseExpression *)this,
-                         (CExpressionValue *)((ulonglong)(local_48 - 1) * 0x50 + local_40[0]));
-      uVar3 = (ulong)pCVar4;
-      if (lVar2 < 0) {
-        uVar6 = 0x21c;
+      bVar1 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar1) && (local_78 <= local_98 - 1U)) {
+        pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+        pCVar7 = &CExpressionValueStack::s_emptyValue;
+        CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar4);
+        CExpressionValue::~CExpressionValue(local_68);
+      }
+      else {
+        pCVar7 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)&local_90,local_98 - 1);
+      }
+      pCVar6 = this;
+      lVar3 = CBaseExpression::SetOutputValue((CBaseExpression *)this,pCVar7);
+      uVar5 = (ulong)pCVar6;
+      if (lVar3 < 0) {
+        uVar9 = 0x21c;
         goto LAB_0;
       }
-      local_48 = local_48 + -1;
-      local_58 = &CExpressionValueStack::_vftable_;
-      DynArrayImpl<1>::~DynArrayImpl<1>((DynArrayImpl<1> *)local_40);
+      local_98 = local_98 + -1;
+      local_a8 = &CExpressionValueStack::_vftable_;
+      DynArrayImpl<1>::~DynArrayImpl<1>((DynArrayImpl<1> *)&local_90);
     }
     CBaseExpression::EnsureExpressionIsUnregistered((CBaseExpression *)this);
   }
   this[0xe8] = (CKeyframeAnimation)((byte)this[0xe8] | 1);
-  if ((5 < DAT_1) && (cVar1 = _tlgKeywordOn(&DAT_1,4), cVar1 != '\0')) {
+  if ((5 < DAT_1) && (cVar2 = _tlgKeywordOn(&DAT_1,4), cVar2 != '\0')) {
     local_res8[0] = *(undefined4 *)(this + 0x40);
     local_res20[0] = (**(code **)(*(longlong *)this + 0x90))(this);
     _tlgWriteTemplate<long___cdecl(_tlgProvider_t_const*___ptr64,void_const*___ptr64,_GUID_const*___ptr64,_GUID_const*___ptr64,unsigned_int,_EVENT_DATA_DESCRIPTOR*___ptr64),&long___cdecl__tlgWriteTransfer_EventWriteTransfer(struct__tlgProvider_t_const*___ptr64,void_const*___ptr64,struct__GUID_const*___ptr64,struct__GUID_const*___ptr64,unsigned_int,struct__EVENT_DATA_DESCRIPTOR*___ptr64),_GUID_const*___ptr64,_GUID_const*___ptr64>
     ::Write<_tlgWrapperByVal<4>,_tlgWrapperByVal<4>_>
-              ((_tlgProvider_t *)&DAT_1,&DAT_18037795e,p_Var5,in_R9,
+              ((_tlgProvider_t *)&DAT_1,&DAT_18037ca26,p_Var8,in_R9,
                (_tlgWrapperByVal<4> *)local_res20,(_tlgWrapperByVal<4> *)local_res8);
   }
   return 0;
 }
 

```


## CExpressionValueStack::Normalize

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.3|
|i_ratio|0.48|
|m_ratio|0.87|
|b_ratio|0.83|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Normalize|Normalize|
|fullname|CExpressionValueStack::Normalize|CExpressionValueStack::Normalize|
|refcount|2|2|
|`length`|249|334|
|`called`|D3DXQuaternionNormalize<br>D3DXVec2Normalize<br>D3DXVec3Normalize<br>D3DXVec4Normalize<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXQuaternionNormalize<br>D3DXVec2Normalize<br>D3DXVec3Normalize<br>D3DXVec4Normalize<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180257d08|18025b398|
|sig|long __thiscall Normalize(CExpressionValueStack * this)|long __thiscall Normalize(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Normalize Called Diff


```diff
--- CExpressionValueStack::Normalize called
+++ CExpressionValueStack::Normalize called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -4,0 +8 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -5,0 +10 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Normalize Calling Diff


```diff
--- CExpressionValueStack::Normalize calling
+++ CExpressionValueStack::Normalize calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Normalize Diff


```diff
--- CExpressionValueStack::Normalize
+++ CExpressionValueStack::Normalize
@@ -1,59 +1,78 @@
 
 /* public: long __cdecl CExpressionValueStack::Normalize(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Normalize(CExpressionValueStack *this)
 
 {
-  int iVar1;
-  long lVar2;
-  D2DQuaternion *pDVar3;
+  CExpressionValueStack *pCVar1;
+  int iVar2;
+  bool bVar3;
+  CExpressionValue *pCVar4;
+  long lVar5;
+  CExpressionValue *pCVar6;
   undefined8 local_res8 [4];
-  uint uVar4;
-  undefined8 local_18;
-  undefined4 uStack_10;
-  undefined4 uStack_c;
+  uint uVar7;
+  undefined8 local_68;
+  undefined4 uStack_60;
+  undefined4 uStack_5c;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar4 = 0xec5;
+    uVar7 = 0xed5;
 LAB_0:
-    lVar2 = -0x7fffbffb;
+    lVar5 = -0x7fffbffb;
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar4,(void *)0x0);
+              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   }
   else {
-    pDVar3 = (D2DQuaternion *)
-             ((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    iVar1 = *(int *)(pDVar3 + 0x48);
-    if (iVar1 == 0x23) {
-      D3DXVec2Normalize((D2DVector2 *)local_res8,(D2DVector2 *)pDVar3);
-      *(undefined8 *)pDVar3 = local_res8[0];
-      *(undefined4 *)(pDVar3 + 0x48) = 0x23;
-    }
-    else if (iVar1 == 0x34) {
-      D3DXVec3Normalize((D2DVector3 *)&local_18,(D2DVector3 *)pDVar3);
-      *(undefined8 *)pDVar3 = local_18;
-      *(undefined4 *)(pDVar3 + 8) = uStack_10;
-      *(undefined4 *)(pDVar3 + 0x48) = 0x34;
+    bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar3) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar6 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this = (CExpressionValueStack *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
     }
     else {
-      if (iVar1 == 0x45) {
-        D3DXVec4Normalize((D2DVector4 *)&local_18,(D2DVector4 *)pDVar3);
-        *(undefined4 *)(pDVar3 + 0x48) = 0x45;
+      this = this + 0x18;
+      pCVar6 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    iVar2 = *(int *)(pCVar6 + 0x48);
+    if (iVar2 == 0x23) {
+      D3DXVec2Normalize((D2DVector2 *)local_res8,(D2DVector2 *)pCVar6);
+      *(undefined8 *)pCVar6 = local_res8[0];
+      *(undefined4 *)(pCVar6 + 0x48) = 0x23;
+    }
+    else if (iVar2 == 0x34) {
+      D3DXVec3Normalize((D2DVector3 *)&local_68,(D2DVector3 *)pCVar6);
+      *(undefined8 *)pCVar6 = local_68;
+      *(undefined4 *)(pCVar6 + 8) = uStack_60;
+      *(undefined4 *)(pCVar6 + 0x48) = 0x34;
+    }
+    else {
+      if (iVar2 == 0x45) {
+        D3DXVec4Normalize((D2DVector4 *)&local_68,(D2DVector4 *)pCVar6);
+        *(undefined4 *)(pCVar6 + 0x48) = 0x45;
       }
       else {
-        if (iVar1 != 0x47) {
-          uVar4 = 0xefe;
+        if (iVar2 != 0x47) {
+          uVar7 = 0xf0e;
           goto LAB_0;
         }
-        D3DXQuaternionNormalize((D2DQuaternion *)&local_18,pDVar3);
-        *(undefined4 *)(pDVar3 + 0x48) = 0x47;
+        D3DXQuaternionNormalize((D2DQuaternion *)&local_68,(D2DQuaternion *)pCVar6);
+        *(undefined4 *)(pCVar6 + 0x48) = 0x47;
       }
-      *(undefined8 *)pDVar3 = local_18;
-      *(ulonglong *)(pDVar3 + 8) = CONCAT44(uStack_c,uStack_10);
+      *(undefined8 *)pCVar6 = local_68;
+      *(ulonglong *)(pCVar6 + 8) = CONCAT44(uStack_5c,uStack_60);
     }
-    pDVar3[0x4c] = (D2DQuaternion)0x1;
-    lVar2 = 0;
+    *(D2DQuaternion *)(pCVar6 + 0x4c) = (D2DQuaternion)0x1;
+    lVar5 = 0;
   }
-  return lVar2;
+  return lVar5;
 }
 

```


## CExpressionValueStack::Log10

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.36|
|i_ratio|0.36|
|m_ratio|0.82|
|b_ratio|0.77|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Log10|Log10|
|fullname|CExpressionValueStack::Log10|CExpressionValueStack::Log10|
|refcount|2|2|
|`length`|179|260|
|`called`|API-MS-WIN-CRT-MATH-L1-1-0.DLL::_isnan<br>MilInstrumentationCheckHR_MaybeFailFast<br>log10f|API-MS-WIN-CRT-MATH-L1-1-0.DLL::_isnan<br>CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>log10f<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180256490|180258ae4|
|sig|long __thiscall Log10(CExpressionValueStack * this)|long __thiscall Log10(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Log10 Called Diff


```diff
--- CExpressionValueStack::Log10 called
+++ CExpressionValueStack::Log10 called
@@ -1,0 +2,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Log10 Calling Diff


```diff
--- CExpressionValueStack::Log10 calling
+++ CExpressionValueStack::Log10 calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Log10 Diff


```diff
--- CExpressionValueStack::Log10
+++ CExpressionValueStack::Log10
@@ -1,38 +1,56 @@
 
 /* public: long __cdecl CExpressionValueStack::Log10(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Log10(CExpressionValueStack *this)
 
 {
-  int iVar1;
-  ulong uVar2;
-  float *pfVar3;
-  float fVar4;
-  uint uVar5;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  int iVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  float fVar6;
+  uint uVar7;
+  CExpressionValue local_68 [96];
   
-  uVar2 = (ulong)this;
   if (*(int *)(this + 0x10) == 0) {
-    uVar5 = 0x1308;
+    uVar7 = 0x1318;
   }
   else {
-    pfVar3 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar3[0x12] == 2.52234e-44) {
-      fVar4 = log10f(*pfVar3);
-      iVar1 = _isnan((double)fVar4);
-      if (iVar1 == 0) {
-        *pfVar3 = fVar4;
-        pfVar3[0x12] = 2.52234e-44;
-        *(undefined1 *)(pfVar3 + 0x13) = 1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      pCVar5 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this = (CExpressionValueStack *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar5 + 0x48) == 2.52234e-44) {
+      fVar6 = log10f(*(float *)pCVar5);
+      iVar3 = _isnan((double)fVar6);
+      if (iVar3 == 0) {
+        *(float *)pCVar5 = fVar6;
+        *(float *)(pCVar5 + 0x48) = 2.52234e-44;
+        pCVar5[0x4c] = (CExpressionValue)0x1;
         return 0;
       }
-      uVar5 = 0x1322;
+      uVar7 = 0x1332;
     }
     else {
-      uVar5 = 0x1331;
+      uVar7 = 0x1341;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            (uVar2,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Pow

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.29|
|i_ratio|0.13|
|m_ratio|0.73|
|b_ratio|0.46|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Pow|Pow|
|fullname|CExpressionValueStack::Pow|CExpressionValueStack::Pow|
|`refcount`|3|2|
|`length`|267|419|
|`called`|API-MS-WIN-CRT-MATH-L1-1-0.DLL::_isnan<br>MilInstrumentationCheckHR_MaybeFailFast<br>powf|API-MS-WIN-CRT-MATH-L1-1-0.DLL::_isnan<br>CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>powf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|18001b7f0|18001cdf0|
|sig|long __thiscall Pow(CExpressionValueStack * this)|long __thiscall Pow(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Pow Called Diff


```diff
--- CExpressionValueStack::Pow called
+++ CExpressionValueStack::Pow called
@@ -1,0 +2,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Pow Diff


```diff
--- CExpressionValueStack::Pow
+++ CExpressionValueStack::Pow
@@ -1,51 +1,77 @@
 
 /* public: long __cdecl CExpressionValueStack::Pow(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Pow(CExpressionValueStack *this)
 
 {
-  int iVar1;
-  float *pfVar2;
-  CExpressionValueStack *pCVar3;
-  float *pfVar4;
-  float fVar5;
-  uint uVar6;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  int iVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar6;
+  float fVar7;
+  uint uVar8;
+  CExpressionValue local_78 [96];
   
-  uVar6 = *(uint *)(this + 0x10);
-  if (uVar6 < 2) {
-    uVar6 = 0x127c;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar8 = 0x128c;
   }
   else {
-    pfVar4 = (float *)((ulonglong)(uVar6 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar2 = (float *)((ulonglong)(uVar6 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    fVar5 = pfVar4[0x12];
-    pCVar3 = (CExpressionValueStack *)(ulonglong)(uint)fVar5;
-    if (fVar5 == pfVar2[0x12]) {
-      if (fVar5 == 2.52234e-44) {
-        fVar5 = powf(*pfVar4,*pfVar2);
-        iVar1 = _isnan((double)fVar5);
-        if (iVar1 == 0) {
-          *pfVar4 = fVar5;
-          pfVar4[0x12] = 2.52234e-44;
-          *(undefined1 *)(pfVar4 + 0x13) = 1;
-          *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_78);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      this = (CExpressionValueStack *)local_78;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+      this = (CExpressionValueStack *)this_00;
+    }
+    if (*(float *)(pCVar4 + 0x48) == *(float *)(pCVar6 + 0x48)) {
+      if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+        fVar7 = powf(*(float *)pCVar4,*(float *)pCVar6);
+        iVar3 = _isnan((double)fVar7);
+        if (iVar3 == 0) {
+          *(float *)pCVar4 = fVar7;
+          *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+          pCVar4[0x4c] = (CExpressionValue)0x1;
+          *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
           return 0;
         }
-        uVar6 = 0x12a7;
-        this = pCVar3;
+        uVar8 = 0x12b7;
       }
       else {
-        uVar6 = 0x12b5;
-        this = pCVar3;
+        uVar8 = 0x12c5;
       }
     }
     else {
-      uVar6 = 0x1293;
-      this = pCVar3;
+      uVar8 = 0x12a3;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar8,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::And

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.27|
|i_ratio|0.04|
|m_ratio|0.65|
|b_ratio|0.56|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|And|And|
|fullname|CExpressionValueStack::And|CExpressionValueStack::And|
|refcount|2|2|
|`length`|179|378|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180254b48|1802568cc|
|sig|long __thiscall And(CExpressionValueStack * this)|long __thiscall And(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::And Called Diff


```diff
--- CExpressionValueStack::And called
+++ CExpressionValueStack::And called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::And Calling Diff


```diff
--- CExpressionValueStack::And calling
+++ CExpressionValueStack::And calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::And Diff


```diff
--- CExpressionValueStack::And
+++ CExpressionValueStack::And
@@ -1,48 +1,73 @@
 
 /* public: long __cdecl CExpressionValueStack::And(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::And(CExpressionValueStack *this)
 
 {
-  char cVar1;
-  CExpressionValueStack *pCVar2;
-  char *pcVar3;
-  char *pcVar4;
-  uint uVar5;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue CVar5;
+  CExpressionValue *pCVar6;
+  uint uVar7;
+  CExpressionValue local_68 [80];
   
-  uVar5 = *(uint *)(this + 0x10);
-  if (uVar5 < 2) {
-    uVar5 = 0x812;
-    pCVar2 = this;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar7 = 0x822;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    pcVar3 = (char *)((ulonglong)(uVar5 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    cVar1 = '\0';
-    pcVar4 = (char *)((ulonglong)(uVar5 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    uVar5 = *(uint *)(pcVar3 + 0x48);
-    pCVar2 = (CExpressionValueStack *)(ulonglong)uVar5;
-    if (uVar5 == *(uint *)(pcVar4 + 0x48)) {
-      if (uVar5 == 0x11) {
-        if ((*pcVar3 != '\0') && (*pcVar4 != '\0')) {
-          cVar1 = '\x01';
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    CVar5 = (CExpressionValue)0x0;
+    pCVar6 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if (*(int *)(pCVar3 + 0x48) == *(int *)(pCVar6 + 0x48)) {
+      if (*(int *)(pCVar3 + 0x48) == 0x11) {
+        if ((*pCVar3 != (CExpressionValue)0x0) && (*pCVar6 != (CExpressionValue)0x0)) {
+          CVar5 = (CExpressionValue)0x1;
         }
-        pcVar3[0x48] = '\x11';
-        pcVar3[0x49] = '\0';
-        pcVar3[0x4a] = '\0';
-        pcVar3[0x4b] = '\0';
-        *pcVar3 = cVar1;
-        pcVar3[0x4c] = '\x01';
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+        *(undefined4 *)(pCVar3 + 0x48) = 0x11;
+        *pCVar3 = CVar5;
+        pCVar3[0x4c] = (CExpressionValue)0x1;
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar5 = 0x841;
+      uVar7 = 0x851;
     }
     else {
-      uVar5 = 0x82e;
+      uVar7 = 0x83e;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pCVar2,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,called|
|ratio|0.35|
|i_ratio|0.4|
|m_ratio|0.79|
|b_ratio|0.62|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|EnsureChainingConfigUpdated|EnsureChainingConfigUpdated|
|fullname|CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated|CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated|
|refcount|3|3|
|`length`|129|206|
|`called`|CInteractionTracker::BoundaryFromValue<br>CScrollKeyframeAnimation::UpdateChainingConfigIfBoundaryStateChanges|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>CInteractionTracker::BoundaryFromValue<br>CScrollKeyframeAnimation::UpdateChainingConfigIfBoundaryStateChanges<br>DynArray<CExpressionValue,1>::operator[]<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|||
|paramcount|3|3|
|`address`|18025c880|180261020|
|sig|void __thiscall EnsureChainingConfigUpdated(CScrollPositionKeyframeAnimation * this, CExpressionValueStack * param_1, __uint64 param_2)|void __thiscall EnsureChainingConfigUpdated(CScrollPositionKeyframeAnimation * this, CExpressionValueStack * param_1, __uint64 param_2)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated Called Diff


```diff
--- CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated called
+++ CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -2,0 +6,2 @@
+DynArray<CExpressionValue,1>::operator[]
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated Diff


```diff
--- CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated
+++ CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated
@@ -1,31 +1,49 @@
 
 /* protected: virtual void __cdecl
    CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated(class CExpressionValueStack *
    __ptr64,unsigned __int64) __ptr64 */
 
 void __thiscall
 CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated
           (CScrollPositionKeyframeAnimation *this,CExpressionValueStack *param_1,__uint64 param_2)
 
 {
   undefined8 uVar1;
-  Boundary BVar2;
+  bool bVar2;
   Boundary BVar3;
+  Boundary BVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
   CInteractionTracker *this_00;
-  float local_18;
-  float fStack_14;
+  float local_68;
+  float fStack_64;
+  CExpressionValue local_58 [80];
   
+  bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  if ((bVar2) && (*(uint *)(param_1 + 0x30) <= *(int *)(param_1 + 0x10) - 1U)) {
+    pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+    pCVar6 = &CExpressionValueStack::s_emptyValue;
+    CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar5);
+    CExpressionValue::~CExpressionValue(local_58);
+  }
+  else {
+    pCVar6 = DynArray<CExpressionValue,1>::operator[]
+                       ((DynArray<CExpressionValue,1> *)(param_1 + 0x18),
+                        *(int *)(param_1 + 0x10) - 1U);
+  }
+  uVar1 = *(undefined8 *)pCVar6;
   this_00 = *(CInteractionTracker **)(this + 0x248);
-  uVar1 = *(undefined8 *)
-           (*(longlong *)(param_1 + 0x18) + (ulonglong)(*(int *)(param_1 + 0x10) - 1) * 0x50);
-  local_18 = (float)uVar1;
-  BVar2 = CInteractionTracker::BoundaryFromValue(this_00,local_18,0);
-  fStack_14 = (float)((ulonglong)uVar1 >> 0x20);
-  BVar3 = CInteractionTracker::BoundaryFromValue(this_00,fStack_14,1);
+  local_68 = (float)uVar1;
+  BVar3 = CInteractionTracker::BoundaryFromValue(this_00,local_68,0);
+  fStack_64 = (float)((ulonglong)uVar1 >> 0x20);
+  BVar4 = CInteractionTracker::BoundaryFromValue(this_00,fStack_64,1);
   CScrollKeyframeAnimation::UpdateChainingConfigIfBoundaryStateChanges
-            ((CScrollKeyframeAnimation *)this,0,BVar2);
+            ((CScrollKeyframeAnimation *)this,0,BVar3);
   CScrollKeyframeAnimation::UpdateChainingConfigIfBoundaryStateChanges
-            ((CScrollKeyframeAnimation *)this,1,BVar3);
+            ((CScrollKeyframeAnimation *)this,1,BVar4);
   return;
 }
 

```


## CConditionalExpression::AddStackValueToSum

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,called|
|ratio|0.55|
|i_ratio|0.53|
|m_ratio|0.93|
|b_ratio|0.89|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|AddStackValueToSum|AddStackValueToSum|
|fullname|CConditionalExpression::AddStackValueToSum|CConditionalExpression::AddStackValueToSum|
|refcount|2|2|
|`length`|588|665|
|`called`|CExpressionValue::CopyFrom<br>D2DMatrix::operator+<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie|CExpressionValue::CExpressionValue<br>CExpressionValue::CopyFrom<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrix::operator+<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CConditionalExpression::CalculateValueWorker|CConditionalExpression::CalculateValueWorker|
|paramcount|3|3|
|`address`|18021ff1c|180221a3c|
|sig|long __thiscall AddStackValueToSum(CConditionalExpression * this, CExpressionValue * param_1, CExpressionValueStack * param_2)|long __thiscall AddStackValueToSum(CConditionalExpression * this, CExpressionValue * param_1, CExpressionValueStack * param_2)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CConditionalExpression::AddStackValueToSum Called Diff


```diff
--- CConditionalExpression::AddStackValueToSum called
+++ CConditionalExpression::AddStackValueToSum called
@@ -0,0 +1 @@
+CExpressionValue::CExpressionValue
@@ -1,0 +3,2 @@
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -2,0 +6 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -4,0 +9 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CConditionalExpression::AddStackValueToSum Diff


```diff
--- CConditionalExpression::AddStackValueToSum
+++ CConditionalExpression::AddStackValueToSum
@@ -1,117 +1,132 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* private: long __cdecl CConditionalExpression::AddStackValueToSum(class CExpressionValue *
    __ptr64,class CExpressionValueStack * __ptr64) __ptr64 */
 
 long __thiscall
 CConditionalExpression::AddStackValueToSum
           (CConditionalExpression *this,CExpressionValue *param_1,CExpressionValueStack *param_2)
 
 {
   float fVar1;
   float fVar2;
   float fVar3;
   float fVar4;
   float fVar5;
   float fVar6;
   int iVar7;
   undefined8 uVar8;
-  undefined8 *puVar9;
-  ulong uVar10;
-  CExpressionValue *pCVar11;
-  undefined1 auStackY_98 [32];
-  uint uVar12;
-  D2DMatrix local_58 [64];
+  bool bVar9;
+  CExpressionValue *pCVar10;
+  undefined8 *puVar11;
+  ulong uVar12;
+  CExpressionValue *pCVar13;
+  undefined1 auStackY_a8 [32];
+  uint uVar14;
+  CExpressionValue local_68 [80];
   ulonglong local_18;
   
-  local_18 = __security_cookie ^ (ulonglong)auStackY_98;
-  pCVar11 = (CExpressionValue *)
-            ((ulonglong)(*(int *)(param_2 + 0x10) - 1) * 0x50 + *(longlong *)(param_2 + 0x18));
-  if (param_1[0x4c] == (CExpressionValue)0x0) {
-    CExpressionValue::CopyFrom(param_1,pCVar11);
+  local_18 = __security_cookie ^ (ulonglong)auStackY_a8;
+  bVar9 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                    ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                     &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                      ::__l2::impl);
+  if ((bVar9) && (*(uint *)(param_2 + 0x30) <= *(int *)(param_2 + 0x10) - 1U)) {
+    pCVar10 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+    pCVar13 = &CExpressionValueStack::s_emptyValue;
+    CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar10);
+    CExpressionValue::~CExpressionValue(local_68);
   }
   else {
-    iVar7 = *(int *)(pCVar11 + 0x48);
+    pCVar13 = DynArray<CExpressionValue,1>::operator[]
+                        ((DynArray<CExpressionValue,1> *)(param_2 + 0x18),
+                         *(int *)(param_2 + 0x10) - 1U);
+  }
+  if (param_1[0x4c] == (CExpressionValue)0x0) {
+    CExpressionValue::CopyFrom(param_1,pCVar13);
+  }
+  else {
+    iVar7 = *(int *)(pCVar13 + 0x48);
     if (iVar7 == 0x12) {
-      fVar1 = *(float *)pCVar11;
+      fVar1 = *(float *)pCVar13;
       *(undefined4 *)(param_1 + 0x48) = 0x12;
       *(float *)param_1 = fVar1 + *(float *)param_1;
     }
     else if (iVar7 == 0x23) {
-      fVar1 = *(float *)pCVar11;
-      fVar2 = *(float *)(pCVar11 + 4);
+      fVar1 = *(float *)pCVar13;
+      fVar2 = *(float *)(pCVar13 + 4);
       *(undefined4 *)(param_1 + 0x48) = 0x23;
       *(float *)param_1 = fVar1 + *(float *)param_1;
       *(float *)(param_1 + 4) = fVar2 + *(float *)(param_1 + 4);
     }
     else if (iVar7 == 0x34) {
-      fVar1 = *(float *)pCVar11;
-      fVar2 = *(float *)(pCVar11 + 4);
-      fVar3 = *(float *)(pCVar11 + 8);
+      fVar1 = *(float *)pCVar13;
+      fVar2 = *(float *)(pCVar13 + 4);
+      fVar3 = *(float *)(pCVar13 + 8);
       *(undefined4 *)(param_1 + 0x48) = 0x34;
       *(float *)param_1 = fVar1 + *(float *)param_1;
       *(float *)(param_1 + 4) = fVar2 + *(float *)(param_1 + 4);
       *(float *)(param_1 + 8) = fVar3 + *(float *)(param_1 + 8);
     }
     else if (iVar7 == 0x45) {
-      fVar1 = *(float *)pCVar11;
-      fVar2 = *(float *)(pCVar11 + 4);
-      fVar3 = *(float *)(pCVar11 + 8);
-      fVar4 = *(float *)(pCVar11 + 0xc);
+      fVar1 = *(float *)pCVar13;
+      fVar2 = *(float *)(pCVar13 + 4);
+      fVar3 = *(float *)(pCVar13 + 8);
+      fVar4 = *(float *)(pCVar13 + 0xc);
       *(undefined4 *)(param_1 + 0x48) = 0x45;
       *(ulonglong *)param_1 = CONCAT44(*(float *)(param_1 + 4) + fVar2,fVar1 + *(float *)param_1);
       *(ulonglong *)(param_1 + 8) =
            CONCAT44(*(float *)(param_1 + 0xc) + fVar4,*(float *)(param_1 + 8) + fVar3);
     }
     else {
       if ((iVar7 == 0x46) || (iVar7 == 0x47)) {
-        uVar10 = 0;
-        uVar12 = 0x19c;
+        uVar12 = 0;
+        uVar14 = 0x1a7;
 LAB_0:
-        MilInstrumentationCheckHR_MaybeFailFast(uVar10,(long *)0x0,0,-0x7ff8ffa9,uVar12,(void *)0x0)
+        MilInstrumentationCheckHR_MaybeFailFast(uVar12,(long *)0x0,0,-0x7ff8ffa9,uVar14,(void *)0x0)
         ;
         return -0x7ff8ffa9;
       }
-      uVar10 = iVar7 - 0x68;
-      if (uVar10 == 0) {
-        fVar1 = *(float *)pCVar11;
-        fVar2 = *(float *)(pCVar11 + 4);
-        fVar3 = *(float *)(pCVar11 + 8);
-        fVar4 = *(float *)(pCVar11 + 0xc);
-        fVar5 = *(float *)(pCVar11 + 0x10);
-        fVar6 = *(float *)(pCVar11 + 0x14);
+      uVar12 = iVar7 - 0x68;
+      if (uVar12 == 0) {
+        fVar1 = *(float *)pCVar13;
+        fVar2 = *(float *)(pCVar13 + 4);
+        fVar3 = *(float *)(pCVar13 + 8);
+        fVar4 = *(float *)(pCVar13 + 0xc);
+        fVar5 = *(float *)(pCVar13 + 0x10);
+        fVar6 = *(float *)(pCVar13 + 0x14);
         *(undefined4 *)(param_1 + 0x48) = 0x68;
         *(float *)param_1 = fVar1 + *(float *)param_1;
         *(float *)(param_1 + 4) = fVar2 + *(float *)(param_1 + 4);
         *(float *)(param_1 + 8) = fVar3 + *(float *)(param_1 + 8);
         *(float *)(param_1 + 0xc) = fVar4 + *(float *)(param_1 + 0xc);
         *(float *)(param_1 + 0x10) = fVar5 + *(float *)(param_1 + 0x10);
         *(float *)(param_1 + 0x14) = fVar6 + *(float *)(param_1 + 0x14);
       }
       else {
-        if (uVar10 != 0xa1) {
-          uVar12 = 0x1af;
+        if (uVar12 != 0xa1) {
+          uVar14 = 0x1ba;
           goto LAB_0;
         }
-        puVar9 = (undefined8 *)D2DMatrix::operator+((D2DMatrix *)param_1,local_58);
+        puVar11 = (undefined8 *)D2DMatrix::operator+((D2DMatrix *)param_1,(D2DMatrix *)local_68);
         *(undefined4 *)(param_1 + 0x48) = 0x109;
-        uVar8 = puVar9[1];
-        *(undefined8 *)param_1 = *puVar9;
+        uVar8 = puVar11[1];
+        *(undefined8 *)param_1 = *puVar11;
         *(undefined8 *)(param_1 + 8) = uVar8;
-        uVar8 = puVar9[3];
-        *(undefined8 *)(param_1 + 0x10) = puVar9[2];
+        uVar8 = puVar11[3];
+        *(undefined8 *)(param_1 + 0x10) = puVar11[2];
         *(undefined8 *)(param_1 + 0x18) = uVar8;
-        uVar8 = puVar9[5];
-        *(undefined8 *)(param_1 + 0x20) = puVar9[4];
+        uVar8 = puVar11[5];
+        *(undefined8 *)(param_1 + 0x20) = puVar11[4];
         *(undefined8 *)(param_1 + 0x28) = uVar8;
-        uVar8 = puVar9[7];
-        *(undefined8 *)(param_1 + 0x30) = puVar9[6];
+        uVar8 = puVar11[7];
+        *(undefined8 *)(param_1 + 0x30) = puVar11[6];
         *(undefined8 *)(param_1 + 0x38) = uVar8;
       }
     }
     param_1[0x4c] = (CExpressionValue)0x1;
   }
   *(int *)(param_2 + 0x10) = *(int *)(param_2 + 0x10) + -1;
   return 0;
 }
 

```


## CExpressionValueStack::Acos

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.38|
|i_ratio|0.35|
|m_ratio|0.82|
|b_ratio|0.76|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Acos|Acos|
|fullname|CExpressionValueStack::Acos|CExpressionValueStack::Acos|
|refcount|2|2|
|`length`|165|244|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>acosf|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>acosf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180254a9c|1802567d0|
|sig|long __thiscall Acos(CExpressionValueStack * this)|long __thiscall Acos(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Acos Called Diff


```diff
--- CExpressionValueStack::Acos called
+++ CExpressionValueStack::Acos called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Acos Calling Diff


```diff
--- CExpressionValueStack::Acos calling
+++ CExpressionValueStack::Acos calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Acos Diff


```diff
--- CExpressionValueStack::Acos
+++ CExpressionValueStack::Acos
@@ -1,35 +1,55 @@
 
 /* public: long __cdecl CExpressionValueStack::Acos(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Acos(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  float fVar2;
-  uint uVar3;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  float fVar5;
+  uint uVar6;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar3 = 0x1096;
+    uVar6 = 0x10a6;
   }
   else {
-    pfVar1 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar1[0x12] == 2.52234e-44) {
-      fVar2 = *pfVar1;
-      if ((-1.0 <= fVar2) && (fVar2 <= 1.0)) {
-        pfVar1[0x12] = 2.52234e-44;
-        fVar2 = acosf(fVar2);
-        *pfVar1 = fVar2;
-        *(undefined1 *)(pfVar1 + 0x13) = 1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+      fVar5 = *(float *)pCVar4;
+      if ((-1.0 <= fVar5) && (fVar5 <= 1.0)) {
+        *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+        fVar5 = acosf(fVar5);
+        *(float *)pCVar4 = fVar5;
+        pCVar4[0x4c] = (CExpressionValue)0x1;
         return 0;
       }
-      uVar3 = 0x10b1;
+      uVar6 = 0x10c1;
     }
     else {
-      uVar3 = 0x10c0;
+      uVar6 = 0x10d0;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar3,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Atan

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.35|
|i_ratio|0.37|
|m_ratio|0.78|
|b_ratio|0.71|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Atan|Atan|
|fullname|CExpressionValueStack::Atan|CExpressionValueStack::Atan|
|refcount|2|2|
|`length`|127|209|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>atanf|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>atanf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180254cb0|180256b4c|
|sig|long __thiscall Atan(CExpressionValueStack * this)|long __thiscall Atan(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Atan Called Diff


```diff
--- CExpressionValueStack::Atan called
+++ CExpressionValueStack::Atan called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Atan Calling Diff


```diff
--- CExpressionValueStack::Atan calling
+++ CExpressionValueStack::Atan calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Atan Diff


```diff
--- CExpressionValueStack::Atan
+++ CExpressionValueStack::Atan
@@ -1,29 +1,49 @@
 
 /* public: long __cdecl CExpressionValueStack::Atan(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Atan(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  float fVar2;
-  uint uVar3;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  float fVar5;
+  uint uVar6;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar3 = 0x112e;
+    uVar6 = 0x113e;
   }
   else {
-    pfVar1 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar1[0x12] == 2.52234e-44) {
-      pfVar1[0x12] = 2.52234e-44;
-      fVar2 = atanf(*pfVar1);
-      *pfVar1 = fVar2;
-      *(undefined1 *)(pfVar1 + 0x13) = 1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+      *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+      fVar5 = atanf(*(float *)pCVar4);
+      *(float *)pCVar4 = fVar5;
+      pCVar4[0x4c] = (CExpressionValue)0x1;
       return 0;
     }
-    uVar3 = 0x114b;
+    uVar6 = 0x115b;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar3,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Multiply

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.18|
|i_ratio|0.11|
|m_ratio|0.76|
|b_ratio|0.05|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Multiply|Multiply|
|fullname|CExpressionValueStack::Multiply|CExpressionValueStack::Multiply|
|`refcount`|3|2|
|`length`|704|1088|
|`called`|CExpressionValueStack::Scale<br>D2D1::Matrix3x2F::SetProduct<br>D2DMatrixMultiply<br>D3DXQuaternionMultiply<br>FUN_180147bc6<br>__security_check_cookie|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>CExpressionValueStack::Scale<br>D2DMatrixMultiply<br>D3DXQuaternionMultiply<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180072818|1800c0aa8|
|sig|long __thiscall Multiply(CExpressionValueStack * this)|long __thiscall Multiply(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Multiply Called Diff


```diff
--- CExpressionValueStack::Multiply called
+++ CExpressionValueStack::Multiply called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -2 +4,0 @@
-D2D1::Matrix3x2F::SetProduct
@@ -5 +7,2 @@
-FUN_180147bc6
+DynArray<CExpressionValue,1>::operator[]
+MilInstrumentationCheckHR_MaybeFailFast
@@ -6,0 +10 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Multiply Diff


```diff
--- CExpressionValueStack::Multiply
+++ CExpressionValueStack::Multiply
@@ -1,133 +1,197 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CExpressionValueStack::Multiply(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Multiply(CExpressionValueStack *this)
 
 {
   float fVar1;
   float fVar2;
-  uint uVar3;
-  undefined4 extraout_EAX;
-  long lVar4;
-  D2DQuaternion *pDVar5;
-  Matrix3x2F *pMVar6;
-  undefined4 uVar7;
-  undefined1 auStackY_b8 [32];
-  uint uVar8;
-  undefined8 local_88;
-  float fStack_80;
-  float fStack_7c;
-  undefined8 local_78;
-  float local_70;
-  float fStack_6c;
-  undefined8 local_58;
-  undefined8 uStack_50;
-  undefined8 local_48;
-  undefined8 uStack_40;
-  undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  ulonglong local_18;
+  float fVar3;
+  float fVar4;
+  float fVar5;
+  float fVar6;
+  float fVar7;
+  float fVar8;
+  float fVar9;
+  float fVar10;
+  float fVar11;
+  float fVar12;
+  float fVar13;
+  uint uVar14;
+  bool bVar15;
+  long lVar16;
+  CExpressionValue *pCVar17;
+  CExpressionValue *pCVar18;
+  CExpressionValue *pCVar19;
+  undefined4 uVar20;
+  undefined1 auStackY_128 [32];
+  uint uVar21;
+  undefined8 local_f8;
+  float fStack_f0;
+  float fStack_ec;
+  float local_e8;
+  float fStack_e4;
+  undefined8 local_d8;
+  undefined8 uStack_d0;
+  undefined8 local_c8;
+  undefined8 uStack_c0;
+  undefined8 local_b8;
+  undefined8 uStack_b0;
+  undefined8 local_a8;
+  undefined8 uStack_a0;
+  ulonglong local_88;
   
-  local_18 = __security_cookie ^ (ulonglong)auStackY_b8;
-  uVar8 = *(uint *)(this + 0x10);
-  if (uVar8 < 2) {
-    uVar8 = 0x42b;
+  local_88 = __security_cookie ^ (ulonglong)auStackY_128;
+  if (*(uint *)(this + 0x10) < 2) {
+    lVar16 = -0x7fffbffb;
+    uVar21 = 0x43b;
   }
   else {
-    pMVar6 = (Matrix3x2F *)((ulonglong)(uVar8 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pDVar5 = (D2DQuaternion *)(*(longlong *)(this + 0x18) + (ulonglong)(uVar8 - 1) * 0x50);
-    uVar8 = *(uint *)(pMVar6 + 0x48);
-    uVar3 = *(uint *)(pDVar5 + 0x48);
-    if (uVar8 == uVar3) {
-      if (uVar8 == 0x68) {
-        D2D1::Matrix3x2F::SetProduct((Matrix3x2F *)&local_88,pMVar6,(Matrix3x2F *)pDVar5);
-        *(undefined4 *)(pMVar6 + 0x48) = extraout_EAX;
-        *(undefined8 *)pMVar6 = local_88;
-        *(ulonglong *)(pMVar6 + 8) = CONCAT44(fStack_7c,fStack_80);
-        *(undefined8 *)(pMVar6 + 0x10) = local_78;
+    bVar15 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                       ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                        &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                         ::__l2::impl);
+    pCVar19 = &s_emptyValue;
+    if ((bVar15) && (*(uint *)(this + 0x30) <= *(int *)(this + 0x10) - 2U)) {
+      pCVar17 = (CExpressionValue *)
+                CExpressionValue::CExpressionValue((CExpressionValue *)&local_d8);
+      CExpressionValue::operator=(&s_emptyValue,pCVar17);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_d8);
+      pCVar17 = &s_emptyValue;
+    }
+    else {
+      pCVar17 = DynArray<CExpressionValue,1>::operator[]
+                          ((DynArray<CExpressionValue,1> *)(this + 0x18),*(int *)(this + 0x10) - 2U)
+      ;
+    }
+    bVar15 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                       ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                        &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                         ::__l2::impl);
+    if ((bVar15) && (*(uint *)(this + 0x30) <= *(int *)(this + 0x10) - 1U)) {
+      pCVar18 = (CExpressionValue *)
+                CExpressionValue::CExpressionValue((CExpressionValue *)&local_d8);
+      CExpressionValue::operator=(&s_emptyValue,pCVar18);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_d8);
+    }
+    else {
+      pCVar19 = DynArray<CExpressionValue,1>::operator[]
+                          ((DynArray<CExpressionValue,1> *)(this + 0x18),*(int *)(this + 0x10) - 1U)
+      ;
+    }
+    uVar21 = *(uint *)(pCVar17 + 0x48);
+    uVar14 = *(uint *)(pCVar19 + 0x48);
+    if (uVar21 == uVar14) {
+      if (uVar21 == 0x12) {
+        fVar1 = *(float *)pCVar19;
+        *(undefined4 *)(pCVar17 + 0x48) = 0x12;
+        *(float *)pCVar17 = fVar1 * *(float *)pCVar17;
       }
-      else if (uVar8 == 0x12) {
-        fVar1 = *(float *)pDVar5;
-        *(undefined4 *)(pMVar6 + 0x48) = 0x12;
-        *(float *)pMVar6 = fVar1 * *(float *)pMVar6;
+      else if (uVar21 == 0x23) {
+        fVar1 = *(float *)pCVar19;
+        fVar2 = *(float *)(pCVar19 + 4);
+        *(undefined4 *)(pCVar17 + 0x48) = 0x23;
+        *(float *)pCVar17 = *(float *)pCVar17 * fVar1;
+        *(float *)(pCVar17 + 4) = *(float *)(pCVar17 + 4) * fVar2;
       }
-      else if (uVar8 == 0x23) {
-        fVar1 = *(float *)pDVar5;
-        fVar2 = *(float *)(pDVar5 + 4);
-        *(undefined4 *)(pMVar6 + 0x48) = 0x23;
-        *(float *)pMVar6 = *(float *)pMVar6 * fVar1;
-        *(float *)(pMVar6 + 4) = *(float *)(pMVar6 + 4) * fVar2;
-      }
-      else if (uVar8 == 0x34) {
-        local_70 = (float)*(undefined8 *)pDVar5;
-        fStack_6c = (float)((ulonglong)*(undefined8 *)pDVar5 >> 0x20);
-        local_88._0_4_ = (float)*(undefined8 *)pMVar6;
-        fVar1 = *(float *)(pDVar5 + 8);
-        local_88._4_4_ = (float)((ulonglong)*(undefined8 *)pMVar6 >> 0x20);
-        *(undefined4 *)(pMVar6 + 0x48) = 0x34;
-        *(float *)pMVar6 = local_70 * (float)local_88;
-        *(float *)(pMVar6 + 4) = fStack_6c * local_88._4_4_;
-        *(float *)(pMVar6 + 8) = fVar1 * *(float *)(pMVar6 + 8);
+      else if (uVar21 == 0x34) {
+        local_e8 = (float)*(undefined8 *)pCVar19;
+        fStack_e4 = (float)((ulonglong)*(undefined8 *)pCVar19 >> 0x20);
+        local_f8._0_4_ = (float)*(undefined8 *)pCVar17;
+        fVar1 = *(float *)(pCVar19 + 8);
+        local_f8._4_4_ = (float)((ulonglong)*(undefined8 *)pCVar17 >> 0x20);
+        *(undefined4 *)(pCVar17 + 0x48) = 0x34;
+        *(float *)pCVar17 = local_e8 * (float)local_f8;
+        *(float *)(pCVar17 + 4) = fStack_e4 * local_f8._4_4_;
+        *(float *)(pCVar17 + 8) = fVar1 * *(float *)(pCVar17 + 8);
       }
       else {
-        if (uVar8 == 0x45) {
-          fVar1 = *(float *)pDVar5;
-          fVar2 = *(float *)(pDVar5 + 4);
-          fStack_80 = *(float *)(pDVar5 + 8);
-          fStack_7c = *(float *)(pDVar5 + 0xc);
-          *(undefined4 *)(pMVar6 + 0x48) = 0x45;
-          fStack_7c = fStack_7c * *(float *)(pMVar6 + 0xc);
-          fStack_80 = fStack_80 * *(float *)(pMVar6 + 8);
-          local_88 = CONCAT44(fVar2 * *(float *)(pMVar6 + 4),fVar1 * *(float *)pMVar6);
+        if (uVar21 == 0x45) {
+          fVar1 = *(float *)pCVar19;
+          fVar2 = *(float *)(pCVar19 + 4);
+          fStack_f0 = *(float *)(pCVar19 + 8);
+          fStack_ec = *(float *)(pCVar19 + 0xc);
+          *(undefined4 *)(pCVar17 + 0x48) = 0x45;
+          fStack_ec = fStack_ec * *(float *)(pCVar17 + 0xc);
+          fStack_f0 = fStack_f0 * *(float *)(pCVar17 + 8);
+          local_f8 = CONCAT44(fVar2 * *(float *)(pCVar17 + 4),fVar1 * *(float *)pCVar17);
         }
         else {
-          if (uVar8 != 0x47) {
-            uVar7 = 0x109;
-            if (uVar8 != 0x109) {
-              uVar8 = 0x494;
-              this = (CExpressionValueStack *)(ulonglong)uVar3;
-              goto LAB_0;
+          if (uVar21 != 0x47) {
+            if (uVar21 == 0x68) {
+              fVar1 = *(float *)(pCVar19 + 8);
+              fVar2 = *(float *)pCVar19;
+              fVar3 = *(float *)(pCVar19 + 0xc);
+              fVar4 = *(float *)(pCVar17 + 8);
+              fVar5 = *(float *)(pCVar17 + 0x10);
+              fVar6 = *(float *)(pCVar19 + 4);
+              fVar7 = *(float *)(pCVar19 + 4);
+              fVar8 = *(float *)pCVar17;
+              fVar9 = *(float *)(pCVar19 + 4);
+              fVar10 = *(float *)(pCVar19 + 0xc);
+              fVar11 = *(float *)(pCVar19 + 0xc);
+              fVar12 = *(float *)(pCVar19 + 0x14);
+              fVar13 = *(float *)(pCVar19 + 0x10);
+              *(undefined4 *)(pCVar17 + 0x48) = 0x68;
+              *(float *)pCVar17 = fVar2 * *(float *)pCVar17 + fVar1 * *(float *)(pCVar17 + 4);
+              *(float *)(pCVar17 + 4) = fVar6 * fVar8 + fVar3 * *(float *)(pCVar17 + 4);
+              *(float *)(pCVar17 + 8) = fVar4 * fVar2 + *(float *)(pCVar17 + 0xc) * fVar1;
+              *(float *)(pCVar17 + 0xc) = fVar4 * fVar9 + *(float *)(pCVar17 + 0xc) * fVar10;
+              *(float *)(pCVar17 + 0x10) =
+                   fVar5 * fVar2 + *(float *)(pCVar17 + 0x14) * fVar1 + fVar13;
+              *(float *)(pCVar17 + 0x14) =
+                   fVar5 * fVar7 + *(float *)(pCVar17 + 0x14) * fVar11 + fVar12;
             }
-            D2DMatrixMultiply((D2DMatrix *)&local_58,(D2DMatrix *)pMVar6,(D2DMatrix *)pDVar5);
-            *(undefined8 *)pMVar6 = local_58;
-            *(undefined8 *)(pMVar6 + 8) = uStack_50;
-            *(undefined4 *)(pMVar6 + 0x48) = uVar7;
-            *(undefined8 *)(pMVar6 + 0x10) = local_48;
-            *(undefined8 *)(pMVar6 + 0x18) = uStack_40;
-            *(undefined8 *)(pMVar6 + 0x20) = local_38;
-            *(undefined8 *)(pMVar6 + 0x28) = uStack_30;
-            *(undefined8 *)(pMVar6 + 0x30) = local_28;
-            *(undefined8 *)(pMVar6 + 0x38) = uStack_20;
+            else {
+              uVar20 = 0x109;
+              if (uVar21 != 0x109) {
+                lVar16 = -0x7fffbffb;
+                uVar21 = 0x4a4;
+                this = (CExpressionValueStack *)(ulonglong)uVar14;
+                goto LAB_0;
+              }
+              D2DMatrixMultiply((D2DMatrix *)&local_d8,(D2DMatrix *)pCVar17,(D2DMatrix *)pCVar19);
+              *(undefined8 *)pCVar17 = local_d8;
+              *(undefined8 *)(pCVar17 + 8) = uStack_d0;
+              *(undefined4 *)(pCVar17 + 0x48) = uVar20;
+              *(undefined8 *)(pCVar17 + 0x10) = local_c8;
+              *(undefined8 *)(pCVar17 + 0x18) = uStack_c0;
+              *(undefined8 *)(pCVar17 + 0x20) = local_b8;
+              *(undefined8 *)(pCVar17 + 0x28) = uStack_b0;
+              *(undefined8 *)(pCVar17 + 0x30) = local_a8;
+              *(undefined8 *)(pCVar17 + 0x38) = uStack_a0;
+            }
             goto LAB_1;
           }
-          D3DXQuaternionMultiply((D2DQuaternion *)&local_88,pDVar5,(D2DQuaternion *)pMVar6);
-          *(undefined4 *)(pMVar6 + 0x48) = 0x47;
+          D3DXQuaternionMultiply
+                    ((D2DQuaternion *)&local_f8,(D2DQuaternion *)pCVar19,(D2DQuaternion *)pCVar17);
+          *(undefined4 *)(pCVar17 + 0x48) = 0x47;
         }
-        *(undefined8 *)pMVar6 = local_88;
-        *(ulonglong *)(pMVar6 + 8) = CONCAT44(fStack_7c,fStack_80);
+        *(undefined8 *)pCVar17 = local_f8;
+        *(ulonglong *)(pCVar17 + 8) = CONCAT44(fStack_ec,fStack_f0);
       }
 LAB_1:
-      pMVar6[0x4c] = (Matrix3x2F)0x1;
+      *(D2DMatrix *)(pCVar17 + 0x4c) = (D2DMatrix)0x1;
       *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
       return 0;
     }
-    if ((uVar8 == 0x12) || (uVar3 == 0x12)) {
-      lVar4 = Scale(this);
-      if (-1 < lVar4) {
-        return lVar4;
+    if ((uVar14 == 0x12) || (uVar21 == 0x12)) {
+      lVar16 = Scale(this);
+      if (-1 < lVar16) {
+        return lVar16;
       }
-      lVar4 = FUN_180147bc6();
-      return lVar4;
+      uVar21 = 0x4b3;
     }
-    uVar8 = 0x4ad;
-    this = (CExpressionValueStack *)(ulonglong)uVar3;
+    else {
+      lVar16 = -0x7fffbffb;
+      uVar21 = 0x4bd;
+      this = (CExpressionValueStack *)(ulonglong)uVar14;
+    }
   }
 LAB_0:
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar8,(void *)0x0);
-  return -0x7fffbffb;
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,lVar16,uVar21,(void *)0x0);
+  return lVar16;
 }
 

```


## CPrimitiveGroup::ProcessAddPrimitives

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.64|
|i_ratio|0.25|
|m_ratio|0.99|
|b_ratio|0.59|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|ProcessAddPrimitives|ProcessAddPrimitives|
|fullname|CPrimitiveGroup::ProcessAddPrimitives|CPrimitiveGroup::ProcessAddPrimitives|
|`refcount`|2|1|
|`length`|390|385|
|`called`|CPrimitiveGroup::ReleasePrimitiveCaches<br>CPrimitiveGroup::ResolveSharedMemoryBuffer<br>CResourceTable::GetResource<br>McTemplateU0qxqq_EventWriteTransfer<br>MilInstrumentationCheckHR_MaybeFailFast<br>ReplaceInterface<CSharedSection,CSharedSection><br>_guard_xfg_dispatch_icall_nop|CPrimitiveGroup::ReleasePrimitiveCaches<br>CPrimitiveGroup::ResolveSharedMemoryBufferNew<br>CPrimitiveGroup::ResolveSharedMemoryBufferOld<br>CResourceTable::GetResource<br>McTemplateU0qxqq_EventWriteTransfer<br>MilInstrumentationCheckHR_MaybeFailFast<br>ReplaceInterface<CSharedSection,CSharedSection><br>_guard_xfg_dispatch_icall_nop<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled|
|calling|||
|paramcount|3|3|
|`address`|1800a9dac|1800e200c|
|sig|long __thiscall ProcessAddPrimitives(CPrimitiveGroup * this, CResourceTable * param_1, tagMILCMD_PRIMITIVEGROUP_ADDPRIMITIVES * param_2)|long __thiscall ProcessAddPrimitives(CPrimitiveGroup * this, CResourceTable * param_1, tagMILCMD_PRIMITIVEGROUP_ADDPRIMITIVES * param_2)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CPrimitiveGroup::ProcessAddPrimitives Called Diff


```diff
--- CPrimitiveGroup::ProcessAddPrimitives called
+++ CPrimitiveGroup::ProcessAddPrimitives called
@@ -2 +2,2 @@
-CPrimitiveGroup::ResolveSharedMemoryBuffer
+CPrimitiveGroup::ResolveSharedMemoryBufferNew
+CPrimitiveGroup::ResolveSharedMemoryBufferOld
@@ -7,0 +9 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled
```


### CPrimitiveGroup::ProcessAddPrimitives Diff


```diff
--- CPrimitiveGroup::ProcessAddPrimitives
+++ CPrimitiveGroup::ProcessAddPrimitives
@@ -1,52 +1,62 @@
 
 /* WARNING: Function: _guard_xfg_dispatch_icall_nop replaced with injection: guard_dispatch_icall */
 /* public: long __cdecl CPrimitiveGroup::ProcessAddPrimitives(class CResourceTable * __ptr64,struct
    tagMILCMD_PRIMITIVEGROUP_ADDPRIMITIVES const * __ptr64) __ptr64 */
 
 long __thiscall
 CPrimitiveGroup::ProcessAddPrimitives
           (CPrimitiveGroup *this,CResourceTable *param_1,
           tagMILCMD_PRIMITIVEGROUP_ADDPRIMITIVES *param_2)
 
 {
   undefined4 uVar1;
   char cVar2;
-  char cVar3;
-  CResource *pCVar4;
-  uint uVar5;
+  bool bVar3;
+  char cVar4;
+  CResource *pCVar5;
+  uint uVar6;
   
-  pCVar4 = CResourceTable::GetResource(param_1,*(uint *)(param_2 + 8),0xa9);
-  if (pCVar4 == (CResource *)0x0) {
-    uVar5 = 0x92;
+  pCVar5 = CResourceTable::GetResource(param_1,*(uint *)(param_2 + 8),0xa9);
+  if (pCVar5 == (CResource *)0x0) {
+    uVar6 = 0xa2;
   }
   else {
     if (0x3b < *(uint *)(param_2 + 0xc)) {
       if ((Microsoft_Windows_Dwm_CoreEnableBits._1_1_ & 0x20) != 0) {
         McTemplateU0qxqq_EventWriteTransfer();
       }
       cVar2 = (**(code **)(*(longlong *)this + 0xc0))(this);
       ReplaceInterface<CSharedSection,CSharedSection>
-                ((CSharedSection **)(this + 0x188),(CSharedSection *)pCVar4);
+                ((CSharedSection **)(this + 0x188),(CSharedSection *)pCVar5);
       *(undefined4 *)(this + 400) = *(undefined4 *)(param_2 + 0xc);
       uVar1 = *(undefined4 *)(param_2 + 0x10);
       *(undefined8 *)(this + 0x1d8) = 0;
       *(undefined8 *)(this + 0x1e0) = 0;
       *(undefined8 *)(this + 0x1e8) = 0;
       *(undefined8 *)(this + 0x1f0) = 0;
       *(undefined4 *)(this + 0x194) = uVar1;
       ReleasePrimitiveCaches(this,true);
-      ResolveSharedMemoryBuffer(this);
-      cVar3 = (**(code **)(*(longlong *)this + 0xc0))(this);
-      if (cVar2 == cVar3) {
+      bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_2986246461> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_2986246461>::GetImpl(void)'
+                          ::__l2::impl);
+      if (bVar3) {
+        ResolveSharedMemoryBufferNew(this);
+      }
+      else {
+        ResolveSharedMemoryBufferOld(this);
+      }
+      cVar4 = (**(code **)(*(longlong *)this + 0xc0))(this);
+      if (cVar2 == cVar4) {
         return 0;
       }
       (**(code **)(*(longlong *)this + 0x48))(this,3);
       return 0;
     }
-    uVar5 = 0x97;
+    uVar6 = 0xa7;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)param_1,(long *)0x0,0,-0x7767fbfd,uVar5,(void *)0x0);
+            ((ulong)param_1,(long *)0x0,0,-0x7767fbfd,uVar6,(void *)0x0);
   return -0x7767fbfd;
 }
 

```


## CExpressionValueStack::Or

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.27|
|i_ratio|0.04|
|m_ratio|0.65|
|b_ratio|0.56|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Or|Or|
|fullname|CExpressionValueStack::Or|CExpressionValueStack::Or|
|refcount|2|2|
|`length`|179|378|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1802580b4|18025b888|
|sig|long __thiscall Or(CExpressionValueStack * this)|long __thiscall Or(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Or Called Diff


```diff
--- CExpressionValueStack::Or called
+++ CExpressionValueStack::Or called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Or Calling Diff


```diff
--- CExpressionValueStack::Or calling
+++ CExpressionValueStack::Or calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Or Diff


```diff
--- CExpressionValueStack::Or
+++ CExpressionValueStack::Or
@@ -1,48 +1,73 @@
 
 /* public: long __cdecl CExpressionValueStack::Or(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Or(CExpressionValueStack *this)
 
 {
-  char cVar1;
-  CExpressionValueStack *pCVar2;
-  char *pcVar3;
-  char *pcVar4;
-  uint uVar5;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue CVar5;
+  CExpressionValue *pCVar6;
+  uint uVar7;
+  CExpressionValue local_68 [80];
   
-  uVar5 = *(uint *)(this + 0x10);
-  if (uVar5 < 2) {
-    uVar5 = 0x862;
-    pCVar2 = this;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar7 = 0x872;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    pcVar3 = (char *)((ulonglong)(uVar5 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    cVar1 = '\0';
-    pcVar4 = (char *)((ulonglong)(uVar5 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    uVar5 = *(uint *)(pcVar3 + 0x48);
-    pCVar2 = (CExpressionValueStack *)(ulonglong)uVar5;
-    if (uVar5 == *(uint *)(pcVar4 + 0x48)) {
-      if (uVar5 == 0x11) {
-        if ((*pcVar3 != '\0') || (*pcVar4 != '\0')) {
-          cVar1 = '\x01';
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    CVar5 = (CExpressionValue)0x0;
+    pCVar6 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if (*(int *)(pCVar3 + 0x48) == *(int *)(pCVar6 + 0x48)) {
+      if (*(int *)(pCVar3 + 0x48) == 0x11) {
+        if ((*pCVar3 != (CExpressionValue)0x0) || (*pCVar6 != (CExpressionValue)0x0)) {
+          CVar5 = (CExpressionValue)0x1;
         }
-        pcVar3[0x48] = '\x11';
-        pcVar3[0x49] = '\0';
-        pcVar3[0x4a] = '\0';
-        pcVar3[0x4b] = '\0';
-        *pcVar3 = cVar1;
-        pcVar3[0x4c] = '\x01';
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+        *(undefined4 *)(pCVar3 + 0x48) = 0x11;
+        *pCVar3 = CVar5;
+        pCVar3[0x4c] = (CExpressionValue)0x1;
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar5 = 0x891;
+      uVar7 = 0x8a1;
     }
     else {
-      uVar5 = 0x87e;
+      uVar7 = 0x88e;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pCVar2,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Not

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.36|
|i_ratio|0.2|
|m_ratio|0.78|
|b_ratio|0.68|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Not|Not|
|fullname|CExpressionValueStack::Not|CExpressionValueStack::Not|
|refcount|2|2|
|`length`|122|204|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180257e08|18025b4f0|
|sig|long __thiscall Not(CExpressionValueStack * this)|long __thiscall Not(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Not Called Diff


```diff
--- CExpressionValueStack::Not called
+++ CExpressionValueStack::Not called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Not Calling Diff


```diff
--- CExpressionValueStack::Not calling
+++ CExpressionValueStack::Not calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Not Diff


```diff
--- CExpressionValueStack::Not
+++ CExpressionValueStack::Not
@@ -1,30 +1,47 @@
 
 /* public: long __cdecl CExpressionValueStack::Not(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Not(CExpressionValueStack *this)
 
 {
-  char *pcVar1;
-  uint uVar2;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  uint uVar5;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar2 = 0x8b7;
+    uVar5 = 0x8c7;
   }
   else {
-    pcVar1 = (char *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (*(int *)(pcVar1 + 0x48) == 0x11) {
-      pcVar1[0x48] = '\x11';
-      pcVar1[0x49] = '\0';
-      pcVar1[0x4a] = '\0';
-      pcVar1[0x4b] = '\0';
-      pcVar1[0x4c] = '\x01';
-      *pcVar1 = *pcVar1 == '\0';
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(int *)(pCVar4 + 0x48) == 0x11) {
+      *(undefined4 *)(pCVar4 + 0x48) = 0x11;
+      pCVar4[0x4c] = (CExpressionValue)0x1;
+      *pCVar4 = (CExpressionValue)(*pCVar4 == (CExpressionValue)0x0);
       return 0;
     }
-    uVar2 = 0x8d6;
+    uVar5 = 0x8e6;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar2,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Vector3TransformNormal

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.28|
|i_ratio|0.1|
|m_ratio|0.69|
|b_ratio|0.65|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Vector3TransformNormal|Vector3TransformNormal|
|fullname|CExpressionValueStack::Vector3TransformNormal|CExpressionValueStack::Vector3TransformNormal|
|refcount|2|2|
|`length`|281|453|
|`called`|D3DXVec3TransformNormal<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXVec3TransformNormal<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180259880|18025dcd4|
|sig|long __thiscall Vector3TransformNormal(CExpressionValueStack * this)|long __thiscall Vector3TransformNormal(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Vector3TransformNormal Called Diff


```diff
--- CExpressionValueStack::Vector3TransformNormal called
+++ CExpressionValueStack::Vector3TransformNormal called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Vector3TransformNormal Calling Diff


```diff
--- CExpressionValueStack::Vector3TransformNormal calling
+++ CExpressionValueStack::Vector3TransformNormal calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Vector3TransformNormal Diff


```diff
--- CExpressionValueStack::Vector3TransformNormal
+++ CExpressionValueStack::Vector3TransformNormal
@@ -1,70 +1,95 @@
 
 /* public: long __cdecl CExpressionValueStack::Vector3TransformNormal(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Vector3TransformNormal(CExpressionValueStack *this)
 
 {
-  undefined8 *puVar1;
-  ulonglong uVar2;
-  ulonglong uVar3;
-  longlong lVar4;
-  longlong lVar5;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
   uint uVar6;
+  undefined8 local_88;
+  undefined4 local_80;
+  undefined8 local_78;
+  undefined4 local_70;
   undefined8 local_68;
-  undefined4 local_60;
+  undefined8 uStack_60;
   undefined8 local_58;
-  undefined4 local_50;
+  undefined8 uStack_50;
   undefined8 local_48;
   undefined8 uStack_40;
   undefined8 local_38;
   undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
   
-  uVar6 = *(uint *)(this + 0x10);
-  if (uVar6 < 2) {
-    uVar6 = 0x1db0;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar6 = 0x1dc0;
+    pCVar4 = (CExpressionValue *)this;
   }
   else {
-    lVar4 = *(longlong *)(this + 0x18);
-    uVar2 = (ulonglong)(uVar6 - 2);
-    uVar3 = (ulonglong)(uVar6 - 1);
-    lVar5 = uVar2 * 10;
-    if (*(int *)(lVar4 + 0x48 + uVar2 * 0x50) == 0x34) {
-      if (*(int *)(lVar4 + 0x48 + uVar3 * 0x50) == 0x109) {
-        puVar1 = (undefined8 *)(lVar4 + 0x10 + uVar3 * 0x50);
-        local_38 = *puVar1;
-        uStack_30 = puVar1[1];
-        local_60 = *(undefined4 *)(lVar4 + 8 + uVar2 * 0x50);
-        local_68 = *(undefined8 *)(lVar4 + uVar2 * 0x50);
-        puVar1 = (undefined8 *)(lVar4 + uVar3 * 0x50);
-        local_48 = *puVar1;
-        uStack_40 = puVar1[1];
-        puVar1 = (undefined8 *)(lVar4 + 0x30 + uVar3 * 0x50);
-        local_18 = *puVar1;
-        uStack_10 = puVar1[1];
-        puVar1 = (undefined8 *)(lVar4 + 0x20 + uVar3 * 0x50);
-        local_28 = *puVar1;
-        uStack_20 = puVar1[1];
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar4 = (CExpressionValue *)(this + 0x18);
+    pCVar5 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_68)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue((CExpressionValue *)&local_68);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar4,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue((CExpressionValue *)&local_68)
+      ;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      pCVar4 = (CExpressionValue *)&local_68;
+      CExpressionValue::~CExpressionValue(pCVar4);
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)pCVar4,*(uint *)pCVar1 - 1);
+    }
+    if (*(int *)(pCVar3 + 0x48) == 0x34) {
+      if (*(int *)(pCVar5 + 0x48) == 0x109) {
+        local_88 = *(undefined8 *)pCVar3;
+        local_58 = *(undefined8 *)(pCVar5 + 0x10);
+        uStack_50 = *(undefined8 *)(pCVar5 + 0x18);
+        local_80 = *(undefined4 *)(pCVar3 + 8);
+        local_68 = *(undefined8 *)pCVar5;
+        uStack_60 = *(undefined8 *)(pCVar5 + 8);
+        local_38 = *(undefined8 *)(pCVar5 + 0x30);
+        uStack_30 = *(undefined8 *)(pCVar5 + 0x38);
+        local_48 = *(undefined8 *)(pCVar5 + 0x20);
+        uStack_40 = *(undefined8 *)(pCVar5 + 0x28);
         D3DXVec3TransformNormal
-                  ((D2DVector3 *)&local_58,(D2DVector3 *)&local_68,(D2DMatrix *)&local_48);
-        *(undefined4 *)(lVar4 + 0x48 + lVar5 * 8) = 0x34;
-        *(undefined8 *)(lVar4 + lVar5 * 8) = local_58;
-        *(undefined4 *)(lVar4 + 8 + lVar5 * 8) = local_50;
-        *(undefined1 *)(lVar4 + 0x4c + lVar5 * 8) = 1;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+                  ((D2DVector3 *)&local_78,(D2DVector3 *)&local_88,(D2DMatrix *)&local_68);
+        *(undefined4 *)(pCVar3 + 0x48) = 0x34;
+        *(undefined8 *)pCVar3 = local_78;
+        *(undefined4 *)(pCVar3 + 8) = local_70;
+        pCVar3[0x4c] = (CExpressionValue)0x1;
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
         return 0;
       }
-      uVar6 = 0x1db7;
+      uVar6 = 0x1dc7;
     }
     else {
-      uVar6 = 0x1db6;
+      uVar6 = 0x1dc6;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
+            ((ulong)pCVar4,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Quaternion

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.19|
|i_ratio|0.08|
|m_ratio|0.54|
|b_ratio|0.42|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Quaternion|Quaternion|
|fullname|CExpressionValueStack::Quaternion|CExpressionValueStack::Quaternion|
|refcount|2|2|
|`length`|239|542|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1802585c4|18025be60|
|sig|long __thiscall Quaternion(CExpressionValueStack * this)|long __thiscall Quaternion(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Quaternion Called Diff


```diff
--- CExpressionValueStack::Quaternion called
+++ CExpressionValueStack::Quaternion called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Quaternion Calling Diff


```diff
--- CExpressionValueStack::Quaternion calling
+++ CExpressionValueStack::Quaternion calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Quaternion Diff


```diff
--- CExpressionValueStack::Quaternion
+++ CExpressionValueStack::Quaternion
@@ -1,43 +1,102 @@
 
 /* public: long __cdecl CExpressionValueStack::Quaternion(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Quaternion(CExpressionValueStack *this)
 
 {
-  undefined4 uVar1;
+  CExpressionValueStack *pCVar1;
   undefined4 uVar2;
   undefined4 uVar3;
-  longlong lVar4;
-  ulonglong uVar5;
-  uint uVar6;
+  undefined4 uVar4;
+  bool bVar5;
+  CExpressionValue *pCVar6;
+  CExpressionValue *pCVar7;
+  CExpressionValue *pCVar8;
+  CExpressionValue *pCVar9;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar10;
+  uint uVar11;
+  CExpressionValue local_78 [80];
   
-  uVar6 = *(uint *)(this + 0x10);
-  if (uVar6 < 4) {
-    uVar6 = 0x1550;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 4) {
+    uVar11 = 0x1560;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    lVar4 = *(longlong *)(this + 0x18);
-    uVar5 = (ulonglong)(uVar6 - 4);
-    if ((((*(int *)(lVar4 + 0x48 + uVar5 * 0x50) == 0x12) &&
-         (*(int *)(lVar4 + 0x48 + (ulonglong)(uVar6 - 3) * 0x50) == 0x12)) &&
-        (*(int *)(lVar4 + 0x48 + (ulonglong)(uVar6 - 2) * 0x50) == 0x12)) &&
-       (*(int *)(lVar4 + 0x48 + (ulonglong)(uVar6 - 1) * 0x50) == 0x12)) {
-      uVar1 = *(undefined4 *)(lVar4 + (ulonglong)(uVar6 - 1) * 0x50);
-      uVar2 = *(undefined4 *)(lVar4 + (ulonglong)(uVar6 - 3) * 0x50);
-      uVar3 = *(undefined4 *)(lVar4 + (ulonglong)(uVar6 - 2) * 0x50);
-      *(undefined4 *)(lVar4 + 0x48 + uVar5 * 0x50) = 0x47;
-      *(undefined4 *)(lVar4 + uVar5 * 0x50) = *(undefined4 *)(lVar4 + uVar5 * 0x50);
-      *(undefined4 *)(lVar4 + 4 + uVar5 * 0x50) = uVar2;
-      *(undefined4 *)(lVar4 + 8 + uVar5 * 0x50) = uVar3;
-      *(undefined4 *)(lVar4 + 0xc + uVar5 * 0x50) = uVar1;
-      *(undefined1 *)(lVar4 + 0x4c + uVar5 * 0x50) = 1;
-      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -3;
+    bVar5 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar10 = &s_emptyValue;
+    if ((bVar5) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 4)) {
+      pCVar6 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar6);
+      CExpressionValue::~CExpressionValue(local_78);
+      pCVar6 = &s_emptyValue;
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 4);
+    }
+    bVar5 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar5) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar7 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar7);
+      CExpressionValue::~CExpressionValue(local_78);
+      pCVar7 = &s_emptyValue;
+    }
+    else {
+      pCVar7 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 3);
+    }
+    bVar5 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar5) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar8);
+      CExpressionValue::~CExpressionValue(local_78);
+      pCVar8 = &s_emptyValue;
+    }
+    else {
+      pCVar8 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar5 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar5) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar9 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar9);
+      this_00 = (DynArray<CExpressionValue,1> *)local_78;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar10 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if ((((*(int *)(pCVar6 + 0x48) == 0x12) && (*(int *)(pCVar7 + 0x48) == 0x12)) &&
+        (*(int *)(pCVar8 + 0x48) == 0x12)) && (*(int *)(pCVar10 + 0x48) == 0x12)) {
+      uVar2 = *(undefined4 *)pCVar7;
+      uVar3 = *(undefined4 *)pCVar8;
+      uVar4 = *(undefined4 *)pCVar10;
+      *(undefined4 *)(pCVar6 + 0x48) = 0x47;
+      *(undefined4 *)pCVar6 = *(undefined4 *)pCVar6;
+      *(undefined4 *)(pCVar6 + 4) = uVar2;
+      *(undefined4 *)(pCVar6 + 8) = uVar3;
+      *(undefined4 *)(pCVar6 + 0xc) = uVar4;
+      pCVar6[0x4c] = (CExpressionValue)0x1;
+      *(uint *)pCVar1 = *(uint *)pCVar1 - 3;
       return 0;
     }
-    uVar6 = 0x1562;
+    uVar11 = 0x1572;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar11,(void *)0x0)
+  ;
   return -0x7fffbffb;
 }
 

```


## CExpression::CalculateValueWorker

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.02|
|i_ratio|0.02|
|m_ratio|0.41|
|b_ratio|0.07|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|CalculateValueWorker|CalculateValueWorker|
|fullname|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|`refcount`|4|3|
|`length`|1845|7275|
|`called`|<details><summary>Expand for full list:<br>CExpressionValueStack::Add<br>CExpressionValueStack::Clamp<br>CExpressionValueStack::ColorLerpHsl<br>CExpressionValueStack::ColorRgb<br>CExpressionValueStack::Conditional<br>CExpressionValueStack::Divide<br>CExpressionValueStack::EnsureAvailablePushSpace<br>CExpressionValueStack::GreaterThan<br>CExpressionValueStack::LessThan<br>CExpressionValueStack::LessThanEquals<br>CExpressionValueStack::Matrix3x2</summary>CExpressionValueStack::Matrix3x2FromScale<br>CExpressionValueStack::Matrix4x4<br>CExpressionValueStack::Matrix4x4FromTranslation<br>CExpressionValueStack::Multiply<br>CExpressionValueStack::Negate<br>CExpressionValueStack::Pow<br>CExpressionValueStack::ProcessReferenceNode<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::Square<br>CExpressionValueStack::Subtract<br>CExpressionValueStack::Swizzle<br>CExpressionValueStack::Vector3<br>DynArray<CExpressionValue,1>::AddAndSet<br>DynArrayImpl<1>::AddMultipleAndSet<br>FUN_180147101<br>FUN_180147135<br>FUN_18014714e<br>FUN_180147167<br>FUN_180147180<br>FUN_180147199<br>FUN_1801471b2<br>FUN_1801471cb<br>FUN_1801471e4<br>FUN_1801471fd<br>FUN_1801472ca<br>FUN_1801472e3<br>FUN_180147356<br>FUN_18014736f<br>FUN_180147388<br>FUN_1801473a1<br>FUN_18014742f<br>FUN_180147463<br>FUN_180147539<br>FUN_1801475a1<br>FUN_180147647<br>Microsoft::WRL::ComPtr<CPathData>::InternalRelease<br>MilInstrumentationCheckHR_MaybeFailFast<br>cosf<br>memset<br>sinf</details>|<details><summary>Expand for full list:<br>CBaseExpression::GetTracingCookie<br>CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>CExpressionValueStack::Absolute<br>CExpressionValueStack::Acos<br>CExpressionValueStack::Add<br>CExpressionValueStack::And<br>CExpressionValueStack::Asin<br>CExpressionValueStack::Atan<br>CExpressionValueStack::Ceil</summary>CExpressionValueStack::Clamp<br>CExpressionValueStack::ColorHsl<br>CExpressionValueStack::ColorLerpHsl<br>CExpressionValueStack::ColorLerpRgb<br>CExpressionValueStack::ColorRgb<br>CExpressionValueStack::Concatenate<br>CExpressionValueStack::Conditional<br>CExpressionValueStack::Distance<br>CExpressionValueStack::DistanceSquared<br>CExpressionValueStack::Divide<br>CExpressionValueStack::EnsureAvailablePushSpace<br>CExpressionValueStack::Equals<br>CExpressionValueStack::Floor<br>CExpressionValueStack::GreaterThan<br>CExpressionValueStack::GreaterThanEquals<br>CExpressionValueStack::Inverse<br>CExpressionValueStack::Length<br>CExpressionValueStack::LengthSquared<br>CExpressionValueStack::Lerp<br>CExpressionValueStack::LessThan<br>CExpressionValueStack::LessThanEquals<br>CExpressionValueStack::Ln<br>CExpressionValueStack::Log10<br>CExpressionValueStack::Matrix3x2<br>CExpressionValueStack::Matrix3x2FromRotation<br>CExpressionValueStack::Matrix3x2FromScale<br>CExpressionValueStack::Matrix3x2FromSkew<br>CExpressionValueStack::Matrix4x4<br>CExpressionValueStack::Matrix4x4FromAxisAngle<br>CExpressionValueStack::Matrix4x4FromPerspective<br>CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView<br>CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter<br>CExpressionValueStack::Matrix4x4FromQuaternion<br>CExpressionValueStack::Matrix4x4FromRotationX<br>CExpressionValueStack::Matrix4x4FromRotationY<br>CExpressionValueStack::Matrix4x4FromRotationZ<br>CExpressionValueStack::Matrix4x4FromScale<br>CExpressionValueStack::Matrix4x4FromTranslation<br>CExpressionValueStack::Matrix4x4FromYawPitchRoll<br>CExpressionValueStack::Max<br>CExpressionValueStack::Min<br>CExpressionValueStack::Modulus<br>CExpressionValueStack::Multiply<br>CExpressionValueStack::Negate<br>CExpressionValueStack::Normalize<br>CExpressionValueStack::Not<br>CExpressionValueStack::NotEquals<br>CExpressionValueStack::Or<br>CExpressionValueStack::Pow<br>CExpressionValueStack::ProcessReferenceNode<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::Quaternion<br>CExpressionValueStack::QuaternionFromAxisAngle<br>CExpressionValueStack::QuaternionFromLerp<br>CExpressionValueStack::QuaternionFromRotationMatrix<br>CExpressionValueStack::QuaternionFromYawPitchRoll<br>CExpressionValueStack::Round<br>CExpressionValueStack::Scale<br>CExpressionValueStack::Slerp<br>CExpressionValueStack::Sqrt<br>CExpressionValueStack::Square<br>CExpressionValueStack::Subtract<br>CExpressionValueStack::Swizzle<br>CExpressionValueStack::Tan<br>CExpressionValueStack::TimeSpanFrom<br>CExpressionValueStack::ToDegrees<br>CExpressionValueStack::ToRadians<br>CExpressionValueStack::Transform<br>CExpressionValueStack::Vector2Dot<br>CExpressionValueStack::Vector2Transform<br>CExpressionValueStack::Vector2TransformNormal<br>CExpressionValueStack::Vector3<br>CExpressionValueStack::Vector3Cross<br>CExpressionValueStack::Vector3Dot<br>CExpressionValueStack::Vector3Transform<br>CExpressionValueStack::Vector3TransformNormal<br>CExpressionValueStack::Vector4<br>CExpressionValueStack::Vector4Dot<br>CExpressionValueStack::Vector4Transform<br>DynArray<CExpressionValue,1>::AddAndSet<br>DynArray<CExpressionValue,1>::operator[]<br>DynArray<ConditionalBasicBlock,1>::AddMultipleAndSet<br>Microsoft::WRL::ComPtr<CPathData>::InternalRelease<br>MilInstrumentationCheckHR_MaybeFailFast<br>_tlgKeywordOn<br>_tlgWriteTemplate<long___cdecl(_tlgProvider_t_const*___ptr64,void_const*___ptr64,_GUID_const*___ptr64,_GUID_const*___ptr64,unsigned_int,_EVENT_DATA_DESCRIPTOR*___ptr64),&long___cdecl__tlgWriteTransfer_EventWriteTransfer(struct__tlgProvider_t_const*___ptr64,void_const*___ptr64,struct__GUID_const*___ptr64,struct__GUID_const*___ptr64,unsigned_int,struct__EVENT_DATA_DESCRIPTOR*___ptr64),_GUID_const*___ptr64,_GUID_const*___ptr64>::Write<_tlgWrapperByVal<4>,_tlgWrapperByVal<4>,_tlgWrapperByVal<4>_><br>cosf<br>sinf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled</details>|
|calling|||
|paramcount|4|4|
|`address`|180071850|1800be5a0|
|sig|long __thiscall CalculateValueWorker(CExpression * this, CExpressionValueStack * param_1, __uint64 param_2, bool * param_3)|long __thiscall CalculateValueWorker(CExpression * this, CExpressionValueStack * param_1, __uint64 param_2, bool * param_3)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpression::CalculateValueWorker Called Diff


```diff
--- CExpression::CalculateValueWorker called
+++ CExpression::CalculateValueWorker called
@@ -0,0 +1,6 @@
+CBaseExpression::GetTracingCookie
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+CExpressionValueStack::Absolute
+CExpressionValueStack::Acos
@@ -1,0 +8,4 @@
+CExpressionValueStack::And
+CExpressionValueStack::Asin
+CExpressionValueStack::Atan
+CExpressionValueStack::Ceil
@@ -2,0 +13 @@
+CExpressionValueStack::ColorHsl
@@ -3,0 +15 @@
+CExpressionValueStack::ColorLerpRgb
@@ -4,0 +17 @@
+CExpressionValueStack::Concatenate
@@ -5,0 +19,2 @@
+CExpressionValueStack::Distance
+CExpressionValueStack::DistanceSquared
@@ -7,0 +23,2 @@
+CExpressionValueStack::Equals
+CExpressionValueStack::Floor
@@ -8,0 +26,5 @@
+CExpressionValueStack::GreaterThanEquals
+CExpressionValueStack::Inverse
+CExpressionValueStack::Length
+CExpressionValueStack::LengthSquared
+CExpressionValueStack::Lerp
@@ -10,0 +33,2 @@
+CExpressionValueStack::Ln
+CExpressionValueStack::Log10
@@ -11,0 +36 @@
+CExpressionValueStack::Matrix3x2FromRotation
@@ -12,0 +38 @@
+CExpressionValueStack::Matrix3x2FromSkew
@@ -13,0 +40,9 @@
+CExpressionValueStack::Matrix4x4FromAxisAngle
+CExpressionValueStack::Matrix4x4FromPerspective
+CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView
+CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter
+CExpressionValueStack::Matrix4x4FromQuaternion
+CExpressionValueStack::Matrix4x4FromRotationX
+CExpressionValueStack::Matrix4x4FromRotationY
+CExpressionValueStack::Matrix4x4FromRotationZ
+CExpressionValueStack::Matrix4x4FromScale
@@ -14,0 +50,4 @@
+CExpressionValueStack::Matrix4x4FromYawPitchRoll
+CExpressionValueStack::Max
+CExpressionValueStack::Min
+CExpressionValueStack::Modulus
@@ -16,0 +56,4 @@
+CExpressionValueStack::Normalize
+CExpressionValueStack::Not
+CExpressionValueStack::NotEquals
+CExpressionValueStack::Or
@@ -19,0 +63,15 @@
+CExpressionValueStack::PushConstant
+CExpressionValueStack::PushConstant
+CExpressionValueStack::PushConstant
+CExpressionValueStack::PushConstant
+CExpressionValueStack::PushConstant
+CExpressionValueStack::PushConstant
+CExpressionValueStack::Quaternion
+CExpressionValueStack::QuaternionFromAxisAngle
+CExpressionValueStack::QuaternionFromLerp
+CExpressionValueStack::QuaternionFromRotationMatrix
+CExpressionValueStack::QuaternionFromYawPitchRoll
+CExpressionValueStack::Round
+CExpressionValueStack::Scale
+CExpressionValueStack::Slerp
+CExpressionValueStack::Sqrt
@@ -22,0 +81,8 @@
+CExpressionValueStack::Tan
+CExpressionValueStack::TimeSpanFrom
+CExpressionValueStack::ToDegrees
+CExpressionValueStack::ToRadians
+CExpressionValueStack::Transform
+CExpressionValueStack::Vector2Dot
+CExpressionValueStack::Vector2Transform
+CExpressionValueStack::Vector2TransformNormal
@@ -23,0 +90,7 @@
+CExpressionValueStack::Vector3Cross
+CExpressionValueStack::Vector3Dot
+CExpressionValueStack::Vector3Transform
+CExpressionValueStack::Vector3TransformNormal
+CExpressionValueStack::Vector4
+CExpressionValueStack::Vector4Dot
+CExpressionValueStack::Vector4Transform
@@ -25,22 +98,2 @@
-DynArrayImpl<1>::AddMultipleAndSet
-FUN_180147101
-FUN_180147135
-FUN_18014714e
-FUN_180147167
-FUN_180147180
-FUN_180147199
-FUN_1801471b2
-FUN_1801471cb
-FUN_1801471e4
-FUN_1801471fd
-FUN_1801472ca
-FUN_1801472e3
-FUN_180147356
-FUN_18014736f
-FUN_180147388
-FUN_1801473a1
-FUN_18014742f
-FUN_180147463
-FUN_180147539
-FUN_1801475a1
-FUN_180147647
+DynArray<CExpressionValue,1>::operator[]
+DynArray<ConditionalBasicBlock,1>::AddMultipleAndSet
@@ -48,0 +102,2 @@
+_tlgKeywordOn
+_tlgWriteTemplate<long___cdecl(_tlgProvider_t_const*___ptr64,void_const*___ptr64,_GUID_const*___ptr64,_GUID_const*___ptr64,unsigned_int,_EVENT_DATA_DESCRIPTOR*___ptr64),&long___cdecl__tlgWriteTransfer_EventWriteTransfer(struct__tlgProvider_t_const*___ptr64,void_const*___ptr64,struct__GUID_const*___ptr64,struct__GUID_const*___ptr64,unsigned_int,struct__EVENT_DATA_DESCRIPTOR*___ptr64),_GUID_const*___ptr64,_GUID_const*___ptr64>::Write<_tlgWrapperByVal<4>,_tlgWrapperByVal<4>,_tlgWrapperByVal<4>_>
@@ -50 +104,0 @@
-memset
@@ -51,0 +106 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpression::CalculateValueWorker Diff


```diff
--- CExpression::CalculateValueWorker
+++ CExpression::CalculateValueWorker
@@ -1,1410 +1,1261 @@
 
 /* protected: virtual long __cdecl CExpression::CalculateValueWorker(class CExpressionValueStack *
    __ptr64,unsigned __int64,bool * __ptr64) __ptr64 */
 
 long __thiscall
 CExpression::CalculateValueWorker
           (CExpression *this,CExpressionValueStack *param_1,__uint64 param_2,bool *param_3)
 
 {
   undefined4 uVar1;
   undefined4 uVar2;
-  uint uVar3;
-  longlong lVar4;
-  char cVar5;
-  long lVar6;
-  CExpressionValueStack *pCVar7;
-  ulonglong uVar8;
-  ulong uVar9;
-  CExpressionValueStack *pCVar10;
-  DynArray<CExpressionValue,1> *this_00;
+  bool bVar3;
+  char cVar4;
+  uint uVar5;
+  uint uVar6;
+  CExpressionValue *pCVar7;
+  CExpressionValue *pCVar8;
+  CExpressionValue *pCVar9;
+  ulong uVar10;
+  DynArray<CExpressionValue,1> *pDVar11;
+  CExpressionValueStack *pCVar12;
+  DynArray<ConditionalBasicBlock,1> *this_00;
+  DynArray<CExpressionValue,1> *pDVar13;
   ComPtr<CPathData> *this_01;
-  uint uVar11;
-  ulonglong uVar12;
-  ExpressionConditionalNode *pEVar13;
-  float *pfVar14;
-  uint uVar15;
-  ExpressionNode *pEVar16;
-  uint uVar17;
-  longlong lVar18;
-  _GUID *p_Var19;
-  _GUID *p_Var20;
+  ConditionalBasicBlock *pCVar14;
+  ExpressionNode *pEVar15;
+  uint uVar16;
+  _GUID *p_Var17;
+  _GUID *p_Var18;
+  CExpressionValue *pCVar19;
+  int iVar20;
   int iVar21;
-  int iVar22;
-  float fVar23;
-  bool local_b8 [8];
-  uint local_b0;
-  int iStack_ac;
-  uint uStack_a8;
-  undefined4 auStack_a4 [3];
-  CExpressionValue local_98 [64];
-  undefined8 local_58;
-  undefined4 local_50;
-  undefined1 local_4c;
+  float fVar22;
+  CExpressionValue *local_2e8;
+  uint local_2e0;
+  bool local_2dc [4];
+  undefined4 local_2d8;
+  int local_2d4;
+  CExpression *local_2d0;
+  undefined8 local_2c8;
+  undefined8 uStack_2c0;
+  undefined8 local_2b8;
+  undefined8 uStack_2b0;
+  undefined8 local_2a8;
+  undefined8 uStack_2a0;
+  undefined8 local_298;
+  undefined8 uStack_290;
+  undefined8 local_288;
+  undefined4 local_280;
+  undefined1 local_27c;
+  CExpressionValue local_278 [80];
+  CExpressionValue local_228 [80];
+  CExpressionValue local_1d8 [80];
+  CExpressionValue local_188 [80];
+  CExpressionValue local_138 [80];
+  CExpressionValue local_e8 [80];
+  CExpressionValue local_98 [96];
   
-  uVar8 = 0;
-  uVar15 = 0;
+  pCVar19 = (CExpressionValue *)0x0;
   *param_3 = false;
-  uVar9 = *(ulong *)(this + 0x15c);
-  pCVar10 = (CExpressionValueStack *)(ulonglong)uVar9;
-  pCVar7 = (CExpressionValueStack *)(ulonglong)*(uint *)(*(longlong *)(this + 0x150) + 0x48);
-  if (pCVar10 < pCVar7) {
-    uVar12 = (ulonglong)*(uint *)(this + 0x158);
-    if ((uVar12 <= (ulonglong)((longlong)pCVar7 - (longlong)pCVar10)) &&
-       (lVar4 = *(longlong *)(*(longlong *)(this + 0x150) + 0x50), lVar4 != 0)) {
-      pCVar7 = pCVar10 + lVar4;
-      if (pCVar7 != (CExpressionValueStack *)0x0) {
-        *(uint *)(this + 0x17c) = *(uint *)(this + 0x158);
-        do {
-          if ((uint)uVar8 < (uint)uVar12) {
-            do {
-              uVar9 = (ulong)pCVar10;
-              iVar22 = 4;
-              uVar15 = (uint)uVar8;
-              uVar17 = *(int *)(this + 0x158) - uVar15;
-              if (uVar17 < 4) {
-                uVar17 = 0x80004005;
-                uVar11 = 0x286;
-                goto LAB_0;
+  pCVar9 = (CExpressionValue *)(ulonglong)*(uint *)(this + 0x15c);
+  uVar6 = 0;
+  local_2e0 = 0;
+  pDVar11 = (DynArray<CExpressionValue,1> *)(ulonglong)*(uint *)(*(longlong *)(this + 0x150) + 0x48)
+  ;
+  pCVar8 = pCVar19;
+  local_2d0 = this;
+  if (pCVar9 < pDVar11) {
+    pCVar7 = (CExpressionValue *)(ulonglong)*(uint *)(this + 0x158);
+    pDVar11 = pDVar11 + -(longlong)pCVar9;
+    if (((pCVar7 <= pDVar11) &&
+        (pDVar11 = *(DynArray<CExpressionValue,1> **)(*(longlong *)(this + 0x150) + 0x50),
+        pDVar11 != (DynArray<CExpressionValue,1> *)0x0)) &&
+       (pCVar8 = pCVar9 + (longlong)pDVar11, local_2e8 = pCVar8, pCVar8 != (CExpressionValue *)0x0))
+    {
+      *(uint *)(this + 0x17c) = *(uint *)(this + 0x158);
+      while ((uint)pCVar7 <= (uint)pCVar19) {
+LAB_0:
+        iVar20 = *(int *)(this + 0x198);
+        if (iVar20 == 0) {
+          return 0;
+        }
+        pDVar11 = (DynArray<CExpressionValue,1> *)(ulonglong)(iVar20 - 1U);
+        uVar6 = *(uint *)(*(longlong *)(this + 0x180) + (ulonglong)(iVar20 - 1) * 8);
+        *(uint *)(this + 0x17c) = uVar6;
+        local_2e0 = *(uint *)(*(longlong *)(this + 0x180) + 4 + (longlong)pDVar11 * 8);
+        pCVar19 = (CExpressionValue *)(ulonglong)local_2e0;
+        *(uint *)(this + 0x198) = iVar20 - 1U;
+        pCVar7 = (CExpressionValue *)(ulonglong)uVar6;
+      }
+LAB_1:
+      uVar10 = (ulong)pDVar11;
+      pCVar9 = &CExpressionValueStack::s_emptyValue;
+      iVar20 = 4;
+      uVar6 = (uint)pCVar19;
+      uVar16 = *(int *)(this + 0x158) - uVar6;
+      if (uVar16 < 4) {
+        uVar16 = 0x286;
+        goto LAB_2;
+      }
+      pEVar15 = (ExpressionNode *)(pCVar19 + (longlong)pCVar8);
+      uVar5 = *(uint *)pEVar15;
+      pDVar11 = (DynArray<CExpressionValue,1> *)param_1;
+      if (uVar5 == 9) {
+        iVar20 = 8;
+        if (7 < uVar16) {
+          uVar5 = CExpressionValueStack::ProcessReferenceNode
+                            (param_1,this,(ExpressionReferenceNode *)pEVar15,(__uint64)param_3);
+          uVar10 = (ulong)pDVar11;
+          if (-1 < (int)uVar5) goto LAB_3;
+          p_Var18 = (_GUID *)(ulonglong)uVar5;
+          uVar16 = 0x301;
+          goto LAB_4;
+        }
+        uVar16 = 0x2f3;
+        goto LAB_2;
+      }
+      if (uVar5 == 1) {
+        iVar20 = 8;
+        if (uVar16 < 8) {
+          uVar16 = 0x29b;
+          goto LAB_2;
+        }
+        uVar10 = *(ulong *)(param_1 + 0x10);
+        uVar2 = *(undefined4 *)(pEVar15 + 4);
+        if (4 < ~uVar10) {
+          pDVar11 = (DynArray<CExpressionValue,1> *)(param_1 + 0x18);
+          if (*(ulong *)(param_1 + 0x30) == uVar10) {
+            local_288 = 0;
+            local_280 = 0x12;
+            local_27c = 0;
+            local_2c8 = 0;
+            uStack_2c0 = 0;
+            local_2b8 = 0;
+            uStack_2b0 = 0;
+            local_2a8 = 0;
+            uStack_2a0 = 0;
+            local_298 = 0;
+            uStack_290 = 0;
+            pDVar13 = pDVar11;
+            uVar5 = DynArray<CExpressionValue,1>::AddAndSet
+                              (pDVar11,0x80000000,(CExpressionValue *)&local_2c8);
+            if ((int)uVar5 < 0) {
+              MilInstrumentationCheckHR_MaybeFailFast
+                        ((ulong)pDVar13,
+                         (long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,uVar5,0x5c,
+                         (void *)0x0);
+              this_01 = (ComPtr<CPathData> *)&local_288;
+              Microsoft::WRL::ComPtr<CPathData>::InternalRelease(this_01);
+              uVar10 = (ulong)this_01;
+              goto LAB_5;
+            }
+            Microsoft::WRL::ComPtr<CPathData>::InternalRelease((ComPtr<CPathData> *)&local_288);
+          }
+          uVar16 = *(uint *)(param_1 + 0x10);
+          *(uint *)(param_1 + 0x10) = uVar16 + 1;
+          pDVar11 = (DynArray<CExpressionValue,1> *)
+                    ((ulonglong)uVar16 * 0x50 + *(longlong *)pDVar11);
+          *(undefined4 *)pDVar11 = uVar2;
+          *(undefined4 *)(pDVar11 + 0x48) = 0x12;
+          *(CExpressionValue *)(pDVar11 + 0x4c) = (CExpressionValue)0x1;
+          goto LAB_3;
+        }
+        uVar5 = 0x8000ffff;
+        MilInstrumentationCheckHR_MaybeFailFast
+                  (uVar10,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
+                   -0x7fff0001,0x53,(void *)0x0);
+LAB_5:
+        MilInstrumentationCheckHR_MaybeFailFast
+                  (uVar10,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,uVar5,
+                   0x1d2,(void *)0x0);
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x29f;
+        goto LAB_4;
+      }
+      if (uVar5 == 0xf) {
+        uVar5 = CExpressionValueStack::Multiply(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x316;
+        goto LAB_4;
+      }
+      if (0x66 < uVar5) {
+switchD_1800be6a1_caseD_1:
+        uVar16 = 0x4e5;
+        goto LAB_2;
+      }
+      uVar10 = (&switchD_1800be6a1::switchdataD_1800c0210)[(int)uVar5] + 0x80000000;
+      switch(uVar5) {
+      case 0:
+        iVar20 = 8;
+        if (uVar16 < 8) {
+          uVar16 = 0x290;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::PushConstant(param_1,(bool)pEVar15[4]);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x294;
+        break;
+      default:
+        goto switchD_1800be6a1_caseD_1;
+      case 2:
+        iVar20 = 0xc;
+        if (uVar16 < 0xc) {
+          uVar16 = 0x2a6;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::PushConstant(param_1,(D2DVector2 *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x2aa;
+        break;
+      case 3:
+        iVar20 = 0x10;
+        if (uVar16 < 0x10) {
+          uVar16 = 0x2b1;
+          goto LAB_2;
+        }
+        pCVar12 = param_1;
+        uVar5 = CExpressionValueStack::EnsureAvailablePushSpace(param_1);
+        uVar10 = (ulong)pCVar12;
+        if (-1 < (int)uVar5) {
+          uVar16 = *(uint *)(param_1 + 0x10);
+          *(uint *)(param_1 + 0x10) = uVar16 + 1;
+          pDVar11 = (DynArray<CExpressionValue,1> *)
+                    ((ulonglong)uVar16 * 0x50 + *(longlong *)(param_1 + 0x18));
+          *(undefined4 *)(pDVar11 + 0x48) = 0x34;
+          *(undefined8 *)pDVar11 = *(undefined8 *)(pEVar15 + 4);
+          *(undefined4 *)(pDVar11 + 8) = *(undefined4 *)(pEVar15 + 0xc);
+          *(CExpressionValue *)(pDVar11 + 0x4c) = (CExpressionValue)0x1;
+          goto LAB_3;
+        }
+        MilInstrumentationCheckHR_MaybeFailFast
+                  (uVar10,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,uVar5,500,
+                   (void *)0x0);
+        uVar16 = 0x2b5;
+        goto LAB_6;
+      case 4:
+        iVar20 = 0x14;
+        if (uVar16 < 0x14) {
+          uVar16 = 700;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::PushConstant(param_1,(D2DVector4 *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x2c0;
+        break;
+      case 5:
+        iVar20 = 0x14;
+        if (uVar16 < 0x14) {
+          uVar16 = 0x2c7;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::PushConstant(param_1,(_D3DCOLORVALUE *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x2cb;
+        break;
+      case 6:
+        iVar20 = 0x14;
+        if (uVar16 < 0x14) {
+          uVar16 = 0x2d2;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::PushConstant(param_1,(D2DQuaternion *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x2d6;
+        break;
+      case 7:
+        iVar20 = 0x1c;
+        if (uVar16 < 0x1c) {
+          uVar16 = 0x2dd;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::PushConstant(param_1,(D2D_MATRIX_3X2_F *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x2e1;
+        break;
+      case 8:
+        iVar20 = 0x44;
+        if (uVar16 < 0x44) {
+          uVar16 = 0x2e8;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::PushConstant(param_1,(D2DMatrix *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x2ec;
+        break;
+      case 0xb:
+        uVar5 = CExpressionValueStack::Absolute(param_1);
+        uVar10 = (ulong)pDVar11;
+        if ((int)uVar5 < 0) {
+          p_Var18 = (_GUID *)(ulonglong)uVar5;
+          uVar16 = 0x306;
+          break;
+        }
+LAB_3:
+        local_2e0 = uVar6 + iVar20;
+        pCVar19 = (CExpressionValue *)(ulonglong)local_2e0;
+        pCVar8 = local_2e8;
+        if (*(uint *)(this + 0x17c) <= local_2e0) goto LAB_0;
+        goto LAB_1;
+      case 0xc:
+        uVar5 = CExpressionValueStack::Negate(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x30a;
+        break;
+      case 0xd:
+        uVar5 = CExpressionValueStack::Add(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x30e;
+        break;
+      case 0xe:
+        uVar5 = CExpressionValueStack::Subtract(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x312;
+        break;
+      case 0x10:
+        uVar5 = CExpressionValueStack::Divide(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x31a;
+        break;
+      case 0x11:
+        uVar5 = CExpressionValueStack::Modulus(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x31e;
+        break;
+      case 0x12:
+        uVar5 = CExpressionValueStack::Min(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x346;
+        break;
+      case 0x13:
+        uVar5 = CExpressionValueStack::Max(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x34a;
+        break;
+      case 0x14:
+        uVar5 = CExpressionValueStack::Clamp(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x34e;
+        break;
+      case 0x15:
+        uVar5 = CExpressionValueStack::Scale(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x352;
+        break;
+      case 0x16:
+        uVar5 = CExpressionValueStack::Transform(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x356;
+        break;
+      case 0x17:
+        uVar5 = CExpressionValueStack::Inverse(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x35a;
+        break;
+      case 0x18:
+        uVar5 = CExpressionValueStack::Lerp(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x35e;
+        break;
+      case 0x19:
+        uVar5 = CExpressionValueStack::ColorLerpHsl(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x362;
+        break;
+      case 0x1a:
+        uVar5 = CExpressionValueStack::ColorLerpHsl(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x366;
+        break;
+      case 0x1b:
+        uVar5 = CExpressionValueStack::ColorLerpRgb(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x36a;
+        break;
+      case 0x1c:
+        uVar5 = CExpressionValueStack::Length(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x36e;
+        break;
+      case 0x1d:
+        uVar5 = CExpressionValueStack::LengthSquared(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x372;
+        break;
+      case 0x1e:
+        uVar5 = CExpressionValueStack::Distance(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x376;
+        break;
+      case 0x1f:
+        uVar5 = CExpressionValueStack::DistanceSquared(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x37a;
+        break;
+      case 0x20:
+        uVar5 = CExpressionValueStack::Normalize(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x37e;
+        break;
+      case 0x21:
+        uVar5 = CExpressionValueStack::Slerp(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x382;
+        break;
+      case 0x22:
+        uVar5 = CExpressionValueStack::Concatenate(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x386;
+        break;
+      case 0x23:
+        if (*(int *)(param_1 + 0x10) == 0) {
+          MilInstrumentationCheckHR_MaybeFailFast
+                    (uVar10,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
+                     -0x7fffbffb,0xfe0,(void *)0x0);
+        }
+        else {
+          bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          if ((bVar3) && (*(uint *)(param_1 + 0x30) <= *(int *)(param_1 + 0x10) - 1U)) {
+            pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_278);
+            CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar8);
+            pDVar11 = (DynArray<CExpressionValue,1> *)local_278;
+            CExpressionValue::~CExpressionValue((CExpressionValue *)pDVar11);
+          }
+          else {
+            pDVar11 = (DynArray<CExpressionValue,1> *)(param_1 + 0x18);
+            pCVar9 = DynArray<CExpressionValue,1>::operator[](pDVar11,*(int *)(param_1 + 0x10) - 1U)
+            ;
+          }
+          uVar10 = (ulong)pDVar11;
+          if (*(float *)(pCVar9 + 0x48) == 2.52234e-44) {
+            *(float *)(pCVar9 + 0x48) = 2.52234e-44;
+            fVar22 = sinf(*(float *)pCVar9);
+            *(float *)pCVar9 = fVar22;
+            pCVar9[0x4c] = (CExpressionValue)0x1;
+            goto LAB_3;
+          }
+          MilInstrumentationCheckHR_MaybeFailFast
+                    (uVar10,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
+                     -0x7fffbffb,0xffa,(void *)0x0);
+        }
+        uVar5 = 0x80004005;
+        p_Var18 = (_GUID *)&DAT_7;
+        uVar16 = 0x38a;
+        break;
+      case 0x24:
+        uVar5 = CExpressionValueStack::Asin(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x38e;
+        break;
+      case 0x25:
+        if (*(int *)(param_1 + 0x10) == 0) {
+          MilInstrumentationCheckHR_MaybeFailFast
+                    (uVar10,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
+                     -0x7fffbffb,0x1068,(void *)0x0);
+        }
+        else {
+          bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          if ((bVar3) && (*(uint *)(param_1 + 0x30) <= *(int *)(param_1 + 0x10) - 1U)) {
+            pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_228);
+            CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar8);
+            pDVar11 = (DynArray<CExpressionValue,1> *)local_228;
+            CExpressionValue::~CExpressionValue(local_228);
+          }
+          else {
+            pDVar11 = (DynArray<CExpressionValue,1> *)(param_1 + 0x18);
+            pCVar9 = DynArray<CExpressionValue,1>::operator[](pDVar11,*(int *)(param_1 + 0x10) - 1U)
+            ;
+          }
+          uVar10 = (ulong)pDVar11;
+          if (*(float *)(pCVar9 + 0x48) == 2.52234e-44) {
+            *(float *)(pCVar9 + 0x48) = 2.52234e-44;
+            fVar22 = cosf(*(float *)pCVar9);
+            *(float *)pCVar9 = fVar22;
+            pCVar9[0x4c] = (CExpressionValue)0x1;
+            goto LAB_3;
+          }
+          MilInstrumentationCheckHR_MaybeFailFast
+                    (uVar10,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
+                     -0x7fffbffb,0x1084,(void *)0x0);
+        }
+        uVar5 = 0x80004005;
+        p_Var18 = (_GUID *)&DAT_7;
+        uVar16 = 0x392;
+        break;
+      case 0x26:
+        uVar5 = CExpressionValueStack::Acos(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x396;
+        break;
+      case 0x27:
+        uVar5 = CExpressionValueStack::Tan(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x39a;
+        break;
+      case 0x28:
+        uVar5 = CExpressionValueStack::Atan(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x39e;
+        break;
+      case 0x29:
+        uVar5 = CExpressionValueStack::Ceil(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3a2;
+        break;
+      case 0x2a:
+        uVar5 = CExpressionValueStack::Floor(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3a6;
+        break;
+      case 0x2b:
+        uVar5 = CExpressionValueStack::Round(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3aa;
+        break;
+      case 0x2c:
+        uVar5 = CExpressionValueStack::Sqrt(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3ae;
+        break;
+      case 0x2d:
+        uVar5 = CExpressionValueStack::Pow(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3b2;
+        break;
+      case 0x2e:
+        uVar5 = CExpressionValueStack::Square(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3b6;
+        break;
+      case 0x2f:
+        uVar5 = CExpressionValueStack::Log10(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3ba;
+        break;
+      case 0x30:
+        uVar5 = CExpressionValueStack::Ln(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3be;
+        break;
+      case 0x31:
+        uVar5 = CExpressionValueStack::ToDegrees(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3c2;
+        break;
+      case 0x32:
+        uVar5 = CExpressionValueStack::ToRadians(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3c6;
+        break;
+      case 0x33:
+        if (uVar16 < 0xc) {
+          uVar16 = 0x4b4;
+        }
+        else {
+          uVar5 = *(int *)(pEVar15 + 4) + 0xc + *(int *)(pEVar15 + 8);
+          iVar21 = uVar5 + uVar6;
+          if (uVar5 <= uVar16) {
+            local_2d8 = *(undefined4 *)(this + 0x17c);
+            this_00 = (DynArray<ConditionalBasicBlock,1> *)(this + 0x180);
+            pCVar14 = (ConditionalBasicBlock *)&local_2d8;
+            local_2d4 = iVar21;
+            uVar5 = DynArray<ConditionalBasicBlock,1>::AddMultipleAndSet(this_00,pCVar14,uVar16);
+            uVar10 = (ulong)this_00;
+            if ((int)uVar5 < 0) {
+              p_Var18 = (_GUID *)(ulonglong)uVar5;
+              uVar16 = 0x4c7;
+            }
+            else {
+              uVar5 = CExpressionValueStack::Conditional
+                                (param_1,(ExpressionConditionalNode *)pCVar14,local_2dc);
+              uVar10 = (ulong)pDVar11;
+              if (-1 < (int)uVar5) {
+                if (local_2dc[0] == false) {
+                  iVar20 = *(int *)(pEVar15 + 4) + 0xc;
+                  *(int *)(this + 0x17c) = iVar21;
+                }
+                else {
+                  iVar20 = 0xc;
+                  *(uint *)(this + 0x17c) = uVar6 + 0xc + *(int *)(pEVar15 + 4);
+                }
+                goto LAB_3;
               }
-              pEVar16 = (ExpressionNode *)(pCVar7 + uVar8);
-              uVar11 = *(uint *)pEVar16;
-              pCVar10 = param_1;
-              if (uVar11 == 9) {
-                iVar22 = 8;
-                if (uVar17 < 8) {
-                  uVar17 = 0x80004005;
-                  uVar11 = 0x2f3;
-                  goto LAB_0;
-                }
-                uVar17 = CExpressionValueStack::ProcessReferenceNode
-                                   (param_1,this,(ExpressionReferenceNode *)pEVar16,0x180000000);
-                uVar9 = (ulong)pCVar10;
-                if ((int)uVar17 < 0) {
-                  p_Var20 = (_GUID *)(ulonglong)uVar17;
-                  uVar11 = 0x301;
-                  goto LAB_1;
-                }
-              }
-              else if (uVar11 == 1) {
-                iVar22 = 8;
-                if (uVar17 < 8) {
-                  uVar17 = 0x80004005;
-                  uVar11 = 0x29b;
-                  goto LAB_0;
-                }
-                uVar9 = *(ulong *)(param_1 + 0x10);
-                uVar1 = *(undefined4 *)(pEVar16 + 4);
-                if (~uVar9 < 5) {
-                  uVar17 = 0x8000ffff;
-                  MilInstrumentationCheckHR_MaybeFailFast
-                            (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                             -0x7fff0001,0x52,(void *)0x0);
-LAB_2:
-                  MilInstrumentationCheckHR_MaybeFailFast
-                            (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                             uVar17,0x1c2,(void *)0x0);
-                  p_Var20 = (_GUID *)(ulonglong)uVar17;
-                  uVar11 = 0x29f;
-                  goto LAB_1;
-                }
-                if (*(ulong *)(param_1 + 0x30) == uVar9) {
-                  uVar17 = 0;
-                  memset(local_98,0,0x40);
-                  this_00 = (DynArray<CExpressionValue,1> *)(param_1 + 0x18);
-                  local_58 = 0;
-                  local_50 = 0x12;
-                  local_4c = 0;
-                  uVar17 = DynArray<CExpressionValue,1>::AddAndSet(this_00,uVar17,local_98);
-                  if ((int)uVar17 < 0) {
-                    MilInstrumentationCheckHR_MaybeFailFast
-                              ((ulong)this_00,
-                               (long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                               uVar17,0x5b,(void *)0x0);
-                    this_01 = (ComPtr<CPathData> *)&local_58;
-                    Microsoft::WRL::ComPtr<CPathData>::InternalRelease(this_01);
-                    uVar9 = (ulong)this_01;
-                    goto LAB_2;
-                  }
-                  Microsoft::WRL::ComPtr<CPathData>::InternalRelease((ComPtr<CPathData> *)&local_58)
-                  ;
-                }
-                uVar17 = *(uint *)(param_1 + 0x10);
-                *(uint *)(param_1 + 0x10) = uVar17 + 1;
-                pCVar10 = (CExpressionValueStack *)
-                          ((ulonglong)uVar17 * 0x50 + *(longlong *)(param_1 + 0x18));
-                *(undefined4 *)pCVar10 = uVar1;
-                *(undefined4 *)(pCVar10 + 0x48) = 0x12;
-                pCVar10[0x4c] = (CExpressionValueStack)0x1;
-              }
-              else if (uVar11 == 0xf) {
-                lVar6 = CExpressionValueStack::Multiply(param_1);
-                if (lVar6 < 0) {
-                  lVar6 = FUN_180147647();
-                  return lVar6;
-                }
+              p_Var18 = (_GUID *)(ulonglong)uVar5;
+              uVar16 = 0x4ca;
+            }
+            break;
+          }
+          uVar16 = 0x4be;
+        }
+        goto LAB_2;
+      case 0x35:
+        uVar5 = CExpressionValueStack::Equals(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x322;
+        break;
+      case 0x36:
+        uVar5 = CExpressionValueStack::NotEquals(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x326;
+        break;
+      case 0x37:
+        uVar5 = CExpressionValueStack::LessThan(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x32a;
+        break;
+      case 0x38:
+        uVar5 = CExpressionValueStack::LessThanEquals(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x32e;
+        break;
+      case 0x39:
+        uVar5 = CExpressionValueStack::GreaterThan(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x332;
+        break;
+      case 0x3a:
+        uVar5 = CExpressionValueStack::GreaterThanEquals(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x336;
+        break;
+      case 0x3b:
+        uVar5 = CExpressionValueStack::And(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x33a;
+        break;
+      case 0x3c:
+        uVar5 = CExpressionValueStack::Or(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x33e;
+        break;
+      case 0x3d:
+        uVar5 = CExpressionValueStack::Not(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x342;
+        break;
+      case 0x3e:
+        if (*(uint *)(param_1 + 0x10) < 2) {
+          MilInstrumentationCheckHR_MaybeFailFast
+                    (uVar10,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
+                     -0x7fffbffb,0x140c,(void *)0x0);
+        }
+        else {
+          bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          pDVar11 = (DynArray<CExpressionValue,1> *)(param_1 + 0x18);
+          if ((bVar3) && (*(uint *)(param_1 + 0x30) <= *(int *)(param_1 + 0x10) - 2U)) {
+            pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_1d8);
+            CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar8);
+            CExpressionValue::~CExpressionValue(local_1d8);
+          }
+          else {
+            pCVar9 = DynArray<CExpressionValue,1>::operator[](pDVar11,*(int *)(param_1 + 0x10) - 2U)
+            ;
+          }
+          bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          if ((bVar3) && (*(uint *)(param_1 + 0x30) <= *(int *)(param_1 + 0x10) - 1U)) {
+            pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_188);
+            CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar8);
+            pDVar11 = (DynArray<CExpressionValue,1> *)local_188;
+            CExpressionValue::~CExpressionValue((CExpressionValue *)pDVar11);
+            pCVar8 = &CExpressionValueStack::s_emptyValue;
+          }
+          else {
+            pCVar8 = DynArray<CExpressionValue,1>::operator[](pDVar11,*(int *)(param_1 + 0x10) - 1U)
+            ;
+          }
+          uVar10 = (ulong)pDVar11;
+          if ((*(int *)(pCVar9 + 0x48) == 0x12) && (*(int *)(pCVar8 + 0x48) == 0x12)) {
+            *(undefined4 *)(pCVar9 + 4) = *(undefined4 *)pCVar8;
+            *(undefined4 *)(pCVar9 + 0x48) = 0x23;
+            pCVar9[0x4c] = (CExpressionValue)0x1;
+            *(int *)(param_1 + 0x10) = *(int *)(param_1 + 0x10) + -1;
+            uVar6 = local_2e0;
+            goto LAB_3;
+          }
+          MilInstrumentationCheckHR_MaybeFailFast
+                    (uVar10,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
+                     -0x7fffbffb,0x141a,(void *)0x0);
+          uVar6 = local_2e0;
+        }
+        uVar5 = 0x80004005;
+        p_Var18 = (_GUID *)&DAT_7;
+        uVar16 = 0x3ca;
+        break;
+      case 0x3f:
+        uVar5 = CExpressionValueStack::Vector3(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3ce;
+        break;
+      case 0x40:
+        uVar5 = CExpressionValueStack::Vector4(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3d2;
+        break;
+      case 0x41:
+        uVar5 = CExpressionValueStack::ColorHsl(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3d6;
+        break;
+      case 0x42:
+        uVar5 = CExpressionValueStack::ColorRgb(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3da;
+        break;
+      case 0x43:
+        uVar5 = CExpressionValueStack::Quaternion(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3de;
+        break;
+      case 0x44:
+        uVar5 = CExpressionValueStack::Matrix3x2(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3e2;
+        break;
+      case 0x45:
+        uVar5 = CExpressionValueStack::Matrix4x4(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3e6;
+        break;
+      case 0x46:
+        iVar20 = 8;
+        if (uVar16 < 8) {
+          uVar16 = 0x41e;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::Matrix3x2FromRotation(param_1,*(uint *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x421;
+        break;
+      case 0x47:
+        iVar20 = 8;
+        if (uVar16 < 8) {
+          uVar16 = 0x400;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::Matrix3x2FromScale(param_1,*(uint *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x403;
+        break;
+      case 0x48:
+        iVar20 = 8;
+        if (uVar16 < 8) {
+          uVar16 = 0x414;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::Matrix3x2FromSkew(param_1,*(uint *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x417;
+        break;
+      case 0x49:
+        iVar20 = 8;
+        if (7 < uVar16) {
+          uVar16 = *(uint *)(pEVar15 + 4);
+          if (*(uint *)(param_1 + 0x10) < uVar16) {
+            uVar16 = 0x162d;
+          }
+          else {
+            if (uVar16 == 1) {
+              bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                      __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                          &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                           ::__l2::impl);
+              if ((bVar3) && (*(uint *)(param_1 + 0x30) <= *(int *)(param_1 + 0x10) - 1U)) {
+                pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_138);
+                CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar8);
+                pDVar11 = (DynArray<CExpressionValue,1> *)local_138;
+                CExpressionValue::~CExpressionValue((CExpressionValue *)pDVar11);
+                pCVar8 = &CExpressionValueStack::s_emptyValue;
               }
               else {
-                if (0x66 < uVar11) {
-switchD_180071930_caseD_1:
-                  uVar17 = 0x80004005;
-                  uVar11 = 0x4e5;
-                  goto LAB_0;
-                }
-                pCVar10 = (CExpressionValueStack *)
-                          ((ulonglong)(&switchD_180071930::switchdataD_180071f8c)[(int)uVar11] +
-                          0x180000000);
-                uVar9 = (ulong)pCVar10;
-                switch(uVar11) {
-                case 0:
-                  iVar22 = 8;
-                  if (uVar17 < 8) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x290;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::PushConstant(param_1,(bool)pEVar16[4]);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x294;
-                    goto LAB_1;
-                  }
-                  break;
-                default:
-                  goto switchD_180071930_caseD_1;
-                case 2:
-                  iVar22 = 0xc;
-                  if (uVar17 < 0xc) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x2a6;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::PushConstant(param_1,(D2DVector2 *)(pEVar16 + 4));
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x2aa;
-                    goto LAB_1;
-                  }
-                  break;
-                case 3:
-                  iVar22 = 0x10;
-                  if (uVar17 < 0x10) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x2b1;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::EnsureAvailablePushSpace(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    MilInstrumentationCheckHR_MaybeFailFast
-                              (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1
-                               ,uVar17,0x1e4,(void *)0x0);
-                    uVar11 = 0x2b5;
-                    goto LAB_0;
-                  }
-                  uVar17 = *(uint *)(param_1 + 0x10);
-                  *(uint *)(param_1 + 0x10) = uVar17 + 1;
-                  pCVar10 = (CExpressionValueStack *)
-                            ((ulonglong)uVar17 * 0x50 + *(longlong *)(param_1 + 0x18));
-                  *(undefined4 *)(pCVar10 + 0x48) = 0x34;
-                  *(undefined8 *)pCVar10 = *(undefined8 *)(pEVar16 + 4);
-                  *(undefined4 *)(pCVar10 + 8) = *(undefined4 *)(pEVar16 + 0xc);
-                  pCVar10[0x4c] = (CExpressionValueStack)0x1;
-                  break;
-                case 4:
-                  iVar22 = 0x14;
-                  if (uVar17 < 0x14) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 700;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::PushConstant(param_1,(D2DVector4 *)(pEVar16 + 4));
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x2c0;
-                    goto LAB_1;
-                  }
-                  break;
-                case 5:
-                  iVar22 = 0x14;
-                  if (uVar17 < 0x14) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x2c7;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::PushConstant
-                                     (param_1,(_D3DCOLORVALUE *)(pEVar16 + 4));
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x2cb;
-                    goto LAB_1;
-                  }
-                  break;
-                case 6:
-                  iVar22 = 0x14;
-                  if (uVar17 < 0x14) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x2d2;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::PushConstant
-                                     (param_1,(D2DQuaternion *)(pEVar16 + 4));
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x2d6;
-                    goto LAB_1;
-                  }
-                  break;
-                case 7:
-                  iVar22 = 0x1c;
-                  if (uVar17 < 0x1c) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x2dd;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::PushConstant
-                                     (param_1,(D2D_MATRIX_3X2_F *)(pEVar16 + 4));
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x2e1;
-                    goto LAB_1;
-                  }
-                  break;
-                case 8:
-                  iVar22 = 0x44;
-                  if (uVar17 < 0x44) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x2e8;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::PushConstant(param_1,(D2DMatrix *)(pEVar16 + 4));
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_180147101();
-                    return lVar6;
-                  }
-                  break;
-                case 0xb:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Absolute(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x306;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0xc:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::Negate(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_180147135();
-                    return lVar6;
-                  }
-                  break;
-                case 0xd:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::Add(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_18014714e();
-                    return lVar6;
-                  }
-                  break;
-                case 0xe:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::Subtract(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_180147167();
-                    return lVar6;
-                  }
-                  break;
-                case 0x10:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::Divide(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_180147180();
-                    return lVar6;
-                  }
-                  break;
-                case 0x11:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Modulus(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x31e;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x12:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Min(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x346;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x13:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Max(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x34a;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x14:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::Clamp(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_1801471e4();
-                    return lVar6;
-                  }
-                  break;
-                case 0x15:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Scale(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x352;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x16:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Transform(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x356;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x17:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Inverse(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x35a;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x18:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Lerp(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x35e;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x19:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::ColorLerpHsl(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_1801471fd();
-                    return lVar6;
-                  }
-                  break;
-                case 0x1a:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::ColorLerpHsl(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x366;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x1b:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::ColorLerpRgb(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x36a;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x1c:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Length(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x36e;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x1d:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::LengthSquared(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x372;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x1e:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Distance(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x376;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x1f:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::DistanceSquared(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x37a;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x20:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Normalize(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x37e;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x21:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Slerp(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x382;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x22:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Concatenate(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x386;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x23:
-                  if (*(int *)(param_1 + 0x10) == 0) {
-                    uVar17 = 0xfd0;
-                  }
-                  else {
-                    pfVar14 = (float *)((ulonglong)(*(int *)(param_1 + 0x10) - 1) * 0x50 +
-                                       *(longlong *)(param_1 + 0x18));
-                    if (pfVar14[0x12] == 2.52234e-44) {
-                      pfVar14[0x12] = 2.52234e-44;
-                      fVar23 = sinf(*pfVar14);
-                      *pfVar14 = fVar23;
-                      *(undefined1 *)(pfVar14 + 0x13) = 1;
-                      break;
-                    }
-                    uVar17 = 0xfea;
-                  }
-                  MilInstrumentationCheckHR_MaybeFailFast
-                            (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                             -0x7fffbffb,uVar17,(void *)0x0);
-                  uVar17 = 0x80004005;
-                  p_Var20 = (_GUID *)&DAT_3;
-                  uVar11 = 0x38a;
-                  goto LAB_1;
-                case 0x24:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Asin(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x38e;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x25:
-                  if (*(int *)(param_1 + 0x10) == 0) {
-                    uVar17 = 0x1058;
-                  }
-                  else {
-                    pfVar14 = (float *)((ulonglong)(*(int *)(param_1 + 0x10) - 1) * 0x50 +
-                                       *(longlong *)(param_1 + 0x18));
-                    if (pfVar14[0x12] == 2.52234e-44) {
-                      pfVar14[0x12] = 2.52234e-44;
-                      fVar23 = cosf(*pfVar14);
-                      *pfVar14 = fVar23;
-                      *(undefined1 *)(pfVar14 + 0x13) = 1;
-                      break;
-                    }
-                    uVar17 = 0x1074;
-                  }
-                  MilInstrumentationCheckHR_MaybeFailFast
-                            (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                             -0x7fffbffb,uVar17,(void *)0x0);
-                  uVar17 = 0x80004005;
-                  p_Var20 = (_GUID *)&DAT_3;
-                  uVar11 = 0x392;
-                  goto LAB_1;
-                case 0x26:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Acos(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x396;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x27:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Tan(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x39a;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x28:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Atan(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x39e;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x29:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Ceil(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x3a2;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x2a:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Floor(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x3a6;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x2b:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Round(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x3aa;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x2c:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Sqrt(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x3ae;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x2d:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::Pow(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_1801472ca();
-                    return lVar6;
-                  }
-                  break;
-                case 0x2e:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::Square(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_1801472e3();
-                    return lVar6;
-                  }
-                  break;
-                case 0x2f:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Log10(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x3ba;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x30:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Ln(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x3be;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x31:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::ToDegrees(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x3c2;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x32:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::ToRadians(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x3c6;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x33:
-                  if (uVar17 < 0xc) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x4b4;
-                    goto LAB_0;
-                  }
-                  uVar11 = *(int *)(pEVar16 + 4) + 0xc + *(int *)(pEVar16 + 8);
-                  iVar21 = uVar11 + uVar15;
-                  if (uVar17 < uVar11) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x4be;
-                    goto LAB_0;
-                  }
-                  local_b0 = *(uint *)(this + 0x17c);
-                  uVar3 = *(uint *)(this + 0x198);
-                  uVar11 = uVar3 + 1;
-                  iStack_ac = iVar21;
-                  if (uVar11 < uVar3) {
-                    uVar17 = 0x80070216;
-                    MilInstrumentationCheckHR_MaybeFailFast
-                              (uVar9,(long *)0x0,0,-0x7ff8fdea,0xb5,(void *)0x0);
-                    p_Var20 = (_GUID *)0x80070216;
-                    uVar11 = 0x4c7;
-                    goto LAB_1;
-                  }
-                  if (*(uint *)(this + 0x194) < uVar11) {
-                    pEVar13 = (ExpressionConditionalNode *)0x8;
-                    lVar6 = DynArrayImpl<1>::AddMultipleAndSet
-                                      ((DynArrayImpl<1> *)(this + 0x180),8,uVar17,&local_b0);
-                    if (lVar6 < 0) {
-                      lVar6 = FUN_1801475a1();
-                      return lVar6;
-                    }
-                  }
-                  else {
-                    pEVar13 = (ExpressionConditionalNode *)(ulonglong)uVar3;
-                    *(ulonglong *)(*(longlong *)(this + 0x180) + (longlong)pEVar13 * 8) =
-                         CONCAT44(iVar21,local_b0);
-                    *(uint *)(this + 0x198) = uVar11;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Conditional(param_1,pEVar13,local_b8);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x4ca;
-                    goto LAB_1;
-                  }
-                  if (local_b8[0] == false) {
-                    iVar22 = *(int *)(pEVar16 + 4) + 0xc;
-                    *(int *)(this + 0x17c) = iVar21;
-                  }
-                  else {
-                    iVar22 = 0xc;
-                    *(uint *)(this + 0x17c) = uVar15 + 0xc + *(int *)(pEVar16 + 4);
-                  }
-                  break;
-                case 0x35:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Equals(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x322;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x36:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::NotEquals(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x326;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x37:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::LessThan(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_180147199();
-                    return lVar6;
-                  }
-                  break;
-                case 0x38:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::LessThanEquals(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_1801471b2();
-                    return lVar6;
-                  }
-                  break;
-                case 0x39:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::GreaterThan(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_1801471cb();
-                    return lVar6;
-                  }
-                  break;
-                case 0x3a:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::GreaterThanEquals(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x336;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x3b:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::And(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x33a;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x3c:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Or(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x33e;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x3d:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Not(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x342;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x3e:
-                  uVar17 = *(uint *)(param_1 + 0x10);
-                  if (uVar17 < 2) {
-                    uVar17 = 0x13fc;
-                  }
-                  else {
-                    lVar4 = *(longlong *)(param_1 + 0x18);
-                    lVar18 = (ulonglong)(uVar17 - 2) * 0x50 + lVar4;
-                    if ((*(int *)(lVar18 + 0x48) == 0x12) &&
-                       (*(int *)(lVar4 + 0x48 + (ulonglong)(uVar17 - 1) * 0x50) == 0x12)) {
-                      *(undefined4 *)(lVar18 + 4) =
-                           *(undefined4 *)(lVar4 + (ulonglong)(uVar17 - 1) * 0x50);
-                      *(undefined4 *)(lVar18 + 0x48) = 0x23;
-                      *(undefined1 *)(lVar18 + 0x4c) = 1;
-                      *(int *)(param_1 + 0x10) = *(int *)(param_1 + 0x10) + -1;
-                      break;
-                    }
-                    uVar17 = 0x140a;
-                  }
-                  MilInstrumentationCheckHR_MaybeFailFast
-                            (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                             -0x7fffbffb,uVar17,(void *)0x0);
-                  uVar17 = 0x80004005;
-                  p_Var20 = (_GUID *)&DAT_3;
-                  uVar11 = 0x3ca;
-                  goto LAB_1;
-                case 0x3f:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::Vector3(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_180147356();
-                    return lVar6;
-                  }
-                  break;
-                case 0x40:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Vector4(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x3d2;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x41:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::ColorHsl(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x3d6;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x42:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::ColorRgb(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_18014736f();
-                    return lVar6;
-                  }
-                  break;
-                case 0x43:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Quaternion(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x3de;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x44:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::Matrix3x2(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_180147388();
-                    return lVar6;
-                  }
-                  break;
-                case 0x45:
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::Matrix4x4(param_1);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_1801473a1();
-                    return lVar6;
-                  }
-                  break;
-                case 0x46:
-                  iVar22 = 8;
-                  if (uVar17 < 8) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x41e;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Matrix3x2FromRotation
-                                     (param_1,*(uint *)(pEVar16 + 4));
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x421;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x47:
-                  iVar22 = 8;
-                  if (uVar17 < 8) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x400;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::Matrix3x2FromScale(param_1,*(uint *)(pEVar16 + 4));
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_180147463();
-                    return lVar6;
-                  }
-                  break;
-                case 0x48:
-                  iVar22 = 8;
-                  if (uVar17 < 8) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x414;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Matrix3x2FromSkew(param_1,*(uint *)(pEVar16 + 4));
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x417;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x49:
-                  iVar22 = 8;
-                  if (uVar17 < 8) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x3ec;
-                    goto LAB_0;
-                  }
-                  uVar17 = *(uint *)(pEVar16 + 4);
-                  uVar11 = *(uint *)(param_1 + 0x10);
-                  if (uVar11 < uVar17) {
-                    uVar17 = 0x161d;
-                  }
-                  else {
-                    if (uVar17 == 1) {
-                      pCVar10 = *(CExpressionValueStack **)(param_1 + 0x18);
-                      uVar8 = (ulonglong)(uVar11 - 1);
-                      if (*(int *)(pCVar10 + uVar8 * 0x50 + 0x48) == 0x23) {
-                        uVar1 = *(undefined4 *)(pCVar10 + uVar8 * 0x50);
-                        uVar2 = *(undefined4 *)(pCVar10 + uVar8 * 0x50 + 4);
-                        *(undefined4 *)(pCVar10 + uVar8 * 0x50 + 0x48) = 0x68;
-                        *(undefined8 *)(pCVar10 + uVar8 * 0x50) = 0x3f800000;
-                        *(undefined4 *)(pCVar10 + uVar8 * 0x50 + 8) = 0;
-                        *(undefined4 *)(pCVar10 + uVar8 * 0x50 + 0xc) = 0x3f800000;
-                        *(undefined4 *)(pCVar10 + uVar8 * 0x50 + 0x10) = uVar1;
-                        *(undefined4 *)(pCVar10 + uVar8 * 0x50 + 0x14) = uVar2;
-                        pCVar10[uVar8 * 0x50 + 0x4c] = (CExpressionValueStack)0x1;
+                pDVar11 = (DynArray<CExpressionValue,1> *)(param_1 + 0x18);
+                pCVar8 = DynArray<CExpressionValue,1>::operator[]
+                                   (pDVar11,*(int *)(param_1 + 0x10) - 1U);
+              }
+              uVar10 = (ulong)pDVar11;
+              if (*(int *)(pCVar8 + 0x48) == 0x23) {
+                uVar2 = *(undefined4 *)pCVar8;
+                *(undefined4 *)(pCVar8 + 0x48) = 0x68;
+                *(undefined8 *)pCVar8 = 0x3f800000;
+                *(undefined4 *)(pCVar8 + 8) = 0;
+                *(undefined4 *)(pCVar8 + 0xc) = 0x3f800000;
+                *(undefined4 *)(pCVar8 + 0x10) = uVar2;
+                *(undefined4 *)(pCVar8 + 0x14) = *(undefined4 *)(pCVar8 + 4);
+                pCVar8[0x4c] = (CExpressionValue)0x1;
+                *(undefined4 *)(param_1 + 0x10) = *(undefined4 *)(param_1 + 0x10);
+                this = local_2d0;
+                goto LAB_3;
+              }
+            }
+            else if (uVar16 == 2) {
+              bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                      __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                          &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                           ::__l2::impl);
+              pDVar11 = (DynArray<CExpressionValue,1> *)(param_1 + 0x18);
+              if ((bVar3) && (*(uint *)(param_1 + 0x30) <= *(int *)(param_1 + 0x10) - 2U)) {
+                pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_e8);
+                CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar8);
+                CExpressionValue::~CExpressionValue(local_e8);
+              }
+              else {
+                pCVar9 = DynArray<CExpressionValue,1>::operator[]
+                                   (pDVar11,*(int *)(param_1 + 0x10) - 2U);
+              }
+              bVar3 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                      __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                          &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                           ::__l2::impl);
+              if ((bVar3) && (*(uint *)(param_1 + 0x30) <= *(int *)(param_1 + 0x10) - 1U)) {
+                pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+                CExpressionValue::operator=(&CExpressionValueStack::s_emptyValue,pCVar8);
+                pDVar11 = (DynArray<CExpressionValue,1> *)local_98;
+                CExpressionValue::~CExpressionValue((CExpressionValue *)pDVar11);
+                pCVar8 = &CExpressionValueStack::s_emptyValue;
+              }
+              else {
+                pCVar8 = DynArray<CExpressionValue,1>::operator[]
+                                   (pDVar11,*(int *)(param_1 + 0x10) - 1U);
+              }
+              uVar10 = (ulong)pDVar11;
+              uVar6 = local_2e0;
+              if ((*(int *)(pCVar9 + 0x48) == 0x12) && (*(int *)(pCVar8 + 0x48) == 0x12)) {
+                uVar2 = *(undefined4 *)pCVar8;
+                uVar1 = *(undefined4 *)pCVar9;
+                *(undefined4 *)(pCVar9 + 0x48) = 0x68;
+                *(undefined8 *)pCVar9 = 0x3f800000;
+                *(undefined4 *)(pCVar9 + 8) = 0;
+                *(undefined4 *)(pCVar9 + 0xc) = 0x3f800000;
+                *(undefined4 *)(pCVar9 + 0x10) = uVar1;
+                *(undefined4 *)(pCVar9 + 0x14) = uVar2;
+                pCVar9[0x4c] = (CExpressionValue)0x1;
+                *(int *)(param_1 + 0x10) = *(int *)(param_1 + 0x10) + -1;
+                this = local_2d0;
+                goto LAB_3;
+              }
+            }
+            uVar16 = 0x1656;
+          }
+          MilInstrumentationCheckHR_MaybeFailFast
+                    (uVar10,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
+                     -0x7fffbffb,uVar16,(void *)0x0);
+          uVar5 = 0x80004005;
+          p_Var18 = (_GUID *)&DAT_7;
+          p_Var17 = (_GUID *)0x2;
+          MilInstrumentationCheckHR_MaybeFailFast
+                    (uVar10,(long *)&DAT_8,2,-0x7fffbffb,0x3ef,(void *)0x0);
+          pCVar8 = local_2e8;
+          this = local_2d0;
+          goto LAB_9;
+        }
+        uVar16 = 0x3ec;
+LAB_2:
+        uVar5 = 0x80004005;
+LAB_6:
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        break;
+      case 0x4a:
+        iVar20 = 8;
+        if (uVar16 < 8) {
+          uVar16 = 0x40a;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::Matrix4x4FromScale(param_1,*(uint *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x40d;
+        break;
+      case 0x4b:
+        iVar20 = 8;
+        if (uVar16 < 8) {
+          uVar16 = 0x3f6;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::Matrix4x4FromTranslation(param_1,*(uint *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x3f9;
+        break;
+      case 0x4c:
+        uVar5 = CExpressionValueStack::Matrix4x4FromAxisAngle(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x426;
+        break;
+      case 0x4d:
+        iVar20 = 8;
+        if (uVar16 < 8) {
+          uVar16 = 0x42c;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::Matrix4x4FromRotationX(param_1,*(uint *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x42f;
+        break;
+      case 0x4e:
+        iVar20 = 8;
+        if (uVar16 < 8) {
+          uVar16 = 0x436;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::Matrix4x4FromRotationY(param_1,*(uint *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x439;
+        break;
+      case 0x4f:
+        iVar20 = 8;
+        if (uVar16 < 8) {
+          uVar16 = 0x440;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::Matrix4x4FromRotationZ(param_1,*(uint *)(pEVar15 + 4));
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x443;
+        break;
+      case 0x50:
+        uVar5 = CExpressionValueStack::Matrix4x4FromPerspective(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x448;
+        break;
+      case 0x51:
+        uVar5 = CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x44c;
+        break;
+      case 0x52:
+        uVar5 = CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x450;
+        break;
+      case 0x53:
+        uVar5 = CExpressionValueStack::Matrix4x4FromQuaternion(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x454;
+        break;
+      case 0x54:
+        uVar5 = CExpressionValueStack::Matrix4x4FromYawPitchRoll(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x458;
+        break;
+      case 0x55:
+        uVar5 = CExpressionValueStack::QuaternionFromAxisAngle(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x45c;
+        break;
+      case 0x56:
+        uVar5 = CExpressionValueStack::QuaternionFromLerp(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x460;
+        break;
+      case 0x57:
+        uVar5 = CExpressionValueStack::QuaternionFromRotationMatrix(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x464;
+        break;
+      case 0x58:
+        uVar5 = CExpressionValueStack::QuaternionFromYawPitchRoll(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x468;
+        break;
+      case 0x59:
+        uVar5 = CExpressionValueStack::TimeSpanFrom(param_1,1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x46c;
+        break;
+      case 0x5a:
+        uVar5 = CExpressionValueStack::TimeSpanFrom(param_1,1000);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x470;
+        break;
+      case 0x5b:
+        uVar5 = CExpressionValueStack::TimeSpanFrom(param_1,60000);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x474;
+        break;
+      case 0x5c:
+        uVar5 = CExpressionValueStack::Vector2Dot(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x478;
+        break;
+      case 0x5d:
+        uVar5 = CExpressionValueStack::Vector2Transform(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x47c;
+        break;
+      case 0x5e:
+        uVar5 = CExpressionValueStack::Vector2TransformNormal(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x480;
+        break;
+      case 0x5f:
+        uVar5 = CExpressionValueStack::Vector3Cross(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x484;
+        break;
+      case 0x60:
+        uVar5 = CExpressionValueStack::Vector3Dot(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x488;
+        break;
+      case 0x61:
+        uVar5 = CExpressionValueStack::Vector3Transform(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x48c;
+        break;
+      case 0x62:
+        uVar5 = CExpressionValueStack::Vector3TransformNormal(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x490;
+        break;
+      case 99:
+        uVar5 = CExpressionValueStack::Vector4Dot(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x494;
+        break;
+      case 100:
+        uVar5 = CExpressionValueStack::Vector4Transform(param_1);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x498;
+        break;
+      case 0x65:
+        iVar20 = 0x10;
+        if (uVar16 < 0x10) {
+          uVar16 = 0x49e;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::Swizzle(param_1,pEVar15);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x4a2;
+        break;
+      case 0x66:
+        iVar20 = 0x18;
+        if (uVar16 < 0x18) {
+          uVar16 = 0x4a9;
+          goto LAB_2;
+        }
+        uVar5 = CExpressionValueStack::Swizzle(param_1,pEVar15);
+        uVar10 = (ulong)pDVar11;
+        if (-1 < (int)uVar5) goto LAB_3;
+        p_Var18 = (_GUID *)(ulonglong)uVar5;
+        uVar16 = 0x4ad;
+      }
 LAB_4:
-                        *(uint *)(param_1 + 0x10) = *(int *)(param_1 + 0x10) + (1 - uVar17);
-                        break;
-                      }
-                    }
-                    else if (uVar17 == 2) {
-                      lVar4 = *(longlong *)(param_1 + 0x18);
-                      uVar8 = (ulonglong)(uVar11 - 2);
-                      if ((*(int *)(lVar4 + 0x48 + uVar8 * 0x50) == 0x12) &&
-                         (*(int *)(lVar4 + 0x48 + (ulonglong)(uVar11 - 1) * 0x50) == 0x12)) {
-                        uVar1 = *(undefined4 *)(lVar4 + uVar8 * 0x50);
-                        uVar2 = *(undefined4 *)(lVar4 + (ulonglong)(uVar11 - 1) * 0x50);
-                        *(undefined4 *)(lVar4 + 0x48 + uVar8 * 0x50) = 0x68;
-                        *(undefined8 *)(lVar4 + uVar8 * 0x50) = 0x3f800000;
-                        *(undefined4 *)(lVar4 + 8 + uVar8 * 0x50) = 0;
-                        *(undefined4 *)(lVar4 + 0xc + uVar8 * 0x50) = 0x3f800000;
-                        *(undefined4 *)(lVar4 + 0x10 + uVar8 * 0x50) = uVar1;
-                        *(undefined4 *)(lVar4 + 0x14 + uVar8 * 0x50) = uVar2;
-                        *(undefined1 *)(lVar4 + 0x4c + uVar8 * 0x50) = 1;
-                        goto LAB_4;
-                      }
-                    }
-                    uVar9 = (ulong)pCVar10;
-                    uVar17 = 0x1646;
-                  }
-                  MilInstrumentationCheckHR_MaybeFailFast
-                            (uVar9,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                             -0x7fffbffb,uVar17,(void *)0x0);
-                  uVar17 = 0x80004005;
-                  p_Var20 = (_GUID *)&DAT_3;
-                  uVar11 = 0x3ef;
-                  goto LAB_1;
-                case 0x4a:
-                  iVar22 = 8;
-                  if (uVar17 < 8) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x40a;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Matrix4x4FromScale(param_1,*(uint *)(pEVar16 + 4))
-                  ;
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x40d;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x4b:
-                  iVar22 = 8;
-                  if (uVar17 < 8) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x3f6;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::Matrix4x4FromTranslation
-                                    (param_1,*(uint *)(pEVar16 + 4));
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_18014742f();
-                    return lVar6;
-                  }
-                  break;
-                case 0x4c:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Matrix4x4FromAxisAngle(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x426;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x4d:
-                  iVar22 = 8;
-                  if (uVar17 < 8) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x42c;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Matrix4x4FromRotationX
-                                     (param_1,*(uint *)(pEVar16 + 4));
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x42f;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x4e:
-                  iVar22 = 8;
-                  if (uVar17 < 8) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x436;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Matrix4x4FromRotationY
-                                     (param_1,*(uint *)(pEVar16 + 4));
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x439;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x4f:
-                  iVar22 = 8;
-                  if (uVar17 < 8) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x440;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Matrix4x4FromRotationZ
-                                     (param_1,*(uint *)(pEVar16 + 4));
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x443;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x50:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Matrix4x4FromPerspective(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x448;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x51:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x44c;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x52:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x450;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x53:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Matrix4x4FromQuaternion(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x454;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x54:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Matrix4x4FromYawPitchRoll(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x458;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x55:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::QuaternionFromAxisAngle(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x45c;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x56:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::QuaternionFromLerp(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x460;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x57:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::QuaternionFromRotationMatrix(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x464;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x58:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::QuaternionFromYawPitchRoll(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x468;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x59:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::TimeSpanFrom(param_1,1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x46c;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x5a:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::TimeSpanFrom(param_1,1000);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x470;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x5b:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::TimeSpanFrom(param_1,60000);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x474;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x5c:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Vector2Dot(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x478;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x5d:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Vector2Transform(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x47c;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x5e:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Vector2TransformNormal(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x480;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x5f:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Vector3Cross(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x484;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x60:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Vector3Dot(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x488;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x61:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Vector3Transform(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x48c;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x62:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Vector3TransformNormal(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x490;
-                    goto LAB_1;
-                  }
-                  break;
-                case 99:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Vector4Dot(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x494;
-                    goto LAB_1;
-                  }
-                  break;
-                case 100:
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Vector4Transform(param_1);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x498;
-                    goto LAB_1;
-                  }
-                  break;
-                case 0x65:
-                  iVar22 = 0x10;
-                  if (uVar17 < 0x10) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x49e;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  lVar6 = CExpressionValueStack::Swizzle(param_1,pEVar16);
-                  if (lVar6 < 0) {
-                    lVar6 = FUN_180147539();
-                    return lVar6;
-                  }
-                  break;
-                case 0x66:
-                  iVar22 = 0x18;
-                  if (uVar17 < 0x18) {
-                    uVar17 = 0x80004005;
-                    uVar11 = 0x4a9;
-                    goto LAB_0;
-                  }
-                  pCVar10 = param_1;
-                  uVar17 = CExpressionValueStack::Swizzle(param_1,pEVar16);
-                  uVar9 = (ulong)pCVar10;
-                  if ((int)uVar17 < 0) {
-                    p_Var20 = (_GUID *)(ulonglong)uVar17;
-                    uVar11 = 0x4ad;
-                    goto LAB_1;
-                  }
-                }
-              }
-              uVar8 = (ulonglong)(uVar15 + iVar22);
-            } while (uVar15 + iVar22 < *(uint *)(this + 0x17c));
-          }
-          iVar22 = *(int *)(this + 0x198);
-          if (iVar22 == 0) {
-            return 0;
-          }
-          pCVar10 = (CExpressionValueStack *)(ulonglong)(iVar22 - 1U);
-          uVar15 = *(uint *)(*(longlong *)(this + 0x180) + (ulonglong)(iVar22 - 1) * 8);
-          uVar12 = (ulonglong)uVar15;
-          *(uint *)(this + 0x17c) = uVar15;
-          uVar8 = (ulonglong)*(uint *)(*(longlong *)(this + 0x180) + 4 + (longlong)pCVar10 * 8);
-          *(uint *)(this + 0x198) = iVar22 - 1U;
-        } while( true );
-      }
-      goto LAB_5;
+      p_Var17 = (_GUID *)0x2;
+      MilInstrumentationCheckHR_MaybeFailFast
+                (uVar10,(long *)&DAT_8,2,(long)p_Var18,uVar16,(void *)0x0);
+      pCVar8 = local_2e8;
+      goto LAB_9;
     }
   }
-  pCVar7 = (CExpressionValueStack *)0x0;
-LAB_5:
-  uVar17 = 0x8007000e;
-  uVar11 = 0x270;
-LAB_0:
-  p_Var20 = (_GUID *)(ulonglong)uVar17;
-LAB_1:
-  p_Var19 = (_GUID *)0x2;
+  uVar5 = 0x8007000e;
+  p_Var18 = (_GUID *)0x8007000e;
+  p_Var17 = (_GUID *)0x2;
   MilInstrumentationCheckHR_MaybeFailFast
-            (uVar9,(long *)&DAT_6,2,(long)p_Var20,uVar11,(void *)0x0);
+            ((ulong)pDVar11,(long *)&DAT_8,2,-0x7ff8fff2,0x270,(void *)0x0);
+LAB_9:
   if (((((*(uint *)(*(longlong *)(this + 0x148) + 4) & 0x40000000) != 0) &&
-       (uVar15 < *(uint *)(this + 0x158))) && (4 < DAT_7)) &&
-     (cVar5 = _tlgKeywordOn(&DAT_7,4), cVar5 != '\0')) {
-    auStack_a4[0] = *(undefined4 *)(pCVar7 + uVar15);
-    uStack_a8 = uVar17;
-    local_b0 = CBaseExpression::GetTracingCookie((CBaseExpression *)this);
+       (uVar6 < *(uint *)(this + 0x158))) && (4 < DAT_10)) &&
+     (cVar4 = _tlgKeywordOn(&DAT_10,4), cVar4 != '\0')) {
+    local_2d8 = *(undefined4 *)(pCVar8 + uVar6);
+    local_2e0 = uVar5;
+    uVar6 = CBaseExpression::GetTracingCookie((CBaseExpression *)this);
+    local_2e8 = (CExpressionValue *)CONCAT44(local_2e8._4_4_,uVar6);
     _tlgWriteTemplate<long___cdecl(_tlgProvider_t_const*___ptr64,void_const*___ptr64,_GUID_const*___ptr64,_GUID_const*___ptr64,unsigned_int,_EVENT_DATA_DESCRIPTOR*___ptr64),&long___cdecl__tlgWriteTransfer_EventWriteTransfer(struct__tlgProvider_t_const*___ptr64,void_const*___ptr64,struct__GUID_const*___ptr64,struct__GUID_const*___ptr64,unsigned_int,struct__EVENT_DATA_DESCRIPTOR*___ptr64),_GUID_const*___ptr64,_GUID_const*___ptr64>
     ::Write<_tlgWrapperByVal<4>,_tlgWrapperByVal<4>,_tlgWrapperByVal<4>_>
-              ((_tlgProvider_t *)&DAT_7,&DAT_1803774cc,p_Var19,p_Var20,
-               (_tlgWrapperByVal<4> *)&local_b0,(_tlgWrapperByVal<4> *)auStack_a4,
-               (_tlgWrapperByVal<4> *)&uStack_a8);
+              ((_tlgProvider_t *)&DAT_10,&DAT_18037c594,p_Var17,p_Var18,
+               (_tlgWrapperByVal<4> *)&local_2e8,(_tlgWrapperByVal<4> *)&local_2d8,
+               (_tlgWrapperByVal<4> *)&local_2e0);
   }
-  return uVar17;
+  return uVar5;
 }
 

```


## CExpressionValueStack::Matrix4x4FromRotationX

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.24|
|i_ratio|0.07|
|m_ratio|0.69|
|b_ratio|0.53|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix4x4FromRotationX|Matrix4x4FromRotationX|
|fullname|CExpressionValueStack::Matrix4x4FromRotationX|CExpressionValueStack::Matrix4x4FromRotationX|
|refcount|2|2|
|`length`|313|598|
|`called`|D2DMatrixRotationX<br>D2DMatrixRotationX<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrixRotationX<br>D2DMatrixRotationX<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|2|2|
|`address`|180256f4c|180259d74|
|sig|long __thiscall Matrix4x4FromRotationX(CExpressionValueStack * this, uint param_1)|long __thiscall Matrix4x4FromRotationX(CExpressionValueStack * this, uint param_1)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix4x4FromRotationX Called Diff


```diff
--- CExpressionValueStack::Matrix4x4FromRotationX called
+++ CExpressionValueStack::Matrix4x4FromRotationX called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -2,0 +6 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix4x4FromRotationX Calling Diff


```diff
--- CExpressionValueStack::Matrix4x4FromRotationX calling
+++ CExpressionValueStack::Matrix4x4FromRotationX calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Matrix4x4FromRotationX Diff


```diff
--- CExpressionValueStack::Matrix4x4FromRotationX
+++ CExpressionValueStack::Matrix4x4FromRotationX
@@ -1,62 +1,122 @@
 
 /* public: long __cdecl CExpressionValueStack::Matrix4x4FromRotationX(unsigned int) __ptr64 */
 
 long __thiscall
 CExpressionValueStack::Matrix4x4FromRotationX(CExpressionValueStack *this,uint param_1)
 
 {
-  undefined8 *puVar1;
-  float *pfVar2;
-  uint uVar3;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  uint uVar6;
+  undefined8 local_88;
+  undefined4 local_80;
+  undefined8 local_78;
+  undefined8 uStack_70;
+  undefined8 local_68;
+  undefined8 uStack_60;
   undefined8 local_58;
-  undefined4 local_50;
+  undefined8 uStack_50;
   undefined8 local_48;
   undefined8 uStack_40;
-  undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
   
-  uVar3 = *(uint *)(this + 0x10);
-  if (uVar3 < param_1) {
-    uVar3 = 0x18cd;
+  pCVar1 = this + 0x10;
+  pCVar3 = (CExpressionValue *)this;
+  if (*(uint *)pCVar1 < param_1) {
+    uVar6 = 0x18dd;
   }
   else {
     if (param_1 == 1) {
-      pfVar2 = (float *)((ulonglong)(uVar3 - 1) * 0x50 + *(longlong *)(this + 0x18));
-      if (pfVar2[0x12] == 2.52234e-44) {
-        D2DMatrixRotationX((D2DMatrix *)&local_48,*pfVar2);
+      bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar3 = (CExpressionValue *)
+                 CExpressionValue::CExpressionValue((CExpressionValue *)&local_78);
+        pCVar5 = &s_emptyValue;
+        CExpressionValue::operator=(&s_emptyValue,pCVar3);
+        pCVar3 = (CExpressionValue *)&local_78;
+        CExpressionValue::~CExpressionValue(pCVar3);
+      }
+      else {
+        pCVar3 = (CExpressionValue *)(this + 0x18);
+        pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar3,*(uint *)pCVar1 - 1);
+      }
+      if (*(float *)(pCVar5 + 0x48) == 2.52234e-44) {
+        D2DMatrixRotationX((D2DMatrix *)&local_78,*(float *)pCVar5);
+        *(undefined8 *)pCVar5 = local_78;
+        *(undefined8 *)(pCVar5 + 8) = uStack_70;
+        *(float *)(pCVar5 + 0x48) = 3.71344e-43;
+        *(undefined8 *)(pCVar5 + 0x10) = local_68;
+        *(undefined8 *)(pCVar5 + 0x18) = uStack_60;
+        pCVar5[0x4c] = (CExpressionValue)0x1;
+        *(undefined8 *)(pCVar5 + 0x20) = local_58;
+        *(undefined8 *)(pCVar5 + 0x28) = uStack_50;
+        *(undefined8 *)(pCVar5 + 0x30) = local_48;
+        *(undefined8 *)(pCVar5 + 0x38) = uStack_40;
 LAB_0:
-        *(undefined8 *)pfVar2 = local_48;
-        *(undefined8 *)(pfVar2 + 2) = uStack_40;
-        *(undefined8 *)(pfVar2 + 4) = local_38;
-        *(undefined8 *)(pfVar2 + 6) = uStack_30;
-        *(undefined8 *)(pfVar2 + 8) = local_28;
-        *(undefined8 *)(pfVar2 + 10) = uStack_20;
-        *(undefined1 *)(pfVar2 + 0x13) = 1;
-        *(undefined8 *)(pfVar2 + 0xc) = local_18;
-        *(undefined8 *)(pfVar2 + 0xe) = uStack_10;
-        pfVar2[0x12] = 3.71344e-43;
-        *(uint *)(this + 0x10) = *(int *)(this + 0x10) + (1 - param_1);
+        *(uint *)pCVar1 = *(uint *)pCVar1 + (1 - param_1);
         return 0;
       }
     }
     else if (param_1 == 2) {
-      pfVar2 = (float *)((ulonglong)(uVar3 - 2) * 0x50 + *(longlong *)(this + 0x18));
-      puVar1 = (undefined8 *)((ulonglong)(uVar3 - 1) * 0x50 + *(longlong *)(this + 0x18));
-      if ((pfVar2[0x12] == 2.52234e-44) && (*(int *)(puVar1 + 9) == 0x34)) {
-        local_58 = *puVar1;
-        local_50 = *(undefined4 *)(puVar1 + 1);
-        D2DMatrixRotationX(&local_48,*pfVar2,&local_58);
+      bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      pCVar3 = (CExpressionValue *)(this + 0x18);
+      pCVar5 = &s_emptyValue;
+      if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+        pCVar4 = (CExpressionValue *)
+                 CExpressionValue::CExpressionValue((CExpressionValue *)&local_78);
+        CExpressionValue::operator=(&s_emptyValue,pCVar4);
+        CExpressionValue::~CExpressionValue((CExpressionValue *)&local_78);
+        pCVar4 = &s_emptyValue;
+      }
+      else {
+        pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar3,*(uint *)pCVar1 - 2);
+      }
+      bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar3 = (CExpressionValue *)
+                 CExpressionValue::CExpressionValue((CExpressionValue *)&local_78);
+        CExpressionValue::operator=(&s_emptyValue,pCVar3);
+        pCVar3 = (CExpressionValue *)&local_78;
+        CExpressionValue::~CExpressionValue(pCVar3);
+      }
+      else {
+        pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)pCVar3,*(uint *)pCVar1 - 1);
+      }
+      if ((*(int *)(pCVar4 + 0x48) == 0x12) && (*(int *)(pCVar5 + 0x48) == 0x34)) {
+        local_88 = *(undefined8 *)pCVar5;
+        local_80 = *(undefined4 *)(pCVar5 + 8);
+        D2DMatrixRotationX(&local_78,*(undefined4 *)pCVar4,&local_88);
+        *(undefined4 *)(pCVar4 + 0x48) = 0x109;
+        *(undefined8 *)pCVar4 = local_78;
+        *(undefined8 *)(pCVar4 + 8) = uStack_70;
+        pCVar4[0x4c] = (CExpressionValue)0x1;
+        *(undefined8 *)(pCVar4 + 0x10) = local_68;
+        *(undefined8 *)(pCVar4 + 0x18) = uStack_60;
+        *(undefined8 *)(pCVar4 + 0x20) = local_58;
+        *(undefined8 *)(pCVar4 + 0x28) = uStack_50;
+        *(undefined8 *)(pCVar4 + 0x30) = local_48;
+        *(undefined8 *)(pCVar4 + 0x38) = uStack_40;
         goto LAB_0;
       }
     }
-    uVar3 = 0x18fb;
+    uVar6 = 0x190b;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar3,(void *)0x0);
+            ((ulong)pCVar3,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Matrix3x2

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.56|
|i_ratio|0.23|
|m_ratio|0.87|
|b_ratio|0.64|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix3x2|Matrix3x2|
|fullname|CExpressionValueStack::Matrix3x2|CExpressionValueStack::Matrix3x2|
|`refcount`|3|2|
|`length`|275|391|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>__security_check_cookie<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1800dc588|1800c2024|
|sig|long __thiscall Matrix3x2(CExpressionValueStack * this)|long __thiscall Matrix3x2(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix3x2 Called Diff


```diff
--- CExpressionValueStack::Matrix3x2 called
+++ CExpressionValueStack::Matrix3x2 called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix3x2 Diff


```diff
--- CExpressionValueStack::Matrix3x2
+++ CExpressionValueStack::Matrix3x2
@@ -1,67 +1,85 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* public: long __cdecl CExpressionValueStack::Matrix3x2(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Matrix3x2(CExpressionValueStack *this)
 
 {
   undefined4 uVar1;
   undefined4 uVar2;
   undefined4 uVar3;
   undefined4 uVar4;
   undefined4 uVar5;
-  longlong lVar6;
-  CExpressionValueStack *pCVar7;
-  int iVar8;
+  int iVar6;
+  bool bVar7;
+  CExpressionValue *pCVar8;
+  DynArray<CExpressionValue,1> *this_00;
   long lVar9;
-  undefined4 **ppuVar10;
-  undefined1 auStackY_78 [32];
-  uint uVar11;
+  int iVar10;
+  undefined4 **ppuVar11;
+  undefined1 auStackY_c8 [32];
+  uint uVar12;
+  CExpressionValue local_98 [80];
   undefined4 *local_48 [4];
   undefined4 *local_28;
   undefined4 *local_20;
   ulonglong local_18;
   
-  local_18 = __security_cookie ^ (ulonglong)auStackY_78;
-  uVar11 = *(uint *)(this + 0x10);
-  if (uVar11 < 6) {
-    uVar11 = 0x1589;
+  local_18 = __security_cookie ^ (ulonglong)auStackY_c8;
+  if (*(uint *)(this + 0x10) < 6) {
+    uVar12 = 0x1599;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
 LAB_0:
     lVar9 = -0x7fffbffb;
     MilInstrumentationCheckHR_MaybeFailFast
-              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar11,(void *)0x0);
+              ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar12,
+               (void *)0x0);
   }
   else {
-    lVar6 = *(longlong *)(this + 0x18);
-    ppuVar10 = local_48;
-    iVar8 = 0;
+    iVar10 = 0;
+    ppuVar11 = local_48;
     lVar9 = 0;
     do {
-      pCVar7 = (CExpressionValueStack *)((ulonglong)((uVar11 - 6) + iVar8) * 0x50 + lVar6);
-      *ppuVar10 = (undefined4 *)pCVar7;
-      if (*(int *)(pCVar7 + 0x48) != 0x12) {
-        uVar11 = 0x1597;
-        this = pCVar7;
+      bVar7 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      uVar12 = *(int *)(this + 0x10) + -6 + iVar10;
+      if ((bVar7) && (*(uint *)(this + 0x30) <= uVar12)) {
+        pCVar8 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_98);
+        CExpressionValue::operator=(&s_emptyValue,pCVar8);
+        this_00 = (DynArray<CExpressionValue,1> *)local_98;
+        CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+        pCVar8 = &s_emptyValue;
+      }
+      else {
+        this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+        pCVar8 = DynArray<CExpressionValue,1>::operator[](this_00,uVar12);
+      }
+      iVar6 = *(int *)(pCVar8 + 0x48);
+      *ppuVar11 = (undefined4 *)pCVar8;
+      if (iVar6 != 0x12) {
+        uVar12 = 0x15a7;
         goto LAB_0;
       }
-      iVar8 = iVar8 + 1;
-      ppuVar10 = ppuVar10 + 1;
-    } while (iVar8 < 6);
+      iVar10 = iVar10 + 1;
+      ppuVar11 = ppuVar11 + 1;
+    } while (iVar10 < 6);
     uVar1 = *local_48[1];
     uVar2 = *local_48[2];
     uVar3 = *local_48[3];
     uVar4 = *local_28;
     uVar5 = *local_20;
     local_48[0][0x12] = 0x68;
     *local_48[0] = *local_48[0];
     local_48[0][1] = uVar1;
     local_48[0][2] = uVar2;
     local_48[0][3] = uVar3;
     local_48[0][4] = uVar4;
     local_48[0][5] = uVar5;
     *(undefined1 *)(local_48[0] + 0x13) = 1;
     *(int *)(this + 0x10) = *(int *)(this + 0x10) + -5;
   }
   return lVar9;
 }
 

```


## CExpressionValueStack::Modulus

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.3|
|i_ratio|0.14|
|m_ratio|0.71|
|b_ratio|0.64|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Modulus|Modulus|
|fullname|CExpressionValueStack::Modulus|CExpressionValueStack::Modulus|
|refcount|2|2|
|`length`|223|401|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>fmodf|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>fmodf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180257c20|18025b200|
|sig|long __thiscall Modulus(CExpressionValueStack * this)|long __thiscall Modulus(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Modulus Called Diff


```diff
--- CExpressionValueStack::Modulus called
+++ CExpressionValueStack::Modulus called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Modulus Calling Diff


```diff
--- CExpressionValueStack::Modulus calling
+++ CExpressionValueStack::Modulus calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Modulus Diff


```diff
--- CExpressionValueStack::Modulus
+++ CExpressionValueStack::Modulus
@@ -1,48 +1,76 @@
 
 /* public: long __cdecl CExpressionValueStack::Modulus(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Modulus(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  CExpressionValueStack *pCVar2;
-  float *pfVar3;
-  float fVar4;
-  uint uVar5;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar5;
+  float fVar6;
+  uint uVar7;
+  CExpressionValue local_68 [80];
   
-  uVar5 = *(uint *)(this + 0x10);
-  if (uVar5 < 2) {
-    uVar5 = 0x582;
-    pCVar2 = this;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 2) {
+    uVar7 = 0x592;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    pfVar3 = (float *)((ulonglong)(uVar5 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar1 = (float *)((ulonglong)(uVar5 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    fVar4 = pfVar3[0x12];
-    pCVar2 = (CExpressionValueStack *)(ulonglong)(uint)fVar4;
-    if (fVar4 == pfVar1[0x12]) {
-      if (fVar4 == 2.52234e-44) {
-        fVar4 = *pfVar1;
-        if (0.0 < fVar4) {
-          pfVar3[0x12] = 2.52234e-44;
-          fVar4 = fmodf(*pfVar3,fVar4);
-          *pfVar3 = fVar4;
-          *(undefined1 *)(pfVar3 + 0x13) = 1;
-          *(int *)(this + 0x10) = *(int *)(this + 0x10) + -1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar5 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if (*(float *)(pCVar3 + 0x48) == *(float *)(pCVar5 + 0x48)) {
+      if (*(float *)(pCVar3 + 0x48) == 2.52234e-44) {
+        fVar6 = *(float *)pCVar5;
+        if (0.0 < fVar6) {
+          *(float *)(pCVar3 + 0x48) = 2.52234e-44;
+          fVar6 = fmodf(*(float *)pCVar3,fVar6);
+          *(float *)pCVar3 = fVar6;
+          pCVar3[0x4c] = (CExpressionValue)0x1;
+          *(uint *)pCVar1 = *(uint *)pCVar1 - 1;
           return 0;
         }
-        uVar5 = 0x5a8;
+        uVar7 = 0x5b8;
       }
       else {
-        uVar5 = 0x5b8;
+        uVar7 = 0x5c8;
       }
     }
     else {
-      uVar5 = 0x599;
+      uVar7 = 0x5a9;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pCVar2,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Slerp

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.23|
|i_ratio|0.14|
|m_ratio|0.64|
|b_ratio|0.51|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Slerp|Slerp|
|fullname|CExpressionValueStack::Slerp|CExpressionValueStack::Slerp|
|refcount|2|2|
|`length`|228|477|
|`called`|D3DXQuaternionSlerp<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D3DXQuaternionSlerp<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180258bf4|18025c8e4|
|sig|long __thiscall Slerp(CExpressionValueStack * this)|long __thiscall Slerp(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Slerp Called Diff


```diff
--- CExpressionValueStack::Slerp called
+++ CExpressionValueStack::Slerp called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -1,0 +5 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Slerp Calling Diff


```diff
--- CExpressionValueStack::Slerp calling
+++ CExpressionValueStack::Slerp calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Slerp Diff


```diff
--- CExpressionValueStack::Slerp
+++ CExpressionValueStack::Slerp
@@ -1,42 +1,88 @@
 
 /* public: long __cdecl CExpressionValueStack::Slerp(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Slerp(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  D2DQuaternion *pDVar2;
-  D2DQuaternion *pDVar3;
-  uint uVar4;
-  undefined8 local_18;
-  undefined8 uStack_10;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar6;
+  uint uVar7;
+  undefined8 local_78;
+  undefined8 uStack_70;
+  CExpressionValue local_68 [80];
   
-  uVar4 = *(uint *)(this + 0x10);
-  if (uVar4 < 3) {
-    uVar4 = 0xf1d;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 3) {
+    uVar7 = 0xf2d;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    pDVar2 = (D2DQuaternion *)((ulonglong)(uVar4 - 3) * 0x50 + *(longlong *)(this + 0x18));
-    pDVar3 = (D2DQuaternion *)((ulonglong)(uVar4 - 2) * 0x50 + *(longlong *)(this + 0x18));
-    pfVar1 = (float *)((ulonglong)(uVar4 - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if ((pfVar1[0x12] == 2.52234e-44) && (*(int *)(pDVar2 + 0x48) == *(int *)(pDVar3 + 0x48))) {
-      if (*(int *)(pDVar2 + 0x48) == 0x47) {
-        D3DXQuaternionSlerp((D2DQuaternion *)&local_18,pDVar2,pDVar3,*pfVar1);
-        *(undefined4 *)(pDVar2 + 0x48) = 0x47;
-        pDVar2[0x4c] = (D2DQuaternion)0x1;
-        *(undefined8 *)pDVar2 = local_18;
-        *(undefined8 *)(pDVar2 + 8) = uStack_10;
-        *(int *)(this + 0x10) = *(int *)(this + 0x10) + -2;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar6 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 3);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_68);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      this_00 = (DynArray<CExpressionValue,1> *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar6 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if ((*(float *)(pCVar6 + 0x48) == 2.52234e-44) &&
+       (*(int *)(pCVar3 + 0x48) == *(int *)(pCVar4 + 0x48))) {
+      if (*(int *)(pCVar3 + 0x48) == 0x47) {
+        D3DXQuaternionSlerp((D2DQuaternion *)&local_78,(D2DQuaternion *)pCVar3,
+                            (D2DQuaternion *)pCVar4,*(float *)pCVar6);
+        *(undefined4 *)(pCVar3 + 0x48) = 0x47;
+        *(D2DQuaternion *)(pCVar3 + 0x4c) = (D2DQuaternion)0x1;
+        *(undefined8 *)pCVar3 = local_78;
+        *(undefined8 *)(pCVar3 + 8) = uStack_70;
+        *(uint *)pCVar1 = *(uint *)pCVar1 - 2;
         return 0;
       }
-      uVar4 = 0xf56;
+      uVar7 = 0xf66;
     }
     else {
-      uVar4 = 0xf36;
+      uVar7 = 0xf46;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar4,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Floor

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.35|
|i_ratio|0.37|
|m_ratio|0.78|
|b_ratio|0.71|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Floor|Floor|
|fullname|CExpressionValueStack::Floor|CExpressionValueStack::Floor|
|refcount|2|2|
|`length`|127|209|
|`called`|MilInstrumentationCheckHR_MaybeFailFast<br>floorf|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>floorf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180255754|180257b14|
|sig|long __thiscall Floor(CExpressionValueStack * this)|long __thiscall Floor(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Floor Called Diff


```diff
--- CExpressionValueStack::Floor called
+++ CExpressionValueStack::Floor called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -2,0 +7 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Floor Calling Diff


```diff
--- CExpressionValueStack::Floor calling
+++ CExpressionValueStack::Floor calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Floor Diff


```diff
--- CExpressionValueStack::Floor
+++ CExpressionValueStack::Floor
@@ -1,29 +1,49 @@
 
 /* public: long __cdecl CExpressionValueStack::Floor(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Floor(CExpressionValueStack *this)
 
 {
-  float *pfVar1;
-  float fVar2;
-  uint uVar3;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  float fVar5;
+  uint uVar6;
+  CExpressionValue local_58 [80];
   
   if (*(int *)(this + 0x10) == 0) {
-    uVar3 = 0x11ab;
+    uVar6 = 0x11bb;
   }
   else {
-    pfVar1 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar1[0x12] == 2.52234e-44) {
-      pfVar1[0x12] = 2.52234e-44;
-      fVar2 = floorf(*pfVar1);
-      *pfVar1 = fVar2;
-      *(undefined1 *)(pfVar1 + 0x13) = 1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_58);
+      pCVar4 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      this = (CExpressionValueStack *)local_58;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar4 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar4 + 0x48) == 2.52234e-44) {
+      *(float *)(pCVar4 + 0x48) = 2.52234e-44;
+      fVar5 = floorf(*(float *)pCVar4);
+      *(float *)pCVar4 = fVar5;
+      pCVar4[0x4c] = (CExpressionValue)0x1;
       return 0;
     }
-    uVar3 = 0x11c7;
+    uVar6 = 0x11d7;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar3,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar6,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CPropertySet::operator_new

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address|
|ratio|0.67|
|i_ratio|0.5|
|m_ratio|1.0|
|b_ratio|0.7|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|operator_new|operator_new|
|fullname|CPropertySet::operator_new|CPropertySet::operator_new|
|`refcount`|3|4|
|`length`|39|43|
|called|DefaultHeap::AllocClear<br>ModuleFailFastForHRESULT|DefaultHeap::AllocClear<br>ModuleFailFastForHRESULT|
|calling|CResourceFactory::Create|CResourceFactory::Create|
|paramcount|1|1|
|`address`|18010db60|1800390ac|
|sig|void * __cdecl operator_new(__uint64 param_1)|void * __cdecl operator_new(__uint64 param_1)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|IMPORTED|
|external|False|False|

### CPropertySet::operator_new Diff


```diff
--- CPropertySet::operator_new
+++ CPropertySet::operator_new
@@ -1,17 +1,17 @@
 
 /* public: static void * __ptr64 __cdecl CPropertySet::operator new(unsigned __int64) */
 
 void * __cdecl CPropertySet::operator_new(__uint64 param_1)
 
 {
   void *pvVar1;
   undefined8 unaff_retaddr;
   
   pvVar1 = DefaultHeap::AllocClear(0xa0);
-  if (pvVar1 == (void *)0x0) {
+  if (pvVar1 != (void *)0x0) {
+    return pvVar1;
+  }
                     /* WARNING: Subroutine does not return */
-    ModuleFailFastForHRESULT(0x8007000e,unaff_retaddr);
-  }
-  return pvVar1;
+  ModuleFailFastForHRESULT(0x8007000e,unaff_retaddr);
 }
 

```


## CExpressionValueStack::ColorRgb

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,refcount,length,address,called|
|ratio|0.2|
|i_ratio|0.09|
|m_ratio|0.6|
|b_ratio|0.41|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|ColorRgb|ColorRgb|
|fullname|CExpressionValueStack::ColorRgb|CExpressionValueStack::ColorRgb|
|`refcount`|3|2|
|`length`|321|625|
|`called`|MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|calling|CExpression::CalculateValueWorker|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|1800eff78|1800f32a4|
|sig|long __thiscall ColorRgb(CExpressionValueStack * this)|long __thiscall ColorRgb(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CExpressionValueStack::ColorRgb Called Diff


```diff
--- CExpressionValueStack::ColorRgb called
+++ CExpressionValueStack::ColorRgb called
@@ -0,0 +1,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -1,0 +6 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::ColorRgb Diff


```diff
--- CExpressionValueStack::ColorRgb
+++ CExpressionValueStack::ColorRgb
@@ -1,69 +1,129 @@
 
 /* public: long __cdecl CExpressionValueStack::ColorRgb(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::ColorRgb(CExpressionValueStack *this)
 
 {
-  longlong lVar1;
-  ulonglong uVar2;
-  float fVar3;
-  float fVar4;
-  float fVar5;
-  float fVar6;
-  uint uVar7;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  CExpressionValue *pCVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
+  DynArray<CExpressionValue,1> *this_00;
+  CExpressionValue *pCVar7;
+  float fVar8;
+  float fVar9;
+  float fVar10;
+  float fVar11;
+  uint uVar12;
+  CExpressionValue local_78 [80];
   
-  uVar7 = *(uint *)(this + 0x10);
-  if (uVar7 < 4) {
-    uVar7 = 0x14a8;
+  pCVar1 = this + 0x10;
+  if (*(uint *)pCVar1 < 4) {
+    uVar12 = 0x14b8;
+    this_00 = (DynArray<CExpressionValue,1> *)this;
   }
   else {
-    lVar1 = *(longlong *)(this + 0x18);
-    uVar2 = (ulonglong)(uVar7 - 4);
-    if ((((*(int *)(lVar1 + 0x48 + uVar2 * 0x50) == 0x12) &&
-         (*(int *)(lVar1 + 0x48 + (ulonglong)(uVar7 - 3) * 0x50) == 0x12)) &&
-        (*(int *)(lVar1 + 0x48 + (ulonglong)(uVar7 - 2) * 0x50) == 0x12)) &&
-       (*(int *)(lVar1 + 0x48 + (ulonglong)(uVar7 - 1) * 0x50) == 0x12)) {
-      fVar6 = *(float *)(lVar1 + (ulonglong)(uVar7 - 3) * 0x50);
-      fVar5 = *(float *)(lVar1 + (ulonglong)(uVar7 - 2) * 0x50);
-      if (255.0 <= fVar6) {
-        fVar6 = 255.0;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    this_00 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+    pCVar7 = &s_emptyValue;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 4)) {
+      pCVar3 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar3);
+      CExpressionValue::~CExpressionValue(local_78);
+      pCVar3 = &s_emptyValue;
+    }
+    else {
+      pCVar3 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 4);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      CExpressionValue::~CExpressionValue(local_78);
+      pCVar4 = &s_emptyValue;
+    }
+    else {
+      pCVar4 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 3);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+      pCVar5 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar5);
+      CExpressionValue::~CExpressionValue(local_78);
+      pCVar5 = &s_emptyValue;
+    }
+    else {
+      pCVar5 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 2);
+    }
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+      pCVar6 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_78);
+      CExpressionValue::operator=(&s_emptyValue,pCVar6);
+      this_00 = (DynArray<CExpressionValue,1> *)local_78;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this_00);
+    }
+    else {
+      pCVar7 = DynArray<CExpressionValue,1>::operator[](this_00,*(uint *)pCVar1 - 1);
+    }
+    if ((((*(float *)(pCVar3 + 0x48) == 2.52234e-44) && (*(float *)(pCVar4 + 0x48) == 2.52234e-44))
+        && (*(float *)(pCVar5 + 0x48) == 2.52234e-44)) && (*(float *)(pCVar7 + 0x48) == 2.52234e-44)
+       ) {
+      fVar9 = *(float *)pCVar4;
+      fVar11 = *(float *)pCVar5;
+      if (255.0 <= fVar9) {
+        fVar9 = 255.0;
       }
-      fVar4 = *(float *)(lVar1 + (ulonglong)(uVar7 - 1) * 0x50);
-      if (255.0 <= fVar5) {
-        fVar5 = 255.0;
+      fVar10 = *(float *)pCVar7;
+      if (255.0 <= fVar11) {
+        fVar11 = 255.0;
       }
-      fVar3 = *(float *)(lVar1 + uVar2 * 0x50);
-      if (255.0 <= fVar4) {
-        fVar4 = 255.0;
+      fVar8 = *(float *)pCVar3;
+      if (255.0 <= fVar10) {
+        fVar10 = 255.0;
       }
-      *(undefined4 *)(lVar1 + 0x48 + uVar2 * 0x50) = 0x46;
-      if (255.0 <= fVar3) {
-        fVar3 = 255.0;
+      *(float *)(pCVar3 + 0x48) = 9.80909e-44;
+      if (255.0 <= fVar8) {
+        fVar8 = 255.0;
       }
-      if (fVar6 <= 0.0) {
-        fVar6 = 0.0;
+      if (fVar9 <= 0.0) {
+        fVar9 = 0.0;
       }
-      if (fVar5 <= 0.0) {
-        fVar5 = 0.0;
+      if (fVar11 <= 0.0) {
+        fVar11 = 0.0;
       }
-      if (fVar4 <= 0.0) {
-        fVar4 = 0.0;
+      if (fVar10 <= 0.0) {
+        fVar10 = 0.0;
       }
-      if (fVar3 <= 0.0) {
-        fVar3 = 0.0;
+      if (fVar8 <= 0.0) {
+        fVar8 = 0.0;
       }
-      *(float *)(lVar1 + uVar2 * 0x50) = fVar6 / 255.0;
-      *(float *)(lVar1 + 4 + uVar2 * 0x50) = fVar5 / 255.0;
-      *(float *)(lVar1 + 8 + uVar2 * 0x50) = fVar4 / 255.0;
-      *(float *)(lVar1 + 0xc + uVar2 * 0x50) = fVar3 / 255.0;
-      *(undefined1 *)(lVar1 + 0x4c + uVar2 * 0x50) = 1;
-      *(int *)(this + 0x10) = *(int *)(this + 0x10) + -3;
+      *(float *)pCVar3 = fVar9 / 255.0;
+      *(float *)(pCVar3 + 4) = fVar11 / 255.0;
+      *(float *)(pCVar3 + 8) = fVar10 / 255.0;
+      *(float *)(pCVar3 + 0xc) = fVar8 / 255.0;
+      pCVar3[0x4c] = (CExpressionValue)0x1;
+      *(uint *)pCVar1 = *(uint *)pCVar1 - 3;
       return 0;
     }
-    uVar7 = 0x14ba;
+    uVar12 = 0x14ca;
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
+            ((ulong)this_00,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar12,(void *)0x0)
+  ;
   return -0x7fffbffb;
 }
 

```


## CExpressionValueStack::Matrix4x4FromScale

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.06|
|i_ratio|0.01|
|m_ratio|0.71|
|b_ratio|0.03|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Matrix4x4FromScale|Matrix4x4FromScale|
|fullname|CExpressionValueStack::Matrix4x4FromScale|CExpressionValueStack::Matrix4x4FromScale|
|refcount|2|2|
|`length`|1011|1610|
|`called`|D2DMatrixScaling<br>D2DMatrixScaling<br>D2DMatrixScaling<br>MilInstrumentationCheckHR_MaybeFailFast|CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>D2DMatrixScaling<br>D2DMatrixScaling<br>D2DMatrixScaling<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|2|2|
|`address`|18025730c|18025a494|
|sig|long __thiscall Matrix4x4FromScale(CExpressionValueStack * this, uint param_1)|long __thiscall Matrix4x4FromScale(CExpressionValueStack * this, uint param_1)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Matrix4x4FromScale Called Diff


```diff
--- CExpressionValueStack::Matrix4x4FromScale called
+++ CExpressionValueStack::Matrix4x4FromScale called
@@ -0,0 +1,3 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
@@ -3,0 +7 @@
+DynArray<CExpressionValue,1>::operator[]
@@ -4,0 +9 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Matrix4x4FromScale Calling Diff


```diff
--- CExpressionValueStack::Matrix4x4FromScale calling
+++ CExpressionValueStack::Matrix4x4FromScale calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Matrix4x4FromScale Diff


```diff
--- CExpressionValueStack::Matrix4x4FromScale
+++ CExpressionValueStack::Matrix4x4FromScale
@@ -1,179 +1,315 @@
 
 /* public: long __cdecl CExpressionValueStack::Matrix4x4FromScale(unsigned int) __ptr64 */
 
 long __thiscall CExpressionValueStack::Matrix4x4FromScale(CExpressionValueStack *this,uint param_1)
 
 {
-  undefined4 uVar1;
+  CExpressionValueStack *pCVar1;
   undefined4 uVar2;
-  longlong lVar3;
-  ulonglong uVar4;
-  undefined8 *puVar5;
-  CExpressionValueStack *pCVar6;
-  undefined8 *puVar7;
-  long lVar8;
-  int iVar9;
-  uint uVar10;
+  undefined4 uVar3;
+  bool bVar4;
+  CExpressionValue *pCVar5;
+  CExpressionValue *pCVar6;
+  DynArray<CExpressionValue,1> *pDVar7;
+  CExpressionValue *pCVar8;
+  long local_res8;
+  CExpressionValue *local_res18;
+  CExpressionValue *local_res20;
+  uint uVar9;
+  void *pvVar10;
+  undefined8 local_a8;
+  undefined4 local_a0;
+  undefined8 local_98;
+  undefined4 local_90;
+  undefined8 local_88;
+  undefined8 uStack_80;
+  undefined8 local_78;
+  undefined8 uStack_70;
   undefined8 local_68;
-  undefined4 local_60;
+  undefined8 uStack_60;
   undefined8 local_58;
-  undefined4 local_50;
-  undefined8 local_48;
-  undefined8 uStack_40;
-  undefined8 local_38;
-  undefined8 uStack_30;
-  undefined8 local_28;
-  undefined8 uStack_20;
-  undefined8 local_18;
-  undefined8 uStack_10;
+  undefined8 uStack_50;
   
-  uVar10 = *(uint *)(this + 0x10);
-  lVar8 = 0;
-  pCVar6 = this;
-  if (uVar10 < param_1) {
-    uVar10 = 0x182c;
+  pvVar10 = (void *)0x0;
+  pCVar1 = this + 0x10;
+  local_res8 = 0;
+  if (*(uint *)pCVar1 < param_1) {
+    pvVar10 = (void *)0x0;
+    uVar9 = 0x183c;
+LAB_0:
+    local_res8 = -0x7fffbffb;
+    MilInstrumentationCheckHR_MaybeFailFast
+              ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar9,pvVar10);
   }
   else {
-    iVar9 = 1;
     if (param_1 == 1) {
-      pCVar6 = *(CExpressionValueStack **)(this + 0x18);
-      uVar4 = (ulonglong)(uVar10 - 1);
-      if (*(int *)(pCVar6 + uVar4 * 0x50 + 0x48) == 0x12) {
-        uVar1 = *(undefined4 *)(pCVar6 + uVar4 * 0x50);
-        *(undefined4 *)(pCVar6 + uVar4 * 0x50 + 0x48) = 0x109;
-        *(undefined4 *)(pCVar6 + uVar4 * 0x50) = uVar1;
-        *(undefined8 *)(pCVar6 + uVar4 * 0x50 + 4) = 0;
-        *(undefined8 *)(pCVar6 + uVar4 * 0x50 + 0xc) = 0;
-        *(undefined4 *)(pCVar6 + uVar4 * 0x50 + 0x14) = uVar1;
-        *(undefined8 *)(pCVar6 + uVar4 * 0x50 + 0x18) = 0;
-        *(undefined8 *)(pCVar6 + uVar4 * 0x50 + 0x20) = 0;
-        *(undefined4 *)(pCVar6 + uVar4 * 0x50 + 0x28) = uVar1;
-        *(undefined8 *)(pCVar6 + uVar4 * 0x50 + 0x2c) = 0;
-        *(undefined8 *)(pCVar6 + uVar4 * 0x50 + 0x34) = 0;
-        *(undefined4 *)(pCVar6 + uVar4 * 0x50 + 0x3c) = 0x3f800000;
-        pCVar6[uVar4 * 0x50 + 0x4c] = (CExpressionValueStack)0x1;
-        iVar9 = 1;
-        lVar8 = 0;
-LAB_0:
-        *(uint *)(this + 0x10) = *(int *)(this + 0x10) + (iVar9 - param_1);
-        return lVar8;
-      }
-      if (*(int *)(pCVar6 + uVar4 * 0x50 + 0x48) == 0x34) {
-        uVar1 = *(undefined4 *)(pCVar6 + uVar4 * 0x50 + 8);
-        local_68._0_4_ = (undefined4)*(undefined8 *)(pCVar6 + uVar4 * 0x50);
-        local_68._4_4_ = (undefined4)((ulonglong)*(undefined8 *)(pCVar6 + uVar4 * 0x50) >> 0x20);
-        *(undefined4 *)(pCVar6 + uVar4 * 0x50 + 0x48) = 0x109;
-        *(undefined4 *)(pCVar6 + uVar4 * 0x50) = (undefined4)local_68;
-        *(undefined8 *)(pCVar6 + uVar4 * 0x50 + 4) = 0;
-        *(undefined8 *)(pCVar6 + uVar4 * 0x50 + 0xc) = 0;
-        *(undefined4 *)(pCVar6 + uVar4 * 0x50 + 0x14) = local_68._4_4_;
-        *(undefined8 *)(pCVar6 + uVar4 * 0x50 + 0x18) = 0;
-        *(undefined8 *)(pCVar6 + uVar4 * 0x50 + 0x20) = 0;
-        *(undefined4 *)(pCVar6 + uVar4 * 0x50 + 0x28) = uVar1;
-        *(undefined8 *)(pCVar6 + uVar4 * 0x50 + 0x2c) = 0;
-        *(undefined8 *)(pCVar6 + uVar4 * 0x50 + 0x34) = 0;
-        *(undefined4 *)(pCVar6 + uVar4 * 0x50 + 0x3c) = 0x3f800000;
-        pCVar6[uVar4 * 0x50 + 0x4c] = (CExpressionValueStack)0x1;
+      bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      pvVar10 = (void *)0x0;
+      if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar5 = (CExpressionValue *)
+                 CExpressionValue::CExpressionValue((CExpressionValue *)&local_88);
+        pCVar8 = &s_emptyValue;
+        CExpressionValue::operator=(&s_emptyValue,pCVar5);
+        this = (CExpressionValueStack *)&local_88;
+        CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+        pvVar10 = (void *)0x0;
+      }
+      else {
+        this = this + 0x18;
+        pCVar8 = DynArray<CExpressionValue,1>::operator[]
+                           ((DynArray<CExpressionValue,1> *)this,*(uint *)pCVar1 - 1);
+      }
+      if (*(int *)(pCVar8 + 0x48) == 0x12) {
+        uVar2 = *(undefined4 *)pCVar8;
+        *(undefined4 *)pCVar8 = uVar2;
+        *(undefined4 *)(pCVar8 + 0x48) = 0x109;
+        *(undefined8 *)(pCVar8 + 4) = 0;
+        *(undefined8 *)(pCVar8 + 0xc) = 0;
+        *(undefined4 *)(pCVar8 + 0x14) = uVar2;
+        *(undefined8 *)(pCVar8 + 0x18) = 0;
+        *(undefined8 *)(pCVar8 + 0x20) = 0;
+        *(undefined4 *)(pCVar8 + 0x28) = uVar2;
+      }
+      else {
+        if (*(int *)(pCVar8 + 0x48) != 0x34) goto LAB_1;
+        local_a8._0_4_ = (undefined4)*(undefined8 *)pCVar8;
+        local_a8._4_4_ = (undefined4)((ulonglong)*(undefined8 *)pCVar8 >> 0x20);
+        *(undefined4 *)(pCVar8 + 0x48) = 0x109;
+        *(undefined4 *)pCVar8 = (undefined4)local_a8;
+        *(undefined8 *)(pCVar8 + 4) = 0;
+        *(undefined8 *)(pCVar8 + 0xc) = 0;
+        *(undefined4 *)(pCVar8 + 0x14) = local_a8._4_4_;
+        *(undefined8 *)(pCVar8 + 0x18) = 0;
+        *(undefined8 *)(pCVar8 + 0x20) = 0;
+        *(undefined4 *)(pCVar8 + 0x28) = *(undefined4 *)(pCVar8 + 8);
+      }
+      *(undefined8 *)(pCVar8 + 0x2c) = 0;
+      *(undefined8 *)(pCVar8 + 0x34) = 0;
+      *(undefined4 *)(pCVar8 + 0x3c) = 0x3f800000;
+      pCVar8[0x4c] = (CExpressionValue)0x1;
+    }
+    else {
+      if (param_1 != 2) {
+        if (param_1 == 3) {
+          bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          pDVar7 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+          pCVar8 = &s_emptyValue;
+          if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+            pCVar5 = (CExpressionValue *)
+                     CExpressionValue::CExpressionValue((CExpressionValue *)&local_88);
+            CExpressionValue::operator=(&s_emptyValue,pCVar5);
+            CExpressionValue::~CExpressionValue((CExpressionValue *)&local_88);
+            pCVar5 = &s_emptyValue;
+          }
+          else {
+            pCVar5 = DynArray<CExpressionValue,1>::operator[](pDVar7,*(uint *)pCVar1 - 3);
+          }
+          bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+            pCVar6 = (CExpressionValue *)
+                     CExpressionValue::CExpressionValue((CExpressionValue *)&local_88);
+            CExpressionValue::operator=(&s_emptyValue,pCVar6);
+            CExpressionValue::~CExpressionValue((CExpressionValue *)&local_88);
+            local_res20 = &s_emptyValue;
+          }
+          else {
+            local_res20 = DynArray<CExpressionValue,1>::operator[](pDVar7,*(uint *)pCVar1 - 2);
+          }
+          bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          pvVar10 = (void *)0x0;
+          if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+            pCVar6 = (CExpressionValue *)
+                     CExpressionValue::CExpressionValue((CExpressionValue *)&local_88);
+            CExpressionValue::operator=(&s_emptyValue,pCVar6);
+            this = (CExpressionValueStack *)&local_88;
+            CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+            pvVar10 = (void *)0x0;
+          }
+          else {
+            pCVar8 = DynArray<CExpressionValue,1>::operator[](pDVar7,*(uint *)pCVar1 - 1);
+            this = (CExpressionValueStack *)pDVar7;
+          }
+          if (((*(int *)(pCVar5 + 0x48) == 0x12) && (*(int *)(local_res20 + 0x48) == 0x12)) &&
+             (*(int *)(pCVar8 + 0x48) == 0x12)) {
+            uVar2 = *(undefined4 *)local_res20;
+            uVar3 = *(undefined4 *)pCVar8;
+            *(undefined4 *)(pCVar5 + 0x48) = 0x109;
+            *(undefined4 *)pCVar5 = *(undefined4 *)pCVar5;
+            *(undefined8 *)(pCVar5 + 4) = 0;
+            *(undefined8 *)(pCVar5 + 0xc) = 0;
+            *(undefined4 *)(pCVar5 + 0x14) = uVar2;
+            *(undefined8 *)(pCVar5 + 0x18) = 0;
+            *(undefined8 *)(pCVar5 + 0x20) = 0;
+            *(undefined4 *)(pCVar5 + 0x28) = uVar3;
+            *(undefined8 *)(pCVar5 + 0x2c) = 0;
+            *(undefined8 *)(pCVar5 + 0x34) = 0;
+            *(undefined4 *)(pCVar5 + 0x3c) = 0x3f800000;
+            goto LAB_2;
+          }
+        }
+        else if (param_1 == 4) {
+          bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          pDVar7 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+          pCVar8 = &s_emptyValue;
+          if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 4)) {
+            pCVar5 = (CExpressionValue *)
+                     CExpressionValue::CExpressionValue((CExpressionValue *)&local_88);
+            CExpressionValue::operator=(&s_emptyValue,pCVar5);
+            CExpressionValue::~CExpressionValue((CExpressionValue *)&local_88);
+            local_res18 = &s_emptyValue;
+          }
+          else {
+            local_res18 = DynArray<CExpressionValue,1>::operator[](pDVar7,*(uint *)pCVar1 - 4);
+          }
+          bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 3)) {
+            pCVar5 = (CExpressionValue *)
+                     CExpressionValue::CExpressionValue((CExpressionValue *)&local_88);
+            CExpressionValue::operator=(&s_emptyValue,pCVar5);
+            CExpressionValue::~CExpressionValue((CExpressionValue *)&local_88);
+            local_res20 = &s_emptyValue;
+          }
+          else {
+            local_res20 = DynArray<CExpressionValue,1>::operator[](pDVar7,*(uint *)pCVar1 - 3);
+          }
+          bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+            pCVar5 = (CExpressionValue *)
+                     CExpressionValue::CExpressionValue((CExpressionValue *)&local_88);
+            CExpressionValue::operator=(&s_emptyValue,pCVar5);
+            CExpressionValue::~CExpressionValue((CExpressionValue *)&local_88);
+            local_a8 = &s_emptyValue;
+          }
+          else {
+            local_a8 = DynArray<CExpressionValue,1>::operator[](pDVar7,*(uint *)pCVar1 - 2);
+          }
+          bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::
+                  __private_IsEnabled((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                                      &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                                       ::__l2::impl);
+          pvVar10 = (void *)0x0;
+          if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+            pCVar5 = (CExpressionValue *)
+                     CExpressionValue::CExpressionValue((CExpressionValue *)&local_88);
+            CExpressionValue::operator=(&s_emptyValue,pCVar5);
+            this = (CExpressionValueStack *)&local_88;
+            CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+            pvVar10 = (void *)0x0;
+          }
+          else {
+            pCVar8 = DynArray<CExpressionValue,1>::operator[](pDVar7,*(uint *)pCVar1 - 1);
+            this = (CExpressionValueStack *)pDVar7;
+          }
+          if (*(int *)(local_res18 + 0x48) == 0x12) {
+            if (((*(int *)(local_res20 + 0x48) == 0x12) &&
+                (this = (CExpressionValueStack *)local_a8, *(int *)(local_a8 + 0x48) == 0x12)) &&
+               (*(int *)(pCVar8 + 0x48) == 0x34)) {
+              local_90 = *(undefined4 *)(pCVar8 + 8);
+              local_98 = *(undefined8 *)pCVar8;
+              D2DMatrixScaling(&local_88,*(undefined4 *)local_res18,*(undefined4 *)local_res20,
+                               *(undefined4 *)local_a8,&local_98);
+              *(undefined4 *)(local_res18 + 0x48) = 0x109;
+              *(undefined8 *)local_res18 = local_88;
+              *(undefined8 *)(local_res18 + 8) = uStack_80;
+              local_res18[0x4c] = (CExpressionValue)0x1;
+              *(undefined8 *)(local_res18 + 0x10) = local_78;
+              *(undefined8 *)(local_res18 + 0x18) = uStack_70;
+              *(undefined8 *)(local_res18 + 0x20) = local_68;
+              *(undefined8 *)(local_res18 + 0x28) = uStack_60;
+              *(undefined8 *)(local_res18 + 0x30) = local_58;
+              *(undefined8 *)(local_res18 + 0x38) = uStack_50;
+              goto LAB_3;
+            }
+            pvVar10 = (void *)0x0;
+          }
+        }
+LAB_1:
+        uVar9 = 0x18bb;
         goto LAB_0;
       }
+      bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      pDVar7 = (DynArray<CExpressionValue,1> *)(this + 0x18);
+      pCVar8 = &s_emptyValue;
+      if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 2)) {
+        pCVar5 = (CExpressionValue *)
+                 CExpressionValue::CExpressionValue((CExpressionValue *)&local_88);
+        CExpressionValue::operator=(&s_emptyValue,pCVar5);
+        CExpressionValue::~CExpressionValue((CExpressionValue *)&local_88);
+        pCVar5 = &s_emptyValue;
+      }
+      else {
+        pCVar5 = DynArray<CExpressionValue,1>::operator[](pDVar7,*(uint *)pCVar1 - 2);
+      }
+      bVar4 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                        ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                         &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                          ::__l2::impl);
+      pvVar10 = (void *)0x0;
+      if ((bVar4) && (*(uint *)(this + 0x30) <= *(uint *)pCVar1 - 1)) {
+        pCVar6 = (CExpressionValue *)
+                 CExpressionValue::CExpressionValue((CExpressionValue *)&local_88);
+        CExpressionValue::operator=(&s_emptyValue,pCVar6);
+        this = (CExpressionValueStack *)&local_88;
+        CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+        pvVar10 = (void *)0x0;
+      }
+      else {
+        pCVar8 = DynArray<CExpressionValue,1>::operator[](pDVar7,*(uint *)pCVar1 - 1);
+        this = (CExpressionValueStack *)pDVar7;
+      }
+      if ((*(int *)(pCVar5 + 0x48) == 0x12) && (*(int *)(pCVar8 + 0x48) == 0x34)) {
+        local_a8 = *(CExpressionValue **)pCVar8;
+        local_a0 = *(undefined4 *)(pCVar8 + 8);
+        D2DMatrixScaling(&local_88,*(undefined4 *)pCVar5,&local_a8);
+      }
+      else {
+        if ((*(int *)(pCVar5 + 0x48) != 0x34) || (*(int *)(pCVar8 + 0x48) != 0x34))
+        goto LAB_1;
+        local_a8 = *(CExpressionValue **)pCVar8;
+        local_a0 = *(undefined4 *)(pCVar8 + 8);
+        local_98 = *(undefined8 *)pCVar5;
+        local_90 = *(undefined4 *)(pCVar5 + 8);
+        D2DMatrixScaling(&local_88,&local_98,&local_a8);
+      }
+      *(undefined4 *)(pCVar5 + 0x48) = 0x109;
+      *(undefined8 *)pCVar5 = local_88;
+      *(undefined8 *)(pCVar5 + 8) = uStack_80;
+      *(undefined8 *)(pCVar5 + 0x10) = local_78;
+      *(undefined8 *)(pCVar5 + 0x18) = uStack_70;
+      *(undefined8 *)(pCVar5 + 0x20) = local_68;
+      *(undefined8 *)(pCVar5 + 0x28) = uStack_60;
+      *(undefined8 *)(pCVar5 + 0x30) = local_58;
+      *(undefined8 *)(pCVar5 + 0x38) = uStack_50;
+LAB_2:
+      pCVar5[0x4c] = (CExpressionValue)0x1;
     }
-    else if (param_1 == 2) {
-      puVar7 = (undefined8 *)((ulonglong)(uVar10 - 2) * 0x50 + *(longlong *)(this + 0x18));
-      puVar5 = (undefined8 *)((ulonglong)(uVar10 - 1) * 0x50 + *(longlong *)(this + 0x18));
-      if (*(int *)(puVar7 + 9) == 0x12) {
-        if (*(int *)(puVar5 + 9) == 0x34) {
-          local_68 = *puVar5;
-          local_60 = *(undefined4 *)(puVar5 + 1);
-          iVar9 = 1;
-          D2DMatrixScaling(&local_48,*(undefined4 *)puVar7,&local_68);
-          *puVar7 = local_48;
-          puVar7[1] = uStack_40;
-          *(undefined4 *)(puVar7 + 9) = 0x109;
-          puVar7[2] = local_38;
-          puVar7[3] = uStack_30;
-          *(char *)((longlong)puVar7 + 0x4c) = (char)iVar9;
-          puVar7[4] = local_28;
-          puVar7[5] = uStack_20;
-          puVar7[6] = local_18;
-          puVar7[7] = uStack_10;
-          goto LAB_0;
-        }
-      }
-      else if ((*(int *)(puVar7 + 9) == 0x34) && (*(int *)(puVar5 + 9) == 0x34)) {
-        local_68 = *puVar5;
-        local_60 = *(undefined4 *)(puVar5 + 1);
-        local_58 = *puVar7;
-        local_50 = *(undefined4 *)(puVar7 + 1);
-        iVar9 = 1;
-        lVar8 = 0;
-        D2DMatrixScaling(&local_48,&local_58,&local_68);
-        *puVar7 = local_48;
-        puVar7[1] = uStack_40;
-        *(undefined4 *)(puVar7 + 9) = 0x109;
-        puVar7[2] = local_38;
-        puVar7[3] = uStack_30;
-        *(char *)((longlong)puVar7 + 0x4c) = (char)iVar9;
-        puVar7[4] = local_28;
-        puVar7[5] = uStack_20;
-        puVar7[6] = local_18;
-        puVar7[7] = uStack_10;
-        goto LAB_0;
-      }
-    }
-    else if (param_1 == 3) {
-      lVar3 = *(longlong *)(this + 0x18);
-      uVar4 = (ulonglong)(uVar10 - 3);
-      if (((*(int *)(lVar3 + 0x48 + uVar4 * 0x50) == 0x12) &&
-          (*(int *)(lVar3 + 0x48 + (ulonglong)(uVar10 - 2) * 0x50) == 0x12)) &&
-         (*(int *)(lVar3 + 0x48 + (ulonglong)(uVar10 - 1) * 0x50) == 0x12)) {
-        uVar1 = *(undefined4 *)(lVar3 + (ulonglong)(uVar10 - 2) * 0x50);
-        uVar2 = *(undefined4 *)(lVar3 + (ulonglong)(uVar10 - 1) * 0x50);
-        *(undefined4 *)(lVar3 + 0x48 + uVar4 * 0x50) = 0x109;
-        *(undefined4 *)(lVar3 + uVar4 * 0x50) = *(undefined4 *)(lVar3 + uVar4 * 0x50);
-        *(undefined8 *)(lVar3 + 4 + uVar4 * 0x50) = 0;
-        *(undefined8 *)(lVar3 + 0xc + uVar4 * 0x50) = 0;
-        *(undefined4 *)(lVar3 + 0x14 + uVar4 * 0x50) = uVar1;
-        *(undefined8 *)(lVar3 + 0x18 + uVar4 * 0x50) = 0;
-        *(undefined8 *)(lVar3 + 0x20 + uVar4 * 0x50) = 0;
-        *(undefined4 *)(lVar3 + 0x28 + uVar4 * 0x50) = uVar2;
-        *(undefined8 *)(lVar3 + 0x2c + uVar4 * 0x50) = 0;
-        *(undefined8 *)(lVar3 + 0x34 + uVar4 * 0x50) = 0;
-        *(undefined4 *)(lVar3 + 0x3c + uVar4 * 0x50) = 0x3f800000;
-        *(undefined1 *)(lVar3 + 0x4c + uVar4 * 0x50) = 1;
-        goto LAB_0;
-      }
-    }
-    else if (param_1 == 4) {
-      lVar3 = *(longlong *)(this + 0x18);
-      puVar5 = (undefined8 *)((ulonglong)(uVar10 - 4) * 0x50 + lVar3);
-      uVar4 = (ulonglong)(uVar10 - 1);
-      if ((((*(int *)(puVar5 + 9) == 0x12) &&
-           (*(int *)(lVar3 + 0x48 + (ulonglong)(uVar10 - 3) * 0x50) == 0x12)) &&
-          (*(int *)(lVar3 + 0x48 + (ulonglong)(uVar10 - 2) * 0x50) == 0x12)) &&
-         (*(int *)(lVar3 + 0x48 + uVar4 * 0x50) == 0x34)) {
-        local_58 = *(undefined8 *)(lVar3 + uVar4 * 0x50);
-        local_50 = *(undefined4 *)(lVar3 + 8 + uVar4 * 0x50);
-        iVar9 = 1;
-        D2DMatrixScaling(&local_48,*(undefined4 *)puVar5,
-                         *(undefined4 *)(lVar3 + (ulonglong)(uVar10 - 3) * 0x50),
-                         *(undefined4 *)(lVar3 + (ulonglong)(uVar10 - 2) * 0x50),&local_58);
-        *puVar5 = local_48;
-        puVar5[1] = uStack_40;
-        *(undefined4 *)(puVar5 + 9) = 0x109;
-        puVar5[2] = local_38;
-        puVar5[3] = uStack_30;
-        *(char *)((longlong)puVar5 + 0x4c) = (char)iVar9;
-        puVar5[4] = local_28;
-        puVar5[5] = uStack_20;
-        puVar5[6] = local_18;
-        puVar5[7] = uStack_10;
-        goto LAB_0;
-      }
-    }
-    uVar10 = 0x18ab;
+LAB_3:
+    *(uint *)pCVar1 = *(uint *)pCVar1 + (1 - param_1);
   }
-  MilInstrumentationCheckHR_MaybeFailFast
-            ((ulong)pCVar6,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar10,(void *)0x0);
-  return -0x7fffbffb;
+  return local_res8;
 }
 

```


## CExpressionValueStack::Tan

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,length,address,calling,called|
|ratio|0.36|
|i_ratio|0.36|
|m_ratio|0.82|
|b_ratio|0.77|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Tan|Tan|
|fullname|CExpressionValueStack::Tan|CExpressionValueStack::Tan|
|refcount|2|2|
|`length`|179|260|
|`called`|API-MS-WIN-CRT-MATH-L1-1-0.DLL::_isnan<br>MilInstrumentationCheckHR_MaybeFailFast<br>tanf|API-MS-WIN-CRT-MATH-L1-1-0.DLL::_isnan<br>CExpressionValue::CExpressionValue<br>CExpressionValue::operator=<br>CExpressionValue::~CExpressionValue<br>DynArray<CExpressionValue,1>::operator[]<br>MilInstrumentationCheckHR_MaybeFailFast<br>tanf<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled|
|`calling`|switchD_180071930::caseD_0|CExpression::CalculateValueWorker|
|paramcount|1|1|
|`address`|180258d80|18025cbb8|
|sig|long __thiscall Tan(CExpressionValueStack * this)|long __thiscall Tan(CExpressionValueStack * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### CExpressionValueStack::Tan Called Diff


```diff
--- CExpressionValueStack::Tan called
+++ CExpressionValueStack::Tan called
@@ -1,0 +2,4 @@
+CExpressionValue::CExpressionValue
+CExpressionValue::operator=
+CExpressionValue::~CExpressionValue
+DynArray<CExpressionValue,1>::operator[]
@@ -3,0 +8 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
```


### CExpressionValueStack::Tan Calling Diff


```diff
--- CExpressionValueStack::Tan calling
+++ CExpressionValueStack::Tan calling
@@ -1 +1 @@
-switchD_180071930::caseD_0
+CExpression::CalculateValueWorker
```


### CExpressionValueStack::Tan Diff


```diff
--- CExpressionValueStack::Tan
+++ CExpressionValueStack::Tan
@@ -1,38 +1,56 @@
 
 /* public: long __cdecl CExpressionValueStack::Tan(void) __ptr64 */
 
 long __thiscall CExpressionValueStack::Tan(CExpressionValueStack *this)
 
 {
-  int iVar1;
-  ulong uVar2;
-  float *pfVar3;
-  float fVar4;
-  uint uVar5;
+  CExpressionValueStack *pCVar1;
+  bool bVar2;
+  int iVar3;
+  CExpressionValue *pCVar4;
+  CExpressionValue *pCVar5;
+  float fVar6;
+  uint uVar7;
+  CExpressionValue local_68 [96];
   
-  uVar2 = (ulong)this;
   if (*(int *)(this + 0x10) == 0) {
-    uVar5 = 0x10e2;
+    uVar7 = 0x10f2;
   }
   else {
-    pfVar3 = (float *)((ulonglong)(*(int *)(this + 0x10) - 1) * 0x50 + *(longlong *)(this + 0x18));
-    if (pfVar3[0x12] == 2.52234e-44) {
-      fVar4 = tanf(*pfVar3);
-      iVar1 = _isnan((double)fVar4);
-      if (iVar1 == 0) {
-        *pfVar3 = fVar4;
-        pfVar3[0x12] = 2.52234e-44;
-        *(undefined1 *)(pfVar3 + 0x13) = 1;
+    bVar2 = wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::__private_IsEnabled
+                      ((FeatureImpl<__WilFeatureTraits_Feature_1849091389> *)
+                       &`private:_static_class_wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>&___ptr64___cdecl_wil::Feature<__WilFeatureTraits_Feature_1849091389>::GetImpl(void)'
+                        ::__l2::impl);
+    pCVar1 = this + 0x10;
+    if ((bVar2) && (*(uint *)(this + 0x30) <= *(int *)pCVar1 - 1U)) {
+      pCVar4 = (CExpressionValue *)CExpressionValue::CExpressionValue(local_68);
+      pCVar5 = &s_emptyValue;
+      CExpressionValue::operator=(&s_emptyValue,pCVar4);
+      this = (CExpressionValueStack *)local_68;
+      CExpressionValue::~CExpressionValue((CExpressionValue *)this);
+    }
+    else {
+      this = this + 0x18;
+      pCVar5 = DynArray<CExpressionValue,1>::operator[]
+                         ((DynArray<CExpressionValue,1> *)this,*(int *)pCVar1 - 1U);
+    }
+    if (*(float *)(pCVar5 + 0x48) == 2.52234e-44) {
+      fVar6 = tanf(*(float *)pCVar5);
+      iVar3 = _isnan((double)fVar6);
+      if (iVar3 == 0) {
+        *(float *)pCVar5 = fVar6;
+        *(float *)(pCVar5 + 0x48) = 2.52234e-44;
+        pCVar5[0x4c] = (CExpressionValue)0x1;
         return 0;
       }
-      uVar5 = 0x10fd;
+      uVar7 = 0x110d;
     }
     else {
-      uVar5 = 0x110c;
+      uVar7 = 0x111c;
     }
   }
   MilInstrumentationCheckHR_MaybeFailFast
-            (uVar2,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar5,(void *)0x0);
+            ((ulong)this,(long *)&MILINSTRUMENTATIONHRESULTLIST,1,-0x7fffbffb,uVar7,(void *)0x0);
   return -0x7fffbffb;
 }
 

```


## CProxyGeometry::operator_new

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,fullname,refcount,length,address,parent|
|ratio|0.67|
|i_ratio|0.5|
|m_ratio|1.0|
|b_ratio|0.7|
|match_types|StructuralGraphExactHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|operator_new|operator_new|
|`fullname`|CProxyGeometry::operator_new|CLineGeometry::operator_new|
|`refcount`|3|2|
|`length`|43|39|
|called|DefaultHeap::AllocClear<br>ModuleFailFastForHRESULT|DefaultHeap::AllocClear<br>ModuleFailFastForHRESULT|
|calling|CResourceFactory::Create|CResourceFactory::Create|
|paramcount|1|1|
|`address`|1800ffe54|1801bc52c|
|sig|void * __cdecl operator_new(__uint64 param_1)|void * __cdecl operator_new(__uint64 param_1)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|

### CProxyGeometry::operator_new Diff


```diff
--- CProxyGeometry::operator_new
+++ CLineGeometry::operator_new
@@ -1,17 +1,17 @@
 
-/* protected: static void * __ptr64 __cdecl CProxyGeometry::operator new(unsigned __int64) */
+/* public: static void * __ptr64 __cdecl CLineGeometry::operator new(unsigned __int64) */
 
-void * __cdecl CProxyGeometry::operator_new(__uint64 param_1)
+void * __cdecl CLineGeometry::operator_new(__uint64 param_1)
 
 {
   void *pvVar1;
   undefined8 unaff_retaddr;
   
   pvVar1 = DefaultHeap::AllocClear(0xa0);
-  if (pvVar1 != (void *)0x0) {
-    return pvVar1;
+  if (pvVar1 == (void *)0x0) {
+                    /* WARNING: Subroutine does not return */
+    ModuleFailFastForHRESULT(0x8007000e,unaff_retaddr);
   }
-                    /* WARNING: Subroutine does not return */
-  ModuleFailFastForHRESULT(0x8007000e,unaff_retaddr);
+  return pvVar1;
 }
 

```


## FUN_1801195c4

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,name,fullname,length,sig,address|
|ratio|0.97|
|i_ratio|0.6|
|m_ratio|0.91|
|b_ratio|0.91|
|match_types|BSIM|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|`name`|FUN_1801195c4|FUN_18012109a|
|`fullname`|FUN_1801195c4|FUN_18012109a|
|refcount|2|2|
|`length`|623|763|
|called|<details><summary>Expand for full list:<br>CExpressionManager::EnsureAutoCompleteOnOccludedAnimationRemoved<br>CKeyframeAnimation::OnAnimationEvent<br>CKeyframeAnimation::PrepareSequenceForIteration<br>CKeyframeAnimation::SetProgress<br>DynArray<CExpressionValue,1>::AddAndSet<br>KeyframeSequence::ConfigureTimer<br>KeyframeSequence::Play<br>KeyframeSequence::SortKeyFrames<br>Microsoft::WRL::ComPtr<CPathData>::InternalRelease<br>MilInstrumentationCheckHR_MaybeFailFast<br>ModuleFailFastForHRESULT</summary>memset</details>|<details><summary>Expand for full list:<br>CExpressionManager::EnsureAutoCompleteOnOccludedAnimationRemoved<br>CKeyframeAnimation::OnAnimationEvent<br>CKeyframeAnimation::PrepareSequenceForIteration<br>CKeyframeAnimation::SetProgress<br>DynArray<CExpressionValue,1>::AddAndSet<br>KeyframeSequence::ConfigureTimer<br>KeyframeSequence::Play<br>KeyframeSequence::SortKeyFrames<br>Microsoft::WRL::ComPtr<CPathData>::InternalRelease<br>MilInstrumentationCheckHR_MaybeFailFast<br>ModuleFailFastForHRESULT</summary>memset</details>|
|calling|CKeyframeAnimation::CalculateValueWorker|CKeyframeAnimation::CalculateValueWorker|
|paramcount|0|0|
|`address`|1801195c4|18012109a|
|`sig`|undefined FUN_1801195c4(void)|undefined FUN_18012109a(void)|
|sym_type|Function|Function|
|sym_source|DEFAULT|DEFAULT|
|external|False|False|

### FUN_1801195c4 Diff


```diff
--- FUN_1801195c4
+++ FUN_18012109a
@@ -1,550 +1,550 @@
 
 /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
 /* WARNING: Function: _guard_xfg_dispatch_icall_nop replaced with injection: guard_dispatch_icall */
-/* PDB: Separated code (from the compiler): 1801195c4 - 180119d2e for parent address: 18005b360 */
+/* PDB: Separated code (from the compiler): 18012109a - 180121804 for parent address: 180056670 */
 
-ulonglong FUN_1801195c4(void)
+ulonglong FUN_18012109a(void)
 
 {
   int *piVar1;
   undefined8 uVar2;
   ulong uVar3;
   undefined8 *puVar4;
   CPathData *pCVar5;
   KeyframeSequence *this;
   undefined8 uVar6;
   undefined8 uVar7;
   undefined8 uVar8;
   uint uVar9;
   long lVar10;
   longlong lVar11;
   int iVar12;
   ulong uVar13;
   CKeyframeAnimation *pCVar14;
   DynArray<CExpressionValue,1> *pDVar15;
   ComPtr<CPathData> *pCVar16;
   CKeyframeAnimation CVar17;
   undefined4 uVar18;
   int iVar19;
   CKeyframeAnimation *unaff_RBX;
   longlong unaff_RBP;
   longlong lVar20;
   ulonglong uVar21;
   CExpressionValueStack *unaff_RDI;
   undefined8 *puVar22;
   int iVar23;
   byte *unaff_R14;
   float fVar24;
   uint uVar25;
   
   if (((byte)unaff_RBX[0x245] & 0x10) == 0) goto LAB_0;
   if (-1 < *(int *)(unaff_RBX + 0x220)) {
     CKeyframeAnimation::SetProgress(unaff_RBX,1.0);
     unaff_RBX[0x244] = (CKeyframeAnimation)((byte)unaff_RBX[0x244] & 0xfd);
   }
   CExpressionManager::EnsureAutoCompleteOnOccludedAnimationRemoved
             (*(CExpressionManager **)(*(longlong *)(unaff_RBX + 0x10) + 0x1a8),
              (CBaseExpression *)unaff_RBX);
   pCVar14 = unaff_RBX;
   uVar9 = CKeyframeAnimation::ApplyPlaybackStateChanges(unaff_RBX,unaff_RDI);
   uVar13 = (ulong)pCVar14;
   uVar21 = (ulonglong)uVar9;
   if ((int)uVar9 < 0) {
     uVar25 = 0x5e9;
     goto LAB_1;
   }
   uVar3 = *(ulong *)(unaff_RDI + 0x10);
   lVar20 = *(longlong *)(*(longlong *)(unaff_RBX + 0x10) + 0x260) - *(longlong *)(unaff_RBX + 0x1f8)
   ;
   if (lVar20 < 0) goto LAB_2;
   if (((byte)unaff_RBX[0x245] & 1) != 0) {
     if ((*(int *)(unaff_RBX + 0x230) != 2) &&
        (lVar11 = (**(code **)(*(longlong *)unaff_RBX + 0xa0))(), lVar11 != 0)) {
       *(int *)(lVar11 + 0x28) = *(int *)(lVar11 + 0x28) + 1;
     }
     CVar17 = unaff_RBX[0x244];
     if ((((byte)CVar17 & 6) == 0) && (unaff_RBX[0x94] != (CKeyframeAnimation)0x0)) {
       if (*(int *)(unaff_RBX + 0x230) != 2) {
 LAB_3:
         if (lVar20 == 0x7fffffffffffffff) {
           iVar12 = 0x7fffffff;
         }
         else {
           lVar20 = lVar20 * 1000000;
           if (Time::s_luFreq == 10000000) {
             lVar20 = SUB168(SEXT816(-0x29406b2a1a85bd43) * SEXT816(lVar20),8) + lVar20;
             lVar20 = (lVar20 >> 0x17) - (lVar20 >> 0x3f);
           }
           else {
             lVar20 = lVar20 / (longlong)Time::s_luFreq;
           }
           lVar11 = 500;
           if (lVar20 < 0) {
             lVar11 = -500;
           }
           iVar12 = (int)((lVar11 + lVar20) / 1000);
         }
         uVar21 = *(ulonglong *)(unaff_RBX + 0x30);
         lVar20 = *(longlong *)(*(longlong *)(unaff_RBX + 0x10) + 0x1a8);
         if (uVar21 == 0) {
 LAB_4:
           fVar24 = 1.0;
         }
         else {
           uVar21 = *(ulonglong *)(lVar20 + 0x200) &
                    ((((((((uVar21 & 0xff ^ 0xcbf29ce484222325) * 0x100000001b3 ^ uVar21 >> 8 & 0xff)
                          * 0x100000001b3 ^ uVar21 >> 0x10 & 0xff) * 0x100000001b3 ^
                        uVar21 >> 0x18 & 0xff) * 0x100000001b3 ^ uVar21 >> 0x20 & 0xff) *
                       0x100000001b3 ^ uVar21 >> 0x28 & 0xff) * 0x100000001b3 ^ uVar21 >> 0x30 & 0xff
                     ) * 0x100000001b3 ^ uVar21 >> 0x38) * 0x100000001b3;
           lVar11 = *(longlong *)(*(longlong *)(lVar20 + 0x1e8) + 8 + uVar21 * 0x10);
           if (lVar11 == *(longlong *)(lVar20 + 0x1d8)) {
 LAB_5:
             lVar11 = 0;
           }
           else {
             for (; *(longlong *)(unaff_RBX + 0x30) != *(longlong *)(lVar11 + 0x10);
                 lVar11 = *(longlong *)(lVar11 + 8)) {
               if (lVar11 == *(longlong *)(*(longlong *)(lVar20 + 0x1e8) + uVar21 * 0x10))
               goto LAB_5;
             }
           }
           if ((lVar11 == 0) || (lVar11 == *(longlong *)(lVar20 + 0x1d8))) goto LAB_4;
           fVar24 = *(float *)(lVar11 + 0x18);
         }
         iVar12 = (int)((float)iVar12 * *(float *)(unaff_RBX + 0x210) * fVar24);
         if ((char)unaff_RBX[0x244] < '\0') {
           if (*(int *)(unaff_RBX + 0x23c) == 4) {
             lVar20 = *(longlong *)(unaff_RBX + 0x188);
             fVar24 = 0.0;
             if (0 < *(int *)(lVar20 + 0x70)) {
               fVar24 = (float)*(uint *)(*(longlong *)(lVar20 + 0x68) +
                                        (ulonglong)(*(int *)(lVar20 + 0x70) - 1) * 0x18) / 1000.0;
             }
             fVar24 = fVar24 * *(float *)(unaff_RBX + 0x22c) * 1000.0;
             if ((uint)ABS(fVar24) < 0x497ffff1) {
               iVar12 = ((int)(fVar24 + 6291456.0) << 10) >> 0xb;
             }
             else {
               iVar12 = (int)ROUND(fVar24) + (uint)((float)(int)ROUND(fVar24) - fVar24 <= -0.5);
             }
             if (*(float *)(lVar20 + 0x88) == 1.0) {
               iVar23 = *(int *)(lVar20 + 0x78);
               iVar19 = iVar23;
             }
             else {
               iVar23 = *(int *)(lVar20 + 0x78);
               iVar19 = (int)(longlong)((float)iVar23 * *(float *)(lVar20 + 0x88));
             }
             if (*(float *)(lVar20 + 0x84) == 0.0) {
               uVar18 = 0;
             }
             else {
               uVar18 = (undefined4)(longlong)((float)iVar23 * *(float *)(lVar20 + 0x84));
             }
             *(undefined4 *)(lVar20 + 0x50) = uVar18;
             *(int *)(lVar20 + 0x54) = iVar19;
             *(int *)(lVar20 + 0x58) = iVar23;
             *(byte *)(lVar20 + 0x60) = *(byte *)(lVar20 + 0x8c) >> 4 & 1;
             *(undefined4 *)(lVar20 + 0x5c) = uVar18;
             *(byte *)(lVar20 + 0x8c) = *(byte *)(lVar20 + 0x8c) | 0x20;
             *(int *)(lVar20 + 0x5c) = iVar12;
           }
           else {
             iVar23 = *(int *)(unaff_RBX + 0x1ec);
             if (iVar23 < *(int *)(unaff_RBX + 0x1e8)) {
               iVar19 = *(int *)(unaff_RBX + 0x1e8) - iVar23;
               if (iVar12 < iVar19) {
                 iVar19 = iVar12;
               }
               *(int *)(unaff_RBX + 0x1ec) = iVar23 + iVar19;
               iVar12 = iVar12 - iVar19;
             }
             if ((*(byte *)(*(longlong *)(unaff_RBX + 0x188) + 0x8c) & 2) != 0) {
               piVar1 = (int *)(*(longlong *)(unaff_RBX + 0x188) + 0x5c);
               *piVar1 = *piVar1 + iVar12;
             }
           }
         }
       }
     }
     else {
       if (*(int *)(unaff_RBX + 0x230) != 2) goto LAB_3;
       if (((byte)unaff_RBX[0x245] & 1) == 0) {
         *(undefined4 *)(unaff_RBX + 0x21c) = 0;
         CKeyframeAnimation::PrepareSequenceForIteration(unaff_RBX,0);
         KeyframeSequence::Play(*(KeyframeSequence **)(unaff_RBX + 0x188));
         unaff_RBX[0x244] = (CKeyframeAnimation)((byte)unaff_RBX[0x244] | 0x80);
         unaff_RBX[0x245] = (CKeyframeAnimation)((byte)unaff_RBX[0x245] & 0xfd | 1);
         *(undefined4 *)(unaff_RBX + 0x224) = *(undefined4 *)(unaff_RBX + 0x220);
         CKeyframeAnimation::OnAnimationEvent(unaff_RBX,4,unaff_RDI);
         unaff_RBX[0x245] = (CKeyframeAnimation)((byte)unaff_RBX[0x245] | 4);
       }
       else if ((-1 < (char)CVar17) && (((byte)unaff_RBX[0x245] & 2) == 0)) {
         this = *(KeyframeSequence **)(unaff_RBX + 0x188);
         unaff_RBX[0x244] = (CKeyframeAnimation)((byte)CVar17 | 0x80);
         if (((byte)this[0x8c] & 1) == 0) {
           KeyframeSequence::SortKeyFrames(this);
           KeyframeSequence::ConfigureTimer(this);
           uVar21 = 0;
           if (*(uint *)(this + 0x70) != 0) {
             do {
               iVar12 = *(int *)(*(longlong *)(*(longlong *)(this + 0x68) + 8 + uVar21 * 0x18) + 0x14
                                );
               if (((iVar12 != 1) && (iVar12 != 2)) && (iVar12 != 3)) {
                     /* WARNING: Subroutine does not return */
                 ModuleFailFastForHRESULT(0x8000ffff,*(undefined8 *)(unaff_RBP + 0x5f));
               }
               uVar9 = (int)uVar21 + 1;
               uVar21 = (ulonglong)uVar9;
             } while (uVar9 < *(uint *)(this + 0x70));
           }
           this[0x8c] = (KeyframeSequence)((byte)this[0x8c] | 3);
         }
         else {
           this[0x8c] = (KeyframeSequence)((byte)this[0x8c] | 2);
         }
       }
       unaff_RBX[0x244] = (CKeyframeAnimation)((byte)unaff_RBX[0x244] | 0x20);
     }
     *(undefined8 *)(unaff_RBX + 0x1f8) = *(undefined8 *)(*(longlong *)(unaff_RBX + 0x10) + 0x260);
     if (((((byte)unaff_RBX[0x245] & 1) != 0) &&
         (*(int *)(unaff_RBX + 0x1ec) < *(int *)(unaff_RBX + 0x1e8))) &&
        (((byte)unaff_RBX[0x244] & 0x40) == 0)) {
       if (*(int *)(unaff_RBX + 0x238) == 1) {
-        uVar21 = FUN_180119749();
+        uVar21 = FUN_18012121f();
         return uVar21;
       }
-      goto switchD_18005ba39_caseD_c;
+      goto switchD_180056d49_caseD_c;
     }
     if (((byte)unaff_RBX[0x244] & 8) == 0) {
       CKeyframeAnimation::ProcessExpressionKeyFrames(unaff_RBX,unaff_RDI);
       if ((*(longlong *)(unaff_RBX + 0x180) != 0) &&
          (lVar10 = CKeyframeAnimation::SampleStartingValue(unaff_RBX), lVar10 < 0)) {
-        uVar21 = FUN_180119756();
+        uVar21 = FUN_18012122c();
         return uVar21;
       }
       unaff_RBX[0x244] = (CKeyframeAnimation)((byte)unaff_RBX[0x244] | 8);
     }
     pCVar14 = unaff_RBX;
     uVar9 = CKeyframeAnimation::Calculate(unaff_RBX,unaff_RDI);
     uVar13 = (ulong)pCVar14;
     uVar21 = (ulonglong)uVar9;
     if ((int)uVar9 < 0) {
       uVar25 = 0x62b;
       goto LAB_1;
     }
     puVar4 = *(undefined8 **)(unaff_RBX + 0x188);
     if (*(char *)((longlong)puVar4 + 0x4c) == '\0') goto LAB_0;
     uVar13 = *(ulong *)(unaff_RDI + 0x10);
     if (~uVar13 < 5) {
       uVar9 = 0x8000ffff;
       MilInstrumentationCheckHR_MaybeFailFast
                 (uVar13,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,-0x7fff0001,
-                 0x52,(void *)0x0);
+                 0x53,(void *)0x0);
 LAB_6:
       MilInstrumentationCheckHR_MaybeFailFast
-                (uVar13,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,uVar9,0x271,
+                (uVar13,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,uVar9,0x281,
                  (void *)0x0);
       uVar25 = 0x638;
       uVar21 = (ulonglong)uVar9;
       goto LAB_1;
     }
     if (*(ulong *)(unaff_RDI + 0x30) == uVar13) {
       uVar9 = 0;
       memset((void *)(unaff_RBP + -0x79),0,0x40);
       pDVar15 = (DynArray<CExpressionValue,1> *)(unaff_RDI + 0x18);
       *(undefined8 *)(unaff_RBP + -0x39) = 0;
       *(undefined4 *)(unaff_RBP + -0x31) = 0x12;
       *(undefined1 *)(unaff_RBP + -0x2d) = 0;
       uVar9 = DynArray<CExpressionValue,1>::AddAndSet
                         (pDVar15,uVar9,(CExpressionValue *)(unaff_RBP + -0x79));
       if ((int)uVar9 < 0) {
         MilInstrumentationCheckHR_MaybeFailFast
                   ((ulong)pDVar15,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                   uVar9,0x5b,(void *)0x0);
+                   uVar9,0x5c,(void *)0x0);
         pCVar16 = (ComPtr<CPathData> *)(unaff_RBP + -0x39);
         Microsoft::WRL::ComPtr<CPathData>::InternalRelease(pCVar16);
         uVar13 = (ulong)pCVar16;
         goto LAB_6;
       }
       Microsoft::WRL::ComPtr<CPathData>::InternalRelease((ComPtr<CPathData> *)(unaff_RBP + -0x39));
     }
     uVar9 = *(uint *)(unaff_RDI + 0x10);
     *(uint *)(unaff_RDI + 0x10) = uVar9 + 1;
     iVar12 = *(int *)(puVar4 + 9);
     puVar22 = (undefined8 *)((ulonglong)uVar9 * 0x50 + *(longlong *)(unaff_RDI + 0x18));
     if (iVar12 == 0x12) {
       *(undefined4 *)puVar22 = *(undefined4 *)puVar4;
       *(undefined4 *)(puVar22 + 9) = 0x12;
       goto LAB_7;
     }
     if (iVar12 == 0x11) {
       *(undefined1 *)puVar22 = *(undefined1 *)puVar4;
       *(undefined4 *)(puVar22 + 9) = 0x11;
       goto LAB_7;
     }
     if (iVar12 == 0x23) {
       *(undefined4 *)(puVar22 + 9) = 0x23;
       *puVar22 = *puVar4;
       goto LAB_7;
     }
     switch(iVar12) {
     case 0xb:
       pCVar5 = (CPathData *)puVar4[8];
       *(undefined4 *)(puVar22 + 9) = 0xb;
       *(undefined1 *)((longlong)puVar22 + 0x4c) = 1;
       Microsoft::WRL::ComPtr<CPathData>::operator=((ComPtr<CPathData> *)(puVar22 + 8),pCVar5);
     default:
-      goto switchD_18005ba39_caseD_c;
+      goto switchD_180056d49_caseD_c;
     case 0x2a:
       *(undefined4 *)(puVar22 + 9) = 0x2a;
       *(undefined4 *)puVar22 = *(undefined4 *)puVar4;
       break;
     case 0x34:
       *(undefined4 *)(puVar22 + 9) = 0x34;
       *puVar22 = *puVar4;
       *(undefined4 *)(puVar22 + 1) = *(undefined4 *)(puVar4 + 1);
       break;
     case 0x45:
       *(undefined4 *)(puVar22 + 9) = 0x45;
       uVar2 = puVar4[1];
       *puVar22 = *puVar4;
       puVar22[1] = uVar2;
       break;
     case 0x46:
       *(undefined4 *)(puVar22 + 9) = 0x46;
       uVar2 = puVar4[1];
       *puVar22 = *puVar4;
       puVar22[1] = uVar2;
       break;
     case 0x47:
       *(undefined4 *)(puVar22 + 9) = 0x47;
       uVar2 = puVar4[1];
       *puVar22 = *puVar4;
       puVar22[1] = uVar2;
       break;
     case 0x68:
       *(undefined4 *)(puVar22 + 9) = 0x68;
       uVar2 = puVar4[1];
       *puVar22 = *puVar4;
       puVar22[1] = uVar2;
       puVar22[2] = puVar4[2];
       break;
     case 0x109:
       *(undefined4 *)(puVar22 + 9) = 0x109;
       uVar2 = puVar4[1];
       *puVar22 = *puVar4;
       puVar22[1] = uVar2;
       uVar2 = puVar4[3];
       puVar22[2] = puVar4[2];
       puVar22[3] = uVar2;
       uVar2 = puVar4[5];
       puVar22[4] = puVar4[4];
       puVar22[5] = uVar2;
       uVar2 = puVar4[7];
       puVar22[6] = puVar4[6];
       puVar22[7] = uVar2;
     }
 LAB_7:
     *(undefined1 *)((longlong)puVar22 + 0x4c) = 1;
-switchD_18005ba39_caseD_c:
+switchD_180056d49_caseD_c:
     CVar17 = unaff_RBX[0x244];
     if ((((byte)CVar17 >> 5 & (byte)unaff_RBX[0x245] & 1) != 0) && ((char)CVar17 < '\0')) {
       unaff_RBX[0x244] = (CKeyframeAnimation)((byte)CVar17 & 0x7f);
       *(byte *)(*(longlong *)(unaff_RBX + 0x188) + 0x8c) =
            *(byte *)(*(longlong *)(unaff_RBX + 0x188) + 0x8c) & 0xfd;
       CVar17 = unaff_RBX[0x244];
     }
     if (((byte)unaff_RBX[0x245] & 2) == 0) {
       if ((((byte)unaff_RBX[0x245] & 1) == 0) ||
          (*(int *)(unaff_RBX + 0x1e8) <= *(int *)(unaff_RBX + 0x1ec))) goto LAB_2;
       if ((*(int *)(unaff_RBX + 0x238) == 1) && (((byte)CVar17 & 0x10) == 0)) {
         unaff_RBX[0x244] = (CKeyframeAnimation)((byte)CVar17 | 0x10);
         goto LAB_2;
       }
       if (((byte)CVar17 & 0x40) != 0) goto LAB_2;
       goto LAB_0;
     }
     *(int *)(unaff_RDI + 0x10) = *(int *)(unaff_RDI + 0x10) + -1;
     pCVar14 = unaff_RBX;
     uVar9 = CKeyframeAnimation::Reset(unaff_RBX,true,unaff_RDI);
     uVar13 = (ulong)pCVar14;
     uVar21 = (ulonglong)uVar9;
     if (-1 < (int)uVar9) {
       CVar17 = unaff_RBX[0x244];
       unaff_RBX[0x244] = (CKeyframeAnimation)((byte)CVar17 & 0xfe);
       if (((byte)CVar17 & 0x20) == 0) {
         *(undefined8 *)(unaff_RBX + 0x230) = 0;
       }
       else {
         CKeyframeAnimation::Play(unaff_RBX,unaff_RDI);
         CKeyframeAnimation::Pause(unaff_RBX);
       }
       goto LAB_2;
     }
     uVar25 = 0x649;
     goto LAB_1;
   }
   if (unaff_RBX[0x94] == (CKeyframeAnimation)0x0) goto LAB_0;
   *(undefined8 *)(unaff_RBP + -0x39) = 0;
   *(undefined4 *)(unaff_RBP + -0x31) = 0x12;
   *(undefined1 *)(unaff_RBP + -0x2d) = 0;
   *(undefined8 *)(unaff_RBP + -0x79) = 0;
   *(undefined8 *)(unaff_RBP + -0x71) = 0;
   *(undefined8 *)(unaff_RBP + -0x69) = 0;
   *(undefined8 *)(unaff_RBP + -0x61) = 0;
   *(undefined8 *)(unaff_RBP + -0x59) = 0;
   *(undefined8 *)(unaff_RBP + -0x51) = 0;
   *(undefined8 *)(unaff_RBP + -0x49) = 0;
   *(undefined8 *)(unaff_RBP + -0x41) = 0;
   CExpressionValue::CopyFrom
             ((CExpressionValue *)(unaff_RBP + -0x79),(CExpressionValue *)(unaff_RBX + 0x48));
   uVar13 = *(ulong *)(unaff_RDI + 0x10);
   if (~uVar13 < 5) {
     MilInstrumentationCheckHR_MaybeFailFast
               (uVar13,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,-0x7fff0001,
-               0x52,(void *)0x0);
+               0x53,(void *)0x0);
     uVar9 = 0x8000ffff;
 LAB_8:
     MilInstrumentationCheckHR_MaybeFailFast
-              (uVar13,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,uVar9,0x271,
+              (uVar13,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,uVar9,0x281,
                (void *)0x0);
     uVar21 = (ulonglong)uVar9;
     MilInstrumentationCheckHR_MaybeFailFast(uVar13,(long *)0x0,0,uVar9,0x67c,(void *)0x0);
     Microsoft::WRL::ComPtr<CPathData>::InternalRelease((ComPtr<CPathData> *)(unaff_RBP + -0x39));
     goto LAB_9;
   }
   if (*(ulong *)(unaff_RDI + 0x30) == uVar13) {
     uVar9 = 0;
     memset((void *)(unaff_RBP + -0x29),0,0x40);
     pDVar15 = (DynArray<CExpressionValue,1> *)(unaff_RDI + 0x18);
     *(undefined8 *)(unaff_RBP + 0x17) = 0;
     *(undefined4 *)(unaff_RBP + 0x1f) = 0x12;
     *(undefined1 *)(unaff_RBP + 0x23) = 0;
     uVar9 = DynArray<CExpressionValue,1>::AddAndSet
                       (pDVar15,uVar9,(CExpressionValue *)(unaff_RBP + -0x29));
     if ((int)uVar9 < 0) {
       MilInstrumentationCheckHR_MaybeFailFast
                 ((ulong)pDVar15,(long *)&CExpressionValueStack::MILINSTRUMENTATIONHRESULTLIST,1,
-                 uVar9,0x5b,(void *)0x0);
+                 uVar9,0x5c,(void *)0x0);
       pCVar16 = (ComPtr<CPathData> *)(unaff_RBP + 0x17);
       Microsoft::WRL::ComPtr<CPathData>::InternalRelease(pCVar16);
       uVar13 = (ulong)pCVar16;
       goto LAB_8;
     }
     Microsoft::WRL::ComPtr<CPathData>::InternalRelease((ComPtr<CPathData> *)(unaff_RBP + 0x17));
   }
   uVar9 = *(uint *)(unaff_RDI + 0x10);
   *(uint *)(unaff_RDI + 0x10) = uVar9 + 1;
   iVar12 = *(int *)(unaff_RBP + -0x31);
   lVar20 = *(longlong *)(unaff_RDI + 0x18);
   pCVar5 = *(CPathData **)(unaff_RBP + -0x39);
   lVar11 = (ulonglong)uVar9 * 0x50;
   if (iVar12 == 0x46) {
     *(undefined4 *)(lVar11 + 0x48 + lVar20) = 0x46;
     goto LAB_10;
   }
   if (iVar12 == 0x12) {
     *(undefined4 *)(lVar11 + lVar20) = *(undefined4 *)(unaff_RBP + -0x79);
     *(undefined4 *)(lVar11 + 0x48 + lVar20) = 0x12;
     goto LAB_11;
   }
   if (iVar12 == 0x34) {
     uVar2 = *(undefined8 *)(unaff_RBP + -0x79);
     *(undefined4 *)(lVar11 + 0x48 + lVar20) = 0x34;
     uVar18 = *(undefined4 *)(unaff_RBP + -0x71);
     *(undefined8 *)(lVar11 + lVar20) = uVar2;
     *(undefined4 *)(lVar11 + 8 + lVar20) = uVar18;
     goto LAB_11;
   }
   switch(iVar12) {
   case 0xb:
     *(undefined4 *)(lVar11 + 0x48 + lVar20) = 0xb;
     *(undefined1 *)(lVar11 + 0x4c + lVar20) = 1;
     Microsoft::WRL::ComPtr<CPathData>::operator=
               ((ComPtr<CPathData> *)(lVar11 + 0x40 + lVar20),pCVar5);
   default:
-    goto switchD_180119aad_caseD_c;
+    goto switchD_180121583_caseD_c;
   case 0x11:
     *(undefined1 *)(lVar11 + lVar20) = *(undefined1 *)(unaff_RBP + -0x79);
     *(undefined4 *)(lVar11 + 0x48 + lVar20) = 0x11;
     break;
   case 0x23:
     uVar18 = *(undefined4 *)(unaff_RBP + -0x75);
     *(undefined4 *)(lVar11 + lVar20) = *(undefined4 *)(unaff_RBP + -0x79);
     *(undefined4 *)(lVar11 + 4 + lVar20) = uVar18;
     *(undefined4 *)(lVar11 + 0x48 + lVar20) = 0x23;
     break;
   case 0x2a:
     *(undefined4 *)(lVar11 + lVar20) = *(undefined4 *)(unaff_RBP + -0x79);
     *(undefined4 *)(lVar11 + 0x48 + lVar20) = 0x2a;
     break;
   case 0x45:
     *(undefined4 *)(lVar11 + 0x48 + lVar20) = 0x45;
     goto LAB_10;
   case 0x47:
     *(undefined4 *)(lVar11 + 0x48 + lVar20) = 0x47;
 LAB_10:
     uVar2 = *(undefined8 *)(unaff_RBP + -0x71);
     *(undefined8 *)(lVar11 + lVar20) = *(undefined8 *)(unaff_RBP + -0x79);
     ((undefined8 *)(lVar11 + lVar20))[1] = uVar2;
     break;
   case 0x68:
     uVar6 = *(undefined8 *)(unaff_RBP + -0x71);
     uVar2 = *(undefined8 *)(unaff_RBP + -0x69);
     *(undefined8 *)(lVar11 + lVar20) = *(undefined8 *)(unaff_RBP + -0x79);
     ((undefined8 *)(lVar11 + lVar20))[1] = uVar6;
     *(undefined4 *)(lVar11 + 0x48 + lVar20) = 0x68;
     *(undefined8 *)(lVar11 + 0x10 + lVar20) = uVar2;
     break;
   case 0x109:
     uVar2 = *(undefined8 *)(unaff_RBP + -0x71);
     uVar6 = *(undefined8 *)(unaff_RBP + -0x69);
     uVar7 = *(undefined8 *)(unaff_RBP + -0x61);
     *(undefined8 *)(lVar11 + lVar20) = *(undefined8 *)(unaff_RBP + -0x79);
     ((undefined8 *)(lVar11 + lVar20))[1] = uVar2;
     *(undefined4 *)(lVar11 + 0x48 + lVar20) = 0x109;
     uVar2 = *(undefined8 *)(unaff_RBP + -0x59);
     uVar8 = *(undefined8 *)(unaff_RBP + -0x51);
     puVar4 = (undefined8 *)(lVar11 + 0x10 + lVar20);
     *puVar4 = uVar6;
     puVar4[1] = uVar7;
     uVar6 = *(undefined8 *)(unaff_RBP + -0x49);
     uVar7 = *(undefined8 *)(unaff_RBP + -0x41);
     puVar4 = (undefined8 *)(lVar11 + 0x20 + lVar20);
     *puVar4 = uVar2;
     puVar4[1] = uVar8;
     puVar4 = (undefined8 *)(lVar11 + 0x30 + lVar20);
     *puVar4 = uVar6;
     puVar4[1] = uVar7;
   }
 LAB_11:
   *(undefined1 *)(lVar11 + 0x4c + lVar20) = 1;
-switchD_180119aad_caseD_c:
+switchD_180121583_caseD_c:
   if (pCVar5 != (CPathData *)0x0) {
-    uVar21 = FUN_180119b9f();
+    uVar21 = FUN_180121675();
     return uVar21;
   }
 LAB_2:
   uVar13 = *(ulong *)(unaff_RDI + 0x10);
   if (uVar13 == uVar3 + 1) {
     uVar21 = 0;
   }
   else if (uVar13 == uVar3) {
 LAB_0:
     uVar21 = 1;
   }
   else {
     uVar21 = 0x8000ffff;
     uVar25 = 0x699;
     uVar9 = 0x8000ffff;
 LAB_1:
     MilInstrumentationCheckHR_MaybeFailFast(uVar13,(long *)0x0,0,uVar9,uVar25,(void *)0x0);
   }
 LAB_9:
   *unaff_R14 = (byte)unaff_RBX[0x244] & 1;
   unaff_RBX[0x244] = (CKeyframeAnimation)((byte)unaff_RBX[0x244] & 0x99);
   return uVar21;
 }
 

```


## D3DXQuaternionMultiply

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|code,name,fullname,refcount,length,sig,address,calling,called,parent|
|ratio|0.14|
|i_ratio|0.03|
|m_ratio|0.33|
|b_ratio|0.13|
|match_types|Implied Match|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|`name`|D3DXQuaternionMultiply|CExpressionValue|
|`fullname`|D3DXQuaternionMultiply|CExpressionValue::CExpressionValue|
|`refcount`|4|207|
|`length`|299|45|
|`called`||memset|
|`calling`|CExpressionValueStack::Concatenate<br>CExpressionValueStack::Divide<br>CExpressionValueStack::Multiply|<details><summary>Expand for full list:<br>CConditionalExpression::AddStackValueToSum<br>CConditionalExpression::CalculateConditionValue<br>CConditionalExpression::GetValue<br>CExpression::CalculateValueWorker<br>CExpressionValueStack::Absolute<br>CExpressionValueStack::Acos<br>CExpressionValueStack::Add<br>CExpressionValueStack::And<br>CExpressionValueStack::Asin<br>CExpressionValueStack::Atan<br>CExpressionValueStack::Ceil</summary>CExpressionValueStack::Clamp<br>CExpressionValueStack::ColorHsl<br>CExpressionValueStack::ColorLerpHsl<br>CExpressionValueStack::ColorLerpRgb<br>CExpressionValueStack::ColorRgb<br>CExpressionValueStack::Concatenate<br>CExpressionValueStack::Conditional<br>CExpressionValueStack::Distance<br>CExpressionValueStack::DistanceSquared<br>CExpressionValueStack::Divide<br>CExpressionValueStack::Equals<br>CExpressionValueStack::Floor<br>CExpressionValueStack::GreaterThan<br>CExpressionValueStack::GreaterThanEquals<br>CExpressionValueStack::Inverse<br>CExpressionValueStack::Length<br>CExpressionValueStack::LengthSquared<br>CExpressionValueStack::Lerp<br>CExpressionValueStack::LessThan<br>CExpressionValueStack::LessThanEquals<br>CExpressionValueStack::Ln<br>CExpressionValueStack::Log10<br>CExpressionValueStack::Matrix3x2<br>CExpressionValueStack::Matrix3x2FromRotation<br>CExpressionValueStack::Matrix3x2FromScale<br>CExpressionValueStack::Matrix3x2FromSkew<br>CExpressionValueStack::Matrix4x4<br>CExpressionValueStack::Matrix4x4FromAxisAngle<br>CExpressionValueStack::Matrix4x4FromPerspective<br>CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView<br>CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter<br>CExpressionValueStack::Matrix4x4FromQuaternion<br>CExpressionValueStack::Matrix4x4FromRotationX<br>CExpressionValueStack::Matrix4x4FromRotationY<br>CExpressionValueStack::Matrix4x4FromRotationZ<br>CExpressionValueStack::Matrix4x4FromScale<br>CExpressionValueStack::Matrix4x4FromTranslation<br>CExpressionValueStack::Matrix4x4FromYawPitchRoll<br>CExpressionValueStack::Max<br>CExpressionValueStack::Min<br>CExpressionValueStack::Modulus<br>CExpressionValueStack::Multiply<br>CExpressionValueStack::Negate<br>CExpressionValueStack::Normalize<br>CExpressionValueStack::Not<br>CExpressionValueStack::NotEquals<br>CExpressionValueStack::Or<br>CExpressionValueStack::PeekStackValue<br>CExpressionValueStack::Pow<br>CExpressionValueStack::Quaternion<br>CExpressionValueStack::QuaternionFromAxisAngle<br>CExpressionValueStack::QuaternionFromLerp<br>CExpressionValueStack::QuaternionFromRotationMatrix<br>CExpressionValueStack::QuaternionFromYawPitchRoll<br>CExpressionValueStack::Round<br>CExpressionValueStack::Scale<br>CExpressionValueStack::Slerp<br>CExpressionValueStack::Sqrt<br>CExpressionValueStack::Square<br>CExpressionValueStack::Subtract<br>CExpressionValueStack::Swizzle<br>CExpressionValueStack::Tan<br>CExpressionValueStack::TimeSpanFrom<br>CExpressionValueStack::ToDegrees<br>CExpressionValueStack::ToRadians<br>CExpressionValueStack::Transform<br>CExpressionValueStack::Vector2Dot<br>CExpressionValueStack::Vector2Transform<br>CExpressionValueStack::Vector2TransformNormal<br>CExpressionValueStack::Vector3<br>CExpressionValueStack::Vector3Cross<br>CExpressionValueStack::Vector3Dot<br>CExpressionValueStack::Vector3Transform<br>CExpressionValueStack::Vector3TransformNormal<br>CExpressionValueStack::Vector4<br>CExpressionValueStack::Vector4Dot<br>CExpressionValueStack::Vector4Transform<br>CKeyframeAnimation::ApplyPlaybackStateChanges<br>CKeyframeAnimation::ProcessSetBindingBroken<br>CNaturalAnimation::PeekStackValue<br>CNaturalAnimationScalarForceAdapater::Update<br>CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated<br>CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated<br>`dynamic_initializer_for_'CExpressionValueStack::s_emptyValue''</details>|
|paramcount|3|1|
|`address`|1802750e0|1800c26b4|
|`sig`|D2DQuaternion * __cdecl D3DXQuaternionMultiply(D2DQuaternion * param_1, D2DQuaternion * param_2, D2DQuaternion * param_3)|undefined __thiscall CExpressionValue(CExpressionValue * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### D3DXQuaternionMultiply Called Diff


```diff
--- D3DXQuaternionMultiply called
+++ CExpressionValue::CExpressionValue called
@@ -0,0 +1 @@
+memset
```


### D3DXQuaternionMultiply Calling Diff


```diff
--- D3DXQuaternionMultiply calling
+++ CExpressionValue::CExpressionValue calling
@@ -0,0 +1,16 @@
+CConditionalExpression::AddStackValueToSum
+CConditionalExpression::CalculateConditionValue
+CConditionalExpression::GetValue
+CExpression::CalculateValueWorker
+CExpressionValueStack::Absolute
+CExpressionValueStack::Acos
+CExpressionValueStack::Add
+CExpressionValueStack::And
+CExpressionValueStack::Asin
+CExpressionValueStack::Atan
+CExpressionValueStack::Ceil
+CExpressionValueStack::Clamp
+CExpressionValueStack::ColorHsl
+CExpressionValueStack::ColorLerpHsl
+CExpressionValueStack::ColorLerpRgb
+CExpressionValueStack::ColorRgb
@@ -1,0 +18,3 @@
+CExpressionValueStack::Conditional
+CExpressionValueStack::Distance
+CExpressionValueStack::DistanceSquared
@@ -2,0 +22,31 @@
+CExpressionValueStack::Equals
+CExpressionValueStack::Floor
+CExpressionValueStack::GreaterThan
+CExpressionValueStack::GreaterThanEquals
+CExpressionValueStack::Inverse
+CExpressionValueStack::Length
+CExpressionValueStack::LengthSquared
+CExpressionValueStack::Lerp
+CExpressionValueStack::LessThan
+CExpressionValueStack::LessThanEquals
+CExpressionValueStack::Ln
+CExpressionValueStack::Log10
+CExpressionValueStack::Matrix3x2
+CExpressionValueStack::Matrix3x2FromRotation
+CExpressionValueStack::Matrix3x2FromScale
+CExpressionValueStack::Matrix3x2FromSkew
+CExpressionValueStack::Matrix4x4
+CExpressionValueStack::Matrix4x4FromAxisAngle
+CExpressionValueStack::Matrix4x4FromPerspective
+CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView
+CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter
+CExpressionValueStack::Matrix4x4FromQuaternion
+CExpressionValueStack::Matrix4x4FromRotationX
+CExpressionValueStack::Matrix4x4FromRotationY
+CExpressionValueStack::Matrix4x4FromRotationZ
+CExpressionValueStack::Matrix4x4FromScale
+CExpressionValueStack::Matrix4x4FromTranslation
+CExpressionValueStack::Matrix4x4FromYawPitchRoll
+CExpressionValueStack::Max
+CExpressionValueStack::Min
+CExpressionValueStack::Modulus
@@ -3,0 +54,42 @@
+CExpressionValueStack::Negate
+CExpressionValueStack::Normalize
+CExpressionValueStack::Not
+CExpressionValueStack::NotEquals
+CExpressionValueStack::Or
+CExpressionValueStack::PeekStackValue
+CExpressionValueStack::Pow
+CExpressionValueStack::Quaternion
+CExpressionValueStack::QuaternionFromAxisAngle
+CExpressionValueStack::QuaternionFromLerp
+CExpressionValueStack::QuaternionFromRotationMatrix
+CExpressionValueStack::QuaternionFromYawPitchRoll
+CExpressionValueStack::Round
+CExpressionValueStack::Scale
+CExpressionValueStack::Slerp
+CExpressionValueStack::Sqrt
+CExpressionValueStack::Square
+CExpressionValueStack::Subtract
+CExpressionValueStack::Swizzle
+CExpressionValueStack::Tan
+CExpressionValueStack::TimeSpanFrom
+CExpressionValueStack::ToDegrees
+CExpressionValueStack::ToRadians
+CExpressionValueStack::Transform
+CExpressionValueStack::Vector2Dot
+CExpressionValueStack::Vector2Transform
+CExpressionValueStack::Vector2TransformNormal
+CExpressionValueStack::Vector3
+CExpressionValueStack::Vector3Cross
+CExpressionValueStack::Vector3Dot
+CExpressionValueStack::Vector3Transform
+CExpressionValueStack::Vector3TransformNormal
+CExpressionValueStack::Vector4
+CExpressionValueStack::Vector4Dot
+CExpressionValueStack::Vector4Transform
+CKeyframeAnimation::ApplyPlaybackStateChanges
+CKeyframeAnimation::ProcessSetBindingBroken
+CNaturalAnimation::PeekStackValue
+CNaturalAnimationScalarForceAdapater::Update
+CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated
+CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated
+`dynamic_initializer_for_'CExpressionValueStack::s_emptyValue''
```


### D3DXQuaternionMultiply Diff


```diff
--- D3DXQuaternionMultiply
+++ CExpressionValue::CExpressionValue
@@ -1,42 +1,13 @@
 
-/* struct D2DQuaternion * __ptr64 __cdecl D3DXQuaternionMultiply(struct D2DQuaternion *
-   __ptr64,struct D2DQuaternion const * __ptr64,struct D2DQuaternion const * __ptr64) */
+/* public: __cdecl CExpressionValue::CExpressionValue(void) __ptr64 */
 
-D2DQuaternion * __cdecl
-D3DXQuaternionMultiply(D2DQuaternion *param_1,D2DQuaternion *param_2,D2DQuaternion *param_3)
+CExpressionValue * __thiscall CExpressionValue::CExpressionValue(CExpressionValue *this)
 
 {
-  float fVar1;
-  float fVar2;
-  float fVar3;
-  float fVar4;
-  float fVar5;
-  float fVar6;
-  float fVar7;
-  float fVar8;
-  float fVar9;
-  float fVar10;
-  float fVar11;
-  float fVar12;
-  
-  fVar1 = *(float *)(param_3 + 0xc);
-  fVar2 = *(float *)(param_2 + 0xc);
-  fVar3 = *(float *)(param_2 + 8);
-  fVar4 = *(float *)(param_2 + 4);
-  fVar5 = *(float *)param_2;
-  fVar6 = *(float *)(param_3 + 4);
-  fVar7 = *(float *)(param_3 + 8);
-  fVar8 = *(float *)(param_2 + 4);
-  fVar9 = *(float *)param_3;
-  fVar10 = *(float *)(param_2 + 8);
-  fVar11 = *(float *)(param_2 + 4);
-  fVar12 = *(float *)(param_2 + 8);
-  *(float *)param_1 =
-       (fVar9 * fVar2 + fVar5 * fVar1 + fVar6 * *(float *)(param_2 + 8)) -
-       fVar7 * *(float *)(param_2 + 4);
-  *(float *)(param_1 + 4) = (fVar8 * fVar1 - fVar3 * fVar9) + fVar6 * fVar2 + fVar7 * fVar5;
-  *(float *)(param_1 + 8) = ((fVar4 * fVar9 + fVar10 * fVar1) - fVar6 * fVar5) + fVar7 * fVar2;
-  *(float *)(param_1 + 0xc) = ((fVar2 * fVar1 - fVar9 * fVar5) - fVar11 * fVar6) - fVar7 * fVar12;
-  return param_1;
+  memset(this,0,0x40);
+  *(undefined8 *)(this + 0x40) = 0;
+  *(undefined4 *)(this + 0x48) = 0x12;
+  this[0x4c] = (CExpressionValue)0x0;
+  return this;
 }
 

```


# Modified (No Code Changes)


*Slightly modified functions have no code changes, rather differnces in:*
- refcount
- length
- called
- calling
- name
- fullname

## _Delete_this

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|length,address,called|
|ratio|1.0|
|i_ratio|0.5|
|m_ratio|0.75|
|b_ratio|0.75|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|_Delete_this|_Delete_this|
|fullname|std::_Func_impl_no_alloc<<lambda_dc2c95d2c2f70bb2af203226fe5ee6fa>,void,void_*,unsigned_long,unsigned___int64,unsigned_short_const_*,enum_ProcessAttributionFlags,ProcessAttributionResourceCounters_const_&>::_Delete_this|std::_Func_impl_no_alloc<<lambda_dc2c95d2c2f70bb2af203226fe5ee6fa>,void,void_*,unsigned_long,unsigned___int64,unsigned_short_const_*,enum_ProcessAttributionFlags,ProcessAttributionResourceCounters_const_&>::_Delete_this|
|refcount|10|10|
|`length`|19|9|
|`called`|operator_delete||
|calling|CProcessAttributionReporter::Report|CProcessAttributionReporter::Report|
|paramcount|0|0|
|`address`|1800e90e0|1800e9ef0|
|sig|undefined _Delete_this(void)|undefined _Delete_this(void)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|False|False|

### _Delete_this Called Diff


```diff
--- std::_Func_impl_no_alloc<<lambda_dc2c95d2c2f70bb2af203226fe5ee6fa>,void,void_*,unsigned_long,unsigned___int64,unsigned_short_const_*,enum_ProcessAttributionFlags,ProcessAttributionResourceCounters_const_&>::_Delete_this called
+++ std::_Func_impl_no_alloc<<lambda_dc2c95d2c2f70bb2af203226fe5ee6fa>,void,void_*,unsigned_long,unsigned___int64,unsigned_short_const_*,enum_ProcessAttributionFlags,ProcessAttributionResourceCounters_const_&>::_Delete_this called
@@ -1 +0,0 @@
-operator_delete
```


## EnsureExpressionIsUnregistered

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address|
|ratio|1.0|
|i_ratio|0.81|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|EnsureExpressionIsUnregistered|EnsureExpressionIsUnregistered|
|fullname|CBaseExpression::EnsureExpressionIsUnregistered|CBaseExpression::EnsureExpressionIsUnregistered|
|`refcount`|9|10|
|length|219|219|
|called|CExpressionManager::EnsureAutoCompleteOnOccludedAnimationRemoved<br>CExpressionManager::UnregisterExpressionWorker<br>_guard_xfg_dispatch_icall_nop|CExpressionManager::EnsureAutoCompleteOnOccludedAnimationRemoved<br>CExpressionManager::UnregisterExpressionWorker<br>_guard_xfg_dispatch_icall_nop|
|calling|CBaseExpression::CalculateValue<br>CBaseExpression::ProcessSetBindingBroken<br>CBaseExpression::SetTarget<br>CBaseExpression::~CBaseExpression<br>CKeyframeAnimation::ProcessSetBindingBroken<br>CScrollAnimation::Stop|CBaseExpression::CalculateValue<br>CBaseExpression::ProcessSetBindingBroken<br>CBaseExpression::SetTarget<br>CBaseExpression::~CBaseExpression<br>CKeyframeAnimation::ProcessSetBindingBroken<br>CScrollAnimation::Stop|
|paramcount|1|1|
|`address`|18008c560|18009ba80|
|sig|void __thiscall EnsureExpressionIsUnregistered(CBaseExpression * this)|void __thiscall EnsureExpressionIsUnregistered(CBaseExpression * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|False|False|

## InternalRelease

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|0.82|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|InternalRelease|InternalRelease|
|fullname|Microsoft::WRL::ComPtr<CPathData>::InternalRelease|Microsoft::WRL::ComPtr<CPathData>::InternalRelease|
|`refcount`|208|210|
|length|41|41|
|called|||
|`calling`|<details><summary>Expand for full list:<br>CAnimationLoggingManager::DeferredSendDebugStart<br>CAnimationLoggingManager::LogAnimationEnded<br>CAnimationLoggingManager::LogAnimationStarted<br>CAnimationLoggingManager::LogDebugPropertyUpdates<br>CBaseExpression::CalculateValue<br>CBaseExpression::NotifyAnimationStateChanged<br>CBaseExpression::~CBaseExpression<br>CBrushRenderingEffect::SetStateOnDevice<br>CCompositionSkyBoxBrush::Draw<br>CConditionalExpression::CalculateValueWorker<br>CD3DConstantBuffer::Create</summary>CD3DConstantBuffer::ReleaseD3DResources<br>CD3DConstantBuffer::`scalar_deleting_destructor'<br>CD3DDynamicAppendBuffer::EnsureByteSpace<br>CDrawListEntryBatch::CSharedDirect3DResources::DestroyDeviceResources<br>CDrawListEntryBatch::CSharedDirect3DResources::~CSharedDirect3DResources<br>CDrawListEntryBuilder::ExtractBuiltHWPrimitiveEntry<br>CDrawListEntryBuilder::InsertWARP<br>CDrawingContext::PushLocalSpaceClipAndAlphaInternal<br>CEffectBrush::ReleaseResources<br>CEffectBrush::~CEffectBrush<br>CExpression::CalculateValueWorker<br>CExpressionValueStack::EnsureAvailablePushSpace<br>CExpressionValueStack::ProcessReferenceNode<br>CGeometry::GetTrimmedShapeData<br>CInteractionTrackerBindingManager::SetCustomAnimationFinalValue<br>CInterpolatePathsOperation::Interpolate<br>CKeyframeAnimation::Initialize<br>CKeyframeAnimation::ProcessSetPathData<br>CKeyframeAnimation::SampleStartingValue<br>CKeyframeAnimation::SetKeyFrameData<br>CKeyframeAnimation::~CKeyframeAnimation<br>CLineGeometry::GetShapeDataCore<br>CLinkedShader::`vector_deleting_destructor'<br>CNaturalAnimation::ExpressionValueFromInternalValue<br>CNaturalAnimation::ProcessSetBindingBroken<br>CNaturalAnimation::SampleInitialValueAndFinalValueIfNecessary<br>CParticleEmitterVisual::EnsureSpawner<br>CPathData::GetD2DGeometry<br>CPathData::Open<br>CPathData::Simplify<br>CPathData::~CPathData<br>CPathGeometry::ProcessSetPath<br>CPathGeometry::`vector_deleting_destructor'<br>CPathSegmentsShape::GetD2DGeometry<br>CPathSegmentsShape::GetSimplifiedPathDataInternal<br>CPathSegmentsShape::`scalar_deleting_destructor'<br>CPolygonShape::SharedData::`vector_deleting_destructor'<br>CPolygonShape::`vector_deleting_destructor'<br>CRectanglesShape::~CRectanglesShape<br>CRegionShape::`scalar_deleting_destructor'<br>CRegionShape::~CRegionShape<br>CRoundedRectangleShape::CreateIntersectedD2DGeometry<br>CRoundedRectangleShape::CreateNonIntersectedD2DGeometry<br>CRoundedRectangleShape::EnsureD2DGeometry<br>CRoundedRectangleShape::FlattenedShapeSharedData::`scalar_deleting_destructor'<br>CScrollKeyframeAnimation::~CScrollKeyframeAnimation<br>CScrollPositionKeyframeAnimation::EnsureInertiaModifierProcessed<br>CScrollPositionKeyframeAnimation::GetLastKeyframeValueForPosition<br>CScrollScaleKeyframeAnimation::EnsureInertiaModifierProcessed<br>CScrollScaleKeyframeAnimation::GetLastKeyframeValueForScale<br>CShaderCache::CreateLinkedShader<br>CShaderLinkingGraphBuilder::AppendNode<br>CShaderLinkingGraphBuilder::Initialize<br>CShaderLinkingGraphBuilder::Link<br>CShaderLinkingGraphBuilder::~CShaderLinkingGraphBuilder<br>CShape::FillContainsPoint<br>CShape::FlattenToLineSegments<br>CShape::GetSimplifiedPathData<br>CShape::GetSimplifiedPathDataInternal<br>CShape::GetWidenedBounds<br>CSurfaceShaderComposer::Create<br>CSurfaceShaderComposer::~CSurfaceShaderComposer<br>CTransformedGeometryHelper::TransformGeometry<br>CTrimPathOperation::Trim<br>CTypedConstantBufferBase::Initialize<br>DynArray<CExpressionValue,1>::AddAndSet<br>FUN_1801195c4<br>FUN_180139e7d<br>FUN_18013b926<br>FUN_18014e644<br>InteractionSourceManager::GetActiveManipulationDelta<br>InterpolateInLinearGamma<<lambda_3407e8815db8ff72220510f30343e01a>_><br>InterpolateInLinearGamma<<lambda_d9ec8cec7b93f46268f106f2fd316fdd>_><br>KeyframeInterpolation::ExpressionValueLerp<br>KeyframeInterpolation::InterpolateHsl<br>KeyframeInterpolation::InterpolateSpherical<br>LinkShader<br>LoadShaderBody<br>Microsoft::WRL::ComPtr<CPathData>::operator=<br>Microsoft::WRL::ComPtr<CPathData>::operator=<br>Microsoft::WRL::ComPtr<CPropertySet>::operator=<br>Microsoft::WRL::ComPtr<ID2D1PathGeometry>::operator=<br>Microsoft::WRL::ComPtr<ID3D11LinkingNode>::operator=<br>Microsoft::WRL::ComPtr<ID3D11Module>::operator=<br>std::_Destroy_range<std::allocator<Microsoft::WRL::ComPtr<CPathData>_>_><br>std::_Hash<std::_Umap_traits<ShaderLinkingArgument,CShaderLinkingGraphBuilder::Node,std::_Uhash_compare<ShaderLinkingArgument,std::hash<ShaderLinkingArgument>,std::equal_to<ShaderLinkingArgument>_>,std::allocator<std::pair<ShaderLinkingArgument_const_,CShaderLinkingGraphBuilder::Node>_>,0>_>::_Range_eraser::_Bump_erased<br>std::_List_node<std::pair<ShaderLinkingArgument_const_,CShaderLinkingGraphBuilder::Node>,void*___ptr64>::_Free_non_head<std::allocator<std::_List_node<std::pair<ShaderLinkingArgument_const_,CShaderLinkingGraphBuilder::Node>,void*___ptr64>_>_><br>std::_List_node_emplace_op2<std::allocator<std::_List_node<std::pair<ShaderLinkingArgument_const_,CShaderLinkingGraphBuilder::Node>,void*___ptr64>_>_>::~_List_node_emplace_op2<std::allocator<std::_List_node<std::pair<ShaderLinkingArgument_const_,CShaderLinkingGraphBuilder::Node>,void*___ptr64>_>_><br>switchD_18005ae83::caseD_b<br>switchD_18008776e::caseD_b</details>|<details><summary>Expand for full list:<br>CAnimationLoggingManager::DeferredSendDebugStart<br>CAnimationLoggingManager::LogAnimationEnded<br>CAnimationLoggingManager::LogAnimationStarted<br>CAnimationLoggingManager::LogDebugPropertyUpdates<br>CBaseExpression::CalculateValue<br>CBaseExpression::NotifyAnimationStateChanged<br>CBaseExpression::~CBaseExpression<br>CBrushRenderingEffect::SetStateOnDevice<br>CCompositionSkyBoxBrush::Draw<br>CConditionalExpression::CalculateValueWorker<br>CD3DConstantBuffer::Create</summary>CD3DConstantBuffer::ReleaseD3DResources<br>CD3DConstantBuffer::`scalar_deleting_destructor'<br>CD3DDynamicAppendBuffer::EnsureByteSpace<br>CDrawListEntryBatch::CSharedDirect3DResources::DestroyDeviceResources<br>CDrawListEntryBatch::CSharedDirect3DResources::~CSharedDirect3DResources<br>CDrawListEntryBuilder::ExtractBuiltHWPrimitiveEntry<br>CDrawListEntryBuilder::InsertWARP<br>CDrawingContext::PushLocalSpaceClipAndAlphaInternal<br>CEffectBrush::ReleaseResources<br>CEffectBrush::~CEffectBrush<br>CExpression::CalculateValueWorker<br>CExpressionValue::~CExpressionValue<br>CExpressionValueStack::EnsureAvailablePushSpace<br>CExpressionValueStack::ProcessReferenceNode<br>CGeometry::GetTrimmedShapeData<br>CInteractionTrackerBindingManager::SetCustomAnimationFinalValue<br>CInterpolatePathsOperation::Interpolate<br>CKeyframeAnimation::Initialize<br>CKeyframeAnimation::ProcessSetPathData<br>CKeyframeAnimation::SampleStartingValue<br>CKeyframeAnimation::SetKeyFrameData<br>CKeyframeAnimation::~CKeyframeAnimation<br>CLineGeometry::GetShapeDataCore<br>CLinkedShader::`vector_deleting_destructor'<br>CNaturalAnimation::ExpressionValueFromInternalValue<br>CNaturalAnimation::ProcessSetBindingBroken<br>CNaturalAnimation::SampleInitialValueAndFinalValueIfNecessary<br>CParticleEmitterVisual::EnsureSpawner<br>CPathData::GetD2DGeometry<br>CPathData::Open<br>CPathData::Simplify<br>CPathData::~CPathData<br>CPathGeometry::ProcessSetPath<br>CPathGeometry::`vector_deleting_destructor'<br>CPathSegmentsShape::GetD2DGeometry<br>CPathSegmentsShape::GetSimplifiedPathDataInternal<br>CPathSegmentsShape::`scalar_deleting_destructor'<br>CPolygonShape::SharedData::`vector_deleting_destructor'<br>CPolygonShape::`vector_deleting_destructor'<br>CRectanglesShape::~CRectanglesShape<br>CRegionShape::`scalar_deleting_destructor'<br>CRegionShape::~CRegionShape<br>CRoundedRectangleShape::CreateIntersectedD2DGeometry<br>CRoundedRectangleShape::CreateNonIntersectedD2DGeometry<br>CRoundedRectangleShape::EnsureD2DGeometry<br>CRoundedRectangleShape::FlattenedShapeSharedData::`scalar_deleting_destructor'<br>CScrollKeyframeAnimation::~CScrollKeyframeAnimation<br>CScrollPositionKeyframeAnimation::EnsureInertiaModifierProcessed<br>CScrollPositionKeyframeAnimation::GetLastKeyframeValueForPosition<br>CScrollScaleKeyframeAnimation::EnsureInertiaModifierProcessed<br>CScrollScaleKeyframeAnimation::GetLastKeyframeValueForScale<br>CShaderCache::CreateLinkedShader<br>CShaderLinkingGraphBuilder::AppendNode<br>CShaderLinkingGraphBuilder::Initialize<br>CShaderLinkingGraphBuilder::Link<br>CShaderLinkingGraphBuilder::~CShaderLinkingGraphBuilder<br>CShape::FillContainsPoint<br>CShape::FlattenToLineSegments<br>CShape::GetSimplifiedPathData<br>CShape::GetSimplifiedPathDataInternal<br>CShape::GetWidenedBounds<br>CSurfaceShaderComposer::Create<br>CSurfaceShaderComposer::~CSurfaceShaderComposer<br>CTransformedGeometryHelper::TransformGeometry<br>CTrimPathOperation::Trim<br>CTypedConstantBufferBase::Initialize<br>DynArray<CExpressionValue,1>::AddAndSet<br>FUN_18012109a<br>FUN_18014b8a4<br>FUN_1801564e9<br>FUN_1801617e0<br>InteractionSourceManager::GetActiveManipulationDelta<br>InterpolateInLinearGamma<<lambda_3407e8815db8ff72220510f30343e01a>_><br>InterpolateInLinearGamma<<lambda_d9ec8cec7b93f46268f106f2fd316fdd>_><br>KeyframeInterpolation::ExpressionValueLerp<br>KeyframeInterpolation::InterpolateHsl<br>KeyframeInterpolation::InterpolateSpherical<br>LinkShader<br>LoadShaderBody<br>Microsoft::WRL::ComPtr<CPathData>::operator=<br>Microsoft::WRL::ComPtr<CPathData>::operator=<br>Microsoft::WRL::ComPtr<CPropertySet>::operator=<br>Microsoft::WRL::ComPtr<ID2D1PathGeometry>::operator=<br>Microsoft::WRL::ComPtr<ID3D11LinkingNode>::operator=<br>Microsoft::WRL::ComPtr<ID3D11Module>::operator=<br>`dynamic_atexit_destructor_for_'CExpressionValueStack::s_emptyValue''<br>std::_Destroy_range<std::allocator<Microsoft::WRL::ComPtr<CPathData>_>_><br>std::_Hash<std::_Umap_traits<ShaderLinkingArgument,CShaderLinkingGraphBuilder::Node,std::_Uhash_compare<ShaderLinkingArgument,std::hash<ShaderLinkingArgument>,std::equal_to<ShaderLinkingArgument>_>,std::allocator<std::pair<ShaderLinkingArgument_const_,CShaderLinkingGraphBuilder::Node>_>,0>_>::_Range_eraser::_Bump_erased<br>std::_List_node<std::pair<ShaderLinkingArgument_const_,CShaderLinkingGraphBuilder::Node>,void*___ptr64>::_Free_non_head<std::allocator<std::_List_node<std::pair<ShaderLinkingArgument_const_,CShaderLinkingGraphBuilder::Node>,void*___ptr64>_>_><br>std::_List_node_emplace_op2<std::allocator<std::_List_node<std::pair<ShaderLinkingArgument_const_,CShaderLinkingGraphBuilder::Node>,void*___ptr64>_>_>::~_List_node_emplace_op2<std::allocator<std::_List_node<std::pair<ShaderLinkingArgument_const_,CShaderLinkingGraphBuilder::Node>,void*___ptr64>_>_><br>switchD_1800558ae::caseD_b<br>switchD_180057e13::caseD_b</details>|
|paramcount|1|1|
|`address`|1800e2430|1800e1860|
|sig|ulong __thiscall InternalRelease(ComPtr<CPathData> * this)|ulong __thiscall InternalRelease(ComPtr<CPathData> * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### InternalRelease Calling Diff


```diff
--- Microsoft::WRL::ComPtr<CPathData>::InternalRelease calling
+++ Microsoft::WRL::ComPtr<CPathData>::InternalRelease calling
@@ -22,0 +23 @@
+CExpressionValue::~CExpressionValue
@@ -78,4 +79,4 @@
-FUN_1801195c4
-FUN_180139e7d
-FUN_18013b926
-FUN_18014e644
+FUN_18012109a
+FUN_18014b8a4
+FUN_1801564e9
+FUN_1801617e0
@@ -95,0 +97 @@
+`dynamic_atexit_destructor_for_'CExpressionValueStack::s_emptyValue''
@@ -100,2 +102,2 @@
-switchD_18005ae83::caseD_b
-switchD_18008776e::caseD_b
+switchD_1800558ae::caseD_b
+switchD_180057e13::caseD_b
```


## __GSHandlerCheck

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address|
|ratio|1.0|
|i_ratio|0.88|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|__GSHandlerCheck|__GSHandlerCheck|
|fullname|__GSHandlerCheck|__GSHandlerCheck|
|`refcount`|864|868|
|length|29|29|
|called|__GSHandlerCheckCommon|__GSHandlerCheckCommon|
|calling|||
|paramcount|0|0|
|`address`|18010f340|180114018|
|sig|undefined __GSHandlerCheck(void)|undefined __GSHandlerCheck(void)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|False|False|

## atexit

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|0.88|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|atexit|atexit|
|fullname|atexit|atexit|
|`refcount`|47|48|
|length|23|23|
|called|_onexit|_onexit|
|`calling`|<details><summary>Expand for full list:<br>Windows::Internal::Details::`dynamic_initializer_for_'_git''<br>__scrt_initialize_thread_safe_statics<br>`anonymous_namespace'::`dynamic_atexit_destructor_for_'_lock''<br>`anonymous_namespace'::`dynamic_initializer_for_'_currentSequence''<br>`dynamic_atexit_destructor_for_'CManipulationManager::s_rwPointerBufferLock''<br>`dynamic_atexit_destructor_for_'CPassthroughEffect::s_spShaderCache''<br>`dynamic_atexit_destructor_for_'CProjectedShadowApproxBlurEffect::s_spShaderCache''<br>`dynamic_atexit_destructor_for_'CRadialGradientEffect::s_spCenteredShaderCache''<br>`dynamic_atexit_destructor_for_'CRadialGradientEffect::s_spNonCenteredShaderCache''<br>`dynamic_atexit_destructor_for_'g_pConnection''<br>`dynamic_atexit_destructor_for_'g_spCompositingShaderCache''</summary>`dynamic_atexit_destructor_for_'g_spProjectedShadowShaderCache''<br>`dynamic_initializer_for_'CCommonRenderingEffectFactory::s_cpSolidColorEffect''<br>`dynamic_initializer_for_'CCustomKernelEffect::s_rgspCache''<br>`dynamic_initializer_for_'CDropShadow::ShadowIntermediates::s_cpFastShadowBitmap''<br>`dynamic_initializer_for_'CInteraction::s_DefaultStateLockedInteractions''<br>`dynamic_initializer_for_'CInteraction::s_InteractionHandleTable''<br>`dynamic_initializer_for_'CManipulationContext::s_ParticipatingInteractionMap''<br>`dynamic_initializer_for_'CManipulationManager::s_InputQueue''<br>`dynamic_initializer_for_'CManipulationManager::s_InteractionUpdateQueue''<br>`dynamic_initializer_for_'CPointerDeviceCache::s_deviceCache''<br>`dynamic_initializer_for_'CProjectedShadow::s_cp1xBlurAsset''<br>`dynamic_initializer_for_'CProjectedShadow::s_cp1xBlurNineGrid''<br>`dynamic_initializer_for_'CProjectedShadow::s_cp2xBlurAsset''<br>`dynamic_initializer_for_'CProjectedShadow::s_cp2xBlurNineGrid''<br>`dynamic_initializer_for_'CProjectedShadow::s_cp2xBlurSurface''<br>`dynamic_initializer_for_'CProjectedShadow::s_cpFastShadowIntermediate''<br>`dynamic_initializer_for_'CProjectedShadow::s_cpHalfBlurAsset''<br>`dynamic_initializer_for_'CProjectedShadow::s_cpHalfBlurNineGrid''<br>`dynamic_initializer_for_'CProjectedShadow::s_cpMaskForBlur''<br>`dynamic_initializer_for_'CRectanglesShape::sc_emptyShape''<br>`dynamic_initializer_for_'CSyncLockGroup::g_syncLockGroups''<br>`dynamic_initializer_for_'CWeakResourceReference::s_weakReferenceMap''<br>`dynamic_initializer_for_'Contexts''<br>`dynamic_initializer_for_'g_CursorManager''<br>`dynamic_initializer_for_'g_DDisplayManager''<br>`dynamic_initializer_for_'g_DeviceManager''<br>`dynamic_initializer_for_'g_DisplayManager''<br>`dynamic_initializer_for_'g_commonRenderingShaderCache''<br>`dynamic_initializer_for_'g_csCompositionEngine''<br>wil::details::`dynamic_atexit_destructor_for_'g_threadFailureCallbacks''<br>wil::details::`dynamic_initializer_for_'g_enabledStateManager''<br>wil::details::`dynamic_initializer_for_'g_featureStateManager''<br>wil::details::`dynamic_initializer_for_'g_processLocalData''<br>wil::details::static_lazy<CompositorTracing>::get<br>wil::details::static_lazy<InputTraceLogging>::get</details>|<details><summary>Expand for full list:<br>Windows::Internal::Details::`dynamic_initializer_for_'_git''<br>__scrt_initialize_thread_safe_statics<br>`anonymous_namespace'::`dynamic_atexit_destructor_for_'_lock''<br>`anonymous_namespace'::`dynamic_initializer_for_'_currentSequence''<br>`dynamic_atexit_destructor_for_'CManipulationManager::s_rwPointerBufferLock''<br>`dynamic_atexit_destructor_for_'CPassthroughEffect::s_spShaderCache''<br>`dynamic_atexit_destructor_for_'CProjectedShadowApproxBlurEffect::s_spShaderCache''<br>`dynamic_atexit_destructor_for_'CRadialGradientEffect::s_spCenteredShaderCache''<br>`dynamic_atexit_destructor_for_'CRadialGradientEffect::s_spNonCenteredShaderCache''<br>`dynamic_atexit_destructor_for_'g_pConnection''<br>`dynamic_atexit_destructor_for_'g_spCompositingShaderCache''</summary>`dynamic_atexit_destructor_for_'g_spProjectedShadowShaderCache''<br>`dynamic_initializer_for_'CCommonRenderingEffectFactory::s_cpSolidColorEffect''<br>`dynamic_initializer_for_'CCustomKernelEffect::s_rgspCache''<br>`dynamic_initializer_for_'CDropShadow::ShadowIntermediates::s_cpFastShadowBitmap''<br>`dynamic_initializer_for_'CExpressionValueStack::s_emptyValue''<br>`dynamic_initializer_for_'CInteraction::s_DefaultStateLockedInteractions''<br>`dynamic_initializer_for_'CInteraction::s_InteractionHandleTable''<br>`dynamic_initializer_for_'CManipulationContext::s_ParticipatingInteractionMap''<br>`dynamic_initializer_for_'CManipulationManager::s_InputQueue''<br>`dynamic_initializer_for_'CManipulationManager::s_InteractionUpdateQueue''<br>`dynamic_initializer_for_'CPointerDeviceCache::s_deviceCache''<br>`dynamic_initializer_for_'CProjectedShadow::s_cp1xBlurAsset''<br>`dynamic_initializer_for_'CProjectedShadow::s_cp1xBlurNineGrid''<br>`dynamic_initializer_for_'CProjectedShadow::s_cp2xBlurAsset''<br>`dynamic_initializer_for_'CProjectedShadow::s_cp2xBlurNineGrid''<br>`dynamic_initializer_for_'CProjectedShadow::s_cp2xBlurSurface''<br>`dynamic_initializer_for_'CProjectedShadow::s_cpFastShadowIntermediate''<br>`dynamic_initializer_for_'CProjectedShadow::s_cpHalfBlurAsset''<br>`dynamic_initializer_for_'CProjectedShadow::s_cpHalfBlurNineGrid''<br>`dynamic_initializer_for_'CProjectedShadow::s_cpMaskForBlur''<br>`dynamic_initializer_for_'CRectanglesShape::sc_emptyShape''<br>`dynamic_initializer_for_'CSyncLockGroup::g_syncLockGroups''<br>`dynamic_initializer_for_'CWeakResourceReference::s_weakReferenceMap''<br>`dynamic_initializer_for_'Contexts''<br>`dynamic_initializer_for_'g_CursorManager''<br>`dynamic_initializer_for_'g_DDisplayManager''<br>`dynamic_initializer_for_'g_DeviceManager''<br>`dynamic_initializer_for_'g_DisplayManager''<br>`dynamic_initializer_for_'g_commonRenderingShaderCache''<br>`dynamic_initializer_for_'g_csCompositionEngine''<br>wil::details::`dynamic_atexit_destructor_for_'g_threadFailureCallbacks''<br>wil::details::`dynamic_initializer_for_'g_enabledStateManager''<br>wil::details::`dynamic_initializer_for_'g_featureStateManager''<br>wil::details::`dynamic_initializer_for_'g_processLocalData''<br>wil::details::static_lazy<CompositorTracing>::get<br>wil::details::static_lazy<InputTraceLogging>::get</details>|
|paramcount|1|1|
|`address`|18010b888|18010f818|
|sig|int __cdecl atexit(_func_5014 * param_1)|int __cdecl atexit(_func_5014 * param_1)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|False|False|

### atexit Calling Diff


```diff
--- atexit calling
+++ atexit calling
@@ -15,0 +16 @@
+`dynamic_initializer_for_'CExpressionValueStack::s_emptyValue''
```


## WilApi_GetFeatureEnabledState

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|0.44|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|WilApi_GetFeatureEnabledState|WilApi_GetFeatureEnabledState|
|fullname|wil::details::WilApi_GetFeatureEnabledState|wil::details::WilApi_GetFeatureEnabledState|
|`refcount`|7|10|
|length|50|50|
|called|||
|`calling`|wil::details::FeatureImpl<__WilFeatureTraits_Feature_3910072637>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_ClampPositionAfterExpressionProcessing>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_ProjectedShadow>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_Scheduler_VSync_Smoothing>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_Servicing_CompositionSwapchainDisableScanoutOnUnbind>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_SpatialComposition>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_VTest>::GetCurrentFeatureEnabledState|wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_3910072637>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_ClampPositionAfterExpressionProcessing>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_ProjectedShadow>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_Scheduler_VSync_Smoothing>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_Servicing_CompositionSwapchainDisableScanoutOnUnbind>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_SpatialComposition>::GetCurrentFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_VTest>::GetCurrentFeatureEnabledState|
|paramcount|3|3|
|`address`|1800ca5b4|1800b09c4|
|sig|FEATURE_ENABLED_STATE __cdecl WilApi_GetFeatureEnabledState(uint param_1, FEATURE_CHANGE_TIME param_2, int * param_3)|FEATURE_ENABLED_STATE __cdecl WilApi_GetFeatureEnabledState(uint param_1, FEATURE_CHANGE_TIME param_2, int * param_3)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|False|False|

### WilApi_GetFeatureEnabledState Calling Diff


```diff
--- wil::details::WilApi_GetFeatureEnabledState calling
+++ wil::details::WilApi_GetFeatureEnabledState calling
@@ -0,0 +1,2 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCurrentFeatureEnabledState
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCurrentFeatureEnabledState
@@ -1,0 +4 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCurrentFeatureEnabledState
```


## RegisterWithSurfaceManager

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|length,address|
|ratio|1.0|
|i_ratio|0.74|
|m_ratio|0.91|
|b_ratio|0.91|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|RegisterWithSurfaceManager|RegisterWithSurfaceManager|
|fullname|CGdiSpriteBitmap::RegisterWithSurfaceManager|CGdiSpriteBitmap::RegisterWithSurfaceManager|
|refcount|1|1|
|`length`|82|74|
|called|||
|calling|?CreateBitmap@CGdiSpriteBitmap@@AEAAJW4DXGI_FORMAT@@@Z|?CreateBitmap@CGdiSpriteBitmap@@AEAAJW4DXGI_FORMAT@@@Z|
|paramcount|1|1|
|`address`|1800ace48|1800a9b88|
|sig|long __thiscall RegisterWithSurfaceManager(CGdiSpriteBitmap * this)|long __thiscall RegisterWithSurfaceManager(CGdiSpriteBitmap * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|False|False|

## lock_exclusive

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|0.92|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|lock_exclusive|lock_exclusive|
|fullname|wil::srwlock::lock_exclusive|wil::srwlock::lock_exclusive|
|`refcount`|3|6|
|length|45|45|
|called|API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::AcquireSRWLockExclusive|API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::AcquireSRWLockExclusive|
|`calling`|wil::details::FeatureImpl<__WilFeatureTraits_Feature_3910072637>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_Servicing_CompositionSwapchainDisableScanoutOnUnbind>::GetCachedFeatureEnabledState|wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_3910072637>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_Servicing_CompositionSwapchainDisableScanoutOnUnbind>::GetCachedFeatureEnabledState|
|paramcount|1|1|
|`address`|1800ca5dc|1800b09ec|
|sig|unique_any_t<wil::details::unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>_> __thiscall lock_exclusive(srwlock * this)|unique_any_t<wil::details::unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>_> __thiscall lock_exclusive(srwlock * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### lock_exclusive Calling Diff


```diff
--- wil::srwlock::lock_exclusive calling
+++ wil::srwlock::lock_exclusive calling
@@ -0,0 +1,2 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState
@@ -1,0 +4 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState
```


## FlushData

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|length,address|
|ratio|1.0|
|i_ratio|0.76|
|m_ratio|0.9|
|b_ratio|0.9|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|FlushData|FlushData|
|fullname|CDataStreamWriter::FlushData|CDataStreamWriter::FlushData|
|refcount|3|3|
|`length`|45|53|
|called|||
|calling|CChannel::GetCommandBatch<br>CRenderData::CheckPrimitives<br>CRenderData::GetHandles|CChannel::GetCommandBatch<br>CRenderData::CheckPrimitives<br>CRenderData::GetHandles|
|paramcount|1|1|
|`address`|1800a95f8|1800bc594|
|sig|_LIST_ENTRY * __thiscall FlushData(CDataStreamWriter * this)|_LIST_ENTRY * __thiscall FlushData(CDataStreamWriter * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|False|False|

## ~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|0.83|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>|~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>|
|fullname|wil::com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>::~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>|wil::com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>::~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>|
|`refcount`|21|22|
|length|48|48|
|called|||
|`calling`|<details><summary>Expand for full list:<br>CAtlasBitmapResource::Create<br>CCommonRenderingShaderCache::GetCommonOrCubeMapRenderingShader<br>CD2DBitmapCache::GetCachedBitmap<br>CD2DBitmapCache::~CD2DBitmapCache<br>CDDisplayRenderTarget::RenderDirtyRegion<br>CDeviceResourceTable<CD3DPixelShader,CLinkedShader>::FindOrCreateResourceNoRef<br>CDrawingContext::~CDrawingContext<br>CGradientSource::Generate<br>CGradientSource::~CGradientSource<br>CLegacyRenderTarget::RenderDirtyRegion<br>CRenderTargetBitmap::GetD2DBitmapTarget</summary>CRenderTargetBitmap::~CRenderTargetBitmap<br>detail::destruct_range<wil::com_ptr_t<CD3DPixelShader,wil::err_returncode_policy>_></details>|<details><summary>Expand for full list:<br>CAtlasBitmapResource::Create<br>CCommonRenderingShaderCache::GetCommonOrCubeMapRenderingShader<br>CD2DBitmapCache::GetCachedBitmap<br>CD2DBitmapCache::GetCachedTexture<br>CD2DBitmapCache::~CD2DBitmapCache<br>CDDisplayRenderTarget::RenderDirtyRegion<br>CDeviceResourceTable<CD3DPixelShader,CLinkedShader>::FindOrCreateResourceNoRef<br>CDrawingContext::~CDrawingContext<br>CGradientSource::Generate<br>CGradientSource::~CGradientSource<br>CLegacyRenderTarget::RenderDirtyRegion</summary>CRenderTargetBitmap::GetD2DBitmapTarget<br>CRenderTargetBitmap::~CRenderTargetBitmap<br>detail::destruct_range<wil::com_ptr_t<CD3DPixelShader,wil::err_returncode_policy>_></details>|
|paramcount|1|1|
|`address`|1800297e4|180034694|
|sig|void __thiscall ~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>(com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy> * this)|void __thiscall ~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>(com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy> * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### ~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy> Calling Diff


```diff
--- wil::com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>::~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy> calling
+++ wil::com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy>::~com_ptr_t<CAtlasBitmapResource,wil::err_returncode_policy> calling
@@ -3,0 +4 @@
+CD2DBitmapCache::GetCachedTexture
```


## ReleaseInterface<ID2D1Geometry>

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|0.8|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|ReleaseInterface<ID2D1Geometry>|ReleaseInterface<ID2D1Geometry>|
|fullname|ReleaseInterface<ID2D1Geometry>|ReleaseInterface<ID2D1Geometry>|
|`refcount`|10|12|
|length|59|59|
|called|_guard_xfg_dispatch_icall_nop|_guard_xfg_dispatch_icall_nop|
|`calling`|CPrimitiveGroup::CreateHitTestRegions<br>CPrimitiveGroup::ResolveSharedMemoryBuffer<br>CRectanglesShape::CRectanglesShape<br>CRectanglesShape::Reset<br>CRegionShape::EnsureD2DGeometry<br>FUN_180139e7d|CPrimitiveGroup::CreateHitTestRegions<br>CPrimitiveGroup::ResolveSharedMemoryBufferNew<br>CPrimitiveGroup::ResolveSharedMemoryBufferOld<br>CRectanglesShape::CRectanglesShape<br>CRectanglesShape::Reset<br>CRegionShape::EnsureD2DGeometry<br>FUN_1801564e9|
|paramcount|1|1|
|`address`|18003341c|1800927a4|
|sig|void __cdecl ReleaseInterface<ID2D1Geometry>(ID2D1Geometry * * param_1)|void __cdecl ReleaseInterface<ID2D1Geometry>(ID2D1Geometry * * param_1)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|False|False|

### ReleaseInterface<ID2D1Geometry> Calling Diff


```diff
--- ReleaseInterface<ID2D1Geometry> calling
+++ ReleaseInterface<ID2D1Geometry> calling
@@ -2 +2,2 @@
-CPrimitiveGroup::ResolveSharedMemoryBuffer
+CPrimitiveGroup::ResolveSharedMemoryBufferNew
+CPrimitiveGroup::ResolveSharedMemoryBufferOld
@@ -6 +7 @@
-FUN_180139e7d
+FUN_1801564e9
```


## push_back

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|0.86|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|push_back|push_back|
|fullname|wil::details_abi::heap_buffer::push_back|wil::details_abi::heap_buffer::push_back|
|`refcount`|12|15|
|length|94|94|
|called|memcpy_s<br>wil::details_abi::heap_buffer::ensure|memcpy_s<br>wil::details_abi::heap_buffer::ensure|
|`calling`|<details><summary>Expand for full list:<br>wil::details::EnabledStateManager::QueueBackgroundUsageReporting<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_3910072637>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_ClampPositionAfterExpressionProcessing>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_ProjectedShadow>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_Scheduler_VSync_Smoothing>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_Servicing_CompositionSwapchainDisableScanoutOnUnbind>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_SpatialComposition>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_VTest>::GetCachedFeatureEnabledState<br>wil::details::FeatureStateManager::QueueBackgroundSRUMUsageReporting<br>wil::details::IsFeatureConfigured<br>wil::details_abi::SubscriptionList::SubscribeUnderLock</summary></details>|<details><summary>Expand for full list:<br>wil::details::EnabledStateManager::QueueBackgroundUsageReporting<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_3910072637>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_ClampPositionAfterExpressionProcessing>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_ProjectedShadow>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_Scheduler_VSync_Smoothing>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_Servicing_CompositionSwapchainDisableScanoutOnUnbind>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_SpatialComposition>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_VTest>::GetCachedFeatureEnabledState</summary>wil::details::FeatureStateManager::QueueBackgroundSRUMUsageReporting<br>wil::details::IsFeatureConfigured<br>wil::details_abi::SubscriptionList::SubscribeUnderLock</details>|
|paramcount|3|3|
|`address`|1800f6a14|1800fa5c4|
|sig|bool __thiscall push_back(heap_buffer * this, void * param_1, __uint64 param_2)|bool __thiscall push_back(heap_buffer * this, void * param_1, __uint64 param_2)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### push_back Calling Diff


```diff
--- wil::details_abi::heap_buffer::push_back calling
+++ wil::details_abi::heap_buffer::push_back calling
@@ -1,0 +2,2 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState
@@ -2,0 +5 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState
```


## ~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|0.75|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>|~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>|
|fullname|wil::details::unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>::~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>|wil::details::unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>::~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>|
|`refcount`|3|6|
|length|29|29|
|called|API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::ReleaseSRWLockExclusive|API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::ReleaseSRWLockExclusive|
|`calling`|wil::details::FeatureImpl<__WilFeatureTraits_Feature_3910072637>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_Servicing_CompositionSwapchainDisableScanoutOnUnbind>::GetCachedFeatureEnabledState|wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_3910072637>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState<br>wil::details::FeatureImpl<__WilFeatureTraits_Feature_Servicing_CompositionSwapchainDisableScanoutOnUnbind>::GetCachedFeatureEnabledState|
|paramcount|1|1|
|`address`|1800ca140|1800b060c|
|sig|void __thiscall ~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>(unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_> * this)|void __thiscall ~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>(unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_> * this)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### ~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_> Calling Diff


```diff
--- wil::details::unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>::~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_> calling
+++ wil::details::unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_>::~unique_storage<wil::details::resource_policy<_RTL_SRWLOCK*___ptr64,void_(__cdecl*)(_RTL_SRWLOCK*___ptr64),&void___cdecl_ReleaseSRWLockExclusive(struct__RTL_SRWLOCK*___ptr64),wistd::integral_constant<unsigned___int64,1>,_RTL_SRWLOCK*___ptr64,_RTL_SRWLOCK*___ptr64,0,std::nullptr_t>_> calling
@@ -0,0 +1,2 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_1849091389>::GetCachedFeatureEnabledState
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_2986246461>::GetCachedFeatureEnabledState
@@ -1,0 +4 @@
+wil::details::FeatureImpl<__WilFeatureTraits_Feature_704565565>::GetCachedFeatureEnabledState
```


## Free

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|0.8|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|Free|Free|
|fullname|DefaultHeap::Free|DefaultHeap::Free|
|`refcount`|831|832|
|length|51|51|
|called|API-MS-WIN-CORE-HEAP-L1-1-0.DLL::GetProcessHeap<br>API-MS-WIN-CORE-HEAP-L1-1-0.DLL::HeapFree|API-MS-WIN-CORE-HEAP-L1-1-0.DLL::GetProcessHeap<br>API-MS-WIN-CORE-HEAP-L1-1-0.DLL::HeapFree|
|`calling`|<details><summary>Expand for full list:<br>?GetWorldTransform@CVisual@@QEBAJAEBVCVisualTreePath@@W4WalkReason@@PEAVCMILMatrix@@@Z<br>AppendCustomSamplerShaderBody<br>CAffineTransform2DEffect::`vector_deleting_destructor'<br>CAnimation::`vector_deleting_destructor'<br>CAnimationController::`vector_deleting_destructor'<br>CAnimationLoggingManager::`vector_deleting_destructor'<br>CAnimationTrigger::`scalar_deleting_destructor'<br>CArithmeticCompositeEffect::`vector_deleting_destructor'<br>CArray<CBufferedOutputPointer*___ptr64,CArrayEqualHelper<CBufferedOutputPointer*___ptr64>_>::RemoveAll<br>CArray<CInteraction*___ptr64,CArrayEqualHelper<CInteraction*___ptr64>_>::RemoveAll<br>CAtlasTexture::DestroyResources</summary>CAtlasTexture::Initialize<br>CAtlasTexture::~CAtlasTexture<br>CAtlasedRectsGroup::`scalar_deleting_destructor'<br>CAtlasedRectsMesh::`scalar_deleting_destructor'<br>CBackdropVisualImage::EnsureAncestorList<br>CBackdropVisualImage::LogEtwEvent<br>CBackdropVisualImage::`vector_deleting_destructor'<br>CBackdropVisualImage::~CBackdropVisualImage<br>CBackdropVisualImageKey::GetDebugString<br>CBaseAnimation::`vector_deleting_destructor'<br>CBaseExpression::`scalar_deleting_destructor'<br>CBaseExpression::~CBaseExpression<br>CBitmapLock::Unlock<br>CBitmapLockUnaligned::HrInit<br>CBitmapLockUnaligned::UnlockUnaligned<br>CBitmapLockUnaligned::`vector_deleting_destructor'<br>CBitmapResource::`vector_deleting_destructor'<br>CBlurredBackdropCache::~CBlurredBackdropCache<br>CBlurredWallpaperBackdropBrush::`scalar_deleting_destructor'<br>CBrushDrawListGenerator::GenerateDrawListPrimitive<br>CBrushRenderingEffect::`scalar_deleting_destructor'<br>CBrushRenderingGraph::RenderSubgraphs<br>CBspNode::`vector_deleting_destructor'<br>CBspPreComputeHelper::CleanupAfterWalking<br>CCachedVisualImage::`scalar_deleting_destructor'<br>CCaptureController::`scalar_deleting_destructor'<br>CCaptureRenderTarget::`vector_deleting_destructor'<br>CChannel::PeekNextMessage<br>CChannel::Release<br>CChannel::~CChannel<br>CChannelContext::PostMessageToChannel<br>CChannelContext::SetApplicationId<br>CChannelContext::SetOwnerProcessName<br>CChannelContext::`scalar_deleting_destructor'<br>CChannelContext::~CChannelContext<br>CChannelTable::~CChannelTable<br>CClipBrush::`scalar_deleting_destructor'<br>CColorBrush::`scalar_deleting_destructor'<br>CColorDrawListBrush::`scalar_deleting_destructor'<br>CColorGradientStop::`vector_deleting_destructor'<br>CColorMatrixEffect::`vector_deleting_destructor'<br>CColorTransformResource::`vector_deleting_destructor'<br>CCombinedGeometry::`scalar_deleting_destructor'<br>CCommandBatch::`scalar_deleting_destructor'<br>CCommandBuffer::`scalar_deleting_destructor'<br>CCommonRegistryData::ParseGpuIdListKey<br>CCommonRenderingEffect::`vector_deleting_destructor'<br>CCommonRenderingShaderCache::~CCommonRenderingShaderCache<br>CCompiledEffectCache::`scalar_deleting_destructor'<br>CCompiledEffectTemplate::`vector_deleting_destructor'<br>CComponentTransform3D::`scalar_deleting_destructor'<br>CCompositingShaderCache::`scalar_deleting_destructor'<br>CComposition::CleanTrees<br>CComposition::Initialize<br>CComposition::`scalar_deleting_destructor'<br>CComposition::~CComposition<br>CCompositionAmbientLight::`scalar_deleting_destructor'<br>CCompositionCubeMap::`vector_deleting_destructor'<br>CCompositionDistantLight::`vector_deleting_destructor'<br>CCompositionEnvironmentLight::`vector_deleting_destructor'<br>CCompositionGlyphRun::`scalar_deleting_destructor'<br>CCompositionLight::`vector_deleting_destructor'<br>CCompositionMipmapSurface::`vector_deleting_destructor'<br>CCompositionPointLight::`scalar_deleting_destructor'<br>CCompositionSkyBoxBrush::`vector_deleting_destructor'<br>CCompositionSpotLight::`vector_deleting_destructor'<br>CCompositionSurfaceBitmap::`vector_deleting_destructor'<br>CCompositionSurfaceInfo::~CCompositionSurfaceInfo<br>CCompositionSwapchainStatistics::`scalar_deleting_destructor'<br>CCompositionTextLine::`vector_deleting_destructor'<br>CConditionalExpression::`scalar_deleting_destructor'<br>CConnection::RunCompositionThread<br>CConnection::`vector_deleting_destructor'<br>CContainerVectorShape::`vector_deleting_destructor'<br>CContent::`vector_deleting_destructor'<br>CCpuClipAntialiasDrawListEntry::`vector_deleting_destructor'<br>CCpuClipAntialiasSink::Initialize<br>CCpuClipAntialiasSinkContext::FlushDrawList<br>CCpuClipAntialiasSinkContext::ProcessRenderCommands_OffscreenRenderPass<br>CCpuClipAntialiasSinkContext::SinkEntry::`scalar_deleting_destructor'<br>CCpuClipAntialiasSinkContext::`vector_deleting_destructor'<br>CCrossContainerGuestReadWriteSharedSection::`vector_deleting_destructor'<br>CCursorState::`scalar_deleting_destructor'<br>CCursorVisual::`vector_deleting_destructor'<br>CCustomKernelEffect::`vector_deleting_destructor'<br>CD2DBitmapCache::GetBitmapInternal<br>CD2DLayer::`vector_deleting_destructor'<br>CD2DSharedBuffer::CreateFromHeap<br>CD2DSharedBuffer::`scalar_deleting_destructor'<br>CD2DSharedBuffer::~CD2DSharedBuffer<br>CD3DDevice::PinResources<br>CD3DDevice::`vector_deleting_destructor'<br>CD3DDevice::~CD3DDevice<br>CD3DTexture::~CD3DTexture<br>CDDARenderTarget::`scalar_deleting_destructor'<br>CDDisplayRenderTarget::`vector_deleting_destructor'<br>CDataSourceReader::`scalar_deleting_destructor'<br>CDataStreamWriter::EnsureItem<br>CDataStreamWriter::EnsureSize<br>CDataStreamWriter::FreeBlocks<br>CDataStreamWriter::Reset<br>CDebugVisualImage::LockAndRead<br>CDebugVisualImage::`vector_deleting_destructor'<br>CDesktopTree::`vector_deleting_destructor'<br>CDesktopTree::~CDesktopTree<br>CDeviceResourceTable<CD2DEffect,CFilterEffect>::~CDeviceResourceTable<CD2DEffect,CFilterEffect><br>CDeviceResourceTable<CD2DGenericInk,CGenericInk>::~CDeviceResourceTable<CD2DGenericInk,CGenericInk><br>CDeviceResourceTable<CD3DConstantBuffer,CRenderingTechnique>::~CDeviceResourceTable<CD3DConstantBuffer,CRenderingTechnique><br>CDeviceResourceTable<CD3DPixelShader,CLinkedShader>::~CDeviceResourceTable<CD3DPixelShader,CLinkedShader><br>CDrawListCache::Update<br>CDrawListCache::`vector_deleting_destructor'<br>CDrawListEntryBuilder::AppendHWGeometry<br>CDrawListEntryBuilder::ExtractBuiltHWPrimitiveEntry<br>CDrawListEntryBuilder::InsertHW<br>CDrawListEntryBuilder::InsertWorker<br>CDrawingContext::DrawAsOverlay<br>CDrawingContext::DrawSolidRectangle<br>CDrawingContext::DrawVisualTree<br>CDrawingContext::FillShapeWithBitmapRealization<br>CDrawingContext::FillShapeWithSolidColor<br>CDrawingContext::PopAllStacks<br>CDrawingContext::PreSubgraph<br>CDrawingContext::PushLocalSpaceClipAndAlphaInternal<br>CDrawingContext::PushRenderOptionsInternal<br>CDrawingContext::PushTransformInternal<br>CDrawingContext::ValidateBVIEffectInputForRender<br>CDrawingContext::~CDrawingContext<br>CDropShadow::`vector_deleting_destructor'<br>CEffectBrush::`vector_deleting_destructor'<br>CEffectCompilationService::`vector_deleting_destructor'<br>CEffectCompilationTask::Release<br>CEffectGroup::`vector_deleting_destructor'<br>CEllipseGeometry::`vector_deleting_destructor'<br>CEmptyRegionDrawListBrush::`vector_deleting_destructor'<br>CExpression::`scalar_deleting_destructor'<br>CExpression::~CExpression<br>CExpressionManager::`scalar_deleting_destructor'<br>CExpressionValueStack::`scalar_deleting_destructor'<br>CExternalEffectGraph::CGraphRenderingContext::ExecuteShaders<br>CExternalEffectGraph::CGraphRenderingContext::~CGraphRenderingContext<br>CExternalEffectGraph::~CExternalEffectGraph<br>CFailFastInScope::CaptureDxgkRingBuffer<br>CFilterEffect::`vector_deleting_destructor'<br>CFlipExSwapchainStatistics::`scalar_deleting_destructor'<br>CFloatResource::`vector_deleting_destructor'<br>CFloodEffect::`scalar_deleting_destructor'<br>CFormatConverter::`vector_deleting_destructor'<br>CFormatConverter::~CFormatConverter<br>CGdiSpriteBitmap::`scalar_deleting_destructor'<br>CGenericInk::`vector_deleting_destructor'<br>CGenericTableMap<ObjectPropertyReference,CTargetMapEntry>::FreeTableData<br>CGenericTableMap<unsigned_int,CAnimationSourceMapEntry>::FindElement<br>CGeometry2D::FreeCaches<br>CGeometry2D::`vector_deleting_destructor'<br>CGeometry2DGroup::`scalar_deleting_destructor'<br>CGeometryGroup::ProcessAppend<br>CGeometryGroup::UnRegisterNotifiers<br>CGeometryGroup::`scalar_deleting_destructor'<br>CGeometryOnlyDrawListBrush::`scalar_deleting_destructor'<br>CGlobalComposition::`scalar_deleting_destructor'<br>CGlobalCompositionSurfaceInfo::CBindInfo::~CBindInfo<br>CGlobalCompositionSurfaceInfo::`scalar_deleting_destructor'<br>CGlobalDrawingContext::DrawMesh2D<br>CGlobalDrawingContext::`scalar_deleting_destructor'<br>CGlobalInputManager::`scalar_deleting_destructor'<br>CGlobalManipulationManager::`scalar_deleting_destructor'<br>CGlobalSurfaceManager::`vector_deleting_destructor'<br>CGradientSource::Generate<br>CGradientSource::~CGradientSource<br>CGraphWalker<CVectorShape>::EndWalk<br>CGraphWalker<CVisual>::EndWalk<br>CHWDrawListEntry::`vector_deleting_destructor'<br>CHitTestContext::PreSubgraph<br>CHitTestContext::~CHitTestContext<br>CHolographicComposition::`scalar_deleting_destructor'<br>CHolographicDisplay::`vector_deleting_destructor'<br>CHolographicExclusiveMode::`scalar_deleting_destructor'<br>CHolographicExclusiveView::`vector_deleting_destructor'<br>CHolographicFrameProcessor::`scalar_deleting_destructor'<br>CHolographicInteropTarget::`vector_deleting_destructor'<br>CHolographicInteropTexture::`vector_deleting_destructor'<br>CHolographicInteropTexture::~CHolographicInteropTexture<br>CHolographicManager::`scalar_deleting_destructor'<br>CHolographicViewer::`scalar_deleting_destructor'<br>CHoverPointerSource::`scalar_deleting_destructor'<br>CHueRotationEffect::`scalar_deleting_destructor'<br>CImageLegacyMilBrush::`vector_deleting_destructor'<br>CIndirectSwapchainRenderTarget::`vector_deleting_destructor'<br>CInjectionAnimation::`scalar_deleting_destructor'<br>CInjectionAnimation::~CInjectionAnimation<br>CInk::`scalar_deleting_destructor'<br>CInteraction::`vector_deleting_destructor'<br>CInteractionContextWrapper::BoundBufferedOutput<br>CInteractionContextWrapper::ResetBufferedOutput<br>CInteractionContextWrapper::`vector_deleting_destructor'<br>CInteractionRoot::`scalar_deleting_destructor'<br>CInteractionTracker::`scalar_deleting_destructor'<br>CInteractionTrackerBindingManager::`scalar_deleting_destructor'<br>CInteractionTrackerPositionAnimation::`scalar_deleting_destructor'<br>CInteractionTrackerScaleAnimation::`scalar_deleting_destructor'<br>CInternalMilCmdConnection::FreeBatchPool<br>CInternalMilCmdConnection::`vector_deleting_destructor'<br>CKernelTransport::`scalar_deleting_destructor'<br>CKeyframeAnimation::Initialize<br>CKeyframeAnimation::SetKeyFrameData<br>CKeyframeAnimation::`vector_deleting_destructor'<br>CKeyframeAnimation::~CKeyframeAnimation<br>CLayerVisual::ClearTreeEffect<br>CLayerVisual::`vector_deleting_destructor'<br>CLegacyAnimationTrigger::`vector_deleting_destructor'<br>CLegacyRenderTarget::`vector_deleting_destructor'<br>CLegacyStereoRenderTarget::`scalar_deleting_destructor'<br>CLegacySurfaceManager::ProcessUnclaimedTokens<br>CLegacySurfaceManager::~CLegacySurfaceManager<br>CLegacySwapChain::AddComputeScribbleInvalidRects<br>CLegacySwapChain::NotifyRenderedRect<br>CLightStack::RetrieveCurrentLightBufferForContextNoRef<br>CLineGeometry::`scalar_deleting_destructor'<br>CLinearGradientBrush::`scalar_deleting_destructor'<br>CLinearGradientLegacyMilBrush::`vector_deleting_destructor'<br>CLinearTransferEffect::`vector_deleting_destructor'<br>CMagnifierRenderTarget::`vector_deleting_destructor'<br>CManipulation::`scalar_deleting_destructor'<br>CManipulationContext::`vector_deleting_destructor'<br>CManipulationContext::~CManipulationContext<br>CManipulationFrame::`scalar_deleting_destructor'<br>CManipulationManager::NotifyUpdateConfiguration<br>CManipulationManager::OnInteractionUpdate<br>CManipulationManager::~CManipulationManager<br>CManipulationTransform::`vector_deleting_destructor'<br>CMap<unsigned_int,InternalFilterInput*___ptr64,CMapEqualHelper<unsigned_int,InternalFilterInput*___ptr64>_>::RemoveAll<br>CMaskBrush::`scalar_deleting_destructor'<br>CMatrixResource::`scalar_deleting_destructor'<br>CMatrixTransform3D::`vector_deleting_destructor'<br>CMatrixTransform::`scalar_deleting_destructor'<br>CMegaRect::PrepareData<br>CMesh2DEffect::SetVertices<br>CMesh2DEffect::~CMesh2DEffect<br>CMeshCacheManager::TryGetMeshAAOffsetsForRoundedRectangle<br>CMeshGeometry2D::`scalar_deleting_destructor'<br>CMessageConversationHost::`scalar_deleting_destructor'<br>CMultiPrimitiveDrawListBrush::`scalar_deleting_destructor'<br>CNaturalAnimation::`vector_deleting_destructor'<br>CNineGridBrush::`vector_deleting_destructor'<br>CNineGridDrawListBrush::EnumerateBrushes<br>CNineGridDrawListBrush::Initialize<br>CNineGridDrawListBrush::`vector_deleting_destructor'<br>CNotificationResource::`vector_deleting_destructor'<br>CObjectCache::Destroy<br>COcclusionContext::DrawClippedImage<br>COcclusionContext::PreSubgraph<br>COcclusionContext::~COcclusionContext<br>COffScreenRenderTarget::`scalar_deleting_destructor'<br>COverlayContext::CheckMultiPlaneOverlaySupport<br>COverlayContext::ComputeOverlayConfigurationForAdapter<br>COverlayContext::InitCheckCandidatesList<br>COverlayContext::PresentMPO<br>COverlayContext::PushCandidates<br>COverlayContext::TrimCheckCandidatesList<br>COverlayContext::~COverlayContext<br>CParticleAttractor::`scalar_deleting_destructor'<br>CParticleBaseBehavior::`vector_deleting_destructor'<br>CParticleBehaviors::`scalar_deleting_destructor'<br>CParticleEmitterVisual::`scalar_deleting_destructor'<br>CParticleGenerator::`scalar_deleting_destructor'<br>CParticleScalarBehavior::`vector_deleting_destructor'<br>CParticleVector2Behavior::`scalar_deleting_destructor'<br>CParticleVector3Behavior::`scalar_deleting_destructor'<br>CParticleVector4Behavior::`vector_deleting_destructor'<br>CPartitionVerticalBlankScheduler::`vector_deleting_destructor'<br>CPathGeometry::`vector_deleting_destructor'<br>CPointResource::`vector_deleting_destructor'<br>CPolygon::`scalar_deleting_destructor'<br>CPolygonBuilder::`vector_deleting_destructor'<br>CPreComputeContext::AddVisualToBVIPreRenderList<br>CPreComputeContext::CPreWalkVisual::CalcTransform<br>CPreComputeContext::CPreWalkVisual::UpdateTransformChildBounds<br>CPreComputeContext::PreCompute<br>CPreComputeContext::ProcessPostSubgraphBackdropInput<br>CPreComputeContext::ProcessPostSubgraphWindowBackgroundTreatment<br>CPreComputeContext::SubTreeContext::~SubTreeContext<br>CPreComputeContext::UpdateBVIForVisual<br>CPreComputeContext::~CPreComputeContext<br>CPrimitiveColor::`vector_deleting_destructor'<br>CPrimitiveGroup::`scalar_deleting_destructor'<br>CPrimitiveGroupDrawListBrush::`scalar_deleting_destructor'<br>CProcessAttribution::`vector_deleting_destructor'<br>CProcessAttributionManager::Observer::`scalar_deleting_destructor'<br>CProjectedShadow::`scalar_deleting_destructor'<br>CProjectedShadow::~CProjectedShadow<br>CProjectedShadowCaster::`vector_deleting_destructor'<br>CProjectedShadowReceiver::`scalar_deleting_destructor'<br>CProjectedShadowRenderingEffect::`vector_deleting_destructor'<br>CProjectedShadowScene::`vector_deleting_destructor'<br>CPropertyChangeResource::`scalar_deleting_destructor'<br>CPropertySet::SetProperty<br>CPropertySet::`vector_deleting_destructor'<br>CProxyGeometry::`vector_deleting_destructor'<br>CPtrArrayBase::Clear<br>CPtrArrayBase::InsertAt<br>CPtrArrayBase::RemoveAt<br>CRadialGradientBrush::`vector_deleting_destructor'<br>CRectResource::`vector_deleting_destructor'<br>CRectangleGeometry::GetShapeDataCore<br>CRectangleGeometry::`scalar_deleting_destructor'<br>CRectanglesShape::`vector_deleting_destructor'<br>CRedirectedGDISurface::`scalar_deleting_destructor'<br>CRedirectedVisualContent::`scalar_deleting_destructor'<br>CRegion::CreateHRGN<br>CRegion::SetHRGN<br>CRegion::TryAddRectangles<br>CRegionGeometry::`vector_deleting_destructor'<br>CRemoteAppRenderTarget::`scalar_deleting_destructor'<br>CRemoteRenderTarget::`vector_deleting_destructor'<br>CRenderData::`vector_deleting_destructor'<br>CRenderData::~CRenderData<br>CRenderDataBuilder::Release<br>CRenderTargetManager::~CRenderTargetManager<br>CRenderingTechniqueFragment::CreateEffectShaderBody<br>CRenderingTechniqueFragment::CreateMaskShaderBody<br>CRenderingTechniqueFragment::NeedsToBeBrokenUp<br>CRenderingTechniqueFragment::RemoveLargestInputFragment<br>CRenderingTechniqueFragment::~CRenderingTechniqueFragment<br>CResource::UnmarshalResourceArray<br>CResource::`vector_deleting_destructor'<br>CResource::~CResource<br>CResourceTable::`scalar_deleting_destructor'<br>CResourceTable::~CResourceTable<br>CRotateTransform3D::`vector_deleting_destructor'<br>CRotateTransform::`vector_deleting_destructor'<br>CRoundedRectangleShape::`scalar_deleting_destructor'<br>CScalar::`scalar_deleting_destructor'<br>CScaleTransform3D::`vector_deleting_destructor'<br>CScaleTransform::`vector_deleting_destructor'<br>CScanPipeline::InitializeForFormatConversion<br>CScanPipeline::~CScanPipeline<br>CSceneComponent::`vector_deleting_destructor'<br>CSceneMaterial::`vector_deleting_destructor'<br>CSceneMesh::`scalar_deleting_destructor'<br>CSceneMeshRendererComponent::`scalar_deleting_destructor'<br>CSceneMetallicRoughnessMaterial::`vector_deleting_destructor'<br>CSceneModelTransform::`scalar_deleting_destructor'<br>CSceneNode::`vector_deleting_destructor'<br>CSceneSurfaceMaterialInput::`scalar_deleting_destructor'<br>CSceneVisual::`vector_deleting_destructor'<br>CSceneWorld::`vector_deleting_destructor'<br>CScopedClipStack::Clear<br>CScopedClipStack::PushCpuClipToScope<br>CScopedClipStack::~CScopedClipStack<br>CScrollAnimation::`scalar_deleting_destructor'<br>CScrollKeyframeAnimation::`scalar_deleting_destructor'<br>CScrollPositionKeyframeAnimation::`scalar_deleting_destructor'<br>CScrollScaleKeyframeAnimation::`scalar_deleting_destructor'<br>CSecondarySysmemBitmap::Initialize<br>CSecondarySysmemBitmap::~CSecondarySysmemBitmap<br>CShape::BuildFromRectFs<br>CShape::CopyShape<br>CShape::TryOptimizedCombinePaths<br>CShapeDrawingContext::~CShapeDrawingContext<br>CShapeTree::DrawShapes<br>CShapeTree::GetBounds<br>CShapeTreeIterator::Walk<CShapeDrawingContext><br>CSharedSection::`scalar_deleting_destructor'<br>CSharedSectionBase::`scalar_deleting_destructor'<br>CSharedSectionWrapper::`vector_deleting_destructor'<br>CSnapshot::`scalar_deleting_destructor'<br>CSolidColorLegacyMilBrush::`scalar_deleting_destructor'<br>CSparseStorage::~CSparseStorage<br>CSpatialRemarshaler::`scalar_deleting_destructor'<br>CSpectreCallbackRenderer::`vector_deleting_destructor'<br>CSpriteVectorShape::`vector_deleting_destructor'<br>CSpriteVisual::`vector_deleting_destructor'<br>CSubVisualTree::`vector_deleting_destructor'<br>CSuperWetInkVisual::`vector_deleting_destructor'<br>CSuperWetSource::EnsureVailPerFrameDataHostReaderQueue<br>CSuperWetSource::~CSuperWetSource<br>CSurfaceBrush::`vector_deleting_destructor'<br>CSurfaceDrawListBrush::`scalar_deleting_destructor'<br>CSyncLockGroup::`scalar_deleting_destructor'<br>CSynchronousSuperWetInk::`vector_deleting_destructor'<br>CSystemMemoryBitmap::HrInit<br>CSystemMemoryBitmap::HrInit<br>CSystemMemoryBitmap::~CSystemMemoryBitmap<br>CTableTransferEffect::`vector_deleting_destructor'<br>CTextVisual::`scalar_deleting_destructor'<br>CTextVisualContent::`scalar_deleting_destructor'<br>CTransform3DGroup::`scalar_deleting_destructor'<br>CTransform::`scalar_deleting_destructor'<br>CTransformGroup::`vector_deleting_destructor'<br>CTranslateTransform::`scalar_deleting_destructor'<br>CTransportCmdPacker::AllocateNotification<br>CTurbulenceEffect::`scalar_deleting_destructor'<br>CViewBox::`vector_deleting_destructor'<br>CVirtualMonitorCaptureRenderTarget::`scalar_deleting_destructor'<br>CVisual::AppendDirtyRegionVisualizationRects<br>CVisual::RemoveAllChildren<br>CVisual::RenderContent<br>CVisual::`scalar_deleting_destructor'<br>CVisual::~CVisual<br>CVisualBitmap::`scalar_deleting_destructor'<br>CVisualCapture::`vector_deleting_destructor'<br>CVisualGroup::`scalar_deleting_destructor'<br>CVisualReferenceController::`scalar_deleting_destructor'<br>CVisualSurface::`vector_deleting_destructor'<br>CVisualSurface::~CVisualSurface<br>CVisualTree::`scalar_deleting_destructor'<br>CVisualTree::~CVisualTree<br>CVisualTreeIterator::WalkSubtree<CDrawingContext><br>CVisualTreeIterator::WalkSubtree<COcclusionContext><br>CVisualTreeIterator::WalkSubtree<CPreComputeContext><br>CVisualTreePath::AppendAncestorListAboveInnermostVisualTree<br>CVisualTreePath::GetDebugString<br>CVisualTreePath::`scalar_deleting_destructor'<br>CVisualTreePath::~CVisualTreePath<br>CWARPDrawListEntry::`vector_deleting_destructor'<br>CWICBitmapWrapper::Lock<br>CWatermarkStack<CBspNode*___ptr64,64,2,10>::Push<br>CWatermarkStack<CComposition::HeatMapOptions,2,2,2>::Push<br>CWatermarkStack<CDrawingContext::StackBackfaceVisibilityEntry,64,2,10>::Push<br>CWatermarkStack<CDrawingContext::StackStateEntry,64,2,10>::Push<br>CWatermarkStack<CGraphWalker<CBspNode>::CFrame,64,2,10>::Optimize<br>CWatermarkStack<CGraphWalker<CBspNode>::CFrame,64,2,10>::Push<br>CWatermarkStack<CGraphWalker<CVisual>::CFrame,64,2,10>::Push<br>CWatermarkStack<CMILMatrix,8,2,8>::Optimize<br>CWatermarkStack<CMILMatrix,8,2,8>::Push<br>CWatermarkStack<COcclusionContext::StackStateType,64,2,10>::Push<br>CWatermarkStack<CVisual*___ptr64,64,2,10>::Push<br>CWatermarkStack<D2D_VECTOR_2F,2,2,10>::Optimize<br>CWatermarkStack<D2D_VECTOR_2F,2,2,10>::Push<br>CWatermarkStack<MilBackfaceVisibility::Enum,64,2,10>::Push<br>CWatermarkStack<MilBitmapBorderMode::Enum,64,2,10>::Push<br>CWatermarkStack<MilBitmapInterpolationMode::Enum,64,2,10>::Push<br>CWatermarkStack<MilCompositingMode::Enum,64,2,10>::Push<br>CWatermarkStack<MilDepthMode::Enum,64,2,10>::Push<br>CWatermarkStack<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,64,2,10>::Optimize<br>CWatermarkStack<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,64,2,10>::Push<br>CWatermarkStack<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,8,2,8>::Push<br>CWatermarkStack<bool,64,2,10>::Optimize<br>CWatermarkStack<bool,64,2,10>::Push<br>CWatermarkStack<float,2,2,10>::Optimize<br>CWatermarkStack<float,2,2,10>::Push<br>CWatermarkStack<float,64,2,10>::Push<br>CWatermarkStack<unsigned_int,64,2,10>::Optimize<br>CWatermarkStack<unsigned_int,64,2,10>::Push<br>CWatermarkStack<void*___ptr64,2,2,10>::Optimize<br>CWatermarkStack<void*___ptr64,2,2,10>::Push<br>CWindowBackgroundTreatment::GenerateBitmapRealizationForEffectInput<br>CWindowBackgroundTreatment::`scalar_deleting_destructor'<br>CWindowNode::`vector_deleting_destructor'<br>CYCbCrSurface::`scalar_deleting_destructor'<br>CaptureBitsResponse::`vector_deleting_destructor'<br>ClipPlaneIterator::ClipToPolygon<br>CoordMap::ComputeTexPositions<detail::vector_facade<float,detail::buffer_impl<float,6,1,detail::liberal_expansion_policy>_>,detail::vector_facade<float,class_detail::buffer_impl<float,6,1,class_detail::liberal_expansion_policy>_>_><br>CoordMap::~CoordMap<br>DataProviderManager::`vector_deleting_destructor'<br>DataProviderProxy::`scalar_deleting_destructor'<br>DataProviderRegistrarConnection::`scalar_deleting_destructor'<br>DataProviderRegistrarPrincipal::`scalar_deleting_destructor'<br>DataSourceProxy::`vector_deleting_destructor'<br>DiagnosticCallbacksManager::`scalar_deleting_destructor'<br>DwmDbg::Backdrops::LogBrushEtwEvent<br>DwmDbg::Backdrops::LogTreeWalkEtwEvent<br>DwmDbg::DbgString::DbgString<br>DwmDbg::Print<br>DynArrayImpl<1>::ShrinkToSize<br>DynArrayImpl<1>::~DynArrayImpl<1><br>FUN_180058ed8<br>FUN_1800643a2<br>FUN_18006461f<br>FUN_18007f3d1<br>FUN_1800b1b85<br>FUN_180118f5a<br>FUN_18012c90c<br>FUN_180131ee2<br>FUN_180133535<br>FUN_180134dfa<br>FUN_18013adcb<br>FUN_18013bf37<br>FUN_18013cbc6<br>FUN_18013db49<br>FUN_18013dcb8<br>FUN_18013e297<br>FUN_18013e65a<br>FUN_1801404b2<br>FUN_18014165d<br>FUN_180142187<br>FUN_180142943<br>FUN_180142d4e<br>FUN_180148084<br>FUN_18014ae92<br>FUN_18014c1b9<br>FUN_18014e644<br>FUN_18014f420<br>FUN_18014f6f6<br>FUN_18014faa8<br>FUN_1801657fe<br>FUN_180185cfc<br>FastRegion::CRegion::FreeMemory<br>FastRegion::CRegion::Intersect<br>FastRegion::CRegion::Subtract<br>FastRegion::CRegion::Union<br>FastRegion::Internal::CWorkBuffer::~CWorkBuffer<br>HANDLE_TABLE::`vector_deleting_destructor'<br>HrgnToRgnData<br>InitializeShaderLinkingInput<br>LinearInterpolation::`scalar_deleting_destructor'<br>MCCollections::~MCCollections<br>MagnifierCaptureBitsResponse::`scalar_deleting_destructor'<br>Mesh::GenerateGeometry<br>PrimitiveStorage::CCachableStorage<CDrawListPrimitive4,16>::`scalar_deleting_destructor'<br>PrimitiveStorage::CCachableStorage<CDrawListPrimitive8,16>::`scalar_deleting_destructor'<br>SAFE_DELETE<CInputSinkStruct><br>SAFE_DELETE_ARRAY<unsigned_char><br>VisualCaptureBitsResponse::`vector_deleting_destructor'<br>XWinRT::XHashMap<_GUID,XWinRT::detail::GitStorageType<IInspectable>,Windows::Foundation::Collections::Internal::HashMap<_GUID,IInspectable*___ptr64,Windows::Foundation::Collections::Internal::DefaultHash<_GUID>,Windows::Foundation::Collections::Internal::DefaultEqualityPredicate<_GUID>,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<_GUID>,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<IInspectable*___ptr64>,Windows::Foundation::Collections::Internal::HashMapOptions<_GUID,IInspectable*___ptr64,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<_GUID>,0,1,0>_>::KeyTraits,XWinRT::CElementTraits<XWinRT::detail::GitStorageType<IInspectable>_>_>::InitHashTable<br>XWinRT::XHashMap<_GUID,XWinRT::detail::GitStorageType<IInspectable>,Windows::Foundation::Collections::Internal::HashMap<_GUID,IInspectable*___ptr64,Windows::Foundation::Collections::Internal::DefaultHash<_GUID>,Windows::Foundation::Collections::Internal::DefaultEqualityPredicate<_GUID>,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<_GUID>,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<IInspectable*___ptr64>,Windows::Foundation::Collections::Internal::HashMapOptions<_GUID,IInspectable*___ptr64,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<_GUID>,0,1,0>_>::KeyTraits,XWinRT::CElementTraits<XWinRT::detail::GitStorageType<IInspectable>_>_>::Rehash<br>XWinRT::XHashMap<_GUID,XWinRT::detail::GitStorageType<IInspectable>,Windows::Foundation::Collections::Internal::HashMap<_GUID,IInspectable*___ptr64,Windows::Foundation::Collections::Internal::DefaultHash<_GUID>,Windows::Foundation::Collections::Internal::DefaultEqualityPredicate<_GUID>,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<_GUID>,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<IInspectable*___ptr64>,Windows::Foundation::Collections::Internal::HashMapOptions<_GUID,IInspectable*___ptr64,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<_GUID>,0,1,0>_>::KeyTraits,XWinRT::CElementTraits<XWinRT::detail::GitStorageType<IInspectable>_>_>::RemoveAll<br>XamlBackInterpolation::`vector_deleting_destructor'<br>XamlCircleInterpolation::`vector_deleting_destructor'<br>XamlExponentialInterpolation::`scalar_deleting_destructor'<br>`dynamic_atexit_destructor_for_'CInteraction::s_InteractionHandleTable''<br>detail::buffer_impl<CCheckMPOCache::PlaneInfo,6,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CCpuClipAntialiasSinkContext::SinkRenderParameters,10,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CCustomKernelEffect::ConstantBufferRow,8,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CD3DDevice::CUnpinResource,7,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CDrawListCacheSet::ContentEntry,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CDrawListEntry*___ptr64,4,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CDrawListEntryBuilder::Align16Chunk,120,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<COverlayContext::OverlayPlaneInfo,16,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<ICompositionSurfaceInfoListener*___ptr64,1,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<IMonitorTarget*___ptr64,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,4,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<VertexXYW_ColorDW_UV2_AAFixup,40,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<float,6,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<unsigned_short,100,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<wil::com_ptr_t<CD2DGenericInk,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<wil::com_ptr_t<CD2DInk,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::expandable_buffer_base<CCheckMPOCache::PlaneInfo,6>::~expandable_buffer_base<CCheckMPOCache::PlaneInfo,6><br>detail::pointer_buffer_impl<CBlurredBackdropCache*___ptr64>::~pointer_buffer_impl<CBlurredBackdropCache*___ptr64><br>detail::pointer_buffer_impl<IDeviceResource*___ptr64>::ensure_extra_capacity<br>detail::vector_facade<CBlurredBackdropCache*___ptr64,detail::pointer_buffer_impl<CBlurredBackdropCache*___ptr64>_>::reserve_region<br>detail::vector_facade<CBlurredBackdropCache::CachedBlur,detail::buffer_impl<CBlurredBackdropCache::CachedBlur,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CCpuClipAntialiasSink::Bounds,detail::buffer_impl<CCpuClipAntialiasSink::Bounds,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CCpuClipAntialiasSinkContext::SinkEntry,detail::buffer_impl<CCpuClipAntialiasSinkContext::SinkEntry,2,1,detail::liberal_expansion_policy>_>::clear_region<br>detail::vector_facade<CCpuClipAntialiasSinkContext::SinkEntry,detail::buffer_impl<CCpuClipAntialiasSinkContext::SinkEntry,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CDrawListEntryBuilder::PrimitiveSubRect,detail::buffer_impl<CDrawListEntryBuilder::PrimitiveSubRect,9,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<COverlayContext*___ptr64,detail::buffer_impl<COverlayContext*___ptr64,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<COverlayContext*___ptr64,detail::buffer_impl<COverlayContext*___ptr64,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CPreComputeContext::SubTreeContext,detail::buffer_impl<CPreComputeContext::SubTreeContext,3,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CRenderingTechniqueFragment::SurfaceDescription,detail::buffer_impl<CRenderingTechniqueFragment::SurfaceDescription,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CRenderingTechniqueFragment::SurfaceDescription,detail::buffer_impl<CRenderingTechniqueFragment::SurfaceDescription,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CRenderingTechniqueFragment_const*___ptr64,detail::buffer_impl<CRenderingTechniqueFragment_const*___ptr64,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CScopedClipStack::ClippingScopeState,detail::buffer_impl<CScopedClipStack::ClippingScopeState,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CScopedClipStack::CpuClipStackState,detail::buffer_impl<CScopedClipStack::CpuClipStackState,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVIRenderList,detail::buffer_impl<CVIRenderList,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisual*___ptr64,detail::buffer_impl<CVisual*___ptr64,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisual*___ptr64,detail::buffer_impl<CVisual*___ptr64,32,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisualSurface::SourceCVI,detail::buffer_impl<CVisualSurface::SourceCVI,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisualTreePath::VisualTreePathUnit,detail::buffer_impl<CVisualTreePath::VisualTreePathUnit,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CoordMap::RampEntry,detail::buffer_impl<CoordMap::RampEntry,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CoordMap::RampPair,detail::buffer_impl<CoordMap::RampPair,6,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D1::Matrix3x2F,detail::buffer_impl<D2D1::Matrix3x2F,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D1_EDGE_FLAGS,detail::buffer_impl<D2D1_EDGE_FLAGS,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D1_EDGE_FLAGS,detail::buffer_impl<D2D1_EDGE_FLAGS,40,1,detail::liberal_expansion_policy>_>::~vector_facade<D2D1_EDGE_FLAGS,detail::buffer_impl<D2D1_EDGE_FLAGS,40,1,detail::liberal_expansion_policy>_><br>detail::vector_facade<D2D_POINT_2F,detail::buffer_impl<D2D_POINT_2F,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D_RECT_F,detail::buffer_impl<D2D_RECT_F,1,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D_RECT_F,detail::buffer_impl<D2D_RECT_F,3,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<EffectInput,detail::buffer_impl<EffectInput,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<IVisualTreeClient*___ptr64,detail::buffer_impl<IVisualTreeClient*___ptr64,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<Mesh::VertexAAOffsetDesc,detail::buffer_impl<Mesh::VertexAAOffsetDesc,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<PrimitiveUVDesc,detail::buffer_impl<PrimitiveUVDesc,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,detail::buffer_impl<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<VertexXYW_ColorDW_UV2_AAFixup,detail::buffer_impl<VertexXYW_ColorDW_UV2_AAFixup,40,1,detail::liberal_expansion_policy>_>::~vector_facade<VertexXYW_ColorDW_UV2_AAFixup,detail::buffer_impl<VertexXYW_ColorDW_UV2_AAFixup,40,1,detail::liberal_expansion_policy>_><br>detail::vector_facade<_LUID,detail::buffer_impl<_LUID,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<bool,detail::buffer_impl<bool,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<char,detail::buffer_impl<char,48,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<char,detail::buffer_impl<char,48,1,detail::liberal_expansion_policy>_>::~vector_facade<char,detail::buffer_impl<char,48,1,detail::liberal_expansion_policy>_><br>detail::vector_facade<float,detail::buffer_impl<float,6,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<std::function<long___cdecl(CExternalEffectGraph::CGraphRenderingContext*___ptr64)>,detail::buffer_impl<std::function<long___cdecl(CExternalEffectGraph::CGraphRenderingContext*___ptr64)>,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<std::unique_ptr<COcclusionInfo,std::default_delete<COcclusionInfo>_>,detail::buffer_impl<std::unique_ptr<COcclusionInfo,std::default_delete<COcclusionInfo>_>,1,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<tagCOMPOSITION_TARGET_ID_AND_STATS,detail::buffer_impl<tagCOMPOSITION_TARGET_ID_AND_STATS,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<unsigned_short,detail::buffer_impl<unsigned_short,100,1,detail::liberal_expansion_policy>_>::~vector_facade<unsigned_short,detail::buffer_impl<unsigned_short,100,1,detail::liberal_expansion_policy>_><br>detail::vector_facade<unsigned_short,detail::buffer_impl<unsigned_short,174,1,detail::liberal_expansion_policy>_>::resize<br>detail::vector_facade<wil::com_ptr_t<CBackdropVisualImage,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CBackdropVisualImage,wil::err_returncode_policy>,1,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<wil::com_ptr_t<CD2DBrush,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CD2DBrush,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<wil::com_ptr_t<CD3DConstantBuffer,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CD3DConstantBuffer,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<wil::com_ptr_t<CD3DPixelShader,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CD3DPixelShader,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>std::_Destroy_range<std::allocator<std::unique_ptr<CSyncLockGroup,std::default_delete<CSyncLockGroup>_>_>_><br>std::_Ref_count_resource<unsigned_char*___ptr64,std::default_delete<unsigned_char_[0]>_>::_Destroy<br>std::deque<CMegaRect,std::allocator<CMegaRect>_>::_Tidy<br>std::unique_ptr<char_[0],std::default_delete<char_[0]>_>::operator=<std::default_delete<char_[0]>,0><br>std::unique_ptr<struct_detail::aligned_storage_for<CCheckMPOCache::PlaneInfo>_[0],std::default_delete<struct_detail::aligned_storage_for<CCheckMPOCache::PlaneInfo>_[0]>_>::~unique_ptr<struct_detail::aligned_storage_for<CCheckMPOCache::PlaneInfo>_[0],std::default_delete<struct_detail::aligned_storage_for<CCheckMPOCache::PlaneInfo>_[0]>_><br>type_info::`vector_deleting_destructor'</details>|<details><summary>Expand for full list:<br>?GetWorldTransform@CVisual@@QEBAJAEBVCVisualTreePath@@W4WalkReason@@PEAVCMILMatrix@@@Z<br>AppendCustomSamplerShaderBody<br>CAffineTransform2DEffect::`vector_deleting_destructor'<br>CAnimation::`vector_deleting_destructor'<br>CAnimationController::`vector_deleting_destructor'<br>CAnimationLoggingManager::`vector_deleting_destructor'<br>CAnimationTrigger::`scalar_deleting_destructor'<br>CArithmeticCompositeEffect::`vector_deleting_destructor'<br>CArray<CBufferedOutputPointer*___ptr64,CArrayEqualHelper<CBufferedOutputPointer*___ptr64>_>::RemoveAll<br>CArray<CInteraction*___ptr64,CArrayEqualHelper<CInteraction*___ptr64>_>::RemoveAll<br>CAtlasTexture::DestroyResources</summary>CAtlasTexture::Initialize<br>CAtlasTexture::~CAtlasTexture<br>CAtlasedRectsGroup::`scalar_deleting_destructor'<br>CAtlasedRectsMesh::`scalar_deleting_destructor'<br>CBackdropVisualImage::EnsureAncestorList<br>CBackdropVisualImage::LogEtwEvent<br>CBackdropVisualImage::`vector_deleting_destructor'<br>CBackdropVisualImage::~CBackdropVisualImage<br>CBackdropVisualImageKey::GetDebugString<br>CBaseAnimation::`vector_deleting_destructor'<br>CBaseExpression::`scalar_deleting_destructor'<br>CBaseExpression::~CBaseExpression<br>CBitmapLock::Unlock<br>CBitmapLockUnaligned::HrInit<br>CBitmapLockUnaligned::UnlockUnaligned<br>CBitmapLockUnaligned::`vector_deleting_destructor'<br>CBitmapResource::`vector_deleting_destructor'<br>CBlurredBackdropCache::~CBlurredBackdropCache<br>CBlurredWallpaperBackdropBrush::`scalar_deleting_destructor'<br>CBrushDrawListGenerator::GenerateDrawListPrimitive<br>CBrushRenderingEffect::`scalar_deleting_destructor'<br>CBrushRenderingGraph::RenderSubgraphs<br>CBspNode::`vector_deleting_destructor'<br>CBspPreComputeHelper::CleanupAfterWalking<br>CCachedVisualImage::`scalar_deleting_destructor'<br>CCaptureController::`scalar_deleting_destructor'<br>CCaptureRenderTarget::`vector_deleting_destructor'<br>CChannel::PeekNextMessage<br>CChannel::Release<br>CChannel::~CChannel<br>CChannelContext::PostMessageToChannel<br>CChannelContext::SetApplicationId<br>CChannelContext::SetOwnerProcessName<br>CChannelContext::`scalar_deleting_destructor'<br>CChannelContext::~CChannelContext<br>CChannelTable::~CChannelTable<br>CClipBrush::`scalar_deleting_destructor'<br>CColorBrush::`scalar_deleting_destructor'<br>CColorDrawListBrush::`scalar_deleting_destructor'<br>CColorGradientStop::`vector_deleting_destructor'<br>CColorMatrixEffect::`vector_deleting_destructor'<br>CColorTransformResource::`vector_deleting_destructor'<br>CCombinedGeometry::`scalar_deleting_destructor'<br>CCommandBatch::`scalar_deleting_destructor'<br>CCommandBuffer::`scalar_deleting_destructor'<br>CCommonRegistryData::ParseGpuIdListKey<br>CCommonRenderingEffect::`vector_deleting_destructor'<br>CCommonRenderingShaderCache::~CCommonRenderingShaderCache<br>CCompiledEffectCache::`scalar_deleting_destructor'<br>CCompiledEffectTemplate::`vector_deleting_destructor'<br>CComponentTransform3D::`scalar_deleting_destructor'<br>CCompositingShaderCache::`scalar_deleting_destructor'<br>CComposition::CleanTrees<br>CComposition::Initialize<br>CComposition::`scalar_deleting_destructor'<br>CComposition::~CComposition<br>CCompositionAmbientLight::`scalar_deleting_destructor'<br>CCompositionCubeMap::`vector_deleting_destructor'<br>CCompositionDistantLight::`vector_deleting_destructor'<br>CCompositionEnvironmentLight::`vector_deleting_destructor'<br>CCompositionGlyphRun::`scalar_deleting_destructor'<br>CCompositionLight::`vector_deleting_destructor'<br>CCompositionMipmapSurface::`vector_deleting_destructor'<br>CCompositionPointLight::`scalar_deleting_destructor'<br>CCompositionSkyBoxBrush::`vector_deleting_destructor'<br>CCompositionSpotLight::`vector_deleting_destructor'<br>CCompositionSurfaceBitmap::`vector_deleting_destructor'<br>CCompositionSurfaceInfo::~CCompositionSurfaceInfo<br>CCompositionSwapchainStatistics::`scalar_deleting_destructor'<br>CCompositionTextLine::`vector_deleting_destructor'<br>CConditionalExpression::`scalar_deleting_destructor'<br>CConnection::RunCompositionThread<br>CConnection::`vector_deleting_destructor'<br>CContainerVectorShape::`vector_deleting_destructor'<br>CContent::`vector_deleting_destructor'<br>CCpuClipAntialiasDrawListEntry::`vector_deleting_destructor'<br>CCpuClipAntialiasSink::Initialize<br>CCpuClipAntialiasSinkContext::FlushDrawList<br>CCpuClipAntialiasSinkContext::ProcessRenderCommands_OffscreenRenderPass<br>CCpuClipAntialiasSinkContext::SinkEntry::`scalar_deleting_destructor'<br>CCpuClipAntialiasSinkContext::`vector_deleting_destructor'<br>CCrossContainerGuestReadWriteSharedSection::`vector_deleting_destructor'<br>CCursorState::`scalar_deleting_destructor'<br>CCursorVisual::`vector_deleting_destructor'<br>CCustomKernelEffect::`vector_deleting_destructor'<br>CD2DBitmapCache::GetBitmapInternal<br>CD2DLayer::`vector_deleting_destructor'<br>CD2DSharedBuffer::CreateFromHeap<br>CD2DSharedBuffer::`scalar_deleting_destructor'<br>CD2DSharedBuffer::~CD2DSharedBuffer<br>CD3DDevice::PinResources<br>CD3DDevice::`vector_deleting_destructor'<br>CD3DDevice::~CD3DDevice<br>CD3DTexture::~CD3DTexture<br>CDDARenderTarget::`scalar_deleting_destructor'<br>CDDisplayRenderTarget::`vector_deleting_destructor'<br>CDataSourceReader::`scalar_deleting_destructor'<br>CDataStreamWriter::EnsureItem<br>CDataStreamWriter::EnsureSize<br>CDataStreamWriter::FreeBlocks<br>CDataStreamWriter::Reset<br>CDebugVisualImage::LockAndRead<br>CDebugVisualImage::`vector_deleting_destructor'<br>CDesktopTree::`vector_deleting_destructor'<br>CDesktopTree::~CDesktopTree<br>CDeviceResourceTable<CD2DEffect,CFilterEffect>::~CDeviceResourceTable<CD2DEffect,CFilterEffect><br>CDeviceResourceTable<CD2DGenericInk,CGenericInk>::~CDeviceResourceTable<CD2DGenericInk,CGenericInk><br>CDeviceResourceTable<CD3DConstantBuffer,CRenderingTechnique>::~CDeviceResourceTable<CD3DConstantBuffer,CRenderingTechnique><br>CDeviceResourceTable<CD3DPixelShader,CLinkedShader>::~CDeviceResourceTable<CD3DPixelShader,CLinkedShader><br>CDrawListCache::Update<br>CDrawListCache::`vector_deleting_destructor'<br>CDrawListEntryBuilder::AppendHWGeometry<br>CDrawListEntryBuilder::ExtractBuiltHWPrimitiveEntry<br>CDrawListEntryBuilder::InsertHW<br>CDrawListEntryBuilder::InsertWorker<br>CDrawingContext::DrawAsOverlay<br>CDrawingContext::DrawSolidRectangle<br>CDrawingContext::DrawVisualTree<br>CDrawingContext::FillShapeWithBitmapRealization<br>CDrawingContext::FillShapeWithSolidColor<br>CDrawingContext::PopAllStacks<br>CDrawingContext::PreSubgraph<br>CDrawingContext::PushLocalSpaceClipAndAlphaInternal<br>CDrawingContext::PushRenderOptionsInternal<br>CDrawingContext::PushTransformInternal<br>CDrawingContext::ValidateBVIEffectInputForRender<br>CDrawingContext::~CDrawingContext<br>CDropShadow::`vector_deleting_destructor'<br>CEffectBrush::`vector_deleting_destructor'<br>CEffectCompilationService::`vector_deleting_destructor'<br>CEffectCompilationTask::Release<br>CEffectGroup::`vector_deleting_destructor'<br>CEllipseGeometry::`vector_deleting_destructor'<br>CEmptyRegionDrawListBrush::`vector_deleting_destructor'<br>CExpression::`scalar_deleting_destructor'<br>CExpression::~CExpression<br>CExpressionManager::`scalar_deleting_destructor'<br>CExpressionValueStack::`scalar_deleting_destructor'<br>CExternalEffectGraph::CGraphRenderingContext::ExecuteShaders<br>CExternalEffectGraph::CGraphRenderingContext::~CGraphRenderingContext<br>CExternalEffectGraph::~CExternalEffectGraph<br>CFailFastInScope::CaptureDxgkRingBuffer<br>CFilterEffect::`vector_deleting_destructor'<br>CFlipExSwapchainStatistics::`scalar_deleting_destructor'<br>CFloatResource::`vector_deleting_destructor'<br>CFloodEffect::`scalar_deleting_destructor'<br>CFormatConverter::`vector_deleting_destructor'<br>CFormatConverter::~CFormatConverter<br>CGdiSpriteBitmap::`scalar_deleting_destructor'<br>CGenericInk::`vector_deleting_destructor'<br>CGenericTableMap<ObjectPropertyReference,CTargetMapEntry>::FreeTableData<br>CGenericTableMap<unsigned_int,CAnimationSourceMapEntry>::FindElement<br>CGeometry2D::FreeCaches<br>CGeometry2D::`vector_deleting_destructor'<br>CGeometry2DGroup::`scalar_deleting_destructor'<br>CGeometryGroup::ProcessAppend<br>CGeometryGroup::UnRegisterNotifiers<br>CGeometryGroup::`scalar_deleting_destructor'<br>CGeometryOnlyDrawListBrush::`scalar_deleting_destructor'<br>CGlobalComposition::`scalar_deleting_destructor'<br>CGlobalCompositionSurfaceInfo::CBindInfo::~CBindInfo<br>CGlobalCompositionSurfaceInfo::`scalar_deleting_destructor'<br>CGlobalDrawingContext::DrawMesh2D<br>CGlobalDrawingContext::`scalar_deleting_destructor'<br>CGlobalInputManager::`scalar_deleting_destructor'<br>CGlobalManipulationManager::`scalar_deleting_destructor'<br>CGlobalSurfaceManager::`vector_deleting_destructor'<br>CGradientSource::Generate<br>CGradientSource::~CGradientSource<br>CGraphWalker<CVectorShape>::EndWalk<br>CGraphWalker<CVisual>::EndWalk<br>CHWDrawListEntry::`vector_deleting_destructor'<br>CHitTestContext::PreSubgraph<br>CHitTestContext::~CHitTestContext<br>CHolographicComposition::`scalar_deleting_destructor'<br>CHolographicDisplay::`vector_deleting_destructor'<br>CHolographicExclusiveMode::`scalar_deleting_destructor'<br>CHolographicExclusiveView::`vector_deleting_destructor'<br>CHolographicFrameProcessor::`scalar_deleting_destructor'<br>CHolographicInteropTarget::`vector_deleting_destructor'<br>CHolographicInteropTexture::`vector_deleting_destructor'<br>CHolographicInteropTexture::~CHolographicInteropTexture<br>CHolographicManager::`scalar_deleting_destructor'<br>CHolographicViewer::`scalar_deleting_destructor'<br>CHoverPointerSource::`scalar_deleting_destructor'<br>CHueRotationEffect::`scalar_deleting_destructor'<br>CImageLegacyMilBrush::`vector_deleting_destructor'<br>CIndirectSwapchainRenderTarget::`vector_deleting_destructor'<br>CInjectionAnimation::`scalar_deleting_destructor'<br>CInjectionAnimation::~CInjectionAnimation<br>CInk::`scalar_deleting_destructor'<br>CInteraction::`vector_deleting_destructor'<br>CInteractionContextWrapper::BoundBufferedOutput<br>CInteractionContextWrapper::ResetBufferedOutput<br>CInteractionContextWrapper::`vector_deleting_destructor'<br>CInteractionRoot::`scalar_deleting_destructor'<br>CInteractionTracker::`scalar_deleting_destructor'<br>CInteractionTrackerBindingManager::`scalar_deleting_destructor'<br>CInteractionTrackerPositionAnimation::`scalar_deleting_destructor'<br>CInteractionTrackerScaleAnimation::`scalar_deleting_destructor'<br>CInternalMilCmdConnection::FreeBatchPool<br>CInternalMilCmdConnection::`vector_deleting_destructor'<br>CKernelTransport::`scalar_deleting_destructor'<br>CKeyframeAnimation::Initialize<br>CKeyframeAnimation::SetKeyFrameData<br>CKeyframeAnimation::`vector_deleting_destructor'<br>CKeyframeAnimation::~CKeyframeAnimation<br>CLayerVisual::ClearTreeEffect<br>CLayerVisual::`vector_deleting_destructor'<br>CLegacyAnimationTrigger::`vector_deleting_destructor'<br>CLegacyRenderTarget::`vector_deleting_destructor'<br>CLegacyStereoRenderTarget::`scalar_deleting_destructor'<br>CLegacySurfaceManager::ProcessUnclaimedTokens<br>CLegacySurfaceManager::~CLegacySurfaceManager<br>CLegacySwapChain::AddComputeScribbleInvalidRects<br>CLegacySwapChain::NotifyRenderedRect<br>CLightStack::RetrieveCurrentLightBufferForContextNoRef<br>CLineGeometry::`scalar_deleting_destructor'<br>CLinearGradientBrush::`scalar_deleting_destructor'<br>CLinearGradientLegacyMilBrush::`vector_deleting_destructor'<br>CLinearTransferEffect::`vector_deleting_destructor'<br>CMagnifierRenderTarget::`vector_deleting_destructor'<br>CManipulation::`scalar_deleting_destructor'<br>CManipulationContext::`vector_deleting_destructor'<br>CManipulationContext::~CManipulationContext<br>CManipulationFrame::`scalar_deleting_destructor'<br>CManipulationManager::NotifyUpdateConfiguration<br>CManipulationManager::OnInteractionUpdate<br>CManipulationManager::~CManipulationManager<br>CManipulationTransform::`vector_deleting_destructor'<br>CMap<unsigned_int,InternalFilterInput*___ptr64,CMapEqualHelper<unsigned_int,InternalFilterInput*___ptr64>_>::RemoveAll<br>CMaskBrush::`scalar_deleting_destructor'<br>CMatrixResource::`scalar_deleting_destructor'<br>CMatrixTransform3D::`vector_deleting_destructor'<br>CMatrixTransform::`scalar_deleting_destructor'<br>CMegaRect::PrepareData<br>CMesh2DEffect::SetVertices<br>CMesh2DEffect::~CMesh2DEffect<br>CMeshCacheManager::TryGetMeshAAOffsetsForRoundedRectangle<br>CMeshGeometry2D::`scalar_deleting_destructor'<br>CMessageConversationHost::`scalar_deleting_destructor'<br>CMultiPrimitiveDrawListBrush::`scalar_deleting_destructor'<br>CNaturalAnimation::`vector_deleting_destructor'<br>CNineGridBrush::`vector_deleting_destructor'<br>CNineGridDrawListBrush::EnumerateBrushes<br>CNineGridDrawListBrush::Initialize<br>CNineGridDrawListBrush::`vector_deleting_destructor'<br>CNotificationResource::`vector_deleting_destructor'<br>CObjectCache::Destroy<br>COcclusionContext::DrawClippedImage<br>COcclusionContext::PreSubgraph<br>COcclusionContext::~COcclusionContext<br>COffScreenRenderTarget::`scalar_deleting_destructor'<br>COverlayContext::CheckMultiPlaneOverlaySupport<br>COverlayContext::ComputeOverlayConfigurationForAdapter<br>COverlayContext::InitCheckCandidatesList<br>COverlayContext::PresentMPO<br>COverlayContext::PushCandidates<br>COverlayContext::TrimCheckCandidatesList<br>COverlayContext::~COverlayContext<br>CParticleAttractor::`scalar_deleting_destructor'<br>CParticleBaseBehavior::`vector_deleting_destructor'<br>CParticleBehaviors::`scalar_deleting_destructor'<br>CParticleEmitterVisual::`scalar_deleting_destructor'<br>CParticleGenerator::`scalar_deleting_destructor'<br>CParticleScalarBehavior::`vector_deleting_destructor'<br>CParticleVector2Behavior::`scalar_deleting_destructor'<br>CParticleVector3Behavior::`scalar_deleting_destructor'<br>CParticleVector4Behavior::`vector_deleting_destructor'<br>CPartitionVerticalBlankScheduler::`vector_deleting_destructor'<br>CPathGeometry::`vector_deleting_destructor'<br>CPointResource::`vector_deleting_destructor'<br>CPolygon::`scalar_deleting_destructor'<br>CPolygonBuilder::`vector_deleting_destructor'<br>CPreComputeContext::AddVisualToBVIPreRenderList<br>CPreComputeContext::CPreWalkVisual::CalcTransform<br>CPreComputeContext::CPreWalkVisual::UpdateTransformChildBounds<br>CPreComputeContext::PreCompute<br>CPreComputeContext::ProcessPostSubgraphBackdropInput<br>CPreComputeContext::ProcessPostSubgraphWindowBackgroundTreatment<br>CPreComputeContext::SubTreeContext::~SubTreeContext<br>CPreComputeContext::UpdateBVIForVisual<br>CPreComputeContext::~CPreComputeContext<br>CPrimitiveColor::`vector_deleting_destructor'<br>CPrimitiveGroup::`scalar_deleting_destructor'<br>CPrimitiveGroupDrawListBrush::`scalar_deleting_destructor'<br>CProcessAttribution::`vector_deleting_destructor'<br>CProcessAttributionManager::Observer::`scalar_deleting_destructor'<br>CProjectedShadow::`scalar_deleting_destructor'<br>CProjectedShadow::~CProjectedShadow<br>CProjectedShadowCaster::`vector_deleting_destructor'<br>CProjectedShadowReceiver::`scalar_deleting_destructor'<br>CProjectedShadowRenderingEffect::`vector_deleting_destructor'<br>CProjectedShadowScene::`vector_deleting_destructor'<br>CPropertyChangeResource::`scalar_deleting_destructor'<br>CPropertySet::SetProperty<br>CPropertySet::`vector_deleting_destructor'<br>CProxyGeometry::`vector_deleting_destructor'<br>CPtrArrayBase::Clear<br>CPtrArrayBase::InsertAt<br>CPtrArrayBase::RemoveAt<br>CRadialGradientBrush::`vector_deleting_destructor'<br>CRectResource::`vector_deleting_destructor'<br>CRectangleGeometry::GetShapeDataCore<br>CRectangleGeometry::`scalar_deleting_destructor'<br>CRectanglesShape::`vector_deleting_destructor'<br>CRedirectedGDISurface::`scalar_deleting_destructor'<br>CRedirectedVisualContent::`scalar_deleting_destructor'<br>CRegion::CreateHRGN<br>CRegion::SetHRGN<br>CRegion::TryAddRectangles<br>CRegionGeometry::`vector_deleting_destructor'<br>CRemoteAppRenderTarget::`scalar_deleting_destructor'<br>CRemoteRenderTarget::`vector_deleting_destructor'<br>CRenderData::`vector_deleting_destructor'<br>CRenderData::~CRenderData<br>CRenderDataBuilder::Release<br>CRenderTargetManager::~CRenderTargetManager<br>CRenderingTechniqueFragment::CreateEffectShaderBody<br>CRenderingTechniqueFragment::CreateMaskShaderBody<br>CRenderingTechniqueFragment::NeedsToBeBrokenUp<br>CRenderingTechniqueFragment::RemoveLargestInputFragment<br>CRenderingTechniqueFragment::~CRenderingTechniqueFragment<br>CResource::UnmarshalResourceArray<br>CResource::`vector_deleting_destructor'<br>CResource::~CResource<br>CResourceTable::`scalar_deleting_destructor'<br>CResourceTable::~CResourceTable<br>CRotateTransform3D::`vector_deleting_destructor'<br>CRotateTransform::`vector_deleting_destructor'<br>CRoundedRectangleShape::`scalar_deleting_destructor'<br>CScalar::`scalar_deleting_destructor'<br>CScaleTransform3D::`vector_deleting_destructor'<br>CScaleTransform::`vector_deleting_destructor'<br>CScanPipeline::InitializeForFormatConversion<br>CScanPipeline::~CScanPipeline<br>CSceneComponent::`vector_deleting_destructor'<br>CSceneMaterial::`vector_deleting_destructor'<br>CSceneMesh::`scalar_deleting_destructor'<br>CSceneMeshRendererComponent::`scalar_deleting_destructor'<br>CSceneMetallicRoughnessMaterial::`vector_deleting_destructor'<br>CSceneModelTransform::`scalar_deleting_destructor'<br>CSceneNode::`vector_deleting_destructor'<br>CSceneSurfaceMaterialInput::`scalar_deleting_destructor'<br>CSceneVisual::`vector_deleting_destructor'<br>CSceneWorld::`vector_deleting_destructor'<br>CScopedClipStack::Clear<br>CScopedClipStack::PushCpuClipToScope<br>CScopedClipStack::~CScopedClipStack<br>CScrollAnimation::`scalar_deleting_destructor'<br>CScrollKeyframeAnimation::`scalar_deleting_destructor'<br>CScrollPositionKeyframeAnimation::`scalar_deleting_destructor'<br>CScrollScaleKeyframeAnimation::`scalar_deleting_destructor'<br>CSecondarySysmemBitmap::Initialize<br>CSecondarySysmemBitmap::~CSecondarySysmemBitmap<br>CShape::BuildFromRectFs<br>CShape::CopyShape<br>CShape::TryOptimizedCombinePaths<br>CShapeDrawingContext::~CShapeDrawingContext<br>CShapeTree::DrawShapes<br>CShapeTree::GetBounds<br>CShapeTreeIterator::Walk<CShapeDrawingContext><br>CSharedSection::`scalar_deleting_destructor'<br>CSharedSectionBase::`scalar_deleting_destructor'<br>CSharedSectionWrapper::`vector_deleting_destructor'<br>CSnapshot::`scalar_deleting_destructor'<br>CSolidColorLegacyMilBrush::`scalar_deleting_destructor'<br>CSparseStorage::~CSparseStorage<br>CSpatialRemarshaler::`scalar_deleting_destructor'<br>CSpectreCallbackRenderer::`vector_deleting_destructor'<br>CSpriteVectorShape::`vector_deleting_destructor'<br>CSpriteVisual::`vector_deleting_destructor'<br>CSubVisualTree::`vector_deleting_destructor'<br>CSuperWetInkVisual::`vector_deleting_destructor'<br>CSuperWetSource::EnsureVailPerFrameDataHostReaderQueue<br>CSuperWetSource::~CSuperWetSource<br>CSurfaceBrush::`vector_deleting_destructor'<br>CSurfaceDrawListBrush::`scalar_deleting_destructor'<br>CSyncLockGroup::`scalar_deleting_destructor'<br>CSynchronousSuperWetInk::`vector_deleting_destructor'<br>CSystemMemoryBitmap::HrInit<br>CSystemMemoryBitmap::HrInit<br>CSystemMemoryBitmap::~CSystemMemoryBitmap<br>CTableTransferEffect::`vector_deleting_destructor'<br>CTextVisual::`scalar_deleting_destructor'<br>CTextVisualContent::`scalar_deleting_destructor'<br>CTransform3DGroup::`scalar_deleting_destructor'<br>CTransform::`scalar_deleting_destructor'<br>CTransformGroup::`vector_deleting_destructor'<br>CTranslateTransform::`scalar_deleting_destructor'<br>CTransportCmdPacker::AllocateNotification<br>CTurbulenceEffect::`scalar_deleting_destructor'<br>CViewBox::`vector_deleting_destructor'<br>CVirtualMonitorCaptureRenderTarget::`scalar_deleting_destructor'<br>CVisual::AppendDirtyRegionVisualizationRects<br>CVisual::RemoveAllChildren<br>CVisual::RenderContent<br>CVisual::`scalar_deleting_destructor'<br>CVisual::~CVisual<br>CVisualBitmap::`scalar_deleting_destructor'<br>CVisualCapture::`vector_deleting_destructor'<br>CVisualGroup::`scalar_deleting_destructor'<br>CVisualReferenceController::`scalar_deleting_destructor'<br>CVisualSurface::`vector_deleting_destructor'<br>CVisualSurface::~CVisualSurface<br>CVisualTree::`scalar_deleting_destructor'<br>CVisualTree::~CVisualTree<br>CVisualTreeIterator::WalkSubtree<CDrawingContext><br>CVisualTreeIterator::WalkSubtree<COcclusionContext><br>CVisualTreeIterator::WalkSubtree<CPreComputeContext><br>CVisualTreePath::AppendAncestorListAboveInnermostVisualTree<br>CVisualTreePath::GetDebugString<br>CVisualTreePath::`scalar_deleting_destructor'<br>CVisualTreePath::~CVisualTreePath<br>CWARPDrawListEntry::`vector_deleting_destructor'<br>CWICBitmapWrapper::Lock<br>CWatermarkStack<CBspNode*___ptr64,64,2,10>::Push<br>CWatermarkStack<CComposition::HeatMapOptions,2,2,2>::Push<br>CWatermarkStack<CDrawingContext::StackBackfaceVisibilityEntry,64,2,10>::Push<br>CWatermarkStack<CDrawingContext::StackStateEntry,64,2,10>::Push<br>CWatermarkStack<CGraphWalker<CBspNode>::CFrame,64,2,10>::Optimize<br>CWatermarkStack<CGraphWalker<CBspNode>::CFrame,64,2,10>::Push<br>CWatermarkStack<CGraphWalker<CVisual>::CFrame,64,2,10>::Push<br>CWatermarkStack<CMILMatrix,8,2,8>::Optimize<br>CWatermarkStack<CMILMatrix,8,2,8>::Push<br>CWatermarkStack<COcclusionContext::StackStateType,64,2,10>::Push<br>CWatermarkStack<CVisual*___ptr64,64,2,10>::Push<br>CWatermarkStack<D2D_VECTOR_2F,2,2,10>::Optimize<br>CWatermarkStack<D2D_VECTOR_2F,2,2,10>::Push<br>CWatermarkStack<MilBackfaceVisibility::Enum,64,2,10>::Push<br>CWatermarkStack<MilBitmapBorderMode::Enum,64,2,10>::Push<br>CWatermarkStack<MilBitmapInterpolationMode::Enum,64,2,10>::Push<br>CWatermarkStack<MilCompositingMode::Enum,64,2,10>::Push<br>CWatermarkStack<MilDepthMode::Enum,64,2,10>::Push<br>CWatermarkStack<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,64,2,10>::Optimize<br>CWatermarkStack<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,64,2,10>::Push<br>CWatermarkStack<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,8,2,8>::Push<br>CWatermarkStack<bool,64,2,10>::Optimize<br>CWatermarkStack<bool,64,2,10>::Push<br>CWatermarkStack<float,2,2,10>::Optimize<br>CWatermarkStack<float,2,2,10>::Push<br>CWatermarkStack<float,64,2,10>::Push<br>CWatermarkStack<unsigned_int,64,2,10>::Optimize<br>CWatermarkStack<unsigned_int,64,2,10>::Push<br>CWatermarkStack<void*___ptr64,2,2,10>::Optimize<br>CWatermarkStack<void*___ptr64,2,2,10>::Push<br>CWindowBackgroundTreatment::GenerateBitmapRealizationForEffectInput<br>CWindowBackgroundTreatment::`scalar_deleting_destructor'<br>CWindowNode::`vector_deleting_destructor'<br>CYCbCrSurface::`scalar_deleting_destructor'<br>CaptureBitsResponse::`vector_deleting_destructor'<br>ClipPlaneIterator::ClipToPolygon<br>CoordMap::ComputeTexPositions<detail::vector_facade<float,detail::buffer_impl<float,6,1,detail::liberal_expansion_policy>_>,detail::vector_facade<float,class_detail::buffer_impl<float,6,1,class_detail::liberal_expansion_policy>_>_><br>CoordMap::~CoordMap<br>DataProviderManager::`vector_deleting_destructor'<br>DataProviderProxy::`scalar_deleting_destructor'<br>DataProviderRegistrarConnection::`scalar_deleting_destructor'<br>DataProviderRegistrarPrincipal::`scalar_deleting_destructor'<br>DataSourceProxy::`vector_deleting_destructor'<br>DiagnosticCallbacksManager::`scalar_deleting_destructor'<br>DwmDbg::Backdrops::LogBrushEtwEvent<br>DwmDbg::Backdrops::LogTreeWalkEtwEvent<br>DwmDbg::DbgString::DbgString<br>DwmDbg::Print<br>DynArrayImpl<1>::ShrinkToSize<br>DynArrayImpl<1>::~DynArrayImpl<1><br>FUN_18002b131<br>FUN_18004d021<br>FUN_180060468<br>FUN_18006a4b2<br>FUN_18006a72f<br>FUN_180123c0c<br>FUN_180136f3c<br>FUN_180142698<br>FUN_180146902<br>FUN_180147b69<br>FUN_18014bdcb<br>FUN_18014d929<br>FUN_18014da98<br>FUN_18014e077<br>FUN_18014e61e<br>FUN_18014ff18<br>FUN_1801510c3<br>FUN_180151bed<br>FUN_1801523a9<br>FUN_1801527b4<br>FUN_1801555ea<br>FUN_1801573c0<br>FUN_18015874f<br>FUN_18015a837<br>FUN_18015c424<br>FUN_18015f094<br>FUN_1801617e0<br>FUN_180161d10<br>FUN_180161fe6<br>FUN_180162398<br>FUN_180187200<br>FastRegion::CRegion::FreeMemory<br>FastRegion::CRegion::Intersect<br>FastRegion::CRegion::Subtract<br>FastRegion::CRegion::Union<br>FastRegion::Internal::CWorkBuffer::~CWorkBuffer<br>HANDLE_TABLE::`vector_deleting_destructor'<br>HrgnToRgnData<br>InitializeShaderLinkingInput<br>LinearInterpolation::`scalar_deleting_destructor'<br>MCCollections::~MCCollections<br>MagnifierCaptureBitsResponse::`scalar_deleting_destructor'<br>Mesh::GenerateGeometry<br>PrimitiveStorage::CCachableStorage<CDrawListPrimitive4,16>::`scalar_deleting_destructor'<br>PrimitiveStorage::CCachableStorage<CDrawListPrimitive8,16>::`scalar_deleting_destructor'<br>SAFE_DELETE<CInputSinkStruct><br>SAFE_DELETE_ARRAY<D2D1_COMPOSITOR_DRAWING_STATE><br>SAFE_DELETE_ARRAY<unsigned_char><br>VisualCaptureBitsResponse::`vector_deleting_destructor'<br>XWinRT::XHashMap<_GUID,XWinRT::detail::GitStorageType<IInspectable>,Windows::Foundation::Collections::Internal::HashMap<_GUID,IInspectable*___ptr64,Windows::Foundation::Collections::Internal::DefaultHash<_GUID>,Windows::Foundation::Collections::Internal::DefaultEqualityPredicate<_GUID>,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<_GUID>,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<IInspectable*___ptr64>,Windows::Foundation::Collections::Internal::HashMapOptions<_GUID,IInspectable*___ptr64,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<_GUID>,0,1,0>_>::KeyTraits,XWinRT::CElementTraits<XWinRT::detail::GitStorageType<IInspectable>_>_>::InitHashTable<br>XWinRT::XHashMap<_GUID,XWinRT::detail::GitStorageType<IInspectable>,Windows::Foundation::Collections::Internal::HashMap<_GUID,IInspectable*___ptr64,Windows::Foundation::Collections::Internal::DefaultHash<_GUID>,Windows::Foundation::Collections::Internal::DefaultEqualityPredicate<_GUID>,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<_GUID>,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<IInspectable*___ptr64>,Windows::Foundation::Collections::Internal::HashMapOptions<_GUID,IInspectable*___ptr64,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<_GUID>,0,1,0>_>::KeyTraits,XWinRT::CElementTraits<XWinRT::detail::GitStorageType<IInspectable>_>_>::Rehash<br>XWinRT::XHashMap<_GUID,XWinRT::detail::GitStorageType<IInspectable>,Windows::Foundation::Collections::Internal::HashMap<_GUID,IInspectable*___ptr64,Windows::Foundation::Collections::Internal::DefaultHash<_GUID>,Windows::Foundation::Collections::Internal::DefaultEqualityPredicate<_GUID>,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<_GUID>,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<IInspectable*___ptr64>,Windows::Foundation::Collections::Internal::HashMapOptions<_GUID,IInspectable*___ptr64,Windows::Foundation::Collections::Internal::DefaultLifetimeTraits<_GUID>,0,1,0>_>::KeyTraits,XWinRT::CElementTraits<XWinRT::detail::GitStorageType<IInspectable>_>_>::RemoveAll<br>XamlBackInterpolation::`vector_deleting_destructor'<br>XamlCircleInterpolation::`vector_deleting_destructor'<br>XamlExponentialInterpolation::`scalar_deleting_destructor'<br>`dynamic_atexit_destructor_for_'CInteraction::s_InteractionHandleTable''<br>detail::buffer_impl<CCheckMPOCache::PlaneInfo,6,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CCpuClipAntialiasSinkContext::SinkRenderParameters,10,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CCustomKernelEffect::ConstantBufferRow,8,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CD3DDevice::CUnpinResource,7,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CDrawListCacheSet::ContentEntry,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CDrawListEntry*___ptr64,4,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CDrawListEntryBuilder::Align16Chunk,120,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<COverlayContext::OverlayPlaneInfo,16,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<ICompositionSurfaceInfoListener*___ptr64,1,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<IMonitorTarget*___ptr64,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,4,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<VertexXYW_ColorDW_UV2_AAFixup,40,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<float,6,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<unsigned_short,100,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<wil::com_ptr_t<CD2DGenericInk,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<wil::com_ptr_t<CD2DInk,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::expandable_buffer_base<CCheckMPOCache::PlaneInfo,6>::~expandable_buffer_base<CCheckMPOCache::PlaneInfo,6><br>detail::pointer_buffer_impl<CBlurredBackdropCache*___ptr64>::~pointer_buffer_impl<CBlurredBackdropCache*___ptr64><br>detail::pointer_buffer_impl<IDeviceResource*___ptr64>::ensure_extra_capacity<br>detail::vector_facade<CBlurredBackdropCache*___ptr64,detail::pointer_buffer_impl<CBlurredBackdropCache*___ptr64>_>::reserve_region<br>detail::vector_facade<CBlurredBackdropCache::CachedBlur,detail::buffer_impl<CBlurredBackdropCache::CachedBlur,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CCpuClipAntialiasSink::Bounds,detail::buffer_impl<CCpuClipAntialiasSink::Bounds,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CCpuClipAntialiasSinkContext::SinkEntry,detail::buffer_impl<CCpuClipAntialiasSinkContext::SinkEntry,2,1,detail::liberal_expansion_policy>_>::clear_region<br>detail::vector_facade<CCpuClipAntialiasSinkContext::SinkEntry,detail::buffer_impl<CCpuClipAntialiasSinkContext::SinkEntry,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CDrawListEntryBuilder::PrimitiveSubRect,detail::buffer_impl<CDrawListEntryBuilder::PrimitiveSubRect,9,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<COverlayContext*___ptr64,detail::buffer_impl<COverlayContext*___ptr64,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<COverlayContext*___ptr64,detail::buffer_impl<COverlayContext*___ptr64,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CPreComputeContext::SubTreeContext,detail::buffer_impl<CPreComputeContext::SubTreeContext,3,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CRenderingTechniqueFragment::SurfaceDescription,detail::buffer_impl<CRenderingTechniqueFragment::SurfaceDescription,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CRenderingTechniqueFragment::SurfaceDescription,detail::buffer_impl<CRenderingTechniqueFragment::SurfaceDescription,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CRenderingTechniqueFragment_const*___ptr64,detail::buffer_impl<CRenderingTechniqueFragment_const*___ptr64,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CScopedClipStack::ClippingScopeState,detail::buffer_impl<CScopedClipStack::ClippingScopeState,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CScopedClipStack::CpuClipStackState,detail::buffer_impl<CScopedClipStack::CpuClipStackState,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVIRenderList,detail::buffer_impl<CVIRenderList,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisual*___ptr64,detail::buffer_impl<CVisual*___ptr64,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisual*___ptr64,detail::buffer_impl<CVisual*___ptr64,32,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisualSurface::SourceCVI,detail::buffer_impl<CVisualSurface::SourceCVI,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisualTreePath::VisualTreePathUnit,detail::buffer_impl<CVisualTreePath::VisualTreePathUnit,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CoordMap::RampEntry,detail::buffer_impl<CoordMap::RampEntry,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CoordMap::RampPair,detail::buffer_impl<CoordMap::RampPair,6,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D1::Matrix3x2F,detail::buffer_impl<D2D1::Matrix3x2F,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D1_EDGE_FLAGS,detail::buffer_impl<D2D1_EDGE_FLAGS,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D1_EDGE_FLAGS,detail::buffer_impl<D2D1_EDGE_FLAGS,40,1,detail::liberal_expansion_policy>_>::~vector_facade<D2D1_EDGE_FLAGS,detail::buffer_impl<D2D1_EDGE_FLAGS,40,1,detail::liberal_expansion_policy>_><br>detail::vector_facade<D2D_POINT_2F,detail::buffer_impl<D2D_POINT_2F,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D_RECT_F,detail::buffer_impl<D2D_RECT_F,1,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D_RECT_F,detail::buffer_impl<D2D_RECT_F,3,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<EffectInput,detail::buffer_impl<EffectInput,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<IVisualTreeClient*___ptr64,detail::buffer_impl<IVisualTreeClient*___ptr64,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<Mesh::VertexAAOffsetDesc,detail::buffer_impl<Mesh::VertexAAOffsetDesc,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<PrimitiveUVDesc,detail::buffer_impl<PrimitiveUVDesc,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,detail::buffer_impl<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<VertexXYW_ColorDW_UV2_AAFixup,detail::buffer_impl<VertexXYW_ColorDW_UV2_AAFixup,40,1,detail::liberal_expansion_policy>_>::~vector_facade<VertexXYW_ColorDW_UV2_AAFixup,detail::buffer_impl<VertexXYW_ColorDW_UV2_AAFixup,40,1,detail::liberal_expansion_policy>_><br>detail::vector_facade<_LUID,detail::buffer_impl<_LUID,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<bool,detail::buffer_impl<bool,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<char,detail::buffer_impl<char,48,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<char,detail::buffer_impl<char,48,1,detail::liberal_expansion_policy>_>::~vector_facade<char,detail::buffer_impl<char,48,1,detail::liberal_expansion_policy>_><br>detail::vector_facade<float,detail::buffer_impl<float,6,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<std::function<long___cdecl(CExternalEffectGraph::CGraphRenderingContext*___ptr64)>,detail::buffer_impl<std::function<long___cdecl(CExternalEffectGraph::CGraphRenderingContext*___ptr64)>,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<std::unique_ptr<COcclusionInfo,std::default_delete<COcclusionInfo>_>,detail::buffer_impl<std::unique_ptr<COcclusionInfo,std::default_delete<COcclusionInfo>_>,1,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<tagCOMPOSITION_TARGET_ID_AND_STATS,detail::buffer_impl<tagCOMPOSITION_TARGET_ID_AND_STATS,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<unsigned_short,detail::buffer_impl<unsigned_short,100,1,detail::liberal_expansion_policy>_>::~vector_facade<unsigned_short,detail::buffer_impl<unsigned_short,100,1,detail::liberal_expansion_policy>_><br>detail::vector_facade<unsigned_short,detail::buffer_impl<unsigned_short,174,1,detail::liberal_expansion_policy>_>::resize<br>detail::vector_facade<wil::com_ptr_t<CBackdropVisualImage,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CBackdropVisualImage,wil::err_returncode_policy>,1,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<wil::com_ptr_t<CD2DBrush,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CD2DBrush,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<wil::com_ptr_t<CD3DConstantBuffer,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CD3DConstantBuffer,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<wil::com_ptr_t<CD3DPixelShader,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CD3DPixelShader,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>std::_Destroy_range<std::allocator<std::unique_ptr<CSyncLockGroup,std::default_delete<CSyncLockGroup>_>_>_><br>std::_Ref_count_resource<unsigned_char*___ptr64,std::default_delete<unsigned_char_[0]>_>::_Destroy<br>std::deque<CMegaRect,std::allocator<CMegaRect>_>::_Tidy<br>std::unique_ptr<char_[0],std::default_delete<char_[0]>_>::operator=<std::default_delete<char_[0]>,0><br>std::unique_ptr<struct_detail::aligned_storage_for<CCheckMPOCache::PlaneInfo>_[0],std::default_delete<struct_detail::aligned_storage_for<CCheckMPOCache::PlaneInfo>_[0]>_>::~unique_ptr<struct_detail::aligned_storage_for<CCheckMPOCache::PlaneInfo>_[0],std::default_delete<struct_detail::aligned_storage_for<CCheckMPOCache::PlaneInfo>_[0]>_><br>type_info::`vector_deleting_destructor'</details>|
|paramcount|1|1|
|`address`|18007c514|1800898a4|
|sig|void __cdecl Free(void * param_1)|void __cdecl Free(void * param_1)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### Free Calling Diff


```diff
--- DefaultHeap::Free calling
+++ DefaultHeap::Free calling
@@ -478,31 +478,31 @@
-FUN_180058ed8
-FUN_1800643a2
-FUN_18006461f
-FUN_18007f3d1
-FUN_1800b1b85
-FUN_180118f5a
-FUN_18012c90c
-FUN_180131ee2
-FUN_180133535
-FUN_180134dfa
-FUN_18013adcb
-FUN_18013bf37
-FUN_18013cbc6
-FUN_18013db49
-FUN_18013dcb8
-FUN_18013e297
-FUN_18013e65a
-FUN_1801404b2
-FUN_18014165d
-FUN_180142187
-FUN_180142943
-FUN_180142d4e
-FUN_180148084
-FUN_18014ae92
-FUN_18014c1b9
-FUN_18014e644
-FUN_18014f420
-FUN_18014f6f6
-FUN_18014faa8
-FUN_1801657fe
-FUN_180185cfc
+FUN_18002b131
+FUN_18004d021
+FUN_180060468
+FUN_18006a4b2
+FUN_18006a72f
+FUN_180123c0c
+FUN_180136f3c
+FUN_180142698
+FUN_180146902
+FUN_180147b69
+FUN_18014bdcb
+FUN_18014d929
+FUN_18014da98
+FUN_18014e077
+FUN_18014e61e
+FUN_18014ff18
+FUN_1801510c3
+FUN_180151bed
+FUN_1801523a9
+FUN_1801527b4
+FUN_1801555ea
+FUN_1801573c0
+FUN_18015874f
+FUN_18015a837
+FUN_18015c424
+FUN_18015f094
+FUN_1801617e0
+FUN_180161d10
+FUN_180161fe6
+FUN_180162398
+FUN_180187200
@@ -523,0 +524 @@
+SAFE_DELETE_ARRAY<D2D1_COMPOSITOR_DRAWING_STATE>
```


## operator_new[]

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|0.78|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|operator_new[]|operator_new[]|
|fullname|operator_new[]|operator_new[]|
|`refcount`|275|276|
|length|71|71|
|called|API-MS-WIN-CORE-HEAP-L1-1-0.DLL::GetProcessHeap<br>API-MS-WIN-CORE-HEAP-L1-1-0.DLL::HeapAlloc<br>ModuleFailFastForHRESULT|API-MS-WIN-CORE-HEAP-L1-1-0.DLL::GetProcessHeap<br>API-MS-WIN-CORE-HEAP-L1-1-0.DLL::HeapAlloc<br>ModuleFailFastForHRESULT|
|`calling`|<details><summary>Expand for full list:<br><lambda_d726b1e7ec95932be2432bf4c2269415>::operator()<br>?SetWorldTransform@CDesktopTreeData@@MEAA_NAEBVCMILMatrix@@_NPEAV2@@Z<br>?SetWorldTransform@CTreeData@@MEAA_NAEBVCMILMatrix@@_NPEAV2@@Z<br>BamoDataProviderRegistrarPrincipal::AllocateStub<br>BamoImpl::DiagnosticCallbacks_AutoBamos::BamoConnectionImpl::InitializeDefaultPlaceholderPeer<br>BamoImpl::dataprovider_AutoBamos::BamoConnectionImpl::InitializeDefaultPlaceholderPeer<br>CAnimationLoggingManager::ProcessSetDiagnosticItemId<br>CBackdropVisualImage::EnsureAncestorList<br>CBaseExpression::SetTarget<br>CBitmap::HrLock<br>CBlurRenderingGraphBuilder::BuildOnePass</summary>CBlurRenderingGraphBuilder::BuildPrescale<br>CCachedVisualImage::SetRenderTransform<br>CChannelContext::SetApplicationId<br>CColorKeyBitmap::Create<br>CColorKeyBitmapRealization::Create<br>CColorSpaceLayer::Create<br>CColorTransformLayer::Create<br>CCommandBuffer::Initialize<br>CCommonRenderingEffect::`vector_deleting_destructor'<br>CCommonRenderingEffectFactory::CreateRenderingEffectWorker<CCommonRenderingEffect><br>CComposition::CleanTrees<br>CComposition::Initialize<br>CComputeScribbleSynchronizer::Create<br>CConnection::RunCompositionThread<br>CConversionSwapChain::Create<br>CCpuClipAntialiasSink::Create<br>CCursorState::AddShadowToShape<br>CCursorState::ColorConvertBitmap<br>CCursorState::RotateShape<br>CCursorState::ScaleShape<br>CCursorState::SetShape<br>CCustomKernelEffect::GetShaderCache<br>CD2DContext::PushTarget<br>CD2DEffect::Create<br>CD2DGenericInk::Create<br>CD2DInk::Create<br>CD2DResourceManager::Create<br>CD3DPixelShader::Create<br>CD3DSurface::CreateViewOfTexture<br>CD3DVidMemOnlyTexture::Create<br>CDDisplayManager::CreateDDisplaySwapchainForSource<br>CDDisplaySwapChain::CheckMultiplaneOverlaySupportInternal<br>CDDisplaySwapChain::FindCachedGeneralScanout<br>CDDisplaySwapChain::Initialize<br>CDrawListCache::Update<br>CDrawListEntryBuilder::AppendHWGeometry<br>CDrawListEntryBuilder::ExtractBuiltHWPrimitiveEntry<br>CDrawingContext::DrawSubVisualTree<br>CDummyRemotingSwapChain::Create<br>CDxHandleAdvancedDirectFlipBitmapRealization::Create<br>CDxHandleBitmapRealization::Create<br>CDxHandleStereoBitmapRealization::Create<br>CDxHandleYUVBitmapRealization::Create<br>CDxHandleYUVBitmapRealization::CreateSubResource<br>CExpression::ProcessSetReferenceInfo<br>CExpression::ProcessSetSources<br>CFailFastInScope::CaptureDxgkRingBuffer<br>CFilterEffect::ProcessUpdateInputs<br>CFilterEffectLayer::Create<br>CGDIBitmapRealization::Create<br>CGDISectionBitmapRealization::Create<br>CGammaBlendLayer::Create<br>CGenericInk::CreateScribble<br>CGlobalComposition::Channel_AsyncFlush<br>CGlobalComposition::Partition_Synchronize<br>CGlobalCompositionSurfaceInfo::CBindInfo::CreateAndAddSwapChainBuffers<br>CGlobalMit::Run<br>CHWDrawListEntry::`vector_deleting_destructor'<br>CHolographicClient::Create<br>CHolographicExclusivePresentData::Create<br>CHolographicInteropTaskQueue::Create<br>CHolographicInteropTaskQueue::PostMessageW<br>CHolographicInteropTexture::EnsureRenderBuffers<br>CInjectionAnimation::ProcessSetInjectionData<br>CInteractionProcessor::CalculateDetectedInteractions<br>CInteractionTracker::ProcessSetInertiaModifierAnimations<br>CInteractionTracker::SelectInertiaModifierForAxis<br>CLegacyRenderTarget::EnsureDXGIOutput<br>CLegacySwapChain::CheckMultiplaneOverlaySupport<br>CLegacySwapChain::InternalCheckDirectFlipSupport<br>CLinearInterpolationLayer::Create<br>CManipulationManager::NotifyCaptureManipulation<br>CManipulationManager::NotifyCapturePointer<br>CManipulationManager::NotifyUpdateConfiguration<br>CManipulationManager::NotifyUpdateRails<br>CManipulationManager::NotifyUpdateTemporaryConfiguration<br>CMesh2DEffect::Create<br>CMesh2DEffect::SetVertices<br>CMmcssTask::Set<br>CMotion::CMotion<br>CNaturalAnimation::EnsureAccelerator<br>CNaturalAnimation::GetForceForAxis<br>CNaturalAnimation::InitializeForces<br>COcclusionContext::DrawClippedImage<br>COffScreenRenderingLayer::Create<br>COverlayContext::CheckMultiPlaneOverlaySupport<br>COverlayContext::PresentMPO<br>CPartitionVerticalBlankScheduler::CPartitionVerticalBlankScheduler<br>CPassthroughEffect::GetShaderCache<br>CPayloadedAnimationPrimitiveBuffer::Create<br>CPolygonShape::CPolygonShape<br>CPreComputeContext::CPreWalkVisual::CalcTransform<br>CPreComputeContext::CPreWalkVisual::UpdateTransformChildBounds<br>CPrimitiveBuffer::Initialize<br>CProcessAttributionManager::CreateObserver<br>CProcessResourceAttributionReporter::ReportHighResourceUsageWorker<br>CProjectedShadowApproxBlurEffect::GetShaderCache<br>CProjectedShadowApproxBlurGraphBuilder::AddApproxBlurBrush<br>CQueue<CBufferedInteractionOutput*___ptr64>::Insert<br>CQueue<CManipulationManager::InteractionUpdate*___ptr64>::Insert<br>CQueue<CResource*___ptr64>::Insert<br>CQueue<Microsoft::WRL::ComPtr<CManipulationFrame>_>::Insert<br>CRadialGradientEffect::GetShaderCache<br>CRectangleGeometry::GetShapeDataCore<br>CRectanglesShape::`vector_deleting_destructor'<br>CRegionGeometry::GetShapeDataCore<br>CRoundedRectangleShape::AddNonIntersectedD2DGeometry<br>CRoundedRectangleShape::SharedData::Create<br>CRoundedRectangleShape::`scalar_deleting_destructor'<br>CSecondarySysmemBitmap::LockForRead<br>CShape::FlattenToLineSegments<br>CShape::TryOptimizedCombinePaths<br>CShapeTreeIterator::Walk<CShapeDrawingContext><br>CSharedSectionAnimationPrimitiveBuffer::Create<br>CSurfaceDrawListBrush::`scalar_deleting_destructor'<br>CSyncLockGroup::GetGroup<br>CSynchronousSuperWetInk::CreateScribble<br>CSynchronousSuperWetInk::PullNewPerFrameData<br>CThreadContext::GetCurrent<br>CThreadContext::GetObjectCache<br>CThreadContext::RegisterGraphWalkRoot<br>CTransform3DGroup::BreakLinksForCycles<br>CTransformGroup::BreakLinksForCycles<br>CTransformedGeometryHelper::TransformGeometry<br>CTreeData::SetSuperWetInkClip<br>CTreeEffectLayer::Create<br>CVisual::AddProjectedShadowCaster<br>CVisual::AddProjectedShadowReceiver<br>CVisual::CreateDepthSortedList<br>CVisual::ProcessSetTransformParent<br>CVisualTreeIterator::WalkSubtree<CDrawingContext><br>CVisualTreeIterator::WalkSubtree<CHitTestContext><br>CVisualTreeIterator::WalkSubtree<COcclusionContext><br>CVisualTreeIterator::WalkSubtree<CPreComputeContext><br>CWICBitmapWrapper::Create<br>CWindowNode::AllocateOcclusionInfo<br>ClipPlaneIterator::ClipToPolygon<br>CreateCompObjectDiagnosticsRootProxy<br>CreateProxy_List<br>DiagnosticCallbacks_AutoBamos::BamoConnection::AllocatePeer<br>EmitterShapes::CPathEmitterArea::CreatePathEmitterArea<br>EmitterShapes::CPathEmitterEdge::CreatePathEmitterShape<br>FUN_1800b4d98<br>FUN_1801404b2<br>FUN_18014a2e6<br>FUN_18014a495<br>HrCreateBitmapFromMemoryEx<br>HrCreateDestBitmap<br>HrCreateDestBitmapCopy<br>InteractionSourceManager::ProcessSetManipulations<br>Microsoft::BamoImpl::BaseBamoConnectionImpl::BaseBamoConnectionImpl<br>Microsoft::BamoImpl::BaseBamoConnectionImpl::GetBufferingMessageCallHost<br>Microsoft::BamoImpl::BaseBamoConnectionImpl::TrackError<br>Microsoft::BamoImpl::BufferingMessageCallHost::SubmitBuffer<br>PrimitiveStorage::Alloc<16><br>PrimitiveStorage::CCachableStorage<CDrawListPrimitive4,16>::`scalar_deleting_destructor'<br>`anonymous_namespace'::FramesReport::UpdateResourceCountersForPsn<br>`anonymous_namespace'::State::State<br>dataprovider_AutoBamos::BamoConnection::AllocatePeer<br>detail::buffer_impl<CCheckMPOCache::PlaneInfo,6,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CCpuClipAntialiasSinkContext::SinkRenderParameters,10,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CCustomKernelEffect::ConstantBufferRow,8,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CD3DDevice::CUnpinResource,7,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CDrawListCacheSet::ContentEntry,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CDrawListEntry*___ptr64,4,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CDrawListEntryBuilder::Align16Chunk,120,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<COverlayContext::OverlayPlaneInfo,16,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<ICompositionSurfaceInfoListener*___ptr64,1,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<IMonitorTarget*___ptr64,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,4,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<VertexXYW_ColorDW_UV2_AAFixup,40,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<float,6,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<unsigned_short,100,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<wil::com_ptr_t<CD2DGenericInk,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<wil::com_ptr_t<CD2DInk,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::pointer_buffer_impl<IDeviceResource*___ptr64>::ensure_extra_capacity<br>detail::vector_facade<CBlurredBackdropCache*___ptr64,detail::pointer_buffer_impl<CBlurredBackdropCache*___ptr64>_>::reserve_region<br>detail::vector_facade<CBlurredBackdropCache::CachedBlur,detail::buffer_impl<CBlurredBackdropCache::CachedBlur,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CCpuClipAntialiasSink::Bounds,detail::buffer_impl<CCpuClipAntialiasSink::Bounds,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CCpuClipAntialiasSinkContext::SinkEntry,detail::buffer_impl<CCpuClipAntialiasSinkContext::SinkEntry,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CDrawListEntryBuilder::PrimitiveSubRect,detail::buffer_impl<CDrawListEntryBuilder::PrimitiveSubRect,9,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<COverlayContext*___ptr64,detail::buffer_impl<COverlayContext*___ptr64,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<COverlayContext*___ptr64,detail::buffer_impl<COverlayContext*___ptr64,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CPreComputeContext::SubTreeContext,detail::buffer_impl<CPreComputeContext::SubTreeContext,3,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CRenderingTechniqueFragment::SurfaceDescription,detail::buffer_impl<CRenderingTechniqueFragment::SurfaceDescription,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CRenderingTechniqueFragment::SurfaceDescription,detail::buffer_impl<CRenderingTechniqueFragment::SurfaceDescription,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CRenderingTechniqueFragment_const*___ptr64,detail::buffer_impl<CRenderingTechniqueFragment_const*___ptr64,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CScopedClipStack::ClippingScopeState,detail::buffer_impl<CScopedClipStack::ClippingScopeState,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CScopedClipStack::CpuClipStackState,detail::buffer_impl<CScopedClipStack::CpuClipStackState,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVIRenderList,detail::buffer_impl<CVIRenderList,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisual*___ptr64,detail::buffer_impl<CVisual*___ptr64,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisual*___ptr64,detail::buffer_impl<CVisual*___ptr64,32,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisualSurface::SourceCVI,detail::buffer_impl<CVisualSurface::SourceCVI,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisualTreePath::VisualTreePathUnit,detail::buffer_impl<CVisualTreePath::VisualTreePathUnit,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CoordMap::RampEntry,detail::buffer_impl<CoordMap::RampEntry,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CoordMap::RampPair,detail::buffer_impl<CoordMap::RampPair,6,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D1::Matrix3x2F,detail::buffer_impl<D2D1::Matrix3x2F,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D1_EDGE_FLAGS,detail::buffer_impl<D2D1_EDGE_FLAGS,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D_POINT_2F,detail::buffer_impl<D2D_POINT_2F,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D_RECT_F,detail::buffer_impl<D2D_RECT_F,1,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D_RECT_F,detail::buffer_impl<D2D_RECT_F,3,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<EffectInput,detail::buffer_impl<EffectInput,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<IVisualTreeClient*___ptr64,detail::buffer_impl<IVisualTreeClient*___ptr64,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<Mesh::VertexAAOffsetDesc,detail::buffer_impl<Mesh::VertexAAOffsetDesc,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<PrimitiveUVDesc,detail::buffer_impl<PrimitiveUVDesc,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,detail::buffer_impl<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<_LUID,detail::buffer_impl<_LUID,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<bool,detail::buffer_impl<bool,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<char,detail::buffer_impl<char,48,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<float,detail::buffer_impl<float,6,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<std::function<long___cdecl(CExternalEffectGraph::CGraphRenderingContext*___ptr64)>,detail::buffer_impl<std::function<long___cdecl(CExternalEffectGraph::CGraphRenderingContext*___ptr64)>,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<tagCOMPOSITION_TARGET_ID_AND_STATS,detail::buffer_impl<tagCOMPOSITION_TARGET_ID_AND_STATS,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<unsigned_short,detail::buffer_impl<unsigned_short,174,1,detail::liberal_expansion_policy>_>::resize<br>detail::vector_facade<wil::com_ptr_t<CBackdropVisualImage,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CBackdropVisualImage,wil::err_returncode_policy>,1,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<wil::com_ptr_t<CD2DBrush,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CD2DBrush,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<wil::com_ptr_t<CD3DConstantBuffer,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CD3DConstantBuffer,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<wil::com_ptr_t<CD3DPixelShader,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CD3DPixelShader,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>std::_Allocate<16,std::_Default_allocate_traits,0><br>std::make_shared<CCursorState::ShapeData><br>std::make_shared<CRegion><br>std::make_unique<CComposeTop,0><br>std::make_unique<CCpuClippingData::CpuClipRealization,0><br>std::make_unique<CMILMatrix,0><br>std::make_unique<CPreComputeContext,0><br>std::make_unique<CVisualTreePath,CVisualTreePath&___ptr64,0><br>std::make_unique<EmitterShapes::CEllipseSpawner,Windows::Foundation::Numerics::float2,Windows::Foundation::Numerics::float2,EmitterShapes::EmitFrom_const&___ptr64,0><br>std::make_unique<EmitterShapes::CLineSpawner,Windows::Foundation::Numerics::float2,Windows::Foundation::Numerics::float2,0><br>std::make_unique<EmitterShapes::CPathAreaSpawner,EmitterShapes::CPathEmitterArea*___ptr64,0><br>std::make_unique<EmitterShapes::CPathEdgeSpawner,EmitterShapes::CPathEmitterEdge*___ptr64,0><br>std::make_unique<EmitterShapes::CPointSpawner,0><br>std::make_unique<EmitterShapes::CRectangleEdgeSpawner,float&___ptr64,float&___ptr64,float&___ptr64,float&___ptr64,0><br>std::make_unique<EmitterShapes::CRectangleVolumeSpawner,float&___ptr64,float&___ptr64,float&___ptr64,float&___ptr64,0><br>std::make_unique<char_[0],0><br>std::vector<CFragmentIterator::FragmentStackEntry,std::allocator<CFragmentIterator::FragmentStackEntry>_>::_Emplace_reallocate<CFragmentIterator::FragmentStackEntry></details>|<details><summary>Expand for full list:<br><lambda_d726b1e7ec95932be2432bf4c2269415>::operator()<br>?SetWorldTransform@CDesktopTreeData@@MEAA_NAEBVCMILMatrix@@_NPEAV2@@Z<br>?SetWorldTransform@CTreeData@@MEAA_NAEBVCMILMatrix@@_NPEAV2@@Z<br>BamoDataProviderRegistrarPrincipal::AllocateStub<br>BamoImpl::DiagnosticCallbacks_AutoBamos::BamoConnectionImpl::InitializeDefaultPlaceholderPeer<br>BamoImpl::dataprovider_AutoBamos::BamoConnectionImpl::InitializeDefaultPlaceholderPeer<br>CAnimationLoggingManager::ProcessSetDiagnosticItemId<br>CBackdropVisualImage::EnsureAncestorList<br>CBaseExpression::SetTarget<br>CBitmap::HrLock<br>CBlurRenderingGraphBuilder::BuildOnePass</summary>CBlurRenderingGraphBuilder::BuildPrescale<br>CCachedVisualImage::SetRenderTransform<br>CChannelContext::SetApplicationId<br>CColorKeyBitmap::Create<br>CColorKeyBitmapRealization::Create<br>CColorSpaceLayer::Create<br>CColorTransformLayer::Create<br>CCommandBuffer::Initialize<br>CCommonRenderingEffect::`vector_deleting_destructor'<br>CCommonRenderingEffectFactory::CreateRenderingEffectWorker<CCommonRenderingEffect><br>CComposition::CleanTrees<br>CComposition::Initialize<br>CComputeScribbleSynchronizer::Create<br>CConnection::RunCompositionThread<br>CConversionSwapChain::Create<br>CCpuClipAntialiasSink::Create<br>CCursorState::AddShadowToShape<br>CCursorState::ColorConvertBitmap<br>CCursorState::RotateShape<br>CCursorState::ScaleShape<br>CCursorState::SetShape<br>CCustomKernelEffect::GetShaderCache<br>CD2DContext::PushTarget<br>CD2DEffect::Create<br>CD2DGenericInk::Create<br>CD2DInk::Create<br>CD2DResourceManager::Create<br>CD3DPixelShader::Create<br>CD3DSurface::CreateViewOfTexture<br>CD3DVidMemOnlyTexture::Create<br>CDDisplayManager::CreateDDisplaySwapchainForSource<br>CDDisplaySwapChain::CheckMultiplaneOverlaySupportInternal<br>CDDisplaySwapChain::FindCachedGeneralScanout<br>CDDisplaySwapChain::Initialize<br>CDrawListCache::Update<br>CDrawListEntryBuilder::AppendHWGeometry<br>CDrawListEntryBuilder::ExtractBuiltHWPrimitiveEntry<br>CDrawingContext::DrawSubVisualTree<br>CDummyRemotingSwapChain::Create<br>CDxHandleAdvancedDirectFlipBitmapRealization::Create<br>CDxHandleBitmapRealization::Create<br>CDxHandleStereoBitmapRealization::Create<br>CDxHandleYUVBitmapRealization::Create<br>CDxHandleYUVBitmapRealization::CreateSubResource<br>CExpression::ProcessSetReferenceInfo<br>CExpression::ProcessSetSources<br>CFailFastInScope::CaptureDxgkRingBuffer<br>CFilterEffect::ProcessUpdateInputs<br>CFilterEffectLayer::Create<br>CGDIBitmapRealization::Create<br>CGDISectionBitmapRealization::Create<br>CGammaBlendLayer::Create<br>CGenericInk::CreateScribble<br>CGlobalComposition::Channel_AsyncFlush<br>CGlobalComposition::Partition_Synchronize<br>CGlobalCompositionSurfaceInfo::CBindInfo::CreateAndAddSwapChainBuffers<br>CGlobalMit::Run<br>CHWDrawListEntry::`vector_deleting_destructor'<br>CHolographicClient::Create<br>CHolographicExclusivePresentData::Create<br>CHolographicInteropTaskQueue::Create<br>CHolographicInteropTaskQueue::PostMessageW<br>CHolographicInteropTexture::EnsureRenderBuffers<br>CInjectionAnimation::ProcessSetInjectionData<br>CInteractionProcessor::CalculateDetectedInteractions<br>CInteractionTracker::ProcessSetInertiaModifierAnimations<br>CInteractionTracker::SelectInertiaModifierForAxis<br>CLegacyRenderTarget::EnsureDXGIOutput<br>CLegacySwapChain::CheckMultiplaneOverlaySupport<br>CLegacySwapChain::InternalCheckDirectFlipSupport<br>CLinearInterpolationLayer::Create<br>CManipulationManager::NotifyCaptureManipulation<br>CManipulationManager::NotifyCapturePointer<br>CManipulationManager::NotifyUpdateConfiguration<br>CManipulationManager::NotifyUpdateRails<br>CManipulationManager::NotifyUpdateTemporaryConfiguration<br>CMesh2DEffect::Create<br>CMesh2DEffect::SetVertices<br>CMmcssTask::Set<br>CMotion::CMotion<br>CNaturalAnimation::EnsureAccelerator<br>CNaturalAnimation::GetForceForAxis<br>CNaturalAnimation::InitializeForces<br>COcclusionContext::DrawClippedImage<br>COffScreenRenderingLayer::Create<br>COverlayContext::CheckMultiPlaneOverlaySupport<br>COverlayContext::PresentMPO<br>CPartitionVerticalBlankScheduler::CPartitionVerticalBlankScheduler<br>CPassthroughEffect::GetShaderCache<br>CPayloadedAnimationPrimitiveBuffer::Create<br>CPolygonShape::CPolygonShape<br>CPreComputeContext::CPreWalkVisual::CalcTransform<br>CPreComputeContext::CPreWalkVisual::UpdateTransformChildBounds<br>CPrimitiveBuffer::Initialize<br>CProcessAttributionManager::CreateObserver<br>CProcessResourceAttributionReporter::ReportHighResourceUsageWorker<br>CProjectedShadowApproxBlurEffect::GetShaderCache<br>CProjectedShadowApproxBlurGraphBuilder::AddApproxBlurBrush<br>CQueue<CBufferedInteractionOutput*___ptr64>::Insert<br>CQueue<CManipulationManager::InteractionUpdate*___ptr64>::Insert<br>CQueue<CResource*___ptr64>::Insert<br>CQueue<Microsoft::WRL::ComPtr<CManipulationFrame>_>::Insert<br>CRadialGradientEffect::GetShaderCache<br>CRectangleGeometry::GetShapeDataCore<br>CRectanglesShape::`vector_deleting_destructor'<br>CRegionGeometry::GetShapeDataCore<br>CRoundedRectangleShape::AddNonIntersectedD2DGeometry<br>CRoundedRectangleShape::SharedData::Create<br>CRoundedRectangleShape::`scalar_deleting_destructor'<br>CSecondarySysmemBitmap::LockForRead<br>CShape::FlattenToLineSegments<br>CShape::TryOptimizedCombinePaths<br>CShapeTreeIterator::Walk<CShapeDrawingContext><br>CSharedSectionAnimationPrimitiveBuffer::Create<br>CSurfaceDrawListBrush::`scalar_deleting_destructor'<br>CSyncLockGroup::GetGroup<br>CSynchronousSuperWetInk::CreateScribble<br>CSynchronousSuperWetInk::PullNewPerFrameData<br>CThreadContext::GetCurrent<br>CThreadContext::GetObjectCache<br>CThreadContext::RegisterGraphWalkRoot<br>CTransform3DGroup::BreakLinksForCycles<br>CTransformGroup::BreakLinksForCycles<br>CTransformedGeometryHelper::TransformGeometry<br>CTreeData::SetSuperWetInkClip<br>CTreeEffectLayer::Create<br>CVisual::AddProjectedShadowCaster<br>CVisual::AddProjectedShadowReceiver<br>CVisual::CreateDepthSortedList<br>CVisual::ProcessSetTransformParent<br>CVisualTreeIterator::WalkSubtree<CDrawingContext><br>CVisualTreeIterator::WalkSubtree<CHitTestContext><br>CVisualTreeIterator::WalkSubtree<COcclusionContext><br>CVisualTreeIterator::WalkSubtree<CPreComputeContext><br>CWICBitmapWrapper::Create<br>CWindowNode::AllocateOcclusionInfo<br>ClipPlaneIterator::ClipToPolygon<br>CreateCompObjectDiagnosticsRootProxy<br>CreateProxy_List<br>DiagnosticCallbacks_AutoBamos::BamoConnection::AllocatePeer<br>EmitterShapes::CPathEmitterArea::CreatePathEmitterArea<br>EmitterShapes::CPathEmitterEdge::CreatePathEmitterShape<br>FUN_18003669c<br>FUN_18014ff18<br>FUN_18015bb2a<br>FUN_18015bcd9<br>HrCreateBitmapFromMemoryEx<br>HrCreateDestBitmap<br>HrCreateDestBitmapCopy<br>InteractionSourceManager::ProcessSetManipulations<br>Microsoft::BamoImpl::BaseBamoConnectionImpl::BaseBamoConnectionImpl<br>Microsoft::BamoImpl::BaseBamoConnectionImpl::GetBufferingMessageCallHost<br>Microsoft::BamoImpl::BaseBamoConnectionImpl::TrackError<br>Microsoft::BamoImpl::BufferingMessageCallHost::SubmitBuffer<br>PrimitiveStorage::Alloc<16><br>PrimitiveStorage::CCachableStorage<CDrawListPrimitive4,16>::`scalar_deleting_destructor'<br>`anonymous_namespace'::FramesReport::UpdateResourceCountersForPsn<br>`anonymous_namespace'::State::State<br>dataprovider_AutoBamos::BamoConnection::AllocatePeer<br>detail::buffer_impl<CCheckMPOCache::PlaneInfo,6,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CCpuClipAntialiasSinkContext::SinkRenderParameters,10,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CCustomKernelEffect::ConstantBufferRow,8,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CD3DDevice::CUnpinResource,7,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CDrawListCacheSet::ContentEntry,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CDrawListEntry*___ptr64,4,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<CDrawListEntryBuilder::Align16Chunk,120,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<COverlayContext::OverlayPlaneInfo,16,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<ICompositionSurfaceInfoListener*___ptr64,1,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<IMonitorTarget*___ptr64,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,4,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<VertexXYW_ColorDW_UV2_AAFixup,40,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<float,6,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<unsigned_short,100,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<wil::com_ptr_t<CD2DGenericInk,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::buffer_impl<wil::com_ptr_t<CD2DInk,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>::ensure_extra_capacity<br>detail::pointer_buffer_impl<IDeviceResource*___ptr64>::ensure_extra_capacity<br>detail::vector_facade<CBlurredBackdropCache*___ptr64,detail::pointer_buffer_impl<CBlurredBackdropCache*___ptr64>_>::reserve_region<br>detail::vector_facade<CBlurredBackdropCache::CachedBlur,detail::buffer_impl<CBlurredBackdropCache::CachedBlur,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CCpuClipAntialiasSink::Bounds,detail::buffer_impl<CCpuClipAntialiasSink::Bounds,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CCpuClipAntialiasSinkContext::SinkEntry,detail::buffer_impl<CCpuClipAntialiasSinkContext::SinkEntry,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CDrawListEntryBuilder::PrimitiveSubRect,detail::buffer_impl<CDrawListEntryBuilder::PrimitiveSubRect,9,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<COverlayContext*___ptr64,detail::buffer_impl<COverlayContext*___ptr64,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<COverlayContext*___ptr64,detail::buffer_impl<COverlayContext*___ptr64,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CPreComputeContext::SubTreeContext,detail::buffer_impl<CPreComputeContext::SubTreeContext,3,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CRenderingTechniqueFragment::SurfaceDescription,detail::buffer_impl<CRenderingTechniqueFragment::SurfaceDescription,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CRenderingTechniqueFragment::SurfaceDescription,detail::buffer_impl<CRenderingTechniqueFragment::SurfaceDescription,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CRenderingTechniqueFragment_const*___ptr64,detail::buffer_impl<CRenderingTechniqueFragment_const*___ptr64,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CScopedClipStack::ClippingScopeState,detail::buffer_impl<CScopedClipStack::ClippingScopeState,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CScopedClipStack::CpuClipStackState,detail::buffer_impl<CScopedClipStack::CpuClipStackState,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVIRenderList,detail::buffer_impl<CVIRenderList,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisual*___ptr64,detail::buffer_impl<CVisual*___ptr64,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisual*___ptr64,detail::buffer_impl<CVisual*___ptr64,32,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisualSurface::SourceCVI,detail::buffer_impl<CVisualSurface::SourceCVI,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CVisualTreePath::VisualTreePathUnit,detail::buffer_impl<CVisualTreePath::VisualTreePathUnit,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CoordMap::RampEntry,detail::buffer_impl<CoordMap::RampEntry,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<CoordMap::RampPair,detail::buffer_impl<CoordMap::RampPair,6,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D1::Matrix3x2F,detail::buffer_impl<D2D1::Matrix3x2F,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D1_EDGE_FLAGS,detail::buffer_impl<D2D1_EDGE_FLAGS,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D_POINT_2F,detail::buffer_impl<D2D_POINT_2F,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D_RECT_F,detail::buffer_impl<D2D_RECT_F,1,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<D2D_RECT_F,detail::buffer_impl<D2D_RECT_F,3,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<EffectInput,detail::buffer_impl<EffectInput,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<IVisualTreeClient*___ptr64,detail::buffer_impl<IVisualTreeClient*___ptr64,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<Mesh::VertexAAOffsetDesc,detail::buffer_impl<Mesh::VertexAAOffsetDesc,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<PrimitiveUVDesc,detail::buffer_impl<PrimitiveUVDesc,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,detail::buffer_impl<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,10,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<_LUID,detail::buffer_impl<_LUID,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<bool,detail::buffer_impl<bool,40,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<char,detail::buffer_impl<char,48,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<float,detail::buffer_impl<float,6,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<std::function<long___cdecl(CExternalEffectGraph::CGraphRenderingContext*___ptr64)>,detail::buffer_impl<std::function<long___cdecl(CExternalEffectGraph::CGraphRenderingContext*___ptr64)>,16,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<tagCOMPOSITION_TARGET_ID_AND_STATS,detail::buffer_impl<tagCOMPOSITION_TARGET_ID_AND_STATS,4,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<unsigned_short,detail::buffer_impl<unsigned_short,174,1,detail::liberal_expansion_policy>_>::resize<br>detail::vector_facade<wil::com_ptr_t<CBackdropVisualImage,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CBackdropVisualImage,wil::err_returncode_policy>,1,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<wil::com_ptr_t<CD2DBrush,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CD2DBrush,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<wil::com_ptr_t<CD3DConstantBuffer,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CD3DConstantBuffer,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>detail::vector_facade<wil::com_ptr_t<CD3DPixelShader,wil::err_returncode_policy>,detail::buffer_impl<wil::com_ptr_t<CD3DPixelShader,wil::err_returncode_policy>,2,1,detail::liberal_expansion_policy>_>::reserve_region<br>std::_Allocate<16,std::_Default_allocate_traits,0><br>std::make_shared<CCursorState::ShapeData><br>std::make_shared<CRegion><br>std::make_unique<CComposeTop,0><br>std::make_unique<CCpuClippingData::CpuClipRealization,0><br>std::make_unique<CMILMatrix,0><br>std::make_unique<CPreComputeContext,0><br>std::make_unique<CVisualTreePath,CVisualTreePath&___ptr64,0><br>std::make_unique<EmitterShapes::CEllipseSpawner,Windows::Foundation::Numerics::float2,Windows::Foundation::Numerics::float2,EmitterShapes::EmitFrom_const&___ptr64,0><br>std::make_unique<EmitterShapes::CLineSpawner,Windows::Foundation::Numerics::float2,Windows::Foundation::Numerics::float2,0><br>std::make_unique<EmitterShapes::CPathAreaSpawner,EmitterShapes::CPathEmitterArea*___ptr64,0><br>std::make_unique<EmitterShapes::CPathEdgeSpawner,EmitterShapes::CPathEmitterEdge*___ptr64,0><br>std::make_unique<EmitterShapes::CPointSpawner,0><br>std::make_unique<EmitterShapes::CRectangleEdgeSpawner,float&___ptr64,float&___ptr64,float&___ptr64,float&___ptr64,0><br>std::make_unique<EmitterShapes::CRectangleVolumeSpawner,float&___ptr64,float&___ptr64,float&___ptr64,float&___ptr64,0><br>std::make_unique<char_[0],0><br>std::vector<CFragmentIterator::FragmentStackEntry,std::allocator<CFragmentIterator::FragmentStackEntry>_>::_Emplace_reallocate<CFragmentIterator::FragmentStackEntry></details>|
|paramcount|1|1|
|`address`|180038c50|180034c10|
|sig|void * __cdecl operator_new[](__uint64 param_1)|void * __cdecl operator_new[](__uint64 param_1)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|False|False|

### operator_new[] Calling Diff


```diff
--- operator_new[] calling
+++ operator_new[] calling
@@ -154,4 +154,4 @@
-FUN_1800b4d98
-FUN_1801404b2
-FUN_18014a2e6
-FUN_18014a495
+FUN_18003669c
+FUN_18014ff18
+FUN_18015bb2a
+FUN_18015bcd9
```


## API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::SetEvent

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,calling|
|ratio|1.0|
|i_ratio|1.0|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash,ExternalsName|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|SetEvent|SetEvent|
|fullname|API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::SetEvent|API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::SetEvent|
|`refcount`|32|33|
|length|0|0|
|called|||
|`calling`|<details><summary>Expand for full list:<br>?SetEvent@details@wil@@YAXPEAX@Z<br>CBaseExpression::SetOutputValue<br>CChannel::PostMessageToChannel<br>CCompiledEffectTemplate::SignalCompileCompletedEvent<br>CComposition::PreRender<br>CConnection::Disconnect<br>CConnection::MainCompositionThreadLoop<br>CConnection::~CConnection<br>CEffectCompilationService::BeginCompile<br>CEffectCompilationService::OnTaskCompleted_AnyThread<br>CEventResponse::SendResponse</summary>CGlobalComposition::Channel_VisualCaptureBits<br>CGlobalComposition::Partition_DesktopCaptureBits<br>CGlobalComposition::Partition_Synchronize<br>CGlobalManipulationManager::ManipulationThreadMain<br>CGlobalManipulationManager::UpdateMMCSSTask<br>CGlobalSurfaceManager::PostPresent<br>CHolographicClient::ProcessMessage<br>CHolographicExclusiveView::UpdateFrameStatistics<br>CInteraction::SetTemporaryConfiguration<br>CInternalMilCmdConnection::PostMessageToClient<br>CInternalMilCmdConnection::SendConnectionLostNotification<br>CManipulationManager::ProcessManipulationThreadCallbackInput<br>CMit::Reset<br>CMit::Stop<br>CRenderTargetManager::PostPresent<br>CSurfaceManager::ResetTokenThread<br>CSurfaceManager::~CSurfaceManager<br>VisualCaptureBitsResponse::SendResponse<br>_Init_thread_notify</details>|<details><summary>Expand for full list:<br>?SetEvent@details@wil@@YAXPEAX@Z<br>CBaseExpression::CalculateValue<br>CBaseExpression::SetOutputValue<br>CChannel::PostMessageToChannel<br>CCompiledEffectTemplate::SignalCompileCompletedEvent<br>CComposition::PreRender<br>CConnection::Disconnect<br>CConnection::MainCompositionThreadLoop<br>CConnection::~CConnection<br>CEffectCompilationService::BeginCompile<br>CEffectCompilationService::OnTaskCompleted_AnyThread</summary>CEventResponse::SendResponse<br>CGlobalComposition::Channel_VisualCaptureBits<br>CGlobalComposition::Partition_DesktopCaptureBits<br>CGlobalComposition::Partition_Synchronize<br>CGlobalManipulationManager::ManipulationThreadMain<br>CGlobalManipulationManager::UpdateMMCSSTask<br>CGlobalSurfaceManager::PostPresent<br>CHolographicClient::ProcessMessage<br>CHolographicExclusiveView::UpdateFrameStatistics<br>CInteraction::SetTemporaryConfiguration<br>CInternalMilCmdConnection::PostMessageToClient<br>CInternalMilCmdConnection::SendConnectionLostNotification<br>CManipulationManager::ProcessManipulationThreadCallbackInput<br>CMit::Reset<br>CMit::Stop<br>CRenderTargetManager::PostPresent<br>CSurfaceManager::ResetTokenThread<br>CSurfaceManager::~CSurfaceManager<br>VisualCaptureBitsResponse::SendResponse<br>_Init_thread_notify</details>|
|paramcount|1|1|
|address|EXTERNAL:00000062|EXTERNAL:00000062|
|sig|BOOL __stdcall SetEvent(HANDLE hEvent)|BOOL __stdcall SetEvent(HANDLE hEvent)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|True|True|

### API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::SetEvent Calling Diff


```diff
--- API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::SetEvent calling
+++ API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::SetEvent calling
@@ -1,0 +2 @@
+CBaseExpression::CalculateValue
```


## SetProduct

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|1.0|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|SetProduct|SetProduct|
|fullname|D2D1::Matrix3x2F::SetProduct|D2D1::Matrix3x2F::SetProduct|
|`refcount`|44|43|
|length|193|193|
|called|||
|`calling`|<details><summary>Expand for full list:<br>CAffineTransform2DEffect::CalcDirectInversedWorldInputBoundsFromVisibleWorldOutputBounds<br>CAffineTransform2DEffect::SetD2DEffectProperties<br>CBackdropVisualImage::GetViewBoxToUVTransform<br>CBitmapRenderStrategy::GetTextureMemoryLayoutData<br>CBlurRenderingGraph::DeterminePreScale<br>CBrushRenderingGraph::GetInputBrushParameters<br>CComponentTransform2D::GetRealization<br>CCompositionGlyphRun::UpdateBrushTransform<br>CCpuClipAntialiasSinkContext::ProcessRenderCommands_OffscreenRenderPass<br>CDrawListEntryBuilder::AppendCpuClipAntialiasHWPrimitive<br>CDrawListEntryBuilder::Insert</summary>CDrawListEntryBuilder::InsertWARP<br>CExpressionValueStack::Multiply<br>CExternalEffectGraph::CGraphRenderingContext::MakeHalfSizeTargetFromSource<br>CExternalEffectGraph::CGraphRenderingContext::MakeTargetFromSource<br>CMILMatrix::Multiply<br>CNineGridBrush::GetBrushParameters<br>CNineGridDrawListBrush::EnumerateBrushes<br>CPrimitiveGroupDrawListBrush::EnumerateBrushes<br>CPrimitiveGroupRenderStrategy::GetTextureMemoryLayoutData<br>CProjectedShadow::GenerateDrawList<br>CProxyGeometry::GetShapeTransformRealization<br>CScopedClipStack::PushCpuClipToScope<br>CShapeDrawingContext::Render<br>CSurfaceBrush::ComputeLayout<br>CTransformedGeometryHelper::TransformGeometry<br>CTreeEffectLayer::GetDestToTexSpaceTransform<br>CTreeEffectLayer::GetTransformToLayerSpace<br>CViewBox::GetRealization<br>CWARPDrawListEntry::EmitGeometry<br>D2DMatrixHelper::ComputeRectangleTransform<br>FUN_1800688e5<br>FUN_18006c14c<br>FUN_180118f5a<br>FUN_18011a0d2<br>FUN_18014367b<br>FUN_180148e9e</details>|<details><summary>Expand for full list:<br>CAffineTransform2DEffect::CalcDirectInversedWorldInputBoundsFromVisibleWorldOutputBounds<br>CAffineTransform2DEffect::SetD2DEffectProperties<br>CBackdropVisualImage::GetViewBoxToUVTransform<br>CBitmapRenderStrategy::GetTextureMemoryLayoutData<br>CBlurRenderingGraph::DeterminePreScale<br>CBrushRenderingGraph::GetInputBrushParameters<br>CComponentTransform2D::GetRealization<br>CCompositionGlyphRun::UpdateBrushTransform<br>CCpuClipAntialiasSinkContext::ProcessRenderCommands_OffscreenRenderPass<br>CDrawListEntryBuilder::AppendCpuClipAntialiasHWPrimitive<br>CDrawListEntryBuilder::Insert</summary>CDrawListEntryBuilder::InsertWARP<br>CExternalEffectGraph::CGraphRenderingContext::MakeHalfSizeTargetFromSource<br>CExternalEffectGraph::CGraphRenderingContext::MakeTargetFromSource<br>CMILMatrix::Multiply<br>CNineGridBrush::GetBrushParameters<br>CNineGridDrawListBrush::EnumerateBrushes<br>CPrimitiveGroupDrawListBrush::EnumerateBrushes<br>CPrimitiveGroupRenderStrategy::GetTextureMemoryLayoutData<br>CProjectedShadow::GenerateDrawList<br>CProxyGeometry::GetShapeTransformRealization<br>CScopedClipStack::PushCpuClipToScope<br>CShapeDrawingContext::Render<br>CSurfaceBrush::ComputeLayout<br>CTransformedGeometryHelper::TransformGeometry<br>CTreeEffectLayer::GetDestToTexSpaceTransform<br>CTreeEffectLayer::GetTransformToLayerSpace<br>CViewBox::GetRealization<br>CWARPDrawListEntry::EmitGeometry<br>D2DMatrixHelper::ComputeRectangleTransform<br>FUN_18006e9f5<br>FUN_18007225c<br>FUN_180121bf8<br>FUN_180123c0c<br>FUN_18014a846<br>FUN_1801530e1</details>|
|paramcount|3|3|
|`address`|180045e34|180080894|
|sig|void __thiscall SetProduct(Matrix3x2F * this, Matrix3x2F * param_1, Matrix3x2F * param_2)|void __thiscall SetProduct(Matrix3x2F * this, Matrix3x2F * param_1, Matrix3x2F * param_2)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### SetProduct Calling Diff


```diff
--- D2D1::Matrix3x2F::SetProduct calling
+++ D2D1::Matrix3x2F::SetProduct calling
@@ -13 +12,0 @@
-CExpressionValueStack::Multiply
@@ -32,6 +31,6 @@
-FUN_1800688e5
-FUN_18006c14c
-FUN_180118f5a
-FUN_18011a0d2
-FUN_18014367b
-FUN_180148e9e
+FUN_18006e9f5
+FUN_18007225c
+FUN_180121bf8
+FUN_180123c0c
+FUN_18014a846
+FUN_1801530e1
```


## ResolveAllocation

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|0.77|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|ResolveAllocation|ResolveAllocation|
|fullname|CSharedSectionBase::ResolveAllocation|CSharedSectionBase::ResolveAllocation|
|`refcount`|12|13|
|length|32|32|
|called|||
|`calling`|<details><summary>Expand for full list:<br>CCompiledEffectTemplate::ProcessUpdate<br>CExpression::ProcessSetNodesInfo<br>CGenericInkTipPointSource::Initialize<br>CInjectionAnimation::ProcessSetInjectionData<br>CKeyframeAnimation::ProcessSetKeyframeData<br>CKeyframeAnimation::ProcessSetPathData<br>CPathGeometry::ProcessSetPath<br>CPrimitiveGroup::ResolveSharedMemoryBuffer<br>CSharedSectionWrapper::GetSharedSectionData<br>CSuperWetSource::ProcessVailPerFrameDataBuffer<br>CSynchronousSuperWetInk::OnPropertyChanged</summary></details>|<details><summary>Expand for full list:<br>CCompiledEffectTemplate::ProcessUpdate<br>CExpression::ProcessSetNodesInfo<br>CGenericInkTipPointSource::Initialize<br>CInjectionAnimation::ProcessSetInjectionData<br>CKeyframeAnimation::ProcessSetKeyframeData<br>CKeyframeAnimation::ProcessSetPathData<br>CPathGeometry::ProcessSetPath<br>CPrimitiveGroup::ResolveSharedMemoryBufferNew<br>CPrimitiveGroup::ResolveSharedMemoryBufferOld<br>CSharedSectionWrapper::GetSharedSectionData<br>CSuperWetSource::ProcessVailPerFrameDataBuffer</summary>CSynchronousSuperWetInk::OnPropertyChanged</details>|
|paramcount|3|3|
|`address`|180088bf0|180098d48|
|sig|void * __thiscall ResolveAllocation(CSharedSectionBase * this, __uint64 param_1, __uint64 param_2)|void * __thiscall ResolveAllocation(CSharedSectionBase * this, __uint64 param_1, __uint64 param_2)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### ResolveAllocation Calling Diff


```diff
--- CSharedSectionBase::ResolveAllocation calling
+++ CSharedSectionBase::ResolveAllocation calling
@@ -8 +8,2 @@
-CPrimitiveGroup::ResolveSharedMemoryBuffer
+CPrimitiveGroup::ResolveSharedMemoryBufferNew
+CPrimitiveGroup::ResolveSharedMemoryBufferOld
```


## MilInstrumentationCheckHR_MaybeFailFast

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|0.64|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|MilInstrumentationCheckHR_MaybeFailFast|MilInstrumentationCheckHR_MaybeFailFast|
|fullname|MilInstrumentationCheckHR_MaybeFailFast|MilInstrumentationCheckHR_MaybeFailFast|
|`refcount`|3215|3220|
|length|165|165|
|called|DoStackCapture<br>IsHRInList<br>MilInstrumentationHandleFailure_MaybeFailFast|DoStackCapture<br>IsHRInList<br>MilInstrumentationHandleFailure_MaybeFailFast|
|`calling`|<details><summary>Expand for full list:<br><lambda_08f8e6791065478e4a38815f49fd4aba>::<lambda_invoker_cdecl><br><lambda_4d6035b5fdecd7bb0589f89584db9c3e>::operator()<br><lambda_f7805202518b118888e0b3d23c76c683>::operator()<br>?CreateBitmap@CExternalLayer@@KAJAEBVCResourceTag@@AEBUMilPointAndSizeL@@AEBUPixelFormatInfo@@AEBVRenderTargetInfo@@W4Enum@CacheMode@@PEAPEAVIRenderTargetBitmap@@@Z<br>?DuplicateHandle@CResourceTable@@QEAAJPEAVCChannelContext@@I0I@Z<br>?GetWorldTransform@CVisual@@QEBAJPEBVCVisualTree@@W4WalkReason@@PEAVCMILMatrix@@PEA_N2@Z<br>?SetPixelFormat@?$CGdiSpriteBitmapGeneratedT@VCGdiSpriteBitmap@@VCResource@@@@QEAAJW4DXGI_FORMAT@@@Z<br>AlignRectFToPointAndSizeL<br>AppendColorConversion<br>AppendColorModifications<br>AppendLights</summary>AppendShaderBody<br>ApplyTexcoordExtendMode<br>ApplyTexcoordTransformations<br>CAffineTransform2DEffect::SetD2DEffectProperties<br>CAffineTransform2DEffect::SetProperty<br>CAnimation::ProcessAddTimeEvents<br>CAnimation::ProcessAppend<br>CAnimation::ProcessSetCallbackId<br>CAnimation::ProcessSetLegacyTrigger<br>CAnimation::ProcessSetPrimitives<br>CAnimationControllerGeneratedT<CAnimationController,CPropertyChangeResource>::SetOrAppendKeyframeAnimations<br>CAnimationLoggingManager::LogDebugPropertyUpdates<br>CAnimationLoggingManager::ProcessSetCompositorComment<br>CAnimationLoggingManager::ProcessSetPropertyUpdate<br>CAnimationTrigger::SetProperty<br>CAnimationTriggerGeneratedT<CAnimationTrigger,CPropertyChangeResource>::SetCondition<br>CAnimationTriggerGeneratedT<CAnimationTrigger,CPropertyChangeResource>::SetOrAppendAnimations<br>CArithmeticCompositeEffect::SetD2DEffectProperties<br>CArithmeticCompositeEffect::SetProperty<br>CArrayBasedCoverageSet::Add<br>CAsyncFlushResponse::SendResponse<br>CAsyncFlushResponse::SendResponseWorker<br>CAtlasBitmapResource::Create<br>CAtlasBitmapResource::GetDeviceTexture<br>CAtlasBitmapResource::Update<br>CAtlasManager::AllocateGradientStrip<br>CAtlasManager::CompactAtlases<br>CAtlasManager::CompactSingleAtlas<br>CAtlasTexture::Create<br>CAtlasTexture::Initialize<br>CAtlasedRectsGroup::Draw<br>CAtlasedRectsGroup::GenerateDrawList<br>CAtlasedRectsGroupGeneratedT<CAtlasedRectsGroup,CContent>::SetImageSource<br>CAtlasedRectsGroupGeneratedT<CAtlasedRectsGroup,CContent>::SetOrAppendChildren<br>CBaseAnimation::ProcessAddBinding<br>CBaseAnimation::ProcessRemoveBinding<br>CBaseAnimation::RegisterAnimateResource<br>CBaseAnimation::UnregisterAnimateResource<br>CBaseClipStack::Push<br>CBaseExpression::CalculateValue<br>CBaseExpression::MergeValueWithMask<br>CBaseExpression::NotifyAnimationCompleted<br>CBaseExpression::NotifyAnimationDisconnected<br>CBaseExpression::ProcessSetBindingBroken<br>CBaseExpression::ProcessSetTarget<br>CBaseExpression::RegisterIndirectTarget<br>CBaseExpression::SetChannelHandle<br>CBaseExpression::SetExpressionArray<tagMILCMD_BASEEXPRESSION_ADDINITIALVALUEEXPRESSIONS,DynArrayIANoCtor<CBaseExpression*___ptr64,2,0>_><br>CBaseExpression::SetOutputValue<br>CBaseExpression::SetTarget<br>CBaseExpression::StartAsTriggeredAnimation<br>CBaseExpression::TryGetTargetValue<br>CBaseExpression::TryRegisterWithExpressionManager<br>CBatchOptimizer::Flush<br>CBitmap::CopyPixels<br>CBitmap::CopyPixelsHelper<br>CBitmap::HrCheckPixelRect<br>CBitmap::HrInitDataFromIBitmapSource<br>CBitmap::HrLockUnaligned<br>CBitmap::Lock<br>CBitmapLock::GetDataPointer<br>CBitmapLock::GetPixelFormat<br>CBitmapLock::GetSize<br>CBitmapLock::GetStride<br>CBitmapLock::HrInit<br>CBitmapLockState::LockRead<br>CBitmapLockState::LockWrite<br>CBitmapLockUnaligned::HrInit<br>CBitmapRenderStrategy::Draw<br>CBitmapRenderStrategy::GetBrushParameters<br>CBitmapRenderStrategy::GetCompositionSurfaceInfo<br>CBitmapRenderStrategy::GetTextureMemoryLayoutData<br>CBitmapResource::Create<br>CBitmapResource::GetCurrentRenderingRealization<br>CBitmapResource::ProcessSource<br>CBitmapResourceRenderStrategy::GetBrushParametersWorker<br>CBlendEffect::SetD2DEffectProperties<br>CBlurRenderingGraph::Create<br>CBlurRenderingGraphBuilder::BuildPrescale<br>CBlurredWallpaperBackdropBrush::GetBrushParameters<br>CBrightnessEffect::SetD2DEffectProperties<br>CBrightnessEffect::SetProperty<br>CBrush::CreateLayoutGeometryDrawListBrush<br>CBrush::GenerateDrawList<br>CBrushDrawListGenerator::ComputeBrushClamp<br>CBrushDrawListGenerator::GenerateDrawListPrimitive<br>CBrushDrawListGenerator::GenerateIntermediateSurfaceBrush<br>CBrushRenderingEffect::SetStateOnDevice<br>CBrushRenderingGraph::GetInputBrushParameters<br>CBrushRenderingGraph::RenderInternalEffect<br>CBrushRenderingGraphBuilder::AddMaskBrush<br>CBrushRenderingGraphBuilder::AddNamedInputToFragment<br>CBrushRenderingGraphBuilder::AddNineGridBrush<br>CBrushRenderingGraphBuilder::AddRadialGradientBrush<br>CBrushRenderingGraphBuilder::Build<br>CBrushRenderingGraphBuilder::Build<br>CBrushRenderingGraphBuilder::CheckFragmentSize<br>CBrushRenderingGraphBuilder::CreateShaderBodies<br>CBrushRenderingGraphBuilder::CreateTechniqueForFragment<br>CBrushRenderingGraphBuilder::EnsureShaderCache<br>CBspNode::BuildPolygonList<br>CBspNode::PushPolygon<br>CBspPolygonListBuilder::BuildPolygonList<br>CBspPreComputeHelper::CheckVisibilityAndInsertIntoBspTree<br>CBspPreComputeHelper::CleanupAfterWalking<br>CBspPreComputeHelper::CreatePolygonAndPushToBspTree<br>CBspPreComputeHelper::PushStacksForBspChildVisual<br>CBspPreComputeHelper::PushStacksForBspRootVisual<br>CBspPreComputeHelper::PushTransformForChildVisual<br>CBspTreeIterator::WalkSubtree<CBspPolygonListBuilder><br>CCachedVisualImage::CCachedTarget::Update<br>CCachedVisualImage::CreateCachedTarget<br>CCachedVisualImage::EnsureRenderTargetBitmap<br>CCachedVisualImage::GetD2DBitmap<br>CCachedVisualImage::GetDeviceTexture<br>CCachedVisualImage::SetForDCompSnapshot<br>CCachedVisualImage::SetRenderTransform<br>CCachedVisualImage::SetRootVisual<br>CCachedVisualImage::UpdateFromVisualSurface<br>CCachedWindowBackgroundTreatment::Create<br>CCachedWindowBackgroundTreatment::Update<br>CCaptureController::ProcessSetTransform<br>CCaptureController::ProcessSetVisualTree<br>CCaptureRenderTarget::CreateRenderTargetForFrameBuffer<br>CCaptureRenderTarget::EnsureResources<br>CCaptureRenderTarget::Present<br>CCaptureRenderTarget::ProcessSetFlipManager<br>CCaptureRenderTarget::Render<br>CCaptureRenderTarget::RenderAdditionalTopmostContent<br>CCaptureRenderTarget::SetTransform<br>CCaptureRenderTarget::TryTargetNextBuffer<br>CChannel::AnimationUpdatePrimitives<br>CChannel::AtlasedRectsGroupUpdate<br>CChannel::AtlasedRectsMeshUpdate<br>CChannel::BeginCommand<br>CChannel::GdiSpriteBitmapDirtyRectangles<br>CChannel::Geometry2DGroupUpdate<br>CChannel::InteractionUpdateConfiguration<br>CChannel::LinearGradientLegacyMilBrushUpdate<br>CChannel::MeshGeometry2DUpdate<br>CChannel::RenderDataUpdate<br>CChannel::RgnGeometryUpdate<br>CChannel::SendCommand<br>CChannel::Transform3DGroupUpdate<br>CChannel::TransformGroupUpdate<br>CChannel::VisualGroupUpdate<br>CChannelContext::Create<br>CChannelContext::PostMessageToChannel<br>CChannelTable::AssignChannelEntry<br>CChannelTable::DestroyHandle<br>CChannelTable::GetMasterTableEntry<br>CClientMemoryBitmap::HrInit<br>CClipBrush::Create<br>CClipBrush::EnsureBrushGraph<br>CClipBrush::GetBounds<br>CClipBrush::GetBrushParameters<br>CClipBrush::GetTextureMemoryLayoutData<br>CColorBrush::GetProperty<br>CColorBrush::SetProperty<br>CColorGradientStop::GetProperty<br>CColorGradientStop::SetProperty<br>CColorKeyBitmap::ApplyColorKeyToBuffer<br>CColorKeyBitmap::CopyPixels<br>CColorKeyBitmap::Create<br>CColorKeyBitmap::InitColorKey<br>CColorKeyBitmap::Initialize<br>CColorKeyBitmap::LockForRead<br>CColorKeyBitmapRealization::Create<br>CColorKeyBitmapRealization::GetD2DBitmap<br>CColorKeyBitmapRealization::GetDeviceTexture<br>CColorKeyBitmapRealization::Initialize<br>CColorMatrixEffect::SetD2DEffectProperties<br>CColorMatrixEffect::SetProperty<br>CColorSpaceLayer::Create<br>CColorSpaceLayer::PostRestoreState<br>CColorSpaceLayer::RenderLayer<br>CColorTransformLayer::Create<br>CColorTransformLayer::RenderLayer<br>CCombinedGeometry::GetShapeDataCore<br>CCombinedGeometry::ProcessUpdate<br>CCommandBatch::Create<br>CCommandBuffer::Initialize<br>CCommonRenderingEffect::UpdateBitmaps<br>CCommonRenderingEffect::`vector_deleting_destructor'<br>CCommonRenderingEffectFactory::CreateRenderingEffect<br>CCommonRenderingEffectFactory::CreateRenderingEffectWorker<CCommonRenderingEffect><br>CCommonRenderingEffectFactory::CreateRenderingEffectWorker<CProjectedShadowRenderingEffect><br>CCommonRenderingShaderCache::GetCommonOrCubeMapRenderingShader<br>CCompSwapChain::Create<br>CCompSwapChain::GetPresentStatistics<br>CCompSwapChain::Initialize<br>CCompSwapChain::Present<br>CCompSwapChain::ResetBackBuffer<br>CCompSwapChain::SetSize<br>CCompiledEffectTemplate::OnCompilationCompleted<br>CCompiledEffectTemplate::ProcessUpdate<br>CComplexShape::GetD2DGeometry<br>CComponentTransform2D::GetProperty<br>CComponentTransform3D::SetOrientation<br>CComponentTransform3D::SetRotationAngle<br>CComponentTransform3D::SetRotationAxis<br>CComposeTop::AddShapeToLifetime<br>CComposeTop::FullRender<br>CComposeTop::NewContentRendered<br>CComposeTop::Render<br>CComposeTop::RenderWorker<br>CComposeTop::SubtractOverdraw<br>CCompositeEffect::SetD2DEffectProperties<br>CCompositingShaderCache::CreateCompositingShader<br>CComposition::AddCursorVisual<br>CComposition::AddToDDAExcludeVisualList<br>CComposition::AddToMagnifierList<br>CComposition::BeginCompositionFrame<br>CComposition::Channel_CreateResource<br>CComposition::Channel_DeleteResource<br>CComposition::Channel_DuplicateHandleOnTarget<br>CComposition::Channel_SyncFlush<br>CComposition::CleanTrees<br>CComposition::CloseChannel<br>CComposition::FlushChannels<br>CComposition::ForEachCursorVisualReference<<lambda_f7805202518b118888e0b3d23c76c683>_><br>CComposition::GetAttachedChannel<br>CComposition::Initialize<br>CComposition::NotifyHelper<br>CComposition::Partition_RegisterForNotifications<br>CComposition::Partition_SetCurrentMmTask<br>CComposition::Partition_SetCursor<br>CComposition::Partition_SetExcludeFromDDA<br>CComposition::Partition_SetMagnifier<br>CComposition::PostPresent<br>CComposition::PreRender<br>CComposition::Present<br>CComposition::ProcessBatches<br>CComposition::ProcessCommandBatch<br>CComposition::ProcessComposition<br>CComposition::ProcessDataOnChannel<br>CComposition::ProcessRoundTripRequest<br>CComposition::ResetTokenThread<br>CComposition::UpdateMmcssPartners<br>CCompositionAmbientLight::GetProperty<br>CCompositionAmbientLight::SetProperty<br>CCompositionCubeMap::FlushToD3DCubeMap<br>CCompositionCubeMap::GetOrCreateD3DCubeMap<br>CCompositionCubeMap::ProcessSetCreationParams<br>CCompositionCubeMap::ProcessSetSurfaces<br>CCompositionDistantLight::GetLightInfo<br>CCompositionDistantLight::GetProperty<br>CCompositionDistantLight::ProcessSetCoordinateSpace<br>CCompositionDistantLight::SetProperty<br>CCompositionLight::AddTargets<br>CCompositionLight::CalcLocalToDeviceMatrix<br>CCompositionLight::OnSceneReady<br>CCompositionLight::RemoveAllTargets<br>CCompositionMipmapSurface::EnsureMipmapSurface<br>CCompositionMipmapSurface::OnSceneFrameTick<br>CCompositionMipmapSurface::OnSceneReady<br>CCompositionMipmapSurface::ProcessSetSurfaces<br>CCompositionMipmapSurface::UpdateMipmapSurface<br>CCompositionPointLight::GetLightInfo<br>CCompositionPointLight::GetProperty<br>CCompositionPointLight::ProcessSetCoordinateSpace<br>CCompositionPointLight::SetProperty<br>CCompositionSkyBoxBrush::BuildDrawList<br>CCompositionSkyBoxBrush::CreateDummyRect<br>CCompositionSkyBoxBrush::CreateSkyBoxPrimitive<br>CCompositionSkyBoxBrush::Draw<br>CCompositionSkyBoxBrush::GenerateDrawList<br>CCompositionSkyBoxBrush::GetProperty<br>CCompositionSkyBoxBrush::ProcessSetSource<br>CCompositionSkyBoxBrush::ProcessSetTransform<br>CCompositionSkyBoxBrush::SetProperty<br>CCompositionSpotLight::AffectsVisual<br>CCompositionSpotLight::GetLightInfo<br>CCompositionSpotLight::GetProperty<br>CCompositionSpotLight::IsValid<br>CCompositionSpotLight::ProcessSetCoordinateSpace<br>CCompositionSpotLight::SetProperty<br>CCompositionSurfaceBitmap::AddOcclusionInformation<br>CCompositionSurfaceBitmap::Create<br>CCompositionSurfaceBitmap::DrawContentBorders<br>CCompositionSurfaceBitmap::DrawLetterboxingMargins<br>CCompositionSurfaceBitmap::DrawLetterboxingMarginsInternal<br>CCompositionSurfaceBitmap::GenerateDrawList<br>CCompositionSurfaceBitmap::GetCurrentRenderingRealization<br>CCompositionSurfaceBitmap::HitTest<br>CCompositionSurfaceBitmap::ProcessUpdate<br>CCompositionSurfaceInfo::Create<br>CCompositionSurfaceManager::CreateCompositionSurfaceBitmap<br>CCompositionSurfaceManager::GetOrCreateCompositionSurfaceInfo<br>CCompositionSwapchainStatistics::CommitRecordedStatistics<br>CCompositionSwapchainStatistics::Create<br>CCompositionSwapchainStatistics::Initialize<br>CCompositionTextLineGeneratedT<CCompositionTextLine,CTextObject>::SetProperty<br>CConditionalExpression::AddStackValueToSum<br>CConditionalExpression::CalculateConditionValue<br>CConditionalExpression::CalculateValueWorker<br>CConditionalExpression::GetValue<br>CConditionalExpression::IsAnyConditionSatisfied<br>CConditionalExpression::ProcessAddConditionAnimationResources<br>CConditionalExpression::ProcessSetDefaultAnimation<br>CConnection::MainCompositionThreadLoop<br>CContainerVectorShape::ProcessSetShapes<br>CContainerVectorShape::SetShapes<br>CContent::Draw<br>CConversionSwapChain::CalcPresentMode<br>CConversionSwapChain::ConvertDesktopAndAppPlanes<br>CConversionSwapChain::ConvertMultiResource<br>CConversionSwapChain::ConvertSingleAppPlane<br>CConversionSwapChain::ConvertSingleDesktopPlane<br>CConversionSwapChain::ConvertSingleResource<br>CConversionSwapChain::CopyFrontToBackBuffer<br>CConversionSwapChain::Create<br>CConversionSwapChain::EnsureTargetBitmap<br>CConversionSwapChain::GetAppOverlayShaderResourceView<br>CConversionSwapChain::GetMultiplaneOverlayCaps<br>CConversionSwapChain::Initialize<br>CConversionSwapChain::Present<br>CConversionSwapChain::PresentMPO<br>CConversionSwapChain::SetHardwareProtection<br>CCpuClip::AddPrimitiveClip<br>CCpuClip::ConvertContextDependentClipToLocal<br>CCpuClip::ResolveClip<br>CCpuClipAntialiasDrawListEntry::Create<br>CCpuClipAntialiasDrawListEntry::Render<br>CCubeMapRenderingEffect::EmitGeometry<br>CCubeMapRenderingEffect::SetStateOnDevice<br>CCubeMapRenderingEffect::UpdateBitmaps<br>CCustomKernelEffect::Create<br>CD2DBitmap::CopyPixels<br>CD2DBitmap::Create<br>CD2DBitmap::CreateSubResourceBitmap<br>CD2DBitmap::EnsureBitmap<br>CD2DBitmap::EnsureIgnoreAlphaBitmap<br>CD2DBitmap::GetBitmap<br>CD2DBitmap::GetDXGIResource<br>CD2DBitmap::LockAndRead<br>CD2DBitmap::LockForRead<br>CD2DBitmapCache::CreateAndCacheBitmap<br>CD2DBitmapCache::EnsureSysmemBitmap<br>CD2DBitmapCache::GetBitmapInternal<br>CD2DBitmapCache::GetCachedBitmap<br>CD2DBitmapCache::GetCachedTexture<br>CD2DBrush::Create<br>CD2DContext::CreateBitmapFromWicBitmap<br>CD2DContext::CreateD2DBitmapFromDxgiSurface<br>CD2DContext::CreateD2DEffect<br>CD2DContext::CreateD2DInk<br>CD2DContext::CreateGenericInk<br>CD2DContext::CreateGradientStopCollection<br>CD2DContext::DrawGenericInk<br>CD2DContext::DrawShape<br>CD2DContext::DrawYCbCrBitmap<br>CD2DContext::EndDraw<br>CD2DContext::EnsureDrawListBatch<br>CD2DContext::FillShape<br>CD2DContext::FlushD2D<br>CD2DContext::FlushD2DInternal<br>CD2DContext::FlushDrawList<br>CD2DContext::GetCachedEffectNoRef<br>CD2DContext::GetDirectInkFactory<br>CD2DContext::InitializeD2D<br>CD2DContext::IntersectGeometryWithSafeBounds<br>CD2DContext::PopTarget<br>CD2DContext::PopulateEffectTable<br>CD2DContext::PushTarget<br>CD2DContext::SubmitRenderCommand<br>CD2DEffect::Create<br>CD2DFactory::CreateD2DDevice<br>CD2DFactory::EnsureD2DFactory<br>CD2DFactory::~CD2DFactory<br>CD2DGenericInk::Create<br>CD2DGenericInk::CreateDirectInkFactory<br>CD2DInk::Create<br>CD2DResourceManager::Create<br>CD2DSharedBuffer::CreateFromHeap<br>CD2DSharedBuffer::CreateFromSharedSection<br>CD3DBatchExecutionContext::AppendGeometry<br>CD3DBatchExecutionContext::FillVertexAndIndexBuffers<br>CD3DBatchExecutionContext::SetRenderingEffectState<br>CD3DConstantBuffer::Create<br>CD3DConstantBuffer::SetData<br>CD3DDevice::CheckOcclusionState<br>CD3DDevice::CopyTexture2D<br>CD3DDevice::Create<br>CD3DDevice::CreateBuffer<br>CD3DDevice::CreateCompositionSwapChain<br>CD3DDevice::CreateConversionSwapChain<br>CD3DDevice::CreateD2DBitmap<br>CD3DDevice::CreateD3D11Device<br>CD3DDevice::CreateDDASwapChain<br>CD3DDevice::CreateDeviceTextureTarget<br>CD3DDevice::CreateDeviceTextureTarget<br>CD3DDevice::CreateFence<br>CD3DDevice::CreateLegacyRemotingSwapChain<br>CD3DDevice::CreateLegacyStereoSwapChain<br>CD3DDevice::CreateLegacySwapChain<br>CD3DDevice::CreatePixelShader<br>CD3DDevice::CreateRenderTargetBitmap<br>CD3DDevice::CreateRenderTargetBitmap<br>CD3DDevice::CreateRenderTargetBitmap<br>CD3DDevice::CreateRenderTargetView<br>CD3DDevice::CreateScratchRenderTargetBitmap<br>CD3DDevice::CreateSecondaryD2DBitmap<br>CD3DDevice::CreateShaderResourceView<br>CD3DDevice::CreateSharedFence<br>CD3DDevice::CreateSharedHandleFence<br>CD3DDevice::CreateStereoRenderTargetBitmap<br>CD3DDevice::CreateTexture<br>CD3DDevice::EnqueueSetEvent<br>CD3DDevice::EnsureBlackBitmapTargets<br>CD3DDevice::EnsureVideoProcessor<br>CD3DDevice::GatherSupportedTextureFormats<br>CD3DDevice::GenerateShaders<br>CD3DDevice::GetD3DSamplerStateNoRef<br>CD3DDevice::GetMaxFeatureLevel<br>CD3DDevice::HDRConvert<br>CD3DDevice::HDRConvertWithFakeOverlay<br>CD3DDevice::Init<br>CD3DDevice::InitSystemDevice<br>CD3DDevice::Map<br>CD3DDevice::OpenIndirectSwapchain<br>CD3DDevice::OpenRenderFence<br>CD3DDevice::PinResources<br>CD3DDevice::Present<br>CD3DDevice::Present<br>CD3DDevice::PresentMPO<br>CD3DDevice::ProcessPendingUnpin<br>CD3DDevice::TranslateDXGIorD3DErrorInContext<br>CD3DDevice::VideoProcessorBlt<br>CD3DDynamicAppendBuffer::BeginAppend<br>CD3DDynamicAppendBuffer::EnsureByteSpace<br>CD3DDynamicAppendBuffer::Initialize<br>CD3DPixelShader::Create<br>CD3DSurface::Create<br>CD3DSurface::CreateViewOfTexture<br>CD3DSurface::GetDXGIResource<br>CD3DSurface::Init<br>CD3DTexture::GetDXGIResource<br>CD3DTexture::Init<br>CD3DTexture::InitResource<br>CD3DVidMemOnlyTexture::Create<br>CD3DVidMemOnlyTexture::OpenSharedTexture<br>CDDARenderTarget::Create<br>CDDARenderTarget::EnsureSwapChain<br>CDDARenderTarget::Present<br>CDDARenderTarget::Render<br>CDDASwapChain::Create<br>CDDASwapChain::Initialize<br>CDDASwapChain::Present<br>CDDisplayManager::CreateDDisplaySwapchainForSource<br>CDDisplayManager::CreateHdrMetadata<br>CDDisplayManager::CreatePrimaryBuffer<br>CDDisplayManager::CreatePrimaryDescription<br>CDDisplayManager::CreateTaskPool<br>CDDisplayManager::EnsureDDisplayManager<br>CDDisplayManager::EnsureDevice<br>CDDisplayManager::GetDisplayDeviceAndTarget<br>CDDisplayManager::GetRateForTarget<br>CDDisplayRenderTarget::CheckOcclusionState<br>CDDisplayRenderTarget::GetDesktopTree<br>CDDisplayRenderTarget::GetPresentStatisticsDWM<br>CDDisplayRenderTarget::Present<br>CDDisplayRenderTarget::ProcessUpdateRefreshRate<br>CDDisplayRenderTarget::Render<br>CDDisplayRenderTarget::RenderComposeTop<br>CDDisplayRenderTarget::RenderDirtyRegion<br>CDDisplayRenderTarget::SetSyncRefreshCountWaitTarget<br>CDDisplayRenderTarget::TryEnsureSwapChain<br>CDDisplayRenderTarget::UpdateMPOCaps<br>CDDisplayRenderTarget::WaitForVBlank<br>CDDisplaySwapChain::CheckMultiplaneOverlaySupportInternal<br>CDDisplaySwapChain::CheckOcclusionState<br>CDDisplaySwapChain::ComputeCachedHdrMetadata<br>CDDisplaySwapChain::CreateScanout<br>CDDisplaySwapChain::ExecutePresent<br>CDDisplaySwapChain::FindCachedDesktopScanout<br>CDDisplaySwapChain::FindCachedGeneralScanout<br>CDDisplaySwapChain::GetMultiplaneOverlayCaps<br>CDDisplaySwapChain::GetPresentStatistics<br>CDDisplaySwapChain::GetPresentStatisticsDWM<br>CDDisplaySwapChain::GetSurfacePlaneResource<br>CDDisplaySwapChain::Initialize<br>CDDisplaySwapChain::InternalPresentDFlip<br>CDDisplaySwapChain::PostPresent<br>CDDisplaySwapChain::PrePresent<br>CDDisplaySwapChain::Present<br>CDDisplaySwapChain::PresentMPO<br>CDDisplaySwapChain::UpdateBackBufferTextureTarget<br>CDDisplaySwapChain::UpdateRefreshRate<br>CDataStreamWriter::AddBlockData<br>CDataStreamWriter::AllocateNewBlock<br>CDataStreamWriter::BeginItem<br>CDataStreamWriter::EndItem<br>CDataStreamWriter::EnsureSize<br>CDataStreamWriter::GetItemDataWritePointer<br>CDataStreamWriter::IncreaseWrittenByteCount<br>CDecodeBitmap::EnsureTargetBitmap<br>CDecodeBitmap::VideoProcessorBlt<br>CDesktopTree::AddNewComposeTopContent<br>CDesktopTree::CalcOcclusionAndCollectOverlayCandidates<br>CDesktopTree::CleanTreeAndLockForRead<br>CDesktopTree::ProcessCaptureBits<br>CDesktopTree::ProcessCreate<br>CDesktopTree::ProcessSetRoot<br>CDesktopTree::SetLuid<br>CDesktopTree::SetRootVisual<br>CDeviceManager::AdvanceFrame<br>CDeviceManager::CreateNewDevice<br>CDeviceManager::GetDefaultDevice<br>CDeviceManager::GetExistingDevice<br>CDeviceManager::GetWarpDevice<br>CDeviceResourceTable<CD2DEffect,CFilterEffect>::FindOrCreateResourceNoRef<br>CDeviceResourceTable<CD2DGenericInk,CGenericInk>::FindOrCreateResourceNoRef<br>CDeviceResourceTable<CD2DInk,CInk>::FindOrCreateResourceNoRef<br>CDeviceResourceTable<CD3DConstantBuffer,CRenderingTechnique>::FindOrCreateResourceNoRef<br>CDeviceResourceTable<CD3DPixelShader,CLinkedShader>::FindOrCreateResourceNoRef<br>CDeviceTextureTarget::Create<br>CDeviceTextureTarget::CreateSubResourceTextureTarget<br>CDeviceTextureTarget::Initialize<br>CDirectFlipInfo::Activate<br>CDirectFlipInfo::AddOverdrawToDirtyRegion<br>CDirectFlipInfo::DisableIndependentFlip<br>CDirectFlipInfo::EnableIndependentFlip<br>CDirectFlipInfo::GetDeviceTarget<br>CDirectFlipInfo::Present<br>CDirtyRegion::Add<br>CDirtyRegion::Add<br>CDirtyRegion::CalcOcclusion<br>CDirtyRegion::GetIntersectingRedrawRects<br>CDirtyRegion::_Add<br>CDisplayDebugFrameCounter::Display<br>CDisplayDebugFrameCounter::DisplayText<br>CDisplayManager::GetDXGIFactory<br>CDisplayManager::GetDXGIOutput<br>CDisplayManager::GetDXGIOutput<br>CDisplayManager::GetPrimaryAdapterLuid<br>CDisplayManager::Initialize<br>CDisplayManager::ValidateLuidAndMonitor<br>CDrawListBatchManager::AddBatchCommand<br>CDrawListBatchManager::OpenDrawListEntryBatch<br>CDrawListBatchManager::RawAddBatchCommands<br>CDrawListBatchManager::TakeItemFromCache<CBatchCommand><br>CDrawListBitmap::SetTransparent<br>CDrawListCache::Render<br>CDrawListEntryBatch::CSharedDirect3DResources::Init<br>CDrawListEntryBatch::Render<br>CDrawListEntryBatch::RenderLoop<0><br>CDrawListEntryBatch::SetLightingCollection<br>CDrawListEntryBuilder::End<br>CDrawListEntryBuilder::ExtractBuiltHWPrimitiveEntry<br>CDrawListEntryBuilder::Insert<br>CDrawListEntryBuilder::InsertHW<br>CDrawListEntryBuilder::InsertWARP<br>CDrawListEntryBuilder::InsertWorker<br>CDrawListEntryBuilder::PartitionPrimitive<br>CDrawListPrimitive::Create<br>CDrawListPrimitive::CreateInstanced<br>CDrawingContext::BeginFrame<br>CDrawingContext::CTryIgnoreCpuClippingScope::Enter<br>CDrawingContext::Clear<br>CDrawingContext::ComputeExternalLayerOffsetAndBounds<br>CDrawingContext::D2DGeometryFromShape<br>CDrawingContext::DrawAsOverlay<br>CDrawingContext::DrawBitmap<br>CDrawingContext::DrawBitmapRealization<br>CDrawingContext::DrawBspPolygonList<br>CDrawingContext::DrawDirtyRegionVisualizationForCurrentNode<br>CDrawingContext::DrawGenericInk<br>CDrawingContext::DrawInk<br>CDrawingContext::DrawPolygon<br>CDrawingContext::DrawRectangleOverlay<br>CDrawingContext::DrawScene3D<br>CDrawingContext::DrawSolidRectangle<br>CDrawingContext::DrawSubVisualTree<br>CDrawingContext::DrawTextW<br>CDrawingContext::DrawVisualTree<br>CDrawingContext::EmitDrawListCache<br>CDrawingContext::EndFrame<br>CDrawingContext::FillEffect<br>CDrawingContext::FillRectanglesWithDrawListBitmap<br>CDrawingContext::FillRectanglesWithDrawListBrush<br>CDrawingContext::FillRectanglesWithSolidColor<br>CDrawingContext::FillShapeWithBitmap<br>CDrawingContext::FillShapeWithBitmapRealization<br>CDrawingContext::FillShapeWithBrush<br>CDrawingContext::FillShapeWithSolidColor<br>CDrawingContext::FlushAllDeferredClipping<br>CDrawingContext::FlushD2D<br>CDrawingContext::GenerateDrawListForOverlayColor<br>CDrawingContext::GetUnOccludedWorldShape<br>CDrawingContext::MarkCurrentState<br>CDrawingContext::Pop<br>CDrawingContext::PopAllStacks<br>CDrawingContext::PopLayer<br>CDrawingContext::PopLayerInternal<br>CDrawingContext::PopLight<br>CDrawingContext::PostSubgraph<br>CDrawingContext::PushClipBounds<br>CDrawingContext::PushClipRectForCurrentNode<br>CDrawingContext::PushClipShapeForCurrentNode<br>CDrawingContext::PushClippingScope<br>CDrawingContext::PushColorSpaceLayer<br>CDrawingContext::PushColorTransformLayer<br>CDrawingContext::PushColorTransformLayerForNode<br>CDrawingContext::PushDeviceTransform<br>CDrawingContext::PushEffectLayer<br>CDrawingContext::PushEffectiveAlphaForNode<br>CDrawingContext::PushGammaBlendLayer<br>CDrawingContext::PushGpuClipRectInternal<br>CDrawingContext::PushLayer<br>CDrawingContext::PushLight<br>CDrawingContext::PushLinearInterpolationLayer<br>CDrawingContext::PushLocalSpaceClipAndAlphaInternal<br>CDrawingContext::PushOffScreenRenderingLayer<br>CDrawingContext::PushRenderOptionsInternal<br>CDrawingContext::PushRenderTarget<br>CDrawingContext::PushResampleLayer<br>CDrawingContext::PushTransform<br>CDrawingContext::PushTransformInternal<br>CDrawingContext::RenderOverlayColor<br>CDrawingContext::ShapeDataFromGeometry<br>CDrawingContext::StrokeShapeWithBrush<br>CDrawingContext::UpdateBspCurrentPolygonClippingPlanes<br>CDrawingContext::UpdateDeviceTransform<br>CDropShadow::Draw<br>CDropShadow::GenerateDrawList<br>CDropShadow::GetProperty<br>CDropShadow::GetTextureMemoryLayoutData<br>CDropShadow::ProcessSetMask<br>CDropShadow::SetProperty<br>CDropShadow::ShadowIntermediates::CreateShadowOpacityBrush<br>CDropShadow::ShadowIntermediates::GenerateMaskIntermediate<br>CDropShadow::ShadowIntermediates::SetMask<br>CDropShadow::ShadowIntermediates::UpdateIntermediates<br>CDropShadow::UpdateShadowIntermediates<br>CDummyRemotingSwapChain::CheckOcclusionState<br>CDummyRemotingSwapChain::Create<br>CDummyRemotingSwapChain::GetPresentStatistics<br>CDummyRemotingSwapChain::Initialize<br>CDummyRemotingSwapChain::NotifyMetaData<br>CDummyRemotingSwapChain::Present<br>CDxHandleAdvancedDirectFlipBitmapRealization::Create<br>CDxHandleAdvancedDirectFlipBitmapRealization::EnsureRenderTarget<br>CDxHandleAdvancedDirectFlipBitmapRealization::GetD2DBitmap<br>CDxHandleAdvancedDirectFlipBitmapRealization::GetDeviceTarget<br>CDxHandleAdvancedDirectFlipBitmapRealization::GetDeviceTexture<br>CDxHandleAdvancedDirectFlipBitmapRealization::SaveOffOverdraw<br>CDxHandleAdvancedDirectFlipBitmapRealization::UpdateDecodeBitmap<br>CDxHandleBitmapRealization::Create<br>CDxHandleBitmapRealization::EnsureD2DBitmap<br>CDxHandleBitmapRealization::GetD2DBitmap<br>CDxHandleBitmapRealization::GetDDisplayResource<br>CDxHandleBitmapRealization::GetDXGIResource<br>CDxHandleBitmapRealization::GetDeviceTexture<br>CDxHandleBitmapRealization::Initialize<br>CDxHandleBitmapRealization::IsValid<br>CDxHandleStereoBitmapRealization::Create<br>CDxHandleStereoBitmapRealization::EnsureD2DBitmap<br>CDxHandleStereoBitmapRealization::GetD2DBitmap<br>CDxHandleStereoBitmapRealization::GetDeviceTexture<br>CDxHandleYUVBitmapRealization::Create<br>CDxHandleYUVBitmapRealization::CreateSubResource<br>CDxHandleYUVBitmapRealization::EnsureTexture<br>CDxHandleYUVBitmapRealization::GetD2DBitmap<br>CDxHandleYUVBitmapRealization::GetDDisplayResource<br>CDxHandleYUVBitmapRealization::GetDXGIResource<br>CDxHandleYUVBitmapRealization::GetDeviceTexture<br>CDxHandleYUVBitmapRealization::Initialize<br>CDxHandleYUVBitmapRealization::IsValid<br>CDxHandleYUVBitmapRealization::VPBltToDecodeBitmap<br>CEffectBrush::CalcInversedWorldInputBoundsFromVisibleWorldOutputBounds<br>CEffectBrush::EnsureBrushGraph<br>CEffectBrush::GetBounds<br>CEffectBrush::GetSourceInputBounds<br>CEffectBrush::GetSourceInputBoundsUnion<br>CEffectBrush::GetTextureMemoryLayoutData<br>CEffectBrush::OnPropertyValueChanged<br>CEffectBrush::ProcessSetInput<br>CEffectBrush::ProcessSetPropertySet<br>CEffectBrush::ProcessSetTemplate<br>CEffectCompilationService::Create<br>CEffectCompilationTask::Compile_WorkerThread<br>CEffectCompilationTask::GetRestrictedErrorDescription<br>CEffectGroupGeneratedT<CEffectGroup,CEffect>::SetProperty<br>CEffectGroupGeneratedT<CEffectGroup,CEffect>::SetTransform3D<br>CEllipseGeometry::GetProperty<br>CEllipseGeometry::GetShapeDataCore<br>CEllipseGeometry::SetProperty<br>CEmptyRegionDrawListBrush::Create<br>CEmptyRegionDrawListBrush::EnumerateBrushes<br>CEmptyRegionDrawListBrush::Initialize<br>CExcludeVisualReference::Create<br>CExpression::CalculateValueWorker<br>CExpression::EnsureCacheBounds<br>CExpression::ProcessSetReferenceInfo<br>CExpression::ProcessSetSources<br>CExpression::ReadValueFromCache<br>CExpression::RegisterSourcesForOwner<br>CExpression::StoreValueToCache<br>CExpressionManager::Create<br>CExpressionManager::InsertExpressionIntoTargetMap<br>CExpressionManager::QueueAnimationStateChange<br>CExpressionManager::RegisterExpression<br>CExpressionManager::RegisterInteractionTrackerNotification<br>CExpressionValue::ApplyMaskToValue<br>CExpressionValue::CopyIntoFloatArray<br>CExpressionValueStack::Absolute<br>CExpressionValueStack::Acos<br>CExpressionValueStack::Add<br>CExpressionValueStack::And<br>CExpressionValueStack::Asin<br>CExpressionValueStack::Atan<br>CExpressionValueStack::Ceil<br>CExpressionValueStack::Clamp<br>CExpressionValueStack::ColorHsl<br>CExpressionValueStack::ColorLerpHsl<br>CExpressionValueStack::ColorLerpRgb<br>CExpressionValueStack::ColorRgb<br>CExpressionValueStack::Concatenate<br>CExpressionValueStack::Conditional<br>CExpressionValueStack::Distance<br>CExpressionValueStack::DistanceSquared<br>CExpressionValueStack::Divide<br>CExpressionValueStack::EnsureAvailablePushSpace<br>CExpressionValueStack::Equals<br>CExpressionValueStack::Floor<br>CExpressionValueStack::GreaterThan<br>CExpressionValueStack::GreaterThanEquals<br>CExpressionValueStack::Inverse<br>CExpressionValueStack::Length<br>CExpressionValueStack::LengthSquared<br>CExpressionValueStack::Lerp<br>CExpressionValueStack::LessThan<br>CExpressionValueStack::LessThanEquals<br>CExpressionValueStack::Ln<br>CExpressionValueStack::Log10<br>CExpressionValueStack::Matrix3x2<br>CExpressionValueStack::Matrix3x2FromRotation<br>CExpressionValueStack::Matrix3x2FromScale<br>CExpressionValueStack::Matrix3x2FromSkew<br>CExpressionValueStack::Matrix4x4<br>CExpressionValueStack::Matrix4x4FromAxisAngle<br>CExpressionValueStack::Matrix4x4FromPerspective<br>CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView<br>CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter<br>CExpressionValueStack::Matrix4x4FromQuaternion<br>CExpressionValueStack::Matrix4x4FromRotationX<br>CExpressionValueStack::Matrix4x4FromRotationY<br>CExpressionValueStack::Matrix4x4FromRotationZ<br>CExpressionValueStack::Matrix4x4FromScale<br>CExpressionValueStack::Matrix4x4FromTranslation<br>CExpressionValueStack::Matrix4x4FromYawPitchRoll<br>CExpressionValueStack::Max<br>CExpressionValueStack::Min<br>CExpressionValueStack::Modulus<br>CExpressionValueStack::Negate<br>CExpressionValueStack::Normalize<br>CExpressionValueStack::Not<br>CExpressionValueStack::NotEquals<br>CExpressionValueStack::Or<br>CExpressionValueStack::Pow<br>CExpressionValueStack::ProcessReferenceNode<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::Quaternion<br>CExpressionValueStack::QuaternionFromAxisAngle<br>CExpressionValueStack::QuaternionFromLerp<br>CExpressionValueStack::QuaternionFromRotationMatrix<br>CExpressionValueStack::QuaternionFromYawPitchRoll<br>CExpressionValueStack::QueryObjectPropertyValue<br>CExpressionValueStack::Round<br>CExpressionValueStack::Scale<br>CExpressionValueStack::Slerp<br>CExpressionValueStack::Sqrt<br>CExpressionValueStack::Square<br>CExpressionValueStack::Subtract<br>CExpressionValueStack::Swizzle<br>CExpressionValueStack::Tan<br>CExpressionValueStack::TimeSpanFrom<br>CExpressionValueStack::ToDegrees<br>CExpressionValueStack::ToRadians<br>CExpressionValueStack::Transform<br>CExpressionValueStack::Vector2Dot<br>CExpressionValueStack::Vector2Transform<br>CExpressionValueStack::Vector2TransformNormal<br>CExpressionValueStack::Vector3<br>CExpressionValueStack::Vector3Cross<br>CExpressionValueStack::Vector3Dot<br>CExpressionValueStack::Vector3Transform<br>CExpressionValueStack::Vector3TransformNormal<br>CExpressionValueStack::Vector4<br>CExpressionValueStack::Vector4Dot<br>CExpressionValueStack::Vector4Transform<br>CExternalD3DRenderer::Create<br>CExternalLayer::ApplyRenderTarget<br>CExternalLayer::ApplyState<br>CExternalLayer::CalcDeviceTransformDelta<br>CExternalLayer::RenderNoOpLayer<br>CExternalLayer::RestoreRenderTarget<br>CExternalLayer::RestoreState<br>CFSVPProvider::CheckForMajorityScreenVideoNotificationsWithCompSurfInfo<br>CFailFastInScope::CaptureDxgkRingBuffer<br>CFilterEffect::CalcEntireInputBoundsFromInputResources<br>CFilterEffect::CalcInversedWorldInputBoundsFromVisibleWorldOutputBounds<br>CFilterEffect::CalcInversedWorldInputBoundsFromVisibleWorldOutputBoundsRecursive<br>CFilterEffect::ContainEffectInChainInputs<br>CFilterEffect::CreateResource<br>CFilterEffect::GetBounds<br>CFilterEffect::GetD2DEffectNoRef<br>CFilterEffect::GetInputEffectForAtlasedSurface<br>CFilterEffect::ProcessUpdateInputs<br>CFilterEffectLayer::Create<br>CFilterEffectLayer::RenderLayer<br>CFlipExSwapchainStatistics::CommitRecordedStatistics<br>CFormatConverter::GetSize<br>CFormatConverter::HrConvertBitmap<br>CFrameInfo::AddResponse<br>CGDIBitmapRealization::Create<br>CGDISectionBitmapRealization::Create<br>CGDISubSectionBitmapRealization::Create<br>CGDISubSectionBitmapRealization::EnsureBitmapCacheSource<br>CGammaBlendLayer::ApplyState<br>CGammaBlendLayer::CopyAndTransform<br>CGammaBlendLayer::Create<br>CGammaBlendLayer::RenderLayer<br>CGaussianBlurEffect::SetD2DEffectProperties<br>CGaussianBlurEffect::SetProperty<br>CGdiSpriteBitmap::CreateDeviceBitmap<br>CGdiSpriteBitmap::CreateSectionBitmapSubRects<br>CGdiSpriteBitmap::EnsureBitmapRealization<br>CGdiSpriteBitmap::GetCurrentRenderingRealization<br>CGdiSpriteBitmap::NotifyDirty<br>CGdiSpriteBitmap::RegisterForSignaling<br>CGdiSpriteBitmapGeneratedT<CGdiSpriteBitmap,CResource>::SetMargins<br>CGdiSpriteBitmapGeneratedT<CGdiSpriteBitmap,CResource>::SetSurface<br>CGenericInk::ComputeBackgroundBlendInfo<br>CGenericInk::CreateResource<br>CGenericInk::GetBounds<br>CGenericInk::GetDirectInkWetStroke<br>CGenericInk::ProcessPropertiesUpdate<br>CGenericInk::ProcessSegmentUpdate<br>CGenericInk::ProcessTipPointBuffer<br>CGeometry2D::GetMeshData<br>CGeometry2DGroup::GetIndicesCore<br>CGeometry2DGroup::GetVerticesCore<br>CGeometry2DGroupGeneratedT<CGeometry2DGroup,CGeometry2D>::SetOrAppendChildren<br>CGeometry::GetBoundsSafe<br>CGeometry::GetProperty<br>CGeometry::GetShapeData<br>CGeometry::GetShapeDataWorker<br>CGeometry::GetTrimmedShapeData<br>CGeometry::ProcessSetTransform<br>CGeometry::SetProperty<br>CGeometryGroup::GetShapeDataCore<br>CGeometryGroup::ProcessAppend<br>CGeometryGroup::ProcessUpdate<br>CGlobalComposition::Channel_AsyncFlush<br>CGlobalComposition::Channel_VisualCaptureBits<br>CGlobalComposition::Create<br>CGlobalComposition::ForEachCursorVisual<br>CGlobalComposition::Partition_DesktopCaptureBits<br>CGlobalComposition::Partition_Synchronize<br>CGlobalComposition::ProcessDataOnChannelSameProcess<br>CGlobalCompositionSurfaceInfo::CBindInfo::CreateAndAddSwapChainBuffers<br>CGlobalCompositionSurfaceInfo::CBindInfo::CreateNewRealization<br>CGlobalCompositionSurfaceInfo::CBindInfo::DisableIndependentFlip<br>CGlobalCompositionSurfaceInfo::CBindInfo::EnableDirectFlip<br>CGlobalCompositionSurfaceInfo::CBindInfo::EnableIndependentFlip<br>CGlobalCompositionSurfaceInfo::CBindInfo::EnableOverlay<br>CGlobalCompositionSurfaceInfo::CBindInfo::EnsureHDRMetaData<br>CGlobalCompositionSurfaceInfo::CBindInfo::EnsureOverlaySwapChainWeakRef<br>CGlobalCompositionSurfaceInfo::CBindInfo::Initialize<br>CGlobalCompositionSurfaceInfo::CBindInfo::PinResources<br>CGlobalCompositionSurfaceInfo::CBindInfo::Reset<br>CGlobalCompositionSurfaceInfo::CBindInfo::SetIndependentFlipDuration<br>CGlobalCompositionSurfaceInfo::CBindInfo::SetIndependentFlipNotify<br>CGlobalCompositionSurfaceInfo::CommitRecordedStatistics<br>CGlobalCompositionSurfaceInfo::DisableDirectFlip<br>CGlobalCompositionSurfaceInfo::DisableIndependentFlip<br>CGlobalCompositionSurfaceInfo::DisableOverlay<br>CGlobalCompositionSurfaceInfo::EnableDirectFlip<br>CGlobalCompositionSurfaceInfo::EnableIndependentFlip<br>CGlobalCompositionSurfaceInfo::EnableOverlay<br>CGlobalCompositionSurfaceInfo::EnsureRealization<br>CGlobalCompositionSurfaceInfo::ForceUpdateRenderingRealization<br>CGlobalCompositionSurfaceInfo::ProcessSurfaceUpdateInternal<br>CGlobalCompositionSurfaceInfo::SetAnalogExclusive<br>CGlobalCompositionSurfaceInfo::SetIndependentFlipDuration<br>CGlobalCompositionSurfaceInfo::SetIndependentFlipNotify<br>CGlobalDrawingContext::DrawMesh2D<br>CGlobalInputManager::Initialize<br>CGlobalInputManager::ResetInputThreadMmcss<br>CGlobalManipulationManager::UpdateMMCSSTask<br>CGlobalMit::Create<br>CGlobalMit::Run<br>CGlobalSurfaceManager::Create<br>CGlobalSurfaceManager::EnsureAdapterInfo<br>CGlobalSurfaceManager::GetSurfaceUpdates<br>CGlobalSurfaceManager::Initialize<br>CGlobalSurfaceManager::PostPresent<br>CGlobalSurfaceManager::ProcessKernelTokens<br>CGlobalSurfaceManager::ProcessLegacyTokens<br>CGlobalSurfaceManager::ProcessSurfaceUpdates<br>CGradientBrush::Generate<br>CGradientBrush::GetCurrentD2DRadialGradientBrush<br>CGradientBrush::GetCurrentSurface<br>CGradientBrush::InferVisualToTextureTransform<br>CGradientBrush::ProcessSetColorStops<br>CGradientBrush::ProcessSetTransform<br>CGradientSource::Generate<br>CGraphWalker<CBspNode>::GotoPostChild<br>CGraphWalker<CBspNode>::GotoPreChild<br>CGraphWalker<CVectorShape>::EndWalk<br>CGraphWalker<CVectorShape>::GotoFirstChild<br>CGraphWalker<CVisual>::BeginWalk<br>CGraphWalker<CVisual>::EndWalk<br>CGraphWalker<CVisual>::GotoFirstChild<br>CGroupBatchCommand::EmitGeometryForGroup<br>CHWDrawListEntry::`vector_deleting_destructor'<br>CHitTestContext::BspHitTest<br>CHitTestContext::HitTestTreeWalk<br>CHitTestContext::PostSubgraph<br>CHitTestContext::PreSubgraph<br>CHolographicClient::Create<br>CHolographicClient::Initialize<br>CHolographicClient::ProcessAddDisplay<br>CHolographicClient::ProcessAddExclusiveView<br>CHolographicClient::ProcessAddTexture<br>CHolographicClient::ProcessAddViewer<br>CHolographicClient::ProcessMessage<br>CHolographicDisplay::GetDesc<br>CHolographicExclusivePresentData::Create<br>CHolographicExclusiveView::ActivateSwapChain<br>CHolographicExclusiveView::ActivateView<br>CHolographicExclusiveView::AttachSwapChain<br>CHolographicExclusiveView::OpenSurfaceHandles<br>CHolographicExclusiveView::ProcessExclusiveSurfaceUpdate<br>CHolographicExclusiveView::ProcessSetSwapChain<br>CHolographicExclusiveView::UpdateFrameStatistics<br>CHolographicFrameProcessor::ContentUpdated<br>CHolographicFrameProcessor::Create<br>CHolographicFrameProcessor::Initialize<br>CHolographicFrameProcessor::InitializeWithD3DDevice<br>CHolographicFrameProcessor::PoolBufferAdded<br>CHolographicFrameProcessor::SetSize<br>CHolographicInteropTarget::Create<br>CHolographicInteropTarget::GetPresentStatisticsDWM<br>CHolographicInteropTarget::Initialize<br>CHolographicInteropTarget::RenderDirtyRegion<br>CHolographicInteropTarget::RenderTexture<br>CHolographicInteropTaskQueue::Create<br>CHolographicInteropTaskQueue::Initialize<br>CHolographicInteropTexture::EnsureRenderBuffers<br>CHolographicInteropTexture::ProcessSetRoot<br>CHolographicInteropTexture::SetRootVisual<br>CHolographicManager::AddExclusiveView<br>CHolographicManager::AddHolographicDisplay<br>CHolographicManager::AddHolographicViewer<br>CHolographicManager::Create<br>CHolographicManager::EnsureHolographicClient<br>CHolographicManager::EnsureInteropRenderTarget<br>CHolographicManager::GetDefaultDesktopTree<br>CHolographicViewer::AcquireBuffer<br>CHoverPointerSource::PushHoverPointer<br>CHwLightCollectionBuffer::Create<br>CImageLegacyMilBrushGeneratedT<CImageLegacyMilBrush,CLegacyMilBrush>::SetImageSource<br>CImageLegacyMilBrushGeneratedT<CImageLegacyMilBrush,CLegacyMilBrush>::SetViewboxAnimation<br>CImageLegacyMilBrushGeneratedT<CImageLegacyMilBrush,CLegacyMilBrush>::SetViewportAnimation<br>CIndirectSwapchainRenderTarget::CreateRenderTargetForAcquiredBuffer<br>CIndirectSwapchainRenderTarget::EnsureMetadataBuffer<br>CIndirectSwapchainRenderTarget::Present<br>CIndirectSwapchainRenderTarget::ProcessCreate<br>CIndirectSwapchainRenderTarget::ProcessUpdateTargetBounds<br>CIndirectSwapchainRenderTarget::ReleaseCurrentBuffer<br>CIndirectSwapchainRenderTarget::Render<br>CIndirectSwapchainRenderTarget::ReportSizeChangeMetaData<br>CIndirectSwapchainRenderTarget::TryTargetNextBuffer<br>CInjectionAnimation::CalculateValueWorker<br>CInjectionAnimation::ProcessSetInjectionData<br>CInk::CreateResource<br>CInk::Draw<br>CInk::GetBounds<br>CInk::GetD2DInk<br>CInk::ProcessBasicStateUpdate<br>CInk::ProcessSegmentCountUpdate<br>CInk::ProcessSegmentUpdate<br>CInk::ProcessStartPointUpdate<br>CInputManager::EnsureRenderThreadCanReceiveInputThreadMessages<br>CInputManager::EnsureRenderThreadCanSendInputThreadMessages<br>CInputManager::Initialize<br>CInputManager::ResetInputThreadMmcss<br>CInputManager::UpdateEdgyInput<br>CInputManager::s_HitTestRequest<br>CInputManager::s_HoverHittestRequest<br>CInputSinkStruct::InitializeQueueInfo<br>CInputSinkStruct::ReplaceInputHandle<br>CInteraction::Initialize<br>CInteraction::ProcessCaptureManipulationInCompositor<br>CInteraction::ProcessCapturePointer<br>CInteraction::ProcessSetInputSink<br>CInteraction::ProcessUpdateRails<br>CInteraction::Push2DVisualTransformToRenderThread<br>CInteraction::SetProperty<br>CInteraction::SetRailsEnabled_RenderThread<br>CInteraction::SetTemporaryConfiguration<br>CInteraction::SetVisual<br>CInteraction::UpdateInputSink<br>CInteractionProcessor::CalculateDetectedInteractions<br>CInteractionProcessor::CalculateDetectedInteractions<DwmTouchpadInteractionConfigurationPrimitive,TMILFlagsEnum<DwmInteractionTypeTouchpadPrimitiveType::FlagsEnum>,DwmInteractionTypeTouchpadPrimitiveType::FlagsEnum><br>CInteractionTracker::AddPendingStateChange<br>CInteractionTracker::CalculateCenterPointForAxis<br>CInteractionTracker::EnsureInteractionAnimations<br>CInteractionTracker::GetProperty<br>CInteractionTracker::ProcessApplyPositionShift<br>CInteractionTracker::ProcessSetInertiaModifierAnimations<br>CInteractionTracker::SelectInertiaModifierForAxis<br>CInteractionTracker::SetProperty<br>CInteractionTracker::SetState<br>CInteractionTracker::TransitionToCustomAnimation<br>CInteractionTracker::UpdateCenterPointForState<br>CInteractionTrackerPositionAnimation::Initialize<br>CInteractionTrackerScaleAnimation::CalculateInContactValueWorker<br>CInteractionTrackerScaleAnimation::CalculateInertiaValueWorker<br>CInteractionTrackerScaleAnimation::Initialize<br>CInternalMilCmdConnection::PostMessageToClient<br>CInterpolatePathsOperation::Interpolate<br>CKMAdapterHandle::Initialize<br>CKMAdapterHandle::Initialize<br>CKernelTransport::BeginFrame<br>CKernelTransport::ConfirmFrame<br>CKernelTransport::Create<br>CKernelTransport::DispatchBatches<br>CKernelTransport::PostPacket<br>CKeyframeAnimation::AddKeyframeData<br>CKeyframeAnimation::ApplyPlaybackStateChanges<br>CKeyframeAnimation::DetermineCoordinateSpace<br>CKeyframeAnimation::GetProperty<br>CKeyframeAnimation::GetSampledStartingValue<br>CKeyframeAnimation::Initialize<br>CKeyframeAnimation::ProcessInnerExpression<br>CKeyframeAnimation::ProcessSetBindingBroken<br>CKeyframeAnimation::ProcessSetPathData<br>CKeyframeAnimation::ProcessSetSeekState<br>CKeyframeAnimation::ProcessUpdatePlaybackState<br>CKeyframeAnimation::Reset<br>CKeyframeAnimation::SampleStartingValue<br>CKeyframeAnimation::SetInitialDelay<br>CKeyframeAnimation::SetIterationInfo<br>CKeyframeAnimation::SetKeyFrameData<br>CKeyframeAnimation::SetOutputType<br>CKeyframeAnimation::SetProperty<br>CKeyframeAnimation::StartAsTriggeredAnimation<br>CKeyframeAnimation::TimeSeek<br>CKeyframeAnimation::UpdatePlaybackState<br>CLayerVisual::CalcInversedWorldInputBoundsFromVisibleWorldOutputBounds<br>CLayerVisual::CalcInversedWorldShadowOffsetBoundsFromVisibleWorldOutputBounds<br>CLayerVisual::GetBoundsWithEffects<br>CLayerVisual::GetBoundsWithLayerEffect<br>CLayerVisual::GetMaskBounds<br>CLayerVisual::GetShadowBounds<br>CLayerVisual::ProcessSetEffect<br>CLayerVisual::ProcessSetShadow<br>CLegacyAnimationTrigger::ProcessTrigger<br>CLegacyMilBrushGeneratedT<CLegacyMilBrush,CResource>::SetOpacityAnimation<br>CLegacyMilBrushGeneratedT<CLegacyMilBrush,CResource>::SetRelativeTransform<br>CLegacyMilBrushGeneratedT<CLegacyMilBrush,CResource>::SetTransform<br>CLegacyRemotingSwapChain::CheckOcclusionState<br>CLegacyRemotingSwapChain::Create<br>CLegacyRemotingSwapChain::EnsureBitmapDest<br>CLegacyRemotingSwapChain::GetPresentStatistics<br>CLegacyRemotingSwapChain::GetPresentStatisticsDWM<br>CLegacyRemotingSwapChain::Initialize<br>CLegacyRemotingSwapChain::NotifyMetaData<br>CLegacyRemotingSwapChain::Present<br>CLegacyRemotingSwapChain::RailAppPresent<br>CLegacyRemotingSwapChain::UpdateSectionBits<br>CLegacyRenderTarget::CheckOcclusionState<br>CLegacyRenderTarget::EnsureDXGIOutput<br>CLegacyRenderTarget::EnsureSwapChain<br>CLegacyRenderTarget::GetDesktopTree<br>CLegacyRenderTarget::GetPresentStatisticsDWM<br>CLegacyRenderTarget::HandleDDAArrivalOrDeparture<br>CLegacyRenderTarget::Present<br>CLegacyRenderTarget::ProcessSetDesktopTree<br>CLegacyRenderTarget::ProcessUpdateRefreshRate<br>CLegacyRenderTarget::RenderComposeTop<br>CLegacyRenderTarget::RenderDebugFrameCounter<br>CLegacyRenderTarget::RenderDirtyRegion<br>CLegacyRenderTarget::SetSyncRefreshCountWaitTarget<br>CLegacyRenderTarget::UpdateMPOCaps<br>CLegacyRenderTarget::WaitForVBlank<br>CLegacyStereoRenderTarget::EnsureSwapChain<br>CLegacyStereoRenderTarget::Render<br>CLegacyStereoSwapChain::Create<br>CLegacyStereoSwapChain::Present<br>CLegacyStereoSwapChain::PresentDFlip<br>CLegacyStereoSwapChain::ResetBackBuffer<br>CLegacySurfaceManager::AddIntervalOneDxBltEventId<br>CLegacySurfaceManager::GetLegacyTokens<br>CLegacySurfaceManager::ProcessPostPresentResponseItems<br>CLegacySurfaceManager::ProcessToken<br>CLegacySurfaceManager::ProcessUnclaimedTokens<br>CLegacySwapChain::CheckMultiplaneOverlaySupport<br>CLegacySwapChain::CheckOcclusionState<br>CLegacySwapChain::CheckPresentDurationSupport<br>CLegacySwapChain::Create<br>CLegacySwapChain::CreateD3D12Resource<br>CLegacySwapChain::GetDXGIOutputDWM<br>CLegacySwapChain::GetMultiplaneOverlayCaps<br>CLegacySwapChain::GetPresentStatistics<br>CLegacySwapChain::GetPresentStatisticsDWM<br>CLegacySwapChain::GetSurfacePlaneResource<br>CLegacySwapChain::Initialize<br>CLegacySwapChain::InternalCheckDirectFlipSupport<br>CLegacySwapChain::InternalPresentDFlip<br>CLegacySwapChain::PostPresent<br>CLegacySwapChain::Present<br>CLegacySwapChain::PresentMPO<br>CLegacySwapChain::ResetBackBuffer<br>CLegacySwapChain::SetHardwareProtection<br>CLegacySwapChain::UpdateRefreshRate<br>CLegacyVisualCaptureRenderTarget::ProcessCaptureBits<br>CLightStack::Push<br>CLightStack::RetrieveCurrentLightBufferForContextNoRef<br>CLineGeometry::GetProperty<br>CLineGeometry::GetShapeDataCore<br>CLineGeometry::SetProperty<br>CLinearGradientBrush::GetBrushParameters<br>CLinearGradientBrush::GetD2DBrush<br>CLinearGradientBrush::GetProperty<br>CLinearGradientBrush::SetProperty<br>CLinearGradientLegacyMilBrush::Draw<br>CLinearGradientLegacyMilBrush::EnsureDrawlistBrush<br>CLinearInterpolationLayer::ApplyState<br>CLinearInterpolationLayer::Create<br>CLinearInterpolationLayer::RenderLayer<br>CLinearTransferEffect::SetD2DEffectProperties<br>CLinearTransferEffect::SetProperty<br>CLinkedShader::GetShadersNoRef<br>CMagnifierRenderTarget::EnsureRenderTargets<br>CMagnifierRenderTarget::EnsureSharedRenderTargets<br>CMagnifierRenderTarget::OpenSharedSurfaceRenderTarget<br>CMagnifierRenderTarget::ProcessCaptureBits<br>CMagnifierRenderTarget::ProcessCreate<br>CMagnifierRenderTarget::ProcessSetColorTransform<br>CMagnifierRenderTarget::ProcessSetFilterList<br>CMagnifierRenderTarget::ProcessSetTransform<br>CMagnifierRenderTarget::ProcessUpdate<br>CMagnifierRenderTarget::ProcessUpdateParams<br>CManipulation::GetProperty<br>CManipulation::ProcessUpdateEdgyExperienceSource<br>CManipulation::SetAutoReset_RenderThread<br>CManipulation::SetCaptureState_RenderThread<br>CManipulation::SetProperty<br>CManipulation::UpdateOnManipulationThread<br>CManipulation::UpdateOnManipulationThreadWithoutDelta<br>CManipulation::_EnqueueDeferredDeltaReset<br>CManipulation::_GetRenderToManipulationMsgInfo<br>CManipulation::_SendUpdateToRenderThread<br>CManipulation::_UpdateEdgyExperienceInput<br>CManipulation::s_ResetDeltaProperties<br>CManipulationContext::OnHoverContact<br>CManipulationFrame::Create<br>CManipulationManager::CreateManipulationThread<br>CManipulationManager::Initialize<br>CManipulationManager::NotifyCaptureManipulation<br>CManipulationManager::NotifyCapturePointer<br>CManipulationManager::NotifyUpdateConfiguration<br>CManipulationManager::NotifyUpdateRails<br>CManipulationManager::NotifyUpdateTemporaryConfiguration<br>CManipulationManager::OnNewContact<br>CManipulationManager::ProcessManipulationThreadCallbackInput<br>CManipulationManager::QueueMidManipulationUpdate<br>CManipulationManager::s_EndpointProc<br>CManipulationTransform::ProcessSetComponents<br>CManipulationTransform::SetProperty<br>CMaskBrush::GetBounds<br>CMaskBrush::GetTextureMemoryLayoutData<br>CMaskBrush::HitTest<br>CMaskBrush::ProcessSetMask<br>CMaskBrush::ProcessSetSource<br>CMatrixStack::Push<br>CMatrixTransform3D::SetProperty<br>CMatrixTransform::SetProperty<br>CMegaRect::PrepareData<br>CMegaRect::UpdatePrimitive<br>CMegaRectCollection::PrepMegaRectData<br>CMegaRectCollection::ReplaceMegaRectsWithClippedRects<br>CMesh2DEffect::EnsureVertexBuffer<br>CMesh2DEffect::GetVertices<br>CMesh2DEffect::Initialize<br>CMesh2DEffect::SetVertices<br>CMeshGeometry2D::GetIndicesCore<br>CMeshGeometry2D::GetVerticesCore<br>CMessageConversationHost::Create<br>CMessageConversationHost::Initialize<br>CMessageConversationHost::InitializeServer<br>CMit::Reset<br>CMit::Start<br>CMmcssTask::Apply<br>CMmcssTask::LoadRuntime<br>CMultiPrimitiveDrawListBrush::EnumerateBrushes<br>CNaturalAnimation::GetForceForAxis<br>CNaturalAnimation::GetProperty<br>CNaturalAnimation::ProcessSetBindingBroken<br>CNaturalAnimation::SampleInitialValueAndFinalValueIfNecessary<br>CNaturalAnimation::SetOutputType<br>CNaturalAnimation::SetProperty<br>CNaturalAnimation::SetScalarProperty<br>CNaturalAnimation::SetTimespanProperty<br>CNaturalAnimation::SetVector2Property<br>CNaturalAnimation::SetVector3Property<br>CNaturalAnimation::SetupAnimationIfNecessary<br>CNaturalAnimation::StartAsTriggeredAnimation<br>CNineGridBrush::CreateLayoutGeometryDrawListBrush<br>CNineGridBrush::EnsureBrushGraph<br>CNineGridBrush::GetBounds<br>CNineGridBrush::GetBrushParameters<br>CNineGridBrush::GetProperty<br>CNineGridBrush::GetTextureMemoryLayoutData<br>CNineGridBrush::HitTest<br>CNineGridBrush::ProcessSetInsetProperty<br>CNineGridBrush::ProcessSetSource<br>CNineGridBrush::SetProperty<br>CNineGridBrush::SetSource<br>CNineGridDrawListBrush::Create<br>CNineGridDrawListBrush::EnumerateBrushes<br>CNotificationResource::ProcessSetCallbackId<br>COcclusionContext::CheckAndRecordOverlayCandidate<br>COcclusionContext::CheckAndRecordOverlayCandidateForContext<br>COcclusionContext::DrawImage<br>COcclusionContext::Pop<br>COcclusionContext::PushTransform<br>COcclusionContext::PushTransformInternal<br>COcclusionContext::SetDeviceTransform<br>COffScreenRenderTarget::EnsureRenderTargets<br>COffScreenRenderTarget::GetBits<br>COffScreenRenderTarget::Render<br>COffScreenRenderTarget::UpdatePixelFormatInfo<br>COffScreenRenderingLayer::ApplyState<br>COffScreenRenderingLayer::Create<br>COverlayContext::ComputeOverlayConfiguration<br>COverlayContext::EnsureIndependentFlipState<br>COverlayContext::OnSwapChainCreated<br>COverlayContext::Present<br>COverlayContext::PresentMPO<br>COverlayContext::SyncLock<br>COverlayContext::UpdateMPOCaps<br>COverlaySwapChainBase::PresentDFlip<br>CParticleAttractorGeneratedT<CParticleAttractor,CResource>::SetProperty<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetAngularVelocity<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetDirection<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetForce<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetLifetime<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetOpacity<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetOrientation<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetPosition<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetScale<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetSize<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetSpeed<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetTint<br>CParticleEmitterVisual::AnimateRemainingParticles<br>CParticleEmitterVisual::CreateParticlesPrimitive<br>CParticleEmitterVisual::EmitParticles<br>CParticleEmitterVisual::EnsureSpawner<br>CParticleEmitterVisual::GenerateDrawList<br>CParticleEmitterVisual::SetContent<br>CParticleEmitterVisual::SpawnParticles<br>CParticleEmitterVisual::UpdateParticleSystem<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetBrush<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetEmitterAnimation<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetEmitterGeometry<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetEmitterViewBox<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetOrAppendAttractors<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetParticleBehaviors<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetParticleGenerator<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetProperty<br>CParticleGeneratorGeneratedT<CParticleGenerator,CPropertyChangeResource>::SetProperty<br>CPartitionVerticalBlankScheduler::AddResponseItem<br>CPartitionVerticalBlankScheduler::GetPresentStatisticsAndAdjustRates<br>CPartitionVerticalBlankScheduler::Initialize<br>CPartitionVerticalBlankScheduler::Reset<br>CPartitionVerticalBlankScheduler::RetireFrames<br>CPartitionVerticalBlankScheduler::ScheduleAndProcessFrame<br>CPathData::GetD2DGeometry<br>CPathData::PushIntoSink<br>CPathData::Simplify<br>CPathGeometry::GetProperty<br>CPathGeometry::GetShapeDataCore<br>CPathGeometry::ProcessSetPath<br>CPathGeometry::SetProperty<br>CPathSegmentsShape::GetD2DGeometry<br>CPathSegmentsShape::GetSimplifiedPathDataInternal<br>CPayloadedAnimationPrimitiveBuffer::Create<br>CPolygon::CompareAndSplit<br>CPolygon::Create<br>CPolygon::D2DGeometryFromPolygon<br>CPolygon::Draw<br>CPolygon::HitTestWithTransformation<br>CPolygonShape::GetOutline<br>CPreComputeContext::PreCompute<br>CPrimitiveBuffer::Initialize<br>CPrimitiveColor::SetProperty<br>CPrimitiveGroup::BuildHeatMap<br>CPrimitiveGroup::CreateHitTestRegions<br>CPrimitiveGroup::CreateNewGenerator<br>CPrimitiveGroup::CreateNewGeneratorForHeatMap<br>CPrimitiveGroup::Draw<br>CPrimitiveGroup::EnsureDrawListGenerator<br>CPrimitiveGroup::GenerateDrawList<br>CPrimitiveGroup::GetDrawListGeneratorNoRef<br>CPrimitiveGroup::GetTextureMemoryLayoutData<br>CPrimitiveGroup::ProcessAddColorResources<br>CPrimitiveGroup::ProcessAddPrimitives<br>CPrimitiveGroup::ProcessAddSurfaceResources<br>CPrimitiveGroup::ProcessSetDirtyRect<br>CPrimitiveGroup::ValidateBatches<br>CPrimitiveGroupDrawListBrush::EnumerateBrushes<br>CPrimitiveGroupDrawListGenerator::Create<br>CPrimitiveGroupDrawListGenerator::GetContentRegion<br>CPrimitiveGroupDrawListGenerator::RealizeBitmaps<br>CPrimitiveGroupRenderStrategy::GetBrushParameters<br>CPrimitiveGroupRenderStrategy::GetTextureMemoryLayoutData<br>CProcessAttributionManager::CreateProcessAttribution<br>CProcessAttributionManager::GetProcessAttribution<br>CProjectedShadow::AdjustNineGridBrush<br>CProjectedShadow::AdjustSurfaceBrush<br>CProjectedShadow::Draw<br>CProjectedShadow::GenerateApproxBlur<br>CProjectedShadow::GenerateApproxBlurIntermediate<br>CProjectedShadow::GenerateDrawList<br>CProjectedShadow::GenerateFastShadowIntermediate<br>CProjectedShadow::GenerateNineGridBrush<br>CProjectedShadow::GenerateSurfaceBrush<br>CProjectedShadow::GetCasterShadowInputBrush<br>CProjectedShadow::Initialize<br>CProjectedShadow::UpdateShadowIntermediates<br>CProjectedShadowApproxBlurEffect::SetAnimatableProperty<br>CProjectedShadowApproxBlurGraphBuilder::AddApproxBlurBrush<br>CProjectedShadowApproxBlurGraphBuilder::Build<br>CProjectedShadowApproxBlurGraphBuilder::Build<br>CProjectedShadowCaster::ProcessSetAncestorClipVisual<br>CProjectedShadowCaster::ProcessSetBrush<br>CProjectedShadowCaster::ProcessSetCastingVisual<br>CProjectedShadowCaster::ProcessSetMask<br>CProjectedShadowCaster::UpdateMaskIntermediate<br>CProjectedShadowReceiver::GetReceiverMaskInputBrush<br>CProjectedShadowReceiver::ProcessSetMask<br>CProjectedShadowReceiver::ProcessSetReceivingVisual<br>CProjectedShadowRenderingEffect::SetStateOnDevice<br>CProjectedShadowScene::GetProperty<br>CProjectedShadowScene::ProcessAddCasters<br>CProjectedShadowScene::ProcessAddReceivers<br>CProjectedShadowScene::ProcessSetLightSource<br>CProjectedShadowScene::SetProperty<br>CProjectedShadowScene::UpdateCasterEntry<br>CPropertyChangeResource::NotifyBooleanPropertyChanged<br>CPropertyChangeResource::NotifyColorPropertyChanged<br>CPropertyChangeResource::NotifyCurrentPropertyValuesImpl<br>CPropertyChangeResource::NotifyMatrix3x2PropertyChanged<br>CPropertyChangeResource::NotifyMatrix4x4PropertyChanged<br>CPropertyChangeResource::NotifyPropertyChanged<br>CPropertyChangeResource::NotifyQuaternionPropertyChanged<br>CPropertyChangeResource::NotifyVector3PropertyChanged<br>CPropertyChangeResource::NotifyVector4PropertyChanged<br>CPropertyChangeResource::SetAnimatedProperty<br>CPropertySet::AddOrUpdateProperty<D2DMatrix><br>CPropertySet::AddOrUpdateProperty<D2DQuaternion><br>CPropertySet::AddOrUpdateProperty<D2DVector2><br>CPropertySet::AddOrUpdateProperty<D2DVector3><br>CPropertySet::AddOrUpdateProperty<D2DVector4><br>CPropertySet::AddOrUpdateProperty<D2D_MATRIX_3X2_F><br>CPropertySet::AddOrUpdateProperty<_D3DCOLORVALUE><br>CPropertySet::AddOrUpdateProperty<bool><br>CPropertySet::AddOrUpdateProperty<float><br>CPropertySet::AddProperty<D2DMatrix><br>CPropertySet::AddProperty<D2DQuaternion><br>CPropertySet::AddProperty<D2DVector2><br>CPropertySet::AddProperty<D2DVector3><br>CPropertySet::AddProperty<D2DVector4><br>CPropertySet::AddProperty<D2D_MATRIX_3X2_F><br>CPropertySet::AddProperty<_D3DCOLORVALUE><br>CPropertySet::AddProperty<bool><br>CPropertySet::AddProperty<float><br>CPropertySet::GetProperty<br>CPropertySet::NotifyCurrentPropertyValuesInternal<br>CPropertySet::NotifyPropertyValue<br>CPropertySet::PropertyUpdated<D2DMatrix><br>CPropertySet::PropertyUpdated<D2DQuaternion><br>CPropertySet::PropertyUpdated<D2DVector2><br>CPropertySet::PropertyUpdated<D2DVector3><br>CPropertySet::PropertyUpdated<D2DVector4><br>CPropertySet::PropertyUpdated<D2D_MATRIX_3X2_F><br>CPropertySet::PropertyUpdated<_D3DCOLORVALUE><br>CPropertySet::PropertyUpdated<bool><br>CPropertySet::PropertyUpdated<float><br>CPropertySet::SetProperty<br>CPropertySet::UpdateProperty<D2DMatrix><br>CPropertySet::UpdateProperty<D2DQuaternion><br>CPropertySet::UpdateProperty<D2DVector2><br>CPropertySet::UpdateProperty<D2DVector3><br>CPropertySet::UpdateProperty<D2DVector4><br>CPropertySet::UpdateProperty<D2D_MATRIX_3X2_F><br>CPropertySet::UpdateProperty<_D3DCOLORVALUE><br>CPropertySet::UpdateProperty<bool><br>CPropertySet::UpdateProperty<float><br>CProxyGeometry::GetShapeDataCore<br>CProxyGeometry::ProcessSetGeometry<br>CProxyGeometry::ProcessSetViewBox<br>CPtrArrayBase::InsertAt<br>CQueue<CBufferedInteractionOutput*___ptr64>::Insert<br>CQueue<CManipulationManager::InteractionUpdate*___ptr64>::Insert<br>CQueue<CResource*___ptr64>::Insert<br>CQueue<Microsoft::WRL::ComPtr<CManipulationFrame>_>::Insert<br>CRadialGradientBrush::EnsureBrushGraph<br>CRadialGradientBrush::GetBrushParameters<br>CRadialGradientBrush::GetD2DBrush<br>CRadialGradientBrush::GetProperty<br>CRadialGradientBrush::SetProperty<br>CRadialGradientEffect::Create<br>CRectangleGeometry::GetProperty<br>CRectangleGeometry::GetShapeDataCore<br>CRectangleGeometry::SetProperty<br>CRectanglesShape::EnsureD2DGeometry<br>CRectanglesShape::GetD2DGeometry<br>CRectanglesShape::GetUnOccludedWorldShape<br>CRectanglesShape::IntersectWithRect<br>CRectanglesShape::`vector_deleting_destructor'<br>CRedirectVisual::ProcessSetRedirectedVisual<br>CRedirectedGDISurface::Create<br>CRedirectedGDISurface::GetDirtyRegionFromAccum<br>CRedirectedVisualContent::Create<br>CRedirectedVisualContent::Initialize<br>CRegion::CreateHRGN<br>CRegion::SetHRGN<br>CRegionGeometry::GetShapeDataCore<br>CRegionShape::EnsureD2DGeometry<br>CRegionShape::GetD2DGeometry<br>CRegionShape::GetUnOccludedWorldShape<br>CRegionShape::IntersectWithRect<br>CRemoteAppRenderTarget::EnsureSwapChain<br>CRemoteAppRenderTarget::GetPresentStatistics<br>CRemoteAppRenderTarget::Present<br>CRemoteAppRenderTarget::ProcessCreate<br>CRemoteAppRenderTarget::RailMultimonRenderAndPresent<br>CRemoteAppRenderTarget::Render<br>CRemoteAppRenderTarget::RenderDirtyRegion<br>CRemoteAppRenderTarget::SendCompSurfHandle<br>CRemoteAppRenderTarget::SendMetaData<br>CRemoteAppRenderTarget::SetWindowBounds<br>CRemoteRenderTarget::CheckOcclusionState<br>CRemoteRenderTarget::GetDesktopTree<br>CRemoteRenderTarget::GetPresentStatisticsDWM<br>CRemoteRenderTarget::HandleDDAArrivalOrDeparture<br>CRemoteRenderTarget::Present<br>CRemoteRenderTarget::ProcessSetDesktopTree<br>CRemoteRenderTarget::Render<br>CRemoteRenderTarget::RenderComposeTop<br>CRemoteRenderTarget::WaitForVBlank<br>CRenderData::Draw<br>CRenderData::DrawImageResource_FillMode<br>CRenderData::DrawImageResource_TileMode<br>CRenderData::DrawSolidColorRectangle<br>CRenderData::FlushDrawListCache<br>CRenderData::GetBounds<br>CRenderData::GetDrawListCacheForCommandRun<br>CRenderData::GetHandles<br>CRenderData::TryDrawCommandAsDrawList<br>CRenderDataBuilder::DrawBitmap<br>CRenderDataBuilder::DrawGeometry<br>CRenderDataBuilder::DrawImage<br>CRenderDataBuilder::DrawMesh2D<br>CRenderDataBuilder::DrawRectangle<br>CRenderDataBuilder::DrawSolidRectangle<br>CRenderDataBuilder::DrawTileImage<br>CRenderDataBuilder::DrawVisual<br>CRenderDataBuilder::Pop<br>CRenderDataBuilder::PushTransform<br>CRenderDataBuilder::QueryInterface<br>CRenderTarget::ProcessSetRoot<br>CRenderTargetBitmap::Create<br>CRenderTargetBitmap::GetBits<br>CRenderTargetBitmap::GetD2DBitmap<br>CRenderTargetBitmap::GetD2DBitmapTarget<br>CRenderTargetBitmap::GetDeviceTexture<br>CRenderTargetBitmap::ValidateRenderTargetInfo<br>CRenderTargetBitmap::VideoProcessorBlt<br>CRenderTargetBitmapCache::GetCachedTargetBitmap<br>CRenderTargetManager::CheckOcclusionState<br>CRenderTargetManager::ComputeOverlayConfiguration<br>CRenderTargetManager::EnsureDxDisplayModeChangedEvent<br>CRenderTargetManager::HandleDDAArrivalOrDeparture<br>CRenderTargetManager::NotifyTargetsOfOcclusionChange<br>CRenderTargetManager::Present<br>CRenderTargetManager::Render<br>CRenderTargetManager::UpdateMPOCaps<br>CRenderingTechnique::AddShaderToCache<br>CRenderingTechnique::CreateResource<br>CRenderingTechnique::GetShaders<br>CRenderingTechnique::UpdateConstantBuffers<br>CRenderingTechniqueFragment::CreateEffectShaderBody<br>CRenderingTechniqueFragment::CreateMaskShaderBody<br>CResampleLayer::Create<br>CResampleLayer::RenderLayer<br>CResource::AddHandleToArrayAndReplace<CResource><br>CResource::RegisterNNotifiersInternal<br>CResource::RegisterNotifier<br>CResource::UnmarshalResourceArray<br>CResourceFactory::Create<br>CResourceTable::ReleaseHandleTableEntries<br>CRotateTransform3DGeneratedT<CRotateTransform3D,CTransform3D>::SetProperty<br>CRotateTransformGeneratedT<CRotateTransform,CTransform>::SetProperty<br>CRoundedRectangleShape::CreateIntersectedD2DGeometry<br>CRoundedRectangleShape::CreateNonIntersectedD2DGeometry<br>CRoundedRectangleShape::GetD2DGeometry<br>CRoundedRectangleShape::`scalar_deleting_destructor'<br>CSaturationEffect::SetProperty<br>CScalar::OnAddBinding<br>CScalar::ProcessSetValue<br>CScaleTransform3DGeneratedT<CScaleTransform3D,CTransform3D>::SetProperty<br>CScaleTransformGeneratedT<CScaleTransform,CTransform>::SetProperty<br>CScanPipeline::InitializeForFormatConversion<br>CSceneComponent::HydrateSpectreResources<br>CSceneMaterial::OnSceneFrameTick<br>CSceneMesh::OnSceneFrameTick<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetColorData<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetIndexData<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetNormalData<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetPositionData<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetTangentData<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetTexCoord0Data<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetTexCoord1Data<br>CSceneMetallicRoughnessMaterialGeneratedT<CSceneMetallicRoughnessMaterial,CScenePbrMaterial>::SetBaseColorInput<br>CSceneMetallicRoughnessMaterialGeneratedT<CSceneMetallicRoughnessMaterial,CScenePbrMaterial>::SetMetallicRoughnessInput<br>CSceneMetallicRoughnessMaterialGeneratedT<CSceneMetallicRoughnessMaterial,CScenePbrMaterial>::SetProperty<br>CSceneModelTransformGeneratedT<CSceneModelTransform,CCompositionTransform>::SetTransform<br>CSceneNode::HydrateSpectreResources<br>CSceneNode::SetChildren<br>CSceneNode::SetComponents<br>CSceneNodeGeneratedT<CSceneNode,CSceneObject>::SetOrAppendChildren<br>CSceneNodeGeneratedT<CSceneNode,CSceneObject>::SetOrAppendComponents<br>CSceneNodeGeneratedT<CSceneNode,CSceneObject>::SetTransform<br>CScenePbrMaterialGeneratedT<CScenePbrMaterial,CSceneMaterial>::SetEmissiveInput<br>CScenePbrMaterialGeneratedT<CScenePbrMaterial,CSceneMaterial>::SetNormalInput<br>CScenePbrMaterialGeneratedT<CScenePbrMaterial,CSceneMaterial>::SetOcclusionInput<br>CScenePbrMaterialGeneratedT<CScenePbrMaterial,CSceneMaterial>::SetProperty<br>CSceneResourceManager::Create<br>CSceneResourceManager::EnsureSceneCompositor<br>CSceneResourceManager::GetSpectreTexture<br>CSceneVisual::Get3DContentBounds<br>CSceneVisual::OnRootChanged<br>CSceneVisualGeneratedT<CSceneVisual,CVisual>::SetRoot<br>CSceneWorld::Draw<br>CSceneWorld::OnSceneReady<br>CScopedClipStack::ApplyDeferredD2DLayersInScope<br>CScopedClipStack::Clear<br>CScopedClipStack::PushClipBoundsToScope<br>CScratchRenderTargetBitmap::Create<br>CScrollAnimation::CalculateInContactDelta<br>CScrollAnimation::CalculateInContactValue<br>CScrollAnimation::CalculateInertiaValue<br>CScrollAnimation::CalculateValueForState<br>CScrollAnimation::CalculateValueWorker<br>CScrollAnimation::Initialize<br>CScrollAnimation::SelectInertiaModifier<br>CSecondaryD2DBitmap::Create<br>CSecondaryD2DBitmap::CreateScaledLock<br>CSecondaryD2DBitmap::FormatConvertLock<br>CSecondaryD2DBitmap::Update<br>CSecondarySysmemBitmap::CopyPixels<br>CSecondarySysmemBitmap::Initialize<br>CSecondarySysmemBitmap::LockForRead<br>CSecondarySysmemBitmap::Update<br>CSectionBitmapRealization::CopyPixels<br>CSectionBitmapRealization::EnsureBitmapCacheSource<br>CSectionBitmapRealization::GetD2DBitmap<br>CSectionBitmapRealization::GetDeviceTexture<br>CSectionBitmapRealization::LockForRead<br>CSectionBitmapRealization::MapSection<br>CShaderCache::CreateLinkedShader<br>CShaderLinkingGraphBuilder::AppendNode<br>CShaderLinkingGraphBuilder::CopyNode<br>CShaderLinkingGraphBuilder::CreateNodeFromOutputArgument<br>CShaderLinkingGraphBuilder::GetFragmentsModuleNoRef<br>CShaderLinkingGraphBuilder::Initialize<br>CShaderLinkingGraphBuilder::Link<br>CShaderLinkingGraphBuilder::SwizzleNode<br>CShadowEffect::SetD2DEffectProperties<br>CShadowEffect::SetProperty<br>CShape::BuildFromRectFs<br>CShape::ClipWithRect<br>CShape::CopyShape<br>CShape::D2DCombine<br>CShape::FillContainsPoint<br>CShape::FlattenToLineSegments<br>CShape::GetOutline<br>CShape::GetSimplifiedPathData<br>CShape::GetSimplifiedPathDataInternal<br>CShape::GetTightBounds<br>CShape::GetWidenedBounds<br>CShape::TryOptimizedCombinePaths<br>CShapeDrawingContext::ApplyTransformToDrawingContext<br>CShapePtr::FillContainsPoint<br>CShapePtr::GetD2DGeometry<br>CShapePtr::GetTightBounds<br>CShapePtr::GetWidenedBounds<br>CShapeTree::Draw<br>CShapeTree::DrawShapes<br>CShapeTree::GenerateDrawList<br>CShapeTree::GetBounds<br>CShapeTree::HitTest<br>CShapeTreeIterator::Walk<CShapeBoundingContext><br>CShapeVisual::EnsureShapeTree<br>CShapeVisual::ProcessSetShapes<br>CShapeVisual::ProcessSetViewBox<br>CShapeVisual::SetContent<br>CSharedCircularQueue::Create<br>CSharedSectionAnimationPrimitiveBuffer::Create<br>CSharedSectionWrapper::ProcessSetSharedSection<br>CSkewTransformGeneratedT<CSkewTransform,CTransform>::SetProperty<br>CSnapshot::CreateCVI<br>CSnapshot::Draw<br>CSnapshot::ProcessSetTransformMatrix<br>CSnapshot::ProcessUpdate<br>CSpectreCallbackRenderer::Create<br>CSpriteVectorShape::CreateRenderTasks<br>CSpriteVectorShape::EnsureStrokeStyleForBounds<br>CSpriteVectorShape::EnsureStrokeStyleForRender<br>CSpriteVectorShape::GetProperty<br>CSpriteVectorShape::ProcessSetFillBrush<br>CSpriteVectorShape::ProcessSetGeometry<br>CSpriteVectorShape::ProcessSetStrokeBrush<br>CSpriteVectorShape::ProcessSetStrokeDashArray<br>CSpriteVectorShape::SetProperty<br>CSpriteVisual::GetContentBounds<br>CSpriteVisual::ProcessSetBrush<br>CSpriteVisual::ProcessSetShadow<br>CSpriteVisual::RenderContent<br>CSpriteVisual::SetContent<br>CStereoRenderTargetBitmap::Create<br>CSubDrawingContext::DrawVisualTree<br>CSuperWetInkVisualGeneratedT<CSuperWetInkVisual,CVisual>::SetSuperWetInkSource<br>CSurfaceBrush::AddOcclusionInformation<br>CSurfaceBrush::ComputeLayout<br>CSurfaceBrush::GetBounds<br>CSurfaceBrush::GetProperty<br>CSurfaceBrush::HitTest<br>CSurfaceBrush::ProcessSetSurface<br>CSurfaceBrush::ProcessSetTransform<br>CSurfaceBrush::SetProperty<br>CSurfaceBrush::SetSurface<br>CSurfaceBrush::SetTransform<br>CSurfaceDrawListBrush::`scalar_deleting_destructor'<br>CSurfaceManager::CreateTokenThread<br>CSurfaceManager::ResetTokenThread<br>CSurfaceShaderComposer::Create<br>CSurfaceShaderComposer::GetCompositingPixelShaderNoRef<br>CSurfaceShaderComposer::GetSurfacePixelShaderNoRef<br>CSurfaceShaderComposer::RunShader<br>CSurfaceShaderComposer::SetScratchConstantBuffer<br>CSurfaceShaderComposer::UpdateSDRBoostConstantBuffer<br>CSynchronousSuperWetInkGeneratedT<CSynchronousSuperWetInk,CSuperWetSource>::SetPerFrameDataSharedSection<br>CSynchronousSuperWetInkGeneratedT<CSynchronousSuperWetInk,CSuperWetSource>::SetReferenceSurface<br>CSynchronousSuperWetInkGeneratedT<CSynchronousSuperWetInk,CSuperWetSource>::SetTipPointsSharedSection<br>CSystemMemoryBitmap::HrInit<br>CSystemMemoryBitmap::HrInit<br>CSystemMemoryBitmap::HrInit<br>CSystemMemoryBitmap::Lock<br>CTableTransferEffect::ProcessUpdateTable<br>CTableTransferEffect::SetD2DEffectProperties<br>CTableTransferEffect::SetProperty<br>CTextObjectGeneratedT<CTextObject,CResource>::SetBrush<br>CTextVisualGeneratedT<CTextVisual,CVisual>::SetOrAppendGlyphRuns<br>CTextVisualGeneratedT<CTextVisual,CVisual>::SetOrAppendStrikethroughs<br>CTextVisualGeneratedT<CTextVisual,CVisual>::SetOrAppendUnderlines<br>CThreadContext::GetCurrent<br>CThreadContext::GetObjectCache<br>CThreadContext::InitializeObjectCaches<br>CThreadContext::RegisterGraphWalkRoot<br>CTransform3DGroupGeneratedT<CTransform3DGroup,CTransform3D>::SetOrAppendChildren<br>CTransformGroupGeneratedT<CTransformGroup,CTransform>::SetOrAppendChildren<br>CTransformedGeometryHelper::FlattenGeometry<br>CTransformedGeometryHelper::GetD2DGeometry<br>CTransformedGeometryHelper::HrFindInterface<br>CTransformedGeometryHelper::TransformGeometry<br>CTranslateTransform3DGeneratedT<CTranslateTransform3D,CTransform3D>::SetProperty<br>CTranslateTransformGeneratedT<CTranslateTransform,CTransform>::SetProperty<br>CTransportCmdPacker::AllocateNotification<br>CTreeEffectLayer::ApplyState<br>CTreeEffectLayer::CalcDeviceTransformDelta<br>CTreeEffectLayer::Create<br>CTreeEffectLayer::InitializeShadowEffect<br>CTreeEffectLayer::PostRestoreState<br>CTreeEffectLayer::RenderEffect<br>CTreeEffectLayer::RenderLayer<br>CTreeEffectLayer::RenderMask<br>CTreeEffectLayer::RenderShadow<br>CTurbulenceEffect::SetD2DEffectProperties<br>CTypedConstantBuffer<LightNoOpConstantBuffer>::Initialize<br>CTypedConstantBuffer<LightPSConstantBuffer>::Initialize<br>CTypedConstantBuffer<LightVSConstantBuffer>::Initialize<br>CTypedConstantBuffer<float>::Initialize<br>CVectorShape::ProcessSetTransform<br>CVectorShape::SetTransform<br>CViewBox::GetProperty<br>CViewBox::SetProperty<br>CVirtualMonitorCaptureRenderTarget::CreateTextures<br>CVirtualMonitorCaptureRenderTarget::ProcessBindData<br>CVirtualMonitorCaptureRenderTarget::ProcessBoundsInMonitor<br>CVirtualMonitorCaptureRenderTarget::SetDesktopVisualTree<br>CVisual::AddLight<br>CVisual::AddSharedLights<br>CVisual::AddToBspPolygonList<br>CVisual::AppendDirtyRegionVisualizationRects<br>CVisual::CalcRootBounds<br>CVisual::CalcSrcToDestVisualTransform<br>CVisual::CollectAdditionalDirtyRects<br>CVisual::CollectOcclusion<br>CVisual::ConvertInnerToOuterBounds<br>CVisual::GetBoundsWithEffects<br>CVisual::GetPolygonNoRef<br>CVisual::GetProperty<br>CVisual::GetVisualTree<br>CVisual::InsertChild<br>CVisual::ProcessAppendExcludedSharedLights<br>CVisual::ProcessAppendSharedLights<br>CVisual::ProcessInsertChild<br>CVisual::ProcessRemoveChild<br>CVisual::ProcessSetBlurredWallpaperSurface<br>CVisual::ProcessSetClip<br>CVisual::ProcessSetColorTransform<br>CVisual::ProcessSetContent<br>CVisual::ProcessSetEffect<br>CVisual::ProcessSetExcludedSharedLights<br>CVisual::ProcessSetInteraction<br>CVisual::ProcessSetSharedLights<br>CVisual::ProcessSetTransform<br>CVisual::ProcessSetTransformParent<br>CVisual::ProcessSetWindowBackgroundTreatment<br>CVisual::RemoveAllChildren<br>CVisual::RemoveAllSharedLights<br>CVisual::RemoveLight<br>CVisual::RenderContent<br>CVisual::RenderContentWorker<br>CVisual::SetClip<br>CVisual::SetEffect<br>CVisual::SetProperty<br>CVisualBitmap::Draw<br>CVisualBitmap::EnsureCachedVisualImage<br>CVisualBitmap::GenerateDrawList<br>CVisualBitmap::GetCurrentRenderingRealization<br>CVisualBitmapGeneratedT<CVisualBitmap,CContent>::SetVisual<br>CVisualCapture::EnqueueSetEvent<br>CVisualCapture::EnsureRenderTargets<br>CVisualCapture::ProcessUpdate<br>CVisualCapture::RegisterNotifiers<br>CVisualCapture::Render<br>CVisualGroup::AddVisual<br>CVisualReferenceController::ProcessUpdate<br>CVisualReferenceController::RegisterNotifiers<br>CVisualSurface::GetProperty<br>CVisualSurface::ProcessFreeze<br>CVisualSurface::SetProperty<br>CVisualTree::CalcOcclusion<br>CVisualTree::EnsureVisualTransform<br>CVisualTreeIterator::WalkSubtree<CDrawingContext><br>CVisualTreeIterator::WalkSubtree<CHitTestContext><br>CVisualTreeIterator::WalkSubtree<CInputSinkContext><br>CVisualTreeIterator::WalkSubtree<COcclusionContext><br>CVisualTreeIterator::WalkSubtree<CPreComputeContext><br>CWARPDrawListEntry::Create<br>CWARPDrawListEntry::EmitGeometry<br>CWARPDrawListEntry::Render<br>CWARPDrawListEntry::UpdateBitmaps<br>CWICBitmapRealization::Create<br>CWICBitmapRealization::ReleaseCopyBuffers<br>CWICBitmapWrapper::Create<br>CWICBitmapWrapper::HrInit<br>CWICBitmapWrapper::Lock<br>CWICBitmapWrapper::ReleaseCopyBuffers<br>CWarpLockSubresource::Create<br>CWarpLockSubresource::Initialize<br>CWarpLockSubresource::Lock<br>CWarpLockSubresource::Unlock<br>CWatermarkStack<CBspNode*___ptr64,64,2,10>::Push<br>CWatermarkStack<CComposition::HeatMapOptions,2,2,2>::Push<br>CWatermarkStack<CDrawingContext::StackBackfaceVisibilityEntry,64,2,10>::Push<br>CWatermarkStack<CDrawingContext::StackStateEntry,64,2,10>::Push<br>CWatermarkStack<CGraphWalker<CBspNode>::CFrame,64,2,10>::Optimize<br>CWatermarkStack<CGraphWalker<CBspNode>::CFrame,64,2,10>::Push<br>CWatermarkStack<CGraphWalker<CVectorShape>::CFrame,64,2,10>::Push<br>CWatermarkStack<CGraphWalker<CVisual>::CFrame,64,2,10>::Push<br>CWatermarkStack<CMILMatrix,8,2,8>::Optimize<br>CWatermarkStack<CMILMatrix,8,2,8>::Push<br>CWatermarkStack<COcclusionContext::StackStateType,64,2,10>::Push<br>CWatermarkStack<CVisual*___ptr64,64,2,10>::Push<br>CWatermarkStack<D2D_VECTOR_2F,2,2,10>::Optimize<br>CWatermarkStack<D2D_VECTOR_2F,2,2,10>::Push<br>CWatermarkStack<MilBackfaceVisibility::Enum,64,2,10>::Push<br>CWatermarkStack<MilBitmapBorderMode::Enum,64,2,10>::Push<br>CWatermarkStack<MilBitmapInterpolationMode::Enum,64,2,10>::Push<br>CWatermarkStack<MilCompositingMode::Enum,64,2,10>::Push<br>CWatermarkStack<MilDepthMode::Enum,64,2,10>::Push<br>CWatermarkStack<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,64,2,10>::Optimize<br>CWatermarkStack<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,64,2,10>::Push<br>CWatermarkStack<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,8,2,8>::Push<br>CWatermarkStack<bool,64,2,10>::Optimize<br>CWatermarkStack<bool,64,2,10>::Push<br>CWatermarkStack<float,2,2,10>::Optimize<br>CWatermarkStack<float,2,2,10>::Push<br>CWatermarkStack<float,64,2,10>::Push<br>CWatermarkStack<unsigned_int,64,2,10>::Optimize<br>CWatermarkStack<unsigned_int,64,2,10>::Push<br>CWatermarkStack<void*___ptr64,2,2,10>::Optimize<br>CWatermarkStack<void*___ptr64,2,2,10>::Push<br>CWeakReference<CInteractionTracker>::Create<br>CWeakReference<CResource>::Create<br>CWeakReference<CVisual>::Create<br>CWeakResourceReference::Get<br>CWindowBackdropBrush::GetBrushParameters<br>CWindowBackgroundTreatment::GenerateBitmapRealizationForEffectInput<br>CWindowNode::ApplyTextureToLocalTransform<br>CWindowNode::CollectAdditionalDirtyRects<br>CWindowNode::CollectOcclusion<br>CWindowNode::CollectOcclusionHelper<br>CWindowNode::EnsureEffectiveSpriteClip<br>CWindowNode::GetContentBounds<br>CWindowNode::GetEffectiveBounds<br>CWindowNode::GetWindowClipShape<br>CWindowNode::HitTestContent<br>CWindowNode::ProcessSetAlphaMargins<br>CWindowNode::ProcessSetCompositionSurface<br>CWindowNode::ProcessSetDxClip<br>CWindowNode::ProcessSetSpriteBitmap<br>CWindowNode::RenderBlackContent<br>CWindowNode::RenderContent<br>CWindowNode::RenderImage<br>CWindowNode::RenderRevealBorder<br>CWindowNode::SetFlipExSurface<br>CWindowNode::SetSpriteBitmap<br>CYCbCrSurface::ProcessUpdate<br>CaptureBitsResponse::CalcSectionBitmapSize<br>CaptureBitsResponse::CreateRenderTargetBitmap<br>CaptureBitsResponse::CreateSectionBitmap<br>CaptureBitsResponse::MapSectionBitmap<br>CaptureBitsResponse::OnPresentComplete<br>CaptureBitsResponse::RenderForCapture<br>CaptureBitsResponse::SendResponse<br>ClipPlaneIterator::ClipToPolygon<br>ClipPlaneIterator::SetClipPoints<br>ClipPlaneIterator::UpdateClippingPlanes<br>ComputeLanczosKernel<br>CoordMap::AddEntry<br>CreateCompObjectDiagnosticsRootProxy<br>DwmCoreDllMain<br>DynArray<CChannelContext*___ptr64,1>::AddAndSet<br>DynArray<CCommonRegistryData::GpuId,0>::AddMultipleAndSet<br>DynArray<CEffectCompilationTask*___ptr64,0>::RemoveAt<br>DynArray<CExpressionValue,1>::AddAndSet<br>DynArray<CHolographicClient::TextureUpdate,0>::RemoveAt<br>DynArray<CInteractionTracker::PendingStateChangeInfo,0>::ShiftLeft<br>DynArray<ClipPlaneIterator::LineSegment,0>::RemoveAt<br>DynArray<D2D1_POLYGON_EDGE_FLAG,0>::RemoveAt<br>DynArray<DwmAnimationPrimitive,0>::AddMultipleAndSet<br>DynArray<DwmAnimationTimeEventData,0>::AddMultipleAndSet<br>DynArray<DwmMousewheelInteractionConfigurationPrimitive,0>::AddMultipleAndSet<br>DynArray<DwmPenInteractionConfigurationPrimitive,0>::AddMultipleAndSet<br>DynArray<DwmTouchInteractionConfigurationPrimitive,0>::AddMultipleAndSet<br>DynArray<DwmTouchpadInteractionConfigurationPrimitive,0>::AddMultipleAndSet<br>DynArray<LightInfo,0>::AddMultipleAndSet<br>DynArray<PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::PropertyInfo,0>::RemoveAt<br>DynArray<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,0>::AddMultipleAndSet<br>DynArray<float,0>::AddMultipleAndSet<br>DynArray<tagRECT,0>::AddMultipleAndSet<br>DynArray<unsigned_char,0>::AddMultipleAndSet<br>DynArray<unsigned_short,0>::AddMultipleAndSet<br>DynArrayImpl<0>::AddMultiple<br>DynArrayImpl<0>::Grow<br>DynArrayImpl<1>::AddMultiple<br>DynArrayImpl<1>::Grow<br>EmitCpuClipAntialiasTemplateGeometry<br>EmitInstancedGeometry<br>EmitterShapes::CPathEmitterArea::CreatePathEmitterArea<br>EmitterShapes::CPathEmitterArea::HrFindInterface<br>EmitterShapes::CPathEmitterEdge::CreatePathEmitterShape<br>EmitterShapes::CPathEmitterEdge::HrFindInterface<br>FUN_18001d4d3<br>FUN_18004b2b4<br>FUN_1800516c9<br>FUN_180058ed8<br>FUN_1800643a2<br>FUN_1800645c3<br>FUN_18006461f<br>FUN_18006e6f5<br>FUN_180082a72<br>FUN_18008baea<br>FUN_1800c6af7<br>FUN_1800f3135<br>FUN_180105aa8<br>FUN_180118a12<br>FUN_180118f5a<br>FUN_180119228<br>FUN_1801192e7<br>FUN_1801194b1<br>FUN_1801195c4<br>FUN_180119756<br>FUN_180119b9f<br>FUN_180119d30<br>FUN_18011a0d2<br>FUN_18011a42f<br>FUN_18011a4d0<br>FUN_18011a60b<br>FUN_18011af47<br>FUN_18011b9f8<br>FUN_18011ba44<br>FUN_18011bf1e<br>FUN_18011c041<br>FUN_18011ca75<br>FUN_18011d71f<br>FUN_18011e9ce<br>FUN_18011eab7<br>FUN_18011eade<br>FUN_18011ec78<br>FUN_18011f987<br>FUN_1801200d0<br>FUN_18012b372<br>FUN_18012ba1f<br>FUN_18012c0cc<br>FUN_18012c90c<br>FUN_18012d2f2<br>FUN_18012d52e<br>FUN_18012d95f<br>FUN_18012dabb<br>FUN_18012dcb8<br>FUN_18012dda1<br>FUN_18012de67<br>FUN_18012e32d<br>FUN_18012e37e<br>FUN_18012e7cc<br>FUN_18012e89e<br>FUN_18012ee14<br>FUN_18012f17e<br>FUN_18012f692<br>FUN_18012f907<br>FUN_18012f974<br>FUN_18012f9a6<br>FUN_18012fa7f<br>FUN_18012fb12<br>FUN_18012fb6c<br>FUN_18012fc76<br>FUN_1801309e3<br>FUN_180130b56<br>FUN_180130f62<br>FUN_180130fb1<br>FUN_1801310c6<br>FUN_18013133b<br>FUN_180132f88<br>FUN_1801333de<br>FUN_180133410<br>FUN_180133535<br>FUN_180133efa<br>FUN_180135058<br>FUN_180135325<br>FUN_1801354b9<br>FUN_18013554e<br>FUN_1801355f5<br>FUN_180135754<br>FUN_1801363be<br>FUN_180137276<br>FUN_180137802<br>FUN_18013846f<br>FUN_180138574<br>FUN_180138594<br>FUN_1801386a7<br>FUN_1801386f1<br>FUN_180138875<br>FUN_1801388d0<br>FUN_180138eb3<br>FUN_180139782<br>FUN_180139800<br>FUN_180139bf0<br>FUN_180139e7d<br>FUN_18013a695<br>FUN_18013adcb<br>FUN_18013b410<br>FUN_18013b926<br>FUN_18013bba0<br>FUN_18013c187<br>FUN_18013cbc6<br>FUN_18013d2e3<br>FUN_18013db49<br>FUN_18013dcb8<br>FUN_18013e65a<br>FUN_18013ec4b<br>FUN_18013ed9d<br>FUN_18013eec3<br>FUN_18013f0dc<br>FUN_18013f3d6<br>FUN_18013fbb7<br>FUN_180140143<br>FUN_18014015d<br>FUN_1801404b2<br>FUN_1801417c1<br>FUN_18014199f<br>FUN_180141c13<br>FUN_180141f41<br>FUN_1801427ae<br>FUN_180142943<br>FUN_180142a0d<br>FUN_180142a7f<br>FUN_180142d4e<br>FUN_18014426e<br>FUN_1801448f4<br>FUN_180144b47<br>FUN_180144f76<br>FUN_1801456aa<br>FUN_180145ca5<br>FUN_180145cbc<br>FUN_180145ce0<br>FUN_180145d04<br>FUN_180145f5e<br>FUN_1801475a1<br>FUN_180147bc6<br>FUN_180148084<br>FUN_1801481e0<br>FUN_1801493f5<br>FUN_1801494bd<br>FUN_180149686<br>FUN_180149852<br>FUN_18014a8f6<br>FUN_18014a969<br>FUN_18014ae92<br>FUN_18014b029<br>FUN_18014db25<br>FUN_18014db9d<br>FUN_18014e2e2<br>FUN_18014e524<br>FUN_18014e644<br>FUN_18014f268<br>FUN_18014f568<br>FUN_18014fd23<br>FUN_18014fd67<br>FUN_180150746<br>FUN_18015dded<br>FUN_18015e2b6<br>FUN_18015fafc<br>FUN_1801616a9<br>FUN_180161da8<br>FUN_180161ef0<br>FUN_18016210e<br>FUN_1801627c1<br>FUN_18016299e<br>FUN_1801629de<br>FUN_180162cac<br>FUN_180163813<br>FUN_180164364<br>FUN_1801647a6<br>FUN_1801657fe<br>FUN_180168610<br>FUN_180169eb6<br>FUN_18016a386<br>FUN_18016a688<br>FUN_18016b8c4<br>FUN_18016b911<br>FUN_18016ba0f<br>FUN_18016bf4a<br>FUN_18016c2a8<br>FUN_18016c781<br>FUN_18016cc82<br>FUN_18016dce5<br>FUN_18016e247<br>FUN_18016e2f8<br>FUN_18016e594<br>FUN_18016efdc<br>FUN_18016f177<br>FUN_18016f4fc<br>FUN_18016fdf9<br>FUN_1801703f6<br>FUN_180170436<br>FUN_1801709de<br>FUN_180170bbf<br>FUN_180170ca2<br>FUN_180170e40<br>FUN_180170ef4<br>FUN_180170f9b<br>FUN_180171113<br>FUN_180171567<br>FUN_180172dde<br>FUN_180172e20<br>FUN_18017334e<br>FUN_180173923<br>FUN_180174ce4<br>FUN_180175d40<br>FUN_180179b62<br>FUN_18017bfa5<br>FUN_18017c214<br>FUN_18017d5da<br>FUN_18017e2ce<br>FUN_18017e8bf<br>FUN_18017ef26<br>FUN_18017ef60<br>FUN_18017f415<br>FUN_18017f539<br>FUN_18017f998<br>FUN_180180e9a<br>FUN_180183cfa<br>FUN_1801854ee<br>FUN_180185850<br>FUN_180186106<br>FUN_180186c55<br>FUN_180187088<br>FUN_180187134<br>FUN_18018722e<br>FUN_1801887dd<br>FUN_180189442<br>FUN_18018954a<br>FUN_18018a156<br>FUN_18018a95c<br>FUN_18018b53f<br>FUN_18018db78<br>FUN_18018e038<br>FillLanczosUpBuffer<br>GetLPCreateDCompositionDirectInkFactoryPartner<br>HANDLE_TABLE::Resize<br>HANDLE_TABLE::ResizeToFit<br>HrCalcRequiredBufferSizeWorker<br>HrCheckBufferSize<br>HrCheckBufferSize<br>HrCreateBitmapFromMemoryEx<br>HrCreateBitmapFromWICBitmapSource<br>HrCreateDestBitmap<br>HrCreateDestBitmapCopy<br>HrMilPfToPixelFormatInfo<br>HrgnToRgnData<br>InitializeShaderLinkingInput<br>KeyframeValue::GetValue<br>LinkCompositingShader<br>LinkLightShader<br>LinkShader<br>LoadShaderBody<br>MagnifierCaptureBitsResponse::OnPresentComplete<br>MagnifierCaptureBitsResponse::SendResponse<br>OpenComposedEvent<br>OpenDxBltEvent<br>PrepareSamplers<br>PrimitiveStorage::Alloc<16><br>PrimitiveStorage::CCachableStorage<CDrawListPrimitive4,16>::`scalar_deleting_destructor'<br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<D2DMatrix><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<D2DQuaternion><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<D2DVector2><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<D2DVector3><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<D2DVector4><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<D2D_MATRIX_3X2_F><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<_D3DCOLORVALUE><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<bool><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<float><br>RemoveCountFromEndOfArray<AxisWithType><br>RemoveCountFromEndOfArrayAndFree<br>ScanPipelineBuilder::AddBufferReference<br>ScanPipelineBuilder::AddOp_Binary<br>ScanPipelineBuilder::Append_Convert<br>ScanPipelineBuilder::Append_Convert_BetweenInterchange<br>ScanPipelineBuilder::ConvertDestBufferReferences<br>ShadowHelpers::GenerateBlurIntermediate<br>ShadowHelpers::GenerateMaskIntermediate<br>ShadowHelpers::GetLightPosition<br>ShadowHelpers::GetLightToCameraMatrix<br>ShadowHelpers::GetProjectionOntoVisualMatrix<br>Startup<br>Time::PreInitClass<br>UseFragmentsModuleNoRef<br>VisualCaptureBitsResponse::OnPresentComplete<br>WilResultLoggingCallback_MaybeFailFast<br>`anonymous_namespace'::State::State<br>switchD_180071930::caseD_0<br>switchD_1800725a8::caseD_b<br>switchD_180086845::caseD_b<br>switchD_18008776e::caseD_b</details>|<details><summary>Expand for full list:<br><lambda_08f8e6791065478e4a38815f49fd4aba>::<lambda_invoker_cdecl><br><lambda_4d6035b5fdecd7bb0589f89584db9c3e>::operator()<br><lambda_f7805202518b118888e0b3d23c76c683>::operator()<br>?CreateBitmap@CExternalLayer@@KAJAEBVCResourceTag@@AEBUMilPointAndSizeL@@AEBUPixelFormatInfo@@AEBVRenderTargetInfo@@W4Enum@CacheMode@@PEAPEAVIRenderTargetBitmap@@@Z<br>?DuplicateHandle@CResourceTable@@QEAAJPEAVCChannelContext@@I0I@Z<br>?GetWorldTransform@CVisual@@QEBAJPEBVCVisualTree@@W4WalkReason@@PEAVCMILMatrix@@PEA_N2@Z<br>?SetPixelFormat@?$CGdiSpriteBitmapGeneratedT@VCGdiSpriteBitmap@@VCResource@@@@QEAAJW4DXGI_FORMAT@@@Z<br>AlignRectFToPointAndSizeL<br>AppendColorConversion<br>AppendColorModifications<br>AppendLights</summary>AppendShaderBody<br>ApplyTexcoordExtendMode<br>ApplyTexcoordTransformations<br>CAffineTransform2DEffect::SetD2DEffectProperties<br>CAffineTransform2DEffect::SetProperty<br>CAnimation::ProcessAddTimeEvents<br>CAnimation::ProcessAppend<br>CAnimation::ProcessSetCallbackId<br>CAnimation::ProcessSetLegacyTrigger<br>CAnimation::ProcessSetPrimitives<br>CAnimationControllerGeneratedT<CAnimationController,CPropertyChangeResource>::SetOrAppendKeyframeAnimations<br>CAnimationLoggingManager::LogDebugPropertyUpdates<br>CAnimationLoggingManager::ProcessSetCompositorComment<br>CAnimationLoggingManager::ProcessSetPropertyUpdate<br>CAnimationTrigger::SetProperty<br>CAnimationTriggerGeneratedT<CAnimationTrigger,CPropertyChangeResource>::SetCondition<br>CAnimationTriggerGeneratedT<CAnimationTrigger,CPropertyChangeResource>::SetOrAppendAnimations<br>CArithmeticCompositeEffect::SetD2DEffectProperties<br>CArithmeticCompositeEffect::SetProperty<br>CArrayBasedCoverageSet::Add<br>CAsyncFlushResponse::SendResponse<br>CAsyncFlushResponse::SendResponseWorker<br>CAtlasBitmapResource::Create<br>CAtlasBitmapResource::GetDeviceTexture<br>CAtlasBitmapResource::Update<br>CAtlasManager::AllocateGradientStrip<br>CAtlasManager::CompactAtlases<br>CAtlasManager::CompactSingleAtlas<br>CAtlasTexture::Create<br>CAtlasTexture::Initialize<br>CAtlasedRectsGroup::Draw<br>CAtlasedRectsGroup::GenerateDrawList<br>CAtlasedRectsGroupGeneratedT<CAtlasedRectsGroup,CContent>::SetImageSource<br>CAtlasedRectsGroupGeneratedT<CAtlasedRectsGroup,CContent>::SetOrAppendChildren<br>CBaseAnimation::ProcessAddBinding<br>CBaseAnimation::ProcessRemoveBinding<br>CBaseAnimation::RegisterAnimateResource<br>CBaseAnimation::UnregisterAnimateResource<br>CBaseClipStack::Push<br>CBaseExpression::CalculateValue<br>CBaseExpression::MergeValueWithMask<br>CBaseExpression::NotifyAnimationCompleted<br>CBaseExpression::NotifyAnimationDisconnected<br>CBaseExpression::ProcessSetBindingBroken<br>CBaseExpression::ProcessSetTarget<br>CBaseExpression::RegisterIndirectTarget<br>CBaseExpression::SetChannelHandle<br>CBaseExpression::SetExpressionArray<tagMILCMD_BASEEXPRESSION_ADDINITIALVALUEEXPRESSIONS,DynArrayIANoCtor<CBaseExpression*___ptr64,2,0>_><br>CBaseExpression::SetOutputValue<br>CBaseExpression::SetTarget<br>CBaseExpression::StartAsTriggeredAnimation<br>CBaseExpression::TryGetTargetValue<br>CBaseExpression::TryRegisterWithExpressionManager<br>CBatchOptimizer::Flush<br>CBitmap::CopyPixels<br>CBitmap::CopyPixelsHelper<br>CBitmap::HrCheckPixelRect<br>CBitmap::HrInitDataFromIBitmapSource<br>CBitmap::HrLockUnaligned<br>CBitmap::Lock<br>CBitmapLock::GetDataPointer<br>CBitmapLock::GetPixelFormat<br>CBitmapLock::GetSize<br>CBitmapLock::GetStride<br>CBitmapLock::HrInit<br>CBitmapLockState::LockRead<br>CBitmapLockState::LockWrite<br>CBitmapLockUnaligned::HrInit<br>CBitmapRenderStrategy::Draw<br>CBitmapRenderStrategy::GetBrushParameters<br>CBitmapRenderStrategy::GetCompositionSurfaceInfo<br>CBitmapRenderStrategy::GetTextureMemoryLayoutData<br>CBitmapResource::Create<br>CBitmapResource::GetCurrentRenderingRealization<br>CBitmapResource::ProcessSource<br>CBitmapResourceRenderStrategy::GetBrushParametersWorker<br>CBlendEffect::SetD2DEffectProperties<br>CBlurRenderingGraph::Create<br>CBlurRenderingGraphBuilder::BuildPrescale<br>CBlurredWallpaperBackdropBrush::GetBrushParameters<br>CBrightnessEffect::SetD2DEffectProperties<br>CBrightnessEffect::SetProperty<br>CBrush::CreateLayoutGeometryDrawListBrush<br>CBrush::GenerateDrawList<br>CBrushDrawListGenerator::ComputeBrushClamp<br>CBrushDrawListGenerator::GenerateDrawListPrimitive<br>CBrushDrawListGenerator::GenerateIntermediateSurfaceBrush<br>CBrushRenderingEffect::SetStateOnDevice<br>CBrushRenderingGraph::GetInputBrushParameters<br>CBrushRenderingGraph::RenderInternalEffect<br>CBrushRenderingGraphBuilder::AddMaskBrush<br>CBrushRenderingGraphBuilder::AddNamedInputToFragment<br>CBrushRenderingGraphBuilder::AddNineGridBrush<br>CBrushRenderingGraphBuilder::AddRadialGradientBrush<br>CBrushRenderingGraphBuilder::Build<br>CBrushRenderingGraphBuilder::Build<br>CBrushRenderingGraphBuilder::CheckFragmentSize<br>CBrushRenderingGraphBuilder::CreateShaderBodies<br>CBrushRenderingGraphBuilder::CreateTechniqueForFragment<br>CBrushRenderingGraphBuilder::EnsureShaderCache<br>CBspNode::BuildPolygonList<br>CBspNode::PushPolygon<br>CBspPolygonListBuilder::BuildPolygonList<br>CBspPreComputeHelper::CheckVisibilityAndInsertIntoBspTree<br>CBspPreComputeHelper::CleanupAfterWalking<br>CBspPreComputeHelper::CreatePolygonAndPushToBspTree<br>CBspPreComputeHelper::PushStacksForBspChildVisual<br>CBspPreComputeHelper::PushStacksForBspRootVisual<br>CBspPreComputeHelper::PushTransformForChildVisual<br>CBspTreeIterator::WalkSubtree<CBspPolygonListBuilder><br>CCachedVisualImage::CCachedTarget::Update<br>CCachedVisualImage::CreateCachedTarget<br>CCachedVisualImage::EnsureRenderTargetBitmap<br>CCachedVisualImage::GetD2DBitmap<br>CCachedVisualImage::GetDeviceTexture<br>CCachedVisualImage::SetForDCompSnapshot<br>CCachedVisualImage::SetRenderTransform<br>CCachedVisualImage::SetRootVisual<br>CCachedVisualImage::UpdateFromVisualSurface<br>CCachedWindowBackgroundTreatment::Create<br>CCachedWindowBackgroundTreatment::Update<br>CCaptureController::ProcessSetTransform<br>CCaptureController::ProcessSetVisualTree<br>CCaptureRenderTarget::CreateRenderTargetForFrameBuffer<br>CCaptureRenderTarget::EnsureResources<br>CCaptureRenderTarget::Present<br>CCaptureRenderTarget::ProcessSetFlipManager<br>CCaptureRenderTarget::Render<br>CCaptureRenderTarget::RenderAdditionalTopmostContent<br>CCaptureRenderTarget::SetTransform<br>CCaptureRenderTarget::TryTargetNextBuffer<br>CChannel::AnimationUpdatePrimitives<br>CChannel::AtlasedRectsGroupUpdate<br>CChannel::AtlasedRectsMeshUpdate<br>CChannel::BeginCommand<br>CChannel::GdiSpriteBitmapDirtyRectangles<br>CChannel::Geometry2DGroupUpdate<br>CChannel::InteractionUpdateConfiguration<br>CChannel::LinearGradientLegacyMilBrushUpdate<br>CChannel::MeshGeometry2DUpdate<br>CChannel::RenderDataUpdate<br>CChannel::RgnGeometryUpdate<br>CChannel::SendCommand<br>CChannel::Transform3DGroupUpdate<br>CChannel::TransformGroupUpdate<br>CChannel::VisualGroupUpdate<br>CChannelContext::Create<br>CChannelContext::PostMessageToChannel<br>CChannelTable::AssignChannelEntry<br>CChannelTable::DestroyHandle<br>CChannelTable::GetMasterTableEntry<br>CClientMemoryBitmap::HrInit<br>CClipBrush::Create<br>CClipBrush::EnsureBrushGraph<br>CClipBrush::GetBounds<br>CClipBrush::GetBrushParameters<br>CClipBrush::GetTextureMemoryLayoutData<br>CColorBrush::GetProperty<br>CColorBrush::SetProperty<br>CColorGradientStop::GetProperty<br>CColorGradientStop::SetProperty<br>CColorKeyBitmap::ApplyColorKeyToBuffer<br>CColorKeyBitmap::CopyPixels<br>CColorKeyBitmap::Create<br>CColorKeyBitmap::InitColorKey<br>CColorKeyBitmap::Initialize<br>CColorKeyBitmap::LockForRead<br>CColorKeyBitmapRealization::Create<br>CColorKeyBitmapRealization::GetD2DBitmap<br>CColorKeyBitmapRealization::GetDeviceTexture<br>CColorKeyBitmapRealization::Initialize<br>CColorMatrixEffect::SetD2DEffectProperties<br>CColorMatrixEffect::SetProperty<br>CColorSpaceLayer::Create<br>CColorSpaceLayer::PostRestoreState<br>CColorSpaceLayer::RenderLayer<br>CColorTransformLayer::Create<br>CColorTransformLayer::RenderLayer<br>CCombinedGeometry::GetShapeDataCore<br>CCombinedGeometry::ProcessUpdate<br>CCommandBatch::Create<br>CCommandBuffer::Initialize<br>CCommonRenderingEffect::UpdateBitmaps<br>CCommonRenderingEffect::`vector_deleting_destructor'<br>CCommonRenderingEffectFactory::CreateRenderingEffect<br>CCommonRenderingEffectFactory::CreateRenderingEffectWorker<CCommonRenderingEffect><br>CCommonRenderingEffectFactory::CreateRenderingEffectWorker<CProjectedShadowRenderingEffect><br>CCommonRenderingShaderCache::GetCommonOrCubeMapRenderingShader<br>CCompSwapChain::Create<br>CCompSwapChain::GetPresentStatistics<br>CCompSwapChain::Initialize<br>CCompSwapChain::Present<br>CCompSwapChain::ResetBackBuffer<br>CCompSwapChain::SetSize<br>CCompiledEffectTemplate::OnCompilationCompleted<br>CCompiledEffectTemplate::ProcessUpdate<br>CComplexShape::GetD2DGeometry<br>CComponentTransform2D::GetProperty<br>CComponentTransform3D::SetOrientation<br>CComponentTransform3D::SetRotationAngle<br>CComponentTransform3D::SetRotationAxis<br>CComposeTop::AddShapeToLifetime<br>CComposeTop::FullRender<br>CComposeTop::NewContentRendered<br>CComposeTop::Render<br>CComposeTop::RenderWorker<br>CComposeTop::SubtractOverdraw<br>CCompositeEffect::SetD2DEffectProperties<br>CCompositingShaderCache::CreateCompositingShader<br>CComposition::AddCursorVisual<br>CComposition::AddToDDAExcludeVisualList<br>CComposition::AddToMagnifierList<br>CComposition::BeginCompositionFrame<br>CComposition::Channel_CreateResource<br>CComposition::Channel_DeleteResource<br>CComposition::Channel_DuplicateHandleOnTarget<br>CComposition::Channel_SyncFlush<br>CComposition::CleanTrees<br>CComposition::CloseChannel<br>CComposition::FlushChannels<br>CComposition::ForEachCursorVisualReference<<lambda_f7805202518b118888e0b3d23c76c683>_><br>CComposition::GetAttachedChannel<br>CComposition::Initialize<br>CComposition::NotifyHelper<br>CComposition::Partition_RegisterForNotifications<br>CComposition::Partition_SetCurrentMmTask<br>CComposition::Partition_SetCursor<br>CComposition::Partition_SetExcludeFromDDA<br>CComposition::Partition_SetMagnifier<br>CComposition::PostPresent<br>CComposition::PreRender<br>CComposition::Present<br>CComposition::ProcessBatches<br>CComposition::ProcessCommandBatch<br>CComposition::ProcessComposition<br>CComposition::ProcessDataOnChannel<br>CComposition::ProcessRoundTripRequest<br>CComposition::ResetTokenThread<br>CComposition::UpdateMmcssPartners<br>CCompositionAmbientLight::GetProperty<br>CCompositionAmbientLight::SetProperty<br>CCompositionCubeMap::FlushToD3DCubeMap<br>CCompositionCubeMap::GetOrCreateD3DCubeMap<br>CCompositionCubeMap::ProcessSetCreationParams<br>CCompositionCubeMap::ProcessSetSurfaces<br>CCompositionDistantLight::GetLightInfo<br>CCompositionDistantLight::GetProperty<br>CCompositionDistantLight::ProcessSetCoordinateSpace<br>CCompositionDistantLight::SetProperty<br>CCompositionLight::AddTargets<br>CCompositionLight::CalcLocalToDeviceMatrix<br>CCompositionLight::OnSceneReady<br>CCompositionLight::RemoveAllTargets<br>CCompositionMipmapSurface::EnsureMipmapSurface<br>CCompositionMipmapSurface::OnSceneFrameTick<br>CCompositionMipmapSurface::OnSceneReady<br>CCompositionMipmapSurface::ProcessSetSurfaces<br>CCompositionMipmapSurface::UpdateMipmapSurface<br>CCompositionPointLight::GetLightInfo<br>CCompositionPointLight::GetProperty<br>CCompositionPointLight::ProcessSetCoordinateSpace<br>CCompositionPointLight::SetProperty<br>CCompositionSkyBoxBrush::BuildDrawList<br>CCompositionSkyBoxBrush::CreateDummyRect<br>CCompositionSkyBoxBrush::CreateSkyBoxPrimitive<br>CCompositionSkyBoxBrush::Draw<br>CCompositionSkyBoxBrush::GenerateDrawList<br>CCompositionSkyBoxBrush::GetProperty<br>CCompositionSkyBoxBrush::ProcessSetSource<br>CCompositionSkyBoxBrush::ProcessSetTransform<br>CCompositionSkyBoxBrush::SetProperty<br>CCompositionSpotLight::AffectsVisual<br>CCompositionSpotLight::GetLightInfo<br>CCompositionSpotLight::GetProperty<br>CCompositionSpotLight::IsValid<br>CCompositionSpotLight::ProcessSetCoordinateSpace<br>CCompositionSpotLight::SetProperty<br>CCompositionSurfaceBitmap::AddOcclusionInformation<br>CCompositionSurfaceBitmap::Create<br>CCompositionSurfaceBitmap::DrawContentBorders<br>CCompositionSurfaceBitmap::DrawLetterboxingMargins<br>CCompositionSurfaceBitmap::DrawLetterboxingMarginsInternal<br>CCompositionSurfaceBitmap::GenerateDrawList<br>CCompositionSurfaceBitmap::GetCurrentRenderingRealization<br>CCompositionSurfaceBitmap::HitTest<br>CCompositionSurfaceBitmap::ProcessUpdate<br>CCompositionSurfaceInfo::Create<br>CCompositionSurfaceManager::CreateCompositionSurfaceBitmap<br>CCompositionSurfaceManager::GetOrCreateCompositionSurfaceInfo<br>CCompositionSwapchainStatistics::CommitRecordedStatistics<br>CCompositionSwapchainStatistics::Create<br>CCompositionSwapchainStatistics::Initialize<br>CCompositionTextLineGeneratedT<CCompositionTextLine,CTextObject>::SetProperty<br>CConditionalExpression::AddStackValueToSum<br>CConditionalExpression::CalculateConditionValue<br>CConditionalExpression::CalculateValueWorker<br>CConditionalExpression::GetValue<br>CConditionalExpression::IsAnyConditionSatisfied<br>CConditionalExpression::ProcessAddConditionAnimationResources<br>CConditionalExpression::ProcessSetDefaultAnimation<br>CConnection::MainCompositionThreadLoop<br>CContainerVectorShape::ProcessSetShapes<br>CContainerVectorShape::SetShapes<br>CContent::Draw<br>CConversionSwapChain::CalcPresentMode<br>CConversionSwapChain::ConvertDesktopAndAppPlanes<br>CConversionSwapChain::ConvertMultiResource<br>CConversionSwapChain::ConvertSingleAppPlane<br>CConversionSwapChain::ConvertSingleDesktopPlane<br>CConversionSwapChain::ConvertSingleResource<br>CConversionSwapChain::CopyFrontToBackBuffer<br>CConversionSwapChain::Create<br>CConversionSwapChain::EnsureTargetBitmap<br>CConversionSwapChain::GetAppOverlayShaderResourceView<br>CConversionSwapChain::GetMultiplaneOverlayCaps<br>CConversionSwapChain::Initialize<br>CConversionSwapChain::Present<br>CConversionSwapChain::PresentMPO<br>CConversionSwapChain::SetHardwareProtection<br>CCpuClip::AddPrimitiveClip<br>CCpuClip::ConvertContextDependentClipToLocal<br>CCpuClip::ResolveClip<br>CCpuClipAntialiasDrawListEntry::Create<br>CCpuClipAntialiasDrawListEntry::Render<br>CCubeMapRenderingEffect::EmitGeometry<br>CCubeMapRenderingEffect::SetStateOnDevice<br>CCubeMapRenderingEffect::UpdateBitmaps<br>CCustomKernelEffect::Create<br>CD2DBitmap::CopyPixels<br>CD2DBitmap::Create<br>CD2DBitmap::CreateSubResourceBitmap<br>CD2DBitmap::EnsureBitmap<br>CD2DBitmap::EnsureIgnoreAlphaBitmap<br>CD2DBitmap::GetBitmap<br>CD2DBitmap::GetDXGIResource<br>CD2DBitmap::LockAndRead<br>CD2DBitmap::LockForRead<br>CD2DBitmapCache::CreateAndCacheBitmap<br>CD2DBitmapCache::EnsureSysmemBitmap<br>CD2DBitmapCache::GetBitmapInternal<br>CD2DBitmapCache::GetCachedBitmap<br>CD2DBitmapCache::GetCachedTexture<br>CD2DBrush::Create<br>CD2DContext::CreateBitmapFromWicBitmap<br>CD2DContext::CreateD2DBitmapFromDxgiSurface<br>CD2DContext::CreateD2DEffect<br>CD2DContext::CreateD2DInk<br>CD2DContext::CreateGenericInk<br>CD2DContext::CreateGradientStopCollection<br>CD2DContext::DrawGenericInk<br>CD2DContext::DrawShape<br>CD2DContext::DrawYCbCrBitmap<br>CD2DContext::EndDraw<br>CD2DContext::EnsureDrawListBatch<br>CD2DContext::FillShape<br>CD2DContext::FlushD2D<br>CD2DContext::FlushD2DInternal<br>CD2DContext::FlushDrawList<br>CD2DContext::GetCachedEffectNoRef<br>CD2DContext::GetDirectInkFactory<br>CD2DContext::InitializeD2D<br>CD2DContext::IntersectGeometryWithSafeBounds<br>CD2DContext::PopTarget<br>CD2DContext::PopulateEffectTable<br>CD2DContext::PushTarget<br>CD2DContext::SubmitRenderCommand<br>CD2DEffect::Create<br>CD2DFactory::CreateD2DDevice<br>CD2DFactory::EnsureD2DFactory<br>CD2DFactory::~CD2DFactory<br>CD2DGenericInk::Create<br>CD2DGenericInk::CreateDirectInkFactory<br>CD2DInk::Create<br>CD2DResourceManager::Create<br>CD2DSharedBuffer::CreateFromHeap<br>CD2DSharedBuffer::CreateFromSharedSection<br>CD3DBatchExecutionContext::AppendGeometry<br>CD3DBatchExecutionContext::FillVertexAndIndexBuffers<br>CD3DBatchExecutionContext::SetRenderingEffectState<br>CD3DConstantBuffer::Create<br>CD3DConstantBuffer::SetData<br>CD3DDevice::CheckOcclusionState<br>CD3DDevice::CopyTexture2D<br>CD3DDevice::Create<br>CD3DDevice::CreateBuffer<br>CD3DDevice::CreateCompositionSwapChain<br>CD3DDevice::CreateConversionSwapChain<br>CD3DDevice::CreateD2DBitmap<br>CD3DDevice::CreateD3D11Device<br>CD3DDevice::CreateDDASwapChain<br>CD3DDevice::CreateDeviceTextureTarget<br>CD3DDevice::CreateDeviceTextureTarget<br>CD3DDevice::CreateFence<br>CD3DDevice::CreateLegacyRemotingSwapChain<br>CD3DDevice::CreateLegacyStereoSwapChain<br>CD3DDevice::CreateLegacySwapChain<br>CD3DDevice::CreatePixelShader<br>CD3DDevice::CreateRenderTargetBitmap<br>CD3DDevice::CreateRenderTargetBitmap<br>CD3DDevice::CreateRenderTargetBitmap<br>CD3DDevice::CreateRenderTargetView<br>CD3DDevice::CreateScratchRenderTargetBitmap<br>CD3DDevice::CreateSecondaryD2DBitmap<br>CD3DDevice::CreateShaderResourceView<br>CD3DDevice::CreateSharedFence<br>CD3DDevice::CreateSharedHandleFence<br>CD3DDevice::CreateStereoRenderTargetBitmap<br>CD3DDevice::CreateTexture<br>CD3DDevice::EnqueueSetEvent<br>CD3DDevice::EnsureBlackBitmapTargets<br>CD3DDevice::EnsureVideoProcessor<br>CD3DDevice::GatherSupportedTextureFormats<br>CD3DDevice::GenerateShaders<br>CD3DDevice::GetD3DSamplerStateNoRef<br>CD3DDevice::GetMaxFeatureLevel<br>CD3DDevice::HDRConvert<br>CD3DDevice::HDRConvertWithFakeOverlay<br>CD3DDevice::Init<br>CD3DDevice::InitSystemDevice<br>CD3DDevice::Map<br>CD3DDevice::OpenIndirectSwapchain<br>CD3DDevice::OpenRenderFence<br>CD3DDevice::PinResources<br>CD3DDevice::Present<br>CD3DDevice::Present<br>CD3DDevice::PresentMPO<br>CD3DDevice::ProcessPendingUnpin<br>CD3DDevice::TranslateDXGIorD3DErrorInContext<br>CD3DDevice::VideoProcessorBlt<br>CD3DDynamicAppendBuffer::BeginAppend<br>CD3DDynamicAppendBuffer::EnsureByteSpace<br>CD3DDynamicAppendBuffer::Initialize<br>CD3DPixelShader::Create<br>CD3DSurface::Create<br>CD3DSurface::CreateViewOfTexture<br>CD3DSurface::GetDXGIResource<br>CD3DSurface::Init<br>CD3DTexture::GetDXGIResource<br>CD3DTexture::Init<br>CD3DTexture::InitResource<br>CD3DVidMemOnlyTexture::Create<br>CD3DVidMemOnlyTexture::OpenSharedTexture<br>CDDARenderTarget::Create<br>CDDARenderTarget::EnsureSwapChain<br>CDDARenderTarget::Present<br>CDDARenderTarget::Render<br>CDDASwapChain::Create<br>CDDASwapChain::Initialize<br>CDDASwapChain::Present<br>CDDisplayManager::CreateDDisplaySwapchainForSource<br>CDDisplayManager::CreateHdrMetadata<br>CDDisplayManager::CreatePrimaryBuffer<br>CDDisplayManager::CreatePrimaryDescription<br>CDDisplayManager::CreateTaskPool<br>CDDisplayManager::EnsureDDisplayManager<br>CDDisplayManager::EnsureDevice<br>CDDisplayManager::GetDisplayDeviceAndTarget<br>CDDisplayManager::GetRateForTarget<br>CDDisplayRenderTarget::CheckOcclusionState<br>CDDisplayRenderTarget::GetDesktopTree<br>CDDisplayRenderTarget::GetPresentStatisticsDWM<br>CDDisplayRenderTarget::Present<br>CDDisplayRenderTarget::ProcessUpdateRefreshRate<br>CDDisplayRenderTarget::Render<br>CDDisplayRenderTarget::RenderComposeTop<br>CDDisplayRenderTarget::RenderDirtyRegion<br>CDDisplayRenderTarget::SetSyncRefreshCountWaitTarget<br>CDDisplayRenderTarget::TryEnsureSwapChain<br>CDDisplayRenderTarget::UpdateMPOCaps<br>CDDisplayRenderTarget::WaitForVBlank<br>CDDisplaySwapChain::CheckMultiplaneOverlaySupportInternal<br>CDDisplaySwapChain::CheckOcclusionState<br>CDDisplaySwapChain::ComputeCachedHdrMetadata<br>CDDisplaySwapChain::CreateScanout<br>CDDisplaySwapChain::ExecutePresent<br>CDDisplaySwapChain::FindCachedDesktopScanout<br>CDDisplaySwapChain::FindCachedGeneralScanout<br>CDDisplaySwapChain::GetMultiplaneOverlayCaps<br>CDDisplaySwapChain::GetPresentStatistics<br>CDDisplaySwapChain::GetPresentStatisticsDWM<br>CDDisplaySwapChain::GetSurfacePlaneResource<br>CDDisplaySwapChain::Initialize<br>CDDisplaySwapChain::InternalPresentDFlip<br>CDDisplaySwapChain::PostPresent<br>CDDisplaySwapChain::PrePresent<br>CDDisplaySwapChain::Present<br>CDDisplaySwapChain::PresentMPO<br>CDDisplaySwapChain::UpdateBackBufferTextureTarget<br>CDDisplaySwapChain::UpdateRefreshRate<br>CDataStreamWriter::AddBlockData<br>CDataStreamWriter::AllocateNewBlock<br>CDataStreamWriter::BeginItem<br>CDataStreamWriter::EndItem<br>CDataStreamWriter::EnsureSize<br>CDataStreamWriter::GetItemDataWritePointer<br>CDataStreamWriter::IncreaseWrittenByteCount<br>CDecodeBitmap::EnsureTargetBitmap<br>CDecodeBitmap::VideoProcessorBlt<br>CDesktopTree::AddNewComposeTopContent<br>CDesktopTree::CalcOcclusionAndCollectOverlayCandidates<br>CDesktopTree::CleanTreeAndLockForRead<br>CDesktopTree::ProcessCaptureBits<br>CDesktopTree::ProcessCreate<br>CDesktopTree::ProcessSetRoot<br>CDesktopTree::SetLuid<br>CDesktopTree::SetRootVisual<br>CDeviceManager::AdvanceFrame<br>CDeviceManager::CreateNewDevice<br>CDeviceManager::GetDefaultDevice<br>CDeviceManager::GetExistingDevice<br>CDeviceManager::GetWarpDevice<br>CDeviceResourceTable<CD2DEffect,CFilterEffect>::FindOrCreateResourceNoRef<br>CDeviceResourceTable<CD2DGenericInk,CGenericInk>::FindOrCreateResourceNoRef<br>CDeviceResourceTable<CD2DInk,CInk>::FindOrCreateResourceNoRef<br>CDeviceResourceTable<CD3DConstantBuffer,CRenderingTechnique>::FindOrCreateResourceNoRef<br>CDeviceResourceTable<CD3DPixelShader,CLinkedShader>::FindOrCreateResourceNoRef<br>CDeviceTextureTarget::Create<br>CDeviceTextureTarget::CreateSubResourceTextureTarget<br>CDeviceTextureTarget::Initialize<br>CDirectFlipInfo::Activate<br>CDirectFlipInfo::AddOverdrawToDirtyRegion<br>CDirectFlipInfo::DisableIndependentFlip<br>CDirectFlipInfo::EnableIndependentFlip<br>CDirectFlipInfo::GetDeviceTarget<br>CDirectFlipInfo::Present<br>CDirtyRegion::Add<br>CDirtyRegion::Add<br>CDirtyRegion::CalcOcclusion<br>CDirtyRegion::GetIntersectingRedrawRects<br>CDirtyRegion::_Add<br>CDisplayDebugFrameCounter::Display<br>CDisplayDebugFrameCounter::DisplayText<br>CDisplayManager::GetDXGIFactory<br>CDisplayManager::GetDXGIOutput<br>CDisplayManager::GetDXGIOutput<br>CDisplayManager::GetPrimaryAdapterLuid<br>CDisplayManager::Initialize<br>CDisplayManager::ValidateLuidAndMonitor<br>CDrawListBatchManager::AddBatchCommand<br>CDrawListBatchManager::OpenDrawListEntryBatch<br>CDrawListBatchManager::RawAddBatchCommands<br>CDrawListBatchManager::TakeItemFromCache<CBatchCommand><br>CDrawListBitmap::SetTransparent<br>CDrawListCache::Render<br>CDrawListEntryBatch::CSharedDirect3DResources::Init<br>CDrawListEntryBatch::Render<br>CDrawListEntryBatch::RenderLoop<0><br>CDrawListEntryBatch::SetLightingCollection<br>CDrawListEntryBuilder::End<br>CDrawListEntryBuilder::ExtractBuiltHWPrimitiveEntry<br>CDrawListEntryBuilder::Insert<br>CDrawListEntryBuilder::InsertHW<br>CDrawListEntryBuilder::InsertWARP<br>CDrawListEntryBuilder::InsertWorker<br>CDrawListEntryBuilder::PartitionPrimitive<br>CDrawListPrimitive::Create<br>CDrawListPrimitive::CreateInstanced<br>CDrawingContext::BeginFrame<br>CDrawingContext::CTryIgnoreCpuClippingScope::Enter<br>CDrawingContext::Clear<br>CDrawingContext::ComputeExternalLayerOffsetAndBounds<br>CDrawingContext::D2DGeometryFromShape<br>CDrawingContext::DrawAsOverlay<br>CDrawingContext::DrawBitmap<br>CDrawingContext::DrawBitmapRealization<br>CDrawingContext::DrawBspPolygonList<br>CDrawingContext::DrawDirtyRegionVisualizationForCurrentNode<br>CDrawingContext::DrawGenericInk<br>CDrawingContext::DrawInk<br>CDrawingContext::DrawPolygon<br>CDrawingContext::DrawRectangleOverlay<br>CDrawingContext::DrawScene3D<br>CDrawingContext::DrawSolidRectangle<br>CDrawingContext::DrawSubVisualTree<br>CDrawingContext::DrawTextW<br>CDrawingContext::DrawVisualTree<br>CDrawingContext::EmitDrawListCache<br>CDrawingContext::EndFrame<br>CDrawingContext::FillEffect<br>CDrawingContext::FillRectanglesWithDrawListBitmap<br>CDrawingContext::FillRectanglesWithDrawListBrush<br>CDrawingContext::FillRectanglesWithSolidColor<br>CDrawingContext::FillShapeWithBitmap<br>CDrawingContext::FillShapeWithBitmapRealization<br>CDrawingContext::FillShapeWithBrush<br>CDrawingContext::FillShapeWithSolidColor<br>CDrawingContext::FlushAllDeferredClipping<br>CDrawingContext::FlushD2D<br>CDrawingContext::GenerateDrawListForOverlayColor<br>CDrawingContext::GetUnOccludedWorldShape<br>CDrawingContext::MarkCurrentState<br>CDrawingContext::Pop<br>CDrawingContext::PopAllStacks<br>CDrawingContext::PopLayer<br>CDrawingContext::PopLayerInternal<br>CDrawingContext::PopLight<br>CDrawingContext::PostSubgraph<br>CDrawingContext::PushClipBounds<br>CDrawingContext::PushClipRectForCurrentNode<br>CDrawingContext::PushClipShapeForCurrentNode<br>CDrawingContext::PushClippingScope<br>CDrawingContext::PushColorSpaceLayer<br>CDrawingContext::PushColorTransformLayer<br>CDrawingContext::PushColorTransformLayerForNode<br>CDrawingContext::PushDeviceTransform<br>CDrawingContext::PushEffectLayer<br>CDrawingContext::PushEffectiveAlphaForNode<br>CDrawingContext::PushGammaBlendLayer<br>CDrawingContext::PushGpuClipRectInternal<br>CDrawingContext::PushLayer<br>CDrawingContext::PushLight<br>CDrawingContext::PushLinearInterpolationLayer<br>CDrawingContext::PushLocalSpaceClipAndAlphaInternal<br>CDrawingContext::PushOffScreenRenderingLayer<br>CDrawingContext::PushRenderOptionsInternal<br>CDrawingContext::PushRenderTarget<br>CDrawingContext::PushResampleLayer<br>CDrawingContext::PushTransform<br>CDrawingContext::PushTransformInternal<br>CDrawingContext::RenderOverlayColor<br>CDrawingContext::ShapeDataFromGeometry<br>CDrawingContext::StrokeShapeWithBrush<br>CDrawingContext::UpdateBspCurrentPolygonClippingPlanes<br>CDrawingContext::UpdateDeviceTransform<br>CDropShadow::Draw<br>CDropShadow::GenerateDrawList<br>CDropShadow::GetProperty<br>CDropShadow::GetTextureMemoryLayoutData<br>CDropShadow::ProcessSetMask<br>CDropShadow::SetProperty<br>CDropShadow::ShadowIntermediates::CreateShadowOpacityBrush<br>CDropShadow::ShadowIntermediates::GenerateMaskIntermediate<br>CDropShadow::ShadowIntermediates::SetMask<br>CDropShadow::ShadowIntermediates::UpdateIntermediates<br>CDropShadow::UpdateShadowIntermediates<br>CDummyRemotingSwapChain::CheckOcclusionState<br>CDummyRemotingSwapChain::Create<br>CDummyRemotingSwapChain::GetPresentStatistics<br>CDummyRemotingSwapChain::Initialize<br>CDummyRemotingSwapChain::NotifyMetaData<br>CDummyRemotingSwapChain::Present<br>CDxHandleAdvancedDirectFlipBitmapRealization::Create<br>CDxHandleAdvancedDirectFlipBitmapRealization::EnsureRenderTarget<br>CDxHandleAdvancedDirectFlipBitmapRealization::GetD2DBitmap<br>CDxHandleAdvancedDirectFlipBitmapRealization::GetDeviceTarget<br>CDxHandleAdvancedDirectFlipBitmapRealization::GetDeviceTexture<br>CDxHandleAdvancedDirectFlipBitmapRealization::SaveOffOverdraw<br>CDxHandleAdvancedDirectFlipBitmapRealization::UpdateDecodeBitmap<br>CDxHandleBitmapRealization::Create<br>CDxHandleBitmapRealization::EnsureD2DBitmap<br>CDxHandleBitmapRealization::GetD2DBitmap<br>CDxHandleBitmapRealization::GetDDisplayResource<br>CDxHandleBitmapRealization::GetDXGIResource<br>CDxHandleBitmapRealization::GetDeviceTexture<br>CDxHandleBitmapRealization::Initialize<br>CDxHandleBitmapRealization::IsValid<br>CDxHandleStereoBitmapRealization::Create<br>CDxHandleStereoBitmapRealization::EnsureD2DBitmap<br>CDxHandleStereoBitmapRealization::GetD2DBitmap<br>CDxHandleStereoBitmapRealization::GetDeviceTexture<br>CDxHandleYUVBitmapRealization::Create<br>CDxHandleYUVBitmapRealization::CreateSubResource<br>CDxHandleYUVBitmapRealization::EnsureTexture<br>CDxHandleYUVBitmapRealization::GetD2DBitmap<br>CDxHandleYUVBitmapRealization::GetDDisplayResource<br>CDxHandleYUVBitmapRealization::GetDXGIResource<br>CDxHandleYUVBitmapRealization::GetDeviceTexture<br>CDxHandleYUVBitmapRealization::Initialize<br>CDxHandleYUVBitmapRealization::IsValid<br>CDxHandleYUVBitmapRealization::VPBltToDecodeBitmap<br>CEffectBrush::CalcInversedWorldInputBoundsFromVisibleWorldOutputBounds<br>CEffectBrush::EnsureBrushGraph<br>CEffectBrush::GetBounds<br>CEffectBrush::GetSourceInputBounds<br>CEffectBrush::GetSourceInputBoundsUnion<br>CEffectBrush::GetTextureMemoryLayoutData<br>CEffectBrush::OnPropertyValueChanged<br>CEffectBrush::ProcessSetInput<br>CEffectBrush::ProcessSetPropertySet<br>CEffectBrush::ProcessSetTemplate<br>CEffectCompilationService::Create<br>CEffectCompilationTask::Compile_WorkerThread<br>CEffectCompilationTask::GetRestrictedErrorDescription<br>CEffectGroupGeneratedT<CEffectGroup,CEffect>::SetProperty<br>CEffectGroupGeneratedT<CEffectGroup,CEffect>::SetTransform3D<br>CEllipseGeometry::GetProperty<br>CEllipseGeometry::GetShapeDataCore<br>CEllipseGeometry::SetProperty<br>CEmptyRegionDrawListBrush::Create<br>CEmptyRegionDrawListBrush::EnumerateBrushes<br>CEmptyRegionDrawListBrush::Initialize<br>CExcludeVisualReference::Create<br>CExpression::CalculateValueWorker<br>CExpression::EnsureCacheBounds<br>CExpression::ProcessSetReferenceInfo<br>CExpression::ProcessSetSources<br>CExpression::ReadValueFromCache<br>CExpression::RegisterSourcesForOwner<br>CExpression::StoreValueToCache<br>CExpressionManager::Create<br>CExpressionManager::InsertExpressionIntoTargetMap<br>CExpressionManager::QueueAnimationStateChange<br>CExpressionManager::RegisterExpression<br>CExpressionManager::RegisterInteractionTrackerNotification<br>CExpressionValue::ApplyMaskToValue<br>CExpressionValue::CopyIntoFloatArray<br>CExpressionValueStack::Absolute<br>CExpressionValueStack::Acos<br>CExpressionValueStack::Add<br>CExpressionValueStack::And<br>CExpressionValueStack::Asin<br>CExpressionValueStack::Atan<br>CExpressionValueStack::Ceil<br>CExpressionValueStack::Clamp<br>CExpressionValueStack::ColorHsl<br>CExpressionValueStack::ColorLerpHsl<br>CExpressionValueStack::ColorLerpRgb<br>CExpressionValueStack::ColorRgb<br>CExpressionValueStack::Concatenate<br>CExpressionValueStack::Conditional<br>CExpressionValueStack::Distance<br>CExpressionValueStack::DistanceSquared<br>CExpressionValueStack::Divide<br>CExpressionValueStack::EnsureAvailablePushSpace<br>CExpressionValueStack::Equals<br>CExpressionValueStack::Floor<br>CExpressionValueStack::GreaterThan<br>CExpressionValueStack::GreaterThanEquals<br>CExpressionValueStack::Inverse<br>CExpressionValueStack::Length<br>CExpressionValueStack::LengthSquared<br>CExpressionValueStack::Lerp<br>CExpressionValueStack::LessThan<br>CExpressionValueStack::LessThanEquals<br>CExpressionValueStack::Ln<br>CExpressionValueStack::Log10<br>CExpressionValueStack::Matrix3x2<br>CExpressionValueStack::Matrix3x2FromRotation<br>CExpressionValueStack::Matrix3x2FromScale<br>CExpressionValueStack::Matrix3x2FromSkew<br>CExpressionValueStack::Matrix4x4<br>CExpressionValueStack::Matrix4x4FromAxisAngle<br>CExpressionValueStack::Matrix4x4FromPerspective<br>CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView<br>CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter<br>CExpressionValueStack::Matrix4x4FromQuaternion<br>CExpressionValueStack::Matrix4x4FromRotationX<br>CExpressionValueStack::Matrix4x4FromRotationY<br>CExpressionValueStack::Matrix4x4FromRotationZ<br>CExpressionValueStack::Matrix4x4FromScale<br>CExpressionValueStack::Matrix4x4FromTranslation<br>CExpressionValueStack::Matrix4x4FromYawPitchRoll<br>CExpressionValueStack::Max<br>CExpressionValueStack::Min<br>CExpressionValueStack::Modulus<br>CExpressionValueStack::Multiply<br>CExpressionValueStack::Negate<br>CExpressionValueStack::Normalize<br>CExpressionValueStack::Not<br>CExpressionValueStack::NotEquals<br>CExpressionValueStack::Or<br>CExpressionValueStack::Pow<br>CExpressionValueStack::ProcessReferenceNode<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::PushConstant<br>CExpressionValueStack::Quaternion<br>CExpressionValueStack::QuaternionFromAxisAngle<br>CExpressionValueStack::QuaternionFromLerp<br>CExpressionValueStack::QuaternionFromRotationMatrix<br>CExpressionValueStack::QuaternionFromYawPitchRoll<br>CExpressionValueStack::QueryObjectPropertyValue<br>CExpressionValueStack::Round<br>CExpressionValueStack::Scale<br>CExpressionValueStack::Slerp<br>CExpressionValueStack::Sqrt<br>CExpressionValueStack::Square<br>CExpressionValueStack::Subtract<br>CExpressionValueStack::Swizzle<br>CExpressionValueStack::Tan<br>CExpressionValueStack::TimeSpanFrom<br>CExpressionValueStack::ToDegrees<br>CExpressionValueStack::ToRadians<br>CExpressionValueStack::Transform<br>CExpressionValueStack::Vector2Dot<br>CExpressionValueStack::Vector2Transform<br>CExpressionValueStack::Vector2TransformNormal<br>CExpressionValueStack::Vector3<br>CExpressionValueStack::Vector3Cross<br>CExpressionValueStack::Vector3Dot<br>CExpressionValueStack::Vector3Transform<br>CExpressionValueStack::Vector3TransformNormal<br>CExpressionValueStack::Vector4<br>CExpressionValueStack::Vector4Dot<br>CExpressionValueStack::Vector4Transform<br>CExternalD3DRenderer::Create<br>CExternalLayer::ApplyRenderTarget<br>CExternalLayer::ApplyState<br>CExternalLayer::CalcDeviceTransformDelta<br>CExternalLayer::RenderNoOpLayer<br>CExternalLayer::RestoreRenderTarget<br>CExternalLayer::RestoreState<br>CFSVPProvider::CheckForMajorityScreenVideoNotificationsWithCompSurfInfo<br>CFailFastInScope::CaptureDxgkRingBuffer<br>CFilterEffect::CalcEntireInputBoundsFromInputResources<br>CFilterEffect::CalcInversedWorldInputBoundsFromVisibleWorldOutputBounds<br>CFilterEffect::CalcInversedWorldInputBoundsFromVisibleWorldOutputBoundsRecursive<br>CFilterEffect::ContainEffectInChainInputs<br>CFilterEffect::CreateResource<br>CFilterEffect::GetBounds<br>CFilterEffect::GetD2DEffectNoRef<br>CFilterEffect::GetInputEffectForAtlasedSurface<br>CFilterEffect::ProcessUpdateInputs<br>CFilterEffectLayer::Create<br>CFilterEffectLayer::RenderLayer<br>CFlipExSwapchainStatistics::CommitRecordedStatistics<br>CFormatConverter::GetSize<br>CFormatConverter::HrConvertBitmap<br>CFrameInfo::AddResponse<br>CGDIBitmapRealization::Create<br>CGDISectionBitmapRealization::Create<br>CGDISubSectionBitmapRealization::Create<br>CGDISubSectionBitmapRealization::EnsureBitmapCacheSource<br>CGammaBlendLayer::ApplyState<br>CGammaBlendLayer::CopyAndTransform<br>CGammaBlendLayer::Create<br>CGammaBlendLayer::RenderLayer<br>CGaussianBlurEffect::SetD2DEffectProperties<br>CGaussianBlurEffect::SetProperty<br>CGdiSpriteBitmap::CreateDeviceBitmap<br>CGdiSpriteBitmap::CreateSectionBitmapSubRects<br>CGdiSpriteBitmap::EnsureBitmapRealization<br>CGdiSpriteBitmap::GetCurrentRenderingRealization<br>CGdiSpriteBitmap::NotifyDirty<br>CGdiSpriteBitmap::RegisterForSignaling<br>CGdiSpriteBitmapGeneratedT<CGdiSpriteBitmap,CResource>::SetMargins<br>CGdiSpriteBitmapGeneratedT<CGdiSpriteBitmap,CResource>::SetSurface<br>CGenericInk::ComputeBackgroundBlendInfo<br>CGenericInk::CreateResource<br>CGenericInk::GetBounds<br>CGenericInk::GetDirectInkWetStroke<br>CGenericInk::ProcessPropertiesUpdate<br>CGenericInk::ProcessSegmentUpdate<br>CGenericInk::ProcessTipPointBuffer<br>CGeometry2D::GetMeshData<br>CGeometry2DGroup::GetIndicesCore<br>CGeometry2DGroup::GetVerticesCore<br>CGeometry2DGroupGeneratedT<CGeometry2DGroup,CGeometry2D>::SetOrAppendChildren<br>CGeometry::GetBoundsSafe<br>CGeometry::GetProperty<br>CGeometry::GetShapeData<br>CGeometry::GetShapeDataWorker<br>CGeometry::GetTrimmedShapeData<br>CGeometry::ProcessSetTransform<br>CGeometry::SetProperty<br>CGeometryGroup::GetShapeDataCore<br>CGeometryGroup::ProcessAppend<br>CGeometryGroup::ProcessUpdate<br>CGlobalComposition::Channel_AsyncFlush<br>CGlobalComposition::Channel_VisualCaptureBits<br>CGlobalComposition::Create<br>CGlobalComposition::ForEachCursorVisual<br>CGlobalComposition::Partition_DesktopCaptureBits<br>CGlobalComposition::Partition_Synchronize<br>CGlobalComposition::ProcessDataOnChannelSameProcess<br>CGlobalCompositionSurfaceInfo::CBindInfo::CreateAndAddSwapChainBuffers<br>CGlobalCompositionSurfaceInfo::CBindInfo::CreateNewRealization<br>CGlobalCompositionSurfaceInfo::CBindInfo::DisableIndependentFlip<br>CGlobalCompositionSurfaceInfo::CBindInfo::EnableDirectFlip<br>CGlobalCompositionSurfaceInfo::CBindInfo::EnableIndependentFlip<br>CGlobalCompositionSurfaceInfo::CBindInfo::EnableOverlay<br>CGlobalCompositionSurfaceInfo::CBindInfo::EnsureHDRMetaData<br>CGlobalCompositionSurfaceInfo::CBindInfo::EnsureOverlaySwapChainWeakRef<br>CGlobalCompositionSurfaceInfo::CBindInfo::Initialize<br>CGlobalCompositionSurfaceInfo::CBindInfo::PinResources<br>CGlobalCompositionSurfaceInfo::CBindInfo::Reset<br>CGlobalCompositionSurfaceInfo::CBindInfo::SetIndependentFlipDuration<br>CGlobalCompositionSurfaceInfo::CBindInfo::SetIndependentFlipNotify<br>CGlobalCompositionSurfaceInfo::CommitRecordedStatistics<br>CGlobalCompositionSurfaceInfo::DisableDirectFlip<br>CGlobalCompositionSurfaceInfo::DisableIndependentFlip<br>CGlobalCompositionSurfaceInfo::DisableOverlay<br>CGlobalCompositionSurfaceInfo::EnableDirectFlip<br>CGlobalCompositionSurfaceInfo::EnableIndependentFlip<br>CGlobalCompositionSurfaceInfo::EnableOverlay<br>CGlobalCompositionSurfaceInfo::EnsureRealization<br>CGlobalCompositionSurfaceInfo::ForceUpdateRenderingRealization<br>CGlobalCompositionSurfaceInfo::ProcessSurfaceUpdateInternal<br>CGlobalCompositionSurfaceInfo::SetAnalogExclusive<br>CGlobalCompositionSurfaceInfo::SetIndependentFlipDuration<br>CGlobalCompositionSurfaceInfo::SetIndependentFlipNotify<br>CGlobalDrawingContext::DrawMesh2D<br>CGlobalInputManager::Initialize<br>CGlobalInputManager::ResetInputThreadMmcss<br>CGlobalManipulationManager::UpdateMMCSSTask<br>CGlobalMit::Create<br>CGlobalMit::Run<br>CGlobalSurfaceManager::Create<br>CGlobalSurfaceManager::EnsureAdapterInfo<br>CGlobalSurfaceManager::GetSurfaceUpdates<br>CGlobalSurfaceManager::Initialize<br>CGlobalSurfaceManager::PostPresent<br>CGlobalSurfaceManager::ProcessKernelTokens<br>CGlobalSurfaceManager::ProcessLegacyTokens<br>CGlobalSurfaceManager::ProcessSurfaceUpdates<br>CGradientBrush::Generate<br>CGradientBrush::GetCurrentD2DRadialGradientBrush<br>CGradientBrush::GetCurrentSurface<br>CGradientBrush::InferVisualToTextureTransform<br>CGradientBrush::ProcessSetColorStops<br>CGradientBrush::ProcessSetTransform<br>CGradientSource::Generate<br>CGraphWalker<CBspNode>::GotoPostChild<br>CGraphWalker<CBspNode>::GotoPreChild<br>CGraphWalker<CVectorShape>::EndWalk<br>CGraphWalker<CVectorShape>::GotoFirstChild<br>CGraphWalker<CVisual>::BeginWalk<br>CGraphWalker<CVisual>::EndWalk<br>CGraphWalker<CVisual>::GotoFirstChild<br>CGroupBatchCommand::EmitGeometryForGroup<br>CHWDrawListEntry::`vector_deleting_destructor'<br>CHitTestContext::BspHitTest<br>CHitTestContext::HitTestTreeWalk<br>CHitTestContext::PostSubgraph<br>CHitTestContext::PreSubgraph<br>CHolographicClient::Create<br>CHolographicClient::Initialize<br>CHolographicClient::ProcessAddDisplay<br>CHolographicClient::ProcessAddExclusiveView<br>CHolographicClient::ProcessAddTexture<br>CHolographicClient::ProcessAddViewer<br>CHolographicClient::ProcessMessage<br>CHolographicDisplay::GetDesc<br>CHolographicExclusivePresentData::Create<br>CHolographicExclusiveView::ActivateSwapChain<br>CHolographicExclusiveView::ActivateView<br>CHolographicExclusiveView::AttachSwapChain<br>CHolographicExclusiveView::OpenSurfaceHandles<br>CHolographicExclusiveView::ProcessExclusiveSurfaceUpdate<br>CHolographicExclusiveView::ProcessSetSwapChain<br>CHolographicExclusiveView::UpdateFrameStatistics<br>CHolographicFrameProcessor::ContentUpdated<br>CHolographicFrameProcessor::Create<br>CHolographicFrameProcessor::Initialize<br>CHolographicFrameProcessor::InitializeWithD3DDevice<br>CHolographicFrameProcessor::PoolBufferAdded<br>CHolographicFrameProcessor::SetSize<br>CHolographicInteropTarget::Create<br>CHolographicInteropTarget::GetPresentStatisticsDWM<br>CHolographicInteropTarget::Initialize<br>CHolographicInteropTarget::RenderDirtyRegion<br>CHolographicInteropTarget::RenderTexture<br>CHolographicInteropTaskQueue::Create<br>CHolographicInteropTaskQueue::Initialize<br>CHolographicInteropTexture::EnsureRenderBuffers<br>CHolographicInteropTexture::ProcessSetRoot<br>CHolographicInteropTexture::SetRootVisual<br>CHolographicManager::AddExclusiveView<br>CHolographicManager::AddHolographicDisplay<br>CHolographicManager::AddHolographicViewer<br>CHolographicManager::Create<br>CHolographicManager::EnsureHolographicClient<br>CHolographicManager::EnsureInteropRenderTarget<br>CHolographicManager::GetDefaultDesktopTree<br>CHolographicViewer::AcquireBuffer<br>CHoverPointerSource::PushHoverPointer<br>CHwLightCollectionBuffer::Create<br>CImageLegacyMilBrushGeneratedT<CImageLegacyMilBrush,CLegacyMilBrush>::SetImageSource<br>CImageLegacyMilBrushGeneratedT<CImageLegacyMilBrush,CLegacyMilBrush>::SetViewboxAnimation<br>CImageLegacyMilBrushGeneratedT<CImageLegacyMilBrush,CLegacyMilBrush>::SetViewportAnimation<br>CIndirectSwapchainRenderTarget::CreateRenderTargetForAcquiredBuffer<br>CIndirectSwapchainRenderTarget::EnsureMetadataBuffer<br>CIndirectSwapchainRenderTarget::Present<br>CIndirectSwapchainRenderTarget::ProcessCreate<br>CIndirectSwapchainRenderTarget::ProcessUpdateTargetBounds<br>CIndirectSwapchainRenderTarget::ReleaseCurrentBuffer<br>CIndirectSwapchainRenderTarget::Render<br>CIndirectSwapchainRenderTarget::ReportSizeChangeMetaData<br>CIndirectSwapchainRenderTarget::TryTargetNextBuffer<br>CInjectionAnimation::CalculateValueWorker<br>CInjectionAnimation::ProcessSetInjectionData<br>CInk::CreateResource<br>CInk::Draw<br>CInk::GetBounds<br>CInk::GetD2DInk<br>CInk::ProcessBasicStateUpdate<br>CInk::ProcessSegmentCountUpdate<br>CInk::ProcessSegmentUpdate<br>CInk::ProcessStartPointUpdate<br>CInputManager::EnsureRenderThreadCanReceiveInputThreadMessages<br>CInputManager::EnsureRenderThreadCanSendInputThreadMessages<br>CInputManager::Initialize<br>CInputManager::ResetInputThreadMmcss<br>CInputManager::UpdateEdgyInput<br>CInputManager::s_HitTestRequest<br>CInputManager::s_HoverHittestRequest<br>CInputSinkStruct::InitializeQueueInfo<br>CInputSinkStruct::ReplaceInputHandle<br>CInteraction::Initialize<br>CInteraction::ProcessCaptureManipulationInCompositor<br>CInteraction::ProcessCapturePointer<br>CInteraction::ProcessSetInputSink<br>CInteraction::ProcessUpdateRails<br>CInteraction::Push2DVisualTransformToRenderThread<br>CInteraction::SetProperty<br>CInteraction::SetRailsEnabled_RenderThread<br>CInteraction::SetTemporaryConfiguration<br>CInteraction::SetVisual<br>CInteraction::UpdateInputSink<br>CInteractionProcessor::CalculateDetectedInteractions<br>CInteractionProcessor::CalculateDetectedInteractions<DwmTouchpadInteractionConfigurationPrimitive,TMILFlagsEnum<DwmInteractionTypeTouchpadPrimitiveType::FlagsEnum>,DwmInteractionTypeTouchpadPrimitiveType::FlagsEnum><br>CInteractionTracker::AddPendingStateChange<br>CInteractionTracker::CalculateCenterPointForAxis<br>CInteractionTracker::EnsureInteractionAnimations<br>CInteractionTracker::GetProperty<br>CInteractionTracker::ProcessApplyPositionShift<br>CInteractionTracker::ProcessSetInertiaModifierAnimations<br>CInteractionTracker::SelectInertiaModifierForAxis<br>CInteractionTracker::SetProperty<br>CInteractionTracker::SetState<br>CInteractionTracker::TransitionToCustomAnimation<br>CInteractionTracker::UpdateCenterPointForState<br>CInteractionTrackerPositionAnimation::Initialize<br>CInteractionTrackerScaleAnimation::CalculateInContactValueWorker<br>CInteractionTrackerScaleAnimation::CalculateInertiaValueWorker<br>CInteractionTrackerScaleAnimation::Initialize<br>CInternalMilCmdConnection::PostMessageToClient<br>CInterpolatePathsOperation::Interpolate<br>CKMAdapterHandle::Initialize<br>CKMAdapterHandle::Initialize<br>CKernelTransport::BeginFrame<br>CKernelTransport::ConfirmFrame<br>CKernelTransport::Create<br>CKernelTransport::DispatchBatches<br>CKernelTransport::PostPacket<br>CKeyframeAnimation::AddKeyframeData<br>CKeyframeAnimation::ApplyPlaybackStateChanges<br>CKeyframeAnimation::DetermineCoordinateSpace<br>CKeyframeAnimation::GetProperty<br>CKeyframeAnimation::GetSampledStartingValue<br>CKeyframeAnimation::Initialize<br>CKeyframeAnimation::ProcessInnerExpression<br>CKeyframeAnimation::ProcessSetBindingBroken<br>CKeyframeAnimation::ProcessSetPathData<br>CKeyframeAnimation::ProcessSetSeekState<br>CKeyframeAnimation::ProcessUpdatePlaybackState<br>CKeyframeAnimation::Reset<br>CKeyframeAnimation::SampleStartingValue<br>CKeyframeAnimation::SetInitialDelay<br>CKeyframeAnimation::SetIterationInfo<br>CKeyframeAnimation::SetKeyFrameData<br>CKeyframeAnimation::SetOutputType<br>CKeyframeAnimation::SetProperty<br>CKeyframeAnimation::StartAsTriggeredAnimation<br>CKeyframeAnimation::TimeSeek<br>CKeyframeAnimation::UpdatePlaybackState<br>CLayerVisual::CalcInversedWorldInputBoundsFromVisibleWorldOutputBounds<br>CLayerVisual::CalcInversedWorldShadowOffsetBoundsFromVisibleWorldOutputBounds<br>CLayerVisual::GetBoundsWithEffects<br>CLayerVisual::GetBoundsWithLayerEffect<br>CLayerVisual::GetMaskBounds<br>CLayerVisual::GetShadowBounds<br>CLayerVisual::ProcessSetEffect<br>CLayerVisual::ProcessSetShadow<br>CLegacyAnimationTrigger::ProcessTrigger<br>CLegacyMilBrushGeneratedT<CLegacyMilBrush,CResource>::SetOpacityAnimation<br>CLegacyMilBrushGeneratedT<CLegacyMilBrush,CResource>::SetRelativeTransform<br>CLegacyMilBrushGeneratedT<CLegacyMilBrush,CResource>::SetTransform<br>CLegacyRemotingSwapChain::CheckOcclusionState<br>CLegacyRemotingSwapChain::Create<br>CLegacyRemotingSwapChain::EnsureBitmapDest<br>CLegacyRemotingSwapChain::GetPresentStatistics<br>CLegacyRemotingSwapChain::GetPresentStatisticsDWM<br>CLegacyRemotingSwapChain::Initialize<br>CLegacyRemotingSwapChain::NotifyMetaData<br>CLegacyRemotingSwapChain::Present<br>CLegacyRemotingSwapChain::RailAppPresent<br>CLegacyRemotingSwapChain::UpdateSectionBits<br>CLegacyRenderTarget::CheckOcclusionState<br>CLegacyRenderTarget::EnsureDXGIOutput<br>CLegacyRenderTarget::EnsureSwapChain<br>CLegacyRenderTarget::GetDesktopTree<br>CLegacyRenderTarget::GetPresentStatisticsDWM<br>CLegacyRenderTarget::HandleDDAArrivalOrDeparture<br>CLegacyRenderTarget::Present<br>CLegacyRenderTarget::ProcessSetDesktopTree<br>CLegacyRenderTarget::ProcessUpdateRefreshRate<br>CLegacyRenderTarget::RenderComposeTop<br>CLegacyRenderTarget::RenderDebugFrameCounter<br>CLegacyRenderTarget::RenderDirtyRegion<br>CLegacyRenderTarget::SetSyncRefreshCountWaitTarget<br>CLegacyRenderTarget::UpdateMPOCaps<br>CLegacyRenderTarget::WaitForVBlank<br>CLegacyStereoRenderTarget::EnsureSwapChain<br>CLegacyStereoRenderTarget::Render<br>CLegacyStereoSwapChain::Create<br>CLegacyStereoSwapChain::Present<br>CLegacyStereoSwapChain::PresentDFlip<br>CLegacyStereoSwapChain::ResetBackBuffer<br>CLegacySurfaceManager::AddIntervalOneDxBltEventId<br>CLegacySurfaceManager::GetLegacyTokens<br>CLegacySurfaceManager::ProcessPostPresentResponseItems<br>CLegacySurfaceManager::ProcessToken<br>CLegacySurfaceManager::ProcessUnclaimedTokens<br>CLegacySwapChain::CheckMultiplaneOverlaySupport<br>CLegacySwapChain::CheckOcclusionState<br>CLegacySwapChain::CheckPresentDurationSupport<br>CLegacySwapChain::Create<br>CLegacySwapChain::CreateD3D12Resource<br>CLegacySwapChain::GetDXGIOutputDWM<br>CLegacySwapChain::GetMultiplaneOverlayCaps<br>CLegacySwapChain::GetPresentStatistics<br>CLegacySwapChain::GetPresentStatisticsDWM<br>CLegacySwapChain::GetSurfacePlaneResource<br>CLegacySwapChain::Initialize<br>CLegacySwapChain::InternalCheckDirectFlipSupport<br>CLegacySwapChain::InternalPresentDFlip<br>CLegacySwapChain::PostPresent<br>CLegacySwapChain::Present<br>CLegacySwapChain::PresentMPO<br>CLegacySwapChain::ResetBackBuffer<br>CLegacySwapChain::SetHardwareProtection<br>CLegacySwapChain::UpdateRefreshRate<br>CLegacyVisualCaptureRenderTarget::ProcessCaptureBits<br>CLightStack::Push<br>CLightStack::RetrieveCurrentLightBufferForContextNoRef<br>CLineGeometry::GetProperty<br>CLineGeometry::GetShapeDataCore<br>CLineGeometry::SetProperty<br>CLinearGradientBrush::GetBrushParameters<br>CLinearGradientBrush::GetD2DBrush<br>CLinearGradientBrush::GetProperty<br>CLinearGradientBrush::SetProperty<br>CLinearGradientLegacyMilBrush::Draw<br>CLinearGradientLegacyMilBrush::EnsureDrawlistBrush<br>CLinearInterpolationLayer::ApplyState<br>CLinearInterpolationLayer::Create<br>CLinearInterpolationLayer::RenderLayer<br>CLinearTransferEffect::SetD2DEffectProperties<br>CLinearTransferEffect::SetProperty<br>CLinkedShader::GetShadersNoRef<br>CMagnifierRenderTarget::EnsureRenderTargets<br>CMagnifierRenderTarget::EnsureSharedRenderTargets<br>CMagnifierRenderTarget::OpenSharedSurfaceRenderTarget<br>CMagnifierRenderTarget::ProcessCaptureBits<br>CMagnifierRenderTarget::ProcessCreate<br>CMagnifierRenderTarget::ProcessSetColorTransform<br>CMagnifierRenderTarget::ProcessSetFilterList<br>CMagnifierRenderTarget::ProcessSetTransform<br>CMagnifierRenderTarget::ProcessUpdate<br>CMagnifierRenderTarget::ProcessUpdateParams<br>CManipulation::GetProperty<br>CManipulation::ProcessUpdateEdgyExperienceSource<br>CManipulation::SetAutoReset_RenderThread<br>CManipulation::SetCaptureState_RenderThread<br>CManipulation::SetProperty<br>CManipulation::UpdateOnManipulationThread<br>CManipulation::UpdateOnManipulationThreadWithoutDelta<br>CManipulation::_EnqueueDeferredDeltaReset<br>CManipulation::_GetRenderToManipulationMsgInfo<br>CManipulation::_SendUpdateToRenderThread<br>CManipulation::_UpdateEdgyExperienceInput<br>CManipulation::s_ResetDeltaProperties<br>CManipulationContext::OnHoverContact<br>CManipulationFrame::Create<br>CManipulationManager::CreateManipulationThread<br>CManipulationManager::Initialize<br>CManipulationManager::NotifyCaptureManipulation<br>CManipulationManager::NotifyCapturePointer<br>CManipulationManager::NotifyUpdateConfiguration<br>CManipulationManager::NotifyUpdateRails<br>CManipulationManager::NotifyUpdateTemporaryConfiguration<br>CManipulationManager::OnNewContact<br>CManipulationManager::ProcessManipulationThreadCallbackInput<br>CManipulationManager::QueueMidManipulationUpdate<br>CManipulationManager::s_EndpointProc<br>CManipulationTransform::ProcessSetComponents<br>CManipulationTransform::SetProperty<br>CMaskBrush::GetBounds<br>CMaskBrush::GetTextureMemoryLayoutData<br>CMaskBrush::HitTest<br>CMaskBrush::ProcessSetMask<br>CMaskBrush::ProcessSetSource<br>CMatrixStack::Push<br>CMatrixTransform3D::SetProperty<br>CMatrixTransform::SetProperty<br>CMegaRect::PrepareData<br>CMegaRect::UpdatePrimitive<br>CMegaRectCollection::PrepMegaRectData<br>CMegaRectCollection::ReplaceMegaRectsWithClippedRects<br>CMesh2DEffect::EnsureVertexBuffer<br>CMesh2DEffect::GetVertices<br>CMesh2DEffect::Initialize<br>CMesh2DEffect::SetVertices<br>CMeshGeometry2D::GetIndicesCore<br>CMeshGeometry2D::GetVerticesCore<br>CMessageConversationHost::Create<br>CMessageConversationHost::Initialize<br>CMessageConversationHost::InitializeServer<br>CMit::Reset<br>CMit::Start<br>CMmcssTask::Apply<br>CMmcssTask::LoadRuntime<br>CMultiPrimitiveDrawListBrush::EnumerateBrushes<br>CNaturalAnimation::GetForceForAxis<br>CNaturalAnimation::GetProperty<br>CNaturalAnimation::ProcessSetBindingBroken<br>CNaturalAnimation::SampleInitialValueAndFinalValueIfNecessary<br>CNaturalAnimation::SetOutputType<br>CNaturalAnimation::SetProperty<br>CNaturalAnimation::SetScalarProperty<br>CNaturalAnimation::SetTimespanProperty<br>CNaturalAnimation::SetVector2Property<br>CNaturalAnimation::SetVector3Property<br>CNaturalAnimation::SetupAnimationIfNecessary<br>CNaturalAnimation::StartAsTriggeredAnimation<br>CNineGridBrush::CreateLayoutGeometryDrawListBrush<br>CNineGridBrush::EnsureBrushGraph<br>CNineGridBrush::GetBounds<br>CNineGridBrush::GetBrushParameters<br>CNineGridBrush::GetProperty<br>CNineGridBrush::GetTextureMemoryLayoutData<br>CNineGridBrush::HitTest<br>CNineGridBrush::ProcessSetInsetProperty<br>CNineGridBrush::ProcessSetSource<br>CNineGridBrush::SetProperty<br>CNineGridBrush::SetSource<br>CNineGridDrawListBrush::Create<br>CNineGridDrawListBrush::EnumerateBrushes<br>CNotificationResource::ProcessSetCallbackId<br>COcclusionContext::CheckAndRecordOverlayCandidate<br>COcclusionContext::CheckAndRecordOverlayCandidateForContext<br>COcclusionContext::DrawImage<br>COcclusionContext::Pop<br>COcclusionContext::PushTransform<br>COcclusionContext::PushTransformInternal<br>COcclusionContext::SetDeviceTransform<br>COffScreenRenderTarget::EnsureRenderTargets<br>COffScreenRenderTarget::GetBits<br>COffScreenRenderTarget::Render<br>COffScreenRenderTarget::UpdatePixelFormatInfo<br>COffScreenRenderingLayer::ApplyState<br>COffScreenRenderingLayer::Create<br>COverlayContext::ComputeOverlayConfiguration<br>COverlayContext::EnsureIndependentFlipState<br>COverlayContext::OnSwapChainCreated<br>COverlayContext::Present<br>COverlayContext::PresentMPO<br>COverlayContext::SyncLock<br>COverlayContext::UpdateMPOCaps<br>COverlaySwapChainBase::PresentDFlip<br>CParticleAttractorGeneratedT<CParticleAttractor,CResource>::SetProperty<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetAngularVelocity<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetDirection<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetForce<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetLifetime<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetOpacity<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetOrientation<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetPosition<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetScale<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetSize<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetSpeed<br>CParticleBehaviorsGeneratedT<CParticleBehaviors,CPropertyChangeResource>::SetTint<br>CParticleEmitterVisual::AnimateRemainingParticles<br>CParticleEmitterVisual::CreateParticlesPrimitive<br>CParticleEmitterVisual::EmitParticles<br>CParticleEmitterVisual::EnsureSpawner<br>CParticleEmitterVisual::GenerateDrawList<br>CParticleEmitterVisual::SetContent<br>CParticleEmitterVisual::SpawnParticles<br>CParticleEmitterVisual::UpdateParticleSystem<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetBrush<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetEmitterAnimation<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetEmitterGeometry<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetEmitterViewBox<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetOrAppendAttractors<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetParticleBehaviors<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetParticleGenerator<br>CParticleEmitterVisualGeneratedT<CParticleEmitterVisual,CVisual>::SetProperty<br>CParticleGeneratorGeneratedT<CParticleGenerator,CPropertyChangeResource>::SetProperty<br>CPartitionVerticalBlankScheduler::AddResponseItem<br>CPartitionVerticalBlankScheduler::GetPresentStatisticsAndAdjustRates<br>CPartitionVerticalBlankScheduler::Initialize<br>CPartitionVerticalBlankScheduler::Reset<br>CPartitionVerticalBlankScheduler::RetireFrames<br>CPartitionVerticalBlankScheduler::ScheduleAndProcessFrame<br>CPathData::GetD2DGeometry<br>CPathData::PushIntoSink<br>CPathData::Simplify<br>CPathGeometry::GetProperty<br>CPathGeometry::GetShapeDataCore<br>CPathGeometry::ProcessSetPath<br>CPathGeometry::SetProperty<br>CPathSegmentsShape::GetD2DGeometry<br>CPathSegmentsShape::GetSimplifiedPathDataInternal<br>CPayloadedAnimationPrimitiveBuffer::Create<br>CPolygon::CompareAndSplit<br>CPolygon::Create<br>CPolygon::D2DGeometryFromPolygon<br>CPolygon::Draw<br>CPolygon::HitTestWithTransformation<br>CPolygonShape::GetOutline<br>CPreComputeContext::PreCompute<br>CPrimitiveBuffer::Initialize<br>CPrimitiveColor::SetProperty<br>CPrimitiveGroup::BuildHeatMap<br>CPrimitiveGroup::CreateHitTestRegions<br>CPrimitiveGroup::CreateNewGenerator<br>CPrimitiveGroup::CreateNewGeneratorForHeatMap<br>CPrimitiveGroup::Draw<br>CPrimitiveGroup::EnsureDrawListGenerator<br>CPrimitiveGroup::GenerateDrawList<br>CPrimitiveGroup::GetDrawListGeneratorNoRef<br>CPrimitiveGroup::GetTextureMemoryLayoutData<br>CPrimitiveGroup::ProcessAddColorResources<br>CPrimitiveGroup::ProcessAddPrimitives<br>CPrimitiveGroup::ProcessAddSurfaceResources<br>CPrimitiveGroup::ProcessSetDirtyRect<br>CPrimitiveGroup::ValidateBatches<br>CPrimitiveGroupDrawListBrush::EnumerateBrushes<br>CPrimitiveGroupDrawListGenerator::Create<br>CPrimitiveGroupDrawListGenerator::GetContentRegion<br>CPrimitiveGroupDrawListGenerator::RealizeBitmaps<br>CPrimitiveGroupRenderStrategy::GetBrushParameters<br>CPrimitiveGroupRenderStrategy::GetTextureMemoryLayoutData<br>CProcessAttributionManager::CreateProcessAttribution<br>CProcessAttributionManager::GetProcessAttribution<br>CProjectedShadow::AdjustNineGridBrush<br>CProjectedShadow::AdjustSurfaceBrush<br>CProjectedShadow::Draw<br>CProjectedShadow::GenerateApproxBlur<br>CProjectedShadow::GenerateApproxBlurIntermediate<br>CProjectedShadow::GenerateDrawList<br>CProjectedShadow::GenerateFastShadowIntermediate<br>CProjectedShadow::GenerateNineGridBrush<br>CProjectedShadow::GenerateSurfaceBrush<br>CProjectedShadow::GetCasterShadowInputBrush<br>CProjectedShadow::Initialize<br>CProjectedShadow::UpdateShadowIntermediates<br>CProjectedShadowApproxBlurEffect::SetAnimatableProperty<br>CProjectedShadowApproxBlurGraphBuilder::AddApproxBlurBrush<br>CProjectedShadowApproxBlurGraphBuilder::Build<br>CProjectedShadowApproxBlurGraphBuilder::Build<br>CProjectedShadowCaster::ProcessSetAncestorClipVisual<br>CProjectedShadowCaster::ProcessSetBrush<br>CProjectedShadowCaster::ProcessSetCastingVisual<br>CProjectedShadowCaster::ProcessSetMask<br>CProjectedShadowCaster::UpdateMaskIntermediate<br>CProjectedShadowReceiver::GetReceiverMaskInputBrush<br>CProjectedShadowReceiver::ProcessSetMask<br>CProjectedShadowReceiver::ProcessSetReceivingVisual<br>CProjectedShadowRenderingEffect::SetStateOnDevice<br>CProjectedShadowScene::GetProperty<br>CProjectedShadowScene::ProcessAddCasters<br>CProjectedShadowScene::ProcessAddReceivers<br>CProjectedShadowScene::ProcessSetLightSource<br>CProjectedShadowScene::SetProperty<br>CProjectedShadowScene::UpdateCasterEntry<br>CPropertyChangeResource::NotifyBooleanPropertyChanged<br>CPropertyChangeResource::NotifyColorPropertyChanged<br>CPropertyChangeResource::NotifyCurrentPropertyValuesImpl<br>CPropertyChangeResource::NotifyMatrix3x2PropertyChanged<br>CPropertyChangeResource::NotifyMatrix4x4PropertyChanged<br>CPropertyChangeResource::NotifyPropertyChanged<br>CPropertyChangeResource::NotifyQuaternionPropertyChanged<br>CPropertyChangeResource::NotifyVector3PropertyChanged<br>CPropertyChangeResource::NotifyVector4PropertyChanged<br>CPropertyChangeResource::SetAnimatedProperty<br>CPropertySet::AddOrUpdateProperty<D2DMatrix><br>CPropertySet::AddOrUpdateProperty<D2DQuaternion><br>CPropertySet::AddOrUpdateProperty<D2DVector2><br>CPropertySet::AddOrUpdateProperty<D2DVector3><br>CPropertySet::AddOrUpdateProperty<D2DVector4><br>CPropertySet::AddOrUpdateProperty<D2D_MATRIX_3X2_F><br>CPropertySet::AddOrUpdateProperty<_D3DCOLORVALUE><br>CPropertySet::AddOrUpdateProperty<bool><br>CPropertySet::AddOrUpdateProperty<float><br>CPropertySet::AddProperty<D2DMatrix><br>CPropertySet::AddProperty<D2DQuaternion><br>CPropertySet::AddProperty<D2DVector2><br>CPropertySet::AddProperty<D2DVector3><br>CPropertySet::AddProperty<D2DVector4><br>CPropertySet::AddProperty<D2D_MATRIX_3X2_F><br>CPropertySet::AddProperty<_D3DCOLORVALUE><br>CPropertySet::AddProperty<bool><br>CPropertySet::AddProperty<float><br>CPropertySet::GetProperty<br>CPropertySet::NotifyCurrentPropertyValuesInternal<br>CPropertySet::NotifyPropertyValue<br>CPropertySet::PropertyUpdated<D2DMatrix><br>CPropertySet::PropertyUpdated<D2DQuaternion><br>CPropertySet::PropertyUpdated<D2DVector2><br>CPropertySet::PropertyUpdated<D2DVector3><br>CPropertySet::PropertyUpdated<D2DVector4><br>CPropertySet::PropertyUpdated<D2D_MATRIX_3X2_F><br>CPropertySet::PropertyUpdated<_D3DCOLORVALUE><br>CPropertySet::PropertyUpdated<bool><br>CPropertySet::PropertyUpdated<float><br>CPropertySet::SetProperty<br>CPropertySet::UpdateProperty<D2DMatrix><br>CPropertySet::UpdateProperty<D2DQuaternion><br>CPropertySet::UpdateProperty<D2DVector2><br>CPropertySet::UpdateProperty<D2DVector3><br>CPropertySet::UpdateProperty<D2DVector4><br>CPropertySet::UpdateProperty<D2D_MATRIX_3X2_F><br>CPropertySet::UpdateProperty<_D3DCOLORVALUE><br>CPropertySet::UpdateProperty<bool><br>CPropertySet::UpdateProperty<float><br>CProxyGeometry::GetShapeDataCore<br>CProxyGeometry::ProcessSetGeometry<br>CProxyGeometry::ProcessSetViewBox<br>CPtrArrayBase::InsertAt<br>CQueue<CBufferedInteractionOutput*___ptr64>::Insert<br>CQueue<CManipulationManager::InteractionUpdate*___ptr64>::Insert<br>CQueue<CResource*___ptr64>::Insert<br>CQueue<Microsoft::WRL::ComPtr<CManipulationFrame>_>::Insert<br>CRadialGradientBrush::EnsureBrushGraph<br>CRadialGradientBrush::GetBrushParameters<br>CRadialGradientBrush::GetD2DBrush<br>CRadialGradientBrush::GetProperty<br>CRadialGradientBrush::SetProperty<br>CRadialGradientEffect::Create<br>CRectangleGeometry::GetProperty<br>CRectangleGeometry::GetShapeDataCore<br>CRectangleGeometry::SetProperty<br>CRectanglesShape::EnsureD2DGeometry<br>CRectanglesShape::GetD2DGeometry<br>CRectanglesShape::GetUnOccludedWorldShape<br>CRectanglesShape::IntersectWithRect<br>CRectanglesShape::`vector_deleting_destructor'<br>CRedirectVisual::ProcessSetRedirectedVisual<br>CRedirectedGDISurface::Create<br>CRedirectedGDISurface::GetDirtyRegionFromAccum<br>CRedirectedVisualContent::Create<br>CRedirectedVisualContent::Initialize<br>CRegion::CreateHRGN<br>CRegion::SetHRGN<br>CRegionGeometry::GetShapeDataCore<br>CRegionShape::EnsureD2DGeometry<br>CRegionShape::GetD2DGeometry<br>CRegionShape::GetUnOccludedWorldShape<br>CRegionShape::IntersectWithRect<br>CRemoteAppRenderTarget::EnsureSwapChain<br>CRemoteAppRenderTarget::GetPresentStatistics<br>CRemoteAppRenderTarget::Present<br>CRemoteAppRenderTarget::ProcessCreate<br>CRemoteAppRenderTarget::RailMultimonRenderAndPresent<br>CRemoteAppRenderTarget::Render<br>CRemoteAppRenderTarget::RenderDirtyRegion<br>CRemoteAppRenderTarget::SendCompSurfHandle<br>CRemoteAppRenderTarget::SendMetaData<br>CRemoteAppRenderTarget::SetWindowBounds<br>CRemoteRenderTarget::CheckOcclusionState<br>CRemoteRenderTarget::GetDesktopTree<br>CRemoteRenderTarget::GetPresentStatisticsDWM<br>CRemoteRenderTarget::HandleDDAArrivalOrDeparture<br>CRemoteRenderTarget::Present<br>CRemoteRenderTarget::ProcessSetDesktopTree<br>CRemoteRenderTarget::Render<br>CRemoteRenderTarget::RenderComposeTop<br>CRemoteRenderTarget::WaitForVBlank<br>CRenderData::Draw<br>CRenderData::DrawImageResource_FillMode<br>CRenderData::DrawImageResource_TileMode<br>CRenderData::DrawSolidColorRectangle<br>CRenderData::FlushDrawListCache<br>CRenderData::GetBounds<br>CRenderData::GetDrawListCacheForCommandRun<br>CRenderData::GetHandles<br>CRenderData::TryDrawCommandAsDrawList<br>CRenderDataBuilder::DrawBitmap<br>CRenderDataBuilder::DrawGeometry<br>CRenderDataBuilder::DrawImage<br>CRenderDataBuilder::DrawMesh2D<br>CRenderDataBuilder::DrawRectangle<br>CRenderDataBuilder::DrawSolidRectangle<br>CRenderDataBuilder::DrawTileImage<br>CRenderDataBuilder::DrawVisual<br>CRenderDataBuilder::Pop<br>CRenderDataBuilder::PushTransform<br>CRenderDataBuilder::QueryInterface<br>CRenderTarget::ProcessSetRoot<br>CRenderTargetBitmap::Create<br>CRenderTargetBitmap::GetBits<br>CRenderTargetBitmap::GetD2DBitmap<br>CRenderTargetBitmap::GetD2DBitmapTarget<br>CRenderTargetBitmap::GetDeviceTexture<br>CRenderTargetBitmap::ValidateRenderTargetInfo<br>CRenderTargetBitmap::VideoProcessorBlt<br>CRenderTargetBitmapCache::GetCachedTargetBitmap<br>CRenderTargetManager::CheckOcclusionState<br>CRenderTargetManager::ComputeOverlayConfiguration<br>CRenderTargetManager::EnsureDxDisplayModeChangedEvent<br>CRenderTargetManager::HandleDDAArrivalOrDeparture<br>CRenderTargetManager::NotifyTargetsOfOcclusionChange<br>CRenderTargetManager::Present<br>CRenderTargetManager::Render<br>CRenderTargetManager::UpdateMPOCaps<br>CRenderingTechnique::AddShaderToCache<br>CRenderingTechnique::CreateResource<br>CRenderingTechnique::GetShaders<br>CRenderingTechnique::UpdateConstantBuffers<br>CRenderingTechniqueFragment::CreateEffectShaderBody<br>CRenderingTechniqueFragment::CreateMaskShaderBody<br>CResampleLayer::Create<br>CResampleLayer::RenderLayer<br>CResource::AddHandleToArrayAndReplace<CResource><br>CResource::RegisterNNotifiersInternal<br>CResource::RegisterNotifier<br>CResource::UnmarshalResourceArray<br>CResourceFactory::Create<br>CResourceTable::ReleaseHandleTableEntries<br>CRotateTransform3DGeneratedT<CRotateTransform3D,CTransform3D>::SetProperty<br>CRotateTransformGeneratedT<CRotateTransform,CTransform>::SetProperty<br>CRoundedRectangleShape::CreateIntersectedD2DGeometry<br>CRoundedRectangleShape::CreateNonIntersectedD2DGeometry<br>CRoundedRectangleShape::GetD2DGeometry<br>CRoundedRectangleShape::`scalar_deleting_destructor'<br>CSaturationEffect::SetProperty<br>CScalar::OnAddBinding<br>CScalar::ProcessSetValue<br>CScaleTransform3DGeneratedT<CScaleTransform3D,CTransform3D>::SetProperty<br>CScaleTransformGeneratedT<CScaleTransform,CTransform>::SetProperty<br>CScanPipeline::InitializeForFormatConversion<br>CSceneComponent::HydrateSpectreResources<br>CSceneMaterial::OnSceneFrameTick<br>CSceneMesh::OnSceneFrameTick<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetColorData<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetIndexData<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetNormalData<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetPositionData<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetTangentData<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetTexCoord0Data<br>CSceneMeshGeneratedT<CSceneMesh,CSceneObject>::SetTexCoord1Data<br>CSceneMetallicRoughnessMaterialGeneratedT<CSceneMetallicRoughnessMaterial,CScenePbrMaterial>::SetBaseColorInput<br>CSceneMetallicRoughnessMaterialGeneratedT<CSceneMetallicRoughnessMaterial,CScenePbrMaterial>::SetMetallicRoughnessInput<br>CSceneMetallicRoughnessMaterialGeneratedT<CSceneMetallicRoughnessMaterial,CScenePbrMaterial>::SetProperty<br>CSceneModelTransformGeneratedT<CSceneModelTransform,CCompositionTransform>::SetTransform<br>CSceneNode::HydrateSpectreResources<br>CSceneNode::SetChildren<br>CSceneNode::SetComponents<br>CSceneNodeGeneratedT<CSceneNode,CSceneObject>::SetOrAppendChildren<br>CSceneNodeGeneratedT<CSceneNode,CSceneObject>::SetOrAppendComponents<br>CSceneNodeGeneratedT<CSceneNode,CSceneObject>::SetTransform<br>CScenePbrMaterialGeneratedT<CScenePbrMaterial,CSceneMaterial>::SetEmissiveInput<br>CScenePbrMaterialGeneratedT<CScenePbrMaterial,CSceneMaterial>::SetNormalInput<br>CScenePbrMaterialGeneratedT<CScenePbrMaterial,CSceneMaterial>::SetOcclusionInput<br>CScenePbrMaterialGeneratedT<CScenePbrMaterial,CSceneMaterial>::SetProperty<br>CSceneResourceManager::Create<br>CSceneResourceManager::EnsureSceneCompositor<br>CSceneResourceManager::GetSpectreTexture<br>CSceneVisual::Get3DContentBounds<br>CSceneVisual::OnRootChanged<br>CSceneVisualGeneratedT<CSceneVisual,CVisual>::SetRoot<br>CSceneWorld::Draw<br>CSceneWorld::OnSceneReady<br>CScopedClipStack::ApplyDeferredD2DLayersInScope<br>CScopedClipStack::Clear<br>CScopedClipStack::PushClipBoundsToScope<br>CScratchRenderTargetBitmap::Create<br>CScrollAnimation::CalculateInContactDelta<br>CScrollAnimation::CalculateInContactValue<br>CScrollAnimation::CalculateInertiaValue<br>CScrollAnimation::CalculateValueForState<br>CScrollAnimation::CalculateValueWorker<br>CScrollAnimation::Initialize<br>CScrollAnimation::SelectInertiaModifier<br>CSecondaryD2DBitmap::Create<br>CSecondaryD2DBitmap::CreateScaledLock<br>CSecondaryD2DBitmap::FormatConvertLock<br>CSecondaryD2DBitmap::Update<br>CSecondarySysmemBitmap::CopyPixels<br>CSecondarySysmemBitmap::Initialize<br>CSecondarySysmemBitmap::LockForRead<br>CSecondarySysmemBitmap::Update<br>CSectionBitmapRealization::CopyPixels<br>CSectionBitmapRealization::EnsureBitmapCacheSource<br>CSectionBitmapRealization::GetD2DBitmap<br>CSectionBitmapRealization::GetDeviceTexture<br>CSectionBitmapRealization::LockForRead<br>CSectionBitmapRealization::MapSection<br>CShaderCache::CreateLinkedShader<br>CShaderLinkingGraphBuilder::AppendNode<br>CShaderLinkingGraphBuilder::CopyNode<br>CShaderLinkingGraphBuilder::CreateNodeFromOutputArgument<br>CShaderLinkingGraphBuilder::GetFragmentsModuleNoRef<br>CShaderLinkingGraphBuilder::Initialize<br>CShaderLinkingGraphBuilder::Link<br>CShaderLinkingGraphBuilder::SwizzleNode<br>CShadowEffect::SetD2DEffectProperties<br>CShadowEffect::SetProperty<br>CShape::BuildFromRectFs<br>CShape::ClipWithRect<br>CShape::CopyShape<br>CShape::D2DCombine<br>CShape::FillContainsPoint<br>CShape::FlattenToLineSegments<br>CShape::GetOutline<br>CShape::GetSimplifiedPathData<br>CShape::GetSimplifiedPathDataInternal<br>CShape::GetTightBounds<br>CShape::GetWidenedBounds<br>CShape::TryOptimizedCombinePaths<br>CShapeDrawingContext::ApplyTransformToDrawingContext<br>CShapePtr::FillContainsPoint<br>CShapePtr::GetD2DGeometry<br>CShapePtr::GetTightBounds<br>CShapePtr::GetWidenedBounds<br>CShapeTree::Draw<br>CShapeTree::DrawShapes<br>CShapeTree::GenerateDrawList<br>CShapeTree::GetBounds<br>CShapeTree::HitTest<br>CShapeTreeIterator::Walk<CShapeBoundingContext><br>CShapeVisual::EnsureShapeTree<br>CShapeVisual::ProcessSetShapes<br>CShapeVisual::ProcessSetViewBox<br>CShapeVisual::SetContent<br>CSharedCircularQueue::Create<br>CSharedSectionAnimationPrimitiveBuffer::Create<br>CSharedSectionWrapper::ProcessSetSharedSection<br>CSkewTransformGeneratedT<CSkewTransform,CTransform>::SetProperty<br>CSnapshot::CreateCVI<br>CSnapshot::Draw<br>CSnapshot::ProcessSetTransformMatrix<br>CSnapshot::ProcessUpdate<br>CSpectreCallbackRenderer::Create<br>CSpriteVectorShape::CreateRenderTasks<br>CSpriteVectorShape::EnsureStrokeStyleForBounds<br>CSpriteVectorShape::EnsureStrokeStyleForRender<br>CSpriteVectorShape::GetProperty<br>CSpriteVectorShape::ProcessSetFillBrush<br>CSpriteVectorShape::ProcessSetGeometry<br>CSpriteVectorShape::ProcessSetStrokeBrush<br>CSpriteVectorShape::ProcessSetStrokeDashArray<br>CSpriteVectorShape::SetProperty<br>CSpriteVisual::GetContentBounds<br>CSpriteVisual::ProcessSetBrush<br>CSpriteVisual::ProcessSetShadow<br>CSpriteVisual::RenderContent<br>CSpriteVisual::SetContent<br>CStereoRenderTargetBitmap::Create<br>CSubDrawingContext::DrawVisualTree<br>CSuperWetInkVisualGeneratedT<CSuperWetInkVisual,CVisual>::SetSuperWetInkSource<br>CSurfaceBrush::AddOcclusionInformation<br>CSurfaceBrush::ComputeLayout<br>CSurfaceBrush::GetBounds<br>CSurfaceBrush::GetProperty<br>CSurfaceBrush::HitTest<br>CSurfaceBrush::ProcessSetSurface<br>CSurfaceBrush::ProcessSetTransform<br>CSurfaceBrush::SetProperty<br>CSurfaceBrush::SetSurface<br>CSurfaceBrush::SetTransform<br>CSurfaceDrawListBrush::`scalar_deleting_destructor'<br>CSurfaceManager::CreateTokenThread<br>CSurfaceManager::ResetTokenThread<br>CSurfaceShaderComposer::Create<br>CSurfaceShaderComposer::GetCompositingPixelShaderNoRef<br>CSurfaceShaderComposer::GetSurfacePixelShaderNoRef<br>CSurfaceShaderComposer::RunShader<br>CSurfaceShaderComposer::SetScratchConstantBuffer<br>CSurfaceShaderComposer::UpdateSDRBoostConstantBuffer<br>CSynchronousSuperWetInkGeneratedT<CSynchronousSuperWetInk,CSuperWetSource>::SetPerFrameDataSharedSection<br>CSynchronousSuperWetInkGeneratedT<CSynchronousSuperWetInk,CSuperWetSource>::SetReferenceSurface<br>CSynchronousSuperWetInkGeneratedT<CSynchronousSuperWetInk,CSuperWetSource>::SetTipPointsSharedSection<br>CSystemMemoryBitmap::HrInit<br>CSystemMemoryBitmap::HrInit<br>CSystemMemoryBitmap::HrInit<br>CSystemMemoryBitmap::Lock<br>CTableTransferEffect::ProcessUpdateTable<br>CTableTransferEffect::SetD2DEffectProperties<br>CTableTransferEffect::SetProperty<br>CTextObjectGeneratedT<CTextObject,CResource>::SetBrush<br>CTextVisualGeneratedT<CTextVisual,CVisual>::SetOrAppendGlyphRuns<br>CTextVisualGeneratedT<CTextVisual,CVisual>::SetOrAppendStrikethroughs<br>CTextVisualGeneratedT<CTextVisual,CVisual>::SetOrAppendUnderlines<br>CThreadContext::GetCurrent<br>CThreadContext::GetObjectCache<br>CThreadContext::InitializeObjectCaches<br>CThreadContext::RegisterGraphWalkRoot<br>CTransform3DGroupGeneratedT<CTransform3DGroup,CTransform3D>::SetOrAppendChildren<br>CTransformGroupGeneratedT<CTransformGroup,CTransform>::SetOrAppendChildren<br>CTransformedGeometryHelper::FlattenGeometry<br>CTransformedGeometryHelper::GetD2DGeometry<br>CTransformedGeometryHelper::HrFindInterface<br>CTransformedGeometryHelper::TransformGeometry<br>CTranslateTransform3DGeneratedT<CTranslateTransform3D,CTransform3D>::SetProperty<br>CTranslateTransformGeneratedT<CTranslateTransform,CTransform>::SetProperty<br>CTransportCmdPacker::AllocateNotification<br>CTreeEffectLayer::ApplyState<br>CTreeEffectLayer::CalcDeviceTransformDelta<br>CTreeEffectLayer::Create<br>CTreeEffectLayer::InitializeShadowEffect<br>CTreeEffectLayer::PostRestoreState<br>CTreeEffectLayer::RenderEffect<br>CTreeEffectLayer::RenderLayer<br>CTreeEffectLayer::RenderMask<br>CTreeEffectLayer::RenderShadow<br>CTurbulenceEffect::SetD2DEffectProperties<br>CTypedConstantBuffer<LightNoOpConstantBuffer>::Initialize<br>CTypedConstantBuffer<LightPSConstantBuffer>::Initialize<br>CTypedConstantBuffer<LightVSConstantBuffer>::Initialize<br>CTypedConstantBuffer<float>::Initialize<br>CVectorShape::ProcessSetTransform<br>CVectorShape::SetTransform<br>CViewBox::GetProperty<br>CViewBox::SetProperty<br>CVirtualMonitorCaptureRenderTarget::CreateTextures<br>CVirtualMonitorCaptureRenderTarget::ProcessBindData<br>CVirtualMonitorCaptureRenderTarget::ProcessBoundsInMonitor<br>CVirtualMonitorCaptureRenderTarget::SetDesktopVisualTree<br>CVisual::AddLight<br>CVisual::AddSharedLights<br>CVisual::AddToBspPolygonList<br>CVisual::AppendDirtyRegionVisualizationRects<br>CVisual::CalcRootBounds<br>CVisual::CalcSrcToDestVisualTransform<br>CVisual::CollectAdditionalDirtyRects<br>CVisual::CollectOcclusion<br>CVisual::ConvertInnerToOuterBounds<br>CVisual::GetBoundsWithEffects<br>CVisual::GetPolygonNoRef<br>CVisual::GetProperty<br>CVisual::GetVisualTree<br>CVisual::InsertChild<br>CVisual::ProcessAppendExcludedSharedLights<br>CVisual::ProcessAppendSharedLights<br>CVisual::ProcessInsertChild<br>CVisual::ProcessRemoveChild<br>CVisual::ProcessSetBlurredWallpaperSurface<br>CVisual::ProcessSetClip<br>CVisual::ProcessSetColorTransform<br>CVisual::ProcessSetContent<br>CVisual::ProcessSetEffect<br>CVisual::ProcessSetExcludedSharedLights<br>CVisual::ProcessSetInteraction<br>CVisual::ProcessSetSharedLights<br>CVisual::ProcessSetTransform<br>CVisual::ProcessSetTransformParent<br>CVisual::ProcessSetWindowBackgroundTreatment<br>CVisual::RemoveAllChildren<br>CVisual::RemoveAllSharedLights<br>CVisual::RemoveLight<br>CVisual::RenderContent<br>CVisual::RenderContentWorker<br>CVisual::SetClip<br>CVisual::SetEffect<br>CVisual::SetProperty<br>CVisualBitmap::Draw<br>CVisualBitmap::EnsureCachedVisualImage<br>CVisualBitmap::GenerateDrawList<br>CVisualBitmap::GetCurrentRenderingRealization<br>CVisualBitmapGeneratedT<CVisualBitmap,CContent>::SetVisual<br>CVisualCapture::EnqueueSetEvent<br>CVisualCapture::EnsureRenderTargets<br>CVisualCapture::ProcessUpdate<br>CVisualCapture::RegisterNotifiers<br>CVisualCapture::Render<br>CVisualGroup::AddVisual<br>CVisualReferenceController::ProcessUpdate<br>CVisualReferenceController::RegisterNotifiers<br>CVisualSurface::GetProperty<br>CVisualSurface::ProcessFreeze<br>CVisualSurface::SetProperty<br>CVisualTree::CalcOcclusion<br>CVisualTree::EnsureVisualTransform<br>CVisualTreeIterator::WalkSubtree<CDrawingContext><br>CVisualTreeIterator::WalkSubtree<CHitTestContext><br>CVisualTreeIterator::WalkSubtree<CInputSinkContext><br>CVisualTreeIterator::WalkSubtree<COcclusionContext><br>CVisualTreeIterator::WalkSubtree<CPreComputeContext><br>CWARPDrawListEntry::Create<br>CWARPDrawListEntry::EmitGeometry<br>CWARPDrawListEntry::Render<br>CWARPDrawListEntry::UpdateBitmaps<br>CWICBitmapRealization::Create<br>CWICBitmapRealization::ReleaseCopyBuffers<br>CWICBitmapWrapper::Create<br>CWICBitmapWrapper::HrInit<br>CWICBitmapWrapper::Lock<br>CWICBitmapWrapper::ReleaseCopyBuffers<br>CWarpLockSubresource::Create<br>CWarpLockSubresource::Initialize<br>CWarpLockSubresource::Lock<br>CWarpLockSubresource::Unlock<br>CWatermarkStack<CBspNode*___ptr64,64,2,10>::Push<br>CWatermarkStack<CComposition::HeatMapOptions,2,2,2>::Push<br>CWatermarkStack<CDrawingContext::StackBackfaceVisibilityEntry,64,2,10>::Push<br>CWatermarkStack<CDrawingContext::StackStateEntry,64,2,10>::Push<br>CWatermarkStack<CGraphWalker<CBspNode>::CFrame,64,2,10>::Optimize<br>CWatermarkStack<CGraphWalker<CBspNode>::CFrame,64,2,10>::Push<br>CWatermarkStack<CGraphWalker<CVectorShape>::CFrame,64,2,10>::Push<br>CWatermarkStack<CGraphWalker<CVisual>::CFrame,64,2,10>::Push<br>CWatermarkStack<CMILMatrix,8,2,8>::Optimize<br>CWatermarkStack<CMILMatrix,8,2,8>::Push<br>CWatermarkStack<COcclusionContext::StackStateType,64,2,10>::Push<br>CWatermarkStack<CVisual*___ptr64,64,2,10>::Push<br>CWatermarkStack<D2D_VECTOR_2F,2,2,10>::Optimize<br>CWatermarkStack<D2D_VECTOR_2F,2,2,10>::Push<br>CWatermarkStack<MilBackfaceVisibility::Enum,64,2,10>::Push<br>CWatermarkStack<MilBitmapBorderMode::Enum,64,2,10>::Push<br>CWatermarkStack<MilBitmapInterpolationMode::Enum,64,2,10>::Push<br>CWatermarkStack<MilCompositingMode::Enum,64,2,10>::Push<br>CWatermarkStack<MilDepthMode::Enum,64,2,10>::Push<br>CWatermarkStack<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,64,2,10>::Optimize<br>CWatermarkStack<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,64,2,10>::Push<br>CWatermarkStack<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,8,2,8>::Push<br>CWatermarkStack<bool,64,2,10>::Optimize<br>CWatermarkStack<bool,64,2,10>::Push<br>CWatermarkStack<float,2,2,10>::Optimize<br>CWatermarkStack<float,2,2,10>::Push<br>CWatermarkStack<float,64,2,10>::Push<br>CWatermarkStack<unsigned_int,64,2,10>::Optimize<br>CWatermarkStack<unsigned_int,64,2,10>::Push<br>CWatermarkStack<void*___ptr64,2,2,10>::Optimize<br>CWatermarkStack<void*___ptr64,2,2,10>::Push<br>CWeakReference<CInteractionTracker>::Create<br>CWeakReference<CResource>::Create<br>CWeakReference<CVisual>::Create<br>CWeakResourceReference::Get<br>CWindowBackdropBrush::GetBrushParameters<br>CWindowBackgroundTreatment::GenerateBitmapRealizationForEffectInput<br>CWindowNode::ApplyTextureToLocalTransform<br>CWindowNode::CollectAdditionalDirtyRects<br>CWindowNode::CollectOcclusion<br>CWindowNode::CollectOcclusionHelper<br>CWindowNode::EnsureEffectiveSpriteClip<br>CWindowNode::GetContentBounds<br>CWindowNode::GetEffectiveBounds<br>CWindowNode::GetWindowClipShape<br>CWindowNode::HitTestContent<br>CWindowNode::ProcessSetAlphaMargins<br>CWindowNode::ProcessSetCompositionSurface<br>CWindowNode::ProcessSetDxClip<br>CWindowNode::ProcessSetSpriteBitmap<br>CWindowNode::RenderBlackContent<br>CWindowNode::RenderContent<br>CWindowNode::RenderImage<br>CWindowNode::RenderRevealBorder<br>CWindowNode::SetFlipExSurface<br>CWindowNode::SetSpriteBitmap<br>CYCbCrSurface::ProcessUpdate<br>CaptureBitsResponse::CalcSectionBitmapSize<br>CaptureBitsResponse::CreateRenderTargetBitmap<br>CaptureBitsResponse::CreateSectionBitmap<br>CaptureBitsResponse::MapSectionBitmap<br>CaptureBitsResponse::OnPresentComplete<br>CaptureBitsResponse::RenderForCapture<br>CaptureBitsResponse::SendResponse<br>ClipPlaneIterator::ClipToPolygon<br>ClipPlaneIterator::SetClipPoints<br>ClipPlaneIterator::UpdateClippingPlanes<br>ComputeLanczosKernel<br>CoordMap::AddEntry<br>CreateCompObjectDiagnosticsRootProxy<br>DwmCoreDllMain<br>DynArray<CChannelContext*___ptr64,1>::AddAndSet<br>DynArray<CCommonRegistryData::GpuId,0>::AddMultipleAndSet<br>DynArray<CEffectCompilationTask*___ptr64,0>::RemoveAt<br>DynArray<CExpressionValue,1>::AddAndSet<br>DynArray<CHolographicClient::TextureUpdate,0>::RemoveAt<br>DynArray<CInteractionTracker::PendingStateChangeInfo,0>::ShiftLeft<br>DynArray<ClipPlaneIterator::LineSegment,0>::RemoveAt<br>DynArray<D2D1_POLYGON_EDGE_FLAG,0>::RemoveAt<br>DynArray<DwmAnimationPrimitive,0>::AddMultipleAndSet<br>DynArray<DwmAnimationTimeEventData,0>::AddMultipleAndSet<br>DynArray<DwmMousewheelInteractionConfigurationPrimitive,0>::AddMultipleAndSet<br>DynArray<DwmPenInteractionConfigurationPrimitive,0>::AddMultipleAndSet<br>DynArray<DwmTouchInteractionConfigurationPrimitive,0>::AddMultipleAndSet<br>DynArray<DwmTouchpadInteractionConfigurationPrimitive,0>::AddMultipleAndSet<br>DynArray<LightInfo,0>::AddMultipleAndSet<br>DynArray<PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::PropertyInfo,0>::RemoveAt<br>DynArray<TMilRect_<float,MilRectF,Mil3DRectF,MilPointAndSizeF,RectUniqueness::NotNeeded>,0>::AddMultipleAndSet<br>DynArray<float,0>::AddMultipleAndSet<br>DynArray<tagRECT,0>::AddMultipleAndSet<br>DynArray<unsigned_char,0>::AddMultipleAndSet<br>DynArray<unsigned_short,0>::AddMultipleAndSet<br>DynArrayImpl<0>::AddMultiple<br>DynArrayImpl<0>::Grow<br>DynArrayImpl<1>::AddMultiple<br>DynArrayImpl<1>::Grow<br>EmitCpuClipAntialiasTemplateGeometry<br>EmitInstancedGeometry<br>EmitterShapes::CPathEmitterArea::CreatePathEmitterArea<br>EmitterShapes::CPathEmitterArea::HrFindInterface<br>EmitterShapes::CPathEmitterEdge::CreatePathEmitterShape<br>EmitterShapes::CPathEmitterEdge::HrFindInterface<br>FUN_18001e2d3<br>FUN_18003f277<br>FUN_1800507f2<br>FUN_180060468<br>FUN_18006a4b2<br>FUN_18006a6d3<br>FUN_18006a72f<br>FUN_180074805<br>FUN_1800795f9<br>FUN_18008c428<br>FUN_18009b00a<br>FUN_1800f5eb5<br>FUN_180109a38<br>FUN_18011d081<br>FUN_18011d0a8<br>FUN_18011d242<br>FUN_18011daee<br>FUN_18011dde6<br>FUN_18011e644<br>FUN_18011ea1b<br>FUN_18011f1e1<br>FUN_18011fe8b<br>FUN_18012109a<br>FUN_18012122c<br>FUN_180121675<br>FUN_180121806<br>FUN_180121856<br>FUN_180121bf8<br>FUN_180121f55<br>FUN_180121ff6<br>FUN_180122131<br>FUN_180122a6d<br>FUN_18012351e<br>FUN_18012356a<br>FUN_180123c0c<br>FUN_180123f31<br>FUN_1801246db<br>FUN_1801247d3<br>FUN_1801248bc<br>FUN_180124a4a<br>FUN_18012f3c5<br>FUN_18012f88e<br>FUN_1801310d4<br>FUN_180131d1f<br>FUN_18013353d<br>FUN_180133c16<br>FUN_180133d5e<br>FUN_180133f96<br>FUN_180134159<br>FUN_180134524<br>FUN_180134564<br>FUN_1801348a4<br>FUN_1801350f1<br>FUN_1801356b0<br>FUN_18013672a<br>FUN_180136f3c<br>FUN_1801398ee<br>FUN_18013aeff<br>FUN_18013b4fc<br>FUN_18013b53c<br>FUN_18013ba4e<br>FUN_18013bbec<br>FUN_18013bca0<br>FUN_18013bd47<br>FUN_18013bebf<br>FUN_18013c313<br>FUN_18013d404<br>FUN_18013d5fe<br>FUN_18013da2f<br>FUN_18013dd0e<br>FUN_18013dd54<br>FUN_18013de5e<br>FUN_18013e0ef<br>FUN_18013e212<br>FUN_18013e792<br>FUN_18013f1ae<br>FUN_18013f50d<br>FUN_18013f680<br>FUN_18013fc9b<br>FUN_180142698<br>FUN_180142d64<br>FUN_180142db1<br>FUN_180143967<br>FUN_180143a70<br>FUN_180144d21<br>FUN_1801451a0<br>FUN_180145ae8<br>FUN_180146398<br>FUN_18014949b<br>FUN_180149513<br>FUN_180149d4c<br>FUN_180149df3<br>FUN_180149f19<br>FUN_18014b0dc<br>FUN_18014b8a4<br>FUN_18014bc7c<br>FUN_18014c01b<br>FUN_18014c87b<br>FUN_18014c892<br>FUN_18014c8b6<br>FUN_18014c8da<br>FUN_18014d0c3<br>FUN_18014d929<br>FUN_18014da98<br>FUN_18014e1fa<br>FUN_18014e61e<br>FUN_18014ed6f<br>FUN_18014f61d<br>FUN_18014fba9<br>FUN_18014fbc3<br>FUN_18014ff18<br>FUN_180151227<br>FUN_180151405<br>FUN_180151679<br>FUN_1801519a7<br>FUN_180152214<br>FUN_1801523a9<br>FUN_180152473<br>FUN_1801524e5<br>FUN_1801527b4<br>FUN_180153cd4<br>FUN_18015435a<br>FUN_1801545ad<br>FUN_1801549dc<br>FUN_180155198<br>FUN_1801555ea<br>FUN_180155746<br>FUN_180155af7<br>FUN_180155dee<br>FUN_180155e6c<br>FUN_18015625c<br>FUN_1801564e9<br>FUN_1801573c0<br>FUN_180157a8b<br>FUN_18015874f<br>FUN_180158a08<br>FUN_180158a74<br>FUN_180158ac3<br>FUN_180158bd8<br>FUN_180158bfc<br>FUN_180158c42<br>FUN_180159046<br>FUN_18015a14c<br>FUN_18015a837<br>FUN_18015ac11<br>FUN_18015acd9<br>FUN_18015aea2<br>FUN_18015b06e<br>FUN_18015c13a<br>FUN_18015c1ad<br>FUN_18015c424<br>FUN_18015c5bb<br>FUN_18015c638<br>FUN_18015d4f0<br>FUN_18015dbe4<br>FUN_18015e24f<br>FUN_18015e299<br>FUN_18015e41d<br>FUN_18015e478<br>FUN_18015e4c9<br>FUN_18015e5ce<br>FUN_18015eac4<br>FUN_18015f33e<br>FUN_18015f3ca<br>FUN_18015f460<br>FUN_18015f865<br>FUN_18015f9f9<br>FUN_18015fa8e<br>FUN_18015fb35<br>FUN_18015fbf1<br>FUN_1801600b7<br>FUN_180160108<br>FUN_18016108a<br>FUN_18016169e<br>FUN_1801616c0<br>FUN_1801617e0<br>FUN_180161b58<br>FUN_180161e58<br>FUN_180162613<br>FUN_180162657<br>FUN_180163036<br>FUN_18017197c<br>FUN_180171f46<br>FUN_1801720e1<br>FUN_180172a94<br>FUN_180172d96<br>FUN_1801732a0<br>FUN_1801741d8<br>FUN_180175ccd<br>FUN_18017636e<br>FUN_180176e94<br>FUN_18017750b<br>FUN_1801775bc<br>FUN_1801777fc<br>FUN_180177987<br>FUN_180177bdd<br>FUN_180177c4a<br>FUN_180177c7c<br>FUN_180178f6a<br>FUN_180179468<br>FUN_1801794a2<br>FUN_180179cdb<br>FUN_18017a3a4<br>FUN_18017c6f4<br>FUN_18017d11d<br>FUN_18017daa0<br>FUN_18017e7c8<br>FUN_18017eada<br>FUN_18017eee6<br>FUN_180180ac6<br>FUN_18018230f<br>FUN_180182e48<br>FUN_1801843d5<br>FUN_1801846db<br>FUN_18018497d<br>FUN_180184c2e<br>FUN_180184f2e<br>FUN_1801859fe<br>FUN_180185a40<br>FUN_180185e5c<br>FUN_180186f46<br>FUN_180187aa5<br>FUN_180188d3c<br>FUN_180188e8e<br>FUN_180189bc9<br>FUN_180189f21<br>FUN_18018a94e<br>FUN_18018ab92<br>FUN_18018b908<br>FUN_18018c2fa<br>FUN_18018d12b<br>FUN_18018f610<br>FUN_18018fad0<br>FillLanczosUpBuffer<br>GetLPCreateDCompositionDirectInkFactoryPartner<br>HANDLE_TABLE::Resize<br>HANDLE_TABLE::ResizeToFit<br>HrCalcRequiredBufferSizeWorker<br>HrCheckBufferSize<br>HrCheckBufferSize<br>HrCreateBitmapFromMemoryEx<br>HrCreateBitmapFromWICBitmapSource<br>HrCreateDestBitmap<br>HrCreateDestBitmapCopy<br>HrMilPfToPixelFormatInfo<br>HrgnToRgnData<br>InitializeShaderLinkingInput<br>KeyframeValue::GetValue<br>LinkCompositingShader<br>LinkLightShader<br>LinkShader<br>LoadShaderBody<br>MagnifierCaptureBitsResponse::OnPresentComplete<br>MagnifierCaptureBitsResponse::SendResponse<br>OpenComposedEvent<br>OpenDxBltEvent<br>PrepareSamplers<br>PrimitiveStorage::Alloc<16><br>PrimitiveStorage::CCachableStorage<CDrawListPrimitive4,16>::`scalar_deleting_destructor'<br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<D2DMatrix><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<D2DQuaternion><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<D2DVector2><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<D2DVector3><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<D2DVector4><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<D2D_MATRIX_3X2_F><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<_D3DCOLORVALUE><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<bool><br>PropertySetStorage<DynArrayNoZero,PropertySetUserModeAllocator>::AddProperty<float><br>RemoveCountFromEndOfArray<AxisWithType><br>RemoveCountFromEndOfArrayAndFree<br>ScanPipelineBuilder::AddBufferReference<br>ScanPipelineBuilder::AddOp_Binary<br>ScanPipelineBuilder::Append_Convert<br>ScanPipelineBuilder::Append_Convert_BetweenInterchange<br>ScanPipelineBuilder::ConvertDestBufferReferences<br>ShadowHelpers::GenerateBlurIntermediate<br>ShadowHelpers::GenerateMaskIntermediate<br>ShadowHelpers::GetLightPosition<br>ShadowHelpers::GetLightToCameraMatrix<br>ShadowHelpers::GetProjectionOntoVisualMatrix<br>Startup<br>Time::PreInitClass<br>UseFragmentsModuleNoRef<br>VisualCaptureBitsResponse::OnPresentComplete<br>WilResultLoggingCallback_MaybeFailFast<br>`anonymous_namespace'::State::State<br>switchD_1800558ae::caseD_b<br>switchD_1800c0838::caseD_b</details>|
|paramcount|6|6|
|`address`|18008807c|1800c15e8|
|sig|void __cdecl MilInstrumentationCheckHR_MaybeFailFast(ulong param_1, long * param_2, uint param_3, long param_4, uint param_5, void * param_6)|void __cdecl MilInstrumentationCheckHR_MaybeFailFast(ulong param_1, long * param_2, uint param_3, long param_4, uint param_5, void * param_6)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|False|False|

### MilInstrumentationCheckHR_MaybeFailFast Calling Diff


```diff
--- MilInstrumentationCheckHR_MaybeFailFast calling
+++ MilInstrumentationCheckHR_MaybeFailFast calling
@@ -766,0 +767 @@
+CExpressionValueStack::Multiply
@@ -1906,235 +1907,233 @@
-FUN_18001d4d3
-FUN_18004b2b4
-FUN_1800516c9
-FUN_180058ed8
-FUN_1800643a2
-FUN_1800645c3
-FUN_18006461f
-FUN_18006e6f5
-FUN_180082a72
-FUN_18008baea
-FUN_1800c6af7
-FUN_1800f3135
-FUN_180105aa8
-FUN_180118a12
-FUN_180118f5a
-FUN_180119228
-FUN_1801192e7
-FUN_1801194b1
-FUN_1801195c4
-FUN_180119756
-FUN_180119b9f
-FUN_180119d30
-FUN_18011a0d2
-FUN_18011a42f
-FUN_18011a4d0
-FUN_18011a60b
-FUN_18011af47
-FUN_18011b9f8
-FUN_18011ba44
-FUN_18011bf1e
-FUN_18011c041
-FUN_18011ca75
-FUN_18011d71f
-FUN_18011e9ce
-FUN_18011eab7
-FUN_18011eade
-FUN_18011ec78
-FUN_18011f987
-FUN_1801200d0
-FUN_18012b372
-FUN_18012ba1f
-FUN_18012c0cc
-FUN_18012c90c
-FUN_18012d2f2
-FUN_18012d52e
-FUN_18012d95f
-FUN_18012dabb
-FUN_18012dcb8
-FUN_18012dda1
-FUN_18012de67
-FUN_18012e32d
-FUN_18012e37e
-FUN_18012e7cc
-FUN_18012e89e
-FUN_18012ee14
-FUN_18012f17e
-FUN_18012f692
-FUN_18012f907
-FUN_18012f974
-FUN_18012f9a6
-FUN_18012fa7f
-FUN_18012fb12
-FUN_18012fb6c
-FUN_18012fc76
-FUN_1801309e3
-FUN_180130b56
-FUN_180130f62
-FUN_180130fb1
-FUN_1801310c6
-FUN_18013133b
-FUN_180132f88
-FUN_1801333de
-FUN_180133410
-FUN_180133535
-FUN_180133efa
-FUN_180135058
-FUN_180135325
-FUN_1801354b9
-FUN_18013554e
-FUN_1801355f5
-FUN_180135754
-FUN_1801363be
-FUN_180137276
-FUN_180137802
-FUN_18013846f
-FUN_180138574
-FUN_180138594
-FUN_1801386a7
-FUN_1801386f1
-FUN_180138875
-FUN_1801388d0
-FUN_180138eb3
-FUN_180139782
-FUN_180139800
-FUN_180139bf0
-FUN_180139e7d
-FUN_18013a695
-FUN_18013adcb
-FUN_18013b410
-FUN_18013b926
-FUN_18013bba0
-FUN_18013c187
-FUN_18013cbc6
-FUN_18013d2e3
-FUN_18013db49
-FUN_18013dcb8
-FUN_18013e65a
-FUN_18013ec4b
-FUN_18013ed9d
-FUN_18013eec3
-FUN_18013f0dc
-FUN_18013f3d6
-FUN_18013fbb7
-FUN_180140143
-FUN_18014015d
-FUN_1801404b2
-FUN_1801417c1
-FUN_18014199f
-FUN_180141c13
-FUN_180141f41
-FUN_1801427ae
-FUN_180142943
-FUN_180142a0d
-FUN_180142a7f
-FUN_180142d4e
-FUN_18014426e
-FUN_1801448f4
-FUN_180144b47
-FUN_180144f76
-FUN_1801456aa
-FUN_180145ca5
-FUN_180145cbc
-FUN_180145ce0
-FUN_180145d04
-FUN_180145f5e
-FUN_1801475a1
-FUN_180147bc6
-FUN_180148084
-FUN_1801481e0
-FUN_1801493f5
-FUN_1801494bd
-FUN_180149686
-FUN_180149852
-FUN_18014a8f6
-FUN_18014a969
-FUN_18014ae92
-FUN_18014b029
-FUN_18014db25
-FUN_18014db9d
-FUN_18014e2e2
-FUN_18014e524
-FUN_18014e644
-FUN_18014f268
-FUN_18014f568
-FUN_18014fd23
-FUN_18014fd67
-FUN_180150746
-FUN_18015dded
-FUN_18015e2b6
-FUN_18015fafc
-FUN_1801616a9
-FUN_180161da8
-FUN_180161ef0
-FUN_18016210e
-FUN_1801627c1
-FUN_18016299e
-FUN_1801629de
-FUN_180162cac
-FUN_180163813
-FUN_180164364
-FUN_1801647a6
-FUN_1801657fe
-FUN_180168610
-FUN_180169eb6
-FUN_18016a386
-FUN_18016a688
-FUN_18016b8c4
-FUN_18016b911
-FUN_18016ba0f
-FUN_18016bf4a
-FUN_18016c2a8
-FUN_18016c781
-FUN_18016cc82
-FUN_18016dce5
-FUN_18016e247
-FUN_18016e2f8
-FUN_18016e594
-FUN_18016efdc
-FUN_18016f177
-FUN_18016f4fc
-FUN_18016fdf9
-FUN_1801703f6
-FUN_180170436
-FUN_1801709de
-FUN_180170bbf
-FUN_180170ca2
-FUN_180170e40
-FUN_180170ef4
-FUN_180170f9b
-FUN_180171113
-FUN_180171567
-FUN_180172dde
-FUN_180172e20
-FUN_18017334e
-FUN_180173923
-FUN_180174ce4
-FUN_180175d40
-FUN_180179b62
-FUN_18017bfa5
-FUN_18017c214
-FUN_18017d5da
-FUN_18017e2ce
-FUN_18017e8bf
-FUN_18017ef26
-FUN_18017ef60
-FUN_18017f415
-FUN_18017f539
-FUN_18017f998
-FUN_180180e9a
-FUN_180183cfa
-FUN_1801854ee
-FUN_180185850
-FUN_180186106
-FUN_180186c55
-FUN_180187088
-FUN_180187134
-FUN_18018722e
-FUN_1801887dd
-FUN_180189442
-FUN_18018954a
-FUN_18018a156
-FUN_18018a95c
-FUN_18018b53f
-FUN_18018db78
-FUN_18018e038
+FUN_18001e2d3
+FUN_18003f277
+FUN_1800507f2
+FUN_180060468
+FUN_18006a4b2
+FUN_18006a6d3
+FUN_18006a72f
+FUN_180074805
+FUN_1800795f9
+FUN_18008c428
+FUN_18009b00a
+FUN_1800f5eb5
+FUN_180109a38
+FUN_18011d081
+FUN_18011d0a8
+FUN_18011d242
+FUN_18011daee
+FUN_18011dde6
+FUN_18011e644
+FUN_18011ea1b
+FUN_18011f1e1
+FUN_18011fe8b
+FUN_18012109a
+FUN_18012122c
+FUN_180121675
+FUN_180121806
+FUN_180121856
+FUN_180121bf8
+FUN_180121f55
+FUN_180121ff6
+FUN_180122131
+FUN_180122a6d
+FUN_18012351e
+FUN_18012356a
+FUN_180123c0c
+FUN_180123f31
+FUN_1801246db
+FUN_1801247d3
+FUN_1801248bc
+FUN_180124a4a
+FUN_18012f3c5
+FUN_18012f88e
+FUN_1801310d4
+FUN_180131d1f
+FUN_18013353d
+FUN_180133c16
+FUN_180133d5e
+FUN_180133f96
+FUN_180134159
+FUN_180134524
+FUN_180134564
+FUN_1801348a4
+FUN_1801350f1
+FUN_1801356b0
+FUN_18013672a
+FUN_180136f3c
+FUN_1801398ee
+FUN_18013aeff
+FUN_18013b4fc
+FUN_18013b53c
+FUN_18013ba4e
+FUN_18013bbec
+FUN_18013bca0
+FUN_18013bd47
+FUN_18013bebf
+FUN_18013c313
+FUN_18013d404
+FUN_18013d5fe
+FUN_18013da2f
+FUN_18013dd0e
+FUN_18013dd54
+FUN_18013de5e
+FUN_18013e0ef
+FUN_18013e212
+FUN_18013e792
+FUN_18013f1ae
+FUN_18013f50d
+FUN_18013f680
+FUN_18013fc9b
+FUN_180142698
+FUN_180142d64
+FUN_180142db1
+FUN_180143967
+FUN_180143a70
+FUN_180144d21
+FUN_1801451a0
+FUN_180145ae8
+FUN_180146398
+FUN_18014949b
+FUN_180149513
+FUN_180149d4c
+FUN_180149df3
+FUN_180149f19
+FUN_18014b0dc
+FUN_18014b8a4
+FUN_18014bc7c
+FUN_18014c01b
+FUN_18014c87b
+FUN_18014c892
+FUN_18014c8b6
+FUN_18014c8da
+FUN_18014d0c3
+FUN_18014d929
+FUN_18014da98
+FUN_18014e1fa
+FUN_18014e61e
+FUN_18014ed6f
+FUN_18014f61d
+FUN_18014fba9
+FUN_18014fbc3
+FUN_18014ff18
+FUN_180151227
+FUN_180151405
+FUN_180151679
+FUN_1801519a7
+FUN_180152214
+FUN_1801523a9
+FUN_180152473
+FUN_1801524e5
+FUN_1801527b4
+FUN_180153cd4
+FUN_18015435a
+FUN_1801545ad
+FUN_1801549dc
+FUN_180155198
+FUN_1801555ea
+FUN_180155746
+FUN_180155af7
+FUN_180155dee
+FUN_180155e6c
+FUN_18015625c
+FUN_1801564e9
+FUN_1801573c0
+FUN_180157a8b
+FUN_18015874f
+FUN_180158a08
+FUN_180158a74
+FUN_180158ac3
+FUN_180158bd8
+FUN_180158bfc
+FUN_180158c42
+FUN_180159046
+FUN_18015a14c
+FUN_18015a837
+FUN_18015ac11
+FUN_18015acd9
+FUN_18015aea2
+FUN_18015b06e
+FUN_18015c13a
+FUN_18015c1ad
+FUN_18015c424
+FUN_18015c5bb
+FUN_18015c638
+FUN_18015d4f0
+FUN_18015dbe4
+FUN_18015e24f
+FUN_18015e299
+FUN_18015e41d
+FUN_18015e478
+FUN_18015e4c9
+FUN_18015e5ce
+FUN_18015eac4
+FUN_18015f33e
+FUN_18015f3ca
+FUN_18015f460
+FUN_18015f865
+FUN_18015f9f9
+FUN_18015fa8e
+FUN_18015fb35
+FUN_18015fbf1
+FUN_1801600b7
+FUN_180160108
+FUN_18016108a
+FUN_18016169e
+FUN_1801616c0
+FUN_1801617e0
+FUN_180161b58
+FUN_180161e58
+FUN_180162613
+FUN_180162657
+FUN_180163036
+FUN_18017197c
+FUN_180171f46
+FUN_1801720e1
+FUN_180172a94
+FUN_180172d96
+FUN_1801732a0
+FUN_1801741d8
+FUN_180175ccd
+FUN_18017636e
+FUN_180176e94
+FUN_18017750b
+FUN_1801775bc
+FUN_1801777fc
+FUN_180177987
+FUN_180177bdd
+FUN_180177c4a
+FUN_180177c7c
+FUN_180178f6a
+FUN_180179468
+FUN_1801794a2
+FUN_180179cdb
+FUN_18017a3a4
+FUN_18017c6f4
+FUN_18017d11d
+FUN_18017daa0
+FUN_18017e7c8
+FUN_18017eada
+FUN_18017eee6
+FUN_180180ac6
+FUN_18018230f
+FUN_180182e48
+FUN_1801843d5
+FUN_1801846db
+FUN_18018497d
+FUN_180184c2e
+FUN_180184f2e
+FUN_1801859fe
+FUN_180185a40
+FUN_180185e5c
+FUN_180186f46
+FUN_180187aa5
+FUN_180188d3c
+FUN_180188e8e
+FUN_180189bc9
+FUN_180189f21
+FUN_18018a94e
+FUN_18018ab92
+FUN_18018b908
+FUN_18018c2fa
+FUN_18018d12b
+FUN_18018f610
+FUN_18018fad0
@@ -2194,4 +2193,2 @@
-switchD_180071930::caseD_0
-switchD_1800725a8::caseD_b
-switchD_180086845::caseD_b
-switchD_18008776e::caseD_b
+switchD_1800558ae::caseD_b
+switchD_1800c0838::caseD_b
```


## operator=

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,address,calling|
|ratio|1.0|
|i_ratio|0.96|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|operator=|operator=|
|fullname|CExpressionValue::operator=|CExpressionValue::operator=|
|`refcount`|4|209|
|length|85|85|
|called|Microsoft::WRL::ComPtr<CPathData>::operator=|Microsoft::WRL::ComPtr<CPathData>::operator=|
|`calling`|CNaturalAnimation::ExpressionValueFromInternalValue<br>KeyframeInterpolation::InterpolateHsl<br>KeyframeInterpolation::InterpolateSpherical|<details><summary>Expand for full list:<br>CConditionalExpression::AddStackValueToSum<br>CConditionalExpression::CalculateConditionValue<br>CConditionalExpression::GetValue<br>CExpression::CalculateValueWorker<br>CExpressionValueStack::Absolute<br>CExpressionValueStack::Acos<br>CExpressionValueStack::Add<br>CExpressionValueStack::And<br>CExpressionValueStack::Asin<br>CExpressionValueStack::Atan<br>CExpressionValueStack::Ceil</summary>CExpressionValueStack::Clamp<br>CExpressionValueStack::ColorHsl<br>CExpressionValueStack::ColorLerpHsl<br>CExpressionValueStack::ColorLerpRgb<br>CExpressionValueStack::ColorRgb<br>CExpressionValueStack::Concatenate<br>CExpressionValueStack::Conditional<br>CExpressionValueStack::Distance<br>CExpressionValueStack::DistanceSquared<br>CExpressionValueStack::Divide<br>CExpressionValueStack::Equals<br>CExpressionValueStack::Floor<br>CExpressionValueStack::GreaterThan<br>CExpressionValueStack::GreaterThanEquals<br>CExpressionValueStack::Inverse<br>CExpressionValueStack::Length<br>CExpressionValueStack::LengthSquared<br>CExpressionValueStack::Lerp<br>CExpressionValueStack::LessThan<br>CExpressionValueStack::LessThanEquals<br>CExpressionValueStack::Ln<br>CExpressionValueStack::Log10<br>CExpressionValueStack::Matrix3x2<br>CExpressionValueStack::Matrix3x2FromRotation<br>CExpressionValueStack::Matrix3x2FromScale<br>CExpressionValueStack::Matrix3x2FromSkew<br>CExpressionValueStack::Matrix4x4<br>CExpressionValueStack::Matrix4x4FromAxisAngle<br>CExpressionValueStack::Matrix4x4FromPerspective<br>CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView<br>CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter<br>CExpressionValueStack::Matrix4x4FromQuaternion<br>CExpressionValueStack::Matrix4x4FromRotationX<br>CExpressionValueStack::Matrix4x4FromRotationY<br>CExpressionValueStack::Matrix4x4FromRotationZ<br>CExpressionValueStack::Matrix4x4FromScale<br>CExpressionValueStack::Matrix4x4FromTranslation<br>CExpressionValueStack::Matrix4x4FromYawPitchRoll<br>CExpressionValueStack::Max<br>CExpressionValueStack::Min<br>CExpressionValueStack::Modulus<br>CExpressionValueStack::Multiply<br>CExpressionValueStack::Negate<br>CExpressionValueStack::Normalize<br>CExpressionValueStack::Not<br>CExpressionValueStack::NotEquals<br>CExpressionValueStack::Or<br>CExpressionValueStack::PeekStackValue<br>CExpressionValueStack::Pow<br>CExpressionValueStack::Quaternion<br>CExpressionValueStack::QuaternionFromAxisAngle<br>CExpressionValueStack::QuaternionFromLerp<br>CExpressionValueStack::QuaternionFromRotationMatrix<br>CExpressionValueStack::QuaternionFromYawPitchRoll<br>CExpressionValueStack::Round<br>CExpressionValueStack::Scale<br>CExpressionValueStack::Slerp<br>CExpressionValueStack::Sqrt<br>CExpressionValueStack::Square<br>CExpressionValueStack::Subtract<br>CExpressionValueStack::Swizzle<br>CExpressionValueStack::Tan<br>CExpressionValueStack::TimeSpanFrom<br>CExpressionValueStack::ToDegrees<br>CExpressionValueStack::ToRadians<br>CExpressionValueStack::Transform<br>CExpressionValueStack::Vector2Dot<br>CExpressionValueStack::Vector2Transform<br>CExpressionValueStack::Vector2TransformNormal<br>CExpressionValueStack::Vector3<br>CExpressionValueStack::Vector3Cross<br>CExpressionValueStack::Vector3Dot<br>CExpressionValueStack::Vector3Transform<br>CExpressionValueStack::Vector3TransformNormal<br>CExpressionValueStack::Vector4<br>CExpressionValueStack::Vector4Dot<br>CExpressionValueStack::Vector4Transform<br>CKeyframeAnimation::ApplyPlaybackStateChanges<br>CKeyframeAnimation::ProcessSetBindingBroken<br>CNaturalAnimation::ExpressionValueFromInternalValue<br>CNaturalAnimation::PeekStackValue<br>CNaturalAnimationScalarForceAdapater::Update<br>CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated<br>CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated<br>KeyframeInterpolation::InterpolateHsl<br>KeyframeInterpolation::InterpolateSpherical</details>|
|paramcount|2|2|
|`address`|180015688|180016350|
|sig|CExpressionValue * __thiscall operator=(CExpressionValue * this, CExpressionValue * param_1)|CExpressionValue * __thiscall operator=(CExpressionValue * this, CExpressionValue * param_1)|
|sym_type|Function|Function|
|sym_source|ANALYSIS|ANALYSIS|
|external|False|False|

### operator= Calling Diff


```diff
--- CExpressionValue::operator= calling
+++ CExpressionValue::operator= calling
@@ -0,0 +1,90 @@
+CConditionalExpression::AddStackValueToSum
+CConditionalExpression::CalculateConditionValue
+CConditionalExpression::GetValue
+CExpression::CalculateValueWorker
+CExpressionValueStack::Absolute
+CExpressionValueStack::Acos
+CExpressionValueStack::Add
+CExpressionValueStack::And
+CExpressionValueStack::Asin
+CExpressionValueStack::Atan
+CExpressionValueStack::Ceil
+CExpressionValueStack::Clamp
+CExpressionValueStack::ColorHsl
+CExpressionValueStack::ColorLerpHsl
+CExpressionValueStack::ColorLerpRgb
+CExpressionValueStack::ColorRgb
+CExpressionValueStack::Concatenate
+CExpressionValueStack::Conditional
+CExpressionValueStack::Distance
+CExpressionValueStack::DistanceSquared
+CExpressionValueStack::Divide
+CExpressionValueStack::Equals
+CExpressionValueStack::Floor
+CExpressionValueStack::GreaterThan
+CExpressionValueStack::GreaterThanEquals
+CExpressionValueStack::Inverse
+CExpressionValueStack::Length
+CExpressionValueStack::LengthSquared
+CExpressionValueStack::Lerp
+CExpressionValueStack::LessThan
+CExpressionValueStack::LessThanEquals
+CExpressionValueStack::Ln
+CExpressionValueStack::Log10
+CExpressionValueStack::Matrix3x2
+CExpressionValueStack::Matrix3x2FromRotation
+CExpressionValueStack::Matrix3x2FromScale
+CExpressionValueStack::Matrix3x2FromSkew
+CExpressionValueStack::Matrix4x4
+CExpressionValueStack::Matrix4x4FromAxisAngle
+CExpressionValueStack::Matrix4x4FromPerspective
+CExpressionValueStack::Matrix4x4FromPerspectiveFieldOfView
+CExpressionValueStack::Matrix4x4FromPerspectiveOffCenter
+CExpressionValueStack::Matrix4x4FromQuaternion
+CExpressionValueStack::Matrix4x4FromRotationX
+CExpressionValueStack::Matrix4x4FromRotationY
+CExpressionValueStack::Matrix4x4FromRotationZ
+CExpressionValueStack::Matrix4x4FromScale
+CExpressionValueStack::Matrix4x4FromTranslation
+CExpressionValueStack::Matrix4x4FromYawPitchRoll
+CExpressionValueStack::Max
+CExpressionValueStack::Min
+CExpressionValueStack::Modulus
+CExpressionValueStack::Multiply
+CExpressionValueStack::Negate
+CExpressionValueStack::Normalize
+CExpressionValueStack::Not
+CExpressionValueStack::NotEquals
+CExpressionValueStack::Or
+CExpressionValueStack::PeekStackValue
+CExpressionValueStack::Pow
+CExpressionValueStack::Quaternion
+CExpressionValueStack::QuaternionFromAxisAngle
+CExpressionValueStack::QuaternionFromLerp
+CExpressionValueStack::QuaternionFromRotationMatrix
+CExpressionValueStack::QuaternionFromYawPitchRoll
+CExpressionValueStack::Round
+CExpressionValueStack::Scale
+CExpressionValueStack::Slerp
+CExpressionValueStack::Sqrt
+CExpressionValueStack::Square
+CExpressionValueStack::Subtract
+CExpressionValueStack::Swizzle
+CExpressionValueStack::Tan
+CExpressionValueStack::TimeSpanFrom
+CExpressionValueStack::ToDegrees
+CExpressionValueStack::ToRadians
+CExpressionValueStack::Transform
+CExpressionValueStack::Vector2Dot
+CExpressionValueStack::Vector2Transform
+CExpressionValueStack::Vector2TransformNormal
+CExpressionValueStack::Vector3
+CExpressionValueStack::Vector3Cross
+CExpressionValueStack::Vector3Dot
+CExpressionValueStack::Vector3Transform
+CExpressionValueStack::Vector3TransformNormal
+CExpressionValueStack::Vector4
+CExpressionValueStack::Vector4Dot
+CExpressionValueStack::Vector4Transform
+CKeyframeAnimation::ApplyPlaybackStateChanges
+CKeyframeAnimation::ProcessSetBindingBroken
@@ -1,0 +92,4 @@
+CNaturalAnimation::PeekStackValue
+CNaturalAnimationScalarForceAdapater::Update
+CScrollPositionKeyframeAnimation::EnsureChainingConfigUpdated
+CScrollScaleKeyframeAnimation::EnsureChainingConfigUpdated
```


## API-MS-WIN-CORE-HANDLE-L1-1-0.DLL::CloseHandle

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,calling|
|ratio|1.0|
|i_ratio|1.0|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash,ExternalsName|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|CloseHandle|CloseHandle|
|fullname|API-MS-WIN-CORE-HANDLE-L1-1-0.DLL::CloseHandle|API-MS-WIN-CORE-HANDLE-L1-1-0.DLL::CloseHandle|
|`refcount`|95|96|
|length|0|0|
|called|||
|`calling`|<details><summary>Expand for full list:<br>?CloseHandle@details@wil@@YAXPEAX@Z<br>CBaseExpression::SetOutputValue<br>CCaptureRenderTarget::EnsureResources<br>CCaptureRenderTarget::ProcessSetBuffers<br>CCaptureRenderTarget::~CCaptureRenderTarget<br>CChannel::CreateSharedResource<br>CChannel::SyncDesktopCaptureBits<br>CChannel::WindowNodeSetCompositionSurface<br>CChannel::~CChannel<br>CChannelTable::DestroyHandle<br>CCompSwapChain::~CCompSwapChain</summary>CCompiledEffectTemplate::SignalCompileCompletedEvent<br>CCompositionSurfaceInfo::~CCompositionSurfaceInfo<br>CComputeScribbleScheduler::CreateWakeupFence<br>CComputeScribbleScheduler::Initialize<br>CComputeScribbleScheduler::~CComputeScribbleScheduler<br>CConnection::~CConnection<br>CD3DDevice::CreateCompositionSwapChain<br>CD3DDevice::CreateLegacyRemotingSwapChain<br>CD3DDevice::CreateSharedFence<br>CD3DDevice::ShareToD3D12<br>CD3DDevice::~CD3DDevice<br>CDDisplayRenderTarget::~CDDisplayRenderTarget<br>CDisplayManager::~CDisplayManager<br>CDxHandleBitmapRealization::GetDDisplayResource<br>CDxHandleBitmapRealization::~CDxHandleBitmapRealization<br>CDxHandleYUVBitmapRealization::GetDDisplayResource<br>CDxHandleYUVBitmapRealization::~CDxHandleYUVBitmapRealization<br>CEffectCompilationService::~CEffectCompilationService<br>CEventResponse::~CEventResponse<br>CGDISectionBitmapRealization::Create<br>CGdiSpriteBitmap::ReleaseBitmapResources<br>CGlobalComposition::Channel_VisualCaptureBits<br>CGlobalComposition::Partition_DesktopCaptureBits<br>CGlobalComposition::Partition_Synchronize<br>CGlobalCompositionSurfaceInfo::CBindInfo::CreateAndAddSwapChainBuffers<br>CGlobalCompositionSurfaceInfo::CBindInfo::Initialize<br>CGlobalSurfaceManager::PostPresent<br>CGlobalSurfaceManager::~CGlobalSurfaceManager<br>CHolographicClient::~CHolographicClient<br>CHolographicExclusivePresentData::~CHolographicExclusivePresentData<br>CHolographicExclusiveView::CloseSurfaceHandles<br>CHolographicExclusiveView::DetachFromChannel<br>CHolographicExclusiveView::ProcessSetViewData<br>CHolographicFrameProcessor::~CHolographicFrameProcessor<br>CHolographicInteropTarget::~CHolographicInteropTarget<br>CHolographicInteropTexture::ReleaseResources<br>CHolographicManager::~CHolographicManager<br>CHolographicViewer::Dispose<br>CIndirectSwapchainRenderTarget::ProcessCreate<br>CKernelTransport::~CKernelTransport<br>CKstBase::~CKstBase<br>CLegacyRemotingSwapChain::~CLegacyRemotingSwapChain<br>CLegacyRenderTarget::~CLegacyRenderTarget<br>CManipulationManager::ClearWaitHandles<br>CManipulationManager::ShutDownManipulationThread<br>CMit::Stop<br>CMit::~CMit<br>CPartitionVerticalBlankScheduler::~CPartitionVerticalBlankScheduler<br>CRenderTargetManager::~CRenderTargetManager<br>CSectionBitmapRealization::~CSectionBitmapRealization<br>CSharedSectionBase::MapSharedMemory<br>CSurfaceManager::~CSurfaceManager<br>CVirtualMonitorCaptureRenderTarget::CreateTextures<br>CVisualCapture::~CVisualCapture<br>CaptureBitsResponse::~CaptureBitsResponse<br>CurrentProcessHasIncreasedPriorityPrivileges<br>DDisplayPrimaryBufferResources::~DDisplayPrimaryBufferResources<br>DDisplayTaskPoolResources::~DDisplayTaskPoolResources<br>FUN_1800a2575<br>FUN_18014c388<br>FUN_180175534<br>FUN_1801890a3<br>OpenDxBltEvent<br>__scrt_uninitialize_thread_safe_statics<br>std::_Destroy_range<std::allocator<CGlobalSurfaceManager::AdapterInfo>_><br>std::_Destroy_range<std::allocator<wil::unique_any_t<wil::details::unique_storage<wil::details::handle_null_resource_policy<int_(__cdecl*)(void*___ptr64),&int___cdecl_CloseHandle(void*___ptr64)>_>_>_>_><br>wil::details::lambda_call<<lambda_40e44a5d63de77d0b0d6917c6e57f0c5>_>::~lambda_call<<lambda_40e44a5d63de77d0b0d6917c6e57f0c5>_><br>wil::details::unique_storage<wil::details::handle_null_resource_policy<int_(__cdecl*)(void*___ptr64),&int___cdecl_CloseHandle(void*___ptr64)>_>::reset<br>wil::unique_any_t<wil::details::unique_storage<wil::details::handle_null_resource_policy<int_(__cdecl*)(void*___ptr64),&int___cdecl_CloseHandle(void*___ptr64)>_>_>::~unique_any_t<wil::details::unique_storage<wil::details::handle_null_resource_policy<int_(__cdecl*)(void*___ptr64),&int___cdecl_CloseHandle(void*___ptr64)>_>_></details>|<details><summary>Expand for full list:<br>?CloseHandle@details@wil@@YAXPEAX@Z<br>CBaseExpression::CalculateValue<br>CBaseExpression::SetOutputValue<br>CCaptureRenderTarget::EnsureResources<br>CCaptureRenderTarget::ProcessSetBuffers<br>CCaptureRenderTarget::~CCaptureRenderTarget<br>CChannel::CreateSharedResource<br>CChannel::SyncDesktopCaptureBits<br>CChannel::WindowNodeSetCompositionSurface<br>CChannel::~CChannel<br>CChannelTable::DestroyHandle</summary>CCompSwapChain::~CCompSwapChain<br>CCompiledEffectTemplate::SignalCompileCompletedEvent<br>CCompositionSurfaceInfo::~CCompositionSurfaceInfo<br>CComputeScribbleScheduler::CreateWakeupFence<br>CComputeScribbleScheduler::Initialize<br>CComputeScribbleScheduler::~CComputeScribbleScheduler<br>CConnection::~CConnection<br>CD3DDevice::CreateCompositionSwapChain<br>CD3DDevice::CreateLegacyRemotingSwapChain<br>CD3DDevice::CreateSharedFence<br>CD3DDevice::ShareToD3D12<br>CD3DDevice::~CD3DDevice<br>CDDisplayRenderTarget::~CDDisplayRenderTarget<br>CDisplayManager::~CDisplayManager<br>CDxHandleBitmapRealization::GetDDisplayResource<br>CDxHandleBitmapRealization::~CDxHandleBitmapRealization<br>CDxHandleYUVBitmapRealization::GetDDisplayResource<br>CDxHandleYUVBitmapRealization::~CDxHandleYUVBitmapRealization<br>CEffectCompilationService::~CEffectCompilationService<br>CEventResponse::~CEventResponse<br>CGDISectionBitmapRealization::Create<br>CGdiSpriteBitmap::ReleaseBitmapResources<br>CGlobalComposition::Channel_VisualCaptureBits<br>CGlobalComposition::Partition_DesktopCaptureBits<br>CGlobalComposition::Partition_Synchronize<br>CGlobalCompositionSurfaceInfo::CBindInfo::CreateAndAddSwapChainBuffers<br>CGlobalCompositionSurfaceInfo::CBindInfo::Initialize<br>CGlobalSurfaceManager::PostPresent<br>CGlobalSurfaceManager::~CGlobalSurfaceManager<br>CHolographicClient::~CHolographicClient<br>CHolographicExclusivePresentData::~CHolographicExclusivePresentData<br>CHolographicExclusiveView::CloseSurfaceHandles<br>CHolographicExclusiveView::DetachFromChannel<br>CHolographicExclusiveView::ProcessSetViewData<br>CHolographicFrameProcessor::~CHolographicFrameProcessor<br>CHolographicInteropTarget::~CHolographicInteropTarget<br>CHolographicInteropTexture::ReleaseResources<br>CHolographicManager::~CHolographicManager<br>CHolographicViewer::Dispose<br>CIndirectSwapchainRenderTarget::ProcessCreate<br>CKernelTransport::~CKernelTransport<br>CKstBase::~CKstBase<br>CLegacyRemotingSwapChain::~CLegacyRemotingSwapChain<br>CLegacyRenderTarget::~CLegacyRenderTarget<br>CManipulationManager::ClearWaitHandles<br>CManipulationManager::ShutDownManipulationThread<br>CMit::Stop<br>CMit::~CMit<br>CPartitionVerticalBlankScheduler::~CPartitionVerticalBlankScheduler<br>CRenderTargetManager::~CRenderTargetManager<br>CSectionBitmapRealization::~CSectionBitmapRealization<br>CSharedSectionBase::MapSharedMemory<br>CSurfaceManager::~CSurfaceManager<br>CVirtualMonitorCaptureRenderTarget::CreateTextures<br>CVisualCapture::~CVisualCapture<br>CaptureBitsResponse::~CaptureBitsResponse<br>CurrentProcessHasIncreasedPriorityPrivileges<br>DDisplayPrimaryBufferResources::~DDisplayPrimaryBufferResources<br>DDisplayTaskPoolResources::~DDisplayTaskPoolResources<br>FUN_1800bb639<br>FUN_180147d38<br>FUN_18017c3c4<br>FUN_18018a5eb<br>OpenDxBltEvent<br>__scrt_uninitialize_thread_safe_statics<br>std::_Destroy_range<std::allocator<CGlobalSurfaceManager::AdapterInfo>_><br>std::_Destroy_range<std::allocator<wil::unique_any_t<wil::details::unique_storage<wil::details::handle_null_resource_policy<int_(__cdecl*)(void*___ptr64),&int___cdecl_CloseHandle(void*___ptr64)>_>_>_>_><br>wil::details::lambda_call<<lambda_40e44a5d63de77d0b0d6917c6e57f0c5>_>::~lambda_call<<lambda_40e44a5d63de77d0b0d6917c6e57f0c5>_><br>wil::details::unique_storage<wil::details::handle_null_resource_policy<int_(__cdecl*)(void*___ptr64),&int___cdecl_CloseHandle(void*___ptr64)>_>::reset<br>wil::unique_any_t<wil::details::unique_storage<wil::details::handle_null_resource_policy<int_(__cdecl*)(void*___ptr64),&int___cdecl_CloseHandle(void*___ptr64)>_>_>::~unique_any_t<wil::details::unique_storage<wil::details::handle_null_resource_policy<int_(__cdecl*)(void*___ptr64),&int___cdecl_CloseHandle(void*___ptr64)>_>_></details>|
|paramcount|1|1|
|address|EXTERNAL:0000008e|EXTERNAL:0000008e|
|sig|BOOL __stdcall CloseHandle(HANDLE hObject)|BOOL __stdcall CloseHandle(HANDLE hObject)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|True|True|

### API-MS-WIN-CORE-HANDLE-L1-1-0.DLL::CloseHandle Calling Diff


```diff
--- API-MS-WIN-CORE-HANDLE-L1-1-0.DLL::CloseHandle calling
+++ API-MS-WIN-CORE-HANDLE-L1-1-0.DLL::CloseHandle calling
@@ -1,0 +2 @@
+CBaseExpression::CalculateValue
@@ -70,4 +71,4 @@
-FUN_1800a2575
-FUN_18014c388
-FUN_180175534
-FUN_1801890a3
+FUN_1800bb639
+FUN_180147d38
+FUN_18017c3c4
+FUN_18018a5eb
```


## API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::CreateEventW

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|refcount,calling|
|ratio|1.0|
|i_ratio|1.0|
|m_ratio|1.0|
|b_ratio|1.0|
|match_types|SymbolsHash,ExternalsName|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|name|CreateEventW|CreateEventW|
|fullname|API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::CreateEventW|API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::CreateEventW|
|`refcount`|18|19|
|length|0|0|
|called|||
|`calling`|<details><summary>Expand for full list:<br>CBaseExpression::SetOutputValue<br>CChannel::Initialize<br>CChannel::SyncDesktopCaptureBits<br>CChannelTable::AssignChannelEntry<br>CConnection::StartCompositionThread<br>CDisplayManager::GetOcclusionEvent<br>CDummyRemotingSwapChain::Initialize<br>CEffectCompilationService::Create<br>CGlobalMit::Create<br>CKernelTransport::Create<br>CManipulationManager::Initialize</summary>CRenderTargetManager::EnsureDxDisplayModeChangedEvent<br>CSurfaceManager::CreateTokenThread<br>CVisualCapture::EnqueueSetEvent<br>__scrt_initialize_thread_safe_statics</details>|<details><summary>Expand for full list:<br>CBaseExpression::CalculateValue<br>CBaseExpression::SetOutputValue<br>CChannel::Initialize<br>CChannel::SyncDesktopCaptureBits<br>CChannelTable::AssignChannelEntry<br>CConnection::StartCompositionThread<br>CDisplayManager::GetOcclusionEvent<br>CDummyRemotingSwapChain::Initialize<br>CEffectCompilationService::Create<br>CGlobalMit::Create<br>CKernelTransport::Create</summary>CManipulationManager::Initialize<br>CRenderTargetManager::EnsureDxDisplayModeChangedEvent<br>CSurfaceManager::CreateTokenThread<br>CVisualCapture::EnqueueSetEvent<br>__scrt_initialize_thread_safe_statics</details>|
|paramcount|4|4|
|address|EXTERNAL:00000067|EXTERNAL:00000067|
|sig|HANDLE __stdcall CreateEventW(LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPCWSTR lpName)|HANDLE __stdcall CreateEventW(LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPCWSTR lpName)|
|sym_type|Function|Function|
|sym_source|IMPORTED|IMPORTED|
|external|True|True|

### API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::CreateEventW Calling Diff


```diff
--- API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::CreateEventW calling
+++ API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::CreateEventW calling
@@ -0,0 +1 @@
+CBaseExpression::CalculateValue
```


## ResolveSharedMemoryBuffer

### Match Info



|Key|dwmcore-10.0.22621.3527.dll - dwmcore-10.0.22621.3593.dll|
| :---: | :---: |
|diff_type|name,fullname,refcount,length,sig,address|
|ratio|1.0|
|i_ratio|0.77|
|m_ratio|0.99|
|b_ratio|0.85|
|match_types|StructuralGraphExactHash|

### Function Meta Diff



|Key|dwmcore-10.0.22621.3527.dll|dwmcore-10.0.22621.3593.dll|
| :---: | :---: | :---: |
|`name`|ResolveSharedMemoryBuffer|ResolveSharedMemoryBufferOld|
|`fullname`|CPrimitiveGroup::ResolveSharedMemoryBuffer|CPrimitiveGroup::ResolveSharedMemoryBufferOld|
|`refcount`|3|2|
|`length`|715|702|
|called|CPrimitiveGroup::BuildHeatMap<br>CPrimitiveGroup::ValidateBatches<br>CSharedSectionBase::ResolveAllocation<br>ReleaseInterface<ID2D1Geometry>|CPrimitiveGroup::BuildHeatMap<br>CPrimitiveGroup::ValidateBatches<br>CSharedSectionBase::ResolveAllocation<br>ReleaseInterface<ID2D1Geometry>|
|calling|CPrimitiveGroup::ProcessAddPrimitives|CPrimitiveGroup::ProcessAddPrimitives|
|paramcount|1|1|
|`address`|1800a7148|180112950|
|`sig`|void __thiscall ResolveSharedMemoryBuffer(CPrimitiveGroup * this)|void __thiscall ResolveSharedMemoryBufferOld(CPrimitiveGroup * this)|
|sym_type|Function|Function|
|sym_source|IMPORTED|ANALYSIS|
|external|False|False|



<sub>Generated with `ghidriff` version: 1.0.0 on 2026-07-27T23:22:05</sub>