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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x150
mov eax, dword [0x1004b800]
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 0x1000e5aa
lea eax, [ebp + 0x20]
cmp dword [ebp + 0x20], edx
jne 0x1000e590
push 1
push edx
push edx
push edx
push edx
push edx
push eax
call fcn.1000e520
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
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.10021896
mov esp, ebp
pop ebp
ret
mov eax, dword [edi]
mov ecx, dword [edi + 0x4c]
mov dword [ebp - 0x9c], ecx
cmp eax, dword [edi + 4]
jae 0x100158c1
nop
inc eax
mov dword [edi], eax
mov eax, dword [ebp + 0x20]
cmp eax, dword [edi + 8]
jae 0x100174b4
cmp dword [edi + 0x98], 2
jne 0x1000e620
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 0x1000e620
mov edi, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
jmp 0x1000e620
mov edi, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
nop dword [eax]
mov cl, byte [edx]
movzx edx, cl
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xa4], edx
cmp edx, 0xa1
ja case.0x1000e652.15
movzx eax, byte [edx + 0x10017610]
jmp dword [eax*4 + 0x100174cc]
inc dword [edi + 0x28]
mov eax, dword [edi + 0x28]
cmp eax, dword [edi + 0x2c]
ja 0x100158da
mov edx, dword [ebp - 0x84]
movzx eax, byte [edx]
movzx ecx, byte [eax + 0x1003ea28]
movzx eax, byte [edx + 1]
add edx, eax
add edx, ecx
mov dword [ebp - 0x84], edx
jmp 0x1000e620
mov edx, dword [ebp - 0x84]
mov ebx, esi
mov edi, dword [edi + 0xac]
mov dword [ebp - 0xb8], 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.1000e520
add esp, 0x1c
cmp eax, 1
je 0x1000e799
cmp eax, 0xfffffc20
jne 0x1000e70c
mov ecx, dword [ebp - 0x84]
movzx edx, byte [ecx + 1]
movzx ecx, byte [ecx + 2]
shl edx, 8
or edx, ecx
mov ecx, dword [ebp - 0x80]
add edx, dword [ebp - 0x84]
cmp dword [ecx + 0x7c], edx
jae 0x100158c9
mov ecx, dword [ebp - 0x84]
cmp byte [ecx], 0x77
je 0x1000e714
cmp byte [edx], 0x77
jmp 0x1000e70e
test eax, eax
jne 0x100158c9
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 0x1000e6a0
mov edi, dword [ebp - 0x80]
cmp al, 0x82
je 0x1000e751
cmp al, 0x77
jne case.default.0x100107c2
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 0x1000e751
mov ecx, dword [edi + 0x8c]
mov esi, dword [edi + 0x80]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x90], ecx
cmp al, 0x78
je 0x1000e78b
cmp esi, ebx
jne 0x1001557c
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1000e616
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 0x1000e745
mov ecx, dword [ebp - 0x84]
mov dword [ebp - 0xb4], 0
jmp 0x1000f294
mov dword [ebp - 0xb4], 0
jmp 0x1000f2bf
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 0x1000e903
mov edi, dword [sym.pcre3.dll_pcre_callout]
test edi, edi
je 0x1000e8ea
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.0x100107c2
js 0x100158c9
mov edx, dword [ebp - 0x84]
movzx eax, byte [0x1003ea9e]
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.0x1000e924.146
movzx eax, byte [eax + 0x100176cc]
jmp dword [eax*4 + 0x100176b4]
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 0xa4]
test edx, edx
je 0x1000eadb
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 0x1000e967
cmp ecx, dword [edx + 4]
je 0x1000e967
mov edx, dword [ebp - 0x84]
jmp case.0x1000e924.145
mov ebx, 1
jmp 0x1000eadb
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0xa4], ebx
je 0x1000eae1
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 0x1000eadb
movzx ecx, byte [edx]
dec edi
movzx eax, byte [edx + 1]
xor ebx, ebx
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0xb8], 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 - 0xb8]
sete bl
je 0x1000eadb
mov eax, dword [ebp - 0x80]
add edx, dword [eax + 0x24]
mov dword [ebp - 0x94], edx
test edi, edi
jg 0x1000e9b8
jmp 0x1000eadb
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 0x1000ea2c
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x1001566c
xor ebx, ebx
jmp 0x1000eae1
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 0x1000eadb
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 0x1000ea8a
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x100155fa
mov eax, dword [ebp - 0x80]
xor ebx, ebx
add edx, dword [eax + 0x24]
test edi, edi
jg 0x1000ea61
jmp 0x1000eadb
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.1000e520
add esp, 0x1c
cmp eax, 1
je 0x10015605
test eax, eax
je 0x1000eadb
cmp eax, 0xfffffc20
jne 0x100158c9
mov edx, dword [ebp - 0x84]
test ebx, ebx
jne 0x10015666
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 0x10015681
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x90], ebx
jmp 0x1000e620
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 0x1000eb72
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 0x1000e620
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 0x1000eb58
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 0x1000ebb9
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 0x1000e620
mov ecx, dword [ebp - 0x80]
mov edi, dword [edi + 0xac]
cmp dword [ecx + 0x98], 1
jne 0x1000ebfc
mov ebx, 1
mov dword [ecx + 0x98], 0
jmp 0x1000ebfe
xor ebx, ebx
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push 0
push ecx
push dword [ebp - 0x90]
lea eax, [edx + 3]
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000e520
mov edx, eax
add esp, 0x1c
cmp edx, 1
je 0x1000ecb3
cmp edx, 0xfffffc19
je 0x1000ecb3
mov eax, dword [ebp - 0x80]
mov dword [eax + 0xac], edi
cmp edx, 0xfffffc20
jne 0x1000ec7e
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 0x1001719a
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x1000ec86
cmp byte [ecx], 0x77
jmp 0x1000ec80
test edx, edx
jne 0x1001719a
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 ecx, dword [ebp - 0x80]
mov dword [ebp - 0x84], edx
cmp al, 0x77
je 0x1000ec04
mov edi, ecx
jmp 0x1000ecc7
mov edi, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0xa0], eax
mov al, byte [edx]
cmp al, 0x78
je case.default.0x100107c2
test ebx, ebx
jne 0x10015af9
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 0x1000ece0
mov ebx, dword [edi + 0x8c]
add edx, 3
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x90], ebx
jmp 0x1000e620
mov edx, dword [ebp - 0x80]
mov edi, dword [edi + 0xac]
cmp dword [edx + 0x98], 1
jne 0x1000ed31
mov ebx, 1
mov dword [edx + 0x98], 0
jmp 0x1000ed33
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.1000e520
mov edx, dword [ebp - 0x80]
mov ecx, eax
add esp, 0x1c
mov dword [edx + 0xac], edi
cmp ecx, 0xfffffc1c
jle 0x1000ee08
test ecx, ecx
jg 0x1001596a
je 0x1000edbd
lea eax, [ecx + 0x3e3]
cmp eax, 3
ja case.default.0x1000ed8a
jmp dword [eax*4 + 0x100176e0]
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.0x1000ed8a.995
cmp byte [eax], 0x77
je 0x1000edc3
cmp byte [ecx], 0x77
jne case.0x1000ed8a.995
jmp 0x1000edc3
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 0x1000ed33
mov edx, eax
test ebx, ebx
jne 0x10015af9
add edx, 3
mov dword [ebp - 0x84], edx
nop word [eax + eax]
mov edi, dword [ebp - 0x80]
jmp 0x1000e616
jne 0x10015971
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 0x1000ee14
jmp 0x1000ede9
mov edx, dword [ebp - 0x84]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
cmp dword [ebp - 0x9c], 0
je 0x1000ee78
or ecx, eax
jbe 0x1000ee85
mov edx, dword [edi + 0x74]
nop dword [eax + eax]
dec esi
dec ecx
cmp esi, edx
jb case.default.0x100107c2
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x1000ee6c
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x1000ee62
test ecx, ecx
jg 0x1000ee50
mov edx, dword [ebp - 0x84]
jmp 0x1000ee85
or ecx, eax
sub esi, ecx
cmp esi, dword [edi + 0x74]
jb case.default.0x100107c2
cmp esi, dword [edi + 0x84]
jae 0x1000ee93
mov dword [edi + 0x84], esi
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1000e620
mov edi, dword [sym.pcre3.dll_pcre_callout]
test edi, edi
je 0x1000ef83
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.0x100107c2
js 0x100158c9
mov edx, dword [ebp - 0x84]
mov edi, dword [ebp - 0x80]
add edx, 6
mov dword [ebp - 0x84], edx
jmp 0x1000e616
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 0x1000efb9
xor ecx, ecx
jmp 0x1000efc6
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 0x1000efe6
cmp ecx, dword [eax + 4]
jne 0x1000efe0
cmp esi, dword [eax + 0x14]
je 0x10015990
mov eax, dword [eax]
test eax, eax
jne 0x1000efd2
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 0x1000f030
lea eax, [ebp - 0x7c]
mov dword [ebp - 0xd8], eax
jmp 0x1000f055
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 0x10015a0a
mov ecx, dword [ebp - 0xd4]
shl ecx, 2
push ecx
push dword [edi + 0xc]
push eax
call fcn.100227e0
mov al, byte [ebx]
add esp, 0xc
mov byte [ebp - 0xc1], al
nop dword [eax]
cmp al, 0x88
jb 0x1000f07e
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 + 0x1003ea28]
push dword [ebp - 0xa0]
add eax, ebx
push eax
push esi
call fcn.1000e520
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.100227e0
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 0x1000f13e
cmp edi, 0xfffffc19
je 0x1000f13e
cmp edi, 0xfffffc1c
jl 0x1000f105
cmp edi, 0xfffffc20
jle 0x100159b2
test edi, edi
jne 0x100159e0
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 0x100159a6
mov al, byte [ebp - 0xc1]
jmp 0x1000f070
mov eax, dword [ebp - 0xd8]
lea ecx, [ebp - 0x7c]
cmp eax, ecx
je 0x1000f155
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 0x1000e610
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 0x1000f172
mov dword [ebp - 0x84], edx
jmp 0x1000e620
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
nop
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x1000f1c0
lea edx, [edi + 3]
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x84], edx
jmp 0x1000e620
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 0x1000f1f4
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov edx, dword [ebp - 0x84]
jmp 0x1000e620
mov edx, dword [ebp - 0x84]
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
je 0x1000f242
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1000e620
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 0x1000f294
cmp edx, 0x8b
jne 0x1000f2bf
movzx edx, byte [ecx + 3]
movzx eax, byte [ecx + 4]
shl edx, 8
or edx, eax
mov dword [ebp - 0xc0], edx
lea ebx, [edx + edx]
mov dword [ebp - 0x98], ebx
cmp ebx, dword [edi + 0x14]
jl 0x1000f49a
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 - 0xb8], eax
mov eax, dword [edi + 0x90]
mov dword [ebp - 0xa8], eax
mov ebx, dword [ebp - 0x90]
nop word [eax + eax]
mov edi, ebx
mov ebx, dword [ebp - 0xa0]
cmp edx, 0x88
jb 0x1000f30d
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 + 0x1003ea28]
push dword [ebp - 0xa0]
add eax, ecx
push eax
push esi
call fcn.1000e520
mov edx, eax
add esp, 0x1c
cmp edx, 0xfffffc1a
jne 0x1000f399
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x94], 1
mov eax, dword [edi + 0x7c]
mov edx, dword [edi + 0x70]
add edx, dword [ebp - 0xb8]
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 0x1000f420
mov edx, dword [ebp - 0xa4]
mov esi, eax
mov ecx, dword [ebp - 0x84]
jmp 0x1000f2f0
cmp edx, 0xfffffc20
jne 0x1000f3d6
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 0x1001719a
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x1000f3de
cmp byte [ecx], 0x77
jmp 0x1000f3d8
test edx, edx
jne 0x1001719a
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 0x1000f442
mov ecx, dword [ebp - 0x80]
mov eax, dword [ebp - 0xa8]
mov edx, dword [ebp - 0xa4]
mov dword [ecx + 0x90], eax
mov ecx, dword [ebp - 0x84]
jmp 0x1000f2e4
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1000f420
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1000e620
cmp dword [ebp - 0x94], 0
mov dword [ebp - 0xa0], ebx
mov dword [ebp - 0x90], edi
jne 0x1000f483
cmp dword [ebp - 0xb4], 0
mov dword [ebp - 0xa0], ebx
mov ebx, edi
mov dword [ebp - 0x90], ebx
je case.default.0x100107c2
mov edi, dword [ebp - 0x80]
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1000e620
mov ebx, dword [ebp - 0x90]
add edx, 3
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x84], edx
jmp 0x1000e620
mov eax, ecx
xor edi, edi
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0x94], edi
sub eax, dword [ecx + 0x70]
mov ecx, dword [ecx + 0xc]
mov dword [ebp - 0xb8], eax
mov eax, dword [ecx + ebx*4]
mov dword [ebp - 0x88], eax
mov eax, dword [ecx + ebx*4 + 4]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x80]
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]
nop dword [eax]
mov eax, dword [ebp - 0xa0]
mov edx, esi
sub edx, dword [ecx + 0x74]
mov ecx, dword [ecx + 0x10]
sub ecx, dword [ebp - 0xc0]
cmp dword [ebp - 0xa4], 0x88
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0xac], ebx
mov eax, dword [eax + 0xc]
mov dword [eax + ecx*4], edx
jb 0x1000f532
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 + 0x1003ea28]
add eax, ecx
push eax
push esi
call fcn.1000e520
mov edx, eax
add esp, 0x1c
cmp edx, 0xfffffc1a
jne 0x1000f5c5
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 - 0xb8]
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 0x1000f650
mov esi, eax
jmp 0x1000f4f0
cmp edx, 0xfffffc20
jne 0x1000f602
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 0x1001719a
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x1000f60a
cmp byte [ecx], 0x77
jmp 0x1000f604
test edx, edx
jne 0x1001719a
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 0x1000f669
mov edi, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x80]
jmp 0x1000f4e6
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1000f650
jmp 0x1000f6f4
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x94], edi
mov dword [ebp - 0x84], edx
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x90], ebx
test edi, edi
jne 0x1000f6e2
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x98]
mov ebx, dword [ebp - 0x88]
mov eax, dword [eax + 0xc]
mov dword [eax + ecx*4], ebx
mov eax, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x8c]
mov eax, dword [eax + 0xc]
mov dword [eax + ecx*4 + 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 - 0xc0]
mov dword [eax + ecx*4], ebx
mov eax, dword [ebp - 0xbc]
mov ebx, dword [ebp - 0xac]
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x90], ebx
jmp 0x1000f6f4
mov edi, dword [ebp - 0x94]
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
cmp dword [ebp - 0xb4], 0
jne 0x1000f705
test edi, edi
je case.default.0x100107c2
mov edi, dword [ebp - 0x80]
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1000e620
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 0x1000f749
cmp al, 0x81
je 0x1000f749
mov dword [ebp - 0xb4], 0
jmp 0x1000f766
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 0x1000f772
cmp al, 0x80
jbe 0x10015ade
cmp al, 0x82
je 0x10015ade
cmp al, 0x85
je 0x1000f78e
cmp al, 0x8a
je 0x1000f78e
cmp al, 0x86
je 0x1000f78e
cmp al, 0x8b
jne 0x1000f859
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 0x1000f7b1
cmp dword [eax + 4], edx
je 0x10015a20
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 0x1000f7e8
mov ebx, dword [ebp - 0x94]
or eax, 0x10000
mov edx, dword [ebp - 0x84]
mov dword [edi + 0x90], eax
jmp 0x1000f85f
cmp ebx, ecx
jle 0x1000f81e
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 0x1000f81b
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 0x1000f851
lea ecx, [ebx + 2]
mov dword [ebp - 0x90], ecx
mov ebx, dword [ebp - 0x94]
jmp 0x1000f85f
mov ecx, dword [ebp - 0x90]
mov al, byte [edx]
cmp al, 0x7b
je 0x10015ab3
cmp al, 0x78
je 0x1000f879
cmp esi, dword [ebp - 0xb4]
jne 0x10015699
add edx, 3
cmp byte [ebx], 0x81
mov dword [ebp - 0x84], edx
jne 0x1000e616
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov dword [edi + 0xb4], ebx
mov eax, 0xfffffc1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x44], 0
je case.0x1000e652.1
cmp esi, dword [edi + 0x74]
je case.default.0x100107c2
cmp esi, dword [edi + 0x74]
jne case.default.0x100107c2
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e620
cmp dword [edi + 0x44], 0
je 0x1000f90a
cmp esi, dword [edi + 0x74]
je case.default.0x100107c2
mov ecx, dword [edi + 0x74]
jmp 0x1000f911
mov ecx, dword [edi + 0x74]
cmp esi, ecx
je 0x1000f98f
cmp esi, dword [edi + 0x78]
je case.default.0x100107c2
mov edx, dword [edi + 0x18]
test edx, edx
je 0x1000f961
cmp esi, ecx
jbe 0x1000f945
push dword [ebp - 0x9c]
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.10019d80
add esp, 0x14
test eax, eax
je 0x1000f945
mov eax, 1
jmp 0x1000f947
xor eax, eax
test eax, eax
je case.default.0x100107c2
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e620
mov edx, dword [edi + 0x1c]
lea eax, [ecx + edx]
cmp esi, eax
jb case.default.0x100107c2
mov ecx, esi
sub ecx, edx
mov al, byte [ecx]
cmp al, byte [edi + 0x34]
jne case.default.0x100107c2
cmp edx, 1
je 0x1000f98f
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x35]
jne case.default.0x100107c2
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e620
mov eax, dword [edi + 0x94]
add eax, dword [edi + 0x74]
cmp esi, eax
jne case.default.0x100107c2
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e620
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0xa0], esi
mov dword [ebp - 0x84], edx
jmp 0x1000e620
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x1000fa82
mov edx, dword [edi + 0x18]
test edx, edx
je 0x1000fa4f
push dword [ebp - 0x9c]
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.10019be0
add esp, 0x14
test eax, eax
jne 0x1000f98f
mov ecx, dword [edi + 0x88]
test ecx, ecx
je case.default.0x100107c2
lea eax, [esi + 1]
cmp eax, dword [edi + 0x78]
jb case.default.0x100107c2
cmp dword [edi + 0x18], 0
jne case.default.0x100107c2
cmp dword [edi + 0x1c], 2
jne case.default.0x100107c2
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne case.default.0x100107c2
mov dword [edi + 0x64], 1
cmp ecx, 1
jmp 0x10015b2b
mov edx, dword [edi + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x1000fa07
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x1000fa07
cmp edx, 1
je 0x1000f98f
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
jne 0x1000fa07
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e620
cmp dword [edi + 0x48], 0
jne case.default.0x100107c2
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1000f98f
cmp esi, dword [edi + 0x84]
jbe 0x1000f98f
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e620
cmp dword [edi + 0x48], 0
jne case.default.0x100107c2
cmp dword [edi + 0x58], 0
je case.0x1000e652.23
cmp esi, dword [edi + 0x78]
jb case.default.0x100107c2
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1000f98f
cmp esi, dword [edi + 0x84]
jbe 0x1000f98f
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e620
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x1000fb80
mov ecx, dword [edi + 0x18]
lea edx, [edi + 0x1c]
test ecx, ecx
je 0x1000fb4a
push dword [ebp - 0x9c]
push edx
push eax
push ecx
push esi
call fcn.10019be0
add esp, 0x14
test eax, eax
je 0x1000fa07
jmp 0x1000fb72
mov ecx, dword [edx]
sub eax, ecx
cmp esi, eax
ja 0x1000fa07
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x1000fa07
cmp ecx, 1
je 0x1000fb72
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
jne 0x1000fa07
mov eax, dword [edi + 0x78]
sub eax, dword [edi + 0x1c]
cmp esi, eax
jne 0x1000fa07
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1000f98f
cmp esi, dword [edi + 0x84]
jbe 0x1000f98f
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e620
cmp dword [ebp - 0x9c], 0
mov eax, dword [edi + 0x74]
je 0x1000fdfc
cmp esi, eax
je 0x1000fcf3
mov al, byte [esi - 1]
lea edx, [esi - 1]
and al, 0xc0
cmp al, 0x80
jne 0x1000fbea
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x1000fbe0
cmp edx, dword [edi + 0x84]
jae 0x1000fbf8
mov dword [edi + 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x1000fcd8
test bl, 0x20
jne 0x1000fc18
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x1000fcd0
test bl, 0x10
jne 0x1000fc35
movzx ecx, byte [edx + 1]
and ebx, 0xf
movzx eax, byte [edx + 2]
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
jmp 0x1000fcd0
test bl, 8
jne 0x1000fc5b
movzx ecx, byte [edx + 1]
and ebx, 7
movzx eax, byte [edx + 2]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x1000fcd0
movzx eax, byte [edx + 1]
movzx ecx, byte [edx + 2]
and eax, 0x3f
movzx edi, byte [edx + 3]
and ecx, 0x3f
mov dword [ebp - 0xac], eax
and edi, 0x3f
movzx eax, byte [edx + 4]
and eax, 0x3f
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0xac]
test bl, 4
jne 0x1000fcae
and ebx, 3
shl ebx, 6
or ebx, eax
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, edi
mov edi, dword [ebp - 0x80]
shl ebx, 6
or ebx, dword [ebp - 0x94]
jmp 0x1000fcd8
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 5]
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, edi
mov edi, dword [ebp - 0x80]
shl ebx, 6
or ebx, dword [ebp - 0x94]
and eax, 0x3f
shl ebx, 6
or ebx, eax
cmp ebx, 0x100
jae 0x1000fcf3
mov eax, dword [edi + 0x40]
mov dword [ebp - 0xa4], 1
test byte [ebx + eax], 0x10
jne 0x1000fcfd
mov dword [ebp - 0xa4], 0
cmp esi, dword [edi + 0x78]
jb 0x1000fd33
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1000fe5b
cmp esi, dword [edi + 0x84]
jbe 0x1000fe5b
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
xor ecx, ecx
jmp 0x1000fe6f
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x1000fde4
movzx eax, byte [esi + 1]
test cl, 0x20
jne 0x1000fd53
and ecx, 0x1f
jmp 0x1000fddc
and eax, 0x3f
test cl, 0x10
jne 0x1000fd69
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x1000fddc
test cl, 8
jne 0x1000fd88
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 0x1000fddc
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 0x1000fdbe
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 0x1000fde4
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 0x1000fe5b
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je 0x1000fe5b
mov ecx, 1
jmp 0x1000fe6f
cmp esi, eax
jne 0x1000fe0c
mov dword [ebp - 0xa4], 0
jmp 0x1000fe34
cmp esi, dword [edi + 0x84]
ja 0x1000fe1d
lea eax, [esi - 1]
mov dword [edi + 0x84], eax
mov ecx, dword [edi + 0x40]
movzx eax, byte [esi - 1]
movzx eax, byte [eax + ecx]
shr eax, 4
and eax, 1
mov dword [ebp - 0xa4], eax
cmp esi, dword [edi + 0x78]
jb 0x1000fe5f
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1000fe5b
cmp esi, dword [edi + 0x84]
jbe 0x1000fe5b
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
xor ecx, ecx
jmp 0x1000fe6f
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 0x1000fe8f
xor eax, eax
cmp ecx, dword [ebp - 0xa4]
sete al
jmp 0x1000fe9a
xor eax, eax
cmp ecx, dword [ebp - 0xa4]
setne al
test eax, eax
jne case.default.0x100107c2
jmp 0x1000e616
mov edx, dword [edi + 0x18]
test edx, edx
je 0x1000fee1
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x1000fed5
push dword [ebp - 0x9c]
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.10019be0
add esp, 0x14
test eax, eax
je 0x1000fed5
mov eax, 1
jmp 0x1000fed7
xor eax, eax
test eax, eax
jne case.default.0x100107c2
jmp 0x1000ff09
mov eax, dword [edi + 0x78]
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x1000ff09
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x1000ff09
cmp ecx, 1
je case.default.0x100107c2
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
je case.default.0x100107c2
mov ecx, dword [edi + 0x88]
test ecx, ecx
je case.0x1000e652.13
mov eax, dword [edi + 0x78]
dec eax
cmp esi, eax
jne case.0x1000e652.13
cmp dword [edi + 0x18], 0
jne case.0x1000e652.13
cmp dword [edi + 0x1c], 2
jne case.0x1000e652.13
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne case.0x1000e652.13
mov dword [edi + 0x64], 1
cmp ecx, 1
jg 0x10016f3d
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x10015b0f
inc esi
cmp dword [ebp - 0x9c], 0
je 0x1000f98f
cmp esi, ecx
jae 0x1000f98f
nop
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x1000f98f
inc esi
cmp esi, ecx
jb 0x1000ff60
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e620
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
mov edx, dword [ebp - 0x84]
inc esi
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e620
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x9c], 0
je 0x100100a6
cmp ecx, 0xc0
jb 0x100100a6
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1000ffde
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x100100a6
test cl, 0x10
jne 0x1000ffff
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 0x100100a3
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10010031
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 0x100100a3
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 0x10010078
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 0x100100a3
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.0x100107c2.10
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
jne case.default.0x100107c2
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e616
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x9c], 0
je 0x100101d4
cmp ecx, 0xc0
jb 0x100101d4
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1001010c
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x100101d4
test cl, 0x10
jne 0x1001012d
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 0x100101d1
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x1001015f
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 0x100101d1
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 0x100101a6
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 0x100101d1
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.0x100107c2
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
je case.default.0x100107c2
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e616
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x9c], 0
je 0x10010306
cmp ecx, 0xc0
jb 0x10010306
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1001023e
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10010306
test cl, 0x10
jne 0x1001025f
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 0x10010303
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10010291
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 0x10010303
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 0x100102d8
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 0x10010303
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.0x100107c2.10
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
jmp 0x100100b5
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x9c], 0
je 0x10010425
cmp ecx, 0xc0
jb 0x10010425
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1001035d
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10010425
test cl, 0x10
jne 0x1001037e
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 0x10010422
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x100103b0
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 0x10010422
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 0x100103f7
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 0x10010422
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.0x100107c2
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
je case.default.0x100107c2
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e616
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x9c], 0
je 0x10010557
cmp ecx, 0xc0
jb 0x10010557
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1001048f
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10010557
test cl, 0x10
jne 0x100104b0
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 0x10010554
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x100104e2
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 0x10010554
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 0x10010529
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 0x10010554
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.0x100107c2.10
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jmp 0x100100b5
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x9c], 0
je 0x10010676
cmp ecx, 0xc0
jb 0x10010676
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x100105ae
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10010676
test cl, 0x10
jne 0x100105cf
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 0x10010673
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10010601
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 0x10010673
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 0x10010648
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 0x10010673
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.0x100107c2
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je case.default.0x100107c2
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e616
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x9c], 0
je 0x100107a8
cmp ecx, 0xc0
jb 0x100107a8
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x100106e0
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x100107a8
test cl, 0x10
jne 0x10010701
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 0x100107a5
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10010733
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 0x100107a5
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 0x1001077a
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 0x100107a5
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 0x10010826
je case.0x100107c2.11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x100107c2
jmp dword [ecx*4 + 0x100176f0]
cmp esi, dword [edi + 0x78]
jb 0x1001080a
mov eax, dword [edi + 0x88]
test eax, eax
je case.0x100107c2.10
cmp esi, dword [edi + 0x84]
jbe case.0x100107c2.10
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e616
cmp byte [esi], 0xa
jne case.0x100107c2.10
mov edx, dword [ebp - 0x84]
inc esi
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e616
sub ecx, 0x2028
je case.0x100107c2.11
sub ecx, 1
jne case.default.0x100107c2
cmp dword [edi + 0x68], 0
jmp 0x100100b5
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x9c], 0
je 0x10010947
cmp ecx, 0xc0
jb 0x10010947
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1001087f
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10010947
test cl, 0x10
jne 0x100108a0
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 0x10010944
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x100108d2
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 0x10010944
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 0x10010919
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 0x10010944
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 0x100109b1
je case.default.0x100107c2
cmp ecx, 0xa0
ja 0x10010987
je case.default.0x100107c2
cmp ecx, 9
je case.default.0x100107c2
cmp ecx, 0x20
je case.default.0x100107c2
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e616
cmp ecx, 0x1680
je case.default.0x100107c2
cmp ecx, 0x180e
je case.default.0x100107c2
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e616
cmp ecx, 0x3000
ja case.0x100107c2.10
je case.default.0x100107c2
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x100107c2.10
movzx eax, byte [ecx + 0x10017708]
jmp dword [eax*4 + 0x10017700]
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x9c], 0
je 0x10010ae7
cmp ecx, 0xc0
jb 0x10010ae7
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10010a1f
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10010ae7
test cl, 0x10
jne 0x10010a40
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 0x10010ae4
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10010a72
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 0x10010ae4
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 0x10010ab9
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 0x10010ae4
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 0x10010b2b
je case.0x100107c2.10
cmp ecx, 0xa0
ja 0x10010b14
je case.0x100107c2.10
cmp ecx, 9
je case.0x100107c2.10
cmp ecx, 0x20
jmp 0x100100b5
cmp ecx, 0x1680
je case.0x100107c2.10
cmp ecx, 0x180e
jmp 0x100100b5
cmp ecx, 0x3000
ja case.default.0x100107c2
je case.0x100107c2.10
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x100107c2
movzx eax, byte [ecx + 0x10017770]
jmp dword [eax*4 + 0x10017768]
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x9c], 0
je 0x10010c61
cmp ecx, 0xc0
jb 0x10010c61
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10010b99
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10010c61
test cl, 0x10
jne 0x10010bba
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 0x10010c5e
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10010bec
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 0x10010c5e
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 0x10010c33
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 0x10010c5e
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 0x10010c82
je case.default.0x100107c2
add ecx, 0xfffffff6
cmp ecx, 3
ja case.0x100107c2.10
jmp dword [ecx*4 + 0x100177d0]
sub ecx, 0x2028
je case.default.0x100107c2
sub ecx, 1
je case.default.0x100107c2
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1000e616
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x9c], 0
je 0x10010db0
cmp ecx, 0xc0
jb 0x10010db0
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10010ce8
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10010db0
test cl, 0x10
jne 0x10010d09
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 0x10010dad
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10010d3b
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 0x10010dad
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 0x10010d82
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 0x10010dad
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 0x10010dd1
je case.0x100107c2.10
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x100107c2
jmp dword [ecx*4 + 0x100177e0]
sub ecx, 0x2028
je case.0x100107c2.10
sub ecx, 1
jmp 0x100100b5
mov ebx, dword [ebp - 0x84]
xor eax, eax
cmp edx, 0x74
sete al
movzx edx, byte [ebx + 3]
movzx ecx, byte [ebx + 1]
shl edx, 8
mov dword [ebp - 0x94], eax
movzx eax, byte [ebx + 4]
shl ecx, 8
or edx, eax
movzx eax, byte [ebx + 2]
add ebx, 5
or ecx, eax
mov dword [ebp - 0x84], ebx
imul ecx, dword [edi + 0x24]
mov ebx, dword [edi + 0x50]
add ecx, dword [edi + 0x30]
neg ebx
sbb ebx, ebx
xor edi, edi
neg ebx
dec ebx
mov dword [ebp - 0xa4], ebx
test edx, edx
je 0x10010e77
nop dword [eax]
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 0x10010e67
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 0x10010e9c
mov eax, dword [ebp - 0x80]
add ecx, dword [eax + 0x24]
test edx, edx
jg 0x10010e40
mov ebx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x84]
mov dl, byte [eax]
movzx ecx, dl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x10010e95
movzx eax, byte [eax + 0x100177f8]
jmp dword [eax*4 + 0x100177f0]
mov eax, dword [eax + 4]
sub eax, ebx
mov dword [ebp - 0xa4], eax
jmp 0x10010e71
mov ecx, dword [ebp - 0x84]
xor eax, eax
cmp edx, 0x72
sete al
movzx edi, byte [ecx + 1]
shl edi, 8
mov dword [ebp - 0x94], eax
movzx eax, byte [ecx + 2]
add ecx, 3
or edi, eax
mov dword [ebp - 0x84], ecx
add edi, edi
cmp edi, ebx
jge 0x10010ef4
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + edi*4]
test ecx, ecx
js 0x10010ef4
mov ebx, dword [eax + edi*4 + 4]
sub ebx, ecx
mov dword [ebp - 0xa4], ebx
jmp 0x10010e77
mov eax, dword [ebp - 0x80]
mov ebx, dword [eax + 0x50]
neg ebx
sbb ebx, ebx
neg ebx
dec ebx
mov dword [ebp - 0xa4], ebx
jmp 0x10010e77
movsx ebx, byte [ecx + 0x1003da02]
lea edx, [ecx - 0x62]
movsx ecx, byte [ecx + 0x1003da0e]
and edx, 1
inc dword [ebp - 0x84]
mov dword [ebp - 0xb8], edx
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0xb4], ecx
test ecx, ecx
jne 0x10010f8d
mov dword [ebp - 0xb4], 0x7fffffff
jmp 0x10010f8d
xor eax, eax
cmp dl, 0x69
mov edx, dword [ebp - 0x84]
sete al
mov dword [ebp - 0xb8], 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
add edx, 5
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0x84], edx
mov eax, dword [ebp - 0xa4]
test eax, eax
je 0x1000ee00
jns 0x10010fa5
test ebx, ebx
je 0x1000ee00
mov dword [ebp - 0xa8], 1
cmp ebx, 1
jl 0x10010fe9
push dword [ebp - 0x94]
push dword [ebp - 0x80]
push eax
push esi
push edi
call fcn.10018050
add esp, 0x14
test eax, eax
js 0x10015b44
add esi, eax
mov eax, dword [ebp - 0xa8]
inc eax
mov dword [ebp - 0xa8], eax
cmp eax, ebx
mov eax, dword [ebp - 0xa4]
jle 0x10010fb4
mov ecx, dword [ebp - 0xb4]
cmp ebx, ecx
je 0x1000e60d
cmp dword [ebp - 0xb8], 0
je 0x10015b7e
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
nop word [eax + eax]
cmp ebx, dword [ebp - 0xb4]
jge case.default.0x100107c2
push dword [ebp - 0x94]
push dword [ebp - 0x80]
push dword [ebp - 0xa4]
push esi
push edi
call fcn.10018050
add esp, 0x14
test eax, eax
js 0x10015b61
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 - 0x84]
push esi
call fcn.1000e520
add esp, 0x1c
test eax, eax
je 0x10011040
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x94]
push dword [ebp - 0x80]
push ebx
push esi
push edi
call fcn.10018050
add esp, 0x14
test eax, eax
js 0x10015c4c
add esi, eax
jmp 0x1000e60d
mov ebx, dword [ebp - 0x84]
mov dl, byte [ebx + 0x21]
lea edi, [ebx + 1]
add ebx, 0x21
movzx ecx, dl
add ecx, 0xffffff9e
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0x84], ebx
cmp ecx, 0xb
ja case.default.0x10011102
movzx eax, byte [ecx + 0x10017808]
jmp dword [eax*4 + 0x10017800]
movsx edx, byte [ecx + 0x1003da64]
inc ebx
cmp ecx, 8
mov dword [ebp - 0x84], ebx
sbb eax, eax
inc eax
mov dword [ebp - 0xbc], eax
mov eax, ecx
and eax, 1
cmp ecx, 8
sbb ebx, ebx
and ebx, eax
movsx eax, byte [ecx + 0x1003da70]
test eax, eax
mov dword [ebp - 0xc0], ebx
mov ecx, 0x7fffffff
cmove eax, ecx
mov dword [ebp - 0x88], eax
jmp 0x100111b2
xor ebx, ebx
cmp dl, 0x69
sete bl
xor eax, eax
cmp dl, 0x6d
mov dword [ebp - 0xc0], ebx
mov ebx, dword [ebp - 0x84]
sete al
mov dword [ebp - 0xbc], eax
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
movzx ecx, byte [ebx + 3]
shl edx, 8
or edx, eax
shl ecx, 8
movzx eax, byte [ebx + 4]
or ecx, eax
mov eax, 0x7fffffff
cmove ecx, eax
add ebx, 5
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x84], ebx
jmp 0x100111b2
mov dword [ebp - 0x88], 1
mov edx, 1
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x98], edx
test eax, eax
je 0x10011326
mov ebx, 1
mov dword [ebp - 0x94], ebx
cmp edx, ebx
jl 0x10011370
nop dword [eax]
mov ecx, dword [ebp - 0x80]
cmp esi, dword [ecx + 0x78]
jae 0x10016220
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x100112e6
movzx eax, byte [esi]
and eax, 0x3f
test dl, 0x20
jne 0x10011215
and edx, 0x1f
shl edx, 6
or edx, eax
inc esi
jmp 0x100112e6
test dl, 0x10
jne 0x10011236
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 0x100112e0
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test dl, 8
jne 0x10011268
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 0x100112da
movzx ecx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and ecx, 0x3f
mov dword [ebp - 0xb4], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test dl, 4
jne 0x100112af
mov esi, dword [ebp - 0xb4]
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 0x100112da
and edx, 1
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0xb4]
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 - 0x8c]
cmp edx, 0xff
jbe 0x100112f7
cmp dword [ebp - 0xa4], 0x6e
jmp 0x10011309
mov ecx, edx
mov eax, 1
and ecx, 7
shr edx, 3
shl eax, cl
test byte [edx + edi], al
je case.default.0x100107c2
mov edx, dword [ebp - 0x98]
inc ebx
mov dword [ebp - 0x94], ebx
cmp ebx, edx
jle 0x100111e0
jmp 0x1001136a
mov edi, 1
cmp edx, edi
jl 0x10011370
mov ecx, dword [ebp - 0x80]
mov ebx, dword [ecx + 0x78]
cmp esi, ebx
jae 0x1001621d
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 - 0x8c]
test byte [edx + ecx], al
je case.default.0x100107c2
mov edx, dword [ebp - 0x98]
inc edi
cmp edi, edx
jle 0x10011335
mov eax, dword [ebp - 0x9c]
mov edi, dword [ebp - 0x88]
mov ebx, dword [ebp - 0x90]
cmp edx, edi
je 0x1000e602
cmp dword [ebp - 0xc0], 0
jne 0x10015c6d
mov ebx, esi
mov dword [ebp - 0xc0], ebx
test eax, eax
je 0x10011598
cmp edx, edi
jge 0x100114d1
nop dword [eax]
mov eax, dword [ebp - 0x80]
mov edi, 1
cmp esi, dword [eax + 0x78]
jae 0x10011569
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x10011485
movzx eax, byte [esi + 1]
test dl, 0x20
jne 0x100113e6
and edx, 0x1f
mov edi, 2
jmp 0x1001147d
and eax, 0x3f
test dl, 0x10
jne 0x10011401
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
jmp 0x1001147d
test dl, 8
jne 0x10011425
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 0x1001147d
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 0x1001145d
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
jmp 0x10011485
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
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0xff
jbe 0x10011496
cmp dword [ebp - 0xa4], 0x6e
jmp 0x100114ae
mov ecx, edx
mov eax, 1
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0x8c]
test byte [edx + ecx], al
je 0x100114cb
mov edx, dword [ebp - 0x98]
add esi, edi
inc edx
mov dword [ebp - 0x98], edx
cmp edx, dword [ebp - 0x88]
jl 0x100113b0
mov ebx, dword [ebp - 0xc0]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xbc], 0
jne 0x1000e610
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov eax, esi
dec esi
cmp eax, ebx
jbe case.default.0x100107c2
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x1001152d
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10011523
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.1000e520
add esp, 0x1c
test eax, eax
je 0x10011510
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
mov edi, eax
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1001158d
cmp esi, dword [edi + 0x84]
jbe 0x1001158d
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
mov ebx, dword [ebp - 0xc0]
jmp 0x100114d4
cmp edx, edi
jge 0x100115dd
mov eax, dword [ebp - 0x80]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x1001163a
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
shr edx, 3
and ecx, 7
shl eax, cl
mov ecx, dword [ebp - 0x8c]
test byte [edx + ecx], al
je 0x100115dd
mov eax, dword [ebp - 0x98]
inc esi
inc eax
mov dword [ebp - 0x98], eax
cmp eax, dword [ebp - 0x88]
jl 0x100115a2
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xbc], 0
jne 0x1000e610
cmp esi, ebx
jb case.default.0x100107c2
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
dec esi
cmp esi, ebx
jae 0x100115f5
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x88]
test eax, eax
je 0x100115e0
cmp esi, dword [edi + 0x84]
jbe 0x100115e0
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
jmp 0x100115e0
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.0x100116a0
movzx eax, byte [ecx + 0x1001781c]
jmp dword [eax*4 + 0x10017814]
inc ebx
cmp ecx, 8
mov dword [ebp - 0x84], ebx
movsx ebx, byte [ecx + 0x1003da64]
sbb eax, eax
inc eax
mov dword [ebp - 0xbc], 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 - 0xc0], edx
cmove ecx, eax
jmp 0x10011733
movzx ebx, byte [ebx + 1]
xor eax, eax
cmp dl, 0x69
sete al
mov dword [ebp - 0xc0], eax
xor eax, eax
cmp dl, 0x6d
mov edx, dword [ebp - 0x84]
sete al
shl ebx, 8
mov dword [ebp - 0xbc], 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 0x100118b4
jmp 0x10011773
mov eax, 1
mov dword [ebp - 0x94], 1
mov dword [ebp - 0xa4], 1
mov dword [ebp - 0xb4], eax
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
mov ebx, dword [ebp - 0x9c]
test ebx, ebx
je 0x10011881
cmp ecx, 0xc0
jb 0x10011881
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x100117b3
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10011881
test cl, 0x10
jne 0x100117d4
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 0x1001187e
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10011806
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 0x10011878
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 0x1001184d
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 0x10011878
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 - 0x9c]
mov edi, dword [ebp - 0x80]
push ebx
push dword [ebp - 0xa8]
push ecx
call fcn.1001e350
add esp, 0xc
test eax, eax
je case.default.0x100107c2
mov eax, dword [ebp - 0xb4]
mov ebx, dword [ebp - 0xa4]
inc eax
mov dword [ebp - 0xb4], eax
cmp eax, ebx
jle 0x10011773
mov eax, dword [ebp - 0x94]
cmp ebx, eax
je 0x1000e610
cmp dword [ebp - 0xc0], 0
jne 0x10015ee5
mov edi, esi
mov dword [ebp - 0xb4], edi
cmp ebx, eax
jge 0x10011a30
nop
mov ecx, dword [ebp - 0x80]
mov edi, 1
cmp esi, dword [ecx + 0x78]
jae 0x10011a0c
mov edx, dword [ebp - 0x9c]
movzx ecx, byte [esi]
test edx, edx
je 0x100119e1
cmp ecx, 0xc0
jb 0x100119e1
movzx eax, byte [esi + 1]
test cl, 0x20
jne 0x10011924
and ecx, 0x1f
mov edi, 2
jmp 0x100119d9
and eax, 0x3f
test cl, 0x10
jne 0x10011942
and ecx, 0xf
mov edi, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x100119d9
test cl, 8
jne 0x10011969
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 0x100119d9
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 0x100119ad
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
mov edx, dword [ebp - 0x9c]
shl ecx, 6
or ecx, edi
mov edi, 5
shl ecx, 6
or ecx, ebx
mov ebx, dword [ebp - 0xa4]
jmp 0x100119e1
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
or ecx, edx
mov edx, dword [ebp - 0x9c]
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.1001e350
add esp, 0xc
test eax, eax
je 0x10011a2a
inc ebx
add esi, edi
mov dword [ebp - 0xa4], ebx
cmp ebx, dword [ebp - 0x94]
jl 0x100118e0
jmp 0x10011a2a
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x10011a2a
cmp esi, dword [ecx + 0x84]
jbe 0x10011a2a
mov dword [ecx + 0x64], edi
cmp eax, 1
jg 0x10016f3d
mov edi, dword [ebp - 0xb4]
cmp dword [ebp - 0xbc], 0
jne 0x1000e60d
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
nop
mov eax, esi
dec esi
cmp eax, edi
jbe case.default.0x100107c2
cmp dword [ebp - 0x9c], 0
je 0x10011a9a
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10011a9a
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10011a90
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.1000e520
add esp, 0x1c
test eax, eax
je 0x10011a70
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x9c], 0
je 0x10011b50
mov ebx, dword [ebp - 0x84]
mov edx, 1
inc ebx
movzx eax, byte [ebx]
cmp eax, 0xc0
jb 0x10011b23
test al, 0x20
jne 0x10011b00
mov edx, 2
jmp 0x10011b23
test al, 0x10
jne 0x10011b0b
mov edx, 3
jmp 0x10011b23
test al, 8
jne 0x10011b16
mov edx, 4
jmp 0x10011b23
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 0x10016096
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.0x100107c2
test edx, edx
jg 0x10011b32
jmp 0x1000e610
mov eax, dword [edi + 0x78]
sub eax, esi
cmp eax, 1
jl 0x10015b0f
mov edx, dword [ebp - 0x84]
mov al, byte [esi]
inc esi
cmp byte [edx + 1], al
jne case.default.0x100107c2
add edx, 2
mov dword [ebp - 0x84], edx
jmp 0x1000e620
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
cmp dword [ebp - 0x9c], 0
je 0x10011e07
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 0x10011ca0
movzx eax, byte [edx + 1]
test bl, 0x20
jne 0x10011bd5
and ebx, 0x1f
mov dword [ebp - 0xa4], 2
jmp 0x10011c98
and eax, 0x3f
test bl, 0x10
jne 0x10011bf8
and ebx, 0xf
mov dword [ebp - 0xa4], 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
jmp 0x10011c98
test bl, 8
jne 0x10011c24
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 0x10011c98
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 0x10011c6a
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 0x10011ca0
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 0x10011ccd
mov edx, dword [edi + 0x38]
mov al, byte [ebx + edx]
cmp al, byte [ecx + edx]
jne case.default.0x100107c2
mov edx, dword [ebp - 0x84]
inc edx
inc esi
mov dword [ebp - 0x84], edx
jmp 0x1000e616
inc esi
cmp ecx, 0xc0
jb 0x10011de5
test cl, 0x20
jne 0x10011cf3
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x10011de5
test cl, 0x10
jne 0x10011d1a
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 0x10011de5
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 0x10011d5f
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 0x10011de5
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 0x10011db6
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 0x10011de5
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.0x100107c2
mov edi, dword [ebp - 0x80]
jmp 0x1000e616
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.0x100107c2
mov edx, dword [ebp - 0x84]
inc esi
add edx, 2
mov dword [ebp - 0x84], edx
jmp 0x1000e620
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 0x10011f38
mov dword [ebp - 0xbc], 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 0x10011e90
mov dword [ebp - 0xc0], edx
cmp cl, 0x35
jne 0x10011e9a
mov dword [ebp - 0xc0], 1
mov ecx, dword [ebp - 0x84]
add ecx, 3
jmp 0x10011f44
mov ecx, dword [ebp - 0x84]
xor edx, edx
mov dword [ebp - 0xbc], 1
mov edi, 0x7fffffff
inc ecx
jmp 0x10011f38
mov ecx, dword [ebp - 0x84]
mov edx, 1
mov dword [ebp - 0xbc], 1
mov edi, 0x7fffffff
inc ecx
jmp 0x10011f38
mov ecx, dword [ebp - 0x84]
xor edx, edx
mov dword [ebp - 0xbc], 1
inc ecx
lea edi, [edx + 1]
jmp 0x10011f38
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 - 0xc0], 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 - 0x9c], 0
movzx ebx, byte [ecx]
je 0x10012196
mov eax, ecx
mov dword [ebp - 0x94], eax
cmp ebx, 0xc0
jb 0x10012196
test bl, 0x20
jne 0x10011f74
mov edi, 2
jmp 0x10011f9b
test bl, 0x10
jne 0x10011f80
mov edi, 3
jmp 0x10011f9b
test bl, 8
jne 0x10011f8c
mov edi, 4
jmp 0x10011f9b
mov edi, 5
test bl, 4
je 0x10011f9b
mov edi, 6
add ecx, edi
mov dword [ebp - 0xa4], edi
mov ebx, 1
mov dword [ebp - 0x84], ecx
cmp edx, ebx
jl 0x10012056
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x78]
sub eax, edi
mov dword [ebp - 0xac], eax
cmp esi, eax
ja 0x100160b1
mov edx, dword [ebp - 0x94]
mov ecx, esi
sub edi, 4
jb 0x10011ff1
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x10011ff6
add ecx, 4
add edx, 4
sub edi, 4
jae 0x10011fe0
cmp edi, 0xfffffffc
je 0x10012033
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x100160b1
cmp edi, 0xfffffffd
je 0x10012033
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x100160b1
cmp edi, 0xfffffffe
je 0x10012033
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x100160b1
cmp edi, 0xffffffff
je 0x10012033
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x100160b1
mov edi, dword [ebp - 0xa4]
inc ebx
mov edx, dword [ebp - 0x98]
add esi, edi
mov eax, dword [ebp - 0xac]
cmp ebx, edx
jle 0x10011fc4
mov eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x88]
mov ebx, dword [ebp - 0x90]
cmp edx, ecx
je 0x1000e602
cmp dword [ebp - 0xc0], 0
jne 0x100160e3
mov ebx, esi
cmp edx, ecx
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0xb4], ebx
jge 0x10012142
mov ebx, dword [ecx + 0x78]
sub ebx, edi
nop
cmp esi, ebx
ja 0x10012112
mov ecx, esi
mov edx, eax
sub edi, 4
jb 0x100120b2
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x100120b7
add ecx, 4
add edx, 4
sub edi, 4
jae 0x100120a1
cmp edi, 0xfffffffc
je 0x100120e4
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x1001210c
cmp edi, 0xfffffffd
je 0x100120e4
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x1001210c
cmp edi, 0xfffffffe
je 0x100120e4
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x1001210c
cmp edi, 0xffffffff
je 0x100120e4
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x1001210c
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 0x10012090
mov ecx, dword [ebp - 0x80]
jmp 0x1001213c
mov edi, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x1001213c
cmp esi, dword [ecx + 0x78]
jb 0x1001213c
cmp esi, dword [ecx + 0x84]
jbe 0x1001213c
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x10016f3d
mov ebx, dword [ebp - 0xb4]
cmp dword [ebp - 0xbc], 0
jne 0x1000e60d
cmp esi, ebx
jbe 0x1001589e
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov ecx, dword [ebp - 0x80]
sub esi, edi
cmp esi, ebx
ja 0x10012157
mov edi, ecx
jmp 0x100158a1
inc ecx
cmp dword [ebp - 0xa4], 0x2e
mov dword [ebp - 0x84], ecx
jb 0x100122b3
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x3c]
movzx edi, byte [eax + ebx]
cmp edx, 1
jl 0x100121eb
mov edx, dword [ecx + 0x78]
mov ecx, 1
cmp esi, edx
jae 0x1001621d
movzx eax, byte [esi]
cmp ebx, eax
je 0x100121d8
cmp edi, eax
jne case.default.0x100107c2
inc ecx
inc esi
cmp ecx, dword [ebp - 0x98]
jle 0x100121c1
mov edx, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x88]
cmp edx, eax
je 0x1000e60d
cmp dword [ebp - 0xc0], 0
jne 0x10016230
mov dword [ebp - 0xac], esi
cmp edx, eax
jge 0x1001222c
mov ecx, dword [ecx + 0x78]
cmp esi, ecx
jae 0x10012289
movzx eax, byte [esi]
cmp ebx, eax
je 0x10012222
cmp edi, eax
jne 0x1001222c
inc edx
inc esi
cmp edx, dword [ebp - 0x88]
jl 0x10012213
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xbc], 0
jne 0x1000e610
mov ebx, dword [ebp - 0xac]
cmp esi, ebx
je 0x100158a1
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.1000e520
add esp, 0x1c
dec esi
test eax, eax
jne 0x100158c9
cmp esi, ebx
jne 0x10012250
jmp 0x100158a1
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1001222f
cmp esi, dword [edi + 0x84]
jbe 0x1001222f
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
jmp 0x1001222f
mov ecx, 1
cmp edx, ecx
jl 0x100122e5
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x1001621d
movzx eax, byte [esi]
inc esi
cmp ebx, eax
jne case.default.0x100107c2
inc ecx
cmp ecx, dword [ebp - 0x98]
jle 0x100122c2
mov edx, dword [ebp - 0x98]
cmp edx, edi
je 0x1000e60d
cmp dword [ebp - 0xc0], 0
jne 0x100162e0
mov edi, esi
cmp edx, dword [ebp - 0x88]
jge 0x10012325
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax + 0x78]
nop word [eax + eax]
cmp esi, ecx
jae 0x10012382
movzx eax, byte [esi]
cmp ebx, eax
jne 0x10012325
inc edx
inc esi
cmp edx, dword [ebp - 0x88]
jl 0x10012310
mov ecx, dword [ebp - 0x80]
cmp dword [ebp - 0xbc], 0
jne 0x1000e60d
mov ebx, dword [ebp - 0x90]
cmp esi, edi
je 0x10015893
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.1000e520
add esp, 0x1c
dec esi
test eax, eax
jne 0x100158c9
mov ecx, dword [ebp - 0x80]
cmp esi, edi
jne 0x10012343
mov edx, dword [ebp - 0x84]
mov edi, ecx
jmp 0x100158ad
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x10012328
cmp esi, dword [ecx + 0x84]
jbe 0x10012328
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x10016f3d
jmp 0x10012328
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
cmp dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x84]
movzx ecx, byte [eax + 1]
je 0x10012644
add eax, 2
mov dword [ebp - 0x84], eax
cmp ecx, 0xc0
jb 0x100124eb
lea edx, [eax + 1]
test cl, 0x20
jne 0x10012402
movzx eax, byte [eax]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [ebp - 0x84], edx
jmp 0x100124eb
lea edi, [eax + 2]
test cl, 0x10
jne 0x1001242e
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 0x100124eb
lea ebx, [eax + 3]
movzx eax, byte [eax]
and eax, 0x3f
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x1001246b
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 0x100124eb
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 0x100124bc
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 0x100124eb
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 0x10012606
test dl, 0x20
jne 0x10012514
movzx eax, byte [esi]
and edx, 0x1f
shl edx, 6
and eax, 0x3f
or edx, eax
inc esi
jmp 0x10012606
test dl, 0x10
jne 0x1001253b
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 0x10012606
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 0x10012580
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 0x10012606
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 0x100125d7
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 0x10012606
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 0x1001261c
cmp ecx, edx
je case.default.0x100107c2
jmp 0x1000e60d
mov edi, dword [ebp - 0x80]
cmp ecx, 0x7f
jbe 0x10012628
mov eax, ecx
jmp 0x1001262f
mov eax, dword [edi + 0x3c]
movzx eax, byte [eax + ecx]
cmp ecx, edx
je case.default.0x100107c2
cmp eax, edx
je case.default.0x100107c2
jmp 0x1000e610
movzx edx, byte [esi]
inc esi
cmp ecx, edx
je case.default.0x100107c2
cmp dword [ebp - 0xa4], 0x20
jne 0x10012668
mov eax, dword [edi + 0x3c]
movzx eax, byte [eax + ecx]
cmp eax, edx
je case.default.0x100107c2
mov edx, dword [ebp - 0x84]
add edx, 2
mov dword [ebp - 0x84], edx
jmp 0x1000e620
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 0x100127b1
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 0x100126d0
mov dword [ebp - 0xc0], ebx
cmp cl, 0x4f
jne 0x100126da
mov dword [ebp - 0xc0], 1
add edi, 3
jmp 0x100127b7
mov edi, dword [ebp - 0x84]
xor ebx, ebx
mov dword [ebp - 0xbc], 1
inc edi
mov dword [ebp - 0x98], 0x7fffffff
jmp 0x100127b1
mov edi, dword [ebp - 0x84]
mov ebx, 1
mov dword [ebp - 0xbc], 1
inc edi
mov dword [ebp - 0x98], 0x7fffffff
jmp 0x100127b1
mov edi, dword [ebp - 0x84]
xor ebx, ebx
mov dword [ebp - 0xbc], 1
inc edi
mov dword [ebp - 0x98], 1
jmp 0x100127b1
mov edi, dword [ebp - 0x84]
xor ebx, ebx
mov dword [ebp - 0xbc], 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 0x100127b1
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 - 0xc0], 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 - 0x9c]
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0x84], edi
test edx, edx
je 0x10012921
cmp ebx, 0xc0
jb 0x10012921
lea ecx, [edi + 1]
test bl, 0x20
jne 0x10012802
movzx eax, byte [edi]
and ebx, 0x1f
shl ebx, 6
and eax, 0x3f
or ebx, eax
mov dword [ebp - 0x84], ecx
jmp 0x1001291b
lea edx, [edi + 2]
test bl, 0x10
jne 0x1001282e
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 0x10012915
mov eax, dword [ebp - 0x84]
add edi, 3
movzx eax, byte [eax]
and eax, 0x3f
test bl, 8
jne 0x1001286b
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 0x10012915
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 0x100128d2
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 - 0x9c]
shl eax, 6
or eax, edi
mov dword [ebp - 0x8c], eax
mov ebx, eax
jmp 0x10012921
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 - 0x9c]
mov dword [ebp - 0x8c], ebx
cmp dword [ebp - 0xa4], 0x48
jb 0x10012db5
test edx, edx
je 0x10012942
cmp ebx, 0x7f
jbe 0x10012942
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0xa4], ebx
jmp 0x1001295a
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x3c]
movzx eax, byte [eax + ebx]
mov dword [ebp - 0xa4], eax
test edx, edx
je 0x10012aad
mov edx, dword [ebp - 0x88]
mov eax, 1
mov dword [ebp - 0xa8], eax
cmp edx, eax
jl 0x10012aa5
cmp esi, dword [ecx + 0x78]
jae 0x10016220
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x10012a7f
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x100129a5
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10012a73
test cl, 0x10
jne 0x100129c6
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 0x10012a73
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x100129fb
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 0x10012a6d
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 0x10012a42
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 0x10012a6d
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.0x100107c2
cmp dword [ebp - 0xa4], ecx
je case.default.0x100107c2
mov ecx, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0xa8], eax
cmp eax, edx
jle 0x10012973
mov edi, dword [ebp - 0xa4]
jmp 0x10012b07
mov edx, dword [ebp - 0x88]
mov ecx, 1
mov edi, eax
mov dword [ebp - 0xa4], edi
cmp edx, ecx
jl 0x10012b07
mov edx, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x88]
mov dword [ebp - 0xa4], edi
mov edx, dword [edx + 0x78]
cmp esi, edx
jae 0x1001621d
movzx eax, byte [esi]
cmp dword [ebp - 0x8c], eax
je case.default.0x100107c2
cmp edi, eax
je case.default.0x100107c2
inc ecx
inc esi
cmp ecx, ebx
jle 0x10012ad6
mov edx, dword [ebp - 0x88]
mov ebx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x98]
cmp edx, eax
je 0x1000e60d
cmp dword [ebp - 0xc0], 0
jne 0x10016376
cmp dword [ebp - 0x9c], 0
mov ebx, esi
mov dword [ebp - 0xa8], ebx
je 0x10012d12
mov edi, eax
cmp edx, edi
jge 0x10012c75
mov ebx, dword [ebp - 0x8c]
nop word [eax + eax]
mov ecx, dword [ebp - 0x80]
mov eax, 1
cmp esi, dword [ecx + 0x78]
jae 0x10012ce3
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x10012c52
movzx eax, byte [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10012b8e
and ecx, 0x1f
shl ecx, 6
or ecx, eax
mov eax, 2
jmp 0x10012c52
test cl, 0x10
jne 0x10012bb1
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 0x10012c52
test cl, 8
jne 0x10012be0
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 0x10012c52
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 0x10012c18
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 0x10012c40
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 0x10012c6f
cmp dword [ebp - 0xa4], ecx
je 0x10012c6f
inc edx
add esi, eax
mov dword [ebp - 0x88], edx
cmp edx, edi
jl 0x10012b50
mov ebx, dword [ebp - 0xa8]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xbc], 0
jne 0x1000e610
cmp esi, ebx
jbe 0x100158a1
nop dword [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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
jne 0x10012cda
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10012cd0
cmp esi, ebx
ja 0x10012c90
jmp 0x100158a1
mov edi, ecx
mov eax, dword [edi + 0x88]
test eax, eax
je 0x10012d07
cmp esi, dword [edi + 0x84]
jbe 0x10012d07
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
mov ebx, dword [ebp - 0xa8]
jmp 0x10012c78
cmp edx, eax
jge 0x10012d3d
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x10012d8e
movzx eax, byte [esi]
cmp dword [ebp - 0x8c], eax
je 0x10012d3d
cmp edi, eax
je 0x10012d3d
inc edx
inc esi
cmp edx, dword [ebp - 0x98]
jl 0x10012d20
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xbc], 0
jne 0x1000e610
cmp esi, ebx
je 0x100158a1
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
dec esi
cmp esi, ebx
jne 0x10012d55
jmp 0x100158a1
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x88]
test eax, eax
je 0x10012d40
cmp esi, dword [edi + 0x84]
jbe 0x10012d40
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
jmp 0x10012d40
mov edi, dword [ebp - 0x88]
test edx, edx
je 0x10012f05
mov eax, 1
mov dword [ebp - 0xa8], eax
cmp edi, eax
jl 0x10012f33
nop word [eax + eax]
mov ecx, dword [ebp - 0x80]
cmp esi, dword [ecx + 0x78]
jae 0x10016220
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x10012eec
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10012e15
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10012ee6
test cl, 0x10
jne 0x10012e36
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 0x10012ee0
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10012e68
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 0x10012eda
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 0x10012eaf
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 0x10012eda
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.0x100107c2
inc eax
mov dword [ebp - 0xa8], eax
cmp eax, edi
jle 0x10012de0
jmp 0x10012f2d
mov ecx, 1
cmp edi, ecx
jl 0x10012f33
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x1001621d
movzx eax, byte [esi]
inc esi
cmp ebx, eax
je case.default.0x100107c2
inc ecx
cmp ecx, edi
jle 0x10012f14
mov edx, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x98]
cmp edi, eax
je 0x1000e60d
cmp dword [ebp - 0xc0], 0
jne 0x100165cf
mov ebx, esi
mov dword [ebp - 0xb4], ebx
test edx, edx
je 0x10013122
cmp edi, eax
jge 0x10013088
mov edx, dword [ebp - 0x8c]
nop dword [eax]
mov ecx, dword [ebp - 0x80]
mov eax, 1
cmp esi, dword [ecx + 0x78]
jae 0x100130f3
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x10013069
movzx eax, byte [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10012fae
and ecx, 0x1f
shl ecx, 6
or ecx, eax
mov eax, 2
jmp 0x10013069
test cl, 0x10
jne 0x10012fd1
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 0x10013069
test cl, 8
jne 0x10012ffd
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 0x10013069
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 0x10013035
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 0x1001305d
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 0x10013082
inc edi
add esi, eax
mov dword [ebp - 0x88], edi
cmp edi, dword [ebp - 0x98]
jl 0x10012f70
mov ebx, dword [ebp - 0xb4]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xbc], 0
jne 0x1000e610
cmp esi, ebx
jbe 0x100158a1
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
jne 0x100130ea
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x100130e0
cmp esi, ebx
ja 0x100130a0
jmp 0x100158a1
mov edi, ecx
mov eax, dword [edi + 0x88]
test eax, eax
je 0x10013117
cmp esi, dword [edi + 0x84]
jbe 0x10013117
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
mov ebx, dword [ebp - 0xb4]
jmp 0x1001308b
cmp edi, eax
jge 0x10013147
mov eax, dword [ebp - 0x80]
mov edx, dword [ebp - 0x8c]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x10013199
movzx eax, byte [esi]
cmp edx, eax
je 0x10013147
inc edi
inc esi
cmp edi, dword [ebp - 0x98]
jl 0x10013132
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xbc], 0
jne 0x1000e610
cmp esi, ebx
je 0x100158a1
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
dec esi
cmp esi, ebx
jne 0x10013160
jmp 0x100158a1
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x88]
test eax, eax
je 0x1001314a
cmp esi, dword [edi + 0x84]
jbe 0x1001314a
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
jmp 0x1001314a
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xc0], 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 0x10013384
mov eax, dword [ebp - 0x84]
xor edx, edx
mov dword [ebp - 0x8c], edx
movzx ebx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ebx, 8
or ebx, eax
xor eax, eax
cmp cl, 0x5c
mov dword [ebp - 0x98], ebx
sete al
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0x84]
add eax, 3
mov dword [ebp - 0x84], eax
inc dword [ebp - 0x84]
movzx ecx, byte [eax]
mov eax, ecx
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0x88], eax
jmp 0x1001346f
mov edx, 0x7fffffff
mov ebx, dword [ebp - 0x84]
xor edi, edi
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0xbc], 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 0x100134bc
mov edx, dword [ebp - 0x84]
mov ebx, 1
mov dword [ebp - 0xbc], 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 0x100133ae
mov edx, 1
jmp 0x10013258
mov eax, dword [ebp - 0x84]
xor edx, edx
mov dword [ebp - 0xbc], 1
mov dword [ebp - 0x8c], edx
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x84]
add eax, 3
mov dword [ebp - 0x98], ecx
mov dword [ebp - 0x84], eax
mov edi, dword [ebp - 0x84]
inc edi
movzx ecx, byte [eax]
mov eax, ecx
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], edi
jmp 0x1001347b
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 - 0xc0], 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 0x1001430a
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x10016d3c.15
mov ecx, dword [ebp - 0x9c]
test ecx, ecx
je 0x10013fa9
jmp dword [eax*4 + 0x10017828]
mov eax, dword [ebp - 0x88]
mov edi, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x9c]
cmp edx, dword [ebp - 0x98]
mov ebx, edi
mov edx, dword [ebp - 0x84]
mov edi, esi
mov dword [ebp - 0x94], ebx
je 0x1000ee00
cmp dword [ebp - 0xc0], 0
mov dword [ebp - 0x84], ebx
jne 0x100167f1
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.0x10016d3c.15
cmp dword [ebp - 0x9c], 0
je switch.0x1001511d
jmp dword [eax*4 + 0x10017868]
jmp dword [eax*4 + 0x100179a8]
mov ecx, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x88]
mov edx, dword [ebp - 0x8c]
mov edi, dword [ebp - 0x84]
jmp 0x10013481
mov ebx, dword [ebp - 0x88]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xbc], 0
jne 0x1000e610
cmp esi, ebx
jbe 0x100158a1
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
jne 0x1001470a
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10014700
cmp dword [ebp - 0xa4], 0x11
jne 0x10014727
cmp esi, ebx
jbe 0x100158a1
cmp byte [esi], 0xa
jne 0x100146c0
cmp byte [esi - 1], 0xd
jne 0x100146c0
dec esi
cmp esi, ebx
ja 0x100146c0
jmp 0x100158a1
mov ebx, dword [ebp - 0x88]
jmp 0x100146a5
mov edi, eax
mov eax, dword [edi + 0x88]
test eax, eax
je 0x10014755
cmp esi, dword [edi + 0x84]
jbe 0x10014755
mov dword [edi + 0x64], edx
cmp eax, 1
jg 0x10016f3d
mov ebx, dword [ebp - 0x88]
jmp 0x100146a5
cmp edi, edx
jge 0x100146a2
mov eax, dword [ebp - 0x80]
mov edx, 1
cmp esi, dword [eax + 0x78]
jae 0x100148dc
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x10014b4c
movzx eax, byte [esi + 1]
test cl, 0x20
jne 0x10014a9b
and ecx, 0x1f
mov edx, 2
jmp 0x10014b41
and eax, 0x3f
test cl, 0x10
jne 0x10014ab9
and ecx, 0xf
mov edx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x10014b41
test cl, 8
jne 0x10014add
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 0x10014b41
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 0x10014b1b
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 0x10014b49
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 0x10014b61
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne 0x1001469c
inc edi
add esi, edx
mov dword [ebp - 0x8c], edi
cmp edi, dword [ebp - 0x98]
jl 0x10014a65
jmp 0x1001469c
jmp dword [eax*4 + 0x10017bf4]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xbc], 0
jne 0x1000e610
cmp esi, ebx
je 0x100158a1
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
dec esi
cmp dword [ebp - 0xa4], 0x11
jne 0x100151fe
cmp esi, ebx
jbe 0x10015200
cmp byte [esi], 0xa
jne 0x100151b5
cmp byte [esi - 1], 0xd
jne 0x100151b5
dec esi
cmp esi, ebx
jne 0x100151b5
jmp 0x100158a1
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x88]
test eax, eax
je 0x100151a0
cmp esi, dword [edi + 0x84]
jbe 0x100151a0
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
jmp 0x100151a0
cmp edi, edx
jge 0x1001519d
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 0x78]
nop
cmp esi, edx
jae 0x10015239
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne 0x1001519d
mov eax, dword [ebp - 0x80]
inc edi
inc esi
cmp edi, dword [ebp - 0x98]
jl 0x10015410
mov edi, eax
jmp 0x100151a0
mov ebx, dword [ebp - 0x90]
cmp al, 0x7a
mov eax, dword [ebp + 0x20]
jne 0x100155bf
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov edx, dword [ebp - 0xb8]
mov dword [ebp - 0x84], edx
jmp 0x100158ad
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push ebx
push dword [ebp - 0xa0]
push dword [ebp - 0xb8]
push esi
call fcn.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov edx, dword [ebp - 0x84]
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x100158ad
mov edx, dword [ebp - 0x84]
jmp 0x1001566c
mov eax, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x90]
mov edx, dword [ebp - 0x84]
mov eax, dword [eax + 0x8c]
cmp eax, ebx
cmovg ebx, eax
cmp byte [edx], 0x92
mov dword [ebp - 0x90], ebx
jne 0x1001562b
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 0x10015654
nop
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x10015640
movzx eax, byte [edi + 0x1003ea28]
mov ecx, 3
sub ecx, eax
add edx, ecx
jmp 0x1001566c
mov ebx, dword [ebp - 0x90]
mov eax, dword [ebp - 0xac]
movzx eax, byte [eax + 0x1003ea28]
add edx, eax
mov dword [ebp - 0x84], edx
cmp dword [ebp - 0xa4], 0x8c
je 0x1001592f
mov edi, dword [ebp - 0x80]
jmp 0x100158ad
cmp al, 0x7a
mov eax, dword [ebp + 0x20]
jne 0x100156e4
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov al, byte [ebx]
cmp al, 0x81
je 0x10015a78
cmp al, 0x88
jae 0x10015a45
mov edx, ebx
mov dword [ebp - 0x84], edx
jmp 0x100158a7
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push ecx
push dword [ebp - 0xa0]
push ebx
push esi
call fcn.1000e520
add esp, 0x1c
cmp eax, 0xfffffc1b
jne 0x1001570d
cmp dword [edi + 0xb4], ebx
jmp 0x1001570f
test eax, eax
jne 0x100158c9
mov edx, dword [ebp - 0x84]
add edx, 3
cmp byte [ebx], 0x81
mov dword [ebp - 0x84], edx
jne 0x100158a7
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push edx
jmp 0x10015a91
mov eax, dword [ebp - 0x84]
movzx edx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl edx, 8
or edx, eax
mov dword [ebp - 0xc8], edx
lea eax, [edx + edx]
cmp eax, dword [edi + 0x14]
jl 0x10016f53
mov edx, dword [ebp - 0xa4]
cmp edx, 0x88
jae 0x100157bc
cmp edx, 0x81
je 0x100157bc
cmp dword [edi + 0x6c], 0
mov edx, dword [ebp - 0x84]
jne 0x100157cc
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x77
je 0x100157cc
movzx eax, byte [edx]
movzx eax, byte [eax + 0x1003ea28]
add edx, eax
mov dword [ebp - 0x84], edx
jmp 0x100158a7
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 + 0x1003ea28]
push dword [ebp - 0xa0]
add eax, edx
push eax
push esi
call fcn.1000e520
mov edi, eax
add esp, 0x1c
cmp edi, 0xfffffc20
jne 0x1001584d
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 0x10017111
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x10015855
cmp byte [edx], 0x77
jne 0x10017111
jmp 0x10015855
test edi, edi
jne 0x100170c3
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.0x100107c2
mov eax, dword [ebp - 0xac]
mov dword [edi + 0x90], eax
jmp 0x10015770
mov edi, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
jmp 0x100158ad
mov edi, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x90]
mov eax, dword [edi + 0x4c]
mov dword [ebp - 0x9c], eax
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jb 0x1000e5c0
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.10021896
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 + 0x1003ea28]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
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.10021896
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.1000e520
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
mov eax, ecx
sub eax, 1
jmp 0x10015977
cmp ecx, 0xfffffc19
je case.default.0x100107c2
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
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.10021896
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.0x100107c2
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.10021896
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xd8]
lea ecx, [ebp - 0x7c]
cmp eax, ecx
je 0x100159f7
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.10021896
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.10021896
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.10021896
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.1000e520
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
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.1000e520
add esp, 0x1c
test eax, eax
je 0x1000f8b0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
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.10021896
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.10021896
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x88]
test eax, eax
je case.default.0x100107c2
cmp esi, dword [edi + 0x84]
jbe case.default.0x100107c2
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x10016f3d
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x80]
cmp eax, 0xfffffffe
jne 0x10015b4f
mov esi, dword [ecx + 0x78]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x100107c2
cmp esi, dword [ecx + 0x78]
jmp 0x100161ff
mov ecx, dword [ebp - 0x80]
cmp eax, 0xfffffffe
jne 0x10015b6c
mov esi, dword [ecx + 0x78]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x100107c2
cmp esi, dword [ecx + 0x78]
jmp 0x100161ff
mov dword [ebp - 0xb8], esi
cmp ebx, ecx
jge 0x10015bf8
nop dword [eax]
push dword [ebp - 0x94]
push dword [ebp - 0x80]
push eax
push esi
push edi
call fcn.10018050
add esp, 0x14
test eax, eax
js 0x10015bbb
add esi, eax
inc ebx
mov eax, dword [ebp - 0xa4]
cmp ebx, dword [ebp - 0xb4]
jl 0x10015b90
jmp 0x10015be8
cmp eax, 0xfffffffe
jne 0x10015be8
mov edx, dword [ebp - 0x80]
mov ecx, dword [edx + 0x88]
test ecx, ecx
je 0x10015be8
mov eax, dword [edx + 0x78]
cmp eax, dword [edx + 0x84]
jbe 0x10015be8
mov dword [edx + 0x64], 1
cmp ecx, 1
jg 0x10016f3d
mov ebx, dword [ebp - 0xb8]
cmp esi, ebx
jb case.default.0x100107c2
jmp 0x10015c00
mov ebx, dword [ebp - 0xb8]
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 - 0x84]
push esi
call fcn.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
sub esi, dword [ebp - 0xa4]
cmp esi, ebx
jae 0x10015c00
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x80]
cmp eax, 0xfffffffe
jne 0x10015c57
mov esi, dword [ecx + 0x78]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x100107c2
cmp esi, dword [ecx + 0x78]
jmp 0x100161ff
test eax, eax
mov eax, dword [ebp + 0x20]
je 0x10015e39
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov ebx, dword [ebp - 0x98]
nop dword [eax]
cmp ebx, edi
jge case.default.0x100107c2
mov ecx, dword [ebp - 0x80]
cmp esi, dword [ecx + 0x78]
jae 0x10016220
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x10015dc1
movzx eax, byte [esi]
and eax, 0x3f
test dl, 0x20
jne 0x10015ced
and edx, 0x1f
shl edx, 6
or edx, eax
inc esi
jmp 0x10015dc1
test dl, 0x10
jne 0x10015d0e
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 0x10015dbb
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test dl, 8
jne 0x10015d43
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 0x10015db5
movzx ecx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and ecx, 0x3f
mov dword [ebp - 0xb8], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test dl, 4
jne 0x10015d8a
mov esi, dword [ebp - 0xb8]
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 0x10015db5
and edx, 1
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0xb8]
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 - 0x88]
cmp edx, 0xff
jbe 0x10015dd2
cmp dword [ebp - 0xa4], 0x6e
jmp 0x10015dea
mov ecx, edx
mov eax, 1
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0x8c]
test byte [edx + ecx], al
je case.default.0x100107c2
mov eax, dword [ebp + 0x20]
inc ebx
inc eax
mov dword [ebp - 0x98], ebx
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.1000e520
add esp, 0x1c
test eax, eax
je 0x10015cb0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov ebx, dword [ebp - 0x98]
nop dword [eax]
cmp ebx, edi
jge case.default.0x100107c2
mov ecx, dword [ebp - 0x80]
cmp esi, dword [ecx + 0x78]
jae 0x10016220
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 - 0x8c]
test byte [edx + ecx], al
je case.default.0x100107c2
mov eax, dword [ebp + 0x20]
inc ebx
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.1000e520
add esp, 0x1c
test eax, eax
je 0x10015e70
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
cmp ebx, dword [ebp - 0x94]
jge case.default.0x100107c2
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
mov eax, dword [ebp - 0x9c]
test eax, eax
je 0x10016037
cmp ecx, 0xc0
jb 0x10016037
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10015f60
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10016031
test cl, 0x10
jne 0x10015f81
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 0x1001602e
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x10015fb6
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 0x10016028
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0xb8], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10015ffd
mov esi, dword [ebp - 0xb8]
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 0x10016028
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xb8]
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 - 0x9c]
push eax
push dword [ebp - 0xa8]
push ecx
call fcn.1001e350
add esp, 0xc
test eax, eax
je case.default.0x100107c2
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.1000e520
add esp, 0x1c
test eax, eax
je 0x10015f14
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x88]
test eax, eax
je case.default.0x100107c2
cmp esi, ecx
jb case.default.0x100107c2
jmp 0x10015b19
mov edx, dword [ebp - 0x80]
mov eax, dword [edx + 0x88]
test eax, eax
je case.default.0x100107c2
cmp esi, dword [edx + 0x78]
jb case.default.0x100107c2
cmp esi, dword [edx + 0x84]
jbe case.default.0x100107c2
mov dword [edx + 0x64], 1
jmp 0x10015b28
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
nop word [eax + eax]
mov eax, dword [ebp - 0x88]
cmp dword [ebp - 0x98], eax
jge case.default.0x100107c2
mov ebx, dword [ebx + 0x78]
mov eax, ebx
sub eax, edi
cmp esi, eax
ja 0x100161ec
mov edx, dword [ebp - 0x94]
mov ecx, esi
sub edi, 4
jb 0x10016161
nop
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x10016166
add ecx, 4
add edx, 4
sub edi, 4
jae 0x10016150
cmp edi, 0xfffffffc
je 0x1001619b
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x100161ec
cmp edi, 0xfffffffd
je 0x1001619b
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x100161ec
cmp edi, 0xfffffffe
je 0x1001619b
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x100161ec
cmp edi, 0xffffffff
je 0x1001619b
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x100161ec
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.1000e520
add esp, 0x1c
test eax, eax
je 0x10016120
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x100107c2
cmp esi, ebx
jb case.default.0x100107c2
cmp esi, dword [ecx + 0x84]
jbe case.default.0x100107c2
mov dword [ecx + 0x64], 1
jmp 0x10015b28
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x100107c2
jmp 0x10016205
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
nop
mov ecx, dword [ebp - 0x98]
cmp ecx, dword [ebp - 0x88]
jge case.default.0x100107c2
mov edx, dword [ebp - 0x80]
cmp esi, dword [edx + 0x78]
jae 0x100162cd
movzx eax, byte [esi]
cmp ebx, eax
je 0x10016289
cmp edi, eax
jne case.default.0x100107c2
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.1000e520
add esp, 0x1c
test eax, eax
je 0x10016260
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
mov eax, dword [edx + 0x88]
test eax, eax
je case.default.0x100107c2
jmp 0x100160cb
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov ecx, dword [ebp - 0x98]
cmp ecx, edi
jge case.default.0x100107c2
mov edx, dword [ebp - 0x80]
cmp esi, dword [edx + 0x78]
jae 0x100162cd
movzx eax, byte [esi]
inc esi
cmp ebx, eax
jne case.default.0x100107c2
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.1000e520
add esp, 0x1c
test eax, eax
je 0x10016311
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
cmp dword [ebp - 0x9c], 0
push eax
push dword [ebp - 0xb0]
je 0x10016536
mov edi, dword [ebp - 0x80]
push edi
push dword [ebp - 0x90]
push dword [ebp - 0xa0]
push dword [ebp - 0x84]
push esi
call fcn.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
nop word [eax + eax]
mov eax, dword [ebp - 0x88]
cmp eax, dword [ebp - 0x98]
jge case.default.0x100107c2
cmp esi, dword [edi + 0x78]
jae 0x10015b0f
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x100164db
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10016404
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x100164d5
test cl, 0x10
jne 0x10016425
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 0x100164d2
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x1001645a
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 0x100164cc
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0xb8], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x100164a1
mov esi, dword [ebp - 0xb8]
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 0x100164cc
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xb8]
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.0x100107c2
cmp dword [ebp - 0xa4], ecx
je case.default.0x100107c2
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.1000e520
add esp, 0x1c
test eax, eax
je 0x100163c0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
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.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov ebx, dword [ebp - 0x88]
cmp ebx, dword [ebp - 0x98]
jge case.default.0x100107c2
mov ecx, dword [ebp - 0x80]
cmp esi, dword [ecx + 0x78]
jae 0x10016220
movzx eax, byte [esi]
cmp dword [ebp - 0x8c], eax
je case.default.0x100107c2
cmp edi, eax
je case.default.0x100107c2
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.1000e520
add esp, 0x1c
test eax, eax
je 0x10016562
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
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 0x10016777
call fcn.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
nop dword [eax + eax]
cmp edi, dword [ebp - 0x98]
jge case.default.0x100107c2
mov edx, dword [ebp - 0x80]
cmp esi, dword [edx + 0x78]
jae 0x100162cd
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x10016728
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10016651
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10016728
test cl, 0x10
jne 0x10016672
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 0x10016722
lea ebx, [esi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x100166a7
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 0x1001671c
movzx edx, byte [esi + 1]
lea ebx, [esi + 4]
movzx edi, byte [esi + 2]
and edx, 0x3f
mov dword [ebp - 0xb8], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x100166ee
mov esi, dword [ebp - 0xb8]
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 0x10016719
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xb8]
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.0x100107c2
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.1000e520
add esp, 0x1c
test eax, eax
je 0x10016610
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
call fcn.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
nop word [eax + eax]
cmp edi, dword [ebp - 0x98]
jge case.default.0x100107c2
mov ecx, dword [ebp - 0x80]
cmp esi, dword [ecx + 0x78]
jae 0x10016220
movzx eax, byte [esi]
inc esi
cmp ebx, eax
je case.default.0x100107c2
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.1000e520
add esp, 0x1c
test eax, eax
je 0x10016790
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
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
test ecx, ecx
je 0x10016cc3
call fcn.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov esi, dword [ebp - 0x8c]
nop dword [eax + eax]
cmp esi, dword [ebp - 0x98]
jge case.default.0x100107c2
mov edx, dword [ebp - 0x80]
mov eax, dword [edx + 0x78]
cmp edi, eax
jae 0x10016caa
cmp dword [ebp - 0xa4], 0xc
jne 0x100168a0
mov ecx, dword [edx + 0x18]
add edx, 0x1c
test ecx, ecx
je 0x10016879
push dword [ebp - 0x9c]
push edx
push eax
push ecx
push edi
call fcn.10019be0
add esp, 0x14
test eax, eax
jne case.default.0x100107c2
jmp 0x100168a0
mov ecx, dword [edx]
sub eax, ecx
cmp edi, eax
ja 0x100168a0
mov edx, dword [ebp - 0x80]
mov al, byte [edi]
cmp al, byte [edx + 0x34]
jne 0x100168a0
cmp ecx, 1
je case.default.0x100107c2
mov al, byte [edi + 1]
cmp al, byte [edx + 0x35]
je case.default.0x100107c2
movzx ecx, byte [edi]
inc edi
cmp ecx, 0xc0
jb 0x1001699d
movzx eax, byte [edi]
and eax, 0x3f
test cl, 0x20
jne 0x100168c9
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc edi
jmp 0x1001699d
test cl, 0x10
jne 0x100168ea
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 0x10016997
lea ebx, [edi + 3]
mov dword [ebp - 0xac], ebx
test cl, 8
jne 0x1001691f
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 0x10016991
movzx edx, byte [edi + 1]
lea ebx, [edi + 4]
movzx esi, byte [edi + 2]
and edx, 0x3f
mov dword [ebp - 0xb8], ebx
and esi, 0x3f
mov ebx, dword [ebp - 0xac]
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10016966
mov edi, dword [ebp - 0xb8]
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 0x10016991
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xb8]
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.0x10016d3c.15
jmp dword [eax*4 + 0x10017d3c]
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 0x88]
test edx, edx
je case.0x100169af.13
cmp edi, dword [eax + 0x78]
jb case.0x100169af.13
cmp dword [eax + 0x18], 0
jne case.0x100169af.13
cmp dword [eax + 0x1c], 2
jne case.0x100169af.13
movzx eax, byte [eax + 0x34]
cmp ecx, eax
jne case.0x100169af.13
mov eax, dword [ebp - 0x80]
mov dword [eax + 0x64], 1
cmp edx, 1
jg 0x10016f3d
jmp case.0x100169af.13
cmp ecx, 0x85
ja 0x10016a40
je case.0x10016a1e.11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x100107c2
jmp dword [ecx*4 + 0x10017d7c]
mov eax, dword [ebp - 0x80]
cmp edi, dword [eax + 0x78]
jae case.0x100169af.13
cmp byte [edi], 0xa
jne case.0x100169af.13
inc edi
jmp case.0x100169af.13
sub ecx, 0x2028
je case.0x10016a1e.11
sub ecx, 1
jne case.default.0x100107c2
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x68], 0
jne case.default.0x100107c2
jmp case.0x100169af.13
cmp ecx, 0x2000
ja 0x10016aa7
je case.default.0x100107c2
cmp ecx, 0xa0
ja 0x10016a90
je case.default.0x100107c2
cmp ecx, 9
je case.default.0x100107c2
cmp ecx, 0x20
jmp 0x10016c60
cmp ecx, 0x1680
je case.default.0x100107c2
cmp ecx, 0x180e
jmp 0x10016c60
cmp ecx, 0x3000
ja case.0x100169af.13
je case.default.0x100107c2
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x100169af.13
movzx eax, byte [ecx + 0x10017d94]
jmp dword [eax*4 + 0x10017d8c]
cmp ecx, 0x2000
ja 0x10016b26
je case.0x100169af.13
cmp ecx, 0xa0
ja 0x10016b09
je case.0x100169af.13
cmp ecx, 9
je case.0x100169af.13
cmp ecx, 0x20
jne case.default.0x100107c2
jmp case.0x100169af.13
cmp ecx, 0x1680
je case.0x100169af.13
cmp ecx, 0x180e
jne case.default.0x100107c2
jmp case.0x100169af.13
cmp ecx, 0x3000
ja case.default.0x100107c2
je case.0x100169af.13
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x100107c2
movzx eax, byte [ecx + 0x10017dfc]
jmp dword [eax*4 + 0x10017df4]
cmp ecx, 0x85
ja 0x10016b76
je case.default.0x100107c2
add ecx, 0xfffffff6
cmp ecx, 3
ja case.0x100169af.13
jmp dword [ecx*4 + 0x10017e5c]
sub ecx, 0x2028
je case.default.0x100107c2
sub ecx, 1
jmp 0x10016c60
cmp ecx, 0x85
ja 0x10016bab
je case.0x100169af.13
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x100107c2
jmp dword [ecx*4 + 0x10017e6c]
sub ecx, 0x2028
je case.0x100169af.13
sub ecx, 1
jne case.default.0x100107c2
jmp case.0x100169af.13
cmp ecx, 0x100
jae case.0x100169af.13
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne case.default.0x100107c2
jmp case.0x100169af.13
cmp ecx, 0x100
jae case.default.0x100107c2
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jmp 0x10016c60
cmp ecx, 0x100
jae case.0x100169af.13
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jne case.default.0x100107c2
jmp case.0x100169af.13
cmp ecx, 0x100
jae case.default.0x100107c2
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jmp 0x10016c60
cmp ecx, 0x100
jae case.0x100169af.13
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
jne case.default.0x100107c2
jmp case.0x100169af.13
cmp ecx, 0x100
jae case.default.0x100107c2
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
je case.default.0x100107c2
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.1000e520
add esp, 0x1c
test eax, eax
je 0x10016830
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
mov eax, dword [edx + 0x88]
test eax, eax
je case.default.0x100107c2
cmp edi, dword [edx + 0x84]
jmp 0x100160d1
call fcn.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov esi, dword [ebp - 0x8c]
nop dword [eax]
cmp esi, dword [ebp - 0x98]
jge case.default.0x100107c2
mov edx, dword [ebp - 0x80]
mov eax, dword [edx + 0x78]
cmp edi, eax
jae 0x10016f13
cmp dword [ebp - 0xa4], 0xc
jne 0x10016d26
mov ecx, dword [edx + 0x18]
add edx, 0x1c
test ecx, ecx
je 0x10016d43
push 0
push edx
push eax
push ecx
push edi
call fcn.10019be0
add esp, 0x14
test eax, eax
jne case.default.0x100107c2
mov edx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x88]
movzx ecx, byte [edi]
add eax, 0xfffffffa
inc edi
cmp eax, 0xf
ja case.0x10016d3c.15
jmp dword [eax*4 + 0x10017e7c]
mov ecx, dword [edx]
sub eax, ecx
cmp edi, eax
ja 0x10016d23
mov edx, dword [ebp - 0x80]
mov al, byte [edi]
cmp al, byte [edx + 0x34]
jne 0x10016d26
cmp ecx, 1
je case.default.0x100107c2
mov al, byte [edi + 1]
cmp al, byte [edx + 0x35]
je case.default.0x100107c2
jmp 0x10016d26
mov edx, dword [edx + 0x88]
test edx, edx
je case.0x10016d3c.13
mov eax, dword [ebp - 0x80]
cmp edi, dword [eax + 0x78]
jb case.0x10016d3c.13
cmp dword [eax + 0x18], 0
jne case.0x10016d3c.13
cmp dword [eax + 0x1c], 2
jne case.0x10016d3c.13
movzx eax, byte [eax + 0x34]
cmp ecx, eax
jne case.0x10016d3c.13
mov eax, dword [ebp - 0x80]
mov dword [eax + 0x64], 1
cmp edx, 1
jg 0x10016f3d
jmp case.0x10016d3c.13
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.default.0x100107c2
movzx eax, byte [ecx + 0x10017ecc]
jmp dword [eax*4 + 0x10017ebc]
cmp edi, dword [edx + 0x78]
jae case.0x10016d3c.13
cmp byte [edi], 0xa
jne case.0x10016d3c.13
inc edi
jmp case.0x10016d3c.13
cmp dword [edx + 0x68], 0
jne case.default.0x100107c2
jmp case.0x10016d3c.13
cmp ecx, 9
je case.default.0x100107c2
cmp ecx, 0x20
je case.default.0x100107c2
cmp ecx, 0xa0
jmp 0x10016eb9
cmp ecx, 9
je case.0x10016d3c.13
cmp ecx, 0x20
je case.0x10016d3c.13
cmp ecx, 0xa0
jne case.default.0x100107c2
jmp case.0x10016d3c.13
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x10016d3c.13
movzx eax, byte [ecx + 0x10017f50]
jmp dword [eax*4 + 0x10017f48]
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.default.0x100107c2
movzx eax, byte [ecx + 0x10017fd4]
jmp dword [eax*4 + 0x10017fcc]
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 4
jne case.default.0x100107c2
jmp case.0x10016d3c.13
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 4
jmp 0x10016eb9
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 1
jne case.default.0x100107c2
jmp case.0x10016d3c.13
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 1
jmp 0x10016eb9
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 0x10
jne case.default.0x100107c2
jmp case.0x10016d3c.13
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 0x10
je case.default.0x100107c2
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.1000e520
add esp, 0x1c
test eax, eax
je 0x10016ce0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
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.10021896
mov esp, ebp
pop ebp
ret
mov eax, dword [edx + 0x88]
test eax, eax
je case.default.0x100107c2
cmp edi, dword [edx + 0x84]
jbe case.default.0x100107c2
mov dword [edx + 0x64], 1
cmp eax, 1
jle case.default.0x100107c2
pop edi
pop esi
mov eax, 0xfffffff4
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
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 - 0xb8], ebx
mov ebx, dword [edi + 0x90]
lea ecx, [ecx + eax*4]
mov eax, dword [ecx]
mov dword [ebp - 0xb4], 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 + eax]
cmp dword [ebp - 0xa4], 0x88
jb 0x10016fb6
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 + 0x1003ea28]
push dword [ebp - 0xa0]
add eax, ecx
push eax
push esi
call fcn.1000e520
mov edi, eax
add esp, 0x1c
cmp edi, 0xfffffc1b
je 0x10017077
cmp edi, 0xfffffc20
jne 0x10017033
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 0x100170b0
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x1001702f
cmp byte [edx], 0x77
jne 0x100170b0
xor edi, edi
jmp 0x1001703d
test edi, edi
jne 0x100170b0
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 0x1001707a
mov edi, edx
jmp 0x10016fa0
mov edx, dword [ebp - 0x80]
mov eax, dword [edx + 0xc]
mov edx, dword [ebp - 0xc8]
mov ebx, dword [ebp - 0x80]
mov esi, dword [ebp - 0xb8]
lea ecx, [edx + edx]
mov dword [eax + ecx*4], esi
mov eax, dword [ebx + 0xc]
mov esi, dword [ebp - 0x94]
mov dword [eax + ecx*4 + 4], esi
mov ecx, dword [ebx + 0x10]
mov eax, dword [ebx + 0xc]
sub ecx, edx
mov edx, dword [ebp - 0xb4]
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.10021896
mov esp, ebp
pop ebp
ret
cmp edi, 0xfffffc1b
jne 0x10017111
mov edx, dword [ebp - 0x84]
mov al, byte [edx]
cmp al, 0x81
je 0x10017103
cmp al, 0x77
jne 0x100170f4
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 0x100170e0
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.10021896
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 + 0x1003ea28]
push dword [ebp - 0xa0]
add eax, edx
add ecx, eax
push ecx
push esi
call fcn.1000e520
mov edx, eax
add esp, 0x1c
cmp edx, 1
je 0x1001718b
cmp edx, 0xfffffc19
je 0x1001718b
cmp edx, 0xfffffc1a
jne 0x100171ad
cmp dword [ebx + 0xac], 0
jne 0x100171ad
mov dword [ebx + 0xac], edi
pop edi
pop esi
mov eax, edx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
cmp edx, 0xfffffc1f
jne 0x1001719a
mov eax, dword [ebx + 0x7c]
mov cl, byte [edi]
cmp cl, byte [eax]
jne 0x100171d8
test cl, cl
je 0x100171d4
mov cl, byte [edi + 1]
cmp cl, byte [eax + 1]
jne 0x100171d8
add edi, 2
add eax, 2
test cl, cl
jne 0x100171b8
xor eax, eax
jmp 0x100171dd
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1001719a
pop edi
mov dword [ebx + 0x7c], esi
mov eax, 0xfffffc1e
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [edx + 0x1003ea28]
add eax, dword [ebp - 0x84]
push edi
push ebx
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000e520
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.10021896
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [edx + 0x1003ea28]
add eax, dword [ebp - 0x84]
push edi
push ebx
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000e520
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.10021896
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 + 0x1003ea28]
push dword [ebp - 0xa0]
add eax, edx
add ecx, eax
push ecx
push esi
call fcn.1000e520
mov ecx, eax
add esp, 0x1c
cmp ecx, 1
je 0x100172e7
cmp ecx, 0xfffffc19
jne 0x100172f6
cmp dword [ebx + 0xac], 0
jne 0x100172f6
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.10021896
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [edx + 0x1003ea28]
add eax, dword [ebp - 0x84]
push edi
push ebx
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000e520
add esp, 0x1c
test eax, eax
jne 0x100158c9
mov dword [edi + 0x7c], esi
mov eax, 0xfffffc1e
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb0]
movzx eax, byte [edx + 0x1003ea28]
add eax, dword [ebp - 0x84]
push edi
push ebx
push dword [ebp - 0xa0]
push eax
push esi
call fcn.1000e520
add esp, 0x1c
test eax, eax
je 0x10017414
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10021896
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 + 0x1003ea28]
push dword [ebp - 0xa0]
add eax, edx
add ecx, eax
push ecx
push esi
call fcn.1000e520
add esp, 0x1c
cmp eax, 1
je 0x100173fb
cmp eax, 0xfffffc19
jne 0x1001740a
cmp dword [ebx + 0xac], 0
jne 0x1001740a
mov dword [ebx + 0xac], edi
test eax, eax
jne 0x100158c9
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.10021896
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0xa0]
cmp esi, ecx
jne 0x1001746f
cmp edx, 0x9f
je 0x1001746f
cmp dword [edi + 0xa4], 0
jne 0x1001746f
cmp dword [edi + 0x5c], 0
jne case.default.0x100107c2
cmp dword [edi + 0x60], 0
je 0x1001746f
mov eax, dword [edi + 0x94]
add eax, dword [edi + 0x74]
cmp ecx, eax
je case.default.0x100107c2
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.10021896
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.10021896
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.10021896
mov esp, ebp
pop ebp
ret