diff options
| author | Vladislav HrĨka <41523109+nofiv@users.noreply.github.com> | 2019-02-12 16:11:10 +0100 |
|---|---|---|
| committer | Camille Mougey <commial@gmail.com> | 2019-02-12 16:11:10 +0100 |
| commit | 96fb382668783075568962c13495368e31ba9514 (patch) | |
| tree | 6730d43fc6e8f319bb966bd3491001e0b1a350cf | |
| parent | 1f884d4e08eef12207b66ab1b3baebac016afe68 (diff) | |
| download | miasm-96fb382668783075568962c13495368e31ba9514.tar.gz miasm-96fb382668783075568962c13495368e31ba9514.zip | |
lstrcat fix (#968)
my_lstrcat couldn't process unicode strings before
Diffstat (limited to '')
| -rw-r--r-- | miasm2/os_dep/win_api_x86_32.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/miasm2/os_dep/win_api_x86_32.py b/miasm2/os_dep/win_api_x86_32.py index 5d6e4765..df679074 100644 --- a/miasm2/os_dep/win_api_x86_32.py +++ b/miasm2/os_dep/win_api_x86_32.py @@ -1490,20 +1490,20 @@ def kernel32_lstrlen(jitter): my_strlen(jitter, whoami(), jitter.get_str_ansi, len) -def my_lstrcat(jitter, funcname, get_str): +def my_lstrcat(jitter, funcname, get_str, set_str): ret_ad, args = jitter.func_args_stdcall(['ptr_str1', 'ptr_str2']) s1 = get_str(args.ptr_str1) s2 = get_str(args.ptr_str2) - jitter.vm.set_mem(args.ptr_str1, s1 + s2) + set_str(args.ptr_str1, s1 + s2) jitter.func_ret_stdcall(ret_ad, args.ptr_str1) def kernel32_lstrcatA(jitter): - my_lstrcat(jitter, whoami(), jitter.get_str_ansi) + my_lstrcat(jitter, whoami(), jitter.get_str_ansi, jitter.set_str_ansi) def kernel32_lstrcatW(jitter): - my_lstrcat(jitter, whoami(), jitter.get_str_unic) + my_lstrcat(jitter, whoami(), jitter.get_str_unic, jitter.set_str_unic) def kernel32_GetUserGeoID(jitter): |