DataTable
CDataTable, CTableFile, EntryQueue, DataTable, CItemInfoMgr, CItemTable, CDataFile
| Address | Size | Name | Description |
|---|---|---|---|
| 0x004EA5E0 | 232 | CVariant__DestroyByTag | Destroys a CVariant instance by freeing resources based on type tag (7/8=heap strings, 9=refcounted, 11=alt refcount) |
| 0x004EA6E0 | 395 | CVariant__CompareAndCopy | Compares variant JSON key against current value; copies new variant if different, validating semantic type match. |
| 0x004EA890 | 487 | CVariant__CopyAssign | Copies variant values between buffers based on type tag, handling 12 data types from 2-byte primitives to refcounted heap allocations |
| 0x004EAAB0 | 492 | CDataFile__LoadFromPath | Loads JSON or BSON data files using regex pattern matching, dispatches to appropriate parser, sets loaded flag on success. |
| 0x004EACC0 | 73 | CDataFile__LoadFromBuffer | Loads and parses JSON data from buffer, supporting both array and stream formats, sets success flag on completion. |
| 0x004EAD10 | 256 | CDataFile__ParseBSON | Opens and parses a BSON file into a document tree, returns 1 on success or 0 on file open failure. |
| 0x004EAE40 | 185 | CDataFile__ParseJSONArrayIterator | Validates and initializes JSON array parsing from iterator pair; returns 1 on success, 0 if iterators are equal/empty. |
| 0x004EAF20 | 314 | CDataFile__ParseJSONFile | Opens and parses JSON file via ifstream, validates with regex NFA, returns success/failure status code. |
| 0x004EB090 | 276 | CDataFile__ParseJSONStream | Parses JSON from null-terminated buffer into CDataFile variant, validates stream integrity, returns 1 on success or 0 on failure. |
| 0x004EB1D0 | 121 | CDataFile__FormatError | Formats an error message via vsnprintf into a 2048-byte buffer and assigns result to std::string with stack canary protection. |
| 0x004FF5C0 | 169 | CDataFile__ReadIntField | Reads and validates an integer field from JSON data, converting variant to int and reporting format errors on failure. |
| 0x004FF670 | 169 | CDataFile__ReadDoubleField | Reads and validates a double value from a JSON variant field, returning success/failure status and output value. |
| 0x004FF720 | 254 | CDataFile__ReadStringField | Reads and validates a string field from JSON data, converting variant to string and storing in output parameter with error handling. |
| 0x00500180 | 1930 | CDataTable__ParseMapStringArrayValue | Parses XML/JSON map attribute containing string keys mapped to integer vector arrays into STL map structure. |
| 0x00500990 | 1011 | CDataTable__ParseMapStringBoolValue | Parses XML/JSON object into map<string, bool>, iterating child nodes to extract string keys and boolean values. |
| 0x00500D90 | 261 | CDataTable__ParseVectorIntValue | Parses JSON array of integers into a vector<int>, validating element types and converting via CDataTable__ConvertToInt. |
| 0x00500EA0 | 280 | CDataTable__ParseVectorDoubleValue | Parses JSON array of doubles into std::vector<double>, validating each element is type 5 (numeric). |
| 0x00500FC0 | 169 | CDataTable__ParseBoolAttribute | Parses boolean value from XML attribute via JSON variant, validates type, stores result in output parameter with error handling. |
| 0x00501070 | 493 | CDataTable__ParseMapIntStringValue | Parses XML child nodes into a map<int, string> by iterating children, converting element names to int keys via atoi, and inserting string values into red-black tree. |
| 0x00501260 | 1406 | CDataTable__ParseNProtectGameGuardConfig | Parses NProtectGameGuard CSAuthErrorCode XML config into structure with ErrorCode vector, BanCount, IntervalMinute, BlockPeriodDay fields |
| 0x005017F0 | 547 | CDataTable__ParseListStringValue | Parses XML/JSON array of strings into std::list, converting CBOR values (types 6/7/0xc) via ConvertToString |
| 0x00501A20 | 1104 | CDataTable__ParseGenericDataEntry | Parses generic data table entries with typed fields (IntValue, StringValue, VectorIntValue, MapStringBoolValue, MapStringStringValue) |
| 0x00501E80 | 2525 | CDataTable__ParseReputeGroupData | Parses XML ReputeGroup data into map structure, extracting ID, Name, and ReputeList vectors |
| 0x00502880 | 2638 | CDataTable__ParseReputeInfoData | Parses reputeInfo XML/JSON data, extracting reputation entries with Name, MaxPoint_Positive/Negative, Invisible fields into map structure. |
| 0x005032F0 | 1622 | CDataTable__ParseEZ2STREffectData | Parses EZ2STREffect XML data, extracting FilePath, PosX, PosY, IsInfinite, IsFloor fields for visual effects. |
| 0x00504200 | 3382 | CDataTable__ParseFormulaData | Parses XML formula data into red-black tree, extracting FormulaVersion and nested integer arrays for damage/stat calculations |
| 0x00505070 | 1178 | CDataTable__ParseSkillData | Parses skill data XML entry, extracting SkillMaxLevel, SkillType, SkillPattern, SkillCostSP, SkillRange fields into client skill database. |
| 0x00506DA0 | 421 | CDataTable__ParseVectorStringValue | Parses XML array elements into vector<string>, converting each child element to string and storing in 0x18-byte vector elements |
| 0x00509E30 | 304 | CDataTable__ConvertToInt | Converts XML/JSON typed value nodes to integers, handling bool/int/short/double/string types with recursive reference dereferencing. |
| 0x00509F90 | 724 | CDataTable__ConvertToString | Converts typed JSON/XML value node to std::string, handling direct strings, table refs, and recursive references with type-specific encoding. |
| 0x0050A2A0 | 133 | CDataTable__CopyEntryFields | Copies field data from source entry to destination entry, handling string assignments and primitive field copies at fixed offsets. |
| 0x0050BD20 | 450 | CDataTable__BinarySearchKeyRange | Binary search on sorted 0x28-byte table entries; returns equal_range (lower/upper bound) for string key lookup. |
| 0x0050D4E0 | 858 | CDataTable__SortedInsert | Binary searches sorted CDataTable vector by string key, inserts entry at correct position, returns iterator with insertion status flag. |
| 0x0050E8B0 | 244 | CDataTable__EntryMoveCtorWithVtable | Move constructor for CDataTable::Entry that transfers ownership of three string members from source to destination object. |
| 0x0050E9B0 | 210 | CDataTable__EntryMoveCtorWithStrings | Move constructor for CDataTable::Entry that transfers ownership of two string members and resets source object state. |
| 0x0050EA90 | 279 | CDataTable__MoveConstructFullEntry | Move-constructs a CDataTable entry by transferring ownership of string/vector data from source to destination, zeroing source allocations. |
| 0x0050EBB0 | 166 | CDataTable__MoveConstructWithMap | Move constructor for CDataTable that transfers ownership of internal linked list node and size from source to destination object. |
| 0x0050EC60 | 143 | CDataTable__MoveConstructEntry | Move-constructs a CDataTable entry by transferring ownership of string data from source to destination parameter. |
| 0x0050F030 | 887 | CDataTable__MoveConstructMaps | Move-constructs CDataTable entry by swapping 11 red-black tree maps with sentinel nodes and source data. |
| 0x0050F3B0 | 416 | CDataTable__CopyConstructor | Copy constructor for CDataTable; duplicates RB-tree and 10 STL maps plus string member via deep copy. |
| 0x0050F550 | 604 | CDataTable__DefaultConstructor | Initializes CDataTable with 11 red-black tree sentinel nodes (1x 0x2C, 2x 0x40, 8x 0x34) for Lua data binding |
| 0x00593720 | 117 | CDataTable__InsertAndTrackIndex | Inserts element into unordered map; if new insertion, appends to tracking vector at offset 0x19c with growth. |
| 0x00599EF0 | 742 | CTableFile__ParseCSVWithCallbacks | Parses CSV file with row/column transformation callbacks, handling vector allocation and string element destruction per row. |
| 0x0059A200 | 1037 | CTableFile__ParseCSVWithTransform | Parses CSV file with row transformation and post-processing callbacks using std::function objects |
| 0x0059A630 | 236 | CTableFile__OpenCSV | Opens CSV file, validates UTF-8 encoding via BOM detection, rejects UTF-16LE/BE, seeks past BOM if present. |
| 0x0059AA30 | 722 | CTableFile__LoadTextFileLines | Loads text file, splits into lines by CR/LF, filters comment lines (//), stores non-empty lines in vector with optional # separator handling. |
| 0x005E7B80 | 153 | CDataTable__initialize_repute_group_entry | Initializes a repute group entry struct by copying first two fields and zeroing remaining fields (indices 2-10). |
| 0x005E7C20 | 140 | STL_vector_ctor_from_range | Constructs a vector by copying data from range [param_2, param_3), initializing the vector object at param_1 |
| 0x005E8160 | 87 | CDataTable__compare_repute_group_key | Traverses binary search tree to find repute group key insertion point, comparing by priority values |
| 0x005E81C0 | 87 | CDataTable__compare_repute_info_key | Performs binary search tree traversal to locate a repute info node by comparing key values (uVar1, uVar2) against tree node data at offsets +0x14 and +0x18. |
| 0x005E8410 | 186 | CDataTable__get_or_create_repute_instance | Initializes a reputation/repute data instance with two intrusive lists and Lua state for RO game client |
| 0x005E8D90 | 101 | CDataTable__destroy_repute_instance_A | Destructor for CDataTable repute instance; cleans up Lua state and deallocates red-black tree nodes |
| 0x005E8EA0 | 897 | CDataTable__ParseReputeGroupEntries | Parses reputation group entries from resource data into a vector of repute_info structures by loading and processing string resources. |
| 0x005E9280 | 895 | CDataTable__ParseReputeInfoEntries | Parses reputation info entries from game resources, validates VISIBLE_FALSE flag, loads string data into CDataTable structures |
| 0x005E9630 | 101 | CDataTable__destroy_repute_instance_B | Destructor for CDataTable repute instance; destroys red-black tree nodes and deallocates repute_detail memory. |
| 0x005E96F0 | 128 | CDataTable__collect_repute_to_vector | Collects reputation data from an RB-tree into a vector, initializing the output vector and delegating to STL tree traversal. |
| 0x005E9770 | 370 | CDataTable__SearchReputeInfoByKey | Searches reputation info entries by key string, filters by valid status/level ranges, and returns matching results in vector. |
| 0x005E98F0 | 315 | CDataTable__SearchReputeInfoByKeyB | Searches reputation info table by key criteria, filters results by state/flag conditions, returns matching entries in output vector. |
| 0x005E9A30 | 54 | CDataTable__InitReputeData | Initializes reputation system data by loading repute info and group data; returns success status. |
| 0x005E9A70 | 61 | CDataTable__InitReputeData_alt | Initializes reputation system by loading repute info and group data; returns success/failure with error logging. |
| 0x005E9AB0 | 1040 | CDataTable__LoadReputeGroupData | Loads reputation group data from XML file, parses it, and populates reputation group tree structure into param_1. |
| 0x005E9ED0 | 1024 | CDataTable__LoadReputeInfoData | Loads reputation info data from XML file, parses it via regex tokenizer, and populates tree structure in param_1 |
| 0x005EA3F0 | 83 | CDataTable__insert_or_update_repute_info | Inserts or updates repute info entry in sorted table using binary search comparison, storing output params at found node offset. |
| 0x005EA670 | 65 | CDataTable__ToggleQuestWindow | Toggles quest window visibility state and closes window (0x15a) if param_2==1 via virtual method at offset 0x94 |
| 0x005EA7E0 | 124 | CDataTable__repute_info_vector_reserve | Reserves capacity for repute_info vector with growth strategy; reallocates or frees old buffer if needed. |
| 0x00658D00 | 108 | CDataTableBase__Constructor | Initializes CDataTableBase instance with vtable, copies source parameter, nulls fields, and calls container initialization with stack guard. |
| 0x00658D70 | 135 | CDataTableBase__Constructor_b | Constructs CDataTableBase instance, initializes vtable pointers, copies parameters to offsets, calls container initialization. |
| 0x00658FA0 | 361 | DataTable__CopyContainers | Deep copies a red-black tree container with auxiliary vectors/maps from source to destination DataTable node. |
| 0x00659110 | 221 | DataTable__InitContainers | Initializes a data table structure with linked-list nodes, vector container, and default float/integer values for game data management. |
| 0x0066A880 | 267 | DataTable__CopyConstructor_RBTree | Copy-constructs a DataTable's RBTree, initializing sentinel node and recursively cloning all tree nodes with color preservation. |
| 0x0066A990 | 187 | DataTable__InitContainer | Initializes a DataTable container with empty hash map, copying header from param_3 and allocating 16-bucket hash structure. |
| 0x0066AA50 | 187 | DataTable__InitContainer_0x2c | Initializes a 0x2c-byte container with linked list nodes and allocates 16 hash buckets for HashMap storage. |
| 0x0066AB10 | 187 | DataTable__InitContainer_0x10b | Initializes a DataTable container by copying initial value, allocating node list, and initializing hash bucket allocation. |
| 0x0066ABD0 | 187 | DataTable__InitContainer_0x2c_b | Initializes a 0x2c-byte container with linked list node pointers and allocates hash bucket storage for a HashMap. |
| 0x0066AD40 | 253 | LuaReader__ReadIntArray | Reads integer array from Lua table field, iterates elements via lua_next, converts to int, appends to vector. |
| 0x0066AE40 | 120 | LuaReader__ReadNumberField | Reads a numeric field from a Lua table, converts to float via lua_tonumber, returns status (0=success, 1=nil, 2=type error, 3=not table) |
| 0x0066AEC0 | 258 | LuaReader__ReadFloatArray | Reads a Lua table field as an array of floats, validates types, converts each entry to uint32, and stores in vector. |
| 0x0066AFD0 | 134 | LuaReader__ReadString | Reads a string value from a Lua table field and assigns it to a std::string output parameter, returning status code. |
| 0x0066B060 | 261 | LuaReader__ReadStringArray | Reads a string array from a Lua table field, returning the first element string or error code. |
| 0x0066B260 | 240 | LuaReader__ReadIntMapByKey | Reads integer key-value pairs from Lua table into C3dActorPC slot map; returns error status (0=success, 2=type error). |
| 0x0066B350 | 516 | LuaReader__ReadFloatMapByKey | Reads a Lua table of float key-value pairs and inserts them into an RB-tree map structure |
| 0x0066B560 | 291 | LuaReader__ReadKeyStringMap | Reads a key-string map entry from Lua table, validates types, converts key to number, extracts string value |
| 0x0066B840 | 71 | LuaReader__ReadIntByIndex | Reads integer from Lua stack at specified index, converts to number via FPU, stores result; returns 0 on success, 1 if nil, 2 if wrong type. |
| 0x0066B890 | 71 | LuaReader__ReadNumberByIndex | Reads a number from Lua stack at given index, converts to integer via x87 FPU, returns 0 on success or error code. |
| 0x0066E9E0 | 173 | DataTable__Serialize_0x12 | Serializes DataTable packet 0x12 by formatting and assigning data from param_4 and param_5 to output buffer |
| 0x0066EA90 | 153 | DataTable__Serialize_0x0c | Serializes a DataTable entry with opcode 0x0c by formatting and assigning a string value to the output buffer. |
| 0x0066EB30 | 173 | DataTable__Serialize_0x2c | Serializes DataTable packet 0x2c by formatting and assigning string data using provided parameters and buffers. |
| 0x0066EBE0 | 215 | DataTable__Serialize_300 | Serializes DataTable entry 300 by formatting and assigning data to output parameters via String__FormatAndAssign wrapper. |
| 0x0066ECC0 | 180 | DataTable__Serialize_0xdc | Serializes DataTable entry 0xdc by formatting and assigning string data with stack-based buffer management. |
| 0x0066ED80 | 242 | DataTable__Serialize_0xddc | Serializes DataTable entry 0xddc by formatting and assigning string data with stack buffer management. |
| 0x0066EE80 | 173 | DataTable__Serialize_0x1c | Serializes packet 0x1c data by formatting and assigning values from param_4/param_5 to output buffer. |
| 0x0066EF30 | 161 | DataTable__Serialize_0x0d_str | Serializes string data (packet type 0x0d) from a DataTable, formatting and assigning to output buffer. |
| 0x0066EFE0 | 208 | DataTable__Serialize_0x2d_str | Serializes a string field (0x2d opcode) from a DataTable row into formatted output buffer. |
| 0x0066F0B0 | 229 | DataTable__Serialize_0x12d_str | Serializes packet 0x12d string data by formatting and assigning to a String object with SSO handling. |
| 0x0066F1A0 | 229 | DataTable__Serialize_0x22d_str | Serializes packet 0x22d (string data) into a DataTable by formatting and assigning string content with bounds checking. |
| 0x0066F290 | 173 | DataTable__Serialize_0xc1 | Serializes packet 0xc1 data by formatting and assigning parameters to a DataTable string representation. |
| 0x0066F340 | 206 | DataTable__Serialize_0xdc1_str | Formats and assigns a string value (packet 0xdc1) to a DataTable object, managing SSO buffer lifecycle. |
| 0x0066F9A0 | 1086 | DataTable__Constructor | Initializes DataTable with vtable, Lua state, multiple hash maps/RB-trees for game data storage across various node sizes |
| 0x0066FDE0 | 435 | DataTable__MoveConstructor | Move-constructs a DataTable by copying headers, swapping two HashMaps, and initializing internal state with exception safety. |
| 0x0069D160 | 160 | CItemInfoMgr__MakeKeyFromPath | Converts a file path string to a normalized key by copying and storing it in a fixed-size container structure for item info lookup. |
| 0x0069D3E0 | 224 | CItemInfoMgr__Constructor | Initializes CItemInfoMgr with three red-black tree containers for item data storage and management. |
| 0x0069D800 | 348 | CItemInfoMgr__GetOrCreateInstance | Singleton getter for CItemInfoMgr that initializes instance with STL containers and loads Lua configuration data. |
| 0x0069D960 | 27 | CItemInfoMgr__DestroySingleton | Destroys the CItemInfoMgr singleton instance by calling its destructor and nullifying the global pointer. |
| 0x0069D980 | 106 | CItemInfoMgr__GetNthItem | Retrieves the Nth item from a binary search tree by in-order traversal, skipping deleted nodes marked with null flag at offset 0xd. |
| 0x0069DA00 | 92 | CItemInfoMgr__RegisterItemByName | Registers an item in CItemInfoMgr by name using red-black tree insertion with string key lookup. |
| 0x0069DA60 | 216 | CItemInfoMgr__InsertItemId | Inserts an item ID into CItemInfoMgr's red-black tree container if not already present or marked invalid. |
| 0x0069DB40 | 92 | CItemInfoMgr__RegisterItemByName2 | Wrapper that finds or inserts item name into red-black tree, manages stack canary and temporary string |
| 0x0069DBA0 | 165 | CItemInfoMgr__HasItemByName | Searches item database by name string; returns true if item exists, false if not found or name mismatch. |
| 0x0069DC50 | 64 | CItemInfoMgr__HasItemById | Checks if item ID exists in red-black tree, validates node bounds and confirms it's not the tree end iterator. |
| 0x0069DC90 | 165 | CItemInfoMgr__HasItemByName2 | Searches item info map by name and returns true if item name exists, using std::map find with string comparison. |
| 0x006A0AB0 | 221 | CItemTable__FindDataById_A | Searches CItemTable's red-black tree for item data by ID; returns pointer to item struct or default if not found. |
| 0x006A0B90 | 221 | CItemTable__FindDataById_B | Searches CItemTable's red-black tree for item data by ID, returns pointer to matching item or null. |
| 0x006A0C70 | 201 | CItemTable__FindDataById_C | Searches red-black tree for item data by ID; returns pointer to item entry or default if not found. |
| 0x006A0D40 | 211 | CItemTable__FindDataById_D | Searches item table using red-black tree lower_bound to find item data by ID, returns pointer to item or default sentinel. |
| 0x006A0E20 | 302 | CItemTable__FindDataById_E | Finds or inserts item data by ID in red-black tree; returns pointer to item data structure offset by 0x14 bytes. |
| 0x006A0F50 | 416 | CItemTable__FindDataById_F | Searches item table by ID using red-black tree lower_bound; inserts missing item if not found, returns item data offset. |
| 0x006A1100 | 449 | CItemTable__FindDataById_G | Searches CItemTable's red-black tree for item data by ID; returns pointer to item struct or creates new entry if not found. |
| 0x006A12D0 | 29 | CItemTable__MoveMemoryBackward | Moves memory block backward by offset amount; copies param_2 bytes from param_1 to higher address (param_3). |
| 0x006A24A0 | 321 | CItemTable__CopyItemDataFromSource | Copies item metadata and sorted vector data from source item table to destination, reallocating if needed. |
| 0x006A2790 | 67 | CItemTable__AssignStringRange | Copies item metadata fields and assigns a string range to a std::string member, likely for item name or description storage. |
| 0x006A2890 | 217 | CItemTable__CopyItemData | Copies item data from source struct (param_2) to destination struct (param_1), including name string and up to 6 bonus entries. |
| 0x006A2970 | 21 | CItemTable__FindDataById_A_global | Global wrapper that calls CItemTable::FindDataById with a static item table instance at address 0x01255128 |
| 0x006A2990 | 221 | CItemTable__GetItemSlotCountByIdString | Looks up item by ID string, counts matching slots in array, returns pointer to slot count result. |
| 0x006A2A70 | 75 | CItemTable__LookupByAtoiId | Looks up item data by numeric ID from string, returns offset to item properties (0xc or 0x20 based on SSO flag) |
| 0x006A2AC0 | 144 | CItemTable__FormatItemNameWithRarityGrade | Formats item name with rarity grade prefix (D/C/B/A) based on item rarity level at offset 0x88 |
| 0x006A2B50 | 124 | CItemTable__GetItemNameByIdString | Converts string ID to item ID, looks up item name in table, copies to buffer, returns name length. |
| 0x006A2BD0 | 21 | CItemTable__FindDataById_D_global | Global wrapper that calls CItemTable::FindDataById with a static global item table data pointer |
| 0x006A2BF0 | 236 | CItemTable__LookupByIdWithEpochInit | Looks up item by ID from CItemTable with thread-safe epoch initialization and red-black tree search. |
| 0x006A2CE0 | 4530 | CItemTable__BuildItemDisplayName | Constructs formatted item display name string with ID lookup, appending text suffix based on item properties and param_3 flag. |
| 0x006A3F20 | 216 | CItemTable__LookupByIdForStoreDisplay | Looks up item by ID in a red-black tree container, returns item data pointer or default sentinel if not found or invalid. |
| 0x006A4000 | 210 | CItemTable__FormatItemNameFromMsgById | Formats item name from message database based on item type (0-4), handling special cases for item IDs 0xa4a/0xa4b. |
| 0x006A40F0 | 116 | CItemTable__GetMsgStringAndCopy | Retrieves localized message string based on item type flag and copies to buffer, updating remaining capacity. |
| 0x006A4170 | 233 | CItemTable__FormatItemNameWithMsg | Formats item name with localized message string and color code, copies to buffer via strncpy_s |
| 0x006A42B0 | 87 | CItemTable__CopyMsgStringToBuffer | Copies localized message string (0x2f4) to buffer, returns length, optionally decrements remaining capacity. |
| 0x006A4310 | 409 | CItemTable__FormatItemCardSlotNames | Formats item card slot names into a buffer, detecting duplicates and appending localized suffix strings for set bonuses. |
| 0x006A44B0 | 324 | CItemTable__FormatItemCardSlotNames_b | Formats item card slot names by retrieving card data, detecting duplicates, and appending formatted strings to output buffer. |
| 0x006A4600 | 54 | CItemTable__FormatRefineString | Formats a refine string using an allocator, optionally adjusting buffer size based on formatting success. |
| 0x006A4640 | 1405 | CItemTable__ParseItemSlotData | Parses item slot data from buffer into STL vector by extracting field values at fixed offsets using string conversion. |
| 0x006A4BC0 | 75 | CItemTable__FindDataByStringId | Retrieves item data from CItemTable by string ID, returning either offset+8 or offset+0x1c based on flag at offset 0x5c |
| 0x006A4C40 | 91 | CItemTable__FormatItemIdName | Appends item quantity suffix "[%d]" to item name string if item data has non-zero quantity field. |
| 0x006A4CC0 | 124 | CItemTable__GetItemNameById | Retrieves item name from item table by ID, copies to buffer, returns name length or 0 on error. |
| 0x006A4D40 | 213 | CItemTable__ValidateItemIdString | Validates item ID string by parsing it, checking ranges, equip type, and searching tree nodes for valid item data. |
| 0x006A4E20 | 3895 | CItemTable__LoadAllItemTables | Initializes and loads all item table data from text files (item.txt, eventItem.txt) into game memory structures. |
| 0x006A5DB0 | 58 | CItemTable__FindTreeNodeC | Searches red-black tree for item ID; returns true if found, false if node equals end iterator |
| 0x006A5DF0 | 58 | CItemTable__FindItemInTree | Searches red-black tree for item ID; returns true if item exists, false if not found or deleted |
| 0x006A5E80 | 74 | CItemTable__ParseSlotIdString | Validates item slot IDs by checking if parsed integer matches equipment slot constants (1000, 994-997). |
| 0x006A5EE0 | 80 | CItemTable__ValidateItemName | Validates item name string by checking each character against a lookup table (DAT_011e7798) for allowed characters. |
| 0x006A5F30 | 53 | CItemTable__AtoiHelper | Validates item ID is within valid RO ranges (2330-4018 or 10000-10999) using SSO string optimization. |
| 0x006A5FF0 | 73 | CItemTable__ClearItemString | Zeros out 10 undefined4 fields and clears a std_string at DAT_00fce968, likely resetting item UI display data. |
| 0x006A60C0 | 398 | CItemTable__BuildItemNameList | Builds sorted item name list by iterating red-black tree of items, extracting names from valid entries. |
| 0x006A6570 | 70 | CItemTable__ItoaAndAssignString | Converts integer to decimal string and assigns result to std::string member via range assignment. |
| 0x006A6620 | 1116 | CItemTable__SerializeToBuffer | Deserializes item table data from binary buffer using tag-based format (0x119-0x121 tags), copying fields to output struct. |
| 0x006A6E40 | 139 | CItemTable__VectorReallocate | Reallocates vector storage with growth strategy; doesn't perform sorted insertion despite misleading name. |
| 0x006AF700 | 92 | Variant__alloc_elements_x32 | Allocates aligned memory for array of 32-byte variant elements with overflow checks and alignment to 32-byte boundary. |
| 0x006AF760 | 34 | Variant__copy_and_detach | Copies variant data to new child node and transfers ownership, effectively moving contents while clearing source. |
| 0x006AF790 | 74 | Variant__to_bool | Converts a Variant value to boolean based on type tag; handles null, int, uint, double, string, bool, array/map types. |
| 0x006AF800 | 3 | Variant__get_raw_ptr | Dereferences and returns the raw pointer stored in a Variant object's first member field. |
| 0x006AF810 | 147 | Variant__to_double | Converts a Variant type to double/float10, handling int, fractional, double, and string types with exception on invalid conversions. |
| 0x006AF8D0 | 133 | Variant__to_int | Converts a Variant type to signed integer with type checking and range validation across 7 type cases. |
| 0x006AF980 | 269 | Variant__to_string | Converts a Variant type to string representation; handles null, boolean, string, and throws exception for non-convertible types. |
| 0x006AFAB0 | 131 | Variant__to_uint | Converts a variant type to unsigned integer, handling type checking and range validation with exception throwing for invalid conversions. |
| 0x006AFB60 | 57 | Variant__get_iterator_begin | Returns iterator begin for Variant if type is array/object, otherwise returns invalid iterator with end flag. |
| 0x006AFBA0 | 57 | Variant__get_iterator_end | Returns end iterator for Variant container types (array/object); sets validity flag in output iterator struct. |
| 0x006AFC40 | 70 | Variant__tree_distance | Calculates distance between two tree iterators by counting increments from source to target iterator. |
| 0x006AFC90 | 14 | Variant__copy_value | Copies a 4-byte value from one memory location to another (shallow copy of undefined4 pointer contents). |
| 0x006AFCA0 | 55 | Variant__dealloc_array_x4 | Deallocates a variant array with 4-byte elements, validating heap metadata and size bounds before deletion. |
| 0x006AFCE0 | 51 | Variant__dealloc_array_x32 | Deallocates a Variant array with size validation; handles oversized allocations via indirection pointer and validates heap integrity. |
| 0x006AFD30 | 6 | Variant__get_data_offset_18 | Returns pointer offset 0x18 bytes from a Variant structure base address for data field access. |
| 0x006AFD90 | 29 | Variant__is_empty_container | Checks if a Variant container is empty by validating type byte and confirming size is zero |
| 0x006AFDB0 | 55 | Variant__get_iterator_value | Extracts value from Variant iterator if type is array/object (0x06/0x07), sets error flag in output param |
| 0x006AFDF0 | 55 | Variant__get_iterator_key | Extracts iterator key from Variant; returns key if type is 6/7 (map/array), else sets error flag. |
| 0x006AFE30 | 641 | Variant__tree_erase_by_key | Erases a node from a binary search tree (variant container) by key, maintaining tree balance through rebalancing operations. |
| 0x006B00E0 | 138 | Variant__find_by_string_key | Finds a Variant child by string key, returns the child or throws if not found; handles SSO string optimization. |
| 0x006B0170 | 102 | Variant__find_or_default_by_int_key | Finds child variant by index, returning default param_3 if lookup fails; validates result with throw check. |
| 0x006B01E0 | 102 | Variant__find_by_cstr_key | Finds a Variant child node by C-string key, returning the child or throwing if not found. |
| 0x006B0250 | 183 | Variant__get_string_at_index | Retrieves and assigns a string from a variant's indexed string array to output parameter via std::string assignment. |
| 0x006B0330 | 283 | Variant__get_keys_vector | Extracts dictionary keys into a vector; returns empty vector if variant is empty, otherwise populates with first key string. |
| 0x006B0550 | 31 | Variant__has_comment | Checks if a variant element at given index has an associated comment by validating pointer chain and non-null comment data. |
| 0x006B0590 | 166 | Variant__get_string_refcount | Retrieves reference count of a string variant; validates string factory and returns count or 0xFFFFFFFF if invalid. |
| 0x006B0650 | 17 | Variant__is_null_or_array | Checks if Variant type at offset +8 is null (0x00) or array (0x06), returns 1 if true, 0 otherwise |
| 0x006B0680 | 355 | Variant__is_convertible_to | Checks if a Variant's current type can be converted to a target type (null/int/uint/double/string/bool). |
| 0x006B0820 | 30 | Variant__equals | Compares two Variant objects for equality by checking type indicator and value equality. |
| 0x006B0870 | 32 | Variant__has_string_member | Checks if a Variant contains a string member by finding child and comparing against null sentinel DAT_012551c0 |
| 0x006B0890 | 23 | Variant__find_child_by_key_found | Returns whether Variant__find_child_by_key found a child (non-null result), checking against sentinel DAT_012551c0 |
| 0x006B08B0 | 8 | Variant__is_null | Checks if a Variant object's type field (offset +8) is null/zero, indicating an uninitialized or empty variant. |
| 0x006B08E0 | 17 | Variant__is_null_or_map | Checks if Variant type at offset +8 is null (0x00) or map (0x07), returns 1 if true |
| 0x006B0930 | 18 | Variant__index_in_range | Validates whether the given index is within bounds of the Variant collection by comparing against its current size. |
| 0x006B0950 | 285 | Variant__get_string_value | Converts a Variant object's internal string representation into a standardized output format with type metadata and reference counting. |
| 0x006B0A70 | 76 | Variant__resolve_path_elements | Iterates through path element queue, recursively resolving variant nodes by type (child creation or key insertion). |
| 0x006B0AC0 | 17 | Variant__invoke_method | Invokes virtual method at offset 0xc in Variant object with param_2 and 0xffffffff as arguments |
| 0x006B0F40 | 9 | Variant__call_vtable_method_10 | Invokes virtual method at offset 0x10 in vtable; likely dispatcher for variant type conversion or property access. |
| 0x006B0F70 | 96 | Variant__find_string_member | Finds a string member in a Variant object by looking up a C-string key, handling small-string optimization. |
| 0x006B0FD0 | 310 | Variant__lookup_cstr_key | Looks up a child variant node by C-string key, erasing and destroying it if found and not root. |
| 0x006B1110 | 433 | Variant__resize | Resizes a Variant container by creating/destroying child nodes to match requested size param_2. |
| 0x006B12D0 | 228 | Variant__resolve_path | Traverses a Variant tree structure following a path, resolving child nodes by index or key lookup with validation. |
| 0x006B13C0 | 257 | Variant__resolve_path_ref | Resolves variant path references by iterating through node hierarchy and locating child nodes based on type-specific keys or indices. |
| 0x006B14D0 | 566 | Variant__insert_or_find_key | Inserts or finds a key node in a variant tree structure, handling string key comparisons and child node traversal. |
| 0x006B1720 | 94 | Variant__set_comment | Sets a Variant's comment string after validating it starts with '/', replacing any existing comment via string factory. |
| 0x006B1780 | 152 | Variant__set_comment_from_string | Sets a variant's comment field from a string parameter, allocating internal storage if needed and calling Variant__set_comment helper. |
| 0x006B1820 | 142 | Variant__initialize_comment_array | Initializes a vector of 3 Variant comment objects, then sets comment from C string parameter |
| 0x006B18B0 | 67 | Variant__size | Returns element count for Variant: array type returns tree node count+1, map type returns member count, others return 0 |
| 0x006B1920 | 36 | Variant__swap_values | Swaps two 8-byte values (two DWORDs each), likely for variant or union type exchange in game data structures. |
| 0x006B1950 | 81 | Variant__swap | Exchanges data members of two Variant objects, including type tag and a bitfield flag at offset +8. |
| 0x006B19B0 | 182 | JSONWriter__ctor | Constructor for JSONWriter class that initializes styled stream writer and sets up virtual method table for JSON serialization. |
| 0x006B1A70 | 5 | Variant__get_type | Retrieves the type field from a Variant structure at offset +8, returns as signed integer. |
| 0x006B1A80 | 143 | Variant__get_string_factory | Returns singleton pointer to thread-safe lazy-initialized Variant string factory with refcount/memory management methods. |
| 0x006B1DD0 | 114 | JSONWriter__base_ctor | Initializes JSONWriter object with vtable pointers, clears state fields, and sets up exception handling frame. |
| 0x006B1E50 | 167 | JSONStyledWriter__ctor_simple | Initializes a JSONStyledWriter object with default values for indentation, capacity, and internal string state. |
| 0x006B1F00 | 178 | JSONStyledStreamWriter__ctor | Initializes JSONStyledStreamWriter object with vftable pointers, zero-initializes member fields, and sets formatting parameters (indent 0x4a, precision 3). |
| 0x006B1FC0 | 91 | JSONWriter__dtor_base | Destructor for JSONWriter class; cleans up internal string member and virtual table pointers with stack guard. |
| 0x006B2020 | 98 | JSONStyledStreamWriter__dtor | Destructor for JSONStyledStreamWriter that cleans up internal std::string and std::vector members with stack guard verification. |
| 0x006B2090 | 7 | JSONWriter__set_base_vtable | Initializes JSONWriter vtable pointer to base destructor, setting up virtual method dispatch for JSON serialization object. |
| 0x006B20A0 | 519 | JSONStyledStreamWriter__write | Serializes styled JSON output by writing comments and values to output stream, managing string buffers. |
| 0x006B22D0 | 109 | JSONWriter__scalar_dtor | Destructor for JSONWriter scalar object; destroys string member and optionally deallocates memory. |
| 0x006B2340 | 33 | JSONWriter__base_scalar_dtor | Destructor for JSONWriter base scalar type; sets vftable, conditionally frees memory if delete flag set. |
| 0x006B2380 | 58 | Variant__has_any_comment | Checks if any of three comment variants (0, 1, 2) exist; returns true if at least one has a comment. |
| 0x006B23C0 | 58 | Variant__has_any_comment_2 | Checks if any of the first 3 variant slots contain comments by testing indices 0, 1, and 2. |
| 0x006B2420 | 25 | JSONStyledStreamWriter__write_indent_str | Appends indentation string to JSON output stream, handling small string optimization for std::string |
| 0x006B2440 | 125 | JSONStyledStreamWriter__write_indent_padded | Appends space-padded indentation string to JSON output stream writer's internal buffer. |
| 0x006B24C0 | 293 | JSONStyledWriter__check_multiline | Determines if a JSON object/array should use multiline formatting based on element count and estimated serialized size. |
| 0x006B25F0 | 296 | JSONStyledStreamWriter__check_multiline | Determines if JSON object/array should use multiline formatting by calculating serialized size and checking if it exceeds max width threshold. |
| 0x006B2720 | 557 | JSON__normalize_newlines | Normalizes newlines in a string by converting \r and \r\n sequences to \n, managing dynamic string buffer allocation. |
| 0x006B2A50 | 794 | std_string__push_back_normalized_newline | Normalizes CRLF/CR sequences to LF while appending to std::string buffer with dynamic allocation. |
| 0x006B2D80 | 82 | JSONStyledWriter__push_value | Writes a JSON value to output stream or appends to internal string buffer, handling styled formatting state. |
| 0x006B2DE0 | 81 | JSONStyledStreamWriter__push_value | Appends a value to JSON output stream, handling string buffer management and vector reallocation for styled formatting. |
| 0x006B2E80 | 44 | JSONStyledWriter__decrease_indent | Decreases indentation level in JSON output by subtracting indent offset from current position and null-terminating |
| 0x006B2EB0 | 44 | JSONStyledStreamWriter__unindent | Decreases indentation level in JSON output stream by removing trailing whitespace characters from buffer. |
| 0x006B36B0 | 130 | JSON__UIntToString | Converts unsigned integer to string and assigns result to a std::string object parameter. |
| 0x006B38D0 | 114 | JSON__BoolToString | Converts boolean value to JSON string representation ("true" or "false") and assigns to string object |
| 0x006B3970 | 63 | JSONStyledWriter__write_empty_str | Assigns an empty string to a global std::string object, likely used for JSON output formatting in the styled writer. |
| 0x006B3A00 | 32 | JSONStyledWriter__set_ostream | Sets output stream pointer for JSONStyledWriter and initializes internal string buffer to empty state. |
| 0x006B3A60 | 64 | JSONStyledStreamWriter__write_empty_str | Clears/resets a JSON string buffer to empty state using std::string assignment with range [0,0). |
| 0x006B4480 | 501 | JSONStyledWriter__write_comments | Writes JSON comments (variant types 1 and 2) to output stream with newline normalization |
| 0x006B4680 | 486 | JSONStyledStreamWriter__write_all_comments | Writes JSON comment nodes to output stream, processing both pre and post comments with normalized newlines. |
| 0x006B4870 | 196 | JSONStyledWriter__write_before_comment | Writes JSON comment text to output stream after normalizing newlines if a comment variant exists. |
| 0x006B4940 | 189 | JSONStyledStreamWriter__write_before_comment | Writes a normalized newline and comment string to output buffer if variant contains comment data. |
| 0x006B4A30 | 68 | JSONStyledStreamWriter__write_newline_indent | Writes newline and indentation to JSON output stream, skipping if last char is space or newline |
| 0x006B4A80 | 656 | JSONFastWriter__write_value | Recursively serializes a Variant value to JSON string, handling null/int/uint/double/string/bool/array/map types. |
| 0x006B4D30 | 1092 | JSONStyledWriter__write_value | Serializes a Variant value to JSON format, handling int/uint/double/string/bool/array/object types with proper formatting. |
| 0x006B55D0 | 78 | JSONStyledWriter__write_newline_with_string | Writes a newline character to output stream, then writes two strings with proper SSO buffer handling for JSON formatting. |
| 0x006B5620 | 103 | JSONStyledStreamWriter__write_newline_with_string | Appends indentation string and parameter string to output, with newline handling based on last character in buffer. |
| 0x00A7F130 | 185 | CItemInfoMgr__FormatItemDescription | Formats a Lua item description string using vsprintf into a 2KB buffer, then assigns result to std::string output parameter. |
| 0x00A7F220 | 559 | CItemTable__PopulateSearchResults | Populates item search results by iterating RB-tree, copying item names/descriptions and metadata vectors into result structure. |
| 0x00A7FB70 | 318 | CItemInfoMgr__lua_ParseItemField_ValidateArgs | Lua binding that validates item field parsing requires a number (1st arg) and string (2nd arg), returns error messages |
| 0x00A7FFA0 | 318 | CItemInfoMgr__lua_ParseItemField_B | Lua binding that validates item field parsing arguments (expects number then string), returns boolean + error message |
| 0x00A80150 | 105 | CItemInfoMgr__DestroyStringElements | Iterates through item info structures (0x3c bytes each) and destructs two std::string objects per element. |
| 0x00A803C0 | 132 | CItemInfoMgr__RecursiveDestroyTreeNode | Recursively destroys tree nodes in item info manager, deallocating memory for leaf nodes and their string data. |
| 0x00A805A0 | 137 | CItemInfoMgr__MoveAndDestroyElements | Moves item info elements from source to destination range, then destroys remaining string elements in destination. |
| 0x00A80630 | 117 | CItemInfoMgr__CopyStringRange | Copies item info string fields by duplicating STL strings at offsets 1 and 9 within item data structures. |
| 0x00A81A40 | 22 | CItemInfoMgr__DestroyStringElements_Wrapper | Wrapper that reorders parameters and calls CItemInfoMgr::DestroyStringElements to clean up string data |
| 0x00A81C70 | 149 | CItemInfoMgr__ValidateAndFreeVector | Validates vector capacity and deallocates memory for CItemInfoMgr's vector, destroying string elements first. |
| 0x00A81D40 | 100 | CItemInfoMgr__AllocateVector | Allocates aligned memory for item info vector storage, multiplying count by 0x3c (60 bytes per item) with 32-byte alignment. |
| 0x00A9E180 | 15 | CMsgStringTable__GetStringByIndex | Retrieves a localized message string from the MSI (Multi-language String Index) table by index for UI dialogs. |
| 0x00A9E200 | 97 | CMsgStringTable__FindIndexByString | Searches MSI string table for matching string, returns index (0-4354) or 4355 if not found. |
| 0x00A9E500 | 75 | CMsgStringTable__ClearHashMapInstance | Clears CMsgStringTable's instance-based hash map by freeing nodes and resetting bucket pointers to head. |
| 0x00A9E550 | 90 | CMsgStringTable__ClearHashMap | Clears and resets the global MSI (Message String Index) unordered map, freeing all nodes and reinitializing bucket pointers. |
| 0x00A9E5B0 | 133 | CMsgStringTable__FindIndexByStdString | Searches CMsgStringTable for a string index by comparing input std::string against table entries, returns 0x1103 if not found. |
| 0x00A9E640 | 117 | CMsgStringTable__FindIndexByCString | Searches MSI (Message String Index) table for a string and returns its index, or 0x1103 if not found. |
| 0x00A9E6C0 | 114 | CMsgStringTable__ObfuscateString | De-obfuscates msgstringtable strings in-place using conditional character transforms; kRO-only anti-extraction. |
| 0x00A9E740 | 181 | CMsgStringTable__InsertHashMapEntry | CSV callback that looks up string names in MSI table and inserts matching entries into unordered map by MSI index. |
| 0x00A9E800 | 1106 | CMsgStringTable__ProcessCSVRows | Initializes a string vector from CSV row data, copying and allocating memory for msgstringtable entries with capacity management. |
| 0x00A9EC70 | 115 | CMsgStringTable__LoadFromCSV | Initializes message string table by clearing the global unordered map and parsing msgstringtable.csv with row/insert callbacks. |
| 0x00A9EFE0 | 66 | CMsgStringTable__LookupString | Looks up message string by ID from hash map, returns pointer to string data or empty string if not found. |
| 0x00A9F030 | 147 | CMsgStringTable__InitStringFromCString | Initializes a std::string member by computing length of C-string and assigning the character range. |
| 0x00C3A960 | 135 | EntryQueueMap__ctor | Constructs EntryQueueMap (std::map<uint, EntryQueueEntry*>) with red-black tree sentinel node initialization |
| 0x00C3A9F0 | 65 | EntryQueueMap__dtor_inner | Destructor that destroys and deallocates a std::map container holding EntryQueue entries with stack canary protection. |
| 0x00C3AA40 | 102 | EntryQueueMap__dtor | Destructor for EntryQueueMap container; clears all 0x738-byte entry objects and destroys underlying std::map structure. |
| 0x00C3AB10 | 120 | EntryQueueMap__scalar_dtor | Destructor for EntryQueueMap that clears entries, destroys internal std::map, and optionally deallocates the object. |
| 0x00C3ABA0 | 72 | EntryQueueMap__find_entry | Finds and returns entry data pointer from EntryQueueMap by uint key, returns 0 if not found. |
| 0x00C3ABF0 | 3 | AlwaysTrue | Trivial function that always returns true; likely used as a default predicate or filter callback in queue/map operations. |
| 0x00C3AC00 | 143 | EntryQueueTable__load_bex | Loads EntryQueue data from .bex binary file format using OLE compound file reader, clears existing entries, returns load status. |
| 0x00C3ACB0 | 144 | EntryQueueTable__load_xls | Loads EntryQueue table data from XLS file via OLE compound file API, clears existing entries, and parses the spreadsheet. |
| 0x00C3AD60 | 1966 | EntryQueueTable__parse_xls | Parses EntryQueue.xls spreadsheet file, allocating 0x738-byte structures per row starting at row 3, extracting ID and name fields with duplicate key validation. |
| 0x00C3B530 | 852 | EntryQueueTable__load_bex_file | Loads EntryQueue.bex binary file into RB-tree map, reading entry count then 0x738-byte entries with ID, names, and flags. |
| 0x00C3B890 | 112 | EntryQueueMap__clear_entries | Traverses RB-tree of EntryQueue nodes, frees each 0x738-byte entry, then clears the map structure. |
| 0x00C3B910 | 96 | EntryQueueMap__try_insert | Attempts to insert a key-value pair into EntryQueueMap; returns 1 on success, 0 if key already exists. |
| 0x00C3B990 | 1634 | EntryQueueTable__save_xls | Exports EntryQueue table data to XLS format via OLE compound file, copying cells and converting variant types. |
| 0x00C3C0D0 | 27 | EntryQueueTable__get_entry | Retrieves an EntryQueue entry by ID from global instance, returning null if uninitialized. |
| 0x00C3C0F0 | 203 | EntryQueueTable__init | Initializes global EntryQueueMap singleton, destroys previous instance, loads queue data from .bex or .xls file format. |
| 0x00C3C1E0 | 30 | EntryQueueTable__insert_entry | Wrapper that validates EntryQueue initialization and delegates entry insertion to EntryQueueMap__try_insert. |
No function here matches that. Search all 43,836 functions instead.