{"uuid": "48d5f7a6-f164-4bcd-a758-6383d57c1fe0", "vulnerability_lookup_origin": "1a89b78e-f703-45f3-bb86-59eb712668bd", "author": "9f56dd64-161d-43a6-b9c3-555944290a09", "vulnerability": "CVE-2026-44815", "type": "seen", "source": "https://gist.github.com/clearbluejar/29f9919b8658580fa5b9b5c42d054b99", "content": "# CVE-2026-44815 Windows DHCP Client\n\n# TOC\n\n* [Visual Chart Diff](#visual-chart-diff)\n* [Metadata](#metadata)\n\t* [Ghidra Diff Engine](#ghidra-diff-engine)\n\t\t* [Command Line](#command-line)\n\t* [Binary Metadata Diff](#binary-metadata-diff)\n\t* [Program Options](#program-options)\n\t* [Diff Stats](#diff-stats)\n\t* [Strings](#strings)\n* [Deleted](#deleted)\n* [Added](#added)\n\t* [Feature_2263349562__private_IsEnabledDeviceUsageNoInline](#feature_2263349562__private_isenableddeviceusagenoinline)\n\t* [Feature_3211771192__private_IsEnabledDeviceUsageNoInline](#feature_3211771192__private_isenableddeviceusagenoinline)\n\t* [Feature_341032248__private_IsEnabledDeviceUsageNoInline](#feature_341032248__private_isenableddeviceusagenoinline)\n\t* [Feature_849856826__private_IsEnabledDeviceUsageNoInline](#feature_849856826__private_isenableddeviceusagenoinline)\n* [Modified](#modified)\n\t* [RenewIpAddressLeaseEx](#renewipaddressleaseex)\n\t* [LeaseIpAddressEx](#leaseipaddressex)\n\t* [GetOriginalSubnetMask](#getoriginalsubnetmask)\n\t* [DhcpTraceVelocityData](#dhcptracevelocitydata)\n\t* [DhcpInitializeGlobalVelocityData](#dhcpinitializeglobalvelocitydata)\n* [Modified (No Code Changes)](#modified-no-code-changes)\n\t* [WS2_32.DLL::Ordinal_14](#ws2_32dllordinal_14)\n\t* [WPP_SF_L](#wpp_sf_l)\n\t* [WPP_SF_DJ](#wpp_sf_dj)\n\t* [wil_details_IsEnabledFallback](#wil_details_isenabledfallback)\n\n# Visual Chart Diff\n\n\n\n```mermaid\n\nflowchart LR\n\nRenewIpAddressLeaseEx-7-old&lt;--Match 82%--&gt;RenewIpAddressLeaseEx-7-new\nLeaseIpAddressEx-8-old&lt;--Match 91%--&gt;LeaseIpAddressEx-8-new\nGetOriginalSubnetMask-2-old&lt;--Match 48%--&gt;GetOriginalSubnetMask-2-new\nDhcpTraceVelocityData-0-old&lt;--Match 88%--&gt;DhcpTraceVelocityData-0-new\nDhcpInitializeGlobalVelocityData-0-old&lt;--Match 89%--&gt;DhcpInitializeGlobalVelocityData-0-new\n\nsubgraph dhcpcore.dll.x64.10.0.26100.8655\n    RenewIpAddressLeaseEx-7-new\nLeaseIpAddressEx-8-new\nGetOriginalSubnetMask-2-new\nDhcpTraceVelocityData-0-new\nDhcpInitializeGlobalVelocityData-0-new\n    subgraph Added\ndirection LR\nFeature_2263349562__private_IsEnabledDeviceUsageNoInline\n    Feature_3211771192__private_IsEnabledDeviceUsageNoInline\n    Feature_341032248__private_IsEnabledDeviceUsageNoInline\n    Feature_849856826__private_IsEnabledDeviceUsageNoInline\nend\nend\n\nsubgraph dhcpcore.dll.x64.10.0.26100.8521\n    RenewIpAddressLeaseEx-7-old\nLeaseIpAddressEx-8-old\nGetOriginalSubnetMask-2-old\nDhcpTraceVelocityData-0-old\nDhcpInitializeGlobalVelocityData-0-old\n    \nend\n\n```\n\n\n```mermaid\npie showData\n    title Function Matches - 99.8555%\n\"unmatched_funcs_len\" : 4\n\"matched_funcs_len\" : 2764\n```\n\n\n\n```mermaid\npie showData\n    title Matched Function Similarity - 99.6382%\n\"matched_funcs_with_code_changes_len\" : 5\n\"matched_funcs_with_non_code_changes_len\" : 5\n\"matched_funcs_no_changes_len\" : 2754\n```\n\n# Metadata\n\n## Ghidra Diff Engine\n\n### Command Line\n\n#### Captured Command Line\n\n\n```\nghidriff --project-location /tmp/ws2-dhcp-backup/ghidra-projects --project-name ws2_dhcp_backup --symbols-path /tmp/ws2-dhcp-backup/symbols --gzfs-path gzfs --log-level INFO --file-log-level INFO --log-path ghidriff.log --min-func-len 10 --gdt ['/tmp/ws2-dhcp-backup/windows_vs12_64.gdt'] --bsim --max-ram-percent 60.0 --max-section-funcs 200 --md-title CVE-2026-44815 Windows DHCP Client dhcpcore.dll.x64.10.0.26100.8521 dhcpcore.dll.x64.10.0.26100.8655\n```\n\n\n#### Verbose Args\n\n\n\n\n```\n--old ['/tmp/ws2-dhcp-backup/dhcpcore.dll.x64.10.0.26100.8521'] --new [['/tmp/ws2-dhcp-backup/dhcpcore.dll.x64.10.0.26100.8655']] --engine VersionTrackingDiff --output-path /tmp/ws2-dhcp-backup/ghidriff-output --summary False --project-location /tmp/ws2-dhcp-backup/ghidra-projects --project-name ws2_dhcp_backup --symbols-path /tmp/ws2-dhcp-backup/symbols --gzfs-path gzfs --base-address None --program-options None --threaded False --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 ['/tmp/ws2-dhcp-backup/windows_vs12_64.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 CVE-2026-44815 Windows DHCP Client\n```\n\n\n\n\n#### Download Original PEs\n\n\n```\nwget https://msdl.microsoft.com/download/symbols/dhcpcore.dll/6121CEE175000/dhcpcore.dll -O dhcpcore.dll.x64.10.0.26100.8521\nwget https://msdl.microsoft.com/download/symbols/dhcpcore.dll/652F0FA475000/dhcpcore.dll -O dhcpcore.dll.x64.10.0.26100.8655\n```\n\n\n## Binary Metadata Diff\n\n\n```diff\n--- dhcpcore.dll.x64.10.0.26100.8521 Meta\n+++ dhcpcore.dll.x64.10.0.26100.8655 Meta\n@@ -1,44 +1,44 @@\n-Program Name: dhcpcore.dll.x64.10.0.26100.8521\n+Program Name: dhcpcore.dll.x64.10.0.26100.8655\n Language ID: x86:LE:64:default (4.7)\n Compiler ID: windows\n Processor: x86\n Endian: Little\n Address Size: 64\n Minimum Address: 180000000\n Maximum Address: ff0000184f\n-# of Bytes: 481888\n+# of Bytes: 481952\n # of Memory Blocks: 11\n-# of Instructions: 76851\n-# of Defined Data: 5073\n-# of Functions: 1382\n-# of Symbols: 14126\n+# of Instructions: 76995\n+# of Defined Data: 5104\n+# of Functions: 1386\n+# of Symbols: 14163\n # of Data Types: 549\n # of Data Type Categories: 43\n Analyzed: true\n Compiler: visualstudio:unknown\n Created With Ghidra Version: 12.1.2\n Date Created: Fri Aug 07 15:35:50 UTC 2026\n Executable Format: Portable Executable (PE)\n-Executable Location: /tmp/ws2-dhcp-backup/dhcpcore.dll.x64.10.0.26100.8521\n-Executable MD5: b30007e4e6b140cb9bb13b26cba312c0\n-Executable SHA256: c0fc36971302683b7da6ba62a555a0bb7f1e28db4dfbe45424c11a69fa6abd99\n-FSRL: file:///tmp/ws2-dhcp-backup/dhcpcore.dll.x64.10.0.26100.8521?MD5=b30007e4e6b140cb9bb13b26cba312c0\n+Executable Location: /tmp/ws2-dhcp-backup/dhcpcore.dll.x64.10.0.26100.8655\n+Executable MD5: 0b371e98b37819f9949439f0d4d6d712\n+Executable SHA256: d600b0f01f3c9a5877c2171af011f0f63216606acf4ae367827f7f2c3c6655e4\n+FSRL: file:///tmp/ws2-dhcp-backup/dhcpcore.dll.x64.10.0.26100.8655?MD5=0b371e98b37819f9949439f0d4d6d712\n PDB Age: 1\n PDB File: dhcpcore.pdb\n-PDB GUID: 4aaedddc-450a-1e66-eebb-0a9635c43f2e\n+PDB GUID: f930f91f-bbb8-1f1b-a7a6-d1821f8f9ed9\n PDB Loaded: true\n PDB Version: RSDS\n PE Property[CompanyName]: Microsoft Corporation\n PE Property[FileDescription]: DHCP Client Service\n-PE Property[FileVersion]: 10.0.26100.8521 (WinBuild.160101.0800)\n+PE Property[FileVersion]: 10.0.26100.8655 (WinBuild.160101.0800)\n PE Property[InternalName]: dhcpcore.dll\n PE Property[LegalCopyright]: \u00a9 Microsoft Corporation. All rights reserved.\n PE Property[OriginalFilename]: dhcpcore.dll\n PE Property[ProductName]: Microsoft\u00ae Windows\u00ae Operating System\n-PE Property[ProductVersion]: 10.0.26100.8521\n+PE Property[ProductVersion]: 10.0.26100.8655\n PE Property[Translation]: 4b00409\n Preferred Root Namespace Category: \n RTTI Found: false\n Relocatable: true\n SectionAlignment: 4096\n Should Ask To Analyze: false\n\n```\n\n\n## Program Options\n\n\n\n\nGhidra dhcpcore.dll.x64.10.0.26100.8521 Decompiler Options\n\n\n|Decompiler Option|Value|\n| :---: | :---: |\n|Prototype Evaluation|__fastcall|\n\n\n\n\n\n\nGhidra dhcpcore.dll.x64.10.0.26100.8521 Specification extensions Options\n\n\n|Specification extensions Option|Value|\n| :---: | :---: |\n|FormatVersion|0|\n|VersionCounter|0|\n\n\n\n\n\n\nGhidra dhcpcore.dll.x64.10.0.26100.8521 Analyzers Options\n\n\n|Analyzers Option|Value|\n| :---: | :---: |\n|ASCII Strings|true|\n|ASCII Strings.Create Strings Containing Existing Strings|true|\n|ASCII Strings.Create Strings Containing References|true|\n|ASCII Strings.Force Model Reload|false|\n|ASCII Strings.Minimum String Length|LEN_5|\n|ASCII Strings.Model File|StringModel.sng|\n|ASCII Strings.Require Null Termination for String|true|\n|ASCII Strings.Search Only in Accessible Memory Blocks|true|\n|ASCII Strings.String Start Alignment|ALIGN_1|\n|ASCII Strings.String end alignment|4|\n|Aggressive Instruction Finder|false|\n|Aggressive Instruction Finder.Create Analysis Bookmarks|true|\n|Apply Data Archives|true|\n|Apply Data Archives.Archive Chooser|[Auto-Detect]|\n|Apply Data Archives.Create Analysis Bookmarks|true|\n|Apply Data Archives.GDT User File Archive Path|None|\n|Apply Data Archives.User Project Archive Path|None|\n|Call Convention ID|true|\n|Call Convention ID.Analysis Decompiler Timeout (sec)|60|\n|Call-Fixup Installer|true|\n|Condense Filler Bytes|false|\n|Condense Filler Bytes.Filler Value|Auto|\n|Condense Filler Bytes.Minimum number of sequential bytes|1|\n|Create Address Tables|true|\n|Create Address Tables.Allow Offcut References|false|\n|Create Address Tables.Auto Label Table|false|\n|Create Address Tables.Create Analysis Bookmarks|true|\n|Create Address Tables.Maxmimum Pointer Distance|16777215|\n|Create Address Tables.Minimum Pointer Address|4132|\n|Create Address Tables.Minimum Table Size|2|\n|Create Address Tables.Pointer Alignment|1|\n|Create Address Tables.Relocation Table Guide|true|\n|Create Address Tables.Table Alignment|4|\n|Data Reference|true|\n|Data Reference.Address Table Alignment|1|\n|Data Reference.Address Table Minimum Size|2|\n|Data Reference.Align End of Strings|false|\n|Data Reference.Ascii String References|true|\n|Data Reference.Create Address Tables|true|\n|Data Reference.Minimum String Length|5|\n|Data Reference.References to Pointers|true|\n|Data Reference.Relocation Table Guide|true|\n|Data Reference.Respect Execute Flag|true|\n|Data Reference.Subroutine References|true|\n|Data Reference.Switch Table References|false|\n|Data Reference.Unicode String References|true|\n|Decompiler Parameter ID|true|\n|Decompiler Parameter ID.Analysis Clear Level|ANALYSIS|\n|Decompiler Parameter ID.Analysis Decompiler Timeout (sec)|60|\n|Decompiler Parameter ID.Commit Data Types|true|\n|Decompiler Parameter ID.Commit Void Return Values|false|\n|Decompiler Parameter ID.Prototype Evaluation|__fastcall|\n|Decompiler Switch Analysis|true|\n|Decompiler Switch Analysis.Analysis Decompiler Timeout (sec)|60|\n|Demangler Microsoft|true|\n|Demangler Microsoft.msdApplyOptions|{\n\tinterpretation: FUNCTION_IF_EXISTS,\n\tapplyCallingConvention: true,\n\tapplySignature: true,\n\tdemangleOnlyKnownPatterns: true,\n\tdoDisassembly: true\n}|\n|Demangler Microsoft.msdOutputOptions|ghidra.app.util.demangler.microsoft.options.MsdOutputOption@9e5b|\n|Disassemble Entry Points|true|\n|Disassemble Entry Points.Respect Execute Flag|true|\n|Embedded Media|true|\n|Embedded Media.Create Analysis Bookmarks|true|\n|External Entry References|true|\n|Function ID|true|\n|Function ID.Always Apply FID Labels|false|\n|Function ID.Create Analysis Bookmarks|true|\n|Function ID.Instruction Count Threshold|14.6|\n|Function ID.Multiple Match Threshold|30.0|\n|Function Start Search|true|\n|Function Start Search.Bookmark Functions|false|\n|Function Start Search.Search Data Blocks|false|\n|Non-Returning Functions - Discovered|true|\n|Non-Returning Functions - Discovered.Create Analysis Bookmarks|true|\n|Non-Returning Functions - Discovered.Function Non-return Threshold|3|\n|Non-Returning Functions - Discovered.Repair Flow Damage|true|\n|Non-Returning Functions - Known|true|\n|Non-Returning Functions - Known.Create Analysis Bookmarks|true|\n|PDB MSDIA|false|\n|PDB MSDIA.Search untrusted symbol servers|false|\n|PDB Universal|true|\n|PDB Universal.Import Source Line Info|true|\n|PDB Universal.Search untrusted symbol servers|false|\n|Reference|true|\n|Reference.Address Table Alignment|1|\n|Reference.Address Table Minimum Size|2|\n|Reference.Align End of Strings|false|\n|Reference.Ascii String References|true|\n|Reference.Create Address Tables|true|\n|Reference.Minimum String Length|5|\n|Reference.References to Pointers|true|\n|Reference.Relocation Table Guide|true|\n|Reference.Respect Execute Flag|true|\n|Reference.Subroutine References|true|\n|Reference.Switch Table References|false|\n|Reference.Unicode String References|true|\n|Scalar Operand References|true|\n|Scalar Operand References.Relocation Table Guide|true|\n|Shared Return Calls|true|\n|Shared Return Calls.Allow Conditional Jumps|false|\n|Shared Return Calls.Assume Contiguous Functions Only|true|\n|Stack|true|\n|Stack.Create Local Variables|true|\n|Stack.Create Param Variables|false|\n|Stack.Max Threads|2|\n|Subroutine References|true|\n|Subroutine References.Create Thunks Early|true|\n|Variadic Function Signature Override|false|\n|Variadic Function Signature Override.Create Analysis Bookmarks|false|\n|Windows x86 PE Exception Handling|true|\n|Windows x86 PE RTTI Analyzer|true|\n|Windows x86 Thread Environment Block (TEB) Analyzer|true|\n|Windows x86 Thread Environment Block (TEB) Analyzer.Starting Address of the TEB||\n|Windows x86 Thread Environment Block (TEB) Analyzer.Windows OS Version|Windows 7|\n|WindowsPE x86 Propagate External Parameters|false|\n|WindowsResourceReference|true|\n|WindowsResourceReference.Create Analysis Bookmarks|true|\n|x86 Constant Reference Analyzer|true|\n|x86 Constant Reference Analyzer.Create Data from pointer|false|\n|x86 Constant Reference Analyzer.Function parameter/return Pointer analysis|true|\n|x86 Constant Reference Analyzer.Max Threads|2|\n|x86 Constant Reference Analyzer.Min absolute reference|4|\n|x86 Constant Reference Analyzer.Require pointer param data type|false|\n|x86 Constant Reference Analyzer.Speculative reference max|256|\n|x86 Constant Reference Analyzer.Speculative reference min|1024|\n|x86 Constant Reference Analyzer.Stored Value Pointer analysis|true|\n|x86 Constant Reference Analyzer.Trust values read from writable memory|true|\n\n\n\n\n\n\nGhidra dhcpcore.dll.x64.10.0.26100.8655 Decompiler Options\n\n\n|Decompiler Option|Value|\n| :---: | :---: |\n|Prototype Evaluation|__fastcall|\n\n\n\n\n\n\nGhidra dhcpcore.dll.x64.10.0.26100.8655 Specification extensions Options\n\n\n|Specification extensions Option|Value|\n| :---: | :---: |\n|FormatVersion|0|\n|VersionCounter|0|\n\n\n\n\n\n\nGhidra dhcpcore.dll.x64.10.0.26100.8655 Analyzers Options\n\n\n|Analyzers Option|Value|\n| :---: | :---: |\n|ASCII Strings|true|\n|ASCII Strings.Create Strings Containing Existing Strings|true|\n|ASCII Strings.Create Strings Containing References|true|\n|ASCII Strings.Force Model Reload|false|\n|ASCII Strings.Minimum String Length|LEN_5|\n|ASCII Strings.Model File|StringModel.sng|\n|ASCII Strings.Require Null Termination for String|true|\n|ASCII Strings.Search Only in Accessible Memory Blocks|true|\n|ASCII Strings.String Start Alignment|ALIGN_1|\n|ASCII Strings.String end alignment|4|\n|Aggressive Instruction Finder|false|\n|Aggressive Instruction Finder.Create Analysis Bookmarks|true|\n|Apply Data Archives|true|\n|Apply Data Archives.Archive Chooser|[Auto-Detect]|\n|Apply Data Archives.Create Analysis Bookmarks|true|\n|Apply Data Archives.GDT User File Archive Path|None|\n|Apply Data Archives.User Project Archive Path|None|\n|Call Convention ID|true|\n|Call Convention ID.Analysis Decompiler Timeout (sec)|60|\n|Call-Fixup Installer|true|\n|Condense Filler Bytes|false|\n|Condense Filler Bytes.Filler Value|Auto|\n|Condense Filler Bytes.Minimum number of sequential bytes|1|\n|Create Address Tables|true|\n|Create Address Tables.Allow Offcut References|false|\n|Create Address Tables.Auto Label Table|false|\n|Create Address Tables.Create Analysis Bookmarks|true|\n|Create Address Tables.Maxmimum Pointer Distance|16777215|\n|Create Address Tables.Minimum Pointer Address|4132|\n|Create Address Tables.Minimum Table Size|2|\n|Create Address Tables.Pointer Alignment|1|\n|Create Address Tables.Relocation Table Guide|true|\n|Create Address Tables.Table Alignment|4|\n|Data Reference|true|\n|Data Reference.Address Table Alignment|1|\n|Data Reference.Address Table Minimum Size|2|\n|Data Reference.Align End of Strings|false|\n|Data Reference.Ascii String References|true|\n|Data Reference.Create Address Tables|true|\n|Data Reference.Minimum String Length|5|\n|Data Reference.References to Pointers|true|\n|Data Reference.Relocation Table Guide|true|\n|Data Reference.Respect Execute Flag|true|\n|Data Reference.Subroutine References|true|\n|Data Reference.Switch Table References|false|\n|Data Reference.Unicode String References|true|\n|Decompiler Parameter ID|true|\n|Decompiler Parameter ID.Analysis Clear Level|ANALYSIS|\n|Decompiler Parameter ID.Analysis Decompiler Timeout (sec)|60|\n|Decompiler Parameter ID.Commit Data Types|true|\n|Decompiler Parameter ID.Commit Void Return Values|false|\n|Decompiler Parameter ID.Prototype Evaluation|__fastcall|\n|Decompiler Switch Analysis|true|\n|Decompiler Switch Analysis.Analysis Decompiler Timeout (sec)|60|\n|Demangler Microsoft|true|\n|Demangler Microsoft.msdApplyOptions|{\n\tinterpretation: FUNCTION_IF_EXISTS,\n\tapplyCallingConvention: true,\n\tapplySignature: true,\n\tdemangleOnlyKnownPatterns: true,\n\tdoDisassembly: true\n}|\n|Demangler Microsoft.msdOutputOptions|ghidra.app.util.demangler.microsoft.options.MsdOutputOption@9e5b|\n|Disassemble Entry Points|true|\n|Disassemble Entry Points.Respect Execute Flag|true|\n|Embedded Media|true|\n|Embedded Media.Create Analysis Bookmarks|true|\n|External Entry References|true|\n|Function ID|true|\n|Function ID.Always Apply FID Labels|false|\n|Function ID.Create Analysis Bookmarks|true|\n|Function ID.Instruction Count Threshold|14.6|\n|Function ID.Multiple Match Threshold|30.0|\n|Function Start Search|true|\n|Function Start Search.Bookmark Functions|false|\n|Function Start Search.Search Data Blocks|false|\n|Non-Returning Functions - Discovered|true|\n|Non-Returning Functions - Discovered.Create Analysis Bookmarks|true|\n|Non-Returning Functions - Discovered.Function Non-return Threshold|3|\n|Non-Returning Functions - Discovered.Repair Flow Damage|true|\n|Non-Returning Functions - Known|true|\n|Non-Returning Functions - Known.Create Analysis Bookmarks|true|\n|PDB MSDIA|false|\n|PDB MSDIA.Search untrusted symbol servers|false|\n|PDB Universal|true|\n|PDB Universal.Import Source Line Info|true|\n|PDB Universal.Search untrusted symbol servers|false|\n|Reference|true|\n|Reference.Address Table Alignment|1|\n|Reference.Address Table Minimum Size|2|\n|Reference.Align End of Strings|false|\n|Reference.Ascii String References|true|\n|Reference.Create Address Tables|true|\n|Reference.Minimum String Length|5|\n|Reference.References to Pointers|true|\n|Reference.Relocation Table Guide|true|\n|Reference.Respect Execute Flag|true|\n|Reference.Subroutine References|true|\n|Reference.Switch Table References|false|\n|Reference.Unicode String References|true|\n|Scalar Operand References|true|\n|Scalar Operand References.Relocation Table Guide|true|\n|Shared Return Calls|true|\n|Shared Return Calls.Allow Conditional Jumps|false|\n|Shared Return Calls.Assume Contiguous Functions Only|true|\n|Stack|true|\n|Stack.Create Local Variables|true|\n|Stack.Create Param Variables|false|\n|Stack.Max Threads|2|\n|Subroutine References|true|\n|Subroutine References.Create Thunks Early|true|\n|Variadic Function Signature Override|false|\n|Variadic Function Signature Override.Create Analysis Bookmarks|false|\n|Windows x86 PE Exception Handling|true|\n|Windows x86 PE RTTI Analyzer|true|\n|Windows x86 Thread Environment Block (TEB) Analyzer|true|\n|Windows x86 Thread Environment Block (TEB) Analyzer.Starting Address of the TEB||\n|Windows x86 Thread Environment Block (TEB) Analyzer.Windows OS Version|Windows 7|\n|WindowsPE x86 Propagate External Parameters|false|\n|WindowsResourceReference|true|\n|WindowsResourceReference.Create Analysis Bookmarks|true|\n|x86 Constant Reference Analyzer|true|\n|x86 Constant Reference Analyzer.Create Data from pointer|false|\n|x86 Constant Reference Analyzer.Function parameter/return Pointer analysis|true|\n|x86 Constant Reference Analyzer.Max Threads|2|\n|x86 Constant Reference Analyzer.Min absolute reference|4|\n|x86 Constant Reference Analyzer.Require pointer param data type|false|\n|x86 Constant Reference Analyzer.Speculative reference max|256|\n|x86 Constant Reference Analyzer.Speculative reference min|1024|\n|x86 Constant Reference Analyzer.Stored Value Pointer analysis|true|\n|x86 Constant Reference Analyzer.Trust values read from writable memory|true|\n\n\n\n## Diff Stats\n\n\n\n|Stat|Value|\n| :---: | :---: |\n|added_funcs_len|4|\n|deleted_funcs_len|0|\n|modified_funcs_len|10|\n|added_symbols_len|21|\n|deleted_symbols_len|2|\n|diff_time|3.8734896183013916|\n|deleted_strings_len|0|\n|added_strings_len|0|\n|match_types|Counter({'SymbolsHash': 1379, 'ExternalsName': 255, 'ExactBytesFunctionHasher': 2})|\n|items_to_process|37|\n|diff_types|Counter({'address': 7, 'refcount': 5, 'code': 5, 'length': 5, 'sig': 2, 'calling': 1, 'called': 1})|\n|unmatched_funcs_len|4|\n|total_funcs_len|2768|\n|matched_funcs_len|2764|\n|matched_funcs_with_code_changes_len|5|\n|matched_funcs_with_non_code_changes_len|5|\n|matched_funcs_no_changes_len|2754|\n|match_func_similarity_percent|99.6382%|\n|func_match_overall_percent|99.8555%|\n|first_matches|Counter({'SymbolsHash': 1379, 'ExactBytesFunctionHasher': 2})|\n\n\n\n```mermaid\npie showData\n    title All Matches\n\"SymbolsHash\" : 1379\n\"ExternalsName\" : 255\n\"ExactBytesFunctionHasher\" : 2\n```\n\n\n\n```mermaid\npie showData\n    title First Matches\n\"SymbolsHash\" : 1379\n\"ExactBytesFunctionHasher\" : 2\n```\n\n\n\n```mermaid\npie showData\n    title Diff Stats\n\"added_funcs_len\" : 4\n\"deleted_funcs_len\" : 0\n\"modified_funcs_len\" : 10\n```\n\n\n\n```mermaid\npie showData\n    title Symbols\n\"added_symbols_len\" : 21\n\"deleted_symbols_len\" : 2\n```\n\n## Strings\n\n\n*No string differences found*\n\n# Deleted\n\n# Added\n\n## Feature_2263349562__private_IsEnabledDeviceUsageNoInline\n\n### Function Meta\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: |\n|name|Feature_2263349562__private_IsEnabledDeviceUsageNoInline|\n|fullname|Feature_2263349562__private_IsEnabledDeviceUsageNoInline|\n|refcount|1|\n|length|51|\n|called|wil_details_IsEnabledFallback|\n|calling|DhcpInitializeGlobalVelocityData|\n|paramcount|0|\n|address|180047f38|\n|sig|uint __fastcall Feature_2263349562__private_IsEnabledDeviceUsageNoInline(void)|\n|sym_type|Function|\n|sym_source|IMPORTED|\n|external|False|\n\n\n```diff\n--- Feature_2263349562__private_IsEnabledDeviceUsageNoInline\n+++ Feature_2263349562__private_IsEnabledDeviceUsageNoInline\n@@ -0,0 +1,15 @@\n+\n+uint Feature_2263349562__private_IsEnabledDeviceUsageNoInline(void)\n+\n+{\n+  uint uVar1;\n+  ulonglong local_res8;\n+  \n+  local_res8 = (ulonglong)Feature_2263349562__private_featureState;\n+  if ((Feature_2263349562__private_featureState &amp; 0x10) != 0) {\n+    return Feature_2263349562__private_featureState &amp; 1;\n+  }\n+  uVar1 = wil_details_IsEnabledFallback(local_res8,3,&amp;Feature_2263349562__private_descriptor);\n+  return uVar1;\n+}\n+\n\n```\n\n\n## Feature_3211771192__private_IsEnabledDeviceUsageNoInline\n\n### Function Meta\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: |\n|name|Feature_3211771192__private_IsEnabledDeviceUsageNoInline|\n|fullname|Feature_3211771192__private_IsEnabledDeviceUsageNoInline|\n|refcount|1|\n|length|51|\n|called|wil_details_IsEnabledFallback|\n|calling|DhcpInitializeGlobalVelocityData|\n|paramcount|0|\n|address|180047f7c|\n|sig|uint __fastcall Feature_3211771192__private_IsEnabledDeviceUsageNoInline(void)|\n|sym_type|Function|\n|sym_source|IMPORTED|\n|external|False|\n\n\n```diff\n--- Feature_3211771192__private_IsEnabledDeviceUsageNoInline\n+++ Feature_3211771192__private_IsEnabledDeviceUsageNoInline\n@@ -0,0 +1,15 @@\n+\n+uint Feature_3211771192__private_IsEnabledDeviceUsageNoInline(void)\n+\n+{\n+  uint uVar1;\n+  ulonglong local_res8;\n+  \n+  local_res8 = (ulonglong)Feature_3211771192__private_featureState;\n+  if ((Feature_3211771192__private_featureState &amp; 0x10) != 0) {\n+    return Feature_3211771192__private_featureState &amp; 1;\n+  }\n+  uVar1 = wil_details_IsEnabledFallback(local_res8,3,&amp;Feature_3211771192__private_descriptor);\n+  return uVar1;\n+}\n+\n\n```\n\n\n## Feature_341032248__private_IsEnabledDeviceUsageNoInline\n\n### Function Meta\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: |\n|name|Feature_341032248__private_IsEnabledDeviceUsageNoInline|\n|fullname|Feature_341032248__private_IsEnabledDeviceUsageNoInline|\n|refcount|1|\n|length|51|\n|called|wil_details_IsEnabledFallback|\n|calling|DhcpInitializeGlobalVelocityData|\n|paramcount|0|\n|address|180047fc0|\n|sig|uint __fastcall Feature_341032248__private_IsEnabledDeviceUsageNoInline(void)|\n|sym_type|Function|\n|sym_source|IMPORTED|\n|external|False|\n\n\n```diff\n--- Feature_341032248__private_IsEnabledDeviceUsageNoInline\n+++ Feature_341032248__private_IsEnabledDeviceUsageNoInline\n@@ -0,0 +1,15 @@\n+\n+uint Feature_341032248__private_IsEnabledDeviceUsageNoInline(void)\n+\n+{\n+  uint uVar1;\n+  ulonglong local_res8;\n+  \n+  local_res8 = (ulonglong)Feature_341032248__private_featureState;\n+  if ((Feature_341032248__private_featureState &amp; 0x10) != 0) {\n+    return Feature_341032248__private_featureState &amp; 1;\n+  }\n+  uVar1 = wil_details_IsEnabledFallback(local_res8,3,&amp;Feature_341032248__private_descriptor);\n+  return uVar1;\n+}\n+\n\n```\n\n\n## Feature_849856826__private_IsEnabledDeviceUsageNoInline\n\n### Function Meta\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: |\n|name|Feature_849856826__private_IsEnabledDeviceUsageNoInline|\n|fullname|Feature_849856826__private_IsEnabledDeviceUsageNoInline|\n|refcount|1|\n|length|51|\n|called|wil_details_IsEnabledFallback|\n|calling|DhcpInitializeGlobalVelocityData|\n|paramcount|0|\n|address|18004819c|\n|sig|uint __fastcall Feature_849856826__private_IsEnabledDeviceUsageNoInline(void)|\n|sym_type|Function|\n|sym_source|IMPORTED|\n|external|False|\n\n\n```diff\n--- Feature_849856826__private_IsEnabledDeviceUsageNoInline\n+++ Feature_849856826__private_IsEnabledDeviceUsageNoInline\n@@ -0,0 +1,15 @@\n+\n+uint Feature_849856826__private_IsEnabledDeviceUsageNoInline(void)\n+\n+{\n+  uint uVar1;\n+  ulonglong local_res8;\n+  \n+  local_res8 = (ulonglong)Feature_849856826__private_featureState;\n+  if ((Feature_849856826__private_featureState &amp; 0x10) != 0) {\n+    return Feature_849856826__private_featureState &amp; 1;\n+  }\n+  uVar1 = wil_details_IsEnabledFallback(local_res8,3,&amp;Feature_849856826__private_descriptor);\n+  return uVar1;\n+}\n+\n\n```\n\n\n# Modified\n\n\n*Modified functions contain code changes*\n## RenewIpAddressLeaseEx\n\n### Match Info\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521 - dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: |\n|diff_type|code,length,sig,address|\n|ratio|0.95|\n|i_ratio|0.84|\n|m_ratio|1.0|\n|b_ratio|0.82|\n|match_types|SymbolsHash|\n\n### Function Meta Diff\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521|dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: | :---: |\n|name|RenewIpAddressLeaseEx|RenewIpAddressLeaseEx|\n|fullname|RenewIpAddressLeaseEx|RenewIpAddressLeaseEx|\n|refcount|3|3|\n|`length`|3143|3179|\n|called|\nExpand for full list:API-MS-WIN-CORE-SYSINFO-L1-1-0.DLL::GetTickCount64API-MS-WIN-CRT-TIME-L1-1-0.DLL::_time64CreateDhcpContextCreateDhcpContextForNewLeaseDhcpCleanParsedOptionsDhcpCommonInitDhcpDestroyContextExDhcpMakeClientIdGetHardwareAddressForIpAddressGetSeedInitializeDhcpSocketRenewLeaseWPP_SF_WPP_SF_DWPP_SF_LWS2_32.DLL::Ordinal_11WS2_32.DLL::Ordinal_14WS2_32.DLL::Ordinal_8__security_check_cookiememcpymemset|\nExpand for full list:API-MS-WIN-CORE-SYSINFO-L1-1-0.DLL::GetTickCount64API-MS-WIN-CRT-TIME-L1-1-0.DLL::_time64CreateDhcpContextCreateDhcpContextForNewLeaseDhcpCleanParsedOptionsDhcpCommonInitDhcpDestroyContextExDhcpMakeClientIdGetHardwareAddressForIpAddressGetSeedInitializeDhcpSocketRenewLeaseWPP_SF_WPP_SF_DWPP_SF_LWS2_32.DLL::Ordinal_11WS2_32.DLL::Ordinal_14WS2_32.DLL::Ordinal_8__security_check_cookiememcpymemset|\n|calling|RpcSrvRenewIpAddressLeaseExRpcSrvRenewIpAddressLeaseEx_New|RpcSrvRenewIpAddressLeaseExRpcSrvRenewIpAddressLeaseEx_New|\n|paramcount|7|7|\n|`address`|1800404dc|1800405c8|\n|`sig`|ulonglong __fastcall RenewIpAddressLeaseEx(uint param_1, longlong param_2, uint * param_3, undefined8 param_4, undefined8 * param_5, undefined8 * param_6, int param_7)|ulonglong __fastcall RenewIpAddressLeaseEx(uint param_1, longlong param_2, uint * param_3, undefined8 param_4, undefined8 * param_5, undefined8 * param_6, uint param_7)|\n|sym_type|Function|Function|\n|sym_source|IMPORTED|IMPORTED|\n|external|False|False|\n\n### RenewIpAddressLeaseEx Diff\n\n\n```diff\n--- RenewIpAddressLeaseEx\n+++ RenewIpAddressLeaseEx\n@@ -1,611 +1,621 @@\n \n /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */\n \n ulonglong RenewIpAddressLeaseEx\n                     (uint param_1,longlong param_2,uint *param_3,undefined8 param_4,\n-                    undefined8 *param_5,undefined8 *param_6,int param_7)\n+                    undefined8 *param_5,undefined8 *param_6,uint param_7)\n \n {\n   int iVar1;\n   code *pcVar2;\n   undefined1 auVar3 [16];\n   undefined1 auVar4 [16];\n   undefined1 auVar5 [16];\n   undefined1 auVar6 [16];\n   undefined1 auVar7 [16];\n   undefined1 auVar8 [16];\n   undefined1 auVar9 [16];\n   undefined1 auVar10 [16];\n   undefined1 auVar11 [16];\n   undefined1 auVar12 [16];\n   undefined1 auVar13 [16];\n   undefined1 auVar14 [16];\n   undefined1 auVar15 [16];\n   undefined8 uVar16;\n   undefined8 uVar17;\n   undefined8 uVar18;\n   undefined8 uVar19;\n   undefined4 uVar20;\n   uint uVar21;\n   uint uVar22;\n   DWORD DVar23;\n   ulonglong uVar24;\n   __time64_t _Var25;\n   longlong ******pppppplVar26;\n   longlong *******ppppppplVar27;\n   ULONGLONG UVar28;\n   undefined8 *puVar29;\n   undefined8 *puVar30;\n   uint *puVar31;\n   uint *puVar32;\n   longlong ******pppppplVar33;\n   ushort uVar34;\n   longlong lVar35;\n   size_t _Size;\n   ulonglong uVar36;\n   int iVar37;\n   longlong *******ppppppplVar38;\n   int iVar39;\n   undefined1 auStackY_4d8 [32];\n   uint local_494;\n   longlong *******local_490;\n   uint local_488;\n   undefined4 local_484;\n   DWORD local_480 [2];\n   longlong *******local_478;\n   longlong *******ppppppplStack_470;\n   undefined8 local_468;\n   undefined8 local_460;\n   undefined8 local_458;\n   undefined8 local_450;\n   undefined4 *local_448;\n   undefined4 local_440;\n   undefined8 local_43c;\n   undefined4 local_434;\n   undefined8 *local_428;\n   undefined1 local_418 [24];\n   uint local_400;\n   uint local_3fc;\n   uint local_3f8;\n   undefined8 local_348 [34];\n   uint local_238 [68];\n   undefined4 local_128;\n   undefined2 local_124;\n   undefined1 local_122;\n   undefined1 local_118 [208];\n   ulonglong local_48;\n   \n   local_48 = __security_cookie ^ (ulonglong)auStackY_4d8;\n   local_428 = param_5;\n   local_490 = (longlong *******)0x0;\n   local_480[0] = 0;\n   local_488 = param_1;\n   memset(local_418,0,200);\n   local_448 = &amp;local_128;\n   local_128 = 0x10f2c2e;\n   local_124 = 0x603;\n   local_43c = 0;\n   local_434 = 0;\n   local_122 = 0x2f;\n   local_484 = 0;\n   local_478 = (longlong *******)0x0;\n   ppppppplStack_470 = (longlong *******)0x0;\n   local_468 = 0x37;\n   local_460 = 0;\n   local_458 = 0;\n   local_450 = 0;\n   local_440 = 7;\n   if ((DAT_0 &amp; 0x10) != 0) {\n-    WPP_SF_D(0x404,0x1c,0x18005ade8,param_1);\n+    WPP_SF_D(0x404,0x1d,0x18005ade8,param_1);\n+  }\n+  if ((g_fVelocityDhcpv4ClassIdLenOverflowFix != 0) &amp;&amp; (0xff &lt; param_7)) {\n+    if ((DAT_0 &amp; 0x10) == 0) {\n+      return 0x57;\n+    }\n+    uVar34 = 0x1e;\n+LAB_1:\n+    WPP_SF_(0x404,uVar34,0x18005ade8);\n+    return 0x57;\n   }\n   if (param_2 == 0) {\n-    if ((DAT_0 &amp; 0x10) != 0) {\n-      WPP_SF_(0x404,0x1d,0x18005ade8);\n-    }\n-    return 0x57;\n+    if ((DAT_0 &amp; 0x10) == 0) {\n+      return 0x57;\n+    }\n+    uVar34 = 0x1f;\n+    goto LAB_1;\n   }\n   uVar24 = DhcpCommonInit();\n   uVar36 = uVar24 &amp; 0xffffffff;\n   if ((int)uVar24 != 0) {\n     if ((DAT_0 &amp; 0x10) == 0) {\n       return uVar36;\n     }\n-    uVar34 = 0x1e;\n-    goto LAB_1;\n+    uVar34 = 0x20;\n+    goto LAB_2;\n   }\n   if ((param_1 == 0) || (param_1 == 0x7f000001)) {\n-LAB_2:\n+LAB_3:\n     local_494 = *param_3;\n     _Size = (size_t)local_494;\n     if (200 &lt; local_494) {\n       if ((DAT_0 &amp; 0x10) != 0) {\n-        WPP_SF_L(0x404,0x1f,0x18005ade8,local_494);\n+        WPP_SF_L(0x404,0x21,0x18005ade8,local_494);\n       }\n       return 0xd;\n     }\n     memcpy(local_118,(void *)((longlong)param_3 + 5),_Size);\n   }\n   else {\n     local_494 = 200;\n     GetHardwareAddressForIpAddress((ulonglong)param_1,local_118,&amp;local_494);\n     _Size = (size_t)local_494;\n-    if (local_494 == 0) goto LAB_2;\n+    if (local_494 == 0) goto LAB_3;\n   }\n   uVar21 = (uint)_Size;\n   if (g_fUseIpv6OnlyPreferred == 0) {\n     uVar22 = CreateDhcpContext(&amp;local_490,uVar21);\n     ppppppplVar38 = local_490;\n     if (uVar22 != 0) {\n       if ((DAT_0 &amp; 0x10) != 0) {\n-        WPP_SF_D(0x404,0x21,0x18005ade8,uVar22);\n+        WPP_SF_D(0x404,0x23,0x18005ade8,uVar22);\n       }\n       return (ulonglong)uVar22;\n     }\n     *(undefined1 *)((longlong)local_490 + 0x54) = 1;\n     *(uint *)(local_490 + 0xc) = uVar21;\n     memcpy(local_490[0xb],local_118,_Size);\n     *(undefined4 *)(ppppppplVar38 + 2) = 1;\n     *(undefined4 *)(ppppppplVar38 + 0x69) = 0;\n     uVar20 = Ordinal_8(*(undefined4 *)(param_2 + 0x10));\n     *(undefined4 *)(ppppppplVar38 + 0xf) = uVar20;\n     uVar20 = Ordinal_8(*(undefined4 *)(param_2 + 0x14));\n     *(undefined4 *)((longlong)ppppppplVar38 + 0x7c) = uVar20;\n     _Var25 = _time64((__time64_t *)0x0);\n     if (*(uint *)(param_2 + 0x28) &lt; (uint)_Var25) {\n       if ((DAT_0 &amp; 0x10) != 0) {\n-        WPP_SF_(0x404,0x22,0x18005ade8);\n+        WPP_SF_(0x404,0x24,0x18005ade8);\n       }\n       *(undefined4 *)(ppppppplVar38 + 0x10) = 0xffffffff;\n     }\n     else {\n       uVar20 = Ordinal_8(*(undefined4 *)(param_2 + 0x18));\n       *(undefined4 *)(ppppppplVar38 + 0x10) = uVar20;\n     }\n     *(undefined4 *)((longlong)ppppppplVar38 + 0x84) = *(undefined4 *)(ppppppplVar38 + 0xf);\n     *(undefined4 *)(ppppppplVar38 + 0x37) = *(undefined4 *)(param_2 + 0x1c);\n     uVar21 = *(uint *)(param_2 + 0x20);\n     if (uVar21 == 0xffffffff) {\n       pppppplVar33 = (longlong ******)0xffffffff;\n     }\n     else {\n       _Var25 = _time64((__time64_t *)0x0);\n       UVar28 = GetTickCount64();\n       auVar7._8_8_ = 0;\n       auVar7._0_8_ = UVar28;\n       lVar35 = SUB168(ZEXT816(0x624dd2f1a9fbe77) * auVar7,8);\n       pppppplVar26 = (longlong ******)\n                      (((lVar35 + (UVar28 - lVar35 &gt;&gt; 1) &gt;&gt; 9) - _Var25) + (ulonglong)uVar21);\n       pppppplVar33 = (longlong ******)0x0;\n       if (-1 &lt; (longlong)pppppplVar26) {\n         pppppplVar33 = pppppplVar26;\n       }\n     }\n     ppppppplVar38[0x38] = pppppplVar33;\n     uVar21 = *(uint *)(param_2 + 0x24);\n     if (uVar21 == 0xffffffff) {\n       pppppplVar33 = (longlong ******)0xffffffff;\n     }\n     else {\n       _Var25 = _time64((__time64_t *)0x0);\n       UVar28 = GetTickCount64();\n       auVar8._8_8_ = 0;\n       auVar8._0_8_ = UVar28;\n       lVar35 = SUB168(ZEXT816(0x624dd2f1a9fbe77) * auVar8,8);\n       pppppplVar26 = (longlong ******)\n                      (((lVar35 + (UVar28 - lVar35 &gt;&gt; 1) &gt;&gt; 9) - _Var25) + (ulonglong)uVar21);\n       pppppplVar33 = (longlong ******)0x0;\n       if (-1 &lt; (longlong)pppppplVar26) {\n         pppppplVar33 = pppppplVar26;\n       }\n     }\n     ppppppplVar38[0x39] = pppppplVar33;\n     uVar21 = *(uint *)(param_2 + 0x28);\n     if (uVar21 == 0xffffffff) {\n       pppppplVar33 = (longlong ******)0xffffffff;\n     }\n     else {\n       _Var25 = _time64((__time64_t *)0x0);\n       UVar28 = GetTickCount64();\n       auVar9._8_8_ = 0;\n       auVar9._0_8_ = UVar28;\n       lVar35 = SUB168(ZEXT816(0x624dd2f1a9fbe77) * auVar9,8);\n       pppppplVar26 = (longlong ******)\n                      (((lVar35 + (UVar28 - lVar35 &gt;&gt; 1) &gt;&gt; 9) - _Var25) + (ulonglong)uVar21);\n       pppppplVar33 = (longlong ******)0x0;\n       if (-1 &lt; (longlong)pppppplVar26) {\n         pppppplVar33 = pppppplVar26;\n       }\n     }\n     ppppppplVar38[0x3a] = pppppplVar33;\n     uVar21 = *(uint *)(param_2 + 0x2c);\n     if (uVar21 == 0xffffffff) {\n       pppppplVar33 = (longlong ******)0xffffffff;\n     }\n     else {\n       _Var25 = _time64((__time64_t *)0x0);\n       UVar28 = GetTickCount64();\n       auVar10._8_8_ = 0;\n       auVar10._0_8_ = UVar28;\n       lVar35 = SUB168(ZEXT816(0x624dd2f1a9fbe77) * auVar10,8);\n       pppppplVar26 = (longlong ******)\n                      (((lVar35 + (UVar28 - lVar35 &gt;&gt; 1) &gt;&gt; 9) - _Var25) + (ulonglong)uVar21);\n       pppppplVar33 = (longlong ******)0x0;\n       if (-1 &lt; (longlong)pppppplVar26) {\n         pppppplVar33 = pppppplVar26;\n       }\n     }\n     ppppppplVar38[0x3b] = pppppplVar33;\n     *(undefined4 *)((longlong)ppppppplVar38 + 0x34c) = 1;\n     *(undefined4 *)(ppppppplVar38 + 0x6a) = 1;\n     *(undefined4 *)(ppppppplVar38 + 0x61) = 0;\n     *(undefined4 *)(ppppppplVar38 + 0x62) = 0;\n     *(undefined4 *)((longlong)ppppppplVar38 + 0x314) = 0;\n     *(undefined4 *)(ppppppplVar38 + 99) = 1;\n     *(undefined4 *)((longlong)ppppppplVar38 + 0x31c) = 0;\n     *(undefined4 *)(ppppppplVar38 + 100) = 0;\n     *(undefined4 *)(ppppppplVar38 + 0x62) = 1;\n     *(undefined4 *)((longlong)ppppppplVar38 + 0x314) = 1;\n     *(undefined4 *)(ppppppplVar38 + 0x66) = 1;\n     *(undefined4 *)((longlong)ppppppplVar38 + 0x234) = 1;\n     *(undefined4 *)(ppppppplVar38 + 0x34) = 0;\n     uVar20 = Ordinal_11(\"169.254.0.0\");\n     *(undefined4 *)((longlong)ppppppplVar38 + 0x1a4) = uVar20;\n     uVar20 = Ordinal_11(\"255.255.0.0\");\n     *(undefined4 *)(ppppppplVar38 + 0x35) = uVar20;\n     DVar23 = GetSeed();\n     *(DWORD *)((longlong)ppppppplVar38 + 0x1ac) = DVar23;\n     ppppppplVar27 = ppppppplVar38 + 0x57;\n     ppppppplVar38[0x58] = (longlong ******)ppppppplVar27;\n     *ppppppplVar27 = (longlong ******)ppppppplVar27;\n     local_478 = ppppppplVar38 + 0x55;\n     ppppppplVar38[0x56] = (longlong ******)&amp;local_478;\n     *local_478 = (longlong ******)&amp;local_478;\n     ppppppplVar27 = ppppppplVar38 + 0x59;\n     ppppppplVar38[0x5a] = (longlong ******)ppppppplVar27;\n     *ppppppplVar27 = (longlong ******)ppppppplVar27;\n     if (param_7 == 0) {\n       ppppppplVar38[0x5c] = (longlong ******)0x0;\n     }\n     else {\n       ppppppplVar38[0x5c] = (longlong ******)((longlong)param_6 + 4);\n     }\n     uVar21 = *param_3;\n-    *(int *)(ppppppplVar38 + 0x5d) = param_7;\n+    *(uint *)(ppppppplVar38 + 0x5d) = param_7;\n     ppppppplStack_470 = local_478;\n     uVar21 = DhcpMakeClientId(1,uVar21,(void *)((longlong)param_3 + 5),ppppppplVar38 + 0x36);\n     uVar36 = (ulonglong)uVar21;\n     if (uVar21 == 0) {\n       ppppppplVar38[7] = (longlong ******)0x0;\n       ppppppplVar38[9] = (longlong ******)0xffffffffffffffff;\n       ppppppplVar38[8] = (longlong ******)0xffffffffffffffff;\n-      goto LAB_3;\n-    }\n-LAB_4:\n+      goto LAB_4;\n+    }\n+LAB_5:\n     if ((DAT_0 &amp; 2) != 0) {\n-      WPP_SF_D(0x401,0x25,0x18005ade8,(int)uVar36);\n+      WPP_SF_D(0x401,0x27,0x18005ade8,(int)uVar36);\n     }\n   }\n   else {\n     uVar20 = Ordinal_8(*(undefined4 *)(param_2 + 0x10));\n     lVar35 = 2;\n     puVar29 = local_348;\n     do {\n       uVar16 = param_6[1];\n       uVar17 = param_6[2];\n       uVar18 = param_6[3];\n       *puVar29 = *param_6;\n       puVar29[1] = uVar16;\n       uVar16 = param_6[4];\n       uVar19 = param_6[5];\n       puVar29[2] = uVar17;\n       puVar29[3] = uVar18;\n       uVar17 = param_6[6];\n       uVar18 = param_6[7];\n       puVar29[4] = uVar16;\n       puVar29[5] = uVar19;\n       uVar16 = param_6[8];\n       uVar19 = param_6[9];\n       puVar29[6] = uVar17;\n       puVar29[7] = uVar18;\n       uVar17 = param_6[10];\n       uVar18 = param_6[0xb];\n       puVar29[8] = uVar16;\n       puVar29[9] = uVar19;\n       uVar16 = param_6[0xc];\n       uVar19 = param_6[0xd];\n       puVar29[10] = uVar17;\n       puVar29[0xb] = uVar18;\n       uVar17 = param_6[0xe];\n       uVar18 = param_6[0xf];\n       param_6 = param_6 + 0x10;\n       puVar29[0xc] = uVar16;\n       puVar29[0xd] = uVar19;\n       puVar30 = puVar29 + 0x10;\n       puVar29[0xe] = uVar17;\n       puVar29[0xf] = uVar18;\n       lVar35 = lVar35 + -1;\n       puVar29 = puVar30;\n     } while (lVar35 != 0);\n     *(undefined4 *)puVar30 = *(undefined4 *)param_6;\n     lVar35 = 2;\n     puVar31 = local_238;\n     do {\n       uVar16 = *(undefined8 *)(param_3 + 2);\n       uVar17 = *(undefined8 *)(param_3 + 4);\n       uVar18 = *(undefined8 *)(param_3 + 6);\n       *(undefined8 *)puVar31 = *(undefined8 *)param_3;\n       *(undefined8 *)(puVar31 + 2) = uVar16;\n       uVar16 = *(undefined8 *)(param_3 + 8);\n       uVar19 = *(undefined8 *)(param_3 + 10);\n       *(undefined8 *)(puVar31 + 4) = uVar17;\n       *(undefined8 *)(puVar31 + 6) = uVar18;\n       uVar17 = *(undefined8 *)(param_3 + 0xc);\n       uVar18 = *(undefined8 *)(param_3 + 0xe);\n       *(undefined8 *)(puVar31 + 8) = uVar16;\n       *(undefined8 *)(puVar31 + 10) = uVar19;\n       uVar16 = *(undefined8 *)(param_3 + 0x10);\n       uVar19 = *(undefined8 *)(param_3 + 0x12);\n       *(undefined8 *)(puVar31 + 0xc) = uVar17;\n       *(undefined8 *)(puVar31 + 0xe) = uVar18;\n       uVar17 = *(undefined8 *)(param_3 + 0x14);\n       uVar18 = *(undefined8 *)(param_3 + 0x16);\n       *(undefined8 *)(puVar31 + 0x10) = uVar16;\n       *(undefined8 *)(puVar31 + 0x12) = uVar19;\n       uVar16 = *(undefined8 *)(param_3 + 0x18);\n       uVar19 = *(undefined8 *)(param_3 + 0x1a);\n       *(undefined8 *)(puVar31 + 0x14) = uVar17;\n       *(undefined8 *)(puVar31 + 0x16) = uVar18;\n       uVar17 = *(undefined8 *)(param_3 + 0x1c);\n       uVar18 = *(undefined8 *)(param_3 + 0x1e);\n       param_3 = param_3 + 0x20;\n       *(undefined8 *)(puVar31 + 0x18) = uVar16;\n       *(undefined8 *)(puVar31 + 0x1a) = uVar19;\n       puVar32 = puVar31 + 0x20;\n       *(undefined8 *)(puVar31 + 0x1c) = uVar17;\n       *(undefined8 *)(puVar31 + 0x1e) = uVar18;\n       lVar35 = lVar35 + -1;\n       puVar31 = puVar32;\n     } while (lVar35 != 0);\n     *puVar32 = *param_3;\n     uVar21 = CreateDhcpContextForNewLease\n                        ((longlong *)&amp;local_490,0,local_238,uVar20,(longlong)local_348,param_7,\n                         local_118,uVar21);\n     ppppppplVar38 = local_490;\n     uVar36 = (ulonglong)uVar21;\n-    if (uVar21 != 0) goto LAB_4;\n+    if (uVar21 != 0) goto LAB_5;\n     *(undefined4 *)(local_490 + 0xf) = uVar20;\n     uVar20 = Ordinal_8();\n     *(undefined4 *)((longlong)ppppppplVar38 + 0x7c) = uVar20;\n     _Var25 = _time64((__time64_t *)0x0);\n     if (*(uint *)(param_2 + 0x28) &lt; (uint)_Var25) {\n       if ((DAT_0 &amp; 0x10) != 0) {\n-        WPP_SF_(0x404,0x20,0x18005ade8);\n+        WPP_SF_(0x404,0x22,0x18005ade8);\n       }\n       *(undefined4 *)(ppppppplVar38 + 0x10) = 0xffffffff;\n     }\n     else {\n       uVar20 = Ordinal_8();\n       *(undefined4 *)(ppppppplVar38 + 0x10) = uVar20;\n     }\n     *(undefined4 *)(ppppppplVar38 + 0x37) = *(undefined4 *)(param_2 + 0x1c);\n     uVar21 = *(uint *)(param_2 + 0x20);\n     if (uVar21 == 0xffffffff) {\n       pppppplVar33 = (longlong ******)0xffffffff;\n     }\n     else {\n       _Var25 = _time64((__time64_t *)0x0);\n       UVar28 = GetTickCount64();\n       auVar3._8_8_ = 0;\n       auVar3._0_8_ = UVar28;\n       lVar35 = SUB168(ZEXT816(0x624dd2f1a9fbe77) * auVar3,8);\n       pppppplVar26 = (longlong ******)\n                      (((lVar35 + (UVar28 - lVar35 &gt;&gt; 1) &gt;&gt; 9) - _Var25) + (ulonglong)uVar21);\n       pppppplVar33 = (longlong ******)0x0;\n       if (-1 &lt; (longlong)pppppplVar26) {\n         pppppplVar33 = pppppplVar26;\n       }\n     }\n     ppppppplVar38[0x38] = pppppplVar33;\n     uVar21 = *(uint *)(param_2 + 0x24);\n     if (uVar21 == 0xffffffff) {\n       pppppplVar33 = (longlong ******)0xffffffff;\n     }\n     else {\n       _Var25 = _time64((__time64_t *)0x0);\n       UVar28 = GetTickCount64();\n       auVar4._8_8_ = 0;\n       auVar4._0_8_ = UVar28;\n       lVar35 = SUB168(ZEXT816(0x624dd2f1a9fbe77) * auVar4,8);\n       pppppplVar26 = (longlong ******)\n                      (((lVar35 + (UVar28 - lVar35 &gt;&gt; 1) &gt;&gt; 9) - _Var25) + (ulonglong)uVar21);\n       pppppplVar33 = (longlong ******)0x0;\n       if (-1 &lt; (longlong)pppppplVar26) {\n         pppppplVar33 = pppppplVar26;\n       }\n     }\n     ppppppplVar38[0x39] = pppppplVar33;\n     uVar21 = *(uint *)(param_2 + 0x28);\n     if (uVar21 == 0xffffffff) {\n       pppppplVar33 = (longlong ******)0xffffffff;\n     }\n     else {\n       _Var25 = _time64((__time64_t *)0x0);\n       UVar28 = GetTickCount64();\n       auVar5._8_8_ = 0;\n       auVar5._0_8_ = UVar28;\n       lVar35 = SUB168(ZEXT816(0x624dd2f1a9fbe77) * auVar5,8);\n       pppppplVar26 = (longlong ******)\n                      (((lVar35 + (UVar28 - lVar35 &gt;&gt; 1) &gt;&gt; 9) - _Var25) + (ulonglong)uVar21);\n       pppppplVar33 = (longlong ******)0x0;\n       if (-1 &lt; (longlong)pppppplVar26) {\n         pppppplVar33 = pppppplVar26;\n       }\n     }\n     ppppppplVar38[0x3a] = pppppplVar33;\n     uVar21 = *(uint *)(param_2 + 0x2c);\n     if (uVar21 == 0xffffffff) {\n       pppppplVar33 = (longlong ******)0xffffffff;\n     }\n     else {\n       _Var25 = _time64((__time64_t *)0x0);\n       UVar28 = GetTickCount64();\n       auVar6._8_8_ = 0;\n       auVar6._0_8_ = UVar28;\n       lVar35 = SUB168(ZEXT816(0x624dd2f1a9fbe77) * auVar6,8);\n       pppppplVar26 = (longlong ******)\n                      (((lVar35 + (UVar28 - lVar35 &gt;&gt; 1) &gt;&gt; 9) - _Var25) + (ulonglong)uVar21);\n       pppppplVar33 = (longlong ******)0x0;\n       if (-1 &lt; (longlong)pppppplVar26) {\n         pppppplVar33 = pppppplVar26;\n       }\n     }\n     ppppppplVar38[0x3b] = pppppplVar33;\n     ppppppplVar27 = ppppppplVar38 + 0x55;\n     *(undefined4 *)((longlong)ppppppplVar38 + 0x314) = 1;\n     *(undefined4 *)((longlong)ppppppplVar38 + 0x234) = 1;\n     ppppppplVar38 = (longlong *******)*ppppppplVar27;\n-    if ((longlong *******)ppppppplVar38[1] != ppppppplVar27) goto LAB_5;\n+    if ((longlong *******)ppppppplVar38[1] != ppppppplVar27) goto LAB_6;\n     ppppppplVar38[1] = (longlong ******)&amp;local_478;\n     *ppppppplVar27 = (longlong ******)&amp;local_478;\n     local_478 = ppppppplVar38;\n     ppppppplStack_470 = ppppppplVar27;\n-LAB_3:\n+LAB_4:\n     iVar37 = -1;\n     uVar20 = Ordinal_8(local_488);\n     ppppppplVar38 = local_490;\n     uVar21 = InitializeDhcpSocket((longlong *)(local_490 + 9),uVar20);\n     uVar36 = (ulonglong)uVar21;\n-    if (uVar21 != 0) goto LAB_4;\n+    if (uVar21 != 0) goto LAB_5;\n     ppppppplVar27 = RenewLease(ppppppplVar38,local_480,0,(longlong *******)0x1,&amp;local_484,local_418)\n     ;\n     uVar36 = (ulonglong)ppppppplVar27 &amp; 0xffffffff;\n     if (DhcpGlobalIsShuttingDown == 0) {\n-      if ((int)ppppppplVar27 != 0) goto LAB_4;\n+      if ((int)ppppppplVar27 != 0) goto LAB_5;\n       uVar20 = Ordinal_14(*(undefined4 *)(ppppppplVar38 + 0x10));\n       *(undefined4 *)(param_2 + 0x18) = uVar20;\n       uVar24 = 0xe10;\n       if (local_400 != 0) {\n         uVar24 = (ulonglong)local_400;\n       }\n       uVar21 = (uint)uVar24;\n       *(uint *)(param_2 + 0x1c) = uVar21;\n       UVar28 = GetTickCount64();\n       auVar11._8_8_ = 0;\n       auVar11._0_8_ = UVar28;\n       lVar35 = SUB168(ZEXT816(0x624dd2f1a9fbe77) * auVar11,8);\n       uVar22 = (uint)((UVar28 - lVar35 &gt;&gt; 1) + lVar35 &gt;&gt; 9);\n       *(uint *)(param_2 + 0x20) = uVar22;\n       if ((local_3f8 == 0) || (uVar21 &lt; local_3f8)) {\n         local_3f8 = uVar21 * 7 &gt;&gt; 3;\n       }\n       if (((local_3fc == 0) || (local_3f8 &lt; local_3fc)) &amp;&amp;\n          (local_3fc = (uint)(uVar24 &gt;&gt; 1), local_3f8 &lt;= local_3fc)) {\n         local_3fc = local_3f8 - 1;\n       }\n       *(uint *)(param_2 + 0x24) = uVar22 + local_3fc;\n       if (uVar22 + local_3fc &lt; uVar22) {\n         *(undefined4 *)(param_2 + 0x24) = 0xffffffff;\n       }\n       *(uint *)(param_2 + 0x28) = uVar22 + local_3f8;\n       if (uVar22 + local_3f8 &lt; uVar22) {\n         *(undefined4 *)(param_2 + 0x28) = 0xffffffff;\n       }\n       *(uint *)(param_2 + 0x2c) = uVar22 + uVar21;\n       if (uVar22 + uVar21 &lt; uVar22) {\n         *(undefined4 *)(param_2 + 0x2c) = 0xffffffff;\n       }\n       if (uVar22 == 0xffffffff) {\n         iVar39 = -1;\n       }\n       else {\n         _Var25 = _time64((__time64_t *)0x0);\n         UVar28 = GetTickCount64();\n         auVar12._8_8_ = 0;\n         auVar12._0_8_ = UVar28;\n         lVar35 = SUB168(ZEXT816(0x624dd2f1a9fbe77) * auVar12,8);\n         iVar39 = (uVar22 - (int)((UVar28 - lVar35 &gt;&gt; 1) + lVar35 &gt;&gt; 9)) + (int)_Var25;\n       }\n       iVar1 = *(int *)(param_2 + 0x24);\n       *(int *)(param_2 + 0x20) = iVar39;\n       if (iVar1 == -1) {\n         iVar39 = -1;\n       }\n       else {\n         _Var25 = _time64((__time64_t *)0x0);\n         UVar28 = GetTickCount64();\n         auVar13._8_8_ = 0;\n         auVar13._0_8_ = UVar28;\n         lVar35 = SUB168(ZEXT816(0x624dd2f1a9fbe77) * auVar13,8);\n         iVar39 = (iVar1 - (int)((UVar28 - lVar35 &gt;&gt; 1) + lVar35 &gt;&gt; 9)) + (int)_Var25;\n       }\n       *(int *)(param_2 + 0x24) = iVar39;\n       iVar39 = *(int *)(param_2 + 0x28);\n       if (iVar39 == -1) {\n         iVar39 = -1;\n       }\n       else {\n         _Var25 = _time64((__time64_t *)0x0);\n         UVar28 = GetTickCount64();\n         auVar14._8_8_ = 0;\n         auVar14._0_8_ = UVar28;\n         lVar35 = SUB168(ZEXT816(0x624dd2f1a9fbe77) * auVar14,8);\n         iVar39 = (iVar39 - (int)((UVar28 - lVar35 &gt;&gt; 1) + lVar35 &gt;&gt; 9)) + (int)_Var25;\n       }\n       *(int *)(param_2 + 0x28) = iVar39;\n       iVar39 = *(int *)(param_2 + 0x2c);\n       if (iVar39 != -1) {\n         _Var25 = _time64((__time64_t *)0x0);\n         UVar28 = GetTickCount64();\n         auVar15._8_8_ = 0;\n         auVar15._0_8_ = UVar28;\n         lVar35 = SUB168(ZEXT816(0x624dd2f1a9fbe77) * auVar15,8);\n         iVar37 = (int)_Var25 + (iVar39 - (int)((UVar28 - lVar35 &gt;&gt; 1) + lVar35 &gt;&gt; 9));\n       }\n       uVar36 = 0;\n       *(int *)(param_2 + 0x2c) = iVar37;\n     }\n     else {\n       uVar36 = 0x41;\n       if ((DAT_0 &amp; 2) != 0) {\n-        WPP_SF_D(0x401,0x23,0x18005ade8,0x41);\n-        goto LAB_4;\n+        WPP_SF_D(0x401,0x25,0x18005ade8,0x41);\n+        goto LAB_5;\n       }\n     }\n   }\n   if (local_428 != (undefined8 *)0x0) {\n     *local_428 = 0;\n   }\n   DhcpCleanParsedOptions(local_418);\n   if (ppppppplVar38 != (longlong *******)0x0) {\n     ppppppplVar27 = ppppppplVar38 + 0x55;\n     pppppplVar33 = *ppppppplVar27;\n     if (((longlong *******)pppppplVar33[1] != ppppppplVar27) ||\n        (pppppplVar26 = (longlong ******)*pppppplVar33,\n        (longlong ******)pppppplVar26[1] != pppppplVar33)) {\n-LAB_5:\n+LAB_6:\n       pcVar2 = (code *)swi(0x29);\n       (*pcVar2)(3);\n       pcVar2 = (code *)swi(3);\n       uVar24 = (*pcVar2)();\n       return uVar24;\n     }\n     *ppppppplVar27 = pppppplVar26;\n     pppppplVar26[1] = (longlong *****)ppppppplVar27;\n     LOCK();\n     ppppppplVar38 = ppppppplVar38 + 2;\n     iVar37 = *(int *)ppppppplVar38;\n     *(int *)ppppppplVar38 = *(int *)ppppppplVar38 + -1;\n     UNLOCK();\n     if (iVar37 == 1) {\n       DhcpDestroyContextEx((longlong)local_490);\n     }\n   }\n   if ((DAT_0 &amp; 0x10) == 0) {\n     return uVar36;\n   }\n-  uVar34 = 0x24;\n-LAB_1:\n+  uVar34 = 0x26;\n+LAB_2:\n   WPP_SF_D(0x404,uVar34,0x18005ade8,(int)uVar36);\n   return uVar36;\n }\n \n\n```\n\n\n## LeaseIpAddressEx\n\n### Match Info\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521 - dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: |\n|diff_type|code,length,sig,address|\n|ratio|0.15|\n|i_ratio|0.52|\n|m_ratio|0.97|\n|b_ratio|0.91|\n|match_types|SymbolsHash|\n\n### Function Meta Diff\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521|dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: | :---: |\n|name|LeaseIpAddressEx|LeaseIpAddressEx|\n|fullname|LeaseIpAddressEx|LeaseIpAddressEx|\n|refcount|3|3|\n|`length`|1296|1386|\n|called|\nExpand for full list:API-MS-WIN-CORE-HEAP-OBSOLETE-L1-1-0.DLL::LocalFreeCheckForAddressConflictCreateDhcpContextForNewLeaseCreateInfoForNewLeaseDetermineHardwareAddressForNewLeaseDhcpCleanParsedOptionsDhcpCommonInitDhcpDestroyContextExDhcpPerformIPAutoconfigurationGrandHashingInitializeDhcpSocketObtainInitialParametersSendDhcpDeclineWPP_SF_WPP_SF_DWPP_SF_DJWPP_SF_dDJWPP_SF_lDWS2_32.DLL::Ordinal_14__security_check_cookiememset|\nExpand for full list:API-MS-WIN-CORE-HEAP-OBSOLETE-L1-1-0.DLL::LocalFreeCheckForAddressConflictCreateDhcpContextForNewLeaseCreateInfoForNewLeaseDetermineHardwareAddressForNewLeaseDhcpCleanParsedOptionsDhcpCommonInitDhcpDestroyContextExDhcpPerformIPAutoconfigurationGrandHashingInitializeDhcpSocketObtainInitialParametersSendDhcpDeclineWPP_SF_WPP_SF_DWPP_SF_DJWPP_SF_dDJWPP_SF_lDWS2_32.DLL::Ordinal_14__security_check_cookiememset|\n|calling|RpcSrvLeaseIpAddressExRpcSrvLeaseIpAddressEx_New|RpcSrvLeaseIpAddressExRpcSrvLeaseIpAddressEx_New|\n|paramcount|8|8|\n|`address`|18003fac4|18003fb54|\n|`sig`|ulonglong __fastcall LeaseIpAddressEx(uint param_1, uint * param_2, undefined4 param_3, undefined8 param_4, undefined8 * param_5, undefined8 * param_6, undefined8 * param_7, int param_8)|int __fastcall LeaseIpAddressEx(uint param_1, uint * param_2, undefined4 param_3, undefined8 param_4, undefined8 * param_5, undefined8 * param_6, undefined8 * param_7, uint param_8)|\n|sym_type|Function|Function|\n|sym_source|IMPORTED|IMPORTED|\n|external|False|False|\n\n### LeaseIpAddressEx Diff\n\n\n```diff\n--- LeaseIpAddressEx\n+++ LeaseIpAddressEx\n@@ -1,286 +1,289 @@\n \n /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */\n \n-ulonglong LeaseIpAddressEx(uint param_1,uint *param_2,undefined4 param_3,undefined8 param_4,\n-                          undefined8 *param_5,undefined8 *param_6,undefined8 *param_7,int param_8)\n+int LeaseIpAddressEx(uint param_1,uint *param_2,undefined4 param_3,undefined8 param_4,\n+                    undefined8 *param_5,undefined8 *param_6,undefined8 *param_7,uint param_8)\n \n {\n   undefined8 uVar1;\n   undefined8 uVar2;\n   undefined8 uVar3;\n-  undefined8 uVar4;\n-  uint uVar5;\n-  undefined4 uVar6;\n-  int iVar7;\n-  longlong *******ppppppplVar8;\n-  ulonglong uVar9;\n-  uint *puVar10;\n-  uint *puVar11;\n+  uint uVar4;\n+  undefined4 uVar5;\n+  int iVar6;\n+  longlong *******ppppppplVar7;\n+  undefined8 uVar8;\n+  uint *puVar9;\n+  longlong lVar10;\n+  ulonglong uVar11;\n   uint *puVar12;\n-  undefined8 *puVar13;\n+  uint *puVar13;\n   undefined8 *puVar14;\n-  longlong lVar15;\n-  longlong *******ppppppplVar16;\n-  ulonglong uVar17;\n+  undefined8 *puVar15;\n+  ushort uVar16;\n+  longlong lVar17;\n+  int iVar18;\n   undefined1 auStackY_4b8 [32];\n   longlong *******local_478;\n   uint local_470;\n   uint local_46c;\n-  HLOCAL local_468;\n-  int local_460 [2];\n-  undefined8 *local_458;\n+  uint local_468 [2];\n+  HLOCAL local_460;\n+  undefined4 local_458;\n+  int local_454;\n+  undefined8 *local_450;\n   undefined1 local_448 [208];\n   uint local_378 [68];\n   undefined8 local_268 [34];\n   uint local_158 [68];\n   undefined8 local_48;\n   ulonglong local_40;\n   \n   local_40 = __security_cookie ^ (ulonglong)auStackY_4b8;\n-  local_458 = param_5;\n-  ppppppplVar8 = (longlong *******)0x0;\n-  local_46c = 0;\n+  local_450 = param_5;\n+  ppppppplVar7 = (longlong *******)0x0;\n+  local_468[0] = 0;\n   local_478 = (longlong *******)0x0;\n   local_470 = 0;\n   local_48 = 0;\n-  local_460[0] = 0;\n-  local_468 = (HLOCAL)0x0;\n+  local_454 = 0;\n+  local_46c = 0;\n+  local_460 = (HLOCAL)0x0;\n+  local_458 = param_3;\n   memset(local_448,0,200);\n   if ((DAT_0 &amp; 0x10) != 0) {\n     WPP_SF_lD(0x404,0x14,0x18005ade8,param_1);\n   }\n-  *local_458 = 0;\n-  if (param_6 != (undefined8 *)0x0) {\n-    *param_6 = 0;\n-  }\n-  uVar9 = DhcpCommonInit();\n-  uVar17 = uVar9 &amp; 0xffffffff;\n-  ppppppplVar16 = ppppppplVar8;\n-  if ((int)uVar9 == 0) {\n-    lVar15 = 2;\n-    puVar10 = param_2;\n-    puVar11 = local_378;\n+  if ((g_fVelocityDhcpv4LeaseIpAddressOverflow == 0) || (param_8 &lt; 0x100)) {\n+    *local_450 = 0;\n+    if (param_6 != (undefined8 *)0x0) {\n+      *param_6 = 0;\n+    }\n+    uVar8 = DhcpCommonInit();\n+    iVar18 = (int)uVar8;\n+    ppppppplVar7 = (longlong *******)0x0;\n+    if (iVar18 != 0) goto LAB_1;\n+    lVar10 = 2;\n+    puVar9 = param_2;\n+    puVar12 = local_378;\n+    lVar17 = lVar10;\n     do {\n-      uVar1 = *(undefined8 *)(puVar10 + 2);\n-      uVar2 = *(undefined8 *)(puVar10 + 4);\n-      uVar3 = *(undefined8 *)(puVar10 + 6);\n-      *(undefined8 *)puVar11 = *(undefined8 *)puVar10;\n-      *(undefined8 *)(puVar11 + 2) = uVar1;\n-      uVar1 = *(undefined8 *)(puVar10 + 8);\n-      uVar4 = *(undefined8 *)(puVar10 + 10);\n-      *(undefined8 *)(puVar11 + 4) = uVar2;\n-      *(undefined8 *)(puVar11 + 6) = uVar3;\n-      uVar2 = *(undefined8 *)(puVar10 + 0xc);\n-      uVar3 = *(undefined8 *)(puVar10 + 0xe);\n-      *(undefined8 *)(puVar11 + 8) = uVar1;\n-      *(undefined8 *)(puVar11 + 10) = uVar4;\n-      uVar1 = *(undefined8 *)(puVar10 + 0x10);\n-      uVar4 = *(undefined8 *)(puVar10 + 0x12);\n-      *(undefined8 *)(puVar11 + 0xc) = uVar2;\n-      *(undefined8 *)(puVar11 + 0xe) = uVar3;\n-      uVar2 = *(undefined8 *)(puVar10 + 0x14);\n-      uVar3 = *(undefined8 *)(puVar10 + 0x16);\n-      *(undefined8 *)(puVar11 + 0x10) = uVar1;\n-      *(undefined8 *)(puVar11 + 0x12) = uVar4;\n-      uVar1 = *(undefined8 *)(puVar10 + 0x18);\n-      uVar4 = *(undefined8 *)(puVar10 + 0x1a);\n-      *(undefined8 *)(puVar11 + 0x14) = uVar2;\n-      *(undefined8 *)(puVar11 + 0x16) = uVar3;\n-      uVar2 = *(undefined8 *)(puVar10 + 0x1c);\n-      uVar3 = *(undefined8 *)(puVar10 + 0x1e);\n-      puVar10 = puVar10 + 0x20;\n-      *(undefined8 *)(puVar11 + 0x18) = uVar1;\n-      *(undefined8 *)(puVar11 + 0x1a) = uVar4;\n-      puVar12 = puVar11 + 0x20;\n-      *(undefined8 *)(puVar11 + 0x1c) = uVar2;\n-      *(undefined8 *)(puVar11 + 0x1e) = uVar3;\n-      lVar15 = lVar15 + -1;\n-      puVar11 = puVar12;\n-    } while (lVar15 != 0);\n-    *puVar12 = *puVar10;\n-    uVar5 = DetermineHardwareAddressForNewLease(&amp;local_48,0,&amp;local_470,param_1,local_378);\n-    uVar17 = (ulonglong)uVar5;\n-    ppppppplVar16 = (longlong *******)0x0;\n-    if (uVar5 == 0) {\n-      lVar15 = 2;\n-      puVar13 = local_268;\n-      do {\n-        uVar1 = param_7[1];\n-        uVar2 = param_7[2];\n-        uVar3 = param_7[3];\n-        *puVar13 = *param_7;\n-        puVar13[1] = uVar1;\n-        uVar1 = param_7[4];\n-        uVar4 = param_7[5];\n-        puVar13[2] = uVar2;\n-        puVar13[3] = uVar3;\n-        uVar2 = param_7[6];\n-        uVar3 = param_7[7];\n-        puVar13[4] = uVar1;\n-        puVar13[5] = uVar4;\n-        uVar1 = param_7[8];\n-        uVar4 = param_7[9];\n-        puVar13[6] = uVar2;\n-        puVar13[7] = uVar3;\n-        uVar2 = param_7[10];\n-        uVar3 = param_7[0xb];\n-        puVar13[8] = uVar1;\n-        puVar13[9] = uVar4;\n-        uVar1 = param_7[0xc];\n-        uVar4 = param_7[0xd];\n-        puVar13[10] = uVar2;\n-        puVar13[0xb] = uVar3;\n-        uVar2 = param_7[0xe];\n-        uVar3 = param_7[0xf];\n-        param_7 = param_7 + 0x10;\n-        puVar13[0xc] = uVar1;\n-        puVar13[0xd] = uVar4;\n-        puVar14 = puVar13 + 0x10;\n-        puVar13[0xe] = uVar2;\n-        puVar13[0xf] = uVar3;\n-        lVar15 = lVar15 + -1;\n-        puVar13 = puVar14;\n-      } while (lVar15 != 0);\n-      *(undefined4 *)puVar14 = *(undefined4 *)param_7;\n-      lVar15 = 2;\n-      puVar10 = local_158;\n-      do {\n-        uVar1 = *(undefined8 *)(param_2 + 2);\n-        uVar2 = *(undefined8 *)(param_2 + 4);\n-        uVar3 = *(undefined8 *)(param_2 + 6);\n-        *(undefined8 *)puVar10 = *(undefined8 *)param_2;\n-        *(undefined8 *)(puVar10 + 2) = uVar1;\n-        uVar1 = *(undefined8 *)(param_2 + 8);\n-        uVar4 = *(undefined8 *)(param_2 + 10);\n-        *(undefined8 *)(puVar10 + 4) = uVar2;\n-        *(undefined8 *)(puVar10 + 6) = uVar3;\n-        uVar2 = *(undefined8 *)(param_2 + 0xc);\n-        uVar3 = *(undefined8 *)(param_2 + 0xe);\n-        *(undefined8 *)(puVar10 + 8) = uVar1;\n-        *(undefined8 *)(puVar10 + 10) = uVar4;\n-        uVar1 = *(undefined8 *)(param_2 + 0x10);\n-        uVar4 = *(undefined8 *)(param_2 + 0x12);\n-        *(undefined8 *)(puVar10 + 0xc) = uVar2;\n-        *(undefined8 *)(puVar10 + 0xe) = uVar3;\n-        uVar2 = *(undefined8 *)(param_2 + 0x14);\n-        uVar3 = *(undefined8 *)(param_2 + 0x16);\n-        *(undefined8 *)(puVar10 + 0x10) = uVar1;\n-        *(undefined8 *)(puVar10 + 0x12) = uVar4;\n-        uVar1 = *(undefined8 *)(param_2 + 0x18);\n-        uVar4 = *(undefined8 *)(param_2 + 0x1a);\n-        *(undefined8 *)(puVar10 + 0x14) = uVar2;\n-        *(undefined8 *)(puVar10 + 0x16) = uVar3;\n-        uVar2 = *(undefined8 *)(param_2 + 0x1c);\n-        uVar3 = *(undefined8 *)(param_2 + 0x1e);\n-        param_2 = param_2 + 0x20;\n-        *(undefined8 *)(puVar10 + 0x18) = uVar1;\n-        *(undefined8 *)(puVar10 + 0x1a) = uVar4;\n-        puVar11 = puVar10 + 0x20;\n-        *(undefined8 *)(puVar10 + 0x1c) = uVar2;\n-        *(undefined8 *)(puVar10 + 0x1e) = uVar3;\n-        lVar15 = lVar15 + -1;\n-        puVar10 = puVar11;\n-      } while (lVar15 != 0);\n-      *puVar11 = *param_2;\n-      uVar5 = CreateDhcpContextForNewLease\n-                        ((longlong *)&amp;local_478,0x80,local_158,param_3,(longlong)local_268,param_8,\n-                         &amp;local_48,local_470);\n-      ppppppplVar16 = local_478;\n-      uVar17 = (ulonglong)uVar5;\n-      if (uVar5 == 0) {\n-        if (param_1 == 0x7f000001) {\n-          uVar5 = GrandHashing((byte *)local_478[0xb],*(uint *)(local_478 + 0xc),\n-                               (uint *)((longlong)local_478 + 0x1ac),*(uint *)(local_478 + 0x35),\n-                               *(uint *)((longlong)local_478 + 0x1a4));\n-          *(uint *)(ppppppplVar16 + 0xf) = uVar5;\n-          *(undefined4 *)((longlong)ppppppplVar16 + 0x7c) = *(undefined4 *)(ppppppplVar16 + 0x35);\n-          *(undefined4 *)((longlong)ppppppplVar16 + 0x31c) = 1;\n-        }\n-        else {\n-          uVar6 = Ordinal_14(param_1);\n-          ppppppplVar16 = local_478;\n-          uVar5 = InitializeDhcpSocket((longlong *)(local_478 + 9),uVar6);\n-          uVar17 = (ulonglong)uVar5;\n-          if (uVar5 != 0) goto LAB_1;\n-          while ((uint)ppppppplVar8 &lt; 3) {\n-            uVar5 = (uint)ppppppplVar8 + 1;\n-            ppppppplVar8 = (longlong *******)(ulonglong)uVar5;\n+      uVar8 = *(undefined8 *)(puVar9 + 2);\n+      uVar1 = *(undefined8 *)(puVar9 + 4);\n+      uVar2 = *(undefined8 *)(puVar9 + 6);\n+      *(undefined8 *)puVar12 = *(undefined8 *)puVar9;\n+      *(undefined8 *)(puVar12 + 2) = uVar8;\n+      uVar8 = *(undefined8 *)(puVar9 + 8);\n+      uVar3 = *(undefined8 *)(puVar9 + 10);\n+      *(undefined8 *)(puVar12 + 4) = uVar1;\n+      *(undefined8 *)(puVar12 + 6) = uVar2;\n+      uVar1 = *(undefined8 *)(puVar9 + 0xc);\n+      uVar2 = *(undefined8 *)(puVar9 + 0xe);\n+      *(undefined8 *)(puVar12 + 8) = uVar8;\n+      *(undefined8 *)(puVar12 + 10) = uVar3;\n+      uVar8 = *(undefined8 *)(puVar9 + 0x10);\n+      uVar3 = *(undefined8 *)(puVar9 + 0x12);\n+      *(undefined8 *)(puVar12 + 0xc) = uVar1;\n+      *(undefined8 *)(puVar12 + 0xe) = uVar2;\n+      uVar1 = *(undefined8 *)(puVar9 + 0x14);\n+      uVar2 = *(undefined8 *)(puVar9 + 0x16);\n+      *(undefined8 *)(puVar12 + 0x10) = uVar8;\n+      *(undefined8 *)(puVar12 + 0x12) = uVar3;\n+      uVar8 = *(undefined8 *)(puVar9 + 0x18);\n+      uVar3 = *(undefined8 *)(puVar9 + 0x1a);\n+      *(undefined8 *)(puVar12 + 0x14) = uVar1;\n+      *(undefined8 *)(puVar12 + 0x16) = uVar2;\n+      uVar1 = *(undefined8 *)(puVar9 + 0x1c);\n+      uVar2 = *(undefined8 *)(puVar9 + 0x1e);\n+      puVar9 = puVar9 + 0x20;\n+      *(undefined8 *)(puVar12 + 0x18) = uVar8;\n+      *(undefined8 *)(puVar12 + 0x1a) = uVar3;\n+      puVar13 = puVar12 + 0x20;\n+      *(undefined8 *)(puVar12 + 0x1c) = uVar1;\n+      *(undefined8 *)(puVar12 + 0x1e) = uVar2;\n+      lVar17 = lVar17 + -1;\n+      puVar12 = puVar13;\n+    } while (lVar17 != 0);\n+    *puVar13 = *puVar9;\n+    iVar18 = DetermineHardwareAddressForNewLease(&amp;local_48,0,&amp;local_470,param_1,local_378);\n+    if (iVar18 != 0) goto LAB_1;\n+    lVar17 = lVar10;\n+    puVar14 = local_268;\n+    do {\n+      uVar8 = param_7[1];\n+      uVar1 = param_7[2];\n+      uVar2 = param_7[3];\n+      *puVar14 = *param_7;\n+      puVar14[1] = uVar8;\n+      uVar8 = param_7[4];\n+      uVar3 = param_7[5];\n+      puVar14[2] = uVar1;\n+      puVar14[3] = uVar2;\n+      uVar1 = param_7[6];\n+      uVar2 = param_7[7];\n+      puVar14[4] = uVar8;\n+      puVar14[5] = uVar3;\n+      uVar8 = param_7[8];\n+      uVar3 = param_7[9];\n+      puVar14[6] = uVar1;\n+      puVar14[7] = uVar2;\n+      uVar1 = param_7[10];\n+      uVar2 = param_7[0xb];\n+      puVar14[8] = uVar8;\n+      puVar14[9] = uVar3;\n+      uVar8 = param_7[0xc];\n+      uVar3 = param_7[0xd];\n+      puVar14[10] = uVar1;\n+      puVar14[0xb] = uVar2;\n+      uVar1 = param_7[0xe];\n+      uVar2 = param_7[0xf];\n+      param_7 = param_7 + 0x10;\n+      puVar14[0xc] = uVar8;\n+      puVar14[0xd] = uVar3;\n+      puVar15 = puVar14 + 0x10;\n+      puVar14[0xe] = uVar1;\n+      puVar14[0xf] = uVar2;\n+      lVar17 = lVar17 + -1;\n+      puVar14 = puVar15;\n+    } while (lVar17 != 0);\n+    *(undefined4 *)puVar15 = *(undefined4 *)param_7;\n+    puVar9 = local_158;\n+    do {\n+      uVar8 = *(undefined8 *)(param_2 + 2);\n+      uVar1 = *(undefined8 *)(param_2 + 4);\n+      uVar2 = *(undefined8 *)(param_2 + 6);\n+      *(undefined8 *)puVar9 = *(undefined8 *)param_2;\n+      *(undefined8 *)(puVar9 + 2) = uVar8;\n+      uVar8 = *(undefined8 *)(param_2 + 8);\n+      uVar3 = *(undefined8 *)(param_2 + 10);\n+      *(undefined8 *)(puVar9 + 4) = uVar1;\n+      *(undefined8 *)(puVar9 + 6) = uVar2;\n+      uVar1 = *(undefined8 *)(param_2 + 0xc);\n+      uVar2 = *(undefined8 *)(param_2 + 0xe);\n+      *(undefined8 *)(puVar9 + 8) = uVar8;\n+      *(undefined8 *)(puVar9 + 10) = uVar3;\n+      uVar8 = *(undefined8 *)(param_2 + 0x10);\n+      uVar3 = *(undefined8 *)(param_2 + 0x12);\n+      *(undefined8 *)(puVar9 + 0xc) = uVar1;\n+      *(undefined8 *)(puVar9 + 0xe) = uVar2;\n+      uVar1 = *(undefined8 *)(param_2 + 0x14);\n+      uVar2 = *(undefined8 *)(param_2 + 0x16);\n+      *(undefined8 *)(puVar9 + 0x10) = uVar8;\n+      *(undefined8 *)(puVar9 + 0x12) = uVar3;\n+      uVar8 = *(undefined8 *)(param_2 + 0x18);\n+      uVar3 = *(undefined8 *)(param_2 + 0x1a);\n+      *(undefined8 *)(puVar9 + 0x14) = uVar1;\n+      *(undefined8 *)(puVar9 + 0x16) = uVar2;\n+      uVar1 = *(undefined8 *)(param_2 + 0x1c);\n+      uVar2 = *(undefined8 *)(param_2 + 0x1e);\n+      param_2 = param_2 + 0x20;\n+      *(undefined8 *)(puVar9 + 0x18) = uVar8;\n+      *(undefined8 *)(puVar9 + 0x1a) = uVar3;\n+      puVar12 = puVar9 + 0x20;\n+      *(undefined8 *)(puVar9 + 0x1c) = uVar1;\n+      *(undefined8 *)(puVar9 + 0x1e) = uVar2;\n+      lVar10 = lVar10 + -1;\n+      puVar9 = puVar12;\n+    } while (lVar10 != 0);\n+    *puVar12 = *param_2;\n+    iVar18 = CreateDhcpContextForNewLease\n+                       ((longlong *)&amp;local_478,0x80,local_158,local_458,(longlong)local_268,param_8,\n+                        &amp;local_48,local_470);\n+    ppppppplVar7 = local_478;\n+    if (iVar18 != 0) goto LAB_1;\n+    if (param_1 == 0x7f000001) {\n+      uVar4 = GrandHashing((byte *)local_478[0xb],*(uint *)(local_478 + 0xc),\n+                           (uint *)((longlong)local_478 + 0x1ac),*(uint *)(local_478 + 0x35),\n+                           *(uint *)((longlong)local_478 + 0x1a4));\n+      *(uint *)(ppppppplVar7 + 0xf) = uVar4;\n+      *(undefined4 *)((longlong)ppppppplVar7 + 0x7c) = *(undefined4 *)(ppppppplVar7 + 0x35);\n+      *(undefined4 *)((longlong)ppppppplVar7 + 0x31c) = 1;\n+    }\n+    else {\n+      uVar5 = Ordinal_14(param_1);\n+      ppppppplVar7 = local_478;\n+      iVar18 = InitializeDhcpSocket((longlong *)(local_478 + 9),uVar5);\n+      if (iVar18 != 0) goto LAB_1;\n+      while (local_46c &lt; 3) {\n+        local_46c = local_46c + 1;\n+        if ((DAT_0 &amp; 0x10) != 0) {\n+          WPP_SF_dDJ(0x404,0x16,0x18005ade8,local_46c);\n+        }\n+        uVar11 = ObtainInitialParameters(ppppppplVar7,local_468,&amp;local_454,local_448);\n+        iVar18 = (int)uVar11;\n+        if (iVar18 == 0) {\n+          iVar6 = CheckForAddressConflict\n+                            (*(int *)(ppppppplVar7 + 0xf),ppppppplVar7[0xb],\n+                             *(uint *)(ppppppplVar7 + 0xc),1);\n+          iVar18 = 0;\n+          if (iVar6 == 0x1004) {\n+            iVar18 = 0x1004;\n+          }\n+          if (iVar18 == 0) {\n             if ((DAT_0 &amp; 0x10) != 0) {\n-              WPP_SF_dDJ(0x404,0x15,0x18005ade8,uVar5);\n+              WPP_SF_DJ(0x404,0x18,0x18005ade8,*(undefined4 *)(ppppppplVar7 + 0xf));\n             }\n-            uVar9 = ObtainInitialParameters(ppppppplVar16,&amp;local_46c,local_460,local_448);\n-            uVar17 = uVar9 &amp; 0xffffffff;\n-            if ((int)uVar9 == 0) {\n-              iVar7 = CheckForAddressConflict\n-                                (*(int *)(ppppppplVar16 + 0xf),ppppppplVar16[0xb],\n-                                 *(uint *)(ppppppplVar16 + 0xc),1);\n-              uVar17 = 0;\n-              if (iVar7 == 0x1004) {\n-                uVar17 = 0x1004;\n-              }\n-              if ((int)uVar17 == 0) {\n-                if ((DAT_0 &amp; 0x10) != 0) {\n-                  WPP_SF_DJ(0x404,0x17,0x18005ade8,*(undefined4 *)(ppppppplVar16 + 0xf));\n-                }\n-                goto LAB_2;\n-              }\n-              if ((DAT_0 &amp; 0x10) != 0) {\n-                WPP_SF_(0x404,0x18,0x18005ade8);\n-              }\n-              SendDhcpDecline(ppppppplVar16,local_46c,*(undefined4 *)(ppppppplVar16 + 0x10),\n-                              *(undefined4 *)(ppppppplVar16 + 0xf));\n-              *(undefined4 *)(ppppppplVar16 + 0xf) = 0;\n-              *(undefined4 *)((longlong)ppppppplVar16 + 0x84) = 0;\n-            }\n-            else if ((DAT_0 &amp; 2) != 0) {\n-              WPP_SF_D(0x401,0x16,0x18005ade8,(int)uVar9);\n-            }\n+            goto LAB_2;\n           }\n-          if ((int)uVar17 == 0x79) {\n-            if ((DAT_0 &amp; 2) != 0) {\n-              WPP_SF_D(0x401,0x19,0x18005ade8,0x79);\n-            }\n-            uVar5 = DhcpPerformIPAutoconfiguration((longlong)ppppppplVar16);\n-            uVar17 = (ulonglong)uVar5;\n-            if (uVar5 != 0) {\n-              if ((DAT_0 &amp; 2) != 0) {\n-                WPP_SF_D(0x401,0x1a,0x18005ade8,uVar5);\n-              }\n-              goto LAB_1;\n-            }\n+          if ((DAT_0 &amp; 0x10) != 0) {\n+            WPP_SF_(0x404,0x19,0x18005ade8);\n           }\n-          else if ((int)uVar17 != 0) goto LAB_1;\n-        }\n+          SendDhcpDecline(ppppppplVar7,local_468[0],*(undefined4 *)(ppppppplVar7 + 0x10),\n+                          *(undefined4 *)(ppppppplVar7 + 0xf));\n+          *(undefined4 *)(ppppppplVar7 + 0xf) = 0;\n+          *(undefined4 *)((longlong)ppppppplVar7 + 0x84) = 0;\n+        }\n+        else if ((DAT_0 &amp; 2) != 0) {\n+          WPP_SF_D(0x401,0x17,0x18005ade8,iVar18);\n+        }\n+      }\n+      if (iVar18 == 0x79) {\n+        if ((DAT_0 &amp; 2) != 0) {\n+          WPP_SF_D(0x401,0x1a,0x18005ade8,0x79);\n+        }\n+        iVar18 = DhcpPerformIPAutoconfiguration((longlong)ppppppplVar7);\n+        if (iVar18 != 0) {\n+          if ((DAT_0 &amp; 2) == 0) goto LAB_180040051;\n+          uVar16 = 0x1b;\n+          goto LAB_3;\n+        }\n+      }\n+      else if (iVar18 != 0) goto LAB_1;\n+    }\n LAB_2:\n-        uVar5 = CreateInfoForNewLease((longlong)ppppppplVar16,&amp;local_468);\n-        puVar13 = local_458;\n-        uVar17 = (ulonglong)uVar5;\n-        if (uVar5 == 0) {\n-          *local_458 = local_468;\n-          local_468 = (HLOCAL)0x0;\n-        }\n-        if (local_468 != (HLOCAL)0x0) {\n-          LocalFree(local_468);\n-          *puVar13 = 0;\n-        }\n-      }\n-    }\n+    iVar18 = CreateInfoForNewLease((longlong)ppppppplVar7,&amp;local_460);\n+    puVar14 = local_450;\n+    if (iVar18 == 0) {\n+      *local_450 = local_460;\n+      local_460 = (HLOCAL)0x0;\n+    }\n+    if (local_460 != (HLOCAL)0x0) {\n+      LocalFree(local_460);\n+      *puVar14 = 0;\n+    }\n+  }\n+  else {\n+    iVar18 = 0x57;\n+    if ((DAT_0 &amp; 2) == 0) goto LAB_180040051;\n+    uVar16 = 0x15;\n+LAB_3:\n+    WPP_SF_D(0x401,uVar16,0x18005ade8,iVar18);\n   }\n LAB_1:\n   DhcpCleanParsedOptions(local_448);\n-  if (ppppppplVar16 != (longlong *******)0x0) {\n+  if (ppppppplVar7 != (longlong *******)0x0) {\n     LOCK();\n-    ppppppplVar16 = ppppppplVar16 + 2;\n-    iVar7 = *(int *)ppppppplVar16;\n-    *(int *)ppppppplVar16 = *(int *)ppppppplVar16 + -1;\n+    ppppppplVar7 = ppppppplVar7 + 2;\n+    iVar6 = *(int *)ppppppplVar7;\n+    *(int *)ppppppplVar7 = *(int *)ppppppplVar7 + -1;\n     UNLOCK();\n-    if (iVar7 == 1) {\n+    if (iVar6 == 1) {\n       DhcpDestroyContextEx((longlong)local_478);\n     }\n   }\n   if ((DAT_0 &amp; 0x10) != 0) {\n-    WPP_SF_D(0x404,0x1b,0x18005ade8,(int)uVar17);\n-  }\n-  return uVar17;\n+    WPP_SF_D(0x404,0x1c,0x18005ade8,iVar18);\n+  }\n+  return iVar18;\n }\n \n\n```\n\n\n## GetOriginalSubnetMask\n\n### Match Info\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521 - dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: |\n|diff_type|code,length,address|\n|ratio|0.24|\n|i_ratio|0.37|\n|m_ratio|0.83|\n|b_ratio|0.48|\n|match_types|SymbolsHash|\n\n### Function Meta Diff\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521|dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: | :---: |\n|name|GetOriginalSubnetMask|GetOriginalSubnetMask|\n|fullname|GetOriginalSubnetMask|GetOriginalSubnetMask|\n|refcount|3|3|\n|`length`|245|367|\n|called|API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::AcquireSRWLockSharedAPI-MS-WIN-CORE-SYNCH-L1-1-0.DLL::ReleaseSRWLockSharedWPP_SF_DJWPP_SF_qWS2_32.DLL::Ordinal_14memcpy|API-MS-WIN-CORE-SYNCH-L1-1-0.DLL::AcquireSRWLockSharedAPI-MS-WIN-CORE-SYNCH-L1-1-0.DLL::ReleaseSRWLockSharedWPP_SF_DJWPP_SF_qWS2_32.DLL::Ordinal_14memcpy|\n|calling|RpcSrvGetOriginalSubnetMaskRpcSrvGetOriginalSubnetMask_New|RpcSrvGetOriginalSubnetMaskRpcSrvGetOriginalSubnetMask_New|\n|paramcount|2|2|\n|`address`|18000ff44|18001a100|\n|sig|undefined4 __fastcall GetOriginalSubnetMask(longlong param_1, undefined4 * param_2)|undefined4 __fastcall GetOriginalSubnetMask(longlong param_1, undefined4 * param_2)|\n|sym_type|Function|Function|\n|sym_source|IMPORTED|IMPORTED|\n|external|False|False|\n\n### GetOriginalSubnetMask Diff\n\n\n```diff\n--- GetOriginalSubnetMask\n+++ GetOriginalSubnetMask\n@@ -1,38 +1,51 @@\n \n undefined4 GetOriginalSubnetMask(longlong param_1,undefined4 *param_2)\n \n {\n-  undefined8 *puVar1;\n-  undefined4 uVar2;\n-  undefined8 *puVar3;\n-  undefined4 uVar4;\n+  uint uVar1;\n+  undefined8 *puVar2;\n+  undefined4 uVar3;\n+  undefined8 *puVar4;\n+  ushort uVar5;\n   \n-  uVar4 = 0;\n   if (param_2 == (undefined4 *)0x0) {\n-    uVar4 = 0x57;\n+    return 0x57;\n+  }\n+  *param_2 = 0;\n+  AcquireSRWLockShared((PSRWLOCK)(param_1 + 0x2a0));\n+  puVar2 = *(undefined8 **)(param_1 + 0x2b8);\n+  do {\n+    puVar4 = puVar2;\n+    if (puVar4 == (undefined8 *)(param_1 + 0x2b8)) {\n+      if ((DAT_0 &amp; 2) != 0) {\n+        WPP_SF_q(0x401,0x3a,0x180057630,*(undefined8 *)(param_1 + 0x18));\n+      }\n+      goto LAB_1;\n+    }\n+    puVar2 = (undefined8 *)*puVar4;\n+  } while (*(int *)(puVar4 + 2) != 0xdd);\n+  uVar1 = *(uint *)(puVar4 + 7);\n+  if (g_fVelocityDhcpGetOriginalSubnetMaskFix == 0) {\n+    memcpy(param_2,(void *)puVar4[6],(ulonglong)uVar1);\n+    uVar3 = Ordinal_14(*param_2);\n+    if ((DAT_0 &amp; 0x10) == 0) goto LAB_18001a181;\n+    uVar5 = 0x3d;\n   }\n   else {\n-    *param_2 = 0;\n-    AcquireSRWLockShared((PSRWLOCK)(param_1 + 0x2a0));\n-    puVar1 = *(undefined8 **)(param_1 + 0x2b8);\n-    do {\n-      puVar3 = puVar1;\n-      if (puVar3 == (undefined8 *)(param_1 + 0x2b8)) {\n-        if ((DAT_0 &amp; 2) != 0) {\n-          WPP_SF_q(0x401,0x3a,0x180057630,*(undefined8 *)(param_1 + 0x18));\n-        }\n-        goto LAB_1;\n+    if (uVar1 != 4) {\n+      if ((DAT_0 &amp; 2) != 0) {\n+        WPP_SF_DJ(0x401,0x3c,0x180057630,uVar1);\n       }\n-      puVar1 = (undefined8 *)*puVar3;\n-    } while (*(int *)(puVar3 + 2) != 0xdd);\n-    memcpy(param_2,(void *)puVar3[6],(ulonglong)*(uint *)(puVar3 + 7));\n-    uVar2 = Ordinal_14(*param_2);\n-    if ((DAT_0 &amp; 0x10) != 0) {\n-      WPP_SF_DJ(0x404,0x3d,0x180057630,uVar2);\n+      goto LAB_1;\n     }\n+    memcpy(param_2,(void *)puVar4[6],4);\n+    uVar3 = Ordinal_14(*param_2);\n+    if ((DAT_0 &amp; 0x10) == 0) goto LAB_18001a181;\n+    uVar5 = 0x3b;\n+  }\n+  WPP_SF_DJ(0x404,uVar5,0x180057630,uVar3);\n LAB_1:\n-    ReleaseSRWLockShared((PSRWLOCK)(param_1 + 0x2a0));\n-  }\n-  return uVar4;\n+  ReleaseSRWLockShared((PSRWLOCK)(param_1 + 0x2a0));\n+  return 0;\n }\n \n\n```\n\n\n## DhcpTraceVelocityData\n\n### Match Info\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521 - dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: |\n|diff_type|code,length,address|\n|ratio|0.07|\n|i_ratio|0.74|\n|m_ratio|0.95|\n|b_ratio|0.88|\n|match_types|SymbolsHash|\n\n### Function Meta Diff\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521|dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: | :---: |\n|name|DhcpTraceVelocityData|DhcpTraceVelocityData|\n|fullname|DhcpTraceVelocityData|DhcpTraceVelocityData|\n|refcount|2|2|\n|`length`|1051|1153|\n|called|WPP_SF_L|WPP_SF_L|\n|calling|DhcpFastWppCallback|DhcpFastWppCallback|\n|paramcount|0|0|\n|`address`|18004795c|180047ab0|\n|sig|undefined __fastcall DhcpTraceVelocityData(void)|undefined __fastcall DhcpTraceVelocityData(void)|\n|sym_type|Function|Function|\n|sym_source|IMPORTED|IMPORTED|\n|external|False|False|\n\n### DhcpTraceVelocityData Diff\n\n\n```diff\n--- DhcpTraceVelocityData\n+++ DhcpTraceVelocityData\n@@ -1,113 +1,77 @@\n \n void DhcpTraceVelocityData(void)\n \n {\n-  if ((DAT_0 &amp; 0x10) != 0) {\n-    WPP_SF_L(0x404,10,0x18005b008,g_fUseIpv6OnlyPreferred);\n-    if ((DAT_0 &amp; 0x10) != 0) {\n-      WPP_SF_L(0x404,0xb,0x18005b008,g_fVelocityIpv6OnlyPreferredEnabledDefault);\n-      if ((DAT_0 &amp; 0x10) != 0) {\n-        WPP_SF_L(0x404,0xc,0x18005b008,g_fVelocityDhcpv4InformNegativeCacheFix);\n-        if ((DAT_0 &amp; 0x10) != 0) {\n-          WPP_SF_L(0x404,0xd,0x18005b008,g_fVelocityDhcpInformModifiedLeaseTimesFix);\n-          if ((DAT_0 &amp; 0x10) != 0) {\n-            WPP_SF_L(0x404,0xe,0x18005b008,g_fVelocityApistubStyleUpdate);\n-            if ((DAT_0 &amp; 0x10) != 0) {\n-              WPP_SF_L(0x404,0xf,0x18005b008,g_fVelocityDhcpClassedClasslessRoutesFix);\n-              if ((DAT_0 &amp; 0x10) != 0) {\n-                WPP_SF_L(0x404,0x10,0x18005b008,g_fVelocityDhcpv6ParserFreeCleanup);\n-                if ((DAT_0 &amp; 0x10) != 0) {\n-                  WPP_SF_L(0x404,0x11,0x18005b008,g_fVelocityDhcpv6MultiRecordOptionSupport);\n-                  if ((DAT_0 &amp; 0x10) != 0) {\n-                    WPP_SF_L(0x404,0x12,0x18005b008,g_fVelocityResetUnderRenewalStatus);\n-                    if ((DAT_0 &amp; 0x10) != 0) {\n-                      WPP_SF_L(0x404,0x13,0x18005b008,g_fVelocityAddUserClassTracing);\n-                      if ((DAT_0 &amp; 0x10) != 0) {\n-                        WPP_SF_L(0x404,0x14,0x18005b008,g_fVelocityDhcpFixEtwEventErrors);\n-                        if ((DAT_0 &amp; 0x10) != 0) {\n-                          WPP_SF_L(0x404,0x15,0x18005b008,g_fVelocityDhcpnsiv6StyleUpdate);\n-                          if ((DAT_0 &amp; 0x10) != 0) {\n-                            WPP_SF_L(0x404,0x16,0x18005b008,g_fVelocityRegFillParamsLoopFix);\n-                            if ((DAT_0 &amp; 0x10) != 0) {\n-                              WPP_SF_L(0x404,0x17,0x18005b008,g_fVelocityRemoveFTimersEnabled);\n-                              if ((DAT_0 &amp; 0x10) != 0) {\n-                                WPP_SF_L(0x404,0x18,0x18005b008,g_fVelocityDhcpIPxlatPolicyMgr);\n-                                if ((DAT_0 &amp; 0x10) != 0) {\n-                                  WPP_SF_L(0x404,0x19,0x18005b008,g_fVelocityDhcpOption108RenewFix);\n-                                  if ((DAT_0 &amp; 0x10) != 0) {\n-                                    WPP_SF_L(0x404,0x1a,0x18005b008,g_fVelocityFixDuidHardwareType);\n-                                    if ((DAT_0 &amp; 0x10) != 0) {\n-                                      WPP_SF_L(0x404,0x1b,0x18005b008,\n-                                               g_fVelocityDhcpv6ContextBitfieldUpdate);\n-                                      if ((DAT_0 &amp; 0x10) != 0) {\n-                                        WPP_SF_L(0x404,0x1c,0x18005b008,\n-                                                 g_fVelocityUpdateErrorDumpLimit);\n-                                        if ((DAT_0 &amp; 0x10) != 0) {\n-                                          WPP_SF_L(0x404,0x1d,0x18005b008,\n-                                                   g_fVelocityDhcpSocketRaceConditionFix);\n-                                          if ((DAT_0 &amp; 0x10) != 0) {\n-                                            WPP_SF_L(0x404,0x1e,0x18005b008,\n-                                                     g_fVelocityStaticRouteCleanup);\n-                                            if ((DAT_0 &amp; 0x10) != 0) {\n-                                              WPP_SF_L(0x404,0x1f,0x18005b008,\n-                                                       g_fVelocityDhcpCaptivePortalSupport);\n-                                              if ((DAT_0 &amp; 0x10) != 0) {\n-                                                WPP_SF_L(0x404,0x20,0x18005b008,\n-                                                         g_fVelocityDhcpRenewThreadRaceConditionFix)\n-                                                ;\n-                                                if ((DAT_0 &amp; 0x10) != 0) {\n-                                                  WPP_SF_L(0x404,0x21,0x18005b008,\n-                                                           g_fVelocityDhcpv6StaleOptionRemoval);\n-                                                  if ((DAT_0 &amp; 0x10) != 0) {\n-                                                    WPP_SF_L(0x404,0x22,0x18005b008,g_fVelocityDnr);\n-                                                    if ((DAT_0 &amp; 0x10) != 0) {\n-                                                      WPP_SF_L(0x404,0x23,0x18005b008,\n-                                                                                                                              \n-                                                  g_fVelocityConnectedStandbyHandlingCleanup);\n-                                                  if ((DAT_0 &amp; 0x10) != 0) {\n-                                                    WPP_SF_L(0x404,0x24,0x18005b008,\n-                                                                                                                          \n-                                                  g_fVelocityRpcMsftVendorSpecificOptionsFix);\n-                                                  if ((DAT_0 &amp; 0x10) != 0) {\n-                                                    WPP_SF_L(0x404,0x25,0x18005b008,\n-                                                             g_fVelocityDhcpv6AiBugFinderHighFixes);\n-                                                    if ((DAT_0 &amp; 0x10) != 0) {\n-                                                      WPP_SF_L(0x404,0x27,0x18005b008,\n-                                                               g_fVelocityDhcpRpcAuthnSvcUpdate);\n-                                                      if ((DAT_0 &amp; 0x10) != 0) {\n-                                                        WPP_SF_L(0x404,0x28,0x18005b008,\n-                                                                 g_fVelocityAiBugFinderLockLeakFixes\n-                                                                );\n-                                                      }\n-                                                    }\n-                                                  }\n-                                                  }\n-                                                  }\n-                                                  }\n-                                                }\n-                                              }\n-                                            }\n-                                          }\n-                                        }\n-                                      }\n-                                    }\n-                                  }\n-                                }\n-                              }\n-                            }\n-                          }\n-                        }\n-                      }\n-                    }\n-                  }\n-                }\n-              }\n-            }\n-          }\n-        }\n-      }\n+  if (((((((((DAT_0 &amp; 0x10) != 0) &amp;&amp;\n+           (WPP_SF_L(0x404,10,0x18005b008,g_fUseIpv6OnlyPreferred), (DAT_0 &amp; 0x10) != 0)) &amp;&amp;\n+          (WPP_SF_L(0x404,0xb,0x18005b008,g_fVelocityIpv6OnlyPreferredEnabledDefault),\n+          (DAT_0 &amp; 0x10) != 0)) &amp;&amp;\n+         (((WPP_SF_L(0x404,0xc,0x18005b008,g_fVelocityDhcpv4InformNegativeCacheFix),\n+           (DAT_0 &amp; 0x10) != 0 &amp;&amp;\n+           (WPP_SF_L(0x404,0xd,0x18005b008,g_fVelocityDhcpInformModifiedLeaseTimesFix),\n+           (DAT_0 &amp; 0x10) != 0)) &amp;&amp;\n+          ((WPP_SF_L(0x404,0xe,0x18005b008,g_fVelocityApistubStyleUpdate),\n+           (DAT_0 &amp; 0x10) != 0 &amp;&amp;\n+           ((WPP_SF_L(0x404,0xf,0x18005b008,g_fVelocityDhcpClassedClasslessRoutesFix),\n+            (DAT_0 &amp; 0x10) != 0 &amp;&amp;\n+            (WPP_SF_L(0x404,0x10,0x18005b008,g_fVelocityDhcpv6ParserFreeCleanup),\n+            (DAT_0 &amp; 0x10) != 0)))))))) &amp;&amp;\n+        (WPP_SF_L(0x404,0x11,0x18005b008,g_fVelocityDhcpv6MultiRecordOptionSupport),\n+        (DAT_0 &amp; 0x10) != 0)) &amp;&amp;\n+       ((((WPP_SF_L(0x404,0x12,0x18005b008,g_fVelocityResetUnderRenewalStatus),\n+          (DAT_0 &amp; 0x10) != 0 &amp;&amp;\n+          (WPP_SF_L(0x404,0x13,0x18005b008,g_fVelocityAddUserClassTracing),\n+          (DAT_0 &amp; 0x10) != 0)) &amp;&amp;\n+         (WPP_SF_L(0x404,0x14,0x18005b008,g_fVelocityDhcpFixEtwEventErrors),\n+         (DAT_0 &amp; 0x10) != 0)) &amp;&amp;\n+        (((WPP_SF_L(0x404,0x15,0x18005b008,g_fVelocityDhcpnsiv6StyleUpdate),\n+          (DAT_0 &amp; 0x10) != 0 &amp;&amp;\n+          (WPP_SF_L(0x404,0x16,0x18005b008,g_fVelocityRegFillParamsLoopFix),\n+          (DAT_0 &amp; 0x10) != 0)) &amp;&amp;\n+         ((WPP_SF_L(0x404,0x17,0x18005b008,g_fVelocityRemoveFTimersEnabled),\n+          (DAT_0 &amp; 0x10) != 0 &amp;&amp;\n+          ((WPP_SF_L(0x404,0x18,0x18005b008,g_fVelocityDhcpIPxlatPolicyMgr),\n+           (DAT_0 &amp; 0x10) != 0 &amp;&amp;\n+           (WPP_SF_L(0x404,0x19,0x18005b008,g_fVelocityDhcpOption108RenewFix),\n+           (DAT_0 &amp; 0x10) != 0)))))))))) &amp;&amp;\n+      ((WPP_SF_L(0x404,0x1a,0x18005b008,g_fVelocityFixDuidHardwareType), (DAT_0 &amp; 0x10) != 0\n+       &amp;&amp; (((((WPP_SF_L(0x404,0x1b,0x18005b008,g_fVelocityDhcpv6ContextBitfieldUpdate),\n+              (DAT_0 &amp; 0x10) != 0 &amp;&amp;\n+              (WPP_SF_L(0x404,0x1c,0x18005b008,g_fVelocityUpdateErrorDumpLimit),\n+              (DAT_0 &amp; 0x10) != 0)) &amp;&amp;\n+             (WPP_SF_L(0x404,0x1d,0x18005b008,g_fVelocityDhcpSocketRaceConditionFix),\n+             (DAT_0 &amp; 0x10) != 0)) &amp;&amp;\n+            ((WPP_SF_L(0x404,0x1e,0x18005b008,g_fVelocityStaticRouteCleanup),\n+             (DAT_0 &amp; 0x10) != 0 &amp;&amp;\n+             (WPP_SF_L(0x404,0x1f,0x18005b008,g_fVelocityDhcpCaptivePortalSupport),\n+             (DAT_0 &amp; 0x10) != 0)))) &amp;&amp;\n+           ((WPP_SF_L(0x404,0x20,0x18005b008,g_fVelocityDhcpRenewThreadRaceConditionFix),\n+            (DAT_0 &amp; 0x10) != 0 &amp;&amp;\n+            ((WPP_SF_L(0x404,0x21,0x18005b008,g_fVelocityDhcpv6StaleOptionRemoval),\n+             (DAT_0 &amp; 0x10) != 0 &amp;&amp;\n+             (WPP_SF_L(0x404,0x22,0x18005b008,g_fVelocityDnr), (DAT_0 &amp; 0x10) != 0))))))))))\n+     &amp;&amp; ((WPP_SF_L(0x404,0x23,0x18005b008,g_fVelocityConnectedStandbyHandlingCleanup),\n+         (DAT_0 &amp; 0x10) != 0 &amp;&amp;\n+         (WPP_SF_L(0x404,0x24,0x18005b008,g_fVelocityRpcMsftVendorSpecificOptionsFix),\n+         (DAT_0 &amp; 0x10) != 0)))) {\n+    WPP_SF_L(0x404,0x25,0x18005b008,g_fVelocityDhcpv6AiBugFinderHighFixes);\n+  }\n+  if ((g_fVelocityDhcpv4ClassIdLenOverflowFix != 0) &amp;&amp; ((DAT_0 &amp; 0x10) != 0)) {\n+    WPP_SF_L(0x404,0x26,0x18005b008,g_fVelocityDhcpv4ClassIdLenOverflowFix);\n+  }\n+  if (g_fVelocityDhcpv4LeaseIpAddressOverflow != 0) {\n+    if ((DAT_0 &amp; 0x10) == 0) {\n+      return;\n     }\n+    WPP_SF_L(0x404,0x27,0x18005b008,g_fVelocityDhcpv4LeaseIpAddressOverflow);\n+  }\n+  if ((((DAT_0 &amp; 0x10) != 0) &amp;&amp;\n+      (WPP_SF_L(0x404,0x28,0x18005b008,g_fVelocityDhcpGetOriginalSubnetMaskFix),\n+      (DAT_0 &amp; 0x10) != 0)) &amp;&amp;\n+     (WPP_SF_L(0x404,0x29,0x18005b008,g_fVelocityDhcpRpcAuthnSvcUpdate), (DAT_0 &amp; 0x10) != 0\n+     )) {\n+    WPP_SF_L(0x404,0x2a,0x18005b008,g_fVelocityAiBugFinderLockLeakFixes);\n   }\n   return;\n }\n \n\n```\n\n\n## DhcpInitializeGlobalVelocityData\n\n### Match Info\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521 - dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: |\n|diff_type|code,length,address,called|\n|ratio|0.89|\n|i_ratio|0.58|\n|m_ratio|0.89|\n|b_ratio|0.89|\n|match_types|SymbolsHash|\n\n### Function Meta Diff\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521|dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: | :---: |\n|name|DhcpInitializeGlobalVelocityData|DhcpInitializeGlobalVelocityData|\n|fullname|DhcpInitializeGlobalVelocityData|DhcpInitializeGlobalVelocityData|\n|refcount|2|2|\n|`length`|324|390|\n|`called`|\nExpand for full list:Feature_58976313__private_IsEnabledDeviceUsageNoInlineFeature_59101910__private_IsEnabledDeviceUsageNoInlineFeature_60512953__private_IsEnabledDeviceUsageNoInlineFeature_61186233__private_IsEnabledDeviceUsageNoInlineFeature_61277108__private_IsEnabledDeviceUsageNoInlineFeature_61561226__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_DHCP_Option108__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_Preview2_Dhcp108Default__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_Preview2_DhcpIPxlatPolicyMgr__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_Preview2_DhcpOption108RenewFix__private_IsEnabledDeviceUsageNoInlineFeature_Servicing_Dhcpv4InformNegativeCacheResetTimersOnWakeFix__private_IsEnabledDeviceUsageNoInline|\nExpand for full list:Feature_2263349562__private_IsEnabledDeviceUsageNoInlineFeature_3211771192__private_IsEnabledDeviceUsageNoInlineFeature_341032248__private_IsEnabledDeviceUsageNoInlineFeature_58976313__private_IsEnabledDeviceUsageNoInlineFeature_59101910__private_IsEnabledDeviceUsageNoInlineFeature_60512953__private_IsEnabledDeviceUsageNoInlineFeature_61186233__private_IsEnabledDeviceUsageNoInlineFeature_61277108__private_IsEnabledDeviceUsageNoInlineFeature_61561226__private_IsEnabledDeviceUsageNoInlineFeature_849856826__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_DHCP_Option108__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_Preview2_Dhcp108Default__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_Preview2_DhcpIPxlatPolicyMgr__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_Preview2_DhcpOption108RenewFix__private_IsEnabledDeviceUsageNoInlineFeature_Servicing_Dhcpv4InformNegativeCacheResetTimersOnWakeFix__private_IsEnabledDeviceUsageNoInline|\n|calling|DhcpInitGlobalData|DhcpInitGlobalData|\n|paramcount|0|0|\n|`address`|180047810|180047920|\n|sig|undefined __fastcall DhcpInitializeGlobalVelocityData(void)|undefined __fastcall DhcpInitializeGlobalVelocityData(void)|\n|sym_type|Function|Function|\n|sym_source|IMPORTED|IMPORTED|\n|external|False|False|\n\n### DhcpInitializeGlobalVelocityData Called Diff\n\n\n```diff\n--- DhcpInitializeGlobalVelocityData called\n+++ DhcpInitializeGlobalVelocityData called\n@@ -0,0 +1,3 @@\n+Feature_2263349562__private_IsEnabledDeviceUsageNoInline\n+Feature_3211771192__private_IsEnabledDeviceUsageNoInline\n+Feature_341032248__private_IsEnabledDeviceUsageNoInline\n@@ -6,0 +10 @@\n+Feature_849856826__private_IsEnabledDeviceUsageNoInline\n```\n\n\n### DhcpInitializeGlobalVelocityData Diff\n\n\n```diff\n--- DhcpInitializeGlobalVelocityData\n+++ DhcpInitializeGlobalVelocityData\n@@ -1,51 +1,58 @@\n \n void DhcpInitializeGlobalVelocityData(void)\n \n {\n   uint uVar1;\n   \n   uVar1 = Feature_CLAT_DHCP_Option108__private_IsEnabledDeviceUsageNoInline();\n   g_fUseIpv6OnlyPreferred = (uint)(uVar1 != 0);\n   uVar1 = Feature_CLAT_Preview2_Dhcp108Default__private_IsEnabledDeviceUsageNoInline();\n   g_fVelocityIpv6OnlyPreferredEnabledDefault = (uint)(uVar1 != 0);\n   uVar1 = Feature_Servicing_Dhcpv4InformNegativeCacheResetTimersOnWakeFix__private_IsEnabledDeviceUsageNoInline\n                     ();\n   g_fVelocityDhcpv4InformNegativeCacheFix = (uint)(uVar1 != 0);\n   uVar1 = Feature_58976313__private_IsEnabledDeviceUsageNoInline();\n   g_fVelocityDhcpv6MultiRecordOptionSupport = (uint)(uVar1 != 0);\n   uVar1 = Feature_CLAT_Preview2_DhcpIPxlatPolicyMgr__private_IsEnabledDeviceUsageNoInline();\n   g_fVelocityDhcpIPxlatPolicyMgr = (uint)(uVar1 != 0);\n   uVar1 = Feature_CLAT_Preview2_DhcpOption108RenewFix__private_IsEnabledDeviceUsageNoInline();\n   g_fVelocityDhcpOption108RenewFix = (uint)(uVar1 != 0);\n   uVar1 = Feature_61277108__private_IsEnabledDeviceUsageNoInline();\n-  g_fVelocityDhcpv6StaleOptionRemoval = 0;\n+  g_fVelocityDhcpCaptivePortalSupport = (uint)(uVar1 != 0);\n+  uVar1 = Feature_2263349562__private_IsEnabledDeviceUsageNoInline();\n   g_fVelocityDnr = 0;\n-  g_fVelocityDhcpCaptivePortalSupport = (uint)(uVar1 != 0);\n+  g_fVelocityDhcpv6StaleOptionRemoval = (uint)(uVar1 != 0);\n+  uVar1 = Feature_341032248__private_IsEnabledDeviceUsageNoInline();\n+  g_fVelocityDhcpv4ClassIdLenOverflowFix = (uint)(uVar1 != 0);\n+  uVar1 = Feature_3211771192__private_IsEnabledDeviceUsageNoInline();\n+  g_fVelocityDhcpv4LeaseIpAddressOverflow = (uint)(uVar1 != 0);\n+  uVar1 = Feature_849856826__private_IsEnabledDeviceUsageNoInline();\n+  g_fVelocityDhcpGetOriginalSubnetMaskFix = (uint)(uVar1 != 0);\n   uVar1 = Feature_59101910__private_IsEnabledDeviceUsageNoInline();\n   g_fVelocityDhcpFixEtwEventErrors = (uint)(uVar1 != 0);\n   g_fVelocityApistubStyleUpdate = g_fVelocityDhcpFixEtwEventErrors;\n   g_fVelocityResetUnderRenewalStatus = g_fVelocityDhcpFixEtwEventErrors;\n   g_fVelocityDhcpClassedClasslessRoutesFix = g_fVelocityDhcpFixEtwEventErrors;\n   g_fVelocityAddUserClassTracing = g_fVelocityDhcpFixEtwEventErrors;\n   g_fVelocityDhcpv6ParserFreeCleanup = g_fVelocityDhcpFixEtwEventErrors;\n   uVar1 = Feature_60512953__private_IsEnabledDeviceUsageNoInline();\n   g_fVelocityRemoveFTimersEnabled = (uint)(uVar1 != 0);\n   g_fVelocityDhcpSocketRaceConditionFix = g_fVelocityRemoveFTimersEnabled;\n   g_fVelocityUpdateErrorDumpLimit = g_fVelocityRemoveFTimersEnabled;\n   g_fVelocityDhcpv6ContextBitfieldUpdate = g_fVelocityRemoveFTimersEnabled;\n   g_fVelocityFixDuidHardwareType = g_fVelocityRemoveFTimersEnabled;\n   g_fVelocityRegFillParamsLoopFix = g_fVelocityRemoveFTimersEnabled;\n   g_fVelocityDhcpnsiv6StyleUpdate = g_fVelocityRemoveFTimersEnabled;\n   uVar1 = Feature_61186233__private_IsEnabledDeviceUsageNoInline();\n   g_fVelocityDhcpInformModifiedLeaseTimesFix = (uint)(uVar1 != 0);\n   g_fVelocityStaticRouteCleanup = g_fVelocityDhcpInformModifiedLeaseTimesFix;\n   g_fVelocityDhcpRenewThreadRaceConditionFix = g_fVelocityDhcpInformModifiedLeaseTimesFix;\n   uVar1 = Feature_61561226__private_IsEnabledDeviceUsageNoInline();\n   g_fVelocityConnectedStandbyHandlingCleanup = (uint)(uVar1 != 0);\n   g_fVelocityRpcMsftVendorSpecificOptionsFix = g_fVelocityConnectedStandbyHandlingCleanup;\n   g_fVelocityDhcpv6AiBugFinderHighFixes = g_fVelocityConnectedStandbyHandlingCleanup;\n   g_fVelocityDhcpRpcAuthnSvcUpdate = g_fVelocityConnectedStandbyHandlingCleanup;\n   g_fVelocityAiBugFinderLockLeakFixes = g_fVelocityConnectedStandbyHandlingCleanup;\n   return;\n }\n \n\n```\n\n\n# Modified (No Code Changes)\n\n\n*Slightly modified functions have no code changes, rather differnces in:*\n- refcount\n- length\n- called\n- calling\n- name\n- fullname\n\n## WS2_32.DLL::Ordinal_14\n\n### Match Info\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521 - dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: |\n|diff_type|refcount|\n|ratio|1.0|\n|i_ratio|1.0|\n|m_ratio|1.0|\n|b_ratio|1.0|\n|match_types|SymbolsHash,ExternalsName|\n\n### Function Meta Diff\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521|dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: | :---: |\n|name|Ordinal_14|Ordinal_14|\n|fullname|WS2_32.DLL::Ordinal_14|WS2_32.DLL::Ordinal_14|\n|`refcount`|45|46|\n|length|0|0|\n|called|||\n|calling|\nExpand for full list:AppendMadcapAddressListApplyOptionsToDhcpContextCheckMessageCreateInfoForNewLeaseDhcpCleanupStackDhcpEnumClassesDhcpFindDwordOptionDhcpGetPrefixLengthDhcpParseOptionListDhcpRegSaveOptionAtLocationDhcpUninitializeInterfaceDispatchPktExpandMadcapAddressListGetOriginalSubnetMaskGetSpecifiedDhcpMessageExLeaseIpAddressExObtainMScopeListProcessRecvFromSocketRenewIpAddressLeaseExRenewMadcapAddressSendDhcpMessageStoreMScopeListTryReceive|\nExpand for full list:AppendMadcapAddressListApplyOptionsToDhcpContextCheckMessageCreateInfoForNewLeaseDhcpCleanupStackDhcpEnumClassesDhcpFindDwordOptionDhcpGetPrefixLengthDhcpParseOptionListDhcpRegSaveOptionAtLocationDhcpUninitializeInterfaceDispatchPktExpandMadcapAddressListGetOriginalSubnetMaskGetSpecifiedDhcpMessageExLeaseIpAddressExObtainMScopeListProcessRecvFromSocketRenewIpAddressLeaseExRenewMadcapAddressSendDhcpMessageStoreMScopeListTryReceive|\n|paramcount|0|0|\n|address|EXTERNAL:000000da|EXTERNAL:000000da|\n|sig|undefined Ordinal_14(void)|undefined Ordinal_14(void)|\n|sym_type|Function|Function|\n|sym_source|IMPORTED|IMPORTED|\n|external|True|True|\n\n## WPP_SF_L\n\n### Match Info\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521 - dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: |\n|diff_type|refcount|\n|ratio|1.0|\n|i_ratio|0.91|\n|m_ratio|1.0|\n|b_ratio|1.0|\n|match_types|SymbolsHash|\n\n### Function Meta Diff\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521|dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: | :---: |\n|name|WPP_SF_L|WPP_SF_L|\n|fullname|WPP_SF_L|WPP_SF_L|\n|`refcount`|176|179|\n|length|44|44|\n|called|FastWppTraceMessage|FastWppTraceMessage|\n|calling|\nExpand for full list:AnyGatewaysReachableAppendWideOptionApplyStaticRoutesAsyncSelectCRpcWatchDog::StartCalculateTimeToSleepCheckIfPdcActivationDisabledCheckIfSystemSupportsAOACCheckMessageCreateRenewTimerDeleteRenewTimerDhcpAddClassDhcpAddIncomingOptionExDhcpAddMissingOptionsDhcpAppendHostNameOptionDhcpAppendOptionDhcpAppendSendOptionsDhcpApplyRoutingDhcpAssembleOptionsForParsingDhcpBuildParsedOptionsDhcpCacheScavangerDhcpClientDumpMessageDhcpComputeRetrySleepIntervalDhcpDelClassDhcpDynDnsRegisterAdapterDhcpEnumIPv4AddressDhcpEnumRoutesDhcpFindOptionDhcpFirewallCleanupDhcpFirewallInitDhcpFreeAllClassesDhcpInitGlobalDataDhcpInitStateDhcpIsIpv6OnlyPreferredDhcpMakeContextDhcpParseOptionListDhcpParseVendorOptionDhcpReadSavedConfigurationsDhcpRegClearOptDefsExDhcpRegSaveOptionAtLocationDhcpSetThreadCompartmentIdDhcpStandbyCheckAndSignalFailureDhcpStandbyGetFailureCountDhcpStandbyGetNetworkBlockedDhcpStandbyResetStatusDhcpStartRPCServerDhcpTraceVelocityDataDhcpUnicastAddressChangeCallbackDhcpUpdateContextStateAfterInitRenewDhcpV4ActivateNetworkDhcpV4ActivateNetwork_NewDhcpV4DeactivateNetworkDispatchPktEnumerateObjectsInternalEnumerateScopesExpandRegLocationFromValueGenMadcapClientUIDGetRegistryClassIdNameGetSpecifiedDhcpMessageExMadcapAddIncomingOptionObtainMScopeListOnTimeoutCallbackOpenDhcpSocketPdcDeactivateNetworkPdcInitializePdcUnInitializeProcessDhcpRequestForeverProcessRecvFromSocketProcessSingleContextReadClientIDReleaseAddressRenewAddressRenewIpAddressLeaseExRenewLeaseReplaceConfigRequestAddressRpcSrvEnableDhcpAdvancedRpcSrvIsMeteredDetectedRpcSrvQueryLeaseInfo_NewRpcSrvRegisterConnectionStateNotificationRpcSrvRegisterConnectionStateNotification_NewSendDummyDiscoverForDiagnosticsSendInformAndGetRepliesSetExpiryTimeForNonReceivedOptionsStoreMScopeListSystemInitializeTriggerAddressAcquisitionOnModernStandbyExitTryReceiveTrySetRenewalFunctionUpdateFirewall|\nExpand for full list:AnyGatewaysReachableAppendWideOptionApplyStaticRoutesAsyncSelectCRpcWatchDog::StartCalculateTimeToSleepCheckIfPdcActivationDisabledCheckIfSystemSupportsAOACCheckMessageCreateRenewTimerDeleteRenewTimerDhcpAddClassDhcpAddIncomingOptionExDhcpAddMissingOptionsDhcpAppendHostNameOptionDhcpAppendOptionDhcpAppendSendOptionsDhcpApplyRoutingDhcpAssembleOptionsForParsingDhcpBuildParsedOptionsDhcpCacheScavangerDhcpClientDumpMessageDhcpComputeRetrySleepIntervalDhcpDelClassDhcpDynDnsRegisterAdapterDhcpEnumIPv4AddressDhcpEnumRoutesDhcpFindOptionDhcpFirewallCleanupDhcpFirewallInitDhcpFreeAllClassesDhcpInitGlobalDataDhcpInitStateDhcpIsIpv6OnlyPreferredDhcpMakeContextDhcpParseOptionListDhcpParseVendorOptionDhcpReadSavedConfigurationsDhcpRegClearOptDefsExDhcpRegSaveOptionAtLocationDhcpSetThreadCompartmentIdDhcpStandbyCheckAndSignalFailureDhcpStandbyGetFailureCountDhcpStandbyGetNetworkBlockedDhcpStandbyResetStatusDhcpStartRPCServerDhcpTraceVelocityDataDhcpUnicastAddressChangeCallbackDhcpUpdateContextStateAfterInitRenewDhcpV4ActivateNetworkDhcpV4ActivateNetwork_NewDhcpV4DeactivateNetworkDispatchPktEnumerateObjectsInternalEnumerateScopesExpandRegLocationFromValueGenMadcapClientUIDGetRegistryClassIdNameGetSpecifiedDhcpMessageExMadcapAddIncomingOptionObtainMScopeListOnTimeoutCallbackOpenDhcpSocketPdcDeactivateNetworkPdcInitializePdcUnInitializeProcessDhcpRequestForeverProcessRecvFromSocketProcessSingleContextReadClientIDReleaseAddressRenewAddressRenewIpAddressLeaseExRenewLeaseReplaceConfigRequestAddressRpcSrvEnableDhcpAdvancedRpcSrvIsMeteredDetectedRpcSrvQueryLeaseInfo_NewRpcSrvRegisterConnectionStateNotificationRpcSrvRegisterConnectionStateNotification_NewSendDummyDiscoverForDiagnosticsSendInformAndGetRepliesSetExpiryTimeForNonReceivedOptionsStoreMScopeListSystemInitializeTriggerAddressAcquisitionOnModernStandbyExitTryReceiveTrySetRenewalFunctionUpdateFirewall|\n|paramcount|4|4|\n|address|180050adc|180050adc|\n|sig|undefined __fastcall WPP_SF_L(undefined2 param_1, ushort param_2, ULONGLONG param_3, undefined4 param_4)|undefined __fastcall WPP_SF_L(undefined2 param_1, ushort param_2, ULONGLONG param_3, undefined4 param_4)|\n|sym_type|Function|Function|\n|sym_source|IMPORTED|IMPORTED|\n|external|False|False|\n\n## WPP_SF_DJ\n\n### Match Info\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521 - dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: |\n|diff_type|refcount|\n|ratio|1.0|\n|i_ratio|0.93|\n|m_ratio|1.0|\n|b_ratio|1.0|\n|match_types|SymbolsHash|\n\n### Function Meta Diff\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521|dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: | :---: |\n|name|WPP_SF_DJ|WPP_SF_DJ|\n|fullname|WPP_SF_DJ|WPP_SF_DJ|\n|`refcount`|74|75|\n|length|60|60|\n|called|FastWppTraceMessage|FastWppTraceMessage|\n|calling|\nExpand for full list:CheckMessageDhcpAddIPv4AddressDhcpAddIPv4RouteDhcpClearAllStackParametersDhcpCreateThreadAndRenewDhcpDelIPv4AddressDhcpDelIPv4RouteDhcpDeleteGatewaysAndStaticRoutesDhcpDeleteIpRouteDhcpDoInformDhcpEnumRoutesDhcpGetInterfaceFromIPv4AddressDhcpGetStackGatewaysDhcpInitRebootStateDhcpInitStateDhcpNotifyDNSDhcpNotifyRouterDiscoveryOptionDhcpRenewStateDhcpRequestingStateDhcpSetInterfaceDeferringLeaseDhcpSetIpRouteDhcpUpdateIPv4AddressLifetimeDhcpUpdateIPv4RouteLifetimeDhcpV4DeactivateNetworkDisableDhcpDoDNSRegistrationEnableFallbackGetCurrentMessageSizeGetDADStateFromIpStackGetOriginalSubnetMaskGetSpecifiedDhcpMessageGetSpecifiedMadcapMessageLeaseIpAddressExMadcapDoInformObtainMadcapAddressReObtainInitialParametersReRenewParametersByBroadcastForApiCallReleaseIpAddressReleaseMadcapAddressRenewLeaseRenewMadcapAddressScheduleDhcpRenewalSendDhcpMessageSendMadcapMessageStaticRefreshParamsExWaitForOfferForDiagnostics|\nExpand for full list:CheckMessageDhcpAddIPv4AddressDhcpAddIPv4RouteDhcpClearAllStackParametersDhcpCreateThreadAndRenewDhcpDelIPv4AddressDhcpDelIPv4RouteDhcpDeleteGatewaysAndStaticRoutesDhcpDeleteIpRouteDhcpDoInformDhcpEnumRoutesDhcpGetInterfaceFromIPv4AddressDhcpGetStackGatewaysDhcpInitRebootStateDhcpInitStateDhcpNotifyDNSDhcpNotifyRouterDiscoveryOptionDhcpRenewStateDhcpRequestingStateDhcpSetInterfaceDeferringLeaseDhcpSetIpRouteDhcpUpdateIPv4AddressLifetimeDhcpUpdateIPv4RouteLifetimeDhcpV4DeactivateNetworkDisableDhcpDoDNSRegistrationEnableFallbackGetCurrentMessageSizeGetDADStateFromIpStackGetOriginalSubnetMaskGetSpecifiedDhcpMessageGetSpecifiedMadcapMessageLeaseIpAddressExMadcapDoInformObtainMadcapAddressReObtainInitialParametersReRenewParametersByBroadcastForApiCallReleaseIpAddressReleaseMadcapAddressRenewLeaseRenewMadcapAddressScheduleDhcpRenewalSendDhcpMessageSendMadcapMessageStaticRefreshParamsExWaitForOfferForDiagnostics|\n|paramcount|4|4|\n|address|18004c268|18004c268|\n|sig|undefined __fastcall WPP_SF_DJ(undefined2 param_1, ushort param_2, ULONGLONG param_3, undefined4 param_4)|undefined __fastcall WPP_SF_DJ(undefined2 param_1, ushort param_2, ULONGLONG param_3, undefined4 param_4)|\n|sym_type|Function|Function|\n|sym_source|IMPORTED|IMPORTED|\n|external|False|False|\n\n## wil_details_IsEnabledFallback\n\n### Match Info\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521 - dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: |\n|diff_type|refcount,address,calling|\n|ratio|1.0|\n|i_ratio|0.83|\n|m_ratio|1.0|\n|b_ratio|1.0|\n|match_types|SymbolsHash|\n\n### Function Meta Diff\n\n\n\n|Key|dhcpcore.dll.x64.10.0.26100.8521|dhcpcore.dll.x64.10.0.26100.8655|\n| :---: | :---: | :---: |\n|name|wil_details_IsEnabledFallback|wil_details_IsEnabledFallback|\n|fullname|wil_details_IsEnabledFallback|wil_details_IsEnabledFallback|\n|`refcount`|13|17|\n|length|140|140|\n|called|wil_details_FeatureReporting_ReportUsageToServicewil_details_FeatureStateCache_ReevaluateCachedFeatureEnabledStatewil_details_FeatureStateCache_TryEnableDeviceUsageFastPath|wil_details_FeatureReporting_ReportUsageToServicewil_details_FeatureStateCache_ReevaluateCachedFeatureEnabledStatewil_details_FeatureStateCache_TryEnableDeviceUsageFastPath|\n|`calling`|\nExpand for full list:Feature_58976313__private_IsEnabledDeviceUsageNoInlineFeature_59101910__private_IsEnabledDeviceUsageNoInlineFeature_60512953__private_IsEnabledDeviceUsageNoInlineFeature_61186233__private_IsEnabledDeviceUsageNoInlineFeature_61277108__private_IsEnabledDeviceUsageNoInlineFeature_61561226__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_DHCP_Option108__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_Preview2_Dhcp108Default__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_Preview2_DhcpIPxlatPolicyMgr__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_Preview2_DhcpOption108RenewFix__private_IsEnabledDeviceUsageNoInlineFeature_ModernWpp__private_IsEnabledDeviceUsageNoInlineFeature_Servicing_Dhcpv4InformNegativeCacheResetTimersOnWakeFix__private_IsEnabledDeviceUsageNoInline|\nExpand for full list:Feature_2263349562__private_IsEnabledDeviceUsageNoInlineFeature_3211771192__private_IsEnabledDeviceUsageNoInlineFeature_341032248__private_IsEnabledDeviceUsageNoInlineFeature_58976313__private_IsEnabledDeviceUsageNoInlineFeature_59101910__private_IsEnabledDeviceUsageNoInlineFeature_60512953__private_IsEnabledDeviceUsageNoInlineFeature_61186233__private_IsEnabledDeviceUsageNoInlineFeature_61277108__private_IsEnabledDeviceUsageNoInlineFeature_61561226__private_IsEnabledDeviceUsageNoInlineFeature_849856826__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_DHCP_Option108__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_Preview2_Dhcp108Default__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_Preview2_DhcpIPxlatPolicyMgr__private_IsEnabledDeviceUsageNoInlineFeature_CLAT_Preview2_DhcpOption108RenewFix__private_IsEnabledDeviceUsageNoInlineFeature_ModernWpp__private_IsEnabledDeviceUsageNoInlineFeature_Servicing_Dhcpv4InformNegativeCacheResetTimersOnWakeFix__private_IsEnabledDeviceUsageNoInline|\n|paramcount|3|3|\n|`address`|180028598|180028628|\n|sig|uint __fastcall wil_details_IsEnabledFallback(ulonglong param_1, int param_2, undefined8 * param_3)|uint __fastcall wil_details_IsEnabledFallback(ulonglong param_1, int param_2, undefined8 * param_3)|\n|sym_type|Function|Function|\n|sym_source|IMPORTED|IMPORTED|\n|external|False|False|\n\n### wil_details_IsEnabledFallback Calling Diff\n\n\n```diff\n--- wil_details_IsEnabledFallback calling\n+++ wil_details_IsEnabledFallback calling\n@@ -0,0 +1,3 @@\n+Feature_2263349562__private_IsEnabledDeviceUsageNoInline\n+Feature_3211771192__private_IsEnabledDeviceUsageNoInline\n+Feature_341032248__private_IsEnabledDeviceUsageNoInline\n@@ -6,0 +10 @@\n+Feature_849856826__private_IsEnabledDeviceUsageNoInline\n```\n\n\n\n\nGenerated with `ghidriff` version: 1.0.0 on 2026-08-07T15:36:44", "creation_timestamp": "2026-08-07T17:20:48.733322Z"}