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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14c
mov eax, dword [0x100f51d4]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x1c]
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], eax
mov dword [ebp - 0xb8], ecx
push ebx
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 0x9c], ebx
push esi
mov esi, dword [ebp + 8]
mov dword [ebp - 0x88], esi
test edx, edx
jne 0x1007e35d
lea eax, [ebp + 0x20]
cmp dword [ebp + 0x20], edx
jne 0x1007e344
push 1
push edx
push edx
push edx
push edx
push edx
push eax
call fcn.1007e2d0
add esp, 0x1c
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
sub eax, esi
cdq
xor eax, edx
sub eax, edx
pop esi
neg eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov ecx, dword [eax + 0x4c]
mov eax, dword [eax]
push edi
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0xc0], ecx
cmp eax, dword [edi + 4]
jae 0x100822b0
inc eax
mov dword [edi], eax
mov eax, dword [ebp + 0x20]
cmp eax, dword [edi + 8]
jae 0x10087c44
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x98], 2
jne 0x1007e3b8
mov ecx, dword [ebp - 0xb8]
mov dword [ebp - 0xe4], ecx
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0xe0], esi
mov dword [ebp - 0xb8], ecx
mov dword [eax + 0x98], 0
mov edi, eax
jmp 0x1007e3d0
mov edi, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x9c]
mov edx, dword [ebp - 0x84]
jmp 0x1007e3d0
mov cl, byte [edx]
movzx edx, cl
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0x90], edx
cmp edx, 0xa1
ja case.0x1007e402.15
movzx eax, byte [edx + 0x10087da0]
jmp dword [eax*4 + 0x10087c5c]
mov eax, dword [ebp - 0x80]
mov edi, dword [ebp - 0x80]
inc dword [eax + 0x28]
mov eax, dword [eax + 0x28]
cmp eax, dword [edi + 0x2c]
ja 0x10085de1
mov edx, dword [ebp - 0x84]
movzx eax, byte [edx]
movzx ecx, byte [eax + 0x100d2cf8]
movzx eax, byte [edx + 1]
add edx, eax
add edx, ecx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov eax, dword [ebp - 0x80]
mov ebx, esi
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0xa0], edx
mov edi, dword [eax + 0xac]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
lea eax, [edx + 3]
push dword [ebp - 0x80]
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push eax
push esi
call fcn.1007e2d0
add esp, 0x1c
cmp eax, 1
je 0x1007e564
cmp eax, 0xfffffc20
jne 0x1007e4c1
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 0x100822b8
mov ecx, dword [ebp - 0x84]
cmp byte [ecx], 0x77
je 0x1007e4c9
cmp byte [edx], 0x77
jmp 0x1007e4c3
test eax, eax
jne 0x100822b8
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 0x1007e455
mov edi, dword [ebp - 0x80]
cmp al, 0x82
je 0x1007e510
cmp al, 0x77
jne case.0x1008753f.14
jmp 0x1007e510
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 0x1007e510
mov ecx, dword [edi + 0x8c]
mov esi, dword [edi + 0x80]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x9c], ecx
mov dword [ebp - 0x88], esi
cmp al, 0x78
je 0x1007e550
cmp esi, ebx
jne 0x10085b33
mov ebx, dword [ebp - 0x9c]
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov edi, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0xb4], eax
mov al, byte [edx]
jmp 0x1007e4fa
mov ecx, dword [ebp - 0x84]
mov dword [ebp - 0xbc], 0
jmp 0x1007f112
mov ecx, dword [ebp - 0x84]
mov dword [ebp - 0xbc], 0
jmp 0x1007f12b
mov edx, dword [ebp - 0x84]
movzx eax, byte [edx + 2]
movzx edi, byte [edx + 1]
add edx, 3
shl edi, 8
or edi, eax
mov dword [ebp - 0x84], edx
mov dword [ebp - 0xa4], edi
mov al, byte [edx]
cmp al, 0x76
jne 0x1007e6d5
cmp dword [0x100f8574], 0
je 0x1007e6bc
mov ebx, dword [ebp - 0x80]
mov dword [ebp - 0x118], 2
movzx eax, byte [edx + 1]
mov dword [ebp - 0x114], eax
mov eax, dword [ebx + 0xc]
mov dword [ebp - 0x110], eax
mov eax, dword [ebx + 0x74]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebx + 0x78]
sub eax, dword [ebx + 0x74]
mov dword [ebp - 0x108], eax
mov eax, dword [ebp - 0xb4]
sub eax, dword [ebx + 0x74]
mov dword [ebp - 0x104], eax
mov eax, esi
sub eax, dword [ebx + 0x74]
mov dword [ebp - 0x100], eax
movzx ecx, byte [edx + 2]
movzx eax, byte [edx + 3]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xf0], ecx
movzx ecx, byte [edx + 4]
movzx eax, byte [edx + 5]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x9c]
cdq
sub eax, edx
mov dword [ebp - 0xec], ecx
sar eax, 1
mov dword [ebp - 0xfc], eax
mov eax, dword [ebx + 0x90]
and eax, 0xffff
mov dword [ebp - 0xf8], eax
jne 0x1007e680
mov dword [ebp - 0xf8], 0xffffffff
mov eax, dword [ebx + 0xa8]
mov dword [ebp - 0xf4], eax
mov eax, dword [ebx + 0xb0]
mov dword [ebp - 0xe8], eax
lea eax, [ebp - 0x118]
push eax
call dword [0x100f8574]
add esp, 4
test eax, eax
jg case.0x1008753f.14
js 0x100822b8
mov edx, dword [ebp - 0x84]
movzx eax, byte [0x100d2d6e]
add edx, eax
sub edi, eax
mov dword [ebp - 0x84], edx
mov dword [ebp - 0xa4], edi
mov al, byte [edx]
movzx eax, al
xor ebx, ebx
mov dword [ebp - 0xbc], eax
add eax, 0xffffff73
cmp eax, 0x10
ja case.0x1007e6f5.146
movzx eax, byte [eax + 0x10087e5c]
jmp dword [eax*4 + 0x10087e44]
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 0xa4]
test edx, edx
je case.0x1007e6f5.145
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 0x1007e7fa
cmp ecx, dword [edx + 4]
je 0x1007e7fa
xor ebx, ebx
jmp case.0x1007e6f5.145
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax + 0xa4]
mov dword [ebp - 0xa0], ecx
test ecx, ecx
je case.0x1007e6f5.145
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 0x1007e86f
mov esi, ecx
movzx ecx, byte [edx]
xor ebx, ebx
movzx eax, byte [edx + 1]
dec edi
shl ecx, 8
or ecx, eax
mov eax, dword [esi + 4]
cmp ecx, eax
sete bl
je 0x1007e7b2
mov esi, dword [ebp - 0x80]
add edx, dword [esi + 0x24]
mov esi, dword [ebp - 0xa0]
test edi, edi
jg 0x1007e787
cmp ecx, eax
mov esi, dword [ebp - 0x88]
jne 0x1007e86f
mov edx, dword [ebp - 0xbc]
movzx edi, byte [edx + 0x100d2cf8]
jmp case.0x1007e6f5.145
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [ebp - 0x9c]
jge 0x1007e735
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x1007e735
mov edx, dword [ebp - 0xbc]
mov ebx, 1
movzx edi, byte [edx + 0x100d2cf8]
jmp case.0x1007e6f5.145
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 0x1007e86f
lea esp, [esp]
movzx eax, byte [edx]
dec edi
movzx ecx, byte [edx + 1]
shl eax, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [ebp - 0x9c]
jge 0x1007e863
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x1007e7fa
mov eax, dword [ebp - 0x80]
xor ebx, ebx
add edx, dword [eax + 0x24]
test edi, edi
jg 0x1007e840
mov edi, dword [ebp - 0xa4]
mov edx, dword [ebp - 0x84]
add edx, edi
mov dword [ebp - 0x84], edx
test ebx, ebx
jne 0x10085bb1
cmp byte [edx - 3], 0x77
je 0x10085bb1
mov edi, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x9c]
jmp 0x1007e3d0
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 - 0x9c]
push dword [ebp - 0xb4]
push edx
push esi
call fcn.1007e2d0
add esp, 0x1c
cmp eax, 1
jne 0x1007e94c
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x8c]
cmp eax, dword [ebp - 0x9c]
jle 0x1007e8ea
mov dword [ebp - 0x9c], eax
mov edi, dword [ebp - 0x84]
mov ebx, 1
cmp byte [edi], 0x92
jne 0x1007e8fb
inc edi
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
jne 0x1007e924
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 0x1007e910
mov edx, dword [ebp - 0xbc]
mov ecx, 3
movzx eax, byte [edx + 0x100d2cf8]
sub ecx, eax
add edi, ecx
mov dword [ebp - 0x84], edi
movzx edi, byte [edx + 0x100d2cf8]
jmp case.0x1007e6f5.145
test eax, eax
je case.0x1007e6f5.145
cmp eax, 0xfffffc20
jne 0x100822b8
jmp case.0x1007e6f5.145
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 0x1007e9b7
or eax, 0x10000
mov dword [edi + 0x90], eax
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
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 - 0x9c]
cmp ebx, ecx
jl 0x1007e99d
mov eax, dword [edi + 0xc]
xor edi, edi
lea edx, [eax + ecx*4]
lea eax, [eax + ebx*4]
mov ecx, eax
sub ecx, edx
add ecx, 3
shr ecx, 2
cmp eax, edx
sbb eax, eax
not eax
and eax, ecx
jbe 0x1007ea0e
lea ebx, [ebx]
inc edi
mov dword [edx], 0xffffffff
lea edx, [edx + 4]
cmp edi, eax
jb 0x1007ea00
mov edx, dword [ebp - 0x84]
add ebx, 2
mov edi, dword [ebp - 0x80]
add edx, 3
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x98], 1
mov edi, dword [eax + 0xac]
jne 0x1007ea51
mov ebx, 1
mov dword [eax + 0x98], 0
jmp 0x1007ea53
xor ebx, ebx
mov edx, dword [ebp - 0x84]
lea esp, [esp]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push 0
push dword [ebp - 0x80]
lea eax, [edx + 3]
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push eax
push esi
call fcn.1007e2d0
mov edx, eax
add esp, 0x1c
cmp edx, 1
je 0x1007eb0f
cmp edx, 0xfffffc19
je 0x1007eb0f
mov eax, dword [ebp - 0x80]
mov dword [eax + 0xac], edi
cmp edx, 0xfffffc20
jne 0x1007eadc
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 0x1007f3ff
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x1007eae4
cmp byte [ecx], 0x77
jmp 0x1007eade
test edx, edx
jne 0x1007f3ff
mov edx, dword [ebp - 0x84]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov al, byte [edx + ecx]
add edx, ecx
mov dword [ebp - 0x84], edx
cmp al, 0x77
je 0x1007ea60
mov edi, dword [ebp - 0x80]
jmp 0x1007eb23
mov edi, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0xb4], eax
mov al, byte [edx]
cmp al, 0x78
je case.0x1008753f.14
test ebx, ebx
jne 0x10086062
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1007eb33
mov ebx, dword [edi + 0x8c]
add edx, 3
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x9c], ebx
jmp 0x1007e3d0
mov edx, dword [ebp - 0x80]
mov edi, dword [edi + 0xac]
cmp dword [edx + 0x98], 1
jne 0x1007eb84
mov ebx, 1
mov dword [edx + 0x98], 0
jmp 0x1007eb86
xor ebx, ebx
mov eax, dword [ebp + 0x20]
inc eax
push eax
mov eax, dword [ebp - 0x84]
push 0
push edx
push dword [ebp - 0x9c]
add eax, 3
push dword [ebp - 0xb4]
push eax
push esi
call fcn.1007e2d0
mov edx, dword [ebp - 0x80]
mov ecx, eax
add esp, 0x1c
mov dword [edx + 0xac], edi
cmp ecx, 0xfffffc20
jg 0x1007ebf2
jne 0x1007ec48
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 0x1007ec63
cmp byte [eax], 0x77
je 0x1007ec03
cmp byte [ecx], 0x77
jne 0x1007ec63
jmp 0x1007ec03
mov eax, ecx
sub eax, 0
jne 0x10085e7a
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 0x1007eb86
mov edx, eax
test ebx, ebx
jne 0x10086062
mov edi, dword [ebp - 0x80]
add edx, 3
mov ebx, dword [ebp - 0x9c]
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp ecx, 0xfffffc19
je case.0x1008753f.14
lea eax, [ecx + 0x3e4]
cmp eax, 3
ja 0x10085e83
mov edx, dword [ebp - 0x84]
lea esp, [esp]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1007ec70
jmp 0x1007ec29
mov edx, dword [ebp - 0x84]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp dword [ebp - 0xc0], 0
je 0x1007ece4
test ecx, ecx
je 0x1007ecf5
mov edx, dword [edi + 0x74]
lea esp, [esp]
dec esi
dec ecx
mov dword [ebp - 0x88], esi
cmp esi, edx
jb case.0x1008753f.14
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x1007ecd8
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x1007ecc8
mov dword [ebp - 0x88], esi
test ecx, ecx
jg 0x1007ecb0
mov edx, dword [ebp - 0x84]
jmp 0x1007ecf5
sub esi, ecx
mov dword [ebp - 0x88], esi
cmp esi, dword [edi + 0x74]
jb case.0x1008753f.14
cmp esi, dword [edi + 0x84]
jae 0x1007ed03
mov dword [edi + 0x84], esi
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp dword [0x100f8574], 0
je 0x1007edf6
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0x14c], 2
movzx eax, byte [edx + 1]
mov dword [ebp - 0x148], eax
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x144], eax
mov eax, dword [edi + 0x74]
mov dword [ebp - 0x140], eax
mov eax, dword [edi + 0x78]
sub eax, dword [edi + 0x74]
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0xb4]
sub eax, dword [edi + 0x74]
mov dword [ebp - 0x138], eax
mov eax, esi
sub eax, dword [edi + 0x74]
mov dword [ebp - 0x134], eax
movzx ecx, byte [edx + 2]
movzx eax, byte [edx + 3]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x124], ecx
movzx ecx, byte [edx + 4]
movzx eax, byte [edx + 5]
shl ecx, 8
or ecx, eax
mov eax, ebx
cdq
sub eax, edx
mov dword [ebp - 0x120], ecx
sar eax, 1
mov dword [ebp - 0x130], eax
mov eax, dword [edi + 0x90]
and eax, 0xffff
mov dword [ebp - 0x12c], eax
jne 0x1007edc0
mov dword [ebp - 0x12c], 0xffffffff
mov eax, dword [edi + 0xa8]
mov dword [ebp - 0x128], eax
mov eax, dword [edi + 0xb0]
mov dword [ebp - 0x11c], eax
lea eax, [ebp - 0x14c]
push eax
call dword [0x100f8574]
add esp, 4
test eax, eax
jg case.0x1008753f.14
js 0x100822b8
mov edx, dword [ebp - 0x84]
add edx, 6
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov edx, dword [ebp - 0x84]
movzx ebx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebx, 8
or ebx, eax
add ebx, dword [edi + 0x70]
cmp ebx, dword [edi + 0x70]
jne 0x1007ee29
xor ecx, ecx
jmp 0x1007ee36
movzx ecx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl ecx, 8
or ecx, eax
mov eax, dword [edi + 0xa4]
test eax, eax
je 0x1007ee54
cmp ecx, dword [eax + 4]
jne 0x1007ee4e
cmp esi, dword [eax + 0x14]
je 0x10085e96
mov eax, dword [eax]
test eax, eax
jne 0x1007ee40
mov dword [ebp - 0xd8], ecx
add edx, 3
mov eax, dword [edi + 0x90]
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], esi
mov eax, dword [edi + 0xa4]
mov dword [ebp - 0xdc], eax
lea eax, [ebp - 0xdc]
mov dword [edi + 0xa4], eax
mov ecx, dword [edi + 0x10]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0xd0], ecx
cmp ecx, 0x1e
jg 0x1007eea6
lea eax, [ebp - 0x7c]
mov dword [ebp - 0xd4], eax
jmp 0x1007eecb
lea eax, [ecx*4]
push eax
call dword [0x100f5218]
add esp, 4
mov dword [ebp - 0xd4], eax
test eax, eax
je 0x10085f0c
mov ecx, dword [ebp - 0xd0]
shl ecx, 2
push ecx
push dword [edi + 0xc]
push eax
call fcn.10096ab0
mov al, byte [ebx]
add esp, 0xc
mov byte [ebp - 0x91], al
cmp al, 0x88
jb 0x1007eef1
mov dword [edi + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x9c]
movzx eax, byte [eax + 0x100d2cf8]
push dword [ebp - 0xb4]
add eax, ebx
push eax
push esi
call fcn.1007e2d0
mov ecx, dword [ebp - 0xd0]
mov edi, eax
mov eax, dword [ebp - 0x80]
shl ecx, 2
push ecx
push dword [ebp - 0xd4]
push dword [eax + 0xc]
call fcn.10096ab0
mov ecx, dword [ebp - 0x80]
add esp, 0x28
mov eax, dword [ebp - 0xcc]
mov dword [ecx + 0x90], eax
mov eax, dword [ebp - 0xdc]
mov dword [ecx + 0xa4], eax
cmp edi, 1
je 0x1007efb1
cmp edi, 0xfffffc19
je 0x1007efb1
cmp edi, 0xfffffc1c
jl 0x1007ef78
cmp edi, 0xfffffc20
jle 0x10085eb8
test edi, edi
jne 0x10085ee2
mov edi, ecx
lea eax, [ebp - 0xdc]
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 0x10085eac
mov al, byte [ebp - 0x91]
jmp 0x1007eee3
mov eax, dword [ebp - 0xd4]
lea ecx, [ebp - 0x7c]
cmp eax, ecx
je 0x1007efc8
push eax
call dword [0x100f521c]
add esp, 4
mov edi, dword [ebp - 0x80]
mov esi, dword [edi + 0x80]
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0x88], esi
mov dword [ebp - 0xb4], eax
jmp 0x1007e3bf
mov edx, dword [ebp - 0x84]
jmp 0x1007eff0
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1007eff0
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov eax, dword [ebp + 0x20]
mov edi, dword [ebp - 0x84]
inc eax
push eax
push dword [ebp - 0xb8]
inc edi
push dword [ebp - 0x80]
push ebx
push dword [ebp - 0xb4]
push edi
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
lea ecx, [ecx]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x1007f040
lea edx, [edi + 3]
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
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 0x1007f074
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
lea eax, [edx + 3]
push edi
push ebx
push dword [ebp - 0xb4]
push eax
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
jmp 0x1007e3c5
mov edx, dword [ebp - 0x84]
inc edx
lea esp, [esp]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1007f0c0
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov ecx, dword [ebp - 0x84]
inc ecx
mov dword [ebp - 0xbc], 1
mov dword [ebp - 0x84], ecx
movzx edx, byte [ecx]
mov dword [ebp - 0x90], edx
cmp edx, 0x86
je 0x1007f112
cmp edx, 0x8b
jne 0x1007f12b
movzx ebx, byte [ecx + 3]
movzx eax, byte [ecx + 4]
shl ebx, 8
or ebx, eax
lea eax, [ebx + ebx]
cmp eax, dword [edi + 0x14]
jl 0x1007f2b8
mov edi, ecx
xor eax, eax
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0xa0], eax
sub edi, dword [ecx + 0x70]
mov ebx, dword [ecx + 0x90]
cmp edx, 0x88
jb 0x1007f153
mov dword [ecx + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push ecx
mov ecx, dword [ebp - 0x84]
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x100d2cf8]
add eax, ecx
push eax
push esi
call fcn.1007e2d0
mov edx, eax
add esp, 0x1c
cmp edx, 0xfffffc1a
jne 0x1007f1df
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0xa0], 1
mov eax, dword [ecx + 0x8c]
mov edx, dword [ecx + 0x70]
mov dword [ebp - 0x9c], eax
add edx, edi
mov eax, dword [ecx + 0x7c]
mov dword [ebp - 0xb4], eax
mov eax, dword [ecx + 0x80]
mov dword [ebp - 0x84], edx
cmp esi, eax
je 0x1007f260
mov edx, dword [ebp - 0x90]
mov esi, eax
mov dword [ebp - 0x88], esi
jmp 0x1007f141
cmp edx, 0xfffffc20
jne 0x1007f21c
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 0x1007f3ff
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x1007f224
cmp byte [ecx], 0x77
jmp 0x1007f21e
test edx, edx
jne 0x1007f3ff
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
cmp byte [edx], 0x77
jne 0x1007f28b
mov ecx, dword [ebp - 0x80]
mov edx, dword [ebp - 0x90]
mov dword [ecx + 0x90], ebx
jmp 0x1007f141
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1007f260
mov edi, dword [ebp - 0x80]
add edx, 3
mov ebx, dword [ebp - 0x9c]
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp dword [ebp - 0xa0], 0
jne 0x1007f2a1
cmp dword [ebp - 0xbc], 0
je case.0x1008753f.14
mov edi, dword [ebp - 0x80]
add edx, 3
mov ebx, dword [ebp - 0x9c]
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
sub ecx, dword [edi + 0x70]
shl eax, 2
mov dword [ebp - 0xa4], ecx
mov ecx, dword [edi + 0xc]
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xa0], 0
mov edx, dword [eax + ecx]
mov eax, dword [eax + ecx + 4]
mov dword [ebp - 0x98], eax
mov eax, dword [edi + 0x10]
mov edi, dword [edi + 0x90]
sub eax, ebx
mov dword [ebp - 0xac], edx
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0x8c], eax
mov ecx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x80]
mov edx, esi
sub edx, dword [ecx + 0x74]
mov ecx, dword [ecx + 0x10]
sub ecx, ebx
cmp dword [ebp - 0x90], 0x88
mov eax, dword [eax + 0xc]
mov dword [eax + ecx*4], edx
jb 0x1007f32d
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 - 0xb8]
push dword [ebp - 0x80]
movzx eax, byte [ecx]
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
movzx eax, byte [eax + 0x100d2cf8]
add eax, ecx
push eax
push esi
call fcn.1007e2d0
mov edx, eax
add esp, 0x1c
cmp edx, 0xfffffc1a
jne 0x1007f3c0
mov ecx, dword [ebp - 0x80]
mov edx, 1
mov dword [ebp - 0xa0], edx
mov eax, dword [ecx + 0x8c]
mov edi, dword [ecx + 0x90]
mov dword [ebp - 0x9c], eax
mov eax, dword [ecx + 0x70]
add eax, dword [ebp - 0xa4]
mov dword [ebp - 0x84], eax
mov eax, dword [ecx + 0x7c]
mov dword [ebp - 0xb4], eax
mov eax, dword [ecx + 0x80]
cmp esi, eax
je 0x1007f4b4
mov esi, eax
mov dword [ebp - 0x88], esi
jmp 0x1007f301
cmp edx, 0xfffffc20
jne 0x1007f412
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 0x1007f3ff
mov esi, dword [ebp - 0x84]
cmp byte [esi], 0x77
mov esi, dword [ebp - 0x88]
je 0x1007f419
cmp byte [ecx], 0x77
je 0x1007f419
pop edi
pop esi
mov eax, edx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
test edx, edx
jne 0x1007f3ff
mov eax, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
mov dword [eax + 0x90], edi
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [ebp - 0x84], edx
cmp byte [edx], 0x77
je 0x1007f2fe
mov edx, dword [ebp - 0xa0]
test edx, edx
jne 0x1007f486
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0xc4]
mov edi, dword [ebp - 0xac]
mov eax, dword [eax + 0xc]
mov dword [ecx + eax], edi
mov eax, dword [ebp - 0x80]
mov edi, dword [ebp - 0x98]
mov eax, dword [eax + 0xc]
mov dword [ecx + eax + 4], edi
mov eax, dword [ebp - 0x80]
mov edi, dword [ebp - 0x8c]
mov ecx, dword [eax + 0x10]
mov eax, dword [eax + 0xc]
sub ecx, ebx
mov dword [eax + ecx*4], edi
cmp dword [ebp - 0xbc], 0
jne 0x1007f497
test edx, edx
je case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov edi, dword [ebp - 0x80]
add edx, 3
mov ebx, dword [ebp - 0x9c]
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov ebx, dword [ebp - 0x84]
lea ebx, [ebx]
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x1007f4c0
mov dword [ebp - 0x84], ebx
jmp 0x1007f486
mov edx, dword [ebp - 0x84]
mov edi, edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edi, ecx
mov dword [ebp - 0x90], edi
mov al, byte [edi]
cmp al, 0x88
jae 0x1007f50f
cmp al, 0x81
je 0x1007f50f
mov dword [ebp - 0xa0], 0
jmp 0x1007f526
mov edx, dword [ebp - 0xb8]
mov ecx, dword [edx + 4]
mov edx, dword [edx]
mov dword [ebp - 0xa0], ecx
mov dword [ebp - 0xb8], edx
cmp al, 0x7d
jb 0x1007f532
cmp al, 0x80
jbe 0x1008604a
cmp al, 0x82
je 0x1008604a
cmp al, 0x85
je 0x1007f54e
cmp al, 0x8a
je 0x1007f54e
cmp al, 0x86
je 0x1007f54e
cmp al, 0x8b
jne 0x1007f61a
movzx ebx, byte [edi + 3]
movzx eax, byte [edi + 4]
mov edx, dword [ebp - 0x80]
shl ebx, 8
or ebx, eax
mov eax, dword [edx + 0xa4]
lea edi, [ebx + ebx]
test eax, eax
je 0x1007f574
cmp dword [eax + 4], ebx
je 0x10085f22
mov eax, dword [edx + 0x90]
and eax, 0xffff0000
or eax, ebx
mov dword [edx + 0x90], eax
cmp edi, dword [edx + 0x14]
jl 0x1007f5a8
mov edi, dword [ebp - 0x90]
or eax, 0x10000
mov ebx, dword [ebp - 0x9c]
mov dword [edx + 0x90], eax
jmp 0x1007f61d
mov ecx, dword [ebp - 0x9c]
cmp edi, ecx
jle 0x1007f5e5
mov eax, dword [edx + 0xc]
lea edx, [eax + ecx*4]
lea eax, [eax + edi*4]
xor edi, edi
mov ecx, eax
sub ecx, edx
add ecx, 3
shr ecx, 2
cmp eax, edx
sbb eax, eax
not eax
and eax, ecx
jbe 0x1007f5df
inc edi
mov dword [edx], 0xffffffff
lea edx, [edx + 4]
cmp edi, eax
jb 0x1007f5d1
mov edx, dword [ebp - 0x80]
lea edi, [ebx + ebx]
mov eax, dword [edx + 0x10]
mov ecx, dword [edx + 0xc]
sub eax, ebx
mov ebx, dword [ebp - 0x9c]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edi*4], eax
mov ecx, esi
mov eax, dword [edx + 0xc]
sub ecx, dword [edx + 0x74]
mov dword [eax + edi*4 + 4], ecx
cmp ebx, edi
jg 0x1007f612
lea ebx, [edi + 2]
mov dword [ebp - 0x9c], ebx
mov edi, dword [ebp - 0x90]
jmp 0x1007f61d
mov edx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x84]
mov al, byte [ecx]
cmp al, 0x7b
je 0x1008601f
cmp al, 0x78
je 0x1007f63d
cmp esi, dword [ebp - 0xa0]
jne 0x10085bc9
add ecx, 3
cmp byte [edi], 0x81
mov dword [ebp - 0x84], ecx
je 0x10085fdb
mov edi, dword [ebp - 0x80]
jmp 0x1007e3c5
cmp dword [edi + 0x44], 0
je case.0x1007e402.1
cmp esi, dword [edi + 0x74]
je case.0x1008753f.14
cmp esi, dword [edi + 0x74]
jne case.0x1008753f.14
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp dword [edi + 0x44], 0
je 0x1007f690
cmp esi, dword [edi + 0x74]
je case.0x1008753f.14
mov ecx, dword [edi + 0x74]
cmp esi, ecx
je 0x1007f70c
cmp esi, dword [edi + 0x78]
je case.0x1008753f.14
mov edx, dword [edi + 0x18]
test edx, edx
je 0x1007f6de
cmp esi, ecx
jbe case.0x1008753f.14
push dword [ebp - 0xc0]
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.100892e0
add esp, 0x14
test eax, eax
je case.0x1008753f.14
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov edx, dword [edi + 0x1c]
lea eax, [ecx + edx]
cmp esi, eax
jb case.0x1008753f.14
mov ecx, esi
sub ecx, edx
mov al, byte [ecx]
cmp al, byte [edi + 0x34]
jne case.0x1008753f.14
cmp edx, 1
je 0x1007f70c
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x35]
jne case.0x1008753f.14
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov eax, dword [edi + 0x94]
add eax, dword [edi + 0x74]
cmp esi, eax
jne case.0x1008753f.14
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0xb4], esi
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x1007f7d8
mov ecx, dword [edi + 0x18]
add edi, 0x1c
test ecx, ecx
je 0x1007f799
push dword [ebp - 0xc0]
push edi
push eax
push ecx
push esi
call fcn.10089160
add esp, 0x14
test eax, eax
je 0x10086078
mov edx, dword [ebp - 0x84]
mov edi, dword [ebp - 0x80]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov ecx, dword [edi]
sub eax, ecx
mov edx, dword [ebp - 0x80]
cmp esi, eax
ja 0x1008607b
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x1008607b
cmp ecx, 1
je 0x1007f7c4
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
jne 0x1008607b
mov edi, edx
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp dword [edi + 0x48], 0
jne case.0x1008753f.14
cmp dword [edi + 0x88], 0
je 0x1007f7c6
cmp esi, dword [edi + 0x84]
jbe 0x1007f7c6
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp dword [edi + 0x48], 0
jne case.0x1008753f.14
cmp dword [edi + 0x58], 0
je case.0x1007e402.23
cmp esi, dword [edi + 0x78]
jb case.0x1008753f.14
cmp dword [edi + 0x88], 0
je 0x1007f70c
cmp esi, dword [edi + 0x84]
jbe 0x1007f70c
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x1007f832
mov eax, dword [edi + 0x18]
add edi, 0x1c
test eax, eax
je 0x1007f8a4
push dword [ebp - 0xc0]
push edi
push ecx
push eax
push esi
call fcn.10089160
add esp, 0x14
test eax, eax
je 0x1007f8cf
mov eax, dword [ebp - 0x80]
mov edx, dword [edi]
mov edi, eax
mov ecx, dword [eax + 0x78]
jmp 0x1007f8c5
mov edx, dword [edi]
mov eax, ecx
sub eax, edx
cmp esi, eax
ja 0x1007f8cf
mov edi, dword [ebp - 0x80]
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x1007f8cf
cmp edx, 1
je 0x1007f8c5
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
jne 0x1007f8cf
sub ecx, edx
cmp esi, ecx
je 0x1007f832
mov ecx, dword [ebp - 0x80]
cmp dword [ecx + 0x88], 0
je case.0x1008753f.14
lea eax, [esi + 1]
cmp eax, dword [ecx + 0x78]
jb case.0x1008753f.14
cmp dword [ecx + 0x18], 0
jne case.0x1008753f.14
cmp dword [ecx + 0x1c], 2
jne case.0x1008753f.14
mov al, byte [esi]
cmp al, byte [ecx + 0x34]
jne case.0x1008753f.14
mov dword [ecx + 0x64], 1
cmp dword [ecx + 0x88], 1
jmp 0x100876b3
cmp dword [ebp - 0xc0], 0
mov eax, dword [edi + 0x74]
je 0x1007fb4f
cmp esi, eax
je 0x1007fa57
mov al, byte [esi - 1]
lea ecx, [esi - 1]
and al, 0xc0
cmp al, 0x80
jne 0x1007f94b
mov al, byte [ecx - 1]
dec ecx
and al, 0xc0
cmp al, 0x80
je 0x1007f941
cmp ecx, dword [edi + 0x84]
jae 0x1007f959
mov dword [edi + 0x84], ecx
movzx edx, byte [ecx]
cmp edx, 0xc0
jb 0x1007fa3c
mov al, byte [ecx + 1]
test dl, 0x20
jne 0x1007f97b
and edx, 0x1f
movzx eax, al
jmp 0x1007fa34
mov bl, byte [ecx + 2]
test dl, 0x10
jne 0x1007f999
movzx ecx, al
and edx, 0xf
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx eax, bl
jmp 0x1007fa34
mov bh, byte [ecx + 3]
test dl, 8
jne 0x1007f9c2
movzx ecx, al
and edx, 7
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx eax, bl
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, bh
jmp 0x1007fa34
movzx eax, al
and eax, 0x3f
movzx edi, bl
mov dword [ebp - 0x90], eax
and edi, 0x3f
movzx eax, byte [ecx + 4]
and eax, 0x3f
movzx ebx, bh
and ebx, 0x3f
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0x90]
test dl, 4
jne 0x1007fa12
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp - 0xa0]
jmp 0x1007fa3c
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 5]
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp - 0xa0]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x1007fa57
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x90], 1
test byte [edx + eax], 0x10
jne 0x1007fa61
mov dword [ebp - 0x90], 0
cmp esi, dword [edi + 0x78]
jae 0x1007fb8c
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x1007fb30
mov al, byte [esi + 1]
test dl, 0x20
jne 0x1007fa8c
and edx, 0x1f
movzx eax, al
jmp 0x1007fb28
mov bl, byte [esi + 2]
test dl, 0x10
jne 0x1007faaa
and edx, 0xf
movzx eax, al
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, bl
jmp 0x1007fb28
mov bh, byte [esi + 3]
test dl, 8
jne 0x1007fad0
movzx ecx, al
and edx, 7
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx eax, bl
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, bh
jmp 0x1007fb28
movzx ecx, bl
movzx edi, bh
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
movzx eax, al
and ebx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x1007fb0a
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
jmp 0x1007fb30
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, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x1007fbb1
mov eax, dword [edi + 0x40]
test byte [edx + eax], 0x10
je 0x1007fbb1
mov ecx, 1
jmp 0x1007fbc5
cmp esi, eax
jne 0x1007fb5f
mov dword [ebp - 0x90], 0
jmp 0x1007fb87
cmp esi, dword [edi + 0x84]
ja 0x1007fb70
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 - 0x90], eax
cmp esi, dword [edi + 0x78]
jb 0x1007fbb5
cmp dword [edi + 0x88], 0
je 0x1007fbb1
cmp esi, dword [edi + 0x84]
jbe 0x1007fbb1
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
xor ecx, ecx
jmp 0x1007fbc5
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 0x1007fbe5
xor eax, eax
cmp ecx, dword [ebp - 0x90]
sete al
jmp 0x1007fbf0
xor eax, eax
cmp ecx, dword [ebp - 0x90]
setne al
test eax, eax
jne case.0x1008753f.14
mov ebx, dword [ebp - 0x9c]
jmp 0x1007e3d0
mov edx, dword [edi + 0x18]
mov ecx, dword [edi + 0x78]
test edx, edx
je 0x1007fc30
cmp esi, ecx
jae 0x1007fc55
push dword [ebp - 0xc0]
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.10089160
add esp, 0x14
test eax, eax
jne case.0x1008753f.14
jmp 0x1007fc55
mov edx, dword [edi + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x1007fc55
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x1007fc55
cmp edx, 1
je case.0x1008753f.14
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
je case.0x1008753f.14
cmp dword [edi + 0x88], 0
je case.0x1007e402.13
lea eax, [esi + 1]
cmp eax, dword [edi + 0x78]
jb case.0x1007e402.13
cmp dword [edi + 0x18], 0
jne case.0x1007e402.13
cmp dword [edi + 0x1c], 2
jne case.0x1007e402.13
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne case.0x1007e402.13
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x100860c5
inc esi
cmp dword [ebp - 0xc0], 0
mov dword [ebp - 0x88], esi
je 0x1007f70c
cmp esi, ecx
jae 0x1007f70c
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x1007fcc1
inc esi
cmp esi, ecx
jb 0x1007fcb4
mov edx, dword [ebp - 0x84]
inc edx
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp esi, dword [edi + 0x78]
jae 0x100860c5
mov edx, dword [ebp - 0x84]
inc esi
inc edx
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp esi, dword [edi + 0x78]
jae 0x100860c5
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xc0], 0
mov dword [ebp - 0x88], esi
je 0x1007fe1f
cmp ecx, 0xc0
jb 0x1007fe1f
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x1007fd44
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x1007fe19
mov dl, byte [edx]
test cl, 0x10
jne 0x1007fd66
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1007fe16
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0x90], ebx
mov byte [ebp - 0x91], dh
test cl, 8
jne 0x1007fda2
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x1007fe16
movzx edi, byte [ebp - 0x91]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x90]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x1007fdeb
mov esi, dword [ebp - 0xa0]
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 0x1007fe16
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x88], esi
cmp ecx, 0x100
jae 0x1007fe34
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
jne case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp esi, dword [edi + 0x78]
jae 0x100860c5
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xc0], 0
mov dword [ebp - 0x88], esi
je 0x1007ff70
cmp ecx, 0xc0
jb 0x1007ff70
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x1007fe95
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x1007ff6a
mov dl, byte [edx]
test cl, 0x10
jne 0x1007feb7
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1007ff67
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0x90], ebx
mov byte [ebp - 0x91], dh
test cl, 8
jne 0x1007fef3
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x1007ff67
movzx edi, byte [ebp - 0x91]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x90]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x1007ff3c
mov esi, dword [ebp - 0xa0]
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 0x1007ff67
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x88], esi
cmp ecx, 0xff
ja case.0x1008753f.14
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
je case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp esi, dword [edi + 0x78]
jae 0x100860c5
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xc0], 0
mov dword [ebp - 0x88], esi
je 0x100800c5
cmp ecx, 0xc0
jb 0x100800c5
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x1007ffea
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x100800bf
mov dl, byte [edx]
test cl, 0x10
jne 0x1008000c
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x100800bc
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0x90], ebx
mov byte [ebp - 0x91], dh
test cl, 8
jne 0x10080048
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x100800bc
movzx edi, byte [ebp - 0x91]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x90]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10080091
mov esi, dword [ebp - 0xa0]
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 0x100800bc
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x88], esi
cmp ecx, 0x100
jae 0x1007fe34
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
jmp 0x1007fe2e
cmp esi, dword [edi + 0x78]
jae 0x100860c5
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xc0], 0
mov dword [ebp - 0x88], esi
je 0x10080201
cmp ecx, 0xc0
jb 0x10080201
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10080126
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x100801fb
mov dl, byte [edx]
test cl, 0x10
jne 0x10080148
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x100801f8
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0x90], ebx
mov byte [ebp - 0x91], dh
test cl, 8
jne 0x10080184
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x100801f8
movzx edi, byte [ebp - 0x91]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x90]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x100801cd
mov esi, dword [ebp - 0xa0]
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 0x100801f8
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x88], esi
cmp ecx, 0xff
ja case.0x1008753f.14
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
je case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp esi, dword [edi + 0x78]
jae 0x100860c5
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xc0], 0
mov dword [ebp - 0x88], esi
je 0x10080356
cmp ecx, 0xc0
jb 0x10080356
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x1008027b
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x10080350
mov dl, byte [edx]
test cl, 0x10
jne 0x1008029d
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1008034d
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0x90], ebx
mov byte [ebp - 0x91], dh
test cl, 8
jne 0x100802d9
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x1008034d
movzx edi, byte [ebp - 0x91]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x90]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10080322
mov esi, dword [ebp - 0xa0]
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 0x1008034d
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x88], esi
cmp ecx, 0x100
jae 0x1007fe34
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jmp 0x1007fe2e
cmp esi, dword [edi + 0x78]
jae 0x100860c5
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xc0], 0
mov dword [ebp - 0x88], esi
je 0x10080492
cmp ecx, 0xc0
jb 0x10080492
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x100803b7
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x1008048c
mov dl, byte [edx]
test cl, 0x10
jne 0x100803d9
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10080489
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0x90], ebx
mov byte [ebp - 0x91], dh
test cl, 8
jne 0x10080415
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x10080489
movzx edi, byte [ebp - 0x91]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x90]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x1008045e
mov esi, dword [ebp - 0xa0]
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 0x10080489
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x88], esi
cmp ecx, 0xff
ja case.0x1008753f.14
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov eax, dword [edi + 0x78]
mov dword [ebp - 0x90], eax
cmp esi, eax
jae 0x100860c5
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xc0], 0
mov dword [ebp - 0x88], esi
je 0x100805f5
cmp ecx, 0xc0
jb 0x100805f5
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10080514
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x100805e9
mov dl, byte [edx]
test cl, 0x10
jne 0x10080536
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x100805e6
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0xbc], ebx
mov byte [ebp - 0x91], dh
test cl, 8
jne 0x10080572
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x100805e6
movzx edi, byte [ebp - 0x91]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xbc]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x100805bb
mov esi, dword [ebp - 0xa0]
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 0x100805e6
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x88], esi
cmp ecx, 0xd
ja 0x10080688
je 0x10080617
cmp ecx, 0xa
je 0x1007fe34
jbe case.0x1008753f.14
cmp ecx, 0xc
jmp 0x10080699
cmp esi, eax
jb 0x10080660
cmp dword [edi + 0x88], 0
je 0x1007fe34
cmp esi, dword [edi + 0x84]
jbe 0x1007fe34
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp byte [esi], 0xa
jne 0x1007fe34
mov edx, dword [ebp - 0x84]
inc esi
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp ecx, 0x85
je 0x1008069f
lea eax, [ecx - 0x2028]
cmp eax, 1
ja case.0x1008753f.14
cmp dword [edi + 0x68], 0
jmp 0x1007fe2e
cmp esi, dword [edi + 0x78]
jae 0x100860c5
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xc0], 0
mov dword [ebp - 0x88], esi
je 0x100807cc
cmp ecx, 0xc0
jb 0x100807cc
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x100806f1
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x100807c6
mov dl, byte [edx]
test cl, 0x10
jne 0x10080713
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x100807c3
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0x90], ebx
mov byte [ebp - 0x91], dh
test cl, 8
jne 0x1008074f
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x100807c3
movzx edi, byte [ebp - 0x91]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x90]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10080798
mov esi, dword [ebp - 0xa0]
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 0x100807c3
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x88], esi
cmp ecx, 0x180e
ja 0x10080836
je case.0x1008753f.14
cmp ecx, 0xa0
ja 0x10080812
je case.0x1008753f.14
cmp ecx, 9
je case.0x1008753f.14
cmp ecx, 0x20
je case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp ecx, 0x1680
je case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp ecx, 0x205f
ja 0x10080880
je case.0x1008753f.14
cmp ecx, 0x2000
jb 0x1007fe34
cmp ecx, 0x200a
jbe case.0x1008753f.14
cmp ecx, 0x202f
je case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp ecx, 0x3000
je case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp esi, dword [edi + 0x78]
jae 0x100860c5
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xc0], 0
mov dword [ebp - 0x88], esi
je 0x100809c8
cmp ecx, 0xc0
jb 0x100809c8
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x100808ed
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x100809c2
mov dl, byte [edx]
test cl, 0x10
jne 0x1008090f
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x100809bf
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0x90], ebx
mov byte [ebp - 0x91], dh
test cl, 8
jne 0x1008094b
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x100809bf
movzx edi, byte [ebp - 0x91]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x90]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10080994
mov esi, dword [ebp - 0xa0]
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 0x100809bf
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x88], esi
cmp ecx, 0x180e
ja 0x10080a00
je 0x1007fe34
cmp ecx, 0xa0
ja 0x100809f5
je 0x1007fe34
cmp ecx, 9
je 0x1007fe34
cmp ecx, 0x20
jmp 0x1007fe2e
cmp ecx, 0x1680
jmp 0x1007fe2e
cmp ecx, 0x205f
ja 0x10080a31
je 0x1007fe34
cmp ecx, 0x2000
jb case.0x1008753f.14
cmp ecx, 0x200a
jbe 0x1007fe34
cmp ecx, 0x202f
jmp 0x1007fe2e
cmp ecx, 0x3000
jmp 0x1007fe2e
cmp esi, dword [edi + 0x78]
jae 0x100860c5
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xc0], 0
mov dword [ebp - 0x88], esi
je 0x10080b60
cmp ecx, 0xc0
jb 0x10080b60
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10080a85
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x10080b5a
mov dl, byte [edx]
test cl, 0x10
jne 0x10080aa7
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10080b57
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0x90], ebx
mov byte [ebp - 0x91], dh
test cl, 8
jne 0x10080ae3
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x10080b57
movzx edi, byte [ebp - 0x91]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x90]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10080b2c
mov esi, dword [ebp - 0xa0]
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 0x10080b57
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x88], esi
cmp ecx, 0x85
ja 0x10080b98
je case.0x1008753f.14
cmp ecx, 0xa
jb 0x1007fe34
cmp ecx, 0xd
jbe case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp ecx, 0x2028
jb 0x1007fe34
cmp ecx, 0x2029
jbe case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp esi, dword [edi + 0x78]
jae 0x100860c5
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0xc0], 0
mov dword [ebp - 0x88], esi
je 0x10080cec
cmp ecx, 0xc0
jb 0x10080cec
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10080c11
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x10080ce6
mov dl, byte [edx]
test cl, 0x10
jne 0x10080c33
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10080ce3
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0x90], ebx
mov byte [ebp - 0x91], dh
test cl, 8
jne 0x10080c6f
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x10080ce3
movzx edi, byte [ebp - 0x91]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x90]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10080cb8
mov esi, dword [ebp - 0xa0]
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 0x10080ce3
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, ebx
shl ecx, 6
or ecx, eax
add esi, 5
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x88], esi
cmp ecx, 0x85
ja 0x10080d1e
je 0x1007fe34
lea eax, [ecx - 0xa]
cmp eax, 3
ja case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
lea eax, [ecx - 0x2028]
cmp eax, 1
ja case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov ecx, dword [ebp - 0x84]
xor eax, eax
cmp edx, 0x74
mov edx, dword [edi + 0x24]
mov dword [ebp - 0xa0], edx
sete al
movzx ebx, byte [ecx + 3]
mov dword [ebp - 0xa4], eax
movzx eax, byte [ecx + 4]
movzx ecx, byte [ecx + 1]
shl ebx, 8
or ebx, eax
shl ecx, 8
mov eax, dword [ebp - 0x84]
movzx eax, byte [eax + 2]
or ecx, eax
mov eax, dword [edi + 0x50]
imul ecx, edx
add ecx, dword [edi + 0x30]
neg eax
sbb eax, eax
xor edi, edi
neg eax
dec eax
mov dword [ebp - 0x90], eax
test ebx, ebx
je 0x10080df2
mov edi, edi
movzx edi, byte [ecx]
dec ebx
movzx eax, byte [ecx + 1]
shl edi, 8
or edi, eax
add edi, edi
cmp edi, dword [ebp - 0x9c]
jge 0x10080dca
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0xc]
mov edx, dword [eax + edi*4]
test edx, edx
jns 0x10080de6
mov edx, dword [ebp - 0xa0]
add ecx, edx
test ebx, ebx
jg 0x10080da0
mov ebx, dword [ebp - 0x90]
mov eax, 5
mov edx, dword [ebp - 0x84]
jmp 0x10080e59
mov eax, dword [eax + edi*4 + 4]
sub eax, edx
mov dword [ebp - 0x90], eax
mov ebx, dword [ebp - 0x90]
mov eax, 5
mov edx, dword [ebp - 0x84]
jmp 0x10080e59
xor eax, eax
cmp edx, 0x72
mov edx, dword [ebp - 0x84]
sete al
mov dword [ebp - 0xa4], eax
movzx edi, byte [edx + 1]
movzx eax, byte [edx + 2]
shl edi, 8
or edi, eax
add edi, edi
cmp edi, ebx
jge 0x10080e41
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + edi*4]
test ecx, ecx
js 0x10080e41
mov ebx, dword [eax + edi*4 + 4]
sub ebx, ecx
jmp 0x10080e4e
mov eax, dword [ebp - 0x80]
mov ebx, dword [eax + 0x50]
neg ebx
sbb ebx, ebx
neg ebx
dec ebx
mov eax, 3
mov dword [ebp - 0x90], ebx
add edx, eax
mov dword [ebp - 0x84], edx
mov dl, byte [edx]
movzx ecx, dl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x10080e79
movzx eax, byte [eax + 0x10087e78]
jmp dword [eax*4 + 0x10087e70]
lea eax, [ecx - 0x62]
movsx ebx, byte [eax + 0x100d2c68]
mov ecx, eax
and ecx, 1
mov dword [ebp - 0xac], ecx
movsx ecx, byte [eax + 0x100d2c74]
mov dword [ebp - 0xbc], ecx
test ecx, ecx
jne 0x10080eb0
mov dword [ebp - 0xbc], SysReAllocString
mov edx, dword [ebp - 0x84]
mov eax, 1
jmp 0x10080f02
xor eax, eax
cmp dl, 0x69
mov edx, dword [ebp - 0x84]
sete al
mov dword [ebp - 0xac], 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 dword [ebp - 0xbc], ecx
jne 0x10080efd
mov dword [ebp - 0xbc], SysReAllocString
mov eax, 5
lea ecx, [eax + edx]
mov edx, dword [ebp - 0x90]
mov dword [ebp - 0xc4], ecx
mov dword [ebp - 0x84], ecx
test edx, edx
je 0x1007e3bc
jns 0x10080f2f
mov dword [ebp - 0x84], ecx
test ebx, ebx
je 0x1007e3bc
mov dword [ebp - 0xa0], 1
cmp ebx, 1
jl 0x10080f81
mov edi, edi
push dword [ebp - 0xa4]
push dword [ebp - 0x80]
push edx
push esi
push edi
call fcn.10088140
add esp, 0x14
test eax, eax
js 0x100860f1
mov edx, dword [ebp - 0x90]
add esi, eax
mov eax, dword [ebp - 0xa0]
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0xa0], eax
cmp eax, ebx
jle 0x10080f40
mov ecx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xbc]
cmp ebx, eax
jne 0x10086131
mov edi, dword [ebp - 0x80]
mov edx, ecx
mov ebx, dword [ebp - 0x9c]
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
push dword [ebp - 0xa4]
push dword [ebp - 0x80]
push ebx
push esi
push edi
call fcn.10088140
add esp, 0x14
test eax, eax
js 0x100860f1
add esi, eax
mov dword [ebp - 0x88], esi
jmp 0x1007e3bc
mov ebx, dword [ebp - 0x84]
mov cl, byte [ebx + 0x21]
lea edi, [ebx + 1]
add ebx, 0x21
movzx edx, cl
mov dword [ebp - 0x98], edi
mov dword [ebp - 0x84], ebx
lea eax, [edx - 0x62]
cmp eax, 0xb
ja case.default.0x10080fff
movzx eax, byte [eax + 0x10087e88]
jmp dword [eax*4 + 0x10087e80]
inc ebx
lea ecx, [edx - 0x62]
movsx edx, byte [ecx + 0x100d2c68]
cmp ecx, 8
mov dword [ebp - 0x84], ebx
sbb eax, eax
mov dword [ebp - 0xa4], edx
inc eax
mov dword [ebp - 0xc4], eax
mov eax, ecx
and eax, 1
cmp ecx, 8
movsx ecx, byte [ecx + 0x100d2c74]
sbb ebx, ebx
mov dword [ebp - 0xac], ecx
and ebx, eax
mov dword [ebp - 0xbc], ebx
test ecx, ecx
jne 0x100810cd
mov ecx, SysReAllocString
jmp 0x100810c7
xor ebx, ebx
cmp cl, 0x69
sete bl
xor eax, eax
cmp cl, 0x6d
mov dword [ebp - 0xbc], ebx
mov ebx, dword [ebp - 0x84]
sete al
mov dword [ebp - 0xc4], 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 dword [ebp - 0xa4], edx
mov dword [ebp - 0xac], ecx
jne 0x100810af
mov ecx, SysReAllocString
mov dword [ebp - 0xac], ecx
add ebx, 5
mov dword [ebp - 0x84], ebx
jmp 0x100810cd
mov ecx, 1
mov edx, ecx
mov dword [ebp - 0xa4], edx
mov dword [ebp - 0xac], ecx
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x10081256
mov ebx, 1
mov dword [ebp - 0x8c], ebx
cmp edx, ebx
jl 0x100812ac
mov edi, edi
mov eax, dword [ebp - 0x80]
cmp esi, dword [eax + 0x78]
jae 0x100862b0
movzx edx, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp edx, 0xc0
jb 0x10081216
movzx eax, byte [esi]
lea ecx, [esi + 1]
and eax, 0x3f
test dl, 0x20
jne 0x1008112f
and edx, 0x1f
mov esi, ecx
shl edx, 6
or edx, eax
jmp 0x10081210
mov ch, byte [ecx]
mov byte [ebp - 0x91], ch
test dl, 0x10
jne 0x10081157
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, ch
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 2
jmp 0x1008120a
mov cl, byte [esi + 2]
mov byte [ebp - 0xa5], cl
test dl, 8
jne 0x1008118b
and edx, 7
shl edx, 6
or edx, eax
movzx eax, ch
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, cl
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x10081204
movzx edi, byte [ebp - 0xa5]
lea ecx, [esi + 4]
movzx ebx, byte [esi + 3]
and edi, 0x3f
mov dword [ebp - 0xa0], ecx
and ebx, 0x3f
movzx ecx, byte [ebp - 0x91]
and ecx, 0x3f
mov dword [ebp - 0x88], ecx
test dl, 4
jne 0x100811d9
mov esi, dword [ebp - 0xa0]
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 0x10081204
and edx, 1
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0xa0]
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 - 0x8c]
mov edi, dword [ebp - 0x98]
mov dword [ebp - 0x88], esi
cmp edx, 0xff
jbe 0x10081227
cmp dword [ebp - 0x90], 0x6e
jmp 0x10081239
mov ecx, edx
mov eax, 1
and ecx, 7
shr edx, 3
shl eax, cl
test byte [edx + edi], al
je case.0x1008753f.14
mov edx, dword [ebp - 0xa4]
inc ebx
mov dword [ebp - 0x8c], ebx
cmp ebx, edx
jle 0x100810f0
jmp 0x100812a0
mov edi, 1
cmp edx, edi
jl 0x100812ac
mov eax, dword [ebp - 0x80]
mov ebx, dword [eax + 0x78]
cmp esi, ebx
jae 0x100862ad
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 - 0x98]
mov dword [ebp - 0x88], esi
test byte [edx + ecx], al
je case.0x1008753f.14
mov edx, dword [ebp - 0xa4]
inc edi
cmp edi, edx
jle 0x10081265
mov eax, dword [ebp - 0xc0]
mov ecx, dword [ebp - 0xac]
mov ebx, dword [ebp - 0x9c]
cmp edx, ecx
je 0x1007f64f
cmp dword [ebp - 0xbc], 0
jne 0x100862c2
mov ebx, esi
mov dword [ebp - 0xbc], ebx
test eax, eax
je 0x100814eb
cmp edx, ecx
jge 0x1008141d
nop
mov eax, dword [ebp - 0x80]
mov edi, 1
cmp esi, dword [eax + 0x78]
jae 0x100814b9
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x100813c7
mov al, byte [esi + 1]
movzx eax, al
test dl, 0x20
jne 0x10081318
and edx, 0x1f
mov edi, 2
jmp 0x100813bf
mov cl, byte [esi + 2]
and eax, 0x3f
test dl, 0x10
jne 0x10081338
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, eax
movzx eax, cl
jmp 0x100813b9
mov bl, byte [esi + 3]
test dl, 8
jne 0x1008135d
and edx, 7
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, cl
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, bl
jmp 0x100813b9
movzx edi, bl
movzx ebx, byte [esi + 4]
and edi, 0x3f
movzx ecx, cl
and ebx, 0x3f
and ecx, 0x3f
test dl, 4
jne 0x10081399
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
mov ecx, dword [ebp - 0xac]
shl edx, 6
or edx, edi
mov edi, 5
shl edx, 6
or edx, ebx
jmp 0x100813c7
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 6
shl edx, 6
or edx, ebx
mov ecx, dword [ebp - 0xac]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0xff
jbe 0x100813da
cmp dword [ebp - 0x90], 0x6e
je 0x10081417
jmp 0x100813fa
mov ecx, edx
mov eax, 1
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0x98]
test byte [edx + ecx], al
je 0x10081417
mov ecx, dword [ebp - 0xac]
mov edx, dword [ebp - 0xa4]
add esi, edi
inc edx
mov dword [ebp - 0x88], esi
mov dword [ebp - 0xa4], edx
cmp edx, ecx
jl 0x100812e0
mov ebx, dword [ebp - 0xbc]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc4], 0
jne 0x1007e3bf
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
lea esp, [esp]
mov eax, esi
dec esi
cmp eax, ebx
je case.0x1008753f.14
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x1008147d
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10081473
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x10081460
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov edi, eax
cmp dword [edi + 0x88], 0
je 0x100814e0
cmp esi, dword [edi + 0x84]
jbe 0x100814e0
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
mov ebx, dword [ebp - 0xbc]
jmp 0x10081420
cmp edx, ecx
jge 0x10081536
mov eax, dword [ebp - 0x80]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x10081597
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
shr edx, 3
and ecx, 7
shl eax, cl
mov ecx, dword [ebp - 0x98]
test byte [edx + ecx], al
je 0x10081536
mov eax, dword [ebp - 0xa4]
inc esi
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0xa4], eax
cmp eax, dword [ebp - 0xac]
jl 0x100814f5
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc4], 0
jne 0x1007e3bf
cmp esi, ebx
jb case.0x1008753f.14
lea ebx, [ebx]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
dec esi
cmp esi, ebx
jae 0x10081550
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x80]
cmp dword [edi + 0x88], 0
je 0x10081539
cmp esi, dword [edi + 0x84]
jbe 0x10081539
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
jmp 0x10081539
mov ebx, dword [ebp - 0x84]
movzx ecx, byte [ebx + 1]
lea eax, [ebx + 3]
mov dword [ebp - 0x98], eax
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
mov dword [ebp - 0x84], ebx
mov cl, byte [ebx]
movzx edx, cl
lea eax, [edx - 0x62]
cmp eax, 0xb
ja case.default.0x10081600
movzx eax, byte [eax + 0x10087e9c]
jmp dword [eax*4 + 0x10087e94]
lea ecx, [edx - 0x62]
inc ebx
movsx edi, byte [ecx + 0x100d2c74]
cmp ecx, 8
mov dword [ebp - 0x84], ebx
sbb eax, eax
mov dword [ebp - 0x90], edi
inc eax
mov dword [ebp - 0xc4], eax
mov eax, ecx
and eax, 1
cmp ecx, 8
sbb edx, edx
and edx, eax
mov dword [ebp - 0xbc], edx
movsx edx, byte [ecx + 0x100d2c68]
mov dword [ebp - 0xa4], edx
test edi, edi
jne 0x100816c5
mov edi, SysReAllocString
jmp 0x100816bf
movzx edx, byte [ebx + 1]
xor eax, eax
movzx edi, byte [ebx + 3]
cmp cl, 0x69
sete al
mov dword [ebp - 0xbc], eax
xor eax, eax
cmp cl, 0x6d
sete al
shl edx, 8
mov dword [ebp - 0xc4], eax
movzx eax, byte [ebx + 2]
or edx, eax
shl edi, 8
movzx eax, byte [ebx + 4]
or edi, eax
mov dword [ebp - 0xa4], edx
mov dword [ebp - 0x90], edi
jne 0x100816a7
mov edi, SysReAllocString
mov dword [ebp - 0x90], edi
add ebx, 5
mov dword [ebp - 0x84], ebx
jmp 0x100816c5
mov edi, 1
mov edx, edi
mov dword [ebp - 0xa4], edx
mov dword [ebp - 0x90], edi
mov ebx, 1
mov dword [ebp - 0xac], ebx
cmp edx, ebx
jl 0x10081841
mov edi, dword [ebp - 0xc0]
mov edi, edi
mov eax, dword [ebp - 0x80]
cmp esi, dword [eax + 0x78]
jae 0x10086eec
movzx ecx, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
test edi, edi
je 0x1008180e
cmp ecx, 0xc0
jb 0x1008180e
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10081727
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x10081808
mov dh, byte [edx]
mov byte [ebp - 0xa5], dh
test cl, 0x10
jne 0x1008174f
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10081802
mov dl, byte [esi + 2]
mov byte [ebp - 0x91], dl
test cl, 8
jne 0x10081783
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x100817fc
movzx edi, byte [ebp - 0x91]
lea edx, [esi + 4]
movzx ebx, byte [esi + 3]
and edi, 0x3f
mov dword [ebp - 0xa0], edx
and ebx, 0x3f
movzx edx, byte [ebp - 0xa5]
and edx, 0x3f
mov dword [ebp - 0x8c], edx
test cl, 4
jne 0x100817d1
mov esi, dword [ebp - 0xa0]
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 0x100817fc
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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 - 0xac]
mov edi, dword [ebp - 0xc0]
mov dword [ebp - 0x88], esi
push edi
push dword [ebp - 0x98]
push ecx
call fcn.100897e0
add esp, 0xc
test eax, eax
je case.0x1008753f.14
mov edx, dword [ebp - 0xa4]
inc ebx
mov dword [ebp - 0xac], ebx
cmp ebx, edx
jle 0x100816e0
mov edi, dword [ebp - 0x90]
mov ebx, dword [ebp - 0x9c]
cmp edx, edi
je 0x1007f64f
cmp dword [ebp - 0xbc], 0
jne 0x10086544
mov ebx, esi
mov dword [ebp - 0xbc], ebx
cmp edx, edi
jge 0x1008199c
mov ebx, dword [ebp - 0xc0]
mov eax, dword [ebp - 0x80]
mov edi, 1
cmp esi, dword [eax + 0x78]
jae 0x10081a46
movzx ecx, byte [esi]
test ebx, ebx
je 0x10081961
cmp ecx, 0xc0
jb 0x10081961
mov al, byte [esi + 1]
movzx eax, al
test cl, 0x20
jne 0x100818b2
and ecx, 0x1f
mov edi, 2
jmp 0x10081959
mov dl, byte [esi + 2]
and eax, 0x3f
test cl, 0x10
jne 0x100818d2
and ecx, 0xf
mov edi, 3
shl ecx, 6
or ecx, eax
movzx eax, dl
jmp 0x10081959
mov bl, byte [esi + 3]
test cl, 8
jne 0x100818f7
and ecx, 7
mov edi, 4
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, bl
jmp 0x10081953
movzx edi, bl
movzx ebx, byte [esi + 4]
and edi, 0x3f
movzx edx, dl
and ebx, 0x3f
and edx, 0x3f
test cl, 4
jne 0x10081933
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
mov edi, 5
shl ecx, 6
or ecx, ebx
mov ebx, dword [ebp - 0xc0]
jmp 0x10081961
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, 6
shl ecx, 6
or ecx, ebx
mov ebx, dword [ebp - 0xc0]
and eax, 0x3f
shl ecx, 6
or ecx, eax
push ebx
push dword [ebp - 0x98]
push ecx
call fcn.100897e0
add esp, 0xc
test eax, eax
je 0x10081996
mov edx, dword [ebp - 0xa4]
add esi, edi
inc edx
mov dword [ebp - 0x88], esi
mov dword [ebp - 0xa4], edx
cmp edx, dword [ebp - 0x90]
jl 0x10081872
mov ebx, dword [ebp - 0xbc]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc4], 0
jne 0x1007e3bf
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
jmp 0x100819e0
mov eax, esi
dec esi
cmp eax, ebx
je case.0x1008753f.14
cmp dword [ebp - 0xc0], 0
je 0x10081a0a
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10081a0a
lea esp, [esp]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10081a00
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x100819e0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov edi, eax
cmp dword [edi + 0x88], 0
je 0x10081a6d
cmp esi, dword [edi + 0x84]
jbe 0x10081a6d
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
mov ebx, dword [ebp - 0xbc]
jmp 0x1008199f
cmp dword [ebp - 0xc0], 0
je 0x10081af8
mov ebx, dword [ebp - 0x84]
mov edx, 1
inc ebx
movzx eax, byte [ebx]
cmp eax, 0xc0
jb 0x10081ac5
test al, 0x20
jne 0x10081aa2
mov edx, 2
jmp 0x10081ac5
test al, 0x10
jne 0x10081aad
mov edx, 3
jmp 0x10081ac5
test al, 8
jne 0x10081ab8
mov edx, 4
jmp 0x10081ac5
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 0x10086714
mov cl, byte [ebx]
dec edx
mov al, byte [esi]
inc ebx
inc esi
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x88], esi
cmp cl, al
jne case.0x1008753f.14
test edx, edx
jg 0x10081ad4
jmp 0x1007e3bf
mov eax, dword [edi + 0x78]
sub eax, esi
cmp eax, 1
jl 0x1008672b
mov edx, dword [ebp - 0x84]
mov al, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp byte [edx + 1], al
jne case.0x1008753f.14
add edx, 2
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
cmp esi, dword [edi + 0x78]
jae 0x1008672b
mov eax, dword [ebp - 0x84]
inc eax
cmp dword [ebp - 0xc0], 0
je 0x10081de7
mov edx, eax
mov dword [ebp - 0x90], 1
mov dword [ebp - 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x10081c53
mov al, byte [edx + 1]
movzx eax, al
test bl, 0x20
jne 0x10081b87
and ebx, 0x1f
mov dword [ebp - 0x90], 2
jmp 0x10081c4b
mov cl, byte [edx + 2]
and eax, 0x3f
test bl, 0x10
jne 0x10081bac
and ebx, 0xf
mov dword [ebp - 0x90], 3
shl ebx, 6
or ebx, eax
movzx eax, cl
jmp 0x10081c4b
mov dl, byte [edx + 3]
test bl, 8
jne 0x10081bd9
and ebx, 7
mov dword [ebp - 0x90], 4
shl ebx, 6
or ebx, eax
movzx eax, cl
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, dl
jmp 0x10081c4b
mov edi, dword [ebp - 0x84]
movzx ecx, cl
movzx edx, dl
and ecx, 0x3f
and edx, 0x3f
movzx edi, byte [edi + 4]
and edi, 0x3f
test bl, 4
jne 0x10081c1d
and ebx, 3
mov dword [ebp - 0x90], 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 0x10081c53
and ebx, 1
mov dword [ebp - 0x90], 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 0x10081c8c
mov edx, dword [edi + 0x38]
mov al, byte [edx + ebx]
cmp al, byte [ecx + edx]
jne case.0x1008753f.14
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
inc edx
inc esi
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x88], esi
jmp 0x1007e3d0
inc esi
mov dword [ebp - 0x88], esi
cmp ecx, 0xc0
jb 0x10081dbf
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10081cbc
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x10081db9
mov dl, byte [edx]
lea edi, [esi + 2]
mov dword [ebp - 0xbc], edi
test cl, 0x10
jne 0x10081ce6
and ecx, 0xf
mov esi, edi
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x10081db9
lea edi, [esi + 3]
mov dword [ebp - 0xa0], edi
mov edi, dword [ebp - 0xbc]
mov dh, byte [edi]
mov byte [ebp - 0xa5], dh
test cl, 8
jne 0x10081d2b
mov esi, dword [ebp - 0xa0]
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x10081db9
movzx edx, dl
lea edi, [esi + 4]
and edx, 0x3f
mov dword [ebp - 0xbc], edi
movzx edi, byte [ebp - 0xa5]
mov dword [ebp - 0xa4], edx
and edi, 0x3f
mov edx, dword [ebp - 0xa0]
movzx edx, byte [edx]
and edx, 0x3f
mov dword [ebp - 0xa0], edx
mov edx, dword [ebp - 0xa4]
test cl, 4
jne 0x10081d8a
mov esi, dword [ebp - 0xbc]
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, dword [ebp - 0xa0]
jmp 0x10081db9
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xbc]
shl ecx, 6
or ecx, edx
shl ecx, 6
movzx eax, byte [eax]
or ecx, edi
shl ecx, 6
and eax, 0x3f
or ecx, dword [ebp - 0xa0]
shl ecx, 6
or ecx, eax
add esi, 5
mov dword [ebp - 0x88], esi
mov edx, dword [ebp - 0x84]
add edx, dword [ebp - 0x90]
mov dword [ebp - 0x84], edx
cmp ebx, ecx
jne case.0x1008753f.14
mov edi, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x9c]
jmp 0x1007e3d0
mov edx, dword [edi + 0x38]
movzx eax, byte [eax]
movzx ecx, byte [esi]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne case.0x1008753f.14
mov edx, dword [ebp - 0x84]
inc esi
add edx, 2
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
mov ecx, dword [ebp - 0x84]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
add ecx, 3
mov dword [ebp - 0x98], edx
mov dword [ebp - 0xa4], edx
mov dword [ebp - 0x84], ecx
jmp 0x10081f6a
mov dword [ebp - 0xc4], 1
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xa4], 0
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
mov dword [ebp - 0x98], edx
cmp cl, 0x28
je 0x10081e85
mov dword [ebp - 0xbc], 0
cmp cl, 0x35
jne 0x10081e8f
mov dword [ebp - 0xbc], 1
mov ecx, dword [ebp - 0x84]
add ecx, 3
mov dword [ebp - 0x84], ecx
jmp 0x10081f6a
mov ecx, dword [ebp - 0x84]
inc ecx
mov dword [ebp - 0xc4], 1
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0x84], ecx
jmp 0x10081f60
mov ecx, dword [ebp - 0x84]
inc ecx
mov dword [ebp - 0xc4], 1
mov dword [ebp - 0xa4], 1
mov dword [ebp - 0x84], ecx
jmp 0x10081f60
mov ecx, dword [ebp - 0x84]
inc ecx
mov dword [ebp - 0xc4], 1
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0x98], 1
mov dword [ebp - 0x84], ecx
jmp 0x10081f6a
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 - 0xbc], eax
movsx eax, byte [ecx + 0x100d2c68]
mov dword [ebp - 0xa4], eax
movsx eax, byte [ecx + 0x100d2c74]
mov ecx, dword [ebp - 0x84]
mov dword [ebp - 0x98], eax
test eax, eax
jne 0x10081f6a
mov dword [ebp - 0x98], SysReAllocString
cmp dword [ebp - 0xc0], 0
movzx ebx, byte [ecx]
mov dword [ebp - 0x8c], ebx
je 0x10082301
mov dword [ebp - 0xa0], ecx
mov edx, 1
mov dword [ebp - 0xac], edx
cmp ebx, 0xc0
jb 0x10082087
lea edi, [ecx + 2]
test bl, 0x20
jne 0x10081fba
mov dword [ebp - 0xac], 2
mov dword [ebp - 0x84], edi
jmp 0x10082098
add ecx, 3
test bl, 0x10
jne 0x10081fd7
mov dword [ebp - 0xac], 3
mov dword [ebp - 0x84], ecx
jmp 0x10082098
mov edx, dword [ebp - 0x84]
lea eax, [edx + 4]
test bl, 8
jne 0x10081ffa
mov dword [ebp - 0xac], 4
mov dword [ebp - 0x84], eax
jmp 0x10082098
mov dl, byte [edx + 1]
mov dh, byte [ecx]
mov ecx, dword [ebp - 0x84]
mov bh, byte [eax]
add ecx, 5
mov eax, dword [ebp - 0x8c]
mov bl, byte [edi]
test al, 4
jne 0x10082028
mov dword [ebp - 0xac], 5
mov dword [ebp - 0x84], ecx
jmp 0x10082098
and eax, 1
shl eax, 6
mov dword [ebp - 0x8c], eax
mov edi, dword [ebp - 0x8c]
movzx eax, dl
and eax, 0x3f
or edi, eax
movzx eax, bl
and eax, 0x3f
shl edi, 6
or edi, eax
movzx eax, dh
and eax, 0x3f
shl edi, 6
or edi, eax
mov edx, 6
movzx eax, bh
shl edi, 6
and eax, 0x3f
mov ebx, edi
mov dword [ebp - 0x8c], edi
or ebx, eax
mov dword [ebp - 0xac], edx
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x84]
and eax, 0x3f
shl ebx, 6
or ebx, eax
add ecx, edx
mov dword [ebp - 0x84], ecx
cmp edx, 1
jbe 0x10082308
mov edi, dword [ebp - 0xa4]
mov ebx, 1
cmp edi, ebx
jl 0x10082154
mov eax, dword [ebp - 0x80]
mov edi, dword [ebp - 0xac]
mov eax, dword [eax + 0x78]
sub eax, edi
mov dword [ebp - 0x90], eax
jmp 0x100820c7
mov edi, dword [ebp - 0xac]
cmp esi, eax
ja 0x10086757
mov edx, dword [ebp - 0xa0]
mov ecx, esi
sub edi, 4
jb 0x100820f1
lea esp, [esp]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x100820f6
add ecx, 4
add edx, 4
sub edi, 4
jae 0x100820e0
cmp edi, 0xfffffffc
je 0x10082133
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x10086757
cmp edi, 0xfffffffd
je 0x10082133
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x10086757
cmp edi, 0xfffffffe
je 0x10082133
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x10086757
cmp edi, 0xffffffff
je 0x10082133
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x10086757
add esi, dword [ebp - 0xac]
inc ebx
mov edi, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x88], esi
cmp ebx, edi
jle 0x100820c1
mov eax, dword [ebp - 0x98]
mov ebx, dword [ebp - 0x9c]
cmp edi, eax
je 0x1007f64f
cmp dword [ebp - 0xbc], 0
jne 0x10086775
mov ebx, esi
mov dword [ebp - 0x90], ebx
cmp edi, eax
jge 0x10082236
mov eax, dword [ebp - 0x80]
mov ebx, dword [eax + 0x78]
mov eax, dword [ebp - 0xac]
sub ebx, eax
cmp esi, ebx
ja 0x100822c9
mov edx, dword [ebp - 0xa0]
mov edi, eax
mov ecx, esi
sub edi, 4
jb 0x100821c7
lea ebx, [ebx]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x100821cc
add ecx, 4
add edx, 4
sub edi, 4
jae 0x100821b0
mov eax, dword [ebp - 0xac]
cmp edi, 0xfffffffc
je 0x1008220f
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x100822c9
cmp edi, 0xfffffffd
je 0x10082209
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x100822c9
cmp edi, 0xfffffffe
je 0x10082209
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x100822c9
cmp edi, 0xffffffff
je 0x10082209
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x100822c9
mov eax, dword [ebp - 0xac]
mov edi, dword [ebp - 0xa4]
add esi, eax
inc edi
mov dword [ebp - 0x88], esi
mov dword [ebp - 0xa4], edi
cmp edi, dword [ebp - 0x98]
jl 0x10082193
mov ebx, dword [ebp - 0x90]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc4], 0
jne 0x1007e3bf
cmp esi, ebx
jbe 0x10085dd0
mov edi, dword [ebp - 0xac]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push dword [ebp - 0x80]
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
sub esi, edi
mov dword [ebp - 0x88], esi
cmp esi, ebx
ja 0x10082254
mov edi, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x9c]
mov eax, dword [edi + 0x4c]
mov dword [ebp - 0xc0], eax
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jb 0x1007e375
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.10071699
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x80]
cmp dword [edi + 0x88], 0
je 0x100822f6
cmp esi, dword [edi + 0x78]
jb 0x100822f6
cmp esi, dword [edi + 0x84]
jbe 0x100822f6
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
mov ebx, dword [ebp - 0x90]
jmp 0x10082239
inc ecx
mov dword [ebp - 0x84], ecx
cmp dword [ebp - 0x90], 0x2e
mov edx, dword [ebp - 0xa4]
jb 0x1008243c
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x3c]
movzx edi, byte [eax + ebx]
cmp edx, 1
jl 0x10082362
mov edx, dword [ecx + 0x78]
mov ecx, 1
cmp esi, edx
jae 0x10086ee9
movzx eax, byte [esi]
cmp ebx, eax
je 0x10082349
cmp edi, eax
jne case.0x1008753f.14
inc esi
inc ecx
mov dword [ebp - 0x88], esi
cmp ecx, dword [ebp - 0xa4]
jle 0x10082332
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x98]
cmp edx, eax
je 0x1007e3bc
cmp dword [ebp - 0xbc], 0
jne 0x1008689a
mov dword [ebp - 0xa0], esi
cmp edx, eax
jge 0x100823af
mov ecx, dword [ecx + 0x78]
lea ebx, [ebx]
cmp esi, ecx
jae 0x1008240f
movzx eax, byte [esi]
cmp ebx, eax
je 0x1008239f
cmp edi, eax
jne 0x100823af
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x98]
jl 0x10082390
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc4], 0
jne 0x1007e3bf
mov ebx, dword [ebp - 0xa0]
cmp esi, ebx
je 0x10082290
lea ecx, [ecx]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
dec esi
add esp, 0x1c
mov dword [ebp - 0x88], esi
test eax, eax
jne 0x100822b8
cmp esi, ebx
jne 0x100823d0
jmp 0x10082290
mov edi, dword [ebp - 0x80]
cmp dword [edi + 0x88], 0
je 0x100823b2
cmp esi, dword [edi + 0x84]
jbe 0x100823b2
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
jmp 0x100823b2
mov edi, dword [ebp - 0x80]
mov ecx, 1
cmp edx, ecx
jl 0x10082479
mov edx, dword [edi + 0x78]
jmp 0x10082450
cmp esi, edx
jae 0x10086e63
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp ebx, eax
jne case.0x1008753f.14
inc ecx
cmp ecx, dword [ebp - 0xa4]
jle 0x10082450
mov edx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x98]
cmp edx, eax
je 0x1007e3bf
cmp dword [ebp - 0xbc], 0
jne 0x10086941
mov edi, esi
cmp edx, eax
jge 0x100824bf
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x10082525
movzx eax, byte [esi]
cmp ebx, eax
jne 0x100824bf
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x98]
jl 0x100824a0
mov ecx, dword [ebp - 0x80]
cmp dword [ebp - 0xc4], 0
jne 0x1007e3bc
mov ebx, dword [ebp - 0x9c]
cmp esi, edi
je 0x10085dc2
lea ecx, [ecx]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push ecx
push ebx
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
dec esi
add esp, 0x1c
mov dword [ebp - 0x88], esi
test eax, eax
jne 0x100822b8
mov ecx, dword [ebp - 0x80]
cmp esi, edi
jne 0x100824e0
mov edx, dword [ebp - 0x84]
mov edi, ecx
jmp 0x1008229c
mov ecx, dword [ebp - 0x80]
cmp dword [ecx + 0x88], 0
je 0x100824c2
cmp esi, dword [ecx + 0x84]
jbe 0x100824c2
mov dword [ecx + 0x64], 1
cmp dword [ecx + 0x88], 1
jg 0x100876b9
jmp 0x100824c2
cmp esi, dword [edi + 0x78]
jae 0x10086e63
cmp dword [ebp - 0xc0], 0
mov eax, dword [ebp - 0x84]
je 0x10082819
movzx ecx, byte [eax + 1]
lea ebx, [eax + 1]
inc ebx
mov dword [ebp - 0x84], ebx
cmp ecx, 0xc0
jb 0x10082694
movzx eax, byte [ebx]
lea edx, [ebx + 1]
and eax, 0x3f
test cl, 0x20
jne 0x100825a9
and ecx, 0x1f
mov dword [ebp - 0x84], edx
shl ecx, 6
or ecx, eax
jmp 0x10082694
mov dl, byte [edx]
lea edi, [ebx + 2]
test cl, 0x10
jne 0x100825d1
and ecx, 0xf
mov dword [ebp - 0x84], edi
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x10082694
mov dh, byte [edi]
add ebx, 3
mov dword [ebp - 0xbc], ebx
mov byte [ebp - 0xa5], dh
test cl, 8
jne 0x10082610
and ecx, 7
mov dword [ebp - 0x84], ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x10082694
mov ebx, dword [ebp - 0x84]
movzx edi, byte [ebp - 0xa5]
add ebx, 4
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xbc]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10082665
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
shl ecx, 6
or ecx, edx
mov dword [ebp - 0x84], eax
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x10082694
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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
mov dword [ebp - 0x88], esi
cmp edx, 0xc0
jb 0x100827db
movzx eax, byte [esi]
test dl, 0x20
jne 0x100826c3
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
inc esi
jmp 0x100827d5
lea ebx, [esi + 2]
mov dword [ebp - 0xa0], ebx
mov bl, byte [esi + 1]
mov byte [ebp - 0x91], bl
mov ebx, dword [ebp - 0xa0]
test dl, 0x10
jne 0x10082701
and edx, 0xf
and eax, 0x3f
shl edx, 6
mov esi, ebx
or edx, eax
movzx eax, byte [ebp - 0x91]
shl edx, 6
and eax, 0x3f
or edx, eax
jmp 0x100827d5
mov bl, byte [ebx]
lea edi, [esi + 3]
and eax, 0x3f
mov dword [ebp - 0xa0], edi
mov byte [ebp - 0xa5], bl
test dl, 8
jne 0x10082743
and edx, 7
mov esi, edi
shl edx, 6
or edx, eax
movzx eax, byte [ebp - 0x91]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, bl
shl edx, 6
and eax, 0x3f
or edx, eax
jmp 0x100827d5
movzx edi, byte [ebp - 0x91]
lea ebx, [esi + 4]
and edi, 0x3f
mov dword [ebp - 0xbc], ebx
movzx ebx, byte [ebp - 0xa5]
mov dword [ebp - 0xa4], edi
and ebx, 0x3f
mov edi, dword [ebp - 0xa0]
movzx edi, byte [edi]
and edi, 0x3f
mov dword [ebp - 0xa0], edi
mov edi, dword [ebp - 0xa4]
test dl, 4
jne 0x100827a6
mov esi, dword [ebp - 0xbc]
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 - 0xa0]
jmp 0x100827d5
and edx, 1
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0xbc]
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 - 0xa0]
shl edx, 6
or edx, eax
add esi, 5
mov dword [ebp - 0x88], esi
cmp dword [ebp - 0x90], 0x1f
jne 0x100827f1
cmp ecx, edx
je case.0x1008753f.14
jmp 0x1007e3bc
mov edi, dword [ebp - 0x80]
cmp ecx, 0x7f
jbe 0x100827fd
mov eax, ecx
jmp 0x10082804
mov eax, dword [edi + 0x3c]
movzx eax, byte [eax + ecx]
cmp ecx, edx
je case.0x1008753f.14
cmp eax, edx
je case.0x1008753f.14
jmp 0x1007e3bf
movzx edx, byte [esi]
inc esi
movzx ecx, byte [eax + 1]
mov dword [ebp - 0x88], esi
cmp ecx, edx
je case.0x1008753f.14
cmp dword [ebp - 0x90], 0x20
jne 0x10082847
mov eax, dword [edi + 0x3c]
movzx eax, byte [eax + ecx]
cmp eax, edx
je case.0x1008753f.14
mov edx, dword [ebp - 0x84]
add edx, 2
mov dword [ebp - 0x84], edx
jmp 0x1007e3d0
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 - 0xa4], edx
mov dword [ebp - 0x8c], edx
jmp 0x100829a1
mov edi, dword [ebp - 0x84]
xor ebx, ebx
mov dword [ebp - 0x8c], ebx
movzx edx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl edx, 8
or edx, eax
mov dword [ebp - 0xa4], edx
cmp cl, 0x42
je 0x100828b3
mov dword [ebp - 0xbc], ebx
cmp cl, 0x4f
jne 0x100828bd
mov dword [ebp - 0xbc], 1
add edi, 3
jmp 0x100829a1
mov edi, dword [ebp - 0x84]
xor ebx, ebx
mov dword [ebp - 0xc4], 1
inc edi
mov dword [ebp - 0x8c], ebx
jmp 0x10082997
mov edi, dword [ebp - 0x84]
mov dword [ebp - 0xc4], 1
inc edi
mov dword [ebp - 0x8c], 1
jmp 0x10082997
mov edi, dword [ebp - 0x84]
xor ebx, ebx
mov dword [ebp - 0xc4], 1
inc edi
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0xa4], 1
jmp 0x100829a1
mov edi, dword [ebp - 0x84]
xor ebx, ebx
mov dword [ebp - 0xc4], 1
mov dword [ebp - 0x8c], ebx
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, 3
mov dword [ebp - 0xa4], ecx
jmp 0x100829a1
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 - 0xbc], eax
movsx eax, byte [ecx + 0x100d2c74]
movsx ebx, byte [ecx + 0x100d2c68]
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0xa4], eax
test eax, eax
jne 0x100829a1
mov dword [ebp - 0xa4], SysReAllocString
movzx ebx, byte [edi]
inc edi
mov edx, dword [ebp - 0xc0]
mov dword [ebp - 0x98], ebx
mov dword [ebp - 0x84], edi
test edx, edx
je 0x10082b01
cmp ebx, 0xc0
jb 0x10082b01
movzx eax, byte [edi]
lea ecx, [edi + 1]
and eax, 0x3f
test bl, 0x20
jne 0x100829ec
and ebx, 0x1f
mov dword [ebp - 0x84], ecx
shl ebx, 6
or ebx, eax
jmp 0x10082afb
mov cl, byte [ecx]
lea edx, [edi + 2]
test bl, 0x10
jne 0x10082a14
and ebx, 0xf
mov dword [ebp - 0x84], edx
shl ebx, 6
or ebx, eax
movzx eax, cl
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x10082af5
mov dl, byte [edx]
add edi, 3
test bl, 8
jne 0x10082a47
and ebx, 7
mov dword [ebp - 0x84], edi
shl ebx, 6
or ebx, eax
movzx eax, cl
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, dl
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x10082af5
mov ebx, dword [ebp - 0x84]
movzx edi, byte [edi]
add ebx, 4
mov esi, dword [ebp - 0x98]
and edi, 0x3f
movzx ecx, cl
movzx edx, dl
and ecx, 0x3f
and edx, 0x3f
mov dword [ebp - 0xa0], ebx
test byte [ebp - 0x98], 4
jne 0x10082ab2
and esi, 3
mov dword [ebp - 0x84], ebx
shl esi, 6
or esi, eax
mov eax, esi
mov dword [ebp - 0x98], esi
mov esi, dword [ebp - 0x88]
shl eax, 6
or eax, ecx
shl eax, 6
or eax, edx
mov edx, dword [ebp - 0xc0]
shl eax, 6
or eax, edi
mov dword [ebp - 0x98], eax
mov ebx, eax
jmp 0x10082b01
and esi, 1
shl esi, 6
or esi, eax
mov eax, esi
mov dword [ebp - 0x98], esi
mov esi, dword [ebp - 0x88]
shl eax, 6
or eax, ecx
shl eax, 6
or eax, edx
shl eax, 6
or eax, edi
shl eax, 6
mov dword [ebp - 0x98], eax
movzx eax, byte [ebx]
mov ebx, dword [ebp - 0x98]
and eax, 0x3f
or ebx, eax
add dword [ebp - 0x84], 5
mov edx, dword [ebp - 0xc0]
mov dword [ebp - 0x98], ebx
cmp dword [ebp - 0x90], 0x48
jb 0x10082fcc
test edx, edx
je 0x10082b24
cmp ebx, 0x7f
jbe 0x10082b24
mov ecx, dword [ebp - 0x80]
mov edi, ebx
mov dword [ebp - 0xac], ebx
jmp 0x10082b34
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x3c]
movzx edi, byte [eax + ebx]
mov dword [ebp - 0xac], edi
test edx, edx
mov edx, dword [ebp - 0x8c]
je 0x10082ca5
mov eax, 1
mov dword [ebp - 0x90], eax
cmp edx, eax
jl 0x10082cf7
cmp esi, dword [ecx + 0x78]
jae 0x10086ea6
movzx ecx, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp ecx, 0xc0
jb 0x10082c7b
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10082b91
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x10082c69
mov dh, byte [edx]
mov byte [ebp - 0xa5], dh
test cl, 0x10
jne 0x10082bb9
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10082c69
mov dl, byte [esi + 2]
mov byte [ebp - 0x91], dl
test cl, 8
jne 0x10082bea
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10082c63
movzx edi, byte [ebp - 0x91]
lea edx, [esi + 4]
movzx ebx, byte [esi + 3]
and edi, 0x3f
mov dword [ebp - 0xa0], edx
and ebx, 0x3f
movzx edx, byte [ebp - 0xa5]
and edx, 0x3f
mov dword [ebp - 0x88], edx
test cl, 4
jne 0x10082c38
mov esi, dword [ebp - 0xa0]
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 0x10082c63
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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 - 0x98]
mov eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x88], esi
cmp ebx, ecx
je case.0x1008753f.14
mov edi, dword [ebp - 0xac]
cmp edi, ecx
je case.0x1008753f.14
mov ecx, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x10082b55
jmp 0x10082cf7
mov ecx, 1
cmp edx, ecx
jl 0x10082cf7
mov eax, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x8c]
mov edx, dword [eax + 0x78]
lea ebx, [ebx]
cmp esi, edx
jae 0x10086ee9
movzx eax, byte [esi]
cmp dword [ebp - 0x98], eax
je case.0x1008753f.14
cmp edi, eax
je case.0x1008753f.14
inc esi
inc ecx
mov dword [ebp - 0x88], esi
cmp ecx, ebx
jle 0x10082cc0
mov edx, dword [ebp - 0x8c]
mov ebx, dword [ebp - 0x98]
mov eax, dword [ebp - 0xa4]
cmp edx, eax
je 0x1007e3bc
cmp dword [ebp - 0xbc], 0
jne 0x100869da
cmp dword [ebp - 0xc0], 0
mov ebx, esi
mov dword [ebp - 0x90], ebx
je 0x10082f16
mov edi, eax
cmp edx, edi
jge 0x10082e77
mov ecx, dword [ebp - 0x98]
jmp 0x10082d40
mov edx, dword [ebp - 0x80]
mov eax, 1
cmp esi, dword [edx + 0x78]
jae 0x10082ee9
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x10082e48
mov al, byte [esi + 1]
test dl, 0x20
jne 0x10082d80
movzx eax, al
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x10082e48
mov bh, byte [esi + 2]
test dl, 0x10
jne 0x10082dab
movzx ecx, al
and edx, 0xf
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx eax, bh
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 3
jmp 0x10082e42
mov bl, byte [esi + 3]
movzx eax, al
and eax, 0x3f
test dl, 8
jne 0x10082dde
and edx, 7
shl edx, 6
or edx, eax
movzx eax, bh
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, bl
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 4
jmp 0x10082e48
movzx ecx, bh
movzx edi, bl
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x10082e14
and edx, 3
shl edx, 6
or edx, eax
mov eax, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x10082e3c
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
mov eax, 6
mov edi, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x98]
cmp ecx, edx
je 0x10082e71
cmp dword [ebp - 0xac], edx
je 0x10082e71
mov edx, dword [ebp - 0x8c]
add esi, eax
inc edx
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], edx
cmp edx, edi
jl 0x10082d40
mov ebx, dword [ebp - 0x90]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc4], 0
jne 0x1007e3bf
cmp esi, ebx
jbe 0x10082290
nop
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov dword [ebp - 0x88], esi
cmp al, 0x80
jne 0x10082ee0
nop
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10082ed0
mov dword [ebp - 0x88], esi
cmp esi, ebx
ja 0x10082e90
jmp 0x10082290
mov edi, edx
cmp dword [edi + 0x88], 0
je 0x10082f0b
cmp esi, dword [edi + 0x84]
jbe 0x10082f0b
mov dword [edi + 0x64], eax
cmp dword [edi + 0x88], eax
jg 0x100876b9
mov ebx, dword [ebp - 0x90]
jmp 0x10082e7a
cmp edx, eax
jge 0x10082f43
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x10082f9f
movzx eax, byte [esi]
cmp dword [ebp - 0x98], eax
je 0x10082f43
cmp edi, eax
je 0x10082f43
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0xa4]
jl 0x10082f20
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc4], 0
jne 0x1007e3bf
cmp esi, ebx
je 0x10082290
jmp 0x10082f60
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
dec esi
mov dword [ebp - 0x88], esi
cmp esi, ebx
jne 0x10082f60
jmp 0x10082290
mov edi, dword [ebp - 0x80]
cmp dword [edi + 0x88], 0
je 0x10082f46
cmp esi, dword [edi + 0x84]
jbe 0x10082f46
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
jmp 0x10082f46
mov edi, dword [ebp - 0x8c]
test edx, edx
je 0x10083132
mov eax, 1
mov dword [ebp - 0x90], eax
cmp edi, eax
jl 0x10083166
lea ecx, [ecx]
mov ecx, dword [ebp - 0x80]
cmp esi, dword [ecx + 0x78]
jae 0x10086ea6
movzx ecx, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp ecx, 0xc0
jb 0x10083119
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x1008302f
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x1008310d
mov dh, byte [edx]
mov byte [ebp - 0xa5], dh
test cl, 0x10
jne 0x10083057
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10083107
mov dl, byte [esi + 2]
mov byte [ebp - 0x91], dl
test cl, 8
jne 0x10083088
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10083101
movzx edi, byte [ebp - 0x91]
lea edx, [esi + 4]
movzx ebx, byte [esi + 3]
and edi, 0x3f
mov dword [ebp - 0xa0], edx
and ebx, 0x3f
movzx edx, byte [ebp - 0xa5]
and edx, 0x3f
mov dword [ebp - 0xac], edx
test cl, 4
jne 0x100830d6
mov esi, dword [ebp - 0xa0]
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 0x10083101
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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 - 0x98]
mov edi, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x88], esi
cmp ebx, ecx
je case.0x1008753f.14
inc eax
mov dword [ebp - 0x90], eax
cmp eax, edi
jle 0x10082ff0
jmp 0x10083160
mov ecx, 1
cmp edi, ecx
jl 0x10083166
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x10086ee9
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp ebx, eax
je case.0x1008753f.14
inc ecx
cmp ecx, edi
jle 0x10083141
mov edx, dword [ebp - 0xc0]
mov eax, dword [ebp - 0xa4]
cmp edi, eax
je 0x1007e3bc
cmp dword [ebp - 0xbc], 0
jne 0x10086c3d
mov ebx, esi
mov dword [ebp - 0x90], ebx
test edx, edx
je 0x10083376
cmp edi, eax
jge 0x100832d3
mov ecx, dword [ebp - 0x98]
nop
mov edx, dword [ebp - 0x80]
mov eax, 1
cmp esi, dword [edx + 0x78]
jae 0x10083349
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x100832ae
mov al, byte [esi + 1]
test dl, 0x20
jne 0x100831e0
movzx eax, al
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x100832ae
mov bh, byte [esi + 2]
test dl, 0x10
jne 0x1008320b
movzx ecx, al
and edx, 0xf
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx eax, bh
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 3
jmp 0x100832a8
mov bl, byte [esi + 3]
test dl, 8
jne 0x1008323e
movzx ecx, al
and edx, 7
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx eax, bh
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, bl
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 4
jmp 0x100832a8
movzx ecx, bh
movzx edi, bl
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
movzx eax, al
and ebx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x1008327a
and edx, 3
shl edx, 6
or edx, eax
mov eax, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x100832a2
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
mov eax, 6
mov edi, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x98]
cmp ecx, edx
je 0x100832cd
inc edi
add esi, eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], edi
cmp edi, dword [ebp - 0xa4]
jl 0x100831a0
mov ebx, dword [ebp - 0x90]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc4], 0
jne 0x1007e3bf
cmp esi, ebx
jbe 0x10082290
jmp 0x100832f0
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov dword [ebp - 0x88], esi
cmp al, 0x80
jne 0x10083340
nop
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10083330
mov dword [ebp - 0x88], esi
cmp esi, ebx
ja 0x100832f0
jmp 0x10082290
mov edi, edx
cmp dword [edi + 0x88], 0
je 0x1008336b
cmp esi, dword [edi + 0x84]
jbe 0x1008336b
mov dword [edi + 0x64], eax
cmp dword [edi + 0x88], eax
jg 0x100876b9
mov ebx, dword [ebp - 0x90]
jmp 0x100832d6
cmp edi, eax
jge 0x100833a1
mov eax, dword [ebp - 0x80]
mov edx, dword [ebp - 0x98]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x100833ff
movzx eax, byte [esi]
cmp edx, eax
je 0x100833a1
inc esi
inc edi
mov dword [ebp - 0x88], esi
cmp edi, dword [ebp - 0xa4]
jl 0x10083386
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc4], 0
jne 0x1007e3bf
cmp esi, ebx
je 0x10082290
lea esp, [esp]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
dec esi
mov dword [ebp - 0x88], esi
cmp esi, ebx
jne 0x100833c0
jmp 0x10082290
mov edi, dword [ebp - 0x80]
cmp dword [edi + 0x88], 0
je 0x100833a4
cmp esi, dword [edi + 0x84]
jbe 0x100833a4
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
jmp 0x100833a4
mov edi, dword [ebp - 0x84]
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 edx, ecx
mov dword [ebp - 0xac], ecx
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0x84], edi
jmp 0x10083591
mov edi, dword [ebp - 0x84]
xor edx, edx
mov dword [ebp - 0x8c], edx
movzx ebx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ebx, 8
or ebx, eax
mov dword [ebp - 0xac], ebx
xor ebx, ebx
cmp cl, 0x5c
sete bl
add edi, 3
mov dword [ebp - 0xbc], ebx
mov dword [ebp - 0x84], edi
jmp 0x10083591
mov edi, dword [ebp - 0x84]
xor edx, edx
inc edi
mov dword [ebp - 0xc4], 1
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0x84], edi
jmp 0x10083587
mov edi, dword [ebp - 0x84]
mov edx, 1
inc edi
mov dword [ebp - 0xc4], 1
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0x84], edi
jmp 0x10083587
mov edi, dword [ebp - 0x84]
xor edx, edx
inc edi
mov dword [ebp - 0xc4], 1
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0xac], 1
mov dword [ebp - 0x84], edi
jmp 0x10083591
mov edi, dword [ebp - 0x84]
xor edx, edx
mov dword [ebp - 0xc4], 1
mov dword [ebp - 0x8c], edx
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, 3
mov dword [ebp - 0xac], ecx
mov dword [ebp - 0x84], edi
jmp 0x10083591
mov edi, dword [ebp - 0x84]
lea eax, [edx - 0x55]
movsx edx, byte [eax + 0x100d2c68]
mov ebx, eax
movsx eax, byte [eax + 0x100d2c74]
inc edi
and ebx, 1
mov dword [ebp - 0x84], edi
mov dword [ebp - 0xbc], ebx
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0xac], eax
test eax, eax
jne 0x10083591
mov dword [ebp - 0xac], SysReAllocString
mov al, byte [edi]
inc dword [ebp - 0x84]
movzx edi, al
mov byte [ebp - 0x91], al
mov dword [ebp - 0xa4], edi
test edx, edx
jle 0x100838dd
cmp dword [ebp - 0xc0], 0
lea eax, [edi - 6]
je 0x100842ee
cmp eax, 0xf
ja case.0x100874d6.15
jmp dword [eax*4 + 0x10087ea8]
mov ebx, 1
cmp edx, ebx
jl 0x100838dd
lea ecx, [ecx]
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x10086e63
mov ecx, dword [edi + 0x18]
add edi, 0x1c
test ecx, ecx
je 0x1008368b
push dword [ebp - 0xc0]
push edi
push eax
push ecx
push esi
call fcn.10089160
add esp, 0x14
test eax, eax
jne case.0x1008753f.14
mov edx, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x80]
cmp dword [ecx + 0x88], 0
je 0x10083656
lea eax, [esi + 1]
cmp eax, dword [ecx + 0x78]
jb 0x10083656
cmp dword [ecx + 0x18], 0
jne 0x10083656
cmp dword [edi], 2
jne 0x10083656
mov al, byte [esi]
cmp al, byte [ecx + 0x34]
jne 0x10083656
mov dword [ecx + 0x64], 1
cmp dword [ecx + 0x88], 1
jg 0x100876b9
mov ecx, dword [ecx + 0x78]
inc esi
mov dword [ebp - 0x88], esi
cmp esi, ecx
jae 0x10083677
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10083671
inc esi
cmp esi, ecx
jb 0x10083664
mov dword [ebp - 0x88], esi
inc ebx
cmp ebx, edx
jle 0x100835e0
mov edi, dword [ebp - 0xa4]
jmp 0x100838dd
sub eax, dword [edi]
cmp esi, eax
ja 0x1008361c
mov ecx, dword [ebp - 0x80]
mov al, byte [esi]
cmp al, byte [ecx + 0x34]
mov ecx, dword [edi]
jne 0x1008361c
cmp ecx, 1
je case.0x1008753f.14
mov ecx, dword [ebp - 0x80]
mov al, byte [esi + 1]
cmp al, byte [ecx + 0x35]
je case.0x1008753f.14
jmp 0x1008361f
mov ebx, dword [ebp - 0x8c]
mov edx, 1
cmp ebx, edx
jl 0x100838d7
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x10086ee9
inc esi
mov dword [ebp - 0x88], esi
cmp esi, ecx
jae 0x10083703
lea ebx, [ebx]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x100836fd
inc esi
cmp esi, ecx
jb 0x100836f0
mov dword [ebp - 0x88], esi
inc edx
cmp edx, ebx
jle 0x100836d7
jmp 0x100838d7
mov ebx, dword [ebp - 0x80]
mov eax, dword [ebx + 0x78]
sub eax, edx
cmp esi, eax
ja case.0x1008753f.14
add esi, edx
mov dword [ebp - 0x88], esi
jmp 0x100838e0
mov ebx, dword [ebp - 0x8c]
mov edx, 1
mov dword [ebp - 0x90], edx
cmp ebx, edx
jl 0x100838d7
mov edi, dword [ebp - 0x80]
mov eax, dword [edi + 0x78]
mov dword [ebp - 0x98], eax
nop
cmp esi, eax
jae 0x10086e63
movzx ecx, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp ecx, 0xc0
jb 0x10083878
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x1008378b
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x10083866
mov dh, byte [edx]
mov byte [ebp - 0xa5], dh
test cl, 0x10
jne 0x100837b3
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10083863
mov dl, byte [esi + 2]
mov byte [ebp - 0xad], dl
test cl, 8
jne 0x100837e4
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1008385d
movzx edi, byte [ebp - 0xad]
lea edx, [esi + 4]
movzx ebx, byte [esi + 3]
and edi, 0x3f
mov dword [ebp - 0xa0], edx
and ebx, 0x3f
movzx edx, byte [ebp - 0xa5]
and edx, 0x3f
mov dword [ebp - 0x88], edx
test cl, 4
jne 0x10083832
mov esi, dword [ebp - 0xa0]
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 0x1008385d
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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 edx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x88], esi
cmp ecx, 0xd
ja 0x1008389b
je 0x10083889
cmp ecx, 0xa
je 0x100838bc
lea eax, [ecx - 0xb]
jmp 0x100838a9
cmp esi, eax
jae 0x100838bc
cmp byte [esi], 0xa
jne 0x100838bc
inc esi
mov dword [ebp - 0x88], esi
jmp 0x100838bc
cmp ecx, 0x85
je 0x100838b2
lea eax, [ecx - 0x2028]
cmp eax, 1
ja case.0x1008753f.14
cmp dword [edi + 0x68], 0
jne case.0x1008753f.14
mov eax, dword [ebp - 0x98]
inc edx
mov dword [ebp - 0x90], edx
cmp edx, ebx
jle 0x10083750
mov edi, dword [ebp - 0xa4]
mov edx, dword [ebp - 0x8c]
mov ebx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0xac]
cmp edx, ecx
je 0x1007e3bc
cmp dword [ebp - 0xbc], 0
jne 0x10086f2f
cmp dword [ebp - 0xc0], 0
lea eax, [edi - 6]
mov ebx, esi
mov dword [ebp - 0x98], ebx
je 0x10085666
cmp eax, 0xf
ja case.0x100874d6.15
jmp dword [eax*4 + 0x10087ee8]
mov ebx, dword [ebp - 0x80]
mov eax, 1
mov dword [ebp - 0x90], eax
cmp edx, eax
jl 0x100838e0
cmp esi, dword [ebx + 0x78]
jae 0x1008768c
movzx ecx, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp ecx, 0xc0
jb 0x10083a58
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10083971
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x10083a46
mov dh, byte [edx]
mov byte [ebp - 0xad], dh
test cl, 0x10
jne 0x10083999
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10083a46
mov dl, byte [esi + 2]
mov byte [ebp - 0xa5], dl
test cl, 8
jne 0x100839ca
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10083a43
movzx edi, byte [ebp - 0xa5]
lea edx, [esi + 4]
movzx ebx, byte [esi + 3]
and edi, 0x3f
mov dword [ebp - 0xa0], edx
and ebx, 0x3f
movzx edx, byte [ebp - 0xad]
and edx, 0x3f
mov dword [ebp - 0x98], edx
test cl, 4
jne 0x10083a18
mov esi, dword [ebp - 0xa0]
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 0x10083a43
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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 - 0x80]
mov eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x88], esi
cmp ecx, 0x180e
ja 0x10083a8a
je case.0x1008753f.14
cmp ecx, 0xa0
ja 0x10083a82
je case.0x1008753f.14
cmp ecx, 9
je case.0x1008753f.14
cmp ecx, 0x20
jmp 0x10083aba
cmp ecx, 0x1680
jmp 0x10083aba
cmp ecx, 0x205f
ja 0x10083ab4
je case.0x1008753f.14
cmp ecx, 0x2000
jb 0x10083ac0
cmp ecx, 0x200a
jbe case.0x1008753f.14
cmp ecx, 0x202f
jmp 0x10083aba
cmp ecx, 0x3000
je case.0x1008753f.14
inc eax
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x10083935
mov edi, dword [ebp - 0xa4]
jmp 0x100838e0
mov ebx, dword [ebp - 0x80]
mov eax, 1
mov dword [ebp - 0x90], eax
cmp edx, eax
jl 0x100838e0
cmp esi, dword [ebx + 0x78]
jae 0x1008768c
movzx ecx, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp ecx, 0xc0
jb 0x10083c13
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10083b2c
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x10083c01
mov dh, byte [edx]
mov byte [ebp - 0xad], dh
test cl, 0x10
jne 0x10083b54
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10083c01
mov dl, byte [esi + 2]
mov byte [ebp - 0xa5], dl
test cl, 8
jne 0x10083b85
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10083bfe
movzx edi, byte [ebp - 0xa5]
lea edx, [esi + 4]
movzx ebx, byte [esi + 3]
and edi, 0x3f
mov dword [ebp - 0xa0], edx
and ebx, 0x3f
movzx edx, byte [ebp - 0xad]
and edx, 0x3f
mov dword [ebp - 0x98], edx
test cl, 4
jne 0x10083bd3
mov esi, dword [ebp - 0xa0]
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 0x10083bfe
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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 - 0x80]
mov eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x88], esi
cmp ecx, 0x180e
ja 0x10083c39
je 0x10083c6b
cmp ecx, 0xa0
ja 0x10083c31
je 0x10083c6b
cmp ecx, 9
je 0x10083c6b
cmp ecx, 0x20
jmp 0x10083c65
cmp ecx, 0x1680
jmp 0x10083c65
cmp ecx, 0x205f
ja 0x10083c5f
je 0x10083c6b
cmp ecx, 0x2000
jb case.0x1008753f.14
cmp ecx, 0x200a
jbe 0x10083c6b
cmp ecx, 0x202f
jmp 0x10083c65
cmp ecx, 0x3000
jne case.0x1008753f.14
inc eax
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x10083af0
mov edi, dword [ebp - 0xa4]
jmp 0x100838e0
mov ebx, dword [ebp - 0x80]
mov eax, 1
mov dword [ebp - 0x90], eax
cmp edx, eax
jl 0x100838e0
jmp 0x10083ca0
cmp esi, dword [ebx + 0x78]
jae 0x1008768c
movzx ecx, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp ecx, 0xc0
jb 0x10083dc3
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10083cdc
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x10083db1
mov dh, byte [edx]
mov byte [ebp - 0xad], dh
test cl, 0x10
jne 0x10083d04
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10083db1
mov dl, byte [esi + 2]
mov byte [ebp - 0xa5], dl
test cl, 8
jne 0x10083d35
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10083dae
movzx edi, byte [ebp - 0xa5]
lea edx, [esi + 4]
movzx ebx, byte [esi + 3]
and edi, 0x3f
mov dword [ebp - 0xa0], edx
and ebx, 0x3f
movzx edx, byte [ebp - 0xad]
and edx, 0x3f
mov dword [ebp - 0x98], edx
test cl, 4
jne 0x10083d83
mov esi, dword [ebp - 0xa0]
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 0x10083dae
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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 - 0x80]
mov eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x88], esi
cmp ecx, 0x85
ja 0x10083ddb
je case.0x1008753f.14
cmp ecx, 0xa
jb 0x10083def
cmp ecx, 0xd
jmp 0x10083de9
cmp ecx, 0x2028
jb 0x10083def
cmp ecx, 0x2029
jbe case.0x1008753f.14
inc eax
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x10083ca0
mov edi, dword [ebp - 0xa4]
jmp 0x100838e0
mov ebx, dword [ebp - 0x8c]
mov edx, 1
mov dword [ebp - 0x90], edx
cmp ebx, edx
jl 0x100838d7
mov eax, dword [ebp - 0x80]
cmp esi, dword [eax + 0x78]
jae 0x10086eec
movzx ecx, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp ecx, 0xc0
jb 0x10083f45
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10083e61
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x10083f39
mov dh, byte [edx]
mov byte [ebp - 0xad], dh
test cl, 0x10
jne 0x10083e89
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10083f39
mov dl, byte [esi + 2]
mov byte [ebp - 0xa5], dl
test cl, 8
jne 0x10083eba
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10083f33
movzx edi, byte [ebp - 0xa5]
lea edx, [esi + 4]
movzx ebx, byte [esi + 3]
and edi, 0x3f
mov dword [ebp - 0xa0], edx
and ebx, 0x3f
movzx edx, byte [ebp - 0xad]
and edx, 0x3f
mov dword [ebp - 0x98], edx
test cl, 4
jne 0x10083f08
mov esi, dword [ebp - 0xa0]
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 0x10083f33
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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 edx, dword [ebp - 0x90]
mov dword [ebp - 0x88], esi
cmp ecx, 0x85
ja 0x10083f57
je 0x10083f66
lea eax, [ecx - 0xa]
cmp eax, 3
jmp 0x10083f60
lea eax, [ecx - 0x2028]
cmp eax, 1
ja case.0x1008753f.14
inc edx
mov dword [ebp - 0x90], edx
cmp edx, ebx
jle 0x10083e22
jmp 0x100838d1
mov ebx, dword [ebp - 0x8c]
mov edx, 1
mov dword [ebp - 0x90], edx
cmp ebx, edx
jl 0x100838d7
mov eax, dword [ebp - 0x80]
cmp esi, dword [eax + 0x78]
jae 0x10086eec
movzx ecx, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp ecx, 0xc0
jb 0x100840b9
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10083fd2
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x100840aa
mov dh, byte [edx]
mov byte [ebp - 0xad], dh
test cl, 0x10
jne 0x10083ffa
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x100840aa
mov dl, byte [esi + 2]
mov byte [ebp - 0xa5], dl
test cl, 8
jne 0x1008402b
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x100840a4
movzx edi, byte [ebp - 0xa5]
lea edx, [esi + 4]
movzx ebx, byte [esi + 3]
and edi, 0x3f
mov dword [ebp - 0xa0], edx
and ebx, 0x3f
movzx edx, byte [ebp - 0xad]
and edx, 0x3f
mov dword [ebp - 0x98], edx
test cl, 4
jne 0x10084079
mov esi, dword [ebp - 0xa0]
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 0x100840a4
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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 edx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x88], esi
cmp ecx, 0x80
jae 0x100840ce
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne case.0x1008753f.14
inc edx
mov dword [ebp - 0x90], edx
cmp edx, ebx
jle 0x10083f93
jmp 0x100838d1
mov ebx, dword [ebp - 0x8c]
mov edx, 1
cmp ebx, edx
jl 0x100838d7
mov eax, dword [ebp - 0x80]
mov edi, dword [eax + 0x78]
jmp 0x10084100
cmp esi, edi
jae 0x10086eec
movzx ecx, byte [esi]
cmp ecx, 0x80
jae case.0x1008753f.14
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
je case.0x1008753f.14
mov eax, dword [ebp - 0x80]
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, ebx
jle 0x10084100
mov edi, dword [ebp - 0xa4]
mov ebx, eax
mov edx, dword [ebp - 0x8c]
jmp 0x100838e0
mov edi, 1
cmp edx, edi
jl 0x10083680
mov eax, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x8c]
mov edx, dword [eax + 0x78]
nop
cmp esi, edx
jae 0x10086eec
movzx ecx, byte [esi]
cmp ecx, 0x80
jae 0x10084180
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jne case.0x1008753f.14
inc esi
mov dword [ebp - 0x88], esi
cmp esi, edx
jae 0x100841a3
jmp 0x10084190
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x1008419d
inc esi
cmp esi, edx
jb 0x10084190
mov dword [ebp - 0x88], esi
mov eax, dword [ebp - 0x80]
inc edi
cmp edi, ebx
jle 0x10084160
mov edi, dword [ebp - 0xa4]
mov ebx, eax
mov edx, dword [ebp - 0x8c]
jmp 0x100838e0
mov ebx, dword [ebp - 0x8c]
mov edx, 1
cmp ebx, edx
jl 0x100838d7
mov eax, dword [ebp - 0x80]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x10086eec
movzx ecx, byte [esi]
cmp ecx, 0x80
jae case.0x1008753f.14
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
je case.0x1008753f.14
mov eax, dword [ebp - 0x80]
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, ebx
jle 0x100841d7
mov edi, dword [ebp - 0xa4]
mov ebx, eax
mov edx, dword [ebp - 0x8c]
jmp 0x100838e0
mov edi, 1
cmp edx, edi
jl 0x10083680
mov eax, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x8c]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x10086eec
movzx ecx, byte [esi]
cmp ecx, 0x80
jae 0x10084256
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
jne case.0x1008753f.14
inc esi
mov dword [ebp - 0x88], esi
cmp esi, edx
jae 0x10084274
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x1008426e
inc esi
cmp esi, edx
jb 0x10084261
mov dword [ebp - 0x88], esi
mov eax, dword [ebp - 0x80]
inc edi
cmp edi, ebx
jle 0x10084236
mov edi, dword [ebp - 0xa4]
mov ebx, eax
mov edx, dword [ebp - 0x8c]
jmp 0x100838e0
mov ebx, dword [ebp - 0x8c]
mov edx, 1
cmp ebx, edx
jl 0x100838d7
mov eax, dword [ebp - 0x80]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x10086eec
movzx ecx, byte [esi]
cmp ecx, 0x80
jae case.0x1008753f.14
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
je case.0x1008753f.14
mov eax, dword [ebp - 0x80]
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, ebx
jle 0x100842a8
mov edi, dword [ebp - 0xa4]
mov ebx, eax
mov edx, dword [ebp - 0x8c]
jmp 0x100838e0
cmp eax, 0xf
ja case.0x100874d6.15
jmp dword [eax*4 + 0x10087f28]
mov ebx, 1
cmp edx, ebx
jl 0x100838dd
mov ecx, dword [ebp - 0x80]
mov edi, edi
mov eax, dword [ecx + 0x78]
cmp esi, eax
jae 0x10086ea6
mov edi, dword [ebp - 0x80]
mov ecx, dword [ecx + 0x18]
add edi, 0x1c
test ecx, ecx
je 0x10084395
push 0
push edi
push eax
push ecx
push esi
call fcn.10089160
add esp, 0x14
test eax, eax
jne case.0x1008753f.14
mov edx, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x80]
cmp dword [ecx + 0x88], 0
je 0x1008437e
lea eax, [esi + 1]
cmp eax, dword [ecx + 0x78]
jb 0x1008437e
cmp dword [ecx + 0x18], 0
jne 0x1008437e
cmp dword [edi], 2
jne 0x1008437e
mov al, byte [esi]
cmp al, byte [ecx + 0x34]
jne 0x1008437e
mov dword [ecx + 0x64], 1
cmp dword [ecx + 0x88], 1
jg 0x100876b9
inc esi
inc ebx
mov dword [ebp - 0x88], esi
cmp ebx, edx
jle 0x10084310
mov edi, dword [ebp - 0xa4]
jmp 0x100838dd
sub eax, dword [edi]
cmp esi, eax
ja 0x10084344
mov ecx, dword [ebp - 0x80]
mov al, byte [esi]
cmp al, byte [ecx + 0x34]
mov ecx, dword [edi]
jne 0x10084344
cmp ecx, 1
je case.0x1008753f.14
mov ecx, dword [ebp - 0x80]
mov al, byte [esi + 1]
cmp al, byte [ecx + 0x35]
je case.0x1008753f.14
jmp 0x10084347
mov ebx, dword [ebp - 0x80]
mov eax, dword [ebx + 0x78]
sub eax, edx
cmp esi, eax
ja 0x1008768c
add esi, edx
mov dword [ebp - 0x88], esi
jmp 0x100838e0
mov ecx, 1
cmp edx, ecx
jl 0x100838dd
mov eax, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x8c]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x10086eec
movzx eax, byte [esi]
inc esi
sub eax, 0xa
mov dword [ebp - 0x88], esi
cmp eax, 0x7b
ja case.0x1008753f.14
movzx eax, byte [eax + 0x10087f78]
jmp dword [eax*4 + 0x10087f68]
cmp esi, edx
jae case.0x1008441c.10
cmp byte [esi], 0xa
mov eax, dword [ebp - 0x80]
jne 0x1008444a
inc esi
mov dword [ebp - 0x88], esi
jmp 0x1008444a
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x68], 0
jne case.0x1008753f.14
jmp 0x1008444a
mov eax, dword [ebp - 0x80]
inc ecx
cmp ecx, ebx
jle 0x100843f7
jmp 0x100838d7
mov ecx, 1
cmp edx, ecx
jl 0x100838dd
mov eax, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x8c]
mov edx, dword [eax + 0x78]
lea ecx, [ecx]
cmp esi, edx
jae 0x10086ee9
mov al, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp al, 9
je case.0x1008753f.14
cmp al, 0x20
je case.0x1008753f.14
cmp al, 0xa0
je case.0x1008753f.14
inc ecx
cmp ecx, ebx
jle 0x10084470
jmp 0x100838d7
mov ecx, 1
cmp edx, ecx
jl 0x100838dd
mov eax, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x8c]
mov edx, dword [eax + 0x78]
lea esp, [esp]
cmp esi, edx
jae 0x10086ee9
mov al, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp al, 9
je 0x100844e1
cmp al, 0x20
je 0x100844e1
cmp al, 0xa0
jne case.0x1008753f.14
inc ecx
cmp ecx, ebx
jle 0x100844c0
jmp 0x100838d7
mov ecx, 1
cmp edx, ecx
jl 0x100838dd
mov eax, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x8c]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x10086ee9
mov al, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp al, 0xa
jb 0x10084529
cmp al, 0xd
jbe case.0x1008753f.14
cmp al, 0x85
je case.0x1008753f.14
inc ecx
cmp ecx, ebx
jle 0x10084504
jmp 0x100838d7
mov ecx, 1
cmp edx, ecx
jl 0x100838dd
mov eax, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x8c]
mov edx, dword [eax + 0x78]
lea esp, [esp]
cmp esi, edx
jae 0x10086ee9
mov al, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp al, 0xa
jb case.0x1008753f.14
cmp al, 0xd
jbe 0x10084575
cmp al, 0x85
jne case.0x1008753f.14
inc ecx
cmp ecx, ebx
jle 0x10084550
jmp 0x100838d7
mov ebx, dword [ebp - 0x8c]
mov edx, 1
cmp ebx, edx
jl 0x100838d7
mov eax, dword [ebp - 0x80]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x10086eec
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne case.0x1008753f.14
mov eax, dword [ebp - 0x80]
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, ebx
jle 0x10084598
mov edi, dword [ebp - 0xa4]
mov ebx, eax
mov edx, dword [ebp - 0x8c]
jmp 0x100838e0
mov ebx, dword [ebp - 0x8c]
mov edx, 1
cmp ebx, edx
jl 0x100838d7
mov eax, dword [ebp - 0x80]
mov edi, dword [eax + 0x78]
jmp 0x100845f0
cmp esi, edi
jae 0x10086eec
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
je case.0x1008753f.14
mov eax, dword [ebp - 0x80]
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, ebx
jle 0x100845f0
mov edi, dword [ebp - 0xa4]
mov ebx, eax
mov edx, dword [ebp - 0x8c]
jmp 0x100838e0
mov ebx, dword [ebp - 0x8c]
mov edx, 1
cmp ebx, edx
jl 0x100838d7
mov eax, dword [ebp - 0x80]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x10086eec
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jne case.0x1008753f.14
mov eax, dword [ebp - 0x80]
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, ebx
jle 0x10084643
mov edi, dword [ebp - 0xa4]
mov ebx, eax
mov edx, dword [ebp - 0x8c]
jmp 0x100838e0
mov ebx, dword [ebp - 0x8c]
mov edx, 1
cmp ebx, edx
jl 0x100838d7
mov eax, dword [ebp - 0x80]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x10086eec
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
je case.0x1008753f.14
mov eax, dword [ebp - 0x80]
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, ebx
jle 0x10084696
mov edi, dword [ebp - 0xa4]
mov ebx, eax
mov edx, dword [ebp - 0x8c]
jmp 0x100838e0
mov ebx, dword [ebp - 0x8c]
mov edx, 1
cmp ebx, edx
jl 0x100838d7
mov eax, dword [ebp - 0x80]
mov edi, dword [eax + 0x78]
lea esp, [esp]
cmp esi, edi
jae 0x10086eec
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
jne case.0x1008753f.14
mov eax, dword [ebp - 0x80]
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, ebx
jle 0x100846f0
mov edi, dword [ebp - 0xa4]
mov ebx, eax
mov edx, dword [ebp - 0x8c]
jmp 0x100838e0
mov ebx, dword [ebp - 0x8c]
mov edx, 1
cmp ebx, edx
jl 0x100838d7
mov eax, dword [ebp - 0x80]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x10086eec
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
je case.0x1008753f.14
mov eax, dword [ebp - 0x80]
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, ebx
jle 0x10084743
mov edi, dword [ebp - 0xa4]
mov ebx, eax
mov edx, dword [ebp - 0x8c]
jmp 0x100838e0
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10084c76
jmp 0x10084790
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x100848dc
mov ecx, dword [edi + 0x18]
add edi, 0x1c
test ecx, ecx
je 0x100847c7
push dword [ebp - 0xc0]
push edi
push eax
push ecx
push esi
call fcn.10089160
add esp, 0x14
test eax, eax
jne 0x10084c73
mov edx, dword [ebp - 0x8c]
jmp 0x100847f7
mov ecx, dword [edi]
sub eax, ecx
cmp esi, eax
ja 0x100847f7
mov ebx, dword [ebp - 0x80]
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
mov ebx, dword [ebp - 0x98]
jne 0x100847f7
cmp ecx, 1
je 0x10084c73
mov ecx, dword [ebp - 0x80]
mov al, byte [esi + 1]
cmp al, byte [ecx + 0x35]
je 0x1008565f
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x88], 0
je 0x1008483e
mov ecx, dword [ebp - 0x80]
lea eax, [esi + 1]
cmp eax, dword [ecx + 0x78]
jb 0x1008483a
mov eax, ecx
cmp dword [eax + 0x18], 0
jne 0x1008483e
cmp dword [edi], 2
jne 0x1008483e
mov al, byte [esi]
mov edi, ecx
cmp al, byte [edi + 0x34]
jne 0x10084840
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
jmp 0x10084840
mov edi, ecx
jmp 0x10084840
mov edi, eax
mov ecx, dword [edi + 0x78]
inc esi
mov dword [ebp - 0x88], esi
cmp esi, ecx
jae 0x10084863
mov edi, edi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x1008485d
inc esi
cmp esi, ecx
jb 0x10084850
mov dword [ebp - 0x88], esi
mov ecx, dword [ebp - 0xac]
inc edx
mov dword [ebp - 0x8c], edx
cmp edx, ecx
jl 0x10084790
jmp 0x10084c76
mov edi, dword [ebp - 0x80]
cmp ecx, 0x7fffffff
jge 0x100848d3
cmp edx, ecx
jge 0x10084c76
mov ecx, dword [edi + 0x78]
mov eax, dword [ebp - 0xac]
lea esp, [esp]
cmp esi, ecx
jae 0x100848dc
inc esi
mov dword [ebp - 0x88], esi
cmp esi, ecx
jae 0x100848c9
nop
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x100848bd
inc esi
cmp esi, ecx
jb 0x100848b0
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x88], esi
inc edx
cmp edx, eax
jl 0x100848a0
jmp 0x10084c76
mov esi, dword [edi + 0x78]
mov dword [ebp - 0x88], esi
cmp dword [edi + 0x88], 0
je 0x10084c76
cmp esi, dword [edi + 0x84]
jbe 0x10084c76
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
jmp 0x10084c76
mov edi, dword [ebp - 0x80]
sub ecx, edx
mov dword [ebp - 0xac], ecx
mov edx, dword [ebp - 0xac]
mov ecx, dword [edi + 0x78]
mov eax, ecx
sub eax, esi
cmp edx, eax
jbe 0x1008492e
mov esi, ecx
jmp 0x100848d6
add esi, edx
mov dword [ebp - 0x88], esi
jmp 0x10084c76
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10084c76
mov edx, dword [edi + 0x78]
mov dword [ebp - 0x90], edx
nop
mov eax, 1
cmp esi, edx
jae 0x10084ac2
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x10084a45
mov al, byte [esi + 1]
movzx eax, al
and eax, 0x3f
test cl, 0x20
jne 0x1008498c
and ecx, 0x1f
shl ecx, 6
or ecx, eax
mov eax, 2
jmp 0x10084a45
mov dl, byte [esi + 2]
test cl, 0x10
jne 0x100849b1
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x10084a3f
mov bl, byte [esi + 3]
test cl, 8
jne 0x100849de
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, bl
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x10084a3f
movzx edi, bl
movzx ebx, byte [esi + 4]
and edi, 0x3f
movzx edx, dl
and ebx, 0x3f
and edx, 0x3f
test cl, 4
jne 0x10084a14
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 0x10084a3c
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 - 0x80]
mov edx, dword [ebp - 0x90]
cmp ecx, 0xd
jne 0x10084a61
inc esi
mov dword [ebp - 0x88], esi
cmp esi, edx
jae 0x10085629
cmp byte [esi], 0xa
jne 0x10084a9e
inc esi
jmp 0x10084a98
cmp ecx, 0xa
je 0x10084a96
cmp dword [edi + 0x68], 0
jne 0x10085629
cmp ecx, 0xb
je 0x10084a96
cmp ecx, 0xc
je 0x10084a96
cmp ecx, 0x85
je 0x10084a96
cmp ecx, 0x2028
je 0x10084a96
cmp ecx, 0x2029
jne 0x10085629
add esi, eax
mov dword [ebp - 0x88], esi
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x10084950
mov ebx, dword [ebp - 0x98]
jmp 0x10084c76
cmp dword [edi + 0x88], 0
je 0x10085629
cmp esi, dword [edi + 0x84]
jbe 0x10085629
mov dword [edi + 0x64], eax
cmp dword [edi + 0x88], eax
jg 0x100876b9
mov ebx, dword [ebp - 0x98]
jmp 0x10084c76
cmp edx, ecx
jge 0x10084c73
lea ecx, [ecx]
mov eax, dword [ebp - 0x80]
mov edx, 1
cmp esi, dword [eax + 0x78]
jae 0x10084d0c
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x10084be7
mov al, byte [esi + 1]
movzx eax, al
test cl, 0x20
jne 0x10084b38
and ecx, 0x1f
mov edx, 2
jmp 0x10084bdf
mov dl, byte [esi + 2]
and eax, 0x3f
test cl, 0x10
jne 0x10084b58
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
mov edx, 3
jmp 0x10084bdf
mov bl, byte [esi + 3]
test cl, 8
jne 0x10084b7d
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov edx, 4
movzx eax, bl
jmp 0x10084bdf
movzx edi, bl
movzx ebx, byte [esi + 4]
and edi, 0x3f
movzx edx, dl
and ebx, 0x3f
and edx, 0x3f
test cl, 4
jne 0x10084bb9
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 - 0xa4]
shl ecx, 6
or ecx, ebx
jmp 0x10084be7
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 - 0xa4]
shl ecx, 6
or ecx, ebx
and eax, 0x3f
shl ecx, 6
or ecx, eax
cmp ecx, 0x180e
ja 0x10084c0d
je 0x10084c3b
cmp ecx, 0xa0
ja 0x10084c05
je 0x10084c3b
cmp ecx, 9
je 0x10084c3b
cmp ecx, 0x20
jmp 0x10084c35
cmp ecx, 0x1680
jmp 0x10084c35
cmp ecx, 0x205f
ja 0x10084c2f
je 0x10084c3b
cmp ecx, 0x2000
jb 0x10084c37
cmp ecx, 0x200a
jbe 0x10084c3b
cmp ecx, 0x202f
jmp 0x10084c35
cmp ecx, 0x3000
je 0x10084c3b
xor ecx, ecx
jmp 0x10084c40
mov ecx, 1
xor eax, eax
cmp edi, 0x12
sete al
cmp ecx, eax
je 0x10084c6d
mov eax, dword [ebp - 0x8c]
add esi, edx
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x10084b00
mov ebx, dword [ebp - 0x98]
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc4], 0
jne 0x1007e3bf
cmp esi, ebx
jbe 0x10082290
jmp 0x10084c90
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov dword [ebp - 0x88], esi
cmp al, 0x80
jne 0x10084ce0
nop
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10084cd0
mov dword [ebp - 0x88], esi
cmp byte [ebp - 0x91], 0x11
jne 0x10084d03
cmp esi, ebx
jbe 0x10082290
cmp byte [esi], 0xa
jne 0x10084d03
cmp byte [esi - 1], 0xd
jne 0x10084d03
dec esi
mov dword [ebp - 0x88], esi
cmp esi, ebx
ja 0x10084c90
jmp 0x10082290
mov edi, eax
cmp dword [edi + 0x88], 0
je 0x10085629
cmp esi, dword [edi + 0x84]
jbe 0x10085629
mov dword [edi + 0x64], edx
cmp dword [edi + 0x88], edx
jg 0x100876b9
mov ebx, dword [ebp - 0x98]
jmp 0x10084c76
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10084c76
lea esp, [esp]
mov edx, 1
cmp esi, dword [edi + 0x78]
jae 0x10084d0e
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x10084e2a
mov al, byte [esi + 1]
movzx eax, al
test cl, 0x20
jne 0x10084d81
and ecx, 0x1f
mov edx, 2
jmp 0x10084e22
mov dl, byte [esi + 2]
and eax, 0x3f
test cl, 0x10
jne 0x10084da1
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
mov edx, 3
jmp 0x10084e22
mov bl, byte [esi + 3]
test cl, 8
jne 0x10084dc6
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov edx, 4
movzx eax, bl
jmp 0x10084e22
movzx edi, bl
movzx ebx, byte [esi + 4]
and edi, 0x3f
movzx edx, dl
and ebx, 0x3f
and edx, 0x3f
test cl, 4
jne 0x10084dff
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 - 0x80]
shl ecx, 6
or ecx, ebx
jmp 0x10084e2a
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 - 0x80]
shl ecx, 6
or ecx, ebx
and eax, 0x3f
shl ecx, 6
or ecx, eax
cmp ecx, 0x85
ja 0x10084e80
je 0x10084e8b
cmp ecx, 0xa
jb 0x10084e3e
cmp ecx, 0xd
jbe 0x10084e8b
xor ecx, ecx
xor eax, eax
cmp byte [ebp - 0x91], 0x14
sete al
cmp ecx, eax
je 0x10085629
mov eax, dword [ebp - 0x8c]
add esi, edx
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x10084d50
mov ebx, dword [ebp - 0x98]
jmp 0x10084c76
lea eax, [ecx - 0x2028]
cmp eax, 1
ja 0x10084e3e
mov ecx, 1
jmp 0x10084e40
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10084c76
lea ecx, [ecx]
mov ecx, 1
cmp esi, dword [edi + 0x78]
jae 0x10084fce
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x10084f8d
mov al, byte [esi + 1]
test dl, 0x20
jne 0x10084ed5
and edx, 0x1f
movzx eax, al
mov ecx, 2
jmp 0x10084f85
mov bh, byte [esi + 2]
test dl, 0x10
jne 0x10084ef8
and edx, 0xf
movzx eax, al
and eax, 0x3f
shl edx, 6
or edx, eax
mov ecx, 3
movzx eax, bh
jmp 0x10084f85
mov bl, byte [esi + 3]
test dl, 8
jne 0x10084f23
movzx ecx, al
and edx, 7
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx eax, bh
and eax, 0x3f
shl edx, 6
or edx, eax
mov ecx, 4
movzx eax, bl
jmp 0x10084f85
movzx ecx, bh
movzx edi, bl
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
movzx eax, al
and ebx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x10084f62
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
jmp 0x10084f8d
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x10084fa2
mov eax, dword [edi + 0x40]
test byte [edx + eax], 4
jne 0x10085629
mov eax, dword [ebp - 0x8c]
add esi, ecx
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x10084ea0
mov ebx, dword [ebp - 0x98]
jmp 0x10084c76
cmp dword [edi + 0x88], 0
je 0x10085629
cmp esi, dword [edi + 0x84]
jbe 0x10085629
mov dword [edi + 0x64], ecx
cmp dword [edi + 0x88], ecx
jg 0x100876b9
mov ebx, dword [ebp - 0x98]
jmp 0x10084c76
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10084c76
lea esp, [esp]
mov ecx, 1
cmp esi, dword [edi + 0x78]
jae 0x10084fce
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x100850f9
mov al, byte [esi + 1]
test dl, 0x20
jne 0x10085041
movzx eax, al
and edx, 0x1f
mov ecx, 2
jmp 0x100850f1
mov bh, byte [esi + 2]
test dl, 0x10
jne 0x10085064
and edx, 0xf
movzx eax, al
and eax, 0x3f
shl edx, 6
or edx, eax
mov ecx, 3
movzx eax, bh
jmp 0x100850f1
mov bl, byte [esi + 3]
test dl, 8
jne 0x1008508f
movzx ecx, al
and edx, 7
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx eax, bh
and eax, 0x3f
shl edx, 6
or edx, eax
mov ecx, 4
movzx eax, bl
jmp 0x100850f1
movzx ecx, bh
movzx edi, bl
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
movzx eax, al
and ebx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x100850ce
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
jmp 0x100850f9
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x10085629
mov eax, dword [edi + 0x40]
test byte [edx + eax], 4
je 0x10085629
mov eax, dword [ebp - 0x8c]
add esi, ecx
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x10085010
mov ebx, dword [ebp - 0x98]
jmp 0x10084c76
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10084c76
lea esp, [esp]
mov ecx, 1
cmp esi, dword [edi + 0x78]
jae 0x10084fce
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x1008523d
mov al, byte [esi + 1]
test dl, 0x20
jne 0x10085185
movzx eax, al
and edx, 0x1f
mov ecx, 2
jmp 0x10085235
mov bh, byte [esi + 2]
test dl, 0x10
jne 0x100851a8
movzx ecx, al
and edx, 0xf
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx eax, bh
mov ecx, 3
jmp 0x10085235
mov bl, byte [esi + 3]
test dl, 8
jne 0x100851d3
movzx ecx, al
and edx, 7
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx eax, bh
and eax, 0x3f
shl edx, 6
or edx, eax
mov ecx, 4
movzx eax, bl
jmp 0x10085235
movzx ecx, bh
movzx edi, bl
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
movzx eax, al
and ebx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x10085212
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
jmp 0x1008523d
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x10085252
mov eax, dword [edi + 0x40]
test byte [edx + eax], 1
jne 0x10085629
mov eax, dword [ebp - 0x8c]
add esi, ecx
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x10085150
mov ebx, dword [ebp - 0x98]
jmp 0x10084c76
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10084c76
lea esp, [esp]
mov ecx, 1
cmp esi, dword [edi + 0x78]
jae 0x10084fce
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x1008537d
mov al, byte [esi + 1]
test dl, 0x20
jne 0x100852c5
movzx eax, al
and edx, 0x1f
mov ecx, 2
jmp 0x10085375
mov bh, byte [esi + 2]
test dl, 0x10
jne 0x100852e8
movzx ecx, al
and edx, 0xf
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx eax, bh
mov ecx, 3
jmp 0x10085375
mov bl, byte [esi + 3]
test dl, 8
jne 0x10085313
movzx ecx, al
and edx, 7
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx eax, bh
and eax, 0x3f
shl edx, 6
or edx, eax
mov ecx, 4
movzx eax, bl
jmp 0x10085375
movzx ecx, bh
movzx edi, bl
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
movzx eax, al
and ebx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x10085352
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
jmp 0x1008537d
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x10085629
mov eax, dword [edi + 0x40]
test byte [edx + eax], 1
je 0x10085629
mov eax, dword [ebp - 0x8c]
add esi, ecx
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x10085290
mov ebx, dword [ebp - 0x98]
jmp 0x10084c76
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10084c76
lea ecx, [ecx]
mov ecx, 1
cmp esi, dword [edi + 0x78]
jae 0x10084fce
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x100854bd
mov al, byte [esi + 1]
test dl, 0x20
jne 0x10085405
movzx eax, al
and edx, 0x1f
mov ecx, 2
jmp 0x100854b5
mov bh, byte [esi + 2]
test dl, 0x10
jne 0x10085428
movzx ecx, al
and edx, 0xf
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx eax, bh
mov ecx, 3
jmp 0x100854b5
mov bl, byte [esi + 3]
test dl, 8
jne 0x10085453
movzx ecx, al
and edx, 7
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx eax, bh
and eax, 0x3f
shl edx, 6
or edx, eax
mov ecx, 4
movzx eax, bl
jmp 0x100854b5
movzx ecx, bh
movzx edi, bl
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
movzx eax, al
and ebx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x10085492
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
jmp 0x100854bd
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x100854d2
mov eax, dword [edi + 0x40]
test byte [edx + eax], 0x10
jne 0x10085629
mov eax, dword [ebp - 0x8c]
add esi, ecx
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x100853d0
mov ebx, dword [ebp - 0x98]
jmp 0x10084c76
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10084c76
lea esp, [esp]
mov ecx, 1
cmp esi, dword [edi + 0x78]
jae 0x10085634
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x100855f7
mov al, byte [esi + 1]
test dl, 0x20
jne 0x10085545
movzx eax, al
and edx, 0x1f
mov ecx, 2
jmp 0x100855ef
mov bh, byte [esi + 2]
test dl, 0x10
jne 0x10085568
movzx ecx, al
and edx, 0xf
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx eax, bh
mov ecx, 3
jmp 0x100855ef
mov bl, byte [esi + 3]
movzx eax, al
and eax, 0x3f
test dl, 8
jne 0x10085593
and edx, 7
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, bh
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, bl
jmp 0x100855ef
movzx ecx, bh
movzx edi, bl
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x100855cc
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
jmp 0x100855f7
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, edi
mov edi, dword [ebp - 0x80]
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x10085629
mov eax, dword [edi + 0x40]
test byte [edx + eax], 0x10
je 0x10085629
mov eax, dword [ebp - 0x8c]
add esi, ecx
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x10085510
mov ebx, dword [ebp - 0x98]
jmp 0x10084c76
cmp dword [edi + 0x88], 0
je 0x10085629
cmp esi, dword [edi + 0x84]
jbe 0x10085629
mov dword [edi + 0x64], ecx
cmp dword [edi + 0x88], ecx
jg 0x100876b9
mov ebx, dword [ebp - 0x98]
jmp 0x10084c76
mov edi, ecx
jmp 0x10084c76
cmp eax, 0xf
ja case.0x100874d6.15
jmp dword [eax*4 + 0x10087ff4]
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10085abc
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x10085770
mov ecx, dword [edi + 0x18]
add edi, 0x1c
test ecx, ecx
je 0x100856b4
push 0
push edi
push eax
push ecx
push esi
call fcn.10089160
add esp, 0x14
test eax, eax
jne 0x10085ab9
mov edx, dword [ebp - 0x8c]
jmp 0x100856e4
mov ecx, dword [edi]
sub eax, ecx
cmp esi, eax
ja 0x100856e4
mov ebx, dword [ebp - 0x80]
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
mov ebx, dword [ebp - 0x98]
jne 0x100856e4
cmp ecx, 1
je 0x10085ab9
mov ecx, dword [ebp - 0x80]
mov al, byte [esi + 1]
cmp al, byte [ecx + 0x35]
je 0x10085ab5
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x88], 0
je 0x1008572b
mov ecx, dword [ebp - 0x80]
lea eax, [esi + 1]
cmp eax, dword [ecx + 0x78]
jb 0x10085727
mov eax, ecx
cmp dword [eax + 0x18], 0
jne 0x1008572b
cmp dword [edi], 2
jne 0x1008572b
mov al, byte [esi]
mov edi, ecx
cmp al, byte [edi + 0x34]
jne 0x1008572d
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
jmp 0x1008572d
mov edi, ecx
jmp 0x1008572d
mov edi, eax
inc edx
inc esi
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], edx
cmp edx, dword [ebp - 0xac]
jl 0x10085681
jmp 0x10085abc
mov edi, dword [ebp - 0x80]
sub ecx, edx
mov dword [ebp - 0xac], ecx
mov edx, dword [ebp - 0xac]
mov ecx, dword [edi + 0x78]
mov eax, ecx
sub eax, esi
cmp edx, eax
jbe 0x100857a2
mov esi, ecx
mov dword [ebp - 0x88], esi
cmp dword [edi + 0x88], 0
je 0x10085abc
cmp esi, dword [edi + 0x84]
jbe 0x10085abc
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x100876b9
jmp 0x10085abc
add esi, edx
mov dword [ebp - 0x88], esi
jmp 0x10085abc
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10085abc
mov ecx, dword [edi + 0x78]
lea ecx, [ecx]
cmp esi, ecx
jae 0x10085770
mov al, byte [esi]
cmp al, 0xd
jne 0x100857e0
inc esi
mov dword [ebp - 0x88], esi
cmp esi, ecx
jae 0x10085abc
cmp byte [esi], 0xa
jne 0x10085805
jmp 0x100857fe
cmp al, 0xa
je 0x100857fe
cmp dword [edi + 0x68], 0
jne 0x10085abc
cmp al, 0xb
je 0x100857fe
cmp al, 0xc
je 0x100857fe
cmp al, 0x85
jne 0x10085abc
inc esi
mov dword [ebp - 0x88], esi
inc edx
cmp edx, dword [ebp - 0xac]
jl 0x100857c0
jmp 0x10085abc
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10085abc
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x10085770
mov al, byte [esi]
cmp al, 9
je 0x10085abc
cmp al, 0x20
je 0x10085abc
cmp al, 0xa0
je 0x10085abc
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0xac]
jl 0x10085821
jmp 0x10085abc
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10085abc
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x10085770
mov al, byte [esi]
cmp al, 9
je 0x10085880
cmp al, 0x20
je 0x10085880
cmp al, 0xa0
jne 0x10085abc
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0xac]
jl 0x10085866
jmp 0x10085abc
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10085abc
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x10085770
mov al, byte [esi]
cmp al, 0xa
jb 0x100858c1
cmp al, 0xd
jbe 0x10085abc
cmp al, 0x85
je 0x10085abc
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0xac]
jl 0x100858a3
jmp 0x10085abc
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10085abc
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x10085770
mov al, byte [esi]
cmp al, 0xa
jb 0x10085abc
cmp al, 0xd
jbe 0x10085902
cmp al, 0x85
jne 0x10085abc
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0xac]
jl 0x100858e4
jmp 0x10085abc
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10085abc
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x10085770
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
jne 0x10085abc
mov eax, dword [ebp - 0x8c]
inc esi
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x10085925
jmp 0x10085abc
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10085abc
mov edx, dword [edi + 0x78]
lea esp, [esp]
cmp esi, edx
jae 0x10085770
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
je 0x10085abc
mov eax, dword [ebp - 0x8c]
inc esi
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x10085970
jmp 0x10085abc
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10085abc
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x10085770
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
jne 0x10085abc
mov eax, dword [ebp - 0x8c]
inc esi
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x100859b7
jmp 0x10085abc
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10085abc
mov edx, dword [edi + 0x78]
mov edi, edi
cmp esi, edx
jae 0x10085770
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
je 0x10085abc
mov eax, dword [ebp - 0x8c]
inc esi
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x10085a00
jmp 0x10085abc
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10085abc
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x10085770
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jne 0x10085abc
mov eax, dword [ebp - 0x8c]
inc esi
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x10085a47
jmp 0x10085abc
mov edi, dword [ebp - 0x80]
cmp edx, ecx
jge 0x10085abc
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x10085770
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je 0x10085abc
mov eax, dword [ebp - 0x8c]
inc esi
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
cmp eax, dword [ebp - 0xac]
jl 0x10085a83
jmp 0x10085abc
mov edi, ecx
jmp 0x10085abc
mov edi, dword [ebp - 0x80]
cmp dword [ebp - 0xc4], 0
jne 0x1007e3bf
cmp esi, ebx
je 0x10082290
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
dec esi
cmp byte [ebp - 0x91], 0x11
mov dword [ebp - 0x88], esi
jne 0x10085b2a
cmp esi, ebx
jbe 0x10085b2c
cmp byte [esi], 0xa
jne 0x10085b2a
cmp byte [esi - 1], 0xd
lea eax, [esi - 1]
jne 0x10085b2a
mov esi, eax
mov dword [ebp - 0x88], eax
cmp esi, ebx
jne 0x10085ad1
jmp 0x10082290
mov ebx, dword [ebp - 0x9c]
cmp al, 0x7a
mov eax, dword [ebp + 0x20]
jne 0x10085b76
inc eax
push eax
push dword [ebp - 0xb8]
lea eax, [edx + 3]
push edi
push ebx
push dword [ebp - 0xb4]
push eax
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov edx, dword [ebp - 0xa0]
mov dword [ebp - 0x84], edx
jmp 0x1008229c
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push ebx
push dword [ebp - 0xb4]
push dword [ebp - 0xa0]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov edx, dword [ebp - 0x84]
add edx, 3
mov dword [ebp - 0x84], edx
jmp 0x1008229c
cmp dword [ebp - 0x90], 0x8c
je 0x10085e3a
mov edi, dword [ebp - 0x80]
jmp 0x10082296
cmp al, 0x7a
mov eax, dword [ebp + 0x20]
jne 0x10085c17
inc eax
push eax
push dword [ebp - 0xb8]
lea eax, [ecx + 3]
push edx
push ebx
push dword [ebp - 0xb4]
push eax
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov al, byte [edi]
cmp al, 0x81
je 0x10085f77
cmp al, 0x88
jae 0x10085f47
mov edx, edi
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x84], edx
jmp 0x1008229c
inc eax
push eax
push dword [ebp - 0xb8]
push edx
push ebx
push dword [ebp - 0xb4]
push edi
push esi
call fcn.1007e2d0
add esp, 0x1c
cmp eax, 0xfffffc1b
jne 0x10085c49
mov ebx, dword [ebp - 0x80]
cmp dword [ebx + 0xb4], edi
jne 0x100822b8
jmp 0x10085c54
test eax, eax
jne 0x100822b8
mov ebx, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
add edx, 3
cmp byte [edi], 0x81
mov dword [ebp - 0x84], edx
je 0x10085f95
mov edi, dword [ebp - 0x80]
jmp 0x10082296
mov eax, dword [ebp - 0x84]
movzx edx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl edx, 8
or edx, eax
mov dword [ebp - 0xac], edx
lea eax, [edx + edx]
mov dword [ebp - 0xbc], eax
cmp eax, dword [edi + 0x14]
jl 0x100876cf
mov edx, dword [ebp - 0x90]
cmp edx, 0x88
jae 0x10085ceb
cmp edx, 0x81
je 0x10085ceb
cmp dword [edi + 0x6c], 0
mov edx, dword [ebp - 0x84]
jne 0x10085cfb
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x77
je 0x10085cfb
movzx eax, byte [edx]
movzx eax, byte [eax + 0x100d2cf8]
add edx, eax
mov dword [ebp - 0x84], edx
jmp 0x10082296
mov edx, dword [ebp - 0x84]
mov dword [edi + 0x98], 2
mov eax, dword [edi + 0x90]
mov ebx, dword [edi + 0xac]
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
movzx eax, byte [edx]
push edi
push dword [ebp - 0x9c]
movzx eax, byte [eax + 0x100d2cf8]
push dword [ebp - 0xb4]
add eax, edx
push eax
push esi
call fcn.1007e2d0
mov edi, eax
add esp, 0x1c
cmp edi, 0xfffffc20
jne 0x10085d7c
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 0x10087888
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x10085d84
cmp byte [edx], 0x77
jne 0x10087888
jmp 0x10085d84
test edi, edi
jne 0x1008783c
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.0x1008753f.14
mov eax, dword [ebp - 0xa0]
mov dword [edi + 0x90], eax
jmp 0x10085c9f
mov edi, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
jmp 0x1008229c
mov ebx, dword [ebp - 0x9c]
mov edx, dword [ebp - 0x84]
jmp 0x1008229c
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push ebx
mov ebx, dword [ebp - 0x84]
push dword [ebp - 0xb4]
movzx eax, byte [ebx]
movzx ecx, byte [ebx + 1]
movzx eax, byte [eax + 0x100d2cf8]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
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.10071699
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 - 0xb8]
push ecx
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push edx
push esi
call fcn.1007e2d0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
sub eax, 1
je case.0x1008753f.14
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
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.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xdc]
mov dword [edi + 0xa4], eax
mov eax, dword [ebp - 0xd4]
lea ecx, [ebp - 0x7c]
cmp eax, ecx
je 0x10085ecf
push eax
call dword [0x100f521c]
add esp, 4
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xd4]
lea ecx, [ebp - 0x7c]
cmp eax, ecx
je 0x10085ef9
push eax
call dword [0x100f521c]
add esp, 4
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
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.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xb4]
pop edi
mov dword [edx + 0x80], esi
pop esi
mov dword [edx + 0x7c], eax
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push dword [ebp - 0x80]
push ebx
push dword [ebp - 0xb4]
push edi
push esi
call fcn.1007e2d0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
mov ebx, dword [ebp - 0x80]
inc eax
push eax
push dword [ebp - 0xb8]
push ebx
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push edi
jmp 0x10085fae
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push ebx
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push edx
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov dword [ebx + 0xb4], edi
mov eax, 0xfffffc1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edx
push ebx
push dword [ebp - 0xb4]
push ecx
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov eax, dword [ebp - 0x80]
mov dword [eax + 0xb4], edi
mov eax, 0xfffffc1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xb4]
mov dword [edx + 0x7c], eax
mov eax, 0xfffffc1a
pop edi
mov dword [edx + 0x80], esi
pop esi
mov dword [edx + 0x8c], ebx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0xb4]
mov dword [eax + 0x80], esi
mov dword [eax + 0x8c], ebx
mov dword [eax + 0x7c], ecx
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x80]
cmp dword [edx + 0x88], 0
je case.0x1008753f.14
lea eax, [esi + 1]
cmp eax, dword [edx + 0x78]
jb case.0x1008753f.14
cmp dword [edx + 0x18], 0
jne case.0x1008753f.14
cmp dword [edi], 2
jne case.0x1008753f.14
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne case.0x1008753f.14
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jmp 0x100876b3
cmp dword [edi + 0x88], 0
je case.0x1008753f.14
cmp esi, dword [edi + 0x84]
jbe case.0x1008753f.14
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jmp 0x100876b3
cmp eax, 0xfffffffe
mov eax, dword [ebp - 0x80]
jne 0x100860fc
mov esi, dword [eax + 0x78]
cmp dword [eax + 0x88], 0
je case.0x1008753f.14
cmp esi, dword [eax + 0x78]
jb case.0x1008753f.14
cmp esi, dword [eax + 0x84]
jbe case.0x1008753f.14
mov dword [eax + 0x64], 1
cmp dword [eax + 0x88], 1
jmp 0x100876b3
cmp dword [ebp - 0xac], 0
je 0x100861de
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push dword [ebp - 0x80]
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push ecx
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
lea ebx, [ebx]
cmp ebx, dword [ebp - 0xbc]
jge case.0x1008753f.14
push dword [ebp - 0xa4]
push dword [ebp - 0x80]
push dword [ebp - 0x90]
push esi
push edi
call fcn.10088140
add esp, 0x14
test eax, eax
js 0x100860f1
add esi, eax
inc ebx
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push dword [ebp - 0x80]
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0xc4]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x10086170
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0xa0], esi
cmp ebx, eax
jge 0x1008625b
lea esp, [esp]
push dword [ebp - 0xa4]
push dword [ebp - 0x80]
push edx
push esi
push edi
call fcn.10088140
add esp, 0x14
test eax, eax
js 0x1008621b
mov edx, dword [ebp - 0x90]
inc ebx
add esi, eax
cmp ebx, dword [ebp - 0xbc]
jl 0x100861f0
jmp 0x1008624b
cmp eax, 0xfffffffe
jne 0x1008624b
mov ecx, dword [ebp - 0x80]
cmp dword [ecx + 0x88], 0
je 0x1008624b
mov eax, dword [ecx + 0x78]
cmp eax, dword [ecx + 0x84]
jbe 0x1008624b
mov dword [ecx + 0x64], 1
cmp dword [ecx + 0x88], 1
jg 0x100876b9
mov ebx, dword [ebp - 0xa0]
cmp esi, ebx
jb case.0x1008753f.14
jmp 0x10086261
mov ebx, dword [ebp - 0xa0]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push dword [ebp - 0x80]
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0xc4]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
sub esi, dword [ebp - 0x90]
cmp esi, ebx
jae 0x10086261
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x88], 0
je case.0x1008753f.14
jmp 0x10086112
mov edi, dword [ebp - 0x80]
test eax, eax
mov eax, dword [ebp + 0x20]
je 0x10086495
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov ebx, dword [ebp - 0xa4]
cmp ebx, dword [ebp - 0xac]
jge case.0x1008753f.14
cmp esi, dword [edi + 0x78]
jae 0x1008672b
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x1008641f
movzx eax, byte [esi]
lea ecx, [esi + 1]
and eax, 0x3f
test dl, 0x20
jne 0x10086344
and edx, 0x1f
mov esi, ecx
shl edx, 6
or edx, eax
jmp 0x1008641f
mov cl, byte [ecx]
test dl, 0x10
jne 0x10086366
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, cl
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 2
jmp 0x1008641c
mov ch, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0xbc], ebx
mov byte [ebp - 0xad], ch
test dl, 8
jne 0x100863a2
and edx, 7
mov esi, ebx
shl edx, 6
or edx, eax
movzx eax, cl
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, ch
shl edx, 6
and eax, 0x3f
or edx, eax
jmp 0x10086416
movzx edi, byte [ebp - 0xad]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xbc]
movzx ecx, cl
and ecx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test dl, 4
jne 0x100863eb
mov esi, dword [ebp - 0xa0]
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 0x10086416
and edx, 1
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0xa0]
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 - 0xa4]
mov edi, dword [ebp - 0x80]
cmp edx, 0xff
jbe 0x10086430
cmp dword [ebp - 0x90], 0x6e
jmp 0x10086448
mov ecx, edx
mov eax, 1
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0x98]
test byte [edx + ecx], al
je case.0x1008753f.14
mov eax, dword [ebp + 0x20]
inc ebx
inc eax
mov dword [ebp - 0xa4], ebx
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x10086302
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov ebx, dword [ebp - 0xa4]
jmp 0x100864d0
cmp ebx, dword [ebp - 0xac]
jge case.0x1008753f.14
cmp esi, dword [edi + 0x78]
jae 0x1008672b
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 - 0x98]
test byte [edx + ecx], al
je case.0x1008753f.14
mov eax, dword [ebp + 0x20]
inc ebx
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x100864d0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push dword [ebp - 0x80]
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov ebx, dword [ebp - 0xa4]
jmp 0x10086580
cmp ebx, edi
jge case.0x1008753f.14
mov eax, dword [ebp - 0x80]
cmp esi, dword [eax + 0x78]
jae 0x10086eec
movzx ecx, byte [esi]
inc esi
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x100866b3
cmp ecx, 0xc0
jb 0x100866b3
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x100865cf
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x100866ad
mov dl, byte [edx]
test cl, 0x10
jne 0x100865f1
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x100866a7
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0xbc], ebx
mov byte [ebp - 0xad], dh
test cl, 8
jne 0x1008662d
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x100866a1
movzx edi, byte [ebp - 0xad]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0xbc]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10086676
mov esi, dword [ebp - 0xa0]
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 0x100866a1
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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 - 0x90]
mov eax, dword [ebp - 0xc0]
push eax
push dword [ebp - 0x98]
push ecx
call fcn.100897e0
add esp, 0xc
test eax, eax
je case.0x1008753f.14
mov eax, dword [ebp + 0x20]
inc ebx
inc eax
mov dword [ebp - 0xa4], ebx
push eax
push dword [ebp - 0xb8]
push dword [ebp - 0x80]
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x10086580
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x88], 0
je case.0x1008753f.14
cmp esi, ecx
jb case.0x1008753f.14
jmp 0x10086738
cmp dword [edi + 0x88], 0
je case.0x1008753f.14
cmp esi, dword [edi + 0x84]
jbe case.0x1008753f.14
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jmp 0x10086f13
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x88], 0
je case.0x1008753f.14
cmp esi, dword [eax + 0x78]
jb case.0x1008753f.14
jmp 0x10086ef9
mov eax, dword [ebp + 0x20]
mov ebx, dword [ebp - 0x80]
inc eax
push eax
push dword [ebp - 0xb8]
push ebx
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
jmp 0x100867b0
cmp edi, dword [ebp - 0x98]
jge case.0x1008753f.14
mov ebx, dword [ebx + 0x78]
mov eax, ebx
mov edi, dword [ebp - 0xac]
sub eax, edi
cmp esi, eax
ja 0x1008687d
mov edx, dword [ebp - 0xa0]
mov ecx, esi
sub edi, 4
jb 0x100867f1
mov edi, edi
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x100867f6
add ecx, 4
add edx, 4
sub edi, 4
jae 0x100867e0
cmp edi, 0xfffffffc
je 0x10086827
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x1008687d
cmp edi, 0xfffffffd
je 0x10086827
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x1008687d
cmp edi, 0xfffffffe
je 0x10086827
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x1008687d
cmp edi, 0xffffffff
je 0x10086827
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x1008687d
mov eax, dword [ebp + 0x20]
mov ebx, dword [ebp - 0x80]
inc eax
mov edi, dword [ebp - 0xa4]
add esi, dword [ebp - 0xac]
inc edi
push eax
push dword [ebp - 0xb8]
mov dword [ebp - 0xa4], edi
push ebx
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x100867b0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x88], 0
je case.0x1008753f.14
cmp esi, ebx
jb case.0x1008753f.14
jmp 0x10086ef9
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push ecx
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
lea esp, [esp]
mov ecx, dword [ebp - 0xa4]
cmp ecx, dword [ebp - 0x98]
jge case.0x1008753f.14
mov edx, dword [ebp - 0x80]
cmp esi, dword [edx + 0x78]
jae 0x10087409
movzx eax, byte [esi]
cmp ebx, eax
je 0x100868fd
cmp edi, eax
jne case.0x1008753f.14
mov eax, dword [ebp + 0x20]
inc esi
inc eax
inc ecx
push eax
push dword [ebp - 0xb8]
mov dword [ebp - 0xa4], ecx
push edx
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x100868d0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov ecx, dword [ebp - 0xa4]
cmp ecx, dword [ebp - 0x98]
jge case.0x1008753f.14
cmp esi, dword [edi + 0x78]
jae 0x10086e63
movzx eax, byte [esi]
inc esi
cmp ebx, eax
jne case.0x1008753f.14
mov eax, dword [ebp + 0x20]
inc ecx
inc eax
mov dword [ebp - 0xa4], ecx
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x10086970
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
cmp dword [ebp - 0xc0], 0
push eax
push dword [ebp - 0xb8]
je 0x10086ba1
mov edi, dword [ebp - 0x80]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
lea esp, [esp]
mov eax, dword [ebp - 0x8c]
cmp eax, dword [ebp - 0xa4]
jge case.0x1008753f.14
cmp esi, dword [edi + 0x78]
jae 0x10086e63
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x10086b46
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10086a68
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x10086b40
mov dl, byte [edx]
test cl, 0x10
jne 0x10086a8a
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10086b3d
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0x90], ebx
mov byte [ebp - 0xad], dh
test cl, 8
jne 0x10086ac3
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x10086b37
movzx edi, byte [ebp - 0xad]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x90]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10086b0c
mov esi, dword [ebp - 0xa0]
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 0x10086b37
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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 - 0x98]
mov edi, dword [ebp - 0x80]
mov eax, dword [ebp - 0x8c]
cmp ebx, ecx
je case.0x1008753f.14
cmp dword [ebp - 0xac], ecx
je case.0x1008753f.14
inc eax
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x10086a20
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x80]
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov ebx, dword [ebp - 0x8c]
lea ecx, [ecx]
cmp ebx, dword [ebp - 0xa4]
jge case.0x1008753f.14
mov ecx, dword [ebp - 0x80]
cmp esi, dword [ecx + 0x78]
jae 0x10086ea6
movzx eax, byte [esi]
cmp dword [ebp - 0x98], eax
je case.0x1008753f.14
cmp edi, eax
je case.0x1008753f.14
mov eax, dword [ebp + 0x20]
inc esi
inc eax
inc ebx
push eax
push dword [ebp - 0xb8]
push ecx
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x10086bd0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push dword [ebp - 0x80]
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
test edx, edx
je 0x10086df2
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
jmp 0x10086c80
cmp edi, dword [ebp - 0xa4]
jge case.0x1008753f.14
mov edx, dword [ebp - 0x80]
cmp esi, dword [edx + 0x78]
jae 0x10087409
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x10086da3
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10086cc5
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x10086da0
mov dl, byte [edx]
test cl, 0x10
jne 0x10086ce7
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10086d9a
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0x90], ebx
mov byte [ebp - 0xad], dh
test cl, 8
jne 0x10086d20
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x10086d94
movzx edi, byte [ebp - 0xad]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x90]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x10086d69
mov esi, dword [ebp - 0xa0]
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 0x10086d94
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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 - 0x98]
mov edi, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x80]
cmp ebx, ecx
je case.0x1008753f.14
mov eax, dword [ebp + 0x20]
inc edi
inc eax
mov dword [ebp - 0x8c], edi
push eax
push dword [ebp - 0xb8]
push edx
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x10086c80
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
cmp edi, dword [ebp - 0xa4]
jge case.0x1008753f.14
mov ecx, dword [ebp - 0x80]
cmp esi, dword [ecx + 0x78]
jae 0x10086ea6
movzx eax, byte [esi]
inc esi
cmp ebx, eax
je case.0x1008753f.14
mov eax, dword [ebp + 0x20]
inc edi
inc eax
push eax
push dword [ebp - 0xb8]
push ecx
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x10086e02
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x88], 0
je case.0x1008753f.14
cmp esi, dword [edi + 0x84]
jbe case.0x1008753f.14
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jle case.0x1008753f.14
pop edi
pop esi
mov eax, 0xfffffff4
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
cmp dword [ecx + 0x88], 0
je case.0x1008753f.14
cmp esi, dword [ecx + 0x84]
jbe case.0x1008753f.14
mov dword [ecx + 0x64], 1
cmp dword [ecx + 0x88], 1
jle case.0x1008753f.14
pop edi
pop esi
mov eax, 0xfffffff4
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x88], 0
je case.0x1008753f.14
cmp esi, dword [eax + 0x84]
jbe case.0x1008753f.14
mov dword [eax + 0x64], 1
cmp dword [eax + 0x88], 1
jle case.0x1008753f.14
pop edi
pop esi
mov eax, 0xfffffff4
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
push ebx
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
cmp dword [ebp - 0xc0], 0
je 0x1008744c
test eax, eax
jne 0x100822b8
mov ebx, dword [ebp - 0x8c]
cmp ebx, dword [ebp - 0xac]
jge case.0x1008753f.14
mov edx, dword [ebp - 0x80]
mov eax, dword [edx + 0x78]
cmp esi, eax
jae 0x10087409
cmp byte [ebp - 0x91], 0xc
jne 0x10086fe1
mov ecx, dword [edx + 0x18]
add edx, 0x1c
test ecx, ecx
je 0x10086fba
push dword [ebp - 0xc0]
push edx
push eax
push ecx
push esi
call fcn.10089160
add esp, 0x14
test eax, eax
jne case.0x1008753f.14
jmp 0x10086fe1
mov ecx, dword [edx]
sub eax, ecx
cmp esi, eax
ja 0x10086fe1
mov edx, dword [ebp - 0x80]
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x10086fe1
cmp ecx, 1
je case.0x1008753f.14
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
je case.0x1008753f.14
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x100870e9
movzx eax, byte [esi]
lea edx, [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x1008700e
and ecx, 0x1f
mov esi, edx
shl ecx, 6
or ecx, eax
jmp 0x100870e9
mov dl, byte [edx]
test cl, 0x10
jne 0x10087030
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, dl
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x100870e3
mov dh, byte [esi + 2]
lea ebx, [esi + 3]
mov dword [ebp - 0x90], ebx
mov byte [ebp - 0xad], dh
test cl, 8
jne 0x10087069
and ecx, 7
mov esi, ebx
shl ecx, 6
or ecx, eax
movzx eax, dl
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, dh
shl ecx, 6
and eax, 0x3f
or ecx, eax
jmp 0x100870dd
movzx edi, byte [ebp - 0xad]
lea ebx, [esi + 4]
mov dword [ebp - 0xa0], ebx
and edi, 0x3f
mov ebx, dword [ebp - 0x90]
movzx edx, dl
and edx, 0x3f
movzx ebx, byte [ebx]
and ebx, 0x3f
test cl, 4
jne 0x100870b2
mov esi, dword [ebp - 0xa0]
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 0x100870dd
and ecx, 1
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0xa0]
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 - 0xa4]
lea eax, [edi - 6]
cmp eax, 0xf
ja case.0x100874d6.15
jmp dword [eax*4 + 0x10088034]
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x88], 0
je case.0x100870f5.13
cmp esi, dword [eax + 0x78]
jb case.0x100870f5.13
cmp dword [eax + 0x18], 0
jne case.0x100870f5.13
cmp dword [eax + 0x1c], 2
jne case.0x100870f5.13
movzx eax, byte [eax + 0x34]
cmp ecx, eax
jne case.0x100870f5.13
mov eax, dword [ebp - 0x80]
mov dword [eax + 0x64], 1
cmp dword [eax + 0x88], 1
jg 0x100876b9
jmp case.0x100870f5.13
cmp ecx, 0xd
ja 0x10087181
je 0x10087166
cmp ecx, 0xa
je case.0x100870f5.13
lea eax, [ecx - 0xb]
jmp 0x1008718f
mov eax, dword [ebp - 0x80]
cmp esi, dword [eax + 0x78]
jae case.0x100870f5.13
cmp byte [esi], 0xa
jne case.0x100870f5.13
inc esi
jmp case.0x100870f5.13
cmp ecx, 0x85
je 0x10087198
lea eax, [ecx - 0x2028]
cmp eax, 1
ja case.0x1008753f.14
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x68], 0
jne case.0x1008753f.14
jmp case.0x100870f5.13
cmp ecx, 0x180e
ja 0x100871e2
je case.0x1008753f.14
cmp ecx, 0xa0
ja 0x100871d7
je case.0x1008753f.14
cmp ecx, 9
je case.0x1008753f.14
cmp ecx, 0x20
jmp 0x100873ba
cmp ecx, 0x1680
jmp 0x100873ba
cmp ecx, 0x205f
ja 0x10087213
je case.0x1008753f.14
cmp ecx, 0x2000
jb case.0x100870f5.13
cmp ecx, 0x200a
jbe case.0x1008753f.14
cmp ecx, 0x202f
jmp 0x100873ba
cmp ecx, 0x3000
jmp 0x100873ba
cmp ecx, 0x180e
ja 0x10087262
je case.0x100870f5.13
cmp ecx, 0xa0
ja 0x10087251
je case.0x100870f5.13
cmp ecx, 9
je case.0x100870f5.13
cmp ecx, 0x20
jne case.0x1008753f.14
jmp case.0x100870f5.13
cmp ecx, 0x1680
jne case.0x1008753f.14
jmp case.0x100870f5.13
cmp ecx, 0x205f
ja 0x10087299
je case.0x100870f5.13
cmp ecx, 0x2000
jb case.0x1008753f.14
cmp ecx, 0x200a
jbe case.0x100870f5.13
cmp ecx, 0x202f
jne case.0x1008753f.14
jmp case.0x100870f5.13
cmp ecx, 0x3000
jne case.0x1008753f.14
jmp case.0x100870f5.13
cmp ecx, 0x85
ja 0x100872cf
je case.0x1008753f.14
cmp ecx, 0xa
jb case.0x100870f5.13
cmp ecx, 0xd
jbe case.0x1008753f.14
jmp case.0x100870f5.13
cmp ecx, 0x2028
jb case.0x100870f5.13
cmp ecx, 0x2029
jbe case.0x1008753f.14
jmp case.0x100870f5.13
cmp ecx, 0x85
ja 0x1008730b
je case.0x100870f5.13
lea eax, [ecx - 0xa]
cmp eax, 3
ja case.0x1008753f.14
jmp case.0x100870f5.13
lea eax, [ecx - 0x2028]
cmp eax, 1
ja case.0x1008753f.14
jmp case.0x100870f5.13
cmp ecx, 0x100
jae case.0x100870f5.13
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne case.0x1008753f.14
jmp case.0x100870f5.13
cmp ecx, 0x100
jae case.0x1008753f.14
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jmp 0x100873ba
cmp ecx, 0x100
jae case.0x100870f5.13
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jne case.0x1008753f.14
jmp case.0x100870f5.13
cmp ecx, 0x100
jae case.0x1008753f.14
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jmp 0x100873ba
cmp ecx, 0x100
jae case.0x100870f5.13
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
jne case.0x1008753f.14
jmp case.0x100870f5.13
cmp ecx, 0x100
jae case.0x1008753f.14
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
je case.0x1008753f.14
mov eax, dword [ebp + 0x20]
inc ebx
inc eax
mov dword [ebp - 0x8c], ebx
push eax
push dword [ebp - 0xb8]
push dword [ebp - 0x80]
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x10086f71
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
cmp dword [edx + 0x88], 0
je case.0x1008753f.14
cmp esi, dword [edx + 0x84]
jbe case.0x1008753f.14
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jle case.0x1008753f.14
pop edi
pop esi
mov eax, 0xfffffff4
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
test eax, eax
jne 0x100822b8
mov edx, dword [ebp - 0x8c]
cmp edx, dword [ebp - 0xac]
jge case.0x1008753f.14
mov eax, dword [ebx + 0x78]
cmp esi, eax
jae 0x1008768c
cmp byte [ebp - 0x91], 0xc
jne 0x100874c6
mov ecx, dword [ebx + 0x18]
lea edx, [ebx + 0x1c]
test ecx, ecx
je 0x1008749c
push 0
push edx
push eax
push ecx
push esi
call fcn.10089160
add esp, 0x14
test eax, eax
jne case.0x1008753f.14
jmp 0x100874c0
mov ecx, dword [edx]
sub eax, ecx
cmp esi, eax
ja 0x100874c0
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x100874c0
cmp ecx, 1
je case.0x1008753f.14
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x35]
je case.0x1008753f.14
mov edx, dword [ebp - 0x8c]
movzx ecx, byte [esi]
lea eax, [edi - 6]
inc esi
cmp eax, 0xf
ja case.0x100874d6.15
jmp dword [eax*4 + 0x10088074]
cmp dword [ebx + 0x88], 0
je case.0x100874d6.13
cmp esi, dword [ebx + 0x78]
jb case.0x100874d6.13
cmp dword [ebx + 0x18], 0
jne case.0x100874d6.13
cmp dword [ebx + 0x1c], 2
jne case.0x100874d6.13
movzx eax, byte [ebx + 0x34]
cmp ecx, eax
jne case.0x100874d6.13
mov dword [ebx + 0x64], 1
cmp dword [ebx + 0x88], 1
jg 0x100876b9
jmp case.0x100874d6.13
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x1008753f.14
movzx eax, byte [ecx + 0x100880c4]
jmp dword [eax*4 + 0x100880b4]
cmp esi, dword [ebx + 0x78]
jae case.0x100874d6.13
cmp byte [esi], 0xa
jne case.0x100874d6.13
inc esi
jmp case.0x100874d6.13
cmp dword [ebx + 0x68], 0
jne case.0x1008753f.14
jmp case.0x100874d6.13
cmp ecx, 9
je case.0x1008753f.14
cmp ecx, 0x20
je case.0x1008753f.14
cmp ecx, 0xa0
jmp 0x10087629
cmp ecx, 9
je case.0x100874d6.13
cmp ecx, 0x20
je case.0x100874d6.13
cmp ecx, 0xa0
jne case.0x1008753f.14
jmp case.0x100874d6.13
cmp ecx, 0xa
jb case.0x100874d6.13
cmp ecx, 0xd
jbe case.0x1008753f.14
cmp ecx, 0x85
jmp 0x10087629
cmp ecx, 0xa
jb case.0x1008753f.14
cmp ecx, 0xd
jbe case.0x100874d6.13
cmp ecx, 0x85
jne case.0x1008753f.14
jmp case.0x100874d6.13
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
jne case.0x1008753f.14
jmp case.0x100874d6.13
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
jmp 0x10087629
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
jne case.0x1008753f.14
jmp case.0x100874d6.13
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
jmp 0x10087629
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
jne case.0x1008753f.14
jmp case.0x100874d6.13
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
je case.0x1008753f.14
mov eax, dword [ebp + 0x20]
inc edx
inc eax
mov dword [ebp - 0x8c], edx
push eax
push dword [ebp - 0xb8]
push ebx
push dword [ebp - 0x9c]
push dword [ebp - 0xb4]
push dword [ebp - 0x84]
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
je 0x10087454
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
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.10071699
mov esp, ebp
pop ebp
ret
cmp dword [ebx + 0x88], 0
je case.0x1008753f.14
cmp esi, dword [ebx + 0x84]
jbe case.0x1008753f.14
mov dword [ebx + 0x64], 1
cmp dword [ebx + 0x88], 1
jle case.0x1008753f.14
pop edi
pop esi
mov eax, 0xfffffff4
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
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 - 0xc4], eax
mov eax, dword [edi + 0x10]
sub eax, edx
mov dword [ebp - 0xa4], ebx
mov ebx, dword [edi + 0x90]
lea ecx, [ecx + eax*4]
mov eax, dword [ecx]
mov dword [ebp - 0x98], eax
mov eax, dword [edi + 0xac]
mov dword [ebp - 0xa0], eax
mov eax, esi
sub eax, dword [edi + 0x74]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x84]
cmp dword [ebp - 0x90], 0x88
jb 0x1008772a
mov dword [edi + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
movzx eax, byte [ecx]
push edi
push dword [ebp - 0x9c]
movzx eax, byte [eax + 0x100d2cf8]
push dword [ebp - 0xb4]
add eax, ecx
push eax
push esi
call fcn.1007e2d0
mov edi, eax
add esp, 0x1c
cmp edi, 0xfffffc1b
je 0x100877ef
cmp edi, 0xfffffc20
jne 0x100877a7
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 0x10087888
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0x77
je 0x100877a3
cmp byte [edx], 0x77
jne 0x10087888
xor edi, edi
jmp 0x100877b5
test edi, edi
jne 0x10087888
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 - 0xa0]
add dword [ebp - 0x84], ecx
mov ecx, dword [ebp - 0x84]
mov dword [edx + 0xac], eax
cmp byte [ecx], 0x77
jne 0x100877f2
mov edi, edx
jmp 0x10087714
mov edx, dword [ebp - 0x80]
mov eax, dword [edx + 0xc]
mov ecx, dword [ebp - 0xbc]
mov ebx, dword [ebp - 0x80]
mov edx, dword [ebp - 0xa4]
mov dword [eax + ecx*4], edx
mov eax, dword [ebx + 0xc]
mov edx, dword [ebp - 0xc4]
mov dword [eax + ecx*4 + 4], edx
mov ecx, dword [ebx + 0x10]
mov eax, dword [ebx + 0xc]
sub ecx, dword [ebp - 0xac]
mov edx, dword [ebp - 0x98]
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.10071699
mov esp, ebp
pop ebp
ret
cmp edi, 0xfffffc1b
jne 0x10087888
mov edx, dword [ebp - 0x84]
mov al, byte [edx]
cmp al, 0x81
je 0x10087877
cmp al, 0x77
jne 0x10087868
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x10087854
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 0xb4]
sub eax, edx
neg eax
sbb eax, eax
and edi, eax
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
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 - 0xb8]
movzx eax, byte [edx]
push ebx
push dword [ebp - 0x9c]
movzx eax, byte [eax + 0x100d2cf8]
push dword [ebp - 0xb4]
add eax, edx
add ecx, eax
push ecx
push esi
call fcn.1007e2d0
mov edx, eax
add esp, 0x1c
cmp edx, 1
je 0x100878fa
cmp edx, 0xfffffc19
jne 0x1008791c
cmp dword [ebx + 0xac], 0
jne 0x1008791c
mov dword [ebx + 0xac], edi
mov eax, edx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
cmp edx, 0xfffffc1f
jne 0x1007f3ff
mov eax, dword [ebx + 0x7c]
jmp 0x10087930
mov cl, byte [edi]
cmp cl, byte [eax]
jne 0x10087950
test cl, cl
je 0x1008794c
mov cl, byte [edi + 1]
cmp cl, byte [eax + 1]
jne 0x10087950
add edi, 2
add eax, 2
test cl, cl
jne 0x10087930
xor eax, eax
jmp 0x10087955
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1007f3ff
pop edi
mov dword [ebx + 0x7c], esi
mov eax, 0xfffffc1e
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
movzx eax, cl
push edi
push ebx
push dword [ebp - 0xb4]
movzx eax, byte [eax + 0x100d2cf8]
add eax, dword [ebp - 0x84]
push eax
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
pop edi
pop esi
mov eax, 0xfffffc1c
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
movzx eax, cl
push edi
push ebx
push dword [ebp - 0xb4]
movzx eax, byte [eax + 0x100d2cf8]
add eax, dword [ebp - 0x84]
push eax
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
pop edi
pop esi
mov eax, 0xfffffc1d
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
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 - 0xb8]
movzx eax, byte [edx]
push ebx
push dword [ebp - 0x9c]
movzx eax, byte [eax + 0x100d2cf8]
push dword [ebp - 0xb4]
add eax, edx
add ecx, eax
push ecx
push esi
call fcn.1007e2d0
add esp, 0x1c
cmp eax, 1
je 0x10087a68
cmp eax, 0xfffffc19
jne 0x10087a77
cmp dword [ebx + 0xac], 0
jne 0x10087a77
mov dword [ebx + 0xac], edi
test eax, eax
jne 0x100822b8
pop edi
pop esi
mov eax, 0xfffffc1d
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
movzx eax, cl
push edi
push ebx
push dword [ebp - 0xb4]
movzx eax, byte [eax + 0x100d2cf8]
add eax, dword [ebp - 0x84]
push eax
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov dword [edi + 0x7c], esi
mov eax, 0xfffffc1e
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xb8]
movzx eax, cl
push edi
push ebx
push dword [ebp - 0xb4]
movzx eax, byte [eax + 0x100d2cf8]
mov ebx, dword [ebp - 0x84]
add eax, ebx
push eax
push esi
call fcn.1007e2d0
add esp, 0x1c
test eax, eax
jne 0x100822b8
mov dword [edi + 0x7c], ebx
mov eax, 0xfffffc20
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
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 - 0xb8]
movzx eax, byte [edx]
push ebx
push dword [ebp - 0x9c]
movzx eax, byte [eax + 0x100d2cf8]
push dword [ebp - 0xb4]
add eax, edx
add ecx, eax
push ecx
push esi
call fcn.1007e2d0
add esp, 0x1c
cmp eax, 1
je 0x10087b8f
cmp eax, 0xfffffc19
jne 0x10087b9e
cmp dword [ebx + 0xac], 0
jne 0x10087b9e
mov dword [ebx + 0xac], edi
test eax, eax
jne 0x100822b8
mov eax, dword [ebp - 0x84]
pop edi
mov dword [ebx + 0x7c], eax
mov eax, 0xfffffc20
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0xb4]
cmp esi, ecx
jne 0x10087c01
cmp edx, 0x9f
je 0x10087c01
cmp dword [edi + 0xa4], 0
jne 0x10087c01
cmp dword [edi + 0x5c], 0
jne case.0x1008753f.14
cmp dword [edi + 0x60], 0
je 0x10087c01
mov eax, dword [edi + 0x94]
add eax, dword [edi + 0x74]
cmp ecx, eax
je case.0x1008753f.14
neg edx
mov dword [edi + 0x80], esi
mov dword [edi + 0x8c], ebx
sbb edx, edx
mov dword [edi + 0x7c], ecx
and edx, 0xfffffc18
pop edi
pop esi
pop ebx
lea eax, [edx + 1]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10071699
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.10071699
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.10071699
mov esp, ebp
pop ebp
ret