All pastes #780709 Raw Edit

Miscellany

public text v1 · immutable
·published 2007-11-18 17:33 UTC
rendered paste body
string:
{
    cbTotal = (sizeof(IMAGE_DOS_HEADER) +
                     sizeof(IMAGE_NT_HEADERS) +
                     sizeof(IMAGE_SECTION_HEADER) +
                     sizeof(DETOUR_SECTION_HEADER) +
                     sizeof(DETOUR_SECTION_RECORD) +
                     cbData);

    PBYTE pbBase = (PBYTE)VirtualAllocEx(hProcess, NULL, cbTotal,
                                         MEM_COMMIT, PAGE_READWRITE);

matches:
Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [0] => {
    DWORD cbTotal = (sizeof(IMAGE_DOS_HEADER) +
                     sizeof(IMAGE_NT_HEADERS) +
                     sizeof(IMAGE_SECTION_HEADER) +
                     sizeof(DETOUR_SECTION_HEADER) +
                     sizeof(DETOUR_SECTION_RECORD) +
                     cbData);
                    [1] => 0
                )
        )
)
i ommited the subpatterns matches

string2:
{

    PBYTE pbBase = (PBYTE)VirtualAllocEx(hProcess, NULL, cbTotal,
                                         MEM_COMMIT, PAGE_READWRITE);

matches2:
Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [0] => {


    PBYTE pbBase = (PBYTE)VirtualAllocEx(hProcess, NULL, cbTotal,
                                         MEM_COMMIT, PAGE_READWRITE);
                    [1] => 0
                )
          )
)

search string:
    if (preg_match_all('/[;{}](\s*)([\w_]+)([\s\*]+)([\w_]+)(\s*\[(\d*)\])?(\s*=\s*.*?)?\s*;/s', $func, $matches, PREG_SET_ORDER | PREG_OFFSET_CAPTURE) > 0) {
      print_r($matches);