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

Disassembly:
push 0xffffffffffffffff
push 0x101050b7
mov eax, dword fs:[0]
push eax
sub esp, 0xc4
mov eax, dword [0x10137920]
xor eax, esp
mov dword [esp + 0xc0], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x10137920]
xor eax, esp
push eax
lea eax, [esp + 0xd8]
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 0x100f559d
dec eax
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
je 0x100f5592
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 0x100f5580
mov edx, dword [edi]
sub edx, dword [esi + 0x5c]
push edx
jmp 0x100f673b
movzx ecx, byte [eax]
mov ebp, dword [edx]
mov cl, byte [ecx + ebp + 4]
cmp cl, 0xd
jne 0x100f55cc
jmp 0x100f55b0
cmp eax, ebx
je 0x100f55c5
mov cl, byte [eax]
inc eax
mov dword [edi], eax
mov esi, dword [edx]
movzx ecx, cl
cmp byte [ecx + esi + 4], 2
jne 0x100f55b0
mov al, 1
jmp 0x100f6746
xor ebx, ebx
push 0x10
push ebx
mov ecx, esi
mov dword [esp + 0x2c], ebx
call fcn.100edf80
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 + 0x38], ecx
mov ecx, dword [eax + 0x18]
mov dword [esp + 0x34], 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 + 0x44], 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 byte [esp + 0x16], bl
mov dword [esp + 0x3c], edx
mov edx, dword [ecx]
movzx ebx, bl
movzx edx, byte [ebx + edx + 4]
dec edx
mov byte [esp + 0x1f], 1
mov ebx, 0xfffffffe
cmp edx, 0x34
ja case.0x100f568b.3
movzx edx, byte [edx + 0x100f67a4]
jmp dword [edx*4 + 0x100f6770]
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 0x100f6360
mov eax, dword [esi + 0x60]
push ecx
push 0xa
push eax
push edi
call fcn.10052eb0
add esp, 0x10
mov ebx, eax
test edx, edx
jl 0x100f56d9
jg 0x100f56c4
test ebx, ebx
jb 0x100f56d9
mov ecx, dword [edi]
mov eax, dword [esi + 4]
movzx edx, byte [ecx]
mov eax, dword [eax]
cmp byte [edx + eax + 4], 2
je 0x100f62c0
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 0x100f5702
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 0x100f56f0
push str.The_recursive_sub_expression_refers_to_an_invalid_marking_group__or_is_unterminated.
lea ecx, [esp + 0x68]
call fcn.10004660
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0x64]
push eax
push ecx
push 0x14
mov ecx, esi
mov dword [esp + 0xec], 0
call fcn.100f1ac0
lea ecx, [esp + 0x64]
call fcn.100f0520
jmp 0x100f6744
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.10052eb0
add esp, 0x10
mov ebx, eax
test edx, edx
jl 0x100f577a
jg 0x100f575e
test ebx, ebx
je 0x100f577a
mov ecx, dword [edi]
mov eax, dword [esi + 4]
movzx ecx, byte [ecx]
mov eax, dword [eax]
cmp byte [ecx + eax + 4], 2
jne 0x100f577a
add ebx, dword [esi + 0x68]
adc edx, 0
jmp 0x100f62c0
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 0x100f57a3
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 0x100f5791
push str.An_invalid_or_unterminated_recursive_sub_expression.
lea ecx, [esp + 0x84]
call fcn.10004660
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0x80]
push eax
push ecx
push 0x14
mov ecx, esi
mov dword [esp + 0xec], ebx
call fcn.100f1ac0
lea ecx, [esp + 0x80]
call fcn.100f0520
jmp 0x100f6744
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.10052eb0
add esp, 0x10
test edx, edx
jg 0x100f5849
jl 0x100f5802
test eax, eax
jne 0x100f5849
dec dword [edi]
mov ecx, esi
call fcn.100f4a40
mov ebx, eax
mov eax, dword [edi]
cmp eax, dword [esi + 0x60]
jne 0x100f62e5
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 0x100f6737
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 0x100f5832
jmp 0x100f6737
mov ebx, dword [esi + 0x68]
inc ebx
xor ecx, ecx
sub ebx, eax
sbb ecx, edx
test ecx, ecx
jg 0x100f62c0
jl 0x100f5865
test ebx, ebx
jne 0x100f62c0
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 0x100f588a
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 0x100f5878
push str.An_invalid_or_unterminated_recursive_sub_expression.
lea ecx, [esp + 0xa0]
call fcn.10004660
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0x9c]
push eax
push ecx
push 0x14
mov ecx, esi
mov dword [esp + 0xec], 2
call fcn.100f1ac0
lea ecx, [esp + 0x9c]
call fcn.100f0520
jmp 0x100f6744
or eax, 0xffffffff
mov dword [esp + 0x18], eax
mov dword [ebp + 8], eax
inc dword [edi]
push 0xc
push 0x10
mov ecx, esi
call fcn.100edf80
mov ecx, dword [esi]
sub eax, dword [ecx + 0x13c]
mov edx, dword [ecx + 0x140]
mov dword [esp + 0x24], 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 0x100f6360
mov dword [esp + 0x18], ebx
mov dword [ebp + 8], ebx
jmp 0x100f58d8
mov edx, dword [edi]
inc edx
mov dword [edi], edx
cmp edx, dword [esi + 0x60]
jne 0x100f5969
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 0x100f5962
jmp 0x100f5950
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 0x100f5950
mov eax, dword [edi]
jmp 0x100f6737
movzx ebx, byte [edx]
mov ecx, dword [ecx]
mov cl, byte [ebx + ecx + 4]
cmp cl, 0x35
jne 0x100f597e
mov eax, 0xfffffffe
jmp 0x100f5986
cmp cl, 0x25
jne 0x100f59d4
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.100edf80
mov ecx, dword [esi]
sub eax, dword [ecx + 0x13c]
push 0x10
push 0x1a
mov ecx, esi
mov dword [esp + 0x2c], eax
call fcn.100edf80
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 0x100f590d
dec edx
mov byte [esp + 0x16], 0x3e
mov dword [edi], edx
jmp 0x100f6064
mov eax, 0xfffffffd
jmp 0x100f58d1
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 0x100f5a2f
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 0x100f5a28
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 0x100f5a16
mov eax, dword [edi]
jmp 0x100f6737
mov ecx, dword [esi + 4]
push ecx
push 0xa
push eax
push edi
call fcn.10052eb0
mov ecx, dword [edi]
mov ebp, dword [esi + 0x60]
add esp, 0x10
mov ebx, eax
mov eax, edx
cmp ecx, ebp
jne 0x100f5a7b
mov edx, dword [esi + 4]
lea eax, [ecx - 1]
mov dword [edi], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 1
je 0x100f6737
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 0x100f5a64
jmp 0x100f6737
mov dl, byte [ecx]
cmp dl, 0x52
jne 0x100f5beb
inc ecx
mov dword [edi], ecx
cmp ecx, ebp
jne 0x100f5aba
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 0x100f5ab3
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 0x100f5aa1
mov eax, dword [edi]
jmp 0x100f6737
cmp byte [ecx], 0x26
jne 0x100f5b30
inc ecx
mov dword [esp + 0x20], ecx
mov dword [edi], ecx
cmp ecx, ebp
je 0x100f5aea
mov edx, dword [esi + 4]
lea ecx, [ecx]
mov eax, dword [edi]
movzx ebx, byte [eax]
mov ecx, dword [edx]
cmp byte [ebx + ecx + 4], 2
je 0x100f5ae6
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x100f5ad0
mov ecx, dword [esp + 0x20]
mov eax, dword [edi]
cmp eax, ebp
jne 0x100f5b1d
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 0x100f6737
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 0x100f5b06
jmp 0x100f6737
push eax
push ecx
call fcn.100530b0
add esp, 8
neg eax
cdq
mov ebx, eax
mov ebp, edx
jmp 0x100f5b4b
mov eax, dword [esi + 4]
push eax
push 0xa
push ebp
push edi
call fcn.10052eb0
add esp, 0x10
mov ebx, eax
neg ebx
mov ebp, edx
adc ebp, 0
neg ebp
push 0x10
push 0x1b
mov ecx, esi
call fcn.100edf80
test ebp, ebp
jg 0x100f5b6c
jl 0x100f5b60
test ebx, ebx
jae 0x100f5b6c
sub ebx, 1
sbb ebp, 0
mov dword [esp + 0x2c], ebp
jmp 0x100f5b72
xor ebx, ebx
mov dword [esp + 0x2c], ebx
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 0x100f5bb7
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x100f6737
lea esp, [esp]
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 0x100f5ba0
jmp 0x100f6737
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x100f6360
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x100f5be4
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 0x100f5bd2
mov eax, dword [edi]
jmp 0x100f6737
cmp dl, 0x27
je 0x100f5ecd
cmp dl, 0x3c
je 0x100f5ecd
cmp dl, 0x44
jne 0x100f5ce8
mov ecx, str.DEFINE
jmp 0x100f5c10
mov eax, dword [edi]
cmp eax, ebp
je 0x100f5c25
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100f5c25
inc eax
inc ecx
mov dword [edi], eax
cmp byte [ecx], 0
jne 0x100f5c10
mov eax, dword [edi]
cmp eax, ebp
je 0x100f5cbb
cmp byte [ecx], 0
jne 0x100f5cbb
push 0x10
push 0x1b
mov ecx, esi
call fcn.100edf80
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 0x100f5c87
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x100f6737
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 0x100f5c70
jmp 0x100f6737
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x100f6360
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x100f5cb4
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 0x100f5ca2
mov eax, dword [edi]
jmp 0x100f6737
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 0x100f6737
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 0x100f5cd1
jmp 0x100f6737
test eax, eax
jl 0x100f5d7b
jg 0x100f5cfa
test ebx, ebx
je 0x100f5d7b
push 0x10
push 0x1b
mov ecx, esi
call fcn.100edf80
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 0x100f5d47
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x100f6737
lea esp, [esp]
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 0x100f5d30
jmp 0x100f6737
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x100f6360
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x100f5d74
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 0x100f5d62
mov eax, dword [edi]
jmp 0x100f6737
mov eax, dword [esi + 4]
mov ebx, dword [eax]
movzx edx, dl
cmp byte [edx + ebx + 4], 8
je 0x100f5dbb
dec ecx
mov dword [edi], ecx
movzx edx, byte [ecx]
mov eax, dword [eax]
cmp byte [edx + eax + 4], 1
je 0x100f5db2
lea esp, [esp]
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 0x100f5da0
sub ecx, dword [esi + 0x5c]
push ecx
jmp 0x100f673b
inc ecx
mov dword [edi], ecx
cmp ecx, ebp
jne 0x100f5df0
dec ecx
mov dword [edi], ecx
movzx edx, byte [ecx]
mov eax, dword [eax]
cmp byte [edx + eax + 4], 1
je 0x100f5de5
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 0x100f5dd3
mov edx, dword [edi]
sub edx, dword [esi + 0x5c]
push edx
jmp 0x100f673b
movzx edx, byte [ecx]
mov ebx, dword [eax]
cmp byte [ebx + edx + 4], 0x14
jne 0x100f5e87
inc ecx
mov dword [edi], ecx
cmp ecx, ebp
jne 0x100f5e35
dec ecx
mov dword [edi], ecx
movzx edx, byte [ecx]
mov eax, dword [eax]
cmp byte [edx + eax + 4], 1
je 0x100f5e2a
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 0x100f5e18
mov edx, dword [edi]
sub edx, dword [esi + 0x5c]
push edx
jmp 0x100f673b
movzx edx, byte [ecx]
mov ebx, dword [eax]
cmp byte [ebx + edx + 4], 0x25
je 0x100f5e7d
cmp byte [ebx + edx + 4], 0x35
je 0x100f5e7d
dec ecx
mov dword [edi], ecx
movzx edx, byte [ecx]
mov eax, dword [eax]
cmp byte [edx + eax + 4], 1
je 0x100f5e72
mov eax, ecx
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 0x100f5e60
mov edx, dword [edi]
sub edx, dword [esi + 0x5c]
push edx
jmp 0x100f673b
add ecx, 0xfffffffd
mov dword [edi], ecx
jmp 0x100f6360
cmp byte [ebx + edx + 4], 0x25
je 0x100f5ec3
cmp byte [ebx + edx + 4], 0x35
je 0x100f5ec3
dec ecx
mov dword [edi], ecx
movzx edx, byte [ecx]
mov eax, dword [eax]
cmp byte [edx + eax + 4], 1
je 0x100f5eb8
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 0x100f5ea6
mov edx, dword [edi]
sub edx, dword [esi + 0x5c]
push edx
jmp 0x100f673b
add ecx, 0xfffffffe
mov dword [edi], ecx
jmp 0x100f6360
lea eax, [ecx + 1]
mov dword [edi], eax
mov edx, eax
cmp eax, ebp
je 0x100f5eee
mov cl, byte [eax]
cmp cl, 0x3e
je 0x100f5eee
cmp cl, 0x27
je 0x100f5eee
inc eax
mov ecx, eax
mov dword [edi], eax
cmp ecx, dword [esi + 0x60]
jne 0x100f5ed8
mov eax, dword [edi]
cmp eax, ebp
jne 0x100f5f27
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 0x100f6737
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 0x100f5f10
jmp 0x100f6737
push eax
push edx
call fcn.100530b0
add esp, 8
cdq
push 0x10
push 0x1b
mov ecx, esi
mov ebx, eax
mov dword [esp + 0x34], edx
call fcn.100edf80
mov dword [eax + 8], ebx
mov eax, dword [edi]
mov cl, byte [eax]
cmp cl, 0x3e
je 0x100f5f54
cmp cl, 0x27
jne 0x100f5f5e
mov ebx, dword [esi + 0x60]
inc eax
mov dword [edi], eax
cmp eax, ebx
jne 0x100f5fbe
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 0x100f5f83
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 0x100f5f71
push str.Unterminated_named_capture.
lea ecx, [esp + 0x4c]
call fcn.10004660
mov dword [esp + 0xe0], 3
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0x48]
push eax
push ecx
push 0x14
mov ecx, esi
call fcn.100f1ac0
lea ecx, [esp + 0x48]
call fcn.100f0520
jmp 0x100f6744
mov ecx, dword [esi + 4]
movzx ebp, byte [eax]
mov edx, dword [ecx]
cmp byte [edx + ebp + 4], 2
je 0x100f5ff9
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x100f5ff2
lea esp, [esp]
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 0x100f5fe0
mov eax, dword [edi]
jmp 0x100f6737
inc eax
mov dword [edi], eax
cmp eax, ebx
jne 0x100f6360
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x100f6025
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 0x100f6013
mov eax, dword [edi]
jmp 0x100f6737
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 0x100f6737
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 0x100f6045
jmp 0x100f6737
mov cl, byte [esp + 0x16]
mov byte [esp + 0x16], cl
xor ebx, ebx
test dword [eax + 0x18], 0x400000
mov dword [esp + 0x18], ebx
jne 0x100f60ad
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 0x100f60ad
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea edx, [esp + 0x28]
add ecx, 0xfffffffe
mov dword [esp + 0x28], ecx
push edx
lea ecx, [eax + 0x148]
mov dword [esp + 0x30], 0
call fcn.100f4090
mov dword [ebp + 8], ebx
inc dword [edi]
mov eax, dword [edi]
mov ebp, dword [esi + 0x60]
mov ecx, eax
cmp eax, ebp
jne 0x100f60f0
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 0x100f60e2
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 0x100f60d0
mov edx, dword [edi]
sub edx, dword [esi + 0x5c]
push edx
jmp 0x100f673b
mov dl, byte [esp + 0x16]
cmp byte [eax], dl
je 0x100f6100
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x100f60f0
mov eax, dword [edi]
cmp eax, ebp
jne 0x100f6137
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 0x100f6737
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 0x100f6120
jmp 0x100f6737
push ebx
push eax
push ecx
mov ecx, dword [esi]
call fcn.100f4bf0
inc dword [edi]
jmp 0x100f6360
mov al, byte [esp + 0x16]
cmp al, 0x52
jne 0x100f619f
mov eax, dword [edi]
inc eax
mov dword [edi], eax
mov edx, dword [ecx]
mov dword [esp + 0x20], eax
movzx eax, byte [eax]
xor ebx, ebx
cmp byte [eax + edx + 4], 2
mov dword [esp + 0x2c], ebx
je 0x100f62c0
mov eax, dword [esp + 0x20]
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [ecx]
mov ecx, 1
cmp byte [edx + ebx + 4], cl
je 0x100f6198
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 0x100f6186
mov eax, dword [edi]
jmp 0x100f6737
cmp al, 0x26
jne 0x100f6202
mov eax, dword [edi]
inc eax
mov dword [edi], eax
mov dword [esp + 0x20], eax
cmp eax, dword [esi + 0x60]
je 0x100f61c5
movzx ebx, byte [eax]
mov edx, dword [ecx]
cmp byte [ebx + edx + 4], 2
je 0x100f61c5
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x100f61b1
mov eax, dword [edi]
cmp eax, dword [esi + 0x60]
jne 0x100f61f7
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x100f6737
nop
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 0x100f61e0
jmp 0x100f6737
push eax
mov eax, dword [esp + 0x24]
push eax
jmp 0x100f62b1
cmp al, 0x50
jne 0x100f5804
mov eax, dword [edi]
mov edx, dword [esi + 0x60]
inc eax
mov dword [edi], eax
cmp eax, edx
jne 0x100f6249
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [ecx]
mov ecx, 1
cmp byte [edx + ebx + 4], cl
je 0x100f6242
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 0x100f6230
mov eax, dword [edi]
jmp 0x100f6737
cmp byte [eax], 0x3e
jne 0x100f5804
lea ebx, [eax + 1]
mov dword [esp + 0x20], ebx
mov dword [edi], ebx
cmp ebx, edx
je 0x100f627a
nop
mov eax, dword [edi]
movzx ebx, byte [eax]
mov edx, dword [ecx]
cmp byte [ebx + edx + 4], 2
je 0x100f6276
inc eax
mov dword [edi], eax
cmp eax, dword [esi + 0x60]
jne 0x100f6260
mov ebx, dword [esp + 0x20]
mov eax, dword [edi]
cmp eax, dword [esi + 0x60]
jne 0x100f62af
dec eax
mov dword [edi], eax
movzx edx, byte [eax]
mov ebx, dword [ecx]
mov ecx, 1
cmp byte [edx + ebx + 4], cl
je 0x100f6737
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 0x100f6298
jmp 0x100f6737
push eax
push ebx
call fcn.100530b0
cdq
mov dword [esp + 0x34], edx
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.100edf80
mov dword [eax + 8], ebx
mov dword [eax + 0xc], 0
mov eax, dword [esi]
mov ebx, dword [eax + 0x18]
jmp 0x100f6345
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 0x100f632a
push ebx
mov ecx, esi
call fcn.100ec410
mov dl, byte [esi + 0x7c]
or byte [esp + 0x17], dl
mov byte [esp + 0x1f], 0
jmp 0x100f633f
cmp byte [eax + ebp + 4], 0x24
jne 0x100f6714
push ebx
mov ecx, esi
call fcn.100ec410
inc dword [edi]
cmp byte [esi + 0x7c], 0
je 0x100f6360
push 0xc
shr ebx, 0x14
push 0x1c
mov ecx, esi
and bl, 1
call fcn.100edf80
mov byte [eax + 8], bl
lea esp, [esp]
mov eax, dword [edi]
cmp eax, dword [esi + 0x60]
je 0x100f6372
mov edx, dword [esi + 0x58]
mov ecx, esi
call edx
test al, al
jne 0x100f6360
mov eax, dword [esp + 0x30]
push eax
mov ecx, esi
call fcn.100f1cb0
test al, al
jne 0x100f63c5
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 0x100f63a7
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 0x100f6395
push str.Invalid_alternation_operators_within___...__block.
lea ecx, [esp + 0x4c]
call fcn.10004660
mov dword [esp + 0xe0], 4
jmp 0x100f5f9c
mov eax, dword [edi]
mov ecx, dword [esi + 0x60]
cmp eax, ecx
jne 0x100f63fd
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 0x100f63f2
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 0x100f63e0
sub ecx, dword [esi + 0x5c]
push ecx
push 8
jmp 0x100f673d
inc eax
cmp byte [esp + 0x1f], 0
mov dword [edi], eax
je 0x100f6431
cmp byte [esi + 0x7c], 0
je 0x100f6425
mov ebx, dword [esp + 0x34]
push 0xc
shr ebx, 0x14
push 0x1c
mov ecx, esi
and bl, 1
call fcn.100edf80
mov byte [eax + 8], bl
mov eax, dword [esp + 0x34]
push eax
mov ecx, esi
call fcn.100ec410
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x18]
test ebx, ebx
je 0x100f64c6
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 0x100f64c6
cmp ebp, 0xfffffffe
je 0x100f64c6
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 0x100f64a8
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 0x100f6496
push str.Invalid_or_empty_zero_width_assertion.
lea ecx, [esp + 0x4c]
call fcn.10004660
mov dword [esp + 0xe0], 5
jmp 0x100f5f9c
cmp ebp, 0xfffffffc
jne 0x100f668d
mov edx, dword [esi]
mov eax, dword [edx + 0x13c]
mov ebx, dword [esp + 0x38]
add eax, ebx
cmp dword [eax], 0x11
je 0x100f6599
push pe_nt_image_headers32
push 0x11
push ebx
mov ecx, esi
call fcn.100ed230
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 0x100f668d
test eax, eax
je 0x100f668d
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 0x100f6555
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 0x100f6543
push str.A_repetition_operator_cannot_be_applied_to_a_zero_width_assertion.
lea ecx, [esp + 0xbc]
call fcn.10004660
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0xb8]
push eax
push ecx
push 0xd
mov ecx, esi
mov dword [esp + 0xec], 8
call fcn.100f1ac0
lea ecx, [esp + 0xb8]
call fcn.100f0520
jmp 0x100f6744
mov ecx, dword [eax + 8]
cmp dword [eax + ecx], 0x11
jne 0x100f660d
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 0x100f65d2
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 0x100f65c0
push str.More_than_one_alternation_operator__was_encountered_inside_a_conditional_expression.
lea ecx, [esp + 0x4c]
call fcn.10004660
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0x48]
push eax
push ecx
push 2
mov ecx, esi
mov dword [esp + 0xec], 6
call fcn.100f1ac0
lea ecx, [esp + 0x48]
call fcn.100f0520
jmp 0x100f6744
add eax, dword [eax + 4]
cmp dword [eax], 0x1b
jne 0x100f6510
cmp dword [eax + 8], 0x270f
jne 0x100f6510
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 0x100f6652
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 0x100f6640
push str.Alternation_operators_are_not_allowed_inside_a_DEFINE_block.
lea ecx, [esp + 0x4c]
call fcn.10004660
mov ecx, dword [edi]
sub ecx, dword [esi + 0x5c]
lea eax, [esp + 0x48]
push eax
push ecx
push 2
mov ecx, esi
mov dword [esp + 0xec], 7
call fcn.100f1ac0
lea ecx, [esp + 0x48]
call fcn.100f0520
jmp 0x100f6744
push 0x10
push 1
mov ecx, esi
call fcn.100edf80
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 0x100f66c9
mov dword [esi + 0x68], eax
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x3c]
mov dword [esi + 0x6c], edx
mov dword [esi + 0x70], eax
test ebp, ebp
jle 0x100f6710
mov eax, dword [esi]
test dword [eax + 0x18], 0x800000
je 0x100f66fe
mov edi, dword [edi]
sub edi, dword [esi + 0x5c]
lea ecx, [ebp - 1]
push ecx
lea ecx, [eax + 0x148]
dec edi
call fcn.100ec5f0
mov dword [eax + 4], edi
cmp ebp, 0x20
jge 0x100f6710
lea ecx, [ebp - 1]
mov edx, 1
shl edx, cl
or dword [esi + 0x18], edx
mov al, 1
jmp 0x100f6746
lea eax, [edx - 1]
mov dword [edi], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], 1
je 0x100f6737
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 0x100f6725
sub eax, dword [esi + 0x5c]
push eax
push 0x14
mov ecx, esi
call fcn.100f33b0
xor al, al
mov ecx, dword [esp + 0xd8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xc0]
xor ecx, esp
call fcn.1006656c
add esp, 0xd0
ret
push ebx
push esi
mov esi, ecx
mov ecx, dword [esi + 0x60]
mov ebx, 1
add dword [esi + 0x64], ebx
mov eax, dword [esi + 0x64]
cmp eax, ecx
jne 0x100f6830
mov edx, dword [esi + 4]
dec eax
mov dword [esi + 0x64], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], bl
je 0x100f681b
sub eax, ebx
mov dword [esi + 0x64], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
jne 0x100f6808
mov edx, dword [esi + 0x64]
sub edx, dword [esi + 0x5c]
mov ecx, esi
push edx
push 0x14
call fcn.100f33b0
pop esi
xor al, al
pop ebx
ret
movsx edx, byte [eax]
add edx, 0xffffffbf
cmp edx, 0x13
ja case.0x100f6846.66
movzx edx, byte [edx + 0x100f6cf8]
jmp dword [edx*4 + 0x100f6cdc]
inc eax
mov dword [esi + 0x64], eax
cmp eax, ecx
jne 0x100f687c
mov edx, dword [esi + 4]
dec eax
mov dword [esi + 0x64], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], bl
je 0x100f681b
sub eax, ebx
mov dword [esi + 0x64], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
jne 0x100f6867
jmp 0x100f681b
movzx eax, byte [eax]
mov ecx, dword [esi + 4]
mov edx, dword [ecx]
cmp byte [eax + edx + 4], 2
je 0x100f689f
push 0x10121c00
mov ecx, esi
call fcn.100f4990
test al, al
je case.0x100f6846.66
mov eax, dword [esi + 0x64]
cmp eax, dword [esi + 0x60]
je 0x100f68ca
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], 2
jne 0x100f68ca
push 8
inc eax
push 0x1e
mov ecx, esi
mov dword [esi + 0x64], eax
call fcn.100edf80
pop esi
mov al, bl
pop ebx
ret
mov edx, dword [esi + 4]
dec eax
mov dword [esi + 0x64], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], bl
je 0x100f6cc7
sub eax, ebx
mov dword [esi + 0x64], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
jne 0x100f68e0
sub eax, dword [esi + 0x5c]
mov ecx, esi
push eax
push 0x14
call fcn.100f33b0
pop esi
xor al, al
pop ebx
ret
inc eax
mov dword [esi + 0x64], eax
cmp eax, ecx
jne 0x100f6948
mov ecx, dword [esi + 4]
dec eax
mov dword [esi + 0x64], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
je 0x100f6933
nop
sub eax, ebx
mov dword [esi + 0x64], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], bl
jne 0x100f6920
mov eax, dword [esi + 0x64]
sub eax, dword [esi + 0x5c]
mov ecx, esi
push eax
push 0x14
call fcn.100f33b0
pop esi
xor al, al
pop ebx
ret
push str.CCEPT
mov ecx, esi
call fcn.100f4990
test al, al
je case.0x100f6846.66
mov eax, dword [esi + 0x64]
cmp eax, dword [esi + 0x60]
je 0x100f6987
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [ecx + edx + 4], 2
jne 0x100f6987
push 8
inc eax
push 0x1f
mov ecx, esi
mov dword [esi + 0x64], eax
call fcn.100edf80
pop esi
mov al, bl
pop ebx
ret
mov ecx, dword [esi + 4]
dec eax
mov dword [esi + 0x64], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
je 0x100f6cc7
lea ecx, [ecx]
sub eax, ebx
mov dword [esi + 0x64], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], bl
jne 0x100f69a0
sub eax, dword [esi + 0x5c]
mov ecx, esi
push eax
push 0x14
call fcn.100f33b0
pop esi
xor al, al
pop ebx
ret
inc eax
mov dword [esi + 0x64], eax
cmp eax, ecx
jne 0x100f69fb
mov edx, dword [esi + 4]
dec eax
mov dword [esi + 0x64], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], bl
je 0x100f681b
sub eax, ebx
mov dword [esi + 0x64], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
jne 0x100f69e3
jmp 0x100f681b
push str.OMMIT
mov ecx, esi
call fcn.100f4990
test al, al
je case.0x100f6846.66
mov eax, dword [esi + 0x64]
cmp eax, dword [esi + 0x60]
je 0x100f6a49
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [ecx + edx + 4], 2
jne 0x100f6a49
push 0xc
inc eax
push 0x20
mov ecx, esi
mov dword [esi + 0x64], eax
call fcn.100edf80
mov dword [eax + 8], 2
mov edx, dword [esi]
pop esi
mov byte [edx + 0x159], bl
mov al, bl
pop ebx
ret
mov edx, dword [esi + 4]
dec eax
mov dword [esi + 0x64], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], bl
je 0x100f6cc7
nop
sub eax, ebx
mov dword [esi + 0x64], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
jne 0x100f6a60
sub eax, dword [esi + 0x5c]
mov ecx, esi
push eax
push 0x14
call fcn.100f33b0
pop esi
xor al, al
pop ebx
ret
inc eax
mov dword [esi + 0x64], eax
cmp eax, ecx
jne 0x100f6ac8
mov ecx, dword [esi + 4]
dec eax
mov dword [esi + 0x64], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
je 0x100f6ab3
nop
sub eax, ebx
mov dword [esi + 0x64], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], bl
jne 0x100f6aa0
mov eax, dword [esi + 0x64]
sub eax, dword [esi + 0x5c]
mov ecx, esi
push eax
push 0x14
call fcn.100f33b0
pop esi
xor al, al
pop ebx
ret
push str.RUNE
mov ecx, esi
call fcn.100f4990
test al, al
je case.0x100f6846.66
mov eax, dword [esi + 0x64]
cmp eax, dword [esi + 0x60]
je 0x100f6b16
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [ecx + edx + 4], 2
jne 0x100f6b16
push 0xc
inc eax
push 0x20
mov ecx, esi
mov dword [esi + 0x64], eax
call fcn.100edf80
mov dword [eax + 8], 0
mov edx, dword [esi]
pop esi
mov byte [edx + 0x159], bl
mov al, bl
pop ebx
ret
mov edx, dword [esi + 4]
dec eax
mov dword [esi + 0x64], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], bl
je 0x100f6cc7
lea esp, [esp]
sub eax, ebx
mov dword [esi + 0x64], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
jne 0x100f6b30
sub eax, dword [esi + 0x5c]
mov ecx, esi
push eax
push 0x14
call fcn.100f33b0
pop esi
xor al, al
pop ebx
ret
inc eax
mov dword [esi + 0x64], eax
cmp eax, ecx
jne 0x100f6b98
mov ecx, dword [esi + 4]
dec eax
mov dword [esi + 0x64], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
je 0x100f6b83
nop
sub eax, ebx
mov dword [esi + 0x64], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], bl
jne 0x100f6b70
mov eax, dword [esi + 0x64]
sub eax, dword [esi + 0x5c]
mov ecx, esi
push eax
push 0x14
call fcn.100f33b0
pop esi
xor al, al
pop ebx
ret
push 0x10121be4
mov ecx, esi
call fcn.100f4990
test al, al
je case.0x100f6846.66
mov eax, dword [esi + 0x64]
cmp eax, dword [esi + 0x60]
je 0x100f6be2
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [ecx + edx + 4], 2
jne 0x100f6be2
push 0xc
inc eax
push 0x20
mov ecx, esi
mov dword [esi + 0x64], eax
call fcn.100edf80
mov dword [eax + 8], ebx
mov edx, dword [esi]
pop esi
mov byte [edx + 0x159], bl
mov al, bl
pop ebx
ret
mov edx, dword [esi + 4]
dec eax
mov dword [esi + 0x64], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], bl
je 0x100f6cc7
sub eax, ebx
mov dword [esi + 0x64], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
jne 0x100f6bf8
sub eax, dword [esi + 0x5c]
mov ecx, esi
push eax
push 0x14
call fcn.100f33b0
pop esi
xor al, al
pop ebx
ret
inc eax
mov dword [esi + 0x64], eax
cmp eax, ecx
jne 0x100f6c5f
mov ecx, dword [esi + 4]
dec eax
mov dword [esi + 0x64], eax
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
je 0x100f6c4a
sub eax, ebx
mov dword [esi + 0x64], eax
movzx ecx, byte [eax]
mov edx, dword [esi + 4]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], bl
jne 0x100f6c37
mov eax, dword [esi + 0x64]
sub eax, dword [esi + 0x5c]
mov ecx, esi
push eax
push 0x14
call fcn.100f33b0
pop esi
xor al, al
pop ebx
ret
push 0x10121be0
mov ecx, esi
call fcn.100f4990
test al, al
je case.0x100f6846.66
mov eax, dword [esi + 0x64]
cmp eax, dword [esi + 0x60]
je 0x100f6ca2
mov ecx, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [ecx]
cmp byte [ecx + edx + 4], 2
jne 0x100f6ca2
push 8
inc eax
push 0x21
mov ecx, esi
mov dword [esi + 0x64], eax
call fcn.100edf80
mov edx, dword [esi]
pop esi
mov byte [edx + 0x159], bl
mov al, bl
pop ebx
ret
mov edx, dword [esi + 4]
dec eax
mov dword [esi + 0x64], eax
movzx ecx, byte [eax]
mov edx, dword [edx]
cmp byte [ecx + edx + 4], bl
je 0x100f6cc7
sub eax, ebx
mov dword [esi + 0x64], eax
movzx edx, byte [eax]
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp byte [edx + ecx + 4], bl
jne 0x100f6cb4
sub eax, dword [esi + 0x5c]
mov ecx, esi
push eax
push 0x14
call fcn.100f33b0
pop esi
xor al, al
pop ebx
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 0x100f9cea
sub eax, dword [esi + 0x5c]
push eax
push 8
call fcn.100f33b0
pop esi
xor al, al
pop ebx
add esp, 0x14
ret
mov ecx, dword [esi]
push ebp
mov ebp, dword [ecx + 0x18]
push edi
test ebp, 0x203
je 0x100f9d09
mov edx, ebp
and edx, 0x1003
cmp edx, 0x1001
jne 0x100f9d3b
mov edx, dword [esi + 4]
movzx edi, byte [eax]
mov edx, dword [edx]
mov dl, byte [edx + edi + 4]
cmp dl, 8
jne 0x100f9d28
pop edi
pop ebp
mov ecx, esi
pop esi
pop ebx
add esp, 0x14
jmp 0x100f5520
cmp dl, 6
jne 0x100f9d3b
pop edi
pop ebp
mov ecx, esi
pop esi
pop ebx
add esp, 0x14
jmp 0x100f67e0
xor edi, edi
test ebp, 0x400000
jne 0x100f9d75
add dword [esi + 0x68], ebx
test dword [ecx + 0x18], 0x800000
mov edi, dword [esi + 0x68]
je 0x100f9d75
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.100f4090
push 0x10
push 0
mov ecx, esi
call fcn.100edf80
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
mov edi, edi
mov ecx, dword [esi + 0x64]
cmp ecx, dword [esi + 0x60]
je 0x100f9e03
mov edx, dword [esi + 0x58]
mov ecx, esi
call edx
test al, al
jne 0x100f9df0
push ebx
mov ecx, esi
call fcn.100f1cb0
test al, al
je 0x100f9e68
cmp byte [esi + 0x7c], 0
je 0x100f9e2f
mov ebx, ebp
push 0xc
shr ebx, 0x14
push 0x1c
mov ecx, esi
and bl, 1
call fcn.100edf80
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 0x100f9e43
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 0x100f9e72
sub ecx, dword [esi + 0x5c]
push ecx
push 8
mov ecx, esi
call fcn.100f33b0
pop edi
pop ebp
pop esi
xor al, al
pop ebx
add esp, 0x14
ret
test edi, edi
je 0x100f9e98
mov ecx, dword [esi]
test dword [ecx + 0x18], 0x800000
je 0x100f9e98
sub eax, dword [esi + 0x5c]
lea edx, [edi - 1]
push edx
add ecx, 0x148
mov ebp, eax
call fcn.100ec5f0
mov dword [eax + 4], ebp
inc dword [esi + 0x64]
push 0x10
push 1
mov ecx, esi
call fcn.100edf80
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 0x100f9ed3
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