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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x150
mov eax, dword [0x1004b804]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0xb0], eax
push ebx
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 0x90], ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, dword [ebp + 0x18]
mov dword [ebp - 0x80], edi
test edx, edx
jne 0x1000eaea
lea eax, [ebp + 0x20]
cmp dword [ebp + 0x20], edx
jne 0x1000ead0
push 1
push edx
push edx
push edx
push edx
push edx
push eax
call fcn.1000ea60
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
sub eax, esi
cdq
xor eax, edx
pop edi
sub eax, edx
pop esi
neg eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [edi]
mov ecx, dword [edi + 0x4c]
mov dword [ebp - 0xb8], ecx
cmp eax, dword [edi + 4]
jae 0x10015da0
nop
inc eax
mov dword [edi], eax
mov eax, dword [ebp + 0x20]
cmp eax, dword [edi + 8]
jae 0x10017a90
cmp dword [edi + 0x98], 2
jne 0x1000eb60
mov ecx, dword [ebp - 0xb0]
lea eax, [ebp - 0xe8]
mov dword [ebp - 0xe4], esi
mov dword [ebp - 0xe8], ecx
mov dword [ebp - 0xb0], eax
mov dword [edi + 0x98], 0
jmp 0x1000eb60
mov edi, dword [ebp - 0x80]
jmp 0x1000eb50
mov edi, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x90]
mov edx, dword [ebp - 0x84]
nop word [eax + eax]
mov cl, byte [edx]
movzx edx, cl
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0xa4], edx
cmp edx, 0xa1
ja case.0x1000eb92.15
movzx eax, byte [edx + 0x10017bec]
jmp dword [eax*4 + 0x10017aa8]
inc dword [edi + 0x28]
mov eax, dword [edi + 0x28]
cmp eax, dword [edi + 0x2c]
ja 0x10015db9
mov edx, dword [ebp - 0x84]
movzx eax, byte [edx]
movzx ecx, byte [eax + 0x1003e9f0]
movzx eax, byte [edx + 1]
add edx, eax
add edx, ecx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov edx, dword [ebp - 0x84]
mov ebx, esi
mov edi, dword [edi + 0xac]
mov dword [ebp - 0xbc], edx
nop dword [eax]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
lea eax, [edx + 3]
push dword [ebp - 0x80]
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000ea60
mov edx, eax
add esp, 0x1c
cmp edx, 1
je 0x1000ece2
cmp edx, 0xfffffc20
jne 0x1000ec4f
mov eax, dword [ebp - 0x84]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x80]
add ecx, dword [ebp - 0x84]
cmp dword [eax + 0x7c], ecx
jae 0x1000f1d7
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x1000ec57
cmp byte [ecx], 0x77
jmp 0x1000ec51
test edx, edx
jne 0x1000f1d7
mov edx, dword [ebp - 0x84]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x80]
add edx, ecx
mov dword [ebp - 0x84], edx
mov dword [eax + 0xac], edi
mov al, byte [edx]
cmp al, 0x77
je 0x1000ebe0
mov edi, dword [ebp - 0x80]
cmp al, 0x82
je 0x1000ec94
cmp al, 0x77
jne case.default.0x10010d11
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov al, byte [edx + ecx]
add edx, ecx
cmp al, 0x77
je 0x1000ec94
mov ecx, dword [edi + 0x8c]
mov esi, dword [edi + 0x80]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x90], ecx
cmp al, 0x78
je 0x1000ecce
cmp esi, ebx
jne 0x10015a53
mov ebx, dword [ebp - 0x90]
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov edi, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0xa0], eax
mov al, byte [edx]
jmp 0x1000ec88
mov ecx, dword [ebp - 0x84]
mov dword [ebp - 0xb4], 0
jmp 0x1000f802
mov dword [ebp - 0xb4], 0
jmp 0x1000f827
mov edx, dword [ebp - 0x84]
movzx eax, byte [edx + 2]
movzx ebx, byte [edx + 1]
add edx, 3
shl ebx, 8
or ebx, eax
mov dword [ebp - 0x84], edx
mov dword [ebp - 0xb4], ebx
mov al, byte [edx]
cmp al, 0x76
jne 0x1000ee4c
mov edi, dword [sym.pcre3.dll_pcre_callout]
test edi, edi
je 0x1000ee33
mov dword [ebp - 0x11c], 2
movzx eax, byte [edx + 1]
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x118], eax
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x114], eax
mov ecx, dword [edx + 0x74]
mov dword [ebp - 0x110], ecx
mov eax, dword [edx + 0x78]
mov edx, dword [ebp - 0x84]
sub eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0xa0]
sub eax, ecx
mov dword [ebp - 0x108], eax
mov eax, esi
sub eax, ecx
mov dword [ebp - 0x104], eax
movzx ecx, byte [edx + 2]
movzx eax, byte [edx + 3]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xf4], ecx
movzx ecx, byte [edx + 4]
movzx eax, byte [edx + 5]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x90]
cdq
sub eax, edx
mov dword [ebp - 0xf0], ecx
mov ecx, dword [ebp - 0x80]
mov edx, 0xffffffff
sar eax, 1
mov dword [ebp - 0x100], eax
mov eax, dword [ecx + 0x90]
and eax, 0xffff
cmove eax, edx
mov dword [ebp - 0xfc], eax
mov eax, dword [ecx + 0xa8]
mov dword [ebp - 0xf8], eax
mov eax, dword [ecx + 0xb0]
mov dword [ebp - 0xec], eax
lea eax, [ebp - 0x11c]
push eax
call edi
add esp, 4
test eax, eax
jg case.default.0x10010d11
js 0x10015da8
mov edx, dword [ebp - 0x84]
movzx eax, byte [0x1003ea66]
add edx, eax
sub ebx, eax
mov dword [ebp - 0x84], edx
mov dword [ebp - 0xb4], ebx
mov al, byte [edx]
movzx edi, al
xor ebx, ebx
mov dword [ebp - 0xac], edi
lea eax, [edi - 0x8d]
cmp eax, 0x10
ja case.0x1000ee6d.146
movzx eax, byte [eax + 0x10017ca8]
jmp dword [eax*4 + 0x10017c90]
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 0xa4]
test edx, edx
je 0x1000f02a
mov eax, dword [ebp - 0x84]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
cmp ecx, 0xffff
je 0x1000eeb0
cmp ecx, dword [edx + 4]
je 0x1000eeb0
mov edx, dword [ebp - 0x84]
jmp case.0x1000ee6d.145
mov ebx, 1
jmp 0x1000f02a
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0xa4], ebx
je 0x1000f030
movzx edi, byte [edx + 3]
movzx eax, byte [edx + 4]
movzx edx, byte [edx + 1]
shl edi, 8
or edi, eax
shl edx, 8
mov eax, dword [ebp - 0x84]
movzx eax, byte [eax + 2]
or edx, eax
mov eax, dword [ebp - 0x80]
imul edx, dword [eax + 0x24]
add edx, dword [eax + 0x30]
mov dword [ebp - 0x94], edx
test edi, edi
je 0x1000f02a
movzx ecx, byte [edx]
dec edi
movzx eax, byte [edx + 1]
xor ebx, ebx
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0xbc], edi
shl ecx, 8
or ecx, eax
mov edi, dword [edx + 0xa4]
mov edx, dword [ebp - 0x94]
cmp ecx, dword [edi + 4]
mov edi, dword [ebp - 0xbc]
sete bl
je 0x1000f02a
mov eax, dword [ebp - 0x80]
add edx, dword [eax + 0x24]
mov dword [ebp - 0x94], edx
test edi, edi
jg 0x1000ef01
jmp 0x1000f02a
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
mov ebx, dword [ebp - 0x90]
shl ecx, 8
or ecx, eax
add ecx, ecx
cmp ecx, ebx
jge 0x1000ef75
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x10015b4c
xor ebx, ebx
jmp 0x1000f030
movzx edi, byte [edx + 3]
movzx eax, byte [edx + 4]
movzx edx, byte [edx + 1]
shl edi, 8
or edi, eax
shl edx, 8
mov eax, dword [ebp - 0x84]
movzx eax, byte [eax + 2]
or edx, eax
mov eax, dword [ebp - 0x80]
imul edx, dword [eax + 0x24]
add edx, dword [eax + 0x30]
test edi, edi
je 0x1000f02a
nop
movzx eax, byte [edx]
dec edi
movzx ecx, byte [edx + 1]
mov ebx, dword [ebp - 0x90]
shl eax, 8
or ecx, eax
add ecx, ecx
cmp ecx, ebx
jge 0x1000efd9
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x10015ad1
mov eax, dword [ebp - 0x80]
xor ebx, ebx
add edx, dword [eax + 0x24]
test edi, edi
jg 0x1000efb0
jmp 0x1000f02a
mov ecx, dword [ebp - 0x80]
mov dword [ecx + 0x98], 1
mov eax, dword [ebp + 0x20]
inc eax
push eax
push 0
push ecx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push edx
push esi
call fcn.1000ea60
add esp, 0x1c
cmp eax, 1
je 0x10015adc
test eax, eax
je 0x1000f02a
cmp eax, 0xfffffc20
jne 0x10015da8
mov edx, dword [ebp - 0x84]
test ebx, ebx
jne 0x10015b46
add edx, dword [ebp - 0xb4]
mov ebx, dword [ebp - 0x90]
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0x84], edx
cmp byte [edx - 3], 0x77
je 0x10015b61
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x90], ebx
jmp 0x1000eb60
mov eax, dword [ebp - 0x84]
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
mov eax, dword [edi + 0x90]
and eax, 0xffff0000
or eax, edx
mov dword [edi + 0x90], eax
lea ebx, [edx + edx]
cmp ebx, dword [edi + 0x14]
jl 0x1000f0c1
or eax, 0x10000
mov dword [edi + 0x90], eax
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0xc]
sub eax, edx
mov eax, dword [ecx + eax*4]
mov dword [ecx + ebx*4], eax
mov ecx, esi
mov eax, dword [edi + 0xc]
sub ecx, dword [edi + 0x74]
mov dword [eax + ebx*4 + 4], ecx
mov ecx, dword [ebp - 0x90]
cmp ebx, ecx
jl 0x1000f0a7
mov eax, dword [edi + 0xc]
xor edx, edx
lea edi, [eax + ecx*4]
lea eax, [eax + ebx*4]
mov ecx, eax
sub ecx, edi
add ecx, 3
shr ecx, 2
cmp edi, eax
cmova ecx, edx
test ecx, ecx
je 0x1000f108
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov edx, dword [ebp - 0x84]
add ebx, 2
mov edi, dword [ebp - 0x80]
add edx, 3
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp dword [edi + 0x98], 1
mov ebx, dword [edi + 0xac]
jne 0x1000f14d
mov dword [ebp - 0x94], 1
mov dword [edi + 0x98], 0
jmp 0x1000f157
mov dword [ebp - 0x94], 0
mov edx, dword [ebp - 0x84]
add edi, 0x7c
mov eax, dword [ebp + 0x20]
inc eax
push eax
push 0
push dword [ebp - 0x80]
lea eax, [edx + 3]
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000ea60
mov edx, eax
add esp, 0x1c
cmp edx, 1
je 0x1000f21c
mov edi, dword [ebp - 0x80]
cmp edx, 0xfffffc19
je 0x1000f219
mov dword [edi + 0xac], ebx
cmp edx, 0xfffffc20
jne 0x1000f1ea
mov eax, dword [ebp - 0x84]
add edi, 0x7c
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x84]
add ecx, eax
cmp dword [edi], ecx
jae 0x1000f1d7
cmp byte [eax], 0x77
je 0x1000f1f1
cmp byte [ecx], 0x77
je 0x1000f1f1
pop edi
pop esi
mov eax, edx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
test edx, edx
jne 0x1000f1d7
add edi, 0x7c
mov edx, dword [ebp - 0x84]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov al, byte [edx + ecx]
add edx, ecx
mov dword [ebp - 0x84], edx
cmp al, 0x77
je 0x1000f160
jmp 0x1000f22c
add edi, 0x7c
mov edx, dword [ebp - 0x84]
mov eax, dword [edi]
mov dword [ebp - 0xa0], eax
mov al, byte [edx]
cmp al, 0x78
je case.default.0x10010d11
cmp dword [ebp - 0x94], 0
jne 0x10016015
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1000f241
mov edi, dword [ebp - 0x80]
add edx, 3
mov dword [ebp - 0x84], edx
mov ebx, dword [edi + 0x8c]
mov dword [ebp - 0x90], ebx
jmp 0x1000eb60
mov edx, dword [ebp - 0x80]
mov edi, dword [edi + 0xac]
cmp dword [edx + 0x98], 1
jne 0x1000f295
mov ebx, 1
mov dword [edx + 0x98], 0
jmp 0x1000f297
xor ebx, ebx
mov eax, dword [ebp + 0x20]
inc eax
push eax
mov eax, dword [ebp - 0x84]
push 0
push edx
push dword [ebp - 0x90]
add eax, 3
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000ea60
mov edx, dword [ebp - 0x80]
mov ecx, eax
add esp, 0x1c
mov dword [edx + 0xac], edi
cmp ecx, 0xfffffc1c
jle 0x1000f36c
test ecx, ecx
jg 0x10015e49
je 0x1000f321
lea eax, [ecx + 0x3e3]
cmp eax, 3
ja case.default.0x1000f2ee
jmp dword [eax*4 + 0x10017cbc]
mov eax, dword [ebp - 0x84]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x84]
add ecx, eax
cmp dword [edx + 0x7c], ecx
jae case.0x1000f2ee.995
cmp byte [eax], 0x77
je 0x1000f327
cmp byte [ecx], 0x77
jne case.0x1000f2ee.995
jmp 0x1000f327
mov eax, dword [ebp - 0x84]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x84]
add eax, ecx
mov dword [ebp - 0x84], eax
cmp byte [eax], 0x77
je 0x1000f297
mov edx, eax
test ebx, ebx
jne 0x10016015
mov edi, dword [ebp - 0x80]
add edx, 3
mov ebx, dword [ebp - 0x90]
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
jne 0x10015e50
mov edx, dword [ebp - 0x84]
nop dword [eax + eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1000f380
jmp 0x1000f34d
mov edx, dword [ebp - 0x84]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
cmp dword [ebp - 0xb8], 0
je 0x1000f3e6
or ecx, eax
jbe 0x1000f3f3
mov edx, dword [edi + 0x74]
dec esi
dec ecx
cmp esi, edx
jb case.default.0x10010d11
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x1000f3da
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x1000f3d0
test ecx, ecx
jg 0x1000f3b7
mov edx, dword [ebp - 0x84]
jmp 0x1000f3f3
or ecx, eax
sub esi, ecx
cmp esi, dword [edi + 0x74]
jb case.default.0x10010d11
cmp esi, dword [edi + 0x84]
jae 0x1000f401
mov dword [edi + 0x84], esi
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov edi, dword [sym.pcre3.dll_pcre_callout]
test edi, edi
je 0x1000f4f1
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x80]
mov dword [ebp - 0x150], 2
movzx eax, byte [edx + 1]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebx + 0xc]
mov dword [ebp - 0x148], eax
mov ecx, dword [ebx + 0x74]
mov dword [ebp - 0x144], ecx
mov eax, dword [ebx + 0x78]
sub eax, ecx
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0xa0]
sub eax, ecx
mov dword [ebp - 0x13c], eax
mov eax, esi
sub eax, ecx
mov dword [ebp - 0x138], eax
movzx ecx, byte [edx + 2]
movzx eax, byte [edx + 3]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x128], ecx
movzx ecx, byte [edx + 4]
movzx eax, byte [edx + 5]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x90]
cdq
sub eax, edx
mov dword [ebp - 0x124], ecx
sar eax, 1
mov ecx, 0xffffffff
mov dword [ebp - 0x134], eax
mov eax, dword [ebx + 0x90]
and eax, 0xffff
cmove eax, ecx
mov dword [ebp - 0x130], eax
mov eax, dword [ebx + 0xa8]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebx + 0xb0]
mov dword [ebp - 0x120], eax
lea eax, [ebp - 0x150]
push eax
call edi
add esp, 4
test eax, eax
jg case.default.0x10010d11
js 0x10015da8
mov edx, dword [ebp - 0x84]
mov edi, dword [ebp - 0x80]
add edx, 6
mov ebx, dword [ebp - 0x90]
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov eax, dword [ebp - 0x84]
movzx ebx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ebx, 8
or ebx, eax
add ebx, dword [edi + 0x70]
cmp ebx, dword [edi + 0x70]
jne 0x1000f52d
xor ecx, ecx
jmp 0x1000f53a
movzx ecx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl ecx, 8
or ecx, eax
mov edx, dword [edi + 0xa4]
mov eax, edx
test eax, eax
je 0x1000f55a
cmp ecx, dword [eax + 4]
jne 0x1000f554
cmp esi, dword [eax + 0x14]
je 0x10015e6f
mov eax, dword [eax]
test eax, eax
jne 0x1000f546
add dword [ebp - 0x84], 3
mov dword [ebp - 0xdc], ecx
mov eax, dword [edi + 0x90]
mov dword [ebp - 0xd0], eax
lea eax, [ebp - 0xe0]
mov dword [ebp - 0xcc], esi
mov dword [ebp - 0xe0], edx
mov dword [edi + 0xa4], eax
mov ecx, dword [edi + 0x10]
mov dword [ebp - 0xd4], ecx
cmp ecx, 0x1e
jg 0x1000f5a4
lea eax, [ebp - 0x7c]
mov dword [ebp - 0xd8], eax
jmp 0x1000f5c9
lea eax, [ecx*4]
push eax
call dword [sym.pcre3.dll_pcre_malloc]
add esp, 4
mov dword [ebp - 0xd8], eax
test eax, eax
je 0x10015ee9
mov ecx, dword [ebp - 0xd4]
shl ecx, 2
push ecx
push dword [edi + 0xc]
push eax
call fcn.10022e50
mov al, byte [ebx]
add esp, 0xc
mov byte [ebp - 0xc1], al
cmp al, 0x88
jb 0x1000f5ef
mov dword [edi + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x90]
movzx eax, byte [eax + 0x1003e9f0]
push dword [ebp - 0xa0]
add eax, ebx
push eax
push esi
call fcn.1000ea60
mov ecx, dword [ebp - 0xd4]
mov edi, eax
mov eax, dword [ebp - 0x80]
shl ecx, 2
push ecx
push dword [ebp - 0xd8]
push dword [eax + 0xc]
call fcn.10022e50
mov ecx, dword [ebp - 0x80]
add esp, 0x28
mov eax, dword [ebp - 0xd0]
mov dword [ecx + 0x90], eax
mov eax, dword [ebp - 0xe0]
mov dword [ecx + 0xa4], eax
cmp edi, 1
je 0x1000f6af
cmp edi, 0xfffffc19
je 0x1000f6af
cmp edi, 0xfffffc1c
jl 0x1000f676
cmp edi, 0xfffffc20
jle 0x10015e91
test edi, edi
jne 0x10015ebf
mov edi, ecx
lea eax, [ebp - 0xe0]
mov dword [edi + 0xa4], eax
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
jne 0x10015e85
mov al, byte [ebp - 0xc1]
jmp 0x1000f5e1
mov eax, dword [ebp - 0xd8]
lea ecx, [ebp - 0x7c]
cmp eax, ecx
je 0x1000f6c6
push eax
call dword [sym.pcre3.dll_pcre_free]
add esp, 4
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x7c]
mov esi, dword [edi + 0x80]
mov dword [ebp - 0xa0], eax
jmp 0x1000eb4a
mov edx, dword [ebp - 0x84]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1000f6e3
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov eax, dword [ebp + 0x20]
mov edi, dword [ebp - 0x84]
inc eax
push eax
push dword [ebp - 0xb0]
inc edi
push dword [ebp - 0x80]
push ebx
push dword [ebp - 0xa0]
push edi
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x1000f730
lea edx, [edi + 3]
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
mov edx, eax
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1000f764
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
lea eax, [edx + 3]
push edi
push ebx
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
jmp 0x1000eb50
mov edx, dword [ebp - 0x84]
inc edx
nop dword [eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1000f7b0
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov ecx, dword [ebp - 0x84]
inc ecx
mov dword [ebp - 0xb4], 1
mov dword [ebp - 0x84], ecx
movzx edx, byte [ecx]
mov dword [ebp - 0xa4], edx
cmp edx, 0x86
je 0x1000f802
cmp edx, 0x8b
jne 0x1000f827
movzx edx, byte [ecx + 3]
movzx eax, byte [ecx + 4]
shl edx, 8
or edx, eax
mov dword [ebp - 0x98], edx
lea eax, [edx + edx]
cmp eax, dword [edi + 0x14]
jl 0x1000fa0a
mov edx, dword [ebp - 0xa4]
xor ecx, ecx
mov dword [ebp - 0x94], ecx
mov ecx, dword [ebp - 0x84]
mov eax, ecx
sub eax, dword [edi + 0x70]
mov dword [ebp - 0xbc], eax
mov eax, dword [edi + 0x90]
mov dword [ebp - 0xa8], eax
nop dword [eax]
mov edi, ebx
mov ebx, dword [ebp - 0xa0]
cmp edx, 0x88
jb 0x1000f86d
mov eax, dword [ebp - 0x80]
mov dword [eax + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [ecx]
push dword [ebp - 0x80]
push dword [ebp - 0x90]
movzx eax, byte [eax + 0x1003e9f0]
push dword [ebp - 0xa0]
add eax, ecx
push eax
push esi
call fcn.1000ea60
mov edx, eax
add esp, 0x1c
cmp edx, 0xfffffc1a
jne 0x1000f8f9
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x94], 1
mov eax, dword [edi + 0x7c]
mov edx, dword [edi + 0x70]
add edx, dword [ebp - 0xbc]
mov ebx, dword [edi + 0x8c]
mov dword [ebp - 0xa0], eax
mov eax, dword [edi + 0x80]
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0x84], edx
cmp esi, eax
je 0x1000f990
mov edx, dword [ebp - 0xa4]
mov esi, eax
mov ecx, dword [ebp - 0x84]
jmp 0x1000f850
cmp edx, 0xfffffc20
jne 0x1000f936
mov eax, dword [ebp - 0x84]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x80]
add ecx, dword [ebp - 0x84]
cmp dword [eax + 0x7c], ecx
jae 0x1000f1d7
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x1000f93e
cmp byte [ecx], 0x77
jmp 0x1000f938
test edx, edx
jne 0x1000f1d7
mov edx, dword [ebp - 0x84]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [ebp - 0x84], edx
mov eax, edx
cmp byte [edx], 0x77
jne 0x1000f9b2
mov ecx, dword [ebp - 0x80]
mov eax, dword [ebp - 0xa8]
mov edx, dword [ebp - 0xa4]
mov ebx, dword [ebp - 0x90]
mov dword [ecx + 0x90], eax
mov ecx, dword [ebp - 0x84]
jmp 0x1000f850
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1000f990
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp dword [ebp - 0x94], 0
mov dword [ebp - 0xa0], ebx
mov dword [ebp - 0x90], edi
jne 0x1000f9f3
cmp dword [ebp - 0xb4], 0
mov dword [ebp - 0xa0], ebx
mov ebx, edi
mov dword [ebp - 0x90], ebx
je case.default.0x10010d11
mov edi, dword [ebp - 0x80]
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov ebx, dword [ebp - 0x90]
add edx, 3
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov ebx, dword [ebp - 0x80]
xor edi, edi
shl eax, 2
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x94], edi
sub ecx, dword [ebx + 0x70]
mov dword [ebp - 0xbc], ecx
mov ecx, dword [ebx + 0xc]
mov ebx, dword [eax + ecx]
mov eax, dword [eax + ecx + 4]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x9c], ebx
mov eax, dword [eax + 0x10]
sub eax, edx
mov eax, dword [ecx + eax*4]
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0xc8], eax
mov eax, dword [ecx + 0x90]
mov dword [ebp - 0xa8], eax
mov ebx, dword [ebp - 0x90]
mov eax, dword [ebp - 0xa0]
mov edx, esi
sub edx, dword [ecx + 0x74]
mov ecx, dword [ecx + 0x10]
sub ecx, dword [ebp - 0x98]
cmp dword [ebp - 0xa4], 0x88
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0xac], ebx
mov eax, dword [eax + 0xc]
mov dword [eax + ecx*4], edx
jb 0x1000faa5
mov eax, dword [ebp - 0x80]
mov dword [eax + 0x98], 2
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp - 0x84]
inc eax
push eax
push dword [ebp - 0xb0]
push dword [ebp - 0x80]
movzx eax, byte [ecx]
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
movzx eax, byte [eax + 0x1003e9f0]
add eax, ecx
push eax
push esi
call fcn.1000ea60
mov edx, eax
add esp, 0x1c
cmp edx, 0xfffffc1a
jne 0x1000fb38
mov ecx, dword [ebp - 0x80]
mov edi, 1
mov dword [ebp - 0x94], edi
mov eax, dword [ecx + 0x90]
mov edx, dword [ecx + 0x70]
add edx, dword [ebp - 0xbc]
mov ebx, dword [ecx + 0x8c]
mov dword [ebp - 0xa8], eax
mov eax, dword [ecx + 0x7c]
mov dword [ebp - 0xa0], eax
mov eax, dword [ecx + 0x80]
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0x84], edx
cmp esi, eax
je 0x1000fbc0
mov esi, eax
jmp 0x1000fa63
cmp edx, 0xfffffc20
jne 0x1000fb75
mov eax, dword [ebp - 0x84]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x80]
add ecx, dword [ebp - 0x84]
cmp dword [eax + 0x7c], ecx
jae 0x1000f1d7
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x1000fb7d
cmp byte [ecx], 0x77
jmp 0x1000fb77
test edx, edx
jne 0x1000f1d7
mov edx, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x80]
mov eax, dword [ebp - 0xa8]
mov dword [ecx + 0x90], eax
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov eax, edx
mov dword [ebp - 0x84], edx
cmp byte [eax], 0x77
jne 0x1000fbd9
mov edi, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x80]
jmp 0x1000fa5d
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1000fbc0
jmp 0x1000fc64
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0x94], edi
mov dword [ebp - 0x84], edx
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x90], ebx
test edi, edi
jne 0x1000fc52
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x88]
mov ebx, dword [ebp - 0x9c]
mov eax, dword [eax + 0xc]
mov dword [ecx + eax], ebx
mov eax, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x8c]
mov eax, dword [eax + 0xc]
mov dword [ecx + eax + 4], ebx
mov eax, dword [ebp - 0x80]
mov ebx, dword [ebp - 0xc8]
mov ecx, dword [eax + 0x10]
mov eax, dword [eax + 0xc]
sub ecx, dword [ebp - 0x98]
mov dword [eax + ecx*4], ebx
mov eax, dword [ebp - 0xc0]
mov ebx, dword [ebp - 0xac]
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x90], ebx
jmp 0x1000fc64
mov edi, dword [ebp - 0x94]
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
cmp dword [ebp - 0xb4], 0
jne 0x1000fc75
test edi, edi
je case.default.0x10010d11
mov edi, dword [ebp - 0x80]
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov edx, dword [ebp - 0x84]
mov ebx, edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub ebx, ecx
mov dword [ebp - 0x94], ebx
mov al, byte [ebx]
cmp al, 0x88
jae 0x1000fcb9
cmp al, 0x81
je 0x1000fcb9
mov dword [ebp - 0xb4], 0
jmp 0x1000fcd6
mov ecx, dword [ebp - 0xb0]
mov ecx, dword [ecx + 4]
mov dword [ebp - 0xb4], ecx
mov ecx, dword [ebp - 0xb0]
mov ecx, dword [ecx]
mov dword [ebp - 0xb0], ecx
cmp al, 0x7d
jb 0x1000fce2
cmp al, 0x80
jbe 0x10015ffa
cmp al, 0x82
je 0x10015ffa
cmp al, 0x85
je 0x1000fcfe
cmp al, 0x8a
je 0x1000fcfe
cmp al, 0x86
je 0x1000fcfe
cmp al, 0x8b
jne 0x1000fdcc
movzx edx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl edx, 8
or edx, eax
mov eax, dword [edi + 0xa4]
lea ebx, [edx + edx]
test eax, eax
je 0x1000fd21
cmp dword [eax + 4], edx
je 0x10015eff
mov eax, dword [edi + 0x90]
mov ecx, dword [ebp - 0x90]
and eax, 0xffff0000
or eax, edx
mov dword [edi + 0x90], eax
cmp ebx, dword [edi + 0x14]
jl 0x1000fd5b
mov ebx, dword [ebp - 0x94]
or eax, 0x10000
mov edx, dword [ebp - 0x84]
mov dword [edi + 0x90], eax
jmp 0x1000fdd2
cmp ebx, ecx
jle 0x1000fd91
mov eax, dword [edi + 0xc]
mov dword [ebp - 0xac], 0
lea edi, [eax + ecx*4]
lea eax, [eax + ebx*4]
mov ecx, eax
sub ecx, edi
add ecx, 3
shr ecx, 2
cmp edi, eax
cmova ecx, dword [ebp - 0xac]
test ecx, ecx
je 0x1000fd8e
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0xc]
sub eax, edx
mov edx, dword [ebp - 0x84]
mov eax, dword [ecx + eax*4]
mov dword [ecx + ebx*4], eax
mov ecx, esi
mov eax, dword [edi + 0xc]
sub ecx, dword [edi + 0x74]
mov dword [eax + ebx*4 + 4], ecx
mov ecx, dword [ebp - 0x90]
cmp ecx, ebx
jg 0x1000fdc4
lea ecx, [ebx + 2]
mov dword [ebp - 0x90], ecx
mov ebx, dword [ebp - 0x94]
jmp 0x1000fdd2
mov ecx, dword [ebp - 0x90]
mov al, byte [edx]
cmp al, 0x7b
je 0x10015fcf
cmp al, 0x78
je 0x1000fdec
cmp esi, dword [ebp - 0xb4]
jne 0x10015b79
add edx, 3
cmp byte [ebx], 0x81
mov dword [ebp - 0x84], edx
je 0x10015f8e
mov ebx, dword [ebp - 0x90]
jmp 0x1000eb60
cmp dword [edi + 0x44], 0
je case.0x1000eb92.1
cmp esi, dword [edi + 0x74]
je case.default.0x10010d11
cmp esi, dword [edi + 0x74]
jne case.default.0x10010d11
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp dword [edi + 0x44], 0
je 0x1000fe47
cmp esi, dword [edi + 0x74]
je case.default.0x10010d11
mov ecx, dword [edi + 0x74]
jmp 0x1000fe52
mov ecx, dword [edi + 0x74]
cmp esi, ecx
je 0x1000fed0
cmp esi, dword [edi + 0x78]
je case.default.0x10010d11
mov edx, dword [edi + 0x18]
test edx, edx
je 0x1000fea2
cmp esi, ecx
jbe 0x1000fe86
push dword [ebp - 0xb8]
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.1001a300
add esp, 0x14
test eax, eax
je 0x1000fe86
mov eax, 1
jmp 0x1000fe88
xor eax, eax
test eax, eax
je case.default.0x10010d11
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov edx, dword [edi + 0x1c]
lea eax, [ecx + edx]
cmp esi, eax
jb case.default.0x10010d11
mov ecx, esi
sub ecx, edx
mov al, byte [ecx]
cmp al, byte [edi + 0x34]
jne case.default.0x10010d11
cmp edx, 1
je 0x1000fed0
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x35]
jne case.default.0x10010d11
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov eax, dword [edi + 0x94]
add eax, dword [edi + 0x74]
cmp esi, eax
jne case.default.0x10010d11
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0xa0], esi
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x1000ffa0
mov ecx, dword [edi + 0x18]
add edi, 0x1c
test ecx, ecx
je 0x1000ff61
push dword [ebp - 0xb8]
push edi
push eax
push ecx
push esi
call fcn.1001a160
add esp, 0x14
test eax, eax
je 0x1001602b
mov edx, dword [ebp - 0x84]
mov edi, dword [ebp - 0x80]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov ecx, dword [edi]
sub eax, ecx
cmp esi, eax
ja 0x1001602b
mov edx, dword [ebp - 0x80]
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x1001602b
cmp ecx, 1
je 0x1000ff8c
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
jne 0x1001602b
mov edi, edx
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp dword [edi + 0x48], 0
jne case.default.0x10010d11
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1000ff8e
cmp esi, dword [edi + 0x84]
jbe 0x1000ff8e
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x1001750e
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp dword [edi + 0x48], 0
jne case.default.0x10010d11
cmp dword [edi + 0x58], 0
je case.0x1000eb92.23
cmp esi, dword [edi + 0x78]
jb case.default.0x10010d11
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1000fed0
cmp esi, dword [edi + 0x84]
jbe 0x1000fed0
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x1001750e
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x1001009e
mov ecx, dword [edi + 0x18]
add edi, 0x1c
test ecx, ecx
je 0x10010063
push dword [ebp - 0xb8]
push edi
push eax
push ecx
push esi
call fcn.1001a160
mov edx, dword [ebp - 0x80]
add esp, 0x14
test eax, eax
je 0x1001602e
jmp 0x1001008e
mov ecx, dword [edi]
sub eax, ecx
mov edx, dword [ebp - 0x80]
cmp esi, eax
ja 0x1001602e
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x1001602e
cmp ecx, 1
je 0x1001008e
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
jne 0x1001602e
mov eax, dword [edx + 0x78]
sub eax, dword [edi]
cmp esi, eax
jne 0x1001602e
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1000fed0
cmp esi, dword [edi + 0x84]
jbe 0x1000fed0
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x1001750e
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp dword [ebp - 0xb8], 0
mov eax, dword [edi + 0x74]
je 0x10010309
cmp esi, eax
jne 0x100100f9
lea ebx, [edi + 0x84]
jmp 0x10010219
mov al, byte [esi - 1]
lea edx, [esi - 1]
and al, 0xc0
cmp al, 0x80
jne 0x1001010f
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x10010105
lea ebx, [edi + 0x84]
mov dword [ebp - 0xb4], ebx
cmp edx, dword [ebx]
jae 0x10010121
mov dword [ebx], edx
movzx ecx, byte [edx]
cmp ecx, 0xc0
jb 0x100101fe
movzx eax, byte [edx + 1]
test cl, 0x20
jne 0x10010141
and ecx, 0x1f
jmp 0x100101f6
and eax, 0x3f
test cl, 0x10
jne 0x1001015a
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x100101f6
test cl, 8
jne 0x1001017c
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x100101f6
movzx edi, byte [edx + 2]
movzx ebx, byte [edx + 3]
and edi, 0x3f
mov dword [ebp - 0xac], eax
and ebx, 0x3f
movzx eax, byte [edx + 4]
and eax, 0x3f
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0xac]
test cl, 4
jne 0x100101ce
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edi
mov edi, dword [ebp - 0x80]
shl ecx, 6
or ecx, ebx
mov ebx, dword [ebp - 0xb4]
shl ecx, 6
or ecx, dword [ebp - 0x94]
jmp 0x100101fe
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
shl ecx, 6
or ecx, edi
mov edi, dword [ebp - 0x80]
shl ecx, 6
or ecx, ebx
mov ebx, dword [ebp - 0xb4]
shl ecx, 6
or ecx, dword [ebp - 0x94]
and eax, 0x3f
shl ecx, 6
or ecx, eax
cmp ecx, 0x100
jae 0x10010219
mov eax, dword [edi + 0x40]
mov dword [ebp - 0xa4], 1
test byte [ecx + eax], 0x10
jne 0x10010223
mov dword [ebp - 0xa4], 0
cmp esi, dword [edi + 0x78]
jb 0x1001023d
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1001035f
cmp esi, dword [ebx]
jmp 0x1001034d
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x100102f1
movzx eax, byte [esi + 1]
test cl, 0x20
jne 0x1001025d
and ecx, 0x1f
jmp 0x100102e9
and eax, 0x3f
test cl, 0x10
jne 0x10010276
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x100102e9
test cl, 8
jne 0x10010295
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x100102e9
movzx edx, byte [esi + 2]
movzx edi, byte [esi + 3]
and edx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test cl, 4
jne 0x100102cb
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
mov edi, dword [ebp - 0x80]
shl ecx, 6
or ecx, ebx
jmp 0x100102f1
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
mov edi, dword [ebp - 0x80]
shl ecx, 6
or ecx, ebx
and eax, 0x3f
shl ecx, 6
or ecx, eax
cmp ecx, 0x100
jae 0x1001035f
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je 0x1001035f
mov ecx, 1
jmp 0x10010373
lea edx, [edi + 0x84]
cmp esi, eax
je 0x10010332
lea eax, [esi - 1]
cmp esi, dword [edx]
ja 0x1001031c
mov dword [edx], eax
movzx ecx, byte [eax]
mov eax, dword [edi + 0x40]
mov dword [ebp - 0xa4], 1
test byte [ecx + eax], 0x10
jne 0x1001033c
mov dword [ebp - 0xa4], 0
cmp esi, dword [edi + 0x78]
jb 0x10010363
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1001035f
cmp esi, dword [edx]
jbe 0x1001035f
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x1001750e
xor ecx, ecx
jmp 0x10010373
mov ecx, dword [edi + 0x40]
movzx eax, byte [esi]
movzx ecx, byte [eax + ecx]
shr ecx, 4
and ecx, 1
mov edx, dword [ebp - 0x84]
mov al, byte [edx]
inc edx
mov dword [ebp - 0x84], edx
cmp al, 5
jne 0x10010393
xor eax, eax
cmp ecx, dword [ebp - 0xa4]
sete al
jmp 0x1001039e
xor eax, eax
cmp ecx, dword [ebp - 0xa4]
setne al
test eax, eax
jne case.default.0x10010d11
mov ebx, dword [ebp - 0x90]
jmp 0x1000eb60
mov edx, dword [edi + 0x18]
test edx, edx
je 0x100103ee
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x100103df
push dword [ebp - 0xb8]
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.1001a160
add esp, 0x14
test eax, eax
je 0x100103df
mov eax, 1
jmp 0x100103e1
xor eax, eax
lea edx, [edi + 0x1c]
test eax, eax
jne case.default.0x10010d11
jmp 0x10010418
mov eax, dword [edi + 0x78]
lea edx, [edi + 0x1c]
mov ecx, dword [edx]
sub eax, ecx
cmp esi, eax
ja 0x10010418
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x10010418
cmp ecx, 1
je case.default.0x10010d11
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
je case.default.0x10010d11
mov ecx, dword [edi + 0x88]
test ecx, ecx
je case.0x1000eb92.13
mov eax, dword [edi + 0x78]
dec eax
cmp esi, eax
jne case.0x1000eb92.13
cmp dword [edi + 0x18], 0
jne case.0x1000eb92.13
cmp dword [edx], 2
jne case.0x1000eb92.13
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne case.0x1000eb92.13
mov dword [edi + 0x64], 1
cmp ecx, 1
jg 0x1001750e
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x1001605e
inc esi
cmp dword [ebp - 0xb8], 0
je 0x1000fed0
cmp esi, ecx
jae 0x1000fed0
nop dword [eax]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x1000fed0
inc esi
cmp esi, ecx
jb 0x10010470
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp esi, dword [edi + 0x78]
jae 0x1001605e
mov edx, dword [ebp - 0x84]
inc esi
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xb8], 0
je 0x100105b9
cmp ecx, 0xc0
jb 0x100105b9
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x100104ee
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x100105b9
test cl, 0x10
jne 0x1001050f
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x100105b6
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10010544
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x100105b6
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x1001058b
mov esi, dword [ebp - 0x94]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x100105b6
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
cmp ecx, 0x100
jae case.0x10010d11.10
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
jne case.default.0x10010d11
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xb8], 0
je 0x100106f0
cmp ecx, 0xc0
jb 0x100106f0
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10010625
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x100106f0
test cl, 0x10
jne 0x10010646
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x100106ed
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x1001067b
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x100106ed
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x100106c2
mov esi, dword [ebp - 0x94]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x100106ed
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
cmp ecx, 0xff
ja case.default.0x10010d11
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
je case.default.0x10010d11
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xb8], 0
je 0x1001082b
cmp ecx, 0xc0
jb 0x1001082b
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10010760
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x1001082b
test cl, 0x10
jne 0x10010781
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10010828
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x100107b6
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x10010828
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x100107fd
mov esi, dword [ebp - 0x94]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10010828
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
cmp ecx, 0x100
jae case.0x10010d11.10
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
jmp 0x100105c8
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xb8], 0
je 0x1001094d
cmp ecx, 0xc0
jb 0x1001094d
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10010882
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x1001094d
test cl, 0x10
jne 0x100108a3
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1001094a
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x100108d8
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x1001094a
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x1001091f
mov esi, dword [ebp - 0x94]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x1001094a
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
cmp ecx, 0xff
ja case.default.0x10010d11
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
je case.default.0x10010d11
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xb8], 0
je 0x10010a88
cmp ecx, 0xc0
jb 0x10010a88
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x100109bd
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10010a88
test cl, 0x10
jne 0x100109de
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10010a85
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10010a13
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x10010a85
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10010a5a
mov esi, dword [ebp - 0x94]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10010a85
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
cmp ecx, 0x100
jae case.0x10010d11.10
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jmp 0x100105c8
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xb8], 0
je 0x10010baa
cmp ecx, 0xc0
jb 0x10010baa
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10010adf
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10010baa
test cl, 0x10
jne 0x10010b00
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10010ba7
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10010b35
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x10010ba7
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10010b7c
mov esi, dword [ebp - 0x94]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10010ba7
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
cmp ecx, 0xff
ja case.default.0x10010d11
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je case.default.0x10010d11
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov eax, dword [edi + 0x78]
mov dword [ebp - 0xb4], eax
cmp esi, eax
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xb8], 0
je 0x10010cf3
cmp ecx, 0xc0
jb 0x10010cf3
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10010c22
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10010ced
test cl, 0x10
jne 0x10010c43
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10010cea
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10010c78
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x10010cea
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10010cbf
mov esi, dword [ebp - 0x94]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10010cea
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
mov eax, dword [ebp - 0xb4]
cmp ecx, 0x85
ja 0x10010d80
je case.0x10010d11.11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x10010d11
jmp dword [ecx*4 + 0x10017ccc]
cmp esi, eax
jb 0x10010d5e
mov eax, dword [edi + 0x88]
test eax, eax
je case.0x10010d11.10
cmp esi, dword [edi + 0x84]
jbe case.0x10010d11.10
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x1001750e
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp byte [esi], 0xa
jne case.0x10010d11.10
mov edx, dword [ebp - 0x84]
inc esi
mov ebx, dword [ebp - 0x90]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
sub ecx, 0x2028
je case.0x10010d11.11
sub ecx, 1
jne case.default.0x10010d11
cmp dword [edi + 0x68], 0
jmp 0x100105c8
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xb8], 0
je 0x10010ea4
cmp ecx, 0xc0
jb 0x10010ea4
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10010dd9
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10010ea4
test cl, 0x10
jne 0x10010dfa
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10010ea1
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10010e2f
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x10010ea1
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10010e76
mov esi, dword [ebp - 0x94]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10010ea1
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
cmp ecx, 0x2000
ja 0x10010f1a
je case.default.0x10010d11
cmp ecx, 0xa0
ja 0x10010eea
je case.default.0x10010d11
cmp ecx, 9
je case.default.0x10010d11
cmp ecx, 0x20
je case.default.0x10010d11
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp ecx, 0x1680
je case.default.0x10010d11
cmp ecx, 0x180e
je case.default.0x10010d11
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp ecx, 0x3000
ja case.0x10010d11.10
je case.default.0x10010d11
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x10010d11.10
movzx eax, byte [ecx + 0x10017ce4]
jmp dword [eax*4 + 0x10017cdc]
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xb8], 0
je 0x10011053
cmp ecx, 0xc0
jb 0x10011053
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10010f88
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10011053
test cl, 0x10
jne 0x10010fa9
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10011050
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10010fde
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x10011050
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10011025
mov esi, dword [ebp - 0x94]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10011050
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
cmp ecx, 0x2000
ja 0x10011097
je case.0x10010d11.10
cmp ecx, 0xa0
ja 0x10011080
je case.0x10010d11.10
cmp ecx, 9
je case.0x10010d11.10
cmp ecx, 0x20
jmp 0x100105c8
cmp ecx, 0x1680
je case.0x10010d11.10
cmp ecx, 0x180e
jmp 0x100105c8
cmp ecx, 0x3000
ja case.default.0x10010d11
je case.0x10010d11.10
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x10010d11
movzx eax, byte [ecx + 0x10017d4c]
jmp dword [eax*4 + 0x10017d44]
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xb8], 0
je 0x100111d0
cmp ecx, 0xc0
jb 0x100111d0
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10011105
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x100111d0
test cl, 0x10
jne 0x10011126
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x100111cd
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x1001115b
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x100111cd
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x100111a2
mov esi, dword [ebp - 0x94]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x100111cd
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
cmp ecx, 0x85
ja 0x100111f1
je case.default.0x10010d11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.0x10010d11.10
jmp dword [ecx*4 + 0x10017dac]
sub ecx, 0x2028
je case.default.0x10010d11
sub ecx, 1
je case.default.0x10010d11
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xb8], 0
je 0x10011328
cmp ecx, 0xc0
jb 0x10011328
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1001125d
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10011328
test cl, 0x10
jne 0x1001127e
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10011325
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x100112b3
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x10011325
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x100112fa
mov esi, dword [ebp - 0x94]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10011325
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
cmp ecx, 0x85
ja 0x10011349
je case.0x10010d11.10
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x10010d11
jmp dword [ecx*4 + 0x10017dbc]
sub ecx, 0x2028
je case.0x10010d11.10
sub ecx, 1
jmp 0x100105c8
mov ecx, dword [ebp - 0x84]
xor eax, eax
mov ebx, dword [edi + 0x24]
cmp edx, 0x74
mov dword [ebp - 0xac], ebx
sete al
movzx edx, byte [ecx + 3]
mov dword [ebp - 0x94], eax
movzx eax, byte [ecx + 4]
movzx ecx, byte [ecx + 1]
shl edx, 8
or edx, eax
shl ecx, 8
mov eax, dword [ebp - 0x84]
movzx eax, byte [eax + 2]
or ecx, eax
mov eax, dword [edi + 0x50]
imul ecx, ebx
add ecx, dword [edi + 0x30]
neg eax
sbb eax, eax
xor edi, edi
neg eax
dec eax
mov dword [ebp - 0xa4], eax
test edx, edx
je 0x1001140a
movzx edi, byte [ecx]
dec edx
movzx eax, byte [ecx + 1]
shl edi, 8
or edi, eax
add edi, edi
cmp edi, dword [ebp - 0x90]
jge 0x100113e3
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0xc]
mov ebx, dword [eax + edi*4]
lea eax, [eax + edi*4]
test ebx, ebx
jns 0x100113ff
mov ebx, dword [ebp - 0xac]
add ecx, ebx
test edx, edx
jg 0x100113b6
mov ebx, dword [ebp - 0xa4]
mov eax, 5
mov edx, dword [ebp - 0x84]
jmp 0x10011471
mov eax, dword [eax + 4]
sub eax, ebx
mov dword [ebp - 0xa4], eax
mov ebx, dword [ebp - 0xa4]
mov eax, 5
mov edx, dword [ebp - 0x84]
jmp 0x10011471
xor eax, eax
cmp edx, 0x72
mov edx, dword [ebp - 0x84]
sete al
mov dword [ebp - 0x94], eax
movzx edi, byte [edx + 1]
movzx eax, byte [edx + 2]
shl edi, 8
or edi, eax
add edi, edi
cmp edi, ebx
jge 0x10011459
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + edi*4]
test ecx, ecx
js 0x10011459
mov ebx, dword [eax + edi*4 + 4]
sub ebx, ecx
jmp 0x10011466
mov eax, dword [ebp - 0x80]
mov ebx, dword [eax + 0x50]
neg ebx
sbb ebx, ebx
neg ebx
dec ebx
mov eax, 3
mov dword [ebp - 0xa4], ebx
add edx, eax
mov dword [ebp - 0x84], edx
mov dl, byte [edx]
movzx ecx, dl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x10011491
movzx eax, byte [eax + 0x10017dd4]
jmp dword [eax*4 + 0x10017dcc]
mov edx, dword [ebp - 0x84]
lea eax, [ecx - 0x62]
movsx ebx, byte [eax + 0x1003da64]
mov ecx, eax
movsx eax, byte [eax + 0x1003da70]
and ecx, 1
test eax, eax
mov dword [ebp - 0xbc], ecx
mov ecx, 0x7fffffff
cmove eax, ecx
mov dword [ebp - 0xb4], eax
mov eax, 1
jmp 0x10011512
xor eax, eax
cmp dl, 0x69
mov edx, dword [ebp - 0x84]
sete al
mov dword [ebp - 0xbc], eax
movzx ebx, byte [edx + 1]
movzx eax, byte [edx + 2]
movzx ecx, byte [edx + 3]
shl ebx, 8
or ebx, eax
shl ecx, 8
movzx eax, byte [edx + 4]
or ecx, eax
mov eax, 0x7fffffff
cmove ecx, eax
mov eax, 5
mov dword [ebp - 0xb4], ecx
add edx, eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0xa8], edx
test eax, eax
je 0x1000eb47
jns 0x1001153e
mov dword [ebp - 0x84], edx
test ebx, ebx
je 0x1000eb47
mov dword [ebp - 0x98], 1
cmp ebx, 1
jl 0x1001158b
nop dword [eax]
push dword [ebp - 0x94]
push dword [ebp - 0x80]
push eax
push esi
push edi
call fcn.10018630
add esp, 0x14
test eax, eax
js 0x10016093
add esi, eax
mov eax, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0x98], eax
cmp eax, ebx
mov eax, dword [ebp - 0xa4]
jle 0x10011550
mov edx, dword [ebp - 0xa8]
mov ecx, dword [ebp - 0xb4]
cmp ebx, ecx
jne 0x100160b0
mov edi, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x90]
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
push dword [ebp - 0x94]
push dword [ebp - 0x80]
push ebx
push esi
push edi
call fcn.10018630
add esp, 0x14
test eax, eax
js 0x1001623c
add esi, eax
jmp 0x1000eb47
mov edi, dword [ebp - 0x84]
mov dl, byte [edi + 0x21]
lea eax, [edi + 1]
add edi, 0x21
movzx ecx, dl
add ecx, 0xffffff9e
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0x84], edi
cmp ecx, 0xb
ja case.default.0x10011601
movzx eax, byte [ecx + 0x10017de4]
jmp dword [eax*4 + 0x10017ddc]
movsx ebx, byte [ecx + 0x1003da64]
inc edi
cmp ecx, 8
mov dword [ebp - 0x84], edi
sbb eax, eax
inc eax
mov dword [ebp - 0xc0], eax
mov eax, ecx
and eax, 1
cmp ecx, 8
sbb edx, edx
and edx, eax
movsx eax, byte [ecx + 0x1003da70]
test eax, eax
mov dword [ebp - 0x9c], edx
mov ecx, 0x7fffffff
cmove eax, ecx
mov dword [ebp - 0x88], eax
jmp 0x100116ab
movzx ebx, byte [edi + 1]
xor eax, eax
movzx ecx, byte [edi + 3]
cmp dl, 0x69
sete al
mov dword [ebp - 0x9c], eax
xor eax, eax
cmp dl, 0x6d
sete al
shl ebx, 8
mov dword [ebp - 0xc0], eax
movzx eax, byte [edi + 2]
or ebx, eax
shl ecx, 8
movzx eax, byte [edi + 4]
or ecx, eax
mov eax, 0x7fffffff
cmove ecx, eax
add edi, 5
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x84], edi
jmp 0x100116ab
mov dword [ebp - 0x88], 1
mov ebx, 1
mov ecx, dword [ebp - 0xb8]
mov dword [ebp - 0x98], ebx
test ecx, ecx
je 0x10011829
mov edi, dword [ebp - 0x98]
mov ebx, 1
mov dword [ebp - 0x94], ebx
cmp edi, ebx
jl 0x10011871
nop dword [eax + eax]
mov ecx, dword [ebp - 0x80]
cmp esi, dword [ecx + 0x78]
jae 0x100167e2
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x100117e9
movzx eax, byte [esi]
and eax, 0x3f
test dl, 0x20
jne 0x10011715
and edx, 0x1f
shl edx, 6
or edx, eax
inc esi
jmp 0x100117e9
test dl, 0x10
jne 0x10011736
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 2
jmp 0x100117e3
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test dl, 8
jne 0x1001176b
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
mov esi, ebx
jmp 0x100117dd
movzx ecx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and ecx, 0x3f
mov dword [ebp - 0xa8], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test dl, 4
jne 0x100117b2
mov esi, dword [ebp - 0xa8]
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x100117dd
and edx, 1
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0xa8]
shl edx, 6
or edx, ecx
shl edx, 6
movzx eax, byte [eax]
or edx, edi
shl edx, 6
and eax, 0x3f
or edx, ebx
shl edx, 6
or edx, eax
add esi, 5
mov ebx, dword [ebp - 0x94]
mov edi, dword [ebp - 0x98]
cmp edx, 0xff
jbe 0x100117fa
cmp dword [ebp - 0xa4], 0x6e
jmp 0x10011812
mov ecx, edx
mov eax, 1
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0xb4]
test byte [edx + ecx], al
je case.default.0x10010d11
inc ebx
mov dword [ebp - 0x94], ebx
cmp ebx, edi
jle 0x100116e0
jmp 0x1001186b
mov edi, 1
cmp ebx, edi
jl 0x10011877
mov ecx, dword [ebp - 0x80]
mov ebx, dword [ecx + 0x78]
cmp esi, ebx
jae 0x100167df
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
inc esi
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0xb4]
test byte [edx + ecx], al
je case.default.0x10010d11
inc edi
cmp edi, dword [ebp - 0x98]
jle 0x10011838
mov ecx, dword [ebp - 0xb8]
mov ebx, dword [ebp - 0x98]
mov eax, dword [ebp - 0x88]
cmp ebx, eax
je 0x1000eb47
cmp dword [ebp - 0x9c], 0
jne 0x1001625d
mov edi, esi
mov dword [ebp - 0x9c], edi
test ecx, ecx
je 0x10011aa3
cmp ebx, eax
jge 0x100119e4
nop word [eax + eax]
mov edx, dword [ebp - 0x80]
mov edi, 1
cmp esi, dword [edx + 0x78]
jae 0x10011a7a
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x1001199a
movzx eax, byte [esi + 1]
test dl, 0x20
jne 0x100118e6
and edx, 0x1f
mov edi, 2
jmp 0x1001198c
and eax, 0x3f
test dl, 0x10
jne 0x10011904
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
jmp 0x1001198c
test dl, 8
jne 0x10011928
and edx, 7
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x1001198c
movzx ecx, byte [esi + 2]
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x10011966
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 5
shl edx, 6
or edx, ebx
mov ebx, dword [ebp - 0x98]
jmp 0x10011994
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 6
shl edx, 6
or edx, ebx
mov ebx, dword [ebp - 0x98]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x88]
cmp edx, 0xff
jbe 0x100119ad
cmp dword [ebp - 0xa4], 0x6e
je 0x100119de
jmp 0x100119cd
mov ecx, edx
mov eax, 1
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0xb4]
test byte [edx + ecx], al
je 0x100119de
mov eax, dword [ebp - 0x88]
inc ebx
add esi, edi
mov dword [ebp - 0x98], ebx
cmp ebx, eax
jl 0x100118b0
mov edi, dword [ebp - 0x9c]
mov edx, dword [ebp - 0x80]
cmp dword [ebp - 0xc0], 0
jne 0x1000eb47
mov eax, dword [ebp + 0x20]
mov ebx, dword [ebp - 0x84]
inc eax
push eax
push dword [ebp - 0xb0]
push edx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push ebx
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov eax, esi
dec esi
cmp eax, edi
jbe case.default.0x10010d11
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10011a41
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10011a37
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push dword [ebp - 0x80]
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push ebx
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x10011a24
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [edx + 0x88]
test eax, eax
je 0x10011a98
cmp esi, dword [edx + 0x84]
jbe 0x10011a98
mov dword [edx + 0x64], edi
cmp eax, 1
jg 0x1001750e
mov edi, dword [ebp - 0x9c]
jmp 0x100119e7
mov ecx, dword [ebp - 0x80]
cmp ebx, eax
jge 0x10011b0b
mov edi, dword [ecx + 0x78]
nop dword [eax]
cmp esi, edi
jae 0x10011ae0
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
shr edx, 3
and ecx, 7
shl eax, cl
mov ecx, dword [ebp - 0xb4]
test byte [edx + ecx], al
je 0x10011adb
inc ebx
inc esi
cmp ebx, dword [ebp - 0x88]
jl 0x10011ab0
mov ecx, dword [ebp - 0x80]
jmp 0x10011b05
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x10011b05
cmp esi, dword [ecx + 0x84]
jbe 0x10011b05
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x1001750e
mov edi, dword [ebp - 0x9c]
cmp dword [ebp - 0xc0], 0
jne 0x1000eb47
cmp esi, edi
jb case.default.0x10010d11
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push ecx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov ecx, dword [ebp - 0x80]
dec esi
cmp esi, edi
jae 0x10011b20
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp - 0x84]
movzx ecx, byte [ebx + 1]
lea eax, [ebx + 3]
shl ecx, 8
mov dword [ebp - 0xa8], eax
movzx eax, byte [ebx + 2]
or ecx, eax
add ebx, ecx
mov dword [ebp - 0x84], ebx
mov dl, byte [ebx]
movzx ecx, dl
add ecx, 0xffffff9e
cmp ecx, 0xb
ja case.default.0x10011ba4
movzx eax, byte [ecx + 0x10017df8]
jmp dword [eax*4 + 0x10017df0]
inc ebx
cmp ecx, 8
mov dword [ebp - 0x84], ebx
movsx ebx, byte [ecx + 0x1003da64]
sbb eax, eax
inc eax
mov dword [ebp - 0xc0], eax
mov eax, ecx
and eax, 1
cmp ecx, 8
movsx ecx, byte [ecx + 0x1003da70]
sbb edx, edx
and edx, eax
test ecx, ecx
mov eax, 0x7fffffff
mov dword [ebp - 0x9c], edx
cmove ecx, eax
jmp 0x10011c37
movzx ebx, byte [ebx + 1]
xor eax, eax
cmp dl, 0x69
sete al
mov dword [ebp - 0x9c], eax
xor eax, eax
cmp dl, 0x6d
mov edx, dword [ebp - 0x84]
sete al
shl ebx, 8
mov dword [ebp - 0xc0], eax
movzx eax, byte [edx + 2]
movzx ecx, byte [edx + 3]
or ebx, eax
movzx eax, byte [edx + 4]
shl ecx, 8
or ecx, eax
mov eax, 0x7fffffff
cmove ecx, eax
add edx, 5
mov dword [ebp - 0x84], edx
mov eax, 1
mov dword [ebp - 0x94], ecx
mov dword [ebp - 0xa4], ebx
mov dword [ebp - 0xb4], eax
cmp ebx, eax
jl 0x10011dbb
jmp 0x10011c77
mov eax, 1
mov dword [ebp - 0x94], 1
mov dword [ebp - 0xa4], 1
mov dword [ebp - 0xb4], eax
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
mov ebx, dword [ebp - 0xb8]
test ebx, ebx
je 0x10011d88
cmp ecx, 0xc0
jb 0x10011d88
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10011cb7
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10011d88
test cl, 0x10
jne 0x10011cd8
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10011d85
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10011d0d
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x10011d7f
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x98], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10011d54
mov esi, dword [ebp - 0x98]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10011d7f
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x98]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov ebx, dword [ebp - 0xb8]
mov edi, dword [ebp - 0x80]
push ebx
push dword [ebp - 0xa8]
push ecx
call fcn.1001e920
add esp, 0xc
test eax, eax
je case.default.0x10010d11
mov eax, dword [ebp - 0xb4]
mov ebx, dword [ebp - 0xa4]
inc eax
mov dword [ebp - 0xb4], eax
cmp eax, ebx
jle 0x10011c77
mov eax, dword [ebp - 0x94]
cmp ebx, eax
je 0x1000eb4a
cmp dword [ebp - 0x9c], 0
jne 0x100164b4
mov edi, esi
mov dword [ebp - 0xb4], edi
cmp ebx, eax
jge 0x10011f40
nop word [eax + eax]
mov ecx, dword [ebp - 0x80]
mov edi, 1
cmp esi, dword [ecx + 0x78]
jae 0x10011f1c
mov edx, dword [ebp - 0xb8]
movzx ecx, byte [esi]
test edx, edx
je 0x10011ef1
cmp ecx, 0xc0
jb 0x10011ef1
movzx eax, byte [esi + 1]
test cl, 0x20
jne 0x10011e34
and ecx, 0x1f
mov edi, 2
jmp 0x10011ee9
and eax, 0x3f
test cl, 0x10
jne 0x10011e52
and ecx, 0xf
mov edi, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x10011ee9
test cl, 8
jne 0x10011e79
and ecx, 7
mov edi, 4
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x10011ee9
movzx edx, byte [esi + 2]
movzx edi, byte [esi + 3]
and edx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test cl, 4
jne 0x10011ebd
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
mov edx, dword [ebp - 0xb8]
shl ecx, 6
or ecx, edi
mov edi, 5
shl ecx, 6
or ecx, ebx
mov ebx, dword [ebp - 0xa4]
jmp 0x10011ef1
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
or ecx, edx
mov edx, dword [ebp - 0xb8]
shl ecx, 6
or ecx, edi
mov edi, 6
shl ecx, 6
or ecx, ebx
mov ebx, dword [ebp - 0xa4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
push edx
push dword [ebp - 0xa8]
push ecx
call fcn.1001e920
add esp, 0xc
test eax, eax
je 0x10011f3a
inc ebx
add esi, edi
mov dword [ebp - 0xa4], ebx
cmp ebx, dword [ebp - 0x94]
jl 0x10011df0
jmp 0x10011f3a
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x10011f3a
cmp esi, dword [ecx + 0x84]
jbe 0x10011f3a
mov dword [ecx + 0x64], edi
cmp eax, 1
jg 0x1001750e
mov edi, dword [ebp - 0xb4]
cmp dword [ebp - 0xc0], 0
jne 0x1000eb47
mov eax, dword [ebp + 0x20]
mov ebx, dword [ebp - 0x80]
inc eax
push eax
push dword [ebp - 0xb0]
push ebx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
nop
mov eax, esi
dec esi
cmp eax, edi
jbe case.default.0x10010d11
cmp dword [ebp - 0xb8], 0
je 0x10011faa
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10011faa
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10011fa0
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push ebx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x10011f80
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0xb8], 0
je 0x10012064
mov ebx, dword [ebp - 0x84]
mov edx, 1
inc ebx
movzx eax, byte [ebx]
cmp eax, 0xc0
jb 0x10012037
test al, 0x20
jne 0x10012014
mov edx, 2
jmp 0x10012037
test al, 0x10
jne 0x1001201f
mov edx, 3
jmp 0x10012037
test al, 8
jne 0x1001202a
mov edx, 4
jmp 0x10012037
test al, 4
mov edx, 0
setne dl
add edx, 5
mov ecx, dword [edi + 0x78]
mov eax, ecx
sub eax, esi
cmp edx, eax
jg 0x10016665
mov cl, byte [ebx]
dec edx
mov al, byte [esi]
inc ebx
inc esi
mov dword [ebp - 0x84], ebx
cmp cl, al
jne case.default.0x10010d11
test edx, edx
jg 0x10012046
jmp 0x1000eb4a
mov eax, dword [edi + 0x78]
sub eax, esi
cmp eax, 1
jl 0x1001605e
mov edx, dword [ebp - 0x84]
mov al, byte [esi]
inc esi
cmp byte [edx + 1], al
jne case.default.0x10010d11
add edx, 2
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
cmp esi, dword [edi + 0x78]
jae 0x1001605e
cmp dword [ebp - 0xb8], 0
je 0x10012327
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0xa4], 1
mov dword [ebp - 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x100121b4
movzx eax, byte [edx + 1]
test bl, 0x20
jne 0x100120e9
and ebx, 0x1f
mov dword [ebp - 0xa4], 2
jmp 0x100121ac
and eax, 0x3f
test bl, 0x10
jne 0x1001210c
and ebx, 0xf
mov dword [ebp - 0xa4], 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
jmp 0x100121ac
test bl, 8
jne 0x10012138
and ebx, 7
mov dword [ebp - 0xa4], 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x100121ac
mov edi, dword [ebp - 0x84]
movzx ecx, byte [edx + 2]
movzx edx, byte [edx + 3]
and ecx, 0x3f
and edx, 0x3f
movzx edi, byte [edi + 4]
and edi, 0x3f
test bl, 4
jne 0x1001217e
and ebx, 3
mov dword [ebp - 0xa4], 5
shl ebx, 6
or ebx, eax
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, edx
shl ebx, 6
or ebx, edi
mov edi, dword [ebp - 0x80]
jmp 0x100121b4
and ebx, 1
mov dword [ebp - 0xa4], 6
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 0x84]
shl ebx, 6
or ebx, ecx
shl ebx, 6
movzx eax, byte [eax + 5]
or ebx, edx
shl ebx, 6
or ebx, edi
mov edi, dword [ebp - 0x80]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx ecx, byte [esi]
cmp ebx, 0x80
jae 0x100121e7
mov edx, dword [edi + 0x38]
mov al, byte [edx + ebx]
cmp al, byte [ecx + edx]
jne case.default.0x10010d11
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
inc edx
mov dword [ebp - 0x84], edx
inc esi
jmp 0x1000eb60
inc esi
cmp ecx, 0xc0
jb 0x100122ff
test cl, 0x20
jne 0x1001220d
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x100122ff
test cl, 0x10
jne 0x10012234
movzx eax, byte [esi]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x100122ff
lea eax, [esi + 3]
mov dword [ebp - 0x94], eax
movzx eax, byte [esi]
and eax, 0x3f
mov dword [ebp - 0xac], eax
test cl, 8
jne 0x10012279
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
mov esi, dword [ebp - 0x94]
and eax, 0x3f
shl ecx, 6
or ecx, eax
jmp 0x100122ff
movzx edx, byte [esi + 1]
lea eax, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0xb4], eax
and edi, 0x3f
mov eax, dword [ebp - 0x94]
movzx eax, byte [eax]
and eax, 0x3f
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0xac]
test cl, 4
jne 0x100122d0
mov esi, dword [ebp - 0xb4]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, dword [ebp - 0x94]
jmp 0x100122ff
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xb4]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, dword [ebp - 0x94]
shl ecx, 6
or ecx, eax
add esi, 5
mov edx, dword [ebp - 0x84]
add edx, dword [ebp - 0xa4]
mov dword [ebp - 0x84], edx
cmp ebx, ecx
jne case.default.0x10010d11
mov edi, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x90]
jmp 0x1000eb60
mov eax, dword [ebp - 0x84]
mov edx, dword [edi + 0x38]
movzx ecx, byte [esi]
movzx eax, byte [eax + 1]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne case.default.0x10010d11
mov edx, dword [ebp - 0x84]
inc esi
add edx, 2
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov ecx, dword [ebp - 0x84]
movzx edi, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edi, 8
or edi, eax
add ecx, 3
mov edx, edi
jmp 0x10012458
mov dword [ebp - 0xc0], 1
mov eax, dword [ebp - 0x84]
xor edx, edx
mov dword [ebp - 0x98], edx
movzx edi, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edi, 8
or edi, eax
mov dword [ebp - 0x88], edi
cmp cl, 0x28
je 0x100123b0
mov dword [ebp - 0x9c], edx
cmp cl, 0x35
jne 0x100123ba
mov dword [ebp - 0x9c], 1
mov ecx, dword [ebp - 0x84]
add ecx, 3
jmp 0x10012464
mov ecx, dword [ebp - 0x84]
xor edx, edx
mov dword [ebp - 0xc0], 1
mov edi, 0x7fffffff
inc ecx
jmp 0x10012458
mov ecx, dword [ebp - 0x84]
mov edx, 1
mov dword [ebp - 0xc0], 1
mov edi, 0x7fffffff
inc ecx
jmp 0x10012458
mov ecx, dword [ebp - 0x84]
xor edx, edx
mov dword [ebp - 0xc0], 1
inc ecx
lea edi, [edx + 1]
jmp 0x10012458
cmp edx, 0x2e
mov ecx, edx
sbb eax, eax
inc dword [ebp - 0x84]
and eax, 0xfffffff3
add eax, 0x2e
sub ecx, eax
mov eax, ecx
and eax, 1
mov dword [ebp - 0x9c], eax
mov eax, 0x7fffffff
movsx edi, byte [ecx + 0x1003da70]
movsx edx, byte [ecx + 0x1003da64]
test edi, edi
mov ecx, dword [ebp - 0x84]
cmove edi, eax
mov dword [ebp - 0x98], edx
mov dword [ebp - 0x88], edi
cmp dword [ebp - 0xb8], 0
movzx ebx, byte [ecx]
je 0x100126b6
mov eax, ecx
mov dword [ebp - 0x94], eax
cmp ebx, 0xc0
jb 0x100126b6
test bl, 0x20
jne 0x10012494
mov edi, 2
jmp 0x100124bb
test bl, 0x10
jne 0x100124a0
mov edi, 3
jmp 0x100124bb
test bl, 8
jne 0x100124ac
mov edi, 4
jmp 0x100124bb
mov edi, 5
test bl, 4
je 0x100124bb
mov edi, 6
add ecx, edi
mov dword [ebp - 0xa4], edi
mov ebx, 1
mov dword [ebp - 0x84], ecx
cmp edx, ebx
jl 0x10012576
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x78]
sub eax, edi
mov dword [ebp - 0xac], eax
cmp esi, eax
ja 0x10016680
mov edx, dword [ebp - 0x94]
mov ecx, esi
sub edi, 4
jb 0x10012511
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x10012516
add ecx, 4
add edx, 4
sub edi, 4
jae 0x10012500
cmp edi, 0xfffffffc
je 0x10012553
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x10016680
cmp edi, 0xfffffffd
je 0x10012553
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x10016680
cmp edi, 0xfffffffe
je 0x10012553
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x10016680
cmp edi, 0xffffffff
je 0x10012553
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x10016680
mov edi, dword [ebp - 0xa4]
inc ebx
mov edx, dword [ebp - 0x98]
add esi, edi
mov eax, dword [ebp - 0xac]
cmp ebx, edx
jle 0x100124e4
mov eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x88]
mov ebx, dword [ebp - 0x90]
cmp edx, ecx
je 0x1000eb42
cmp dword [ebp - 0x9c], 0
jne 0x100166b2
mov ebx, esi
cmp edx, ecx
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0xb4], ebx
jge 0x10012662
mov ebx, dword [ecx + 0x78]
sub ebx, edi
nop
cmp esi, ebx
ja 0x10012632
mov ecx, esi
mov edx, eax
sub edi, 4
jb 0x100125d2
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x100125d7
add ecx, 4
add edx, 4
sub edi, 4
jae 0x100125c1
cmp edi, 0xfffffffc
je 0x10012604
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x1001262c
cmp edi, 0xfffffffd
je 0x10012604
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x1001262c
cmp edi, 0xfffffffe
je 0x10012604
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x1001262c
cmp edi, 0xffffffff
je 0x10012604
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x1001262c
mov edx, dword [ebp - 0x98]
mov edi, dword [ebp - 0xa4]
inc edx
mov eax, dword [ebp - 0x94]
add esi, edi
mov dword [ebp - 0x98], edx
cmp edx, dword [ebp - 0x88]
jl 0x100125b0
mov ecx, dword [ebp - 0x80]
jmp 0x1001265c
mov edi, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x1001265c
cmp esi, dword [ecx + 0x78]
jb 0x1001265c
cmp esi, dword [ecx + 0x84]
jbe 0x1001265c
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x1001750e
mov ebx, dword [ebp - 0xb4]
cmp dword [ebp - 0xc0], 0
jne 0x1000eb47
cmp esi, ebx
jbe 0x10015d7d
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push ecx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov ecx, dword [ebp - 0x80]
sub esi, edi
cmp esi, ebx
ja 0x10012677
mov edi, ecx
jmp 0x10015d80
inc ecx
cmp dword [ebp - 0xa4], 0x2e
mov dword [ebp - 0x84], ecx
jb 0x100127d3
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x3c]
movzx edi, byte [eax + ebx]
cmp edx, 1
jl 0x1001270b
mov edx, dword [ecx + 0x78]
mov ecx, 1
cmp esi, edx
jae 0x100167df
movzx eax, byte [esi]
cmp ebx, eax
je 0x100126f8
cmp edi, eax
jne case.default.0x10010d11
inc ecx
inc esi
cmp ecx, dword [ebp - 0x98]
jle 0x100126e1
mov edx, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x88]
cmp edx, eax
je 0x1000eb47
cmp dword [ebp - 0x9c], 0
jne 0x100167f2
mov dword [ebp - 0xac], esi
cmp edx, eax
jge 0x1001274c
mov ecx, dword [ecx + 0x78]
cmp esi, ecx
jae 0x100127a9
movzx eax, byte [esi]
cmp ebx, eax
je 0x10012742
cmp edi, eax
jne 0x1001274c
inc edx
inc esi
cmp edx, dword [ebp - 0x88]
jl 0x10012733
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc0], 0
jne 0x1000eb4a
mov ebx, dword [ebp - 0xac]
cmp esi, ebx
je 0x10015d80
nop word [eax + eax]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
dec esi
test eax, eax
jne 0x10015da8
cmp esi, ebx
jne 0x10012770
jmp 0x10015d80
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1001274f
cmp esi, dword [edi + 0x84]
jbe 0x1001274f
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x1001750e
jmp 0x1001274f
mov ecx, 1
cmp edx, ecx
jl 0x10012805
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x100167df
movzx eax, byte [esi]
inc esi
cmp ebx, eax
jne case.default.0x10010d11
inc ecx
cmp ecx, dword [ebp - 0x98]
jle 0x100127e2
mov edx, dword [ebp - 0x98]
cmp edx, edi
je 0x1000eb47
cmp dword [ebp - 0x9c], 0
jne 0x100168a1
mov edi, esi
cmp edx, dword [ebp - 0x88]
jge 0x10012845
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax + 0x78]
nop word [eax + eax]
cmp esi, ecx
jae 0x100128a2
movzx eax, byte [esi]
cmp ebx, eax
jne 0x10012845
inc edx
inc esi
cmp edx, dword [ebp - 0x88]
jl 0x10012830
mov ecx, dword [ebp - 0x80]
cmp dword [ebp - 0xc0], 0
jne 0x1000eb47
mov ebx, dword [ebp - 0x90]
cmp esi, edi
je 0x10015d72
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push ecx
push ebx
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
dec esi
test eax, eax
jne 0x10015da8
mov ecx, dword [ebp - 0x80]
cmp esi, edi
jne 0x10012863
mov edx, dword [ebp - 0x84]
mov edi, ecx
jmp 0x10015d8c
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x10012848
cmp esi, dword [ecx + 0x84]
jbe 0x10012848
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x1001750e
jmp 0x10012848
cmp esi, dword [edi + 0x78]
jae 0x1001605e
cmp dword [ebp - 0xb8], 0
mov eax, dword [ebp - 0x84]
movzx ecx, byte [eax + 1]
je 0x10012b64
add eax, 2
mov dword [ebp - 0x84], eax
cmp ecx, 0xc0
jb 0x10012a0b
lea edx, [eax + 1]
test cl, 0x20
jne 0x10012922
movzx eax, byte [eax]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [ebp - 0x84], edx
jmp 0x10012a0b
lea edi, [eax + 2]
test cl, 0x10
jne 0x1001294e
movzx eax, byte [eax]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov dword [ebp - 0x84], edi
movzx eax, byte [edx]
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x10012a0b
lea ebx, [eax + 3]
movzx eax, byte [eax]
and eax, 0x3f
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x1001298b
and ecx, 7
mov dword [ebp - 0x84], ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x10012a0b
mov ebx, dword [ebp - 0x84]
movzx edx, byte [edx]
add ebx, 4
movzx edi, byte [edi]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x100129dc
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
mov dword [ebp - 0x84], eax
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10012a0b
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [ebp - 0x84], 5
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x10012b26
test dl, 0x20
jne 0x10012a34
movzx eax, byte [esi]
and edx, 0x1f
shl edx, 6
and eax, 0x3f
or edx, eax
inc esi
jmp 0x10012b26
test dl, 0x10
jne 0x10012a5b
movzx eax, byte [esi]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 2
jmp 0x10012b26
lea eax, [esi + 3]
mov dword [ebp - 0x94], eax
movzx eax, byte [esi]
and eax, 0x3f
mov dword [ebp - 0xac], eax
test dl, 8
jne 0x10012aa0
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
mov esi, dword [ebp - 0x94]
and eax, 0x3f
shl edx, 6
or edx, eax
jmp 0x10012b26
movzx edi, byte [esi + 1]
lea eax, [esi + 4]
movzx ebx, byte [esi + 2]
and edi, 0x3f
mov dword [ebp - 0xb4], eax
and ebx, 0x3f
mov eax, dword [ebp - 0x94]
movzx eax, byte [eax]
and eax, 0x3f
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0xac]
test dl, 4
jne 0x10012af7
mov esi, dword [ebp - 0xb4]
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp - 0x94]
jmp 0x10012b26
and edx, 1
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0xb4]
shl edx, 6
or edx, edi
shl edx, 6
movzx eax, byte [eax]
or edx, ebx
shl edx, 6
and eax, 0x3f
or edx, dword [ebp - 0x94]
shl edx, 6
or edx, eax
add esi, 5
cmp dword [ebp - 0xa4], 0x1f
jne 0x10012b3c
cmp ecx, edx
je case.default.0x10010d11
jmp 0x1000eb47
mov edi, dword [ebp - 0x80]
cmp ecx, 0x7f
jbe 0x10012b48
mov eax, ecx
jmp 0x10012b4f
mov eax, dword [edi + 0x3c]
movzx eax, byte [eax + ecx]
cmp ecx, edx
je case.default.0x10010d11
cmp eax, edx
je case.default.0x10010d11
jmp 0x1000eb4a
movzx edx, byte [esi]
inc esi
cmp ecx, edx
je case.default.0x10010d11
cmp dword [ebp - 0xa4], 0x20
jne 0x10012b88
mov eax, dword [edi + 0x3c]
movzx eax, byte [eax + ecx]
cmp eax, edx
je case.default.0x10010d11
mov edx, dword [ebp - 0x84]
add edx, 2
mov dword [ebp - 0x84], edx
jmp 0x1000eb60
mov edi, dword [ebp - 0x84]
movzx edx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl edx, 8
or edx, eax
add edi, 3
mov dword [ebp - 0x98], edx
mov ebx, edx
jmp 0x10012cd4
mov edi, dword [ebp - 0x84]
xor ebx, ebx
mov dword [ebp - 0x88], ebx
movzx edx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl edx, 8
or edx, eax
mov dword [ebp - 0x98], edx
cmp cl, 0x42
je 0x10012bf0
mov dword [ebp - 0x9c], ebx
cmp cl, 0x4f
jne 0x10012bfa
mov dword [ebp - 0x9c], 1
add edi, 3
jmp 0x10012cda
mov edi, dword [ebp - 0x84]
xor ebx, ebx
mov dword [ebp - 0xc0], 1
inc edi
mov dword [ebp - 0x98], 0x7fffffff
jmp 0x10012cd4
mov edi, dword [ebp - 0x84]
mov ebx, 1
mov dword [ebp - 0xc0], 1
inc edi
mov dword [ebp - 0x98], 0x7fffffff
jmp 0x10012cd4
mov edi, dword [ebp - 0x84]
xor ebx, ebx
mov dword [ebp - 0xc0], 1
inc edi
mov dword [ebp - 0x98], 1
jmp 0x10012cd4
mov edi, dword [ebp - 0x84]
xor ebx, ebx
mov dword [ebp - 0xc0], 1
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, 3
mov dword [ebp - 0x98], ecx
jmp 0x10012cd4
mov edi, dword [ebp - 0x84]
cmp edx, 0x48
mov ecx, edx
sbb eax, eax
inc edi
and eax, 0xfffffff3
add eax, 0x48
sub ecx, eax
mov eax, ecx
and eax, 1
mov dword [ebp - 0x9c], eax
movsx eax, byte [ecx + 0x1003da70]
movsx ebx, byte [ecx + 0x1003da64]
test eax, eax
mov ecx, 0x7fffffff
cmove eax, ecx
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x88], ebx
movzx ebx, byte [edi]
inc edi
mov edx, dword [ebp - 0xb8]
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0x84], edi
test edx, edx
je 0x10012e44
cmp ebx, 0xc0
jb 0x10012e44
lea ecx, [edi + 1]
test bl, 0x20
jne 0x10012d25
movzx eax, byte [edi]
and ebx, 0x1f
shl ebx, 6
and eax, 0x3f
or ebx, eax
mov dword [ebp - 0x84], ecx
jmp 0x10012e3e
lea edx, [edi + 2]
test bl, 0x10
jne 0x10012d51
movzx eax, byte [edi]
and ebx, 0xf
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [ebp - 0x84], edx
movzx eax, byte [ecx]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x10012e38
mov eax, dword [ebp - 0x84]
add edi, 3
movzx eax, byte [eax]
and eax, 0x3f
test bl, 8
jne 0x10012d8e
and ebx, 7
mov dword [ebp - 0x84], edi
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x10012e38
mov ebx, dword [ebp - 0x84]
movzx ecx, byte [ecx]
add ebx, 4
movzx edx, byte [edx]
and ecx, 0x3f
movzx edi, byte [edi]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x8c]
test bl, 4
jne 0x10012df5
and ebx, 3
shl ebx, 6
or ebx, eax
mov eax, ebx
mov dword [ebp - 0x8c], ebx
mov ebx, dword [ebp - 0x94]
shl eax, 6
or eax, ecx
mov dword [ebp - 0x84], ebx
shl eax, 6
or eax, edx
mov edx, dword [ebp - 0xb8]
shl eax, 6
or eax, edi
mov dword [ebp - 0x8c], eax
mov ebx, eax
jmp 0x10012e44
and ebx, 1
shl ebx, 6
or ebx, eax
mov eax, ebx
mov dword [ebp - 0x8c], ebx
mov ebx, dword [ebp - 0x94]
shl eax, 6
or eax, ecx
shl eax, 6
or eax, edx
shl eax, 6
or eax, edi
shl eax, 6
mov dword [ebp - 0x8c], eax
movzx eax, byte [ebx]
mov ebx, dword [ebp - 0x8c]
and eax, 0x3f
or ebx, eax
add dword [ebp - 0x84], 5
mov edx, dword [ebp - 0xb8]
mov dword [ebp - 0x8c], ebx
cmp dword [ebp - 0xa4], 0x48
jb 0x100132d5
test edx, edx
je 0x10012e65
cmp ebx, 0x7f
jbe 0x10012e65
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0xa4], ebx
jmp 0x10012e7d
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x3c]
movzx eax, byte [eax + ebx]
mov dword [ebp - 0xa4], eax
test edx, edx
je 0x10012fd0
mov edx, dword [ebp - 0x88]
mov eax, 1
mov dword [ebp - 0xa8], eax
cmp edx, eax
jl 0x10012fc8
cmp esi, dword [ecx + 0x78]
jae 0x100167e2
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x10012fa2
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10012ec8
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10012f96
test cl, 0x10
jne 0x10012ee9
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10012f96
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10012f1e
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x10012f90
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10012f65
mov esi, dword [ebp - 0x94]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10012f90
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov ebx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0xa8]
mov edx, dword [ebp - 0x88]
cmp ebx, ecx
je case.default.0x10010d11
cmp dword [ebp - 0xa4], ecx
je case.default.0x10010d11
mov ecx, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0xa8], eax
cmp eax, edx
jle 0x10012e96
mov edi, dword [ebp - 0xa4]
jmp 0x10013031
mov edx, dword [ebp - 0x88]
mov ecx, 1
mov edi, eax
mov dword [ebp - 0xa4], edi
cmp edx, ecx
jl 0x10013031
mov edx, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x88]
mov dword [ebp - 0xa4], edi
mov edx, dword [edx + 0x78]
nop dword [eax]
cmp esi, edx
jae 0x100167df
movzx eax, byte [esi]
cmp dword [ebp - 0x8c], eax
je case.default.0x10010d11
cmp edi, eax
je case.default.0x10010d11
inc ecx
inc esi
cmp ecx, ebx
jle 0x10013000
mov edx, dword [ebp - 0x88]
mov ebx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x98]
cmp edx, eax
je 0x1000eb47
cmp dword [ebp - 0x9c], 0
jne 0x10016937
cmp dword [ebp - 0xb8], 0
mov ebx, esi
mov dword [ebp - 0xa8], ebx
je 0x10013232
mov edi, eax
cmp edx, edi
jge 0x10013196
mov ebx, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x80]
mov eax, 1
cmp esi, dword [ecx + 0x78]
jae 0x10013203
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x10013173
movzx eax, byte [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x100130af
and ecx, 0x1f
shl ecx, 6
or ecx, eax
mov eax, 2
jmp 0x10013173
test cl, 0x10
jne 0x100130d2
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x10013173
test cl, 8
jne 0x10013101
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x10013173
movzx edx, byte [esi + 2]
movzx edi, byte [esi + 3]
and edx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test cl, 4
jne 0x10013139
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, 5
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10013161
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
mov eax, 6
mov edi, dword [ebp - 0x98]
mov ebx, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x88]
cmp ebx, ecx
je 0x10013190
cmp dword [ebp - 0xa4], ecx
je 0x10013190
inc edx
add esi, eax
mov dword [ebp - 0x88], edx
cmp edx, edi
jl 0x10013071
mov ebx, dword [ebp - 0xa8]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc0], 0
jne 0x1000eb4a
cmp esi, ebx
jbe 0x10015d80
nop
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
jne 0x100131fa
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x100131f0
cmp esi, ebx
ja 0x100131b0
jmp 0x10015d80
mov edi, ecx
mov eax, dword [edi + 0x88]
test eax, eax
je 0x10013227
cmp esi, dword [edi + 0x84]
jbe 0x10013227
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x1001750e
mov ebx, dword [ebp - 0xa8]
jmp 0x10013199
cmp edx, eax
jge 0x1001325d
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x100132ae
movzx eax, byte [esi]
cmp dword [ebp - 0x8c], eax
je 0x1001325d
cmp edi, eax
je 0x1001325d
inc edx
inc esi
cmp edx, dword [ebp - 0x98]
jl 0x10013240
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc0], 0
jne 0x1000eb4a
cmp esi, ebx
je 0x10015d80
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
dec esi
cmp esi, ebx
jne 0x10013275
jmp 0x10015d80
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x88]
test eax, eax
je 0x10013260
cmp esi, dword [edi + 0x84]
jbe 0x10013260
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x1001750e
jmp 0x10013260
mov edi, dword [ebp - 0x88]
test edx, edx
je 0x10013428
mov eax, 1
mov dword [ebp - 0xa8], eax
cmp edi, eax
jl 0x10013456
nop word [eax + eax]
mov ecx, dword [ebp - 0x80]
cmp esi, dword [ecx + 0x78]
jae 0x100167e2
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x1001340f
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10013335
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10013409
test cl, 0x10
jne 0x10013356
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10013403
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x1001338b
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x100133fd
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0x94], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x100133d2
mov esi, dword [ebp - 0x94]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x100133fd
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x94]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov ebx, dword [ebp - 0x8c]
mov edi, dword [ebp - 0x88]
mov eax, dword [ebp - 0xa8]
cmp ebx, ecx
je case.default.0x10010d11
inc eax
mov dword [ebp - 0xa8], eax
cmp eax, edi
jle 0x10013300
jmp 0x10013450
mov ecx, 1
cmp edi, ecx
jl 0x10013456
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x100167df
movzx eax, byte [esi]
inc esi
cmp ebx, eax
je case.default.0x10010d11
inc ecx
cmp ecx, edi
jle 0x10013437
mov edx, dword [ebp - 0xb8]
mov eax, dword [ebp - 0x98]
cmp edi, eax
je 0x1000eb47
cmp dword [ebp - 0x9c], 0
jne 0x10016b8f
mov ebx, esi
mov dword [ebp - 0xb4], ebx
test edx, edx
je 0x10013642
cmp edi, eax
jge 0x100135a8
mov edx, dword [ebp - 0x8c]
nop
mov ecx, dword [ebp - 0x80]
mov eax, 1
cmp esi, dword [ecx + 0x78]
jae 0x10013613
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x10013589
movzx eax, byte [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x100134ce
and ecx, 0x1f
shl ecx, 6
or ecx, eax
mov eax, 2
jmp 0x10013589
test cl, 0x10
jne 0x100134f1
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x10013589
test cl, 8
jne 0x1001351d
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x10013589
movzx edx, byte [esi + 2]
movzx edi, byte [esi + 3]
and edx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test cl, 4
jne 0x10013555
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, 5
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x1001357d
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
mov eax, 6
mov edx, dword [ebp - 0x8c]
mov edi, dword [ebp - 0x88]
cmp edx, ecx
je 0x100135a2
inc edi
add esi, eax
mov dword [ebp - 0x88], edi
cmp edi, dword [ebp - 0x98]
jl 0x10013490
mov ebx, dword [ebp - 0xb4]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc0], 0
jne 0x1000eb4a
cmp esi, ebx
jbe 0x10015d80
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
jne 0x1001360a
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10013600
cmp esi, ebx
ja 0x100135c0
jmp 0x10015d80
mov edi, ecx
mov eax, dword [edi + 0x88]
test eax, eax
je 0x10013637
cmp esi, dword [edi + 0x84]
jbe 0x10013637
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x1001750e
mov ebx, dword [ebp - 0xb4]
jmp 0x100135ab
cmp edi, eax
jge 0x10013667
mov eax, dword [ebp - 0x80]
mov edx, dword [ebp - 0x8c]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x100136b9
movzx eax, byte [esi]
cmp edx, eax
je 0x10013667
inc edi
inc esi
cmp edi, dword [ebp - 0x98]
jl 0x10013652
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc0], 0
jne 0x1000eb4a
cmp esi, ebx
je 0x10015d80
nop
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
dec esi
cmp esi, ebx
jne 0x10013680
jmp 0x10015d80
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1001366a
cmp esi, dword [edi + 0x84]
jbe 0x1001366a
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x1001750e
jmp 0x1001366a
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x9c], 1
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
mov dword [ebp - 0x98], edx
mov ebx, edx
mov edx, dword [ebp - 0x84]
add edx, 3
jmp 0x1001389b
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x8c], 0
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x98], edx
xor edx, edx
cmp cl, 0x5c
movzx ecx, byte [eax + 3]
sete dl
add eax, 3
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0x84], eax
mov eax, ecx
inc dword [ebp - 0x84]
mov dword [ebp - 0xa4], ecx
xor ecx, ecx
mov dword [ebp - 0x88], eax
jmp 0x100147ad
mov edx, 0x7fffffff
mov ebx, dword [ebp - 0x84]
xor edi, edi
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0xc0], 1
mov dword [ebp - 0x98], edx
movzx ecx, byte [ebx + 1]
add ebx, 2
mov dword [ebp - 0xb4], ecx
mov eax, ecx
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0x84], ebx
jmp 0x100147e7
mov edx, dword [ebp - 0x84]
mov ebx, 1
mov dword [ebp - 0xc0], 1
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0x98], 0x7fffffff
movzx ecx, byte [edx + 1]
add edx, 2
mov eax, ecx
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], edx
jmp 0x100138c5
mov edx, 1
jmp 0x10013777
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0xc0], 1
mov dword [ebp - 0x8c], 0
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x98], ecx
movzx ecx, byte [edx + 3]
add edx, 4
mov eax, ecx
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xa4], ecx
xor ecx, ecx
mov dword [ebp - 0x84], edx
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x88], eax
jmp 0x100147b3
movsx ebx, byte [edx + 0x1003da0f]
lea ecx, [edx - 0x55]
movsx edx, byte [edx + 0x1003da1b]
and ecx, 1
inc dword [ebp - 0x84]
mov eax, 0x7fffffff
test edx, edx
mov dword [ebp - 0x9c], ecx
cmove edx, eax
mov dword [ebp - 0x98], edx
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0x8c], ebx
movzx eax, byte [edx]
inc edx
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], edx
test ebx, ebx
jle 0x100147a1
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x1001730d.15
mov edx, dword [ebp - 0xb8]
test edx, edx
je 0x10014442
jmp dword [eax*4 + 0x10017e04]
jmp dword [eax*4 + 0x10017f44]
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x88]
mov edi, esi
mov ebx, dword [ebp - 0x84]
mov dword [ebp - 0x94], ebx
cmp ecx, dword [ebp - 0x98]
je 0x1000eb47
mov dword [ebp - 0x84], ebx
test edx, edx
jne 0x10016dc7
mov edi, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x98]
add eax, 0xfffffffa
mov ebx, esi
mov dword [ebp - 0x88], ebx
cmp eax, 0xf
ja case.0x1001730d.15
cmp dword [ebp - 0xb8], 0
je switch.0x100155f1
jmp dword [eax*4 + 0x10018118]
mov ebx, dword [ebp - 0x88]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc0], 0
jne 0x1000eb4a
cmp esi, ebx
jbe 0x10015d80
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
jne 0x10014bca
nop dword [eax + eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10014bc0
cmp dword [ebp - 0xa4], 0x11
jne 0x10014be7
cmp esi, ebx
jbe 0x10015d80
cmp byte [esi], 0xa
jne 0x10014b82
cmp byte [esi - 1], 0xd
jne 0x10014b82
dec esi
cmp esi, ebx
ja 0x10014b82
jmp 0x10015d80
mov ebx, dword [ebp - 0x88]
jmp 0x10014b6d
mov edi, eax
mov eax, dword [edi + 0x88]
test eax, eax
je 0x10014c15
cmp esi, dword [edi + 0x84]
jbe 0x10014c15
mov dword [edi + 0x64], edx
cmp eax, 1
jg 0x1001750e
mov ebx, dword [ebp - 0x88]
jmp 0x10014b6d
cmp edi, edx
jge 0x10014b6a
mov eax, dword [ebp - 0x80]
mov edx, 1
cmp esi, dword [eax + 0x78]
jae 0x10014d9c
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x1001500c
movzx eax, byte [esi + 1]
test cl, 0x20
jne 0x10014f5b
and ecx, 0x1f
mov edx, 2
jmp 0x10015001
and eax, 0x3f
test cl, 0x10
jne 0x10014f79
and ecx, 0xf
mov edx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x10015001
test cl, 8
jne 0x10014f9d
and ecx, 7
mov edx, 4
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x10015001
movzx edx, byte [esi + 2]
movzx edi, byte [esi + 3]
and edx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test cl, 4
jne 0x10014fdb
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
mov edx, 5
shl ecx, 6
or ecx, edi
mov edi, dword [ebp - 0x8c]
shl ecx, 6
or ecx, ebx
jmp 0x10015009
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
or ecx, edx
mov edx, 6
shl ecx, 6
or ecx, edi
mov edi, dword [ebp - 0x8c]
shl ecx, 6
or ecx, ebx
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x80]
cmp ecx, 0x100
jae 0x10015021
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne 0x10014b64
inc edi
add esi, edx
mov dword [ebp - 0x8c], edi
cmp edi, dword [ebp - 0x98]
jl 0x10014f25
jmp 0x10014b64
jmp dword [eax*4 + 0x100181d0]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc0], 0
jne 0x1000eb4a
cmp esi, ebx
je 0x10015d80
nop
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
dec esi
cmp dword [ebp - 0xa4], 0x11
jne 0x100157b9
cmp esi, ebx
jbe 0x100157bb
cmp byte [esi], 0xa
jne 0x10015770
cmp byte [esi - 1], 0xd
jne 0x10015770
dec esi
cmp esi, ebx
jne 0x10015770
jmp 0x10015d80
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1001575a
cmp esi, dword [edi + 0x84]
jbe 0x1001575a
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x1001750e
jmp 0x1001575a
cmp edi, edx
jge 0x10015757
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 0x78]
nop
cmp esi, edx
jae 0x100157c2
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne 0x10015757
mov eax, dword [ebp - 0x80]
inc edi
inc esi
cmp edi, dword [ebp - 0x98]
jl 0x100158e0
mov edi, eax
jmp 0x1001575a
mov ebx, dword [ebp - 0x90]
cmp al, 0x7a
mov eax, dword [ebp + 0x20]
jne 0x10015a96
inc eax
push eax
push dword [ebp - 0xb0]
lea eax, [edx + 3]
push edi
push ebx
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov edx, dword [ebp - 0xbc]
mov dword [ebp - 0x84], edx
jmp 0x10015d8c
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push ebx
push dword [ebp - 0xa0]
push dword [ebp - 0xbc]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov edx, dword [ebp - 0x84]
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x10015d8c
mov edx, dword [ebp - 0x84]
jmp 0x10015b4c
mov eax, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
mov eax, dword [eax + 0x8c]
cmp eax, dword [ebp - 0x90]
cmovle eax, dword [ebp - 0x90]
cmp byte [edx], 0x92
mov ebx, eax
mov dword [ebp - 0x90], ebx
jne 0x10015b06
inc edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
jne 0x10015b34
nop word [eax + eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x10015b20
movzx eax, byte [edi + 0x1003e9f0]
mov ecx, 3
sub ecx, eax
add edx, ecx
jmp 0x10015b4c
mov ebx, dword [ebp - 0x90]
mov eax, dword [ebp - 0xac]
movzx eax, byte [eax + 0x1003e9f0]
add edx, eax
mov dword [ebp - 0x84], edx
cmp dword [ebp - 0xa4], 0x8c
je 0x10015e0e
mov edi, dword [ebp - 0x80]
jmp 0x10015d8c
cmp al, 0x7a
mov eax, dword [ebp + 0x20]
jne 0x10015bc4
inc eax
push eax
push dword [ebp - 0xb0]
lea eax, [edx + 3]
push edi
push ecx
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov al, byte [ebx]
cmp al, 0x81
je 0x10015f57
cmp al, 0x88
jae 0x10015f24
mov edx, ebx
mov dword [ebp - 0x84], edx
jmp 0x10015d86
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push ecx
push dword [ebp - 0xa0]
push ebx
push esi
call fcn.1000ea60
add esp, 0x1c
cmp eax, 0xfffffc1b
jne 0x10015bed
cmp dword [edi + 0xb4], ebx
jmp 0x10015bef
test eax, eax
jne 0x10015da8
mov edx, dword [ebp - 0x84]
add edx, 3
cmp byte [ebx], 0x81
mov dword [ebp - 0x84], edx
jne 0x10015d86
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
jmp 0x10015f9b
mov eax, dword [ebp - 0x84]
movzx edx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl edx, 8
or edx, eax
mov dword [ebp - 0xb4], edx
lea eax, [edx + edx]
mov dword [ebp - 0xc8], eax
cmp eax, dword [edi + 0x14]
jl 0x10017524
mov edx, dword [ebp - 0xa4]
cmp edx, 0x88
jae 0x10015c9b
cmp edx, 0x81
je 0x10015c9b
cmp dword [edi + 0x6c], 0
mov edx, dword [ebp - 0x84]
jne 0x10015cab
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x77
je 0x10015cab
movzx eax, byte [edx]
movzx eax, byte [eax + 0x1003e9f0]
add edx, eax
mov dword [ebp - 0x84], edx
jmp 0x10015d86
mov edx, dword [ebp - 0x84]
mov dword [edi + 0x98], 2
mov eax, dword [edi + 0x90]
mov ebx, dword [edi + 0xac]
mov dword [ebp - 0xac], eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [edx]
push edi
push dword [ebp - 0x90]
movzx eax, byte [eax + 0x1003e9f0]
push dword [ebp - 0xa0]
add eax, edx
push eax
push esi
call fcn.1000ea60
mov edi, eax
add esp, 0x1c
cmp edi, 0xfffffc20
jne 0x10015d2c
mov eax, dword [ebp - 0x84]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add edx, eax
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x7c], edx
jae 0x100176e1
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x10015d34
cmp byte [edx], 0x77
jne 0x100176e1
jmp 0x10015d34
test edi, edi
jne 0x10017698
mov edx, dword [ebp - 0x84]
mov edi, dword [ebp - 0x80]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov dword [edi + 0xac], ebx
add edx, ecx
mov dword [ebp - 0x84], edx
cmp byte [edx], 0x77
jne case.default.0x10010d11
mov eax, dword [ebp - 0xac]
mov dword [edi + 0x90], eax
jmp 0x10015c4f
mov edi, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
jmp 0x10015d8c
mov edi, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
mov eax, dword [edi + 0x4c]
mov dword [ebp - 0xb8], eax
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jb 0x1000eb00
inc eax
mov dword [edi], eax
mov eax, 0xfffffff8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push ebx
mov ebx, dword [ebp - 0x84]
push dword [ebp - 0xa0]
movzx eax, byte [ebx]
movzx ecx, byte [ebx + 1]
movzx eax, byte [eax + 0x1003e9f0]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
lea eax, [ebx + 2]
mov dword [edi + 0x7c], eax
mov eax, 0xfffffc1f
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x80]
mov dword [ecx + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push ecx
push ebx
push dword [ebp - 0xa0]
push edx
push esi
call fcn.1000ea60
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, ecx
sub eax, 1
jmp 0x10015e56
cmp ecx, 0xfffffc19
je case.default.0x10010d11
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xffffffe6
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xe0]
mov dword [edi + 0xa4], eax
mov eax, dword [ebp - 0xd8]
lea ecx, [ebp - 0x7c]
cmp eax, ecx
je case.default.0x10010d11
push eax
call dword [sym.pcre3.dll_pcre_free]
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xd8]
lea ecx, [ebp - 0x7c]
cmp eax, ecx
je 0x10015ed6
push eax
call dword [sym.pcre3.dll_pcre_free]
add esp, 4
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xfffffffa
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xa0]
mov dword [edi + 0x80], esi
mov dword [edi + 0x7c], eax
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push ebx
push esi
call fcn.1000ea60
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push ebx
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x10015fb3
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push ecx
push dword [ebp - 0xa0]
push edx
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov dword [edi + 0xb4], ebx
mov eax, 0xfffffc1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xa0]
mov dword [edi + 0x7c], eax
mov eax, 0xfffffc1a
mov dword [edi + 0x80], esi
mov dword [edi + 0x8c], ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x90]
mov dword [edi + 0x80], esi
mov dword [edi + 0x8c], eax
mov eax, dword [ebp - 0xa0]
mov dword [edi + 0x7c], eax
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x80]
mov ecx, dword [edx + 0x88]
test ecx, ecx
je case.default.0x10010d11
lea eax, [esi + 1]
cmp eax, dword [edx + 0x78]
jb case.default.0x10010d11
cmp dword [edx + 0x18], 0
jne case.default.0x10010d11
cmp dword [edi], 2
jne case.default.0x10010d11
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne case.default.0x10010d11
mov dword [edx + 0x64], 1
cmp ecx, 1
jmp 0x1001607a
mov eax, dword [edi + 0x88]
test eax, eax
je case.default.0x10010d11
cmp esi, dword [edi + 0x84]
jbe case.default.0x10010d11
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x1001750e
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x80]
cmp eax, 0xfffffffe
jne 0x1001609e
mov esi, dword [ecx + 0x78]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x10010d11
cmp esi, dword [ecx + 0x78]
jmp 0x100167c1
cmp dword [ebp - 0xbc], 0
je 0x10016177
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push dword [ebp - 0x80]
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push edx
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
nop dword [eax]
cmp ebx, dword [ebp - 0xb4]
jge case.default.0x10010d11
push dword [ebp - 0x94]
push dword [ebp - 0x80]
push dword [ebp - 0xa4]
push esi
push edi
call fcn.10018630
add esp, 0x14
test eax, eax
js 0x10016156
add esi, eax
inc ebx
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push dword [ebp - 0x80]
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0xa8]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x100160f0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x80]
cmp eax, 0xfffffffe
jne 0x10016161
mov esi, dword [ecx + 0x78]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x10010d11
cmp esi, dword [ecx + 0x78]
jmp 0x100167c1
mov dword [ebp - 0xbc], esi
cmp ebx, ecx
jge 0x100161e9
push dword [ebp - 0x94]
push dword [ebp - 0x80]
push eax
push esi
push edi
call fcn.10018630
add esp, 0x14
test eax, eax
js 0x100161ac
add esi, eax
inc ebx
mov eax, dword [ebp - 0xa4]
cmp ebx, dword [ebp - 0xb4]
jl 0x10016181
jmp 0x100161d9
cmp eax, 0xfffffffe
jne 0x100161d9
mov edx, dword [ebp - 0x80]
mov ecx, dword [edx + 0x88]
test ecx, ecx
je 0x100161d9
mov eax, dword [edx + 0x78]
cmp eax, dword [edx + 0x84]
jbe 0x100161d9
mov dword [edx + 0x64], 1
cmp ecx, 1
jg 0x1001750e
mov ebx, dword [ebp - 0xbc]
cmp esi, ebx
jb case.default.0x10010d11
jmp 0x100161f0
mov ebx, dword [ebp - 0xbc]
nop
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push dword [ebp - 0x80]
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0xa8]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
sub esi, dword [ebp - 0xa4]
cmp esi, ebx
jae 0x100161f0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x80]
cmp eax, 0xfffffffe
jne 0x10016247
mov esi, dword [ecx + 0x78]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x10010d11
cmp esi, dword [ecx + 0x78]
jmp 0x100167c1
mov eax, dword [ebp + 0x20]
mov edi, dword [ebp - 0x80]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
test ecx, ecx
je 0x10016425
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
nop word [eax + eax]
cmp ebx, dword [ebp - 0x88]
jge case.default.0x10010d11
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x100163af
movzx eax, byte [esi]
and eax, 0x3f
test dl, 0x20
jne 0x100162de
and edx, 0x1f
shl edx, 6
or edx, eax
inc esi
jmp 0x100163af
test dl, 0x10
jne 0x100162ff
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 2
jmp 0x100163ac
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test dl, 8
jne 0x10016334
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
mov esi, ebx
jmp 0x100163a6
movzx ecx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and ecx, 0x3f
mov dword [ebp - 0xbc], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test dl, 4
jne 0x1001637b
mov esi, dword [ebp - 0xbc]
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x100163a6
and edx, 1
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0xbc]
shl edx, 6
or edx, ecx
shl edx, 6
movzx eax, byte [eax]
or edx, edi
shl edx, 6
and eax, 0x3f
or edx, ebx
shl edx, 6
or edx, eax
add esi, 5
mov ebx, dword [ebp - 0x98]
mov edi, dword [ebp - 0x80]
cmp edx, 0xff
jbe 0x100163c0
cmp dword [ebp - 0xa4], 0x6e
jmp 0x100163d8
mov ecx, edx
mov eax, 1
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0xb4]
test byte [edx + ecx], al
je case.default.0x10010d11
mov eax, dword [ebp + 0x20]
inc ebx
inc eax
mov dword [ebp - 0x98], ebx
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x100162a0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
nop word [eax + eax]
cmp ebx, dword [ebp - 0x88]
jge case.default.0x10010d11
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
inc esi
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0xb4]
test byte [edx + ecx], al
je case.default.0x10010d11
mov eax, dword [ebp + 0x20]
inc ebx
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x10016440
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
cmp ebx, dword [ebp - 0x94]
jge case.default.0x10010d11
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
mov eax, dword [ebp - 0xb8]
test eax, eax
je 0x10016606
cmp ecx, 0xc0
jb 0x10016606
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1001652f
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10016600
test cl, 0x10
jne 0x10016550
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x100165fd
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10016585
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x100165f7
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0xbc], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x100165cc
mov esi, dword [ebp - 0xbc]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x100165f7
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xbc]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov ebx, dword [ebp - 0xa4]
mov edi, dword [ebp - 0x80]
mov eax, dword [ebp - 0xb8]
push eax
push dword [ebp - 0xa8]
push ecx
call fcn.1001e920
add esp, 0xc
test eax, eax
je case.default.0x10010d11
mov eax, dword [ebp + 0x20]
inc ebx
inc eax
mov dword [ebp - 0xa4], ebx
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x100164e3
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x88]
test eax, eax
je case.default.0x10010d11
cmp esi, ecx
jb case.default.0x10010d11
jmp 0x10016068
mov edx, dword [ebp - 0x80]
mov eax, dword [edx + 0x88]
test eax, eax
je case.default.0x10010d11
cmp esi, dword [edx + 0x78]
jb case.default.0x10010d11
cmp esi, dword [edx + 0x84]
jbe case.default.0x10010d11
mov dword [edx + 0x64], 1
jmp 0x10016077
mov eax, dword [ebp + 0x20]
mov ebx, dword [ebp - 0x80]
inc eax
push eax
push dword [ebp - 0xb0]
push ebx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov eax, dword [ebp - 0x88]
cmp dword [ebp - 0x98], eax
jge case.default.0x10010d11
mov ebx, dword [ebx + 0x78]
mov eax, ebx
sub eax, edi
cmp esi, eax
ja 0x100167ae
mov edx, dword [ebp - 0x94]
mov ecx, esi
sub edi, 4
jb 0x10016723
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x10016728
add ecx, 4
add edx, 4
sub edi, 4
jae 0x10016712
cmp edi, 0xfffffffc
je 0x1001675d
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x100167ae
cmp edi, 0xfffffffd
je 0x1001675d
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x100167ae
cmp edi, 0xfffffffe
je 0x1001675d
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x100167ae
cmp edi, 0xffffffff
je 0x1001675d
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x100167ae
mov eax, dword [ebp + 0x20]
mov ebx, dword [ebp - 0x80]
inc eax
mov edi, dword [ebp - 0xa4]
add esi, edi
inc dword [ebp - 0x98]
push eax
push dword [ebp - 0xb0]
push ebx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x100166e4
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x10010d11
cmp esi, ebx
jb case.default.0x10010d11
cmp esi, dword [ecx + 0x84]
jbe case.default.0x10010d11
mov dword [ecx + 0x64], 1
jmp 0x10016077
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x10010d11
jmp 0x100167c7
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push ecx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov ecx, dword [ebp - 0x98]
cmp ecx, dword [ebp - 0x88]
jge case.default.0x10010d11
mov edx, dword [ebp - 0x80]
cmp esi, dword [edx + 0x78]
jae 0x1001688e
movzx eax, byte [esi]
cmp ebx, eax
je 0x1001684a
cmp edi, eax
jne case.default.0x10010d11
mov eax, dword [ebp + 0x20]
inc esi
inc eax
inc ecx
push eax
push dword [ebp - 0xb0]
mov dword [ebp - 0x98], ecx
push edx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x10016821
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [edx + 0x88]
test eax, eax
je case.default.0x10010d11
jmp 0x1001669a
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push dword [ebp - 0x80]
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov ecx, dword [ebp - 0x98]
cmp ecx, edi
jge case.default.0x10010d11
mov edx, dword [ebp - 0x80]
cmp esi, dword [edx + 0x78]
jae 0x1001688e
movzx eax, byte [esi]
inc esi
cmp ebx, eax
jne case.default.0x10010d11
mov eax, dword [ebp + 0x20]
inc ecx
inc eax
mov dword [ebp - 0x98], ecx
push eax
push dword [ebp - 0xb0]
push edx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x100168d2
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
cmp dword [ebp - 0xb8], 0
push eax
push dword [ebp - 0xb0]
je 0x10016af6
mov edi, dword [ebp - 0x80]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
nop word [eax + eax]
mov eax, dword [ebp - 0x88]
cmp eax, dword [ebp - 0x98]
jge case.default.0x10010d11
cmp esi, dword [edi + 0x78]
jae 0x1001605e
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x10016a9b
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x100169c4
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10016a95
test cl, 0x10
jne 0x100169e5
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10016a92
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10016a1a
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x10016a8c
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0xbc], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10016a61
mov esi, dword [ebp - 0xbc]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10016a8c
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xbc]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov ebx, dword [ebp - 0x8c]
mov edi, dword [ebp - 0x80]
mov eax, dword [ebp - 0x88]
cmp ebx, ecx
je case.default.0x10010d11
cmp dword [ebp - 0xa4], ecx
je case.default.0x10010d11
inc eax
mov dword [ebp - 0x88], eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x10016980
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x80]
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov ebx, dword [ebp - 0x88]
cmp ebx, dword [ebp - 0x98]
jge case.default.0x10010d11
mov ecx, dword [ebp - 0x80]
cmp esi, dword [ecx + 0x78]
jae 0x100167e2
movzx eax, byte [esi]
cmp dword [ebp - 0x8c], eax
je case.default.0x10010d11
cmp edi, eax
je case.default.0x10010d11
mov eax, dword [ebp + 0x20]
inc esi
inc eax
inc ebx
push eax
push dword [ebp - 0xb0]
push ecx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x10016b22
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push dword [ebp - 0x80]
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
test edx, edx
je 0x10016d37
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
nop dword [eax + eax]
cmp edi, dword [ebp - 0x98]
jge case.default.0x10010d11
mov edx, dword [ebp - 0x80]
cmp esi, dword [edx + 0x78]
jae 0x1001688e
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x10016ce8
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10016c11
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10016ce8
test cl, 0x10
jne 0x10016c32
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10016ce2
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10016c67
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov esi, ebx
jmp 0x10016cdc
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0xbc], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10016cae
mov esi, dword [ebp - 0xbc]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10016cd9
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xbc]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edx, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x8c]
mov edi, dword [ebp - 0x88]
cmp ebx, ecx
je case.default.0x10010d11
mov eax, dword [ebp + 0x20]
inc edi
inc eax
mov dword [ebp - 0x88], edi
push eax
push dword [ebp - 0xb0]
push edx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x10016bd0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
nop word [eax + eax]
cmp edi, dword [ebp - 0x98]
jge case.default.0x10010d11
mov ecx, dword [ebp - 0x80]
cmp esi, dword [ecx + 0x78]
jae 0x100167e2
movzx eax, byte [esi]
inc esi
cmp ebx, eax
je case.default.0x10010d11
mov eax, dword [ebp + 0x20]
inc edi
inc eax
push eax
push dword [ebp - 0xb0]
push ecx
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x10016d50
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push dword [ebp - 0x80]
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push ebx
push edi
call fcn.1000ea60
add esp, 0x1c
cmp dword [ebp - 0xb8], 0
je 0x100172a3
test eax, eax
jne 0x10015da8
mov esi, dword [ebp - 0x8c]
nop word [eax + eax]
cmp esi, dword [ebp - 0x98]
jge case.default.0x10010d11
mov edx, dword [ebp - 0x80]
mov eax, dword [edx + 0x78]
cmp edi, eax
jae 0x1001728a
cmp dword [ebp - 0xa4], 0xc
jne 0x10016e80
mov ecx, dword [edx + 0x18]
add edx, 0x1c
test ecx, ecx
je 0x10016e59
push dword [ebp - 0xb8]
push edx
push eax
push ecx
push edi
call fcn.1001a160
add esp, 0x14
test eax, eax
jne case.default.0x10010d11
jmp 0x10016e80
mov ecx, dword [edx]
sub eax, ecx
cmp edi, eax
ja 0x10016e80
mov edx, dword [ebp - 0x80]
mov al, byte [edi]
cmp al, byte [edx + 0x34]
jne 0x10016e80
cmp ecx, 1
je case.default.0x10010d11
mov al, byte [edi + 1]
cmp al, byte [edx + 0x35]
je case.default.0x10010d11
movzx ecx, byte [edi]
inc edi
cmp ecx, 0xc0
jb 0x10016f7d
movzx eax, byte [edi]
and eax, 0x3f
test cl, 0x20
jne 0x10016ea9
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc edi
jmp 0x10016f7d
test cl, 0x10
jne 0x10016eca
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add edi, 2
jmp 0x10016f77
lea ebx, [edi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10016eff
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edi, ebx
jmp 0x10016f71
movzx edx, byte [edi + 1]
lea ebx, [edi + 4]
movzx esi, byte [edi + 2]
and edx, 0x3f
mov dword [ebp - 0xbc], ebx
and esi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10016f46
mov edi, dword [ebp - 0xbc]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, ebx
jmp 0x10016f71
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xbc]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, esi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add edi, 5
mov ebx, dword [ebp - 0x94]
mov esi, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x88]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x1001730d.15
jmp dword [eax*4 + 0x10018318]
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 0x88]
test edx, edx
je case.0x10016f8f.13
cmp edi, dword [eax + 0x78]
jb case.0x10016f8f.13
cmp dword [eax + 0x18], 0
jne case.0x10016f8f.13
cmp dword [eax + 0x1c], 2
jne case.0x10016f8f.13
movzx eax, byte [eax + 0x34]
cmp ecx, eax
jne case.0x10016f8f.13
mov eax, dword [ebp - 0x80]
mov dword [eax + 0x64], 1
cmp edx, 1
jg 0x1001750e
jmp case.0x10016f8f.13
cmp ecx, 0x85
ja 0x10017020
je case.0x10016ffe.11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x10010d11
jmp dword [ecx*4 + 0x10018358]
mov eax, dword [ebp - 0x80]
cmp edi, dword [eax + 0x78]
jae case.0x10016f8f.13
cmp byte [edi], 0xa
jne case.0x10016f8f.13
inc edi
jmp case.0x10016f8f.13
sub ecx, 0x2028
je case.0x10016ffe.11
sub ecx, 1
jne case.default.0x10010d11
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x68], 0
jne case.default.0x10010d11
jmp case.0x10016f8f.13
cmp ecx, 0x2000
ja 0x10017087
je case.default.0x10010d11
cmp ecx, 0xa0
ja 0x10017070
je case.default.0x10010d11
cmp ecx, 9
je case.default.0x10010d11
cmp ecx, 0x20
jmp 0x10017240
cmp ecx, 0x1680
je case.default.0x10010d11
cmp ecx, 0x180e
jmp 0x10017240
cmp ecx, 0x3000
ja case.0x10016f8f.13
je case.default.0x10010d11
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x10016f8f.13
movzx eax, byte [ecx + 0x10018370]
jmp dword [eax*4 + 0x10018368]
cmp ecx, 0x2000
ja 0x10017106
je case.0x10016f8f.13
cmp ecx, 0xa0
ja 0x100170e9
je case.0x10016f8f.13
cmp ecx, 9
je case.0x10016f8f.13
cmp ecx, 0x20
jne case.default.0x10010d11
jmp case.0x10016f8f.13
cmp ecx, 0x1680
je case.0x10016f8f.13
cmp ecx, 0x180e
jne case.default.0x10010d11
jmp case.0x10016f8f.13
cmp ecx, 0x3000
ja case.default.0x10010d11
je case.0x10016f8f.13
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x10010d11
movzx eax, byte [ecx + 0x100183d8]
jmp dword [eax*4 + 0x100183d0]
cmp ecx, 0x85
ja 0x10017156
je case.default.0x10010d11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.0x10016f8f.13
jmp dword [ecx*4 + 0x10018438]
sub ecx, 0x2028
je case.default.0x10010d11
sub ecx, 1
jmp 0x10017240
cmp ecx, 0x85
ja 0x1001718b
je case.0x10016f8f.13
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x10010d11
jmp dword [ecx*4 + 0x10018448]
sub ecx, 0x2028
je case.0x10016f8f.13
sub ecx, 1
jne case.default.0x10010d11
jmp case.0x10016f8f.13
cmp ecx, 0x100
jae case.0x10016f8f.13
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne case.default.0x10010d11
jmp case.0x10016f8f.13
cmp ecx, 0x100
jae case.default.0x10010d11
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jmp 0x10017240
cmp ecx, 0x100
jae case.0x10016f8f.13
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jne case.default.0x10010d11
jmp case.0x10016f8f.13
cmp ecx, 0x100
jae case.default.0x10010d11
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jmp 0x10017240
cmp ecx, 0x100
jae case.0x10016f8f.13
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
jne case.default.0x10010d11
jmp case.0x10016f8f.13
cmp ecx, 0x100
jae case.default.0x10010d11
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
je case.default.0x10010d11
mov eax, dword [ebp + 0x20]
inc esi
inc eax
mov dword [ebp - 0x8c], esi
push eax
push dword [ebp - 0xb0]
push dword [ebp - 0x80]
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push ebx
push edi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x10016e10
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [edx + 0x88]
test eax, eax
je case.default.0x10010d11
cmp edi, dword [edx + 0x84]
jmp 0x100166a0
test eax, eax
jne 0x10015da8
mov esi, dword [ebp - 0x8c]
cmp esi, dword [ebp - 0x98]
jge case.default.0x10010d11
mov edx, dword [ebp - 0x80]
mov eax, dword [edx + 0x78]
cmp edi, eax
jae 0x100174e4
cmp dword [ebp - 0xa4], 0xc
jne 0x100172f7
mov ecx, dword [edx + 0x18]
add edx, 0x1c
test ecx, ecx
je 0x10017314
push 0
push edx
push eax
push ecx
push edi
call fcn.1001a160
add esp, 0x14
test eax, eax
jne case.default.0x10010d11
mov edx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x88]
movzx ecx, byte [edi]
add eax, 0xfffffffa
inc edi
cmp eax, 0xf
ja case.0x1001730d.15
jmp dword [eax*4 + 0x10018458]
mov ecx, dword [edx]
sub eax, ecx
cmp edi, eax
ja 0x100172f4
mov edx, dword [ebp - 0x80]
mov al, byte [edi]
cmp al, byte [edx + 0x34]
jne 0x100172f7
cmp ecx, 1
je case.default.0x10010d11
mov al, byte [edi + 1]
cmp al, byte [edx + 0x35]
je case.default.0x10010d11
jmp 0x100172f7
mov edx, dword [edx + 0x88]
test edx, edx
je case.0x1001730d.13
mov eax, dword [ebp - 0x80]
cmp edi, dword [eax + 0x78]
jb case.0x1001730d.13
cmp dword [eax + 0x18], 0
jne case.0x1001730d.13
cmp dword [eax + 0x1c], 2
jne case.0x1001730d.13
movzx eax, byte [eax + 0x34]
cmp ecx, eax
jne case.0x1001730d.13
mov eax, dword [ebp - 0x80]
mov dword [eax + 0x64], 1
cmp edx, 1
jg 0x1001750e
jmp case.0x1001730d.13
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.default.0x10010d11
movzx eax, byte [ecx + 0x100184a8]
jmp dword [eax*4 + 0x10018498]
cmp edi, dword [edx + 0x78]
jae case.0x1001730d.13
cmp byte [edi], 0xa
jne case.0x1001730d.13
inc edi
jmp case.0x1001730d.13
cmp dword [edx + 0x68], 0
jne case.default.0x10010d11
jmp case.0x1001730d.13
cmp ecx, 9
je case.default.0x10010d11
cmp ecx, 0x20
je case.default.0x10010d11
cmp ecx, 0xa0
jmp 0x1001748a
cmp ecx, 9
je case.0x1001730d.13
cmp ecx, 0x20
je case.0x1001730d.13
cmp ecx, 0xa0
jne case.default.0x10010d11
jmp case.0x1001730d.13
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x1001730d.13
movzx eax, byte [ecx + 0x1001852c]
jmp dword [eax*4 + 0x10018524]
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.default.0x10010d11
movzx eax, byte [ecx + 0x100185b0]
jmp dword [eax*4 + 0x100185a8]
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 4
jne case.default.0x10010d11
jmp case.0x1001730d.13
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 4
jmp 0x1001748a
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 1
jne case.default.0x10010d11
jmp case.0x1001730d.13
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 1
jmp 0x1001748a
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 0x10
jne case.default.0x10010d11
jmp case.0x1001730d.13
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 0x10
je case.default.0x10010d11
mov eax, dword [ebp + 0x20]
inc esi
inc eax
push eax
push dword [ebp - 0xb0]
push dword [ebp - 0x80]
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push ebx
push edi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x100172b1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xfffffff2
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [edx + 0x88]
test eax, eax
je case.default.0x10010d11
cmp edi, dword [edx + 0x84]
jbe case.default.0x10010d11
mov dword [edx + 0x64], 1
cmp eax, 1
jle case.default.0x10010d11
pop edi
pop esi
mov eax, 0xfffffff4
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov ecx, dword [edi + 0xc]
mov ebx, dword [ecx + eax*4]
mov eax, dword [ecx + eax*4 + 4]
mov dword [ebp - 0x94], eax
mov eax, dword [edi + 0x10]
sub eax, edx
mov dword [ebp - 0xbc], ebx
mov ebx, dword [edi + 0x90]
lea ecx, [ecx + eax*4]
mov eax, dword [ecx]
mov dword [ebp - 0xa8], eax
mov eax, dword [edi + 0xac]
mov dword [ebp - 0xac], eax
mov eax, esi
sub eax, dword [edi + 0x74]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x84]
nop dword [eax]
cmp dword [ebp - 0xa4], 0x88
jb 0x10017586
mov dword [edi + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [ecx]
push edi
push dword [ebp - 0x90]
movzx eax, byte [eax + 0x1003e9f0]
push dword [ebp - 0xa0]
add eax, ecx
push eax
push esi
call fcn.1000ea60
mov edi, eax
add esp, 0x1c
cmp edi, 0xfffffc1b
je 0x1001764b
cmp edi, 0xfffffc20
jne 0x10017603
mov eax, dword [ebp - 0x84]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add edx, eax
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x7c], edx
jae 0x10017685
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x100175ff
cmp byte [edx], 0x77
jne 0x10017685
xor edi, edi
jmp 0x10017611
test edi, edi
jne 0x10017685
mov eax, dword [ebp - 0x84]
mov edx, dword [ebp - 0x80]
mov dword [edx + 0x90], ebx
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0xac]
add dword [ebp - 0x84], ecx
mov ecx, dword [ebp - 0x84]
mov dword [edx + 0xac], eax
cmp byte [ecx], 0x77
jne 0x1001764e
mov edi, edx
jmp 0x10017570
mov edx, dword [ebp - 0x80]
mov eax, dword [edx + 0xc]
mov ecx, dword [ebp - 0xc8]
mov ebx, dword [ebp - 0x80]
mov edx, dword [ebp - 0xbc]
mov dword [eax + ecx*4], edx
mov eax, dword [ebx + 0xc]
mov edx, dword [ebp - 0x94]
mov dword [eax + ecx*4 + 4], edx
mov ecx, dword [ebx + 0x10]
sub ecx, dword [ebp - 0xb4]
mov eax, dword [ebx + 0xc]
mov edx, dword [ebp - 0xa8]
mov dword [eax + ecx*4], edx
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
cmp edi, 0xfffffc1b
jne 0x100176e1
mov edx, dword [ebp - 0x84]
mov al, byte [edx]
cmp al, 0x81
je 0x100176d3
cmp al, 0x77
jne 0x100176c4
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x100176b0
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov eax, dword [ebp - 0x80]
xor ecx, ecx
cmp dword [eax + 0xb4], edx
cmove edi, ecx
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x80]
lea edi, [edx + 2]
mov dword [ebx + 0xb0], edi
mov dword [ebx + 0xac], 0
mov eax, dword [ebp + 0x20]
movzx ecx, byte [edx + 1]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [edx]
push ebx
push dword [ebp - 0x90]
movzx eax, byte [eax + 0x1003e9f0]
push dword [ebp - 0xa0]
add eax, edx
add ecx, eax
push ecx
push esi
call fcn.1000ea60
mov edx, eax
add esp, 0x1c
cmp edx, 1
je 0x1001775b
cmp edx, 0xfffffc19
je 0x1001775b
cmp edx, 0xfffffc1a
jne 0x1001777d
cmp dword [ebx + 0xac], 0
jne 0x1001777d
mov dword [ebx + 0xac], edi
mov eax, edx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
cmp edx, 0xfffffc1f
jne 0x1000f1d7
mov eax, dword [ebx + 0x7c]
nop dword [eax]
mov cl, byte [edi]
cmp cl, byte [eax]
jne 0x100177b0
test cl, cl
je 0x100177ac
mov cl, byte [edi + 1]
cmp cl, byte [eax + 1]
jne 0x100177b0
add edi, 2
add eax, 2
test cl, cl
jne 0x10017790
xor eax, eax
jmp 0x100177b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1000f1d7
pop edi
mov dword [ebx + 0x7c], esi
mov eax, 0xfffffc1e
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [edx + 0x1003e9f0]
add eax, dword [ebp - 0x84]
push edi
push ebx
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000ea60
add esp, 0x1c
mov ecx, 0xfffffc1c
test eax, eax
cmovne ecx, eax
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [edx + 0x1003e9f0]
add eax, dword [ebp - 0x84]
push edi
push ebx
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000ea60
add esp, 0x1c
mov ecx, 0xfffffc1d
test eax, eax
cmovne ecx, eax
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x80]
lea edi, [edx + 2]
mov dword [ebx + 0xb0], edi
mov dword [ebx + 0xac], 0
mov eax, dword [ebp + 0x20]
movzx ecx, byte [edx + 1]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [edx]
push ebx
push dword [ebp - 0x90]
movzx eax, byte [eax + 0x1003e9f0]
push dword [ebp - 0xa0]
add eax, edx
add ecx, eax
push ecx
push esi
call fcn.1000ea60
mov ecx, eax
add esp, 0x1c
cmp ecx, 1
je 0x100178c3
cmp ecx, 0xfffffc19
jne 0x100178d2
cmp dword [ebx + 0xac], 0
jne 0x100178d2
mov dword [ebx + 0xac], edi
pop edi
test ecx, ecx
mov eax, 0xfffffc1d
pop esi
cmovne eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [edx + 0x1003e9f0]
add eax, dword [ebp - 0x84]
push edi
push ebx
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
jne 0x10015da8
mov dword [edi + 0x7c], esi
mov eax, 0xfffffc1e
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [edx + 0x1003e9f0]
add eax, dword [ebp - 0x84]
push edi
push ebx
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000ea60
add esp, 0x1c
test eax, eax
je 0x100179f0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x80]
lea edi, [edx + 2]
mov dword [ebx + 0xb0], edi
mov dword [ebx + 0xac], 0
mov eax, dword [ebp + 0x20]
movzx ecx, byte [edx + 1]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [edx]
push ebx
push dword [ebp - 0x90]
movzx eax, byte [eax + 0x1003e9f0]
push dword [ebp - 0xa0]
add eax, edx
add ecx, eax
push ecx
push esi
call fcn.1000ea60
add esp, 0x1c
cmp eax, 1
je 0x100179d7
cmp eax, 0xfffffc19
jne 0x100179e6
cmp dword [ebx + 0xac], 0
jne 0x100179e6
mov dword [ebx + 0xac], edi
test eax, eax
jne 0x10015da8
mov edi, ebx
mov eax, dword [ebp - 0x84]
mov dword [edi + 0x7c], eax
mov eax, 0xfffffc20
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0xa0]
cmp esi, ecx
jne 0x10017a4b
cmp edx, 0x9f
je 0x10017a4b
cmp dword [edi + 0xa4], 0
jne 0x10017a4b
cmp dword [edi + 0x5c], 0
jne case.default.0x10010d11
cmp dword [edi + 0x60], 0
je 0x10017a4b
mov eax, dword [edi + 0x94]
add eax, dword [edi + 0x74]
cmp ecx, eax
je case.default.0x10010d11
mov dword [edi + 0x80], esi
test edx, edx
mov dword [edi + 0x8c], ebx
mov eax, 0xfffffc19
mov dword [edi + 0x7c], ecx
mov ecx, 1
pop edi
pop esi
cmove eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xfffffffb
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021ef6
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
mov eax, 0xffffffeb
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10021ef6
mov esp, ebp
pop ebp
ret