Function at 0x41c200
Capabilities:
Encode data using base64
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x68
push ebx
push ebp
mov ebp, dword [esp + 0x84]
push esi
push edi
mov esi, dword [ebp + 0xb8]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x80]
mov dword [esi + 0xc], eax
mov eax, dword [esp + 0x84]
mov dword [esi + 0x10], eax
mov eax, dword [esp + 0x88]
mov dword [esi + 0x14], eax
mov eax, dword [esp + 0x90]
mov dword [esi + 0x18], eax
mov eax, dword [esp + 0x94]
mov dword [esi + 0x1c], eax
lea ecx, [ecx]
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
mov edi, edi
mov edx, dword [ebp]
mov ecx, dword [ebp + 4]
mov edi, dword [ebp + 0x4c]
mov dword [esp + 0x8c], edi
lea eax, [edx + 1]
mov dword [ebp], eax
cmp edx, ecx
jb 0x41c28e
mov esi, dword [esi]
test esi, esi
je 0x429f31
mov edi, 0xfffffff8
jmp 0x425b39
mov eax, dword [esi + 0x1c]
cmp eax, dword [ebp + 8]
jb 0x41c2aa
mov esi, dword [esi]
test esi, esi
je 0x429f3e
mov edi, 0xffffffeb
jmp 0x425b39
cmp dword [ebp + 0x98], 2
jne 0x41c2e1
mov eax, dword [esi + 8]
lea ecx, [esi + 0x128]
mov dword [esi + 0x12c], eax
mov eax, dword [esi + 0x18]
mov dword [ecx], eax
mov dword [esi + 0x18], ecx
mov dword [ebp + 0x98], 0
jmp 0x41c2e1
add dword [esi + 0xc], 3
mov edi, dword [esp + 0x8c]
mov eax, dword [esi + 0xc]
xor ebx, ebx
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], ebx
movzx edx, byte [eax]
mov dword [esi + 0x9c], edx
cmp edx, 0xa1
ja case.0x41c314.98
movzx eax, byte [edx + 0x42a14c]
jmp dword [eax*4 + 0x42a000]
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xb0], eax
mov dword [ebp + 0xac], ebx
mov edi, dword [esi + 4]
test edi, edi
jne 0x429795
push 0x134
call dword [0x459418]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42978f
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov edx, dword [esi + 4]
test edx, edx
jne 0x4297e5
push 0x134
call dword [0x459418]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4297df
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov edx, dword [esi + 4]
test edx, edx
jne 0x429803
push 0x134
call dword [0x459418]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4297fd
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xb0], eax
mov dword [ebp + 0xac], ebx
mov edi, dword [esi + 4]
test edi, edi
jne 0x429821
push 0x134
call dword [0x459418]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42981b
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov edx, dword [esi + 4]
test edx, edx
jne 0x429836
push 0x134
call dword [0x459418]
mov edx, eax
add esp, 4
test edx, edx
jne 0x429830
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
inc dword [ebp + 0x28]
mov eax, dword [ebp + 0x28]
cmp eax, dword [ebp + 0x2c]
ja 0x41c46e
mov ecx, dword [esi + 0xc]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x442f98]
movzx eax, byte [ecx + 1]
add edx, eax
add dword [esi + 0xc], edx
jmp 0x41c2e1
mov edi, dword [esi + 4]
test edi, edi
jne 0x429854
push 0x134
call dword [0x459418]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42984e
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov edx, dword [esi + 4]
test edx, edx
jne 0x429869
push 0x134
call dword [0x459418]
mov edx, eax
add esp, 4
test edx, edx
jne 0x429863
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xb0], eax
mov dword [ebp + 0xac], ebx
mov edi, dword [esi + 4]
test edi, edi
jne 0x429887
push 0x134
call dword [0x459418]
mov edi, eax
add esp, 4
test edi, edi
jne 0x429881
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov eax, dword [esi + 0xc]
mov dword [esi + 0x34], eax
mov eax, dword [esi + 8]
mov dword [esi + 0x38], eax
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
jmp 0x427078
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [ebp + 0x14]
jge case.0x41c314.129
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xa4], eax
mov ecx, dword [esi + 0x98]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4 + 4]
mov dword [esi + 0xa8], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x94]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xac], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
mov edx, dword [esi + 8]
mov ecx, dword [ebp + 0x10]
sub edx, dword [ebp + 0x74]
sub ecx, dword [esi + 0x94]
mov eax, dword [ebp + 0xc]
mov dword [eax + ecx*4], edx
jmp 0x425bdb
mov dword [esi + 0x54], ebx
jmp 0x41cd7f
mov dword [esi + 0x54], ebx
jmp 0x41cda3
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x78], ecx
add dword [esi + 0xc], 3
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x76
jne 0x41c6e8
mov edi, dword [0x45b318]
test edi, edi
je 0x41c6d4
mov dword [esp + 0x10], 2
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0x10]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x24], eax
mov eax, dword [esi + 8]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x28], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x38], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x3c], ecx
mov eax, dword [esi + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x2c], eax
movzx eax, word [ebp + 0x90]
mov dword [esp + 0x30], eax
test eax, eax
jne 0x41c68e
mov dword [esp + 0x30], 0xffffffff
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x34], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x40], eax
lea eax, [esp + 0x10]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jle 0x41c6c3
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b39
jns 0x41c6d4
mov esi, dword [esi]
test esi, esi
je 0x42601c
jmp 0x425b39
movzx eax, byte [0x44300e]
add dword [esi + 0xc], eax
movzx eax, byte [0x44300e]
sub dword [esi + 0x78], eax
mov dword [esi + 0x58], ebx
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx]
mov dword [esp + 0x88], edx
lea eax, [edx - 0x8d]
cmp eax, 0x10
ja case.0x41c70e.146
movzx eax, byte [eax + 0x42a208]
jmp dword [eax*4 + 0x42a1f0]
mov edi, dword [ebp + 0xa4]
test edi, edi
je case.0x41c70e.145
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
cmp edx, 0xffff
je 0x41c747
cmp edx, dword [edi + 4]
je 0x41c747
xor eax, eax
mov dword [esi + 0x58], eax
jmp 0x425e73
mov eax, 1
mov dword [esi + 0x58], eax
jmp 0x425e73
cmp dword [ebp + 0xa4], ebx
je case.0x41c70e.145
movzx ebx, byte [ecx + 3]
movzx eax, byte [ecx + 4]
movzx edi, byte [ecx + 1]
shl ebx, 8
shl edi, 8
or ebx, eax
movzx eax, byte [ecx + 2]
or edi, eax
imul edi, dword [ebp + 0x24]
add edi, dword [ebp + 0x30]
test ebx, ebx
jle case.0x41c70e.145
lea esp, [esp]
movzx eax, byte [edi]
xor ecx, ecx
movzx edx, byte [edi + 1]
dec ebx
shl eax, 8
or edx, eax
mov eax, dword [ebp + 0xa4]
cmp edx, dword [eax + 4]
sete cl
mov dword [esi + 0x58], ecx
test ecx, ecx
jne 0x425e73
add edi, dword [ebp + 0x24]
test ebx, ebx
jg 0x41c790
jmp 0x425e73
mov eax, dword [esi + 0xc]
movzx ecx, byte [ecx + 1]
shl ecx, 8
movzx eax, byte [eax + 2]
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [esi + 0x14]
jge 0x41c7f4
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x41c7f4
mov eax, 1
mov dword [esi + 0x58], eax
jmp case.0x41c70e.145
xor eax, eax
mov dword [esi + 0x58], eax
jmp case.0x41c70e.145
movzx edi, byte [ecx + 3]
movzx eax, byte [ecx + 4]
movzx edx, byte [ecx + 1]
shl edi, 8
shl edx, 8
or edi, eax
movzx eax, byte [ecx + 2]
or edx, eax
imul edx, dword [ebp + 0x24]
add edx, dword [ebp + 0x30]
test edi, edi
jle 0x425e73
movzx eax, byte [edx]
dec edi
movzx ecx, byte [edx + 1]
shl eax, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [esi + 0x14]
jge 0x41c849
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jge 0x41c858
mov dword [esi + 0x58], ebx
add edx, dword [ebp + 0x24]
test edi, edi
jg 0x41c827
jmp 0x425e73
mov dword [esi + 0x58], 1
jmp 0x425e73
mov dword [ebp + 0x98], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42989c
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429896
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
mov eax, dword [ebp + 0x90]
and eax, 0xffff0000
or eax, dword [esi + 0x94]
mov dword [ebp + 0x90], eax
mov edx, dword [esi + 0x98]
cmp edx, dword [ebp + 0x14]
jl 0x41c8f4
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x41c2d6
mov eax, dword [ebp + 0x10]
sub eax, dword [esi + 0x94]
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
mov ecx, dword [esi + 0x98]
mov edx, dword [esi + 8]
mov eax, dword [ebp + 0xc]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4 + 4], edx
mov ecx, dword [esi + 0x98]
mov edx, dword [esi + 0x14]
cmp ecx, edx
jl 0x41c2d6
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x41c943
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov eax, dword [esi + 0x98]
add eax, 2
mov dword [esi + 0x14], eax
jmp 0x41c2d6
mov edi, dword [esi + 8]
mov ecx, dword [esi + 0x10]
cmp edi, ecx
jne 0x41c996
cmp edx, 0x9f
je 0x41c996
cmp dword [ebp + 0xa4], ebx
jne 0x41c996
cmp dword [ebp + 0x5c], ebx
jne 0x41c985
cmp dword [ebp + 0x60], ebx
je 0x41c996
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp ecx, eax
jne 0x41c996
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b39
mov dword [ebp + 0x80], edi
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
mov edi, dword [esi + 0x9c]
mov esi, dword [esi]
neg edi
sbb edi, edi
and edi, 0xfffffc18
inc edi
test esi, esi
je 0x42601c
jmp 0x425b39
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x41c9ef
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x425f6d
mov dword [esi + 0x58], ebx
jmp 0x425f6d
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x41ca1b
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x4260bb
mov dword [esi + 0x58], ebx
jmp 0x4260bb
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0xc]
test edx, edx
je 0x41ca82
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
jle 0x41ca68
dec dword [esi + 8]
dec edx
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x74]
jb case.0x423266.14
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x41ca64
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x41ca58
test edx, edx
jg 0x41ca40
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jae 0x41c2d6
mov dword [ebp + 0x84], eax
jmp 0x41c2d6
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0xc]
shl ecx, 8
movzx eax, byte [eax + 2]
or ecx, eax
sub dword [esi + 8], ecx
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jae 0x41ca68
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b40
mov edi, dword [0x45b318]
test edi, edi
je 0x41cb8c
mov dword [esp + 0x44], 2
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x4c], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x54], eax
mov eax, dword [esi + 0x10]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x58], eax
mov eax, dword [esi + 8]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x5c], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x6c], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x70], ecx
mov eax, dword [esi + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x60], eax
movzx eax, word [ebp + 0x90]
mov dword [esp + 0x64], eax
test eax, eax
jne 0x41cb46
mov dword [esp + 0x64], 0xffffffff
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x74], eax
lea eax, [esp + 0x44]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jle 0x41cb7b
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b39
jns 0x41cb8c
mov esi, dword [esi]
test esi, esi
je 0x42601c
jmp 0x425b39
add dword [esi + 0xc], 6
jmp 0x41c2da
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp + 0x70]
add eax, ecx
mov dword [esi + 0x20], eax
cmp eax, dword [ebp + 0x70]
jne 0x41cbb6
xor edx, edx
jmp 0x41cbc3
movzx edx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl edx, 8
or edx, eax
mov ecx, dword [ebp + 0xa4]
test ecx, ecx
je 0x41cbe3
lea ecx, [ecx]
cmp edx, dword [ecx + 4]
jne 0x41cbdd
mov eax, dword [esi + 8]
cmp eax, dword [ecx + 0x14]
je 0x41cc44
mov ecx, dword [ecx]
test ecx, ecx
jne 0x41cbd0
mov dword [esi + 0x40], edx
lea ecx, [esi + 0x3c]
mov eax, dword [ebp + 0x90]
mov dword [esi + 0x4c], eax
mov eax, dword [esi + 8]
mov dword [esi + 0x50], eax
mov eax, dword [ebp + 0xa4]
mov dword [ecx], eax
mov dword [ebp + 0xa4], ecx
add dword [esi + 0xc], 3
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x48], eax
cmp eax, 0x1e
jg 0x41cc58
lea eax, [esi + 0xb0]
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [ebp + 0xc]
push dword [esi + 0x44]
call sub.MSVCRT.dll_memcpy
mov eax, dword [esi + 0x20]
add esp, 0xc
cmp byte [eax], 0x88
sbb eax, eax
inc eax
mov dword [esi + 0x58], eax
jmp 0x4261a4
mov esi, dword [esi]
test esi, esi
je 0x429f62
mov edi, 0xffffffe6
jmp 0x425b39
shl eax, 2
push eax
call dword [0x459410]
add esp, 4
mov dword [esi + 0x44], eax
test eax, eax
jne 0x41cc1e
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x41cc81
jmp 0x41c2e1
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x2c], eax
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4298d7
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4298d1
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov edx, dword [esi + 0xc]
inc edx
mov dword [esi + 0x2c], edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x2c], edx
cmp byte [edx], 0x77
je 0x41cce0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4298f5
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4298ef
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov edx, dword [esi + 0xc]
inc edx
mov dword [esi + 0x2c], edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x2c], edx
cmp byte [edx], 0x77
je 0x41cd33
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x41c2e1
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x9c], eax
mov dword [esi + 0x54], 1
mov eax, dword [esi + 0x9c]
cmp eax, 0x86
je 0x41cd7f
cmp eax, 0x8b
jne 0x41cda3
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
cmp eax, dword [ebp + 0x14]
jl 0x41cdc0
mov dword [esi + 0x5c], ebx
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x70]
mov dword [esi + 0x78], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
jmp 0x426c8d
mov dword [esi + 0x5c], ebx
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x70]
mov dword [esi + 0x78], eax
mov ecx, dword [esi + 0x98]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xa4], eax
mov ecx, dword [esi + 0x98]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4 + 4]
mov dword [esi + 0xa8], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x94]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xac], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x94]
mov edx, dword [esi + 8]
mov eax, dword [ebp + 0xc]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4], edx
cmp dword [esi + 0x9c], 0x88
jb 0x41ce3d
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x429c87
push 0x134
call dword [0x459418]
mov edx, eax
add esp, 4
test edx, edx
jne 0x429c7d
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov edx, dword [esi + 0xc]
mov eax, edx
movzx ecx, byte [eax + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov dword [esi + 0x34], edx
mov al, byte [edx]
cmp al, 0x88
jae 0x41ce98
cmp al, 0x81
je 0x41ce98
mov dword [esi + 0x38], ebx
jmp 0x41cea9
mov eax, dword [esi + 0x18]
mov eax, dword [eax + 4]
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
mov dword [esi + 0x18], eax
mov edx, dword [esi + 0x34]
mov al, byte [edx]
cmp al, 0x7d
jb 0x41ceb6
cmp al, 0x80
jbe 0x41ceba
cmp al, 0x82
jne 0x41cee6
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x429f96
mov edi, 1
jmp 0x425b39
cmp al, 0x85
je 0x41cefa
cmp al, 0x8a
je 0x41cefa
cmp al, 0x86
je 0x41cefa
cmp al, 0x8b
jne 0x41cfc1
movzx ecx, byte [edx + 3]
movzx eax, byte [edx + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
mov eax, dword [ebp + 0xa4]
test eax, eax
je 0x41cf36
mov eax, dword [eax + 4]
cmp eax, dword [esi + 0x94]
jne 0x41cf36
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
jmp 0x41cecc
mov eax, dword [ebp + 0x90]
and eax, 0xffff0000
or eax, dword [esi + 0x94]
mov dword [ebp + 0x90], eax
mov ecx, dword [esi + 0x98]
cmp ecx, dword [ebp + 0x14]
jl 0x41cf65
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x41cfc1
mov edx, dword [esi + 0x14]
cmp ecx, edx
jle 0x41cf85
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x41cf85
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov eax, dword [ebp + 0x10]
sub eax, dword [esi + 0x94]
mov edx, dword [ebp + 0xc]
mov ecx, dword [esi + 0x98]
mov eax, dword [edx + eax*4]
mov dword [edx + ecx*4], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0x98]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4 + 4], edx
mov eax, dword [esi + 0x98]
cmp dword [esi + 0x14], eax
jg 0x41cfc1
add eax, 2
mov dword [esi + 0x14], eax
mov edx, dword [esi + 0xc]
mov cl, byte [edx]
cmp cl, 0x7b
jne 0x41cff7
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov esi, dword [esi]
test esi, esi
je 0x429f6f
mov edi, 0xfffffc1a
jmp 0x425b39
cmp cl, 0x78
je 0x41d070
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x38]
je 0x41d070
cmp cl, 0x7a
mov ecx, dword [esi + 4]
jne 0x41d03e
test ecx, ecx
jne 0x429916
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429910
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test ecx, ecx
jne 0x429937
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429931
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x4262d7
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429955
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42994f
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
cmp dword [ebp + 0x44], ebx
je case.0x41c314.1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne case.0x41c314.1
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b39
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je 0x41d198
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b39
cmp dword [ebp + 0x44], ebx
je 0x41d10a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x41d10a
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b39
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x74]
cmp ecx, edx
je 0x41db54
cmp ecx, dword [ebp + 0x78]
je 0x41d170
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x41d148
cmp ecx, edx
jbe 0x41d170
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0042c580
add esp, 0x14
test eax, eax
jne 0x41db54
jmp 0x41d170
mov edi, dword [ebp + 0x1c]
lea eax, [edi + edx]
cmp ecx, eax
jb 0x41d170
sub ecx, edi
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41d170
cmp edi, 1
je 0x41db54
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41db54
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b39
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp dword [esi + 8], eax
jmp 0x41d0d5
mov eax, dword [esi + 8]
mov dword [esi + 0x10], eax
inc dword [esi + 0xc]
jmp 0x41c2e1
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41d25a
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x41d1d5
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0042c430
add esp, 0x14
test eax, eax
jne 0x41db54
jmp 0x41d1f9
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x41d1f9
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41d1f9
cmp edx, 1
je 0x41db54
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41db54
cmp dword [ebp + 0x88], ebx
je case.0x423266.14
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb case.0x423266.14
cmp dword [ebp + 0x18], ebx
jne case.0x423266.14
cmp dword [edi], 2
jne case.0x423266.14
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne case.0x423266.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x423266.14
mov esi, dword [esi]
test esi, esi
je 0x429f7c
mov edi, 0xfffffff4
jmp 0x425b39
cmp dword [ebp + 0x48], ebx
jne 0x41d0db
cmp dword [ebp + 0x88], ebx
je 0x41db54
cmp ecx, dword [ebp + 0x84]
jbe 0x41db54
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41db54
mov esi, dword [esi]
test esi, esi
je 0x429f7c
mov edi, 0xfffffff4
jmp 0x425b39
cmp dword [ebp + 0x48], ebx
jne 0x41d0db
cmp dword [ebp + 0x58], ebx
je case.0x41c314.23
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41d0db
cmp dword [ebp + 0x88], ebx
je 0x41d198
cmp eax, dword [ebp + 0x84]
jbe 0x41d198
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41d198
mov esi, dword [esi]
test esi, esi
je 0x429f7c
mov edi, 0xfffffff4
jmp 0x425b39
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41d365
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x41d32d
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0042c430
add esp, 0x14
test eax, eax
jne 0x41d355
jmp 0x41d1f9
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x41d1f9
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41d1f9
cmp edx, 1
je 0x41d355
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x41d1f9
mov eax, dword [ebp + 0x78]
sub eax, dword [edi]
mov ecx, dword [esi + 8]
cmp ecx, eax
jne 0x41d1f9
cmp dword [ebp + 0x88], ebx
je 0x41db54
cmp ecx, dword [ebp + 0x84]
jbe 0x41db54
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41db54
jmp 0x41d246
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x41d667
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x74]
jne 0x41d3b5
mov dword [esi + 0x5c], ebx
jmp 0x41d4ee
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
jne 0x41d3ca
nop
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x41d3c0
cmp edx, dword [ebp + 0x84]
jae 0x41d3d8
mov dword [ebp + 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x41d48c
test bl, 0x20
jne 0x41d400
movzx eax, byte [edx + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
jmp 0x41d48c
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41d41a
and ebx, 0xf
shl ebx, 6
or ecx, ebx
jmp 0x41d482
and eax, 0x3f
test bl, 8
jne 0x41d435
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x41d482
test bl, 4
jne 0x41d459
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
jmp 0x41d482
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov ebx, ecx
cmp dword [ebp + 0x54], 0
je 0x41d527
cmp ebx, 0x5f
jne 0x41d4a4
mov dword [esi + 0x5c], 1
jmp 0x41d4ee
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x41d4c6
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, 1
je 0x41d538
cmp eax, 3
je 0x41d538
xor eax, eax
mov dword [esi + 0x5c], eax
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x41d53f
cmp dword [ebp + 0x88], 0
je 0x41d51b
cmp edx, dword [ebp + 0x84]
jbe 0x41d51b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
mov dword [esi + 0x54], 0
jmp 0x41d7a5
cmp ebx, 0x100
jae 0x41d4e9
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41d4e9
mov eax, 1
jmp 0x41d4eb
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x41d5e9
test bl, 0x20
jne 0x41d55f
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x41d5e1
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41d579
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x41d5e1
and eax, 0x3f
test bl, 8
jne 0x41d594
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x41d5e1
test bl, 4
jne 0x41d5b8
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
jmp 0x41d5e1
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
cmp dword [ebp + 0x54], 0
je 0x41d64c
cmp ebx, 0x5f
jne 0x41d600
mov dword [esi + 0x54], 1
jmp 0x41d7a5
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x41d622
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, 1
je 0x41d65d
cmp eax, 3
je 0x41d65d
xor eax, eax
jmp 0x41d7a2
cmp ebx, 0x100
jae 0x41d645
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41d645
mov eax, 1
jmp 0x41d7a2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x41d677
mov dword [esi + 0x5c], ebx
jmp 0x41d712
cmp eax, dword [ebp + 0x84]
ja 0x41d686
dec eax
mov dword [ebp + 0x84], eax
mov eax, dword [esi + 8]
cmp dword [ebp + 0x54], ebx
je 0x41d6fe
movzx ecx, byte [eax - 1]
cmp ecx, 0x5f
jne 0x41d6a0
mov dword [esi + 0x5c], 1
jmp 0x41d712
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ecx, 0x8000007f
jns 0x41d6c2
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, 1
je 0x41d6f0
cmp eax, 3
je 0x41d6f0
mov edx, dword [esp + 0x8c]
xor eax, eax
jmp 0x41d70f
mov edx, dword [esp + 0x8c]
mov eax, 1
jmp 0x41d70f
movzx eax, byte [eax - 1]
mov ecx, dword [ebp + 0x40]
movzx eax, byte [eax + ecx]
shr eax, 4
and eax, 1
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41d753
cmp dword [ebp + 0x88], ebx
je 0x41d74e
cmp eax, dword [ebp + 0x84]
jbe 0x41d74e
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41d74e
mov esi, dword [esi]
test esi, esi
je 0x429f7c
mov edi, 0xfffffff4
jmp 0x425b40
mov dword [esi + 0x54], ebx
jmp 0x41d7a5
cmp dword [ebp + 0x54], ebx
je 0x41d792
movzx ecx, byte [eax]
cmp ecx, 0x5f
jne 0x41d769
mov dword [esi + 0x54], 1
jmp 0x41d7a5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ecx, 0x8000007f
jns 0x41d78b
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
jmp 0x41d624
movzx eax, byte [eax]
mov ecx, dword [ebp + 0x40]
movzx eax, byte [eax + ecx]
shr eax, 4
and eax, 1
mov dword [esi + 0x54], eax
mov eax, dword [esi + 0xc]
mov cl, byte [eax]
inc eax
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x54]
cmp cl, 5
jne 0x41d7c0
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
sete cl
jmp 0x41d7c8
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
setne cl
mov edi, dword [esp + 0x8c]
test ecx, ecx
je 0x41c2e1
jmp 0x41d0db
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x41d80d
mov edx, dword [esi + 8]
mov edi, dword [ebp + 0x78]
cmp edx, edi
jae 0x41d838
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edi
push ecx
push edx
call fcn.0042c430
add esp, 0x14
test eax, eax
jne 0x41d0db
jmp 0x41d838
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 0x1c]
sub eax, edx
mov ecx, dword [esi + 8]
cmp ecx, eax
ja 0x41d838
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41d838
cmp edx, 1
je 0x41d0db
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41d0db
cmp dword [ebp + 0x88], ebx
je case.0x41c314.13
mov eax, dword [ebp + 0x78]
mov ecx, dword [esi + 8]
dec eax
cmp ecx, eax
jne case.0x41c314.13
cmp dword [ebp + 0x18], ebx
jne case.0x41c314.13
cmp dword [ebp + 0x1c], 2
jne case.0x41c314.13
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne case.0x41c314.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41d896
cmp dword [ebp + 0x88], ebx
je case.0x423266.14
cmp eax, dword [ebp + 0x84]
jbe case.0x423266.14
jmp 0x41d232
mov edi, dword [esp + 0x8c]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x41d198
cmp eax, dword [ebp + 0x78]
jae 0x41d198
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x41d198
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jb 0x41d8b2
inc dword [esi + 0xc]
jmp 0x41c2e1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41d879
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x41c2e1
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x41d90d
cmp dword [ebp + 0x88], ebx
je case.0x423266.14
cmp edi, dword [ebp + 0x84]
jbe case.0x423266.14
jmp 0x41d232
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41da09
cmp ebx, 0xc0
jb 0x41da09
test bl, 0x20
jne 0x41d94a
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41da06
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41d974
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41da09
mov edx, dword [esi + 8]
test bl, 8
jne 0x41d99a
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x41d9fd
test bl, 4
jne 0x41d9c9
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x41d9fd
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x100
jae 0x41db54
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x41db54
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b40
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d8f0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41db3b
cmp ebx, 0xc0
jb 0x41db3b
test bl, 0x20
jne 0x41da7c
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41db38
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41daa6
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41db3b
mov edx, dword [esi + 8]
test bl, 8
jne 0x41dacc
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x41db2f
test bl, 4
jne 0x41dafb
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x41db2f
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
ja 0x41ca9d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x41ca9d
inc dword [esi + 0xc]
jmp 0x41c2da
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d8f0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41dc64
cmp ebx, 0xc0
jb 0x41dc64
test bl, 0x20
jne 0x41dba5
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41dc61
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41dbcf
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41dc64
mov edx, dword [esi + 8]
test bl, 8
jne 0x41dbf5
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x41dc58
test bl, 4
jne 0x41dc24
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x41dc58
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x100
jae 0x41db54
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
jmp 0x41da1c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d8f0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41dd84
cmp ebx, 0xc0
jb 0x41dd84
test bl, 0x20
jne 0x41dcc5
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41dd81
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41dcef
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41dd84
mov edx, dword [esi + 8]
test bl, 8
jne 0x41dd15
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x41dd78
test bl, 4
jne 0x41dd44
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x41dd78
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
ja 0x41ca9d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
je 0x41ca9d
inc dword [esi + 0xc]
jmp 0x41c2da
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d8f0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41dead
cmp ebx, 0xc0
jb 0x41dead
test bl, 0x20
jne 0x41ddee
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41deaa
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41de18
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41dead
mov edx, dword [esi + 8]
test bl, 8
jne 0x41de3e
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x41dea1
test bl, 4
jne 0x41de6d
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x41dea1
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x100
jae 0x41db54
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
jmp 0x41da1c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d8f0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41dfcd
cmp ebx, 0xc0
jb 0x41dfcd
test bl, 0x20
jne 0x41df0e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41dfca
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41df38
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41dfcd
mov edx, dword [esi + 8]
test bl, 8
jne 0x41df5e
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x41dfc1
test bl, 4
jne 0x41df8d
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x41dfc1
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
ja 0x41ca9d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41ca9d
inc dword [esi + 0xc]
jmp 0x41c2da
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d8f0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41e0f6
cmp ebx, 0xc0
jb 0x41e0f6
test bl, 0x20
jne 0x41e037
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41e0f3
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41e061
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41e0f6
mov edx, dword [esi + 8]
test bl, 8
jne 0x41e087
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x41e0ea
test bl, 4
jne 0x41e0b6
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x41e0ea
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xd
ja 0x41e16f
je 0x41e111
cmp ebx, 0xa
je 0x41db54
jbe 0x41da22
cmp ebx, 0xc
jmp 0x41e189
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41e15a
cmp dword [ebp + 0x88], 0
je 0x41db54
cmp eax, dword [ebp + 0x84]
jbe 0x41db54
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41db54
mov esi, dword [esi]
test esi, esi
je 0x429f7c
mov edi, 0xfffffff4
jmp 0x425b40
cmp byte [eax], 0xa
jne 0x41db54
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x41c2da
cmp ebx, 0x85
je 0x41e18f
cmp ebx, 0x2027
jbe 0x41da22
cmp ebx, 0x2029
ja 0x41da22
cmp dword [ebp + 0x68], 0
jmp 0x41da1c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d8f0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41e2a0
cmp ebx, 0xc0
jb 0x41e2a0
test bl, 0x20
jne 0x41e1e1
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41e29d
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41e20b
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41e2a0
mov edx, dword [esi + 8]
test bl, 8
jne 0x41e231
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x41e294
test bl, 4
jne 0x41e260
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x41e294
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x41e2d8
je 0x41ca9d
cmp ebx, 0xa0
ja 0x41e2cd
je 0x41ca9d
cmp ebx, 9
je 0x41ca9d
cmp ebx, 0x20
jmp 0x41db4e
cmp ebx, 0x1680
jmp 0x41db4e
cmp ebx, 0x205f
ja 0x41e309
je 0x41ca9d
cmp ebx, 0x2000
jb 0x41db54
cmp ebx, 0x200a
jbe 0x41ca9d
cmp ebx, 0x202f
jmp 0x41db4e
cmp ebx, 0x3000
je 0x41ca9d
inc dword [esi + 0xc]
jmp 0x41c2da
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d8f0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41e425
cmp ebx, 0xc0
jb 0x41e425
test bl, 0x20
jne 0x41e366
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41e422
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41e390
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41e425
mov edx, dword [esi + 8]
test bl, 8
jne 0x41e3b6
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x41e419
test bl, 4
jne 0x41e3e5
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x41e419
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x41e45d
je 0x41db54
cmp ebx, 0xa0
ja 0x41e452
je 0x41db54
cmp ebx, 9
je 0x41db54
cmp ebx, 0x20
jmp 0x41da1c
cmp ebx, 0x1680
jmp 0x41da1c
cmp ebx, 0x205f
ja 0x41e48e
je 0x41db54
cmp ebx, 0x2000
jb 0x41da22
cmp ebx, 0x200a
jbe 0x41db54
cmp ebx, 0x202f
jmp 0x41da1c
cmp ebx, 0x3000
jmp 0x41da1c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d8f0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41e5a1
cmp ebx, 0xc0
jb 0x41e5a1
test bl, 0x20
jne 0x41e4e2
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41e59e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41e50c
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41e5a1
mov edx, dword [esi + 8]
test bl, 8
jne 0x41e532
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x41e595
test bl, 4
jne 0x41e561
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x41e595
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x85
ja 0x41e5c9
je 0x41da22
cmp ebx, 0xa
jb 0x41db54
cmp ebx, 0xd
jbe 0x41da22
inc dword [esi + 0xc]
jmp 0x41c2da
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x41db54
jmp 0x41da22
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d8f0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41e6e5
cmp ebx, 0xc0
jb 0x41e6e5
test bl, 0x20
jne 0x41e626
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41e6e2
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41e650
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41e6e5
mov edx, dword [esi + 8]
test bl, 8
jne 0x41e676
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x41e6d9
test bl, 4
jne 0x41e6a5
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x41e6d9
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x85
ja 0x41e70a
je 0x41db54
cmp ebx, 0xa
jb 0x41ca9d
cmp ebx, 0xd
jbe 0x41db54
jmp 0x41ca9d
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x41ca9d
inc dword [esi + 0xc]
jmp 0x41c2da
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d8f0
movzx ebx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x41e81d
cmp ebx, 0xc0
jb 0x41e81d
test bl, 0x20
jne 0x41e769
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41e81a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41e791
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x41e81d
mov edx, dword [esi + 8]
test bl, 8
jne 0x41e7b7
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x41e81a
test bl, 4
jne 0x41e7e6
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x41e81a
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x444920]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x41e840
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
movzx edx, word [ecx*2 + 0x446b20]
cmp eax, 0xa
ja case.default.0x41e85a
jmp dword [eax*4 + 0x42a21c]
cmp dword [esi + 0x9c], 0xf
jne 0x41c2d6
jmp 0x41d0db
mov al, byte [edx*8 + 0x4432a1]
cmp al, 9
je 0x41e88a
cmp al, 5
je 0x41e88a
cmp al, 8
je 0x41e88a
xor ecx, ecx
jmp 0x41e88f
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x9c], 0xf
sete al
cmp ecx, eax
jne 0x41c2d6
jmp 0x41d0db
movzx ecx, byte [edx*8 + 0x4432a1]
xor edx, edx
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
cmp eax, dword [ecx*4 + 0x4430b0]
setne dl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp edx, eax
jne 0x41c2d6
jmp 0x41d0db
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x4432a1]
setne cl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp ecx, eax
jne 0x41c2d6
jmp 0x41d0db
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x4432a0]
jmp 0x41e8eb
movzx eax, byte [edx*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, 1
je 0x41e88a
cmp eax, 3
je 0x41e88a
xor ecx, ecx
jmp 0x41e88f
cmp ebx, 0x180e
ja 0x41e983
je case.0x41e85a.0
cmp ebx, 0x85
ja 0x41e96f
je case.0x41e85a.0
cmp ebx, 9
jb case.0x41e9a3.8203
cmp ebx, 0xd
jbe case.0x41e85a.0
cmp ebx, 0x20
jmp 0x41e9bc
cmp ebx, 0xa0
je case.0x41e85a.0
cmp ebx, 0x1680
jmp 0x41e9bc
cmp ebx, 0x202f
ja 0x41e9aa
je case.0x41e85a.0
add ebx, 0xffffe000
cmp ebx, 0x29
ja case.0x41e9a3.8203
movzx eax, byte [ebx + 0x42a250]
jmp dword [eax*4 + 0x42a248]
cmp ebx, 0x205f
je case.0x41e85a.0
cmp ebx, 0x3000
je case.0x41e85a.0
movzx eax, byte [edx*8 + 0x4432a1]
xor ecx, ecx
cmp dword [eax*4 + 0x4430b0], 6
sete cl
xor eax, eax
cmp dword [esi + 0x9c], 0xf
jmp 0x41e8f7
movzx eax, byte [edx*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, 1
je 0x41e88a
cmp eax, 3
je 0x41e88a
cmp ebx, 0x5f
je 0x41e88a
xor ecx, ecx
jmp 0x41e88f
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
mov ecx, dword [eax*4 + 0x443160]
lea eax, [eax*4 + 0x443160]
cmp ebx, ecx
jb 0x41ea3d
nop
lea eax, [eax + 4]
cmp ebx, ecx
je 0x41ea4f
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x41ea30
cmp dword [esi + 0x9c], 0x10
jne 0x41c2d6
jmp 0x41d0db
cmp dword [esi + 0x9c], 0x10
je 0x41c2d6
jmp 0x41d0db
cmp ebx, 0x24
je 0x41e88a
cmp ebx, 0x40
je 0x41e88a
cmp ebx, 0x60
je 0x41e88a
cmp ebx, 0xa0
jb 0x41ea90
cmp ebx, 0xd7ff
jbe 0x41e88a
cmp ebx, 0xe000
jae 0x41e88a
xor ecx, ecx
jmp 0x41e88f
mov esi, dword [esi]
test esi, esi
je case.default.0x425b54
mov edi, 0xfffffff2
jmp 0x425b39
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d8f0
movzx ebx, byte [edi]
inc edi
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test ecx, ecx
je 0x41ebc2
cmp ebx, 0xc0
jb 0x41ebc2
test bl, 0x20
jne 0x41eb00
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41ebbf
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41eb2f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, dword [esp + 0x8c]
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x41ebc2
mov edx, dword [esi + 8]
test bl, 8
jne 0x41eb55
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x41ebb8
test bl, 4
jne 0x41eb84
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x41ebb8
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x41ebe4
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a2]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41ed76
lea esp, [esp]
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x41ed0e
cmp ebx, 0xc0
jb 0x41ed0e
test bl, 0x20
jne 0x41ec45
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x41ed06
test bl, 0x10
jne 0x41ec6a
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x41ed06
test bl, 8
jne 0x41ec98
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x41ed06
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x41ecd2
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x41ed06
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x41ed30
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx ecx, byte [eax*8 + 0x4432a2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x443128], eax
je 0x41ed76
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0x8c]
cmp eax, dword [ebp + 0x78]
jb 0x41ec10
cmp dword [ebp + 0x88], 0
je 0x41db54
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41db54
cmp eax, dword [ebp + 0x84]
jbe 0x41db54
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41db54
jmp 0x41d246
mov ecx, dword [esi + 0xc]
xor eax, eax
cmp edx, 0x74
sete al
movzx ebx, byte [ecx + 3]
movzx edx, byte [ecx + 2]
mov dword [esp + 0x7c], eax
movzx eax, byte [ecx + 4]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 1]
shl eax, 8
or edx, eax
lea eax, [ecx + 5]
imul edx, dword [ebp + 0x24]
add edx, dword [ebp + 0x30]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x50]
neg eax
sbb eax, eax
neg eax
dec eax
mov dword [esi + 0x88], eax
mov dword [esi + 0x98], 0
test ebx, ebx
jle 0x41eea4
lea esp, [esp]
movzx ecx, byte [edx]
dec ebx
movzx eax, byte [edx + 1]
shl ecx, 8
or ecx, eax
lea edi, [ecx + ecx]
mov dword [esi + 0x98], edi
cmp edi, dword [esi + 0x14]
jge 0x41ee34
mov eax, dword [ebp + 0xc]
cmp dword [eax + edi*4], 0
jge 0x41ee3d
add edx, dword [ebp + 0x24]
test ebx, ebx
jg 0x41ee10
jmp 0x41eea4
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edi*4 + 4]
sub ecx, dword [eax + edi*4]
mov dword [esi + 0x88], ecx
jmp 0x41eea4
xor eax, eax
cmp edx, 0x72
sete al
mov dword [esp + 0x7c], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
add dword [esi + 0xc], 3
mov edx, dword [esi + 0x98]
cmp edx, dword [esi + 0x14]
jge 0x41ee94
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
test ecx, ecx
js 0x41ee94
mov eax, dword [eax + edx*4 + 4]
sub eax, ecx
jmp 0x41ee9e
mov eax, dword [ebp + 0x50]
neg eax
sbb eax, eax
neg eax
dec eax
mov dword [esi + 0x88], eax
mov edx, dword [esi + 0xc]
mov bl, byte [edx]
movzx ecx, bl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x41eebf
movzx eax, byte [eax + 0x42a284]
jmp dword [eax*4 + 0x42a27c]
add ecx, 0xffffff9e
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
mov ebx, ecx
and ebx, 1
mov dword [esp + 0x80], ebx
movsx eax, byte [ecx + 0x4425f0]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4425fc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41ef4d
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x41ef4d
movzx ecx, byte [edx + 1]
xor eax, eax
cmp bl, 0x69
sete al
shl ecx, 8
mov dword [esp + 0x80], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x90], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
jne 0x41ef49
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
mov eax, dword [esi + 0x88]
mov edi, dword [esp + 0x8c]
test eax, eax
je 0x41c2e1
jns 0x41ef71
cmp dword [esi + 0x90], 0
je 0x41c2e1
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41efaf
mov edi, edi
push dword [esp + 0x7c]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.0042a780
add esp, 0x14
test eax, eax
js 0x41efe1
add eax, ebx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x41ef80
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x41c2e1
cmp dword [esp + 0x80], 0
je 0x41f00a
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x4263f2
cmp eax, 0xfffffffe
jne 0x41efec
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x423266.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x423266.14
jmp 0x41d885
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edi, dword [esi + 0x90]
jmp 0x41f020
cmp edi, dword [esi + 0x8c]
jge 0x426441
push dword [esp + 0x7c]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.0042a780
add esp, 0x14
test eax, eax
js 0x41f055
add eax, ebx
inc edi
mov dword [esi + 8], eax
jmp 0x41f020
cmp eax, 0xfffffffe
jne 0x426441
cmp dword [ebp + 0x88], 0
je 0x426441
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x84]
jbe 0x426441
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x426441
jmp 0x41d246
mov ebx, dword [esp + 0x7c]
push ebx
push ebp
push dword [esi + 0x88]
push dword [esi + 8]
push dword [esi + 0x98]
call fcn.0042a780
add esp, 0x14
mov dword [esi + 0x88], eax
test eax, eax
jns 0x41f119
cmp eax, 0xfffffffe
jne 0x41f0c5
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x426a1d.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x426a1d.14
cmp eax, dword [ebp + 0x84]
jbe case.0x426a1d.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x426a1d.14
mov esi, dword [esi]
test esi, esi
je 0x429f7c
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff4
jmp 0x425b44
add dword [esi + 8], eax
jmp 0x41c2da
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x28], eax
add dword [esi + 0xc], 0x21
mov edx, dword [esi + 0xc]
mov cl, byte [edx]
movzx edi, cl
lea eax, [edi - 0x62]
cmp eax, 0xb
ja case.default.0x41f147
movzx eax, byte [eax + 0x42a294]
jmp dword [eax*4 + 0x42a28c]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x41f16a
mov ebx, ecx
and ebx, 1
mov dword [esp + 0x84], ebx
jmp 0x41f175
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x4425f0]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4425fc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41f20c
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x41f20c
xor ebx, ebx
cmp cl, 0x69
sete bl
xor eax, eax
cmp cl, 0x6d
mov dword [esp + 0x84], ebx
movzx ecx, byte [edx + 1]
sete al
shl ecx, 8
mov dword [esp + 0x80], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x90], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
jne 0x41f1f2
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x41f20c
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x41f36c
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41f3c1
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f357
movzx ebx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x41f31c
test bl, 0x20
jne 0x41f26a
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41f319
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f291
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41f317
test bl, 8
jne 0x41f2b4
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x41f317
test bl, 4
jne 0x41f2e3
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x41f317
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
jbe 0x41f32d
cmp dword [esi + 0x9c], 0x6e
jmp 0x41f342
mov eax, dword [esi + 0x28]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je case.0x423266.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41f230
jmp 0x41f3b3
cmp dword [ebp + 0x88], 0
je case.0x423266.14
mov eax, dword [esi + 8]
jmp 0x41d885
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x41f3ba
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f357
movzx edi, byte [eax]
mov edx, 1
inc eax
mov ecx, edi
mov dword [esi + 8], eax
and ecx, 7
mov eax, dword [esi + 0x28]
shr edi, 3
shl edx, cl
test byte [edi + eax], dl
je case.0x423266.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41f380
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x84]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41c2da
test ebx, ebx
je 0x41f3ea
test edx, edx
jne 0x429657
mov dword [esi + 0x84], eax
jmp 0x4264db
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
test edx, edx
je 0x41f5a2
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x41f58f
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x41f567
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x41f516
test bl, 0x20
jne 0x41f45b
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x41f516
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41f483
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x41f50c
and eax, 0x3f
test bl, 8
jne 0x41f4a9
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x41f50c
test bl, 4
jne 0x41f4d8
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
jmp 0x41f50c
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov ebx, ecx
cmp ebx, 0xff
jbe 0x41f527
cmp dword [esi + 0x9c], 0x6e
jmp 0x41f53c
mov eax, dword [esi + 0x28]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je 0x41f58f
mov eax, dword [esp + 0x84]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x41f411
jmp 0x41f58f
cmp dword [ebp + 0x88], 0
je 0x41f58f
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41f58f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
cmp dword [esp + 0x80], 0
je 0x42749c
jmp 0x41c2da
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x41f61a
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x41f5f2
movzx edi, byte [ebx]
mov edx, 1
mov eax, dword [esi + 0x28]
mov ecx, edi
and ecx, 7
shr edi, 3
shl edx, cl
test byte [edi + eax], dl
je 0x41f61a
lea eax, [ebx + 1]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x41f5b1
jmp 0x41f61a
cmp dword [ebp + 0x88], 0
je 0x41f61a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41f61a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
cmp dword [esp + 0x80], 0
je 0x42651b
jmp 0x41c2da
mov eax, dword [esi + 0xc]
add eax, 3
mov dword [esi + 0x28], eax
mov edx, dword [esi + 0xc]
mov eax, edx
movzx ecx, byte [eax + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
mov cl, byte [edx]
movzx edi, cl
lea eax, [edi - 0x62]
cmp eax, 0xb
ja case.default.0x41f665
movzx eax, byte [eax + 0x42a2a8]
jmp dword [eax*4 + 0x42a2a0]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x41f688
mov eax, ecx
and eax, 1
mov dword [esp + 0x84], eax
jmp 0x41f693
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x4425f0]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4425fc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41f72a
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x41f72a
xor eax, eax
cmp cl, 0x69
sete al
mov dword [esp + 0x84], eax
xor eax, eax
cmp cl, 0x6d
movzx ecx, byte [edx + 1]
sete al
shl ecx, 8
mov dword [esp + 0x80], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x90], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
jne 0x41f710
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x41f72a
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x41f865
jmp 0x41f740
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41f357
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x41f83a
cmp edx, 0xc0
jb 0x41f83a
test dl, 0x20
jne 0x41f788
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x41f837
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41f7af
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x41f835
test dl, 8
jne 0x41f7d2
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x41f835
test dl, 4
jne 0x41f801
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x41f835
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
mov edi, dword [esp + 0x8c]
push edi
push dword [esi + 0x28]
push edx
call fcn.0042bdc0
add esp, 0xc
test eax, eax
je case.0x423266.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41f740
jmp 0x41f86c
mov edi, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41c2e1
cmp dword [esp + 0x84], 0
jne 0x429668
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x41f9fd
jmp 0x41f8b0
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x41f9d3
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x41f99b
cmp edx, 0xc0
jb 0x41f99b
test dl, 0x20
jne 0x41f8fc
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov ebx, 2
jmp 0x41f99b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x41f91b
and edx, 0xf
mov ebx, 3
shl edx, 6
or ecx, edx
jmp 0x41f991
and eax, 0x3f
test dl, 8
jne 0x41f93b
and edx, 7
mov ebx, 4
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x41f991
test dl, 4
jne 0x41f964
and edx, 3
mov ebx, 5
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
jmp 0x41f991
and edx, ebx
mov ebx, 6
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov edx, ecx
mov edi, dword [esp + 0x8c]
push edi
push dword [esi + 0x28]
push edx
call fcn.0042bdc0
add esp, 0xc
test eax, eax
je 0x41f9fd
mov eax, dword [esp + 0x84]
add dword [esi + 8], ebx
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x41f8b0
jmp 0x41f9fd
cmp dword [ebp + 0x88], 0
je 0x41f9f6
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41f9f6
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jg 0x41d246
mov edi, dword [esp + 0x8c]
cmp dword [esp + 0x80], 0
jne 0x41c2e1
jmp 0x4272b1
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x41fbe9
mov dword [esi + 0x88], 1
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
cmp eax, 0xc0
jb 0x41fb70
test al, 0x20
jne 0x41fa70
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0x80]
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0x88]
jmp 0x41fb70
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x41faaa
mov eax, dword [esi + 0x80]
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 2
jmp 0x41fb70
test al, 8
jne 0x41fae6
mov eax, dword [esi + 0x80]
and eax, 7
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x41fb70
test al, 4
mov eax, dword [esi + 0x80]
jne 0x41fb2b
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x41fb70
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 5
mov edi, dword [ebp + 0x78]
mov eax, edi
mov edx, dword [esi + 8]
sub eax, edx
mov ecx, dword [esi + 0x88]
cmp ecx, eax
jle 0x41fba9
cmp dword [ebp + 0x88], ebx
je case.0x423266.14
cmp edx, edi
jb case.0x423266.14
cmp edx, dword [ebp + 0x84]
jbe case.0x423266.14
jmp 0x41d232
test ecx, ecx
jle 0x41fbde
lea ecx, [ecx]
lea eax, [ecx - 1]
mov dword [esi + 0x88], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov bl, byte [eax]
mov dl, byte [ecx]
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc dword [esi + 0xc]
cmp bl, dl
jne case.0x423266.14
mov ecx, dword [esi + 0x88]
test ecx, ecx
jg 0x41fbb0
dec dword [esi + 0x88]
jmp 0x41c2da
mov eax, dword [ebp + 0x78]
mov edi, dword [esi + 8]
sub eax, edi
cmp eax, 1
jge 0x41fc36
cmp dword [ebp + 0x88], ebx
je 0x41ca9d
cmp edi, dword [ebp + 0x84]
jbe 0x41ca9d
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41ca9d
mov esi, dword [esi]
test esi, esi
je 0x429f7c
mov edi, 0xfffffff4
jmp 0x425b40
mov eax, dword [esi + 0xc]
mov cl, byte [edi]
mov dl, byte [eax + 1]
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp dl, cl
je 0x41ff4b
jmp 0x41d0db
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d8f0
cmp dword [esp + 0x8c], ebx
je 0x41ff2c
mov dword [esi + 0x88], 1
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
cmp eax, 0xc0
jb 0x41fdbb
test al, 0x20
jne 0x41fcbb
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0x80]
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0x88]
jmp 0x41fdbb
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x41fcf5
mov eax, dword [esi + 0x80]
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 2
jmp 0x41fdbb
test al, 8
jne 0x41fd31
mov eax, dword [esi + 0x80]
and eax, 7
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x41fdbb
test al, 4
mov eax, dword [esi + 0x80]
jne 0x41fd76
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x41fdbb
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 5
mov edi, dword [esi + 0x80]
mov eax, dword [esi + 8]
cmp edi, 0x80
jae 0x41fde9
mov edx, dword [ebp + 0x38]
movzx ecx, byte [eax]
mov al, byte [edi + edx]
cmp al, byte [ecx + edx]
jne 0x41d0db
inc dword [esi + 0xc]
inc dword [esi + 8]
jmp 0x41c2da
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x41fecb
test bl, 0x20
jne 0x41fe19
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41fec8
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41fe40
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41fec6
test bl, 8
jne 0x41fe63
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x41fec6
test bl, 4
jne 0x41fe92
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x41fec6
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, dword [esi + 0x88]
add dword [esi + 0xc], eax
mov edi, dword [esi + 0x80]
cmp edi, ebx
je 0x41c2da
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x444920]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x41ff05
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x446b20]
mov eax, dword [eax*8 + 0x4432a4]
add eax, edi
mov edi, dword [esp + 0x8c]
cmp ebx, eax
je 0x41c2e1
jmp 0x41d0db
mov eax, dword [esi + 0xc]
mov edx, dword [ebp + 0x38]
movzx ecx, byte [edi]
movzx eax, byte [eax + 1]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne 0x41d0db
lea eax, [edi + 1]
mov dword [esi + 8], eax
add dword [esi + 0xc], 2
jmp 0x41c2da
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x90], ecx
add dword [esi + 0xc], 3
jmp 0x42007d
mov dword [esp + 0x80], 1
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov ecx, dword [esi + 0xc]
mov al, byte [ecx]
cmp al, 0x28
je 0x41ffb4
mov dword [esp + 0x84], ebx
cmp al, 0x35
jne 0x41ffbf
mov dword [esp + 0x84], 1
lea eax, [ecx + 3]
mov dword [esi + 0xc], eax
jmp 0x42007d
mov dword [esi + 0x90], ebx
mov edi, 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x420084
mov edi, 1
mov dword [esi + 0x90], edi
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x420084
mov edi, 1
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], edi
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x420084
mov ecx, dword [esi + 0xc]
cmp edx, 0x2e
sbb eax, eax
and eax, 0xfffffff3
movzx edx, byte [ecx]
add eax, 0x2e
sub edx, eax
lea eax, [ecx + 1]
mov dword [esi + 0xc], eax
mov eax, edx
and eax, 1
mov dword [esp + 0x84], eax
movsx eax, byte [edx + 0x4425f0]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x4425fc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x42007d
mov dword [esi + 0x8c], 0x7fffffff
mov edi, dword [esp + 0x80]
cmp dword [esp + 0x8c], ebx
je 0x4204f8
mov dword [esi + 0x88], 1
mov eax, dword [esi + 0xc]
mov dword [esi + 0x24], eax
mov eax, dword [esi + 0xc]
movzx ebx, byte [eax]
mov dword [esi + 0x80], ebx
cmp ebx, 0xc0
jb 0x4201cb
mov eax, dword [esi + 0xc]
test bl, 0x20
jne 0x4200e1
movzx eax, byte [eax + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or eax, ebx
mov dword [esi + 0x80], eax
inc dword [esi + 0x88]
jmp 0x4201cb
test bl, 0x10
jne 0x420116
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 0xc]
and ecx, 0x3f
shl ebx, 6
or ecx, ebx
shl ecx, 6
movzx eax, byte [eax + 2]
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0x88], 2
jmp 0x4201cb
mov ecx, dword [esi + 0xc]
movzx edx, byte [eax + 1]
and edx, 0x3f
movzx eax, byte [ecx + 2]
and eax, 0x3f
test bl, 8
jne 0x420154
and ebx, 7
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x4201cb
test bl, 4
jne 0x42018d
and ebx, 3
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x4201cb
and ebx, 1
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 5
mov eax, dword [esi + 0x88]
add dword [esi + 0xc], eax
cmp dword [esi + 0x88], 1
jle 0x420507
cmp dword [esi + 0x9c], 0x2e
jb 0x42023c
mov edi, dword [esi + 0x80]
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x444920]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x420213
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x446b20]
mov ecx, dword [eax*8 + 0x4432a4]
add ecx, edi
cmp ecx, edi
je 0x42023c
lea eax, [esi + 0x70]
push eax
push ecx
call fcn.0042bd60
add esp, 8
mov dword [esi + 0x6c], eax
jmp 0x420243
mov dword [esi + 0x6c], 0
cmp dword [esi + 0x90], 1
mov dword [esp + 0x94], 1
jl 0x420376
jmp 0x420260
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov ebx, dword [esi + 0x88]
sub eax, ebx
mov edi, dword [esi + 8]
mov dword [esp + 0x90], ecx
cmp edi, eax
ja 0x4202e4
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x420298
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4202a1
add ecx, 4
add edx, 4
sub edi, 4
jae 0x420287
cmp edi, 0xfffffffc
je 0x420358
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4202da
cmp edi, 0xfffffffd
je 0x420358
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4202da
cmp edi, 0xfffffffe
je 0x420358
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4202da
cmp edi, 0xffffffff
je 0x420358
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x420358
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x90]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x41efec
sub ecx, ebx
cmp edi, ecx
ja 0x41efec
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x420316
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42031b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x420305
cmp edi, 0xfffffffc
je 0x420358
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x41efec
cmp edi, 0xfffffffd
je 0x420358
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x41efec
cmp edi, 0xfffffffe
je 0x420358
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41efec
cmp edi, 0xffffffff
je 0x420358
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x41efec
mov edx, dword [esp + 0x94]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x94], edx
cmp edx, dword [esi + 0x90]
jle 0x420260
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x41c2e1
cmp dword [esp + 0x84], 0
jne 0x429679
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4204e5
lea esp, [esp]
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov ebx, dword [esi + 0x88]
sub eax, ebx
mov edi, dword [esi + 8]
mov dword [esp + 0x84], ecx
cmp edi, eax
ja 0x42043c
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x4203f8
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x420401
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4203e7
cmp edi, 0xfffffffc
je 0x420498
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x420432
cmp edi, 0xfffffffd
je 0x420498
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x420432
cmp edi, 0xfffffffe
je 0x420498
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x420432
cmp edi, 0xffffffff
je 0x420498
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x420498
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x84]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x4204b8
sub ecx, ebx
cmp edi, ecx
ja 0x4204b8
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x420466
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42046b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x420455
cmp edi, 0xfffffffc
je 0x420498
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4204b8
cmp edi, 0xfffffffd
je 0x420498
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4204b8
cmp edi, 0xfffffffe
je 0x420498
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4204b8
cmp edi, 0xffffffff
je 0x420498
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4204b8
mov edx, dword [esp + 0x90]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x90], edx
cmp edx, dword [esi + 0x8c]
jl 0x4203c0
jmp 0x4204e5
cmp dword [ebp + 0x88], 0
je 0x4204e5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4204e5
cmp eax, dword [ebp + 0x84]
jbe 0x4204e5
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
cmp dword [esp + 0x80], 0
je 0x42765c
jmp 0x41c2da
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
cmp dword [esi + 0x9c], 0x2e
jb 0x4205ff
mov ecx, dword [ebp + 0x3c]
mov edx, 1
mov eax, dword [esi + 0x80]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
cmp dword [esi + 0x90], edx
jl 0x420564
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f357
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x420557
cmp dword [esi + 0x94], ecx
jne case.0x423266.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x420534
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41c2da
cmp dword [esp + 0x84], 0
je 0x42058b
mov dword [esi + 0x84], eax
jmp 0x4265bb
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4205f2
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4205ca
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x4205bb
cmp dword [esi + 0x94], ecx
jne 0x4205f2
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4205a0
jmp 0x4205f2
cmp dword [ebp + 0x88], 0
je 0x4205f2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4205f2
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
test edi, edi
je 0x4265fb
jmp 0x41c2da
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x42063a
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f357
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne case.0x423266.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x420610
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x41c2e1
cmp dword [esp + 0x84], 0
je 0x420668
mov dword [esi + 0x84], eax
jmp 0x426688
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4206cc
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4206a4
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
jne 0x4206cc
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x420680
jmp 0x4206cc
cmp dword [ebp + 0x88], 0
je 0x4206cc
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4206cc
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
cmp dword [esp + 0x80], 0
je 0x4266c8
jmp 0x41c2e1
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jb 0x420704
cmp dword [ebp + 0x88], ebx
je case.0x423266.14
cmp ecx, dword [ebp + 0x84]
jbe case.0x423266.14
jmp 0x41d232
test edi, edi
je 0x42097c
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 0xc], edx
cmp ebx, 0xc0
jb 0x420805
movzx eax, byte [edx]
and eax, 0x3f
test bl, 0x20
jne 0x420742
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x420802
test bl, 0x10
jne 0x420763
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x420802
test bl, 8
jne 0x42078e
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [edx + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add dword [esi + 0xc], 3
jmp 0x420805
mov ecx, dword [esi + 0xc]
test bl, 4
jne 0x4207c7
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 4]
jmp 0x420802
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 5]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esp + 0x80], edx
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4208f8
test dl, 0x20
jne 0x42083f
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4208ee
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x420866
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4208ec
test dl, 8
jne 0x420889
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x4208ec
test dl, 4
jne 0x4208b8
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x4208ec
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esp + 0x80], edx
mov dword [esi + 8], eax
cmp dword [esi + 0x9c], 0x1f
jne 0x420915
mov edi, dword [esp + 0x8c]
cmp ebx, edx
jne 0x41c2e1
jmp 0x41d0db
cmp ebx, 0x7f
jbe 0x420952
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x444920]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x42093d
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x446b20]
mov ecx, dword [eax*8 + 0x4432a4]
add ecx, ebx
jmp 0x420959
mov eax, dword [ebp + 0x3c]
movzx ecx, byte [eax + ebx]
mov eax, dword [esp + 0x80]
cmp ebx, eax
je 0x41d0db
mov edi, dword [esp + 0x8c]
cmp ecx, eax
jne 0x41c2e1
jmp 0x41d0db
mov eax, dword [esi + 0xc]
movzx edi, byte [ecx]
movzx edx, byte [eax + 1]
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp edx, edi
je case.0x423266.14
cmp dword [esi + 0x9c], 0x20
jne 0x41ff4b
mov eax, dword [ebp + 0x3c]
movzx eax, byte [eax + edx]
cmp eax, edi
je case.0x423266.14
add dword [esi + 0xc], 2
jmp 0x41c2da
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x90], ecx
add dword [esi + 0xc], 3
jmp 0x420b16
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov ecx, dword [esi + 0xc]
mov al, byte [ecx]
cmp al, 0x42
je 0x420a1b
cmp al, 0x4f
je 0x420a1b
xor ebx, ebx
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x420b16
mov ebx, 1
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x420b16
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x420b16
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x420b16
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x420b16
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x80], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
add dword [esi + 0xc], 3
jmp 0x420b16
mov ecx, dword [esi + 0xc]
cmp edx, 0x48
sbb eax, eax
and eax, 0xfffffff3
movzx edx, byte [ecx]
add eax, 0x48
sub edx, eax
lea eax, [ecx + 1]
mov dword [esi + 0xc], eax
mov ebx, edx
and ebx, 1
mov dword [esp + 0x84], ebx
movsx eax, byte [edx + 0x4425f0]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x4425fc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x420b16
mov dword [esi + 0x8c], 0x7fffffff
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x8c]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
mov edi, dword [esi + 0xc]
test edx, edx
je 0x420c71
mov eax, dword [esi + 0x80]
cmp eax, 0xc0
jb 0x420c71
test al, 0x20
jne 0x420b68
movzx ecx, byte [edi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0xc]
jmp 0x420c71
test al, 0x10
jne 0x420b9b
mov eax, dword [esi + 0x80]
movzx ecx, byte [edi]
and eax, 0xf
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [edi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 2
jmp 0x420c71
test al, 8
jne 0x420bdd
mov eax, dword [esi + 0x80]
movzx ecx, byte [edi]
and eax, 7
shl eax, 6
and ecx, 0x3f
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [esi + 0xc]
shl ecx, 6
movzx eax, byte [eax + 2]
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 3
jmp 0x420c71
movzx edx, byte [edi]
mov ecx, dword [esi + 0xc]
and edx, 0x3f
test al, 4
mov eax, dword [esi + 0x80]
jne 0x420c28
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [edi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0xc], 4
jmp 0x420c6a
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [edi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0xc], 5
mov edx, dword [esp + 0x8c]
cmp dword [esi + 0x9c], 0x48
jb 0x421095
test edx, edx
je 0x420ccc
mov edi, dword [esi + 0x80]
cmp edi, 0x7f
jbe 0x420ccc
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x444920]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x420cb0
dec eax
or eax, 0xffffff80
inc eax
mov edx, dword [esp + 0x8c]
add ecx, eax
movzx eax, word [ecx*2 + 0x446b20]
mov eax, dword [eax*8 + 0x4432a4]
add eax, edi
jmp 0x420cd9
mov ecx, dword [ebp + 0x3c]
mov eax, dword [esi + 0x80]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
test edx, edx
je 0x420e20
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x420e6b
jmp 0x420d00
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f357
movzx ecx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ecx, 0xc0
jb 0x420df9
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x420d3a
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x420df6
test cl, 0x10
jne 0x420d5b
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x420df6
test cl, 8
jne 0x420d85
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x420df6
test cl, 4
jne 0x420dbb
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x420df6
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], ecx
je case.0x423266.14
cmp dword [esi + 0x94], ecx
je case.0x423266.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x420d00
jmp 0x420e64
mov edx, 1
cmp dword [esi + 0x90], edx
jl 0x420e64
lea ecx, [ecx]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f357
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je case.0x423266.14
cmp dword [esi + 0x94], ecx
je case.0x423266.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x420e30
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41c2da
test ebx, ebx
je 0x420e94
test edx, edx
jne 0x42968a
mov dword [esi + 0x84], eax
jmp 0x42675f
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x42101d
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42100a
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x420fe2
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x420fbe
test dl, 0x20
jne 0x420ef2
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x420fbe
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x420f1c
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x420fbc
test dl, 8
jne 0x420f48
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x420fbc
test dl, 4
jne 0x420f80
movzx eax, byte [edi + 2]
and edx, 3
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 5
jmp 0x420fbc
and edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 6
mov edx, ecx
cmp dword [esi + 0x80], edx
je 0x42100a
cmp dword [esi + 0x94], edx
je 0x42100a
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x420eb4
jmp 0x42100a
cmp dword [ebp + 0x88], 0
je 0x42100a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x42100a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
cmp dword [esp + 0x80], 0
je 0x42783c
jmp 0x41c2da
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x421082
jmp 0x421030
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42105a
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x421082
cmp dword [esi + 0x94], ecx
je 0x421082
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x421030
jmp 0x421082
cmp dword [ebp + 0x88], 0
je 0x421082
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x421082
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
cmp dword [esp + 0x80], 0
je 0x42679f
jmp 0x41c2da
test edx, edx
je 0x4211b7
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x4211f5
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41f357
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x42119c
test dl, 0x20
jne 0x4210ea
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x421199
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x421111
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x421197
test dl, 8
jne 0x421134
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x421197
test dl, 4
jne 0x421163
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x421197
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp dword [esi + 0x80], edx
je case.0x423266.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4210b0
jmp 0x4211ee
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x4211f5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f357
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je case.0x423266.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4211c4
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41c2da
cmp dword [esp + 0x84], 0
je 0x421224
test edx, edx
jne 0x42969f
mov dword [esi + 0x84], eax
jmp 0x42682c
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x4213a8
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x421395
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x42136d
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x421351
test dl, 0x20
jne 0x421282
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x421351
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4212ac
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x42134f
test dl, 8
jne 0x4212db
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x42134f
test dl, 4
jne 0x421313
movzx eax, byte [edi + 2]
and edx, 3
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 5
jmp 0x42134f
and edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 6
mov edx, ecx
cmp dword [esi + 0x80], edx
je 0x421395
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x421244
jmp 0x421395
cmp dword [ebp + 0x88], 0
je 0x421395
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x421395
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
cmp dword [esp + 0x80], 0
je 0x427a00
jmp 0x41c2da
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x421402
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4213da
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
je 0x421402
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4213b6
jmp 0x421402
cmp dword [ebp + 0x88], 0
je 0x421402
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x421402
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
cmp dword [esp + 0x80], 0
je 0x42686c
jmp 0x41c2da
mov eax, dword [esi + 0xc]
mov dword [esp + 0x84], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x90], ecx
add dword [esi + 0xc], 3
jmp 0x421554
mov dword [esi + 0x90], ebx
xor edx, edx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x5c
sete dl
add eax, 3
mov dword [esp + 0x84], edx
mov dword [esi + 0xc], eax
jmp 0x421554
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x421554
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x421554
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x421554
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x80], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
add dword [esi + 0xc], 3
jmp 0x421554
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 0xc], eax
movsx eax, byte [ecx + 0x44259b]
lea edx, [ecx - 0x55]
mov dword [esi + 0x90], eax
and edx, 1
movsx eax, byte [ecx + 0x4425a7]
mov dword [esp + 0x84], edx
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x421554
mov dword [esi + 0x8c], 0x7fffffff
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x7c], eax
inc dword [esi + 0xc]
mov ecx, dword [esi + 0x7c]
cmp ecx, 0x10
je 0x421576
cmp ecx, 0xf
je 0x421576
mov dword [esi + 0x60], 0xffffffff
jmp 0x421599
xor eax, eax
cmp ecx, 0xf
sete al
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x60], eax
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x64], eax
inc dword [esi + 0xc]
mov ecx, dword [esi + 0x90]
test ecx, ecx
jle 0x42353b
mov eax, dword [esi + 0x60]
test eax, eax
js 0x422348
cmp eax, 0xa
ja case.default.0x41e85a
jmp dword [eax*4 + 0x42a2b4]
cmp dword [esi + 0x68], ebx
jne 0x41d0db
mov edx, 1
cmp ecx, edx
jl 0x42353b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42162d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x42161f
cmp ecx, 0xc0
jb 0x42161f
test cl, 0x20
jne 0x4215fb
inc eax
jmp 0x42161c
test cl, 0x10
jne 0x421605
add eax, 2
jmp 0x42161c
test cl, 8
jne 0x42160f
add eax, 3
jmp 0x42161c
test cl, 4
jne 0x421619
add eax, 4
jmp 0x42161c
add eax, 5
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x90]
jle 0x4215d8
jmp 0x42353b
cmp dword [ebp + 0x88], ebx
je case.0x423266.14
mov eax, dword [esi + 8]
jmp 0x41d885
mov edi, 1
cmp ecx, edi
jl 0x42353b
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f357
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x42174a
cmp ebx, 0xc0
jb 0x42174a
test bl, 0x20
jne 0x421698
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x421747
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4216bf
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x421745
test bl, 8
jne 0x4216e2
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x421745
test bl, 4
jne 0x421711
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x421745
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x42176c
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
cmp eax, 9
je 0x421791
cmp eax, 5
je 0x421791
cmp eax, 8
je 0x421791
xor eax, eax
jmp 0x421796
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x423266.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x421650
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x42353b
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f357
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x4218b8
cmp ebx, 0xc0
jb 0x4218b8
test bl, 0x20
jne 0x421808
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4218b5
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42182f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x4218b5
test bl, 8
jne 0x421852
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x4218b5
test bl, 4
jne 0x421881
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x4218b5
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x4218da
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x423266.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4217c0
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x42353b
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f357
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x421a1b
cmp ebx, 0xc0
jb 0x421a1b
test bl, 0x20
jne 0x42196b
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x421a18
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x421992
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x421a18
test bl, 8
jne 0x4219b5
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x421a18
test bl, 4
jne 0x4219e4
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x421a18
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x421a3d
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x423266.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x421923
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x42353b
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f357
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x421b78
cmp ebx, 0xc0
jb 0x421b78
test bl, 0x20
jne 0x421ac8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x421b75
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x421aef
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x421b75
test bl, 8
jne 0x421b12
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x421b75
test bl, 4
jne 0x421b41
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x421b75
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x421b9a
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x423266.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x421a80
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x42353b
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f357
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x421cda
cmp ebx, 0xc0
jb 0x421cda
test bl, 0x20
jne 0x421c28
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x421cd7
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x421c4f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x421cd5
test bl, 8
jne 0x421c72
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x421cd5
test bl, 4
jne 0x421ca1
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x421cd5
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x421cfc
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, 1
je 0x421d23
cmp eax, 3
je 0x421d23
xor eax, eax
jmp 0x421d28
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x423266.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x421be0
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x42353b
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f357
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x421e4a
cmp ebx, 0xc0
jb 0x421e4a
test bl, 0x20
jne 0x421d98
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x421e47
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x421dbf
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x421e45
test bl, 8
jne 0x421de2
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x421e45
test bl, 4
jne 0x421e11
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x421e45
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x421e8d
je case.0x421ea9.8192
cmp ebx, 0x85
ja 0x421e79
je case.0x421ea9.8192
cmp ebx, 9
jb case.0x421ea9.8203
cmp ebx, 0xd
jbe case.0x421ea9.8192
cmp ebx, 0x20
jmp 0x421ebe
cmp ebx, 0xa0
je case.0x421ea9.8192
cmp ebx, 0x1680
jmp 0x421ebe
cmp ebx, 0x202f
ja 0x421eb0
je case.0x421ea9.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x421ea9.8203
movzx eax, byte [eax + 0x42a2e8]
jmp dword [eax*4 + 0x42a2e0]
cmp ebx, 0x205f
je case.0x421ea9.8192
cmp ebx, 0x3000
je case.0x421ea9.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x421ee2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
cmp dword [eax*4 + 0x4430b0], 6
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x423266.14
jmp 0x421f16
cmp dword [esi + 0x68], 0
jne case.0x423266.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x421d50
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x42353b
jmp 0x421f40
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f357
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x422038
cmp ebx, 0xc0
jb 0x422038
test bl, 0x20
jne 0x421f88
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x422035
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x421faf
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x422035
test bl, 8
jne 0x421fd2
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x422035
test bl, 4
jne 0x422001
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x422035
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x444920]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x42205b
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, 1
je 0x422087
cmp eax, 3
je 0x422087
cmp ebx, 0x5f
je 0x422087
xor eax, eax
jmp 0x42208c
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x423266.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x421f40
jmp 0x42353b
mov ebx, 1
cmp ecx, ebx
jl 0x42353b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41f357
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x4221ac
cmp edx, 0xc0
jb 0x4221ac
test dl, 0x20
jne 0x4220fc
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4221a9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x422123
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x4221a9
test dl, 8
jne 0x422146
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x4221a9
test dl, 4
jne 0x422175
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x4221a9
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x64]
mov ecx, dword [eax*4 + 0x443160]
lea eax, [eax*4 + 0x443160]
cmp edx, ecx
jb 0x4221ce
lea eax, [eax + 4]
cmp edx, ecx
je 0x4221ea
mov ecx, dword [eax]
cmp edx, ecx
jae 0x4221c1
cmp dword [esi + 0x68], 0
je case.0x423266.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4220b4
jmp 0x42353b
cmp dword [esi + 0x68], 0
jne case.0x423266.14
jmp 0x4221d8
mov ebx, 1
cmp ecx, ebx
jl 0x42353b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41f357
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x4222fd
cmp edx, 0xc0
jb 0x4222fd
test dl, 0x20
jne 0x42224b
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4222fa
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x422272
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4222f8
test dl, 8
jne 0x422295
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x4222f8
test dl, 4
jne 0x4222c4
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x4222f8
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x24
je 0x422328
cmp edx, 0x40
je 0x422328
cmp edx, 0x60
je 0x422328
cmp edx, 0xa0
jb 0x42231c
cmp edx, 0xd7ff
jbe 0x422328
cmp edx, 0xe000
jae 0x422328
xor eax, eax
jmp 0x42232d
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x423266.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x422203
jmp 0x42353b
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x422673
mov edi, 1
mov dword [esp + 0x94], edi
cmp ecx, edi
jl 0x42353b
jmp 0x422370
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f357
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x422470
cmp ebx, 0xc0
jb 0x422470
test bl, 0x20
jne 0x4223b9
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x42246d
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4223e0
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x422466
test bl, 8
jne 0x422403
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x422466
test bl, 4
jne 0x422432
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x422466
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x422492
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a2]
mov dword [esp + 0x90], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42262d
jmp 0x4224c0
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x4225be
cmp ebx, 0xc0
jb 0x4225be
test bl, 0x20
jne 0x4224f5
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x4225b6
test bl, 0x10
jne 0x42251a
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x4225b6
test bl, 8
jne 0x422548
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x4225b6
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x422582
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x4225b6
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x4225e0
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x90]
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx ecx, byte [eax*8 + 0x4432a2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x443128], eax
je 0x422626
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x8c]
cmp eax, dword [ebp + 0x78]
jb 0x4224c0
mov edi, dword [esp + 0x94]
cmp dword [ebp + 0x88], 0
je 0x42265a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x42265a
cmp eax, dword [ebp + 0x84]
jbe 0x42265a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
inc edi
mov dword [esp + 0x94], edi
cmp edi, dword [esi + 0x90]
jle 0x422370
jmp 0x42353b
mov edx, dword [esp + 0x8c]
add eax, 0xfffffffa
test edx, edx
je 0x42313f
cmp eax, 0xf
ja case.0x425687.9
jmp dword [eax*4 + 0x42a314]
mov ebx, 1
cmp ecx, ebx
jl 0x423542
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41f357
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4226d7
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0042c430
add esp, 0x14
test eax, eax
jne case.0x423266.14
jmp 0x4226fb
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4226fb
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4226fb
cmp edx, 1
je case.0x423266.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x423266.14
cmp dword [ebp + 0x88], 0
je 0x422736
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x422736
cmp dword [ebp + 0x18], 0
jne 0x422736
cmp dword [edi], 2
jne 0x422736
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x422736
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x422752
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x422752
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x422741
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4226a2
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x423542
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x42162d
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x4227a8
lea ebx, [ebx]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4227a8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x422790
inc edi
cmp edi, dword [esi + 0x90]
jle 0x422774
jmp 0x42353b
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
ja 0x41d0db
lea eax, [ecx + edx]
mov dword [esi + 8], eax
jmp 0x42353b
mov ebx, 1
cmp ecx, ebx
jl 0x423542
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41f357
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4228cc
test dl, 0x20
jne 0x42281a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4228c9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x422841
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4228c7
test dl, 8
jne 0x422864
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x4228c7
test dl, 4
jne 0x422893
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x4228c7
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0xd
ja 0x4228f0
je 0x4228dd
cmp edx, 0xa
je 0x422911
lea eax, [edx - 0xb]
jmp 0x4228fe
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x422911
cmp byte [eax], 0xa
jne 0x422911
inc eax
mov dword [esi + 8], eax
jmp 0x422911
cmp edx, 0x85
je 0x422907
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x423266.14
cmp dword [ebp + 0x68], 0
jne case.0x423266.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4227e0
jmp 0x42353b
mov ebx, 1
cmp ecx, ebx
jl 0x423542
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41f357
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x422a1c
test dl, 0x20
jne 0x42296a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x422a19
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x422991
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x422a17
test dl, 8
jne 0x4229b4
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x422a17
test dl, 4
jne 0x4229e3
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x422a17
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x180e
ja 0x422a4e
je case.0x423266.14
cmp edx, 0xa0
ja 0x422a46
je case.0x423266.14
cmp edx, 9
je case.0x423266.14
cmp edx, 0x20
jmp 0x422a7e
cmp edx, 0x1680
jmp 0x422a7e
cmp edx, 0x205f
ja 0x422a78
je case.0x423266.14
cmp edx, 0x2000
jb 0x422a84
cmp edx, 0x200a
jbe case.0x423266.14
cmp edx, 0x202f
jmp 0x422a7e
cmp edx, 0x3000
je case.0x423266.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x422930
jmp 0x42353b
mov ebx, 1
cmp ecx, ebx
jl 0x423542
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41f357
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x422b8f
test dl, 0x20
jne 0x422add
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x422b8c
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x422b04
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x422b8a
test dl, 8
jne 0x422b27
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x422b8a
test dl, 4
jne 0x422b56
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x422b8a
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x180e
ja 0x422bb5
je 0x422be7
cmp edx, 0xa0
ja 0x422bad
je 0x422be7
cmp edx, 9
je 0x422be7
cmp edx, 0x20
jmp 0x422be1
cmp edx, 0x1680
jmp 0x422be1
cmp edx, 0x205f
ja 0x422bdb
je 0x422be7
cmp edx, 0x2000
jb case.0x423266.14
cmp edx, 0x200a
jbe 0x422be7
cmp edx, 0x202f
jmp 0x422be1
cmp edx, 0x3000
jne case.0x423266.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x422aa3
jmp 0x42353b
mov ebx, 1
cmp ecx, ebx
jl 0x423542
jmp 0x422c10
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41f357
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x422cfc
test dl, 0x20
jne 0x422c4a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x422cf9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x422c71
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x422cf7
test dl, 8
jne 0x422c94
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x422cf7
test dl, 4
jne 0x422cc3
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x422cf7
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x85
ja 0x422d14
je case.0x423266.14
cmp edx, 0xa
jb 0x422d28
cmp edx, 0xd
jmp 0x422d22
cmp edx, 0x2028
jb 0x422d28
cmp edx, 0x2029
jbe case.0x423266.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x422c10
jmp 0x42353b
mov ebx, 1
cmp ecx, ebx
jl 0x423542
jmp 0x422d50
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41f357
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x422e3c
test dl, 0x20
jne 0x422d8a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x422e39
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x422db1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x422e37
test dl, 8
jne 0x422dd4
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x422e37
test dl, 4
jne 0x422e03
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x422e37
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x85
ja 0x422e4e
je 0x422e5d
lea eax, [edx - 0xa]
cmp eax, 3
jmp 0x422e57
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x423266.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x422d50
jmp 0x42353b
mov ebx, 1
cmp ecx, ebx
jl 0x423542
lea esp, [esp]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41f357
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x422f6c
test dl, 0x20
jne 0x422eba
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x422f69
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x422ee1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x422f67
test dl, 8
jne 0x422f04
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x422f67
test dl, 4
jne 0x422f33
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x422f67
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x80
jae 0x422f81
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne case.0x423266.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x422e80
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x423542
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x42162d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x423266.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x423266.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x422fa0
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x423542
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x42162d
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x423013
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne case.0x423266.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x423038
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x423038
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x423020
inc edi
cmp edi, dword [esi + 0x90]
jle 0x422ff0
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x423542
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x42162d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x423266.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x423266.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x423053
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x423542
mov edx, dword [ebp + 0x78]
nop
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x42162d
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x4230c3
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x423266.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x4230e8
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4230e8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x4230d0
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4230a0
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x423542
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x42162d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x423266.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x423266.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x423103
jmp 0x42353b
cmp eax, 0xf
ja case.0x425687.9
jmp dword [eax*4 + 0x42a354]
mov ebx, 1
cmp ecx, ebx
jl 0x423542
lea esp, [esp]
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41f357
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x423190
push 0
push edi
push eax
push edx
push ecx
call fcn.0042c430
add esp, 0x14
test eax, eax
jne case.0x423266.14
jmp 0x4231b4
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4231b4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4231b4
cmp edx, 1
je case.0x423266.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x423266.14
cmp dword [ebp + 0x88], 0
je 0x4231ef
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x4231ef
cmp dword [ebp + 0x18], 0
jne 0x4231ef
cmp dword [edi], 2
jne 0x4231ef
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x4231ef
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x423160
jmp 0x42353b
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
jbe 0x4227c6
cmp dword [ebp + 0x88], ebx
je case.0x423266.14
cmp edx, dword [ebp + 0x84]
jbe case.0x423266.14
jmp 0x41d232
mov edx, 1
cmp ecx, edx
jl 0x42353b
mov edi, edi
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x42162d
movzx eax, byte [ecx]
inc ecx
sub eax, 0xa
mov dword [esi + 8], ecx
cmp eax, 0x7b
ja case.0x423266.14
movzx eax, byte [eax + 0x42a3a4]
jmp dword [eax*4 + 0x42a394]
cmp ecx, dword [ebp + 0x78]
jae case.0x423266.10
cmp byte [ecx], 0xa
jne case.0x423266.10
lea eax, [ecx + 1]
mov dword [esi + 8], eax
jmp case.0x423266.10
cmp dword [ebp + 0x68], ebx
jne case.0x423266.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x423240
jmp 0x42353b
mov edx, 1
cmp ecx, edx
jl 0x42353b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42162d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je case.0x423266.14
cmp ecx, 0x20
je case.0x423266.14
cmp ecx, 0xa0
je case.0x423266.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x4232a3
jmp 0x42353b
mov edx, 1
cmp ecx, edx
jl 0x42353b
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42162d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je 0x423319
cmp ecx, 0x20
je 0x423319
cmp ecx, 0xa0
jne case.0x423266.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x4232f0
jmp 0x42353b
mov edx, 1
cmp ecx, edx
jl 0x42353b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42162d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl 0x423361
cmp ecx, 0xd
jle case.0x423266.14
cmp ecx, 0x85
je case.0x423266.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x423334
jmp 0x42353b
mov edx, 1
cmp ecx, edx
jl 0x42353b
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42162d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl case.0x423266.14
cmp ecx, 0xd
jle 0x4233ad
cmp ecx, 0x85
jne case.0x423266.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x423380
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x423542
jmp 0x4233d0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x42162d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x423266.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4233d0
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x423542
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x42162d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x423266.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x423410
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x423542
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x42162d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x423266.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x423450
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x423542
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x42162d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x423266.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x423490
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x423542
jmp 0x4234d0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x42162d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x423266.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4234d0
jmp 0x42353b
mov edi, 1
cmp ecx, edi
jl 0x423542
jmp 0x423510
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x42162d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x423266.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x423510
mov edx, dword [esp + 0x8c]
mov ecx, dword [esi + 0x90]
cmp ecx, dword [esi + 0x8c]
je 0x41c2da
cmp dword [esp + 0x84], 0
je 0x4235a2
mov eax, dword [esi + 0x60]
test eax, eax
js 0x423585
cmp eax, 0xa
ja case.0x425687.9
jmp dword [eax*4 + 0x42a420]
mov esi, dword [esi]
test esi, esi
je case.default.0x425b54
mov edi, 0xfffffff2
jmp 0x425b40
cmp dword [esi + 0x7c], 0x16
je 0x429773
test edx, edx
jne 0x42975e
mov dword [esi + 0x84], ecx
jmp 0x4269d5
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x60]
test eax, eax
js 0x4245db
cmp eax, 0xa
ja case.0x425687.9
jmp dword [eax*4 + 0x42a44c]
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4245c8
mov ebx, dword [esp + 0x8c]
jmp 0x4235e0
mov edx, dword [esi + 8]
mov eax, 1
cmp edx, dword [ebp + 0x78]
jae 0x42364b
movzx ecx, byte [edx]
test ebx, ebx
je 0x42362e
cmp ecx, 0xc0
jb 0x42362e
test cl, 0x20
jne 0x423608
mov eax, 2
jmp 0x42362e
test cl, 0x10
jne 0x423614
mov eax, 3
jmp 0x42362e
test cl, 8
jne 0x423620
mov eax, 4
jmp 0x42362e
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esi + 0x68], 0
jne 0x4245c8
add eax, edx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4235e0
jmp 0x4245c8
cmp dword [ebp + 0x88], 0
je 0x4245c8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4245c8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4245c8
mov esi, dword [esi]
test esi, esi
je 0x429f7c
mov edi, 0xfffffff4
mov edx, ebx
jmp 0x425b40
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4245c8
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x42380e
movzx ebx, byte [edi]
test edx, edx
je 0x42378c
cmp ebx, 0xc0
jb 0x42378c
test bl, 0x20
jne 0x4236ee
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x423784
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x42370d
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x423784
and eax, 0x3f
test bl, 8
jne 0x42372d
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x423784
test bl, 4
jne 0x423756
and ebx, 3
shl ebx, 6
or ebx, ecx
mov ecx, 5
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x423784
and ebx, 1
shl ebx, 6
or ebx, ecx
mov ecx, 6
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x4237ae
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
cmp eax, 9
je 0x4237d3
cmp eax, 5
je 0x4237d3
cmp eax, 8
je 0x4237d3
xor eax, eax
jmp 0x4237d8
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4245c8
mov edx, dword [esp + 0x8c]
lea eax, [ecx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x4236b0
jmp 0x4245c8
cmp dword [ebp + 0x88], 0
je 0x4245c8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4245c8
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x4245c8
mov esi, dword [esi]
test esi, esi
je 0x429f7c
mov edi, 0xfffffff4
jmp 0x425b40
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4245c8
jmp 0x423870
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4239f2
movzx ebx, byte [edi]
test edx, edx
je 0x423973
cmp ebx, 0xc0
jb 0x423973
test bl, 0x20
jne 0x4238ba
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x42396b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4238e2
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x42396b
and eax, 0x3f
test bl, 8
jne 0x423908
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x42396b
test bl, 4
jne 0x423937
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x42396b
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x423995
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4245c8
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x423870
jmp 0x4245c8
cmp dword [ebp + 0x88], 0
je 0x4245c8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4245c8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jmp 0x423833
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4245c8
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4239f2
movzx ebx, byte [edi]
test edx, edx
je 0x423b3f
cmp ebx, 0xc0
jb 0x423b3f
test bl, 0x20
jne 0x423a86
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x423b37
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x423aae
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x423b37
and eax, 0x3f
test bl, 8
jne 0x423ad4
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x423b37
test bl, 4
jne 0x423b03
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x423b37
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x423b61
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4245c8
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x423a40
jmp 0x4245c8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4245c8
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4239f2
movzx ebx, byte [edi]
test edx, edx
je 0x423cd3
cmp ebx, 0xc0
jb 0x423cd3
test bl, 0x20
jne 0x423c1a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x423ccb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x423c42
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x423ccb
and eax, 0x3f
test bl, 8
jne 0x423c68
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x423ccb
test bl, 4
jne 0x423c97
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x423ccb
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x423cf5
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4245c8
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x423bd0
jmp 0x4245c8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4245c8
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x42380e
movzx ebx, byte [edi]
test edx, edx
je 0x423e43
cmp ebx, 0xc0
jb 0x423e43
test bl, 0x20
jne 0x423da2
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x423e3b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x423dc4
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x423e3b
and eax, 0x3f
test bl, 8
jne 0x423de4
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x423e3b
test bl, 4
jne 0x423e0d
and ebx, 3
shl ebx, 6
or ebx, ecx
mov ecx, 5
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x423e3b
and ebx, 1
shl ebx, 6
or ebx, ecx
mov ecx, 6
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x423e65
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, 1
je 0x423e8c
cmp eax, 3
je 0x423e8c
xor eax, eax
jmp 0x423e91
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4245c8
mov edx, dword [esp + 0x8c]
lea eax, [ecx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x423d64
jmp 0x4245c8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4245c8
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4239f2
movzx ebx, byte [edi]
test edx, edx
je 0x423fed
cmp ebx, 0xc0
jb 0x423fed
test bl, 0x20
jne 0x423f32
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x423fed
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x423f5a
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x423fe3
and eax, 0x3f
test bl, 8
jne 0x423f80
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x423fe3
test bl, 4
jne 0x423faf
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
jmp 0x423fe3
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov ebx, ecx
cmp ebx, 0x180e
ja 0x424030
je case.0x424050.8192
cmp ebx, 0x85
ja 0x42401c
je case.0x424050.8192
cmp ebx, 9
jb case.0x424050.8203
cmp ebx, 0xd
jbe case.0x424050.8192
cmp ebx, 0x20
jmp 0x424065
cmp ebx, 0xa0
je case.0x424050.8192
cmp ebx, 0x1680
jmp 0x424065
cmp ebx, 0x202f
ja 0x424057
je case.0x424050.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x424050.8203
movzx eax, byte [eax + 0x42a480]
jmp dword [eax*4 + 0x42a478]
cmp ebx, 0x205f
je case.0x424050.8192
cmp ebx, 0x3000
je case.0x424050.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x424089
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
cmp dword [eax*4 + 0x4430b0], 6
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4245c8
mov edx, dword [esp + 0x8c]
jmp 0x4240c4
cmp dword [esi + 0x68], 0
jne 0x4245c8
mov eax, dword [esp + 0x84]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x423ee0
jmp 0x4245c8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4245c8
lea esp, [esp]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4239f2
movzx ebx, byte [edi]
test edx, edx
je 0x424213
cmp ebx, 0xc0
jb 0x424213
test bl, 0x20
jne 0x42415a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x42420b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x424182
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x42420b
and eax, 0x3f
test bl, 8
jne 0x4241a8
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x42420b
test bl, 4
jne 0x4241d7
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x42420b
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x444920]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x424236
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, 1
je 0x424262
cmp eax, 3
je 0x424262
cmp ebx, 0x5f
je 0x424262
xor eax, eax
jmp 0x424267
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4245c8
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x424110
jmp 0x4245c8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4245c8
lea esp, [esp]
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4243ff
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x4243a1
cmp edx, 0xc0
jb 0x4243a1
test dl, 0x20
jne 0x424304
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x424399
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x424323
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x424399
and eax, 0x3f
test dl, 8
jne 0x424343
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x424399
test dl, 4
jne 0x42436c
and edx, 3
mov ebx, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x424399
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [esi + 0x64]
mov ecx, dword [eax*4 + 0x443160]
lea eax, [eax*4 + 0x443160]
cmp edx, ecx
jb 0x4243c3
lea eax, [eax + 4]
cmp edx, ecx
je 0x4243f3
mov ecx, dword [eax]
cmp edx, ecx
jae 0x4243b6
cmp dword [esi + 0x68], 0
je 0x4245c8
lea eax, [ebx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x4242c0
jmp 0x4245c8
cmp dword [esi + 0x68], 0
jne 0x4245c8
jmp 0x4243cd
cmp dword [ebp + 0x88], 0
je 0x4245c8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4245c8
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jle 0x4245c8
jmp 0x41d246
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4245c8
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x4245a0
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x424557
cmp edx, 0xc0
jb 0x424557
test dl, 0x20
jne 0x42448d
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x424557
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4244b7
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, 3
jmp 0x424557
test dl, 8
jne 0x4244e3
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 4
jmp 0x424557
test dl, 4
jne 0x42451b
movzx eax, byte [edi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 5
jmp 0x424557
and edx, eax
movzx eax, byte [edi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 6
cmp edx, 0x24
je 0x424582
cmp edx, 0x40
je 0x424582
cmp edx, 0x60
je 0x424582
cmp edx, 0xa0
jb 0x424576
cmp edx, 0xd7ff
jbe 0x424582
cmp edx, 0xe000
jae 0x424582
xor ecx, ecx
jmp 0x424587
mov ecx, 1
cmp ecx, dword [esi + 0x68]
je 0x4245c8
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x424441
jmp 0x4245c8
cmp dword [ebp + 0x88], 0
je 0x4245c8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4245c8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
cmp dword [esp + 0x80], 0
je 0x428a7c
jmp 0x41c2da
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x424977
mov edi, dword [esi + 0x90]
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jge 0x424928
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x424900
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x424700
cmp ebx, 0xc0
jb 0x424700
test bl, 0x20
jne 0x424649
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4246fd
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x424670
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x4246f6
test bl, 8
jne 0x424693
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x4246f6
test bl, 4
jne 0x4246c2
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x4246f6
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x424722
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a2]
mov dword [esp + 0x84], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4248bd
jmp 0x424750
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x42484e
cmp ebx, 0xc0
jb 0x42484e
test bl, 0x20
jne 0x424785
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x424846
test bl, 0x10
jne 0x4247aa
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x424846
test bl, 8
jne 0x4247d8
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x424846
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x424812
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x424846
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x424870
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x84]
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx ecx, byte [eax*8 + 0x4432a2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x443128], eax
je 0x4248b6
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x8c]
cmp eax, dword [ebp + 0x78]
jb 0x424750
mov edi, dword [esp + 0x90]
cmp dword [ebp + 0x88], 0
je 0x4248ea
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4248ea
cmp eax, dword [ebp + 0x84]
jbe 0x4248ea
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
inc edi
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jl 0x424600
jmp 0x424928
cmp dword [ebp + 0x88], 0
je 0x424928
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x424928
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
cmp dword [esp + 0x80], 0
jne 0x41c2da
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41c260
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429ea5
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429e9b
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
add eax, 0xfffffffa
test edx, edx
je 0x42567e
cmp eax, 0xf
ja case.0x425687.9
jmp dword [eax*4 + 0x42a4ac]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42566b
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x424a66
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4249d9
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0042c430
add esp, 0x14
test eax, eax
jne 0x42566b
jmp 0x4249fd
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4249fd
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4249fd
cmp edx, 1
je 0x42566b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x42566b
cmp dword [ebp + 0x88], 0
je 0x424a38
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x424a38
cmp dword [ebp + 0x18], 0
jne 0x424a38
cmp dword [edi], 2
jne 0x424a38
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x424a38
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x424a54
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x424a54
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x424a43
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x4249a4
jmp 0x42566b
cmp dword [ebp + 0x88], 0
je 0x42566b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x42566b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42566b
jmp 0x41d246
mov eax, dword [esi + 0x8c]
cmp eax, 0x7fffffff
jge 0x424af8
mov edi, dword [esi + 0x90]
cmp edi, eax
jge 0x42566b
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x424a66
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x424aea
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x424aea
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x424ad2
inc edi
cmp edi, dword [esi + 0x8c]
jl 0x424ac0
jmp 0x42566b
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x42566b
cmp eax, dword [ebp + 0x84]
jbe 0x42566b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42566b
jmp 0x423839
mov edx, dword [ebp + 0x78]
mov eax, edx
mov ecx, dword [esi + 0x8c]
mov edi, dword [esi + 8]
sub eax, edi
sub ecx, dword [esi + 0x90]
cmp ecx, eax
jbe 0x424b7f
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x42566b
cmp edx, dword [ebp + 0x84]
jbe 0x42566b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42566b
jmp 0x41d246
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x42566b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42566b
lea esp, [esp]
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x424a66
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x424caa
test dl, 0x20
jne 0x424bde
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x424caa
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x424c08
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x424ca8
test dl, 8
jne 0x424c34
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x424ca8
test dl, 4
jne 0x424c6c
movzx eax, byte [edi + 2]
and edx, 3
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 5
jmp 0x424ca8
and edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 6
mov edx, ecx
cmp edx, 0xd
jne 0x424cc6
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x42566b
cmp byte [eax], 0xa
jne 0x424d00
inc eax
jmp 0x424cfd
cmp edx, 0xa
je 0x424cfb
cmp dword [ebp + 0x68], 0
jne 0x42566b
cmp edx, 0xb
je 0x424cfb
cmp edx, 0xc
je 0x424cfb
cmp edx, 0x85
je 0x424cfb
cmp edx, 0x2028
je 0x424cfb
cmp edx, 0x2029
jne 0x42566b
add eax, edi
mov dword [esi + 8], eax
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x424ba0
jmp 0x42566b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42566b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x424e7a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x424df8
test dl, 0x20
jne 0x424d5a
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x424df0
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x424d79
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x424df0
and eax, 0x3f
test dl, 8
jne 0x424d99
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x424df0
test dl, 4
jne 0x424dc2
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x424df0
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x180e
ja 0x424e1e
je 0x424e4c
cmp edx, 0xa0
ja 0x424e16
je 0x424e4c
cmp edx, 9
je 0x424e4c
cmp edx, 0x20
jmp 0x424e46
cmp edx, 0x1680
jmp 0x424e46
cmp edx, 0x205f
ja 0x424e40
je 0x424e4c
cmp edx, 0x2000
jb 0x424e48
cmp edx, 0x200a
jbe 0x424e4c
cmp edx, 0x202f
jmp 0x424e46
cmp edx, 0x3000
je 0x424e4c
xor edx, edx
jmp 0x424e51
mov edx, 1
xor eax, eax
cmp dword [esi + 0x7c], 0x12
sete al
cmp edx, eax
je 0x42566b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x424d24
jmp 0x42566b
cmp dword [ebp + 0x88], 0
je 0x42566b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x42566b
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x42566b
jmp 0x41d246
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42566b
lea esp, [esp]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x424e7a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x424f90
test dl, 0x20
jne 0x424ef2
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x424f88
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x424f11
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x424f88
and eax, 0x3f
test dl, 8
jne 0x424f31
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x424f88
test dl, 4
jne 0x424f5a
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x424f88
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x85
ja 0x424fcf
je 0x424fda
cmp edx, 0xa
jb 0x424fa4
cmp edx, 0xd
jbe 0x424fda
xor edx, edx
xor eax, eax
cmp dword [esi + 0x7c], 0x14
sete al
cmp edx, eax
je 0x42566b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x424ec0
jmp 0x42566b
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x424fa4
mov edx, 1
jmp 0x424fa6
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42566b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x424e7a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4250c7
test dl, 0x20
jne 0x425029
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4250bf
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x425048
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4250bf
and eax, 0x3f
test dl, 8
jne 0x425068
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4250bf
test dl, 4
jne 0x425091
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x4250bf
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x4250dc
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne 0x42566b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x424ff3
jmp 0x42566b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42566b
jmp 0x425110
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x424e7a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4251e4
test dl, 0x20
jne 0x425146
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4251dc
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x425165
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4251dc
and eax, 0x3f
test dl, 8
jne 0x425185
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4251dc
test dl, 4
jne 0x4251ae
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x4251dc
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x42566b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je 0x42566b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x425110
jmp 0x42566b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42566b
jmp 0x425230
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x424e7a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x425304
test dl, 0x20
jne 0x425266
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4252fc
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x425285
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4252fc
and eax, 0x3f
test dl, 8
jne 0x4252a5
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4252fc
test dl, 4
jne 0x4252ce
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x4252fc
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x425319
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne 0x42566b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x425230
jmp 0x42566b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42566b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x424e7a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x425417
test dl, 0x20
jne 0x425379
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42540f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x425398
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42540f
and eax, 0x3f
test dl, 8
jne 0x4253b8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42540f
test dl, 4
jne 0x4253e1
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x42540f
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x42566b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je 0x42566b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x425343
jmp 0x42566b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42566b
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x424e7a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x425534
test dl, 0x20
jne 0x425496
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42552c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4254b5
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42552c
and eax, 0x3f
test dl, 8
jne 0x4254d5
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42552c
test dl, 4
jne 0x4254fe
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x42552c
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x425549
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne 0x42566b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x425460
jmp 0x42566b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42566b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x424e7a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x425647
test dl, 0x20
jne 0x4255a9
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42563f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4255c8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42563f
and eax, 0x3f
test dl, 8
jne 0x4255e8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42563f
test dl, 4
jne 0x425611
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x42563f
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x42566b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je 0x42566b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x425573
cmp dword [esp + 0x80], 0
je 0x427f38
jmp 0x41c2da
cmp eax, 0xf
ja case.0x425687.9
jmp dword [eax*4 + 0x42a4ec]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x425b17
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x425744
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4256d0
push 0
push edi
push eax
push edx
push ecx
call fcn.0042c430
add esp, 0x14
test eax, eax
jne 0x425b17
jmp 0x4256f4
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4256f4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4256f4
cmp edx, 1
je 0x425b17
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x425b17
cmp dword [ebp + 0x88], 0
je 0x42572f
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x42572f
cmp dword [ebp + 0x18], 0
jne 0x42572f
cmp dword [edi], 2
jne 0x42572f
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x42572f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x4256a0
jmp 0x425b17
cmp dword [ebp + 0x88], 0
je 0x425b17
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x425b17
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x425b17
jmp 0x41d246
mov edx, dword [ebp + 0x78]
mov eax, edx
mov ecx, dword [esi + 0x8c]
mov edi, dword [esi + 8]
sub eax, edi
sub ecx, dword [esi + 0x90]
cmp ecx, eax
jbe 0x4257c8
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x425b17
cmp edx, dword [ebp + 0x84]
jbe 0x425b17
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x425b17
jmp 0x41d246
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x425b17
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x425b17
jmp 0x4257f0
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x425744
movzx eax, byte [ecx]
cmp eax, 0xd
jne 0x42581b
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x425b17
cmp byte [eax], 0xa
jne 0x425845
inc eax
jmp 0x425842
cmp eax, 0xa
je 0x42583f
cmp dword [ebp + 0x68], 0
jne 0x425b17
cmp eax, 0xb
je 0x42583f
cmp eax, 0xc
je 0x42583f
cmp eax, 0x85
jne 0x425b17
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x8c]
jl 0x4257f0
jmp 0x425b17
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x425b17
jmp 0x425870
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x425744
mov al, byte [ecx]
cmp al, 9
je 0x425b17
cmp al, 0x20
je 0x425b17
cmp al, 0xa0
je 0x425b17
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x425870
jmp 0x425b17
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x425b17
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x425744
mov al, byte [ecx]
cmp al, 9
je 0x4258de
cmp al, 0x20
je 0x4258de
cmp al, 0xa0
jne 0x425b17
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4258c0
jmp 0x425b17
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x425b17
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x425744
mov al, byte [ecx]
cmp al, 0xa
jb 0x425926
cmp al, 0xd
jbe 0x425b17
cmp al, 0x85
je 0x425b17
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x425904
jmp 0x425b17
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x425b17
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x425744
mov al, byte [ecx]
cmp al, 0xa
jb 0x425b17
cmp al, 0xd
jbe 0x425972
cmp al, 0x85
jne 0x425b17
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x425950
jmp 0x425b17
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x425b17
jmp 0x4259a0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x425744
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne 0x425b17
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4259a0
jmp 0x425b17
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x425b17
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x425744
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je 0x425b17
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4259e2
jmp 0x425b17
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x425b17
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x425744
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne 0x425b17
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x425a24
jmp 0x425b17
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x425b17
jmp 0x425a70
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x425744
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je 0x425b17
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x425a70
jmp 0x425b17
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x425b17
jmp 0x425ab0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x425744
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne 0x425b17
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x425ab0
jmp 0x425b17
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x425b17
jmp 0x425af0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x425744
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je 0x425b17
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x425af0
cmp dword [esp + 0x80], 0
je 0x426b7a
jmp 0x41c2da
mov esi, dword [esi]
test esi, esi
je 0x429ff1
mov edi, 0xfffffffb
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x7c]
mov eax, dword [esi + 0x130]
dec eax
cmp eax, 0x42
ja case.default.0x425b54
jmp dword [eax*4 + 0x42a52c]
cmp edi, 0xfffffc1b
je 0x425c26
cmp edi, 0xfffffc20
jne 0x425ba3
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x425b54.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x425b9f
cmp byte [ecx], 0x77
jne case.0x425b54.49
xor edi, edi
jmp 0x425bab
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x425c26
cmp dword [esi + 0x9c], 0x88
jb 0x425bf1
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x42997a
push 0x134
call dword [0x459418]
mov edx, eax
add esp, 4
test edx, edx
jne 0x429970
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa4]
mov dword [ecx + edx*4], eax
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa8]
mov dword [ecx + edx*4 + 4], eax
mov edx, dword [ebp + 0x10]
sub edx, dword [esi + 0x94]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xac]
mov dword [ecx + edx*4], eax
mov esi, dword [esi]
test esi, esi
je 0x42601c
mov edx, dword [esp + 0x8c]
jmp 0x425b44
cmp edi, 0xfffffc20
jne 0x425ce3
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae 0x425d31
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x425cae
cmp byte [ecx], 0x77
jne 0x425d31
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x425d47
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b44
test edi, edi
je 0x425cae
cmp edi, 0xfffffc1b
jne 0x425d31
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x81
je 0x425d23
cmp al, 0x77
jne 0x425d14
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 0x425d00
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov eax, dword [ebp + 0xb4]
sub eax, edx
neg eax
sbb eax, eax
and edi, eax
mov esi, dword [esi]
test esi, esi
je 0x42601c
mov edx, dword [esp + 0x8c]
jmp 0x425b44
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0x9c]
cmp eax, 0x88
jae 0x425d99
cmp eax, 0x81
je 0x425d99
cmp dword [ebp + 0x6c], 0
jne 0x425da3
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x77
je 0x425da3
mov ecx, edx
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x442f98]
add eax, ecx
mov dword [esi + 0xc], eax
jmp 0x41c260
mov dword [ebp + 0x98], 2
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov edx, dword [esi + 4]
test edx, edx
jne 0x42999c
push 0x134
call dword [0x459418]
mov edx, eax
add esp, 4
test edx, edx
jne 0x429992
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
cmp edi, 1
jne 0x425e63
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x14]
jle 0x425e00
mov dword [esi + 0x14], eax
mov dword [esi + 0x58], 1
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x92
jne 0x425e13
inc eax
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x425e49
mov edx, eax
movzx ecx, byte [eax + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, eax
mov dword [esi + 0xc], edx
cmp byte [eax], 0x77
je 0x425e30
mov edx, dword [esp + 0x88]
mov ecx, 3
movzx eax, byte [edx + 0x442f98]
sub ecx, eax
add dword [esi + 0xc], ecx
jmp case.0x41c70e.145
test edi, edi
je 0x425e73
cmp edi, 0xfffffc20
jne case.0x425b54.49
mov edx, dword [esp + 0x88]
cmp dword [esi + 0x58], 0
je 0x425e89
movzx eax, byte [edx + 0x442f98]
jmp 0x425e8c
mov eax, dword [esi + 0x78]
add dword [esi + 0xc], eax
cmp dword [esi + 0x58], 0
mov eax, dword [esi + 0xc]
jne 0x425ea9
cmp byte [eax - 3], 0x77
mov edi, dword [esp + 0x8c]
jne 0x41c2e1
cmp dword [esi + 0x9c], 0x8c
jne 0x41c260
mov dword [ebp + 0x98], 2
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4299be
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4299b4
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
cmp edi, 1
je 0x425fa2
cmp edi, 0xfffffc19
je 0x425fa2
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jne 0x425f4a
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x425b54.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x425f52
cmp byte [ecx], 0x77
jmp 0x425f4c
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x425fa8
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4299d7
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4299cd
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x78
jne 0x425fc1
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b44
cmp dword [esi + 0x58], 0
je 0x4295fe
mov esi, dword [esi]
test esi, esi
je 0x429f96
mov edi, 1
jmp 0x425b44
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jg 0x42608d
je 0x426026
cmp edi, 0xfffffc19
je 0x4268c3
cmp edi, 0xfffffc1b
jle case.0x425b54.49
cmp edi, 0xfffffc1f
jle 0x42604e
mov esi, dword [esi]
test esi, esi
jne 0x425b44
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae 0x42604e
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x4260a0
cmp byte [ecx], 0x77
je 0x4260a0
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x426051
cmp dword [esi + 0x58], 0
je 0x4262d7
mov esi, dword [esi]
test esi, esi
je 0x429f96
mov edx, dword [esp + 0x8c]
mov edi, 1
jmp 0x425b44
mov eax, edi
sub eax, 0
je 0x4260a0
dec eax
je 0x4268c3
jmp case.0x425b54.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov edx, dword [esi + 0xc]
cmp byte [edx], 0x77
jne 0x426068
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4299ed
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4299e3
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [esi + 0x44]
push dword [ebp + 0xc]
call sub.MSVCRT.dll_memcpy
mov eax, dword [esi + 0x4c]
lea ebx, [esi + 0x3c]
mov dword [ebp + 0x90], eax
add esp, 0xc
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
cmp edi, 1
je 0x42962c
cmp edi, 0xfffffc19
je 0x42962c
lea eax, [edi + 0x3e4]
cmp eax, 4
ja 0x426159
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x41d0db
push ecx
call dword [0x459414]
add esp, 4
jmp 0x41d0db
test edi, edi
je 0x426183
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x426174
push ecx
call dword [0x459414]
add esp, 4
mov esi, dword [esi]
test esi, esi
je 0x42601c
jmp 0x425b39
mov dword [ebp + 0xa4], ebx
mov edx, dword [esi + 0x20]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
lea eax, [ecx + edx]
mov dword [esi + 0x20], eax
cmp byte [eax], 0x77
jne 0x4261e9
cmp dword [esi + 0x58], 0
je 0x4261b4
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x429a33
push 0x134
call dword [0x459418]
mov edx, eax
add esp, 4
test edx, edx
jne 0x429a29
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
jmp 0x426139
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x34]
mov al, byte [eax]
cmp al, 0x81
jne 0x426243
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429a81
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429a77
mov esi, dword [esi]
test esi, esi
je 0x429f4b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x425b44
cmp al, 0x88
jb 0x429784
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429aa3
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429a99
mov esi, dword [esi]
test esi, esi
je 0x429f4b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x425b44
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x34]
mov dword [ebp + 0xb4], eax
mov esi, dword [esi]
test esi, esi
je 0x429fa3
mov edi, 0xfffffc1b
jmp 0x425b44
test edi, edi
jne case.0x425b54.49
mov edx, dword [esi + 0x2c]
jmp 0x4262c0
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x2c], edx
cmp byte [edx], 0x77
je 0x4262c0
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x41c2da
test edi, edi
je 0x41db54
jmp case.0x425b54.49
test edi, edi
je 0x42628f
jmp case.0x425b54.49
cmp edi, 0xfffffc1b
jne 0x42630b
mov eax, dword [ebp + 0xb4]
cmp eax, dword [esi + 0x34]
jmp 0x42630d
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x4270fb
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429ac5
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429abb
mov esi, dword [esi]
test esi, esi
je 0x429f4b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x425b44
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426380
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
push ebx
push ebp
push dword [esi + 0x88]
push edi
push dword [esi + 0x98]
call fcn.0042a780
add esp, 0x14
test eax, eax
jns 0x4263e7
cmp eax, 0xfffffffe
jne 0x4263a9
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x427ec1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x427ec1
cmp eax, dword [ebp + 0x84]
jbe 0x427ec1
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41f0fe
jmp 0x427ec1
add eax, edi
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429aea
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429ae0
mov esi, dword [esi]
test esi, esi
je 0x429f4b
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffffa
jmp 0x425b44
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x88]
sub dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb case.0x423266.14
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429b03
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429af9
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4264a7
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x427fa6
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
mov edi, ecx
mov edx, dword [esi + 0x28]
and ecx, 7
shr edi, 3
mov eax, 1
shl eax, cl
test byte [edi + edx], al
je 0x427ec1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429b1c
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429b12
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb 0x41d0db
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429b35
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429b2b
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426581
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x427fa6
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x4265b1
cmp dword [esi + 0x94], ecx
je 0x4265b1
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b44
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429b4e
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429b44
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
dec dword [esi + 8]
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41c260
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429b67
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429b5d
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426661
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x427fa6
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne 0x427ec1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429b80
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429b76
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
dec dword [esi + 8]
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41c260
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429b99
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429b8f
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42672e
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x427fa6
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x4268c3
cmp dword [esi + 0x94], ecx
je 0x4268c3
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429bb2
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429ba8
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41c260
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429bcb
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429bc1
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426805
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x427fa6
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je 0x427ec1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429be1
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429bd7
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41c260
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429bf7
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429bed
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4268d4
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b44
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x42691b
cmp dword [ebp + 0x88], 0
je 0x426903
cmp ecx, dword [ebp + 0x84]
jbe 0x426903
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41f0fe
mov esi, dword [esi]
test esi, esi
je 0x429f58
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x425b44
cmp dword [esi + 0x7c], 0xc
jne 0x426942
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x426964
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0042c430
add esp, 0x14
test eax, eax
jne 0x426981
mov eax, dword [esi + 8]
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov eax, dword [esi + 0x7c]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x42695d.15
jmp dword [eax*4 + 0x42a638]
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x426942
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x426942
cmp edi, 1
je 0x426981
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x426942
mov esi, dword [esi]
test esi, esi
je 0x429f58
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x425b44
cmp dword [ebp + 0x88], 0
je case.0x42695d.13
cmp edx, dword [ebp + 0x78]
jb case.0x42695d.13
cmp dword [ebp + 0x18], 0
jne case.0x42695d.13
cmp dword [ebp + 0x1c], 2
jne case.0x42695d.13
movzx eax, byte [ebp + 0x34]
cmp ecx, eax
jne case.0x42695d.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41f0fe
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429c0d
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429c03
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x426a1d.14
movzx eax, byte [ecx + 0x42a688]
jmp dword [eax*4 + 0x42a678]
cmp edx, dword [ebp + 0x78]
jae case.0x42695d.13
cmp byte [edx], 0xa
jne case.0x42695d.13
lea eax, [edx + 1]
mov dword [esi + 8], eax
jmp case.0x42695d.13
cmp dword [ebp + 0x68], 0
je case.0x42695d.13
jmp case.0x426a1d.14
cmp ecx, 9
je case.0x426a1d.14
cmp ecx, 0x20
je case.0x426a1d.14
cmp ecx, 0xa0
jmp 0x426b1a
cmp ecx, 9
je case.0x42695d.13
cmp ecx, 0x20
je case.0x42695d.13
cmp ecx, 0xa0
je case.0x42695d.13
jmp case.0x426a1d.14
cmp ecx, 0xa
jb case.0x42695d.13
cmp ecx, 0xd
jbe case.0x426a1d.14
cmp ecx, 0x85
jmp 0x426b1a
cmp ecx, 0xa
jb case.0x426a1d.14
cmp ecx, 0xd
jbe case.0x42695d.13
cmp ecx, 0x85
je case.0x42695d.13
jmp case.0x426a1d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x42695d.13
jmp case.0x426a1d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jmp 0x426b1a
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x42695d.13
jmp case.0x426a1d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jmp 0x426b1a
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x42695d.13
mov esi, dword [esi]
test esi, esi
je 0x429f58
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x425b44
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x42695d.13
mov esi, dword [esi]
test esi, esi
je 0x429f58
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x425b44
mov esi, dword [esi]
test esi, esi
je case.default.0x425b54
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x425b44
test edi, edi
jne case.0x425b54.49
dec dword [esi + 8]
cmp dword [esi + 0x7c], 0x11
mov eax, dword [esi + 8]
jne 0x426b7a
cmp eax, dword [esi + 0x30]
jbe 0x426b7a
cmp byte [eax], 0xa
jne 0x426b7a
cmp byte [eax - 1], 0xd
jne 0x426b7a
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41c260
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429c23
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429c19
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
cmp edi, 0xfffffc1a
jne 0x426c11
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x78]
add eax, dword [ebp + 0x70]
mov dword [esi + 0xc], eax
mov dword [esi + 0x5c], 1
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [ebp + 0x80]
cmp dword [esi + 8], eax
jne 0x426c09
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x426bf0
jmp 0x426c68
mov dword [esi + 8], eax
jmp 0x426c8d
cmp edi, 0xfffffc20
jne 0x426c45
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x425b54.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x426c4d
cmp byte [ecx], 0x77
jmp 0x426c47
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov edx, dword [esi + 0xc]
cmp byte [edx], 0x77
je 0x426c81
cmp dword [esi + 0x5c], 0
jne 0x4262d7
cmp dword [esi + 0x54], 0
jne 0x4262d7
jmp 0x427ec1
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
cmp dword [esi + 0x9c], 0x88
jb 0x426ca3
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x429c65
push 0x134
call dword [0x459418]
mov edx, eax
add esp, 4
test edx, edx
jne 0x429c5b
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
mov esi, dword [esi]
test edi, edi
jne 0x426014
test esi, esi
je 0x429fbd
mov edi, 0xfffffc1c
jmp 0x425b44
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x429fd7
mov edi, 0xfffffc1e
jmp 0x425b44
cmp edi, 1
je 0x426d23
cmp edi, 0xfffffc19
jne 0x426d3d
cmp dword [ebp + 0xac], 0
jne 0x426d3d
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
jmp 0x425d31
cmp edi, 0xfffffc1f
jne 0x425d31
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x426d72
test dl, dl
je 0x426d6e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x426d72
add eax, 2
add ecx, 2
test dl, dl
jne 0x426d52
xor eax, eax
jmp 0x426d77
sbb eax, eax
or eax, 1
test eax, eax
jne 0x425d31
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x429fd7
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffc1e
jmp 0x425b44
cmp edi, 1
je 0x426dad
cmp edi, 0xfffffc19
jne case.0x425b54.51
cmp dword [ebp + 0xac], 0
jne case.0x425b54.51
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
mov esi, dword [esi]
test edi, edi
jne 0x426014
test esi, esi
je 0x429fb0
mov edi, 0xfffffc1d
jmp 0x425b44
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x429fe4
mov edi, 0xfffffc1f
jmp 0x425b44
cmp edi, 1
je 0x426e10
cmp edi, 0xfffffc19
jne case.0x425b54.54
cmp dword [ebp + 0xac], 0
jne case.0x425b54.54
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0xc]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x429fca
mov edi, 0xfffffc20
jmp 0x425b44
cmp edi, 0xfffffc1a
jne 0x426eb1
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x78]
add eax, dword [ebp + 0x70]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov dword [esi + 0x5c], 1
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [ebp + 0x80]
cmp dword [esi + 8], eax
jne 0x426ea9
mov edx, dword [esi + 0xc]
jmp 0x426e90
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x426e90
jmp 0x426f18
mov dword [esi + 8], eax
jmp 0x41ce12
cmp edi, 0xfffffc20
jne 0x426ee5
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x425b54.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x426eed
cmp byte [ecx], 0x77
jmp 0x426ee7
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x41ce12
cmp dword [esi + 0x5c], 0
jne 0x426f58
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa4]
mov dword [ecx + edx*4], eax
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa8]
mov dword [ecx + edx*4 + 4], eax
mov edx, dword [ebp + 0x10]
sub edx, dword [esi + 0x94]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xac]
mov dword [ecx + edx*4], eax
cmp dword [esi + 0x54], 0
jne 0x41c2d6
cmp dword [esi + 0x5c], 0
jne 0x41c2d6
jmp 0x427ec1
cmp edi, 1
jne 0x427014
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x82
je 0x426f91
cmp al, 0x77
jne 0x427ec1
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x426f91
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov ecx, dword [ebp + 0x80]
mov dword [esi + 8], ecx
mov eax, dword [esi + 0xc]
mov al, byte [eax]
cmp al, 0x78
je 0x41c2d6
cmp ecx, dword [esi + 0x38]
je 0x41c2d6
mov ecx, dword [esi + 4]
cmp al, 0x7a
jne 0x4270ad
test ecx, ecx
jne 0x429cce
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429cc4
mov esi, dword [esi]
test esi, esi
je 0x429f4b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x425b44
cmp edi, 0xfffffc20
jne 0x427048
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x425b54.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x427050
cmp byte [ecx], 0x77
jmp 0x42704a
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x426f80
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429ca9
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429c9f
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test ecx, ecx
jne 0x429cf3
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429ce9
mov esi, dword [esi]
test esi, esi
je 0x429f4b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x425b44
test edi, edi
je 0x429784
jmp case.0x425b54.49
test edi, edi
jne case.0x425b54.49
add dword [esi + 0xc], 3
jmp 0x41c260
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x427129
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x428706
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42722a
cmp ebx, 0xc0
jb 0x42722a
test bl, 0x20
jne 0x42716b
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x427227
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x427195
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x42722a
mov edx, dword [esi + 8]
test bl, 8
jne 0x4271bb
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x42721e
test bl, 4
jne 0x4271ea
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x42721e
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
push edx
push dword [esi + 0x28]
push ebx
call fcn.0042bdc0
add esp, 0xc
test eax, eax
je 0x41d0db
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429d15
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429d0b
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x427ec1
cmp dword [esp + 0x8c], edi
je 0x4272b1
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x4272b1
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x4272a5
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429d2e
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429d24
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42730b
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x428706
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x427400
test bl, 0x20
jne 0x427345
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4273fd
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42736f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x427400
mov edx, dword [esi + 8]
test bl, 8
jne 0x427398
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x4273fb
test bl, 4
jne 0x4273c7
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x4273fb
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
jbe 0x427416
cmp dword [esi + 0x9c], 0x6e
jne 0x427433
jmp 0x41d0db
mov edx, dword [esi + 0x28]
mov edi, ebx
and ebx, 7
shr edi, 3
mov eax, 1
mov ecx, ebx
shl eax, cl
test byte [edi + edx], al
je 0x41d0db
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429d47
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429d3d
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x41d0db
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x42749c
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x427490
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429d60
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429d56
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4274f6
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov edi, dword [esi + 0x88]
sub eax, edi
mov ebx, dword [esi + 8]
cmp ebx, eax
ja 0x427565
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x427525
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42752a
add ecx, 4
add edx, 4
sub edi, 4
jae 0x427514
cmp edi, 0xfffffffc
je 0x427557
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x427562
cmp edi, 0xfffffffd
je 0x427557
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x427562
cmp edi, 0xfffffffe
je 0x427557
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x427562
cmp edi, 0xffffffff
je 0x427557
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x427562
mov eax, dword [esi + 0x88]
jmp 0x4275d0
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x427610
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x427610
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x427597
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42759c
add ecx, 4
add edx, 4
sub edi, 4
jae 0x427586
cmp edi, 0xfffffffc
je 0x4275cd
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x427610
cmp edi, 0xfffffffd
je 0x4275cd
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x427610
cmp edi, 0xfffffffe
je 0x4275cd
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x427610
cmp edi, 0xffffffff
je 0x4275cd
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x427610
mov eax, dword [esi + 0x6c]
add eax, ebx
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429d79
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429d6f
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
cmp dword [ebp + 0x88], 0
je case.0x423266.14
cmp ebx, dword [ebp + 0x78]
jb case.0x423266.14
cmp ebx, dword [ebp + 0x84]
jbe case.0x423266.14
jmp 0x41d232
test edi, edi
jne case.0x425b54.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42765c
lea ecx, [ecx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x427650
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41c260
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429d92
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429d88
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4276c2
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x428706
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4277c2
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x4276fc
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4277bf
test dl, 0x10
jne 0x42771e
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
add dword [esi + 8], 2
jmp 0x4277c2
mov ecx, dword [esi + 8]
test dl, 8
jne 0x42774e
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 3]
jmp 0x4277bf
test dl, 4
jne 0x427784
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 4]
jmp 0x4277bf
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], edx
je 0x426981
cmp dword [esi + 0x94], edx
je 0x426981
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427809
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x426415
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1c
jmp 0x429c2d
test edi, edi
jne case.0x425b54.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42783c
mov edi, edi
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x427830
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41c260
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429dab
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429da1
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4278a2
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x428706
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x427997
test bl, 0x20
jne 0x4278dc
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x427994
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x427906
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x427997
mov edx, dword [esi + 8]
test bl, 8
jne 0x42792f
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x427992
test bl, 4
jne 0x42795e
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x427992
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
cmp dword [esi + 0x80], ebx
je 0x41d0db
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429dc4
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429dba
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x427a00
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4279f4
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41c260
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429ddd
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429dd3
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x427a66
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x427aa2
cmp dword [ebp + 0x88], 0
je 0x427ec1
cmp ecx, dword [ebp + 0x84]
jbe 0x427ec1
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41f0fe
jmp 0x427ec1
cmp dword [esi + 0x7c], 0xc
jne 0x427af4
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x427acf
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0042c430
add esp, 0x14
test eax, eax
jne 0x427ec1
jmp 0x427af4
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x427af4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x427af4
cmp edi, 1
je 0x427ec1
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x427ec1
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x427bdc
test dl, 0x20
jne 0x427b27
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x427bd9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x427b4e
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x427bd7
test dl, 8
jne 0x427b74
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x427bd7
test dl, 4
jne 0x427ba3
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x427bd7
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
mov eax, dword [esi + 0x7c]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x427beb.15
jmp dword [eax*4 + 0x42a704]
cmp dword [ebp + 0x88], 0
je case.0x427beb.13
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x427beb.13
cmp dword [ebp + 0x18], 0
jne case.0x427beb.13
cmp dword [ebp + 0x1c], 2
jne case.0x427beb.13
movzx eax, byte [ebp + 0x34]
cmp edx, eax
jne case.0x427beb.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x427beb.13
jmp 0x41f0fe
cmp edx, 0xd
ja 0x427c6e
je 0x427c5b
cmp edx, 0xa
je case.0x427beb.13
jbe 0x427ec1
cmp edx, 0xc
jmp 0x427c88
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae case.0x427beb.13
cmp byte [eax], 0xa
jne case.0x427beb.13
inc eax
mov dword [esi + 8], eax
jmp case.0x427beb.13
cmp edx, 0x85
je 0x427c8e
cmp edx, 0x2027
jbe 0x427ec1
cmp edx, 0x2029
ja 0x427ec1
cmp dword [ebp + 0x68], 0
je case.0x427beb.13
jmp 0x427ec1
cmp edx, 0x180e
ja 0x427d0d
je 0x427ec1
cmp edx, 0xa0
ja 0x427d05
je 0x427ec1
cmp edx, 9
je 0x427ec1
cmp edx, 0x20
je 0x427ec1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427cf6
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x426415
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2a
jmp 0x429c2d
cmp edx, 0x1680
jmp 0x427cc1
cmp edx, 0x205f
ja 0x427d37
je 0x427ec1
cmp edx, 0x2000
jb case.0x427beb.13
cmp edx, 0x200a
jbe 0x427ec1
cmp edx, 0x202f
jmp 0x427cc1
cmp edx, 0x3000
jmp 0x427ebb
cmp edx, 0x180e
ja 0x427d74
je case.0x427beb.13
cmp edx, 0xa0
ja 0x427d6c
je case.0x427beb.13
cmp edx, 9
je case.0x427beb.13
cmp edx, 0x20
jmp 0x427da8
cmp edx, 0x1680
jmp 0x427da8
cmp edx, 0x205f
ja 0x427da2
je case.0x427beb.13
cmp edx, 0x2000
jb 0x427ec1
cmp edx, 0x200a
jbe case.0x427beb.13
cmp edx, 0x202f
jmp 0x427da8
cmp edx, 0x3000
je case.0x427beb.13
jmp 0x427ec1
cmp edx, 0x85
ja 0x427dd8
je 0x427ec1
cmp edx, 0xa
jb case.0x427beb.13
cmp edx, 0xd
jbe 0x427ec1
jmp case.0x427beb.13
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x427beb.13
jmp 0x427ec1
cmp edx, 0x85
ja 0x427e08
je case.0x427beb.13
cmp edx, 0xa
jb 0x427ec1
cmp edx, 0xd
jmp 0x427e11
lea eax, [edx - 0x2028]
cmp eax, 1
jbe case.0x427beb.13
jmp 0x427ec1
cmp edx, 0x100
jae case.0x427beb.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x427beb.13
jmp 0x427ec1
cmp edx, 0x100
jae 0x427ec1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jmp 0x427ebb
cmp edx, 0x100
jae case.0x427beb.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x427beb.13
jmp 0x427ec1
cmp edx, 0x100
jae 0x427ec1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jmp 0x427ebb
cmp edx, 0x100
jae case.0x427beb.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x427beb.13
mov esi, dword [esi]
test esi, esi
je 0x429f58
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x425b44
cmp edx, 0x100
jae 0x427ec1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x427beb.13
mov esi, dword [esi]
test esi, esi
je 0x429f58
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x425b44
mov esi, dword [esi]
test esi, esi
je case.default.0x425b54
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x425b44
test edi, edi
jne case.0x425b54.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x427f1c
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x427f10
cmp dword [esi + 0x7c], 0x11
jne 0x427f38
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x427f38
cmp byte [eax], 0xa
jne 0x427f38
dec eax
cmp byte [eax], 0xd
jne 0x427f38
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41c260
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429df6
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429dec
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x427f9e
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x427fbe
cmp dword [ebp + 0x88], 0
je 0x4268c3
cmp eax, dword [ebp + 0x84]
jmp 0x428719
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edx, edx
je 0x427ffd
cmp ecx, 0xc0
jb 0x427ffd
test cl, 0x20
jne 0x427fd9
inc eax
jmp 0x427ffa
test cl, 0x10
jne 0x427fe3
add eax, 2
jmp 0x427ffa
test cl, 8
jne 0x427fed
add eax, 3
jmp 0x427ffa
test cl, 4
jne 0x427ff7
add eax, 4
jmp 0x427ffa
add eax, 5
mov dword [esi + 8], eax
cmp dword [esi + 0x68], 0
je 0x428014
mov esi, dword [esi]
test esi, esi
je 0x429f58
xor edi, edi
jmp 0x425b44
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428043
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x426415
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x24
jmp 0x429c2d
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x428077
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x428706
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x428171
cmp ebx, 0xc0
jb 0x428171
test bl, 0x20
jne 0x4280b9
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42816e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4280e3
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x428171
mov edx, dword [esi + 8]
test bl, 8
jne 0x428109
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x42816c
test bl, 4
jne 0x428138
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x42816c
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x428193
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
cmp eax, 9
je 0x4281b8
cmp eax, 5
je 0x4281b8
cmp eax, 8
je 0x4281b8
xor eax, eax
jmp 0x4281bd
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41d0db
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429e0f
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429e05
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x428226
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x428706
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42831c
cmp ebx, 0xc0
jb 0x42831c
test bl, 0x20
jne 0x428268
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x428319
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x428290
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x42831c
mov edx, dword [esi + 8]
test bl, 8
jne 0x4282b6
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x428319
test bl, 4
jne 0x4282e5
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x428319
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x42833e
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41d0db
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429e28
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429e1e
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4283c8
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x428706
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x4284be
cmp ebx, 0xc0
jb 0x4284be
test bl, 0x20
jne 0x42840a
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4284bb
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x428432
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x4284be
mov edx, dword [esi + 8]
test bl, 8
jne 0x428458
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x4284bb
test bl, 4
jne 0x428487
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x4284bb
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x4284e0
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41d0db
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429e41
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429e37
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x428563
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x428706
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x428659
cmp ebx, 0xc0
jb 0x428659
test bl, 0x20
jne 0x4285a5
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x428656
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4285cd
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x428659
mov edx, dword [esi + 8]
test bl, 8
jne 0x4285f3
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x428656
test bl, 4
jne 0x428622
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x428656
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x42867b
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41d0db
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429e5a
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429e50
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4286fe
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x428747
cmp dword [ebp + 0x88], 0
je 0x4268c3
cmp edi, dword [ebp + 0x84]
jbe 0x4268c3
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4268c3
mov esi, dword [esi]
test esi, esi
je 0x429f7c
mov edi, 0xfffffff4
jmp 0x425b44
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x428835
cmp ebx, 0xc0
jb 0x428835
test bl, 0x20
jne 0x42877d
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x428832
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4287a7
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x428835
mov edx, dword [esi + 8]
test bl, 8
jne 0x4287cd
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x428830
test bl, 4
jne 0x4287fc
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x428830
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x428857
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a2]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4289e8
lea esp, [esp]
cmp dword [esp + 0x8c], 0
mov edi, 1
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
je 0x428987
cmp ebx, 0xc0
jb 0x428987
test bl, 0x20
jne 0x4288bb
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x42897f
test bl, 0x10
jne 0x4288e0
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x42897f
test bl, 8
jne 0x428911
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x42897f
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x42894b
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x42897f
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x4289a9
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx ecx, byte [eax*8 + 0x4432a2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x443128], eax
je 0x4289e8
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x80], ecx
cmp eax, dword [ebp + 0x78]
jb 0x428880
cmp dword [ebp + 0x88], 0
je 0x428a15
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x428a15
cmp eax, dword [ebp + 0x84]
jbe 0x428a15
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41d246
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429e73
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429e69
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
je 0x428a7c
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x428a7c
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x428a70
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41c260
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429e8c
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429e82
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
jne 0x428ad7
movzx ebx, byte [ecx]
jmp 0x428bc5
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x428aec
nop
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x428ae0
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
cmp ebx, 0xc0
jb 0x428bc5
test bl, 0x20
jne 0x428b0f
movzx eax, byte [eax + 1]
and ebx, 0x1f
jmp 0x428bbd
test bl, 0x10
jne 0x428b2f
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x428bbd
test bl, 8
jne 0x428b58
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x428bbd
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x428b8d
and ebx, 3
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x428bbd
and ebx, 1
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x428be7
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a2]
mov dword [esp + 0x80], eax
mov edi, dword [esi + 8]
cmp edi, dword [esi + 0x30]
jbe 0x41c260
dec edi
cmp dword [esp + 0x8c], 0
jne 0x428c1f
movzx ebx, byte [edi]
jmp 0x428cde
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
jne 0x428c31
mov al, byte [edi - 1]
dec edi
and al, 0xc0
cmp al, 0x80
je 0x428c27
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x428cde
test bl, 0x20
jne 0x428c51
movzx eax, byte [edi + 1]
and ebx, 0x1f
jmp 0x428cd6
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x428c6e
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x428cd6
and eax, 0x3f
test bl, 8
jne 0x428c89
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x428cd6
test bl, 4
jne 0x428cad
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x428cd6
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x428d00
dec ebx
or ebx, 0xffffff80
inc ebx
mov ecx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx edx, byte [eax*8 + 0x4432a2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x443128], eax
je 0x424936
mov dword [esi + 8], edi
mov dword [esp + 0x80], edx
jmp 0x428c00
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x428d61
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x428706
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x428e5b
cmp ebx, 0xc0
jb 0x428e5b
test bl, 0x20
jne 0x428da3
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x428e58
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x428dcd
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x428e5b
mov edx, dword [esi + 8]
test bl, 8
jne 0x428df3
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x428e56
test bl, 4
jne 0x428e22
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x428e56
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x428e7d
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, 1
je 0x428ea4
cmp eax, 3
je 0x428ea4
xor eax, eax
jmp 0x428ea9
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41d0db
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429ebe
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429eb4
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x428f12
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x428706
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x429013
cmp ebx, 0xc0
jb 0x429013
test bl, 0x20
jne 0x428f54
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x429010
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x428f7e
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x429013
mov edx, dword [esi + 8]
test bl, 8
jne 0x428fa4
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x429007
test bl, 4
jne 0x428fd3
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x429007
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x24
je 0x42903e
cmp ebx, 0x40
je 0x42903e
cmp ebx, 0x60
je 0x42903e
cmp ebx, 0xa0
jb 0x429032
cmp ebx, 0xd7ff
jbe 0x42903e
cmp ebx, 0xe000
jae 0x42903e
xor eax, eax
jmp 0x429043
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41da22
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429ed7
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429ecd
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4290ac
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x428706
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x4291ad
cmp ebx, 0xc0
jb 0x4291ad
test bl, 0x20
jne 0x4290ee
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4291aa
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x429118
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4291ad
mov edx, dword [esi + 8]
test bl, 8
jne 0x42913e
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x4291a1
test bl, 4
jne 0x42916d
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x4291a1
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x4291f0
je case.0x429210.8192
cmp ebx, 0x85
ja 0x4291dc
je case.0x429210.8192
cmp ebx, 9
jb case.0x429210.8203
cmp ebx, 0xd
jbe case.0x429210.8192
cmp ebx, 0x20
jmp 0x429225
cmp ebx, 0xa0
je case.0x429210.8192
cmp ebx, 0x1680
jmp 0x429225
cmp ebx, 0x202f
ja 0x429217
je case.0x429210.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x429210.8203
movzx eax, byte [eax + 0x42a74c]
jmp dword [eax*4 + 0x42a744]
cmp ebx, 0x205f
je case.0x429210.8192
cmp ebx, 0x3000
je case.0x429210.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x444920]
shl eax, 7
and ebx, 0x8000007f
jns 0x429249
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
cmp dword [eax*4 + 0x4430b0], 6
sete cl
cmp ecx, dword [esi + 0x68]
jne 0x42927c
jmp 0x41d0db
cmp dword [esi + 0x68], 0
jne 0x41da22
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429ef0
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429ee6
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4292dc
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x428706
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x4293d2
cmp ebx, 0xc0
jb 0x4293d2
test bl, 0x20
jne 0x42931e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4293cf
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x429346
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x4293d2
mov edx, dword [esi + 8]
test bl, 8
jne 0x42936c
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x4293cf
test bl, 4
jne 0x42939b
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x4293cf
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x444920]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x4293f5
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x446b20]
movzx eax, byte [eax*8 + 0x4432a1]
mov eax, dword [eax*4 + 0x4430b0]
cmp eax, 1
je 0x429421
cmp eax, 3
je 0x429421
cmp ebx, 0x5f
je 0x429421
xor eax, eax
jmp 0x429426
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41d0db
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429f09
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429eff
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
test edi, edi
jne case.0x425b54.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42948f
mov esi, dword [esi]
test esi, esi
je 0x429f58
jmp 0x425b44
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x428706
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42958c
cmp ebx, 0xc0
jb 0x42958c
test bl, 0x20
jne 0x4294d1
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x429589
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4294f9
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x42958c
mov edx, dword [esi + 8]
test bl, 8
jne 0x42951f
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x429582
test bl, 4
jne 0x42954e
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x429582
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x64]
mov ecx, dword [eax*4 + 0x443160]
lea eax, [eax*4 + 0x443160]
cmp ebx, ecx
jb 0x4295ae
lea eax, [eax + 4]
cmp ebx, ecx
je 0x4295f3
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x4295a1
cmp dword [esi + 0x68], 0
je 0x41da22
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x429f22
push 0x134
call dword [0x459418]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x429f18
mov esi, dword [esi]
test esi, esi
je 0x429f4b
lea edi, [eax - 6]
jmp 0x425b39
cmp dword [esi + 0x68], 0
je 0x4295b8
jmp 0x41da22
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x429601
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
jmp 0x41c2da
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x429643
push ecx
call dword [0x459414]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
jmp 0x41c2da
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x427439
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x427245
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4275db
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x4277e0
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4279a9
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x42801a
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4281cc
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42836e
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x428509
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4286a4
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x428eb8
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x429282
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x429435
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4295be
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x429052
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x427ccd
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x428a1b
mov eax, dword [esi + 0x34]
mov dword [esi + 0xc], eax
jmp 0x41c260
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x37
mov eax, dword [esi + 8]
mov dword [edi + 8], eax
mov ecx, dword [esi + 0xc]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x442f98]
movzx eax, byte [ecx + 1]
add edx, eax
add edx, ecx
mov dword [edi + 0xc], edx
mov eax, dword [esi + 0x10]
mov dword [edi + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [edi + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0x1c]
inc eax
mov dword [edi + 0x1c], eax
mov dword [edi], esi
mov esi, edi
jmp 0x41c250
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x34
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x429a46
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x33
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x429a46
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x38
jmp 0x42979f
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x35
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x429a46
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x39
jmp 0x42979f
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x36
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x429a46
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x3a
jmp 0x42979f
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 3
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x18], ebx
mov eax, dword [esi + 0x1c]
inc eax
mov dword [ecx + 0x1c], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x41c250
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xa
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x2c]
jmp 0x429c36
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xb
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x2c]
add eax, 3
jmp 0x429c36
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 7
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x429c36
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xd
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x429c36
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xc
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x429c36
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 1
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x429a46
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 2
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x429a46
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x31
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 4
jmp 0x4299f7
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 5
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x18], 0
mov eax, dword [esi + 0x1c]
inc eax
mov dword [ecx + 0x1c], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x41c250
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 6
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0x20]
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x442f98]
add eax, ecx
mov dword [edx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [edx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [edx + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [edx + 0x18], eax
mov eax, dword [esi + 0x1c]
inc eax
mov dword [edx + 0x1c], eax
mov dword [edx], esi
mov esi, edx
jmp 0x41c250
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 8
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x429c36
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x32
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x429c36
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 9
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x429c36
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xe
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xf
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x11
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x13
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x18
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x19
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1a
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1b
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1d
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1f
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x21
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x23
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2b
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2f
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [ecx + 0x18], eax
mov eax, dword [esi + 0x1c]
inc eax
mov dword [ecx + 0x1c], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x41c250
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x30
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x429a46
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x3f
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x429a46
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x40
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x429c36
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x41
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x429c36
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x42
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x429c36
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x14
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x15
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x10
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x12
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x16
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x17
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1e
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x20
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x22
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2e
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x25
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x26
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x27
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x28
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x29
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2c
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2d
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3b
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3c
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3d
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3e
jmp 0x429c2d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x43
jmp 0x429c2d
pop edi
pop esi
pop ebp
mov eax, 0xfffffff8
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffeb
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffa
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffe6
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1a
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff2
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1b
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1d
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1c
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc20
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1e
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1f
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffb
pop ebx
add esp, 0x68
ret