mirror of
https://github.com/a2x/cs2-dumper.git
synced 2025-10-07 22:50:03 +08:00
Game update (14043)
This commit is contained in:
@@ -72,7 +72,7 @@ macro_rules! pattern_map {
|
||||
|
||||
pattern_map! {
|
||||
client => {
|
||||
"dwCSGOInput" => pattern!("488d0d${'} e8${} 488d05${} 48c705[8] 488905${} 488d0d${} 488d05") => Some(|view, map, rva| {
|
||||
"dwCSGOInput" => pattern!("488905${'} 0f57c0 0f1105") => Some(|view, map, rva| {
|
||||
let mut save = [0; 2];
|
||||
|
||||
if view.scanner().finds_code(pattern!("f2410f108430u4"), &mut save) {
|
||||
|
@@ -84,12 +84,12 @@ fn read_class_binding(
|
||||
let binding = process.read_ptr(binding_ptr).data_part()?;
|
||||
|
||||
let module_name = process
|
||||
.read_utf8(binding.module_name.address(), 4096)
|
||||
.read_utf8_lossy(binding.module_name.address(), 128)
|
||||
.data_part()
|
||||
.map(|s| format!("{}.dll", s))?;
|
||||
|
||||
let name = process
|
||||
.read_utf8(binding.name.address(), 4096)
|
||||
.read_utf8_lossy(binding.name.address(), 4096)
|
||||
.data_part()?;
|
||||
|
||||
if name.is_empty() {
|
||||
@@ -101,12 +101,12 @@ fn read_class_binding(
|
||||
let parent_class = process.read_ptr(base_class.prev).data_part().ok()?;
|
||||
|
||||
let module_name = process
|
||||
.read_utf8(parent_class.module_name.address(), 4096)
|
||||
.read_utf8_lossy(parent_class.module_name.address(), 128)
|
||||
.data_part()
|
||||
.ok()?;
|
||||
|
||||
let name = process
|
||||
.read_utf8(parent_class.name.address(), 4096)
|
||||
.read_utf8_lossy(parent_class.name.address(), 4096)
|
||||
.data_part()
|
||||
.ok()?;
|
||||
|
||||
@@ -156,12 +156,15 @@ fn read_class_binding_fields(
|
||||
return Ok(acc);
|
||||
}
|
||||
|
||||
let name = process.read_utf8(field.name.address(), 4096).data_part()?;
|
||||
let name = process
|
||||
.read_utf8_lossy(field.name.address(), 4096)
|
||||
.data_part()?;
|
||||
|
||||
let schema_type = process.read_ptr(field.schema_type).data_part()?;
|
||||
|
||||
// TODO: Parse this properly.
|
||||
let type_name = process
|
||||
.read_utf8(schema_type.name.address(), 4096)
|
||||
.read_utf8_lossy(schema_type.name.address(), 128)
|
||||
.data_part()?
|
||||
.replace(" ", "");
|
||||
|
||||
@@ -193,7 +196,7 @@ fn read_class_binding_metadata(
|
||||
}
|
||||
|
||||
let name = process
|
||||
.read_utf8(metadata.name.address(), 4096)
|
||||
.read_utf8_lossy(metadata.name.address(), 4096)
|
||||
.data_part()?;
|
||||
|
||||
let network_value = process.read_ptr(metadata.network_value).data_part()?;
|
||||
@@ -201,7 +204,7 @@ fn read_class_binding_metadata(
|
||||
let metadata = match name.as_str() {
|
||||
"MNetworkChangeCallback" => unsafe {
|
||||
let name = process
|
||||
.read_utf8(network_value.value.name_ptr.address(), 4096)
|
||||
.read_utf8_lossy(network_value.value.name_ptr.address(), 4096)
|
||||
.data_part()?;
|
||||
|
||||
ClassMetadata::NetworkChangeCallback { name }
|
||||
@@ -210,11 +213,11 @@ fn read_class_binding_metadata(
|
||||
let var_value = network_value.value.var_value;
|
||||
|
||||
let name = process
|
||||
.read_utf8(var_value.name.address(), 4096)
|
||||
.read_utf8_lossy(var_value.name.address(), 4096)
|
||||
.data_part()?;
|
||||
|
||||
let type_name = process
|
||||
.read_utf8(var_value.type_name.address(), 4096)
|
||||
.read_utf8_lossy(var_value.type_name.address(), 128)
|
||||
.data_part()?
|
||||
.replace(" ", "");
|
||||
|
||||
@@ -236,7 +239,7 @@ fn read_enum_binding(
|
||||
let binding = process.read_ptr(binding_ptr).data_part()?;
|
||||
|
||||
let name = process
|
||||
.read_utf8(binding.name.address(), 4096)
|
||||
.read_utf8_lossy(binding.name.address(), 4096)
|
||||
.data_part()?;
|
||||
|
||||
if name.is_empty() {
|
||||
@@ -275,7 +278,7 @@ fn read_enum_binding_members(
|
||||
.data_part()?;
|
||||
|
||||
let name = process
|
||||
.read_utf8(enumerator.name.address(), 4096)
|
||||
.read_utf8_lossy(enumerator.name.address(), 4096)
|
||||
.data_part()?;
|
||||
|
||||
acc.push(EnumMember {
|
||||
|
Reference in New Issue
Block a user