Function at 0x539ea0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x564bd7
mov eax, dword fs:[0]
push eax
sub esp, 0xc0
mov eax, dword [0x5b4a28]
xor eax, esp
mov dword [esp + 0xbc], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5b4a28]
xor eax, esp
push eax
lea eax, [esp + 0xd4]
mov dword fs:[0], eax
mov esi, ecx
inc dword [esi + 0x64]
mov eax, dword [esi + 0x64]
mov ebx, dword [esi + 0x60]
mov edx, dword [esi + 4]
lea edi, [esi + 0x64]
cmp eax, ebx
jne 0x539f1d
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
je 0x539f12
nop
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x539f00
mov edx, dword [edi]
sub edx, dword [esi + 0x5c]
push edx
jmp 0x53b01b
movzx ecx, byte [eax]
mov ebp, dword [edx]
mov cl, byte [ecx + ebp + 4]
cmp cl, 0xd
jne 0x539f4c
jmp 0x539f30
cmp eax, ebx
je 0x539f45
mov cl, byte [eax]
inc eax
mov dword [edi], eax
mov esi, dword [edx]
movzx ecx, cl
cmp byte [ecx + esi + 4], 2
jne 0x539f30
mov al, 1
jmp 0x53b026
xor ebx, ebx
push 0x10
push ebx
mov ecx, esi
mov dword [esp + 0x28], ebx
call fcn.0052db60
mov edx, dword [esi]
mov ebp, eax
mov eax, dword [edx + 0x18]
shr eax, 0x14
and al, 1
mov byte [ebp + 0xc], al
mov eax, dword [esi]
mov edx, dword [eax + 0x13c]
mov ecx, ebp
sub ecx, edx
mov dword [esp + 0x30], ecx
mov ecx, dword [esi + 0x78]
mov dword [esp + 0x40], ecx
mov ecx, edx
mov edx, dword [eax + 0x140]
sub edx, ecx
add edx, 3
and edx, 0xfffffffc
add edx, ecx
mov dword [eax + 0x140], edx
mov eax, dword [esi]
mov ecx, dword [eax + 0x140]
sub ecx, dword [eax + 0x13c]
mov dl, byte [esi + 0x7c]
mov dword [esi + 0x78], ecx
mov dword [esp + 0x34], ecx
mov ecx, dword [eax + 0x18]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esi + 0x6c]
mov byte [esi + 0x7c], bl
mov ebx, dword [edi]
mov byte [esp + 0x17], dl
mov edx, dword [esi + 0x70]
mov dword [esp + 0x38], ecx
mov ecx, dword [esi + 0x68]
mov dword [esi + 0x70], ecx
mov ecx, dword [esi + 4]
mov dword [esi + 0x6c], 0xffffffff
mov bl, byte [ebx]
mov dword [esp + 0x3c], edx
mov edx, dword [ecx]
mov byte [esp + 0x16], bl
movzx ebx, bl
movzx edx, byte [ebx + edx + 4]
dec edx
mov byte [esp + 0x1f], 1
cmp edx, 0x34
ja case.0x53a006.3
movzx edx, byte [edx + 0x53b084]
jmp dword [edx*4 + 0x53b050]
mov eax, dword [esi + 0x68]
mov dword [esi + 0x6c], eax
xor eax, eax
mov dword [ebp + 8], eax
inc dword [edi]
mov dword [esp + 0x18], eax
jmp 0x53ac44
mov eax, dword [esi + 0x60]
push ecx
push 0xa
push eax
push edi
call fcn.0052e310
mov ebx, eax
add esp, 0x10
test ebx, ebx
js 0x53a04e
mov ecx, dword [edi]
mov eax, dword [esi + 4]
movzx edx, byte [ecx]
mov eax, dword [eax]
cmp byte [edx + eax + 4], 2
je 0x53abab
dec dword [edi]
mov eax, dword [edi]
mov ecx, dword [esi + 4]
movzx ebx, byte [eax]
mov ecx, dword [ecx]
mov edx, 1
cmp byte [ebx + ecx + 4], dl
je 0x53a077
sub eax, edx
mov dword [edi], eax
mov ecx, dword [esi + 4]
movzx ebx, byte [eax]
mov ecx, dword [ecx]
cmp byte [ebx + ecx + 4], dl
jne 0x53a065
push str.The_recursive_sub_expression_refers_to_an_invalid_marking_group__or_is_unterminated.
lea ecx, [esp + 0x64]
call fcn.004045a0
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0x60]
push eax
push ecx
push 0x14
mov ecx, esi
mov dword [esp + 0xe8], 0
call fcn.005348b0
lea ecx, [esp + 0x60]
call fcn.00404650
jmp 0x53b024
mov eax, dword [edi]
inc eax
push ecx
mov dword [edi], eax
mov eax, dword [esi + 0x60]
push 0xa
push eax
push edi
call fcn.0052e310
mov ebx, eax
add esp, 0x10
test ebx, ebx
jle 0x53a0e6
mov edx, dword [edi]
mov eax, dword [esi + 4]
movzx ecx, byte [edx]
mov eax, dword [eax]
cmp byte [ecx + eax + 4], 2
jne 0x53a0e6
add ebx, dword [esi + 0x68]
jmp 0x53abab
dec dword [edi]
mov eax, dword [edi]
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
mov ebx, 1
cmp byte [edx + ecx + 4], bl
je 0x53a112
lea ecx, [ecx]
sub eax, ebx
mov dword [edi], eax
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
jne 0x53a100
push str.An_invalid_or_unterminated_recursive_sub_expression.
lea ecx, [esp + 0x80]
call fcn.004045a0
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0x7c]
push eax
push ecx
push 0x14
mov ecx, esi
mov dword [esp + 0xe8], ebx
call fcn.005348b0
lea ecx, [esp + 0x7c]
call fcn.00404650
jmp 0x53b024
mov eax, dword [edi]
inc eax
push ecx
mov dword [edi], eax
mov eax, dword [esi + 0x60]
push 0xa
push eax
push edi
call fcn.0052e310
add esp, 0x10
test eax, eax
jg 0x53a1ac
dec dword [edi]
mov ecx, esi
call fcn.005388f0
mov ebx, eax
mov eax, dword [edi]
cmp eax, dword [esi + 0x60]
jne 0x53abd0
mov ecx, dword [esi + 4]
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [ecx]
mov ecx, 1
cmp byte [edx + ebx + 4], cl
je 0x53b017
sub eax, ecx
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [esi + 4]
mov ebx, dword [ebx]
cmp byte [edx + ebx + 4], cl
jne 0x53a195
jmp 0x53b017
mov ebx, dword [esi + 0x68]
sub ebx, eax
inc ebx
test ebx, ebx
jg 0x53abab
dec dword [edi]
mov eax, dword [edi]
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53a1e2
lea ecx, [ecx]
dec eax
mov dword [edi], eax
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53a1d0
push str.An_invalid_or_unterminated_recursive_sub_expression.
lea ecx, [esp + 0x9c]
call fcn.004045a0
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0x98]
push eax
push ecx
push 0x14
mov ecx, esi
mov dword [esp + 0xe8], 2
call fcn.005348b0
lea ecx, [esp + 0x98]
call fcn.00404650
jmp 0x53b024
or eax, 0xffffffff
push 0xc
mov dword [ebp + 8], eax
inc dword [edi]
push 0x10
mov ecx, esi
mov dword [esp + 0x20], eax
call fcn.0052db60
mov ecx, dword [esi]
sub eax, dword [ecx + 0x13c]
mov edx, dword [ecx + 0x140]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x13c]
sub edx, eax
add edx, 3
and edx, 0xfffffffc
add edx, eax
mov dword [ecx + 0x140], edx
mov eax, dword [esi]
mov ecx, dword [eax + 0x140]
sub ecx, dword [eax + 0x13c]
mov dword [esi + 0x78], ecx
jmp 0x53ac44
mov eax, 0xfffffffe
jmp 0x53a229
mov edx, dword [edi]
inc edx
mov dword [edi], edx
cmp edx, dword [esi + 0x60]
jne 0x53a2ba
lea eax, [edx - 1]
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [ecx]
mov ecx, 1
cmp byte [edx + ebx + 4], cl
je 0x53a2b3
sub eax, ecx
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [esi + 4]
mov ebx, dword [ebx]
cmp byte [edx + ebx + 4], cl
jne 0x53a2a1
mov eax, dword [edi]
jmp 0x53b017
movzx ebx, byte [edx]
mov ecx, dword [ecx]
mov cl, byte [ebx + ecx + 4]
cmp cl, 0x35
jne 0x53a2cf
mov eax, 0xfffffffe
jmp 0x53a2d7
cmp cl, 0x25
jne 0x53a325
or eax, 0xffffffff
push 0xc
mov dword [ebp + 8], eax
inc dword [edi]
push 0x10
mov ecx, esi
mov dword [esp + 0x20], eax
call fcn.0052db60
mov ecx, dword [esi]
sub eax, dword [ecx + 0x13c]
push 0x10
push 0x1a
mov ecx, esi
mov dword [esp + 0x28], eax
call fcn.0052db60
mov eax, dword [esi]
mov ecx, dword [eax + 0x13c]
mov edx, dword [eax + 0x140]
sub edx, ecx
add edx, 3
and edx, 0xfffffffc
add edx, ecx
mov dword [eax + 0x140], edx
jmp 0x53a265
dec edx
mov byte [esp + 0x16], 0x3e
mov dword [edi], edx
jmp 0x53a954
mov eax, 0xfffffffd
jmp 0x53a229
mov eax, 0xfffffffc
mov dword [ebp + 8], eax
inc dword [edi]
mov ecx, dword [edi]
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0x60]
cmp ecx, eax
jne 0x53a380
lea eax, [ecx - 1]
mov ecx, dword [esi + 4]
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53a379
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
jne 0x53a367
mov eax, dword [edi]
jmp 0x53b017
mov ecx, dword [esi + 4]
push ecx
push 0xa
push eax
push edi
call fcn.0052e310
mov ecx, dword [edi]
mov dl, byte [ecx]
add esp, 0x10
mov ebx, eax
cmp dl, 0x52
jne 0x53a4e9
mov edx, dword [esi + 0x60]
inc ecx
mov dword [edi], ecx
cmp ecx, edx
jne 0x53a3dd
mov eax, dword [esi + 4]
dec ecx
mov dword [edi], ecx
movzx edx, byte [ecx]
mov eax, dword [eax]
cmp byte [edx + eax + 4], 1
je 0x53a3d2
mov eax, ecx
lea ecx, [ecx]
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53a3c0
mov edx, dword [edi]
sub edx, dword [esi + 0x5c]
push edx
jmp 0x53b01b
cmp byte [ecx], 0x26
jne 0x53a449
inc ecx
mov dword [esp + 0x24], ecx
mov dword [edi], ecx
cmp ecx, edx
je 0x53a40a
mov ebx, dword [esi + 4]
mov eax, dword [edi]
movzx ebp, byte [eax]
mov ecx, dword [ebx]
cmp byte [ecx + ebp + 4], 2
je 0x53a406
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x53a3f0
mov ecx, dword [esp + 0x24]
mov eax, dword [edi]
cmp eax, edx
jne 0x53a43d
mov edx, dword [esi + 4]
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
je 0x53b017
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53a426
jmp 0x53b017
push eax
push ecx
call fcn.0052a6e0
add esp, 8
jmp 0x53a459
mov eax, dword [esi + 4]
push eax
push 0xa
push edx
push edi
call fcn.0052e310
add esp, 0x10
push 0x10
mov ebp, eax
push 0x1b
mov ecx, esi
neg ebp
call fcn.0052db60
test ebp, ebp
jns 0x53a46f
dec ebp
jmp 0x53a471
xor ebp, ebp
mov dword [eax + 8], ebp
mov eax, dword [edi]
mov ecx, dword [esi + 4]
movzx ebx, byte [eax]
mov edx, dword [ecx]
cmp byte [ebx + edx + 4], 2
je 0x53a4af
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53b017
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
jne 0x53a498
jmp 0x53b017
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x53ac44
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53a4e2
lea ebx, [ebx]
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
jne 0x53a4d0
mov eax, dword [edi]
jmp 0x53b017
cmp dl, 0x27
je 0x53a7be
cmp dl, 0x3c
je 0x53a7be
cmp dl, 0x44
jne 0x53a5e8
mov ebp, dword [esi + 0x60]
mov ecx, str.DEFINE
lea esp, [esp]
mov eax, dword [edi]
cmp eax, ebp
je 0x53a525
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x53a525
inc eax
inc ecx
mov dword [edi], eax
cmp byte [ecx], 0
jne 0x53a510
mov eax, dword [edi]
cmp eax, ebp
je 0x53a5bb
cmp byte [ecx], 0
jne 0x53a5bb
push 0x10
push 0x1b
mov ecx, esi
call fcn.0052db60
mov dword [eax + 8], 0x270f
mov eax, dword [edi]
mov ecx, dword [esi + 4]
movzx ebx, byte [eax]
mov edx, dword [ecx]
cmp byte [ebx + edx + 4], 2
je 0x53a587
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53b017
mov edi, edi
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
jne 0x53a570
jmp 0x53b017
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x53ac44
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53a5b4
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
jne 0x53a5a2
mov eax, dword [edi]
jmp 0x53b017
mov edx, dword [esi + 4]
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
je 0x53b017
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53a5d1
jmp 0x53b017
test ebx, ebx
jle 0x53a66d
push 0x10
push 0x1b
mov ecx, esi
call fcn.0052db60
mov dword [eax + 8], ebx
mov eax, dword [edi]
mov ecx, dword [esi + 4]
movzx ebx, byte [eax]
mov edx, dword [ecx]
cmp byte [ebx + edx + 4], 2
je 0x53a639
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53b017
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
jne 0x53a622
jmp 0x53b017
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x53ac44
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53a666
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
jne 0x53a654
mov eax, dword [edi]
jmp 0x53b017
mov eax, dword [esi + 4]
mov ebx, dword [eax]
movzx edx, dl
cmp byte [edx + ebx + 4], 8
je 0x53a6ab
dec ecx
mov dword [edi], ecx
movzx edx, byte [ecx]
mov eax, dword [eax]
cmp byte [edx + eax + 4], 1
je 0x53a6a2
jmp 0x53a690
dec ecx
mov dword [edi], ecx
movzx eax, byte [ecx]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [eax + edx + 4], 1
jne 0x53a690
sub ecx, dword [esi + 0x5c]
push ecx
jmp 0x53b01b
mov ebp, dword [esi + 0x60]
inc ecx
mov dword [edi], ecx
cmp ecx, ebp
jne 0x53a6e3
dec ecx
mov dword [edi], ecx
movzx edx, byte [ecx]
mov eax, dword [eax]
cmp byte [edx + eax + 4], 1
je 0x53a6d8
mov eax, ecx
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53a6c6
mov edx, dword [edi]
sub edx, dword [esi + 0x5c]
push edx
jmp 0x53b01b
movzx edx, byte [ecx]
mov ebx, dword [eax]
cmp byte [ebx + edx + 4], 0x14
jne 0x53a778
inc ecx
mov dword [edi], ecx
cmp ecx, ebp
jne 0x53a72d
dec ecx
mov dword [edi], ecx
movzx edx, byte [ecx]
mov eax, dword [eax]
cmp byte [edx + eax + 4], 1
je 0x53a722
mov eax, ecx
jmp 0x53a710
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53a710
mov edx, dword [edi]
sub edx, dword [esi + 0x5c]
push edx
jmp 0x53b01b
movzx edx, byte [ecx]
mov ebx, dword [eax]
cmp byte [ebx + edx + 4], 0x25
je 0x53a76e
cmp byte [ebx + edx + 4], 0x35
je 0x53a76e
dec ecx
mov dword [edi], ecx
movzx edx, byte [ecx]
mov eax, dword [eax]
cmp byte [edx + eax + 4], 1
je 0x53a763
mov eax, ecx
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53a751
mov edx, dword [edi]
sub edx, dword [esi + 0x5c]
push edx
jmp 0x53b01b
add ecx, 0xfffffffd
mov dword [edi], ecx
jmp 0x53ac44
cmp byte [ebx + edx + 4], 0x25
je 0x53a7b4
cmp byte [ebx + edx + 4], 0x35
je 0x53a7b4
dec ecx
mov dword [edi], ecx
movzx edx, byte [ecx]
mov eax, dword [eax]
cmp byte [edx + eax + 4], 1
je 0x53a7a9
mov eax, ecx
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53a797
mov edx, dword [edi]
sub edx, dword [esi + 0x5c]
push edx
jmp 0x53b01b
add ecx, 0xfffffffe
mov dword [edi], ecx
jmp 0x53ac44
mov edx, dword [esi + 0x60]
lea eax, [ecx + 1]
mov dword [edi], eax
mov ebx, eax
cmp eax, edx
je 0x53a7e6
lea esp, [esp]
mov cl, byte [eax]
cmp cl, 0x3e
je 0x53a7e6
cmp cl, 0x27
je 0x53a7e6
inc eax
mov ecx, eax
mov dword [edi], eax
cmp ecx, dword [esi + 0x60]
jne 0x53a7d0
mov eax, dword [edi]
cmp eax, edx
jne 0x53a819
mov ecx, dword [esi + 4]
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53b017
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
jne 0x53a802
jmp 0x53b017
push eax
push ebx
call fcn.0052a6e0
add esp, 8
push 0x10
push 0x1b
mov ecx, esi
mov ebx, eax
call fcn.0052db60
mov dword [eax + 8], ebx
mov eax, dword [edi]
mov cl, byte [eax]
cmp cl, 0x3e
je 0x53a841
cmp cl, 0x27
jne 0x53a84b
mov ebx, dword [esi + 0x60]
inc eax
mov dword [edi], eax
cmp eax, ebx
jne 0x53a8ad
dec dword [edi]
mov eax, dword [edi]
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53a872
mov edi, edi
dec eax
mov dword [edi], eax
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53a860
push str.Unterminated_named_capture.
lea ecx, [esp + 0x48]
call fcn.004045a0
mov dword [esp + 0xdc], 3
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0x44]
push eax
push ecx
push 0x14
mov ecx, esi
call fcn.005348b0
lea ecx, [esp + 0x44]
call fcn.00404650
jmp 0x53b024
mov ecx, dword [esi + 4]
movzx ebp, byte [eax]
mov edx, dword [ecx]
cmp byte [edx + ebp + 4], 2
je 0x53a8e9
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53a8e2
jmp 0x53a8d0
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
jne 0x53a8d0
mov eax, dword [edi]
jmp 0x53b017
inc eax
mov dword [edi], eax
cmp eax, ebx
jne 0x53ac44
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53a915
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
jne 0x53a903
mov eax, dword [edi]
jmp 0x53b017
mov eax, dword [edi]
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [ecx]
mov ecx, 1
cmp byte [edx + ebx + 4], cl
je 0x53b017
sub eax, ecx
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [esi + 4]
mov ebx, dword [ebx]
cmp byte [edx + ebx + 4], cl
jne 0x53a935
jmp 0x53b017
mov cl, byte [esp + 0x16]
mov byte [esp + 0x16], cl
xor ebx, ebx
test dword [eax + 0x18], 0x400000
mov dword [esp + 0x18], ebx
jne 0x53a99d
mov ecx, dword [esi + 0x68]
inc ecx
mov dword [esi + 0x68], ecx
test dword [eax + 0x18], 0x800000
mov ebx, ecx
mov dword [esp + 0x18], ebx
je 0x53a99d
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea edx, [esp + 0x24]
add ecx, 0xfffffffe
mov dword [esp + 0x24], ecx
push edx
lea ecx, [eax + 0x148]
mov dword [esp + 0x2c], 0
call fcn.00537f10
mov dword [ebp + 8], ebx
inc dword [edi]
mov eax, dword [edi]
mov ebp, dword [esi + 0x60]
mov ecx, eax
cmp eax, ebp
jne 0x53a9e0
mov edx, dword [esi + 4]
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
je 0x53a9d2
nop
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53a9c0
mov edx, dword [edi]
sub edx, dword [esi + 0x5c]
push edx
jmp 0x53b01b
mov dl, byte [esp + 0x16]
cmp byte [eax], dl
je 0x53a9f0
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x53a9e0
mov eax, dword [edi]
cmp eax, ebp
jne 0x53aa27
mov edx, dword [esi + 4]
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
je 0x53b017
lea esp, [esp]
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53aa10
jmp 0x53b017
push ebx
push eax
push ecx
mov ecx, dword [esi]
call fcn.00538b70
inc dword [edi]
jmp 0x53ac44
mov al, byte [esp + 0x16]
cmp al, 0x52
jne 0x53aa8b
mov eax, dword [edi]
inc eax
mov dword [edi], eax
mov edx, dword [ecx]
mov dword [esp + 0x24], eax
movzx eax, byte [eax]
xor ebx, ebx
cmp byte [eax + edx + 4], 2
je 0x53abab
mov eax, dword [esp + 0x24]
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [ecx]
mov ecx, 1
cmp byte [edx + ebx + 4], cl
je 0x53aa84
sub eax, ecx
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [esi + 4]
mov ebx, dword [ebx]
cmp byte [edx + ebx + 4], cl
jne 0x53aa72
mov eax, dword [edi]
jmp 0x53b017
cmp al, 0x26
jne 0x53aaf2
mov eax, dword [edi]
inc eax
mov dword [edi], eax
mov dword [esp + 0x24], eax
cmp eax, dword [esi + 0x60]
je 0x53aab4
lea ecx, [ecx]
movzx ebx, byte [eax]
mov edx, dword [ecx]
cmp byte [ebx + edx + 4], 2
je 0x53aab4
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x53aaa0
mov eax, dword [edi]
cmp eax, dword [esi + 0x60]
jne 0x53aae7
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53b017
mov edi, edi
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
jne 0x53aad0
jmp 0x53b017
push eax
mov eax, dword [esp + 0x28]
push eax
jmp 0x53aba1
cmp al, 0x50
jne 0x53a167
mov eax, dword [edi]
mov edx, dword [esi + 0x60]
inc eax
mov dword [edi], eax
cmp eax, edx
jne 0x53ab39
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [ecx]
mov ecx, 1
cmp byte [edx + ebx + 4], cl
je 0x53ab32
lea esp, [esp]
sub eax, ecx
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [esi + 4]
mov ebx, dword [ebx]
cmp byte [edx + ebx + 4], cl
jne 0x53ab20
mov eax, dword [edi]
jmp 0x53b017
cmp byte [eax], 0x3e
jne 0x53a167
lea ebx, [eax + 1]
mov dword [esp + 0x24], ebx
mov dword [edi], ebx
cmp ebx, edx
je 0x53ab6a
nop
mov eax, dword [edi]
movzx ebx, byte [eax]
mov edx, dword [ecx]
cmp byte [ebx + edx + 4], 2
je 0x53ab66
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x53ab50
mov ebx, dword [esp + 0x24]
mov eax, dword [edi]
cmp eax, dword [esi + 0x60]
jne 0x53ab9f
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [ecx]
mov ecx, 1
cmp byte [edx + ebx + 4], cl
je 0x53b017
sub eax, ecx
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [esi + 4]
mov ebx, dword [ebx]
cmp byte [edx + ebx + 4], cl
jne 0x53ab88
jmp 0x53b017
push eax
push ebx
call fcn.0052a6e0
mov ebx, eax
add esp, 8
xor eax, eax
push 0x10
push 0x1d
mov ecx, esi
mov dword [esp + 0x20], eax
mov dword [ebp + 8], eax
call fcn.0052db60
mov dword [eax + 8], ebx
mov dword [eax + 0xc], 0
mov eax, dword [esi]
mov ebx, dword [eax + 0x18]
jmp 0x53ac30
mov eax, dword [esi]
mov eax, dword [eax + 0x18]
shr eax, 0x14
mov ecx, ebx
shr ecx, 0x14
xor cl, al
and cl, 1
mov byte [esi + 0x7c], cl
xor eax, eax
mov dword [ebp + 8], eax
mov edx, dword [edi]
mov ecx, dword [esi + 4]
mov ebp, dword [ecx]
mov dword [esp + 0x18], eax
movzx eax, byte [edx]
cmp byte [eax + ebp + 4], 2
jne 0x53ac15
push ebx
mov ecx, esi
call fcn.005266f0
mov dl, byte [esi + 0x7c]
or byte [esp + 0x17], dl
mov byte [esp + 0x1f], 0
jmp 0x53ac2a
cmp byte [eax + ebp + 4], 0x24
jne 0x53aff4
push ebx
mov ecx, esi
call fcn.005266f0
inc dword [edi]
cmp byte [esi + 0x7c], 0
je 0x53ac44
push 0xc
shr ebx, 0x14
push 0x1c
mov ecx, esi
and bl, 1
call fcn.0052db60
mov byte [eax + 8], bl
mov eax, dword [edi]
cmp eax, dword [esi + 0x60]
je 0x53ac56
mov edx, dword [esi + 0x58]
mov ecx, esi
call edx
test al, al
jne 0x53ac44
mov eax, dword [esp + 0x30]
push eax
mov ecx, esi
call fcn.00534aa0
test al, al
jne 0x53acb0
dec dword [edi]
mov eax, dword [edi]
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53ac92
lea esp, [esp]
dec eax
mov dword [edi], eax
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53ac80
push str.Invalid_alternation_operators_within___...__block.
lea ecx, [esp + 0x48]
call fcn.004045a0
mov dword [esp + 0xdc], 4
jmp 0x53a88b
mov eax, dword [edi]
mov ecx, dword [esi + 0x60]
cmp eax, ecx
jne 0x53aced
mov ebx, dword [esi + 4]
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [ebx]
cmp byte [edx + ebx + 4], 1
je 0x53ace2
jmp 0x53acd0
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [esi + 4]
mov ebx, dword [ebx]
cmp byte [edx + ebx + 4], 1
jne 0x53acd0
sub ecx, dword [esi + 0x5c]
push ecx
push 8
jmp 0x53b01d
inc eax
cmp byte [esp + 0x1f], 0
mov dword [edi], eax
je 0x53ad21
cmp byte [esi + 0x7c], 0
je 0x53ad15
mov ebx, dword [esp + 0x2c]
push 0xc
shr ebx, 0x14
push 0x1c
mov ecx, esi
and bl, 1
call fcn.0052db60
mov byte [eax + 8], bl
mov eax, dword [esp + 0x2c]
push eax
mov ecx, esi
call fcn.005266f0
mov ebx, dword [esp + 0x20]
test ebx, ebx
je 0x53adb0
mov eax, dword [esi]
mov ecx, dword [eax + 0x13c]
mov edx, dword [eax + 0x140]
sub edx, ecx
add edx, 3
and edx, 0xfffffffc
add edx, ecx
mov dword [eax + 0x140], edx
mov eax, dword [esi]
mov edx, dword [eax + 0x13c]
lea ecx, [edx + ebx]
mov ebx, dword [eax + 0x140]
sub ebx, edx
sub ebx, ecx
add ebx, edx
mov dword [ecx + 8], ebx
cmp dword [esi + 8], ecx
jne 0x53adb0
dec dword [edi]
mov eax, dword [edi]
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53ad92
lea ecx, [ecx]
dec eax
mov dword [edi], eax
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53ad80
push str.Invalid_or_empty_zero_width_assertion.
lea ecx, [esp + 0x48]
call fcn.004045a0
mov dword [esp + 0xdc], 5
jmp 0x53a88b
mov ebp, dword [esp + 0x18]
cmp ebp, 0xfffffffc
jne 0x53af6d
mov edx, dword [esi]
mov eax, dword [edx + 0x13c]
mov ebx, dword [esp + 0x34]
add eax, ebx
cmp dword [eax], 0x11
je 0x53ae87
push 0x110
push 0x11
push ebx
mov ecx, esi
call fcn.0052b060
mov ecx, dword [esi]
mov edx, dword [ecx + 0x13c]
mov ebp, dword [ecx + 0x140]
sub ebp, edx
sub ebp, eax
add ebp, edx
mov dword [eax + 8], ebp
mov ebp, dword [esp + 0x18]
mov edx, dword [esi]
mov eax, dword [edx + 0x13c]
add eax, ebx
add eax, dword [eax + 4]
mov eax, dword [eax]
cmp eax, 0x1b
je 0x53af6d
test eax, eax
je 0x53af6d
dec dword [edi]
mov eax, dword [edi]
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53ae43
dec eax
mov dword [edi], eax
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53ae31
push str.A_repetition_operator_cannot_be_applied_to_a_zero_width_assertion.
lea ecx, [esp + 0xb8]
call fcn.004045a0
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0xb4]
push eax
push ecx
push 0xd
mov ecx, esi
mov dword [esp + 0xe8], 8
call fcn.005348b0
lea ecx, [esp + 0xb4]
call fcn.00404650
jmp 0x53b024
mov ecx, dword [eax + 8]
cmp dword [eax + ecx], 0x11
jne 0x53aef0
dec dword [edi]
mov eax, dword [edi]
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53aeb5
dec eax
mov dword [edi], eax
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53aea3
push str.More_than_one_alternation_operator__was_encountered_inside_a_conditional_expression.
lea ecx, [esp + 0x48]
call fcn.004045a0
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0x44]
push eax
push ecx
push 2
mov ecx, esi
mov dword [esp + 0xe8], 6
call fcn.005348b0
lea ecx, [esp + 0x44]
call fcn.00404650
jmp 0x53b024
add eax, dword [eax + 4]
cmp dword [eax], 0x1b
jne 0x53adfe
cmp dword [eax + 8], 0x270f
jne 0x53adfe
dec dword [edi]
mov eax, dword [edi]
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53af32
lea esp, [esp]
dec eax
mov dword [edi], eax
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
jne 0x53af20
push str.Alternation_operators_are_not_allowed_inside_a_DEFINE_block.
lea ecx, [esp + 0x48]
call fcn.004045a0
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0x44]
push eax
push ecx
push 2
mov ecx, esi
mov dword [esp + 0xe8], 7
call fcn.005348b0
lea ecx, [esp + 0x44]
call fcn.00404650
jmp 0x53b024
push 0x10
push 1
mov ecx, esi
call fcn.0052db60
mov dword [eax + 8], ebp
mov edx, dword [esi]
mov ecx, dword [edx + 0x18]
mov edx, dword [esp + 0x30]
shr ecx, 0x14
and cl, 1
mov byte [eax + 0xc], cl
mov eax, dword [esp + 0x40]
mov cl, byte [esp + 0x17]
mov dword [esi + 0x78], eax
mov eax, dword [esi + 0x70]
mov dword [esi + 0x74], edx
mov byte [esi + 0x7c], cl
cmp eax, dword [esi + 0x68]
jbe 0x53afa9
mov dword [esi + 0x68], eax
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
mov dword [esi + 0x6c], edx
mov dword [esi + 0x70], eax
test ebp, ebp
jle 0x53aff0
mov eax, dword [esi]
test dword [eax + 0x18], 0x800000
je 0x53afde
mov edi, dword [edi]
sub edi, dword [esi + 0x5c]
lea ecx, [ebp - 1]
push ecx
lea ecx, [eax + 0x148]
dec edi
call fcn.00526f80
mov dword [eax + 4], edi
cmp ebp, 0x20
jge 0x53aff0
lea ecx, [ebp - 1]
mov edx, 1
shl edx, cl
or dword [esi + 0x18], edx
mov al, 1
jmp 0x53b026
lea eax, [edx - 1]
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x53b017
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
jne 0x53b005
sub eax, dword [esi + 0x5c]
push eax
push 0x14
mov ecx, esi
call fcn.00537190
xor al, al
mov ecx, dword [esp + 0xd4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xbc]
xor ecx, esp
call fcn.004b2f5a
add esp, 0xcc
ret
sub esp, 0x14
push ebx
push esi
mov esi, ecx
mov ebx, 1
add dword [esi + 0x64], ebx
mov eax, dword [esi + 0x64]
cmp eax, dword [esi + 0x60]
jne 0x53ef3a
sub eax, dword [esi + 0x5c]
push eax
push 8
call fcn.00537190
pop esi
xor al, al
pop ebx
add esp, 0x14
ret
mov ecx, dword [esi]
mov edx, dword [ecx + 0x18]
push ebp
push edi
test edx, 0x203
je 0x53ef59
mov edi, edx
and edi, 0x1003
cmp edi, 0x1001
jne 0x53ef76
mov edi, dword [esi + 4]
movzx ebp, byte [eax]
mov edi, dword [edi]
cmp byte [edi + ebp + 4], 8
jne 0x53ef76
pop edi
pop ebp
mov ecx, esi
pop esi
pop ebx
add esp, 0x14
jmp 0x539ea0
xor edi, edi
test edx, 0x400000
jne 0x53efb0
add dword [esi + 0x68], ebx
test dword [ecx + 0x18], 0x800000
mov edi, dword [esi + 0x68]
je 0x53efb0
sub eax, dword [esi + 0x5c]
add ecx, 0x148
sub eax, ebx
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x1c]
push eax
mov dword [esp + 0x24], 0
call fcn.00537f10
push 0x10
push 0
mov ecx, esi
call fcn.0052db60
mov dword [eax + 8], edi
mov ecx, dword [esi]
mov edx, dword [ecx + 0x18]
shr edx, 0x14
and dl, bl
mov byte [eax + 0xc], dl
mov ecx, dword [esi]
sub eax, dword [ecx + 0x13c]
mov edx, dword [ecx + 0x140]
mov ebx, eax
mov eax, dword [esi + 0x78]
mov dword [esp + 0x1c], eax
mov eax, dword [ecx + 0x13c]
sub edx, eax
add edx, 3
and edx, 0xfffffffc
add edx, eax
mov dword [ecx + 0x140], edx
mov eax, dword [esi]
mov ecx, dword [eax + 0x140]
sub ecx, dword [eax + 0x13c]
mov dl, byte [esi + 0x7c]
mov dword [esi + 0x78], ecx
mov ebp, dword [eax + 0x18]
mov eax, dword [esi + 0x6c]
mov dword [esp + 0x14], ebx
mov byte [esp + 0x13], dl
mov byte [esi + 0x7c], 0
mov dword [esp + 0x18], eax
mov dword [esi + 0x6c], 0xffffffff
lea esp, [esp]
mov ecx, dword [esi + 0x64]
cmp ecx, dword [esi + 0x60]
je 0x53f043
mov edx, dword [esi + 0x58]
mov ecx, esi
call edx
test al, al
jne 0x53f030
push ebx
mov ecx, esi
call fcn.00534aa0
test al, al
je 0x53f0a8
cmp byte [esi + 0x7c], 0
je 0x53f06f
mov ebx, ebp
push 0xc
shr ebx, 0x14
push 0x1c
mov ecx, esi
and bl, 1
call fcn.0052db60
mov byte [eax + 8], bl
mov ebx, dword [esp + 0x14]
mov eax, dword [esi]
mov dword [eax + 0x18], ebp
mov eax, ebp
shr eax, 0x14
and al, 1
cmp byte [esi + 0xc], al
je 0x53f083
mov byte [esi + 0xc], al
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + 0x60]
mov dl, byte [esp + 0x13]
mov dword [esi + 0x6c], eax
mov eax, dword [esi + 0x64]
mov byte [esi + 0x7c], dl
cmp eax, ecx
jne 0x53f0b2
sub ecx, dword [esi + 0x5c]
push ecx
push 8
mov ecx, esi
call fcn.00537190
pop edi
pop ebp
pop esi
xor al, al
pop ebx
add esp, 0x14
ret
test edi, edi
je 0x53f0d8
mov ecx, dword [esi]
test dword [ecx + 0x18], 0x800000
je 0x53f0d8
sub eax, dword [esi + 0x5c]
lea edx, [edi - 1]
push edx
add ecx, 0x148
mov ebp, eax
call fcn.00526f80
mov dword [eax + 4], ebp
inc dword [esi + 0x64]
push 0x10
push 1
mov ecx, esi
call fcn.0052db60
mov dword [eax + 8], edi
mov ecx, dword [esi]
mov edx, dword [ecx + 0x18]
shr edx, 0x14
and dl, 1
mov byte [eax + 0xc], dl
mov eax, dword [esp + 0x1c]
lea ecx, [edi - 1]
mov dword [esi + 0x74], ebx
mov dword [esi + 0x78], eax
cmp ecx, 0x1e
ja 0x53f113
mov edx, 1
shl edx, cl
or dword [esi + 0x18], edx
pop edi
pop ebp
pop esi
mov al, 1
pop ebx
add esp, 0x14
ret