Delphi反汇编内部字符串处理函数/过程不完全列表
Delphi反汇编内部字符串处理函数/过程不完全列表
名称
参数
返回值
作用
等价形式 / 备注
_PStrCat
EAX :目标字符串
EDX :源字符串
EAX
连接两个 Pascal 字符串
s:=copy(s+s1,1,255)
_PStrNCat
EAX :目标字符串
EDX :源字符串
CL :结果字符串最大长度
EAX
连接两个 Pascal 字符串
s:=copy(s+s1,1,n)
_PStrCpy
EAX :目标字符串
EDX :源字符串
EAX
Pascal 字符串复制
s:=s1
_PStrNCpy
EAX :目标字符串
EDX :源字符串
CL :结果字符串最大长度
EAX
Pascal 字符串复制
s:=copy(s1,1,n)
_PStrCmp
EAX :左字符串
EDX :右字符串
标志位 Z
Pascal 字符串比较
if s=s1
_AStrCmp
EAX :左字符串
EDX :右字符串
ECX :要比较的字符个数
标志位 Z
Ansi 字符串比较
if s=s1
_LStrClr(var S: AnsiString);
EAX :字符串
清空字符串
s:=''
_LStrArrayClr{var str: AnsiString; cnt: longint};
EAX :字符串数组指针
EDX :数组长度
清空字符串数组
_LstrAsg(var dest: AnsiString; source: AnsiString)
EAX :目标字符串
EDX :源字符串
复制 Ansi 字符串
_LstrLAsg(var dest: AnsiString; source: AnsiString)
复制 Ansi 字符串。但是和 _LstrAsg 的区别不详
_NewAnsiString(length: Longint)
EAX :长度
EAX (指针)
分配指定长度的 AnsiString
_LStrFromPCharLen(var Dest: AnsiString; Source: PAnsiChar; Length: Integer)
EAX :目标字符串
EDX :源字符串
ECX :要复制的长度
分配并从 PChar 复制指定长度的 AnsiString
_LStrFromPWCharLen(var Dest: AnsiString; Source: PWideChar; Length: Integer)
EAX :目标字符串
EDX :源字符串
ECX :要复制的长度
分配并从 PWideChar 复制指定长度的 AnsiString
_LStrFromChar(var Dest: AnsiString; Source: AnsiChar)
EAX :目标字符串
EDX :源字符串
单字符的分配和复制
_LStrFromWChar(var Dest: AnsiString; Source: WideChar)
EAX :目标字符串
EDX :源字符串
单字符的分配和复制
_LStrFromPChar(var Dest: AnsiString; Source: PAnsiChar)
Pchar 到 AnsiStr 的转换
_LStrFromPWChar(var Dest: AnsiString; Source: PWideChar)
PWideChar 到 AnsiStr 的转换
_LStrToString(var Dest: ShortString; const Source: AnsiString; MaxLen: Integer)
EAX :目标字符串
EDX :源字符串
ECX :要复制的长度
AnsiString 到 Pascal 字符串的转换
_LstrLen(str: AnsiString): Longint
EAX :目标字符串
EAX
AnsiStr 的长度
_LstrCat(var dest: AnsiString; source: AnsiString)
EAX :目标字符串
EDX :源字符串
Ansi 字符串的连接
dest+=source
_LStrCat3{var dest:AnsiString; source1: AnsiString; source2: AnsiString}
EAX :目标字符串
EDX :源字符串 1
ECX :源字符串 2
Ansi 字符串的连接
dest+=source
_LstrCatN(var dest:AnsiString; argCnt: Integer; ...)
EAX :目标字符串
EDX :源字符串的个数 +2
[ESP+4*i] :第 i 个源字符串的指针
Ansi 字符串的连接
这里的入口参数比较特别
_LStrCmp
EAX :左字符串
EDX :右字符串
标志位 Z
Ansi 字符串比较
if s=s1
_LStrAddRef
EAX :目标字符串
增加 Ansi 字符串的引用计数
这个可以不用管
_LStrToPChar
EAX
EAX
类型转换
_LstrCopy(const s : AnsiString; index, count : Integer): AnsiString
EAX :目标字符串
EDX :起始位置
ECX :要复制的长度
[ESP+4]
复制指定长度的 Ansi 子串
_LStrDelete
EAX :目标字符串
EDX :起始位置
ECX :要删除的长度
同 Delete
_LstrInsert(const source : AnsiString; var s : AnsiString; index : Integer)
EAX :要插入的字符串
EDX :目标字符串
ECX :要插入的位置
将 source 插入到 s 的 index 位置
结果是 s 加长
_LStrPos
EAX :子串
EDX :目标字符串
EAX
同 POS
_LStrSetLength
EAX :目标字符串
EDX :新长度
Delphi反汇编内部字符串处理函数/过程不完全列表的更多相关文章
- Delphi反汇编内部字符串处理函数不完全列表
Delphi反汇编内部字符串处理函数/过程不完全列表 名称 参数 返回值 作用 等价形式 / 备注 _PStrCat EAX :目标字符串 EDX :源字符串 EAX 连接两个 Pascal 字符串 ...
- Delphi中常用字符串处理函数
.copy(str,pos,num) 从str字符串的pos处开始,截取num个字符的串返回. 假设str为,)=,)='def' .concat(str1,str2{,strn}) 把各自变量连接起 ...
- delphi简单单向字符串加密函数
delphi用久了有的时候得给密码加密一下,简单点就行了,这个函数还是不错的. const XorKey:array[0..7] of Byte=($B2,$09,$AA,$55,$93,$6D,$8 ...
- delphi字符串操作函数一览
首部 function SameText(const S1, S2: string): Boolean; $[SysUtils.pas 功能 返回两个字符串是否相等 说明 不区分大小写 参考 < ...
- Delphi 自带的字符串分割函数split
下面介绍Delphi自带的字符串分割函数,根据你的需要来使用. 1.ExtractStrings function ExtractStrings(Separators, WhiteSpace: TSy ...
- delphi字符串分隔函数用法实例
这篇文章主要介绍了delphi字符串分隔函数用法,通过自定义函数SeparateTerms2实现将字符串分割后存入字符串列表的功能,具有一定的实用价值,需要的朋友可以参考下 本文实例讲述了delphi ...
- NotePad++ delphi/Pascal函数过程列表插件
从cnpack上爬下来的 函数过程列表 点击下载
- BCB/Delphi中常用的VCL函数说明(字符串函数)
本文档是ccrun(老妖)根据网上资料整理而成. --------------------内存分配--------------------函数名称:AllocMem函数说明:在队中分配指定字节的内存块 ...
- Delphi 常用数据类型 字符串类型 数据类型等等
字符串类型 Delphi有三种类型的字符: ●AnsiChar这是标准的1字节的ANSI字符,程序员都对它比较熟悉. ●WideChar这是2字节的Unicode字符. ●Char在目前Delphi早 ...
随机推荐
- Codeforces Round #Pi (Div. 2) E. President and Roads 最短路+桥
题目链接: http://codeforces.com/contest/567/problem/E 题意: 给你一个带重边的图,求三类边: 在最短路构成的DAG图中,哪些边是必须经过的: 其他的(包括 ...
- PHP之preg_replace()与ereg_replace()正则匹配比较讲解
<?php //preg_replace()和ereg_replace()函数的使用的比较 // -------preg_replace()-------------------------- ...
- 趣味Python入门(一):初识Python
[编者按]本文作者是 Abhishek Jaiswal ,擅长 .NET.C#.Python 等多种语言的技术控.本文中,作者通过活泼有趣的口吻向大家介绍了 Python 语言的基础知识,后期多学习历 ...
- POJ 2184 Cow Exhibition (01背包的变形)
本文转载,出处:http://www.cnblogs.com/Findxiaoxun/articles/3398075.html 很巧妙的01背包升级.看完题目以后很明显有背包的感觉,然后就往背包上靠 ...
- POJ 1988 Cube Stacking(带权并查集)
哈哈,一次AC. 题意:给你 1-n 编号的立方体,然后移动包含指定编号的立方体的堆移到另一个堆上边, 询问指定的编号立方体下面有多少个立方体. 思路:由于并查集是存储的是它的父亲,那么只能从父亲那里 ...
- C# 知识笔记
HttpContext.Request.Form.ToString() 获取Form表单中的内容 /// <summary> /// 获取 GET 提交方式值 /// </summa ...
- Oracle导出空表(从来都没有用过的表)
Oracle11g默认对空表不分配segment,故使用exp导出Oracle11g数据库时,空表不会导出! .设置deferred_segment_creation参数为FALSE后,无论是空表还是 ...
- 关于inline-block在IE8下无效的解决方法
<style> .divClass{ width:500px; border:1px solid #ccc; } /*IE8下可以不用加(*zoom:1;*display:inline;需 ...
- for each
public class ArrayForeach{ public static void main(String []args){ int [][]a={{1,2,3},{4,5,6},{7,8,9 ...
- [iOS]开发者证书和描述文件的作用
先说下证书吧. 然后是描述文件