Function at 0x30166e20
Capabilities:
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x30
push ebx
push ebp
push esi
push edi
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
mov ebp, eax
mov eax, dword [esp + 0x48]
mov dword [ebp], 0
mov dword [ebp + 4], eax
mov eax, dword [esp + 0x54]
mov dword [ebp + 8], ecx
mov ecx, dword [esp + 0x5c]
mov dword [ebp + 0xc], edx
mov edx, dword [esp + 0x60]
mov dword [ebp + 0x10], eax
mov eax, dword [esp + 0x64]
mov dword [ebp + 0x14], ecx
mov ecx, dword [esp + 0x68]
mov dword [ebp + 0x18], edx
mov dword [ebp + 0x1c], eax
add esp, 4
mov dword [ebp + 0x20], ecx
mov ecx, dword [esp + 0x54]
mov edx, dword [ecx + 0x38]
mov eax, dword [ecx]
mov dword [esp + 0x48], edx
mov edx, dword [ecx + 4]
cmp eax, edx
lea esi, [eax + 1]
jmp 0x30166e90
mov dword [ecx], esi
jb 0x30166eb5
mov eax, ebp
mov ebp, dword [ebp]
push eax
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test ebp, ebp
je 0x3016c28e
mov esi, 0xfffffff8
jmp 0x3016a76d
mov eax, dword [ebp + 0x20]
cmp eax, dword [ecx + 8]
jb 0x30166ede
mov eax, ebp
mov ebp, dword [ebp]
push eax
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test ebp, ebp
je 0x3016c29b
mov esi, 0xffffffeb
jmp 0x3016a76d
mov ecx, dword [ebp + 0x14]
mov dword [ebp + 0x64], ecx
test byte [ebp + 0x1c], 2
je 0x30166f01
mov edx, dword [ebp + 4]
mov dword [ebp + 0x194], edx
mov ecx, dword [ebp + 0x18]
lea eax, [ebp + 0x190]
mov dword [eax], ecx
mov dword [ebp + 0x18], eax
mov eax, dword [ebp + 8]
movzx ecx, byte [eax]
mov ebx, dword [esp + 0x54]
xor edx, edx
mov dword [ebp + 0x88], ecx
mov eax, dword [ebx + 0x44]
xor esi, esi
cmp eax, edx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x50], esi
je 0x30166f3b
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jb 0x30166f3b
cmp eax, dword [ebp + 0xc]
jbe 0x30166f3b
mov edi, 1
mov dword [ebx + 0x48], edi
jmp 0x30166f40
mov edi, 1
mov eax, dword [ebp + 0x88]
cmp eax, 0x6d
ja case.0x30166f56.14
movzx eax, byte [eax + 0x3016c438]
jmp dword [eax*4 + 0x3016c324]
mov eax, dword [ebp + 8]
mov cl, byte [eax + 3]
cmp cl, 0x64
jne 0x30166fa8
movzx esi, byte [eax + 5]
xor ecx, ecx
mov ch, byte [eax + 4]
mov eax, ecx
or eax, esi
mov dword [ebp + 0x84], eax
mov ecx, dword [ebx + 0x74]
cmp ecx, edx
je 0x30166f92
cmp eax, 0xffff
je 0x30166f8e
cmp eax, dword [ecx + 4]
jne 0x30166f92
mov eax, edi
jmp 0x30166f94
xor eax, eax
cmp eax, edx
mov dword [ebp + 0x5c], eax
je 0x30166fcf
mov ecx, dword [ebp + 8]
mov eax, 3
jmp 0x3016a87e
cmp cl, 0x63
jne 0x30166fe4
xor ecx, ecx
mov ch, byte [eax + 4]
mov cl, byte [eax + 5]
lea eax, [ecx + ecx]
mov dword [ebp + 0x84], eax
cmp eax, dword [ebp + 0x10]
jge 0x30166f92
mov ecx, dword [ebx + 0xc]
cmp dword [ecx + eax*4], edx
jl 0x30166f92
mov eax, edi
jmp 0x30166f94
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
xor edx, edx
mov dh, byte [eax + 1]
mov dl, byte [eax + 2]
mov eax, edx
jmp 0x3016a87e
cmp cl, 0x65
jne 0x3016bc90
mov dword [ebp + 0x5c], edx
jmp 0x3016a873
mov esi, dword [ebx + 0x74]
test esi, esi
je 0x30167036
mov eax, dword [esi + 4]
test eax, eax
jne 0x30167036
mov edx, dword [esi]
mov dword [ebx + 0x74], edx
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x10]
mov edx, dword [ebx + 0xc]
shl eax, 2
push eax
push ecx
push edx
call fcn.3009e2de
mov eax, dword [esi + 0xc]
mov dword [ebp + 0xc], eax
mov ecx, dword [ebp + 0x64]
mov dword [ebp + 0x14], ecx
mov edx, dword [esi + 8]
add esp, 0xc
mov dword [ebp + 8], edx
jmp 0x30166f01
mov eax, dword [ebx + 0x40]
test eax, eax
je 0x30167049
mov eax, dword [ebp + 4]
cmp eax, dword [ebp + 0xc]
je case.0x3016b742.14
mov ecx, dword [ebp + 4]
mov dword [ebx + 0x5c], ecx
mov edx, dword [ebp + 0xc]
mov dword [ebx + 0x58], edx
jmp 0x30167433
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 1]
mov dword [ebp + 0x14], ecx
add dword [ebp + 8], 2
jmp 0x30166f01
mov eax, dword [esp + 0x48]
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp + 8]
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
je 0x301670be
cmp ecx, edx
jle 0x301670d3
mov esi, dword [ebp + 4]
dec ecx
dec esi
mov dword [ebp + 4], esi
mov edx, dword [ebx + 0x50]
mov eax, esi
cmp eax, edx
jb case.0x3016b742.14
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x301670b1
dec eax
mov dword [ebp + 4], eax
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
je 0x301670a3
test ecx, ecx
jg 0x30167084
add dword [ebp + 8], 3
jmp 0x30166f01
mov edx, dword [ebp + 4]
sub edx, ecx
mov dword [ebp + 4], edx
mov ecx, dword [ebx + 0x50]
mov eax, edx
cmp eax, ecx
jb case.0x3016b742.14
add dword [ebp + 8], 3
jmp 0x30166f01
mov ecx, dword [sym.npswf32.dll_pcre_callout]
cmp ecx, edx
je 0x30167198
mov dword [esp + 0x10], edi
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 1]
mov dword [esp + 0x14], eax
mov edx, dword [ebx + 0xc]
mov dword [esp + 0x18], edx
mov eax, dword [ebx + 0x50]
mov dword [esp + 0x1c], eax
mov edx, dword [ebx + 0x54]
sub edx, dword [ebx + 0x50]
mov dword [esp + 0x20], edx
mov edx, dword [ebx + 0x50]
mov eax, dword [ebp + 0xc]
sub eax, edx
mov dword [esp + 0x24], eax
mov eax, dword [ebx + 0x50]
mov edx, dword [ebp + 4]
sub edx, eax
mov dword [esp + 0x28], edx
mov eax, dword [ebp + 8]
xor edx, edx
mov dh, byte [eax + 2]
mov dl, byte [eax + 3]
mov dword [esp + 0x38], edx
mov eax, dword [ebp + 8]
xor edx, edx
mov dh, byte [eax + 4]
mov dl, byte [eax + 5]
mov dword [esp + 0x3c], edx
mov eax, dword [ebp + 0x10]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + 0x64]
mov dword [esp + 0x30], eax
mov edx, dword [ebx + 0x78]
lea eax, [esp + 0x10]
push eax
mov dword [esp + 0x38], edx
call ecx
mov esi, eax
add esp, 4
test esi, esi
jg case.0x3016b742.14
jge 0x30167198
mov eax, ebp
mov ebp, dword [ebp]
push eax
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test ebp, ebp
jne 0x3016a76d
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
add dword [ebp + 8], 6
jmp 0x30166f01
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
mov eax, dword [ebx + 0x4c]
add eax, ecx
mov dword [ebp + 0x24], eax
cmp eax, dword [ebx + 0x4c]
jne 0x301671bd
xor eax, eax
jmp 0x301671c7
xor ecx, ecx
mov ch, byte [eax + 3]
mov cl, byte [eax + 4]
mov eax, ecx
mov dword [ebp + 0x44], eax
mov edx, dword [ebx + 0x74]
mov dword [ebp + 0x40], edx
lea eax, [ebp + 0x40]
mov dword [ebx + 0x74], eax
mov edx, dword [ebp + 8]
add edx, 3
mov dword [ebp + 8], edx
mov eax, edx
mov dword [ebp + 0x48], eax
mov eax, dword [ebx + 0x10]
cmp eax, 0x1e
mov dword [ebp + 0x54], eax
jle 0x3016bce3
shl eax, 2
push eax
call dword [sym.npswf32.dll_pcre_malloc]
add esp, 4
test eax, eax
mov dword [ebp + 0x50], eax
jne 0x3016bcec
mov eax, ebp
mov ebp, dword [ebp]
push eax
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test ebp, ebp
je 0x3016c2bc
mov esi, 0xfffffffa
jmp 0x3016a76d
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
mov dword [ebp + 8], eax
cmp byte [eax], 0x53
je case.0x30166f56.83
jmp 0x30166f01
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
sub eax, ecx
mov dword [ebp + 0x38], eax
cmp byte [eax], 0x60
jb 0x30167272
mov eax, dword [ebp + 0x18]
mov ecx, dword [eax + 4]
mov dword [ebp + 0x3c], ecx
mov eax, dword [ebp + 0x18]
mov ecx, dword [eax]
mov dword [ebp + 0x18], ecx
jmp 0x30167275
mov dword [ebp + 0x3c], edx
mov ecx, dword [ebp + 0x38]
mov al, byte [ecx]
cmp al, 0x57
je 0x30167392
cmp al, 0x58
je 0x30167392
cmp al, 0x59
je 0x30167392
cmp al, 0x5a
je 0x30167392
cmp al, 0x5c
je 0x30167392
cmp al, 0x5e
je 0x301672ae
cmp al, 0x61
jne 0x3016736d
xor eax, eax
mov ah, byte [ecx + 3]
movzx ecx, byte [ecx + 4]
or eax, ecx
mov dword [ebp + 0x80], eax
add eax, eax
mov dword [ebp + 0x84], eax
mov ecx, dword [ebp + 0x80]
mov dword [ebx + 0x64], ecx
mov ecx, dword [ebp + 0x84]
cmp ecx, dword [ebx + 0x14]
jl 0x301672e0
mov dword [ebx + 0x2c], edi
jmp 0x30167325
mov esi, dword [ebx + 0x10]
mov edi, dword [ebp + 0x80]
mov eax, dword [ebx + 0xc]
sub esi, edi
mov esi, dword [eax + esi*4]
mov dword [eax + ecx*4], esi
mov esi, dword [ebx + 0x50]
mov eax, dword [ebp + 4]
mov ecx, dword [ebp + 0x84]
sub eax, esi
mov esi, dword [ebx + 0xc]
mov dword [esi + ecx*4 + 4], eax
mov eax, dword [ebp + 0x84]
cmp dword [ebp + 0x10], eax
jg 0x3016731a
add eax, 2
mov dword [ebp + 0x10], eax
mov eax, dword [ebp + 0x10]
cmp eax, dword [ebx + 0x60]
jle 0x30167325
mov dword [ebx + 0x60], eax
mov eax, dword [ebx + 0x74]
cmp eax, edx
je 0x3016736d
mov edx, dword [eax + 4]
cmp edx, dword [ebp + 0x80]
jne 0x3016736d
mov ecx, dword [eax]
mov dword [ebx + 0x74], ecx
mov edx, dword [eax + 0xc]
mov dword [ebp + 0xc], edx
mov ecx, dword [eax + 0x14]
mov esi, dword [eax + 0x10]
mov edi, dword [ebx + 0xc]
shl ecx, 2
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [eax + 8]
mov dword [ebp + 8], eax
mov ecx, dword [ebp + 0x64]
mov dword [ebp + 0x14], ecx
jmp 0x30166f01
mov edx, dword [ebp + 0x64]
mov dword [ebp + 0x14], edx
mov eax, dword [ebp + 8]
cmp byte [eax], 0x54
je 0x30167387
mov ecx, dword [ebp + 4]
cmp ecx, dword [ebp + 0x3c]
jne 0x3016be1e
add eax, 3
mov dword [ebp + 8], eax
jmp 0x30166f01
mov edx, dword [ebp + 4]
mov dword [ebx + 0x5c], edx
mov eax, dword [ebp + 0x38]
mov cl, byte [eax]
cmp cl, 0x5c
je 0x30167433
cmp cl, 0x58
je 0x301673b4
cmp cl, 0x5a
je 0x301673b4
xor dl, dl
jmp 0x301673b6
mov dl, 1
cmp eax, dword [ebp + 8]
jae 0x30167423
mov esi, dword [esp + 0x48]
nop
mov cl, byte [eax]
cmp cl, 0x5e
je 0x3016745b
cmp cl, 0x61
je 0x3016745b
movzx ecx, cl
movzx edi, byte [ecx + 0x30258fb8]
add eax, edi
test esi, esi
mov dword [ebp + 0x38], eax
je case.0x301673f6.29
add ecx, 0xffffffe5
cmp ecx, 0x34
ja case.0x301673f6.29
movzx ecx, byte [ecx + 0x3016c4b4]
jmp dword [ecx*4 + 0x3016c4a8]
xor ecx, ecx
mov cl, byte [eax - 1]
cmp cl, 0xc0
jb case.0x301673f6.29
and ecx, 0x3f
movzx ecx, byte [ecx + 0x30259078]
add ecx, eax
mov dword [ebp + 0x38], ecx
mov edi, 1
mov eax, dword [ebp + 0x38]
cmp eax, dword [ebp + 8]
jb 0x301673c0
mov eax, dword [ebp + 8]
xor edx, edx
mov dh, byte [eax + 1]
mov dl, byte [eax + 2]
sub eax, edx
mov dword [ebp + 0x38], eax
mov eax, ebp
mov ebp, dword [ebp]
push eax
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test ebp, ebp
je 0x3016c2b2
mov esi, edi
jmp 0x3016a76d
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
jmp 0x30167411
xor ecx, ecx
test dl, dl
mov ch, byte [eax + 3]
mov cl, byte [eax + 4]
lea eax, [ecx + ecx]
mov dword [ebp + 0x84], eax
je 0x3016748b
mov ecx, dword [ebx + 0xc]
mov dword [ecx + eax*4], 0xffffffff
mov eax, dword [ebp + 0x84]
mov ecx, dword [ebx + 0xc]
mov dword [ecx + eax*4 + 4], 0xffffffff
mov eax, dword [ebp + 0x38]
movzx ecx, byte [eax]
movzx ecx, byte [ecx + 0x30258fb8]
add ecx, eax
mov dword [ebp + 0x38], ecx
jmp 0x3016741b
cmp dword [ebx + 0x30], edx
je 0x301674b3
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x50]
je case.0x3016b742.14
test byte [ebp + 0x14], 2
je case.0x30166f56.1
mov eax, dword [ebp + 4]
mov ecx, dword [ebx + 0x50]
cmp eax, ecx
je 0x3016754f
cmp eax, dword [ebx + 0x54]
je case.0x3016b742.14
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x301674fc
cmp eax, ecx
jbe case.0x3016b742.14
mov esi, dword [esp + 0x48]
push esi
add ebx, 0x1c
push ebx
push ecx
push edx
push eax
call fcn.30195010
add esp, 0x14
test eax, eax
jne 0x3016754f
jmp case.0x3016b742.14
mov edx, dword [ebx + 0x1c]
add ecx, edx
cmp eax, ecx
jb case.0x3016b742.14
sub eax, edx
mov cl, byte [eax]
cmp cl, byte [ebx + 0x20]
jne case.0x3016b742.14
cmp edx, 1
je 0x3016754f
mov dl, byte [eax + 1]
cmp dl, byte [ebx + 0x21]
je 0x3016754f
jmp case.0x3016b742.14
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x50]
je 0x3016754f
jmp case.0x3016b742.14
mov ecx, dword [ebx + 0x68]
mov edx, dword [ebx + 0x50]
mov eax, dword [ebp + 4]
add ecx, edx
cmp eax, ecx
je 0x3016754f
jmp case.0x3016b742.14
mov edx, dword [ebp + 4]
mov dword [ebp + 0xc], edx
inc dword [ebp + 8]
jmp 0x30166f01
test byte [ebp + 0x14], 2
je 0x301675bf
mov ecx, dword [ebp + 4]
mov eax, dword [ebx + 0x54]
cmp ecx, eax
jae 0x301675b5
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x3016758b
mov esi, dword [esp + 0x48]
push esi
add ebx, 0x1c
push ebx
push eax
push edx
push ecx
call fcn.30194ee0
add esp, 0x14
test eax, eax
jne 0x3016754f
jmp case.0x3016b742.14
mov edx, dword [ebx + 0x1c]
sub eax, edx
cmp ecx, eax
ja case.0x3016b742.14
mov al, byte [ecx]
cmp al, byte [ebx + 0x20]
jne case.0x3016b742.14
cmp edx, 1
je 0x3016754f
mov cl, byte [ecx + 1]
cmp cl, byte [ebx + 0x21]
je 0x3016754f
jmp case.0x3016b742.14
cmp dword [ebx + 0x34], edx
je 0x3016754f
jmp case.0x3016b742.14
cmp dword [ebx + 0x34], edx
jne case.0x3016b742.14
cmp dword [ebx + 0x3c], edx
jne case.0x30166f56.23
mov ecx, dword [ebp + 4]
mov eax, dword [ebx + 0x54]
cmp ecx, eax
je 0x3016754f
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x30167607
cmp ecx, eax
jae case.0x3016b742.14
mov edi, dword [esp + 0x48]
push edi
lea esi, [ebx + 0x1c]
push esi
push eax
push edx
push ecx
call fcn.30194ee0
add esp, 0x14
test eax, eax
jne 0x30167633
jmp case.0x3016b742.14
mov edx, dword [ebx + 0x1c]
lea esi, [ebx + 0x1c]
sub eax, edx
cmp ecx, eax
ja case.0x3016b742.14
mov al, byte [ecx]
cmp al, byte [ebx + 0x20]
jne case.0x3016b742.14
cmp edx, 1
je 0x30167633
mov cl, byte [ecx + 1]
cmp cl, byte [ebx + 0x21]
jne case.0x3016b742.14
mov edx, dword [ebx + 0x54]
mov ecx, dword [esi]
mov eax, dword [ebp + 4]
sub edx, ecx
cmp eax, edx
je 0x3016754f
jmp case.0x3016b742.14
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae 0x3016754f
jmp case.0x3016b742.14
mov ecx, dword [ebp + 4]
mov eax, dword [ebx + 0x54]
cmp ecx, eax
je 0x3016754f
mov edx, dword [ebx + 0x18]
test edx, edx
jne 0x301675e2
jmp 0x30167607
cmp dword [esp + 0x48], edx
je 0x30167790
mov edx, dword [ebp + 4]
cmp edx, dword [ebx + 0x50]
jne 0x30167694
mov dword [ebp + 0x60], 0
jmp 0x30167719
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
jne 0x301676ac
mov edi, edi
mov cl, byte [edx - 1]
dec edx
and cl, 0xc0
cmp cl, 0x80
je 0x301676a0
movzx edi, byte [edx]
cmp edi, 0xc0
jb 0x301676f4
mov eax, edi
and eax, 0x3f
movzx esi, byte [eax + 0x30259078]
mov eax, dword [esi*4 + 0x3025905c]
and eax, edi
lea ecx, [esi + esi*2]
shl ecx, 1
shl eax, cl
mov edi, eax
mov eax, 1
cmp esi, eax
jl 0x301676f4
mov edi, edi
xor ebx, ebx
mov bl, byte [eax + edx]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
cmp eax, esi
jle 0x301676e0
cmp edi, 0x100
jae 0x30167710
mov ecx, dword [esp + 0x54]
mov edx, dword [ecx + 0x28]
test byte [edi + edx], 0x10
je 0x30167710
mov eax, 1
jmp 0x30167712
xor eax, eax
mov ebx, dword [esp + 0x54]
mov dword [ebp + 0x60], eax
mov edx, dword [ebp + 4]
cmp edx, dword [ebx + 0x54]
jb 0x3016772d
mov dword [ebp + 0x58], 0
jmp 0x301677cb
movzx edi, byte [edx]
cmp edi, 0xc0
jb 0x30167774
mov eax, edi
and eax, 0x3f
movzx esi, byte [eax + 0x30259078]
mov eax, dword [esi*4 + 0x3025905c]
and eax, edi
lea ecx, [esi + esi*2]
shl ecx, 1
shl eax, cl
mov edi, eax
mov eax, 1
cmp esi, eax
jl 0x30167774
nop
xor ebx, ebx
mov bl, byte [eax + edx]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
cmp eax, esi
jle 0x30167760
cmp edi, 0x100
jae 0x301677c6
mov ecx, dword [esp + 0x54]
mov edx, dword [ecx + 0x28]
test byte [edi + edx], 0x10
je 0x301677c6
mov eax, 1
jmp 0x301677c8
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x50]
je 0x301677a9
movzx eax, byte [eax - 1]
mov ecx, dword [ebx + 0x28]
test byte [eax + ecx], 0x10
je 0x301677a9
mov eax, edi
jmp 0x301677ab
xor eax, eax
mov dword [ebp + 0x60], eax
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae 0x301677c6
movzx eax, byte [eax]
mov ecx, dword [ebx + 0x28]
test byte [eax + ecx], 0x10
je 0x301677c6
mov eax, edi
jmp 0x301677c8
xor eax, eax
mov dword [ebp + 0x58], eax
mov eax, dword [ebp + 8]
mov dl, byte [eax]
inc eax
cmp dl, 5
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0x58]
jne 0x301677e6
sub eax, dword [ebp + 0x60]
neg eax
sbb eax, eax
inc eax
jmp 0x301677f2
mov edx, dword [ebp + 0x60]
xor ecx, ecx
cmp eax, edx
setne cl
mov eax, ecx
test eax, eax
je 0x30166f01
jmp case.0x3016b742.14
test byte [ebp + 0x14], 4
jne 0x3016785c
mov edx, dword [ebx + 0x18]
test edx, edx
mov eax, dword [ebp + 4]
je 0x30167834
mov ecx, dword [ebx + 0x54]
cmp eax, ecx
jae 0x3016785c
mov esi, dword [esp + 0x48]
push esi
lea esi, [ebx + 0x1c]
push esi
push ecx
push edx
push eax
call fcn.30194ee0
add esp, 0x14
test eax, eax
jne case.0x3016b742.14
jmp 0x3016785c
mov ecx, dword [ebx + 0x1c]
mov edx, dword [ebx + 0x54]
sub edx, ecx
cmp eax, edx
ja 0x3016785c
mov dl, byte [eax]
cmp dl, byte [ebx + 0x20]
jne 0x3016785c
cmp ecx, 1
je case.0x3016b742.14
mov al, byte [eax + 1]
cmp al, byte [ebx + 0x21]
je case.0x3016b742.14
mov ecx, dword [ebp + 4]
mov edx, dword [ebx + 0x54]
cmp ecx, edx
lea eax, [ecx + 1]
mov dword [ebp + 4], eax
jae case.0x3016b742.14
mov ecx, dword [esp + 0x48]
test ecx, ecx
je 0x30167893
cmp eax, dword [ebx + 0x54]
jae 0x30167893
lea ecx, [ecx]
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
jne 0x30167893
inc eax
mov dword [ebp + 4], eax
cmp eax, dword [ebx + 0x54]
jb 0x30167880
inc dword [ebp + 8]
jmp 0x30166f01
mov eax, dword [ebp + 4]
mov edx, dword [ebx + 0x54]
cmp eax, edx
lea ecx, [eax + 1]
mov dword [ebp + 4], ecx
jb 0x3016754f
jmp case.0x3016b742.14
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx edi, byte [eax]
mov ecx, dword [esp + 0x48]
inc eax
test ecx, ecx
mov dword [ebp + 4], eax
je 0x3016791b
cmp edi, 0xc0
jb 0x3016791b
mov edx, edi
and edx, 0x3f
movzx edx, byte [edx + 0x30259078]
mov ecx, dword [edx*4 + 0x3025905c]
and ecx, edi
lea esi, [edx + edx*2]
shl esi, 1
mov edi, ecx
mov ecx, esi
shl edi, cl
test edx, edx
jle 0x3016791b
jmp 0x30167900
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30167900
mov ebx, dword [esp + 0x54]
cmp edi, 0x100
jae 0x3016754f
mov eax, dword [ebx + 0x28]
test byte [edi + eax], 4
jmp 0x3016763f
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx edi, byte [eax]
mov ecx, dword [esp + 0x48]
inc eax
test ecx, ecx
mov dword [ebp + 4], eax
je 0x3016799b
cmp edi, 0xc0
jb 0x3016799b
mov ecx, edi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ecx, dword [edx*4 + 0x3025905c]
and ecx, edi
lea esi, [edx + edx*2]
shl esi, 1
mov edi, ecx
mov ecx, esi
shl edi, cl
test edx, edx
jle 0x3016799b
lea ebx, [ebx]
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30167980
mov ebx, dword [esp + 0x54]
cmp edi, 0x100
jae case.0x3016b742.14
mov edx, dword [ebx + 0x28]
test byte [edi + edx], 4
je case.0x3016b742.14
inc dword [ebp + 8]
jmp 0x30166f01
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx edi, byte [eax]
mov ecx, dword [esp + 0x48]
inc eax
test ecx, ecx
mov dword [ebp + 4], eax
je 0x30167a1e
cmp edi, 0xc0
jb 0x30167a1e
mov ecx, edi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ecx, dword [edx*4 + 0x3025905c]
and ecx, edi
lea esi, [edx + edx*2]
shl esi, 1
mov edi, ecx
mov ecx, esi
shl edi, cl
test edx, edx
jle 0x30167a1e
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30167a03
mov ebx, dword [esp + 0x54]
cmp edi, 0x100
jae 0x30167a32
mov edx, dword [ebx + 0x28]
test byte [edi + edx], 1
jmp 0x3016763f
push edi
call fcn.30166d70
add esp, 4
cmp al, 1
jne 0x3016754f
jmp case.0x3016b742.14
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx edi, byte [eax]
mov ecx, dword [esp + 0x48]
inc eax
test ecx, ecx
mov dword [ebp + 4], eax
je 0x30167aab
cmp edi, 0xc0
jb 0x30167aab
mov ecx, edi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ecx, dword [edx*4 + 0x3025905c]
and ecx, edi
lea esi, [edx + edx*2]
shl esi, 1
mov edi, ecx
mov ecx, esi
shl edi, cl
test edx, edx
jle 0x30167aab
nop
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30167a90
mov ebx, dword [esp + 0x54]
cmp edi, 0x100
jae 0x30167ac5
mov edx, dword [ebx + 0x28]
test byte [edi + edx], 1
jne 0x3016754f
jmp case.0x3016b742.14
push edi
call fcn.30166d70
add esp, 4
test al, al
jne 0x3016754f
jmp case.0x3016b742.14
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx edi, byte [eax]
mov ecx, dword [esp + 0x48]
inc eax
test ecx, ecx
mov dword [ebp + 4], eax
je 0x30167b3d
cmp edi, 0xc0
jb 0x30167b3d
mov ecx, edi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ecx, dword [edx*4 + 0x3025905c]
and ecx, edi
lea esi, [edx + edx*2]
shl esi, 1
mov edi, ecx
mov ecx, esi
shl edi, cl
test edx, edx
jle 0x30167b3d
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30167b22
mov ebx, dword [esp + 0x54]
cmp edi, 0x100
jae 0x3016754f
mov edx, dword [ebx + 0x28]
test byte [edi + edx], 0x10
jmp 0x3016763f
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx edi, byte [eax]
mov ecx, dword [esp + 0x48]
inc eax
test ecx, ecx
mov dword [ebp + 4], eax
je 0x30167bbb
cmp edi, 0xc0
jb 0x30167bbb
mov ecx, edi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ecx, dword [edx*4 + 0x3025905c]
and ecx, edi
lea esi, [edx + edx*2]
shl esi, 1
mov edi, ecx
mov ecx, esi
shl edi, cl
test edx, edx
jle 0x30167bbb
lea esp, [esp]
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30167ba0
mov ebx, dword [esp + 0x54]
cmp edi, 0x100
jae case.0x3016b742.14
mov edx, dword [ebx + 0x28]
test byte [edi + edx], 0x10
je case.0x3016b742.14
inc dword [ebp + 8]
jmp 0x30166f01
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx esi, byte [eax]
mov ecx, dword [esp + 0x48]
inc eax
test ecx, ecx
mov dword [ebp + 4], eax
je 0x30167c3e
cmp esi, 0xc0
jb 0x30167c3e
mov ecx, esi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ecx, dword [edx*4 + 0x3025905c]
and ecx, esi
lea edi, [edx + edx*2]
shl edi, 1
mov esi, ecx
mov ecx, edi
shl esi, cl
test edx, edx
jle 0x30167c3e
xor ebx, ebx
mov bl, byte [eax]
sub edi, 6
mov ecx, edi
and ebx, 0x3f
shl ebx, cl
or esi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30167c23
mov ebx, dword [esp + 0x54]
cmp esi, 0x85
ja 0x30167c75
je 0x30167c8d
cmp esi, 0xa
jb case.0x3016b742.14
cmp esi, 0xc
jbe 0x30167c8d
cmp esi, 0xd
jne case.0x3016b742.14
cmp eax, dword [ebx + 0x54]
jae 0x30167c8d
cmp byte [eax], 0xa
jne 0x30167c8d
inc eax
mov dword [ebp + 4], eax
inc dword [ebp + 8]
jmp 0x30166f01
cmp esi, 0x2028
jb case.0x3016b742.14
cmp esi, 0x2029
ja case.0x3016b742.14
inc dword [ebp + 8]
jmp 0x30166f01
mov esi, dword [ebp + 4]
cmp esi, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx eax, byte [esi]
mov ecx, dword [esp + 0x48]
inc esi
test ecx, ecx
mov dword [ebp + 4], esi
je 0x30167cf7
cmp eax, 0xc0
jb 0x30167cf7
mov edx, eax
and edx, 0x3f
movzx edx, byte [edx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea edi, [edx + edx*2]
shl edi, 1
and ebx, eax
mov ecx, edi
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x30167cf7
jmp 0x30167ce0
xor ebx, ebx
mov bl, byte [esi]
sub edi, 6
mov ecx, edi
and ebx, 0x3f
shl ebx, cl
or eax, ebx
inc esi
dec edx
mov dword [ebp + 4], esi
jne 0x30167ce0
cmp eax, 0x180e
ja 0x30167d26
je case.0x3016b742.14
cmp eax, 0xa0
ja 0x30167d1f
je case.0x3016b742.14
cmp eax, 9
je case.0x3016b742.14
cmp eax, 0x20
jmp 0x30167d51
cmp eax, 0x1680
jmp 0x30167d51
cmp eax, 0x205f
ja 0x30167d4c
je case.0x3016b742.14
cmp eax, 0x2000
jb 0x30167d57
cmp eax, 0x200a
jbe case.0x3016b742.14
cmp eax, 0x202f
jmp 0x30167d51
cmp eax, 0x3000
je case.0x3016b742.14
inc dword [ebp + 8]
jmp 0x30166f01
mov esi, dword [ebp + 4]
cmp esi, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx eax, byte [esi]
mov ecx, dword [esp + 0x48]
inc esi
test ecx, ecx
mov dword [ebp + 4], esi
je 0x30167dbc
cmp eax, 0xc0
jb 0x30167dbc
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea edi, [edx + edx*2]
shl edi, 1
and ebx, eax
mov ecx, edi
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x30167dbc
xor ebx, ebx
mov bl, byte [esi]
sub edi, 6
mov ecx, edi
and ebx, 0x3f
shl ebx, cl
or eax, ebx
inc esi
dec edx
mov dword [ebp + 4], esi
jne 0x30167da5
cmp eax, 0x180e
ja 0x30167df1
je 0x3016754f
cmp eax, 0xa0
ja 0x30167de7
je 0x3016754f
cmp eax, 9
je 0x3016754f
cmp eax, 0x20
jmp 0x3016763f
cmp eax, 0x1680
jmp 0x3016763f
cmp eax, 0x205f
ja 0x30167e1e
je 0x3016754f
cmp eax, 0x2000
jb case.0x3016b742.14
cmp eax, 0x200a
jbe 0x3016754f
cmp eax, 0x202f
jmp 0x3016763f
cmp eax, 0x3000
jmp 0x3016763f
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx esi, byte [eax]
mov ecx, dword [esp + 0x48]
inc eax
test ecx, ecx
mov dword [ebp + 4], eax
je 0x30167e87
cmp esi, 0xc0
jb 0x30167e87
mov edx, esi
and edx, 0x3f
movzx edx, byte [edx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea edi, [edx + edx*2]
shl edi, 1
and ebx, esi
mov ecx, edi
shl ebx, cl
test edx, edx
mov esi, ebx
jle 0x30167e87
nop
xor ebx, ebx
mov bl, byte [eax]
sub edi, 6
mov ecx, edi
and ebx, 0x3f
shl ebx, cl
or esi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30167e70
cmp esi, 0x85
ja 0x30167eaf
je case.0x3016b742.14
cmp esi, 0xa
jb 0x3016754f
cmp esi, 0xd
jbe case.0x3016b742.14
inc dword [ebp + 8]
jmp 0x30166f01
cmp esi, 0x2028
jb 0x3016754f
cmp esi, 0x2029
ja 0x3016754f
jmp case.0x3016b742.14
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx esi, byte [eax]
mov ecx, dword [esp + 0x48]
inc eax
test ecx, ecx
mov dword [ebp + 4], eax
je 0x30167f2a
cmp esi, 0xc0
jb 0x30167f2a
mov ecx, esi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea edi, [edx + edx*2]
shl edi, 1
and ebx, esi
mov ecx, edi
shl ebx, cl
test edx, edx
mov esi, ebx
jle 0x30167f2a
xor ebx, ebx
mov bl, byte [eax]
sub edi, 6
mov ecx, edi
and ebx, 0x3f
shl ebx, cl
or esi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30167f13
cmp esi, 0x85
ja 0x30167c75
je 0x30167c8d
cmp esi, 0xa
jb case.0x3016b742.14
cmp esi, 0xd
jbe 0x30167c8d
jmp case.0x3016b742.14
mov eax, dword [ebp + 8]
xor edx, edx
mov dh, byte [eax + 1]
mov dl, byte [eax + 2]
shl edx, 1
mov dword [ebp + 0x84], edx
add dword [ebp + 8], 3
mov eax, dword [ebp + 0x84]
mov ecx, dword [ebx + 0xc]
mov edx, dword [ecx + eax*4]
test edx, edx
lea ecx, [ecx + eax*4]
jge 0x30167f86
mov dword [ebp + 0x74], 0
jmp 0x30167f9c
cmp eax, dword [ebp + 0x10]
jge 0x30167f92
mov eax, dword [ecx + 4]
sub eax, edx
jmp 0x30167f99
mov eax, dword [ebx + 0x54]
sub eax, dword [ebp + 4]
inc eax
mov dword [ebp + 0x74], eax
mov eax, dword [ebp + 8]
mov dl, byte [eax]
movzx ecx, dl
lea esi, [ecx - 0x45]
cmp esi, 7
ja case.default.0x30167fb7
movzx esi, byte [esi + 0x3016c4f4]
jmp dword [esi*4 + 0x3016c4ec]
add ecx, 0xffffffbb
inc eax
mov dword [ebp + 8], eax
movsx edx, byte [ecx + 0x30251224]
mov dword [ebp + 0x7c], edx
movsx eax, byte [ecx + 0x3025122c]
mov ebx, ecx
and ebx, 1
test eax, eax
mov dword [ebp + 0x78], eax
jne 0x3016801e
mov dword [ebp + 0x78], SysReAllocString
jmp 0x3016801e
xor ebx, ebx
cmp dl, 0x4c
sete bl
xor ecx, ecx
mov ch, byte [eax + 1]
xor edx, edx
mov cl, byte [eax + 2]
mov dword [ebp + 0x7c], ecx
mov eax, dword [ebp + 8]
mov dh, byte [eax + 3]
movzx ecx, byte [eax + 4]
mov eax, edx
or eax, ecx
mov dword [ebp + 0x78], eax
jne 0x3016801a
mov dword [ebp + 0x78], SysReAllocString
add dword [ebp + 8], 5
mov eax, dword [ebp + 0x74]
test eax, eax
je 0x30166f01
mov ecx, dword [ebp + 0x7c]
mov eax, 1
cmp ecx, eax
mov dword [esp + 0x44], eax
jl 0x3016807c
lea esp, [esp]
mov edx, dword [ebp + 0x14]
mov esi, dword [ebp + 0x74]
mov edi, dword [ebp + 4]
mov ecx, dword [ebp + 0x84]
push edx
mov edx, dword [esp + 0x58]
push edi
mov eax, esi
call fcn.30166da0
add esp, 8
test eax, eax
je case.0x3016b742.14
mov eax, dword [esp + 0x44]
add edi, esi
mov dword [ebp + 4], edi
mov ecx, dword [ebp + 0x7c]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jle 0x30168040
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
je 0x30166f01
test ebx, ebx
jne 0x3016bead
mov ecx, dword [ebp + 4]
mov dword [ebp + 0x34], ecx
mov ebx, dword [ebp + 0x7c]
lea esp, [esp]
cmp ebx, dword [ebp + 0x78]
jge 0x3016ab9a
mov edx, dword [ebp + 0x14]
mov esi, dword [ebp + 0x74]
mov edi, dword [ebp + 4]
mov ecx, dword [ebp + 0x84]
push edx
mov edx, dword [esp + 0x58]
push edi
mov eax, esi
call fcn.30166da0
add esp, 8
test eax, eax
je 0x3016ab9a
add edi, esi
mov dword [ebp + 4], edi
inc ebx
jmp 0x301680a0
mov ecx, dword [ebp + 0x14]
mov esi, dword [ebp + 0x74]
mov edi, dword [ebp + 4]
push ecx
mov ecx, dword [ebp + 0x84]
push edi
mov edx, ebx
mov eax, esi
call fcn.30166da0
add esp, 8
test eax, eax
je case.0x3016b742.14
add edi, esi
mov dword [ebp + 4], edi
jmp 0x30166f01
mov edx, dword [ebp + 8]
inc edx
mov dword [ebp + 0x2c], edx
mov eax, dword [ebp + 8]
add eax, 0x21
mov dword [ebp + 8], eax
mov dl, byte [eax]
movzx ecx, dl
lea esi, [ecx - 0x45]
cmp esi, 7
ja case.default.0x3016812f
movzx esi, byte [esi + 0x3016c504]
jmp dword [esi*4 + 0x3016c4fc]
add ecx, 0xffffffbb
inc eax
mov dword [ebp + 8], eax
mov eax, ecx
and eax, edi
mov dword [esp + 0x50], eax
movsx eax, byte [ecx + 0x30251224]
mov dword [ebp + 0x7c], eax
movsx eax, byte [ecx + 0x3025122c]
test eax, eax
mov dword [ebp + 0x78], eax
jne 0x301681aa
mov dword [ebp + 0x78], SysReAllocString
jmp 0x301681aa
xor ecx, ecx
cmp dl, 0x4c
sete cl
xor edx, edx
mov dh, byte [eax + 1]
mov dword [esp + 0x50], ecx
xor ecx, ecx
mov dl, byte [eax + 2]
mov dword [ebp + 0x7c], edx
mov eax, dword [ebp + 8]
mov ch, byte [eax + 3]
movzx edx, byte [eax + 4]
mov eax, ecx
or eax, edx
mov dword [ebp + 0x78], eax
jne 0x30168199
mov dword [ebp + 0x78], SysReAllocString
add dword [ebp + 8], 5
mov edi, 1
jmp 0x301681aa
mov dword [ebp + 0x78], edi
mov dword [ebp + 0x7c], edi
mov eax, dword [esp + 0x48]
test eax, eax
mov eax, dword [ebp + 0x7c]
je 0x30168265
cmp eax, edi
mov dword [esp + 0x44], edi
jl 0x301682ad
mov eax, dword [esp + 0x54]
mov esi, dword [ebp + 4]
cmp esi, dword [eax + 0x54]
jae case.0x3016b742.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp + 4], esi
jb 0x3016821e
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea edi, [edx + edx*2]
shl edi, 1
and ebx, eax
mov ecx, edi
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x3016821e
xor ebx, ebx
mov bl, byte [esi]
sub edi, 6
mov ecx, edi
and ebx, 0x3f
shl ebx, cl
or eax, ebx
inc esi
dec edx
mov dword [ebp + 4], esi
jne 0x30168207
cmp eax, 0xff
jbe 0x3016822e
cmp dword [ebp + 0x88], 0x4d
jmp 0x30168245
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [ebp + 0x2c]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je case.0x3016b742.14
mov eax, dword [esp + 0x44]
mov ecx, dword [ebp + 0x7c]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jle 0x301681c5
mov ebx, dword [esp + 0x54]
jmp 0x301682a8
cmp eax, edi
mov esi, edi
jl 0x301682ad
jmp 0x30168270
mov ecx, dword [ebp + 4]
cmp ecx, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx eax, byte [ecx]
inc ecx
mov dword [ebp + 4], ecx
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [ebp + 0x2c]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc esi
cmp esi, eax
jle 0x30168270
mov edi, 1
mov ecx, dword [ebp + 0x7c]
cmp ecx, dword [ebp + 0x78]
je 0x30166f01
mov eax, dword [esp + 0x50]
test eax, eax
jne 0x3016beb8
mov eax, dword [ebp + 4]
mov dword [ebp + 0x34], eax
mov eax, dword [esp + 0x48]
test eax, eax
jne 0x3016bed3
mov edi, dword [ebp + 0x7c]
lea ebx, [ebx]
cmp edi, dword [ebp + 0x78]
jge 0x3016ad43
mov esi, dword [ebp + 4]
cmp esi, dword [ebx + 0x54]
jae 0x3016ad43
movzx eax, byte [esi]
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [ebp + 0x2c]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je 0x3016ad43
inc esi
mov dword [ebp + 4], esi
inc edi
jmp 0x301682e0
mov edx, dword [ebp + 8]
add edx, 3
mov dword [ebp + 0x2c], edx
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
mov dword [ebp + 8], eax
mov dl, byte [eax]
movzx ecx, dl
lea esi, [ecx - 0x45]
cmp esi, 7
ja case.default.0x30168349
movzx esi, byte [esi + 0x3016c514]
jmp dword [esi*4 + 0x3016c50c]
add ecx, 0xffffffbb
inc eax
mov dword [ebp + 8], eax
movsx edx, byte [ecx + 0x30251224]
mov eax, ecx
and eax, edi
mov dword [ebp + 0x7c], edx
mov dword [esp + 0x50], eax
movsx eax, byte [ecx + 0x3025122c]
test eax, eax
mov dword [ebp + 0x78], eax
jne 0x301683c4
mov dword [ebp + 0x78], SysReAllocString
jmp 0x301683c4
xor ecx, ecx
cmp dl, 0x4c
sete cl
xor edx, edx
mov dh, byte [eax + 1]
mov dword [esp + 0x50], ecx
xor ecx, ecx
mov dl, byte [eax + 2]
mov dword [ebp + 0x7c], edx
mov eax, dword [ebp + 8]
mov ch, byte [eax + 3]
movzx edx, byte [eax + 4]
mov eax, ecx
or eax, edx
mov dword [ebp + 0x78], eax
jne 0x301683b3
mov dword [ebp + 0x78], SysReAllocString
add dword [ebp + 8], 5
mov edi, 1
jmp 0x301683c4
mov dword [ebp + 0x78], edi
mov dword [ebp + 0x7c], edi
cmp dword [ebp + 0x7c], edi
mov dword [esp + 0x44], edi
jl 0x30168454
mov ecx, dword [esp + 0x54]
mov eax, dword [ebp + 4]
cmp eax, dword [ecx + 0x54]
jae case.0x3016b742.14
movzx edi, byte [eax]
inc eax
cmp edi, 0xc0
mov dword [ebp + 4], eax
jb 0x3016842b
mov edx, edi
and edx, 0x3f
movzx edx, byte [edx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea esi, [edx + edx*2]
shl esi, 1
and ebx, edi
mov ecx, esi
shl ebx, cl
test edx, edx
mov edi, ebx
jle 0x3016842b
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30168414
mov eax, dword [ebp + 0x2c]
push eax
push edi
call fcn.30194d50
add esp, 8
test eax, eax
je case.0x3016b742.14
mov eax, dword [esp + 0x44]
mov ecx, dword [ebp + 0x7c]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jle 0x301683d1
mov ebx, dword [esp + 0x54]
mov ecx, dword [ebp + 0x7c]
cmp ecx, dword [ebp + 0x78]
je 0x30166f01
mov eax, dword [esp + 0x50]
test eax, eax
je 0x3016bf9f
mov dword [ebp + 0x70], ecx
jmp 0x3016adef
cmp dword [esp + 0x48], edx
je 0x30168526
mov dword [ebp + 0x74], edi
mov ecx, dword [ebp + 8]
inc ecx
mov dword [ebp + 8], ecx
mov eax, ecx
movzx edx, byte [eax]
cmp edx, 0xc0
mov dword [ebp + 0x6c], edx
jb 0x301684df
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x30259078]
mov esi, dword [eax*4 + 0x3025905c]
lea ecx, [eax + eax*2]
and esi, edx
shl ecx, 1
shl esi, cl
cmp eax, edi
mov dword [ebp + 0x6c], esi
mov esi, edi
jl 0x301684dc
lea ecx, [ecx]
mov edx, dword [ebp + 8]
movzx edx, byte [esi + edx]
mov edi, dword [ebp + 0x6c]
sub ecx, 6
and edx, 0x3f
shl edx, cl
or edi, edx
inc esi
cmp esi, eax
mov dword [ebp + 0x6c], edi
jle 0x301684c0
add dword [ebp + 0x74], eax
mov ecx, dword [ebx + 0x54]
mov esi, dword [ebp + 4]
mov eax, dword [ebp + 0x74]
sub ecx, esi
cmp eax, ecx
jg case.0x3016b742.14
test eax, eax
jle 0x3016851e
dec eax
mov dword [ebp + 0x74], eax
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 4]
mov cl, byte [edx]
mov dl, byte [eax]
inc eax
mov dword [ebp + 4], eax
mov esi, dword [ebp + 8]
inc esi
cmp cl, dl
mov dword [ebp + 8], esi
jne case.0x3016b742.14
mov eax, dword [ebp + 0x74]
test eax, eax
jg 0x301684f6
dec dword [ebp + 0x74]
jmp 0x30166f01
mov eax, dword [ebp + 4]
mov ecx, dword [ebx + 0x54]
sub ecx, eax
cmp ecx, edi
jl case.0x3016b742.14
mov edx, dword [ebp + 8]
mov cl, byte [edx + 1]
mov dl, byte [eax]
inc eax
cmp cl, dl
mov dword [ebp + 4], eax
je 0x30167064
jmp case.0x3016b742.14
cmp dword [esp + 0x48], edx
je 0x30168663
mov dword [ebp + 0x74], edi
mov ecx, dword [ebp + 8]
inc ecx
mov dword [ebp + 8], ecx
mov eax, ecx
movzx edx, byte [eax]
cmp edx, 0xc0
mov dword [ebp + 0x6c], edx
jb 0x301685bf
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x30259078]
mov esi, dword [eax*4 + 0x3025905c]
lea ecx, [eax + eax*2]
and esi, edx
shl ecx, 1
shl esi, cl
cmp eax, edi
mov dword [ebp + 0x6c], esi
mov esi, edi
jl 0x301685bc
jmp 0x301685a0
mov edx, dword [ebp + 8]
movzx edx, byte [esi + edx]
mov edi, dword [ebp + 0x6c]
sub ecx, 6
and edx, 0x3f
shl edx, cl
or edi, edx
inc esi
cmp esi, eax
mov dword [ebp + 0x6c], edi
jle 0x301685a0
add dword [ebp + 0x74], eax
mov eax, dword [ebp + 4]
mov ecx, dword [ebx + 0x54]
mov edx, dword [ebp + 0x74]
sub ecx, eax
cmp edx, ecx
jg case.0x3016b742.14
cmp dword [ebp + 0x6c], 0x80
jae 0x30168605
mov edx, dword [ebp + 8]
movzx ecx, byte [edx]
movzx edx, byte [eax]
mov esi, dword [ebx + 0x24]
mov cl, byte [ecx + esi]
mov dl, byte [edx + esi]
inc eax
mov dword [ebp + 4], eax
mov esi, dword [ebp + 8]
inc esi
cmp cl, dl
mov dword [ebp + 8], esi
je 0x30166f01
jmp case.0x3016b742.14
movzx edi, byte [eax]
inc eax
cmp edi, 0xc0
mov dword [ebp + 4], eax
jb 0x3016864f
mov ecx, edi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea esi, [edx + edx*2]
shl esi, 1
and ebx, edi
mov ecx, esi
shl ebx, cl
test edx, edx
mov edi, ebx
jle 0x3016864f
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30168638
mov edx, dword [ebp + 0x74]
add dword [ebp + 8], edx
cmp dword [ebp + 0x6c], edi
je 0x30166f01
jmp case.0x3016b742.14
mov eax, dword [ebp + 4]
mov ecx, dword [ebx + 0x54]
sub ecx, eax
cmp ecx, edi
jl case.0x3016b742.14
mov edx, dword [ebp + 8]
movzx ecx, byte [edx + 1]
movzx edx, byte [eax]
mov esi, dword [ebx + 0x24]
mov cl, byte [ecx + esi]
mov dl, byte [edx + esi]
inc eax
cmp cl, dl
mov dword [ebp + 4], eax
je 0x30167064
jmp case.0x3016b742.14
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
movzx eax, byte [eax + 2]
mov dword [esp + 0x44], eax
mov eax, ecx
mov ecx, dword [esp + 0x44]
or eax, ecx
mov dword [ebp + 0x78], eax
mov dword [ebp + 0x7c], eax
add dword [ebp + 8], 3
jmp 0x30168761
mov dword [esp + 0x4c], edi
mov dword [ebp + 0x7c], edx
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
mov dword [ebp + 0x78], ecx
mov eax, dword [ebp + 8]
xor ecx, ecx
cmp byte [eax], 0x25
sete cl
add eax, 3
mov dword [ebp + 8], eax
mov esi, ecx
mov dword [esp + 0x50], esi
jmp 0x30168761
mov dword [ebp + 0x7c], edx
mov dword [ebp + 0x78], SysReAllocString
mov eax, dword [ebp + 8]
inc eax
mov dword [esp + 0x4c], edi
mov dword [ebp + 8], eax
jmp 0x30168761
mov dword [ebp + 0x7c], edi
mov dword [ebp + 0x78], SysReAllocString
mov eax, dword [ebp + 8]
inc eax
mov dword [esp + 0x4c], edi
mov dword [ebp + 8], eax
jmp 0x30168761
mov dword [ebp + 0x7c], edx
mov dword [ebp + 0x78], edi
mov eax, dword [ebp + 8]
inc eax
mov dword [esp + 0x4c], edi
mov dword [ebp + 8], eax
jmp 0x30168761
mov ecx, dword [ebp + 8]
movzx eax, byte [ecx]
sub eax, 0x1e
inc ecx
mov dword [ebp + 8], ecx
movsx ecx, byte [eax + 0x30251224]
mov esi, eax
mov dword [ebp + 0x7c], ecx
movsx eax, byte [eax + 0x3025122c]
and esi, edi
cmp eax, edx
mov dword [esp + 0x50], esi
mov dword [ebp + 0x78], eax
jne 0x30168761
mov dword [ebp + 0x78], SysReAllocString
cmp dword [esp + 0x48], edx
je 0x301688ac
mov dword [ebp + 0x74], edi
mov edx, dword [ebp + 8]
mov dword [ebp + 0x28], edx
mov eax, dword [ebp + 8]
movzx edx, byte [eax]
cmp edx, 0xc0
mov dword [ebp + 0x6c], edx
jb 0x301687dd
mov ecx, edx
and ecx, 0x3f
movzx eax, byte [ecx + 0x30259078]
mov esi, dword [eax*4 + 0x3025905c]
lea ecx, [eax + eax*2]
and esi, edx
shl ecx, 1
shl esi, cl
cmp eax, edi
mov dword [ebp + 0x6c], esi
mov esi, edi
jl 0x301687d1
lea ebx, [ebx]
mov edx, dword [ebp + 8]
movzx edx, byte [esi + edx]
mov edi, dword [ebp + 0x6c]
sub ecx, 6
and edx, 0x3f
shl edx, cl
or edi, edx
inc esi
cmp esi, eax
mov dword [ebp + 0x6c], edi
jle 0x301687b0
mov edi, 1
mov ecx, dword [ebp + 0x74]
mov esi, dword [esp + 0x50]
add ecx, eax
mov dword [ebp + 0x74], ecx
mov edx, dword [ebp + 4]
mov ecx, dword [ebx + 0x54]
mov eax, dword [ebp + 0x74]
sub ecx, edx
mov edx, dword [ebp + 0x7c]
imul edx, eax
cmp edx, ecx
jg case.0x3016b742.14
add dword [ebp + 8], eax
cmp dword [ebp + 0x74], edi
jle 0x301688cb
cmp dword [ebp + 0x7c], edi
mov dword [esp + 0x44], edi
jl 0x30168840
jmp 0x30168810
mov eax, dword [ebp + 0x74]
mov edx, dword [ebp + 4]
mov edi, dword [ebp + 0x28]
mov ecx, eax
mov esi, edx
xor ebx, ebx
repe cmpsb byte [esi], byte es:[edi]
jne case.0x3016b742.14
add edx, eax
mov eax, dword [esp + 0x44]
mov dword [ebp + 4], edx
mov ecx, dword [ebp + 0x7c]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jle 0x30168810
mov esi, dword [esp + 0x50]
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
je 0x30166f01
test esi, esi
jne 0x3016c047
mov ecx, dword [ebp + 4]
mov dword [ebp + 0x34], ecx
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
mov dword [esp + 0x44], eax
jge 0x3016889b
mov ecx, dword [esp + 0x54]
mov eax, dword [ebp + 0x74]
mov ecx, dword [ecx + 0x54]
mov edx, dword [ebp + 4]
sub ecx, eax
cmp edx, ecx
ja 0x3016889b
mov edi, dword [ebp + 0x28]
mov ecx, eax
mov esi, edx
xor ebx, ebx
repe cmpsb byte [esi], byte es:[edi]
jne 0x3016889b
add edx, eax
mov eax, dword [esp + 0x44]
mov dword [ebp + 4], edx
mov ecx, dword [ebp + 0x78]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jl 0x30168866
mov eax, dword [esp + 0x4c]
test eax, eax
jne 0x30166f01
jmp 0x3016aed2
mov ecx, dword [ebp + 4]
mov eax, dword [ebx + 0x54]
sub eax, ecx
cmp dword [ebp + 0x7c], eax
jg case.0x3016b742.14
mov ecx, dword [ebp + 8]
movzx eax, byte [ecx]
mov dword [ebp + 0x6c], eax
inc dword [ebp + 8]
jmp 0x301688cd
xor edx, edx
test byte [ebp + 0x14], 1
je 0x3016896a
mov eax, dword [ebp + 0x6c]
mov ecx, dword [ebx + 0x24]
movzx ecx, byte [ecx + eax]
mov dword [ebp + 0x6c], ecx
cmp dword [ebp + 0x7c], edi
mov ecx, edi
jl 0x30168916
jmp 0x301688f0
mov eax, dword [ebp + 4]
movzx edx, byte [eax]
mov edi, dword [ebx + 0x24]
movzx edx, byte [edx + edi]
mov edi, dword [ebp + 0x6c]
inc eax
cmp edi, edx
mov dword [ebp + 4], eax
jne case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc ecx
cmp ecx, eax
jle 0x301688f0
xor edx, edx
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
je 0x30166f01
cmp esi, edx
jne 0x3016c052
mov ecx, dword [ebp + 4]
mov dword [ebp + 0x34], ecx
mov ecx, dword [ebp + 0x7c]
cmp ecx, dword [ebp + 0x78]
jge 0x3016895b
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae 0x3016895b
movzx esi, byte [eax]
mov edi, dword [ebx + 0x24]
movzx esi, byte [esi + edi]
cmp dword [ebp + 0x6c], esi
jne 0x3016895b
inc eax
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0x78]
inc ecx
cmp ecx, eax
jl 0x30168938
cmp dword [esp + 0x4c], edx
jne 0x30166f01
jmp 0x3016af59
cmp dword [ebp + 0x7c], edi
mov ecx, edi
jl 0x30168990
mov eax, dword [ebp + 4]
movzx edx, byte [eax]
mov edi, dword [ebp + 0x6c]
inc eax
cmp edi, edx
mov dword [ebp + 4], eax
jne case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc ecx
cmp ecx, eax
jle 0x30168971
xor edx, edx
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
je 0x30166f01
cmp esi, edx
jne 0x3016c05a
mov ecx, dword [ebp + 4]
mov dword [ebp + 0x34], ecx
mov ecx, dword [ebp + 0x7c]
cmp ecx, dword [ebp + 0x78]
jge 0x301689ce
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae 0x301689ce
movzx esi, byte [eax]
cmp dword [ebp + 0x6c], esi
jne 0x301689ce
inc eax
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0x78]
inc ecx
cmp ecx, eax
jl 0x301689b2
cmp dword [esp + 0x4c], edx
jne 0x30166f01
jmp 0x3016afe1
mov edx, dword [ebp + 4]
cmp edx, dword [ebx + 0x54]
jae case.0x3016b742.14
mov edx, dword [ebp + 8]
mov ecx, dword [esp + 0x48]
inc edx
mov dword [ebp + 8], edx
mov eax, dword [ebp + 4]
movzx esi, byte [eax]
inc eax
test ecx, ecx
mov dword [ebp + 4], eax
je 0x30168a4b
cmp esi, 0xc0
jb 0x30168a4b
mov ecx, esi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ecx, dword [edx*4 + 0x3025905c]
and ecx, esi
lea edi, [edx + edx*2]
shl edi, 1
mov esi, ecx
mov ecx, edi
shl esi, cl
test edx, edx
jle 0x30168a4b
mov edi, edi
xor ebx, ebx
mov bl, byte [eax]
sub edi, 6
mov ecx, edi
and ebx, 0x3f
shl ebx, cl
or esi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30168a30
mov ebx, dword [esp + 0x54]
test byte [ebp + 0x14], 1
je 0x30168a7e
cmp esi, 0x100
jae 0x30168a60
mov edx, dword [ebx + 0x24]
movzx esi, byte [edx + esi]
mov eax, dword [ebp + 8]
movzx ecx, byte [eax]
mov edx, dword [ebx + 0x24]
movzx ecx, byte [edx + ecx]
inc eax
cmp ecx, esi
mov dword [ebp + 8], eax
jne 0x30166f01
jmp case.0x3016b742.14
mov eax, dword [ebp + 8]
movzx edx, byte [eax]
inc eax
cmp edx, esi
mov dword [ebp + 8], eax
jne 0x30166f01
jmp case.0x3016b742.14
mov eax, dword [ebp + 8]
movzx edx, byte [eax + 2]
xor ecx, ecx
mov ch, byte [eax + 1]
mov eax, ecx
or eax, edx
mov dword [ebp + 0x78], eax
mov dword [ebp + 0x7c], eax
add dword [ebp + 8], 3
jmp 0x30168b71
mov dword [ebp + 0x7c], edx
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
xor edx, edx
mov cl, byte [eax + 2]
mov dword [ebp + 0x78], ecx
mov eax, dword [ebp + 8]
cmp byte [eax], 0x32
sete dl
add eax, 3
mov dword [ebp + 8], eax
mov esi, edx
mov dword [esp + 0x50], esi
jmp 0x30168b71
mov dword [ebp + 0x7c], edx
mov dword [ebp + 0x78], SysReAllocString
mov eax, dword [ebp + 8]
inc eax
mov dword [esp + 0x4c], edi
mov dword [ebp + 8], eax
jmp 0x30168b71
mov dword [ebp + 0x7c], edi
mov dword [ebp + 0x78], SysReAllocString
mov eax, dword [ebp + 8]
inc eax
mov dword [esp + 0x4c], edi
mov dword [ebp + 8], eax
jmp 0x30168b71
mov dword [ebp + 0x7c], edx
mov dword [ebp + 0x78], edi
mov eax, dword [ebp + 8]
inc eax
mov dword [esp + 0x4c], edi
mov dword [ebp + 8], eax
jmp 0x30168b71
mov dword [ebp + 0x7c], edx
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
mov dword [esp + 0x4c], edi
mov cl, byte [eax + 2]
mov dword [ebp + 0x78], ecx
add dword [ebp + 8], 3
jmp 0x30168b71
mov ecx, dword [ebp + 8]
movzx eax, byte [ecx]
sub eax, 0x2b
inc ecx
mov dword [ebp + 8], ecx
movsx ecx, byte [eax + 0x30251224]
mov esi, eax
mov dword [ebp + 0x7c], ecx
movsx eax, byte [eax + 0x3025122c]
and esi, edi
cmp eax, edx
mov dword [esp + 0x50], esi
mov dword [ebp + 0x78], eax
jne 0x30168b71
mov dword [ebp + 0x78], SysReAllocString
mov edx, dword [ebx + 0x54]
mov ecx, dword [ebp + 4]
mov eax, dword [ebp + 0x7c]
sub edx, ecx
cmp eax, edx
jg case.0x3016b742.14
mov eax, dword [ebp + 8]
movzx ecx, byte [eax]
mov dword [ebp + 0x6c], ecx
inc dword [ebp + 8]
test byte [ebp + 0x14], 1
je 0x30168d84
mov edx, dword [ebx + 0x24]
mov eax, dword [ebp + 0x6c]
movzx ecx, byte [edx + eax]
mov edx, dword [esp + 0x48]
test edx, edx
mov dword [ebp + 0x6c], ecx
mov eax, dword [ebp + 0x7c]
je 0x30168c45
cmp eax, edi
mov dword [esp + 0x44], edi
jl 0x30168c78
mov eax, dword [ebp + 4]
movzx edi, byte [eax]
inc eax
cmp edi, 0xc0
mov dword [ebp + 4], eax
jb 0x30168c0f
mov edx, edi
and edx, 0x3f
movzx edx, byte [edx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea esi, [edx + edx*2]
shl esi, 1
and ebx, edi
mov ecx, esi
shl ebx, cl
test edx, edx
mov edi, ebx
jle 0x30168c0f
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30168bf8
cmp edi, 0x100
jae 0x30168c22
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x24]
movzx edi, byte [ecx + edi]
cmp dword [ebp + 0x6c], edi
je case.0x3016b742.14
mov eax, dword [esp + 0x44]
mov ecx, dword [ebp + 0x7c]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jle 0x30168bc2
mov ebx, dword [esp + 0x54]
mov edx, dword [esp + 0x48]
jmp 0x30168c74
cmp eax, edi
mov ecx, edi
jl 0x30168c78
jmp 0x30168c50
mov eax, dword [ebp + 4]
movzx esi, byte [eax]
mov edi, dword [ebx + 0x24]
movzx esi, byte [esi + edi]
mov edi, dword [ebp + 0x6c]
inc eax
cmp edi, esi
mov dword [ebp + 4], eax
je case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc ecx
cmp ecx, eax
jle 0x30168c50
mov esi, dword [esp + 0x50]
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
je 0x30166f01
test esi, esi
jne 0x3016c065
test edx, edx
mov ecx, dword [ebp + 4]
mov dword [ebp + 0x34], ecx
je 0x30168d47
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
mov dword [esp + 0x44], eax
jge 0x30168d36
lea ebx, [ebx]
mov edx, dword [ebp + 4]
cmp edx, dword [ebx + 0x54]
mov esi, 1
jae 0x30168d36
movzx edi, byte [edx]
cmp edi, 0xc0
jb 0x30168d09
mov eax, edi
and eax, 0x3f
movzx esi, byte [eax + 0x30259078]
mov eax, dword [esi*4 + 0x3025905c]
and eax, edi
lea ecx, [esi + esi*2]
shl ecx, 1
shl eax, cl
mov edi, eax
mov eax, 1
cmp esi, eax
jl 0x30168d04
nop
xor ebx, ebx
mov bl, byte [edx + eax]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
cmp eax, esi
jle 0x30168cf0
mov ebx, dword [esp + 0x54]
inc esi
cmp edi, 0x100
jae 0x30168d18
mov ecx, dword [ebx + 0x24]
movzx edi, byte [ecx + edi]
cmp dword [ebp + 0x6c], edi
je 0x30168d36
mov eax, dword [esp + 0x44]
add edx, esi
mov dword [ebp + 4], edx
mov ecx, dword [ebp + 0x78]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jl 0x30168cb0
mov eax, dword [esp + 0x4c]
test eax, eax
jne 0x30166f01
jmp 0x3016b140
mov ecx, dword [ebp + 0x7c]
cmp ecx, dword [ebp + 0x78]
jge 0x30168d73
nop
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae 0x30168d73
movzx edx, byte [eax]
mov esi, dword [ebx + 0x24]
movzx edx, byte [edx + esi]
cmp dword [ebp + 0x6c], edx
je 0x30168d73
inc eax
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0x78]
inc ecx
cmp ecx, eax
jl 0x30168d50
mov eax, dword [esp + 0x4c]
test eax, eax
jne 0x30166f01
jmp 0x3016b165
mov edx, dword [esp + 0x48]
test edx, edx
mov eax, dword [ebp + 0x7c]
je 0x30168e10
cmp eax, edi
mov dword [esp + 0x44], edi
jl 0x30168e37
nop
mov eax, dword [ebp + 4]
movzx edi, byte [eax]
inc eax
cmp edi, 0xc0
mov dword [ebp + 4], eax
jb 0x30168ded
mov ecx, edi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea esi, [edx + edx*2]
shl esi, 1
and ebx, edi
mov ecx, esi
shl ebx, cl
test edx, edx
mov edi, ebx
jle 0x30168ded
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30168dd6
cmp dword [ebp + 0x6c], edi
je case.0x3016b742.14
mov eax, dword [esp + 0x44]
mov ecx, dword [ebp + 0x7c]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jle 0x30168da0
mov ebx, dword [esp + 0x54]
mov edx, dword [esp + 0x48]
jmp 0x30168e33
cmp eax, edi
mov ecx, edi
jl 0x30168e37
mov eax, dword [ebp + 4]
movzx esi, byte [eax]
mov edi, dword [ebp + 0x6c]
inc eax
cmp edi, esi
mov dword [ebp + 4], eax
je case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc ecx
cmp ecx, eax
jle 0x30168e16
mov esi, dword [esp + 0x50]
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
je 0x30166f01
test esi, esi
jne 0x3016c07c
test edx, edx
mov ecx, dword [ebp + 4]
mov dword [ebp + 0x34], ecx
mov eax, dword [ebp + 0x78]
je 0x30168ef3
mov ebx, dword [ebp + 0x7c]
cmp ebx, eax
mov dword [esp + 0x44], ebx
jge 0x30168ee2
jmp 0x30168e70
mov eax, dword [esp + 0x54]
mov edx, dword [ebp + 4]
cmp edx, dword [eax + 0x54]
mov esi, 1
jae 0x30168ee2
movzx edi, byte [edx]
cmp edi, 0xc0
jb 0x30168ecc
mov ecx, edi
and ecx, 0x3f
movzx esi, byte [ecx + 0x30259078]
mov eax, dword [esi*4 + 0x3025905c]
and eax, edi
lea ecx, [esi + esi*2]
shl ecx, 1
shl eax, cl
mov edi, eax
mov eax, 1
cmp esi, eax
jl 0x30168ecb
xor ebx, ebx
mov bl, byte [eax + edx]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
cmp eax, esi
jle 0x30168eb3
mov ebx, dword [esp + 0x44]
inc esi
cmp dword [ebp + 0x6c], edi
je 0x30168ee2
add edx, esi
mov dword [ebp + 4], edx
mov eax, dword [ebp + 0x78]
inc ebx
cmp ebx, eax
mov dword [esp + 0x44], ebx
jl 0x30168e70
mov eax, dword [esp + 0x4c]
test eax, eax
jne 0x30166f01
jmp 0x3016b2ae
mov ecx, dword [ebp + 0x7c]
cmp ecx, eax
jge 0x30168f1c
lea ebx, [ebx]
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae 0x30168f1c
movzx edx, byte [eax]
cmp dword [ebp + 0x6c], edx
je 0x30168f1c
inc eax
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0x78]
inc ecx
cmp ecx, eax
jl 0x30168f00
mov eax, dword [esp + 0x4c]
test eax, eax
jne 0x30166f01
jmp 0x3016b2d3
mov eax, dword [ebp + 8]
movzx edx, byte [eax + 2]
xor ecx, ecx
mov ch, byte [eax + 1]
mov dword [esp + 0x50], edi
mov eax, ecx
or eax, edx
mov dword [ebp + 0x78], eax
mov dword [ebp + 0x7c], eax
add dword [ebp + 8], 3
jmp 0x3016900e
mov dword [ebp + 0x7c], edx
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
xor edx, edx
mov cl, byte [eax + 2]
mov dword [ebp + 0x78], ecx
mov eax, dword [ebp + 8]
cmp byte [eax], 0x3f
sete dl
add eax, 3
mov dword [ebp + 8], eax
mov dword [esp + 0x50], edx
jmp 0x3016900e
mov dword [ebp + 0x7c], edx
mov dword [ebp + 0x78], SysReAllocString
mov eax, dword [ebp + 8]
inc eax
mov dword [esp + 0x4c], edi
mov dword [ebp + 8], eax
jmp 0x3016900e
mov dword [ebp + 0x7c], edi
mov dword [ebp + 0x78], SysReAllocString
mov eax, dword [ebp + 8]
inc eax
mov dword [esp + 0x4c], edi
mov dword [ebp + 8], eax
jmp 0x3016900e
mov dword [ebp + 0x7c], edx
mov dword [ebp + 0x78], edi
mov eax, dword [ebp + 8]
inc eax
mov dword [esp + 0x4c], edi
mov dword [ebp + 8], eax
jmp 0x3016900e
mov dword [ebp + 0x7c], edx
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
mov dword [esp + 0x4c], edi
mov cl, byte [eax + 2]
mov dword [ebp + 0x78], ecx
add dword [ebp + 8], 3
jmp 0x3016900e
mov ecx, dword [ebp + 8]
movzx eax, byte [ecx]
sub eax, 0x38
inc ecx
mov dword [ebp + 8], ecx
mov ecx, eax
and ecx, edi
mov dword [esp + 0x50], ecx
movsx ecx, byte [eax + 0x30251224]
mov dword [ebp + 0x7c], ecx
movsx eax, byte [eax + 0x3025122c]
cmp eax, edx
mov dword [ebp + 0x78], eax
jne 0x3016900e
mov dword [ebp + 0x78], SysReAllocString
mov edx, dword [ebp + 8]
movzx eax, byte [edx]
mov dword [ebp + 0x68], eax
inc dword [ebp + 8]
mov eax, dword [ebx + 0x54]
mov edx, dword [ebp + 4]
mov ecx, dword [ebp + 0x7c]
mov esi, eax
sub esi, edx
cmp ecx, esi
jg case.0x3016b742.14
test ecx, ecx
jle 0x301691bd
mov esi, dword [esp + 0x48]
test esi, esi
je 0x3016980c
mov esi, dword [ebp + 0x68]
add esi, 0xfffffffa
cmp esi, 0xe
ja case.0x3016b3d6.14
jmp dword [esi*4 + 0x3016c51c]
cmp ecx, edi
mov esi, edi
jl 0x301691bd
mov ecx, dword [ebp + 4]
cmp ecx, eax
jae case.0x3016b742.14
test byte [ebp + 0x14], 4
jne 0x301690be
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x30169099
mov edi, dword [esp + 0x48]
push edi
lea edi, [ebx + 0x1c]
push edi
push eax
push edx
push ecx
call fcn.30194ee0
add esp, 0x14
test eax, eax
jne case.0x3016b742.14
jmp 0x301690be
mov edx, dword [ebx + 0x1c]
sub eax, edx
cmp ecx, eax
ja 0x301690be
mov al, byte [ecx]
cmp al, byte [ebx + 0x20]
jne 0x301690be
cmp edx, 1
je case.0x3016b742.14
mov cl, byte [ecx + 1]
cmp cl, byte [ebx + 0x21]
je case.0x3016b742.14
mov edi, dword [ebp + 4]
inc edi
mov dword [ebp + 4], edi
mov eax, dword [ebx + 0x54]
mov ecx, edi
cmp ecx, eax
jae 0x301690e5
mov edi, edi
mov dl, byte [ecx]
and dl, 0xc0
cmp dl, 0x80
jne 0x301690e5
inc ecx
mov dword [ebp + 4], ecx
mov eax, dword [ebx + 0x54]
cmp ecx, eax
jb 0x301690d0
mov ecx, dword [ebp + 0x7c]
inc esi
cmp esi, ecx
jle 0x30169063
jmp 0x301691bd
cmp ecx, edi
mov dword [esp + 0x44], edi
jl 0x301691bd
mov eax, dword [esp + 0x54]
mov esi, dword [ebp + 4]
cmp esi, dword [eax + 0x54]
jae case.0x3016b742.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp + 4], esi
jb 0x3016915b
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea edi, [edx + edx*2]
shl edi, 1
and ebx, eax
mov ecx, edi
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x3016915b
xor ebx, ebx
mov bl, byte [esi]
sub edi, 6
mov ecx, edi
and ebx, 0x3f
shl ebx, cl
or eax, ebx
inc esi
dec edx
mov dword [ebp + 4], esi
jne 0x30169144
cmp eax, 0x85
ja 0x3016918f
je 0x301691a5
cmp eax, 0xa
jb case.0x3016b742.14
cmp eax, 0xc
jbe 0x301691a5
cmp eax, 0xd
jne case.0x3016b742.14
mov edx, dword [esp + 0x54]
cmp esi, dword [edx + 0x54]
jae 0x301691a5
cmp byte [esi], 0xa
jne 0x301691a5
inc esi
mov dword [ebp + 4], esi
jmp 0x301691a5
cmp eax, 0x2028
jb case.0x3016b742.14
cmp eax, 0x2029
ja case.0x3016b742.14
mov eax, dword [esp + 0x44]
mov ecx, dword [ebp + 0x7c]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jle 0x30169102
mov ebx, dword [esp + 0x54]
mov edx, dword [ebp + 0x7c]
cmp edx, dword [ebp + 0x78]
je 0x30166f01
mov eax, dword [esp + 0x50]
test eax, eax
jne 0x3016c096
mov eax, dword [ebp + 4]
mov dword [ebp + 0x34], eax
mov eax, dword [esp + 0x48]
test eax, eax
mov eax, dword [ebp + 0x68]
je 0x3016a3a0
add eax, 0xfffffffa
cmp eax, 0xe
ja case.0x3016b3d6.14
jmp dword [eax*4 + 0x3016c558]
cmp ecx, edi
mov dword [esp + 0x44], edi
jl 0x301691bd
mov eax, dword [esp + 0x54]
mov esi, dword [ebp + 4]
cmp esi, dword [eax + 0x54]
jae case.0x3016b742.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp + 4], esi
jb 0x3016925e
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea edi, [edx + edx*2]
shl edi, 1
and ebx, eax
mov ecx, edi
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x3016925e
xor ebx, ebx
mov bl, byte [esi]
sub edi, 6
mov ecx, edi
and ebx, 0x3f
shl ebx, cl
or eax, ebx
inc esi
dec edx
mov dword [ebp + 4], esi
jne 0x30169247
cmp eax, 0x180e
ja 0x3016928d
je case.0x3016b742.14
cmp eax, 0xa0
ja 0x30169286
je case.0x3016b742.14
cmp eax, 9
je case.0x3016b742.14
cmp eax, 0x20
jmp 0x301692b8
cmp eax, 0x1680
jmp 0x301692b8
cmp eax, 0x205f
ja 0x301692b3
je case.0x3016b742.14
cmp eax, 0x2000
jb 0x301692be
cmp eax, 0x200a
jbe case.0x3016b742.14
cmp eax, 0x202f
jmp 0x301692b8
cmp eax, 0x3000
je case.0x3016b742.14
mov eax, dword [esp + 0x44]
mov ecx, dword [ebp + 0x7c]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jle 0x30169205
jmp 0x301691b9
cmp ecx, edi
mov dword [esp + 0x44], edi
jl 0x301691bd
mov edx, dword [esp + 0x54]
mov esi, dword [ebp + 4]
cmp esi, dword [edx + 0x54]
jae case.0x3016b742.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp + 4], esi
jb 0x3016933c
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea edi, [edx + edx*2]
shl edi, 1
and ebx, eax
mov ecx, edi
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x3016933c
xor ebx, ebx
mov bl, byte [esi]
sub edi, 6
mov ecx, edi
and ebx, 0x3f
shl ebx, cl
or eax, ebx
inc esi
dec edx
mov dword [ebp + 4], esi
jne 0x30169325
cmp eax, 0x180e
ja 0x3016935f
je 0x3016938c
cmp eax, 0xa0
ja 0x30169358
je 0x3016938c
cmp eax, 9
je 0x3016938c
cmp eax, 0x20
jmp 0x30169386
cmp eax, 0x1680
jmp 0x30169386
cmp eax, 0x205f
ja 0x30169381
je 0x3016938c
cmp eax, 0x2000
jb case.0x3016b742.14
cmp eax, 0x200a
jbe 0x3016938c
cmp eax, 0x202f
jmp 0x30169386
cmp eax, 0x3000
jne case.0x3016b742.14
mov eax, dword [esp + 0x44]
mov ecx, dword [ebp + 0x7c]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jle 0x301692e3
jmp 0x301691b9
cmp ecx, edi
mov dword [esp + 0x44], edi
jl 0x301691bd
mov edx, dword [esp + 0x54]
mov esi, dword [ebp + 4]
cmp esi, dword [edx + 0x54]
jae case.0x3016b742.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp + 4], esi
jb 0x3016940a
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea edi, [edx + edx*2]
shl edi, 1
and ebx, eax
mov ecx, edi
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x3016940a
xor ebx, ebx
mov bl, byte [esi]
sub edi, 6
mov ecx, edi
and ebx, 0x3f
shl ebx, cl
or eax, ebx
inc esi
dec edx
mov dword [ebp + 4], esi
jne 0x301693f3
cmp eax, 0x85
ja 0x30169421
je case.0x3016b742.14
cmp eax, 0xa
jb 0x30169433
cmp eax, 0xd
jmp 0x3016942d
cmp eax, 0x2028
jb 0x30169433
cmp eax, 0x2029
jbe case.0x3016b742.14
mov eax, dword [esp + 0x44]
mov ecx, dword [ebp + 0x7c]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jle 0x301693b1
jmp 0x301691b9
cmp ecx, edi
mov dword [esp + 0x44], edi
jl 0x301691bd
jmp 0x30169460
mov edx, dword [esp + 0x54]
mov esi, dword [ebp + 4]
cmp esi, dword [edx + 0x54]
jae case.0x3016b742.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp + 4], esi
jb 0x301694b9
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea edi, [edx + edx*2]
shl edi, 1
and ebx, eax
mov ecx, edi
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x301694b9
xor ebx, ebx
mov bl, byte [esi]
sub edi, 6
mov ecx, edi
and ebx, 0x3f
shl ebx, cl
or eax, ebx
inc esi
dec edx
mov dword [ebp + 4], esi
jne 0x301694a2
cmp eax, 0x85
ja 0x301694d0
je 0x301694e6
cmp eax, 0xa
jb case.0x3016b742.14
cmp eax, 0xd
jmp 0x301694e0
cmp eax, 0x2028
jb case.0x3016b742.14
cmp eax, 0x2029
ja case.0x3016b742.14
mov eax, dword [esp + 0x44]
mov ecx, dword [ebp + 0x7c]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jle 0x30169460
jmp 0x301691b9
cmp ecx, edi
mov dword [esp + 0x44], edi
jl 0x301691bd
jmp 0x30169510
mov edx, dword [esp + 0x54]
mov eax, dword [ebp + 4]
cmp eax, dword [edx + 0x54]
jae case.0x3016b742.14
movzx edi, byte [eax]
inc eax
cmp edi, 0xc0
mov dword [ebp + 4], eax
jb 0x3016956a
mov ecx, edi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea esi, [edx + edx*2]
shl esi, 1
and ebx, edi
mov ecx, esi
shl ebx, cl
test edx, edx
mov edi, ebx
jle 0x3016956a
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30169553
cmp edi, 0x80
jae 0x30169583
mov edx, dword [esp + 0x54]
mov eax, dword [edx + 0x28]
test byte [edi + eax], 4
jne case.0x3016b742.14
mov eax, dword [esp + 0x44]
mov ecx, dword [ebp + 0x7c]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jle 0x30169510
jmp 0x301691b9
cmp ecx, edi
mov edx, edi
jl 0x301691bd
jmp 0x301695b0
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
mov cl, byte [eax]
cmp cl, 0x80
jae case.0x3016b742.14
mov esi, dword [ebx + 0x28]
movzx ecx, cl
test byte [ecx + esi], 4
lea eax, [eax + 1]
mov dword [ebp + 4], eax
je case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc edx
cmp edx, eax
jle 0x301695b0
jmp 0x301691bd
cmp ecx, edi
mov dword [esp + 0x44], edi
jl 0x301691bd
jmp 0x30169600
mov ecx, dword [ebp + 4]
cmp ecx, eax
jae case.0x3016b742.14
mov al, byte [ecx]
cmp al, 0x80
jae 0x30169627
movzx edx, al
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x28]
test byte [edx + ecx], 1
jne case.0x3016b742.14
jmp 0x30169688
movzx edi, al
cmp edi, 0xc0
lea eax, [ecx + 1]
mov dword [ebp + 4], eax
jl 0x30169677
mov edx, edi
and edx, 0x3f
movzx edx, byte [edx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea esi, [edx + edx*2]
shl esi, 1
and ebx, edi
mov ecx, esi
shl ebx, cl
test edx, edx
mov edi, ebx
jle 0x30169677
lea esp, [esp]
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30169660
push edi
call fcn.30166d70
add esp, 4
cmp al, 1
je case.0x3016b742.14
mov edx, dword [esp + 0x54]
lea esp, [esp]
mov edi, dword [ebp + 4]
inc edi
mov dword [ebp + 4], edi
mov eax, dword [edx + 0x54]
mov ecx, edi
cmp ecx, eax
jae 0x301696aa
mov cl, byte [ecx]
and cl, 0xc0
cmp cl, 0x80
je 0x30169690
mov ecx, dword [esp + 0x44]
mov edx, dword [ebp + 0x7c]
inc ecx
cmp ecx, edx
mov dword [esp + 0x44], ecx
jle 0x30169600
jmp 0x301691b9
cmp ecx, edi
mov dword [esp + 0x44], edi
jl 0x301691bd
mov edx, dword [esp + 0x54]
mov eax, dword [ebp + 4]
cmp eax, dword [edx + 0x54]
jae case.0x3016b742.14
mov cl, byte [eax]
cmp cl, 0x80
jae 0x301696fa
mov edx, dword [edx + 0x28]
movzx ecx, cl
mov bl, byte [ecx + edx]
lea eax, [eax + 1]
test bl, 1
mov dword [ebp + 4], eax
jmp 0x30169752
movzx edi, cl
inc eax
cmp edi, 0xc0
mov dword [ebp + 4], eax
jl 0x30169747
mov ecx, edi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea esi, [edx + edx*2]
shl esi, 1
and ebx, edi
mov ecx, esi
shl ebx, cl
test edx, edx
mov edi, ebx
jle 0x30169747
lea ecx, [ecx]
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x30169730
push edi
call fcn.30166d70
add esp, 4
test al, al
je case.0x3016b742.14
mov eax, dword [esp + 0x44]
mov ecx, dword [ebp + 0x7c]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jle 0x301696cf
jmp 0x301691b9
cmp ecx, edi
mov esi, edi
jl 0x301691bd
jmp 0x30169780
mov ecx, dword [ebp + 4]
cmp ecx, eax
jae case.0x3016b742.14
mov al, byte [ecx]
cmp al, 0x80
jae 0x301697a1
movzx edx, al
mov eax, dword [ebx + 0x28]
test byte [edx + eax], 0x10
jne case.0x3016b742.14
mov edi, dword [ebp + 4]
inc edi
mov dword [ebp + 4], edi
mov eax, dword [ebx + 0x54]
mov ecx, edi
cmp ecx, eax
jae 0x301697bb
mov cl, byte [ecx]
and cl, 0xc0
cmp cl, 0x80
je 0x301697a1
mov ecx, dword [ebp + 0x7c]
inc esi
cmp esi, ecx
jle 0x30169780
jmp 0x301691bd
cmp ecx, edi
mov edx, edi
jl 0x301691bd
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
mov cl, byte [eax]
cmp cl, 0x80
jae case.0x3016b742.14
mov esi, dword [ebx + 0x28]
movzx ecx, cl
test byte [ecx + esi], 0x10
lea eax, [eax + 1]
mov dword [ebp + 4], eax
je case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc edx
cmp edx, eax
jle 0x301697d2
jmp 0x301691bd
mov eax, dword [ebp + 0x68]
add eax, 0xfffffffa
cmp eax, 0xe
ja case.0x3016b3d6.14
jmp dword [eax*4 + 0x3016c594]
test byte [ebp + 0x14], 4
jne case.0x3016981b.13
cmp ecx, edi
mov esi, edi
jl 0x301691bd
mov edx, dword [ebx + 0x18]
test edx, edx
mov eax, dword [ebp + 4]
je 0x3016985e
mov ecx, dword [ebx + 0x54]
cmp eax, ecx
jae 0x30169886
push 0
lea edi, [ebx + 0x1c]
push edi
push ecx
push edx
push eax
call fcn.30194ee0
add esp, 0x14
test eax, eax
jne case.0x3016b742.14
jmp 0x30169886
mov ecx, dword [ebx + 0x1c]
mov edx, dword [ebx + 0x54]
sub edx, ecx
cmp eax, edx
ja 0x30169886
mov dl, byte [eax]
cmp dl, byte [ebx + 0x20]
jne 0x30169886
cmp ecx, 1
je case.0x3016b742.14
mov al, byte [eax + 1]
cmp al, byte [ebx + 0x21]
je case.0x3016b742.14
inc dword [ebp + 4]
mov eax, dword [ebp + 0x7c]
inc esi
cmp esi, eax
jle 0x30169832
jmp 0x301691bd
add edx, ecx
mov dword [ebp + 4], edx
jmp 0x301691bd
cmp ecx, edi
mov edx, edi
jl 0x301691bd
lea ebx, [ebx]
mov ecx, dword [ebp + 4]
cmp ecx, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx eax, byte [ecx]
inc ecx
sub eax, 0xa
cmp eax, 0x7b
mov dword [ebp + 4], ecx
ja case.0x3016b742.14
movzx eax, byte [eax + 0x3016c5dc]
jmp dword [eax*4 + 0x3016c5d0]
cmp ecx, dword [ebx + 0x54]
jae case.0x301698d6.10
cmp byte [ecx], 0xa
jne case.0x301698d6.10
inc ecx
mov dword [ebp + 4], ecx
mov eax, dword [ebp + 0x7c]
inc edx
cmp edx, eax
jle 0x301698b0
jmp 0x301691bd
cmp ecx, edi
mov edx, edi
jl 0x301691bd
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx ecx, byte [eax]
inc eax
cmp ecx, 9
mov dword [ebp + 4], eax
je case.0x3016b742.14
cmp ecx, 0x20
je case.0x3016b742.14
cmp ecx, 0xa0
je case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc edx
cmp edx, eax
jle 0x30169902
jmp 0x301691bd
cmp ecx, edi
mov edx, edi
jl 0x301691bd
lea ebx, [ebx]
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx ecx, byte [eax]
inc eax
cmp ecx, 9
mov dword [ebp + 4], eax
je 0x30169979
cmp ecx, 0x20
je 0x30169979
cmp ecx, 0xa0
jne case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc edx
cmp edx, eax
jle 0x30169950
jmp 0x301691bd
cmp ecx, edi
mov edx, edi
jl 0x301691bd
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx ecx, byte [eax]
inc eax
cmp ecx, 0xa
mov dword [ebp + 4], eax
jl 0x301699bd
cmp ecx, 0xd
jle case.0x3016b742.14
cmp ecx, 0x85
je case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc edx
cmp edx, eax
jle 0x30169990
jmp 0x301691bd
cmp ecx, edi
mov edx, edi
jl 0x301691bd
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae case.0x3016b742.14
movzx ecx, byte [eax]
inc eax
cmp ecx, 0xa
mov dword [ebp + 4], eax
jl case.0x3016b742.14
cmp ecx, 0xd
jle 0x30169a01
cmp ecx, 0x85
jne case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc edx
cmp edx, eax
jle 0x301699d4
jmp 0x301691bd
cmp ecx, edi
mov edx, edi
jl 0x301691bd
jmp 0x30169a20
mov eax, dword [ebp + 4]
movzx ecx, byte [eax]
mov esi, dword [ebx + 0x28]
test byte [ecx + esi], 4
lea eax, [eax + 1]
mov dword [ebp + 4], eax
jne case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc edx
cmp edx, eax
jle 0x30169a20
jmp 0x301691bd
cmp ecx, edi
mov edx, edi
jl 0x301691bd
mov eax, dword [ebp + 4]
movzx ecx, byte [eax]
mov esi, dword [ebx + 0x28]
test byte [ecx + esi], 4
lea eax, [eax + 1]
mov dword [ebp + 4], eax
je case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc edx
cmp edx, eax
jle 0x30169a50
jmp 0x301691bd
cmp ecx, edi
mov edx, edi
jl 0x301691bd
mov eax, dword [ebp + 4]
movzx ecx, byte [eax]
mov esi, dword [ebx + 0x28]
test byte [ecx + esi], 1
lea eax, [eax + 1]
mov dword [ebp + 4], eax
jne case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc edx
cmp edx, eax
jle 0x30169a80
jmp 0x301691bd
cmp ecx, edi
mov edx, edi
jl 0x301691bd
mov eax, dword [ebp + 4]
movzx ecx, byte [eax]
mov esi, dword [ebx + 0x28]
test byte [ecx + esi], 1
lea eax, [eax + 1]
mov dword [ebp + 4], eax
je case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc edx
cmp edx, eax
jle 0x30169ab0
jmp 0x301691bd
cmp ecx, edi
mov edx, edi
jl 0x301691bd
mov eax, dword [ebp + 4]
movzx ecx, byte [eax]
mov esi, dword [ebx + 0x28]
test byte [ecx + esi], 0x10
lea eax, [eax + 1]
mov dword [ebp + 4], eax
jne case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc edx
cmp edx, eax
jle 0x30169ae0
jmp 0x301691bd
cmp ecx, edi
mov edx, edi
jl 0x301691bd
mov eax, dword [ebp + 4]
movzx ecx, byte [eax]
mov esi, dword [ebx + 0x28]
test byte [ecx + esi], 0x10
lea eax, [eax + 1]
mov dword [ebp + 4], eax
je case.0x3016b742.14
mov eax, dword [ebp + 0x7c]
inc edx
cmp edx, eax
jle 0x30169b10
jmp 0x301691bd
mov eax, dword [ebp + 0x78]
cmp eax, 0x7fffffff
mov cl, byte [ebp + 0x14]
jge 0x30169c38
test cl, 4
mov esi, dword [ebp + 0x7c]
jne 0x30169bec
cmp esi, eax
jge 0x3016a38f
jmp 0x30169b60
mov ecx, dword [ebp + 4]
mov eax, dword [ebx + 0x54]
cmp ecx, eax
jae 0x3016a38f
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x30169b93
mov edi, dword [esp + 0x48]
push edi
lea edi, [ebx + 0x1c]
push edi
push eax
push edx
push ecx
call fcn.30194ee0
add esp, 0x14
test eax, eax
jne 0x3016a38f
jmp 0x30169bb8
mov edx, dword [ebx + 0x1c]
sub eax, edx
cmp ecx, eax
ja 0x30169bb8
mov al, byte [ecx]
cmp al, byte [ebx + 0x20]
jne 0x30169bb8
cmp edx, 1
je 0x3016a38f
mov cl, byte [ecx + 1]
cmp cl, byte [ebx + 0x21]
je 0x3016a38f
mov edx, dword [ebp + 4]
inc edx
mov dword [ebp + 4], edx
mov ecx, dword [ebx + 0x54]
mov eax, edx
cmp eax, ecx
jae 0x30169bdb
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x30169bdb
inc eax
mov dword [ebp + 4], eax
cmp eax, dword [ebx + 0x54]
jb 0x30169bc8
mov eax, dword [ebp + 0x78]
inc esi
cmp esi, eax
jl 0x30169b60
jmp 0x3016a38f
cmp esi, eax
jge 0x3016a38f
mov ecx, dword [ebx + 0x54]
jmp 0x30169c00
mov eax, dword [ebp + 4]
cmp eax, ecx
jae 0x3016a38f
inc eax
mov dword [ebp + 4], eax
mov ecx, dword [ebx + 0x54]
cmp eax, ecx
jae 0x30169c2b
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x30169c2b
inc eax
mov dword [ebp + 4], eax
mov ecx, dword [ebx + 0x54]
cmp eax, ecx
jb 0x30169c16
mov eax, dword [ebp + 0x78]
inc esi
cmp esi, eax
jl 0x30169c00
jmp 0x3016a38f
test cl, 4
jne 0x30169cdc
mov esi, dword [ebp + 0x7c]
cmp esi, eax
jge 0x3016a38f
lea esp, [esp]
mov ecx, dword [ebp + 4]
mov eax, dword [ebx + 0x54]
cmp ecx, eax
jae 0x3016a38f
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x30169c83
mov edi, dword [esp + 0x48]
push edi
lea edi, [ebx + 0x1c]
push edi
push eax
push edx
push ecx
call fcn.30194ee0
add esp, 0x14
test eax, eax
jne 0x3016a38f
jmp 0x30169ca8
mov edx, dword [ebx + 0x1c]
sub eax, edx
cmp ecx, eax
ja 0x30169ca8
mov al, byte [ecx]
cmp al, byte [ebx + 0x20]
jne 0x30169ca8
cmp edx, 1
je 0x3016a38f
mov cl, byte [ecx + 1]
cmp cl, byte [ebx + 0x21]
je 0x3016a38f
mov edx, dword [ebp + 4]
inc edx
mov dword [ebp + 4], edx
mov ecx, dword [ebx + 0x54]
mov eax, edx
cmp eax, ecx
jae 0x30169ccb
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x30169ccb
inc eax
mov dword [ebp + 4], eax
cmp eax, dword [ebx + 0x54]
jb 0x30169cb8
mov eax, dword [ebp + 0x78]
inc esi
cmp esi, eax
jl 0x30169c50
jmp 0x3016a38f
mov eax, dword [ebx + 0x54]
mov dword [ebp + 4], eax
jmp 0x3016a38f
mov ecx, dword [ebp + 0x7c]
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 4]
sub eax, ecx
mov ecx, dword [ebx + 0x54]
sub ecx, edx
cmp eax, ecx
jbe 0x30169cfd
mov eax, ecx
add eax, edx
mov dword [ebp + 4], eax
jmp 0x3016a38f
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
mov dword [esp + 0x44], eax
jge 0x3016a38f
jmp 0x30169d20
mov edx, dword [ebp + 4]
cmp edx, dword [ebx + 0x54]
mov edi, 1
jae 0x3016a38f
movzx eax, byte [edx]
cmp eax, 0xc0
jb 0x30169d7b
mov ecx, eax
and ecx, 0x3f
movzx edi, byte [ecx + 0x30259078]
mov esi, dword [edi*4 + 0x3025905c]
and esi, eax
lea ecx, [edi + edi*2]
shl ecx, 1
shl esi, cl
mov eax, esi
mov esi, 1
cmp edi, esi
jl 0x30169d76
xor ebx, ebx
mov bl, byte [edx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or eax, ebx
inc esi
cmp esi, edi
jle 0x30169d62
mov ebx, dword [esp + 0x54]
inc edi
cmp eax, 0xd
jne 0x30169d95
inc edx
mov dword [ebp + 4], edx
cmp edx, dword [ebx + 0x54]
jae 0x3016a38f
cmp byte [edx], 0xa
jne 0x30169dc2
inc edx
jmp 0x30169dbf
cmp eax, 0xa
je 0x30169dbd
cmp eax, 0xb
je 0x30169dbd
cmp eax, 0xc
je 0x30169dbd
cmp eax, 0x85
je 0x30169dbd
cmp eax, 0x2028
je 0x30169dbd
cmp eax, 0x2029
jne 0x3016a38f
add edx, edi
mov dword [ebp + 4], edx
mov eax, dword [esp + 0x44]
mov ecx, dword [ebp + 0x78]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jl 0x30169d20
jmp 0x3016a38f
mov edi, dword [ebp + 0x7c]
cmp edi, dword [ebp + 0x78]
mov dword [esp + 0x44], edi
jge 0x3016a38f
jmp 0x30169df0
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
mov esi, 1
jae 0x3016a38f
movzx eax, byte [eax]
cmp eax, 0xc0
jb 0x30169e58
mov edx, eax
and edx, 0x3f
movzx edx, byte [edx + 0x30259078]
mov edi, dword [edx*4 + 0x3025905c]
lea esi, [edx + edx*2]
shl esi, 1
and edi, eax
mov ecx, esi
shl edi, cl
mov eax, edi
mov edi, 1
cmp edx, edi
jl 0x30169e4d
mov ecx, dword [ebp + 4]
xor ebx, ebx
mov bl, byte [ecx + edi]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or eax, ebx
inc edi
cmp edi, edx
jle 0x30169e34
mov ebx, dword [esp + 0x54]
mov edi, dword [esp + 0x44]
lea esi, [edx + 1]
cmp eax, 0x180e
ja 0x30169e7b
je 0x30169ea4
cmp eax, 0xa0
ja 0x30169e74
je 0x30169ea4
cmp eax, 9
je 0x30169ea4
cmp eax, 0x20
jmp 0x30169e9e
cmp eax, 0x1680
jmp 0x30169e9e
cmp eax, 0x205f
ja 0x30169e99
je 0x30169ea4
cmp eax, 0x2000
jb 0x30169ea0
cmp eax, 0x200a
jbe 0x30169ea4
cmp eax, 0x202f
jmp 0x30169e9e
cmp eax, 0x3000
je 0x30169ea4
xor eax, eax
jmp 0x30169ea9
mov eax, 1
mov edx, dword [ebp + 0x68]
xor ecx, ecx
cmp edx, 0x11
sete cl
cmp eax, ecx
je 0x3016a38f
mov eax, dword [ebp + 4]
add eax, esi
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0x78]
inc edi
cmp edi, eax
mov dword [esp + 0x44], edi
jl 0x30169df0
jmp 0x3016a38f
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
mov dword [esp + 0x44], eax
jge 0x3016a38f
lea esp, [esp]
mov edx, dword [ebp + 4]
cmp edx, dword [ebx + 0x54]
mov edi, 1
jae 0x3016a38f
movzx eax, byte [edx]
cmp eax, 0xc0
jb 0x30169f4b
mov ecx, eax
and ecx, 0x3f
movzx edi, byte [ecx + 0x30259078]
mov esi, dword [edi*4 + 0x3025905c]
and esi, eax
lea ecx, [edi + edi*2]
shl ecx, 1
shl esi, cl
mov eax, esi
mov esi, 1
cmp edi, esi
jl 0x30169f46
xor ebx, ebx
mov bl, byte [edx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or eax, ebx
inc esi
cmp esi, edi
jle 0x30169f32
mov ebx, dword [esp + 0x54]
inc edi
cmp eax, 0x85
ja 0x30169f91
je 0x30169f9f
cmp eax, 0xa
jb 0x30169f5e
cmp eax, 0xd
jbe 0x30169f9f
xor eax, eax
mov esi, dword [ebp + 0x68]
xor ecx, ecx
cmp esi, 0x13
sete cl
cmp eax, ecx
je 0x3016a38f
mov eax, dword [esp + 0x44]
add edx, edi
mov dword [ebp + 4], edx
mov ecx, dword [ebp + 0x78]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jl 0x30169ef0
jmp 0x3016a38f
cmp eax, 0x2028
jb 0x30169f5e
cmp eax, 0x2029
ja 0x30169f5e
mov eax, 1
jmp 0x30169f60
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
mov dword [esp + 0x44], eax
jge 0x3016a38f
jmp 0x30169fc0
mov edx, dword [ebp + 4]
cmp edx, dword [ebx + 0x54]
mov esi, 1
jae 0x3016a38f
movzx edi, byte [edx]
cmp edi, 0xc0
jb 0x3016a01c
mov eax, edi
and eax, 0x3f
movzx esi, byte [eax + 0x30259078]
mov eax, dword [esi*4 + 0x3025905c]
and eax, edi
lea ecx, [esi + esi*2]
shl ecx, 1
shl eax, cl
mov edi, eax
mov eax, 1
cmp esi, eax
jl 0x3016a017
xor ebx, ebx
mov bl, byte [edx + eax]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
cmp eax, esi
jle 0x3016a003
mov ebx, dword [esp + 0x54]
inc esi
cmp edi, 0x100
jae 0x3016a031
mov ecx, dword [ebx + 0x28]
test byte [edi + ecx], 4
jne 0x3016a38f
mov eax, dword [esp + 0x44]
add edx, esi
mov dword [ebp + 4], edx
mov ecx, dword [ebp + 0x78]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jl 0x30169fc0
jmp 0x3016a38f
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
mov dword [esp + 0x44], eax
jge 0x3016a38f
nop
mov edx, dword [ebp + 4]
cmp edx, dword [ebx + 0x54]
mov esi, 1
jae 0x3016a38f
movzx edi, byte [edx]
cmp edi, 0xc0
jb 0x3016a0bc
mov eax, edi
and eax, 0x3f
movzx esi, byte [eax + 0x30259078]
mov eax, dword [esi*4 + 0x3025905c]
and eax, edi
lea ecx, [esi + esi*2]
shl ecx, 1
shl eax, cl
mov edi, eax
mov eax, 1
cmp esi, eax
jl 0x3016a0b7
xor ebx, ebx
mov bl, byte [edx + eax]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
cmp eax, esi
jle 0x3016a0a3
mov ebx, dword [esp + 0x54]
inc esi
cmp edi, 0x100
jae 0x3016a38f
mov ecx, dword [ebx + 0x28]
test byte [edi + ecx], 4
je 0x3016a38f
mov eax, dword [esp + 0x44]
add edx, esi
mov dword [ebp + 4], edx
mov ecx, dword [ebp + 0x78]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jl 0x3016a060
jmp 0x3016a38f
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
mov dword [esp + 0x44], eax
jge 0x3016a38f
mov edx, dword [esp + 0x54]
mov ebx, dword [ebp + 4]
cmp ebx, dword [edx + 0x54]
mov esi, 1
jae 0x3016a38f
movzx edi, byte [ebx]
cmp edi, 0xc0
jb 0x3016a165
mov eax, edi
and eax, 0x3f
movzx esi, byte [eax + 0x30259078]
mov edx, dword [esi*4 + 0x3025905c]
lea ecx, [esi + esi*2]
and edx, edi
shl ecx, 1
shl edx, cl
mov eax, 1
cmp esi, eax
mov edi, edx
jl 0x3016a164
lea ebx, [ebx]
xor edx, edx
mov dl, byte [eax + ebx]
sub ecx, 6
and edx, 0x3f
shl edx, cl
or edi, edx
inc eax
cmp eax, esi
jle 0x3016a150
inc esi
cmp edi, 0x100
jae 0x3016a180
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x28]
test byte [edi + ecx], 1
jne 0x3016a38f
jmp 0x3016a191
push edi
call fcn.30166d70
add esp, 4
cmp al, 1
je 0x3016a38f
mov eax, dword [esp + 0x44]
add ebx, esi
mov dword [ebp + 4], ebx
mov ecx, dword [ebp + 0x78]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jl 0x3016a103
jmp 0x3016a38f
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
mov dword [esp + 0x44], eax
jge 0x3016a38f
nop
mov edx, dword [esp + 0x54]
mov ebx, dword [ebp + 4]
cmp ebx, dword [edx + 0x54]
mov esi, 1
jae 0x3016a38f
movzx edi, byte [ebx]
cmp edi, 0xc0
jb 0x3016a21c
mov eax, edi
and eax, 0x3f
movzx esi, byte [eax + 0x30259078]
mov edx, dword [esi*4 + 0x3025905c]
lea ecx, [esi + esi*2]
and edx, edi
shl ecx, 1
shl edx, cl
mov eax, 1
cmp esi, eax
mov edi, edx
jl 0x3016a21b
xor edx, edx
mov dl, byte [eax + ebx]
sub ecx, 6
and edx, 0x3f
shl edx, cl
or edi, edx
inc eax
cmp eax, esi
jle 0x3016a207
inc esi
cmp edi, 0x100
jae 0x3016a231
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x28]
test byte [edi + ecx], 1
jmp 0x3016a23c
push edi
call fcn.30166d70
add esp, 4
test al, al
je 0x3016a38f
mov eax, dword [esp + 0x44]
add esi, ebx
mov dword [ebp + 4], esi
mov ecx, dword [ebp + 0x78]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jl 0x3016a1c0
jmp 0x3016a38f
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
mov dword [esp + 0x44], eax
jge 0x3016a38f
mov edx, dword [ebp + 4]
cmp edx, dword [ebx + 0x54]
mov esi, 1
jae 0x3016a38f
movzx edi, byte [edx]
cmp edi, 0xc0
jb 0x3016a2cc
mov eax, edi
and eax, 0x3f
movzx esi, byte [eax + 0x30259078]
mov eax, dword [esi*4 + 0x3025905c]
and eax, edi
lea ecx, [esi + esi*2]
shl ecx, 1
shl eax, cl
mov edi, eax
mov eax, 1
cmp esi, eax
jl 0x3016a2c7
xor ebx, ebx
mov bl, byte [eax + edx]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
cmp eax, esi
jle 0x3016a2b3
mov ebx, dword [esp + 0x54]
inc esi
cmp edi, 0x100
jae 0x3016a2e1
mov ecx, dword [ebx + 0x28]
test byte [edi + ecx], 0x10
jne 0x3016a38f
mov eax, dword [esp + 0x44]
add esi, edx
mov dword [ebp + 4], esi
mov ecx, dword [ebp + 0x78]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jl 0x3016a270
jmp 0x3016a38f
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
mov dword [esp + 0x44], eax
jge 0x3016a38f
nop
mov edx, dword [ebp + 4]
cmp edx, dword [ebx + 0x54]
mov esi, 1
jae 0x3016a38f
movzx edi, byte [edx]
cmp edi, 0xc0
jb 0x3016a369
mov eax, edi
and eax, 0x3f
movzx esi, byte [eax + 0x30259078]
mov eax, dword [esi*4 + 0x3025905c]
and eax, edi
lea ecx, [esi + esi*2]
shl ecx, 1
shl eax, cl
mov edi, eax
mov eax, 1
cmp esi, eax
jl 0x3016a364
nop
xor ebx, ebx
mov bl, byte [eax + edx]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
cmp eax, esi
jle 0x3016a350
mov ebx, dword [esp + 0x54]
inc esi
cmp edi, 0x100
jae 0x3016a38f
mov ecx, dword [ebx + 0x28]
test byte [edi + ecx], 0x10
je 0x3016a38f
mov eax, dword [esp + 0x44]
add esi, edx
mov dword [ebp + 4], esi
mov ecx, dword [ebp + 0x78]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jl 0x3016a310
mov eax, dword [esp + 0x4c]
test eax, eax
jne 0x30166f01
jmp 0x3016b8ee
add eax, 0xfffffffa
cmp eax, 0xe
ja case.0x3016b3d6.14
jmp dword [eax*4 + 0x3016c658]
test byte [ebp + 0x14], 4
jne case.0x3016a3ac.13
mov esi, dword [ebp + 0x7c]
cmp esi, dword [ebp + 0x78]
jge 0x3016a740
mov ecx, dword [ebp + 4]
mov eax, dword [ebx + 0x54]
cmp ecx, eax
jae 0x3016a740
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x3016a3f5
push 0
lea edi, [ebx + 0x1c]
push edi
push eax
push edx
push ecx
call fcn.30194ee0
add esp, 0x14
test eax, eax
jne 0x3016a740
jmp 0x3016a41a
mov edx, dword [ebx + 0x1c]
sub eax, edx
cmp ecx, eax
ja 0x3016a41a
mov al, byte [ecx]
cmp al, byte [ebx + 0x20]
jne 0x3016a41a
cmp edx, 1
je 0x3016a740
mov cl, byte [ecx + 1]
cmp cl, byte [ebx + 0x21]
je 0x3016a740
inc dword [ebp + 4]
mov eax, dword [ebp + 0x78]
inc esi
cmp esi, eax
jl 0x3016a3c5
jmp 0x3016a740
mov ecx, dword [ebp + 0x7c]
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 4]
sub eax, ecx
mov ecx, dword [ebx + 0x54]
sub ecx, edx
cmp eax, ecx
jbe 0x3016a440
mov eax, ecx
add eax, edx
mov dword [ebp + 4], eax
jmp 0x3016a740
mov edx, dword [ebp + 0x7c]
cmp edx, dword [ebp + 0x78]
jge 0x3016a740
jmp 0x3016a460
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae 0x3016a740
movzx ecx, byte [eax]
cmp ecx, 0xd
jne 0x3016a488
inc eax
mov dword [ebp + 4], eax
cmp eax, dword [ebx + 0x54]
jae 0x3016a740
cmp byte [eax], 0xa
jne 0x3016a4a7
jmp 0x3016a4a3
cmp ecx, 0xa
je 0x3016a4a3
cmp ecx, 0xb
je 0x3016a4a3
cmp ecx, 0xc
je 0x3016a4a3
cmp ecx, 0x85
jne 0x3016a740
inc eax
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0x78]
inc edx
cmp edx, eax
jl 0x3016a460
jmp 0x3016a740
mov edx, dword [ebp + 0x7c]
cmp edx, dword [ebp + 0x78]
jge 0x3016a740
mov ecx, dword [ebp + 4]
cmp ecx, dword [ebx + 0x54]
jae 0x3016a740
movzx eax, byte [ecx]
cmp eax, 9
je 0x3016a740
cmp eax, 0x20
je 0x3016a740
cmp eax, 0xa0
je 0x3016a740
inc ecx
mov dword [ebp + 4], ecx
mov eax, dword [ebp + 0x78]
inc edx
cmp edx, eax
jl 0x3016a4c0
jmp 0x3016a740
mov edx, dword [ebp + 0x7c]
cmp edx, dword [ebp + 0x78]
jge 0x3016a740
lea esp, [esp]
mov ecx, dword [ebp + 4]
cmp ecx, dword [ebx + 0x54]
jae 0x3016a740
movzx eax, byte [ecx]
cmp eax, 9
je 0x3016a534
cmp eax, 0x20
je 0x3016a534
cmp eax, 0xa0
jne 0x3016a740
inc ecx
mov dword [ebp + 4], ecx
mov eax, dword [ebp + 0x78]
inc edx
cmp edx, eax
jl 0x3016a510
jmp 0x3016a740
mov edx, dword [ebp + 0x7c]
cmp edx, dword [ebp + 0x78]
jge 0x3016a740
mov ecx, dword [ebp + 4]
cmp ecx, dword [ebx + 0x54]
jae 0x3016a740
movzx eax, byte [ecx]
cmp eax, 0xa
je 0x3016a740
cmp eax, 0xb
je 0x3016a740
cmp eax, 0xc
je 0x3016a740
cmp eax, 0xd
je 0x3016a740
cmp eax, 0x85
je 0x3016a740
inc ecx
mov dword [ebp + 4], ecx
mov eax, dword [ebp + 0x78]
inc edx
cmp edx, eax
jl 0x3016a551
jmp 0x3016a740
mov edx, dword [ebp + 0x7c]
cmp edx, dword [ebp + 0x78]
jge 0x3016a740
lea esp, [esp]
mov ecx, dword [ebp + 4]
cmp ecx, dword [ebx + 0x54]
jae 0x3016a740
movzx eax, byte [ecx]
cmp eax, 0xa
je 0x3016a5de
cmp eax, 0xb
je 0x3016a5de
cmp eax, 0xc
je 0x3016a5de
cmp eax, 0xd
je 0x3016a5de
cmp eax, 0x85
jne 0x3016a740
inc ecx
mov dword [ebp + 4], ecx
mov eax, dword [ebp + 0x78]
inc edx
cmp edx, eax
jl 0x3016a5b0
jmp 0x3016a740
mov ecx, dword [ebp + 0x7c]
cmp ecx, dword [ebp + 0x78]
jge 0x3016a740
jmp 0x3016a600
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae 0x3016a740
movzx edx, byte [eax]
mov esi, dword [ebx + 0x28]
test byte [edx + esi], 4
jne 0x3016a740
inc eax
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0x78]
inc ecx
cmp ecx, eax
jl 0x3016a600
jmp 0x3016a740
mov ecx, dword [ebp + 0x7c]
cmp ecx, dword [ebp + 0x78]
jge 0x3016a740
lea esp, [esp]
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae 0x3016a740
movzx edx, byte [eax]
mov esi, dword [ebx + 0x28]
test byte [edx + esi], 4
je 0x3016a740
inc eax
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0x78]
inc ecx
cmp ecx, eax
jl 0x3016a640
jmp 0x3016a740
mov ecx, dword [ebp + 0x7c]
cmp ecx, dword [ebp + 0x78]
jge 0x3016a740
lea esp, [esp]
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae 0x3016a740
movzx edx, byte [eax]
mov esi, dword [ebx + 0x28]
test byte [edx + esi], 1
jne 0x3016a740
inc eax
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0x78]
inc ecx
cmp ecx, eax
jl 0x3016a680
jmp 0x3016a740
mov ecx, dword [ebp + 0x7c]
cmp ecx, dword [ebp + 0x78]
jge 0x3016a740
lea esp, [esp]
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae 0x3016a740
movzx edx, byte [eax]
mov esi, dword [ebx + 0x28]
test byte [edx + esi], 1
je 0x3016a740
inc eax
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0x78]
inc ecx
cmp ecx, eax
jl 0x3016a6c0
jmp 0x3016a740
mov ecx, dword [ebp + 0x7c]
cmp ecx, dword [ebp + 0x78]
jge 0x3016a740
lea ebx, [ebx]
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae 0x3016a740
movzx edx, byte [eax]
mov esi, dword [ebx + 0x28]
test byte [edx + esi], 0x10
jne 0x3016a740
inc eax
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0x78]
inc ecx
cmp ecx, eax
jl 0x3016a6f0
jmp 0x3016a740
mov ecx, dword [ebp + 0x7c]
cmp ecx, dword [ebp + 0x78]
jge 0x3016a740
lea ebx, [ebx]
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
jae 0x3016a740
movzx edx, byte [eax]
mov esi, dword [ebx + 0x28]
test byte [edx + esi], 0x10
je 0x3016a740
inc eax
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0x78]
inc ecx
cmp ecx, eax
jl 0x3016a720
mov eax, dword [esp + 0x4c]
test eax, eax
jne 0x30166f01
jmp 0x3016b950
mov eax, ebp
mov ebp, dword [ebp]
push eax
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test ebp, ebp
je 0x3016c317
mov esi, 0xfffffffb
mov eax, dword [ebp + 0x198]
dec eax
cmp eax, 0x35
ja case.0x3016a77d.36
jmp dword [eax*4 + 0x3016c694]
test esi, esi
je 0x3016a794
cmp esi, 0xfffffc1c
jne case.0x3016a77d.48
mov eax, dword [ebp + 0x8c]
mov edx, dword [esp + 0x54]
mov dword [edx + 0x64], eax
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
mov dword [ebp + 8], eax
cmp byte [eax], 0x53
je 0x3016bc70
mov ecx, dword [ebp + 0x18c]
mov eax, dword [ebp + 0x84]
mov edi, dword [edx + 0xc]
shl ecx, 2
lea edi, [edi + eax*4]
mov eax, ecx
shr ecx, 2
lea esi, [ebp + 0x114]
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [edx + 0x10]
mov esi, dword [ebp + 0x80]
mov edx, dword [edx + 0xc]
mov eax, dword [ebp + 0x98]
sub ecx, esi
mov dword [edx + ecx*4], eax
jmp case.0x3016b742.14
test esi, esi
je 0x3016a80f
cmp esi, 0xfffffc1c
jne case.0x3016a77d.48
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add ecx, eax
mov dword [ebp + 8], ecx
xor edx, edx
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
cmp byte [ecx + eax], 0x53
je 0x3016c0cb
cmp dword [ebp + 0x1c], edx
jne 0x3016c0b1
movzx edx, byte [eax]
movzx ecx, byte [edx + 0x30258fb8]
add ecx, eax
mov dword [ebp + 8], ecx
jmp 0x30166e76
cmp esi, 1
je 0x3016ba5d
test esi, esi
je 0x3016a86c
cmp esi, 0xfffffc1c
jne case.0x3016a77d.48
mov dword [ebp + 0x5c], 0
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add ecx, eax
mov dword [ebp + 8], ecx
mov eax, dword [ebp + 0x5c]
test eax, eax
jne 0x3016c0e5
mov eax, dword [ebp + 8]
cmp byte [eax], 0x53
je 0x3016c0e5
add eax, 3
mov dword [ebp + 8], eax
jmp 0x30166f01
cmp esi, 1
je 0x3016a8d3
test esi, esi
je 0x3016a8ba
cmp esi, 0xfffffc1c
jne case.0x3016a77d.48
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
mov dword [ebp + 8], eax
cmp byte [eax], 0x53
je case.0x30166f56.87
mov edx, dword [ebp + 8]
cmp byte [edx], 0x54
je case.0x3016b742.14
test byte [ebp + 0x1c], 1
jne 0x3016a97e
lea esp, [esp]
mov eax, dword [ebp + 8]
xor edx, edx
mov dh, byte [eax + 1]
mov dl, byte [eax + 2]
add eax, edx
mov dword [ebp + 8], eax
cmp byte [eax], 0x53
je 0x3016a8f0
add eax, 3
mov dword [ebp + 8], eax
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x60]
mov dword [ebp + 0x10], ecx
jmp 0x30166f01
cmp esi, 1
je case.0x3016b742.14
test esi, esi
je 0x3016a933
cmp esi, 0xfffffc1c
jne case.0x3016a77d.48
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
mov dword [ebp + 8], eax
cmp byte [eax], 0x53
je case.0x30166f56.88
test byte [ebp + 0x1c], 1
je 0x3016a89a
jmp 0x3016a97e
cmp esi, 1
jne 0x3016a99f
mov eax, dword [esp + 0x54]
mov edx, dword [ebp + 0x40]
mov dword [eax + 0x74], edx
mov eax, dword [ebp + 0x50]
lea ecx, [ebp + 0x9c]
cmp eax, ecx
je 0x3016a97e
push eax
call dword [sym.npswf32.dll_pcre_free]
add esp, 4
mov eax, ebp
mov ebp, dword [ebp]
push eax
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test ebp, ebp
je 0x3016c2d6
mov esi, 1
jmp 0x3016a76d
test esi, esi
je 0x3016a9af
cmp esi, 0xfffffc1c
jne case.0x3016a77d.48
mov ebx, dword [esp + 0x54]
lea edx, [ebp + 0x40]
mov dword [ebx + 0x74], edx
mov ecx, dword [ebp + 0x54]
mov esi, dword [ebp + 0x50]
mov edi, dword [ebx + 0xc]
shl ecx, 2
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x24]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
mov dword [ebp + 0x24], eax
cmp byte [eax], 0x53
je 0x3016bd23
mov edx, dword [edx]
mov dword [ebx + 0x74], edx
mov eax, dword [ebp + 0x50]
lea ecx, [ebp + 0x9c]
cmp eax, ecx
je case.0x3016b742.14
push eax
call dword [sym.npswf32.dll_pcre_free]
add esp, 4
jmp case.0x3016b742.14
cmp esi, 1
je 0x3016aa3f
test esi, esi
je 0x3016aa26
cmp esi, 0xfffffc1c
jne case.0x3016a77d.48
mov eax, dword [ebp + 8]
xor edx, edx
mov dh, byte [eax + 1]
mov dl, byte [eax + 2]
add eax, edx
mov dword [ebp + 8], eax
cmp byte [eax], 0x53
je 0x3016bd52
mov eax, dword [ebp + 8]
mov al, byte [eax]
cmp al, 0x5c
je 0x3016aa50
cmp al, 0x53
jne case.0x3016b742.14
mov eax, dword [ebp + 8]
xor edx, edx
mov dh, byte [eax + 1]
mov dl, byte [eax + 2]
add eax, edx
mov dword [ebp + 8], eax
cmp byte [eax], 0x53
je 0x3016aa50
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x60]
mov dword [ebp + 0x10], ecx
mov eax, dword [eax + 0x5c]
mov dword [ebp + 4], eax
mov ecx, dword [ebp + 8]
cmp byte [ecx], 0x54
je 0x3016aa86
cmp eax, dword [ebp + 0x3c]
jne 0x3016c1b1
add ecx, 3
mov dword [ebp + 8], ecx
jmp 0x30166f01
test esi, esi
jne case.0x3016a77d.48
mov edx, dword [ebp + 0x38]
mov dword [ebp + 8], edx
mov dword [ebp + 0x1c], 0
jmp 0x30166e76
test esi, esi
jne case.0x3016a77d.48
nop
mov eax, dword [ebp + 0x30]
xor edx, edx
mov dh, byte [eax + 1]
mov dl, byte [eax + 2]
add eax, edx
mov dword [ebp + 0x30], eax
cmp byte [eax], 0x53
je 0x3016aab0
add eax, 3
mov dword [ebp + 8], eax
jmp 0x30166f01
test esi, esi
je 0x3016754f
jmp case.0x3016a77d.48
test esi, esi
jne case.0x3016a77d.48
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x3016c258
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x32
mov ecx, dword [ebp + 4]
mov dword [eax + 4], ecx
mov edx, dword [ebp + 0x38]
add esp, 4
jmp 0x3016bb08
test esi, esi
je 0x3016c248
mov eax, ebp
push eax
mov ebp, dword [ebp]
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test ebp, ebp
jne 0x3016a76d
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
test esi, esi
jne case.0x3016a77d.48
mov ecx, dword [ebp + 0x70]
cmp ecx, dword [ebp + 0x78]
jge case.0x3016b742.14
mov edx, dword [ebp + 0x14]
mov eax, dword [ebp + 4]
mov ecx, dword [ebp + 0x84]
push edx
mov edx, dword [esp + 0x58]
push eax
mov eax, dword [ebp + 0x74]
call fcn.30166da0
add esp, 8
test eax, eax
je case.0x3016b742.14
mov ecx, dword [ebp + 0x74]
add dword [ebp + 4], ecx
inc dword [ebp + 0x70]
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0xe
jmp 0x3016b971
test esi, esi
jne case.0x3016a77d.48
mov ecx, dword [ebp + 0x74]
sub dword [ebp + 4], ecx
mov edx, dword [ebp + 4]
cmp edx, dword [ebp + 0x34]
jb case.0x3016b742.14
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0xf
jmp 0x3016b903
test esi, esi
jne case.0x3016a77d.48
mov eax, dword [ebp + 0x70]
cmp eax, dword [ebp + 0x78]
jge case.0x3016b742.14
mov ecx, dword [esp + 0x54]
mov eax, dword [ebp + 4]
cmp eax, dword [ecx + 0x54]
jae case.0x3016b742.14
movzx esi, byte [eax]
inc eax
cmp esi, 0xc0
mov dword [ebp + 4], eax
jb 0x3016ac2e
mov edx, esi
and edx, 0x3f
movzx edx, byte [edx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea edi, [edx + edx*2]
shl edi, 1
and ebx, esi
mov ecx, edi
shl ebx, cl
test edx, edx
mov esi, ebx
jle 0x3016ac2e
xor ebx, ebx
mov bl, byte [eax]
sub edi, 6
mov ecx, edi
and ebx, 0x3f
shl ebx, cl
or esi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x3016ac17
cmp esi, 0xff
jbe 0x3016ac64
cmp dword [ebp + 0x88], 0x4d
je case.0x3016b742.14
mov eax, dword [ebp + 0x70]
inc eax
push 0x19c
mov dword [ebp + 0x70], eax
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x10
jmp 0x3016b971
mov edx, dword [ebp + 0x2c]
mov ecx, esi
and ecx, 7
mov ebx, 1
mov eax, esi
shl ebx, cl
shr eax, 3
test byte [eax + edx], bl
jne 0x3016ac43
jmp case.0x3016b742.14
test esi, esi
jne case.0x3016a77d.48
mov eax, dword [ebp + 0x70]
cmp eax, dword [ebp + 0x78]
jge case.0x3016b742.14
mov ecx, dword [esp + 0x54]
mov eax, dword [ebp + 4]
cmp eax, dword [ecx + 0x54]
jae case.0x3016b742.14
movzx ecx, byte [eax]
mov edx, ecx
inc eax
and ecx, 7
mov ebx, 1
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0x2c]
shl ebx, cl
shr edx, 3
test byte [edx + eax], bl
je case.0x3016b742.14
inc dword [ebp + 0x70]
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x11
jmp 0x3016b903
test esi, esi
jne case.0x3016a77d.48
mov ecx, dword [ebp + 4]
mov edx, dword [ebp + 0x34]
cmp ecx, edx
lea eax, [ecx - 1]
mov dword [ebp + 4], eax
je case.0x3016b742.14
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x3016ad1e
jmp 0x3016ad10
dec eax
mov dword [ebp + 4], eax
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
je 0x3016ad10
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x12
jmp 0x3016b971
test esi, esi
jne case.0x3016a77d.48
dec dword [ebp + 4]
mov eax, dword [ebp + 4]
cmp eax, dword [ebp + 0x34]
jb case.0x3016b742.14
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x13
jmp 0x3016b903
test esi, esi
jne case.0x3016a77d.48
mov ecx, dword [ebp + 0x70]
cmp ecx, dword [ebp + 0x78]
jge case.0x3016b742.14
mov edx, dword [esp + 0x54]
mov eax, dword [ebp + 4]
cmp eax, dword [edx + 0x54]
jae case.0x3016b742.14
movzx edi, byte [eax]
inc eax
cmp edi, 0xc0
mov dword [ebp + 4], eax
jb 0x3016add7
mov ecx, edi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea esi, [edx + edx*2]
shl esi, 1
and ebx, edi
mov ecx, esi
shl ebx, cl
test edx, edx
mov edi, ebx
jle 0x3016add7
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x3016adc0
mov edx, dword [ebp + 0x2c]
push edx
push edi
call fcn.30194d50
add esp, 8
test eax, eax
je case.0x3016b742.14
inc dword [ebp + 0x70]
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x14
jmp 0x3016b971
test esi, esi
jne case.0x3016a77d.48
mov ecx, dword [ebp + 4]
mov edx, dword [ebp + 0x34]
cmp ecx, edx
lea eax, [ecx - 1]
mov dword [ebp + 4], eax
je case.0x3016b742.14
mov ecx, dword [esp + 0x48]
test ecx, ecx
je 0x3016ae45
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
jne 0x3016ae45
dec eax
mov dword [ebp + 4], eax
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
je 0x3016ae37
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x15
jmp 0x3016b903
test esi, esi
jne case.0x3016a77d.48
mov eax, dword [ebp + 0x70]
cmp eax, dword [ebp + 0x78]
jge case.0x3016b742.14
mov ecx, dword [esp + 0x54]
mov esi, dword [ebp + 4]
cmp esi, dword [ecx + 0x54]
jae case.0x3016b742.14
mov ecx, dword [ebp + 0x74]
mov edi, dword [ebp + 0x28]
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne case.0x3016b742.14
mov edx, dword [ebp + 0x74]
add dword [ebp + 4], edx
inc dword [ebp + 0x70]
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x16
jmp 0x3016b903
test esi, esi
jne case.0x3016a77d.48
mov eax, dword [ebp + 4]
cmp eax, dword [ebp + 0x34]
je case.0x3016b742.14
mov edx, dword [ebp + 0x74]
sub eax, edx
mov dword [ebp + 4], eax
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x17
jmp 0x3016b903
test esi, esi
jne case.0x3016a77d.48
mov ecx, dword [ebp + 0x70]
cmp ecx, dword [ebp + 0x78]
jge case.0x3016b742.14
mov ecx, dword [esp + 0x54]
mov eax, dword [ebp + 4]
cmp eax, dword [ecx + 0x54]
jae case.0x3016b742.14
movzx edx, byte [eax]
mov ecx, dword [ecx + 0x24]
movzx edx, byte [ecx + edx]
mov ecx, dword [ebp + 0x6c]
inc eax
cmp ecx, edx
mov dword [ebp + 4], eax
jne case.0x3016b742.14
mov eax, dword [ebp + 0x70]
inc eax
push 0x19c
mov dword [ebp + 0x70], eax
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x18
jmp 0x3016b971
mov ecx, dword [ebp + 4]
dec ecx
test esi, esi
mov dword [ebp + 4], ecx
jne case.0x3016a77d.48
mov edx, dword [ebp + 4]
cmp edx, dword [ebp + 0x34]
jb case.0x3016b742.14
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x19
jmp 0x3016b903
test esi, esi
jne case.0x3016a77d.48
mov eax, dword [ebp + 0x70]
cmp eax, dword [ebp + 0x78]
jge case.0x3016b742.14
mov ecx, dword [esp + 0x54]
mov eax, dword [ebp + 4]
cmp eax, dword [ecx + 0x54]
jae case.0x3016b742.14
movzx edx, byte [eax]
mov ecx, dword [ebp + 0x6c]
inc eax
cmp ecx, edx
mov dword [ebp + 4], eax
jne case.0x3016b742.14
inc dword [ebp + 0x70]
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x1a
jmp 0x3016b971
mov ecx, dword [ebp + 4]
dec ecx
test esi, esi
mov dword [ebp + 4], ecx
jne case.0x3016a77d.48
mov edx, dword [ebp + 4]
cmp edx, dword [ebp + 0x34]
jb case.0x3016b742.14
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x1b
jmp 0x3016b903
test esi, esi
jne case.0x3016a77d.48
mov eax, dword [ebp + 4]
movzx edi, byte [eax]
inc eax
cmp edi, 0xc0
mov dword [ebp + 4], eax
jb 0x3016b05c
mov ecx, edi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea esi, [edx + edx*2]
shl esi, 1
and ebx, edi
mov ecx, esi
shl ebx, cl
test edx, edx
mov edi, ebx
jle 0x3016b05c
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x3016b045
cmp edi, 0x100
jae 0x3016b06f
mov edx, dword [esp + 0x54]
mov ecx, dword [edx + 0x24]
movzx edi, byte [ecx + edi]
mov edx, dword [ebp + 0x70]
cmp edx, dword [ebp + 0x78]
jge case.0x3016b742.14
mov ecx, dword [esp + 0x54]
cmp eax, dword [ecx + 0x54]
jae case.0x3016b742.14
cmp dword [ebp + 0x6c], edi
je case.0x3016b742.14
inc dword [ebp + 0x70]
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x1c
jmp 0x3016b971
test esi, esi
jne case.0x3016a77d.48
mov edx, dword [ebp + 0x70]
cmp edx, dword [ebp + 0x78]
jge case.0x3016b742.14
mov ecx, dword [esp + 0x54]
mov eax, dword [ebp + 4]
cmp eax, dword [ecx + 0x54]
jae case.0x3016b742.14
movzx edx, byte [eax]
mov ecx, dword [ecx + 0x24]
movzx edx, byte [ecx + edx]
mov ecx, dword [ebp + 0x6c]
inc eax
cmp ecx, edx
mov dword [ebp + 4], eax
je case.0x3016b742.14
mov eax, dword [ebp + 0x70]
inc eax
push 0x19c
mov dword [ebp + 0x70], eax
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x1d
jmp 0x3016b903
test esi, esi
jne case.0x3016a77d.48
mov ecx, dword [ebp + 4]
mov edx, dword [ebp + 0x34]
cmp ecx, edx
lea eax, [ecx - 1]
mov dword [ebp + 4], eax
je case.0x3016b742.14
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x3016b140
dec eax
mov dword [ebp + 4], eax
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
je 0x3016b132
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x1e
jmp 0x3016b971
test esi, esi
jne case.0x3016a77d.48
dec dword [ebp + 4]
mov eax, dword [ebp + 4]
cmp eax, dword [ebp + 0x34]
jb case.0x3016b742.14
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x1f
jmp 0x3016b903
test esi, esi
jne case.0x3016a77d.48
mov eax, dword [ebp + 4]
movzx edi, byte [eax]
inc eax
cmp edi, 0xc0
mov dword [ebp + 4], eax
jb 0x3016b1e7
mov ecx, edi
and ecx, 0x3f
movzx edx, byte [ecx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea esi, [edx + edx*2]
shl esi, 1
and ebx, edi
mov ecx, esi
shl ebx, cl
test edx, edx
mov edi, ebx
jle 0x3016b1e7
lea esp, [esp]
xor ebx, ebx
mov bl, byte [eax]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
dec edx
mov dword [ebp + 4], eax
jne 0x3016b1d0
mov edx, dword [ebp + 0x70]
cmp edx, dword [ebp + 0x78]
jge case.0x3016b742.14
mov ecx, dword [esp + 0x54]
cmp eax, dword [ecx + 0x54]
jae case.0x3016b742.14
cmp dword [ebp + 0x6c], edi
je case.0x3016b742.14
inc dword [ebp + 0x70]
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x20
jmp 0x3016b971
test esi, esi
jne case.0x3016a77d.48
mov edx, dword [ebp + 0x70]
cmp edx, dword [ebp + 0x78]
jge case.0x3016b742.14
mov ecx, dword [esp + 0x54]
mov eax, dword [ebp + 4]
cmp eax, dword [ecx + 0x54]
jae case.0x3016b742.14
movzx edx, byte [eax]
mov ecx, dword [ebp + 0x6c]
inc eax
cmp ecx, edx
mov dword [ebp + 4], eax
je case.0x3016b742.14
inc dword [ebp + 0x70]
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x21
jmp 0x3016b903
test esi, esi
jne case.0x3016a77d.48
mov ecx, dword [ebp + 4]
mov edx, dword [ebp + 0x34]
cmp ecx, edx
lea eax, [ecx - 1]
mov dword [ebp + 4], eax
je case.0x3016b742.14
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x3016b2ae
nop
dec eax
mov dword [ebp + 4], eax
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
je 0x3016b2a0
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x22
jmp 0x3016b971
test esi, esi
jne case.0x3016a77d.48
dec dword [ebp + 4]
mov eax, dword [ebp + 4]
cmp eax, dword [ebp + 0x34]
jb case.0x3016b742.14
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x23
jmp 0x3016b903
test esi, esi
jne case.0x3016a77d.48
mov ecx, dword [ebp + 0x70]
cmp ecx, dword [ebp + 0x78]
jge case.0x3016b742.14
mov esi, dword [esp + 0x54]
mov ecx, dword [ebp + 4]
mov eax, dword [esi + 0x54]
cmp ecx, eax
jae case.0x3016b742.14
cmp dword [ebp + 0x68], 0xc
jne 0x3016b375
test byte [ebp + 0x14], 4
jne 0x3016b375
mov edx, dword [esi + 0x18]
test edx, edx
je 0x3016b350
mov edi, dword [esp + 0x48]
push edi
add esi, 0x1c
push esi
push eax
push edx
push ecx
call fcn.30194ee0
add esp, 0x14
test eax, eax
jne case.0x3016b742.14
jmp 0x3016b375
mov edx, dword [esi + 0x1c]
sub eax, edx
cmp ecx, eax
ja 0x3016b375
mov al, byte [ecx]
cmp al, byte [esi + 0x20]
jne 0x3016b375
cmp edx, 1
je case.0x3016b742.14
mov cl, byte [ecx + 1]
cmp cl, byte [esi + 0x21]
je case.0x3016b742.14
mov edi, dword [ebp + 4]
movzx eax, byte [edi]
inc edi
cmp eax, 0xc0
mov dword [ebp + 4], edi
jb 0x3016b3c7
mov edx, eax
and edx, 0x3f
movzx edx, byte [edx + 0x30259078]
mov ebx, dword [edx*4 + 0x3025905c]
lea esi, [edx + edx*2]
shl esi, 1
and ebx, eax
mov ecx, esi
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x3016b3c7
lea ebx, [ebx]
xor ebx, ebx
mov bl, byte [edi]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or eax, ebx
inc edi
dec edx
mov dword [ebp + 4], edi
jne 0x3016b3b0
mov ecx, dword [ebp + 0x68]
add ecx, 0xfffffffa
cmp ecx, 0xe
ja case.0x3016b3d6.14
jmp dword [ecx*4 + 0x3016c76c]
cmp eax, 0x85
ja 0x3016b430
je case.0x3016b3d6.12
cmp eax, 0xa
jb case.0x3016b742.14
cmp eax, 0xc
jbe case.0x3016b3d6.12
cmp eax, 0xd
jne case.0x3016b742.14
mov edx, dword [esp + 0x54]
cmp edi, dword [edx + 0x54]
jae case.0x3016b3d6.12
cmp byte [edi], 0xa
jne case.0x3016b3d6.12
inc edi
mov dword [ebp + 4], edi
mov eax, dword [ebp + 0x70]
inc eax
push 0x19c
mov dword [ebp + 0x70], eax
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x2a
jmp 0x3016b903
cmp eax, 0x2028
jb case.0x3016b742.14
cmp eax, 0x2029
jbe case.0x3016b3d6.12
jmp case.0x3016b742.14
cmp eax, 0x180e
ja 0x3016b476
je case.0x3016b742.14
cmp eax, 0xa0
ja 0x3016b46f
je case.0x3016b742.14
cmp eax, 9
je case.0x3016b742.14
cmp eax, 0x20
jmp 0x3016b4a1
cmp eax, 0x1680
jmp 0x3016b4a1
cmp eax, 0x205f
ja 0x3016b49c
je case.0x3016b742.14
cmp eax, 0x2000
jb case.0x3016b3d6.12
cmp eax, 0x200a
jbe case.0x3016b742.14
cmp eax, 0x202f
jmp 0x3016b4a1
cmp eax, 0x3000
jne case.0x3016b3d6.12
jmp case.0x3016b742.14
cmp eax, 0x180e
ja 0x3016b4db
je case.0x3016b3d6.12
cmp eax, 0xa0
ja 0x3016b4d4
je case.0x3016b3d6.12
cmp eax, 9
je case.0x3016b3d6.12
cmp eax, 0x20
jmp 0x3016b50a
cmp eax, 0x1680
jmp 0x3016b50a
cmp eax, 0x205f
ja 0x3016b505
je case.0x3016b3d6.12
cmp eax, 0x2000
jb case.0x3016b742.14
cmp eax, 0x200a
jbe case.0x3016b3d6.12
cmp eax, 0x202f
jmp 0x3016b50a
cmp eax, 0x3000
je case.0x3016b3d6.12
jmp case.0x3016b742.14
cmp eax, 0x85
ja 0x3016b530
je case.0x3016b742.14
cmp eax, 0xa
jb case.0x3016b3d6.12
cmp eax, 0xd
jmp 0x3016b540
cmp eax, 0x2028
jb case.0x3016b3d6.12
cmp eax, 0x2029
ja case.0x3016b3d6.12
jmp case.0x3016b742.14
cmp eax, 0x85
ja 0x3016b430
je case.0x3016b3d6.12
cmp eax, 0xa
jb case.0x3016b742.14
cmp eax, 0xd
jmp 0x3016b440
cmp eax, 0x100
jae case.0x3016b3d6.12
mov ecx, dword [esp + 0x54]
mov edx, dword [ecx + 0x28]
test byte [eax + edx], 4
je case.0x3016b3d6.12
jmp case.0x3016b742.14
cmp eax, 0x100
jae case.0x3016b742.14
mov ecx, dword [esp + 0x54]
mov edx, dword [ecx + 0x28]
test byte [eax + edx], 4
jne case.0x3016b3d6.12
jmp case.0x3016b742.14
cmp eax, 0x100
jae 0x3016b5cc
mov ecx, dword [esp + 0x54]
mov edx, dword [ecx + 0x28]
test byte [eax + edx], 1
je case.0x3016b3d6.12
jmp case.0x3016b742.14
cmp ax, 0xa0
je case.0x3016b742.14
cmp ax, 0x200b
je case.0x3016b742.14
cmp ax, 0x2060
je case.0x3016b742.14
cmp ax, 0x3000
je case.0x3016b742.14
cmp ax, 0xfeff
jne case.0x3016b3d6.12
jmp case.0x3016b742.14
cmp eax, 0x100
jae 0x3016b620
mov ecx, dword [esp + 0x54]
mov edx, dword [ecx + 0x28]
test byte [eax + edx], 1
jne case.0x3016b3d6.12
jmp case.0x3016b742.14
cmp ax, 0xa0
je case.0x3016b3d6.12
cmp ax, 0x200b
je case.0x3016b3d6.12
cmp ax, 0x2060
je case.0x3016b3d6.12
cmp ax, 0x3000
je case.0x3016b3d6.12
cmp ax, 0xfeff
je case.0x3016b3d6.12
jmp case.0x3016b742.14
cmp eax, 0x100
jae case.0x3016b3d6.12
mov ecx, dword [esp + 0x54]
mov edx, dword [ecx + 0x28]
test byte [eax + edx], 0x10
je case.0x3016b3d6.12
jmp case.0x3016b742.14
cmp eax, 0x100
jae case.0x3016b742.14
mov ecx, dword [esp + 0x54]
mov edx, dword [ecx + 0x28]
test byte [eax + edx], 0x10
jne case.0x3016b3d6.12
jmp case.0x3016b742.14
test esi, esi
jne case.0x3016a77d.48
mov eax, dword [ebp + 0x70]
cmp eax, dword [ebp + 0x78]
jge case.0x3016b742.14
mov esi, dword [esp + 0x54]
mov ecx, dword [ebp + 4]
mov eax, dword [esi + 0x54]
cmp ecx, eax
jae case.0x3016b742.14
test byte [ebp + 0x14], 4
jne 0x3016b70f
mov edx, dword [esi + 0x18]
test edx, edx
je 0x3016b6ea
mov edi, dword [esp + 0x48]
push edi
lea edi, [esi + 0x1c]
push edi
push eax
push edx
push ecx
call fcn.30194ee0
add esp, 0x14
test eax, eax
jne case.0x3016b742.14
jmp 0x3016b70f
mov edx, dword [esi + 0x1c]
sub eax, edx
cmp ecx, eax
ja 0x3016b70f
mov al, byte [ecx]
cmp al, byte [esi + 0x20]
jne 0x3016b70f
cmp edx, 1
je case.0x3016b742.14
mov cl, byte [ecx + 1]
cmp cl, byte [esi + 0x21]
je case.0x3016b742.14
mov ecx, dword [ebp + 4]
movzx eax, byte [ecx]
inc ecx
mov dword [ebp + 4], ecx
mov edx, dword [ebp + 0x68]
add edx, 0xfffffffa
cmp edx, 0xe
ja case.0x3016b3d6.14
jmp dword [edx*4 + 0x3016c7a8]
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x3016b742.14
movzx edx, byte [eax + 0x3016c7f0]
jmp dword [edx*4 + 0x3016c7e4]
cmp eax, 9
je case.0x3016b742.14
cmp eax, 0x20
je case.0x3016b742.14
cmp eax, 0xa0
jmp 0x3016b874
cmp eax, 9
je case.0x3016b728.12
cmp eax, 0x20
je case.0x3016b728.12
cmp eax, 0xa0
je case.0x3016b728.12
jmp case.0x3016b742.14
cmp eax, 0xa
jb case.0x3016b728.12
cmp eax, 0xd
jbe case.0x3016b742.14
cmp eax, 0x85
jmp 0x3016b874
cmp eax, 0xa
jb case.0x3016b742.14
cmp eax, 0xd
jbe case.0x3016b728.12
cmp eax, 0x85
je case.0x3016b728.12
jmp case.0x3016b742.14
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 4
je case.0x3016b728.12
jmp case.0x3016b742.14
mov edx, dword [esi + 0x28]
test byte [eax + edx], 4
jmp 0x3016b874
cmp eax, 0x100
jae 0x3016b7fc
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 1
je case.0x3016b728.12
jmp case.0x3016b742.14
cmp ax, 0xa0
je case.0x3016b742.14
cmp ax, 0x200b
je case.0x3016b742.14
cmp ax, 0x2060
je case.0x3016b742.14
cmp ax, 0x3000
je case.0x3016b742.14
cmp ax, 0xfeff
jmp 0x3016b874
cmp eax, 0x100
jae 0x3016b82a
mov edx, dword [esi + 0x28]
test byte [eax + edx], 1
jmp 0x3016b874
cmp ax, 0xa0
je case.0x3016b728.12
cmp ax, 0x200b
je case.0x3016b728.12
cmp ax, 0x2060
je case.0x3016b728.12
cmp ax, 0x3000
je case.0x3016b728.12
cmp ax, 0xfeff
je case.0x3016b728.12
jmp case.0x3016b742.14
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 0x10
je case.0x3016b728.12
jmp case.0x3016b742.14
mov edx, dword [esi + 0x28]
test byte [eax + edx], 0x10
jne case.0x3016b728.12
mov eax, ebp
mov ebp, dword [ebp]
push eax
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test ebp, ebp
je 0x3016c2a8
xor esi, esi
jmp 0x3016a76d
mov eax, ebp
mov ebp, dword [ebp]
push eax
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test ebp, ebp
je case.0x3016a77d.36
mov esi, 0xfffffff2
jmp 0x3016a76d
test esi, esi
jne case.0x3016a77d.48
mov ecx, dword [ebp + 4]
mov edx, dword [ebp + 0x34]
cmp ecx, edx
lea eax, [ecx - 1]
mov dword [ebp + 4], eax
je case.0x3016b742.14
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
jne 0x3016b8ee
jmp 0x3016b8e0
dec eax
mov dword [ebp + 4], eax
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
je 0x3016b8e0
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x2e
mov ecx, dword [ebp + 4]
mov dword [eax + 4], ecx
mov edx, dword [ebp + 8]
add esp, 4
mov dword [eax + 8], edx
mov ecx, dword [ebp + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [ebp + 0x10]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp + 0x14]
mov dword [eax + 0x14], ecx
mov edx, dword [ebp + 0x18]
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], 0
mov ecx, dword [ebp + 0x20]
inc ecx
mov dword [eax + 0x20], ecx
mov dword [eax], ebp
mov ebp, eax
jmp 0x30166e76
mov ecx, dword [ebp + 4]
dec ecx
test esi, esi
mov dword [ebp + 4], ecx
jne case.0x3016a77d.48
mov eax, dword [ebp + 4]
cmp eax, dword [ebp + 0x34]
jb case.0x3016b742.14
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x2f
mov edx, dword [ebp + 4]
mov dword [eax + 4], edx
mov ecx, dword [ebp + 8]
add esp, 4
mov dword [eax + 8], ecx
mov edx, dword [ebp + 0xc]
mov dword [eax + 0xc], edx
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x10], ecx
mov edx, dword [ebp + 0x14]
mov dword [eax + 0x14], edx
mov ecx, dword [ebp + 0x18]
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], 0
mov edx, dword [ebp + 0x20]
inc edx
mov dword [eax + 0x20], edx
mov dword [eax], ebp
mov ebp, eax
jmp 0x30166e76
mov eax, ebp
mov ebp, dword [ebp]
push eax
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test esi, esi
jne 0x3016ab26
test ebp, ebp
je 0x3016c2e3
mov esi, 0xfffffc1a
jmp 0x3016a76d
mov eax, ebp
mov ebp, dword [ebp]
push eax
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test esi, esi
jne 0x3016ab26
test ebp, ebp
je 0x3016c2f0
mov esi, 0xfffffc19
jmp 0x3016a76d
test esi, esi
mov eax, ebp
push eax
jne 0x3016ab1a
mov ecx, dword [ebp + 4]
mov edx, dword [esp + 0x58]
mov dword [edx + 0x58], ecx
mov ebp, dword [ebp]
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test ebp, ebp
je 0x3016c2fd
mov esi, 0xfffffc1b
jmp 0x3016a76d
mov eax, ebp
mov ebp, dword [ebp]
push eax
call dword [sym.npswf32.dll_pcre_stack_free]
add esp, 4
test esi, esi
jne 0x3016ab26
test ebp, ebp
je 0x3016c30a
mov esi, 0xfffffc1c
jmp 0x3016a76d
mov dword [ebp + 0x5c], 1
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ch, byte [eax + 4]
mov cl, byte [eax + 5]
lea eax, [ecx + eax + 3]
mov dword [ebp + 8], eax
cmp byte [eax], 0x53
jne 0x3016a883
nop
mov eax, dword [ebp + 8]
xor edx, edx
mov dh, byte [eax + 1]
mov dl, byte [eax + 2]
add eax, edx
mov dword [ebp + 8], eax
cmp byte [eax], 0x53
je 0x3016ba80
jmp 0x3016a883
mov eax, dword [ebp + 8]
movzx esi, byte [eax + 4]
xor ecx, ecx
mov ch, byte [eax + 3]
mov eax, ecx
or eax, esi
mov dword [ebp + 0x80], eax
add eax, eax
mov dword [ebp + 0x84], eax
cmp eax, dword [ebx + 0x14]
jl 0x3016bbc5
mov edi, dword [ebp + 0x88]
xor eax, eax
cmp edi, 0x60
setl al
dec eax
and eax, 2
mov dword [ebp + 0x1c], eax
jmp 0x3016a821
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x33
mov edx, dword [ebp + 4]
mov dword [eax + 4], edx
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx]
movzx edx, byte [edx + 0x30258fb8]
add esp, 4
add edx, ecx
mov dword [eax + 8], edx
mov ecx, dword [ebp + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [ebp + 0x10]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp + 0x14]
mov dword [eax + 0x14], ecx
mov edx, dword [ebp + 0x18]
mov dword [eax + 0x18], edx
mov ecx, dword [ebp + 0x1c]
mov dword [eax + 0x1c], ecx
mov edx, dword [ebp + 0x20]
inc edx
mov dword [eax + 0x20], edx
mov dword [eax], ebp
mov ebp, eax
jmp 0x30166e76
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x34
mov ecx, dword [ebp + 4]
mov dword [eax + 4], ecx
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx]
movzx edx, byte [edx + 0x30258fb8]
add edx, ecx
mov dword [eax + 8], edx
mov ecx, dword [ebp + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [ebp + 0x10]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp + 0x14]
mov dword [eax + 0x14], ecx
mov edx, dword [ebp + 0x18]
mov dword [eax + 0x18], edx
mov ecx, dword [ebp + 0x1c]
mov dword [eax + 0x1c], ecx
mov edx, dword [ebp + 0x20]
add esp, 4
inc edx
mov dword [eax + 0x20], edx
mov dword [eax], ebp
mov ebp, eax
jmp 0x30166e76
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x35
jmp 0x3016bb4e
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x36
jmp 0x3016bb4e
mov eax, dword [ebx + 0x10]
mov esi, dword [ebp + 0x80]
mov ecx, dword [ebx + 0xc]
sub eax, esi
mov edx, dword [ecx + eax*4]
mov dword [ebp + 0x98], edx
mov eax, dword [ebx + 0x64]
mov dword [ebp + 0x8c], eax
mov ecx, dword [ebp + 0x84]
mov eax, dword [ebp + 0x10]
cmp eax, ecx
jle 0x3016bbf6
sub eax, ecx
jmp 0x3016bbfb
mov eax, 2
mov dword [ebp + 0x18c], eax
mov edx, dword [ebp + 0x84]
mov ecx, eax
mov eax, dword [ebx + 0xc]
lea esi, [eax + edx*4]
lea edi, [ebp + 0x114]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp + 0x84]
mov ecx, dword [ebp + 0x10]
add eax, 2
cmp eax, ecx
jge 0x3016bc42
jmp 0x3016bc30
mov ecx, dword [ebx + 0xc]
mov dword [ecx + eax*4], 0xffffffff
mov ecx, dword [ebp + 0x10]
inc eax
cmp eax, ecx
jl 0x3016bc30
mov eax, dword [ebx + 0x50]
mov edx, dword [ebp + 4]
mov edi, dword [ebp + 0x80]
mov ecx, dword [ebx + 0xc]
sub edx, eax
mov eax, dword [ebx + 0x10]
sub eax, edi
mov dword [ecx + eax*4], edx
mov esi, dword [ebp + 0x88]
xor edx, edx
cmp esi, 0x61
setne dl
dec edx
and edx, 2
mov dword [ebp + 0x1c], edx
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 1
mov edx, dword [ebp + 4]
mov dword [eax + 4], edx
jmp 0x3016bb54
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 3
mov ecx, dword [ebp + 4]
mov dword [eax + 4], ecx
mov edx, dword [ebp + 8]
add edx, 3
mov dword [eax + 8], edx
mov ecx, dword [ebp + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [ebp + 0x10]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp + 0x14]
mov dword [eax + 0x14], ecx
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], edi
mov edx, dword [ebp + 0x20]
add esp, 4
inc edx
mov dword [eax + 0x20], edx
mov dword [eax], ebp
mov ebp, eax
jmp 0x30166e76
lea eax, [ebp + 0x9c]
mov dword [ebp + 0x50], eax
mov ecx, dword [ebp + 0x54]
mov esi, dword [ebx + 0xc]
mov edi, dword [ebp + 0x50]
shl ecx, 2
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0xc]
mov dword [ebp + 0x4c], eax
mov ecx, dword [ebp + 4]
mov dword [ebp + 0xc], ecx
mov edx, dword [ebp + 0x24]
cmp byte [edx], 0x60
sbb eax, eax
and eax, 0xfffffffe
add eax, 2
mov dword [ebp + 0x1c], eax
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 6
mov edx, dword [ebp + 4]
mov dword [eax + 4], edx
mov ecx, dword [ebp + 0x24]
jmp 0x3016bb57
mov ecx, dword [ebp + 8]
mov dword [ebp + 0x38], ecx
mov edx, dword [ebp + 4]
mov dword [ebp + 0x3c], edx
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 7
mov ecx, dword [ebp + 4]
mov dword [eax + 4], ecx
mov edx, dword [ebp + 8]
add edx, 3
mov dword [eax + 8], edx
mov ecx, dword [ebp + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [ebp + 0x10]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp + 0x14]
mov dword [eax + 0x14], ecx
mov edx, dword [ebp + 0x18]
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], 0
mov ecx, dword [ebp + 0x20]
add esp, 4
inc ecx
mov dword [eax + 0x20], ecx
mov dword [eax], ebp
mov ebp, eax
jmp 0x30166e76
mov eax, dword [ebp + 8]
inc eax
push 0x19c
mov dword [ebp + 0x30], eax
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0xa
mov ecx, dword [ebp + 4]
mov dword [eax + 4], ecx
mov edx, dword [ebp + 0x30]
jmp 0x3016b90c
mov edx, dword [ebp + 8]
inc edx
mov dword [ebp + 0x30], edx
lea esp, [esp]
mov eax, dword [ebp + 0x30]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
mov dword [ebp + 0x30], eax
cmp byte [eax], 0x53
je 0x3016bde0
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0xb
mov edx, dword [ebp + 4]
mov dword [eax + 4], edx
mov ecx, dword [ebp + 0x30]
add esp, 4
add ecx, 3
jmp 0x3016b97d
mov eax, dword [ebp + 0x38]
cmp byte [eax], 0x60
sbb ecx, ecx
and ecx, 0xfffffffe
add ecx, 2
mov dword [ebp + 0x1c], ecx
mov edx, dword [ebp + 8]
cmp byte [edx], 0x56
push 0x19c
jne 0x3016be60
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0xc
mov ecx, dword [ebp + 4]
mov dword [eax + 4], ecx
mov edx, dword [ebp + 8]
add esp, 4
add edx, 3
jmp 0x3016b90f
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0xd
mov edx, dword [ebp + 4]
mov dword [eax + 4], edx
mov ecx, dword [ebp + 0x38]
mov dword [eax + 8], ecx
mov edx, dword [ebp + 0xc]
mov dword [eax + 0xc], edx
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x10], ecx
mov edx, dword [ebp + 0x14]
mov dword [eax + 0x14], edx
mov ecx, dword [ebp + 0x18]
mov dword [eax + 0x18], ecx
mov edx, dword [ebp + 0x1c]
mov dword [eax + 0x1c], edx
mov ecx, dword [ebp + 0x20]
add esp, 4
inc ecx
mov dword [eax + 0x20], ecx
mov dword [eax], ebp
mov ebp, eax
jmp 0x30166e76
mov edx, dword [ebp + 0x7c]
mov dword [ebp + 0x70], edx
jmp 0x3016ab76
mov eax, dword [esp + 0x48]
test eax, eax
je 0x3016bec8
mov eax, dword [ebp + 0x7c]
jmp 0x3016ac47
mov ecx, dword [ebp + 0x7c]
mov dword [ebp + 0x70], ecx
jmp 0x3016accb
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
mov dword [esp + 0x44], eax
jge 0x3016ad1e
jmp 0x3016bef0
mov edi, 1
lea ebx, [ebx]
mov eax, dword [ebp + 4]
cmp eax, dword [ebx + 0x54]
mov esi, edi
jae 0x3016ad1e
movzx eax, byte [eax]
cmp eax, 0xc0
jb 0x3016bf51
mov edx, eax
and edx, 0x3f
movzx edx, byte [edx + 0x30259078]
mov edi, dword [edx*4 + 0x3025905c]
lea esi, [edx + edx*2]
shl esi, 1
and edi, eax
mov ecx, esi
shl edi, cl
mov eax, edi
mov edi, 1
cmp edx, edi
jl 0x3016bf4a
mov ecx, dword [ebp + 4]
xor ebx, ebx
mov bl, byte [edi + ecx]
sub esi, 6
mov ecx, esi
and ebx, 0x3f
shl ebx, cl
or eax, ebx
inc edi
cmp edi, edx
jle 0x3016bf31
mov ebx, dword [esp + 0x54]
lea esi, [edx + 1]
cmp eax, 0xff
jbe 0x3016bf61
cmp dword [ebp + 0x88], 0x4d
jmp 0x3016bf78
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [ebp + 0x2c]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je 0x3016ad1e
mov eax, dword [ebp + 4]
add esi, eax
mov eax, dword [esp + 0x44]
mov dword [ebp + 4], esi
mov ecx, dword [ebp + 0x78]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jl 0x3016bee5
jmp 0x3016ad1e
mov edx, dword [ebp + 4]
mov dword [ebp + 0x34], edx
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp + 0x78]
mov dword [esp + 0x44], eax
jge 0x3016ae45
mov edx, dword [ebp + 4]
cmp edx, dword [ebx + 0x54]
mov esi, 1
jae 0x3016ae45
movzx edi, byte [edx]
cmp edi, 0xc0
jb 0x3016c011
mov eax, edi
and eax, 0x3f
movzx esi, byte [eax + 0x30259078]
mov eax, dword [esi*4 + 0x3025905c]
and eax, edi
lea ecx, [esi + esi*2]
shl ecx, 1
shl eax, cl
mov edi, eax
mov eax, 1
cmp esi, eax
jl 0x3016c00c
xor ebx, ebx
mov bl, byte [eax + edx]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edi, ebx
inc eax
cmp eax, esi
jle 0x3016bff8
mov ebx, dword [esp + 0x54]
inc esi
mov ecx, dword [ebp + 0x2c]
push ecx
push edi
call fcn.30194d50
add esp, 8
test eax, eax
je 0x3016ae45
mov edi, dword [ebp + 4]
mov eax, dword [esp + 0x44]
add edi, esi
mov dword [ebp + 4], edi
mov ecx, dword [ebp + 0x78]
inc eax
cmp eax, ecx
mov dword [esp + 0x44], eax
jl 0x3016bfb5
jmp 0x3016ae45
mov edx, dword [ebp + 0x7c]
mov dword [ebp + 0x70], edx
jmp 0x3016ae9c
mov eax, dword [ebp + 0x7c]
jmp 0x3016af2d
mov ecx, dword [ebp + 0x7c]
mov dword [ebp + 0x70], ecx
jmp 0x3016afb8
test edx, edx
je 0x3016c074
mov edx, dword [ebp + 0x7c]
mov dword [ebp + 0x70], edx
jmp 0x3016b094
mov eax, dword [ebp + 0x7c]
jmp 0x3016b0ef
test edx, edx
je 0x3016c08b
mov ecx, dword [ebp + 0x7c]
mov dword [ebp + 0x70], ecx
jmp 0x3016b20c
mov edx, dword [ebp + 0x7c]
mov dword [ebp + 0x70], edx
jmp 0x3016b25f
mov eax, dword [esp + 0x48]
test eax, eax
je 0x3016c0a6
mov eax, dword [ebp + 0x7c]
jmp 0x3016b413
mov ecx, dword [ebp + 0x7c]
mov dword [ebp + 0x70], ecx
jmp 0x3016c274
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x30
jmp 0x3016bb4e
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 2
jmp 0x3016bb4e
add dword [ebp + 8], 3
cmp dword [ebp + 0x88], 0x62
jne 0x3016aa9f
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x31
mov ecx, dword [ebp + 4]
mov dword [eax + 4], ecx
mov edx, dword [ebp + 8]
mov dword [eax + 8], edx
mov ecx, dword [ebp + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [ebp + 0x10]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp + 0x14]
mov dword [eax + 0x14], ecx
mov edx, dword [ebp + 0x18]
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], 2
mov ecx, dword [ebp + 0x20]
add esp, 4
inc ecx
mov dword [eax + 0x20], ecx
mov dword [eax], ebp
mov ebp, eax
jmp 0x30166e76
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 4
jmp 0x3016c175
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 5
mov edx, dword [ebp + 4]
mov dword [eax + 4], edx
mov ecx, dword [ebp + 8]
add ecx, 3
mov dword [eax + 8], ecx
mov edx, dword [ebp + 0xc]
mov dword [eax + 0xc], edx
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x10], ecx
mov edx, dword [ebp + 0x14]
mov dword [eax + 0x14], edx
xor ecx, ecx
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], ecx
mov ecx, dword [ebp + 0x20]
add esp, 4
inc ecx
mov dword [eax + 0x20], ecx
mov dword [eax], ebp
mov ebp, eax
jmp 0x30166e76
mov eax, dword [ebp + 8]
cmp byte [eax + 3], 0x18
jne 0x3016c1c9
movzx edx, byte [eax + 4]
mov eax, dword [ebp + 0x14]
and eax, 0xfffffff8
or edx, eax
mov dword [ebp + 0x14], edx
mov ecx, dword [ebp + 8]
cmp byte [ecx], 0x56
push 0x19c
jne 0x3016c1fa
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 8
mov edx, dword [ebp + 4]
mov dword [eax + 4], edx
mov ecx, dword [ebp + 8]
add esp, 4
add ecx, 3
jmp 0x3016b97d
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 9
mov ecx, dword [ebp + 4]
mov dword [eax + 4], ecx
mov edx, dword [ebp + 0x38]
mov dword [eax + 8], edx
mov ecx, dword [ebp + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [ebp + 0x10]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp + 0x14]
mov dword [eax + 0x14], ecx
mov edx, dword [ebp + 0x18]
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], 2
mov ecx, dword [ebp + 0x20]
add esp, 4
inc ecx
mov dword [eax + 0x20], ecx
mov dword [eax], ebp
mov ebp, eax
jmp 0x30166e76
add dword [ebp + 8], 3
mov dword [ebp + 0x1c], 0
jmp 0x30166e76
mov eax, dword [ebp + 0x38]
mov dword [ebp + 8], eax
jmp 0x30166e76
cmp ecx, dword [esi + 0x54]
jae case.0x3016b728.12
cmp byte [ecx], 0xa
jne case.0x3016b728.12
inc ecx
mov dword [ebp + 4], ecx
inc dword [ebp + 0x70]
push 0x19c
call dword [sym.npswf32.dll_pcre_stack_malloc]
mov dword [ebp + 0x198], 0x2b
jmp 0x3016b971
pop edi
pop esi
pop ebp
mov eax, 0xfffffff8
pop ebx
add esp, 0x30
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffeb
pop ebx
add esp, 0x30
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x30
ret
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffa
pop ebx
add esp, 0x30
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff2
pop ebx
add esp, 0x30
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x30
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1a
pop ebx
add esp, 0x30
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc19
pop ebx
add esp, 0x30
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1b
pop ebx
add esp, 0x30
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1c
pop ebx
add esp, 0x30
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffb
pop ebx
add esp, 0x30
ret