diff --git a/AmiNetworkPkg/UefiNetworkStack/Common/IpSecDxe/IpSecDxe/IpSecDxe.c b/AmiNetworkPkg/UefiNetworkStack/Common/IpSecDxe/IpSecDxe/IpSecDxe.c index c03e3e4..f5dda06 100644 --- a/AmiNetworkPkg/UefiNetworkStack/Common/IpSecDxe/IpSecDxe/IpSecDxe.c +++ b/AmiNetworkPkg/UefiNetworkStack/Common/IpSecDxe/IpSecDxe/IpSecDxe.c @@ -92,9 +92,9 @@ /* IPSec V4 driver binding (from 0x12A6D0) */ static EFI_DRIVER_BINDING_PROTOCOL gIpSecV4DriverBinding = { - IpSecV4DriverBindingSupported, /* supported = sub_9C0 */ - IpSecV4DriverBindingStart, /* Start = sub_A10 */ - IpSecV4DriverBindingStop, /* Stop = sub_A7C */ + IpSecV4DriverBindingSupported, /* supported = IpSecV4DriverBindingSupported */ + IpSecV4DriverBindingStart, /* Start = IpSecV4DriverBindingStart */ + IpSecV4DriverBindingStop, /* Stop = IpSecV4DriverBindingStop */ 0xA, /* Version: 10 */ NULL, /* ImageHandle */ NULL /* DriverBindingHandle */ @@ -102,9 +102,9 @@ /* IKEv2 driver binding (from 0x12A700) */ static EFI_DRIVER_BINDING_PROTOCOL gIkeV2DriverBinding = { - IkeV2DriverBindingSupported, /* Supported = sub_A2C */ - IkeV2DriverBindingStart, /* Start = sub_A7C */ - IkeV2DriverBindingStop, /* Stop = sub_A84 */ + IkeV2DriverBindingSupported, /* Supported = IkeV2DriverBindingSupported */ + IkeV2DriverBindingStart, /* Start = IkeV2DriverBindingStart */ + IkeV2DriverBindingStop, /* Stop = IkeV2DriverBindingStop */ 0xA, /* Version: 10 */ NULL, /* ImageHandle */ NULL /* DriverBindingHandle */ @@ -427,21 +427,21 @@ } /* ======================================================================== - * Debug Event Logging (sub_38F90, sub_210D0) + * Debug Event Logging (IpSecDebugLogEvent, IpSecDebugCopyString) * ======================================================================== * * Ring buffer at gDebugRing (0x12C520 in .data section). * 16 entries x 32 bytes = 512 bytes, +4 bytes head, +4 bytes tail = 520 total. * - * sub_38F90 is called throughout the codebase to log events with: + * IpSecDebugLogEvent is called throughout the codebase to log events with: * a1 (UINT8): Event type (higher bits encode category) * a2 (UINT16): Protocol ID / first data word * a3 (UINT16): Extra / second data word * a4 (UINT64): Data pointer * a5 (UINT32): Data value * - * sub_210D0 copies a debug string into an entry if Flags & 1 is set. - * Called at 0x390EB in sub_38F90 when bit 0 is set. + * IpSecDebugCopyString copies a debug string into an entry if Flags & 1 is set. + * Called at 0x390EB in IpSecDebugLogEvent when bit 0 is set. */ VOID @@ -588,7 +588,7 @@ { EFI_STATUS Status; - /* Phase 1: Boot services init (sub_47C) */ + /* Phase 1: Boot services init (IpSecInitBootServices) */ gImageHandle = ImageHandle; gSystemTable = SystemTable; gBootServices = SystemTable->BootServices; @@ -628,7 +628,7 @@ } } - /* Phase 2: Module init (sub_BE8) */ + /* Phase 2: Module init (IpSecModuleInit) */ Status = IpSecModuleInit(ImageHandle); return Status; } @@ -642,11 +642,11 @@ * Major components: * - Locateates DPC protocol * - Allocates 216-byte private data structure - * - Creates timer event with sub_A98 callback + * - Creates timer event with IpSecTimerHandler callback * - Copies EFI_IPSEC_CONFIG_PROTOCOL * - Initializes 8 linked list heads * - Copies dispatch function table (40 bytes from offf_12A730) - * - Calls sub_31F8 (config init) + * - Calls IpSecTimerHandler/setup flow for config init * - Installs IPSEC_V4 + V6 + CONFIG protocols * Address: 0xBE8 */ @@ -822,7 +822,7 @@ * 1. Locate IPsec private data via private protocol * 2. Verify signature ("CR has Bad Signature" check) * 3. Open Udp4 (version=4) or Udp6 (version=6) protocol - * 4. Create child SA via sub_36F4 (IPv4) or sub_37F8 (IPv6) + * 4. Create child SA via IpSecUdp4CreateChild (IPv4) or IpSecUdp6CreateChild (IPv6) */ static EFI_STATUS @@ -881,12 +881,12 @@ ); if (!EFI_ERROR(Status)) { - /* Create child SA - sub_36F4 for IPv4, sub_37F8 for IPv6 */ + /* Create child SA - IpSecUdp4CreateChild for IPv4, IpSecUdp6CreateChild for IPv6 */ if (Version == 4) { - /* sub_36F4: Allocate 88-byte child, create UdpIo, add to list */ + /* IpSecUdp4CreateChild: Allocate 88-byte child, create UdpIo, add to list */ Status = IpSecUdp4CreateChild(Private, ControllerHandle, UdpInterface); } else { - /* sub_37F8: same but for IPv6 */ + /* IpSecUdp6CreateChild: same but for IPv6 */ Status = IpSecUdp6CreateChild(Private, ControllerHandle, UdpInterface); } } @@ -930,7 +930,7 @@ /* For IKE stop with no children, clean up */ if (Version == 6 && NumberOfChildren == 0) { - /* sub_724 cleanup: traverse session lists and free entries */ + /* IkeV2DriverBindingStop cleanup: traverse session lists and free entries */ IPSEC_PRIVATE_DATA *Private; Private = (IPSEC_PRIVATE_DATA *)((UNT8 *)Interface - 3); @@ -946,7 +946,7 @@ } /* ======================================================================== - * Disable Event Callback (sub_A98) + * Disable Event Callback (IpSecTimerHandler) * ======================================================================== * * * This is the timer/DPC dispatch callback created during init. @@ -969,10 +969,10 @@ */ /* ======================================================================== - * IKE SA Session Lifecycle (sub_439C, sub_4840) + * IKE SA Session Lifecycle (IkeSaSessionFree, ChildSaSessionFree) * ======================================================================== * * - * sub_439C (IkeSaSessionFree): + * IkeSaSessionFree: * Freed all resources of an IKE SA session: * - Child SA list at +0x60 * - Establishing list at +0x? @@ -980,10 +980,10 @@ * - Encrypt/Integrity/Decrypt/Verif keys at +0x30/+0x38/+0x40/+0x48 * - Session memory itself * - * sub_4840 (ChildSaFree): + * ChildSaSessionFree: * Frees a Child SA session including its UDP I/O context * - * sub_4B4C (at 0x4B4C): + * ChildSaExchangeContextFree (at 0x4B4C): * Frees exchange context resources * * The session structure is accessed via the CONTAINER_RECORD pattern @@ -1027,7 +1027,7 @@ } Next = Entry->ForwardLink; - /* Free child SA resources (sub_4928) */ + /* Free child SA resources */ RemoveEntryList(Entry); Entry = Next; } @@ -1076,20 +1076,20 @@ } /* ======================================================================== - * UDP Child SA Creation (sub_36F4, sub_37F8) + * UDP Child SA Creation (IpSecUdp4CreateChild, IpSecUdp6CreateChild) * ======================================================================== * - * sub_36F4 (0x36F4): Create IPv4 child SA entry - * sub_37F8 (0x37F8): Create IPv6 child SA entry + * IpSecUdp4CreateChild (0x36F4): Create IPv4 child SA entry + * IpSecUdp6CreateChild (0x37F8): Create IPv6 child SA entry * * Both: * 1. Walk child SA list (+0x60 for IPv4 via SaBySpiList at +0x78) * to check if already registered for this controller * 2. Allocate 88-byte child structure - * 3. Create UDp Io via sub_12200 (UdpIoCreate) + * 3. Create Udp Io via UdpIoCreate * 4. Set protocol (4 or 6) and controller handle * 5. Insert into list - * 6. Set up receive callback via sub_12680 (UdpIoRecv) + * 6. Set up receive callback via UdpIoRecv * * The 88-byte child structure: * +0x00: LIST_ENTRY (16 bytes) @@ -1105,56 +1105,56 @@ */ /* ======================================================================== - * SPD Operations (sub_FAC, sub_11E8, sub_1424, sub_152C) + * SPD Operations (SpdEntriesExactMatch, SpdEntriesSubnetMatch, SpdEntryIsEqual, SpdEntryIsEmpty) * ======================================================================== * - * sub_FAC (0xFAC): Exact SPD match. + * SpdEntriesExactMatch (0xFAC): Exact SPD match. * Compares two SPD entries by address, mask, port, and protocol. * Also walks 20-byte address list entries for prefix comparison. * Returns TRUE if both entries are identical. * - * sub_11E8 (0x11E8): CIDR/subnet SPD match. - * Like sub_FAC but with prefix-length comparison semantics. + * SpdEntriesSubnetMatch (0x11E8): CIDR/subnet SPD match. + * Like SpdEntriesExactMatch but with prefix-length comparison semantics. * Allows <= on addresses (subnet containment), wildcard -1 on ports. * - * sub_1424 (0x1424): Equality check. + * SpdEntryIsEqual (0x1424): Equality check. * Compares first byte of two SPD entries (0=IPv4, non-zero=IPv6). * If IPv4, also compares 20-byte block at +4. * - * sub_152C (0x152C): Empty check. + * SpdEntryIsEmpty (0x152C): Empty check. * Returns TRUE if the 132-byte structure is all zeros. * * SPD_ENTRY structure: * +0x00: SourceAddr (UINT32) - * +0x04: DestAddr (UINT32) (a1[4] at SP offset 4 in sub_FAC) - * +0x08: SourceMask (UINT16) (aa[16] in sub_FAC) - * +0x0A: DestMask (UINT16) (aa[17] in sub_FAC) - * +0x0C: SrcPort (UINT16) (aa[18] in sub_FAC) - * +0x0E: DstPort (UINT16) (aa[19] in sub_FAC) + * +0x04: DestAddr (UINT32) (a1[4] at SP offset 4 in SpdEntriesExactMatch) + * +0x08: SourceMask (UINT16) (aa[16] in SpdEntriesExactMatch) + * +0x0A: DestMask (UINT16) (aa[17] in SpdEntriesExactMatch) + * +0x0C: SrcPort (UINT16) (aa[18] in SpdEntriesExactMatch) + * +0x0E: DstPort (UINT16) (aa[19] in SpdEntriesExactMatch) * +0x10: Protocol (UINT8) * +0x14: Action (UINT32) (bypas/discard/protect) * +0x18: SourceAddrPtr (VOID *) * +0x20: DestAddrPtr (VOID *) * Total: ~0x28 = 40 bytes * - * The address list has 20-byte entries walked by sub_F08. + * The address list has 20-byte entries walked by the address compare helper. * Each entry: first 4 bytes = address, remaining = prefix/mask. * - * sub_F08 (0xF08): Single address comparison with mask. + * Address comparison helper (0xF08): Single address comparison with mask. * Compares two UINT32 address pointer by mask. * * Usage: - * SpdLookup -> sub_1880 walks SaBySpiList (with sub_1424 matching) - * SpdRemovval -> sub_1F7C walks SpdCacheList et al + * SpdLookup -> helper at 0x1880 walks SaBySpiList (with SpdEntryIsEqual matching) + * SpdRemovval -> helper at 0x1F7C walks SpdCacheList et al */ /* ======================================================================== - * NV Variable Config Storage (sub_27DC) + * NV Variable Config Storage (IpSecConfigSetData/IpSecConfigGetData helper) * ======================================================================== * * - * sub_27DC (0x27DC): + * Config storage helper (0x27DC): * Reads/writes IPsec config from NV variables. - * Builids variable name: L"IpSecConfig" + L"Info" (using sub_FB60 for snprintf) + * Builds variable name: L"IpSecConfig" + L"Info" * Calalls gRT->GetVariable with the name and AMI vendor GUID * Proceses the buffer for typed config entries * @@ -1163,37 +1163,37 @@ * Entries with bit 7 set in Type are valid * Type 0 = SP, 1 = SAD, 2 = PCD * - * sub_27DC also writes "IpSecStatus" variable with value 1 to + * The helper also writes "IpSecStatus" variable with value 1 to * disable IPsec processing. * - * sub_2C78 (0x2C78): Config data type handler. + * Config data type handler (0x2C78). * Dispatches by DataType (0/1/2) to SPD/SAD/PCD sub-handlers. * Each walks the appropriate list and copies matching entries. */ /* ======================================================================== - * UDP I/O Wrappers (sub_12200, sub_12680) + * UDP I/O Wrappers (UdpIoCreate, UdpIoRecv) * ======================================================================== * * - * sub_12200 (0x12200): UdpIoCreate wrapper. + * UdpIoCreate wrapper (0x12200). * Wraps UdpIoCreateIo from DxeUdpIoLib. * Returns a UdpIo handle or NULL on failure. * Checks: UdpVersion == 4 || UdpVersion == 6 * - * sub_12680 (0x12680): UdpIoRecv wrapper. + * UdpIoRecv wrapper (0x12680). * Wraps UdpIoRecvDatagram. Sets up receive callback. * - * sub_11B40, sub_11BD8, sub_11C2C: Assert UDP token callbacks. + * Assert UDP token callbacks at 0x11B40, 0x11BD8, and 0x11C2C. * These are inline checks in UdpIo send/receive operations: * "TxToken->Signature == ((('U') | (('D' << 8))) | ((('P') | (('T' << 8))) << 16))" * "RxToken->UdpIo->UdpVersion == 4) || (RxToken->UdpIo->UdpVersion == 6)" */ /* ======================================================================== - * IKEv2 Exchange Procesing (sub_3A44) + * IKEv2 Exchange Processing (IkeProcessIncoming) * ======================================================================== * * - * sub_3A44 (0x3A44): Proces incoming IKE packet. + * IkeProcessIncoming (0x3A44): Process incoming IKE packet. * This is the core IKE packet processing function in IkeService.c. * * Flow: @@ -1202,13 +1202,13 @@ * a4->4 == 4 means IPv4 child SA (subtract -96) * a4->4 == 6 means IPv6 child SA (subtract -120) * 2. Check if (a3 >= 0) && (v9->40 != 1) && port == 500 - * 3. Allocate packet context via sub_6E78 + * 3. Allocate packet context via helper at 0x6E78 * 4. If successful, copy header and payload * 5. Check IKE version (packet[0x17] & 0xF0 == 0x20 = IKEv2) * 6. Dispatc via function pointer table at off_0xE3360: * ((packet[17] >> 4) - 1) as index into table * Table entries at 0xE8360, 0xE8368, etc. - * 7. Proces payload (sub_34C0 for SPD/SA matching) + * 7. Process payload (helper at 0x34C0 for SPD/SA matching) * * The IKE packet header (28 bytes minimum): * +0x00: InitiatorSPI (UINT64 @@ -1228,9 +1228,9 @@ * The allocaated in the .rdata or .data section and copied during init. * * off_12A7B8: EFI_IPSEC_CONFIG_PROTOCOL template (24 bytes) - * SetData -> sub_3C44 (0x3C44) - * GetData -> sub_???? (probably 0x33EC) - * RegisterNotify -> sub_6378 (0x6378) + * SetData -> helper at 0x3C44 + * GetData -> helper at 0x33EC + * RegisterNotify -> helper at 0x6378 * * off_12A730: Config function table (40 bytes = 5 pointers) * Function pointers for config data operations @@ -1243,4 +1243,4 @@ * gIpSecComponentName: at 0x12A7E8 * gDisableEvent: at 0x12A7C0 * gDpcDispatchEvent: at 0x12D080 - */ \ No newline at end of file + */ diff --git a/AmiNetworkPkg/UefiNetworkStack/Common/IpSecDxe/IpSecDxe/IpSecDxe.h b/AmiNetworkPkg/UefiNetworkStack/Common/IpSecDxe/IpSecDxe/IpSecDxe.h index fdf132d..9f5dc32 100644 --- a/AmiNetworkPkg/UefiNetworkStack/Common/IpSecDxe/IpSecDxe/IpSecDxe.h +++ b/AmiNetworkPkg/UefiNetworkStack/Common/IpSecDxe/IpSecDxe/IpSecDxe.h @@ -158,7 +158,7 @@ } EFI_IPSEC_CONFIG_PROTOCOL; /** EFI_DRIVER_BINDING_PROTOCOL (24 bytes) - * Two instances: IPv4 (sub_620) and IPv6 (sub_620 selects based on n4 param). */ + * Two instances: IPv4 and IPv6 bindings sharing the common start/stop path. */ typedef struct _EFI_DRIVER_BINDING_PROTOCOL { EFI_STATUS (EFIAPI *Supported)( VOID *This, @@ -211,7 +211,7 @@ } EFI_COMPONENT_NAME2_PROTOCOL; /** EFI_DPC_PROTOCOL - Deferred Procedure Call - * Used for async IKE packet dispatch. Queued via sub_31F8 during init. */ + * Used for async IKE packet dispatch. Queued during module init. */ typedef struct _EFI_DPC_PROTOCOL { EFI_STATUS (EFIAPI *QueueDpc)( UINTN DpcTpl, @@ -327,7 +327,7 @@ * CONTAINER_RECORD at -42 entries (--336 bytes) from list entry. * Total ~744+ bytes (1288 byte allocation). * - * Fields (from sub_439C (IkeSaFree) and sub_4928): + * Fields (from IkeSaSessionFree and ChildSaSession helpers): * +0x00: Signature ("INAC") * +0x04: State (IKEV2_STATE_*) * +0x08: IsInitiator (BOOLEAN) @@ -375,7 +375,7 @@ * Signature = "CPAC" (0x43415043). * Access from list: CONTAINER_RECORD subtracts -42 QWORD = -336 bytes. * - * Fields (from sub_4928): + * Fields from child SA session helpers: * +0x00: Signature ("CPAC") * +0x04: State * +0x08: Protocol (ESP=50, AH=51) @@ -407,7 +407,7 @@ /** * SPD_ENTRY (Security Policy Database entry) - * Compare function sub_11E8 checks CIDR matching. + * Compare function SpdEntriesSubnetMatch checks CIDR matching. * Fields: * +0x00: SourceAddr (UINT32) * +0x04: DestAddr (UINT32) (a1[4]) @@ -459,25 +459,25 @@ IN EFI_SYSTEM_TABLE *SystemTable ); -/* -- Driver Init sub_47C (0x47C) -- */ +/* -- Driver Init (0x47C) -- */ EFI_STATUS IpSecInitBootServices( VOID ); -/* -- Main Init sub_BE8 (0xBE8) -- */ +/* -- Main Init (0xBE8) -- */ EFI_STATUS IpSecModuleInit( IN EFI_HANDLE ImageHandle ); -/* -- Timer/DPC callback sub_31F8 (0x31F8) -- */ +/* -- Timer/DPC callback (0x31F8) -- */ EFI_STATUS IpSecTimerHandler( IN IPSEC_PRIVATE_DATA *Private ); -/* -- Driver Binding sub_620 (0x620) -- */ +/* -- Driver Binding (0x620) -- */ EFI_STATUS EFIAPI IpSecV4DriverBindingSupported( @@ -503,7 +503,7 @@ IN EFI_HANDLE *ChildHandleBuffer ); -/* -- IKEv2 Driver Binding sub_724 (0x724) -- */ +/* -- IKEv2 Driver Binding (0x724) -- */ EFI_STATUS EFIAPI IkeV2DriverBindingSupported( @@ -530,7 +530,7 @@ ); /* -- Create Child SAs -- */ -/* sub_36F4 (0x36F4): Create IPv4 UDP child */ +/* IpSecUdp4CreateChild (0x36F4): Create IPv4 UDP child */ EFI_STATUS IpSecUdp4CreateChild( IN IPSEC_PRIVATE_DATA *Private, @@ -538,7 +538,7 @@ IN VOID *UdpConfig ); -/* sub_37F8 (0x37F8): Create IPv6 UDP child */ +/* IpSecUdp6CreateChild (0x37F8): Create IPv6 UDP child */ EFI_STATUS IpSecUdp6CreateChild( IN IPSEC_PRIVATE_DATA *Private, @@ -547,7 +547,7 @@ ); /* -- Debug Log -- */ -/* sub_38F90 (0x38F90): Log debug event */ +/* IpSecDebugLogEvent (0x38F90): Log debug event */ VOID IpSecDebugLogEvent( IN UINT8 Type, @@ -557,13 +557,13 @@ IN UINT32 Data ); -/* sub_39A70 (0x39A70): Get debug ring */ +/* IpSecGetDebugRing (0x39A70): Get debug ring */ DEBUG_RING_BUFFER * IpSecGetDebugRing( VOID ); -/* sub_210D0 (0x210D0): Copy string to debug entry */ +/* IpSecDebugCopyString (0x210D0): Copy string to debug entry */ VOID IpSecDebugCopyString( IN UINT64 EntryPtr, @@ -576,81 +576,81 @@ SpdEntriesExactMatch( IN SPD_ENTRY *Entry1, IN SPD_ENTRY *Entry2 - ); /* sub_FAC */ + ); /* SpdEntriesExactMatch */ BOOLEAN SpdEntriesSubnetMatch( IN SPD_ENTRY *Entry1, IN SPD_ENTRY *Entry2 - ); /* sub_11E8 */ + ); /* SpdEntriesSubnetMatch */ BOOLEAN SpdEntryIsEqual( IN SPD_ENTRY *Entry1, IN SPD_ENTRY *Entry2 - ); /* sub_1424 */ + ); /* SpdEntryIsEqual */ BOOLEAN SpdEntryIsEmpty( IN SPD_ENTRY *Entry - ); /* sub_152C */ + ); /* SpdEntryIsEmpty */ /* -- Utility -- */ VOID * AllocateZeroPool( IN UINTN Size - ); /* sub_10ABC */ + ); /* AllocateZeroPool */ VOID FreePool( IN VOID *Buffer - ); /* sub_10BE0 */ + ); /* FreePool */ VOID * CopyMem( OUT VOID *Destination, IN VOID *Source, IN UINTN Length - ); /* sub_EA94 */ + ); /* CopyMem */ VOID * ZeroMem( OUT VOID *Buffer, IN UINTN Length - ); /* sub_EB30 */ + ); /* ZeroMem */ INTN CompareMem( IN VOID *Buffer1, IN VOID *Buffer2, IN UINTN Length - ); /* sub_EB94 */ + ); /* CompareMem */ VOID InitializeListHead( IN LIST_ENTRY *ListHead - ); /* sub_EDA4 */ + ); /* InitializeListHead */ BOOLEAN IsListEmpty( IN LIST_ENTRY *ListEntry - ); /* sub_EEB4 */ + ); /* IsListEmpty */ VOID RemoveEntryList( IN LIST_ENTRY *Entry - ); /* sub_EEEC */ + ); /* RemoveEntryList */ VOID InsertTailList( IN LIST_ENTRY *ListHead, IN LIST_ENTRY *Entry - ); /* sub_EE2C */ + ); /* InsertTailList */ UINTN StrLen( IN CONST CHAR16 *String - ); /* sub_EF34 */ + ); /* StrLen */ /* -- Debug -- */ VOID @@ -659,7 +659,7 @@ IN CHAR8 *FileName, IN UINTN LineNumber, IN CHAR8 *Description - ); /* sub_EA50 */ + ); /* DebugAssert */ VOID EFIAPI @@ -667,16 +667,16 @@ IN UINTN ErrorLevel, IN CHAR8 *Format, ... - ); /* sub_E9C8 */ + ); /* DebugPrint */ /* -- PCD -- */ UINTN PcdGetSize( IN UINTN PcdToken - ); /* sub_10F94 */ + ); /* PcdGetSize */ /* -- IKE Packet Processing -- */ -/* sub_3A44 (0x3A44): Process incoming IKE packet */ +/* IkeProcessIncoming (0x3A44): Process incoming IKE packet */ EFI_STATUS IkeProcessIncoming( IN IKEV2_SA_SESSION *Session, @@ -684,4 +684,4 @@ IN UINTN IkePacketLen ); -#endif /* __IPSEC_DXE_H__ */ \ No newline at end of file +#endif /* __IPSEC_DXE_H__ */ diff --git a/AmiNetworkPkg/UefiNetworkStack/Ipv4/Mtftp4Dxe/Mtftp4Support/Mtftp4Dxe.c b/AmiNetworkPkg/UefiNetworkStack/Ipv4/Mtftp4Dxe/Mtftp4Support/Mtftp4Dxe.c index 4b217b4..1ee045b 100644 --- a/AmiNetworkPkg/UefiNetworkStack/Ipv4/Mtftp4Dxe/Mtftp4Support/Mtftp4Dxe.c +++ b/AmiNetworkPkg/UefiNetworkStack/Ipv4/Mtftp4Dxe/Mtftp4Support/Mtftp4Dxe.c @@ -4020,7 +4020,7 @@ // Function: DxeGetInfo @ 0x60bc (0x91 bytes) -__int64 __fastcall sub_60BC(__int64 a1, __int64 a2, __int64 a3, __int64 a4) +__int64 __fastcall DxeGetInfo(__int64 a1, __int64 a2, __int64 a3, __int64 a4) { __int64 result; // rax _QWORD v9[3]; // [rsp+30h] [rbp-18h] BYREF @@ -4045,7 +4045,7 @@ // Function: DxeGetInfo_0 @ 0x6150 (0x8d bytes) -__int64 __fastcall sub_6150(__int64 a1, __int64 a2, __int64 a3, __int64 a4) +__int64 __fastcall DxeGetInfo_0(__int64 a1, __int64 a2, __int64 a3, __int64 a4) { __int64 result; // rax _QWORD v9[3]; // [rsp+30h] [rbp-18h] BYREF @@ -4070,7 +4070,7 @@ // Function: DxeConfig_11 @ 0x61e0 (0xb8 bytes) -char *__fastcall sub_61E0(int a1, int a2) +char *__fastcall DxeConfig_11(int a1, int a2) { char *v4; // rax char *v5; // rbx @@ -4140,7 +4140,7 @@ // Function: DxeConfig_8 @ 0x6340 (0xcc bytes) -__int64 __fastcall sub_6340(__int64 a1) +__int64 __fastcall DxeConfig_8(__int64 a1) { unsigned int v1; // edi __int64 result; // rax @@ -4187,7 +4187,7 @@ // Function: DxeConfig_14 @ 0x640c (0x85 bytes) -__int64 __fastcall sub_640C(__int64 a1) +__int64 __fastcall DxeConfig_14(__int64 a1) { __int64 result; // rax @@ -4221,7 +4221,7 @@ // Function: DxeConfig_13 @ 0x6494 (0xa1 bytes) -__int64 __fastcall sub_6494(_DWORD *a1, unsigned int a2, _DWORD *a3) +__int64 __fastcall DxeConfig_13(_DWORD *a1, unsigned int a2, _DWORD *a3) { unsigned int v6; // r9d unsigned int v7; // r8d @@ -4464,7 +4464,7 @@ // Function: DxeConfig_4 @ 0x68e8 (0x120 bytes) -__int64 __fastcall sub_68E8(__int64 a1, unsigned int a2) +__int64 __fastcall DxeConfig_4(__int64 a1, unsigned int a2) { unsigned int v2; // edi unsigned __int64 v3; // rsi @@ -4616,7 +4616,7 @@ // Function: DxeGetInfo_1 @ 0x6c28 (0x7b bytes) -__int64 __fastcall sub_6C28(__int64 a1) +__int64 __fastcall DxeGetInfo_5(__int64 a1) { if ( *(_DWORD *)a1 != 1414546517 ) /*0x6c37*/ Assert_( /*0x6c4c*/ @@ -4774,7 +4774,7 @@ // Function: DxeConfig_7 @ 0x6fac (0xcf bytes) -__int64 __fastcall DxeConfig_7(__int64 a1, __int64 (__fastcall *sub_3D3C)(), __int64 buf) +__int64 __fastcall DxeConfig_7(__int64 a1, __int64 (__fastcall *Configure)(), __int64 buf) { __int64 v6; // rax __int64 v7; // rbx @@ -4791,7 +4791,7 @@ *(_DWORD *)(v6 + 32) = 0; /*0x7000*/ *(_DWORD *)v6 = 1380992085; /*0x700b*/ *(_QWORD *)(v6 + 8) = a1; /*0x7014*/ - *(_QWORD *)(v6 + 16) = sub_3D3C; /*0x701d*/ + *(_QWORD *)(v6 + 16) = Configure; /*0x701d*/ *(_QWORD *)(v6 + 24) = buf; /*0x7026*/ *(_QWORD *)(v6 + 56) = 0; /*0x7038*/ *(_QWORD *)(v6 + 48) = 0x8000000000000006uLL; /*0x703d*/ @@ -5096,7 +5096,7 @@ // Function: DxeConfig_10 @ 0x7680 (0xbf bytes) -__int64 __fastcall DxeConfig_10(__int64 a1, __int64 (__fastcall *sub_3D3C)(), __int64 buf) +__int64 __fastcall DxeConfig_10(__int64 a1, __int64 (__fastcall *Configure)(), __int64 buf) { __int64 v7; // rax __int64 v8; // rdi @@ -5113,7 +5113,7 @@ (__int64)"(UdpIo->UdpVersion == 4) || (UdpIo->UdpVersion == 6)"); if ( *(_QWORD *)(a1 + 736) ) /*0x76b9*/ return 0x8000000000000014uLL; /*0x76c3*/ - v7 = DxeConfig_7(a1, sub_3D3C, buf); /*0x76d8*/ + v7 = DxeConfig_7(a1, Configure, buf); /*0x76d8*/ v8 = v7; /*0x76dd*/ if ( !v7 ) /*0x76e3*/ return 0x8000000000000009uLL; /*0x76e5*/ diff --git a/AmiNetworkPkg/UefiNetworkStack/Ipv4/Mtftp4Dxe/Mtftp4Support/Mtftp4Dxe.h b/AmiNetworkPkg/UefiNetworkStack/Ipv4/Mtftp4Dxe/Mtftp4Support/Mtftp4Dxe.h index 20fb839..da26808 100644 --- a/AmiNetworkPkg/UefiNetworkStack/Ipv4/Mtftp4Dxe/Mtftp4Support/Mtftp4Dxe.h +++ b/AmiNetworkPkg/UefiNetworkStack/Ipv4/Mtftp4Dxe/Mtftp4Support/Mtftp4Dxe.h @@ -9,2948 +9,65 @@ #include "../uefi_headers/Uefi.h" -// -// Function Prototypes -// +EFI_STATUS EFIAPI ModuleEntryPoint(VOID); +EFI_STATUS EFIAPI Mtftp4Unload(__int64 ImageHandle); +EFI_STATUS EFIAPI Mtftp4LibConstructor(__int64 ImageHandle, EFI_SYSTEM_TABLE *SystemTable); +EFI_STATUS EFIAPI Mtftp4DriverEntryPoint(__int64 ImageHandle, EFI_SYSTEM_TABLE *SystemTable); +EFI_STATUS EFIAPI Mtftp4UdpIoConfigure(__int64 UdpIo, __int64 Configure); +EFI_STATUS EFIAPI Mtftp4CreateService(__int64 This, __int64 ImageHandle, _QWORD *Service); +EFI_STATUS EFIAPI Mtftp4ServiceBindingCreateChild(__int64 This, __int64 ChildHandle); +EFI_STATUS EFIAPI Mtftp4DestroyChildCallback(_QWORD *Child, _QWORD *Context); +EFI_STATUS EFIAPI Mtftp4ServiceBindingDestroyChild(__int64 This, __int64 ChildHandle, __int64 Arg3, __int64 Arg4); +EFI_STATUS EFIAPI Mtftp4DriverBindingStart(__int64 This, __int64 *RemainingDevicePath); +EFI_STATUS EFIAPI Mtftp4DriverBindingStop(__int64 This, __int64 ControllerHandle); +EFI_STATUS EFIAPI Mtftp4GetBestLanguage(__int64 (__fastcall **Languages)(), _BYTE *Language, _QWORD *BestLanguage); +EFI_STATUS EFIAPI Mtftp4ConfigNotification(__int64 (__fastcall **Notify)()); +EFI_STATUS EFIAPI Mtftp4OpenProtocol(__int64 (__fastcall **OpenProtocol)(), __int64 Handle, __int64 Protocol, _BYTE *Context); +EFI_STATUS EFIAPI Mtftp4Cleanup(__int64 Instance, __int64 Status); +EFI_STATUS EFIAPI Mtftp4PacketCallback(__int64 Instance, __int64 Event, unsigned __int16 Count, _WORD *Packet); +EFI_STATUS EFIAPI Mtftp4CheckAddress(__int64 LocalAddress, __int64 RemoteAddress); +EFI_STATUS EFIAPI Mtftp4ResolveAddress(__int64 Instance, __int64 SourceAddress, __int64 DestinationAddress); +EFI_STATUS EFIAPI Mtftp4SendUdpPacket(__int64 Instance, __int64 Packet); +EFI_STATUS EFIAPI Mtftp4Start(__int64 Instance, __int64 Request, __int16 Mode); +EFI_STATUS EFIAPI Mtftp4GetInfo(__int64 Instance, __int64 Info); +EFI_STATUS EFIAPI Mtftp4Input(__int64 Instance, _BYTE *Packet); +EFI_STATUS EFIAPI Mtftp4ParseOptionOack(__int64 Instance, __int64 Length, _WORD *Dst, _DWORD *Options, __int64 *Context); +EFI_STATUS EFIAPI Mtftp4ReadFile(__int64 Instance, __int64 Token, __int64 Packet, _BYTE *Buffer); +EFI_STATUS EFIAPI Mtftp4AllocateBlockRangeEntry(unsigned __int16 Start, unsigned __int16 End); +EFI_STATUS EFIAPI Mtftp4BlockRangeInsert(char ***Ranges, unsigned __int16 Block, char Flag, _QWORD *Entry); +EFI_STATUS EFIAPI Mtftp4BuildPacket(__int64 Instance); +EFI_STATUS EFIAPI Mtftp4SendError(__int64 Instance, __int16 ErrorCode, char *Message); +EFI_STATUS EFIAPI Mtftp4TransmitPacket(__int64 Instance, __int64 Packet); +EFI_STATUS EFIAPI Mtftp4ResendPacket(__int64 Instance); +EFI_STATUS EFIAPI Mtftp4CheckTimeout(__int64 Instance, __int64 Event); +EFI_STATUS EFIAPI Mtftp4ParseOptionPairs(_WORD *Dst, unsigned int Length, _DWORD *Options, __int64 Context); +EFI_STATUS EFIAPI Mtftp4ParseOack(_WORD *Dst, __int64 Length, _DWORD *Options, __int64 *Context); +EFI_STATUS EFIAPI Mtftp4ParseMulticastOption(_BYTE *Option, char *Buffer); +EFI_STATUS EFIAPI Mtftp4ParseOptions(__int64 Options, unsigned int Count, char IsRrq, char *Buffer); +EFI_STATUS EFIAPI Mtftp4ProcessDataPacket(__int64 Instance, char *Data, int Length); +EFI_STATUS EFIAPI Mtftp4SetupMulticastReceive(__int64 Instance, __int64 Context); -EFI_STATUS -EFIAPI -ModuleEntryPoint( - VOID -); +EFI_STATUS EFIAPI Mtftp4ConfigStringLookup(_BYTE *String, _BYTE *Table, char *Value, _QWORD *Result, char MatchCase); +EFI_STATUS EFIAPI NetDestroyChildrenInList(_QWORD *List, _QWORD *Context); +EFI_STATUS EFIAPI DxeGetInfo(__int64 a1, __int64 a2, __int64 a3, __int64 a4); +EFI_STATUS EFIAPI DxeGetInfo_0(__int64 a1, __int64 a2, __int64 a3, __int64 a4); +char *EFIAPI DxeConfig_11(int a1, int a2); +char *EFIAPI DxeConfig_12(unsigned int n4); +__int64 EFIAPI DxeConfig_8(__int64 a1); +__int64 EFIAPI DxeConfig_13(_DWORD *a1, unsigned int a2, _DWORD *a3); +_DWORD *EFIAPI DxeConfig_6(__int64 a1, __int64 dst, unsigned int a3, unsigned int a4); +__int64 EFIAPI DxeConfig_1(unsigned int *p_count, unsigned int a2, __int64 a3, unsigned int count, __int64 a5, __int64 a6); +unsigned __int64 EFIAPI NetbufGetFragmentTable(__int64 a1, __int64 a2, unsigned int *va); +__int64 EFIAPI DxeConfig_4(__int64 a1, unsigned int a2); +__int64 EFIAPI DxeGetInfo_1(__int64 a1); +__int64 EFIAPI DxeConfig(__int64 a1); +__int64 EFIAPI QueueDpcForReceive(__int64 a1, __int64 a2); +__int64 EFIAPI DxeConfig_7(__int64 a1, __int64 (__fastcall *Configure)(), __int64 buf); +_DWORD *EFIAPI DxeConfig_0(__int64 a1, __int64 a2, __int64 src, ...); +__int64 EFIAPI DxeConfig_3(__int64 a1, __int64 a2, __int64 (__fastcall *Configure)(__int64, __int64), __int64 a4, __int64 buf); +char EFIAPI DxeGetInfo_2(__int64 a1); +__int64 EFIAPI DxeConfig_5(__int64 a1); +__int64 EFIAPI DxeConfig_9(__int64 a1, __int64 a2, char *buf); +__int64 EFIAPI DxeConfig_10(__int64 a1, __int64 (__fastcall *Configure)(), __int64 buf); -EFI_STATUS -EFIAPI -at 0x2C0( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall CopyMem(char *dst, char *src, unsigned __int64 count)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 count_1; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -char *src_1; // rsi( - VOID -); - -EFI_STATUS -EFIAPI -at 0x310( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall ZeroMem(char *buf, unsigned __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x330( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall CompareMem(_BYTE *a1, _BYTE *a2, __int64 n4)( - VOID -); - -EFI_STATUS -EFIAPI -do /*0x33b*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x3A4( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4Unload(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 i; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 j; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -at 0x528( - VOID -); - -EFI_STATUS -EFIAPI -ModuleEntryPoint(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v6; // [rsp+40h] [rbp+18h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x5B0( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4LibConstructor(__int64 ImageHandle, EFI_SYSTEM_TABLE *SystemTable)( - VOID -); - -EFI_STATUS -EFIAPI -ImageHandle_1 = ImageHandle; /*0x5b6*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6A4( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4DriverEntryPoint(__int64 ImageHandle, EFI_SYSTEM_TABLE *SystemTable)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v4; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -_BYTE v7[24]; // [rsp+40h] [rbp-18h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x7A4( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4UdpIoConfigure(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x7DC( - VOID -); - -EFI_STATUS -EFIAPI -at 0x7E0( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4CreateService(__int64 a1, __int64 a2, _QWORD *a3)( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD *v7; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v10; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v12; // rax( - VOID -); - -EFI_STATUS -EFIAPI -at 0x930( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4ServiceBindingCreateChild(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD *v4; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD *v6; // [rsp+40h] [rbp+8h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0xA4C( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4DestroyChildCallback(_QWORD *i, _QWORD *a2)( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD *i_1; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v6; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -at 0xAE8( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4ServiceBindingDestroyChild(__int64 a1, __int64 a2, __int64 a3, __int64 a4)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v8; // rax( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v13; // [rsp+30h] [rbp-30h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0xCC8( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4DriverBindingStart(__int64 a1, __int64 *a2)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v7; // rax( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v9; // rax( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v11; // rax( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v13; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -char v15; // [rsp+50h] [rbp+8h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0xF28( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4DriverBindingStop(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 result; // rax( - VOID -); - -EFI_STATUS -EFIAPI -__int64 BootServices; // rax( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v8; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -at 0x111C( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4GetBestLanguage(__int64 (__fastcall **a1)(), _BYTE *a2, _QWORD *a3)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x1150( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4ConfigNotification(__int64 (__fastcall **a1)(_QWORD, _BYTE *))( - VOID -); - -EFI_STATUS -EFIAPI -_BYTE v2[20]; // [rsp+40h] [rbp-E8h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x1220( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4OpenProtocol(__int64 (__fastcall **a1)(), __int64 a2, __int64 a3, _BYTE *a4)( - VOID -); - -EFI_STATUS -EFIAPI -_BYTE *v10; // rax( - VOID -); - -EFI_STATUS -EFIAPI -at 0x1348( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4Cleanup(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v4; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v6; // rdx( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD *v8; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -at 0x151C( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4PacketCallback(__int64 a1, __int64 a2, unsigned __int16 a3, _WORD *a4)( - VOID -); - -EFI_STATUS -EFIAPI -__int16 n6; // ax( - VOID -); - -EFI_STATUS -EFIAPI -v5 = *(__int64 ***)(a2 + 72); /*0x1537*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x1604( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4CheckAddress(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -bool v5; // zf( - VOID -); - -EFI_STATUS -EFIAPI -int v7; // ebx( - VOID -); - -EFI_STATUS -EFIAPI -at 0x1728( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4ResolveAddress(__int64 a1, __int64 a2, __int64 a3)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v7; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -at 0x1800( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4SendUdpPacket(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -int v5; // edx( - VOID -); - -EFI_STATUS -EFIAPI -at 0x1944( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4Start(__int64 a1, __int64 a2, __int16 n7)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v7; // r8( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v9; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v12; // rdx( - VOID -); - -EFI_STATUS -EFIAPI -int *v14; // r13( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int16 v16; // ax( - VOID -); - -EFI_STATUS -EFIAPI -__int64 (__fastcall *sub_3D3C_1)(); // rdx( - VOID -); - -EFI_STATUS -EFIAPI -if ( !a1 /*0x19c5*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x1D50( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4GetInfo(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v4; // rsi( - VOID -); - -EFI_STATUS -EFIAPI -v3 = a1; /*0x1d62*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x1E00( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4Input(__int64 a1, _BYTE *a2)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int v6; // r14d( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int v8; // esi( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v10; // rax( - VOID -); - -EFI_STATUS -EFIAPI -int v13; // [rsp+20h] [rbp-10h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2048( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4ParseOptionOack(__int64 a1, __int64 n2, _WORD *a3, _DWORD *a4, __int64 *a5)( - VOID -); - -EFI_STATUS -EFIAPI -if ( !a1 || (unsigned int)n2 < 2 || !a3 || !a4 ) /*0x2066*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x20A8( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_20A8(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x20B4( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_20B4(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x20C0( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_20C0(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x20CC( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4ReadFile(( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD v9[2]; // [rsp+20h] [rbp-59h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x21C0( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall IpConfig_5(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -v1 = a1; /*0x21c6*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2250( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall Mtftp4AllocateBlockRangeEntry(unsigned __int16 a1, unsigned __int16 n0xFFFF)( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD *v5; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -at 0x22A4( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_22A4(_QWORD *a1, unsigned __int16 n0xFFFF)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 n0xFFFF_1; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -result = sub_40D4(a1); /*0x22b9*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2308( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_2308(_QWORD **a1, unsigned __int16 n0xFFFF_1, char a3, _QWORD *a4)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 n0xFFFF_2; // r10( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v9; // rdx( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD *v11; // rax( - VOID -); - -EFI_STATUS -EFIAPI -at 0x241C( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_241C(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -char *octet; // r12( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v4; // rax( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int v6; // edi( - VOID -); - -EFI_STATUS -EFIAPI -_BYTE **p_octet_1; // rsi( - VOID -); - -EFI_STATUS -EFIAPI -int v10; // eax( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v12; // rsi( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int v15; // edi( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v17; // rax( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int v19; // edi( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v21; // r14( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v23; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v25; // r12( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v27; // r14( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v29; // rax( - VOID -); - -EFI_STATUS -EFIAPI -at 0x269C( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_269C(__int64 a1, __int16 a2, char *octet)( - VOID -); - -EFI_STATUS -EFIAPI -_WORD *v10; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2750( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2758( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_2758(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -int v5; // eax( - VOID -); - -EFI_STATUS -EFIAPI -int v7; // r9d( - VOID -); - -EFI_STATUS -EFIAPI -__int16 v9; // ax( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2854( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_2854(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -_WORD *v3; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -__int16 n7; // cx( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2944( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall Mtftp4CheckTimeout(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD *result; // rax( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v5; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -int v7; // eax( - VOID -); - -EFI_STATUS -EFIAPI -v2 = (_QWORD *)(a2 + 32); /*0x2953*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2A24( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_2A24(char *a1, char *blksize)( - VOID -); - -EFI_STATUS -EFIAPI -char *v3; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -char v5; // cl( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2A98( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_2A98(unsigned __int8 *a1)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int8 *v2; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -v1 = 0; /*0x2aa2*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2AEC( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4ParseOptionPairs(__int64 a1, unsigned int n2, _DWORD *a3, __int64 a4)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int8 v5; // r11( - VOID -); - -EFI_STATUS -EFIAPI -_BYTE *v7; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -_BYTE *v9; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -v4 = (_BYTE *)(a1 + 2); /*0x2af8*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2B90( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4ParseOack(_WORD *a1, __int64 n2, _DWORD *a3, __int64 *a4)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 result; // rax( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2C48( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4ParseMulticastOption(_BYTE *a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -_BYTE *v4; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -int v6; // r15d( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int n0xFF; // eax( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int n0xFFFF; // eax( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int n2; // eax( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2D80( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4ParseOptions(__int64 a1, unsigned int a2, char a3, __int64 a4)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int8 **i; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -int v12; // eax( - VOID -); - -EFI_STATUS -EFIAPI -*(_DWORD *)(a4 + 16) = 0; /*0x2d99*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2ECC( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_2ECC(_WORD *a1, __int64 n2, __int64 a3)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int v5; // ebx( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v7; // [rsp+40h] [rbp+18h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2F48( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_2F48(__int64 a1, __int16 a2)( - VOID -); - -EFI_STATUS -EFIAPI -v4 = sub_6298(4); /*0x2f69*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x2FDC( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4ProcessDataPacket(__int64 a1, __int64 a2, int n4)( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD *v4; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int16 n0xFFFF; // si( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v12; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v14; // rbp( - VOID -); - -EFI_STATUS -EFIAPI -at 0x3144( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_3144(__int64 a1, __int64 a2, int n4, __int64 a4, _BYTE *a5)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int16 v7; // bp( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v11; // rsi( - VOID -); - -EFI_STATUS -EFIAPI -__int16 v13; // di( - VOID -); - -EFI_STATUS -EFIAPI -at 0x3260( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall Mtftp4SetupMulticastReceive(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v7; // rsi( - VOID -); - -EFI_STATUS -EFIAPI -int v9; // [rsp+30h] [rbp-30h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x33C4( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_33C4(__int64 a1, _WORD *a2, __int64 n2, __int64 a4, _BYTE *a5)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int n2_1; // esi( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v11; // r11( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int8 v13; // al( - VOID -); - -EFI_STATUS -EFIAPI -int v15; // r9d( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v19; // rsi( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int16 v21; // [rsp+30h] [rbp-38h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x36A0( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_36A0(_DWORD *a1, int *a2, __int64 a3, __int64 a4)( - VOID -); - -EFI_STATUS -EFIAPI -char v9; // r12( - VOID -); - -EFI_STATUS -EFIAPI -int v11; // r13d( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v13; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int n4; // ebp( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v17; // rdx( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v19; // r9( - VOID -); - -EFI_STATUS -EFIAPI -__int16 n5; // r15( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v23; // rax( - VOID -); - -EFI_STATUS -EFIAPI -char v25; // [rsp+70h] [rbp+8h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x3940( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_3940(__int64 a1, unsigned __int16 n0xFFFF)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v5; // r14( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v8; // rsi( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v10; // r12( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int16 v12; // cx( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int16 v14; // [rsp+60h] [rbp+40h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x3B08( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_3B08(__int64 a1, __int64 a2, __int64 a3, char *a4)( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD **v5; // r14( - VOID -); - -EFI_STATUS -EFIAPI -__int64 n0xFFFF_2; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v12; // [rsp+40h] [rbp+8h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x3C14( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_3C14(__int64 a1, _WORD *a2, __int64 n2, char *a4)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int8 v10; // al( - VOID -); - -EFI_STATUS -EFIAPI -at 0x3D3C( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_3D3C(__int64 a1, __int64 a2, __int64 a3, __int64 a4)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v9; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -__int16 v11; // ax( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v13; // rax( - VOID -); - -EFI_STATUS -EFIAPI -_WORD *v15; // r14( - VOID -); - -EFI_STATUS -EFIAPI -__int64 (__fastcall *v19)(__int64, __int64, _QWORD, _WORD *); // r10( - VOID -); - -EFI_STATUS -EFIAPI -char v21; // [rsp+50h] [rbp+8h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x3F8C( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_3F8C(_QWORD *a1)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x3FF8( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall sub_3FF8(_QWORD *a1)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x4030( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall sub_4030(__int64 *a1, __int64 *a2)( - VOID -); - -EFI_STATUS -EFIAPI -if ( !sub_3F8C(a1) ) /*0x4040*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x4080( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall sub_4080(_QWORD *a1, _QWORD *a2)( - VOID -); - -EFI_STATUS -EFIAPI -if ( !sub_3F8C(a1) ) /*0x4090*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x40D4( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_40D4(_QWORD *a1)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x410C( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_410C(_QWORD *a1)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x4154( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_4154(_WORD *a1)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 n0xF4240; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -at 0x41E8( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_41E8(_BYTE *a1)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 i; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -at 0x4254( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_4254(_BYTE *a1, _BYTE *a2, unsigned __int64 n0xF4240_1)( - VOID -); - -EFI_STATUS -EFIAPI -_BYTE *v5; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -at 0x4320( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_4320(_WORD *octet)( - VOID -); - -EFI_STATUS -EFIAPI -if ( ((unsigned __int8)octet & 1) != 0 ) /*0x432c*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x4378( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_4378(_BYTE *octet, unsigned __int64 n0xF4240)( - VOID -); - -EFI_STATUS -EFIAPI -if ( !octet || !n0xF4240 ) /*0x4380*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x43A4( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_43A4(unsigned __int64 octet, unsigned __int64 n0xF4240, char *octet_2)( - VOID -); - -EFI_STATUS -EFIAPI -const char *(Destination____((void__)_0)); // r8( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 n0xF4240_1; // rax( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 n0xF4240_2; // rbp( - VOID -); - -EFI_STATUS -EFIAPI -char *v13; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -at 0x44F0( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall sub_44F0(char *dst, char *src, unsigned __int64 count)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v7; // rbp( - VOID -); - -EFI_STATUS -EFIAPI -at 0x458C( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall ZeroMem(char *buf, unsigned __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x45F0( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall CompareMem(_QWORD *a1, __int64 n4)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x46AC( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_46AC(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v6; // rax( - VOID -); - -EFI_STATUS -EFIAPI -at 0x471C( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 n0x10; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v3; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -at 0x479C( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v4; // r8( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int8 v6; // al( - VOID -); - -EFI_STATUS -EFIAPI -char n3_1; // cl( - VOID -); - -EFI_STATUS -EFIAPI -at 0x4824( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_4824(__int64 a1, __int64 a2, __int64 a3)( - VOID -); - -EFI_STATUS -EFIAPI -result = sub_471C(); /*0x483c*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x4864( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_4864(__int64 a1, unsigned __int64 a2, __int64 a3, __int64 a4)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x48F0( - VOID -); - -EFI_STATUS -EFIAPI -at 0x4910( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall sub_4910(_BYTE *a1, unsigned __int64 a2, __int64 i_1, __int16 n32, __int64 n2)( - VOID -); - -EFI_STATUS -EFIAPI -for ( i = 0; i < i_1; ++i ) /*0x4916*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x4944( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall sub_4944(_BYTE *_r_n, unsigned __int64 a2, __int64 n16)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 n16_2; // rbp( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v7; // rtt( - VOID -); - -EFI_STATUS -EFIAPI -at 0x49BC( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_49BC(( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v6; // r14( - VOID -); - -EFI_STATUS -EFIAPI -__int64 n578; // rdx( - VOID -); - -EFI_STATUS -EFIAPI -__int64 n0xFFFF; // rdx( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v16; // r10( - VOID -); - -EFI_STATUS -EFIAPI -bool v18; // zf( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int8 *octet_2; // rdx( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v22; // r10( - VOID -); - -EFI_STATUS -EFIAPI -char v24; // r11( - VOID -); - -EFI_STATUS -EFIAPI -const char *_r_n; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int8 *octet_5; // rdx( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 n13_1; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -int v32; // eax( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v34; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -... [28318 chars total]( - VOID -); - -EFI_STATUS -EFIAPI -at 0x57D0( - VOID -); - -EFI_STATUS -EFIAPI -__int64 sub_57D0(_BYTE *_r_n, unsigned __int64 n38, __int16 n320, char *%02d_%02d_%04d__%02d:%02d, ...)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x57F4( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_57F4(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x5824( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall sub_5824(unsigned __int64 n48)( - VOID -); - -EFI_STATUS -EFIAPI -buf = (char *)sub_57F4(n48, n48); /*0x5830*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x5850( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_5850(__int64 a1, unsigned __int64 a2, __int64 a3)( - VOID -); - -EFI_STATUS -EFIAPI -if ( !a3 ) /*0x5863*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x58C8( - VOID -); - -EFI_STATUS -EFIAPI -result = (*(__int64 (**)(void))(BootServices + 72))(); /*0x58d3*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x590C( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_590C(_DWORD *a1, _DWORD *a2)( - VOID -); - -EFI_STATUS -EFIAPI -if ( !a1 ) /*0x591f*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x5974( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall GetHobList(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v2; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -SystemTable = SystemTable; /*0x5983*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x59EC( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall Mtftp4ConfigStringLookup(_BYTE *a1, _BYTE *a2, __int64 a3, _QWORD *a4, char a5)( - VOID -); - -EFI_STATUS -EFIAPI -_DWORD *v7; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 n0xF4240_1; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -_BYTE *v14; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -_BYTE *v16; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -at 0x5B30( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_5B30(_BYTE *a1, _BYTE *a2, _WORD *a3, char a4)( - VOID -); - -EFI_STATUS -EFIAPI -char i; // al( - VOID -); - -EFI_STATUS -EFIAPI -char **v13; // rsi( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v15; // rax( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 n0xF4240_1; // rbp( - VOID -); - -EFI_STATUS -EFIAPI -char *v19; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v21; // rax( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v23; // rax( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v25; // rax( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v27; // rax( - VOID -); - -EFI_STATUS -EFIAPI -at 0x5D30( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v1; // rsi( - VOID -); - -EFI_STATUS -EFIAPI -v0 = qword_9740; /*0x5d3f*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x5D98( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v1; // rax( - VOID -); - -EFI_STATUS -EFIAPI -at 0x5E0C( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_5E0C(int a1, int a2)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 i; // rax( - VOID -); - -EFI_STATUS -EFIAPI -int v6; // ecx( - VOID -); - -EFI_STATUS -EFIAPI -at 0x5EA0( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall sub_5EA0(char *src_1)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x5FB0( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_5FB0(_QWORD *i, _QWORD *a2)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v5; // rax( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD *j; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD *i_1; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -at 0x60BC( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_60BC(__int64 a1, __int64 a2, __int64 a3, __int64 a4)( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD v9[3]; // [rsp+30h] [rbp-18h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6150( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_6150(__int64 a1, __int64 a2, __int64 a3, __int64 a4)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x61E0( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_61E0(int a1, int a2)( - VOID -); - -EFI_STATUS -EFIAPI -if ( !a2 ) /*0x61f6*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6298( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_6298(unsigned int n4)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v2; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v5; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -n4_1 = n4; /*0x62a7*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6340( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_6340(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x640C( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_640C(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -if ( a1 ) /*0x6418*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6494( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_6494(_DWORD *a1, unsigned int a2, _DWORD *a3)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int v7; // r8d( - VOID -); - -EFI_STATUS -EFIAPI -_DWORD *i; // rdx( - VOID -); - -EFI_STATUS -EFIAPI -if ( !a1 || *a1 != 1718968942 ) /*0x64b6*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6538( - VOID -); - -EFI_STATUS -EFIAPI -*__fastcall sub_6538(__int64 a1, __int64 a2, unsigned int a3, unsigned int a4)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v6; // rbp( - VOID -); - -EFI_STATUS -EFIAPI -v4 = a4; /*0x654c*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x661C( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_661C(unsigned int *a1, unsigned int a2, __int64 a3, unsigned int a4, __int64 a5, __int64 a6)( - VOID -); - -EFI_STATUS -EFIAPI -int v10; // edi( - VOID -); - -EFI_STATUS -EFIAPI -int v12; // r13d( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v15; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v19; // rax( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v21; // rbp( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int v23; // ebp( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6874( - VOID -); - -EFI_STATUS -EFIAPI -__int64 __fastcall sub_6874(__int64 a1, __int64 a2, unsigned int *va)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 i; // r10( - VOID -); - -EFI_STATUS -EFIAPI -v3 = 0; /*0x6879*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x68E8( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_68E8(__int64 a1, unsigned int a2)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned __int64 v3; // rsi( - VOID -); - -EFI_STATUS -EFIAPI -int v6; // edx( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int v9; // [rsp+40h] [rbp+18h] BYREF( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6A08( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_6A08(_DWORD *a1, __int64 a2, unsigned int n4, __int64 a4)( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int v8; // r9d( - VOID -); - -EFI_STATUS -EFIAPI -_DWORD *v10; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int n4_2; // r14d( - VOID -); - -EFI_STATUS -EFIAPI -unsigned int v15; // esi( - VOID -); - -EFI_STATUS -EFIAPI -if ( !a1 || *a1 != 1718968942 ) /*0x6a34*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6B88( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_6B88(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -n4 = *(_BYTE *)(*(_QWORD *)(a1 + 24) + 32LL); /*0x6b95*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6BD8( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_6BD8(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -n4 = *(_BYTE *)(*(_QWORD *)(a1 + 8) + 32LL); /*0x6be5*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6C28( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_6C28(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6CA4( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall QueueDpc(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6CC0( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_6CC0(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -n4 = *(_BYTE *)(*(_QWORD *)(a1 + 8) + 32LL); /*0x6ccd*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6D14( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_6D14(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v3; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v5; // rsi( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v7; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6F90( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall QueueDpcForReceive(__int64 a1, __int64 a2)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x6FAC( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_6FAC(__int64 a1, __int64 (__fastcall *sub_3D3C)(), __int64 a3)( - VOID -); - -EFI_STATUS -EFIAPI -at 0x707C( - VOID -); - -EFI_STATUS -EFIAPI -*sub_707C(__int64 a1, __int64 a2, __int64 a3, ...)( - VOID -); - -EFI_STATUS -EFIAPI -_DWORD *v7; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD *v10; // rsi( - VOID -); - -EFI_STATUS -EFIAPI -_DWORD *v12; // [rsp+20h] [rbp-38h]( - VOID -); - -EFI_STATUS -EFIAPI -at 0x72D4( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall DxeConfig_3(( - VOID -); - -EFI_STATUS -EFIAPI -if ( !Configure ) /*0x72f8*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x7444( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall DxeGetInfo_2(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD **v3; // rcx( - VOID -); - -EFI_STATUS -EFIAPI -_QWORD **v5; // rdx( - VOID -); - -EFI_STATUS -EFIAPI -result = *(_BYTE *)(a1 + 32) - 4; /*0x7459*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x74C0( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall DxeConfig_5(__int64 a1)( - VOID -); - -EFI_STATUS -EFIAPI -void *v3; // r8( - VOID -); - -EFI_STATUS -EFIAPI -at 0x75BC( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_75BC(__int64 a1, __int64 a2, __int64 a3)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v7; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v12; // rbx( - VOID -); - -EFI_STATUS -EFIAPI -at 0x7680( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_7680(__int64 a1, __int64 (__fastcall *sub_3D3C)(), __int64 a3)( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v8; // rdi( - VOID -); - -EFI_STATUS -EFIAPI -__int64 v10; // rdx( - VOID -); - -EFI_STATUS -EFIAPI -if ( ((*(_BYTE *)(a1 + 32) - 4) & 0xFD) != 0 ) /*0x769f*/( - VOID -); - -EFI_STATUS -EFIAPI -at 0x7740( - VOID -); - -EFI_STATUS -EFIAPI -__fastcall sub_7740(__int64 a1)( - VOID -); - -#endif /* __MTFTP4DXE_H__ */ +#endif diff --git a/AmiNetworkPkg/UefiNetworkStack/Ipv6/Ip6Dxe/Ip6Dxe/Ip6Dxe.c b/AmiNetworkPkg/UefiNetworkStack/Ipv6/Ip6Dxe/Ip6Dxe/Ip6Dxe.c index 8ccd655..834dcc1 100644 --- a/AmiNetworkPkg/UefiNetworkStack/Ipv6/Ip6Dxe/Ip6Dxe/Ip6Dxe.c +++ b/AmiNetworkPkg/UefiNetworkStack/Ipv6/Ip6Dxe/Ip6Dxe/Ip6Dxe.c @@ -228,7 +228,7 @@ * These functions implement the EFI_HII_CONFIG_ACCESS_PROTOCOL: * - ExtractConfig, RouteConfig, Callback * - * sub_FCC0 (0xFCC0) - Ip6ConfigNvCallback (main HII callback) + * Ip6ConfigNvCallback (0xFCC0) - main HII callback * EFI_HII_CONFIG_ACCESS_PROTOCOL.Callback(). * Processes user interactions with the IPv6 configuration form: * - Question ID 264: Save interface ID @@ -240,21 +240,21 @@ * - Question ID 262: Commit config * - Question ID 263: Refresh/reset config * - * sub_EF84 (0xEF84) - Ip6ConfigNvExtractConfig + * Ip6ConfigNvExtractConfig (0xEF84) * EFI_HII_CONFIG_ACCESS_PROTOCOL.ExtractConfig(). * Converts NV data to HII configuration format. * - * sub_F814 (0xF814) - Ip6ConfigNvRouteConfig + * Ip6ConfigNvRouteConfig (0xF814) * EFI_HII_CONFIG_ACCESS_PROTOCOL.RouteConfig(). * Routes configuration data from HII back to NV storage. * - * sub_FA8C (0xFA8C) - Ip6ConfigNvCommitConfig (internal) + * Ip6ConfigNvCommitConfig (0xFA8C) - internal * Commits the current NV data to the actual IP6 config. * - * sub_F540 (0xF540) - Ip6ConfigNvUpdateForm (internal) + * Ip6ConfigNvUpdateForm (0xF540) - internal * Updates the HII form based on current config. * - * sub_13AF0 (0x13AF0) - Ip6ConfigNvCreatePopUp (internal) + * Ip6ConfigNvCreatePopUp (0x13AF0) - internal * Creates a pop-up dialog for error/info messages. */ @@ -267,37 +267,37 @@ * Address range: ~0x2C04 - 0x38A4 (Ip6Common.c functions) * ~0xD1A4 - 0xDA30 (Ip6Common.c functions) * - * sub_2C04 (0x2C04) - Ip6CommonGetAddressInfoList (internal) + * Ip6CommonGetAddressInfoList (0x2C04) - internal * Gets the address info list from the service instance. * - * sub_D1A4 (0xD1A4) - Ip6CommonCreateAddressInfo (internal) + * Ip6CommonCreateAddressInfo (0xD1A4) - internal * Creates and registers a new address info entry. * - * sub_D318 (0xD318) - Ip6CommonFindAddressInfo (internal) + * Ip6CommonFindAddressInfo (0xD318) - internal * Finds a specific address info entry by address. * - * sub_D3C4 (0xD3C4) - Ip6CommonAddAddressInfo (internal) + * Ip6CommonAddAddressInfo (0xD3C4) - internal * Adds an address-info mapping. * - * sub_D500 (0xD500) - Ip6CommonRemoveAddressInfo (internal) + * Ip6CommonRemoveAddressInfo (0xD500) - internal * Removes an address info entry. * - * sub_D5E8 (0xD5E8) - Ip6CommonAddNeighbor (internal) + * Ip6CommonAddNeighbor (0xD5E8) - internal * Adds a neighbor cache entry. * - * sub_D7B0 (0xD7B0) - Ip6CommonFindNeighbor (internal) + * Ip6CommonFindNeighbor (0xD7B0) - internal * Finds a neighbor cache entry. * - * sub_34F8 (0x34F8) - Ip6CommonPrefixMatch (internal) + * Ip6CommonPrefixMatch (0x34F8) - internal * Checks if an address matches a prefix. * - * sub_3568 (0x3568) - Ip6CommonInitInstance (internal) + * Ip6CommonInitInstance (0x3568) - internal * Initializes an IP6 instance structure. * - * sub_3648 (0x3648) - Ip6CommonConfigureInstance (internal) + * Ip6CommonConfigureInstance (0x3648) - internal * Configures the instance with specified parameters. * - * sub_37F4 (0x37F4) - Ip6CommonCleanupInstance (internal) + * Ip6CommonCleanupInstance (0x37F4) - internal * Cleans up and resets an instance. */ @@ -309,25 +309,25 @@ /* * Address range: ~0x1A28 - 0x2B54 (Ip6Output.c functions) * - * sub_1FB8 (0x1FB8) - Ip6Output (main output function) + * Ip6Output (0x1FB8) - main output function * Builds an IPv6 output packet from an NET_BUF. * Wraps the data with IPv6 header, extension headers. * Fragments if packet exceeds link MTU. - * Calls into route lookup (sub_DAC8, sub_E490) and transmits. + * Calls into route lookup (Ip6OutputRouteLookup, next-header handling) and transmits. * - * sub_1B40 (0x1B40) - Ip6OutputFragment (internal) + * Ip6OutputFragment (0x1B40) - internal * Fragments an IPv6 packet into multiple fragments. * - * sub_1D80 (0x1D80) - Ip6OutputIpHeader (internal) + * Ip6OutputIpHeader (0x1D80) - internal * Builds the IPv6 header in the output packet. * - * sub_1E9C (0x1E9C) - Ip6OutputExtHeader (internal) + * Ip6OutputExtHeader (0x1E9C) - internal * Processes extension headers (Hop-by-Hop, Routing, Fragment, etc.) * - * sub_280C (0x280C) - sub_280C + * Ip6OutputValidateParam (0x280C) * Validates output parameters. * - * sub_DAC8 (0xDAC8) - Ip6OutputRouteLookup (internal) + * Ip6OutputRouteLookup (0xDAC8) - internal * Route table lookup for next-hop determination. */ @@ -341,47 +341,47 @@ * * Implements Neighbor Discovery Protocol (RFC 4861). * - * sub_47B0 (0x47B0) - Ip6NdStart (internal) + * Ip6NdStart (0x47B0) - internal * Initializes ND module for an instance (reachable timer, etc.) * - * sub_48F4 (0x48F4) - Ip6NdStop (internal) + * Ip6NdStop (0x48F4) - internal * Stops ND module for an instance. * - * sub_4A20 (0x4A20) - Ip6NdBeginWork (internal) + * Ip6NdBeginWork (0x4A20) - internal * Begins ND work - processes ND messages. * - * sub_4B90 (0x4B90) - sub_4B90 - ND timer callback (internal) + * Ip6NdTimerCallback (0x4B90) - ND timer callback (internal) * - * sub_4C78 (0x4C78) - sub_4C78 - ND retransmission handler (internal) + * Ip6NdRetransmitHandler (0x4C78) - ND retransmission handler (internal) * - * sub_4F28 (0x4F28) - sub_4F28 + * Ip6NdPeriodicProcess (0x4F28) * ND periodic processing (timer tick). * - * sub_5040 (0x5040) - sub_5040 + * Ip6NdEventHandler (0x5040) * ND event handler - route/address discovery notifications. * - * sub_50FC (0x50FC) - sub_50FC + * Ip6NdTimeoutHandler (0x50FC) * ND timeout handler for neighbor/prefix state management. * - * sub_5260 (0x5260) - sub_5260 + * Ip6NdSendSolicitation (0x5260) * ND sending solicitation. * - * sub_5488 (0x5488) - sub_5488 + * Ip6NdProcessAdvertisement (0x5488) * ND processing received advertisement. * - * sub_5B10 (0x5B10) - sub_5B10 + * Ip6NdProcessRouterAdvertisement (0x5B10) * ND processing router advertisement. * - * sub_5DB8 (0x5DB8) - sub_5DB8 + * Ip6NdBuildNeighborSolicitation (0x5DB8) * ND building and sending neighbor solicitation. * - * sub_6120 (0x6120) - sub_6120 + * Ip6NdBuildNeighborAdvertisement (0x6120) * ND building neighbor advertisement response. * - * sub_6438 (0x6438) - sub_6438 + * Ip6NdProcessRedirect (0x6438) * ND processing redirect messages. * - * sub_6A90 (0x6A90) - sub_6A90 + * Ip6NdGenerateLinkLocalAddress (0x6A90) * ND generating link-local address. */ @@ -395,25 +395,25 @@ * * Implements MLDv2 (RFC 3810) / MLDv1 (RFC 2710). * - * sub_ACAC (0xACAC) - sub_ACAC + * Ip6MldInit (0xACAC) * MLD initialization for an interface. * - * sub_AD6C (0xAD6C) - sub_AD6C + * Ip6MldJoinGroup (0xAD6C) * MLD group join operation. * - * sub_AE0C (0xAE0C) - sub_AE0C + * Ip6MldLeaveGroup (0xAE0C) * MLD group leave operation. * - * sub_B01C (0xB01C) - sub_B01C + * Ip6MldProcessQuery (0xB01C) * MLD query processing. * - * sub_B2EC (0xB2EC) - sub_B2EC + * Ip6MldProcessReport (0xB2EC) * MLD report processing. * - * sub_B5B4 (0xB5B4) - sub_B5B4 + * Ip6MldBuildReport (0xB5B4) * MLD building and sending reports. * - * sub_BB0C (0xBB0C) - sub_BB0C (also Ip6Mld?) + * Ip6MldProcessDone (0xBB0C) - also Ip6Mld? * Another MLD handler. */ @@ -423,28 +423,28 @@ /* ================================================================== */ /* - * sub_AB40 (0xAB40) - TimerTicking (Ip6Driver.c internal) + * TimerTicking (0xAB40) - Ip6Driver.c internal * Periodic timer callback (every 500ms based on timer config). * Drives ND and MLD state machines. - * Called from the timer event created in sub_C80. + * Called from the timer event created in Ip6CreateService. * - * sub_6EC0 (0x6EC0) - sub_6EC0 + * Ip6ReceivePacketCallback (0x6EC0) * Receive buffer processing callback. * Called when MNP signals received data. * Dispatches to ND and MLD protocol handlers. * - * sub_7EB0 (0x7EB0) - sub_7EB0 + * Ip6QueueDpc (0x7EB0) * DPC queuing routine (deferred procedure call). * Queues work for deferred execution. * - * sub_8068 (0x8068) - sub_8068 + * Ip6DpcPacketDemux (0x8068) * DPC handler - processes received IP6 packets. * Demultiplexes by NextHeader (TCP=6, UDP=17, ICMPv6=58, etc.) * - * sub_977C (0x977C) - sub_977C + * Ip6ConfigNotification (0x977C) * Config notification callback (wake-up from DHCPv6/etc.) * - * sub_9774 (0x9774) - sub_9774 + * Ip6MnpReceiveCallback (0x9774) * MNP receive completion callback. */ @@ -457,8 +457,8 @@ * These provide DEBUG/ASSERT support similar to UEFI DebugLib. * Many xrefs from assert expressions throughout the driver. * - * sub_10504 (0x10504) - DebugPrint (variadic) - * sub_1058C (0x1058C) - Assert + * DebugPrint (0x10504) - variadic + * Assert (0x1058C) * * Library functions linked from MdePkg and MdeModulePkg: * - NetBuffer.c (0x1A618) - NET_BUF management @@ -476,61 +476,61 @@ /* */ /* Driver entry: */ /* _ModuleEntryPoint (0x548) */ -/* -> sub_5C4 (init gST/gBS/gRT and HII/DPC protocols) */ +/* -> Ip6DxeInitialize (init gST/gBS/gRT and HII/DPC protocols) */ /* -> InstallMultipleProtocolInterfaces (installs 3 protocols) */ -/* -> sub_7D4 (read variable, register DriverBinding) */ +/* -> Ip6InstallDriverBinding (read variable, register DriverBinding) */ /* */ /* Driver Binding Protocol: */ -/* sub_94C -> ControllerSupported */ -/* sub_1160 -> DriverStart */ -/* -> sub_C80 -> Ip6CreateService (4192 bytes) */ -/* -> sub_7EB0 -> MNP open + config */ -/* -> sub_9CA0 -> Config init */ -/* -> sub_A31C -> Timer create */ -/* -> sub_B230 -> Route/address setup */ -/* -> sub_15C4C -> Event registration */ -/* sub_13F0 -> DriverStop */ -/* -> sub_9C4 -> Ip6DestroyService */ +/* Ip6DriverBindingSupported -> ControllerSupported */ +/* Ip6DriverBindingStart -> DriverStart */ +/* -> Ip6CreateService -> Ip6CreateService (4192 bytes) */ +/* -> Ip6QueueDpc -> MNP open + config */ +/* -> Ip6ConfigInit -> Config init */ +/* -> Ip6CreateTimer -> Timer create */ +/* -> Ip6SetupRoutes -> Route/address setup */ +/* -> Ip6RegisterEvents -> Event registration */ +/* Ip6DriverBindingStop -> DriverStop */ +/* -> Ip6DestroyService -> Ip6DestroyService */ /* */ /* IP6 Protocol (per-child): */ -/* sub_324C -> Ip6GetModeData */ -/* -> sub_2C04 -> GetAddressInfoList */ -/* -> sub_47B0 -> Ip6NdStart */ -/* -> sub_48F4 -> Ip6NdStop */ -/* sub_3950 -> Ip6Configure */ -/* -> sub_34F8 -> PrefixMatch */ -/* -> sub_37F4 -> CleanupInstance */ -/* -> sub_3648 -> ConfigureInstance */ -/* -> sub_D1A4 -> CreateAddressInfo */ -/* sub_3F4C -> Ip6Transmit */ -/* -> sub_1B40 -> Ip6Output (packet building) */ -/* sub_439C -> Ip6Receive */ -/* sub_44C4 -> Ip6Cancel */ -/* sub_4684 -> Ip6Poll */ +/* Ip6GetModeData -> Ip6GetModeData */ +/* -> Ip6CommonGetAddressInfoList -> GetAddressInfoList */ +/* -> Ip6NdStart -> Ip6NdStart */ +/* -> Ip6NdStop -> Ip6NdStop */ +/* Ip6Configure -> Ip6Configure */ +/* -> Ip6CommonPrefixMatch -> PrefixMatch */ +/* -> Ip6CommonCleanupInstance -> CleanupInstance */ +/* -> Ip6CommonConfigureInstance -> ConfigureInstance */ +/* -> Ip6CommonCreateAddressInfo -> CreateAddressInfo */ +/* Ip6Transmit -> Ip6Transmit */ +/* -> Ip6Output -> Ip6Output (packet building) */ +/* Ip6Receive -> Ip6Receive */ +/* Ip6Cancel -> Ip6Cancel */ +/* Ip6Poll -> Ip6Poll */ /* */ /* IP6 Config Protocol: */ -/* sub_7988 -> SetData */ -/* -> sub_8770 -> GetData (also called from GetData) */ -/* -> sub_958C -> SetConfigData */ -/* sub_8DD8 -> RegisterNotify */ -/* sub_9078 -> UnregisterNotify */ -/* sub_9774 -> ConfigCallback (MNP recv callback) */ -/* sub_977C -> ConfigNotification (event notify) */ +/* Ip6ConfigSetData -> SetData */ +/* -> Ip6ConfigGetData -> GetData (also called from GetData) */ +/* -> Ip6ConfigSetConfigData -> SetConfigData */ +/* Ip6ConfigRegisterNotify -> RegisterNotify */ +/* Ip6ConfigUnregisterNotify -> UnregisterNotify */ +/* Ip6MnpReceiveCallback -> ConfigCallback (MNP recv callback) */ +/* Ip6ConfigNotification -> ConfigNotification (event notify) */ /* */ /* Timer/Event loop (running in background): */ -/* sub_AB40 -> Timer tick (500ms periodic) */ -/* -> sub_1694 -> Check for new TCP child protocol */ -/* -> sub_6EC0 -> Receive data processing */ -/* sub_6EC0 -> ProcessRecvData */ -/* -> sub_8068 -> DPC handler for demux */ +/* TimerTicking -> Timer tick (500ms periodic) */ +/* -> Ip6ServiceCreateChild -> Check for new TCP child protocol */ +/* -> Ip6ReceivePacketCallback -> Receive data processing */ +/* Ip6ReceivePacketCallback -> ProcessRecvData */ +/* -> Ip6DpcPacketDemux -> DPC handler for demux */ /* */ /* Output path: */ -/* sub_1FB8 -> Ip6Output (transmit packet) */ -/* -> sub_1B40 -> Fragmentation */ -/* -> sub_1D80 -> Build IPv6 header */ -/* -> sub_1E9C -> Build extension headers */ -/* -> sub_DAC8 -> Route lookup */ -/* -> sub_E490 -> Next header handling */ +/* Ip6Output -> Ip6Output (transmit packet) */ +/* -> Ip6OutputFragment -> Fragmentation */ +/* -> Ip6OutputIpHeader -> Build IPv6 header */ +/* -> Ip6OutputExtHeader -> Build extension headers */ +/* -> Ip6OutputRouteLookup -> Route lookup */ +/* -> Next header handling */ /* -> MNP Transmit */ /* */ /* ================================================================== */ diff --git a/AmiNetworkPkg/UefiNetworkStack/Ipv6/Ip6Dxe/Ip6Dxe/Ip6Dxe.h b/AmiNetworkPkg/UefiNetworkStack/Ipv6/Ip6Dxe/Ip6Dxe/Ip6Dxe.h index d536da3..6950cf3 100644 --- a/AmiNetworkPkg/UefiNetworkStack/Ipv6/Ip6Dxe/Ip6Dxe/Ip6Dxe.h +++ b/AmiNetworkPkg/UefiNetworkStack/Ipv6/Ip6Dxe/Ip6Dxe/Ip6Dxe.h @@ -76,9 +76,9 @@ #define IP6_IFR_FRAME_SIZE 1592 /* ------------------------------------------------------------------ */ -/* IP6_SERVICE - per-controller instance (allocated at sub_C80, ~4KB) */ +/* IP6_SERVICE - per-controller instance (allocated at Ip6CreateService, ~4KB) */ /* Signature at +0: 0x53364950 ('IP6S') */ -/* Layout determined by analyzing sub_9C4 (destroy) offsets */ +/* Layout determined by analyzing Ip6DestroyService (destroy) offsets */ /* ------------------------------------------------------------------ */ typedef struct _IP6_SERVICE { UINT32 Signature; /* +0x00: 0x53364950 'IP6S' */ @@ -112,7 +112,7 @@ /* ------------------------------------------------------------------ */ /* IP6_INSTANCE - per-child protocol instance */ -/* Allocated at sub_1694, Signature at [-8] = 0x49365049 */ +/* Allocated at Ip6ServiceCreateChild, Signature at [-8] = 0x49365049 */ /* ------------------------------------------------------------------ */ typedef struct _IP6_INSTANCE { UINT32 Signature; /* +0x00: 0x49365049 'IP6I' */ @@ -125,7 +125,7 @@ /* ------------------------------------------------------------------ */ /* IP6_CONFIG_NV - HII config NV instance (size ~1592) */ -/* Allocated at sub_FCC0, Signature at [-16] = 0x4E365049 */ +/* Allocated at Ip6ConfigNvCallback, Signature at [-16] = 0x4E365049 */ /* ------------------------------------------------------------------ */ typedef struct _IP6_CONFIG_NV { UINT32 Signature; /* +0x00: 0x4E365049 'IP6N' */ @@ -219,7 +219,7 @@ /* 0x1BDB0: ImageHandle_1 (second driver binding handle) */ /* ------------------------------------------------------------------ */ -/* Ip6ConfigNv DataTypes (question IDs from sub_FCC0) */ +/* Ip6ConfigNv DataTypes (question IDs from Ip6ConfigNvCallback) */ /* ------------------------------------------------------------------ */ #define IP6_CONFIG_NV_INTERFACE_ID 257 #define IP6_CONFIG_NV_HOST_ADDRESS 258 @@ -233,7 +233,7 @@ /* ------------------------------------------------------------------ */ /* Signature constants for CR macro */ /* ------------------------------------------------------------------ */ -/* Ip6Impl.c Verifies CR(IpSb, IP6_SERVICE_SIGNATURE) at +96 from data ptr */ -/* Ip6ConfigNv.c Verifies CR(ConfigNv, IP6_CONFIG_NV) at different offsets */ +/* Ip6Impl.c verifies CR(IpSb, IP6_SERVICE_SIGNATURE) at +96 from data ptr */ +/* Ip6ConfigNv.c verifies CR(ConfigNv, IP6_CONFIG_NV) at different offsets */ -#endif /* __IP6DXE_H__ */ \ No newline at end of file +#endif /* __IP6DXE_H__ */ diff --git a/MdeModulePkg/Core/PiSmmCore/PiSmmCore/PiSmmCore.h b/MdeModulePkg/Core/PiSmmCore/PiSmmCore/PiSmmCore.h index 238fe15..fa3a90f 100644 --- a/MdeModulePkg/Core/PiSmmCore/PiSmmCore/PiSmmCore.h +++ b/MdeModulePkg/Core/PiSmmCore/PiSmmCore/PiSmmCore.h @@ -16,10 +16,9 @@ */ #ifndef __PI_SMM_CORE_H__ -#define __ +#define __PI_SMM_CORE_H__ #include "../uefi_headers/Uefi.h" -PI_SMM_CORE_H__ // ============================================================ // EFI status codes @@ -109,17 +108,17 @@ UINT32 Reserved; // 0x04 LIST_ENTRY AllHandles; // 0x08: link on global handle list (off_13F60) LIST_ENTRY Protocols; // 0x18: list of PRTI_ENTRYs -} SHSND_ENTY; +} SHND_ENTRY; // NOTIFY_ENTY - Protocol Notify Entry (48 bytes) -typdef struct { +typedef struct { UINT32 Signature; // 0x00: 0x444E4853 UINT32 Reserved; // 0x04 LIST_ENTRY Link; // 0x08: link VOID *Handle; // 0x18: handle GUID UINT64 NotifyFunction; // 0x20: notification callback UINT64 Registration; // 0x28: registration context -} NOOTIFY_ENTRY; +} NOTIFY_ENTRY; // IMAGE_RECORD - Loaded SMM Driver Image Record (64 bytes) // Tracked for Memory Attributes Table construction. @@ -134,13 +133,13 @@ } IMAGE_RECORD; // CODE_SECTION - Code Section Record (40 bytes) -typdef struct { +typedef struct { UINT32 Signature; // 0x00: "COSE" UINT32 Reserved; // 0x04 LIST_ENTRY Link; // 0x08: link on image's code segment list UINT64 CodeBase; // 0x18: virtual address of code section UINT64 CodeSize; // 0x20: size of raw data -} COODE_SECTION; +} CODE_SECTION; // POOL_HEADER - Pool Allocation Header (24 bytes) typedef struct { @@ -149,15 +148,15 @@ UINT8 Type; // 0x05: pool type (5=code, 6=data) UINT16 Reserved; // 0x06 UINT32 Size; // 0x08: total size (header + data + tail) - LIST_ENTYY Link; // 0x10: link on pool free list -} POOOL_HEADER; + LIST_ENTRY Link; // 0x10: link on pool free list +} POOL_HEADER; // POOL_TAIL - Pool Allocation Tail (16 bytes) typedef struct { UINT32 Signature; // 0x00: "ptal" UINT32 Reserved; // 0x04 UINT64 Size; // 0x08: must match POOL_HEADER.Size -} POOOL_TAIL; +} POOL_TAIL; // POOL_PAGE - Large Page Allocation Header** typedef struct { @@ -165,7 +164,7 @@ UINT32 Type; // 0x08: pool type UINT32 Reserved; // 0x0x0C UINT64 Size; // 0x10: size in bytes (page_count << 12) -} POOOL_PAGE; +} POOL_PAGE; // AMI Communication Buffer Mailbox (24 bytes) typedef struct { @@ -200,4 +199,4 @@ // SMST+0xC8 (200): SmmCommunication / Manage // SMST+0xD0 (208): SmmLocateProtocol -#endif // __PI_SMM_CORE_H__ \ No newline at end of file +#endif // __PI_SMM_CORE_H__ diff --git a/MdeModulePkg/Universal/Disk/PartitionDxe/tmp_decomp.txt b/MdeModulePkg/Universal/Disk/PartitionDxe/tmp_decomp.txt deleted file mode 100644 index e0e29bf..0000000 --- a/MdeModulePkg/Universal/Disk/PartitionDxe/tmp_decomp.txt +++ /dev/null @@ -1,4 +0,0 @@ - File "", line 7 - print(f'// ===== {name} (0x{list({v:k for k,v in {0x45C:"PartitionDriverEntryPoint",0x534:"PartitionDriverBindingSupported",0x678:"PartitionDriverBindingStart",0x97C:"PartitionDriverBindingStop",0xD70:"PartitionBlockIoReset",0xDC4:"PartitionReturnChildError",0xE04:"PartitionBlockIoReadBlocks",0xED0:"PartitionBlockIoWriteBlocks",0xF9C:"PartitionBlockIoFlushBlocks",0xFE0:"PartitionReturnChildError2",0x101C:"PartitionBlockIo2Reset",0x1070:"PartitionBlockIo2ReadWriteCommon",0x10B0:"PartitionCreateMediaDevicePathNode",0x1118:"PartitionBlockIo2ReadBlocks",0x126C:"PartitionBlockIo2WriteBlocks",0x13C0:"PartitionBlockIo2FlushBlocks",0x1470:"PartitionCreateChildHandles",0x1818:"GetSupportedLanguages",0x1974:"PartitionComponentNameUnsupported",0x1980:"PartitionCheckOverlap",0x1A14:"PartitionRegisterOverlap",0x1A88:"PartitionUnregisterOverlap",0x1B54:"PartitionValidMbr",0x1CC0:"PartitionInstallMbrChildHandles",0x227C:"PartitionInstallGptChildHandles",0x2840:"PartitionCheckGptTable",0x29E0:"PartitionCheckGptEntryArrayCrc",0x2AB8:"PartitionWriteGptTable",0x2C44:"PartitionCheckGptEntries",0x2D84:"PartitionInstallEltChildHandles"}.items()}[name]:x}) ====') - ^ -SyntaxError: f-string: expecting '=', or '!', or ':', or '}'